YJK

Last updated
Cropped and zoomed comparison between the original true color image (left) and the YJK (right) version. Rgb vs YJK.png
Cropped and zoomed comparison between the original true color image (left) and the YJK (right) version.

YJK [1] [2] [3] is a proprietary color space implemented by the Yamaha V9958 [4] [5] [6] graphic chip on MSX2+ computers. [7] [8] It has the advantage of encoding images by implementing less resolution for color information than for brightness, taking advantage of the human visual systems' lower acuity for color differences. [9] This saves memory, transmission and computing power.

Contents

YJK is composed of three components: , and . is similar to luminance (but computed differently), and are the chrominance components (representing red and green color differences).

The component is a 5-bit unsigned value (0 to 31), specified for each individual pixel. The and components are stored together in 6 bits as a complement signed value (-32 to 31) and shared between 4 adjacent horizontal pixels (4:1:1 chroma sub-sampling). [10] [11] [12]

The following table shows the encoding of this information across 4 pixels: [10]

YJK bit encoding [10]
Pixel coordinatesBits
76543210
0,0Y1K low
0,1Y2K high
0,2Y3J low
0,3Y4J high

This arrangement allows for the encoding of 19,268 different colors. [10] [11] [12] While conceptually similar to YUV, chroma sampling, numerical relationship between the components, and transformation to and from RGB are different in YJK.

Formulas

Original full color image Rgb.png
Original full color image
YJK converted image YJK example image.png
YJK converted image

The three component signals are created from an original RGB (red, green and blue) source. The weighted values of , and are added together to produce a single signal, representing the overall brightness of that pixel. The signal is then created by subtracting the from the red signal of the original RGB, and then scaling; and by subtracting the from the green, and then scaling by a different factor.

These formulae approximate the conversion between the RGB color space and YJK: [7]

From RGB to YJK:

From YJK to RGB:

The component of YJK is not true luminance, since the green component has less weight than the blue component. [2] Also, contrary to YUV where chrominance is based on Red-Blue differences, on YJK its calculated based on Red-Green differences. [10]

References

  1. Holst, Laurens (2022). "The YJK screen modes". MSX Assembly Page.
  2. 1 2 Niemietz, Ricardo Cancho (2014). Issues on YJK colour model implemented in Yamaha V9958 VDP chip (PDF).
  3. "VCFe Vortrag vom 2016.04.30 - Homecomputer und Spielkonsolen - Videoarchitekturen als visuelles Medium". neil.franklin.ch. Retrieved 2022-11-13.
  4. IC Master. Vol. 3. Hearst Business Communications, 2001. 2001.
  5. Martín Sesma, Sergio (2016-10-03). Arqueología informática: los ordenadores MSX en los inicios de la microinformática doméstica (Proyecto/Trabajo fin de carrera/grado thesis). Universitat Politècnica de València. hdl: 10251/70909 .
  6. Redazione (2008-10-20). "MSX - Vari Costruttori- 1983". CyberLudus.com (in Italian). Retrieved 2022-11-13.
  7. 1 2 "V9958 MSX-VIDEO TECHNICAL DATA BOOK" (PDF). 1988.
  8. Alex, Wulms (1995). "Schermen op MSX - De 2+ schermen" (PDF). MSX Computer & Club Magazine (72).
  9. S. Winkler, C. J. van den Branden Lambrecht, and M. Kunt (2001). "Vision and Video: Models and Applications". In Christian J. van den Branden Lambrecht (ed.). Vision models and applications to image and video processing. Springer. p. 209. ISBN   978-0-7923-7422-0.{{cite book}}: CS1 maint: multiple names: authors list (link)
  10. 1 2 3 4 5 Grauw (2026). "The YJK screen modes". MSX Assembly Page.
  11. 1 2 Silveira, Marcelo (2017). MSX 2+ Colors (PDF). MarMSX - Development page.
  12. 1 2 Nunes, Giovanni (8 June 2015). "Edição de imagens num MSX2+/MSX turbo R". Retrópolis - A cidade dos clássicos.

See also