Esquemas de compresión de imagen / video extremadamente computacionalmente intensivos que ofrecen una mejor compresión que el estándar de la industria JPEG / H.264


8

Estoy tratando de buscar esquemas de compresión de imagen / video que ofrezcan un rendimiento de compresión superior (manteniendo la calidad de imagen como constante) en comparación con los estándares de la industria ampliamente adoptados (es decir, JPEG / H.264), pero por razones de ser demasiado computacional o de recursos Intensivo, implementarlos en estaciones de trabajo basadas en CPU no es factible y, por lo tanto, no se adopta en los estándares comunes.

Solo podía pensar en la compresión fractal como un buen ejemplo. ¿La comunidad conoce más ejemplos de este tipo?


2
En cuanto a las imágenes, hay algoritmos más sofisticados que JPEG, como JPEG2000. JPEG2000 proporciona relaciones de compresión mejoradas, pero no estoy seguro de que su falta de adopción se deba a la complejidad computacional. Más aún, se considera que JPEG es "lo suficientemente bueno" para la mayoría de las aplicaciones, por lo que no hay una motivación real para usar algo mejor (especialmente porque el almacenamiento en disco es tan abundante en los sistemas modernos). Aquellos que se preocupan por la máxima calidad de imagen, como los fotógrafos profesionales, a menudo evitan la compresión por completo, confiando en capturas en bruto de las salidas del sensor de imagen.
Jason R

Creo que la calidad de JPEG depende más de la cantidad de datos que desecha que del tiempo que pasa computando.
endolito el

1
Las transformaciones de Análisis de componentes principales / KLT / Hotelling pueden hacer un trabajo mucho mejor que el DCT al representar una señal con un pequeño número de funciones básicas, pero son bastante costosas desde el punto de vista computacional. Sin embargo, no estoy seguro de si alguien ha hecho esquemas de compresión completos con ellos.
eglaser

@eglaser: ¿Le gustaría elaborar PCA / KLT / Hotelling? Sería bueno si pudiera publicar su respuesta como respuesta.
Ang Zhi Ping

1
@eglaser KLT es mejor que DCT en términos de compacidad energética. Sin embargo, no necesariamente significa que es un códec mejor; Esto se debe a que KLT para cada imagen / video es único y, por lo tanto, no solo tiene que transmitir los coeficientes resultantes, sino que también tiene que enviar el núcleo.
Dipan Mehta

Respuestas:


8

Hay varios aspectos de la compresión, ya sea que se refiera a una imagen o video. (Puede que el audio sea totalmente diferente, así que no me refiero a esto aquí).

Si realmente observa el historial del estándar de compresión, cuando se formaron por primera vez, los codificadores en tiempo real MPEG1 eran raros. La CPU en ese momento no era suficiente para hacerlo en tiempo real; sin embargo, no fue la complejidad del procesamiento (solo) lo que detuvo los algoritmos de mayor complejidad para ser utilizados bajo los códecs. (Probablemente el factor principal responsable de la inclusión / exclusión de ciertos algoritmos fueron a. Patentes, b. Factibilidad de implementación).

Sin embargo, me gustaría reformular la pregunta un poco más simple:

¿Qué otra investigación en compresión está disponible que todavía está por llegar al mercado (o no llegó en absoluto pero podría valer la pena para algunas aplicaciones)?

Aquí hay algunos puntos a tener en cuenta:

1. ¿Mejor transformación?

DCT ha sido una transformación universal en todos los códecs. Sin embargo, hay muchos trabajos de investigación que sugieren que Wavelets podría ser mejor. De hecho, el único JPEG2000 incluía wavelets, pero ese estándar en sí mismo no fue un gran éxito. Probablemente fue mejor que DCT de alguna manera; especialmente hay afirmaciones de que Wavelets supera a DCT [Ver: Ref. 1]

Creo que wavelet es computacionalmente costoso sobre DCT (en parte porque las implementaciones 8x8 DCT están altamente optimizadas). Pero supongo que realmente no volé mucho porque desde la perspectiva del mercado porque DCT en ese momento estaba mucho más extendido y la diferencia en la mejora no era tan sustancial para que la gente cambiara.


B

Si bien, esto ya es parte del estándar en H.264, todavía no se explota por completo. Existe la necesidad de hacer que una búsqueda tan amplia de estimación de movimiento sea prácticamente viable. La mayoría de los codificadores H.264 todavía son incipientes en explotar todo el potencial de esto.

