PALETA DE LA NES/FAMICOM PARTE 5: EN BÚSQUEDA DE UNA PALETA IDEAL

ONDA DE COLOR TV CRT Y VECTORES DE COLOR

Bienvenidos a la 5° parte de la serie. La presente entrada será dedicada a unas largas lineas a la búsqueda de una PALETA IDEAL  es decir una paleta partiendo del uso de las “matemáticas“.   Pero, por favor no desistan, como es costumbre daré mi mejor esfuerzo para resolver algunos temas, con cierto deje de clase de matemáticas de cursos de secundaria (bachillerato). No voy a descubrir nada nuevo, es descubrimiento del agua que moja, el relato de software lúdico abordado de una manera menos mística y supersticiosa.

Especialmente recomendado como una introducción a los curiosos, y a quienes desean desarrollar proyectos en generadores de vídeo compuesto en color mediante microcontroladores.

La “bombe”:  celebre computador electromecánico británico-polaco,  parte de una gran cantidad artefactos usados para descifrar el código generado por la máquina  ENIGMA desarrollada por los Nazis, en la segunda guerra mundial.

Es importante recordar, si  pretenden iniciar desde este apartado solo llegaran a la inevitable conclusión que todo esto trata de un elaborado galimatias o un reporte de algún  tipo de experimento científico completamente indescifrable. En consecuencia,  les invitato a visitar las partes anteriores.  De paso no duden en  solicitar aclaraciones o correcciones, siempre serán bien recibidas.

RESUMEN DE LA SERIE PALETA DE LA NES/FAMICOM

  • Prologo o “RGB resumen” pretende exponer la señal de RGB
  • En la Primera parte describí los dilemas de la paleta  del FAMICON/NES.
  • Segunda parte abordé unas explicaciones sobre la modulación de cuadratura y su relación con la paleta
  • Tercera parte abordé los temas de transistores JFET, el DAC  y  la Señal de modulación de la patente.
  • En TV CRT, 240p, Video compuesto, S-Video, una larga entrada para exponer mayores detalles en los principios de la TV CRT y el vídeo primitivo en vídeo consolas.
  • En la Cuarta parteuna introducción en español en temas de vídeo compuesto y su detección.
  • En esta Quinta parte, será una larga entrada en la búsqueda de la PALETA IDEAL, mediante: ecuaciones y  vectores de color en espacio YIQ/NTSC.

 ¿QUÉ ES ESO DE LA PALETA IDEAL DEL NES/FAMICON?

Si recuerdan algo de la idea de  las primeras entradas la PALETA IDEAL,  la NES/FAMICON debe cumplir 2 axiomas principales:

543210
||||||||
||     ++++- Fase (direcciona la 12 tipos de fase)
||++----- Level (determina el nivel de color)
  1. Debe ser el resultado de 12 únicas señales desfasadas con referencia al Colorburst o base subportadora del vídeo compuesto.
  2. El luma solo es posible en 4 escalones de tensión.
NIVELES DE LUMA.png
Imagen de la patentente NES

Para  construir la PALETA IDEAL requerimos de las siguientes consideraciones:

  • Ondas Sinusoidales perfectas. En  la parte 3 en donde intenté   revisar el tema desde la electrónica y solo encontré ondas deformadas.
  • Una (1) onda de frecuencia constante.  Contrario a la Patente describe que la frecuencia de subportadora (colorburst) es incrementa 6 veces,  lo cual requieren consideraciones adicionales: análisis de filtros, fourier y armónicos. En otras palabras muchas lineas de texto para unas próximas entregas.

Como esto no es un tratado, ni la próxima piedra filosofal es importante tomar algunas precauciones:

  • En los tratados de TV color dedican muchas largas lineas para explicar muchas de las propiedades de Luma y el Croma. Pero, solo explicaré los mínimo para construir la paleta “ideal”.
    • Algunas gráficas son de elaboración propia, mediante la programación de mini-aplicaciones, fueron  desarrollados durante varias semanas de arduo trabajo con las que esperaré conseguir una mejor compresión de los temas expuestos.
  • Para mantener lo didáctico del relato usaré lo mínimo de  álgebra lineal (la matemática matricial) y trigonométria (relación de ángulos en triángulos rectángulos y sus lados), entiendan están allí no  los puedemos omitir.
  • La base es el espacio de COLOR NTSC, usado en La mayoría de regiones del continente americano y en especial en JAPÓN; país de origen de la NES/FAMICON. Algunas explicaciones incluirán  PAL para comparaciones.
  • Muchas personas han dedicado su tiempo a construir paletas,  como consecuencia les usarépara revisar la valides de la “paleta ideal”. Insistiendo, el relato no trata menos preciar estos trabajos previos.

