説明

計測内視鏡システム、計測内視鏡システム用計測方法、及び計測内視鏡システム用計測プログラム

【課題】サブピクセルマッチングによって、一方の画像上の計測位置に対応する他方の画像上の計測位置を検索し、短時間で正確な計測位置を取得する計測内視鏡システムを提供する。
【解決手段】複数の視点から撮像された各視点の画像信号を、画素単位でサンプリングして第1画像、第2画像を得る画像取得手段と、第1画像を前記画素単位よりも細い単位で再サンプリングして第1再サンプリング画像を生成する再サンプリング処理手段と、この第1再サンプリング画像に基づき計測位置を指定する計測位置指定手段と、計測位置指定手段により指定された計測位置に対応する第2画像上の計測位置を、画素単位よりも細い単位で計算するマッチング処理手段とを有し、再サンプリング処理手段は、このマッチング処理手段により計算された第2画像上の計測位置を前記画素単位より細い単位で再サンプリングして第2再サンプリング画像を生成する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は被写体を撮像し、所定の画素間隔でデータをサンプリングして元画像とし、元画像上の特徴点を指定して計測を行う計測内視鏡システム、計測内視鏡システム用計測方法、及び計測内視鏡システム用計測プログラムに関する。
【背景技術】
【0002】
今日、内視鏡装置は各種産業に使用され、例えば機械部品の傷や欠損等を計測する計測内視鏡装置も使用されている。このような内視鏡装置において、ユーザが元画像上の特徴点を容易に指定可能にする技術として、元画像を拡大し、該拡大画像上で特徴点の指定を行う方法が提案されている。
【0003】
特許文献1には、元画像上の計測点を指定する技術として、元画像を拡大し、拡大画像上で計測点の指定を行う方法が提案されている。この方法は、拡大画像上の画素の中から計測点に対応する画素を選択して指定し、指定された画素に対応する元画素の位置に基づいて計測を行う。さらに、指定された計測点の元画像上での位置は、拡大倍率の逆数単位で算出することができる。従って、この様に算出された位置に基づいて、元画像の画素間隔よりも細かい単位の計測を行うことも可能である。
【0004】
例えば、図14は被写体の元画像を示し、元画像では背景が白であり、太さが2画素である2本の黒い線が直角に交わっている。特徴点は2本の線の交点の中心とし、この点を含む領域を拡大する拡大領域としている。図15は拡大領域を示す。そして、拡大画像上には指定点を示す+印が表示され、図15に示すように拡大画像上で特徴点を指定し、指定された拡大画像上の画素に対応する元画像上の画素の位置に基づいて演算を行っている。
【特許文献1】特開平4−332523号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
上記従来方法においては、計測対象物のステレオ画像を取得した場合、例えば左画像の計測位置を計測した後、右画像の計測位置の取得は、ピクセル単位の画像マッチングによって行われていた。すなわち、左画像の計測位置に対応する右画像上の計測位置をピクセルマッチングによって検索していた。このため、計測位置の検索精度が充分でなく、また、検索精度の確認も困難であった。
【0006】
そこで、本発明はサブピクセルマッチングによって、一方の画像上の計測位置に対応する他方の画像上の計測位置を検索し、短時間で正確な計測位置の取得が可能な計測内視鏡システム、計測内視鏡システム用計測方法、及び計測内視鏡システム用計測プログラムを提供するものである。
【課題を解決するための手段】
【0007】
上記課題は本発明によれば、観察対象が複数の視点から撮像された各視点の画像信号を、それぞれ画素単位でサンプリングして第1画像、第2画像として取得する画像取得手段と、この第1画像の少なくとも一部の領域を、前記画素単位よりも細かい単位で再サンプリングして第1再サンプリング画像を生成する再サンプリング処理手段と、この第1再サンプリング画像に基づいて計測位置を指定する計測位置指定手段と、この計測位置指定手段によって指定された前記計測位置に対応する前記第2画像上の計測位置を、前記画素単位よりも細かい前記単位で計算するマッチング処理手段と、を有し、前記再サンプリング処理手段は、このマッチング処理手段によって計算された前記第2画像上の計測位置の少なくとも一部の領域を、前記画素単位よりも細かい前記単位で再サンプリングして第2再サンプリング画像を生成する計測内視鏡システムを提供することによって達成できる。
【発明の効果】
【0008】
本発明によれば、一方の画像上の計測点に対応する他方の画像上の計測点の位置を検索する際、画素間隔より小さい小数点の単位の画像情報に対応してマッチングを行い、他方の画像上の計測点の位置を正確に指定し、他方の画像上の計測点の位置もサブピクセル単位で表示可能な計測内視鏡システムを提供するものである。
【発明を実施するための最良の形態】
【0009】
以下、本発明の実施の形態を図面を参照しながら説明する。
尚、本実施形態の説明では、計測内視鏡システムとしてステレオ計測可能な計測内視鏡システムを例に挙げ、指定点としてはステレオ計測の対象である計測点としている。
【0010】
図1〜図13は本実施形態に係わり、図1は計測内視鏡システムを説明する図であり、図2は計測内視鏡システムの構成を説明するブロック図であり、図3は計測内視鏡システムの制御を説明する機能ブロック図であり、図4はリモートコントローラを説明する図であり、図5は直視型のステレオ光学アダプタを計測用内視鏡先端部に取り付けた構成を示す斜視図であり、図6は図5のA−A断面図であり、図7はステレオ計測により計測点の3次元座標を求める方法を説明する図であり、図8は計測内視鏡システムによる計測の流れを説明するフローチャートであり、図9は図1の計測内視鏡システムのステレオ計測実行画面を示す説明図であり、図10は疑似サンプリング画像の拡大画像を示す図であり、図11はサンプリング点移動画像とその拡大画像が生成される原理を説明する図であり、図12は元画像におけるサンプリング点と移動されたサンプリング点を示す図であり、図13はサブピクセルマッチングの手法を説明する図である。
【0011】
先ず、計測内視鏡システム10は、図1に示すようにステレオ計測可能なものを含む光学アダプタを着脱自在に構成された内視鏡挿入部11と、該内視鏡挿入部11を収納するコントロールユニット12と、計測内視鏡システム10のシステム全体の各種動作制御を実行するために必要な操作を行うリモートコントローラ13と、内視鏡画像や操作制御内容(例えば処理メニュー)等の表示を行う液晶モニタ(以下、LCDと記載)14と、通常の内視鏡画像、あるいはその内視鏡画像を擬似的にステレオ画像として立体視可能なフェイスマウントディスプレイ(以下,FMDと記載)17と、該FMD17に画像データを供給するFMDアダプタ18と、コントロールユニット12に接続されるマウス27を含んで構成されている。
【0012】
次に、図2を参照しながら計測内視鏡システム10のシステム構成を詳細に説明する。同図に示すように、前記内視鏡挿入部11は、内視鏡ユニット24に接続される。この内視鏡ユニット24は、例えは図1に示したコントロールユニット12内に搭載されている。また、この内視鏡ユニット24は、撮影時に必要な照明光を得るための光源装置と、前記内視鏡挿入部11を電気的に自在に湾曲させるための電動湾曲装置とを含んで構成されている。また、内視鏡挿入部11先端の固体撮像素子43(撮像手段)(図6参照)からの撮像信号は、カメラコントロールユニット(以下、CCUと記載)25に入力される。
【0013】
該CCU25は、供給された撮像信号をNTSC信号等の映像信号に変換し、前記コントロールユニット12内の主要処理回路群へと供給する。
前記コントロールユニット12内に搭載された主要回路群は、図2に示すように、主要プログラムに基づき各種機能を実行し動作させるように制御を行うCPU26a、ROM26b、RAM26c、及びPCカードインターフェイス(以下、PCカードI/Fと記載)30、USBインターフェイス(以下、USB I/Fと記載)31、RS−232Cインターフェイス(以下、RS−232C I/Fと記載)29、音声信号処理回路32、及び映像信号処理回路33(画像取得手段)とを含んで構成されている。
【0014】
また、前記RS−232C I/F29は、CCU25、内視鏡ユニット24、及びリモートコントローラ13にそれぞれ接続されている。リモートコントローラ13(計測位置指定手段)は、CCU25、内視鏡ユニット24の制御及び動作指示、若しくは後述するポインタの位置移動の制御を行うためのものである。また、RS−232C I/F29は、リモートコントローラ13による操作に基づいてCCU25、内視鏡ユニット24を動作制御するために必要な通信を行う構成である。
【0015】
前記USB I/F31は、前記コントロールユニット12とマウス27(計測位置指定手段)とを電気的に接続するためのインターフェイスである。前記USB I/F31を介して前記コントロールユニット12とマウス27とを接続した場合には、マウス27の後述する操作によって操作信号がCPU26aに送られ、後述するポインタの位置移動が制御される。
【0016】
また、前記PCカードI/F30は、PCMCIAメモリカード23、及びコンパクトフラッシュ(登録商標)メモリカード22が着脱自由に接続される構成である。つまり、前記いずれかのメモリカードが装着された場合、コントロールユニット12は、記録媒体としてのメモリカードに記憶された制御処理情報や画像情報等のデータを再生し、前記PCカードI/F30を介してコントロールユニット12内に取り込み、或いは制御処理情報や画像情報等のデータを、前記PCカードI/F30を介してメモリカードに供給して記録することができる。
【0017】
前記映像信号処理回路33は、CCU25から供給された内視鏡画像とグラフィックによる操作メニューとを合成した合成画像を表示するように、CCU25からの映像信号とCPU26aの制御により生成される操作メニューに基づく表示信号とを合成処理し、更にLCD14の画面上に表示するために必要な処理を施してLCD14に供給する。これにより、LCD14には内視鏡画像と操作メニューとの合成画像が表示される。
【0018】
尚、映像信号処理回路33では、単に内視鏡画像、あるいは操作メニュー等の画像を単独で表示するための処理を行うことも可能である。
また、図1に示したコントロールユニット12は、前記CCU25を経由せずに映像信号処理回路33に映像を入力する外部映像入力端子70を別に設けている。該外部映像入力端子70に映像信号が入力された場合、映像信号処理回路33はCCU25からの内視鏡画像に優先して前記合成画像を出力する。
【0019】
前記音声信号処理回路32は、マイク20により集音されて生成され、メモリカード等の記録媒体に記録する音声信号、或いはメモリカード等の記録媒体の再生によって得られた音声信号、上記CPU26aによって生成された音声信号が供給される。前記音声信号処理回路32は、供給された音声信号に再生するために必要な処理(増幅処理等)を施し、スピーカ19に出力する。これにより、スピーカ19によって音声信号が再生される。
【0020】
図3は上記ROM26bに記憶されたプログラムに従って、CPU26aが行う処理を説明する機能ブロック図である。ポインタ制御部75、ポインタ位置移動前記憶部76、ポインタ位置移動後記憶部77、マウスボタン状態記憶部78、補正後ポインタ位置記憶部79、インジケータ状態指示部80、サンプリング点位置記憶部81、再サンプリング処理部82(再サンプリング処理手段)、サンプリング点移動画像表示処理部83、及び計測部84(マッチング処理手段)で構成される。計測部84は後述する三角測量の原理により、左画像上及び右画像上の計測位置のいくつかの点の3次元座標を求めることによって、2点間の距離、2点を結ぶ線と1点の距離、面積、深さ、表面形状など様々な計測が可能である。また、左画像上にリモートコントローラ13又はマウス27によって入力された計測点に対応する右画像上の計測点をマッチング処理によって求める。
【0021】
ここで、ポインタ制御部75や、再サンプリング処理部82、サンプリング点移動画像表示処理部83、計測部84はCPU26aの処理に対応し、ポインタ位置移動前記憶部76や、ポインタ位置移動後記憶部77、マウスボタン状態記憶部78等は記憶手段であるRAM26cに対応し、CPU26aはROM26bのプログラムに従ってポインタ位置の移動制御を行う。尚、CPU26aは、勿論上記ポインタ位置の移動制御以外、計測内視鏡システムのシステム制御もROM26bに記憶されたプログラムに従って実行する。
【0022】
また、図2ではUSB I/F31にマウス27が接続されているが、この構成に限らず、不図示のパーソナルコンピュータ(電子計算機)をUSB I/F31に接続してもよい。このとき、CPU26aの処理をパーソナルコンピュータのCPU(演算手段)が処理する構成としてもよい。また、計測内視鏡システム10とパーソナルコンピュータとの接続はUSB I/F31に限らず、不図示の無線又は有線タイプのネットワークI/Fによる接続する構成としてもよい。
【0023】
また図2では計測内視鏡システム10を内視鏡装置で図示しているが、これに限らず、例えば、パーソナルコンピュータのCPUが映像信号処理回路33(画像取得手段)の機能を有し、PCMCIAメモリカード23、又はコンパクトフラッシュ(登録商標)メモリカード22に記録された撮像信号を読み出して以降の処理を行う構成としてもよい。
【0024】
ポインタ位置移動前記憶部76にはマウス27を操作する前のポインタ位置の情報が記憶され、ポインタ位置移動後記憶部77には後述するイベント発生時、マウス27の操作に基づくポインタの位置が記憶される。また、ポインタ制御部75はイベント発生毎に上記ポインタ位置移動前記憶部76に記憶されたポインタ位置と、ポインタ位置移動後記憶部77に記憶されたポインタ位置の情報に基づいてポインタ移動後の位置を計算し、後述する一定の値(R値)で割り算したデータを不図示のレジスタに保持する。
【0025】
補正後ポインタ位置記憶部79には、マウス27のボタン操作の停止に基づく補正値の計算結果が記憶され、上記レジスタに保持したデータに基づいて補正値が計算され、補正後のポインタ位置の情報が記憶される。
【0026】
計測部84は、上記処理によって設定された左画像におけるサンプリング点の位置に基づいてこのサンプリング点に対応した右画像のサンプリング点をマッチング処理によって求める。
【0027】
サンプリング点位置記憶部81は、上記マッチング処理によって設定された左画像及び右画像のサンプリング点の位置を記憶する。また、再サンプリング処理部82はサンプリング点位置記憶部81によって記憶されたサンプリング点に基づいて左画像及び右画像の再サンプリングを行う際の処理部であり、サンプリング点移動画像表示処理部83は上記サンプリング点に基づいて再サンプリングされた左画像及び右画像をディスプレイに表示する。尚、計測部84は、マウス27のボタン操作の停止前に随時上記マッチング処理を行ってもよい。また、計測部84は、マッチング処理を行う前にサンプリング点位置記憶部81が左画像のサンプリング点を記憶し、再サンプリング処理部82及びサンプリング点移動画像表示処理部83によって左画像が再サンプリングされて表示された後に右画像のサンプリング点を求めてもよい。
【0028】
前記リモートコントローラ13は、図4に示すようにジョイスティック61、レバースイッチ62、フリーズスイッチ63、ストアースイッチ64、計測実行スイッチ65、及び拡大表示切り換え用WIDEスイッチ66、TELEスイッチ67を併設して構成されている。
【0029】
前記リモートコントローラ13において、ジョイスティック61は内視鏡先端部の湾曲動作を行うスイッチであり、360度の何れの方向にも自在に操作指示を与たり、真下に押下することで湾曲動作の微調整の指示等を与えることが可能である。また、ジョイスティック61は後述するステレオ計測における計測点指定の指示に使用することもできる。
【0030】
次に、本実施の形態の計測内視鏡装置10に用いられる光学アダプタの一種であるステレオ光学アダプタの構成を図5と図6を参照しながら説明する。
図5及び図6はステレオ光学アダプタ37を内視鏡先端部39に取り付けた状態を示しており、該ステレオ光学アダプタ37は、固定リング38の雌ねじ53により内視鏡先端部39の雄ねじ54と螺合することによって固定される構成である。
【0031】
また、ステレオ光学アダプタ37の先端には、一対の照明レンズ36と2つの対物レンズ系34、35が設けられている。2つの対物レンズ系34、35は、内視鏡先端部39内に配設された撮像素子43上に2つの画像を結像する。そして、撮像素子43により得られた撮像信号は、電気的に接続された信号線43a、及び図2に示す内視鏡ユニット24を介してCCU25に供給され、該CCU25により映像信号に変換された後に映像信号処理回路33に供給される。尚、映像信号は輝度値または輝度値と色差値を含む。また、CCU25に供給される撮像信号によって生成される画像を元画像と呼ぶ。
【0032】
次に、図7を参照して、ステレオ計測による計測点の3次元座標の求め方を説明する。左側及び右側の光学系にて撮像された元画像上の計測点の座標をそれぞれ(XL,YL)、(XR,YR)とし、計測点の3次元座標を(X,Y,Z)とする。但し、(XL,YL)、(XR,YR)の原点は、それぞれ左側及び右側の光学系における光軸と、撮像素子43の交点であり、(X,Y,Z)の原点は左側及び右側の光学中心の中間点である。左側と右側の光学中心の距離をD、焦点距離をFとすると、三角測量の方法により、
X=t×XR +D/2
Y=t×YR
Z=t×F
ただし、t=D/(XL−XR)となる。
【0033】
このように、元画像上の計測点の座標が決定されると、既知のパラメータD及びFを用いて計測点の3次元座標が求まる。そして、いくつかの点の3次元座標を求めることによって、2点間の距離、2点を結ぶ線と1点の距離、面積、深さ、表面形状など様々な計測が可能である。
【0034】
以上の構成の計測内視鏡システムにおいて、以下に図8〜図13を用いて計測内視鏡システムの処理動作を説明する。ここで、図8A〜8Gはステレオ計測のフローチャートを示し、図9はステレオ計測画面を示す図である。また、図9の画像は、例えば航空機のエンジン部品であるタービンブレードに欠けが生じた例を示しており、欠けの最も外側の幅を計測する場合の計測画面を示している。
【0035】
先ず、マウス27を操作し、図8Aに示す計測フローのステップS001により、画素単位でサンプリングして読み取った画像を元画像として取得し(画像取得処理、画像取得工程)、ステップS002で表示装置に表示する。図9(a)は読み取られた左右2つの元画像(第1画像、第2画像)と、計測の操作を指示するアイコンと、マウス27で位置が指定されるポインタからなる計測画面を示す。
【0036】
次に、ステップS003において左画像上で計測点を指定する。この計測点の指定は、図8Bに示す計測点指定フローにより実行する。先ず、ステップS101において、元画像上で拡大対象となる拡大領域を設定する。この拡大領域の設定は、更に図8Cに示す拡大領域設定フローにより実行する。
【0037】
すなわち、ステップS501でマウス27を操作し、元画像上の計測点付近の位置を指定し、ステップS502で拡大画像表示指示を行い、ステップS503で拡大領域を決定する。本例では、拡大領域はマウス27に指定された位置を中心とする所定の範囲の領域とする。
【0038】
次に、ステップS102において、拡大画像(第1再サンプリング画像)を生成する(再サンプリング処理、再サンプリング処理工程)。この拡大画像の生成は、図8Dに示すフローに従って実行される。先ず、ステップS601で、拡大領域内のサンプリング点の位置に基づいて画像を生成する。拡大領域内のサンプリング点の位置は、最初は元画像取得時におけるサンプリングの位置であり、後述のステップS107で移動される。
【0039】
ここで、拡大領域のサンプリング点の位置が移動された場合、元画像取得時のサンプリングの位置からずれるため、元画像上の画素から補間によって画像を生成する。この場合のサンプリング点を擬似サンプリング点とし、このステップS601で生成される画像を擬似サンプリング画像とする。
【0040】
次に、ステップS602でマウス27の操作により、例えば押下回数から拡大倍率を設定し、ステップS603で擬似サンプリング画像の画素数を補間により拡大倍率分だけ増加させることで、拡大画像を生成する。補間方法は、最近傍補間、線形補間、双3次補間などを使用する。
【0041】
次に、ステップS103において、拡大画像を大きさと位置を決定して表示する。尚、表示位置は元画像に重畳することも可能であり、この場合、拡大画像の表示位置を元画像の拡大領域から常に所定の距離以上離れた位置とすることで、拡大領域及びその付近が表示されなくならないようにする。
【0042】
次に、ステップS104では、拡大画像上において指定点となる画素を選択する。そして、選択された画素上には指定点を示すカーソルを表示する。尚、指定点となる画素は拡大画像上の所定の固定位置でもよい。
【0043】
図9(b)は、計測点付近にポインティングして拡大画像を表示させた場合の計測画面を示している。この計測画面には画面中央に拡大画像と指定点を示すカーソルが表示される。拡大画像の右及び下には、それぞれ指定点から垂直方向及び水平方向の画素の輝度を示すグラフが表示され、指定点とその周辺の輝度を確認することができる。また、拡大倍率が3倍であることを示す「3x」が表示される。
【0044】
次に、ステップS105において、上記指定点によって計測点が指定されているか判断する。ここで、計測点の指定がされていなければ、ステップS106に進み、指定されていればステップS108に進む。
【0045】
ステップS106ではサンプリング点を移動するか判断する。拡大画像上に計測点が存在し、サンプリング点と計測点が一致しているためにサンプリング点を移動する必要がなければ、ステップS104に移り、表示されている計測点を指定点として選択する。
【0046】
拡大画像上に計測点が存在するが、サンプリング点と計測点が一致せずサンプリング点を移動する必要がある場合や、拡大画像上に計測点が存在しない場合はステップS107に移る。このステップS107では、拡大画像上の指定点により計測点が指定されるように、サンプリング点を移動する。このサンプリング点の移動は、図8E〜8Gに示すフローに従って行われる。
【0047】
すなわち、図8Eに示すステップS701でマウス27のボタンを押すと、画面上のポインタ初期位置P0が検出される。次に、ステップS702において、ポインタPの初期位置をP0とし、前述のポインタ制御部75内のレジスタP.sx及びP.sy(第1変数、第2変数)を初期値0に設定する。その後、マウス27を上下左右に操作し、後述するイベント毎にマウス27の操作に従って移動するポインタの位置を補正し、マウス27のボタンを離すと、図8FのステップS703に示すように、補正されたポインタ位置が計測点とされる。尚、上記マウスボタンの操作状態は、前述のマウスボタン状態記憶部78に記憶されている。
【0048】
この間の処理を具体的に説明する図が、図8Gに示すフローチャート(計測位置指定処理、計測位置指定工程)である。この処理はマウス処理のイベントが発生する毎に同図に示すフローが実行される。すなわち、マウス27が操作されると(マウス処理のイベントが発生すると)、ステップS901の判断において、先ずマウス27のボタン(左ボタン)が押下されているか判断する(ステップS901)。ここで、マウス27のボタン操作が行われておらず(ステップS901がNo)、コントロールキーも操作されていない場合(ステップS921がNo)、前述のポインタの初期位置P0をカレントポジション(サンプル画像上の位置)Pとし、レジスタP.sx及びP.syを初期値0に設定し(ステップS922、S923)、ファインモードの表示も行わない(ステップS924)。
【0049】
一方、マウス27のボタン(左ボタン)が押下されていると(ステップS901がYes)、ステップS902においてインジケータをファインモードとする。この処理は、前述のポインタ制御部75(CPU26a)の制御に基づいて、インジケータ状態指示部80がディスプレイに「F」アイコンを表示する処理である(図9(c)を参照)。
【0050】
次に、ステップS903において、画面上のポインタの位置をP1とし、前述のポインタ位置移動後記憶部77にP1の位置情報を記録する。この時、マウス27はボタン操作が行われた状態で移動しており、例えばマウス27が右方向(X軸方向)に移動した場合、移動前のポインタの初期位置P0のx値(例えば、P0.x)は上記ポインタ位置移動前記憶部76に記録されており、移動後のポインタ位置P1のx値(例えば、P1.x)はポインタ位置移動後記憶部77に記録されている。
【0051】
この場合、マウス27は右方向に移動しているので、P1のx値(P1.x)は移動前のポインタ位置P0のx値(P0.x)より大きい値である。したがって、ステップS904がYESとなり、ステップS905において、ポインタ制御部75内に設定されたレジスタP.sxの値を+1する。尚、この場合、マウス27は右方向に移動したものであり、マウス27を左方向や垂直方向(Y方向)には移動していないので、ステップS906、S908、S910はNOである。
【0052】
上記の例では、次のステップS912の判断もNOであり、更にステップS913において、レジスタP.sxの値がRに等しいか判断する。ここで、Rは予め設定した一定の値(第1閾値、第2閾値)であり、元画素に対して詳細にポインタを移動するための比率を示す。RはX軸方向、Y軸方向にそれぞれ設定してもよいし、同一の値に設定してもよい。以下、RはX軸方向、Y軸方向共に同一の値とする。ここで、例えばRの値が「10」に設定されているとすれば、上記最初の処理では、レジスタP.sxの値は「1」であり、上記判断はNOである。
【0053】
その後、マウス27の右方向への移動において、次のマウス処理のイベントが発生すると、ポインタ位置P1のx値(P1.x)は、前述と同様、前のポインタ位置P0のx値(P0.x)より大きい値であり(ステップS904がYES)、ステップS905において、再度レジスタP.sxの値を+1する。尚、この場合も、マウス27を左方向や、垂直方向に移動していないので、ステップS906、S908、S910はNOである。
【0054】
次に、ステップS912の判断もNOであり、更にステップS913において、上記と同様レジスタP.sxの値がRに等しいか判断される。ここで、前述のように、Rの値が「10」に設定されている場合、上記判断もNOである。
【0055】
また、マウス27がY方向(垂直方向)に移動していないので、ステップS916、及びS918もNOであり、更にステップS920において、画面上のポインタ位置(P0)は、初期位置Pのままである。
【0056】
この状態で、例えばマウス27のボタン操作を止めると、前述の図8FのステップS703の処理に従って、レジスタP.sxの値(例えば、この時「2」)が前述のR(10)によって割り算され、補正値0.2(2/10)が計算される。この場合、補正値は1画素(1.0)に満たないため、補正後ポインタ位置記憶部79のポインタ位置情報はそのままである。例えば、ポインタの初期位置P(X,Y)が、(100,100)であれば、補正後のポインタの位置も同じ(100,100)である。尚、上記例ではX方向について説明したが、Y方向についても同様に計算される。
【0057】
その後、マウス27を右に移動する処理を継続すると、イベントが発生する毎にレジスタP.sxの値が順次+1され、ステップS913において、レジスタP.sxの値がRの値(例えば、「10」)に一致すると(ステップS913がYES)、ステップS915において、ポインタのX座標位置(P.x)が(P.x+1)に更新される((P.x)を(P.x+1)に更新する)。尚、この時レジスタP.sxの値は「0」にリセットされる。
【0058】
この状態で、例えばマウス27のボタン操作を止めると、前述と同様ステップS703の処理に従って、レジスタP.sxの値(例えば、この時「10」)が前述のR(10)によって割り算され、補正値1.0(10/10)が計算される。この場合、補正後ポインタ位置記憶部79のポインタ位置情報は、上記例の場合、(101,100)となる。
【0059】
以後、マウス処理のイベントが発生する毎に上記処理が繰り返され、マウス27を右方向に操作している場合には、順次レジスタP.sxが+1され(ステップS905)、上記例ではマウス27の移動に対して1/R(「10」)の割合でポインタの位置を移動することができる。
【0060】
上記処理は、マウス27を水平に右方向に移動させた場合であるが、マウス27を水平に左方向に移動させた場合も同様であり、またマウス27を垂直方向(Y方向)に移動させた場合も同様である。
【0061】
例えば、マウス27を左方向に移動させている間、マウス処理のイベントが発生すると、ステップS907がYESとなり、レジスタP.sxの値を−1する(ステップS907)。また、上方向にマウス27を移動させている間、マウス処理のイベントが発生すると、ステップS908がYESとなり、ポインタ制御部75にある不図示のレジスタP.syの値を−1し(ステップS909)、同様に下方向にマウス27を移動させている間、マウス処理のイベントが発生すると、ステップS910がYESとなり、レジスタP.syを+1する(ステップS911)。
【0062】
この間、前述のRの値とレジスタP.sxの値、又はRの値とレジスタP.syの値の一致判断が行われ、レジスタP.sxの値がRの値に一致すれば前述のようにポインタ位置の更新処理が行われ(ステップS915)、レジスタP.syの値がRの値に一致すれば、ステップS918によって一致判断が行われ、ステップS919において、ポインタのY座標位置(P.y)を(P.y+1)に更新する((P0.y)を(P0.y+1)に更新する)。尚、この時レジスタP.syの値は「0」にリセットされる。
【0063】
また、マウス27を右方向に移動させた後、左方向に移動させる場合もあり、このような場合、レジスタP.sxの値はイベントが発生する毎に+1され、1→2→3→・・・と順次大きくなるが、移動方向を左に変更した後イベントが発生すると、レジスタP.sxの値は順次減算される(ステップS906がYES、ステップS907)。この場合、レジスタP.sxの値が0より小さくなると(ステップS912がYES)、ポインタのX座標位置(P.x)が(P.x−1)に更新される(ステップS914)。
【0064】
また、同様にマウス27を上方向に移動させた後、下方向に移動させる場合もあり、この場合、レジスタP.syの値はイベントが発生する毎に+1され、1→2→3→・・・と順次大きくなるが、移動方向を下に変更した後イベントが発生すると、レジスタP.syの値は順次減算される(ステップS910がYES、ステップS911)。この場合、レジスタP.syの値が0より小さくなると(ステップS916がYES)、ポインタのY座標位置(P.y)が(P.y−1)に更新される(ステップS917)。
【0065】
上記ポインタの位置は、マウス27のボタン操作を止める毎に計算され、補正処理が行われたポインタの位置情報は補正後ポインタ位置記憶部79に記録される。
尚、マウス27を斜め右上方向や斜め右下方向、斜め左上方向や斜め左下方向に移動する場合も、対応するレジスタP.sx及びP.syが同時に更新され、前述と同様ポインタ位置をマウス27の移動方向に詳細に移動させることができる。
【0066】
以上のようにして、サンプリング点の位置が移動されると(ステップS107)、これに伴って拡大領域も移動する。サンプリング点の移動後、ステップS102に移り、再度拡大画像を生成し表示する。図9(c)は、サンプリング点を移動させた場合の拡大画像を含む計測画面を示す。また、同図(d)は、拡大倍率を6倍に変更させた場合の計測画面を示している。さらに、同図(e)はサンプリング点の移動量の単位を元画像の画素間隔に設定し、同図(d)の状態からサンプリング点を移動させた場合の計測画面を示している。
【0067】
次に、上記サンプリング点の移動により指定点が計測点まで移動した後、ステップS105で指定点を決定し、ステップS108で指定点の位置から計測点の元画像上での位置を算出する。尚、この時サンプリング点の移動量の単位を所定の設定にする。
【0068】
次に、ステップS004では、ステップS003で指定された時点の拡大画像を、左画像上に重畳して表示する。さらに、ステップS005では、ステップS003で指定された計測点に対応する右画像上での対応点を検索する(マッチング処理、マッチング処理工程)。尚、上述したように、右画像上での対応点の探索がS003で行われる場合、S004、S005及びS006はS003に含まれることになる。
【0069】
この検索は既存の画像のテンプレートマッチング法によって、元画像の画素間隔よりも細かい単位で行う。すなわち、左画像上で設定した計測点の位置に対応する右画像上の計測点の位置をサブピクセルマッチングによって取得する。例えば、図13(a)、(b)はこの処理を説明する図であり、同図(a)は模式図であり、同図(b)はサブピクセルマッチング処理を説明する図である。
【0070】
先ず、同図(a)に示す(左側)の波形は、例えば前述の処理によって指定した左画像上で計測点の位置を特定する波形である。一方、同図(b)に示す波形は、右側の画像の波形であり、ステレオ画像の他方の画像の波形図である。
【0071】
上記場合において、右画像上の計測位置を検索する場合、右画像の波形図から左画像の波形に一致する位置を探す。この場合、例えば右画像の波形を矢印方向(主走査方向)に順次調べ、左画像の波形に一致する波形の位置を探す。例えば、本例では右側波形の位置aが対応する測定位置である。
【0072】
本実施形態では、一致する波形の検索をピクセル単位(画素単位)で行うのではなく、補間処理を行い、ピクセル単位より詳細なサブピクセル単位で行うものである。例えば、補間を行い、1/2ピクセル単位、1/4ピクセル単位で波形比較を行うことが、より正確な計測位置の検索を行うことができる。
【0073】
例えば、図13(b)はサブピクセル単位のマッチング処理を説明する図である。ピクセル単位の場合、例えば3点(b1〜b3)を基準にして作成する波形は点線で示すbである。一方、b1とb2間にb4を補間し、b2とb3間にb5を補間した場合、より正確な波形Bを得ることができる。
【0074】
したがって、本例は上記サブピクセルマッチングによって左画像の計測点に対応する右画像上の計測点を検索し、従来に比べてより正確な右画像上の計測点の検索処理を行うことができる。また、上記サブピクセルマッチングによって探索された右画像上の計測点に基づいて再サンプリングした右画像(第2再サンプリング画像)を表示することにより、サブピクセルマッチングによるマッチング結果を精度よく確認することができる。
【0075】
また、上記図13(a)に示す矢印方向(主走査方向)へのサブピクセルマッチング処理は、1ラインに対してのみ行うだけでなく、計測点近傍の複数のラインに対して同様に行われる。例えば、サブピクセルが1ピクセルの1/10である場合、副走査方向の10ライン分に対して同様のマッチング処理を行う。この場合、1画素に対して0.1の割合で詳細なマッチング処理を行うことができる。
【0076】
また、例えばサブピクセルが1ピクセルの1/5である場合、1画素に対して0.2の割合で詳細なマッチング処理を行うことができ、サブピクセルが1ピクセルの1/2である場合、1画素に対して0.5の割合で詳細なマッチング処理を行うことができる。したがって、上記のように従来に比べてより正確な右画像上の計測点の検索処理を行うことができる。
【0077】
このようにして検索された右画像上の計測点に対して、ステップS006において、右画像上の計測点の周辺を、左画像の拡大と同様に拡大し、右画像上に重畳して表示する。 図9(f)は、この時の計測画面を示している。
【0078】
尚、これら元画像上の拡大画像の表示により、次の計測点を指定する間にも、正しく前回の計測点を確認し、右画像の対応点のマッチング結果を確認することが可能となり、計測の誤りを防ぐことが可能になる。
【0079】
次に、ステップS007で、左画面の計測点の位置を修正するか判断する。ここで、左画面の計測点の位置を修正する場合には、マウス27を操作しで計測画面上のアイコン「←」を選択し、ステップS003に戻り、計測点を再度指定する。一方、修正しない場合にはステップS008に進む。
【0080】
ステップS008では、右画面の対応点の位置を修正するか判断する。そして、修正する場合には、マウス27を操作して計測画面上のアイコン[→]を選択し、ステップS010に進み、前述の左画像上の計測点の指定と同様にして右画像上で対応点を指定する。そして、ステップS011において、右画像上の対応点の周辺を前述のステップS006における処理と同様に表示する。
【0081】
尚、ステップS007及びステップS008の判断に際しては、左画像の計測点と右画像の対応点の周辺の拡大画像をそれぞれ左画面と右画面に大きく表示し、正しく計測点と対応点が指定されているかを確認するようにしてもよい。
【0082】
また、上記ステップS008において、位置を修正しない場合ステップS012に進み、他の計測点を指定するか判断する。そして、指定する場合にはステップS003に戻り、指定しない場合にはS013に進む。この処理では、以上で指定された計測点の位置に基づいて計測を行う。図9(g)には2点間の距離を計測した場合の計測結果が含まれる計測画面が示されている。
【0083】
図9(g)に示す計測結果の例では計測単位がmmとなっているが、画面内の「mm」、「inch」の選択を切り換えることで計測単位を切り換えることができる。計測単位を切り換えると、計測結果の表示も設定された単位に変更される。これにより計測作業を続けながら任意のタイミングで計測単位を切り換えられる。普段使用している単位と検査マニュアルに書かれている単位が異なる場合や、設定が間違っていた場合に役立つ。尚、メニューによる設定で計測単位を変更することも可能である。
【0084】
次に、前述の拡大画像の詳細について、図14に示した元画像を例として説明する。図14に示す拡大領域は、最初前述の図15で示すように拡大される。そして、拡大のための画素数の増加には最近傍補間を使用し、指定点が2本の線の交点の中心まで移動するように、サンプリング点の移動量の単位を0.1画素に設定し、サンプリング点を左に0.5画素、下に0.5画素移動する。この処理によって、擬似サンプリング画像が線形補間で生成され、この画像の拡大画像が生成される。図10はこの時の拡大画像である。
【0085】
次に、疑似サンプリング点移動画像とその拡大画像が生成される原理について、図11を用いて説明する。元画像は図11(a)に示すように横6画素×縦1画素の元画像であって、中心の2画素が白、それ以外の周囲の画素が黒である。同図(b)は元画像のサンプリング点における輝度を示している。
【0086】
このサンプリング点を右に元画像の1/3画素移動すると、移動されたサンプリング点の輝度は元画像の画素から補間により計算され、サンプリング点移動画像の輝度は同図(c)のようになる。サンプリング点の移動画像に対し、拡大のために画素数を増加させると輝度は同図(d)のようになる。この輝度から同図(e)の拡大画像が生成される。
【0087】
次に、図10に示す拡大画像が生成される原理について述べる。図12は元画像におけるサンプリング点と移動されたサンプリング点を示す図である。前述の図14に示す元画像では、黒い線は2個のサンプリング点に跨っており、例えば拡大画像上では元画像上の太さ2の線が単純に拡大された画像となる。一方、サンプリング位置を移動すると、黒線内の2画素に跨った位置では黒となり、白と黒の境界位置では補間により灰色となる。従って、拡大画像において、指定点の位置は黒であるが、その周囲は灰色となる。
【0088】
このように、擬似サンプリング画像の拡大画像では、指定している点の位置の色が明確である一方その周囲では指定している点から元画像における1画素分ずつ離れた色が表示されるため、指定している点とそれ以外の点の色の区別がし易くなる。そのため、元画像の画素間隔より小さい単位で所望の点を指定しやすい。
【図面の簡単な説明】
【0089】
【図1】本実施形態の計測用内視鏡装置を説明する図である。
【図2】計測用内視鏡装置の構成を説明するブロック図である。
【図3】制御部の構成を示す図である。
【図4】リモートコントローラを説明する図である。
【図5】直視型のステレオ光学アダプタを計測用内視鏡先端部に取り付けた構成を示す斜視図である。
【図6】図5のA−A断面図である。
【図7】ステレオ計測により計測点の3次元座標を求める方法を示す図である。
【図8A】計測内視鏡システムによる計測の流れを説明するフローチャートである。
【図8B】計測点指定処理を説明するフローチャートである。
【図8C】拡大領域の設定処理を説明するフローチャートである。
【図8D】拡大画像の生成処理を説明するフローチャートである。
【図8E】マウスの左ボタンを押した時の処理を説明するフローチャートである。
【図8F】マウスの左ボタンを戻した時の処理を説明するフローチャートである。
【図8G】ポインタの位置移動処理を説明するフローチャートである。
【図9】(a)は、読み取られた左右2つの元画像を示す図であり、(b)は、計測点付近にポインティングして拡大画像を表示させた場合の計測画面を示す図であり、(c)は、サンプリング点を移動させた場合の拡大画像を含む計測画面を示す図であり、(d)は、拡大倍率を6倍に変更させた場合の計測画面を示す図であり、(e)は、サンプリング点の移動量の単位を元画像の画素間隔に設定し拡大倍率を6倍に変更させた場合の計測画面を示す図であり、(f)は、計測画面を示す図であり、(g)は、2点間の距離を計測した場合の計測結果が含まれる計測画面を示す図である。
【図10】線形補間で生成された拡大画像を示す図である。
【図11】(a)は、横6画素×縦1画素の元画像を示す図であり、(b)は、元画像のサンプリング点における輝度を示す図であり、(c)は、サンプリング点移動画像の輝度を示す図であり、(d)は、拡大のために画素数を増加させた場合の元画像のサンプリング点における輝度を示す図であり、(e)は、(d)の輝度情報から拡大画像を生成した図である。
【図12】元画像におけるサンプリング点と移動されたサンプリング点を示す図である。
【図13】(a)、(b)は、サブピクセルマッチングを説明する図である。
【図14】計測対象の元画像の一例を示す図である。
【図15】図14の拡大領域の単純拡大画像を示す図である。
【符号の説明】
【0090】
10・・・計測用内視鏡装置
11・・・内視鏡挿入部
12・・・コントロールユニット
13・・・リモートコントローラ
14・・・液晶モニタ(LCD)
17・・・フェイスマウントディスプレイ(FMD)
18・・・FMDアダプタ
19・・・スピーカ
20・・・マイク
21・・・パーソナルコンピュータ
22・・・コンパクトフラッシュ(登録商標)メモリカード
23・・・PCMCIAメモリカード(PMCIAメモリカード)
24・・・内視鏡ユニット
25・・・カメラコントロールユニット(CCU)
26a・・CPU
26b・・ROM
26c・・RAM
27・・・マウス
29・・・RS−232cインターフェイス(RS−232C I/F)
30・・・PCカードインターフェイス(PCカードI/F)
31・・・USBインターフェイス(USB I/F)
32・・・音声信号処理回路
33・・・映像信号処理回路
34、35・・・対物レンズ系
36・・・照明レンズ
37・・・ステレオ光学アダプタ
38・・・固定リング
39・・・内視鏡先端部
43・・・個体撮像素子
43a・・・信号線
53・・・雌ねじ
54・・・雄ねじ
61・・・ジョイスティック
62・・・レバースイッチ
63・・・フリーズスイッチ
64・・・ストアースイッチ
65・・・計測実行スイッチ
66・・・拡大表示切り換え用WIDEスイッチ
67・・・TELEスイッチ
70・・・外部映像入力端子
75・・・ポイント制御部
76・・・ポイント位置移動前記憶部
77・・・ポイント位置移動後記憶部
78・・・マウスボタン状態記憶部
79・・・補正後ポイント位置記憶部
80・・・インジケータ状態指示部
81・・・サンプリング点位置記憶部
82・・・再サンプリング処理部
84・・・計測部


