RGB基底の取替え

さて、昨日のRGBの図をもう一度載せよう。

この図の中で、赤の線が0よりも下に入っていっているのが分かるだろう。これはつまり、例えば波長が500nmの単波長光をRGBで表現するためには、マイナスのRをくわえなくてはならないことを意味している。つまり、RGBは万能ではなくて、太陽光のスペクトルのようなものでさえ表現することが出来ないのだ、となる。
じゃあどうすればいいのだろうか?基底を取り替えてみることがもし出来れば、それでやるのが良いのではないか、という事をまず考えた。例えばRGBではない3色を用いて表現した場合、全ての色を負の数を用いずに表現できる可能性がある。その方法はどうすれば良いのだろうか?そこで我々にはプログラミングと言う道具があるので、それを用いてみることにする。
プログラムの方針を書くと、そもそも3つの色を選ぶ必要があるわけで、であればその組み合わせを全て列挙して、一つずつ検証していけばよいだろう。それを実際に実行してみたところ、残念ながらValidな3色を選び出すことは出来なかった。まあもちろん、もしもそんな都合のいい3色があるのだとすれば最初からその3色を使用するだろうし、CIEも馬鹿じゃないだろう。
次に、4色で表現することが出来るかどうかを検証してみることにした。もちろん、3次元空間の基底ベクトルとしては3つしかありえないわけで、4色で表す場合の表現方法は一意ではない。しかしながらその中で、全て正の係数で表すことが可能かどうか、と言う点に絞って検証を行うことにした。
この続きはまた後で。