- ベストアンサー
デジカメの撮像素子のカラーフィルターについて。
デジカメのCCDの前面にカラーフィルターがついていますが、その配置は 緑青 赤緑 だそうですが、 例えば、白い紙など撮影してそれをモニターなどで拡大すると 一切画処理されていなけれ(ROWなど)ば、そのまま 緑青 赤緑 に見えると思うのですが、 実際は 白白 白白 に見えます。 これについて詳しい方、説明していただけないでしょうか? 実は所属する写真クラブ(老人が多い)でデジカメ初心者講座を開こうとしているのですが、 このあたりを突っ込まれると説明ができなくて困りそうです(汗) 宜しくお願いいたします。
- みんなの回答 (7)
- 専門家の回答
質問者が選んだベストアンサー
一番単純なアルゴリズムは,中間値を使うことでしょうね. 赤や青のセンサーの場所の,緑の強度は周囲の4つの緑センサーの出力の平均値を使うとか. 実際にはこんなに単純ではありません. 人間の視覚特性を考えると,輝度-色差分離という考え方を使うのが合理的です.人間の視覚特性は輝度の変化には敏感なのに対して,色差の変化に対して鈍感なことを利用しています (JPEG 圧縮は輝度情報はできるだけ残し,色差情報を間引くことでデータ量を減らすという考え方に基づいています). 人間の視覚特性の関係で,輝度情報は緑のデータのウェイトが高くなります.そのために Bayer 配列では緑のセンサーの数が多くなっていて,緑の画像の解像度が取れるようになっています.この緑データを中心にしてできるだけ精細な全体の輝度分布画像を作ります.ここがうまくできれば,あとの色差情報は精度の怪しい推定でも,画像としては不自然になりません.もちろん,全体の色バランス (要するに色温度推定) とかはまた別の問題です.色差情報については,たとえば4画素ひとまとめで計算して同じ値を使ってしまってもさほど大きな問題はでません.このような考え方を利用しているものが大半でしょう. 最初の回答の参考 URL の写真のように,raw データをそのまま表示したのでは何の写真だかわかりません.どういうデータ形式で記録しようが,表示ソフトはなんらかの補間処理をした上で,人が見てなんだかわかるようにして表示しています.これを「現像」と俗に言いますが,そのアルゴリズムは現像ソフトごとに特徴があります.
その他の回答 (6)
- c80s3xxx
- ベストアンサー率49% (1634/3294)
緑 赤 緑 赤 緑 青 緑 青 緑 青 緑 赤 緑 赤 緑 少し周りまで見るとこんな感じになりますね. 各画素 (緑とか青とか書いてある) はたしかにその色の強度の光を捉えているわけですが,その他の色の光の強度は捉えていません. たとえば上の図のまん中辺の青のセンサーはたしかに青の強度しかわかりません.ここに入ってくるはずの赤や緑の光の強度はわからないのです. そこで,たとえば赤なら周りの赤センサーの情報を見て,たぶんここはこのくらいの強さの赤があるだろう,と推定するわけです (実際には赤だけを見るわけではないでしょうけど).こうやって,すべてのセンサーの位置の三原色の強度を (一つはちゃんと測り,あと二つは補間による推定で) 求めて,これで灰色だとか橙だとかそういう色を再現するのです.
お礼
とても解りやすい説明感謝いたします。 先にご回答いただいた「c80s3xxx」さんの説明とあわせるとかなり頭がすっきりしました。 あとは補間処理のアルゴリズムの一例がわかれば満足できると思います。 数回に渡るご丁寧な回答、どうもありがとうございました。
- Pesuko
- ベストアンサー率30% (2017/6702)
>600画素は実は150画素になるはず かなり誤解しています、4画素1ブロックでも1素子ごとにシフトしていますから CCDの外周1画素のみ無効になるわけで、そのような計算にはなりません。
お礼
お礼 お礼が遅くなり失礼しました。 どうも有り難うございました。
補足
>4画素1ブロックでも1素子ごとにシフトしていますから すみません、ここのところだけよく理解できません。 シフトとは?
- Pesuko
- ベストアンサー率30% (2017/6702)
CCDの素子情報と映像のピクセル情報は1:1では無いです。 例えば単版式の場合 http://ja.wikipedia.org/wiki/%E7%94%BB%E5%83%8F:CCD_Bayer_layout.png このような配列になっています。 で、色情報を取得するとき、3×3の配列があって、その中心の1素子の情報を周囲8素子の個々の色情報から極端に言えば平均化して1素子の情報にします。 こうやって、周囲の8素子の情報を1個の情報に変換したものが 映像信号です。 白い紙を撮像すれば、すべての素子がほぼMAXの輝度情報を持っているので 白になります。
お礼
早速のご回答、ありがとうございます。 白い紙の撮影ということでは質問があまりに単純すぎました。 すみません。 もっと複雑なものを撮影したときに 緑青 赤緑 の原色フィルターを通った光が、例えば 灰黄 橙紫 に見えることがあるので、これが疑問なのです。 4画素を1グループにすれば600画素は実は150画素になるはず。 という突っ込みに答えることができればと思います。 もちろんレンズの収差等は別にしてのお話です。
- hana-hana3
- ベストアンサー率31% (4940/15541)
>このあたりを突っ込まれると説明ができなくて困りそうです(汗) フィルムは色に感知する感光層が重なっています。 デジカメの内部でもこの「重ね合わせ」と同様の処理がされれて1画素として処理されます。 って感じでどうでしょうか?
お礼
なるほどー、確かにフィルムの感光層を例にとるのも必要な手ですね。 大変参考になりました。 どうもありがとうございました。
- c80s3xxx
- ベストアンサー率49% (1634/3294)
なお,raw データは補間処理をしないままのデータです. しかし,それを見るためのソフトが,必ずなにかの補間処理をしてくれているのです. このサイトのトップの写真がわかりやすいです. http://members14.tsukaeru.net/denkiz/cam/D100/nef/nef.htm raw データをそのまま表示すれば左側になります. これではどうしようもないので,補間処理をして右側にするのです.
お礼
お礼が遅くなり失礼しました。 どうも有り難うございました。
補足
おお、まさしくこれです。 同じROWでも色々な処理の仕方があるのですね。 撮影後のデーター量と、ROW現像後のデーター量の大きな違いはここにあったのですね。 少しすっきりしました。 でも、これを最後まで読んで理解するのは素人の私にはちょっときつそうです(笑) こっちなら解りやすそうですね。 http://www.microsoft.com/japan/msdn/academic/Articles/Algorithm/04/ これからも、少しずつ勉強していきたいと思います。 どうもありがとうございました。
- c80s3xxx
- ベストアンサー率49% (1634/3294)
白は赤,青,緑の合成ですよね. 撮像素子上のある緑の画素のところも,赤や青がどうであったかを周りのデータから推定しているのです.だから,最終的には全ての点について,赤,青,緑のすべてのデータが (とりあえずは) 存在しているとういことです. この補間処理と呼ばれる推定をどうやるか,というのは,結構難しい問題で,デジカメを作っている人たちはたぶん今でもあれこれと悩んでいると思います.
お礼
とても素早いご回答、どうもありがとうございます。 やはり補間処理されていたのですね。 しかしそのアルゴリズム解らないのでそこが一番の疑問点でしょうか?
お礼
>輝度-色差分離という考え方を使うのが合理的です.人間の視覚特性は輝度の変化には敏感なのに対して,色差の変化に対して鈍感なことを・・・ なるほどー、確かにそうですね。 以前光学機器(アナログ)の開発をしていたことがあるので、そのあたりは実感としてもよーく解ります。 おかげさまでかなり解るようになってきました。今後ももっと勉強をしていきたいと思います。 何度もご丁寧な回答を頂き、本当にありがとうございましたm(_ _)m