【特許請求の範囲】
【請求項1】
観察対象が複数の視点から撮像された各視点の画像信号を、それぞれ画素単位でサンプリングして第1画像、第2画像として取得する画像取得手段と、
この第1画像の少なくとも一部の領域を、前記画素単位よりも細かい単位で再サンプリングして第1再サンプリング画像を生成する再サンプリング処理手段と、
この第1再サンプリング画像に基づいて計測位置を指定する計測位置指定手段と、
この計測位置指定手段によって指定された前記計測位置に対応する前記第2画像上の計測位置を、前記画素単位よりも細かい前記単位で計算するマッチング処理手段と、を有し、
前記再サンプリング処理手段は、このマッチング処理手段によって計算された前記第2画像上の計測位置の少なくとも一部の領域を、前記画素単位よりも細かい前記単位で再サンプリングして第2再サンプリング画像を生成することを特徴とする計測内視鏡システム。
【請求項2】
前記観察対象を複数の視点から撮像する撮像手段を有する内視鏡装置が、前記画像取得手段を有することを特徴とする請求項1に記載の計測内視鏡システム。
【請求項3】
前記内視鏡装置が更に、前記再サンプリング処理手段と、計測位置指定手段と、マッチング処理手段とを有することを特徴とする請求項2に記載の計測内視鏡システム。
【請求項4】
画像処理を行う演算手段を有する電子計算機が、前記再サンプリング処理手段と、計測位置指定手段と、マッチング処理手段とを有することを特徴とする請求項2に記載の計測内視鏡システム。
【請求項5】
観察対象が複数の視点から撮像された各視点の画像信号を、それぞれ画素単位でサンプリングして第1画像、第2画像として取得する画像取得工程と、
この第1画像の少なくとも一部の領域を、前記画素単位よりも細かい単位で再サンプリングして第1再サンプリング画像を生成する再サンプリング処理工程と、
この第1再サンプリング画像に基づいて指定された計測位置に対応する前記第2画像上の計測位置を、前記画素単位よりも細かい前記単位で計算するマッチング処理工程と、を有し、
前記再サンプリング処理工程は、このマッチング処理工程によって計算された前記第2画像上の計測位置の少なくとも一部の領域を、前記画素単位よりも細かい前記単位で再サンプリングして第2再サンプリング画像を生成することを特徴とする計測内視鏡システム用計測方法。
【請求項6】
観察対象が複数の視点から撮像された各視点の画像信号を、それぞれ画素単位でサンプリングして第1画像、第2画像として取得する画像取得処理と、
この第1画像の少なくとも一部の領域を、前記画素単位よりも細かい単位で再サンプリングして第1再サンプリング画像を生成する再サンプリング処理と、
この第1再サンプリング画像に基づいて指定された計測位置に対応する前記第2画像上の計測位置を、前記画素単位よりも細かい前記単位で計算するマッチング処理と、を有し、
前記再サンプリング処理は、このマッチング処理によって計算された前記第2画像上の計測位置の少なくとも一部の領域を、前記画素単位よりも細かい前記単位で再サンプリングして第2再サンプリング画像を生成することを特徴とする計測内視鏡システム用計測プログラム。

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8A】
image rotate

【図8B】
image rotate

【図8C】
image rotate

【図8D】
image rotate

【図8E】
image rotate

【図8F】
image rotate

【図8G】
image rotate

【図13】
image rotate

【図1】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図14】
image rotate

【図15】
image rotate


【公開番号】特開2009−86553(P2009−86553A)
【公開日】平成21年4月23日(2009.4.23)
【国際特許分類】
【出願番号】特願2007−259274(P2007−259274)
【出願日】平成19年10月2日(2007.10.2)
【出願人】(000000376)オリンパス株式会社 (11,466)
【Fターム(参考)】