色、色域、カラープロファイルのはなし

せっかく Adobe RGB 98% カバーなんて言う、高い液晶を買ったにも関わらず、印刷しても他の液晶で見ても、まるで変な色が出て悩む日々です。この背後には、カラープロファイルとか、色空間とかいう概念が関わっているようなので、ここ1週間ほどがしがし調べました。初心者にわかりにくく、理系にわかりやすく(?)書いてみましょうw 私、専門でも何でもないので、ちげぇよぼけぇ!という内容があったら指摘してくださいませ。というか、誰か教えてください。助けてください。

色とは

ご存じの通り光は様々な波長の電磁波の重ね合わせである。各波長の成分プリズムなどでスペクトル分解できる。光と色の関係はどうだろうか? 同じ光を目に照射すれば同じ色刺激を受けることは理解できる。では、別の光で同じ刺激を与えることは可能だろうか? 

色 - Wikipedia

Wikipediaによれば、実は人間の目には光で刺激を受ける、実にわずか3種類の錐体細胞によって知覚している。各細胞は、各光の波長に対して吸収率をもっていて、ある光に対して各錐体細胞は1次元の情報しか得ることができない。合計で、たったの3次元の情報しかないのだ! これはちょっと目から鱗である。ある一つの錐体細胞に限れば、違う波長の光を当てて、同じ刺激を与えることが可能なわけだ。ただし、別の波長であれば、他の錐体細胞はもっと別の刺激を受けるので、そういうわけで色を認識できる。余談だが、音はこれとは対照的。和音を認識できると言うことは、音の重ね合わせも別物として認識できる。一方、音は空間的な広がりを認識することが難しい。なかなか、うまいこと棲み分けができているものだ。

さて、では人工的に色を合成するにはどうするのが簡単か。ある光を受けたときに得る刺激と同じ刺激が得られるような光を照射すればよい。この刺激はたったの3次元なので、自由な波長の重ね合わせができればいくらでも自由度がある。たとえば、S,M,Lがそれぞれ20,40,50(単位はよくわからん)の刺激を受けていたとする。ここに、S,M,Lに対して、(1,0,0), (0,1,0), (0,0,1)の刺激を与えられる光線があったとしたら、これを20:40:50の割合で照射してやれば先ほど受けていた刺激を再現できる。元の光のスペクトルとは無関係に! もちろん別の光線でもよくて、(1,1,0), (0,1,1), (0,0,1)を20:20:30でも同じ刺激になる。これは単に3次元空間中で基底を変換しているだけなので、線形独立な任意の3種類の光線の重ね合わせで、任意の刺激を再現できる。これに従ってR(700nm)G(546.1nm)B(435.8nm)の3波長を基底にしたのがRGB表色系だ。

色空間 - Wikipedia

ただし、もちろん気をつけなければいけないのは、「任意」の基底を本当に選ぶと、当たり前だが成分が負になることがある。もともとこの3波長の光ですべての色を再現しようとしたところで、再現できない色があることを発見したそうな。負の光を放つことはできませんからね。以下のサイトがわかりやすい。

DIC Color Design, Inc.

これを嫌って、負数がでないように基底を張り直したのがXYZ表色系である。これが、よくカラープロファイルなどのツールで目にする、あの扇形の図である。やっていることは基底の張り直し。ここで、一番大事なのは、語弊を恐れずに書くと、色は三次元空間上に存在するという点である。

※会社でちょっとはなしたことですが、XYZ表色系の図で扇形が描かれるのは自然界に存在する光による色刺激の空間を表しているものと思われます。各波長の光線を目に当てたときの色刺激は、各錐体の吸収率が線形ではないため、波長をかえてプロットするとこの色空間上で曲線になります。これが扇形上の図中の曲線部分。途中で切れているのは、赤外光と紫外光は人間の目に知覚できないため(これは吸収率が0になるということ)、描かれていないということと思われます。光はこの各波長の光線の線形和ですから、積分して1になるような重みをつけた色刺激はこの曲線の内側に存在することになります。負の光はないわけですね。

PCにおけるRGBとカラープロファイル

