[[太田研 公開用Wiki]] //''&size(24){&color(red,white){現在編集途中です・・・};}; &size(48){&color(red,white){鋭意製作中ですっ!!};};''~ ~ ''&size(24){&color(white,white){貴方はこのページの&counter;人目の目撃者です.};};''~ このページでは, 私が学部4年で行った卒業研究の概略を紹介してゆきます. 分野はコンピュータグラフィックスで, 内容は簡単に説明すると, 人間が見た時に対象とする物体の特徴が一番わかりやすい陰影がつくような光の当て方の自動計算を行うための方法についてです. *CGにおける最適光源位置選択のための照明条件の評価法 [#b6155d5e] #contents *1 研究背景と研究目的 [#z13f2c07] **1.1 研究背景 [#l31e8b02] コンピュータグラフィックスでは, 画像を生成するにあたり視点, 光源位置, 物体位置等を 設定する必要がある. これらのパラメータは生成される画像の出来栄えに大きな影響を及ぼ す. しかし, 生成された画像に対する出来栄えの評価は個々人の目的によって変わる. 映画や ゲーム, 芸術といった目的ではどのような視点, 光源位置が良いかは, 制作者の意図によって 大きく変わるが, 設計や製品デザインなど物体の形状情報を詳細に伝えたいという目的があ る分野では, 物体の形状特徴を良く表現できる視点位置, 光源位置を選択する必要がある. 一般的に, コンピュータグラフィックスによる三次元の情報は紙面, ディスプレイといった 二次元の媒体を通して人間に伝達される. その際, 視点や照明条件は伝達できる描画対象の 物体の持つ三次元的情報の量を大きく左右することになる. よって, 物体の持つ三次元的な 情報をより多く詳細に伝達したい場合, 視点位置, 光源位置の選択は重要な問題となる. CENTER:|&ref(121.png,center,nolink,240x180); | &ref(195.png,center,nolink,240x180); | CENTER:|&ref(image.png,center,nolink,240x180); | &ref(195.png,center,nolink,240x180); | |CENTER:図1.1.1 奥行きの分かる画像|CENTER:図1.1.2 奥行きの分からない画像| **1.2 研究目的 [#n50ae264] 科学的可視化の分野では, 科学的可視化の基本概念である情報量の最大化の考えに基づき, 物体の形状特徴を良く伝達できる視点の自動計算の研究がされている. また, この考えを応 用し, 次のような最適なライティングパラメータを自動計算する研究も存在する. 照明デザイン(Lighting Design) の分野では, シーンに対して最も良い照明パラメータ(色, 方 向, 明るさ) を設定することが求められる, しかし, それらのパラメータを決定することは非 常に難しく, 多大な労力と時間を要する. このことに対する部分的な解決案として, 照明から の情報量を最大化するという考えに基づいた最適な光源位置の選択法が研究がされている. 本研究では, 最適な光源位置の選択法について, 既存の方法に, 対象物の持つ凹凸や奥行き の情報が, 画像の輝度の変化として表現されているかという視点からの評価を加えることに より, 対象物の詳細な形状情報を伝達することが重要であるような, 製品広告の分野やCAD の完成図などのへの応用を目指した最適な光源配置を行うための, より良い照明条件の評価 法を提案する. CENTER:|&ref(121.png,center,nolink,240x180); | &ref(42.png,center,nolink,240x180); | |CENTER:図1.2.1 良い光源位置による画像|CENTER:図1.2.2 悪い光源位置による画像| *2 既存手法 [#v6d4b9d8] 物体に最適な陰影表現を施すような光源位置を探索するためには,照明条件の評価が必要である.~ 照明条件を評価するために既存の手法では,描画された画像の輝度((ここではRGB値から計算される明るさではなく, 人間が実際に見た時の明るさの刺激値を計算する. 具体的には, CIEが定めたXYZ三刺激値のY成分を用いる.))の分布の[[情報エントロピー:http://ja.wikipedia.org/wiki/%E6%83%85%E5%A0%B1%E9%87%8F]]((情報の量を表す指標. 詳しくはリンクを参照されたし.))を用いた.すなわち,画像に暗い色から明るい色まで満遍なく現れているかという指標である.~ 既存手法の評価値は,大まかには以下の手順で計算される.~ CENTER: +''&size(15){背景ピクセルを無視した輝度ヒストグラムを作成する};'' +''&size(15){ヒストグラムを総和が1となるように正規化を行う};'' +''&size(15){正規化されたヒストグラムを確率分布とみなし,[[情報エントロピー:http://ja.wikipedia.org/wiki/%E6%83%85%E5%A0%B1%E9%87%8F]]を計算する};''~ ~ CENTER:&ref(image.png,center,nolink,240x180); &ref(yajirusi.png,center,nolink,120x90); &ref(histgram.png,center,nolink,240x180); &ref(yajirusi.png,center,nolink,120x90); &ref(entropy.png,center,nolink,240x180);~ LEFT: ~ 既存の方法では,この評価値が最大となるような光源配置が最適な光源配置であるとしている. **2.1 既存手法の問題点 [#r8b707ef] CENTER:|&ref(bunny13.png,center,nolink,240x180); | &ref(bunny12.png,center,nolink,240x180);| |CENTER: 図2.1.1|CENTER: 図2.1.2| ~ LEFT:上の二つの画像の照明条件を評価すると左の画像の評価値が右の画像の評価値を上回る.つまり,左の画像の証明条件の方が良いと判断されてしまう. しかし,実際には左の画像には物体の表面の凹凸情報の認識を妨げるような黒い影が存在し,物体な詳細な情報がわかりづらい部分が存在する.~ 既存の手法の評価値を用いると,コントラストが高く奥行きが強調され,立体感に富む照明条件が高く評価される反面,そのような照明条件では詳細な凹凸情報が失われている部分が存在する. 本研究の趣旨は物体の持つ形状特徴((ここでは,形状特徴は主に 1.物体の全体的な奥行きの情報( 大域的な奥行き情報 ), 2.物体表面の凹凸情報( 局所的な奥行き情報 ) の二つに着目する.))を最もよく表現するような光源位置を探索するための照明評価であるので,このような詳細な凹凸情報を失わずに表現しつつ, ある程度のコントラストを持つような照明条件を選択することが望まれる. *3 提案手法 [#da55b063] 物体が光に照らされたとき,物体表面のカーブしている部分は明るい色から暗い色へ連続的に変化するような陰影が生じる.その色の明るさの変化によって人間はその部分に奥行きを感じ,その部分がカーブしていると認識する((逆に,一色で塗りつぶされている部分は平面であると認識する. 画像2.1.2で黒く塗りつぶされた部分の物体の表面の凹凸情報はわからないものの,黒く塗りつぶされた部分であっても,平面ではなく曲面として認識できるのはモデルの形状が既知,すなわちウサギだと判っているのとそれまでの陰影の付き方からある程度その部分が曲面だと予測ができるからである. そのため黒い影の部分は,その部分が大きすぎない限り,表面の凹凸形状の認識を妨害することはあるが,全体的な奥行きの情報の認識には大きなマイナスの影響を与えず, ある程度の大きさまでならむしろ全体としての奥行きを強調する方向に働く結果になる.)).~ CENTER:|&ref(gradation_sample.png,center,nolink,300x100); | |CENTER:図3.1 色の明るさの変化による奥行きの知覚| 既存手法で問題となったのは,物体表面に真っ黒い影ができてその部分の凹凸情報などが判らなくなってしまったことである.すなわち,曲面になっている部分でも黒く塗りつぶされていて色の明るさの変化が無いため,その部分の形状の認識を阻害してしまうことになる.~ よって,物体を描画した際に,物体の曲面部分にちゃんと輝度の変化(色の明るさの変化)が現れているかという指標を考える. さらに,これに描画された画像のコントラストに対する指標を用いる。コントラストは,色の違いが分かりやすくなり,人間が見た時,より立体感を感じやすくなる.~ よって,~ &mimetex(v_1); を輝度の変化の仕方に対する評価値とし,~ &mimetex(v_2); を画像のコントラストに対する評価値とし,~ 新たな照明条件の評価値&mimetex(V);を以下の式で計算する. #mimetex(V = \alpha v_1 + \beta v_2)~ この指標は,物体の詳細な部分が輝度の連続的な変化として現れているかという指標と 物体に奥行きを与えるようなコントラストが得られるかという指標の重み付きの和となっている.~ コントラストに対する指標である&mimetex(v_2);は,既存手法のエントロピーを計算することにより評価が可能である.~ よって,今回は物体の詳細な部分が輝度の連続的な変化として現れているかという指標である&mimetex(v_1);の計算法を2種類提案する. **3.1 提案手法(1) [#b151d8fc] 前述の評価値&mimetex(v_1); を計算するための方法を述べる.~ 本手法では, 物体の凹凸情報が画像の輝度値に反映されているかという情報は, 画像のヒストグラムの概形に関わりがあるのではないかという視点から, ヒストグラムを粗くして行ったときのエントロピーの変化の仕方に着目した.~ 具体的にはヒストグラムを粗くするとは, ヒストグラムのビン((ヒストグラムのグラフの柱(棒)のこと))を隣のビンと統合することによって, 階調数をどんどん半減させてゆく方法を用いた.~ ~ ~ 凹凸情報が輝度値に反映されている画像は, 下記のエントロピーの変化①のようなエントロピーの変化の仕方を示す.~ 一方, 陰によって一部の凹凸情報が失われているような画像は, 下記のエントロピーの変化②のようなエントロピーの変化の仕方を示した.~ ***エントロピーの変化の仕方① [#r1246c14] |&ref(bunny13.png,center,nolink,320x240);|&ref(13B_graph.png,center,nolink,320x240);| |CENTER:図3.1.1 画像a|CENTER:図3.1.2 エントロピーの変化のグラフ| |&ref(13_h(32).png,center,nolink,320x240);|&ref(13_h(16).png,center,nolink,320x240);|&ref(13_h(8).png,center,nolink,320x240);| |CENTER:図3.1.3 ヒストグラム(32階調)|CENTER:図3.1.4 ヒストグラム(16階調)|CENTER:図3.1.5 ヒストグラム(8階調)| ~ ~ ***エントロピーの変化の仕方② [#db61c941] |&ref(bunny12.png,center,nolink,320x240);|&ref(12B_graph.png,center,nolink,320x240);| |CENTER:図3.1.6 画像b|CENTER:図3.1.7 エントロピーの変化のグラフ| |&ref(12_h(32).png,center,nolink,320x240);|&ref(12_h(16).png,center,nolink,320x240);|&ref(12_h(8).png,center,nolink,320x240);| |CENTER:図3.1.8 ヒストグラム(32階調)|CENTER:図3.1.9 ヒストグラム(16階調)|CENTER:図3.1.10 ヒストグラム(8階調)| ~ ***評価値 [#q2d24e2b] この方法は, 実験結果から帰納的に得られた結果を定式化することにより評価を行う.~ 今回の実験において, 凹凸情報が輝度値に反映されるような画像は, ビンを統合していったときのエントロピーの変化は, 減少する傾向にあった.~ このことから, 提案手法(1)では&mimetex(v_1);はビンを統合し階調数を減らしていったときのエントロピーがどんどん減少してゆくようなヒストグラムを持つ画像が高い値を持つような定式化を行った.~ 具体的には, エントロピーの変化量の総和のマイナスを取ったものを評価値とした. **3.2 提案手法(2) [#c96c13a8] 提案手法(2)では, 滑らかな曲面で構成された物体にできる陰が連続的に明るさが変化していることに着目して凹凸情報が輝度値に反映されているかを表す評価値&mimetex(v_1);を定式化してゆく.~ ~ 本手法では, 物体が滑らかな曲面で構成されていることを前提とし, そのような物体が光に照らされたときにできる陰影は, 曲面故に明るさは連続的に変化するようになる.~ 従って, ヒストグラムを生成した場合, 輝度値の分布はある一つの輝度値だけが飛びぬけているような分布は取らず, 連続的な分布を見せるはずである. すなわち, 凹凸情報が輝度に反映されるような画像はヒストグラムが連続的に分布し, 滑らかな概形をしているということになる.~ この考えに基づき, ヒストグラムにガウシアンフィルタによって平滑化を行っていったとき, 理想的なヒストグラムの形は輝度値が連続的で滑らかに分布しているので, 平滑化を行っても大きなエントロピーの変化は起こらず, 平滑化を繰り返していったときエントロピーの変化①のように一定な変化を見せる.~ 一方, ある輝度値だけが他の輝度値と比べて以上に分布が偏って表れている場合, その部分が&ruby(なら){均};されてエントロピーの変化はエントロピーの変化②のような変化の仕方を示す.~ ***エントロピーの変化の仕方① [#se40f1bf] |&ref(bunny13.png,center,nolink,320x240);|&ref(13G_graph.png,center,nolink,320x240);| |CENTER:図3.2.1 画像a|CENTER:図3.2.2 エントロピーの変化のグラフ| |&ref(13_h(0).png,center,nolink,320x240);|&ref(13_h(1).png,center,nolink,320x240);|&ref(13_h(2).png,center,nolink,320x240);| |CENTER:図3.2.3 ヒストグラム|CENTER:図3.2.4 ヒストグラム(平滑化後①)|CENTER:図3.2.5 ヒストグラム(平滑化後②)| ~ ~ ***エントロピーの変化の仕方② [#d793520b] |&ref(bunny12.png,center,nolink,320x240);|&ref(12G_graph.png,center,nolink,320x240);| |CENTER:図3.2.6 画像b|CENTER:図3.2.7 エントロピーの変化のグラフ| |&ref(12_h(0).png,center,nolink,320x240);|&ref(12_h(1).png,center,nolink,320x240);|&ref(12_h(2).png,center,nolink,320x240);| |CENTER:図3.2.8 ヒストグラム|CENTER:図3.2.9 ヒストグラム(平滑化後①)|CENTER:図3.2.10 ヒストグラム(平滑化後②)| ~ ***評価値 [#c85d40e7] 上記のことから, 物体の持つ凹凸情報が画像の輝度値の変化として現れているような画像のヒストグラムは平滑化をしていったときにエントロピーの変化がほぼ一定になるので, 評価値&mimetex(v_1);はガウシアンフィルタによって平滑化を行っていったとき, エントロピー増加量が一定になるようなものが高い値を持つように定式化を行った.~ ~ ~ ここで, 提案手法(2)は提案手法(1)と異なり, ヒストグラムが一様分布の時に最大値を示す.~ &mimetex(v_2);はエントロピーで計算されるため, &mimetex(v_2);の最大値を取るのは, やはり一様分布の時となる.~ 実際の画像の照明条件の評価は&mimetex(V=\alpha v_1 + \beta v_2);のように, &mimetex(v_2);との重み付の和で計算されるため, 提案手法(2)で計算される最終的な照明条件の評価値&mimetex(V);は画像のヒストグラムが一様分布の時に最大となる.~ *4 実験 [#x94af94e] 本実験では, 提案した手法の有効性を示すため, 既存手法と提案手法の評価値をそれぞれ用いて, それらの評価値が最大になるような照明条件で描画を行った画像を比較してゆく.~ 今回使用した光源は, 平行光源で光源方向成分のみを持つ(物体との距離情報はない).~ さらに, シェーディング(陰影表現)においては物体同士の相互的な反射光等を考慮しない局所照明モデルを用い環境光は0に設定し, 鏡面反射光もないものとした. **4.1 実験結果 [#hb33a577] それぞれの評価値を用いて実験を行なった結果を以下に示す. |CENTER:モデルネーム|CENTER:既存手法|CENTER:提案手法(1)|CENTER:提案手法(2)| |CENTER:stanford bunny|&ref(bunny(0).png,center,nolink,240x180); | &ref(bunny(1).png,center,nolink,240x180); | &ref(bunny(2).png,center,nolink,240x180); | |CENTER:stanford dragon|&ref(dragon(0).png,center,nolink,240x180); | &ref(dragon(1).png,center,nolink,240x180); | &ref(dragon(2).png,center,nolink,240x180); | |CENTER:happy buddha|&ref(buddha(0).png,center,nolink,240x180); | &ref(buddha(1).png,center,nolink,240x180); | &ref(buddha(2).png,center,nolink,240x180); | ~ *5 まとめと今後の課題 [#u0002637] **まとめ [#s8d49bdb] 今回,物体の形状特徴を良く表すような陰影表現がされる光源配置を自動で行うための照明条件の評価法について既存の方法を拡張することにより提案した.~ 既存手法の評価値によって選ばれる画像は, 物体の全体的な奥行きは認識しやすく, 十分な立体感が感じられるものが多い反面, 物体表面が黒く塗りつぶされて凹凸形状が認識できない部分が存在した.~ このような, 点を改善するため物体の勾配情報が画像の色の濃淡に反映されているかという視点からヒストグラムに階調数変化, 平滑化を行っていったときのエントロピーの変化を調べ, 新たな評価法を提案した.~ 提案手法(1)は, 上記の実験結果では, 物体表面の凹凸情報は陰で隠れることはなく読み取ることが可能だが, コントラストが低いため全体的な奥行きに足りなさを感じるものが多かった.~ 提案手法(2)は, 上記の実験結果では, 物体表面の凹凸情報が陰によって隠されることはほとんどなく, ある程度のコントラストが得られ, 全体的な奥行きが提案手法(1)に比べて強調されている. また, コントラストの影響でbunnyの胴体の凹凸やdragonの表面の鱗の凹凸など, 表面の凹凸情報も読み取りやすくなっている部分がある.~ 上記の実験結果以外にも幾つかのモデルを用いて実験を行ったが, ほぼ同様の結果が得られている.~ これまでの, 結果を表にして示すと以下のようになる.~ ||CENTER:全体的な奥行き|CENTER:表面の凹凸| |CENTER:既存手法|CENTER:◎|CENTER:△| |CENTER:提案手法(1)|CENTER:△|CENTER:〇| |CENTER:提案手法(2)|CENTER:〇|CENTER:〇| ~ しかし, この結論は時間の都合上全てのモデルに対してアンケートを実施することができなかったため, 過去にアンケートを取ったモデルの評価と選び出された画像の比較と他の論文で形状特徴が読み取りやすいと言われてる画像を参考にして, 実験者本人が出したものであるので, 本当に凹凸情報や奥行きが読み取りやすいかということは, 適切な形式でアンケートなどを行う必要がある. **今後の課題 [#ybdbc8cd] 今回の研究で考慮できなかった点に関しては大きく以下のようなものがある.~ +平面を含むモデルへの対応 +画像の空間情報の考慮 +色相, 模様等の考慮 ~ 今回は既存手法がヒストグラムを用いた指標であるのと, ヒストグラムを用いた処理が画像に対する処理よりも単純で高速であるためヒストグラムに対する指標を用いた. その際, 物体が平らな部分を持たない曲面のみで構成されていることを前提としたが, 物体が平らな部分を含む場合はヒストグラムの形は滑らかな形にならないので, 今回の実験のようにうまくゆくとは限らない.~ また, ヒストグラムは画像のピクセルの出現頻度のみの指標で, ピクセルの位置情報は失われるため, ヒストグラムの情報のみで適切な明るさの変化が得られているかを判断するには限界があるため, 精度を高めるには画像の位置情報も考慮しなくてはならない.~ さらに, 今回の研究は, 色相に関しては考慮せず, グレースケールを前提にしてきたが, この頃の奥行きの知覚に関する研究では物体の模様などによって奥行きの感じ方が促進されるという研究なども存在するので, そのような点を考慮することによって, より人の感覚に近い照明評価が行える可能性が出てくるのではないかと思われる.~ ~ 現在上記のような点に対する改善策として, 平面を含むモデルに応用させるには物体の曲率を用いた重みづけを行いヒストグラムを作成するものが考えられ, 画像の空間情報を考慮する場合は位置情報を持ったまま周波数解析を行える[[ウェーブレット解析:http://ja.wikipedia.org/wiki/%E3%82%A6%E3%82%A7%E3%83%BC%E3%83%96%E3%83%AC%E3%83%83%E3%83%88]]を用いる方法を検討している.