Sixteen by twelve real pixels
A magnified patch of a real photograph, one tile per pixel, taken from the border between a colour chart's blue patch and its green one. The readout gives the index as NumPy would take it — row first, column second — and the three channel values behind the colour.
Try this
Switch the channel order to OpenCV's B, G, R and watch blue and green trade places. Then add 200 with wrap on: the bright pixels go dark, because an 8-bit integer past 255 starts again at zero.
Where this lab comes from
An Image Is an Array: Shape, dtype, and Why OpenCV Hands You BGRLesson 1 of The Image as Data. One photograph, held three ways: a 24.7 MB mosaic of 12-bit counts, a 74.2 MB 16-bit development, and the 37.1 MB 8-bit array imread would give you. Two thirds of the numbers in that last one were never measured, adding 60 to a value of 207 gives 11, and a slice you write into changes the original.
More in the image itself
- One colour per photosite — Throw away two thirds of the colour, then guess it back.
- Hitting the colour a meter measured — Drag the gains and watch ΔE against 22 metered patches.
- Sampling, and the pattern you get instead — Sample a wave too coarsely and a different wave comes back.