INTRODUCCIÓN – NÚMEROS COMO COLORES

Como premisa y por alguna extraña razón, esperaba encontrar dentro de alguna de  las paletas documentadas  la “PALETA IDEAL”. Con ello  hubiese podido mostrar la solución y regresar a una ecuación.    Infortunadamente no es el caso, no debería generalizar pero las paletas que pueden encontrar son aproximaciones aderezadas con algunos toques artísticos, o  como aproximaciones  a aquello que interpretan  nuestros ojos.

NES FAMICON PALETA DILEMA DE LA PALETA.png

Sumado a las  falencias  en las paletas NES/FAMICON actuales en emulación,  encontraremos que muchos de los gráficos de referencia de color no son 100% fiables, en escalas y colores. NO es evidente, las imágenes y vídeo que vemos a diario son realmente victimas de compresiones JPG/MPEG, algoritmos de compresión basados en transformaciones similares a las de la TV CRT.  Son transformaciones  LUMA  y  de componentes de color  y  hacen de estos archivos completamente inservibles para comparaciones matemáticas, sin embargo son especialmente  útiles como orientaciones o  didácticas.

https://www.eetimes.com

En la compresión JPEG/MPEG transforma todo a un nuevo espacio de color YCrBr similar  al formato HDMI. Una vez en este espacio mediante algoritmos especiales comprimen bloques de píxeles contiguos. En la mayoría de los casos al luma  intacto, los componentes Cr y Br son reducidos.

Como consecuencia desarrollé un conjunto de micro programas experimentales que me permitiera mostrarles los  colores no solo números. No fue una tarea sencilla,   escritos linea a liea bajo  dos aplicaciones  arcaicas pero compatibles: “Excel VB” y “VB6”.

Los programas están encuentran en una fase experimental, pero mi deseo es subirlos a alguna plataforma junto con su código fuente.

El YIQ/YUV guarda una gran cantidad de misterios que aspiro a  mostrar. Resumidamente,  las ecuaciones y números no son colores, alfabetos alienígeno, ni solfeo, ni es “the matrix”.

COLOR: FORMAS DE ONDA Y VECTOR

En la parte 4  revisamos  las ondas de color como una idea un poco extravagante, en cuanto cada color solo ocupa 1/2 onda de señal de subportadora en tiempo.   La entrada cerraba con la  necesidad de estudiar los colores como vectores, hecho que nos lleva de regresar a la teoría de la codificación de   la TV CRT  color que exige retomar la señal  como una onda.

Es  importante entender este apartado de la presente entrada: La primera parte  es la es la matemática  de onda y  la segunda la descripción de la onda de color en TV CRT.

Iniciamos con la onda matemática. Una señal de onda ideal parte de ondas sinusoidales, de esas que suben y bajan muy suavemente.

Resultado de imagen para seno  signal gif

Ecuación de onda:

y(t) = A seno ( ω t  + θ)

Una onda matematica tiene tres (3) componentes: Una  amplitud A,   velocidad angular  ω  y  angulo  o un desfase θ (teta). Las ondas son “parametricas”, es decir varían en función del tiempo t.

La velocidad angular ω   se expresa en radianes sobre segundo,  y pueden remplazarse por la frecuencia. Repasemos un poco:

  • Un radian es un arco y este arco representa un angulo. Usualmente usamos el sistema sexadecimal, marcando los círculos  de 0° a 360°. En radiales  el circulo va de 0 a 2π.
Arco1.png
Fuente de la imagen: Wikipedia
  • La velocidad angular se expresa en giros por segundo, es decir cuando que los 360° son 2π, y la frecuencia es el tiempo que toma el giro completo, por tanto la velocidad angular es giro completo por la frecuencia.

ω  = 2π f

Sigamos con la idea del angulo del desfase de onda θ, igualmente es expresada en radianes.  El desfase de onda θ (o pase shift) puede entenderse como la diferencia entre el cruces de dos ondas en un plano en  tiempo expresado en forma de un angulo. Requerimos de por lo menos (2) dos  ondas para determinar cual es el desfase de una con relación a la otra.

También conocido como desfase HUE (grados sexadecimales), pero obviando el termino espero evitemos  los mal entendidos, como explicaré líneas adelante.

Fuente de la imagen Wikipedia.

Como ejemplos propongo: la función matemática “seno” esta adelantada a la “coseno” en +90 grados (π); y  en grandes motores y generadores eléctricos cada fase distanciada  120° (2π/)

https://www.zweigmedia.com/

