¿Podría una matriz de píxeles hexagonal almacenar una imagen de manera más eficiente?

11

La mayoría de los monitores de computadora y televisores tienen una matriz rectangular de píxeles dispuestos en una red cuadrada (o casi cuadrada). ¿Una red hexagonal daría una mejor calidad de imagen para la misma cantidad de píxeles? En otras palabras, ¿permitiría la misma cantidad de memoria almacenar más detalles?

Tengo la sensación intuitiva de que (al menos un poco) deberían ser posibles más detalles del mismo número de píxeles con una red hexagonal porque (para una imagen de área fija) la distancia promedio al centro de píxeles más cercano será menor que con una red cuadrada . Me gustaría ver la diferencia definida más concretamente.


Incluso si la respuesta es "sí", no espero que los fabricantes de monitores empiecen de repente a hacer píxeles dispuestos hexagonalmente. Sin embargo, hago la pregunta porque me pregunto si se ganaría algo almacenando imágenes como redes hexagonales de píxeles, incluso si se traducen en redes cuadradas de píxeles para su visualización.

trichoplax
fuente
1
Para llegar a esta pregunta, debe haber tenido algunas ventajas de la disposición hexagonal de píxeles. ¿Puedes agregarlos a la pregunta?
nitishch
@nitishch era solo la única ventaja que tenía en mente. ¿Mi edición lo hace mejor?
trichoplax
El intercambio de pila DSP (procesamiento de señal) probablemente tendría una respuesta más formal para usted en este BTW.
Alan Wolfe el
1
FWIW, he oído hablar de pantallas (generalmente pantallas muy grandes en estadios) que usan una configuración delta-nabla. (Llamado así por la letra griega delta "Δ" y la letra hebrea nabla "∇" porque los píxeles eran triángulos alternos con el punto hacia arriba, luego hacia abajo, luego hacia arriba y luego hacia abajo). Un ejemplo es el Philips Vidiwall.
user1118321

Respuestas:

8

Aquí está mi opinión al respecto. Un píxel no es un cuadrado, y ni siquiera es un rectángulo. Un píxel es un punto (infinitamente pequeño) que tiene un color asociado.

La única forma en que personalmente he visto píxeles vistos (interpretados) por una pantalla es usar el muestreo del "vecino más cercano" donde los píxeles estaban en una cuadrícula rectangular, lo que significa que el color de cualquier espacio dado en una pantalla es el color del píxel al que está más cerca.

Esta es una forma elegante de decir "los píxeles son rectangulares y están dispuestos en una cuadrícula", pero quédese conmigo en esto: P

Como resultado, los formatos de imagen también tienen sus píxeles almacenados en una cuadrícula, con el supuesto de que el vecino más cercano en una cuadrícula también se usará para mostrarlo. Por ejemplo, muchas imágenes tendrán antisolapamiento incorporado para que se vean bien cuando se muestren en una "cuadrícula vecina más cercana".

Las aplicaciones interactivas (juegos) pueden usar texturas que no están destinadas a mostrarse como en las cuadrículas vecinas más cercanas, por lo que son una especie de excepción a esa regla. Hacen esto porque como parte de su ejecución, hacen anti-aliasing, muestreo de textura bilineal, etc., para que cualquier imagen que muestren en la pantalla se vea bien, ¡cuando la pantalla la muestra como una cuadrícula vecina más cercana!

Ahora, acercándonos a su pregunta: ¿una cuadrícula hexagonal tendría alguna ventaja?

¡Creo que sí, lo haría!

En primer lugar, creo que el vecino más cercano se vería mejor. No tengo ninguna prueba real de eso, pero el hexágono se aproxima más a un círculo, y dado que no es una cuadrícula de datos regular, creo que su ojo está obteniendo una mejor distribución de datos. Lo siento, eso es un pequeño movimiento de manos.

Sin embargo, creo que la gran parte de por qué se vería mejor es que el filtrado lineal tomaría información de 6 vecinos en lugar de 4, y estaría interpolando en 3 ejes en lugar de 2. Más información de muestras menos espaciadas regularmente que una cuadrícula le brinda = mejor imagen resultante.

Hacer interpolación cúbica también sería mejor que la interpolación cúbica en una cuadrícula, por lo que la calidad aumenta a medida que aumenta la calidad de su algoritmo.

En cuanto a si almacena datos de manera más eficiente, el hecho de que pueda filtrar mejor con menos datos significa que sí, podría almacenar datos de manera más eficiente.

Y supongo que por último ... tal vez podría usar estas propiedades para su ventaja. Tal vez podría tener un formato de imagen almacenado en un formato hexagonal de menor resolución, y luego, antes de necesitar mostrar la imagen en tiempo de ejecución, podría usar algoritmos de muestreo para convertirla nuevamente en una cuadrícula.

¿Tal vez incluso habría una buena manera de hacer esto de manera eficiente en un sombreador de píxeles, por lo que también usaría menos memoria en tiempo de ejecución?

Es una idea interesante (:

PD: qué bueno sería tener una pantalla analógica (sin píxeles individuales, sino una superficie de color continua) que mirara los datos de píxeles que envió no como rectángulos, sino como puntos de muestra en una superficie continua. Tal vez un poco por ahí sin embargo ...

Alan Wolfe
fuente
2
No necesita almacenar cada plano de color en cada píxel, ni tener los planos en la misma configuración. PERO
pierdes el
¡Buenos puntos! El filtro separable es bastante grande. Me pregunto si podrías hacer un filtrado de 3 ejes para hexágonos.
Alan Wolfe
4

Si se examinan las pantallas de televisión CRT antiguas, se observarán puntos de fósforo rojo, verde y azul en una red triangular. Algunos televisores LCD tenían una disposición algo similar; los píxeles eran rectangulares en lugar de cuadrados, pero las filas sucesivas de píxeles estaban escalonadas para que la posición horizontal de un píxel rojo en una fila estuviera a medio camino entre las posiciones de los píxeles rojos más cercanos en la fila de arriba, y coincidiera con la posición de un rojo píxel dos filas arriba.

Cuando se muestran imágenes "analógicas", dichos arreglos mejorarán la calidad visual de la imagen que se puede obtener con un número dado de píxeles. Sin embargo, en las pantallas de la computadora, hay muchas líneas que deberían aparecer perfectamente horizontales, y muchas líneas que deberían aparecer perfectamente verticales. Una cuadrícula rectangular puede acomodar ambos fácilmente. Sin embargo, una cuadrícula hexagonal solo puede acomodar una u otra, y la que no se acomodará aparecerá bastante irregular.

Super gato
fuente
Así que no es bueno para Excel :)
joojaa