3. Compresión escalable de imagen / video La compresión
escalable de imagen y video es nuevamente un santo grial de cómo se puede hacer la codificación de descripción múltiple para imagen y video. Básicamente, la misma imagen o video se puede codificar a múltiples resoluciones, cuantificaciones (calidad) o velocidad de cuadros. Esto produce diferentes capas de calidad frente a la velocidad de bits dentro de la misma transmisión, y el servidor de transmisión puede adaptar la velocidad de bits y la calidad dinámicamente para adaptarse mejor al video en la calidad. Ver [Ref. 3], [Ref. 4], [Ref. 5]

De esto, solo el verdadero éxito es el JPEG progresivo, que es prácticamente útil para los sitios web y de hecho es útil. Nuevamente, aunque la promesa de adaptar dinámicamente el flujo de bits es excelente, pero solo funciona si hay sistemas prácticos en los que es posible estimar dicha velocidad de bits y el tipo de adaptación puede tener algún propósito real. Sin embargo, en el dominio de video, a pesar del soporte de esto en los estándares (MPEG2, MPEG4 y H.264), casi no hay uso de esto.

4. Video del objeto
Este es quizás el último santo grial de la compresión. El video objeto [Ref. 6] iniciado por el propio cuerpo estándar MPEG, sin embargo, esto también fue respaldado por una extensa investigación.

La idea básica es segmentar el video en términos de objetos distintos y luego cada uno de estos objetos puede tratarse como un plano separado. cada objeto y se aplicará con diferente velocidad de bits, cuantificación, velocidad de fotogramas y predicción muy eficiente. Además, uno puede manipular objetos como la forma en que puede hacer cosas en photoshop / gimp.

Sin embargo, resulta que la segmentación de la imagen y el video del mundo real con objetos perceptuales relevantes es un problema difícil. Entonces, incluso si tengo codificadores / decodificadores, necesito un sistema de segmentación robus y en tiempo real para hacer que las cosas sean posibles. Este es, con mucho, un problema realmente abierto sobre cómo aplicar el video en forma de video en capas para que funcione.

5. Más dimensiones
Además de esto, hay códecs para video estéreo (también conocido como multiview) y video 3D (concepto casi similar) que adicionalmente intentan reducir la redundancia en la dimensión adicional. Si bien esto sigue siendo una investigación aquí, H.264 tiene un perfil para esto ahora. Lo mismo es cierto para la codificación Cinema.

Todavía hay muchos proyectos de investigación en el área de esto, sin embargo, la compresión de video es un mercado bastante básico por ahora. Y la investigación que no genera sustancialmente una nueva aplicación o si hay problemas de viabilidad en la implementación no sobrevivirá prácticamente a pesar de su ingenio.

Espero que esto ayude.

Referencias

  1. Un estudio comparativo de codificación de imagen basada en DCT y Wavelet por Zixiang Xiong, et. Alabama. TRANSACCIONES IEEE EN CIRCUITOS Y SISTEMAS PARA TECNOLOGÍA DE VIDEO, VOL. 9, NO. 5, AGOSTO 1999 pp. 692

  2. Análisis de eficiencia de la predicción compensada por movimiento de hipótesis múltiples para la codificación de video Bernd Girod TRANSACCIONES IEEE EN EL PROCESAMIENTO DE IMÁGENES, VOL. 9, NO. 2, FEBRERO DE 2000 173

  3. Codificación de video escalable con resolución de dominio espacial por Barry G. Haskell, Hsueh-Ming Hang. Proc. SPIE 2094, Comunicaciones visuales y procesamiento de imágenes, noviembre 718 (1993);

  4. El método de codificación de video escalable de grano fino MPEG-4 para transmisión multimedia sobre IP por Hayder M. Radha, et. Alabama. OPERACIONES IEEE EN MULTIMEDIA, VOL. 3, NO. 1 de marzo de 2001 53

  5. Avances en la codificación de video escalable por Ohm, J.-R .; Actas del IEEE Enero de 2005 Volumen: 93 Edición: 1 págs. 42 - 56

  6. Codificación de textura basada en objetos de video en movimiento en MPEG-4, por Andr ́ Kaup, IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS FOR VIDEO TECHNOLOGY, VOL. 9, NO. 1, FEBRERO 1999 pp. 5

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.