Exploring Trichromacy through Maxwell's Color Experiment (2023)

(maxwell.kohterai.com)

40 points | by niwrad 3 days ago

6 comments

  • klaff 9 hours ago
    Nice work! I really enjoy learning how people did these experiments and learned such fundamental stuff with only "stone knives and bear skins"!
    • niwrad 8 hours ago
      Absolutely — these old papers are fascinating. I was also surprised by how much insight is packed into them, especially considering how non-trivial some of it is to unpack. My professor and I spent quite a bit of time reconstructing how the experiment worked from the limited figures.
  • rogerallen 10 hours ago
    Very nice article. I don’t think I was aware of these experiments, but maybe I’ve forgotten?

    Apologies if I just missed this, but is there a link to Maxwell’s original findings?

  • Etherlord87 1 day ago
  • stephenlf 2 days ago
    Awesome read. Thanks for sharing.
    • niwrad 2 days ago
      Thank you for the encouraging words! I’m glad you enjoyed it.
  • turnsout 11 hours ago
    This is awesome—I had never read about this experiment. I'm using the CMF quite heavily right now as I develop a spectral color management system. It's amazing that Maxwell was able to essentially plot out the CMF so early!
    • niwrad 8 hours ago
      That’s really cool — it makes me happy to hear from someone that appreciates the novelty and feat of his experiment just through perceptual matching! The precision he achieved with such limited tools is honestly mind-blowing.

      What are you developing a spectral CMS for? Is it for lighting or materials or something imaging related?

      • turnsout 8 hours ago
        It really is mind-blowing!

        The CMS I'm building is for creative imaging—I want to model some specific subtractive processes from the physical world digitally. In the process, I had to come up with a way to convert RGB to spectral power, and was surprised to find that while there's a Spectral -> XYZ function (CMF), there's no industry standard inverse (XYZ -> Spectral). So I came up with a function which allows you to specify three RGB peaks, along with their widths, and it solves for the correct peak levels to reproduce an XYZ equivalent to the input color. This is my idea of fun! haha