以下、図面を参照し、本発明の実施形態を説明する。図1は、本発明の一実施形態による計測用内視鏡装置の構成を示している。図1に示すように、計測用内視鏡装置1は、内視鏡2と、コントロールユニット3と、リモートコントローラ4(入力部)と、液晶モニタ5と、フェイスマウントディスプレイ(FMD)6と、FMDアダプタ6aと、光学アダプタ7a,7b,7cと、内視鏡ユニット8と、カメラコントロールユニット9と、制御ユニット10とから構成されている。
計測対象物を撮像し撮像信号を生成する内視鏡2(電子内視鏡)は細長の挿入部20を備えている。挿入部20は、先端側から順に、硬質な先端部21と、例えば上下左右に湾曲可能な湾曲部22と、柔軟性を有する可撓管部23とを連設して構成されている。挿入部20の基端部は内視鏡ユニット8に接続されている。先端部21は、観察視野を2つ有するステレオ用の光学アダプタ7a,7b(以下、ステレオ光学アダプタと記載する)あるいは観察視野が1つだけの通常観察光学アダプタ7c等、各種の光学アダプタが例えば螺合によって着脱自在な構成になっている。
コントロールユニット3は、内視鏡ユニット8、画像処理手段であるカメラコントロールユニット(以下、CCUと記載する)9(映像信号生成部)、および制御装置である制御ユニット10を内部に備えている。内視鏡ユニット8は、観察時に必要な照明光を供給する光源装置と、挿入部20を構成する湾曲部22を湾曲させる湾曲装置とを備えている。CCU9は、挿入部20の先端部21に内蔵されている固体撮像素子2aから出力された撮像信号を入力し、これをNTSC信号等の映像信号に変換して制御ユニット10に供給する。
制御ユニット10は、音声信号処理回路11と、映像信号処理回路12(表示信号生成部)と、ROM13と、RAM14と、PCカードインターフェース(以下、PCカードI/Fと記載する。)15と、USBインターフェース(以下、USB I/Fと記載する。)16と、RS−232Cインターフェース(以下、RS−232C I/Fと記載する。)17と、計測処理部18とから構成されている。
マイク34によって集音された音声信号や、メモリカード等の記録媒体を再生して得られる音声信号、あるいは計測処理部18によって生成された音声信号が音声信号処理回路11に供給される。映像信号処理回路12は、CCU9から供給された内視鏡画像とグラフィックによる操作メニューとを合成した合成画像を表示するために、CCU9からの映像信号を、計測処理部18の制御により生成される操作メニュー等のためのグラフィック画像信号と合成する処理を行う。また、映像信号処理回路12は、液晶モニタ5の画面上に映像を表示するために合成後の映像信号に所定の処理を施して液晶モニタ5に供給する。
PCカードI/F15は、PCMCIAメモリカード32やフラッシュメモリカード33等のメモリカード(記録媒体)を自由に着脱できるようになっている。メモリカードを装着することにより、計測処理部18の制御に従って、このメモリカードに記憶されている制御処理情報や、画像情報、光学データ等を取り込んだり、制御処理情報や、画像情報、光学データ等をメモリカードに記録したりすることができる。
USB I/F16は、コントロールユニット3とパーソナルコンピュータ31とを電気的に接続するためのインターフェースである。このUSB I/F16を介してコントロールユニット3とパーソナルコンピュータ31とを電気的に接続することにより、パーソナルコンピュータ31側で内視鏡画像の表示の指示や計測時における画像処理等の各種の制御指示を行うことが可能となる。また、コントロールユニット3とパーソナルコンピュータ31との間で各種の処理情報やデータを入出力することが可能となる。
RS−232C I/F17には、CCU9および内視鏡ユニット8が接続されると共に、これらCCU9や内視鏡ユニット8等の制御および動作指示を行うリモートコントローラ4が接続されている。ユーザがリモートコントローラ4を操作すると、その操作内容に基づいて、CCU9および内視鏡ユニット8を動作制御する際に必要な通信が行われる。
計測処理部18は、ROM13に格納されているプログラムを実行することによって、映像信号処理回路12から映像信号を取り込み、映像信号に基づいて計測処理を実行する。RAM14は、計測処理部18によって、データの一時格納用の作業領域として使用される。図2は計測処理部18の構成を示している。図2に示すように計測処理部18は、制御部18aと、基準点指定部18bと、基準楕円算出部18cと、バーニング構成点算出部18dと、バーニングサイズ算出部18eと、記憶部18fとから構成されている。
制御部18aは計測処理部18内の各部を制御する。また、制御部18aは、液晶モニタ5またはフェイスマウントディスプレイ6に計測結果や操作メニュー等を表示させるためのグラフィック画像信号を生成して映像信号処理回路12へ出力する機能も有している。
基準点指定部18bは、リモートコントローラ4あるいはPC31(入力部)から入力される信号に基づいて、計測対象物上の基準点(基準点の詳細は後述する)を指定する。ユーザが、液晶モニタ5あるいはフェイスマウントディスプレイ6に表示された計測対象物の画像を見ながら所望の基準点を入力すると、その座標が基準点指定部18bによって算出される。
基準楕円算出部18cは、基準点指定部18bによって指定された基準点に基づいて、計測対象物の輪郭を近似する輪郭近似線に相当する基準楕円(基準楕円の詳細は後述する)を算出する。バーニング構成点算出部18dは、基準点および基準楕円に基づいて、計測対象物に形成されたバーニングのエッジ(輪郭)を構成するバーニング構成点(バーニング構成点の詳細は後述する)を算出する。
バーニングサイズ算出部18eは、バーニング構成点に基づいてバーニングのサイズを計測する。記憶部18fは、計測処理部18内で処理される各種情報を記憶する。記憶部18fに格納された情報は、適宜制御部18aによって読み出されて各部へ出力される。
次に、本実施形態で使用する用語の内容を説明する。まず、図3および図4を参照し、基準点、基準線、および基準楕円を説明する。基準点は、計測画面上においてユーザが実際に指定する点である。ユーザは、計測画面を見ながらリモートコントローラ4あるいはPC31を操作し、基準点を指定する。図3に示すように、指定位置を示すカーソル300が計測画面上に表示され、ユーザによるリモートコントローラ4あるいはPC31の操作に応じてカーソル300が移動する。カーソル300が所望の位置に移動した状態で、ユーザが基準点を指定する指示を入力すると、カーソル300の位置に基準点が設定される。続いて、同様にカーソル300を移動させながら、次の基準点の指定が行われる。本実施形態では、3つの基準点が順番に指定される。図3に示すように、まずユーザは、バーニング310の両端に位置する2つの基準点320,321を指定する。
基準線は、計測画面上においてユーザが指定した最初の基準点と2番目の基準点とを結んだ直線である。図3に示すように、基準点320,321を結んだ直線330が基準線である。基準楕円は、ユーザが3番目の基準点を指定する際に設定されると共に計測画面に表示される楕円であり、バーニングのエッジを近似する曲線に相当する。図4に示すように、基準点400,401が指定されると、基準点400,401の位置を通る基準楕円420が表示される。基準楕円420は、基準線430を一方の径として持ち、カーソル410の位置に応じて、他方の径および曲率が変化する(図4(a)〜(c))。ユーザは、基準楕円420の形状ができるだけバーニング450の形状に一致するようにカーソル410の位置を調整し、3番目の基準点を指定する指示を入力する。
次に、図5を参照し、サーチポイント、サーチエリア、およびバーニング構成点を説明する。サーチポイントは基準楕円上に等間隔に設定される点である。サーチポイントの周囲には、後述するサーチエリアが設定される。図5(a)に示すように、基準楕円500上に等間隔にサーチポイント510が設定される。ユーザが指定した最初の基準点と2番目の基準点もサーチポイントに含まれる。後述するように、サーチポイントの数および間隔は基準楕円のサイズに応じて変化する。
サーチエリアは、サーチポイントの周囲に位置し、後述するバーニング構成点を算出する画像処理を実行する矩形状の範囲である。図5(b)に示すように、サーチポイント510の周囲に正方形のサーチエリア520が設定される。後述するように、サーチエリアのサイズは基準楕円のサイズに応じて変化する。サーチエリアの形状は正方形に限られない。
バーニング構成点は、計測対象の領域となるバーニングのエッジを構成する点である。図5(c)に示すように、バーニング530のエッジ上にバーニング構成点540が設定される。後述するように、バーニング構成点は、サーチエリア内の計測画像を画像処理することによって求められる。
次に、図6を参照し、バーニングサイズを説明する。バーニングサイズとは、検出されたバーニングの大きさを表すパラメータである。本実施形態で算出されるバーニングサイズは、バーニングの2種類の幅、周囲長、および面積である。より具体的には、バーニングの一方の幅は、ユーザが指定した最初の基準点と2番目の基準点に対応した2つのバーニング構成点の空間距離(3次元距離)である。バーニングの他方の幅は、基準線に対して直交する直線上の2つのサーチポイントに対応した2つのバーニング構成点の空間距離である。周囲長は、全ての隣り合うバーニング構成点同士の空間距離の合計である。面積は、全てのバーニング構成点で囲まれた領域の空間面積である。
図6に示すように、バーニングの一方の幅600は、基準点610,611に対応した2つのバーニング構成点の空間距離として算出される(図6(a))。バーニングの他方の幅601は、基準線に直交する直線上のサーチポイント620,621に対応した2つのバーニング構成点の空間距離として算出される(図6(a))。本実施形態では、基準線に直交する直線上のサーチポイント620,621を含むようにサーチポイントが算出される。周囲長は、全ての隣り合うバーニング構成点同士の空間距離630の合計として算出される(図6(b))。面積は、全てのバーニング構成点で囲まれた領域640の空間面積として算出される(図6(b))。
次に、本実施形態における計測画面を説明する。本実施形態では、ステレオ計測によるバーニングの計測が行われる。ステレオ計測においては、ステレオ光学アダプタを内視鏡2の先端部21に装着した状態で計測対象物を撮像するため、計測画面では計測対象物の画像が左右1対で表示される。
図7は計測開始前の計測画面を示している。計測情報として、左画面700には計測対象物の左画像が表示され、右画面710には計測対象物の右画像が表示される。また、左画面700および右画面710を除く計測画面上の領域には他の計測情報として、光学アダプタ名称情報720、時間情報721、メッセージ情報722、アイコン723a,723b,723c,723d,723e、およびズームウィンドウ724が表示される。
光学アダプタ名称情報720と時間情報721は共に計測条件を示す情報である。光学アダプタ名称情報720は、現在使用している光学アダプタの名称を示す文字情報である。時間情報721は現在の日付と時刻を示す文字情報である。メッセージ情報722は、ユーザへの操作指示を示す文字情報と、計測条件の1つである基準点の座標を示す文字情報とを含んでいる。
アイコン723a〜723eは、ユーザが計測モードの切替や計測結果のクリア等の操作指示を入力するための操作メニューを構成している。ユーザがリモートコントローラ4あるいはPC31を操作し、カーソル725をアイコン723a〜723eのいずれかの上に移動させてクリック等の操作を行うと、その操作に応じた信号が計測処理部18に入力される。制御部18aは、その信号に基づいてユーザからの操作指示を認識し、計測処理を制御する。また、ズームウィンドウ724にはカーソル725の周囲に位置する計測対象物の拡大画像が表示される。
次に、図8〜図12を参照しながら、本実施形態における計測の手順を説明する。図8は計測の手順を示し、図9〜図10は計測画面を示している。図11はカーソルの位置と基準楕円のサイズとの関係を示している。図12はカーソルの位置と基準楕円の形状との関係を示している。
まず、液晶モニタ5またはフェイスマウントディスプレイ6に表示された計測画面上において、リモートコントローラ4あるいはPC31の操作により、ユーザが基準点を2つ指定すると、指定された基準点の情報が計測処理部18に入力される(ステップSA)。このとき、ユーザは、バーニングのエッジ上かつ両端に位置する点を基準点として選択することが望ましい。図9(a)において、計測画面900の左画像内の基準点910,911が指定され、×印のアイコンが表示されている。
ユーザによって指定された左画面内の2つの基準点の位置情報が計測処理部18に入力されると、基準点指定部18bは2つの基準点の画像座標(液晶モニタ5またはフェイスマウントディスプレイ6に表示される画像上の2次元座標)を算出する。算出された2つの基準点の画像座標は基準楕円算出部18cへ出力される。また、上記と同様にして、カーソル位置の画像座標が算出され、基準楕円算出部18cへ出力される。基準楕円算出部18cは、2つの基準点およびカーソル位置の画像座標に基づいて基準楕円を算出し、基準楕円の情報(基準楕円を構成する点の画像座標または基準楕円の式)を制御部18aへ出力する。制御部18aは基準楕円の描画処理を実行する。この結果、基準楕円が計測画面上に表示される。
基準楕円のサイズと形状は、カーソルの位置に応じて変化する。基準楕円の形状ができるだけバーニングの形状に一致した状態で、ユーザが3番目の基準点を指定する指示を入力すると、指定された基準点の情報が計測処理部18に入力される(ステップSC)。図9(b)において、計測画面920上に基準楕円930が表示され、カーソル940の位置に3番目の基準点が指定される。このとき、上記と同様にして、基準点指定部18bによって、3番目の基準点の画像座標が算出される。
カーソルの位置と基準楕円のサイズ・形状との関係の詳細は以下のようになる。基準楕円の一方の径は基準線と同一であり、カーソルがどのような位置にあっても固定される。基準楕円の他方の径は、基準線とカーソルとの距離の2倍の長さをもち、カーソルの位置に応じて長さが変化する。図11は、カーソルの位置に応じて基準楕円の径の長さが変化する様子を示している。図11(b)に示すように、基準線1100とカーソル1110との距離1120が図11(a)よりも小さくなると、径の長さは小さくなる。また、図11(c)に示すように、基準線1100とカーソル1110との距離1120が図11(a)よりも大きくなると、径の長さは大きくなる。
基準楕円の形状は、基準線の中点を通りかつ基準線に垂直な直線とカーソルとの距離に応じて変化する。具体的には、この距離に応じて基準楕円の曲率が変化し、基準楕円の形状が変化する。図12は、カーソルの位置に応じて基準楕円の形状が変化する様子を示している。図12(b),(c)に示すように、基準線1200の垂線1210とカーソル1220との距離1230が図12(a)よりも非常に大きくなる、あるいは非常に小さくなると、基準楕円1240の形状は矩形に近づく。上記のように、カーソルの位置に応じて基準楕円のサイズと形状を柔軟に設定することが可能である。
基準点が指定された後、指定された基準点の座標に基づいて、計測処理部18がバーニング計算を行う(ステップSC)。バーニング計算では、バーニング構成点の座標やバーニングサイズの算出が行われる。図10(a)において、計測画面1000はバーニング計算中の計測画面である。バーニング計算の詳細については後述する。指定された基準点の座標によっては、後述するように、サーチポイントが算出されない場合がある。この場合は、基準点が指定されてもバーニング計算は開始されない。
バーニング計算が終了すると、計測処理部18の指示により、検出されたバーニング領域が計測画面上に表示される(ステップSD)。図10(b)に示すように、バーニング領域は計測画面1010の左画面上に表示される。より具体的には、算出されたバーニング構成点が小さな●印、×印、○印のいずれかで表示され、かつそれらが線で結ばれて表示される。×印で表示された2つのバーニング構成点1020,1021は、ユーザが指定した最初の基準点と2番目の基準点に対応したバーニング構成点である。また、○印で表示された2つのバーニング構成点1022,1023は、基準線に対して垂直方向の直線上の2点に対応したバーニング構成点である。
また、計測処理部18の指示により、算出されたバーニングサイズが計測画面上に表示される(ステップSE)。図10(b)に示すように、バーニングサイズは計測画面1010の右画面上の結果ウィンドウ1030に表示される。結果ウィンドウ1030の上部にはバーニングのイメージが表示され、下部にはバーニングサイズが文字で表示される。W1,W2,L,Aはそれぞれ、バーニングの一方の幅、他方の幅、周囲長、面積を表している。
次に、図13を参照し、図8のステップSCにおけるバーニング計算の手順を説明する。基準点指定部18bによって算出された3つの基準点の画像座標が基準楕円算出部18cに入力される(ステップSC1)と、基準楕円算出部18cは、3つの基準点の画像座標に基づいて、サーチポイントを算出する(ステップSC2)。サーチポイントの算出の詳細については後述する。
続いて、基準楕円算出部18cは、サーチポイントの情報に基づいて、サーチエリアを算出する(ステップSC3)。サーチエリアの算出の詳細については後述する。続いて、バーニング構成点算出部18dは、サーチポイントおよびサーチエリアの情報に基づいて、バーニング構成点の画像座標を算出する(ステップSC4)。バーニング構成点の算出の詳細については後述する。
続いて、バーニング構成点算出部18dは、算出した左画面内の各バーニング構成点に対応した右画面内のマッチング点の画像座標を算出する(ステップSC5)。より具体的には、バーニング構成点算出部18dは、バーニング構成点の画像座標に基づいてパターンマッチング処理を実行し、左右2画像の対応点であるマッチング点を算出する。このパターンマッチング処理の方法は特開2004−49638号公報に記載されたものと同様である。
続いて、バーニング構成点算出部18dは、算出したバーニング構成点およびそのマッチング点の画像座標に基づいて、各バーニング構成点の空間座標(現実の空間上の3次元座標)を算出する(ステップSC6)。空間座標の計算方法は、特開2004−49638号公報に記載されているものと同様である。
最後に、バーニングサイズ算出部18eは、算出されたバーニング構成点の空間座標に基づいて、バーニングサイズを算出する(ステップSC7)。バーニングサイズの算出の詳細については後述する。
次に、図14を参照し、サーチポイント算出処理(ステップSC2)の手順を説明する。3つの基準点の画像座標が制御部18aから入力される(ステップSC21)と、基準楕円算出部18cは、入力された基準点の画像座標に基づいて、基準楕円を算出する(ステップSC22)。このとき算出される基準楕円は、図8のステップSCにおいて、3番目の基準点が指定された際に表示される基準楕円と同じものである。
続いて、基準楕円算出部18cは、基準楕円の周囲長を算出する。より具体的には、基準楕円算出部18cは、基準楕円を構成する各画素の画像座標を用いて、それぞれ隣り合う画素の2次元距離の合計値を求めることにより、基準楕円の周囲長を算出する(ステップSC23)。続いて、基準楕円算出部18cは、サーチポイントの数、間隔、および画像座標を算出する(ステップSC24)。最後に、基準楕円算出部18cは、サーチポイントの情報(サーチポイントの数・間隔・画像座標)を制御部18aへ出力する(ステップSC25)。ただし、サーチポイントが算出できなかった場合、サーチポイントの数は0となる。
サーチポイントの算出は、以下の(A)〜(H)の条件に基づいて行われる。
(A)ユーザが指定した最初の基準点および2番目の基準点もサーチポイントに数える。
(B)サーチポイントは基準楕円上に等間隔で並んでいる。
(C)サーチポイントの数および間隔は基準楕円の周囲長に比例する。
(D)サーチポイントの数には上限がある。
(E)サーチポイントの間隔には下限がある。
(F)基準楕円の周囲長が非常に小さい場合、サーチポイントを算出しない。
(G)ユーザが指定した最初の基準点と2番目の基準点との距離が非常に小さい場合、サーチポイントを算出しない。
(H)ユーザが指定した3番目の基準点と基準線との距離が非常に小さい場合、サーチポイントを算出しない。
上記の(C)〜(H)の条件を設定する理由は、以下の(C’)〜(H’)の通りである。
(C’)サーチエリアが互いに重なり合わないようにするため。
(D’)サーチポイントの数が多すぎると、バーニング構成点の算出に時間がかかってしまうため。
(E’)サーチポイントの間隔が小さすぎると、サーチエリアのサイズが小さくなりすぎ、バーニング構成点の算出を行うには不向きとなるため。
(F’)〜(H’)(C’)と同様。
上記の条件に基づいて算出されたサーチポイントの数および間隔は以下の性質を示す。図15(a)は、サーチポイント1500が基準楕円1510上に等間隔で並んでいる様子を示している。図15(b)に示すように、図15(a)よりも周囲長が大きくなると、それに比例してサーチポイント1500の間隔1520も大きくなる。また、図15(c)に示すように、図15(a)よりも周囲長が小さくなると、それに比例してサーチポイント1500の間隔1520も小さくなる。
図15(d)に示すように、周囲長がより小さくなり、所定の第1の周囲長を下回ると、サーチポイント1500の数が少なくなる。図15(e)に示すように、周囲長がさらに小さくなり、所定の第2の周囲長(第1の周囲長>第2の周囲長)を下回ると、サーチポイントが算出されない。また、図15(f)に示すように、基準点1530,1531の距離が非常に小さいと、サーチポイントが算出されない。また、図15(g)に示すように、ユーザが指定した3番目の基準点(カーソル1540の位置)と基準線1550との距離が非常に小さいと、サーチポイントが算出されない。本実施形態では、サーチポイントの間隔が等間隔であるが、等間隔でなくても良い。
次に、図16を参照し、サーチエリア算出処理(ステップSC3)の手順を説明する。サーチポイントの情報が制御部18aから入力される(ステップSC31)と、基準楕円算出部18cは、入力されたサーチポイントの情報に基づいて、サーチエリアの数および画像座標を算出する(ステップSC32)。最後に、基準楕円算出部18cはサーチエリアの情報(サーチエリアのサイズ・画像座標)を制御部18aへ出力する(ステップSC33)。
サーチエリアの算出は、以下の(a)〜(e)の条件に基づいて行われる。
(a)サーチエリアはサーチポイントの周囲に位置する。
(b)サーチエリアの形状は正方形である。
(c)サーチエリアのサイズは、互いのサーチエリアが重なり合わない大きさであり、かつサーチポイントの間隔に比例する。
(d)サーチエリアのサイズには上限がある。
(e)サーチエリアのサイズには下限がある。
上記の(c)〜(e)の条件を設定する理由は、以下の(c’)〜(e’)の通りである。
(c’)サーチエリアが互いに重なり合ってしまうと、同一の領域でバーニング構成点が算出され、検出されるバーニングのエッジがねじれてしまう可能性があるため。
(d’)サーチエリアのサイズが大きすぎると、画像処理に時間がかかってしまうため。また、バーニング構成点の算出を行うには不向きとなるため。
(e’)サーチエリアのサイズが小さすぎると、バーニング構成点の算出を行うには不向きとなるため。
上記の条件に基づいて算出されたサーチエリアのサイズは以下の性質を示す。図17(a)は、サーチエリア1700がサーチポイント1710の周囲に並んでいる様子を示している。図17(b)に示すように、図17(a)よりもサーチポイント1710の間隔が大きくなると、それに比例して、サーチエリア1700のサイズも大きくなる。このときのサーチエリア1700のサイズは、互いに重なり合わない大きさである。図17(c)に示すように、図17(b)よりもサーチポイント1710の間隔がさらに大きくなると、サーチエリア1700のサイズが上限に達する。
また、図17(d)に示すように、図17(a)よりもサーチポイント1710の間隔が小さくなると、それに比例して、サーチエリア1700のサイズも小さくなる。このときのサーチエリア1700のサイズは、互いに重なり合わない大きさである。サーチポイント1710の間隔がさらに小さくなると、サーチエリア1700のサイズが下限に達する。サーチポイント1710の間隔がこれ以下になると、図17(e)に示すように、サーチポイント自体がなくなる。本実施形態では、サーチエリアの形状が正方形であるが、正方形でなくても良い。
次に、図18を参照し、バーニング構成点算出処理(ステップSC4)の手順を説明する。また、図19はこの手順を模式的に示しており、適宜図19も参照する。サーチポイントの画像座標およびサーチエリアのサイズが制御部18aから入力される(ステップSC41)と、バーニング構成点算出部18dは、入力されたサーチポイントの画像座標およびサーチエリアのサイズに基づいて、サーチエリア内のエリア画像を抽出する(ステップSC42)。これによって、サーチポイント1900を含むサーチエリア1901内のエリア画像1910が抽出される。
続いて、バーニング構成点算出部18dは、抽出したエリア画像をグレースケール化し(ステップSC43)、グレースケール化した画像に対してエッジ抽出を行う(ステップSC44)。これによって、エリア画像1910をグレースケール化した画像1920からエッジ1921が抽出される。続いて、バーニング構成点算出部18dは、抽出したエッジの近似直線を算出し(ステップSC45)、算出したエッジ近似直線とサーチエリアの境界線との2つの交点を算出する(ステップSC46)。これによって、エッジ近似直線1930が算出され、さらにエッジ近似直線1930とサーチエリアの境界線との交点1940,1941が算出される。
続いて、バーニング構成点算出部18dは、算出した2つの交点の中点を算出し(ステップSC47)、算出した中点とエッジとの最近傍点を算出する(ステップSC48)。これによって、交点1940,1941の中点1950が算出され、さらに中点1950に最も近いエッジ上の最近傍点1960が算出される。最後に、バーニング構成点算出部18dは、算出した最近傍点をバーニング構成点として、その画像座標を制御部18aへ出力する(ステップSC49)。
ステップSC43のグレースケール化では、RGBの各成分で表された画像内の各画素の輝度値Yが、例えば以下の(1)式を用いて算出される。
Y=0.299×R+0.587×G+0.114×B ・・・(1)
計測対象物であるバーニングは特徴的な色を有している場合があるので、その特徴的な色、例えばR(赤色)の輝度値をそのまま画素の輝度値Yとしても良い。算出された輝度値Yで構成される映像信号に基づいて、ステップSC44でエッジ抽出が行われる。
ステップSC44のエッジ抽出後にエッジ近似直線の算出を行うため、エッジ抽出には、抽出後の画像にできるだけノイズが発生しない処理を用いるのが良い。例えばSobel・Prewitt・Gradientフィルタ等の1次微分フィルタやLaplacianフィルタ等の2次微分フィルタを用いると良い。また、膨張・収縮・差分処理およびノイズ低減フィルタ等を組み合わせた処理を用いてエッジ抽出を行っても良い。このとき、グレースケール画像を2値化する必要があるが、2値化閾値には固定値を用いても良いし、P−タイル法、モード法、判別分析法など、グレースケール画像の輝度に基づいて閾値を変更する方法を用いても良い。
ステップSC45のエッジ近似直線の算出では、ステップSC44で抽出されたエッジの情報に基づいて、例えば最小2乗法を用いて近似直線を算出する。なお、上記では、エッジの形状に対して直線近似を行っているが、2次以上の関数を使って曲線近似を行っても良い。エッジの形状が直線よりも曲線に近い場合には、曲線近似を行った方がより精度の良いバーニング構成点の算出が可能となる。
ステップSC49のバーニング構成点の出力では、それまでのステップSC42〜SC48の処理において、バーニング構成点の算出がうまくいかなかった場合(例えばエッジ抽出や近似直線の算出がうまくいかない等)には、サーチポイントをそのままバーニング構成点として、その画像座標を出力しても良い。
次に、図20を参照し、バーニングサイズ算出処理(ステップSC7)の手順を説明する。バーニング構成点の空間座標が制御部18aから入力される(ステップSC71)と、バーニングサイズ算出部18eはバーニングの第1の幅を算出する(ステップSC72)。第1の幅は、ユーザが指定した最初の基準点と2番目の基準点に対応した2つのバーニング構成点の空間距離である。続いて、バーニングサイズ算出部18eはバーニングの第2の幅を算出する(ステップSC73)。第2の幅は、基準線に対して直交する直線上の2つのサーチポイントに対応した2つのバーニング構成点の空間距離である。
続いて、バーニングサイズ算出部18eはバーニングの周囲長を算出する(ステップSC74)。周囲長は、全ての隣り合うバーニング構成点同士の空間距離の合計である。続いて、バーニングサイズ算出部18eはバーニングの面積を算出する(ステップSC75)。面積は、全てのバーニング構成点で囲まれた領域の空間面積である。続いて、バーニングサイズ算出部18eは、算出したバーニングサイズを制御部18aへ出力する。
次に、本実施形態における計測結果の表示方法を説明する。図21は、計測結果を表示したときの計測画面を示している。計測結果を表示するための結果ウィンドウ2100が、計測対象物の撮像画像や各種情報の上に重ねて表示されるため、右画面の撮像画像や文字情報等が結果ウィンドウ2100の背後に隠れてしまっている。この状態(第1の表示状態)は、計測結果の表示に必要なスペースを確保して計測結果の視認性を良くするのに適している。
ユーザがリモートコントローラ4あるいはPC31を操作し、カーソル2110を結果ウィンドウ2100の上に移動させてクリック等の操作を行うと、制御部18aの制御により、計測画面が、図22に示す計測画面に切り替わる。図22では結果ウィンドウ2200が透過状態となって計測結果が非表示となることによって、図21の結果ウィンドウ2100で隠れていた右画面の撮像画像や文字情報等が視覚可能となっている。結果ウィンドウ2200は枠だけが表示されている状態である。
この状態(第2の表示状態)は、撮像画像等の計測情報の表示に必要なスペースを確保して計測情報の視認性を良くするのに適している。これによって、例えば左右の画面内のバーニング構成点のマッチング状態等を確認することができる。図22の状態で、ユーザがリモートコントローラ4あるいはPC31を操作し、クリック等の操作を行うと、制御部18aの制御により、計測画面が、図21に示す計測画面に再度切り替わる。
図21に示した表示状態で計測画面の切替がユーザによって指示された場合に、計測画面を図23に示す計測画面に切り替えても良い。図23に示す結果ウィンドウ2300は、結果ウィンドウを最小化し、かつ表示位置を、他の情報の表示の邪魔にならない位置に移動させたものである。図23に示した表示状態も、撮像画像等の計測情報の表示に必要なスペースを確保して計測情報の視認性を良くするのに適している。他の情報の表示の邪魔にならないのであれば、結果ウィンドウの大きさと表示位置の両方を変更しなくても良く、一方だけを変更するようにしても良い。
次に、本実施形態の変形例を説明する。まず、第1の変形例を説明する。本変形例では、バーニング構成点算出処理(ステップSC4)のエッジ抽出(ステップSC44)で使用する2値化閾値をユーザが手動で指定することが可能である。例えば、基準点を指定する前にユーザがリモートコントローラ4あるいはPC31を操作し、閾値を指定するための指示を入力すると、図24(a)に示すように、計測画面上に閾値ボックス2400が表示される。閾値ボックス2400内には、閾値を指定するためのスライダーバー2410および現在の閾値2411が表示される。また、カーソル2420がスライダーバー2410の上に移動する。さらに、現在の閾値2411に基づいて、左画面および右画面の計測画像を2値化した画像(以下、2値画像と記載する)2430,2431が表示される。
ユーザはこの2値画像を見ながらリモートコントローラ4あるいはPC31を操作し、カーソル2420を左右に移動させることによって閾値を調整する。制御部18aは、リモートコントローラ4あるいはPC31から入力される信号に基づいて、カーソル2420の位置を検出し、ユーザが指定した閾値を認識する。また、制御部18aは、認識した閾値を現在の閾値2411として表示するためのグラフィック画像信号を生成して映像信号処理回路12へ出力する。
さらに、制御部18aは、映像信号処理回路12から取得した映像信号に対して、上記で認識した閾値を用いた2値化処理を実行し、2値化処理後の映像信号を映像信号処理回路12へ出力する。映像信号処理回路12は、2値化処理後の映像信号に基づく2値画像を表示するための表示信号を生成する。したがって、ユーザがカーソル2420を移動させると、カーソル2420の位置に応じてリアルタイムに2値化処理が実行され、2値画像が表示される。
ユーザは、図24(b)に示すように、バーニング2440,2441の輪郭が最もはっきりと浮き出るような閾値を選択することが望ましい。この際に、2値化処理前の映像信号に基づく計測画像と、2値化処理後の映像信号に基づく計測画像とを切り替えて表示させ、両者を見比べながら、バーニングの輪郭が最もはっきりと浮き出るような閾値を選択することがより望ましい。これにより、ユーザは、計測画像ごとに確実にエッジ抽出を行える閾値の設定・確認を行うことができる。上記により選択された閾値をエッジ抽出の際に固定値として用いても良いし、判別閾値法によって求めた閾値の範囲を設定するための基準値として用いても良い。
次に、第2の変形例を説明する。本変形例では、上記の閾値の入力機能を、抽出したいバーニングの領域を決定するために用いる。例えば、図25(a)に示すように、計測画像上のバーニング2500の周囲に、複数の細かなバーニング2510が隣接している場合などは、抽出されるバーニング2500の領域が、実際にバーニングの計測を行うまでわからないということがある。例えば、図25(b)に示すように基準点2520,2521が指定されると、結果的に、図25(c)に示すように、検出されるバーニング構成点2530で構成される領域が、抽出したいバーニングの領域と一致しない。
この場合に、図26(a)に示すように、第1の変形例と同様な閾値の調整を可能とすることで、図26(b)に示すように、2値画像において、バーニング2600とそれに隣接した細かなバーニング2610とを切り離すことができる。本変形例では、この2値画像上で基準点を指定することが可能である。また、設定された閾値を用いた2値化処理後の映像信号に基づいてエッジ抽出が行われる。図27(a)に示すように、2値画像上で基準点2700,2701が指定されると、図27(b)に示すように、検出されるバーニング構成点2710で構成される領域が、抽出したいバーニングの領域と一致する。このように、閾値を手動で指定できる機能により、ユーザは、計測画像ごとに最適な閾値を設定できるだけでなく、抽出したいバーニングの領域を決定することもできる。
次に、第3の変形例を説明する。本変形例では、グレースケール画像を2値化する前に、グレースケール画像に対してダイナミックレンジ(DR)変換処理を施す。図28は、本変形例で使用するダイナミックレンジ変換用のテーブルの内容を示している。横軸は変換前の画像(入力画像)の輝度(0〜255)を示し、縦軸は変換後の画像(出力画像)の輝度(0〜255)を示している。入力画像の輝度領域は、2値化閾値を境界として、低輝度領域と高輝度領域に分けられている。ダイナミックレンジ変換処理によって、低輝度領域の輝度が引き下げられ、高輝度領域の輝度が持ち上げられる。
図28に示す変換特性に従ってグレースケール画像のダイナミックレンジを変換すると、図29に示す低輝度領域2900の輝度が押し下げられ、高輝度領域2910の輝度が持ち上げられる。その結果、バーニング領域(低輝度領域2900に相当)とその周囲との境界線2920がはっきりするので、より確実なエッジ抽出を行うことができる。
次に、第4の変形例を説明する。本変形例では、バーニング構成点算出処理(ステップSC4)のエッジ抽出(ステップSC44)で抽出されたエッジの形状が複雑で、エッジが近似直線とよく一致しない場合に、より細かい間隔でバーニング構成点を算出する。以下、図30を参照し、本変形例におけるバーニング構成点算出処理(ステップSC4)の手順を説明する。また、図31はバーニング構成点算出処理の手順を模式的に示しており、適宜図31も参照する。
ステップSC41〜SC46は図18のステップSC41〜SC46と同様である。ステップSC42の処理により、サーチポイント3100を含むサーチエリア3101内のエリア画像3110が抽出される。続いて、ステップSC43〜SC44の処理により、エリア画像3110をグレースケール化した画像3120からエッジ3121が抽出される。続いて、ステップSC45〜SC46の処理により、エッジ近似直線3130が算出され、さらにエッジ近似直線3130とサーチエリアの境界線との交点3140,3141が算出される。
ステップSC46に続いて、バーニング構成点算出部18dはエッジと近似直線との標準誤差Sを算出する(ステップSC51)。サーチエリア内のエッジを構成する画素位置を用いて、エッジをデータ数nのデータ列xi,yiとして表すと、このデータ列の標準誤差Sは以下の(2)式で表される。
標準誤差Sは、データ列から得られる近似直線と元のデータ列との誤差であり、この値が大きいほど、近似直線からのデータ列のばらつきが大きいということになる。この標準誤差Sを用いることで、エッジと近似直線がどの程度一致しているのかを調べることができる。
標準誤差Sが閾値St以上である場合(ステップSC52でYESの場合)、バーニング構成点算出部18dは、ステップSC46で算出した2つの交点を端点とした分割点を算出する(ステップSC53)。本変形例では、分割点の数は5とする。これによって、エッジ近似直線3130上の5つの分割点3150が算出される。続いて、バーニング構成点算出部18dは、算出した分割点とエッジとの最近傍点を算出する(ステップSC54)。これによって、ステップSC53で算出された5つの分割点3150のそれぞれに対応する最近傍点3160が算出される。最後に、バーニング構成点算出部18dは、算出した最近傍点をバーニング構成点として、その画像座標を制御部18aへ出力する(ステップSC55)。
一方、標準誤差Sが閾値St未満である場合(ステップSC52でNOの場合)、ステップSC47〜SC48の処理が実行される。このステップSC47〜SC48は図18のステップSC47〜SC48と同様であるので、説明を省略する。最後に、バーニング構成点算出部18dは、算出した最近傍点をバーニング構成点として、その画像座標を制御部18aへ出力する(ステップSC55)。
本変形例により、サーチエリア内のエッジ形状が複雑で、エッジ近似直線がエッジと良く一致しない場合でも、より細かい間隔でバーニング構成点を算出することができ、より詳細な計測を行うことができる。本変形例において、標準偏差Sに応じて分割点の数を変更しても良い。例えば、標準偏差Sが大きいほど分割点の数を多くすれば良い。
上述したように、本実施形態によれば、3つの基準点を指定すればバーニングサイズの計測が可能となるので、従来のように多数(例えば10点以上)の基準点を指定する場合と比較して、操作の煩わしさを低減し操作性を向上することができる。
また、第1の変形例で説明したように、ユーザが2値画像を見ながら2値化閾値を指定することが可能となることによって、エッジ抽出の精度を向上することができる。さらに、第2の変形例で説明したように、ユーザが2値画像を見ながら2値化閾値および基準点を指定することが可能となることによっても、エッジ抽出の精度を向上することができる。
また、第3の変形例で説明したように、グレースケール画像のダイナミックレンジを変換し、さらにダイナミックレンジ変換後のグレースケール画像に対して2値化処理を行うことによっても、エッジ抽出の精度を向上することができる。さらに、第4の変形例で説明したように、エッジとエッジ近似直線との一致の度合いに応じて分割点の数すなわちバーニング構成点の数を制御することによっても、エッジ抽出の精度を向上することができる。
また、バーニングサイズを示すパラメータとして、少なくとも2種類のパラメータを算出することによって、バーニングサイズを詳細に知ることができる。
また、本実施形態によれば、以下の効果を得ることもできる。従来の計測用内視鏡装置では、計測を行う現場での装置の移動を容易とするため、表示装置の大きさに制限があり、表示装置の画面の大きさも限られていた。このため、従来の計測用内視鏡装置では、計測対象物の撮像画像と計測結果の表示に十分な表示スペースを確保できずに視認性が悪くなる可能性があった。
これに対して、本実施形態のように、計測対象物の撮像画像を含む計測情報の少なくとも一部の上に計測結果が重なって表示された第1の表示状態と、第1の表示状態において計測結果が重なっていた計測情報を視覚可能とした第2の表示状態との間で表示状態を切り替えることによって、計測情報と計測結果のそれぞれに対して必要な表示スペースを確保することが可能となる。これによって、計測情報と計測結果の視認性を向上することができる。また、表示装置の画面には、計測対象物の撮像画像の他にも、計測条件を示す文字情報、ユーザへの操作指示を示す文字情報、操作内容の入力に使用される操作メニュー等も表示されるが、これらの表示スペースも確保して視認性を向上することができる。
以上、図面を参照して本発明の実施形態について詳述してきたが、具体的な構成は上記の実施形態に限られるものではなく、本発明の要旨を逸脱しない範囲の設計変更等も含まれる。
1・・・計測用内視鏡装置、18・・・計測処理部、18a・・・制御部(信号処理部)、18b・・・基準点指定部、18c・・・基準楕円算出部、18d・・・バーニング構成点算出部(構成点算出部)、18e・・・バーニングサイズ算出部(サイズ算出部)、18f・・・記憶部