En la TV CRT la señal de color  son realmente variaciones de tensión (voltaje) y le podemos asimilar a una onda con una ecuación:

C(t) = A seno ( 2πf t  + θ)

La frecuencia de modulaciones  de color  se le denomina frecuencia de subportadora, con un valor de 3,575611 millones de ciclos por segundo o Mhz en NTSC.

El Valor A representará en esta entrada la Amplitud de la onda cromaθ el desfase frente a la onda de modulación o subportadora. La teoría de onda de croma  nos obliga a repasar la modulación de color en TV CRT.

La base de la conversión es un conjunto de tres (3) ecuaciones, denominadas transformaciones de color  RGB (Rojo Azul Verde) a NTSC-YIQ:

Y = 29.9% R + 58.7% G   + 11.4% B
I = 59.6% R – 27.4%G  -33.2% B
Q = 21.1% R -52.3%G + 31.2% B

  • En PAL se definen   las ecuaciones  llamadas RGB-YUV,  podrán encontrarlas en entradas anteriores.
  • Como anotación importante: La base son las ecuaciones YIQ o YUV y los valores de entrada son valores RGB, resolver los términos de manera inversa o en el sentido contrario de la transformación es solo uso matemática, con el calculo de una matriz inversa. Las ecuaciones aproximadas de YIQ a RGB:

R =  100% Y + 95.6% I + 62.1% Q
G = 100% Y – 27.2% I – 64.7% Q
B = 100% Y – 110%Q  + 170%Q

Una vez calculadas las dos componentes del croma es decir I y  Q,  podemos entrar en las formas de onda de la señal.  La onda de modulación final resulta  es la suma  son de dos ondas en diferente fase a frecuencia subportadora. En este caso dos señales distintas una  Seno y una Coseno

Es decir separadas con  90° o  π y se puede cumplir con Seno α = Coseno ( α +π).

Con esto en mente la onda de croma resultante es:

C(t) I seno ( 2πf t) + Q coseno ( 2πf t )

Nota: esta ecuación es base Seno la cual es favorable a la de modulación ver parte 4.

Las siguiente ecuación es la más importante,  nos permite regresar a la ecuación de onda con un solo componente “sinusoidal “:

C(t) √(I² + Q²) * seno ( 2πf t +  θ)  = A   seno ( 2πf t +  θ)

En donde:

 θ = ArcoTangente (I/Q)

El desfase θ resulta de la comparación señal de Colorburst o la soportadora de referencia incorporado en la cola de señal de sincronizan vertical en el video compuesto. Los principios del cómo de detección de valor de angulo desfase los comenté en la parte cuatro de la serie.

No es tan importan entrar en tantos detalles matemáticos  sobre su deducción, no es complicado. Pero, si están interesados les invito a visitar en la Wikipedia como llegar a este resultado en las entradas  Fasor  y Formula de Euler.

La fórmula de Euler ilustrada en el plano complejo permite resolver la demostración sin apelar a identidades trigonometricas. fuente Wikipedia.

La siguiente ya es la  la ECUACIÓN FINAL  DE LA LINEA DE VÍDEO  activa horizontal, la que es capturada por una cámara análoga y transmitida como vídeo compuesto:

NTSC(t)  =  Y(t) + I seno ( 2πf t) + Q coseno ( 2πf t )

Recuerden el LUMA Y es la suma ponderada de los componentes RGB o Y = 29.9% R + 58.7% G   + 11.4% B

 

caputra
Captura de onda de señal vídeo compuesto de la NES. Facilitada por @ArtemioUrbina

 

Toda esto era para llegara aquí a pensar en los colores como vectores  o puntos en un nuevo espacio IQ en el caso de la TV NTSC.

PALETA NES VECTOR FASOR COLOR

Antes de continuar con el estudio de la aplicación de los comentado. Es importante diferenciar las ecuaciones de onda de la TV CRT de las transformaciones HVS, las cuales usualmente son las más documentadas en algunas soluciones similares de palentas NES/FAMICOM, pero que NO serán comentadas en esta serie de la NES/FAMICON para evitar mal entendidos, igualmente no poseen mayor relación con la modulación ni la patente. Observar siguiente gráfico:

Fuente de la imagen: imgur.com

Con este conjunto de BELLAS FORMULAS , ya  tenemos para divertirnos un largo rato. Son la base para construir una “PALETA IDEAL”: sin ruidos, procesadores, armónicos,  saturaciones, interferencias, retrasos, y un largo etcétera.

Visitar:

LA ARQUEOLOGÍA DE LAS  CARTAS DE NAVEGACIÓN EXISTENTES EN  YIQ-RGB!