実際のディスプレイを考えてみる。ディスプレイは概ねRGBの成分の重ね合わせで色を再現するわけだが、上記の議論の通りこれでかなり自由に色を再現できる。RGBのそれぞれの光を消灯状態から最大までそれぞれ変化させると、これは3次元空間上で六面体になる(XY平面は各出力の比なので、六面体を斜めに切った三角形になる。拡張点がR,G,Bのみを最大出力した点)。これが表示装置での色域と呼ばれるものである。色域は表示装置固有のものだ。しかし、この取り回しを楽にしようとういことで、ブラウン管の標準的な色域としてWindowsに採用されたのがsRGBという色域である。RGB 24bitの情報を、この六面体内にマッピングされることになる。つまり、PCにおけるRGBとは、この六面体の方向に基底を取り直したときの座標である。当然、装置によってこの基底がことなるわけだから、装置によって同じRGB値を出力すると別の色が表示されてしまうことになる。ここで、仮にディスプレイの色域がわかっているのなら、相互に同じ色を表示させることは簡単であろう。装置Aでの3次元のRGB色ベクトルを、一度(たとえば)XYZ表色系中での座標に変換し(単なる基底の張り直し)、装置Bでの色域中での座標に再度変換すればいい。この変換マップがカラープロファイルである。画像ファイルを読み込むときにXYZ表色系への変換が画像に埋め込まれたカラープロファイルで、表示時に使うのがディスプレイのカラープロファイルである。やっていることは、単なる一次変換である。実際は、中間色の再現のためにガンマ値の変換を行うが、ここではすっ飛ばす。このあたりの詳しい説明は、かの液晶選びの有名サイトを参照するのがよい。

miyahan.com | 液晶ディスプレイとカラーマネージメント

もちろんこの変換によって0-255の範囲を超えてしまうことがある。こうした色はその装置では再現できない。しょうがないので0や255で丸められることになる。この段になって、初めて私は高い液晶を買った恩恵にあずかるのである。たとえば、LightroomAdobe RGBとsRGB出力したJPEGを比べてみよう。firefoxでそれぞれひらいてPrintScreenした画像です。このくらいの色域の写真なら、実はsRGBの範囲に収まっているのでどちらで出力しても同じ色で出力される。firefoxはちゃんとカラープロファイルを適用してくれる。ちなみにIEでは、別の色で表示されるが、これはカラープロファイルを読んでないからであって、色域の違いではない。

彩度をがしっとあげてみるとどうなるか。ごらんの通り。左がAdobe RGB出力、右がsRGB出力である。firefoxでちゃんとプロファイルは当たっているのだが、それ以前にJPEG出力する段でsRGBは緑が飛んでしまった。ところで、Lightroomの色飛び表示はどの色域でやっているのだろう。警告でないということは、sRGBではないんだろうが、sRGB出力を前提として作業している人には辛いかも。

特にAdobe RGBは緑〜青のあたりの色域がsRGBで広いのが特徴なので、このあたりの色をsRGBでは再現できません。しかし、ここまで来て思うのは、こんなケバい色の物質なんて日常生活にないような。私のもともとの現像は上の画像だったのでした。新緑でよく晴れた状態で逆光で撮って、彩度あげまくって現像したら生きてくるかな。あるいは、緑色の天体とかか? ところで、RGBの出力はディスプレイによって違うということからわかるとおり、Webページのデザインとかどうなってるんでしょうね。あれは、sRGB下での色という前提があるんでしょうかね。なかなか謎です。

ちなみに、キャリブレーションというのは、ここまでが全部ちゃんと行われた上で行う作業。想定されている色域と現実にディスプレイが出力できている色域にギャップが生じるわけです。これを埋める作業です。特に中間域で線形に出力されるとは限らないようです。たとえば、RGB=128,128,128の入力に対して、それぞれ最大出力の半分ずつ出力されるとは限らないということのようです。

しかし、こうした色域の狭い広い問題以上に、現状ではこのカラープロファイルの適用を行っているアプリケーションが、少なくともWindowsでは極めて少ない。その点についても上記サイトを参照されたい。ということで、最近mac買おうか悩んでるのでした・・・。

ミニチュア写真風フィルタ

ちょっと最近作っているのが、ミニチュア風フィルタです。Tilt Lens でぐぐるとたくさん引っかかりますが、本城直季さんの写真集を始め、ここ数年 Tilt Lens を使ったミニチュア風写真が流行っているみたいです。原理自体は単純なので昔から有りそうなものですが。探すと、photo shopなどを使ったデジタル処理も載っているのですが、いかんせんレタッチソフトのぼかし機能はこうしたようとに使うためのツールではないため、若干不自然です。具体的には、本来ピントのあった点からの距離に応じてぼけ量が大きくならないといけませんが、こうしたレタッチツールはそのようになっていません。まじめにこれを実現するには、ボケ量が変わるように何度もぼかしフィルタを適応する必要があります。

ということで、今回専用のミニチュア風フィルタを作ってみました。やっていることは簡単で、ピント点からの距離に比例させてぼかしているだけです。愚直に実装すると遅いので、多少の工夫が必要です。Opne CV を使っています。楽ちん!

元絵

処理後

1600 くらいのサイズでも5秒くらいで処理は終わります。ちゃんとボケ量調整をしているのでナチュラル。

いいのがたくさんできたらまとめてアップしたり、今後のテーマとしてミニチュア風ビデオを作ってみたいところ。

vivipriを試す

すっかり写真以外の話がなくなってしまいましたw

