Soil Colour Reader
Munsell soil colour from a photo, with uncertainty
The colour is worked out with published colour science, step by step: the photo is corrected against your reference card, converted to CIELAB, and compared with the Munsell soil-book chips computed from the Munsell renotation data. The uncertainty is calculated from the pixels you sample and the stated error of each card method. The same photo with the circles in the same place always gives the same answer. Nothing is trained on other people's photos.
Place the circles on the soil matrix and on your reference card, then read the result. Load a photo from your phone camera or gallery; the sample photo shows a three-horizon profile with mottles under a warm colour cast.
Simulated profile photographed under warm, dim light, so the card patches look off on purpose. Move the Soil marker into each horizon: with the card correction it should read close to A 10YR 3/2, Bw 7.5YR 4/4 and C 10YR 6/4. The Bw has 7.5YR 5/8 mottles: shrink the circle (slider, pinch, or + / − keys) and place it on one, such as the large mottle to the right of the Soil marker.
Card targets and uncertainty model
Residual error covers what the card cannot correct: the camera tone curve, uneven light, and the card itself. These defaults are assumptions; replace them with the spread you find when you photograph real Munsell chips under field conditions.
Checks
Pixels inside the soil circle are decoded to linear RGB. Clipped highlights and very dark pixels (voids, deep shadow) are dropped, and the brightest and darkest 10% are trimmed. With a black and white card each channel is mapped with a two-point line through the card patches, which removes both the colour cast and any flare offset. With a grey card each channel is scaled so the card reads 18%. The corrected colour is converted to CIELAB (D65).
Chips are the Munsell soil-book chips (5R to 5Y, the gley pages and neutrals), converted from the Munsell renotation data (illuminant C) to CIELAB under D65. The tool draws 1,500 plausible colours from the sampling error of the soil and card patches plus the residual error set above, assigns each draw to its nearest chip by CIEDE2000, and reports the share of draws per chip. Value is also computed directly from luminance with the ASTM D1535 relation. The probabilities are model-derived: they are only as good as the residual error you set, and are not a substitute for checking against a physical chart.
References: Munsell renotation data: Newhall, S.M., Nickerson, D., Judd, D.B. (1943). Final report of the O.S.A. subcommittee on the spacing of the Munsell colors. J. Opt. Soc. Am. 33, 385–418. doi:10.1364/JOSA.33.000385. Colour difference: Luo, M.R., Cui, G., Rigg, B. (2001). The development of the CIE 2000 colour-difference formula: CIEDE2000. Color Res. Appl. 26, 340–350. doi:10.1002/col.1049; Sharma, G., Wu, W., Dalal, E.N. (2005). The CIEDE2000 color-difference formula: implementation notes, supplementary test data, and mathematical observations. Color Res. Appl. 30, 21–30. doi:10.1002/col.20070. Munsell value from luminance: ASTM D1535, Standard Practice for Specifying Color by the Munsell System. ASTM International, West Conshohocken, PA. sRGB decoding: IEC 61966-2-1 (1999), Default RGB colour space – sRGB.
How to cite: Flynn, T., Swafo, S.M. (2026). Soil Colour Reader: Munsell soil colour from a photo, with uncertainty, version 1.0 [software]. https://doi.org/10.5281/zenodo.23737366. Please also cite the references above. All citations →