sábado, diciembre 15, 2012
|
Si dijera que investigadores de la Universidad de Bath en el Reino Unido han creado el primer CODEC de video vectorial práctico para video de alta definición, es posible que la mayoría de los lectores se queden rascando la cabeza tratando de entender de qué hablo, pero créanme que esta es una gran noticia, por lo que explico a continuación todo el tema, y su importancia...
Primero, empecemos notando algo: ¿Alguna vez se han acercado a ver realmente de cerca una pantalla de un televisor LCD/LED o Plasma? Notarán que la pantalla está compuesta de pequeños puntos a los cuales técnicamente se les llama "pixeles" (más específicamente, un pixel por lo general está compuesto de tres sub-elementos de color rojo, verde y azul, y entre los tres forman un pixel). Pues así como los televisores están compuestos de pixeles, así mismo son las fotos digitales que tomamos con nuestras cámaras, en donde millones de pixeles describen una imagen. Y si extendemos esto a video, podemos decir que video no es más que miles de fotografías digitales, una detrás de la otra, compuestas por pixeles. Así que podemos resumir diciendo que por lo general las imágenes digitales que almacenamos, transmitimos y vemos hoy día (y en particular, imágenes de video como nos interesa en este artículo de hoy), están esencialmente compuestas por millones y millones de pixeles. Sin embargo, esta no es quizás la mejor forma de describir imágenes, debido a que literalmente hay que procesar todos y cado uno de esos pixeles cada vez que tomamos una foto o grabamos o desplegamos un video. Pero, por décadas siempre ha existido una alternativa a los "gráficos pixelados" como es de lo que les he estado hablando hasta ahora, y esa alternativa se llama "gráficos vectoriales", que como indica el nombre, utiliza vectores en vez de pixeles para describir gráficos. Gráficos vectoriales han sido utilizados en sistemas electrónicos desde los mismos inicios de la computación, y quizás predatan las imágenes pixeladas, particularmente debido a que las gráficas vectoriales (por motivos que van más allá de este artículo) eran más amigables a entornos de computadoras analógicas de antaño que a computadoras modernas digitales. Incluso, el primer videojuego utilizó gráficos vectoriales y no pixelados. Pero, ¿qué son gráficos vectoriales? Pues es una técnica que en vez de especificar punto por punto (es decir, pixel por pixel) cómo se compone una imagen, lo que hace es especificar formas geométricas con lineas, curvas y polígonos (si utilizan programas como AutoCad y Adobe Illustrator en esencia ya trabajan con gráficos vectoriales). Es decir, en un sistema pixelado, si quiero dibujar un círculo, tengo que ir y especificar cada punto de la pantalla en donde se deben "pintar" pixeles para que entre todos den la impresión de un círculo, lo que implicaría posiblemente tener que especificar entre cientos a hasta miles o millones de puntos por separado. Pero en un sistema de gráficos vectoriales sería tan sencillo como simplemente almacenar todo eso en una ecuación o fórmula que especifique un círculo, algo así como la fórmula (x-a)2 + (y-b)2 = r2. En otras palabras, en vez de almacenar en un archivo millones de coordenadas de pixeles, lo único que tendríamos que hacer en un archivo vectorial es almacenar esa sencilla fórmula y listo. Eso implica unas cuantas cosas interesantes: La primera es que por lo general gráficos vectoriales ocupan mucho menos espacio de almacenamiento, lo que de paso implica que los archivos se pueden descargar mucho más rápidamente por Internet. De paso, esto también implica que es más eficiente procesar estos archivos para desplegarlos, lo que los hace ideal para ambientes móviles de baja potencia, lo que de paso también significa que el procesador móvil trabaja menos lo que implica adicionalmente un menor consumo en la batería. Y como si fuera poco, un sistema vectorial nos dota de independencia del tamaño y resolución de la pantalla final, lo que significa que podemos siempre tomar ventaja de la más alta resolución disponible para desplegar la mejor imagen posible. En nuestro ejemplo con el círculo por ejemplo, en un sistema pixelado hay que especificar necesariamente de antemano la resolución en pixeles bajo la cual se desea dibujar el círculo, y de ahí en adelante la resolución se mantiene fija, pero un círculo se puede dibujar en cualquier resolución, ya que los pixeles finales de la imagen son deducidos en base a la fórmula matemática de los vectores especificados en ecuaciones. Pero, si tenemos tantas ventajas con gráficos vectoriales, ¿por qué no son el formato preferido hoy día y seguimos utilizando pixeles? Pues la respuesta por un lado es que en realidad los gráficos vectoriales ya se utilizan en millones de ambientes que uno rara vez nota, particularmente en videojuegos y en programas de diseño gráfico, pero el problema es que en fotografías y videos hasta hora no era eficiente almacenar imágenes como vectores, por la sencilla razón de que una imagen cualquier no es muy uniforme visualmente entre un pixel y otro, y se requeriría o (1) de tener que almacenar un vector por pixel (que en realidad no ofrecería ninguna ventaja sobre sistemas pixelados, y al contrario, introduciría todo tipo de desventajas), o (2) de tener que hacer unos cálculos inmensamente complejos para deducir el patrón vectorial a partir de las imágenes originales. Así que habiendo dicho todo eso, llegamos a la noticia de hoy... Un grupo de científicos de la Universidad de Bath ha logrado crear una técnica que permite aplicar procesamiento vectorial de forma eficiente y práctica (pues antes se habían creado sistemas similares pero que no eran eficientes y/o prácticos) para video. Según sus inventores, su tecnología funciona tan bien que ya quieren incorporarla en todo tipo de programas profesionales a todo nivel de la cadena de producción de video. Esto es una tremenda noticia porque significa que gran parte de las ventajas que ya mencioné sobre vectores, nos llegarán a mediano plazo a consumidores, lo que de paso significará que podamos reproducir el mismo archivo de video de manera óptima y con la mejor calidad posible tanto en un celular de pequeña pantalla, como en televisores futuros con resoluciones de 8K para consumidores, sin necesidad de reprocesar o convertir el video original. Sería como comprar un DVD una sola vez, y después poder reproducir ese "DVD" tanto en un televisor de 1080p hoy día, como en uno de 4K o 8K mañana, y en todo momento con el más óptimo detalle de la imagen (asumiendo que la fuente de la imagen tenga el suficiente detalle, obviamente). Esta noticia a propósito llega justo días antes de un artículo que tenía planeado sobre la necesidad de definir un CODEC (codificador-descodificador) independiente de resolución de video, por lo que con esta noticia no solo me evité escribir ese artículo, sino alegrarme al ver que esto llegará a consumidores mucho antes de lo que muchos imaginábamos... :) enlace a un video de demostración (formato Quicktime - quizás quieran salvarlo antes de verlo, y noten que es un video pre-grabado en formato pixelado, ya que no existe un reproductor para ver el video original en formato vectorial) página oficial del proyecto fuente oficial Actualización: Video en formato YouTube a continuación (enlace YouTube)... autor: josé elías |
28 comentarios |
Ciencia , Cine / DVD / Blu-ray , Futuro Digital , Opinión / Análisis , Pregunta a eliax , Software , Tecnología Visual , Videos |
Comentarios
Añadir Comentario |
"Excelente presentación. Tenía muchas ganas de verla y no me decepcionaste."
en camino a la singularidad...
©2005-2024 josé c. elías
todos los derechos reservados
como compartir los artículos de eliax
Seguir a @eliax
Pues no entiendo, es fácil poniendo de ejemplo un círculo o cualquier otra figura geométrica. Pero cuando hablamos de personas y paisajes complejos, como los dibujarán los vectores ?