Retomemos la idea de los vectores como colores. Una aplicación directa son las cartas de color IQ. La idea es la siguiente: a los valores I les asignaremos el eje cartesiano X y al Q el eje Y.

PALETA NES VECTOR FASOR COLOR

La siguiente gráfica tiene un valor base y es el LUMA = 50% , es decir a valor de luma constante mientras recorremos punto por punto los  valores I y Q.

Fuente de la imagen wikipedia.

Para construirlas debemos usar las ecuaciones de YIQ a RGB, y como resultado podemos observar los colores, teniendo siempre presente YIQ o YUV son ecuaciones NO son colores.

R =  100% Y + 95.6% I + 62.1% Q
G = 100% Y 27.2% I 64.7% Q
B = 100% Y 110%Q  + 170%Q

Revisemos algunas cosas extrañas de los valores RGB a ingresar en las ecuaciones:

  • Si los los valores R, G y B  van del 0 a 1 son numero de precisión sencilla o  SINGLE.
  • En los sistemas actuales  RGB en aplicaciones de computación gráfica generalmente de 0 a 256 números del tipos ENTERO
  • En los  sistemas de archivos de 0 a 255  son del tipo BYTE es decir se almacenan tal si fueran un CARACTER. Para poder observar el color en una computadora moderna  desde un archivo lo multiplicaremos por 255 el resultado de las ecuaciones. No puede ser más sencillo.
  • Si son suficientemente observadores; encontraran que las ecuaciones poseen  coeficientes negativos,  siendo muy fácil obtener colores RGB negativos,  y nos lleva a la primera observación: Cuando definimos una base luma es imposible encontrar muchos colores, es decir no son infinitos.  
Fuente de la imagen: http://webstyleguide.com
  • Recuerden que este tipo de gráficos que denomino como cartas  son ilustrativos la observación de los  colores, no a la exactitud de las ecuaciones. Es decir son para OBSERVAR y comprender, por ello de las compresiones.
  • Lineas adelantes mostrare las cartas propias, pero podrán encontrar gráficos similares para YUV de PAL  en  la wikipedia.  https://en.wikipedia.org/wiki/YUV

Saltemos a una aplicación que realmente una  aproximación el llamado “circulo de colores“. En ellos podremos observar en un  los colores encerrados en un CIRCULO  a un valor Luma constante.  Con  este tipo de carta de colores, partiendo de un angulo de fase conocido podremos encontrar un tono de color.

POLAR ROTADO COMODORE NES ETC
Basade en : http://c-128.freeforums.net/thread/86/colors

En estos  casos para resolver los componentes IQ debemos partir el radio del circulo de color  A:

I = A  Cos (  θ )
Q = A Seno ( θ )

     El  radio de color A es el mismo valor de la amplitud de la onda de color.

El tema es importante para mostrarles la siguiente  observación: Cualesquiera que sean nuestras suposiciones previas, debemos partir de un LUMA constante y una magnitud de onda croma constantes, si queremos resolver el problema de la PALETA IDEAL en vida.

Se puede igualmente argumentar desde el revisionismo técnico que pretendo desarrollar. Por fortuna dispongo de aplicaciones que me permitieron construir algoritmos años luz a los disponibles para 1980. Plantear una solución compleja de optimización numérica, no tiene mucho sentido, lo ideal por tanto es buscar algo semejante a las limitaciones de la época y de paso  documentando las decisiones tomadas.

Pero, recuerden son NÚMEROS NO COLORES,  por lo que dedicare los dos siguientes apartados a revisar gráficos reales para no generar conclusiones apresuradas.

 

RECONSTRUCCIÓN DE  CARTAS DE COLOR

Nota 1: De este punto en adelante, la mayoría de las imágenes que deseo mostrar son inéditas, o por lo menos lo son en español, no duden en compartirlas y de paso recomiendan visitar esta humilde blog.
Nota 2: Los lectores avanzados entenderán la necesidad de construir transformaciones desde el color NTSC (la TV) hasta la salida SRGB (la PC-ATX), pero no serán parte de la presente entrada.

Para sustentar el presente relato desarrollé dos micro-programas con el principal objetivo de  generar una carta de color y posteriormente revisar la información generada,  con los que espero podamos resolver muchas dudas.

Los siguiente fueron los parámetros:

  • Ecuaciones YIQ/PAL y la  YIQ/NTSC,
  • El software es muy rudimentario, cada imagen generada puede tomar entre 5 a 10 minutos en ser completada.
  • Muestran solo colores validos, asignado a los no validos el color negro NEGRO  o RGB(0,0,0).
  • Para mostrar los limites de las ecuaciones me enfoqué en dibujar:
    • Eje X en el rango de   -1 a 1.
    • Eje Y en el rango de   -1 a 1.

