Image processing
Colors
Storing color information
Tools/devices such as GIMP, scanners, printers etc work with pixels. Each pixel is made up of a number of channels. Typical models include:
- Monochrome images are two-color images: the pixels are either on or off (black or white)
- Greyscale images consist of varying shades of grey
- RGB images consist of R, G and B colors, RGB colors are additive (you add them to get the color you want) - it is typically used on screens
- RGBA images consist of 4 channels (RGB and Alpha for transparency - useful when working with layers)
- HLS images have Hue, Lightness and Saturation
- HSV images have Hue, Saturation and Value
- CMY images have Cyan, Magenta and Yellow, CMY colors are subtractive, you subtract them from white light to get the color you want, it is typically used in printers
- CMYK images have CMY + blacK
Tools such as GIMP store color in one of three ways:
- storing each of the individual colors as individual channels for every pixel
- keeping the combined colors in an indexed array called a color palette
- for grayscale images, keeping a palette that maintains a single level for all three colors
JPEG basics
Format
The formal name of the standard that most people refer to as 'JPEG' is ISO/IEC IS 10918-1 | ITU-T Recommendation T.81, as the document was published by both ISO and ITU-T. IS 10918 has actually 4 parts:
- Part 1 - The basic JPEG standard, which defines many options and alternatives for the coding of still images of photographic quality
- Part 2 - which sets rules and checks for making sure software conforms to Part 1
- Part 3 - set up to add a set of extensions to improve the standard, including the SPIFF file format
- Part 4 - defines methods for registering some of the parameters used to extend JPEG
As well as the standard we created, nearly all of its real world applications require a file format, and example reference software to help implementors. These functions were added to our work by others - the file format was created originally by Eric Hamilton, the then convenor of JPEG as part of his work at C-Cube Microsystems, and was placed by them into the public domain under the name JFIF (available here in the latest version, 1.02).
Probably the largest and most important contribution however was the work of the Independent JPEG Group (IJG), and Tom Lane in particular. Their Open Source software implementation, as well as being one of the major Open Source packages was key to the success of the JPEG standard and was incorporated by many companies into a variety of products such as image editors and Internet browsers.
After creating the JPEG standard described above, the committee started to look at some of the criticisms of the existing standard. High amongst these was the poor quality (and lack of integration) of lossless coding in the standard. With this in mind, the committee developed the JPEG-LS standard - ISO/IEC IS 14495-1 | ITU-T Recommendation T.87.
Downloaded FAQs in '102-Pictures/JPEG tech data'. JPEG is the compression algorithm. It does not specify file format. For this, JFIF, TIFF and SPIFF are used.