(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023070808
(43)【公開日】2023-05-22
(54)【発明の名称】被写体撮影画像シミュレーション方法、画像生成装置およびプログラム。
(51)【国際特許分類】
G06T 15/06 20110101AFI20230515BHJP
G06T 15/50 20110101ALI20230515BHJP
A61B 1/045 20060101ALI20230515BHJP
【FI】
G06T15/06
G06T15/50
A61B1/045 610
【審査請求】未請求
【請求項の数】9
【出願形態】OL
(21)【出願番号】P 2021183156
(22)【出願日】2021-11-10
(71)【出願人】
【識別番号】000000376
【氏名又は名称】オリンパス株式会社
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】関山 健太郎
(72)【発明者】
【氏名】中嶌 奨太
【テーマコード(参考)】
4C161
5B080
【Fターム(参考)】
4C161GG11
4C161WW20
5B080AA19
5B080DA06
5B080GA06
5B080GA11
(57)【要約】
【課題】表面散乱の弱い被写体の場合であっても、低ノイズで信頼性の高い被写体の撮影画像のシミュレーションを短時間で正確に生成することができる被写体撮影画像シミュレーション方法、画像生成装置およびプログラムを提供する。
【解決手段】被写体撮影画像シミュレーション方法は、被写体に入射し内部で散乱した後に被写体表面から出射する光線を計算して少なくとも光線の角度分布を含む光線情報を生成する光線追跡計算工程と、光線情報に基づいて、写体表面から前記撮像系または前記照明系に届く光線の輝度および輝度推定関数を推定する輝度推定関数設定工程と、光線情報と、輝度推定関数と、基づいて、被写体の輝度分布を算出する輝度分布算出工程と、被写体の輝度分布に基づいて、被写体の撮影画像を生成する生成工程と、を含む。
【選択図】
図7
【特許請求の範囲】
【請求項1】
照明系、撮像系および体積散乱体の被写体で構成されたモデルにおける撮影画像をシミュレーションする被写体撮影画像シミュレーション方法であって、
前記被写体に入射し内部で散乱した後に前記被写体表面から出射する光線を計算して少なくとも光線の角度分布を含む光線情報を生成する光線追跡計算工程と、
前記光線情報に基づいて、前記被写体表面から前記撮像系または前記照明系に届く光線の輝度および輝度推定関数を推定する輝度推定関数設定工程と、
前記光線情報と、前記輝度推定関数と、基づいて、前記被写体の輝度分布を算出する輝度分布算出工程と、
前記被写体の輝度分布に基づいて、前記被写体の撮影画像を生成する生成工程と、
を含む、
被写体撮影画像シミュレーション方法。
【請求項2】
請求項1に記載の被写体撮影画像シミュレーション方法であって、
前記輝度推定関数設定工程は、
前記輝度推定関数としてカーネル関数を設定する、
被写体撮影画像シミュレーション方法。
【請求項3】
請求項2に記載の被写体撮影画像シミュレーション方法であって、
前記カーネル関数は、
矩形関数である、
被写体撮影画像シミュレーション方法。
【請求項4】
請求項2に記載の被写体撮影画像シミュレーション方法であって、
前記カーネル関数は、
ガウス関数である、
被写体撮影画像シミュレーション方法。
【請求項5】
請求項1~4のいずれか一つに記載の被写体撮影画像シミュレーション方法であって、
前記光線追跡計算工程は、
前記照明系から発生する光線を前記被写体に照射し、前記被写体内に入射した光線が前記被写体の内部で散乱した後に前記被写体から出射する光線を計算して前記光線情報を生成し、
前記輝度推定関数設定工程は、
前記被写体表面から前記撮像系に届く光線の輝度を推定する、
被写体撮影画像シミュレーション方法。
【請求項6】
請求項1~4のいずれか一つに記載の被写体撮影画像シミュレーション方法であって、
前記光線追跡計算工程は、
前記撮像系から前記被写体に向かって前記被写体内部で散乱したのちに前記被写体から射出した光線を追跡し、
前記輝度推定関数設定工程は、
前記被写体の表面から前記撮像系に届く光線の輝度を推定し、
輝度分布算出工程は、前記被写体の内部で散乱した後に前記被写体から射出した光線を前記照明系まで追跡して求められた前記照明系の輝度分布から前記撮像系への寄与を算出する、
被写体撮影画像シミュレーション方法。
【請求項7】
請求項5または6に記載の被写体撮影画像シミュレーション方法であって、
前記光線追跡計算工程は、
前記撮像系が備える撮像レンズの入射瞳径と前記照明系が備える照明レンズの射出瞳径および前記撮像系が備える撮像素子の全画素のうちシミュレーションする画素数の比率を決定し、
前記比率に前記入射瞳径を乗じた値が前記射出瞳径よりも大きい場合、前記照明系から光線追跡をおこなう順方向追跡処理を実行する一方、
前記比率に前記入射瞳径を乗じた値が前記射出瞳径以下の場合、前記撮像系から光線追跡をおこなう逆方向追跡処理を実行する、
被写体撮影画像シミュレーション方法。
【請求項8】
照明系、撮像系および体積散乱体の被写体で構成されたモデルにおける撮影画像をシミュレーションする画像生成装置であって、
前記被写体に入射し内部で散乱した後に前記被写体表面から出射する光線を計算して少なくとも光線の角度分布を含む光線情報を生成する光線追跡計算部と、
前記光線情報に基づいて、前記被写体表面から前記撮像系または前記照明系に届く光線の輝度および輝度推定関数を推定する輝度推定関数設定部と、
前記光線情報と、前記輝度推定関数と、基づいて、前記被写体の輝度分布を算出する輝度分布算出部と、
前記被写体の輝度分布に基づいて、前記被写体の撮影画像を生成する生成部と、
を備える、
画像生成装置。
【請求項9】
照明系、撮像系および体積散乱体の被写体で構成されたモデルにおける撮影画像をシミュレーションする画像生成装置が実行するプログラムであって、
前記被写体に入射し内部で散乱した後に前記被写体表面から出射する光線を計算して少なくとも光線の角度分布を含む光線情報を生成する光線追跡計算ステップと、
前記光線情報に基づいて、前記被写体表面から前記撮像系または前記照明系に届く光線の輝度および輝度推定関数を推定する輝度推定関数設定ステップと、
前記光線情報と、前記輝度推定関数と、基づいて、前記被写体の輝度分布を算出する輝度分布算出ステップと、
前記被写体の輝度分布に基づいて、前記被写体の撮影画像を生成する生成ステップと、
を含む、
プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、被写体撮影画像シミュレーション方法、画像生成装置およびプログラムに関する。
【背景技術】
【0002】
従来、内視鏡の設計において、内視鏡が撮影する撮影画像のシミュレーションが試みられている。また、内視鏡で観察する被写体の臓器は、表面のみで散乱が起こるのではなく、体積散乱体であるため、シミュレーションの撮影画像を正確に予測するには、被写体内部の光散乱を計算してシミュレーションの撮影画像に反映させる必要がある。この方法の一つとして、被写体の内部の光散乱を光線追跡により求めるモンテカルロ法により被写体内部の光散乱を計算することが知られているが、計算コストが膨大なため、撮影画像のシミュレーションにおける画像生成に用いることが難しかった。
【0003】
一方、撮影画像のシミュレーションにおける画像生成の効率化手段として表面フォトンマッピングの技術が知れている(例えば特許文献1参照)。この技術では、
図21のように、体積散乱体である皮膚の画像生成をする手法が開示されている。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
ところで、上述した特許文献1のような被写体が皮膚の場合、散乱が強いため、表面散乱特性がブロードとなるため、撮像系で高輝度の構成を大量に取得して画像計算を効率化することができる。
【0006】
しかしながら、内視鏡において観察する臓器等の被写体の表面は、粘膜等の液体で覆われていることが多く、表面での散乱が弱くなる。この表面散乱が弱く、出射直前の角度方向以外の光線の輝度が限りなくゼロに近い場合(表面散乱特性がデルタ関数の場合)、低輝度の光線ばかりが撮像系へ到達する(
図22を参照)。このため、上述した特許文献1の技術を用いた場合であっても、低輝度の光線ばかりの撮影画像は、ノイズが多く信頼性が低いことで、ノイズを減らすために膨大な試行回数の計算が必要となり、膨大な時間を要するという問題点があった。
【0007】
本開示は、上記に鑑みてなされたものであって、表面散乱の弱い被写体の場合であっても、低ノイズで信頼性の高い被写体の撮影画像のシミュレーションを短時間で正確に生成することができる被写体撮影画像シミュレーション方法、画像生成装置およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【0008】
上述した課題を解決し、目的を達成するために、本開示に係る被写体撮影画像シミュレーション方法は、照明系、撮像系および体積散乱体の被写体で構成されたモデルにおける撮影画像をシミュレーションする被写体撮影画像シミュレーション方法であって、前記被写体に入射し内部で散乱した後に前記被写体表面から出射する光線を計算して少なくとも光線の角度分布を含む光線情報を生成する光線追跡計算工程と、前記光線情報に基づいて、前記被写体表面から前記撮像系または前記照明系に届く光線の輝度および輝度推定関数を推定する輝度推定関数設定工程と、前記光線情報と、前記輝度推定関数と、基づいて、前記被写体の輝度分布を算出する輝度分布算出工程と、前記被写体の輝度分布に基づいて、前記被写体の撮影画像を生成する生成工程と、を含む。
【0009】
また、本開示に係る被写体撮影画像シミュレーション方法は、上記開示において、前記輝度推定関数設定工程は、前記輝度推定関数としてカーネル関数を設定する。
【0010】
また、本開示に係る被写体撮影画像シミュレーション方法は、上記開示において、前記カーネル関数は、矩形関数である。
【0011】
また、本開示に係る被写体撮影画像シミュレーション方法は、上記開示において、前記カーネル関数は、ガウス関数である。
【0012】
また、本開示に係る被写体撮影画像シミュレーション方法は、上記開示において、前記光線追跡計算工程は、前記照明系から発生する光線を前記被写体に照射し、前記被写体内に入射した光線が前記被写体の内部で散乱した後に前記被写体から出射する光線を計算して前記光線情報を生成し、前記輝度推定関数設定工程は、前記被写体表面から前記撮像系に届く光線の輝度を推定する。
【0013】
また、本開示に係る被写体撮影画像シミュレーション方法は、上記開示において、前記光線追跡計算工程は、前記撮像系から前記被写体に向かって前記被写体内部で散乱したのちに前記被写体から射出した光線を追跡し、前記輝度推定関数設定工程は、前記被写体の表面から前記撮像系に届く光線の輝度を推定し、輝度分布算出工程は、前記被写体の内部で散乱した後に前記被写体から射出した光線を前記照明系まで追跡して求められた前記照明系の輝度分布から前記撮像系への寄与を算出する。
【0014】
また、本開示に係る被写体撮影画像シミュレーション方法は、上記開示において、前記光線追跡計算工程は、前記撮像系が備える撮像レンズの入射瞳径と前記照明系が備える照明レンズの射出瞳径および前記撮像系が備える撮像素子の全画素のうちシミュレーションする画素数の比率を決定し、前記比率に前記入射瞳径を乗じた値が前記射出瞳径よりも大きい場合、前記照明系から光線追跡をおこなう順方向追跡処理を実行する一方、前記比率に前記入射瞳径を乗じた値が前記射出瞳径以下の場合、前記撮像系から光線追跡をおこなう逆方向追跡処理を実行する。
【0015】
また、本開示に係る画像生成装置は、照明系、撮像系および体積散乱体の被写体で構成されたモデルにおける撮影画像をシミュレーションする画像生成装置であって、前記被写体に入射し内部で散乱した後に前記被写体表面から出射する光線を計算して少なくとも光線の角度分布を含む光線情報を生成する光線追跡計算部と、前記光線情報に基づいて、前記被写体表面から前記撮像系または前記照明系に届く光線の輝度および輝度推定関数を推定する輝度推定関数設定部と、前記光線情報と、前記輝度推定関数と、基づいて、前記被写体の輝度分布を算出する輝度分布算出部と、前記被写体の輝度分布に基づいて、前記被写体の撮影画像を生成する生成部と、を備える。
【0016】
また、本開示に係るプログラムは、照明系、撮像系および体積散乱体の被写体で構成されたモデルにおける撮影画像をシミュレーションする画像生成装置が実行するプログラムであって、前記被写体に入射し内部で散乱した後に前記被写体表面から出射する光線を計算して少なくとも光線の角度分布を含む光線情報を生成する光線追跡計算ステップと、前記光線情報に基づいて、前記被写体表面から前記撮像系または前記照明系に届く光線の輝度および輝度推定関数を推定する輝度推定関数設定ステップと、前記光線情報と、前記輝度推定関数と、基づいて、前記被写体の輝度分布を算出する輝度分布算出ステップと、前記被写体の輝度分布に基づいて、前記被写体の撮影画像を生成する生成ステップと、を含む。
【発明の効果】
【0017】
本発明によれば、表面散乱の弱い被写体の場合であっても、低ノイズで信頼性の高い被写体の撮影画像のシミュレーションを短時間で正確に生成することができるという効果を奏する。
【図面の簡単な説明】
【0018】
【
図1】
図1は、一実施の形態に係る画像生成システムの概要を示す模式図である。
【
図2】
図2は、一実施の形態に係る被写体であるファントムの構造と光学特性との関係の一例を示す図である。
【
図3】
図3は、一実施の形態に係る照明系の条件の一例を示す図である。
【
図4】
図4は、一実施の形態に係る撮像系の条件の一例を示す図である。
【
図5】
図5は、一実施の形態に係る画像生成システムが光線情報からカーネル関数を決定する概要を模式的に示す図である。
【
図6】
図6は、一実施の形態に係る画像生成システムが光線にカーネル関数を適用した際に分散された構成の概要を模式的に示す図である。
【
図7】
図7は、一実施の形態に係る画像生成システムが実行する被写体撮影画像シミュレーション方法の処理の概要を示すフローチャートである。
【
図8】
図8は、一実施の形態に係る光線追跡計算部による被写体内部の散乱の計算を模式的に示す図である。
【
図9】
図9は、一実施の形態に係る光線情報記録部が記録する光線情報の一部を示す図である。
【
図10】
図10は、一実施の形態に係るカーネル関数K(t)の一例を示す図である。
【
図11】
図11は、一実施の形態に係る輝度推定関数設定部が照明系に到達する光線から撮像系の撮像素子における1画素の照度を算出する際の算出方法を模式的に示す図である。
【
図12】
図12は、一実施の形態に係る輝度推定関数設定部が撮像系の撮像素子における1画素の照度を算出する際の算出方法を模式的に示す図である。
【
図13】
図13は、一実施の形態に係る照度Biasの誤差とカーネル関数角度幅との関係を示す図である。
【
図14】
図14は、一実施の形態に係る順方向追跡処理の概要を示すフローチャートである。
【
図15】
図15は、一実施の形態に係る順方向追跡処理の概要を模式的に示す図である。
【
図16】
図16は、一実施の形態に係る生成部が生成した撮影画像の一例を示す図である。
【
図17】
図17は、一実施の形態に係る逆方向追跡処理の概要を模式的に示すフローチャートである。
【
図18】
図18は、一実施の形態に係る逆方向追跡処理の概要を模式的に示す図である。
【
図19】
図19は、一実施の形態に係る実施例(本計算方法)および比較例(従来計算方法)を用いて各画素の推定輝度から撮像素子における照度を計算したラインプロファイルの比較結果を示す図である。
【
図20】
図20は、一実施の形態の変形例1に係るカーネル関数の別の一例を示す図である。
【
図21】
図21は、従来技術の被写体の表面散乱が強い場合の一例を模式的に示す図である。
【
図22】
図22は、従来技術の被写体の表面散乱が弱い場合の一例を模式的に示す図である。
【発明を実施するための形態】
【0019】
以下、本開示を実施するための形態を図面とともに詳細に説明する。なお、以下の実施の形態により本開示が限定されるものでない。また、以下の説明において参照する各図は、本開示の内容を理解でき得る程度に形状、大きさ、および位置関係を概略的に示してあるに過ぎない。即ち、本開示は、各図で例示された形状、大きさおよび位置関係のみに限定されるものではない。さらに、以下の説明では、被写体撮影画像シミュレーション方法を実行可能な画像生成装置を備える画像生成システムについて説明する。
【0020】
〔画像生成システムの概要〕
図1は、一実施の形態に係る画像生成システムの概要を示す模式図である。
図1に示す画像生成システム1は、照明系、撮像系および体積散乱体の被写体で構成されたモデルにおける撮影画像をシミュレーションするものである。画像生成システム1は、体積散乱体の模擬生体(ファントム)である被写体2と、照明系3と、撮像系4と、画像生成装置5と、を備える。
【0021】
被写体2(ファントム)は、均一で吸収のない散乱体である組織の中に、完全吸収体である1本の血管を配置したものである。
【0022】
図2は、被写体2であるファントムの構造と光学特性との関係の一例を示す図である。
図2に示す表T1には、被写体2であるファントムにおける組織および血管の構造と、被写体2であるファントムにおける組織および血管の各々の光学特性と、を対応付けて記載されている。
【0023】
照明系3は、被写体2から所定の距離に配置され、被写体2に向けて光を照射する。照明系3は、少なくとも、光を発する光源と、光源が発した光を集光して被写体2に向けて照射する照明レンズと、を有する。
【0024】
図3は、照明系3の条件の一例を示す図である。
図3に示す表T2には、照明系3における各種の照明条件と、観察距離と、を対応付けて記載されている。具体的には、表T2には、照明系3の形状と、サイズと、配光と、観察距離と、を対応付けて記載されている。
【0025】
撮像系4は、被写体2から所定の距離に配置され、被写体2からの光を受光して撮像する。撮像系4は、少なくとも、被写体2からの光を集光して被写体像を結像する撮像レンズと、撮像レンズによって結像された被写体像を受光する撮像素子(CMOS(Complementary Metal Oxide Semiconductor)センサまたはCCD(Charge Coupled Device)センサ)と、を有する。
【0026】
図4は、撮像系4の条件の一例を示す図である。
図4に示す表T3には、撮像系4における各種の撮像条件と、観察距離と、を対応付けて記載されている。具体的には、表T3には、撮像素子のサイズと、画素数と、観察距離と、を対応付けて記載されている。
【0027】
画像生成装置5は、撮影画像をシミュレーションする。画像生成装置5は、通信部51と、表示部52と、入力部53と、記録部54と、制御部55と、を備える。
【0028】
通信部51は、制御部55から入力された各種データを照明系3および撮像系4へ出力し、撮像系4から入力された被写体撮影画像データを制御部55へ出力する。通信部51は、通信インターフェース等を用いて構成される。
【0029】
表示部52は、制御部55の制御のもと、画像生成システム1に関する各種情報および被写体撮影画像を表示する。表示部52は、有機ELディスプレイ(Organic Electroluminescent Display)および液晶ディスプレイ等を用いて構成される。
【0030】
入力部53は、操作者の各種の操作の入力を受け付け、受け付けた操作に応じた信号を制御部55へ出力する。入力部53は、キーボード、マウスおよびタッチパネル等を用いて構成される。
【0031】
記録部54は、画像生成システム1に関する各種の情報を記録する。記録部54は、RAM(Random Access Memory)、ROM(Read Only Memory)、HDD(Hard Disk Drive)およびSSD(Solid State Drive)等を用いて構成される。記録部54は、画像生成装置5が実行する各種のプログラムを記録するプログラム記録部541と、後述する光線情報を記録する光線情報記録部542と、誤差発生量テーブルデータを記録する誤差発生量テーブルデータ記録部543と、を有する。
【0032】
制御部55は、画像生成システム1を構成する各部を制御する。制御部55は、メモリと、CPU(Central Processing Unit)およびGPU(Graphics Processing Unit)等のハードウェアを有するプロセッサを用いて構成される。制御部55は、光線追跡計算部551と、輝度推定関数設定部552と、輝度分布算出部553と、生成部554と、を有する。
【0033】
光線追跡計算部551は、被写体に入射し内部で散乱した後に被写体表面から出射する光線を計算して少なくとも光線の角度分布を含む光線情報を生成する。ここで、光線の角度分布には、散乱体である被写体の表面から出射する出射光線の位置、出射光線の方向余弦および出射光線の光束が含まれる。
【0034】
輝度推定関数設定部552は、光線追跡計算部551が生成した光線情報に基づいて、被写体表面から撮像系4または照明系3に届く光線の輝度および輝度推定関数を推定する。具体的には、輝度推定関数設定部552は、輝度推定関数としてカーネル関数を推定する。
【0035】
輝度分布算出部553は、光線追跡計算部551が生成した光線情報と、輝度推定関数設定部552が推定した輝度推定関数と、基づいて、被写体の輝度分布を算出する。
【0036】
生成部554は、輝度分布算出部553が算出した被写体の輝度分布基づいて、被写体の撮影画像を生成する。
【0037】
〔画像生成システム1による処理の概要〕
次に、画像生成システム1が実行する被写体撮影画像シミュレーション方法の概要について説明する。
図5は、画像生成システム1が光線情報からカーネル関数を決定する概要を模式的に示す図である。
図6は、画像生成システム1が光線にカーネル関数を適用した際に分散された構成の概要を模式的に示す図である。
【0038】
図5に示すように、画像生成システム1は、被写体2表面の散乱特性ではなく、被写体2内部で散乱後に表面から出射する光線R1(以下、「出射光線R1」という)の光線群D1である光線情報(少なくとも、出射光線R1の位置、出射光線R1の方向、出射光線R1の光束を含む出射光線R1の角度分布を含む)に基づいて、カーネル関数K(t)を決定する。具体的には、
図6に示すように、被写体2内部で多重散乱した出射光線R1は、散乱ごとに光線方向が一様になり、被写体2表面からの射出時に適度に分散した出射光線R2となる。
【0039】
従って、画像生成システム1は、被写体2内部で散乱後に表面から出射する出射光線R1の光線群D1である光線情報に基づいて決定したカーネル関数K(t)を用いて出射光線R1を分散して出射し、撮像系4へ到達させることで、出射光線R2を大量に撮影画像へ寄与させ、計算の効率化を実現する。
【0040】
これにより、画像生成システム1は、被写体2表面の散乱特性(BTDF)ではなく、被写体2の内部で散乱した後に被写体2表面から射出する出射光線R1の光線情報から求めたカーネル関数K(t)を用いて被写体2表面から撮像系4または照明系3に届く光線の輝度の推定を行う。この結果、画像生成システム1は、消化管の表面等で液面に覆われており、表面の散乱特性が非常に弱い被写体2の場合であっても、光線情報が適度に分散していることによって、撮像系4に入射する成分が多くなり、輝度推定関数としてのカーネル関数K(t)の関数幅が推定に適した値となる。
【0041】
一般的な内視鏡では、被写体2を照明する場合、光源が小さいため、被写体2表面における照明光のNAも小さくなり、入射光の角度が局在している。しかしながら、被写体2は、体積散乱体なので、光が散乱するごとに光線の方向が一様になっていく。従って、画像生成システム1によれば、入射光線の方向の指向性が非常に強い場合でも、内部で散乱を繰り返すことにより被写体2で散乱した後に被写体2表面での光線情報が適度に分散するので、カーネル関数K(t)の関数幅が分布をもった推定に適した値となる。この結果、撮像系4に入射する出射光線R2の輝度が高くなり、計算の効率を向上することができる。
【0042】
このように画像生成システム1によれば、被写体2の表面散乱が非常に弱い場合であっても、上述した輝度推定関数設定方法を用いた画像生成を行うことで、臓器等の表面が液体に覆われ被写体2表面の散乱特性が非常に弱い生体の撮影画像のシミュレーションを正確かつ効率的に行うことができる。
【0043】
〔画像生成システムが実行する処理〕
次に、画像生成システム1が実行する被写体撮影画像シミュレーション方法の処理について説明する。
図7は、画像生成システム1が実行する被写体撮影画像シミュレーション方法の処理の概要を示すフローチャートである。
【0044】
図7に示すように、まず、光線追跡計算部551は、照明系3、撮像系4および被写体モデルを決定する(ステップS101)。具体的には、光線追跡計算部551は、上述した
図2~
図4における表T1~T3の照明系3、撮像系4および被写体モデルを決定する。
【0045】
続いて、光線追跡計算部551は、撮像系4における撮像素子の軸上1画素から射出瞳方向へ光線追跡を行い(ステップS102)、被写体2内部の散乱を計算し(ステップS103)、被写体2である散乱体表面から出射する出射光線を光線情報として光線情報記録部542に記録する(ステップS104)。具体的には、光線追跡計算部551は、被写体2である散乱体表面から出射する出射光線の角度分布を含む光線情報を光線情報記録部542に記録する。ここで、出射光線の角度分布には、散乱体である被写体2の表面21から出射する出射光線の位置(x、y、z)、出射光線の方向余弦α、β、γおよび出射光線の光束Φが含まれる。
【0046】
図8は、光線追跡計算部551による被写体2内部の散乱の計算を模式的に示す図である。
図8に示すように、光線追跡計算部551は、撮像系4における撮像素子の軸上1画素から射出瞳方向へ光線R3の追跡し、被写体2内部の散乱を計算後、散乱体である被写体2の表面21から出射する出射光線R1の位置P1(x、y、z)、出射光線R1の方向余弦α、β、γおよび出射光線R1の光束Φを光線情報として生成して光線情報記録部542に記録する。
【0047】
図9は、光線情報記録部542が記録する光線情報の一部を示す図である。
図9に示す光線情報T4には、被写体2の表面21における出射光線R1の位置P1であるx、y、z、出射光線R1の方向余弦α、β、γおよび出射光線R1の光束Φが含まれる。また、光線追跡計算部551が追跡する光線本数は、目標物(ゴール)である照明系3へ10,000本到達するまで(統計誤差1%)とする。このため、一実施の形態では、光線追跡計算部551が撮像系4から300,000本の光線を追跡するものとする。さらに、一実施の形態では、光線追跡計算部551による光線追跡をLightTools(登録商標)(Synopsys,Inc.(登録商標))のVer8.5を用いて行った。
【0048】
ステップS104の後、輝度推定関数設定部552は、光線情報記録部542が記録する光線情報をそのままに照明系3へ到達する光線と、照明系3の輝度と、に基づいて、撮像系4の撮像素子における1画素の照度を算出する(ステップS105)。
【0049】
続いて、輝度推定関数設定部552は、カーネル関数を誤差発生量テーブルデータ記録部543が記録する人臓器散乱体の初期値に設定する(ステップS106)。ここで、カーネル関数角度幅の初期値の決定方法は、過去のヒト臓器の計算実施例を用いて、カーネル角度幅に対する誤差発生量を、テーブルデータ化して誤差発生量テーブルデータ記録部543に記録したものである。即ち、輝度推定関数設定部552は、誤差発生量テーブルデータ記録部543が記録する誤差発生量テーブルデータを参照し、目標とする誤差量に対して適当な関数幅を初期値として設定する。これにより、目標値から大きく外れていない範囲で角度幅の最適化を行うことができる。
【0050】
図10は、カーネル関数K(t)の一例を示す図である。
図10に示すように、カーネル関数K(t)の形状は、矩形関数を使用し、以下の式(1)を満たす。また、カーネル関数K(t)は、矩形関数のため、関数の幅Δが設定すべき変数となる。
【数1】
【0051】
ステップS106の後、輝度推定関数設定部552は、光線情報記録部542が記録する光線情報に基づいて、光線情報そのままに照明系3へ到達する光線を追跡し、照明系3に到達する光線から撮像系4の撮像素子における1画素の照度を算出する(ステップS107)。
【0052】
図11は、輝度推定関数設定部552が照明系3に到達する光線から撮像系4の撮像素子における1画素の照度を算出する際の算出方法を模式的に示す図である。
図11に示すように、輝度推定関数設定部552は、光線情報記録部542が記録する光線情報をそのままに照明系3へ到達する光線R4を追跡し、照明系3に到達する光線R4から撮像系4の撮像素子における1画素の照度を算出する。
【0053】
ステップS107の後、輝度推定関数設定部552は、あるカーネル関数を仮定し、それぞれの光線をカーネル関数に応じて分散させ(ステップS108)、照明系3に到達する分散光線と照明系3の輝度とから撮像系4の撮像素子における1画素の照度を算出する(ステップS109)。
【0054】
図12は、輝度推定関数設定部552が撮像系4の撮像素子における1画素の照度を算出する際の算出方法を模式的に示す図である。
図12に示すように、輝度推定関数設定部552は、あるカーネル関数K(t)を仮定し、それぞれの光線をカーネル関数K(t)に応じて分散させた出射光線R2(分散光線)と、照明系3に届く光線の輝度と、に基づいて、撮像系4の撮像素子における1画素の照度を算出する。なお、出射光線R2(分散光線)については、本実施例においてはカーネル関数幅の範囲でランダムに光線を1000本生成し、光線1本のエネルギーを1/1000とした。エネルギー保存の観点から、生成する光線本数と、エネルギーの減少率は逆数の関係になっている必要がある。
【0055】
ステップS109の後、輝度推定関数設定部552は、上述したステップS107において算出した撮像系4の撮像素子における1画素の照度と、上述したステップS109において算出した撮像系4の撮像素子における1画素の照度との誤差(以下、「照度Biasの誤差」と表記する)を算出する(ステップS110)。この場合、輝度推定関数設定部552は、各光線が内部で複数回散乱し、出射角度が均一に近くなるため、ステップS108においてカーネル関数K(t)を適用して光線をある角度範囲で分散しても、照度Biasの誤差が抑えられたまま、高輝度光線を効率よく取得することができる。
【0056】
続いて、輝度推定関数設定部552は、照度Biasの誤差が予め設定した許容量以下であるか否かを判定する(ステップS111)。具体的には、輝度推定関数設定部552は、照度Biasの誤差が予め設定した許容量±5%であるか否かを判定する。この許容量は、ユーザが適宜設定することができる。例えば、ユーザは、照度Biasの誤差Simと比較する際に、予め設定した許容量が実際に用いる計測器の誤差量内に抑えることができる目標を設定する。輝度推定関数設定部552は、照度Biasの誤差が予め設定した許容量以下であると判定した場合(ステップS111:Yes)、カーネル関数K(t)を最終値(以下、「カーネル関数K(θ)」と表記する)に決定する(ステップS112)。ステップS112の後、画像生成システム1は、後述するステップS115へ移行する。
【0057】
ステップS111において、輝度推定関数設定部552は、照度Biasの誤差が予め設定した許容量を超えると判定した場合(ステップS111:No)、画像生成システム1は、ステップS112へ移行する。
【0058】
続いて、輝度推定関数設定部552は、誤差発生量テーブルデータ記録部543が記録する誤差発生量テーブルデータを参照し、現状の照度Biasの誤差量からカーネル関数角度幅の変更量を決定し(ステップS113)、カーネル関数を変更して設定する(ステップS114)。ステップS114の後、画像生成システム1は、上述したステップS107へ戻り、照度Biasの誤差が予め設定した許容量以下となるまで、ステップS107~ステップS109を繰り返す。
【0059】
図13は、照度Biasの誤差とカーネル関数角度幅との関係を示す図である。
図13において、縦軸が照度Biasの誤差を示し、横軸がカーネル関数角度幅[deg]を示す。また、
図13において、折れ線L1が照度Biasの誤差とカーネル関数角度幅との関係を示す。
【0060】
図13の折れ線L1に示すように、輝度推定関数設定部552は、カーネル関数角度幅の初期値を63[deg]とし、許容量以上の照度Biasの誤差が発生する毎に、角度幅を9[deg]減らして再計算を行う。
図13の折れ線L1に示すように、輝度推定関数設定部552は、角度幅が45[deg]において、照度Biasの誤差が許容量の5%を達成したため、これをカーネル関数角度幅として採用する。このように、輝度推定関数設定部552は、カーネル関数幅をより小さく抑え、再設定したカーネル関数に応じて光線を分散させ、照度を算出し、再度、照度Biasの誤差を評価し、許容量との比較を行う。そして、輝度推定関数設定部552は、最終的に、照度Biasの誤差が許容量に収まるカーネル関数幅を決定する。
【0061】
ステップS111の後、光線追跡計算部551は、撮像系4の撮像レンズの入射瞳径Pinと照明系3の照明レンズの出射瞳径Poutとの比を算出する(ステップS115)。
【0062】
続いて、光線追跡計算部551は、撮像系4における撮像素子の全画素のうち、シミュレーションする画素数の比率αを決定する(0<α≦1)(ステップS116)。
【0063】
その後、光線追跡計算部551は、比率αに撮像系4の撮像の入射瞳径Pinを乗じた値(α×Pin)が照明系3の照明レンズの出射瞳径Poutより大きいか否かを判定する(ステップS117)。光線追跡計算部551が比率αに撮像系4の撮像レンズの入射瞳径Pinを乗じた値(α×Pin)が照明系3の照明レンズの出射瞳径Poutより大きいと判定した場合(ステップS117:Yes)、画像生成システム1は、後述するステップS118へ移行する。これに対して、光線追跡計算部551が比率αに撮像系4の撮像レンズの入射瞳径Pinを乗じた値(α×Pin)が照明系3の照明レンズの出射瞳径Poutより大きくないと判定した場合(ステップS117:No)、画像生成システム1は、後述するステップS119へ移行する。
【0064】
ステップS118において、照明系3から光線追跡を開始する順方向追跡処理を実行する。なお、順方向追跡処理の詳細は、後述する。ステップS118の後、画像生成システム1は、本処理を終了する。
【0065】
ステップS119において、撮像系4から光線を飛ばし照明系3まで光線追跡を開始する逆方向追跡処理を実行する。なお、逆方向追跡処理の詳細は、後述する。ステップS119の後、画像生成システム1は、本処理を終了する。
【0066】
〔順方向追跡処理の詳細〕
次に、上述したステップS118で説明した順方向追跡処理の詳細について説明する。
図14は、順方向追跡処理の概要を示すフローチャートである。
図15は、順方向追跡処理の概要を模式的に示す図である。ここで、順方向追跡処理とは、照明系3から光線追跡を行う手法の処理である。
【0067】
図14に示すように、まず、輝度推定関数設定部552は、光線情報記録部542が記録する光線情報に基づいて、照明系3から光線追跡し(ステップS201)、内部散乱を計算する(ステップS202)。
【0068】
続いて、輝度推定関数設定部552は、散乱体である被写体2の生体内部で散乱した後に、生体である被写体2の表面から出射する際に、上述したステップS112で決定したカーネル関数K(θ)に応じて光線を分散する(ステップS203)。具体的には、
図15に示すように、輝度推定関数設定部552は、散乱体である被写体2内部で散乱した後に、被写体2の表面から出射する光線に対してカーネル関数K(θ)によって分散させる。なお、光線の分散方法は、上述したステップS108のカーネル関数設定時と同様のため(
図12を参照)、詳細な説明は省略する。
【0069】
その後、輝度分布算出部553は、輝度推定関数設定部552がカーネル関数K(θ)を用いて分散した光線を撮像系4まで追跡し、撮像系4の撮像素子の各画素の照度を算出する(ステップS204)。具体的には、輝度分布算出部553は、分散した光線を撮像系4まで追跡し、撮像系4の撮像素子の各画素の照度を算出することによって、被写体2の輝度分布を算出する。これにより、例えば、内視鏡では、撮像レンズにより撮像素子へと光線が結像され、各画素の照度(照度値)の輝度分布をシミュレーションすることができる。
【0070】
続いて、生成部554は、撮像系4の撮像素子に到達した光線に基づいて、被写体2の撮影画像を生成する(ステップS205)。具体的には、生成部554は、輝度分布算出部553が算出した被写体の輝度分布に対応する撮像系4の撮像素子に到達した光線に基づいて、被写体2の撮影画像を生成する。ステップS205の後、画像生成システム1は、
図7のメインルーチンへ戻り、本処理を終了する。
【0071】
図16は、生成部554が生成した撮影画像の一例を示す図である。
図16に示すように、生成部554は、輝度分布算出部553が算出した被写体の輝度分布に対応する撮像系4の撮像素子に到達した光線に基づいて、被写体撮影画像をシミュレーションした撮影画像i1を生成する。なお、
図16における撮影画像i1では、画素数が700×500(Pixel)の撮像素子を用いた一例を示す。さらに、一実施の形態では、CPUのコア数が12コアの制御部55によって、ピーク統計誤差3%の撮影画像i1を約8時間で生成することができた。これに対して、従来技術のモンテカルロ計算では、同様の計算に約2000日が必要であり、約6,000倍の効率化を達成することができた。
【0072】
〔逆方向追跡処理の詳細〕
次に、上述したステップS119で説明した逆方向追跡処理の詳細について説明する。
図17は、逆方向追跡処理の概要を模式的に示すフローチャートである。
図18は、逆方向追跡処理の概要を模式的に示す図である。ここで、逆方向追跡処理とは、撮像系4側から光線を飛ばし、照明系3まで追跡する手法の処理である。即ち、逆方向追跡処理は、光線の通過したパスの情報をそのまま活用し、照明系3へ到達した際の位置および角度と、照明系3の配光特性を照合して、撮像系4の撮像素子における1画素の照度を算出する。
【0073】
図17に示すように、まず、輝度推定関数設定部552は、光線情報記録部542が記録する光線情報に基づいて、撮像系4の撮像素子における各画素から光線追跡し(ステップS301)、内部散乱を計算する(ステップS302)。
【0074】
続いて、輝度推定関数設定部552は、散乱体である被写体2の生体内部で散乱した後に、散乱体である被写体2表面から出射する際に、上述したステップS112で設定したカーネル関数K(θ)に応じて光線を分散する(ステップS303)。具体的には、
図18に示すように、輝度推定関数設定部552は、散乱体である被写体2内部で散乱した後に、被写体2表面から出射する光線に対してカーネル関数K(θ)によって分散させる。なお、光線の分散方法は、上述したステップS108のカーネル関数設定時と同様のため(
図12を参照)、詳細な説明は省略する。
【0075】
その後、輝度分布算出部553は、撮像系4側から光線を飛ばし、照明系3まで追跡し、光線の通過したパスの情報をそのまま活用し、照明系3へ到達した際の位置および角度と、照明系3の配光特性と、を照合して、撮像系4の照度を逆算する(ステップS304)。具体的には、輝度分布算出部553は、撮像系4側から光線を飛ばし、照明系3まで追跡し、照明系3へ到達した際の位置および角度と、照明系3の配光特性と、を照合して、撮像系4の照度を逆算することによって、被写体2の輝度分布を算出する。この場合、輝度分布算出部553は、照明系3が持つ配光分布と面内分布を考慮するため、照明系3への光線の入射位置および入射角度の情報を予め把握しておくことが好ましい。
【0076】
続いて、生成部554は、撮像系4の撮像素子に到達した光線に基づいて、画像を生成する(ステップS305)。具体的には、生成部554は、輝度分布算出部553が算出した被写体の輝度分布に対応する撮像系4の撮像素子に到達した光線に基づいて、被写体2の撮影画像を生成する。ステップS305の後、画像生成システム1は、
図7のメインルーチンへ戻り、本処理を終了する。
【0077】
このように、逆方向追跡処理によれば、内視鏡のように受光器(撮像レンスおよび撮像素子)の面積およびNAが極端に小さい場合、受光器よりも相対的に大きい光源を光線追跡の目標物(ゴール)となり、撮影画像に寄与する光線を取り込みやすくなる。
【0078】
さらに、逆方向追跡処理によれば、撮像系4における撮像素子の特定の画素が受光する照度を選択的に計算することができ、必要な画素数に応じて計算時間を短縮できる。
【0079】
(実施例)
次に、実施例と比較例とを参照して、上記効果についてより具体的に説明する。
図19は、実施例(本計算方法)および比較例(従来計算方法)を用いて各画素の推定輝度から撮像素子における照度を計算したラインプロファイルの比較結果を示す図である。なお、
図19では、200画素1ラインの撮像素子を用いた場合について説明する。さらに、
図19において、曲線L11が実施例(本計算方法)を示し、曲線L12が比較例(従来計算方法)を示す。なお、
図19では、制御部55のCPUのコア数が12個の場合で、約20分間計算した結果を示す。
【0080】
図19に示すように、比較例(従来来法)は、ピーク統計誤差約9.4%である(曲線L12を参照)。これに対して、実施例は、ピーク統計誤差約0.5%であり(曲線L11を参照)、比較例に対して約350倍の効率化を達成している。
【0081】
以上説明した一実施の形態によれば、表面散乱の弱い被写体2の場合であっても、低輝度の光線ばかりが撮像系4へ到達することなく、高輝度の光線を大量に取得することがで、低ノイズで信頼性の高い被写体2の撮影画像i1のシミュレーションを短時間で正確に生成することができる。
【0082】
(変形例1)
また、一実施の形態では、カーネル関数が矩形状をなしていたが、これに限定されることなく、種々の形状を適用することができる。
図20は、一実施の形態の変形例1に係るカーネル関数の別の一例を示す図である。
図20に示すように、角度関数としてガウス関数であっても適用することができる。
図20のガウス関数は、σ=30degの場合のものである。
【0083】
(その他の実施の形態)
上述した本開示の一実施の形態に係る画像生成システムに開示されている複数の構成要素を適宜組み合わせることによって、種々の発明を形成することができる。例えば、上述した本開示の実施の形態に係る画像生成システムに記載した全構成要素からいくつかの構成要素を削除してもよい。さらに、上述した本開示の実施の形態に係る画像生成システムで説明した構成要素を適宜組み合わせてもよい。
【0084】
また、本開示の一実施の形態に係る画像生成システムでは、上述してきた「部」は、「手段」や「回路」などに読み替えることができる。例えば、制御部は、制御手段や制御回路に読み替えることができる。
【0085】
また、本開示の一実施の形態に係る画像生成システムに実行させるプログラムは、インストール可能な形式または実行可能な形式のファイルデータでCD-ROM、フレキシブルディスク(FD)、CD-R、DVD(Digital Versatile Disk)、USB媒体、フラッシュメモリ等のコンピュータで読み取り可能な記録媒体に記録されて提供される。
【0086】
また、本開示の一実施の形態に係る画像生成システムに実行させるプログラムは、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。
【0087】
なお、本明細書におけるフローチャートの説明では、「まず」、「その後」、「続いて」等の表現を用いてステップ間の処理の前後関係を明示していたが、本発明を実施するために必要な処理の順序は、それらの表現によって一意的に定められるわけではない。即ち、本明細書で記載したフローチャートにおける処理の順序は、矛盾のない範囲で変更することができる。また、こうした、単純な分岐処理からなるプログラムに限らず、より多くの判定項目を総合的に判定して分岐させてもよい。
【0088】
以上、本願の実施の形態のいくつかを図面に基づいて詳細に説明したが、これらは例示であり、本発明の開示の欄に記載の態様を始めとして、当業者の知識に基づいて種々の変形、改良を施した他の形態で本発明を実施することが可能である。
【符号の説明】
【0089】
1 画像生成システム
2 被写体
3 照明系
4 撮像系
5 画像生成装置
51 通信部
52 表示部
53 入力部
54 記録部
55 制御部
56 :輝度推定関数設定部
541 プログラム記録部
542 光線情報記録部
543 差発生量テーブルデータ記録部
551 光線追跡計算部
552 輝度推定関数設定部
553 輝度分布算出部
554 生成部