Lo primero que deseo mostrarles son las cartas NTSC-YIQ, para valores de luma de 0 a 1 a intervalos de 0.1:

Click para ver a tamaño completo!!

 

TESORODELSABER RETOR LUMA YIQ
Elaboración propia

De los gráficos YIQ deseo destacar:

  • En Luma = 1 y Luma = 0, no tendremos colores.
  • Mientras que para los valores de luma entre 4 y 7 tendremos una buena oportunidad den encontrar colores.
    • No deberíamos descartar valores de 3 a 4
  • MUY IMPORTANTE, En Luma = 0.5 observaremos en detalle una especie de rectángulo rotado 45 grados.
  • En los cuatro cuadrantes y sentido de manecillas de reloj colores cercanos a: Morado, Azul, Verde  Rojo.
  • Relacionado con la magnitud de la señal de croma (A). Dado que  solo encontraremos colores en valores  Q  -0.5 a  0.5 (-0.5<Q>0.5). Lo mismo acontece con el componente I; en un rango de  -0.25<I>0.25.

Ahora las cartas PAL-YUV, para valores de luma de 0 a 1 a intervalos de 0.1:

Clic para ver a tamaño completo!!

TESORODELSABER RETOR LUMA YUV
Elaboración propia

De los gráficos anteriores YUV deseo destacar:

  • Al igual que en el NTSC a valores de  Luma = 1 y Luma = 0 no tendremos colores. Mientras que para los valores de luma entre 4 y 8 tendremos una buena oportunidad den encontrar colores.
    • Mucho mejor que en YIQ
  • MUY IMPORTANTE, En Luma = 0.5 observaremos en detalle una especie de rectángulo, pero no esta girado como en YIQ.
  • En los cuatro cuadrantes y sentido de manecillas de reloj colores cercanos a: Morado, Rojo,  Verde  , Azul,Rojo.
  • Relacionado con la magnitud de la señal de croma (A). Dado que  solo encontraremos colores en valores  Q  -0.5 a  0.5 (-0.5<Q>0.5). En el caso de del componente I es decir  -0.25<I>0.25.

Una ultima imagen. Nos permite diferencia entre YIQ y YUV,  en donde espero puedan observar  la rotación de una figura rectangular, en los colores un reflejo de valores en  “eje Y”.

TESORODELSABER RETRo YIQ VERUS YUV FAMICON
Elaboración propia

Infortunadamente para la PALETA IDEAL debemos partir del YIQ  desde  la premisa de un  japones similar al NTSC  Norte Americano, con limitaciones en los valores de luma que no son parte de la entrada.

ARQUEOLOGÍA DE PALETAS DE COLOR PARA EL NES/FAMICON EN EMULACIÓN

Las comparaciones son odiosas, pero iniciamos con la paleta que he usado de base desde el principio la NESDEV, no es la base de la PALETA IDEAL.

Nota: Según indica esta Wiki basado   blargg’s Full Palette demo  corriendo en Nestopia.

Clic para ver a tamaño completo!!

PALETA DEL NES FAMICON AMPLITUDES Y FASES YIQ
Elaboración propia

La carta YIQ/YUV en un excelente medio para observar que tan interesante es una paleta. El gráfico para la NESDEV es el siguiente:

PALETA DEL NES FAMICON AMPLITUDES Y FASES YIQ 2Elaboración propia

Destaquemos los apartados importantes:

  • Los valores de LUMA les observaran azarosamente distribuidos, lo cual es gran inconveniente.
    • Igualmente los valores de en las magnitudes de señal de croma o √(I² + Q²)
  • Encontraran ángulos de fases negativos, en sitios contrarios de la paleta. Nos indica que son colores ajustados a una observación, causadas por ruidos.
  • En este caso la de NESDEV un tanto dispersa, no podremos encontrar relaciones de ángulos de color de los componentes YIQ. Los números no tienen  relación matemática, y de paso no cumplen los principios de la paleta ideal.

Tengan presente que depende de las formas de captura de color, compresiones y captura de la información de color. Igualmente insisto, la paleta ideal no es la piedra filosofal es el relato del software lúdico.

Notas de las capturas de pantalla del software desarrollado: El tamaño de cada punto es proporcional a los valores de LUMA, igualmente encontraran para cada color: Luma, magnitud de onda de croma y desfase en grados sexadecimales (0 a 360°).