私は印刷するのも好きなので、たまにプリントサービスを利用しています。それこそ、安いのでいいと思っていたのでなるたけ安いところにお願いしていました。先日、ヨドバシでプラプラしていたら、高級印刷紙がおいてあったわけですね。ピクトリコの印刷紙です。いや、サンプルみてびっくりした。紙だけでこれだけ変わるとは! サンプルを送ってもらえるそうなので、送ってもらって家で印刷したら、これまたすごくきれい! コントラストが高いのか、黒がしっかり出ます。安いところで印刷したのは、ちょっとくすんだ印象。単に劣化しただけなのかもしれませんが。ただ、色合いがディスプレイと違う・・・。激しく違うので、カラーマネージメントがなってないんだか、ソフトの問題でしょう。なんか、ググるLightroomで印刷すると赤くなるという話が引っかかる・・・。

ということで、もうちょっといいところに出そうと思って探して、品質に文句あったら返金という自信満々のここ!

最初の100枚はL版1円とい驚きの価格なので、最近気に入ったのをどばっと注文。ついでに、最近のお気に入りはA4にしてみました。A4でも200円。今日届いたんですが、これはびっくり。こんなきれいだとは! 100枚以降も、1枚15円だったら、もうずっとここでいいわ、という感じでした。

減光フィルター

前から滝を撮りたい撮りたいと思っていたのですが、ちょうどリモートスイッチ買ったことだし、減光フィルター買って滝撮ろう!と思い立ったのが昨日。前、九州で滝撮ったときは 35mm で最大の F22 まで絞っても 1 秒しか稼げませんでした。これはけっこう暗くしないといけないなと思って 3 段分(ND8)をさがしたのですが、これがないないない。結局、新宿ヨドバシにもなくて、ひょっとしてと思って寄った新宿ビックにありました。もう、こういう商品はポチポチクリックして買うことにします。49mm 用が 1500 円切ってて、これでいいかと思いましたが、結局ズームレンズ使うかもとか色々考えて 72mm とステップアップリングを。あ、よく考えたらこれだとフードつけられなくなるのね。

使ってみた感触だと、少なくとも 6 秒くらいはあけたい。4 秒だとまだ微妙。10 秒あるともっとほわんとなるので、だいたい 10 秒くらいで撮ってました。上の写真は 20 秒あけて撮ったもので、液晶だとわからなかったんですが、家に帰って見てみるとより幻想的になります。水がほとんどぼやぼやしてる分、静止している岩や木の葉が強調されますね。もっと、これ!といった被写体があったら良かったんですが。

リモートスイッチ

Canon リモートスイッチRS-60E3

Canon リモートスイッチRS-60E3

そろそろ花火の季節なので、今年こそ気合い入れて撮るためにリモートスイッチを購入。ネット上での噂を頼りに、Canon 製のリモートスイッチを買ってみたところ、ビンゴ。ちゃんと K7 でも動きます。単に、ショートさせてるだけなんでしょうか、以前どこかで自作したページを見た気がします。K7 は動画もとれるので、スターマインの動画なんかも撮れるかもしれないですね!

四楚面歌

会社で四字熟語の2文字目と3文字目を入れ替えても読めるものがあるということが話題になりました。

  • 四楚面歌
  • 焼定肉食
  • 水宮天前

どうですか! 逆に読めないのは、

  • 一二石鳥
  • 七八転起

ということで、勝手に『四楚面歌』化させるgreasemonkeyを書いてみました。とりあえず、http://yahoo.co.jp/* にしてあります。twitterとかをこれで読むと楽しげ。

K7登場!

PENTAX デジタル一眼レフカメラ K-7 ボディK-7

PENTAX デジタル一眼レフカメラ K-7 ボディK-7

ついにPentax渾身のデジタル一眼、K7が発売となりました。私も先日Pentaxフォーラムでさわらせてもらった帰りにヨドバシで予約しましたから、昨日購入しました。あまり、発売日に飛びつくという買い物スタイルをとらないんですが、品薄になるんじゃないのかというネット上での噂と、これから7月8月とイベントがいくつかあるので、その前に買ってしまおうという流れになりました。

そして、今日どっかに撮りに行こうとおもったら、あいにくの雨 > < しょうがないので、傘を片手に近所をうろうろ。やはり一番驚くのは、シャッター音がすごく渋くなりました。撮ってて気持ちいい! ボタン周りが若干変わったので慣れないといけないのですが、概ね使いやすくなっていると思います。AFもだいぶ速くなりました。以前が遅すぎという話もありますが^^; 感度も強くなりましたね。ISO3200はさすがになんじゃこりゃですが、800くらいまでなら使っていけるかな?

本当は今日撮った分をアップしようと思ったんですが、LightroomK7で撮ったRAWファイルを読み込めないという・・・。DNG形式にしとけばよかった。