Color Constancy & Chromatic Adaptation (2D)
A Canvas2D von Kries chromatic-adaptation lab: divide RGB channels by an illuminant estimate to restore true reflectance, plus Simultaneous Contrast, Dress Illusion and Retinex normalisation views.
This 2D companion renders the same von Kries chromatic-adaptation math as the 3D version through plain Canvas2D fills instead of a fragment shader: nine reference patches sit under a tinted illuminant, an Adaptation Strength slider blends each patch's colour back toward its true reflectance by dividing out the illuminant per channel, and dedicated Simultaneous Contrast, Dress Illusion and Retinex-normalisation views sit behind the same Display Mode selector as the 3D original.
Canvas2D von Kries chromatic adaptation: per-channel divide-by-illuminant blended by an adaptation-strength slider, with Simultaneous Contrast, Dress Illusion and Retinex reflectance-ratio modes.
2D · HTML5 Canvas 2D · 60 FPS target · runs fully client-side, no install