Una siguiente opción   es revisar el generador propuesto por  Joel Yliluoma, lo encontraremos  un tanto más interesante, pero la idea no es la de realizar una  ingeniería inversa de esta paleta solo separarle de la paleta idealizada.

Clic para ver a tamaño completo!!

TESORODELSABER RETRO bisqwit.png

El generado nos enseña una paleta interesante y favorece algunas notas:

  • Cada columna el valor de los desface son son similares. (cumple)
  • Las magnitudes de los valores de luma se  ven incrementados al bajar en cada columna. (cumple)
  • Los valores de por fila tienen valores de magnitud de croma (radio)  aumenta, sin mayor relación por el momento.(pendiente por verificar)

Un ultimo ejemplo de una paleta que esta muy alejada de las ideas de la paleta ideal  la encontraremos por defecto en Nestopia (RGB), mientras la paleta YUV  es similar a la Yliluoma pero rotada en coordenadas PAL,

tesorodelsaberretro paleta nes famicon comparativo 1.png

NESTOPIA YUV PALETA.png

visitar:

NOTAS SOBRE ESTRUCTURA DE LOS FICHEROS .PAL

Quisiera dedicar unas cortas lineas para hablar de los ficheros .PAL usados por los emuladores convencionales NES/FAMICON. Cada color es un conjunto de tres valores de 8bits (1 Bytes)  por cada componente de color R, G y B, el fichero reserva  64 valores de paleta. El tamaño del archivo es:  3 * 1 byte * 64 =   192 Bytes.

El siguiente gráfico muestra el orden de dibujado estándar de la paleta en los editores de cada uno de los 64 colores almacenados en el fichero.

tesorodelsaberretro palenta nes famicon archivo pal
Elaboración propia

Con esto ya podremos resolver los algoritmos base o algún proceso iterativo para encontrar la PALETA IDEAL, en otras palabras encontrando:

  • 4 (cuatro) valores de luma
  • 12 (doce) ángulos diferentes,
  • 1 (un) valor constante de amplitud de croma o A.

fases

SATURACIÓN Y AMPLIFICADORES OPERACIONALES – BREVE INTRODUCCIÓN

Antes de continuar con los colores debo hacer unas anotaciones sobre la aplicación real de la matemática mediante electrónica. La forma más difundida de resolver las ecuaciones de las transformaciones de color es el uso de amplificadores operacionales.  Son circuitos que integran una gran cantidad de elementos electrónicos y como su nombre lo indica sirven como amplificadores en multitud de aplicaciones. Son unos circuitos increíbles, en especial para resolver las ecuaciones de la TV CRT y la construcción de filtros de audio y radio frecuencia.

La aplicación de amplificador operacional que nos atañe es la de lazo re-alimentado , figura y ecuaciones mostradas a continuación (fuente wikipedia). La configuración permite implementar los “los coeficientes” de las ecuaciones de transformaciones de color (YUV,YIQ,YPbBr,YCbBr, etc).

{\displaystyle V_{\text{out}}=V_{\text{in}}+i\times R_{f}=V_{\text{in}}+\left({\frac {V_{\text{in}}}{R_{g}}}\times R_{f}\right)=V_{\text{in}}+{\frac {V_{\text{in}}\times R_{f}}{R_{g}}}=V_{\text{in}}\left(1+{\frac {R_{f}}{R_{g}}}\right).}

Para el coeficiente que acompaña el  luma es   1, llamado ganancia.    La ganancia es calculada mediante la expresión:

G =  1 + Rf/Rg

Ejemplo: Tenemos la ecuación YIQ al color rojo o R =  100% Y + 95.6% I + 62.1% Q.  Tomemos  el termino + 95.6%I= 0.956 I.; tomaremos uno de los dos valores como fijo 1kΩ  para Rg ; entonces  Rg = 1kΩ por tanto 1= ( 1 +   x/100k) en donde  el valor buscado es  3.5 kΩ

Es posible obtener un valores negativos mediante una doble fuente, pero no es el caso que nos atañe.

Dual-supply-op-amp-signal-output.png
Fuente de la imagen. Learning about Electronics

Como comenté las ecuaciones tienen soluciones que NO llevan a COLORES REALES, pero al ser implementadas en electrónicas son representaciones en nivel de tensión  (voltaje) o IRE, por consiguiente si tienen un valor. Cuando la tensión es mayor a una referencia o un tanto menor a la tensión de alimentación referenciada por el fabricante la señal es cortada o   es llevada a SATURACIÓN.  Igualmente, la tensión nunca puede ser mayor a valor de alimentación de los integrados . Como consecuencia la onda de salida es deformada.

