(57)【特許請求の範囲】
【請求項１】
視点から観察される３次元空間内のオブジェクトであって、前記視点から第１の距離だけ離れたオブジェクトにフォグ効果を与える画像処理方法であって、
前記視点と前記オブジェクトとを結ぶ線分と、前記フォグ基準面との間で構成される積分値に基づいて、前記視点から観察した前記オブジェクトの前記フォグ濃度を計算し、
前記オブジェクトに前記計算されたフォグ濃度を適用する
ことを特徴とする画像処理方法。
【請求項２】
請求項１記載の画像処理方法において、
前記フォグ濃度をランダムに変化させてヘイズ処理を行う
ことを特徴とする画像処理方法。
【請求項３】
請求項１又は２記載の画像処理方法において、
前記フォグ基準面を複数設け、
前記複数のフォグ基準面に対して定められた前記フォグ濃度を合成する
ことを特徴とする画像処理方法。
【請求項４】
視点から観察される３次元空間内のオブジェクトであって、前記視点から第１の距離だけ離れたオブジェクトにフォグ効果を与える画像処理装置であって、
前記視点と前記オブジェクトとを結ぶ線分と、前記フォグ基準面との間で構成される積分値に基づいて、前記視点から観察した前記オブジェクトの前記フォグ濃度を計算し、前記オブジェクトに前記計算されたフォグ濃度を適用するフォグ濃度設定手段を有する
ことを特徴とする画像処理装置。
【請求項５】
請求項４記載の画像処理装置において、
前記フォグ濃度をランダムに変化させてヘイズ処理を行うヘイズ処理手段を更に有する
ことを特徴とする画像処理装置。
【請求項６】
請求項４又は５記載の画像処理装置において、
前記フォグ基準面は複数設けられ、
前記フォグ濃度設定手段は、前記複数のフォグ基準面に対して定められた前記フォグ濃度を合成する
ことを特徴とする画像処理装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、画像処理方法及び画像処理装置に係り、特に、フォグ効果を発生する画像処理方法及び画像処理装置に関する。
【０００２】
【従来の技術】
コンピュータ・グラフィックスの分野では、臨場感のある画像を提供すべく、画像中に、霧、もや、煙、ほこり等のフォグ（fog）を発生させるフォグ効果発生技術が注目されている。
【０００３】
従来のフォグ効果発生技術について説明する。従来のフォグ効果発生技術では、フォグを発生する際、視点とポリゴン上の点との距離を算出し、その距離に基づいてその点のフォグ濃度を設定していた。例えば、視点とポリゴン上の点との距離が大きい場合には、ポリゴン上のその点についてのフォグ濃度を濃くし、視点とポリゴン上の点との距離が短い場合には、その点についてのフォグの濃度を薄くしていた。
【０００４】
【発明が解決しようとする課題】
しかしながら、このような従来のフォグ効果発生技術では、視点からの距離が大きくなるほどフォグ濃度が濃くなるため、例えば地面の近くに濃い霧が立ちこめていて、上空にいくと霧が薄くなるような臨場感のある画像を提供することはできなかった。
【０００５】
また、従来のフォグ効果発生技術では、フォグ濃度を変化させる場合でも、フォグ濃度の変化のしかたが均一であり、霧がもやもやしているような臨場感のある画像を提供することはできなかった。
【０００６】
本発明の目的は、臨場感のある画像を提供することができる画像処理方法及び画像処理装置を提供することにある。
【０００７】
【課題を解決するための手段】
上記目的は、視点から観察される３次元空間内のオブジェクトであって、前記視点から第１の距離だけ離れたオブジェクトにフォグ効果を与える画像処理方法であって、前記視点と前記オブジェクトとを結ぶ線分と、前記フォグ基準面との間で構成される積分値に基づいて、前記視点から観察した前記オブジェクトの前記フォグ濃度を計算し、前記オブジェクトに前記計算されたフォグ濃度を適用することを特徴とする画像処理方法により達成される。これにより、遠い位置にあるポリゴンについてはフォグ濃度が濃くなり、近い位置にあるポリゴンについてはフォグ濃度が薄くなり、フォグ基準面からの距離が等しいオブジェクトであっても、近くのオブジェクトについてはフォグ濃度が薄くなり、遠くのオブジェクトについてはフォグ濃度が濃くなるので、臨場感のある画像を提供することができる。
【００１０】
また、上記の画像処理方法において、前記フォグ濃度をランダムに変化させてヘイズ処理を行うことが望ましい。これにより、フォグがもやもやとしている状態を表現することができ、臨場感のある画像を提供することができる。
【００１１】
また、上記の画像処理方法において、前記フォグ基準面を複数設け、前記複数のフォグ基準面に対して定められた前記フォグ濃度を合成することが望ましい。これにより、更に臨場感のある画像を提供することができる。
【００１２】
また、上記目的は、視点から観察される３次元空間内のオブジェクトであって、前記視点から第１の距離だけ離れたオブジェクトにフォグ効果を与える画像処理装置であって、前記視点と前記オブジェクトとを結ぶ線分と、前記フォグ基準面との間で構成される積分値に基づいて、前記視点から観察した前記オブジェクトの前記フォグ濃度を計算し、前記オブジェクトに前記計算されたフォグ濃度を適用するフォグ濃度設定手段を有することを特徴とする画像処理装置により達成される。これにより、遠い位置にあるポリゴンについてはフォグ濃度が濃くなり、近い位置にあるポリゴンについてはフォグ濃度が薄くなり、フォグ基準面からの距離が等しいオブジェクトであっても、近くのオブジェクトについてはフォグ濃度が薄くなり、遠くのオブジェクトについてはフォグ濃度が濃くなるので、臨場感のある画像を提供することができる。
【００１５】
また、上記の画像処理装置において、前記フォグ濃度をランダムに変化させてヘイズ処理を行うヘイズ処理手段を更に有することが望ましい。これにより、フォグがもやもやとしている状態を表現することができ、臨場感のある画像を提供することができる。
【００１６】
また、上記の画像処理装置において、前記フォグ基準面は複数設けられ、前記フォグ濃度設定手段は、前記複数のフォグ基準面に対して定められた前記フォグ濃度を合成することが望ましい。これにより、更に臨場感のある画像を提供することができる。
【００１７】
【発明の実施の形態】
［第１実施形態］
本発明の第１実施形態による画像処理方法及び画像処理装置を図１乃至図６を用いて説明する。図１は、本実施形態による画像処理方法の原理を示す概念図である。図２は、本実施形態による画像処理装置を示すブロック図である。図３は、距離とフォグ濃度との関係を示すグラフである。図４は、ヘイズ処理器を示すブロック図である。図５は、空間的ランダム成分発生器の原理を示すグラフである。図６は、ヘイズ処理が行われた後のフォグ濃度を示すグラフである。
【００１８】
図１に示すように、３次元空間に、フォグ基準面１０が設けられている。図１の縦軸は３次元空間における高さ方向を示しており、横軸は３次元空間における奥行き方向を示しており、紙面垂直方向は３次元空間における左右方向を示している。
【００１９】
フォグ基準面１０上には、例えばポリゴン１２が位置している。実際の画像処理においては複数のポリゴンが存在するが、説明を簡略化するため、図１では、１つのポリゴン１２のみ示している。
【００２０】
本実施形態による画像処理装置は、フォグ基準面１０とポリゴン１２上の点との間の距離ｄを演算し、この距離ｄに応じてフォグ濃度を設定することに主な特徴がある。即ち、従来の画像処理装置では、視点とポリゴン上の点との間の距離に応じてフォグ濃度を設定していたため、地面の近くに霧が立ちこめているような様子を表現することはできなかった。これに対し、本実施形態では、フォグ基準面１０とポリゴン１２上の点との間の距離ｄに応じてフォグ濃度を設定するので、地面の近くに霧が立ちこめているような様子を表現することができ、臨場感のある画像を提供することができる。
【００２１】
例えば、図３に示すように、フォグ基準面１０からの距離ｄが大きくなるに従ってフォグ濃度αが薄くなるような関数を用いれば、地面の近くでは霧が濃くなり、地面から遠ざかるに従って霧が薄くなるような画像を提供することができる。
【００２２】
次に、本実施形態による画像処理方法及び画像処理装置を図２を用いて説明する。
【００２３】
図２に示すホストＣＰＵ１４は、本実施形態による画像処理装置全体を制御する機能を有している。ホストＣＰＵ１４は、画面に表示するオブジェクトに関するデータをジオメトリ演算器１６に入力する。
【００２４】
ジオメトリ演算器１６は、オブジェクトに関するデータを、ポリゴンのデータに変換する機能を有している。具体的には、ポリゴンを３次元の視点座標系上に配置すべく、ポリゴンの頂点の３次元座標を求める。演算によって求められたポリゴンの頂点の３次元座標のデータは、ラスタライザ１８に入力される。
【００２５】
ラスタライザ１８は、オブジェクトを２次元の表示画面上に表示すべく、ポリゴンの３次元座標を２次元座標にラスタライズする機能を有している。具体的には、オブジェクトを複数のラインに分解し、２次元座標として定義する。これにより、ポリゴンの頂点は２次元座標として定義される。
【００２６】
ラスタライザ１８により求められた２次元座標のデータは、フォグ生成器２２に設けられた補間演算器２８に入力される。フォグ生成器２２には、補間演算器２８の他、フォグ基準面データレジスタ２４、距離演算器２６、フォグ濃度演算器３０、及びフォグ色レジスタ３２が設けられている。
【００２７】
補間演算器２８は、ラスタライザ１８から入力された２次元座標を補間することにより、表示画面上の１画素に対応した３次元座標（ｘ，ｙ，ｚ）を求める機能を有している。補間演算器２８で求められた３次元座標（ｘ，ｙ，ｚ）は、距離演算器２６に入力される。
【００２８】
フォグ基準面データレジスタ２４は、フォグ基準面１０のデータを記憶しておくためのものである。フォグ基準面１０が例えば平面の場合には、フォグ基準面１０は平面の式ｌｘ＋ｍｙ＋ｎｚ＝ｐ（ｌ、ｍ、ｎ、及びｐは任意の実数）で表される。この場合、フォグ基準面データレジスタ２４には、ｌ、ｍ、ｎ、及びｐ等のデータが記憶される。フォグ基準面データレジスタ２４に記憶されたデータは、距離演算器２６に入力される。
【００２９】
距離演算器２６は、フォグ基準面１０とポリゴン１２上の点との間の距離ｄを、表示画面の１画素に対応して求める機能を有している。フォグ基準面１０が平面である場合には、フォグ基準面１０とポリゴン１２上の点との間の距離ｄは、
ｄ＝｜ｌｘ＋ｍｙ＋ｎｚ−ｐ｜／（ｌ2＋ｍ2＋ｎ2）0.5
により求められる。
【００３０】
こうして求められた距離ｄは、フォグ濃度演算器３０に入力される。フォグ濃度演算器３０は、ポリゴン上の点におけるフォグ濃度αを求めるためのものである。フォグ濃度演算器３０は、任意の関数α＝ｆ（ｄ）によりフォグ濃度αを求める。例えば、地面に霧が立ちこめているような様子を表現するためには、距離ｄが大きくなるに伴ってフォグ濃度αが小さくなるよう、図３に示すような関数を用いることができる。こうして求められたフォグ濃度αは、ヘイズ処理器３４に入力される。また、ヘイズ処理器３４は、距離演算器２６により求められた距離ｄが入力される。
【００３１】
ヘイズ処理器３４は、後述するように、フォグがもやもやしている様子を表現するためのものである。ヘイズ処理器３４により求められたフォグ濃度α′のデータは、フォグ合成器３６に入力される。
【００３２】
フォグ色レジスタ３２は、フォグ色Ｃfogを記憶するためのものである。フォグ色レジスタ３２に記憶されたフォグ色Ｃfogのデータは、フォグ合成器３６に入力される。
【００３３】
ラスタライザ１８により求められた２次元座標のデータは、フォグ生成器２２のみならず、ポリゴン色生成器２０にも入力される。ポリゴン色生成器２０は、ポリゴン１２上の点の色、即ちポリゴン色Ｃpolyを生成する機能を有するものである。ポリゴン色Ｃpolyは、表示画面の１画素に対応するように求められる。ポリゴン色生成器２０で求められたポリゴン色Ｃpolyのデータは、フォグ合成器３６に入力される。
【００３４】
フォグ合成器３６は、フォグ濃度α′、フォグ色Ｃfog、及びポリゴン色Ｃpolyのデータを用いて合成することにより、ポリゴン１２上の点の表示色Ｃdisのデータを求める機能を有している。表示色Ｃdisのデータは、表示画面上の１画素に対応して求められる。ポリゴン１２上の点の表示色Ｃdisは、
Ｃdis＝（１−α′）・Ｃpoly＋α′・Ｃfog
の式により求められる。こうして求められたポリゴン１２上の表示色Ｃdisは、ディスプレイ装置３８に出力され、ディスプレイ装置３８の画面に表示される。
【００３５】
次に、ヘイズ処理器３４について、図４乃至図６を用いて詳細に説明する。ヘイズ処理器３４には、フォグがもやもやする状態を表現すべく、空間的ランダム成分発生器１００、及び濃度のランダム成分発生器１２０が設けられている。
【００３６】
空間的ランダム成分発生器１００は、フォグがもやもやする状態を表す際の、空間的な成分を発生する機能を有している。更新頻度レジスタ１０２には、空間的ランダム成分の更新頻度を示す更新頻度データＤupd1が記憶される。更新頻度データＤupd1の値は、表示画面の１更新時間（１ｉｎｔ）の整数倍の値とする。更新頻度レジスタ１０２に記憶された更新頻度データＤupd1は、乱数発生器１０４に入力される。乱数発生器１０４は、更新頻度データＤupd1に基づいた頻度で乱数データＤran1を発生する。乱数発生器１０４から発生した乱数データＤran1は、範囲比較器１０６に入力される。オフ期間幅レジスタ１０８は、フォグの濃度が変化する空間的な幅を設定するためのものである。オフ期間幅レジスタ１０８には、オフ期間幅データＤoff1が記憶される。オフ期間幅データＤoff1は、距離の区間成分、及び一定距離の平面におけるオフ期間出現頻度成分を持つものとする。なお、オフ期間幅データＤoff1の値は、フォグのもやもやした状態を人間の視覚により画面上で認識できる程度に、適宜設定することが望ましい。
【００３７】
範囲比較器１０６には、距離ｄ、乱数データＤran1、及びオフ期間幅データＤoff1が入力される。範囲比較器１０６は、乱数データＤran1と距離ｄとを比較し、これらが一致した場合に、オフ期間幅データＤoff1の値に基づいて制御信号ＣＴＬをＯＦＦにするものである。この制御信号ＣＴＬはマスク１３２に入力される。制御信号ＣＴＬは通常はＯＮであるが、乱数データＤran1と距離ｄの値が一致すると、オフ期間幅データＤoff1の値に基づいてＯＦＦとなる。
【００３８】
このような空間的ランダム成分発生器１００による空間的ランダム成分の発生状態を、図５を用いて説明する。図５に実線で示すように、フォグ濃度αは、フォグ基準面１０からの距離ｄに基づいて決まる。フォグ基準面１０から距離ｄ1だけ離間した領域ではフォグ濃度はα1となり、フォグ基準面１０から距離ｄnだけ離間した領域ではフォグ濃度はαnとなる。ここで、空間的ランダム成分発生器１００の範囲比較器１０６からのＣＴＬ信号がＯＦＦとなると、図５に丸印で示す領域においてフォグ濃度が変化することとなる。
【００３９】
濃度のランダム成分発生器１２０には、フォグの濃度を変化させる頻度を記憶するための、更新頻度レジスタ１２２が設けられている。更新頻度レジスタ１２２に記憶された更新頻度データＤupd2は、乱数発生器１２４に入力される。なお、更新頻度データＤupd2の値は、表示画面の１更新時間の整数倍とする。乱数発生器１２４は、更新頻度データＤupd2に基づいた頻度で乱数データＤran2をマスク１３２に出力する。
【００４０】
マスク１３２に入力された乱数データＤran2は、制御信号ＣＴＬがＯＮのときだけ減算器１３４に出力される。減算器１３４は、フォグ濃度αから乱数データＤran2を減算し、フォグ濃度α′を出力する。これにより、図６に示すように、距離ｄに対してフォグ濃度α′がランダムに変化する。
【００４１】
このように、本実施形態によれば、フォグ基準面とポリゴンとの間の距離に応じてフォグ濃度を設定するので、地面に近くに濃い霧がたちこめているような臨場感のある画像を提供することができる。
【００４２】
また、本実施形態によれば、ランダムにフォグの濃度を変化させるヘイズ処理を行うので、フォグのもやもやとした様子を表現することができ、臨場感のある画像を提供することができる。
【００４３】
（変形例）
次に、本実施形態による画像処理方法の変形例を図７を用いて説明する。図７は、本実施形態による画像処理方法の原理を示す概念図である。
【００４４】
本実施形態による画像処理方法は、視点とポリゴン１２上の点とを結ぶ線分と、フォグ基準面１０との間で構成される積分値に基づいて、ポリゴン１２上の点におけるフォグ濃度αを求めることを特徴とするものである。
【００４５】
これにより、遠い位置にあるポリゴンについてはフォグ濃度が濃くなり、近い位置にあるポリゴンについてはフォグ濃度が薄くなる。
【００４６】
従って、本変形例によれば、フォグ基準面からの距離が等しいオブジェクトであっても、近くのオブジェクトについてはフォグ濃度が薄くなり、遠くのオブジェクトについてはフォグ濃度が濃くなるので、臨場感のある画像を提供することができる。
【００４７】
［第２実施形態］
本発明の第２実施形態による画像処理方法を図８及び図９を用いて説明する。図８は、本実施形態による画像処理方法の原理を示す概念図である。図９は、本実施形態による画像処理方法を用いた場合の画像表示例を示す図である。図１乃至図７に示す第１実施形態による画像処理方法及び画像処理装置と同一の構成要素には、同一の符号を付して説明を省略または簡潔にする。
【００４８】
本実施形態による画像処理方法は、フォグ基準面１０の上側の空間を表空間、フォグ基準面１０の下側の空間を裏空間として、それぞれの異なる関数や定数を用いてフォグ濃度αを変化させることを特徴とするものである。
【００４９】
例えば、表空間では、α＝ｆ（ｄ）の関数によりフォグ濃度αを求め、例えば、図８（ｂ）に示すようにフォグ濃度αを設定する。なお、第１実施形態で示すように、ヘイズ処理を行い、フォグ濃度α′を用いることにより、更に臨場感のある画像を提供することができる。一方、裏空間では、任意の定数をフォグ濃度αとし、例えば、図８（ｃ）に示すようにフォグ濃度を設定する。
【００５０】
このようにフォグ基準面１０に対して表空間と裏空間とで異なる関数や定数を用いてフォグ濃度を設定すれば、更に臨場感のある画像を提供することができる。
【００５１】
本実施形態による画像処理方法を用いた画像表示の具体例を図９を用いて説明する。
【００５２】
図９（ａ）は、山１５０の麓に雲海があり、雲海の上方に霧がかかっている様子を示している。山１５０の麓には、フォグ基準面１０が設けられている。フォグ基準面１０の上側は、表空間となっており、図８（ｂ）に示すような関数が用いられている。このため、フォグ基準面１０から遠ざかって上空に行くに伴い、霧が薄くなっている。一方、フォグ基準面１０の下側は、裏空間となっており、図８（ｃ）に示すような定数が用いられている。従って、図９（ａ）の斜線部ではフォグの濃度が一定となっており、雲海が形成されているように表現される。
【００５３】
図９（ｂ）は、地球１５２を表している。地球１５２は丸いため、フォグ基準面１０ａとして曲面が用いられる。フォグ基準面１０ａの外側は表空間となっており、フォグ基準面１０ａの内側は裏空間となっている。表空間においては、図８（ｂ）に示すような関数が用いられており、フォグ濃度αが地球から遠ざかるに伴い薄くなっている。一方、フォグ基準面１０の内側の裏空間では、フォグ濃度αとして定数が用いられている。このため、フォグ基準面１０の内側、即ち裏空間では、フォグ濃度αは一定となっている。従って、本実施形態によれば、地球の近くは雲などにより覆われており、地球から離れると大気がだんだん薄っている状態を表現することができる。
【００５４】
このように、本実施形態によれば、フォグ基準面の表空間と裏空間とでそれぞれ異なった関数や定数を用いてフォグ濃度を設定するので、更に臨場感のある画像を提供することができる。
【００５５】
［変形実施形態］
本発明は上記実施形態に限らず種々の変形が可能である。
【００５６】
例えば、第１及び第２実施形態では、フォグ基準面は１つのみ設けたが、フォグ基準面は複数設けてもよい。この場合、フォグ濃度は、それぞれのフォグ基準面に対して合成したものが用いられることとなる。例えば、平面のフォグ基準面と曲面のフォグ基準面を設ければ、窪みの中にフォグがたまっている様子を表現することができる。また、地面に対応するようなフォグ基準面と、画面に対応するようなフォグ基準面とを設ければ、地面からの距離と奥行きとに応じてフォグ濃度を変化させることができる。
【００５７】
また、第１及び第２実施形態では霧や雲などを例として説明したが、霧や雲に限定されるものではなく、湯気、もや、ほこり、ちり、竜巻、霞、煙などあらゆるものに対して適用することができる。
【００５８】
また、フォグ基準面として曲面を用いる場合には、曲面を複数の平面に分割して近似し、その平面からの距離ｄを用いてもよい。
【００５９】
また、第１及び第２実施形態では、ポリゴンのフォグ濃度を設定する場合を例に説明したが、あらゆるオブジェクトのフォグ濃度を設定する際に適用することができる。
【００６０】
【発明の効果】
以上の通り、本発明によれば、フォグ基準面とオブジェクトとの間の距離に応じてフォグ濃度を設定するので、地面に近くに濃い霧がたちこめているような臨場感のある画像を提供することができる。
【００６１】
また、本発明によれば、ランダムにフォグの濃度を変化させるヘイズ処理を行うので、フォグのもやもやとした様子を表現することができ、臨場感のある画像を提供することができる。
【００６２】
また、本発明によれば、フォグ基準面の表空間と裏空間とでそれぞれ異なった関数や定数を用いてフォグ濃度を設定するので、更に臨場感のある画像を提供することができる。
【図面の簡単な説明】
【図１】本発明の第１実施形態による画像処理方法の原理を示す概念図である。
【図２】本発明の第１実施形態による画像処理装置を示すブロック図である。
【図３】距離ｄとフォグ濃度αとの関係を示すグラフである。
【図４】ヘイズ処理器を示すブロック図である。
【図５】空間的ランダム成分発生器の原理を示すグラフである。
【図６】ヘイズ処理が行われた後のフォグ濃度を示すグラフである。
【図７】本発明の第１実施形態の変形例による画像処理方法の原理を示す概念図である。
【図８】本発明の第２実施形態による画像処理方法の原理を示す概念図である。
【図９】本発明の第２実施形態による画面表示例を示す図である。
【符号の説明】
１０…フォグ基準面
１０ａ…フォグ基準面
１２…ポリゴン
１４…ホストＣＰＵ
１６…ジオメトリ演算器
１８…ラスタライザ
２０…ポリゴン色生成器
２２…フォグ生成器
２４…フォグ基準面データレジスタ
２６…距離演算器
２８…補間演算器
３０…フォグ濃度演算器
３２…フォグ色レジスタ
３４…ヘイズ処理器
３６…フォグ合成器
３８…ディスプレイ装置
１００…空間的ランダム成分発生器
１０２…更新頻度レジスタ
１０４…乱数発生器
１０６…範囲比較器
１０８…オフ期間幅レジスタ
１２０…濃度のランダム成分発生器
１２２…更新頻度レジスタ
１２４…乱数発生器
１３２…マスク
１３４…減算器
１５０…山
１５２…地球
【図１】
0004277362.tif 000002
【図２】
0004277362.tif 000003
【図３】
0004277362.tif 000004
【図４】
0004277362.tif 000005
【図５】
0004277362.tif 000006
【図６】
0004277362.tif 000007
【図７】
0004277362.tif 000008
【図８】
0004277362.tif 000009
【図９】
0004277362.tif 000010