redução do tamanho do vídeo por grayscaling

1

Quando convertemos um vídeo em escala de cinza, todas as suas três cores (RGB) em um pixel recebem o mesmo número (em vez de três números diferentes). Então, teoricamente, devemos ter uma redução de quase 66%. Eu sei que há alguns metadados e dados de som, mas os maiores dados são para os pixels.

Eu converti um vídeo com o Handbrake com tamanho de saída de 4.17 MB, então eu fiz isso com as mesmas configurações, exceto a verificação da caixa "grayscale", então o tamanho do arquivo de saída se tornou 3.88 MB. Por que apenas 7% de redução de tamanho? Para outro vídeo: 3,08 MB & 2,97 MB (quase 6%).

Também fiz o greyscaling com o filtro "monocromático" do "Corel Video Studio" e obtive um resultado semelhante (8,70 MB e 8,32 MB - > 5%). Existe algum algoritmo ou algo para obter um resultado melhor?

    
por living being 06.01.2015 / 09:02

1 resposta

2

O problema é que o formato subjacente que você está salvando não entende nada além de uma cor de 24 bits por pixel. Se o contêiner ou o formato subjacente atendesse especificamente a escala de cinza de 8 bits (ou formatos de 8 bits em geral), você veria a redução de tamanho esperada.

Como exemplo, você pode salvar uma imagem como .BMP ou PNG. Geralmente, você tem a opção de definir a profundidade de bits para a saída (se você estiver usando Paint.NET, pelo menos) e depois converter para escala de cinza. um benefício.

O JPEG não suporta estritamente menores profundidades de bits, se bem me lembro, eu ficaria surpreso se a maioria dos codificadores de vídeo modernos fizessem 99% de seu uso para fontes de cores.

    
por 06.01.2015 / 13:42