Saturación de amplificadores operacionales: Fuente de la imagen Wikipedia

En las ecuaciones de transformación de colores, podemos resolverlo didacticamente como ejemplo el color Rojo (red):

R =  100% Y + 95.6% I + 62.1% Q
Cuando  R > 1 entonces R = 1

Lo mismo acontece con los valores inferiores cercanos al cero:

Cuando R<0 entonces R=0.

Lo cortes NO son deseados para la PALETA IDEAL, sin embargo son muy interesantes cuando observamos como afectan la LUMA, FASE y AMPLITUD en señales ideales.

En la  entrada sobre RGB recomendé  Conversor RGB a YPbPr – Una Odisea Personal! es un excelente ejemplo de una aplicación  de aplicación de  transformación  RGB a YPbPr. La odisea consiste en encontrar: los valores  las resistencias, los amplificadores operacionales dentro de los rangos de frecuencia de la señal (mayores de 15 kHz, frecuencia de cambio de linea en modos 480 linea progresivas)  y  todo el montaje funcione de modo que podamos observar alguna imagen en la TV.r5RhU

Visitar:

RECONSTRUCCIÓN – GENERANDO “UNA” LA PALETA IDEAL

En breves lineas comentaré el pseudo-algoritmo de la paleta ideal para finalizar la entrada. Es de los más sencillo. Lo primero que vamos a hacer es obviar la del circulo de los colores.

Los siguientes gráficos de elaboración propia muestran los colores YIQ. En el sentido horizontal (eje x) de 0 a 2π. En el sentido vertical (y) la amplitud de onda de croma  con valor 0 en la parte inferior aumentando pero nunca alcanza el valor 1.

TESORODELSABER RETOR   YIQ LUMA DESPLAZAMIENTO Y Y CROMANES FAMICON.png
Elaboración propia

Algunas cosas que podemos observar:

  • Los colores con menores valores de croma como grises u opacos.
  • Cuando nos alejamos del valor centro del gráfico veremos colores mejor definidos.
  • En las áreas en mostradas como color negro  las ecuaciones YIQ no resuelven colores RGB, indicando que el color no son círculos ideales.

Para construir la paleta  ideal la patente indica 12 valores diferentes de fase, es decir 360°/12= 30°  (que es lo mismo que 2π/12=π/6).  Los colores cada 30° grados  son mostrados a continuación:

TESORODELSABER RETOR 30 grados paleta NES FAMICON
Elaboración propia

La siguiente gráfica nos ayudara a entender como es determinar en que angulo iniciamos con la paleta, podemos iniciar con el angulo 0°,  no tendremos problemas en acomodarlos a lo ya establecido obligando a iniciar con un angulo de +90°.

Nota para los curiosos avanzados: Observaran algo tácito o por defecto en el problema  es ¿cuál es el valor de inicio? y ¿cuáles son los valores de lo saltos de los ángulos?. Como es “IDEAL” no importa mucho, pero como entenderán cada grado es un color diferente aun cuando no fuese apreciable a simple vista. Si  planteáramos otro escenario con análisis de  ARMONICOS encontraremos otros valores posibles de colores, es decir los colores no son un patrones FIJOS en una señal tan compleja como es la TV CRT .

TESORODELSABER PALETA NES FAMICON opciones
Elaboración propia

Recuerdan la rotación de colores YUV y YIQ, su efecto es pronunciado en las gráficas generadas:

tesoro del saber retro paleta YIQ vs YUV.png

Los siguiente es identificar los valores de las variables LUMA y  AMPLITUD DE CROMA  de modo que generen valores  RGB validos  o valores entre 0 y 255 de cada componente de color.  En NTSC la altura del pico estándar máxima  0.714 Voltio y mínima -0.286 Voltio es decir de altura de 1 Voltio

LUMA: El valor máximo y mínimo EXACTO, mediante prueba y error en un software generador de la paleta ideal. Para completar los 4 valores de valores de LUMA mediante los valores mínimos y máximos encontrado.

Mediante los valores Lmax y Lmin, se interpolan los valores fijos de luma intermedios.   El incremento del luma, Lincremento = (Lmax – lmin)/3.

No olvidemos que el valor máximo en la señal de 0.714 voltios en NTSC

Fuente de la imagen: Wikipedia.

Elegir otros putos para el luma  requiere  consideraciones como variación mediante las modificaciones llamadas correcciones de gama.

AMPLITUD DE ONDA DE CROMA: Recuerden las gráficas donde mostré los gráficos con los valores validos de amplitud,  ya reduce el tiempo de identificar mediante prueba y error = HEURÍSTICA.

Por ejemplo: Asimilemos por el momento que la altura la señal tiene 0.714 voltios, cuando dividimos el el luma en 4 partes, esto nos da aproximadamente 0.1785 voltios.

COLOR BLANCO: Para obtener color blanco debemos hacer un truco indeseado y es usar una amplitud de croma igual a 0, A=0, variando el luma con el resto de los colores.

El resultado lo pueden observar a continuación, una PALETA IDEAL (versión 1), colores validos y la encontraran a su “experiencia” como un tanto pálida o  de-saturada.

A = 0.10454
Luma máximo =  0.75
Luma  mínimo = 0.207307
Angulo inicial = -90

TESORODELSABER RETRO PALETA NES FAMICON PALETA IDEAL VERSION 1

TESORODELSABER RETRO PALETA NES FAMICON PALETA IDEAL VERSION 1 colores

Una versión de lo que esperaríamos fuese un valor un poco aceptable:

  A = 0.185
Luma máximo =  0.74
Luma  mínimo = 0.185
Angulo inicial = -90

TESORODELSABER RETRO PALETA NES FAMICON PALETA IDEAL VERSION CASI IDEAL SAUTRADA.png

Algunos curiosos tendrán dudas sobre cómo se observa una paleta una paleta medianamente saturada:

A = 0.3
Luma_máximo =  1
Luma Mínimo = 0
Angulo inicial = -90

TESORODELSABER RETRO PALETA NES FAMICON PALETA IDEAL VERSION CASI SAUTRADA

ALGORITMO BASE

Si son un tanto más que curiosos,  repasemos el algoritmo y las ecuaciones.

I = A  Cos (  θ )
Q = A Seno ( θ )
R = 1.017294 * Y + 0.9514548 * I + 0.6102466 * Q
G = 1.017294 * Y – 0.2774045 * I – 0.6579992 * Q
B = 1.017294 * Y – 1.10846 * I + 1.6894371 * Q

Pero en las computadora colores 24 bits o 3 componentes RGB de 1 Byte:

R8 = R * 255
B8 = B*255
G8 = G*255

Lo primero, todo va de un valor dado para la amplitud de croma A y  variar los valores desfase θ y el luma Y . 

El angulo de desfase de onda:

    θ = {-90,-60,-30,0,30,60,90,120,150,160,190,220.240} 

El desfase  expresado en RADIANES, pero no es tan complicado solamente es multiplicar los por el valor de π y dividir por 180° (Radianes = Grados * π/180)

NO existe ficheros ideados para valores YIQ, esto quiere decir que los ángulos son re-calculados desde la función arco tangente, serán diferentes a los calculados más no incorrectos.

Para el el luma Y:

Definimos un Lmax y Lmin,  luego calculamos los incremento del luma:
Li = (Lmax – lmin)/3.

Y = {Lmax,  Lmax-Li, Lmin+Li, Lmin}

Los limites les podemos controlar, ejemplo para color ROJO.

Cuando R<0 entonces R=0.
Cuando  R > 1 entonces R =0

Nos dará colores negros a los valores no validos.

Para saturarlos, ejemplo color ROJO:

Cuando R<0 entonces R=0.
Cuando  R > 1 entonces R =1

Un ultimo truco, es posible construir una paleta YUV con este algoritmo, pero considero personalmente mucho más simple  modificar la programación logica de la PPU y modifique las fases.

PERO, ¿QUÉ NOS ENSEÑA LA PALETA IDEA DEL NES/FAMICON? DIVAGACIONES FINALES

Estudiar el vídeo juego “en idioma español” es similar cada vez más a estudiar a la humanidad, todos quieren quedarse con lo superficial lo fácil, pocos intentan ahondar en temas técnicos y científicos.

Como las palomas que presiona botones de manera supersticiosa en donde  son preferibles las re-interpretaciones superficiales, el vídeo juego cinemático que nos lleven a  olvidar que los vídeo juegos son maquinas automáticas sin alma.

Como un síntoma de ello hemos creado para la NES/FAMICON paletas de colores como una forma de deleite artístico, NUNCA les harán menos validas. Aun cuando seria preferible alentar a las nuevas generaciones a ver el vídeo juego como más que una caja y les permita construir nuevas maquinas que descresten a sus usuario, con sustento científico mediante la  ingeniería  y técnica.

Finalmente, quedan varias ideas para continuar con esta interesante serie,  pero esta vez no prometeré nada.  No duden todas ellas  estarán llena de nuevos temas interesantes nunca tratados previamente en idioma español.

 

 

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión /  Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión /  Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión /  Cambiar )

Conectando a %s