(57)【要約】【課題】基準線の設定に係る操作の手間を軽減し、線基準計測に要する時間を短縮することができる計測装置およびプログラムを提供する。【解決手段】領域設定部１８１は、画像においてユーザが指定した１つの基準点に基づく領域、または、所定の領域を抽出領域として画像に設定する。エッジ抽出部１８２は、抽出領域の画像に基づいて被写体のエッジを抽出する。表示制御部１８３は、複数のエッジが抽出された場合に、抽出された複数のエッジを示す線を画像と共に表示部に表示させる。エッジ選択部１８４は、ユーザの指示に基づいて、抽出された複数のエッジから基準エッジを選択する。３次元座標算出部１８５は、画像における点に対応する３次元座標を算出する。基準線算出部１８６は、基準エッジを構成する点に対応する３次元座標に基づいて空間上の基準線を算出する。【選択図】図７
2014140402.tif 000002
【特許請求の範囲】
【請求項１】
被写体を撮像して画像データを生成する撮像部と、
前記画像データに基づく画像を表示する表示部と、
前記画像において所定の領域、または、ユーザが指定した１つの基準点に基づく領域を、前記被写体のエッジを抽出する抽出領域として前記画像に設定する領域設定部と、
前記抽出領域の画像に基づいて前記被写体のエッジを抽出するエッジ抽出部と、
抽出された前記エッジを示すグラフィックを前記画像と共に前記表示部に表示させる表示制御部と、
複数のエッジが抽出された場合に、抽出された前記複数のエッジから、ユーザの指示に基づいて基準エッジを選択するエッジ選択部と、
前記画像における点に対応する３次元座標を算出する３次元座標算出部と、
前記基準エッジを構成する複数の点に対応する３次元座標に基づいて空間上の基準線を算出する基準線算出部と、
前記画像における計測点を指定する計測点指定部と、
前記計測点に対応する３次元座標と前記基準線との距離を算出する距離算出部と、
を備えることを特徴とする計測装置。
【請求項２】
前記３次元座標算出部は、計測機能を起動するユーザの指示が入力された時点、または、前記表示部に表示する静止画像を取得するユーザの指示が入力された時点で、前記画像において前記所定の領域を含む所定の範囲における点に対応する３次元座標を算出し、
前記領域設定部は、前記所定の領域に前記抽出領域を設定する
ことを特徴とする請求項１に記載の計測装置。
【請求項３】
前記領域設定部はさらに、前記画像においてユーザが指定した１つの基準点に基づいて、前記被写体のエッジを選択する選択領域を設定し、
前記エッジ選択部は、複数のエッジが抽出された場合に、前記複数のエッジの中から前記選択領域と重なるエッジを選択し、ユーザの指示に基づいて、前記選択領域と重なるエッジから基準エッジを選択し、
前記表示制御部は、前記選択領域と重なるエッジを示す線を前記画像と共に前記表示部に表示させる
ことを特徴とする請求項２に記載の計測装置。
【請求項４】
前記表示制御部は、複数のエッジが抽出された場合に、抽出された前記複数のエッジを示すグラフィックと、それぞれのエッジの指標値に基づく順位の情報とを前記画像と共に前記表示部に表示させることを特徴とする請求項１に記載の計測装置。
【請求項５】
前記領域設定部はさらに、前記画像においてユーザが指定した１つの基準点に基づいて、前記被写体のエッジを選択する選択領域を設定し、
前記エッジ選択部は、複数のエッジが抽出された場合に、前記複数のエッジの中から前記選択領域と重なるエッジを選択し、前記選択領域と重なるエッジの前記指標値を算出し、ユーザの指示に基づいて、前記選択領域と重なるエッジから基準エッジを選択する
ことを特徴とする請求項４に記載の計測装置。
【請求項６】
前記エッジ抽出部はさらに、抽出したエッジに対して、前記抽出領域の外側の画像に基づいて、前記被写体のエッジを追跡することを特徴とする請求項１に記載の計測装置。
【請求項７】
撮像部が被写体を撮像して生成した画像データに基づく画像において所定の領域、または、ユーザが指定した１つの基準点に基づく領域を、前記被写体のエッジを抽出する抽出領域として前記画像に設定するステップと、
前記抽出領域の画像に基づいて前記被写体のエッジを抽出するステップと、
抽出された前記エッジを示すグラフィックを前記画像と共に表示部に表示させるステップと、
複数のエッジが抽出された場合に、抽出された前記複数のエッジから、ユーザの指示に基づいて基準エッジを選択するステップと、
前記画像における点に対応する３次元座標を算出するステップと、
前記基準エッジを構成する複数の点に対応する３次元座標に基づいて空間上の基準線を算出するステップと、
前記画像における計測点を指定するステップと、
前記計測点に対応する３次元座標と前記基準線との距離を算出するステップと、
をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、１つの計測点と基準線との空間距離を算出する線基準を行う計測装置に関する。また、本発明は、本計測装置としてコンピュータを機能させるためのプログラムに関する。
【背景技術】
【０００２】
工業用内視鏡等を使用した計測方法の１つとして、１つの計測点と基準線との空間距離を算出する線基準計測がある。例えば、特許文献１には、ユーザ（操作者）が指定した第１の基準点および第２の基準点に基づいて基準直線を設定し、ユーザが指定した計測点から基準直線に下ろした垂線の足の長さを演算する計測方法が開示されている。つまり、特許文献１では、直線と点の距離を求める計測方法が開示されている。
【０００３】
特許文献２には、ユーザによって指定された３点以上の基準点の位置と形状係数に基づく曲線を基準線とし、計測点と基準線との距離を演算する計測方法が開示されている。つまり、特許文献２では、曲線と点の距離を求める計測方法が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平１０−２４８８０６号公報
【特許文献２】特開２００５−２０４７２４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
基準点の位置がずれると、基準線の位置もずれるので、線基準計測の計測精度は低下する。したがって、基準線の設定の際に基準点の位置の指定を正確に行う必要がある。そのためには、画像を拡大表示する等の操作を行い、基準点を設定する位置を慎重に見極めながら、基準点の位置を指定する操作を行うことが要求される。しかも同様の操作を２回あるいはそれ以上繰り返す必要がある。すなわち、基準線の設定の際に煩わしい操作が必要であり、線基準計測に要する時間を短縮しにくいという課題がある。
【０００６】
本発明は、上述した課題に鑑みてなされたものであって、基準線の設定に係る操作の手間を軽減し、線基準計測に要する時間を短縮することができる計測装置およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明は、上記の課題を解決するためになされたもので、被写体を撮像して画像データを生成する撮像部と、前記画像データに基づく画像を表示する表示部と、前記画像において所定の領域、または、ユーザが指定した１つの基準点に基づく領域を、前記被写体のエッジを抽出する抽出領域として前記画像に設定する領域設定部と、前記抽出領域の画像に基づいて前記被写体のエッジを抽出するエッジ抽出部と、抽出された前記エッジを示すグラフィックを前記画像と共に前記表示部に表示させる表示制御部と、複数のエッジが抽出された場合に、抽出された前記複数のエッジから、ユーザの指示に基づいて基準エッジを選択するエッジ選択部と、前記画像における点に対応する３次元座標を算出する３次元座標算出部と、前記基準エッジを構成する複数の点に対応する３次元座標に基づいて空間上の基準線を算出する基準線算出部と、前記画像における計測点を指定する計測点指定部と、前記計測点に対応する３次元座標と前記基準線との距離を算出する距離算出部と、を備えることを特徴とする計測装置である。
【０００８】
また、本発明の計測装置において、前記３次元座標算出部は、計測機能を起動するユーザの指示が入力された時点、または、前記表示部に表示する静止画像を取得するユーザの指示が入力された時点で、前記画像において前記所定の領域を含む所定の範囲における点に対応する３次元座標を算出し、前記領域設定部は、前記所定の領域に前記抽出領域を設定することを特徴とする。
【０００９】
また、本発明の計測装置において、前記領域設定部はさらに、前記画像においてユーザが指定した１つの基準点に基づいて、前記被写体のエッジを選択する選択領域を設定し、前記エッジ選択部は、複数のエッジが抽出された場合に、前記複数のエッジの中から前記選択領域と重なるエッジを選択し、ユーザの指示に基づいて、前記選択領域と重なるエッジから基準エッジを選択し、前記表示制御部は、前記選択領域と重なるエッジを示す線を前記画像と共に前記表示部に表示させることを特徴とする。
【００１０】
また、本発明の計測装置において、前記表示制御部は、複数のエッジが抽出された場合に、抽出された前記複数のエッジを示すグラフィックと、それぞれのエッジの指標値に基づく順位の情報とを前記画像と共に前記表示部に表示させることを特徴とする。
【００１１】
また、本発明の計測装置において、前記領域設定部はさらに、前記画像においてユーザが指定した１つの基準点に基づいて、前記被写体のエッジを選択する選択領域を設定し、前記エッジ選択部は、複数のエッジが抽出された場合に、前記複数のエッジの中から前記選択領域と重なるエッジを選択し、前記選択領域と重なるエッジの前記指標値を算出し、ユーザの指示に基づいて、前記選択領域と重なるエッジから基準エッジを選択することを特徴とする。
【００１２】
また、本発明の計測装置において、前記エッジ抽出部はさらに、抽出したエッジに対して、前記抽出領域の外側の画像に基づいて、前記被写体のエッジを追跡することを特徴とする。
【００１３】
また、本発明は、撮像部が被写体を撮像して生成した画像データに基づく画像において所定の領域、または、ユーザが指定した１つの基準点に基づく領域を、前記被写体のエッジを抽出する抽出領域として前記画像に設定するステップと、前記抽出領域の画像に基づいて前記被写体のエッジを抽出するステップと、抽出された前記エッジを示すグラフィックを前記画像と共に表示部に表示させるステップと、複数のエッジが抽出された場合に、抽出された前記複数のエッジから、ユーザの指示に基づいて基準エッジを選択するステップと、前記画像における点に対応する３次元座標を算出するステップと、前記基準エッジを構成する複数の点に対応する３次元座標に基づいて空間上の基準線を算出するステップと、前記画像における計測点を指定するステップと、前記計測点に対応する３次元座標と前記基準線との距離を算出するステップと、をコンピュータに実行させるためのプログラムである。
【発明の効果】
【００１４】
本発明によれば、所定の領域、または、画像においてユーザが指定した１つの基準点に基づく領域が抽出領域として画像に設定される。また、複数のエッジが抽出された場合に、ユーザの指示に基づいて、抽出された複数のエッジから基準エッジが選択される。これにより、基準線の設定に係る操作の手間を軽減し、線基準計測に要する時間を短縮することができる。
【図面の簡単な説明】
【００１５】
【図１】本発明の第１の実施形態による内視鏡装置の全体構成を示す斜視図である。
【図２】本発明の第１の実施形態による内視鏡装置の内部構成を示すブロック図である。
【図３】本発明の第１の実施形態における被写体の画像を示す参考図である。
【図４】本発明の第１の実施形態における被写体の画像を示す参考図である。
【図５】本発明の第１の実施形態における被写体の画像を示す参考図である。
【図６】本発明の第１の実施形態における被写体の画像を示す参考図である。
【図７】本発明の第１の実施形態による内視鏡装置が有するＣＰＵの機能構成を示すブロック図である。
【図８】本発明の第１の実施形態における線基準計測の処理の流れを示すフローチャートである。
【図９】本発明の第１の実施形態における２次元エッジ抽出の処理の流れを示すフローチャートである。
【図１０】本発明の第１の実施形態において基準線候補リストを生成する処理の流れを示すフローチャートである。
【図１１】本発明の第１の実施形態における３次元直線／曲線フィッティングの処理の流れを示すフローチャートである。
【図１２】本発明の第１の実施形態における直線フィッティングの処理の流れを示すフローチャートである。
【図１３】本発明の第１の実施形態における曲線フィッティングの処理の流れを示すフローチャートである。
【図１４】本発明の第２の実施形態における線基準計測の処理の流れを示すフローチャートである。
【図１５】本発明の第２の実施形態において被写体点群を生成する処理の流れを示すフローチャートである。
【図１６】本発明の第３の実施形態における線基準計測の処理の流れを示すフローチャートである。
【図１７】本発明の第３の実施形態において基準線候補リストを生成する処理の流れを示すフローチャートである。
【図１８】本発明の第４の実施形態における線基準計測の処理の流れを示すフローチャートである。
【図１９】本発明の第４の実施形態における３次元エッジ抽出の処理の流れを示すフローチャートである。
【図２０】線基準計測の対象となる被写体の例を示す参考図である。
【図２１】ステレオ計測による計測点の３次元座標の求め方を説明するための参考図である。
【発明を実施するための形態】
【００１６】
以下、図面を参照し、本発明の実施形態を説明する。以下では、計測装置の一例である内視鏡装置を用いた線基準計測の方法を説明する。
【００１７】
（第１の実施形態）
まず、本発明の第１の実施形態を説明する。図１は、本実施形態による内視鏡装置の全体構成を示している。図１に示すように、内視鏡装置１は、内視鏡ユニット２と、この内視鏡ユニット２に接続された装置本体３とを備えている。内視鏡ユニット２は、細長な挿入部２０と、挿入部２０の基端部が接続されているコネクターユニット８とを備えている。コネクターユニット８はコネクター（図示せず）を備え、このコネクターを経由して装置本体３に接続されており、装置本体３に対して着脱できるように構成されている。装置本体３は、内視鏡ユニット２で撮像された画像データに基づく被写体の画像や操作制御内容（例えば処理メニュー）等の表示を行う表示装置であるモニタ４（液晶モニタ）と、内部に制御ユニット１０（図２参照）を有する筐体５とを備えている。装置本体３には、装置全体の各種動作制御を実行する際に必要な操作を行うための操作部６が接続されている。
【００１８】
挿入部２０は、硬質な先端部２１と、例えば上下左右に湾曲可能な湾曲部２２と、柔軟性を有する可撓管部２３とを先端側から順に連設して構成されている。先端部２１には、観察視野を２つ有するステレオ光学アダプタや観察視野が１つの通常観察光学アダプタ等、各種光学アダプタが着脱自在になっている。
【００１９】
図２に示すように筐体５内には、ＣＣＵ９（カメラコントロールユニット）および制御ユニット１０が設けられている。挿入部２０の基端部はコネクターユニット８に接続されており、コネクターユニット８はコネクターを経由して装置本体３に接続されている。コネクターユニット８は、先端部２１に内蔵されている光源を駆動する光源駆動装置と、挿入部２０を構成する湾曲部２２を湾曲させる湾曲装置とを備えて構成されている。ＣＣＵ９は、撮像素子２８を駆動する駆動装置を備えて構成されている。
【００２０】
先端部２１には撮像素子２８とＬＥＤ２９が内蔵されている。撮像素子２８は、光学アダプタを介して結像された被写体像を光電変換し、撮像信号を生成する。この撮像信号は、ＣＣＵ９内で例えばＮＴＳＣ信号等の映像信号（画像データ）に変換されて、制御ユニット１０へ供給される。ＬＥＤ２９は、被写体に照射する照明光を発生する。
【００２１】
制御ユニット１０内には、映像信号が入力される映像信号処理回路１２、ＲＯＭ１３、ＲＡＭ１４、カードＩ／Ｆ１５（カードインターフェイス）、ＵＳＢ Ｉ／Ｆ１６（ＵＳＢインターフェイス）、ＲＳ−２３２Ｃ Ｉ／Ｆ１７（ＲＳ−２３２Ｃインターフェイス）、およびＣＰＵ１８が設けられている。
【００２２】
ＲＳ−２３２Ｃ Ｉ／Ｆ１７には、ＣＣＵ９およびコネクターユニット８が接続されると共に、これらＣＣＵ９やコネクターユニット８等の制御および動作指示を行う操作部６が接続されている。ユーザが操作部６を操作すると、その操作内容に基づいて、ＣＣＵ９およびコネクターユニット８を動作制御する際に必要な通信が行われる。操作部６が有する操作用のデバイスは、マウス、ジョイスティック、タッチパッド、トラックボール、タッチパネル等のいずれであってもよい。
【００２３】
ＵＳＢ Ｉ／Ｆ１６は、制御ユニット１０とパーソナルコンピュータ３１とを電気的に接続するためのインターフェイスである。このＵＳＢ Ｉ／Ｆ１６を介して制御ユニット１０とパーソナルコンピュータ３１とを接続することによって、パーソナルコンピュータ３１側で内視鏡画像の表示指示や、計測時における画像処理等の各種の指示に基づく制御を行うことが可能になると共に、制御ユニット１０とパーソナルコンピュータ３１との間での各種の処理に必要な制御情報やデータ等の入出力を行うことが可能になる。
【００２４】
また、カードＩ／Ｆ１５には、メモリカード３２を自由に着脱することができるようになっている。メモリカード３２をカードＩ／Ｆ１５に装着することにより、ＣＰＵ１８による制御に従って、このメモリカード３２に記憶されている制御処理情報や画像情報等のデータの制御ユニット１０への取り込み、あるいは制御処理情報や画像情報等のデータのメモリカード３２への記録を行うことが可能になる。
【００２５】
映像信号処理回路１２は、ＣＣＵ９から供給された映像信号に基づく内視鏡画像と、グラフィックによる操作メニューとを合成した合成画像を表示するため、ＣＰＵ１８により生成される、操作メニューに基づくグラフィック画像信号とＣＣＵ９からの映像信号を合成する処理や、モニタ４の画面上に表示するのに必要な処理等を行い、表示信号をモニタ４に供給する。また、この映像信号処理回路１２は、単に内視鏡画像、あるいは操作メニュー等の画像を単独で表示するための処理を行うことも可能である。したがって、モニタ４の画面上には、内視鏡画像、操作メニュー画像、内視鏡画像と操作メニュー画像との合成画像等が表示される。
【００２６】
ＣＰＵ１８は、ＲＯＭ１３に格納されている計測用プログラム等のプログラムを実行することによって、目的に応じた処理を行うように各種回路部等を制御して、内視鏡装置１全体の動作制御を行う。ＲＡＭ１４は、ＣＰＵ１８によって、データの一時格納用の作業領域として使用される。
【００２７】
ＣＰＵ１８が実行するプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムを内視鏡装置１以外のコンピュータに読み込ませ、実行させてもよい。例えば、パーソナルコンピュータ３１がプログラムを読み込んで実行し、プログラムに従って、内視鏡装置１を制御するための制御情報を内視鏡装置１に送信して内視鏡装置１を制御し、内視鏡装置１から映像信号を取得して、取得した映像信号を用いて計測を行ってもよい。
【００２８】
ここで、「コンピュータ」は、ＷＷＷシステムを利用している場合であれば、ホームページ提供環境（あるいは表示環境）も含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、フラッシュメモリ等の可搬媒体、コンピュータに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ（ＲＡＭ）のように、一定時間プログラムを保持しているものも含むものとする。
【００２９】
また、上述したプログラムは、このプログラムを記憶装置等に格納したコンピュータから、伝送媒体を介して、あるいは伝送媒体中の伝送波により他のコンピュータに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク（通信網）や電話回線等の通信回線（通信線）のように、情報を伝送する機能を有する媒体のことをいう。また、上述したプログラムは、前述した機能の一部を実現するためのものであってもよい。さらに、前述した機能を、コンピュータに既に記録されているプログラムとの組合せで実現できるもの、いわゆる差分ファイル（差分プログラム）であってもよい。
【００３０】
本実施形態では、一例として、三角測量の原理を利用したステレオ計測による線基準計測を説明する。線基準計測はステレオ計測以外の計測方法でも可能であり、例えば明部と暗部からなる平行縞を用いた縞投影法により線基準計測を行ってもよい。
【００３１】
以下、ステレオ計測の原理を説明する。ステレオ計測では、まず計測点の画像面上の２次元座標から、計測点に対応する対応点の画像面上の２次元座標がマッチング処理によって求められる。そして、計測点と対応点との画像面上での２次元座標から、計測点の３次元座標が計算され、面積や周長の計算に使用される。以下、図２１を参照しながら、ステレオ計測による計測点の３次元座標の求め方を説明する。左側および右側の光学系で撮像された画像に対して、三角測量の方法により、左側と右側の光学中心６３，６４を結ぶ線分の中点を原点Ｏとして右方向を正にｘ軸、下方向を正にｙ軸、光軸と平行に光学系から遠ざかる方向を正にｚ軸を定義した時の計測点６０の３次元座標（Ｘ，Ｙ，Ｚ）が以下の（１）式〜（３）式で計算される。ただし、歪み補正が施された左右の画像面上での計測点６１，対応点６２の２次元座標を、左右それぞれの光学系の光軸と画像面との交点ＯＬ、ＯＲを原点として（ＸＬ，ＹＬ）、（ＸＲ，ＹＲ）とし、左側と右側の光学中心６３，６４の距離をＤとし、焦点距離をＦとし、ｔ＝Ｄ／（ＸＲ−ＸＬ）とする。
Ｘ＝ｔ×ＸＲ＋Ｄ／２ ・・・（１）
Ｙ＝−ｔ×ＹＲ ・・・（２）
Ｚ＝ｔ×Ｆ ・・・（３）
【００３２】
上記のように元画像上の画像面上での計測点６１、対応点６２の座標が決定されると、パラメータＤおよびＦを用いて計測点６０の３次元座標が求まる。いくつかの点の３次元座標を求めることによって、２点間の距離、２点を結ぶ線と１点の距離、面積、深さ、表面形状等の様々な計測が可能である。また、左側の光学中心６３または右側の光学中心６４から被写体までの距離（物体距離）を求めることも可能となる。物体距離は、先端部２１から被写体までの距離であって、例えば撮像素子２８または観察光学系から被写体までの距離である。上記のステレオ計測を行うためには、先端部２１とステレオ光学アダプタを含む光学系の特性を示す光学データが必要である。なお、マッチング処理および光学データの詳細は、例えば特開２００４−４９６３８号公報に記載されているので、その説明を省略する。
【００３３】
次に、本実施形態における線基準計測の概要を説明する。図３〜図６は、被写体の画像（静止画像）を示している。図３は、撮像された画像を示している。以下の例では、２枚の板３００，３１０を接着剤で貼り合わせたときに板３００，３１０の間からはみ出した接着剤３２０の幅が計測される。
【００３４】
図４は、線基準計測を行っている間にモニタ４に表示される画像を示している。ユーザが操作部６を操作し、基準線を設定したい位置（例えば板３００のエッジ）に近い位置を基準点として指定すると、指定した基準点３３０の座標（画像内の２次元座標）を中心とする半径が所定値（例えば２０ピクセル）の円３４０内の領域がエッジ抽出領域に設定される。エッジ抽出領域は、画像処理によりエッジを抽出する処理を行う領域である。上記の所定値は適宜変更することが可能である。ユーザが指定した基準点３３０およびエッジ抽出領域を示す円３４０は画像上に表示してもしなくてもどちらでもよい。
【００３５】
続いて、エッジ抽出領域内でエッジが抽出される。さらに、エッジ抽出領域内で抽出されたエッジに対して、エッジ抽出領域の外側の画像上でエッジを追跡する処理が行われる。これにより、エッジ抽出領域内で抽出されたエッジの延長部分であるエッジが抽出される。そして、抽出されたエッジを示すグラフィックが線として画像上に表示される。図４では、線３５０，３６０が表示されている。エッジを追跡する処理が行われることによって、エッジ抽出領域に対応する円３４０内で抽出されたエッジが円３４０の外側まで延長されている。
【００３６】
複数のエッジが抽出された場合、それぞれのエッジに対して指標値が算出され、指標値に応じてそれぞれのエッジの順位が決定される。決定された順位の情報は画像上に表示される。図４では、線３５０，３６０に対応するエッジの順位を示す順位情報３７０が表示されている。順位情報３７０は、線３５０に対応するエッジの順位（候補１）と、線３６０に対応するエッジの順位（候補２）とを示している。順位情報３７０はアイコン（マーク）として表示されている。図４では、線３５０に対応するエッジのほうが、線３６０に対応するエッジよりも順位が高い。
【００３７】
複数のエッジのうち、基準線に対応するエッジである基準エッジとして選択されているエッジに対応する線が、他のエッジに対応する線よりも強調されて表示される。複数のエッジが抽出された直後の状態では、順位が最も高いエッジに対応する線が強調されて表示される。図４では、順位が最も高いエッジに対応する線３５０が線３６０よりも太く表示されている。また、強調されている線に対応するエッジの順位をユーザに提示するため、順位情報３７０において、強調されている線３５０に対応する情報が強調されて（例えば異なる色で）表示されている。図４では、線３５０に対応するエッジが基準エッジとして選択されている。
【００３８】
ユーザは、操作部６を操作することにより、基準エッジとして選択されるエッジを切り替えることが可能である。エッジを切り替える際、ユーザは、ポインティングカーソル等でエッジを直接指定する必要はなく、エッジを切り替えるためのトリガを入力するだけでよい。ユーザが、エッジを切り替える操作を行うと、例えば、現在基準エッジとして選択されているエッジに対応する線が通常の状態で表示され、そのエッジよりも順位が１つ下のエッジに対応する線が強調される。図５は、ユーザがエッジを切り替えた後にモニタ４に表示される画像を示している。順位が低いエッジに対応する線３６０が線３５０よりも太く表示されている。また、順位情報３７０において、強調されている線３６０に対応する情報が強調されて（例えば異なる色で）表示されている。図５では、線３６０に対応するエッジが基準エッジとして選択されている。
【００３９】
所望のエッジが基準エッジとして選択されている状態で、ユーザが操作部６を操作し、確定操作を行うと、基準エッジが確定する。例えば、図４の状態で確定操作が行われると、線３５０に対応するエッジが以降の処理で基準エッジとして扱われ、図５の状態で確定操作が行われると、線３６０に対応するエッジが以降の処理で基準エッジとして扱われる。基準エッジが確定した後、画像上で基準エッジに含まれる各画素に対応する３次元座標が算出され、その３次元座標に基づいて、基準エッジに対応する基準線となる直線または曲線の式が算出される。
【００４０】
基準エッジが確定した後、ユーザは操作部６を操作し、線基準計測における計測点を指定する。図６は、ユーザによって指定された計測点と線基準計測の計測位置を示している。図６では、板３００，３１０の間からはみ出した接着剤３２０の頂点の位置に計測点３８０が指定されている。
【００４１】
計測点が指定されると、計測点に対応する３次元座標が算出され、計測点と基準線との３次元距離が算出される。図６では、計測点と基準線との３次元距離として、線分３９０の長さに相当する３次元距離が算出される。算出された３次元距離はモニタ４に表示される。
【００４２】
従来技術における線基準計測では、基準線を設定するために２点以上の基準点を指定する必要があり、ユーザは、それぞれの基準点を指定する際に、画像を拡大表示する等の操作を行い、基準点を設定する位置を慎重に見極めながら、基準点の位置を指定する操作を行わなければならなかった。これに対して、本実施形態における線基準計測では、基準線を設定するために必要な操作は、エッジ抽出領域を設定するために１つの基準点を指定する操作と、抽出された複数のエッジから基準エッジを選択する操作とのみでよい。ユーザは、１つの基準点を指定する際、基準点を設定する位置を慎重に見極める必要はなく、おおよその位置に基準点を指定すればよい。また、ユーザは、基準エッジを選択する際、基準エッジとして選択されるエッジを切り替えるトリガを入力する等の簡易な操作のみを行えばよい。したがって、基準線の設定に係る操作の手間を軽減し、線基準計測に要する時間を短縮することができる。
【００４３】
次に、本実施形態における線基準計測の詳細を説明する。図７は、ＣＰＵ１８の機能構成を示している。制御部１８０、領域設定部１８１、エッジ抽出部１８２、表示制御部１８３、エッジ選択部１８４、３次元座標算出部１８５、基準線算出部１８６、線基準計測点指定部１８７、および３次元距離算出部１８８によってＣＰＵ１８の機能が構成されている。
【００４４】
制御部１８０は各部が行う処理を制御する。領域設定部１８１は、映像信号処理回路１２を介してＣＰＵ１８が取得した画像データに基づく被写体の画像においてユーザが指定した１つの基準点に基づくエッジ抽出領域を画像に設定する。エッジ抽出部１８２は、エッジ抽出領域の画像に基づいて被写体のエッジを抽出する。表示制御部１８３は、線基準計測に必要な情報（図４の基準点３３０、円３４０、線３５０，３６０、順位情報３７０、図６の計測点３８０等）をグラフィックでモニタ４に表示させる制御を行う。
【００４５】
エッジ選択部１８４は、操作部６を介して入力されるユーザの指示に基づいて、エッジ抽出部１８２によって抽出された複数のエッジから基準エッジを選択する。３次元座標算出部１８５は、ステレオ計測により、被写体の画像上の点に対応する３次元座標を算出する。基準線算出部１８６は、基準エッジを構成する点に対応する３次元座標に基づいて空間上の基準線を算出する。線基準計測点指定部１８７は、操作部６を介して入力されるユーザの指示に基づいて、線基準計測における計測点を指定する。３次元距離算出部１８８は、計測点に対応する３次元座標と基準線との３次元距離を算出する。
【００４６】
図８は、線基準計測における処理の流れを示している。以下、線基準計測における処理の詳細を説明する。ユーザの指示により被写体の静止画像が取得された後、線基準計測が開始されると、ユーザによって操作部６が操作され、エッジ抽出領域を設定する基準となる基準点が画像に指定される（ステップＳ１００）。基準点が指定されると、領域設定部１８１は、基準点に基づくエッジ抽出領域を画像に設定する（ステップＳ１０５）。前述したように、基準点の２次元座標を中心とする半径が所定値の円内の領域がエッジ抽出領域に設定される。エッジ抽出領域は、基準点の座標を基準として設定される領域であればよく、必ずしも円である必要はない。
【００４７】
エッジ抽出領域が設定されると、エッジ抽出部１８２は、２次元の画像からエッジを抽出する２次元エッジ抽出を行う（ステップＳ１１０）。図９は、ステップＳ１１０における２次元エッジ抽出の処理の流れを示している。エッジ抽出部１８２は、処理対象の画像がカラー画像である場合、グレースケールに変換し、変換後の画像のうちエッジ抽出領域の画像に対してケニーのエッジ検出器（Canny edge detector）を用いて輪郭抽出を行い、エッジを抽出する（ステップＳ１１００）。ケニーのエッジ検出器については、例えば“J. F. Canny: A Computational approach to edge detection, in IEEE Transaction Pattern Analysis Machine Intelligence, Vol.8, No.6, pp. 679-698 (1986)”に記載されている。
【００４８】
続いて、エッジ抽出部１８２は、抽出されたエッジに対して、ラスタスキャンとルックアップテーブルを用いたラベル付けを行う（ステップＳ１１０１）。これによって、抽出されたエッジに対して、エッジ毎のラベルが付与される。ラスタスキャンとルックアップテーブルを用いたラベル付けについては、例えば“ディジタル画像処理, 財団法人 画像情報教育振興協会(CG-ARTS協会), p181-182”に記載されている。
【００４９】
続いて、エッジ抽出部１８２は、エッジ抽出領域の外側の画像を用いて輪郭追跡を行い、ステップＳ１１００で抽出されたエッジの延長部分のエッジを抽出する（ステップＳ１１０２）。輪郭追跡については、例えば“ディジタル画像処理, 財団法人 画像情報教育振興協会(CG-ARTS協会), p178-179”に記載されている。また、輪郭追跡については、特開２００８−２９５５１２に記載されている方法を用いてもよい。ステップＳ１１００，Ｓ１１０２で抽出されたエッジを構成する点（画素）の２次元座標はラベルと共にエッジデータとして管理される。エッジデータは、ＲＡＭ１４に格納され、適宜、ＣＰＵ１８によって読み出される。
【００５０】
続いて、エッジ抽出部１８２は、ステップＳ１１００，Ｓ１１０２で抽出されたエッジを分割する（ステップＳ１１０３）。以下、エッジを分割する処理の詳細を説明する。被写体の画像をｘｙ平面としたときにｘｙ平面上のベクトルｐは、ｘ軸に平行なベクトルａと、ベクトルａに直交しｙ軸に平行なベクトルｂとの線形結合として、以下の（４）式で表される（ｘ_ｐ，ｙ_ｐはそれぞれベクトルｐのｘ成分、ｙ成分）。
【００５１】
【数１】
2014140402.tif 000003
【００５２】
また、ベクトルｐは、ｘｙ平面上の直交する任意の２つのベクトルｕ，ｖの線形結合として、以下の（５）式で表される。
【００５３】
【数２】
2014140402.tif 000004
【００５４】
（５）式のｓ，ｔをそれぞれベクトルｐのｕ成分、ｖ成分と表現する。ここで、ベクトルｕのｘ成分とｙ成分をx_u，y_uとし、ベクトルｖのｘ成分とｙ成分をx_v，y_vとすると、ベクトルｕ，ｖはそれぞれ以下の（６）式、（７）式で表わされる。
【００５５】
【数３】
2014140402.tif 000005
【００５６】
（５）式〜（７）式から、ベクトルｐは以下の（８）式で表される。
【００５７】
【数４】
2014140402.tif 000006
【００５８】
（８）式から（９）式、（１０）式が成り立つ。
x_p = s x_u + t x_v    ・・・（９）
y_p = s y_u + t y_v    ・・・（１０）
【００５９】
（９）式、（１０）式をｓ、ｔについての連立方程式として解くことができ、s、t はそれぞれ、ベクトルｐをベクトルｕ，ｖで表したときのｕ成分、ｖ成分となる。つまり、ｘ成分とｙ成分で表されるｘｙ平面上の所定方向のベクトルｐ（（４）式）の表現を、ベクトルｕ，ｖを用いた表現に変換することができる。
【００６０】
エッジを分割する際、エッジ抽出部１８２は、エッジ上の各点（画素）でエッジの接線方向を求め、エッジ上の各点の両隣の点における接線方向から、各点における接線方向の変化を示すベクトルを求める。エッジ上の任意の点ｉにおける接線方向に平行な単位ベクトルをｑｉとし、点ｉにおける接線方向の変化を示すベクトルをｐｉとし、点ｉの両隣の点を点ｉ−１、点ｉ＋１とすると、接線方向の変化を示すベクトルｐｉは以下の（１１）式で表される。
【００６１】
【数５】
2014140402.tif 000007
【００６２】
エッジ上の各点における接線方向の変化を示すベクトルは、接線方向に平行なベクトル（上記のベクトルｕに相当）と、接線方向に垂直なベクトル（上記のベクトルｖに相当）とで表現することができる。エッジ抽出部１８２は、エッジ上の各点の接線方向の変化を示すベクトルにおける、接線方向に平行なベクトルの成分と、接線方向に垂直なベクトルの成分とを求める。その後、エッジ抽出部１８２は、接線方向に垂直なベクトルの成分が所定値を越える画素、あるいはその成分の符号が反転する画素でエッジを分割する。分割されたエッジはそれぞれ異なるエッジとなり、各エッジに異なるラベルが付与される。ここで、分割された各エッジは変曲点を持たない。エッジを構成する点の座標およびエッジのラベルを管理するエッジデータは、分割された各エッジに対応したデータとなるように更新される。エッジが分割されると、２次元エッジ抽出の処理が終了する。
【００６３】
２次元エッジ抽出の処理が終了すると、エッジ抽出部１８２は、ステップＳ１１０で抽出したエッジ（分割後のエッジを含む）の指標値を含む基準線候補リストを生成する（ステップＳ１１５）。図１０は、ステップＳ１１５において基準線候補リストを生成する処理の流れを示している。エッジ抽出部１８２は、ステップＳ１１０で抽出した全てのエッジ（分割後のエッジを含む）について、ステップＳ１１５０，Ｓ１１５１の処理を行う。
【００６４】
まず、エッジ抽出部１８２は各エッジの指標値を算出する（ステップＳ１１５０）。指標値は、エッジの強度（コントラスト）や、エッジの長さ、エッジの曲率半径等である。指標値としてこれ以外のものを用いてもよい。指標値は、その値が高いほど、３次元距離を計測したときの計測結果の精度が高くなることが期待される値であることがより望ましい。エッジの強度等が高いエッジを基準エッジに用いた場合、基準エッジを構成する各点の３次元座標に対して良好にフィットする３次元の基準線が得られやすくなり、より精度の高い計測結果を得ることができる。続いて、エッジ抽出部１８２は、各エッジの指標値を基準線候補リストに登録する（ステップＳ１１５１）。基準線候補リストは、ＲＡＭ１４に格納され、適宜、ＣＰＵ１８によって読み出される。
【００６５】
ステップＳ１１０で抽出した全てのエッジについて、ステップＳ１１５０，Ｓ１１５１の処理を行った後、エッジ抽出部１８２は、各エッジの指標値に基づいて、各エッジの順位を決定する（ステップＳ１１５２）。各エッジの順位は、例えば指標値が高い順となる。各エッジの順位の情報は、基準線候補リストに登録されていてもよいし、基準線候補リストとは別に管理されてもよい。各エッジの順位が決定されると、基準線候補リストを生成する処理が終了する。
【００６６】
基準線候補リストを生成する処理が終了すると、表示制御部１８３は、エッジデータおよび基準線候補リストに基づいて、抽出された各エッジを示す線および順位情報をモニタ４に表示させるためのグラフィック画像信号を生成し、映像信号処理回路１２へ出力する。これにより、例えば図４に示すように、抽出された各エッジを示す線および順位情報が画像に重畳されてモニタ４に表示される（ステップＳ１２０）。ユーザは、モニタ４に表示された画像に基づいて、抽出されたエッジのうちのどれが基準エッジに最適であるのかを確認することができる。
【００６７】
抽出された各エッジを示す線および順位情報が表示された後、ユーザによって操作部６が操作され、基準エッジが選択される。このとき、前述したように、ユーザは、基準エッジとして選択されるエッジを切り替えることが可能である。エッジ選択部１８４は、操作部６を介して入力されるユーザの指示に基づいて、エッジデータに含まれるデータの中から、基準エッジとして選択されたエッジのデータを選択し、そのデータを表示制御部１８３に通知し、基準エッジとして選択されたエッジに対応する線を強調する処理を行わせる。所望のエッジが基準エッジとして選択されている状態でユーザによって確定操作が行われると、基準エッジが確定する（ステップＳ１２５）。
【００６８】
基準エッジが確定した後、ステップＳ１３０，Ｓ１３５の処理と、ステップＳ１４０の処理とが並行的に行われる。３次元座標算出部１８５は、基準エッジを構成する各点に対応する３次元座標を算出し、各点の３次元座標で構成されるエッジ点群を生成する（ステップＳ１３０）。続いて、基準線算出部１８６は、エッジ点群に対して空間上の直線または曲線を当てはめる３次元直線／曲線フィッティングを行い、その直線または曲線の式（近似式）を算出する（ステップＳ１３５）。算出された直線または曲線が基準線である。
【００６９】
ステップＳ１３０，Ｓ１３５の処理と並行して、ユーザによって操作部６が操作され、線基準計測における計測点が指定される（ステップＳ１４０）。このとき、画像の拡大表示機能を併用することで、サブピクセル単位で計測点を指定することが可能である。上記の処理方法では、基準エッジが確定してからユーザが計測点を指定するまでの間に、少なくとも基準エッジを構成する点の一部または全てに対応する３次元座標が算出され、場合によっては、基準線の算出まで行われる。このように、ユーザが計測点の指定を行っている間に３次元座標や基準線の算出を行うことによって、ユーザが感じる処理の待ち時間を減らすことができる。
【００７０】
上記のように並行的に処理を行うことができない処理システムを用いる場合には、基準エッジが確定した後、例えばステップＳ１４０，Ｓ１３０，Ｓ１３５の順に処理が行われる。この順に処理が行われると、基準エッジを確定する操作と、計測点を指定する操作とが連続で行われ、それらの間に、ステップＳ１３０，Ｓ１３５の処理による待ち時間が発生しない。したがって、基準エッジを確定する操作と、計測点を指定する操作とが処理の待ち時間によって分断されないため、操作中にユーザが感じる処理の待ち時間を減らすことができる。
【００７１】
図１１は、ステップＳ１３５における３次元直線／曲線フィッティングの処理の流れを示している。基準線算出部１８６は、基準エッジを構成する全ての点（画素）について、ステップＳ１３５０，Ｓ１３５１の処理を行う。まず、基準線算出部１８６は、基準エッジを構成する各点でエッジの接線方向を求め（ステップＳ１３５０）、基準エッジ上の各点の両隣の点における接線方向から、各点における接線方向の変化量を求める（ステップＳ１３５１）。例えば、エッジ上で３つの点Ａ，Ｂ，Ｃがこの順に並んでいるとき、点Ａ，Ｃにおける接線方向から点Ｂにおける接線方向の変化量を求める。
【００７２】
基準エッジを構成する全ての点について、ステップＳ１３５０，Ｓ１３５１の処理を行った後、基準線算出部１８６は、基準エッジを構成する各点における接線方向の変化量の絶対値の最大値を求める（ステップＳ１３５２）。続いて、基準線算出部１８６は、求めた最大値が所定値以下であるか否かを判定する（ステップＳ１３５３）。ステップＳ１３５３における判定に用いられる所定値は０に近い値である。
【００７３】
最大値が所定値以下である場合、基準エッジが直線であるとみなすことができ、基準線算出部１８６は、ステップＳ１３０で求めたエッジ点群に対して空間上の直線を当てはめる直線フィッティングを行い、その直線の式を算出する（ステップＳ１３５４）。また、最大値が所定値を超える場合、基準線算出部１８６は、ステップＳ１３０で求めたエッジ点群に対して空間上の曲線を当てはめる曲線フィッティングを行い、その曲線の式を算出する（ステップＳ１３５５）。ステップＳ１３５４の直線フィッティングまたはステップＳ１３５５の曲線フィッティングが終了すると、３次元直線／曲線フィッティングの処理が終了する。
【００７４】
図１２は、ステップＳ１３５４における直線フィッティングの処理の流れを示している。基準線算出部１８６は、エッジ点群を構成する３次元座標をｘｙ平面に射影する（ステップＳ１３５４０）。続いて、基準線算出部１８６は、ｘｙ平面上で最小２乗法を用いて、ｘｙ平面に射影した各座標に対して直線を当てはめ、その直線の式を算出する（ステップＳ１３５４１）。ステップＳ１３５４１で算出された式は、ｘｙ平面に垂直であって基準エッジを通る平面（以下、第１の平面とする）の式に等しい。
【００７５】
続いて、基準線算出部１８６は、ｘｙ平面に射影した各座標に基づいて、エッジがｘ方向に長いか否かを判定する（ステップＳ１３５４２）。例えば、ｘ座標の最大値と最小値の差の絶対値が所定値以上であればエッジがｘ方向に長いと判定され、ｘ座標の最大値と最小値の差の絶対値が所定値未満であればエッジがｘ方向に長くないと判定される。
【００７６】
エッジがｘ方向に長いと判定された場合、基準線算出部１８６は、エッジ点群を構成する３次元座標をｘｚ平面に射影する（ステップＳ１３５４３）。続いて、基準線算出部１８６は、ｘｚ平面上で最小２乗法を用いて、ｘｚ平面に射影した各座標に対して直線を当てはめ、その直線の式を算出する（ステップＳ１３５４４）。ステップＳ１３５４４で直線の式を算出することは、ｘｚ平面に垂直であって基準エッジを通る平面（以下、第２の平面とする）を求めることに等しい。
【００７７】
エッジがｘ方向に長くないと判定された場合、基準線算出部１８６は、エッジ点群を構成する３次元座標をｙｚ平面に射影する（ステップＳ１３５４５）。続いて、基準線算出部１８６は、ｙｚ平面上で最小２乗法を用いて、ｙｚ平面に射影した各座標に対して直線を当てはめ、その直線の式を算出する（ステップＳ１３５４６）。ステップＳ１３５６６で直線の式を算出することは、ｙｚ平面に垂直であって基準エッジを通る平面（以下、第２の平面とする）を求めることに等しい。
【００７８】
ステップＳ１３５４４またはステップＳ１３５４６で直線の式を求めた後、基準線算出部１８６は、第１の平面と第２の平面の交わる位置の直線を求める（ステップＳ１３５４７）。より具体的には、ステップＳ１３５４７では、以下の処理が行われる。ステップＳ１３５４４で直線の式を求めた場合、基準線算出部１８６は、求めた直線の式でｘ＝０として直線が通る点を求める。あるいは、ステップＳ１３５４６で直線の式を求めた場合、基準線算出部１８６は、求めた直線の式でｙ＝０として直線が通る点を求める。続いて、基準線算出部１８６は、第１の平面と第２の平面のそれぞれの法線ベクトルに直交するベクトル（外積）を求める。求めたベクトルを方向ベクトルとし、上記の点を通る直線が、第１の平面と第２の平面の交わる位置の直線である。第１の平面と第２の平面の交わる位置の直線が求まると、直線フィッティングの処理が終了する。
【００７９】
図１３は、ステップＳ１３５５における曲線フィッティングの処理の流れを示している。基準線算出部１８６は、基準エッジが含まれる平面を求める（ステップＳ１３５５０）。より具体的には、ステップＳ１３５５０では、以下の処理が行われる。基準線算出部１８６は、エッジ点群を構成する３次元座標のうち、基準エッジの両端と中央の３点に対応する３次元座標から、２本のベクトルを算出する。２本のベクトルは、基準エッジの一方の端点と中央の点とを通るベクトル、および基準エッジの他方の端点と中央の点とを通るベクトルである。続いて、基準線算出部１８６は、２本のベクトルに直交するベクトル （外積）を求める。続いて、基準線算出部１８６は、上記の３点のいずれかに対応する３次元座標を通り、求めたベクトルを法線ベクトルとする平面を算出する。
【００８０】
基準エッジが含まれる平面を求めた後、基準線算出部１８６は、エッジ点群を構成する３次元座標を、求めた平面に射影する（ステップＳ１３５５１）。続いて、基準線算出部１８６は、射影した各座標に対して曲線を当てはめ、その曲線の式を算出する（ステップＳ１３５５２）。曲線フィッティングの具体的な方法については、例えば特開２００５−２０４７２４号公報に記載されている。曲線の式が求まると、曲線フィッティングの処理が終了する。
【００８１】
基準線の算出（ステップＳ１３５）と計測点の指定（ステップＳ１４０）とが終了すると、３次元距離算出部１８８は、計測点に対応する３次元座標と３次元の基準線との３次元距離を算出する（ステップＳ１４５）。基準線を直線で表した場合、３次元距離は以下のようにして算出される。点Ｏ の座標を （ｘ０，ｙ０，ｚ０） として、点Ｏを通る３次元の直線Ｌの方向ベクトルの成分を（ａ，ｂ，ｃ）とすると、直線Ｌ上の点の座標（ｘ，ｙ，ｚ）は媒介変数ｔを用いて以下の（１２）式〜（１４）式で表わされる。
【００８２】
【数６】
2014140402.tif 000008
【００８３】
このとき、直線Ｌ上にない点Ｍの座標を（ｘＭ，ｙＭ，ｚＭ）として、点Ｍから直線Ｌ に下ろした垂線の足Ｈの座標（ｘＨ，ｙＨ，ｚＨ）は媒介変数ｔＨを用いて以下の（１５）式〜（１７）式で表わされる。
【００８４】
【数７】
2014140402.tif 000009
【００８５】
ベクトルＯＨとベクトルＭＨが直交することから、上記の媒介変数ｔＨは以下の（１８）式のように求められる。
【００８６】
【数８】
2014140402.tif 000010
【００８７】
したがって、点Ｍと直線Ｌの距離ｄは以下の（１９）式で求められる。
【００８８】
【数９】
2014140402.tif 000011
【００８９】
基準線を曲線で表した場合の３次元距離は、前述した特許文献２に開示されている。
【００９０】
３次元距離が算出されると、表示制御部１８３は、算出された３次元距離の値を計測結果としてモニタ４に表示させるためのグラフィック画像信号を生成し、映像信号処理回路１２へ出力する。これにより、３次元距離の値がモニタ４に表示される（ステップＳ１５０）。ユーザは、モニタ４に表示された値に基づいて、計測結果を確認することができる。３次元距離の値がモニタ４に表示されると、線基準計測が終了する。
【００９１】
上述したように、本実施形態によれば、基準線を設定するために必要な操作は、エッジ抽出領域を設定するために１つの基準点を指定する操作と、抽出された複数のエッジから基準エッジを選択する操作とのみでよいため、基準線の設定に係る操作の手間を軽減し、線基準計測に要する時間を短縮することができる。
【００９２】
また、基準線に対応する基準エッジとして提示されたエッジが所望のエッジでない場合に、別のエッジに容易に切り替えることができる。例えば、被写体と背景に強い明暗差があり、ユーザが基準エッジとして選択したいエッジは被写体の表面上にあり、エッジ付近の明暗差が比較的小さい場合、自動的に抽出されたエッジのうち最も順位が高いエッジは被写体と背景の境界となる可能性がある。このような場合でも、所望のエッジを基準エッジとして選択できるようにエッジを容易に切り替えることができる。
【００９３】
また、抽出された複数のエッジの順位の情報を表示することによって、基準エッジとなるエッジを選択する指標の１つをユーザに提示することができる。
【００９４】
また、確定した基準エッジを構成する点のみについて３次元座標が算出されるので、処理全体の計算量を少なくすることができる。
【００９５】
上記の説明では、基準エッジとして選択されるエッジがユーザの指示に基づいて切り替わるが、基準エッジとして選択されるエッジが自動的に切り替わるようにしてもよい。例えば、基準エッジとして選択されるエッジが所定時間の間隔で順次切り替わり、ユーザが確定操作を行うと、その時点で基準エッジとして選択されているエッジが基準エッジとして確定する。この場合、基準エッジを選択するために必要な操作は、基準エッジを確定する操作だけとなるので、操作の手間をさらに軽減することができる。
【００９６】
（第２の実施形態）
次に、本発明の第２の実施形態を説明する。図１４は、本実施形態の線基準計測における処理の流れを示している。図１４に示す処理のうち、図８に示す処理と同一の処理には同一の符号が付与されている。ユーザの指示により被写体の静止画像が取得された後、線基準計測が開始されると、３次元座標算出部１８５は、被写体の画像における第１の範囲に含まれる全ての点（画素）について、各点に対応する３次元座標を算出し、各点の３次元座標で構成される被写体点群を生成する（ステップＳ２００）。
【００９７】
図１５は、ステップＳ２００において被写体点群を生成する処理の流れを示している。３次元座標算出部１８５は、被写体の画像における第１の範囲に含まれる全ての点について、各点に対応する３次元座標を算出する（ステップＳ２０００）。本実施形態では、３次元座標が算出される第１の範囲は被写体の画像の全体である。第１の範囲は、少なくともステップＳ２０５でエッジ抽出領域に設定される第２の範囲を含む。第１の範囲を示す情報は、例えばＣＰＵ１８が実行する計測用プログラムに記録されているが、ユーザの指示により、第１の範囲を変更することも可能である。被写体の画像の全体に含まれる全ての点について、ステップＳ２０００の処理を行った後、３次元座標算出部１８５は、算出した３次元座標について、例えばメディアンフィルターを用いて、周囲の点の３次元座標とかけ離れたものを周囲の点の３次元座標の平均値に置き換えることで異常値を修正する（ステップＳ２００１）。異常値の修正が終了すると、被写体点群を生成する処理が終了する。
【００９８】
被写体点群を生成する処理が終了した後、領域設定部１８１は、被写体の画像における第２の範囲をエッジ抽出領域に設定する（ステップＳ２０５）。本実施形態では、エッジ抽出領域が設定される第２の範囲は被写体の画像の全体である。第２の範囲を示す情報は、例えばＣＰＵ１８が実行する計測用プログラムに記録されているが、ユーザの指示により、第２の範囲を変更することも可能である。エッジ抽出領域が設定されると、エッジ抽出部１８２は２次元エッジ抽出を行う（ステップＳ１１０）。２次元エッジ抽出の処理は、図９に示した処理と同一である。ただし、本実施形態のエッジデータに含まれる、各エッジを構成する点の２次元座標は、被写体点群を構成する３次元座標と関連付けられている。各エッジを構成する点の２次元座標と３次元座標の両方がエッジデータに含まれていてもよい。２次元エッジ抽出の処理が終了すると、エッジ抽出部１８２は基準線候補リストを生成する（ステップＳ１１５）。基準線候補リストを生成する処理は、図１０に示した処理と同一である。
【００９９】
基準線候補リストを生成する処理が終了すると、ユーザによって操作部６が操作され、以下で説明するエッジ選択領域を設定する基準となる基準点が指定される（ステップＳ１００）。基準点が指定されると、領域設定部１８１は、基準点に基づくエッジ選択領域を画像に設定する（ステップＳ２１０）。エッジ選択領域は、被写体の画像の全体で抽出されたエッジの中から、以降の処理の対象とするエッジを選択する領域である。第１の実施形態で説明したエッジ抽出領域と同様に、例えば基準点の２次元座標を中心とする半径が所定値の円内の領域がエッジ選択領域に設定される。エッジ選択領域は、基準点の座標を基準として設定される領域であればよく、必ずしも円である必要はない。
【０１００】
ユーザが指定した基準点に基づくエッジ選択領域の中に、基準線候補リストに含まれるエッジが存在しない場合には、エッジを選択することができない。この場合、警告を表示してユーザに基準点を再度指定させてもよいし、基準線候補リストに含まれるエッジが見つかるまで段階的にエッジ選択領域を広げたり、基準線候補リストに含まれるエッジのうち最も近いエッジと重なる位置までエッジ選択領域を移動させたりしてもよい。
【０１０１】
エッジ選択領域が設定されると、エッジ選択部１８４は、エッジデータに基づいて、エッジの中から選択領域と重なるエッジ（少なくとも一部が選択領域に含まれる（選択領域を通る）エッジ）を選択し、基準エッジの選択対象とする（ステップＳ２１５）。このとき、基準線候補リストにおいて、選択対象となったエッジ以外の情報を消去してもよいし、選択対象となったエッジの情報に対して、選択対象であることを示すフラグを付与してもよい。
【０１０２】
基準エッジの選択対象となるエッジが選択されると、表示制御部１８３は、エッジデータおよび基準線候補リストに基づいて、選択対象の各エッジを示す線および順位情報をモニタ４に表示させるためのグラフィック画像信号を生成し、映像信号処理回路１２へ出力する。これにより、選択対象の各エッジを示す線および順位情報が画像に重畳されてモニタ４に表示される（ステップＳ１２０）。
【０１０３】
選択対象の各エッジを示す線および順位情報が表示された後、ユーザによって操作部６が操作され、基準エッジが選択される。このとき、第１の実施形態で説明したように、ユーザは、基準エッジとして選択されるエッジを切り替えることが可能である。所望のエッジが基準エッジとして選択されている状態でユーザによって確定操作が行われると、基準エッジが確定する（ステップＳ１２５）。
【０１０４】
基準エッジが確定した後、ステップＳ１３５の処理と、ステップＳ１４０の処理とが並行的に行われる。基準線算出部１８６は、エッジ点群に対して空間上の直線または曲線を当てはめる３次元直線／曲線フィッティングを行い、その直線または曲線の式（近似式）を算出する（ステップＳ１３５）。算出された直線または曲線が基準線である。３次元直線／曲線フィッティングの処理は、図１１に示した処理と同一である。ステップＳ１３５の処理と並行して、ユーザによって操作部６が操作され、線基準計測における計測点が指定される（ステップＳ１４０）。
【０１０５】
基準線の算出（ステップＳ１３５）と計測点の指定（ステップＳ１４０）とが終了すると、３次元距離算出部１８８は、計測点に対応する３次元座標と３次元の基準線との３次元距離を算出する（ステップＳ１４５）。３次元距離が算出されると、表示制御部１８３は、算出された３次元距離の値を計測結果としてモニタ４に表示させるためのグラフィック画像信号を生成し、映像信号処理回路１２へ出力する。これにより、３次元距離の値がモニタ４に表示される（ステップＳ１５０）。３次元距離の値がモニタ４に表示されると、線基準計測が終了する。
【０１０６】
本実施形態における線基準計測の処理（図１４）は、例えば、ユーザによって、線基準計測機能を起動する指示が入力された時点、またはその時点よりも前の時点であって、ユーザによって、モニタ４に表示する静止画像を取得する指示が入力された時点で開始される。線基準計測機能を起動する指示およびモニタ４に静止画像を表示する指示はいずれも、操作部６の操作によって入力することが可能である。
【０１０７】
上述したように、本実施形態によれば、被写体の画像における所定の領域にエッジ抽出領域が自動的に設定される。これによって、基準線を設定するために必要な操作は、エッジ選択領域を設定するために１つの基準点を指定する操作と、エッジ選択領域を通る複数のエッジから基準エッジを選択する操作とのみでよいため、基準線の設定に係る操作の手間を軽減し、線基準計測に要する時間を短縮することができる。
【０１０８】
また、線基準計測の処理が開始された直後に被写体の画像における所定の範囲に含まれる全ての点に対応する３次元座標が算出されるので、基準エッジが確定した後の計算量が少なくなる。このため、基準エッジが確定した後にユーザが感じる処理の待ち時間を減らすことができる。
【０１０９】
線基準計測の処理が開始された直後、ユーザは画像を見て被写体の確認を行ったり、画像データを記録する操作を行ったり、過去に取得された画像データを再生して現在の画像と過去の画像を比較したりすることがある。ユーザがこれらのいずれかを行っている間に、上記のように、被写体の画像における所定の範囲に含まれる全ての点に対応する３次元座標を算出することにより、線基準計測の全体においてユーザが感じる処理の待ち時間を減らすことができる。
【０１１０】
また、被写体の画像における所定の範囲から抽出されたエッジのうち、ユーザが指定した基準点に基づくエッジ選択領域と重なるエッジのみが基準エッジの候補となる。このため、被写体の画像における所定の範囲から大量のエッジが抽出されたとしても、ユーザが基準エッジを効率的に選択することができる。
【０１１１】
上記の説明では、エッジ選択領域を設定しているが、エッジ選択領域を設定せず、エッジ抽出領域から抽出された全てのエッジを基準エッジの選択対象としてもよい。例えば、エッジ抽出領域から抽出されたエッジの数が所定値以上である場合にはエッジ選択領域を設定し、エッジの数が所定値未満である場合にはエッジ選択領域を設定しなくてもよい。エッジ選択領域を設定しない場合には、ユーザが基準点を指定する操作が省かれるので、操作の手間をさらに軽減することができる。
【０１１２】
（第３の実施形態）
次に、本発明の第３の実施形態を説明する。図１６は、本実施形態の線基準計測における処理の流れを示している。図１６に示す処理のうち、図１４に示す処理と同一の処理には同一の符号が付与されている。以下では、図１４に示す処理と異なる点を中心に説明する。図１６に示す処理では、２次元エッジ抽出（ステップＳ１１０）が行われた後、ユーザによって操作部６が操作され、エッジ選択領域を設定する基準となる基準点が指定される（ステップＳ１００）。
【０１１３】
基準点が指定されると、エッジ選択領域が画像に設定され（ステップＳ２１０）、エッジの中から選択領域と重なるエッジ（少なくとも一部が選択領域に含まれる（選択領域を通る）エッジ）が選択される（ステップＳ２１５）。基準エッジの選択対象となるエッジが選択されると、基準線候補リストが生成される（ステップＳ３００）。
【０１１４】
図１７は、ステップＳ３００において基準線候補リストを生成する処理の流れを示している。ステップＳ１１５０〜Ｓ１１５２の各処理は、図１０における各処理と同一であるが、各処理がエッジ選択部１８４によって行われる点と、ステップＳ１１５０，Ｓ１１５１の処理が、ステップＳ２１０で設定されたエッジ選択領域を通る全てのエッジについて行われる点とが異なる。
【０１１５】
基準線候補リストが生成されると、表示制御部１８３は、エッジデータおよび基準線候補リストに基づいて、選択対象の各エッジを示す線および順位情報をモニタ４に表示させるためのグラフィック画像信号を生成し、映像信号処理回路１２へ出力する。これにより、選択対象の各エッジを示す線および順位情報が画像に重畳されてモニタ４に表示される（ステップＳ１２０）。以降の処理は、図１４に示す処理と同一である。
【０１１６】
図１４に示す処理では、ステップＳ１１０で被写体の画像の全体に対してエッジ抽出が行われるので、場合によっては大量のエッジが抽出される可能性がある。ステップＳ１１５では、被写体の画像の全体から抽出された全てのエッジに対して、指標値の算出を含む処理が行われるので、大量のエッジが抽出されると、ユーザが感じる処理の待ち時間が長くなる。
【０１１７】
一方、図１６に示す処理では、ステップＳ１１０で抽出されたエッジのうちステップＳ２１５で選択されたエッジに対して、ステップＳ３００で指標値の算出を含む処理が行われるので、ステップＳ１１０で大量のエッジが抽出されたとしても、図１４に示す処理と比較して、指標値を算出する時間を短縮することが可能となる。したがって、本実施形態によれば、ユーザが感じる処理の待ち時間を第２の実施形態よりも減らすことができる。
【０１１８】
（第４の実施形態）
次に、本発明の第４の実施形態を説明する。図１８は、本実施形態の線基準計測における処理の流れを示している。図１８に示す処理のうち、図１４に示す処理と同一の処理には同一の符号が付与されている。以下では、図１４に示す処理と異なる点を中心に説明する。
【０１１９】
図１８に示す処理では、エッジ抽出部１８２は、２次元エッジ抽出（図１４のステップＳ１１０）の代わりに３次元エッジ抽出を行う（ステップＳ４００）。図１９は、ステップＳ４００における３次元エッジ抽出の処理の流れを示している。エッジ抽出部１８２は、被写体の画像から奥行き画像を生成する（ステップＳ４０００）。奥行き画像とは、ステップＳ２００で算出された、被写体の画像の全体における各点の３次元座標を構成するｚ座標（撮像素子２８または撮像光学系から被写体までの距離に相当）を画素値として有する画像である。
【０１２０】
奥行き画像が生成された後のステップＳ１１００〜Ｓ１１０２の処理は、処理の対象となる画像が奥行き画像となる点を除いて、図９に示すステップＳ１１００〜Ｓ１１０２の処理と同一である。ステップＳ１１０２で輪郭追跡が行われ、ステップＳ１１００で抽出されたエッジの延長部分のエッジが抽出された後、エッジ抽出部１８２は、ステップＳ１１００，Ｓ１１０２で抽出されたエッジを分割する（ステップＳ４００１）。以下、エッジを分割する処理の詳細を説明する。
【０１２１】
エッジの分割では、エッジ上の各点の３次元座標を用いて処理が行われる。エッジを分割する際、エッジ抽出部１８２は、エッジ上の各点でエッジの接線方向を求め、エッジ上の各点の両隣の点における接線方向から、各点における接線方向の変化を示すベクトルを求める。エッジ上の任意の点ｉにおける接線方向に平行なベクトルをｑｉとし、点ｉにおける接線方向の変化を示すベクトルをｐｉとし、点ｉの両隣の点を点ｉ−１、点ｉ＋１とすると、接線方向の変化を示すベクトルｐｉは、前述した（１１）式で表される。
【０１２２】
エッジ抽出部１８２は、エッジ上の各点における接線方向の変化を示すベクトルの大きさが所定値を越える点、あるいは接線方向の変化を示すベクトルを接線方向と垂直な面に投影した射影ベクトルの向きが反転する点、あるいは射影ベクトルの向きが変化する点でエッジを分割する。以下、射影ベクトルについて説明する。
【０１２３】
エッジ上の任意の点ｉにおける接線方向と平行な単位ベクトルをｕｉとし、点ｉにおける接線方向に平行なベクトルｑｉの大きさを｜ｑｉ｜とすると、単位ベクトルｕｉは以下の（２０）式で表される。
【０１２４】
【数１０】
2014140402.tif 000012
【０１２５】
ベクトルｐｉを点ｉにおける接線方向と垂直な面に投影したベクトルをｖｉとし、ベクトルｑｉとベクトルｕｉの内積を（ｑｉ・ｕｉ）とすると、ベクトルｖｉは以下の（２１）式で表される。
【０１２６】
【数１１】
2014140402.tif 000013
【０１２７】
分割されたエッジはそれぞれ異なるエッジとなり、各エッジに異なるラベルが付与される。ここで、分割された各エッジに属する点は同一平面内に存在し、各エッジは変曲点を持たない。エッジを構成する点の座標およびエッジのラベルを管理するエッジデータは、分割された各エッジに対応したデータとなるように更新される。エッジが分割されると、３次元エッジ抽出の処理が終了する。以降の処理は、図１４に示す処理と同一である。
【０１２８】
２次元エッジ抽出と３次元エッジ抽出の利点および課題について説明する。２次元エッジ抽出では、平面上の模様をエッジとして検出できる。例えば、塗装が境界からはみ出した量の計測や部品の継ぎ目から侵食したサビの侵食量などの計測に有効である。しかし、２次元エッジ抽出では、丸みのある表面のエッジは照明の加減によっては見えなくなり、検出できない。あるいは、検出できるエッジの長さが短くなる。
【０１２９】
一方、３次元エッジ抽出では、画像において輝度の変化がない、あるいは輝度の変化が少なく、エッジが存在しないように見える場合でもエッジを検出できる。例えば、照明の加減により影がついていない、丸みのある表面のエッジを検出できる。また、単なる模様をエッジとして誤検出しない特徴がある。例えば、ＣＦＲＰ（炭素繊維強化プラスチック）のように、表面に繊維が見える材質の被写体に対してエッジを誤検出しない。しかし、３次元エッジ抽出では、平面上の境界線を検出できない。
【０１３０】
本実施形態では、図１４に示す処理において２次元エッジ抽出を３次元エッジ抽出に置換した場合について説明したが、図１６に示す処理において２次元エッジ抽出を３次元エッジ抽出に置換してもよい。
【０１３１】
（変形例）
次に、上記の各実施形態に適用可能な変形例を説明する。図２０に示すように、表面の一部が欠けている被写体に対して線基準計測を行うことも可能である。線２０００に対応するエッジが基準エッジとして選択され、計測点２０１０が指定されると、基準エッジに対応する空間上の基準線と、計測点２０１０に対応する３次元座標との３次元距離（線分２０２０の長さに相当する３次元距離）が算出される。
【０１３２】
ユーザが基準エッジを選択する際、モニタ４に表示されるエッジの線において、基準エッジとして選択されているエッジを示す線と、それ以外のエッジを示す線とを線の太さで区別してもよいし、線の色で区別してもよい。また、基準エッジとして選択されているエッジを示す線のみを点滅させてもよい。
【０１３３】
ユーザが基準エッジを選択する際、モニタ４に表示される順位情報において、基準エッジとして選択されているエッジに対応する情報と、それ以外のエッジに対応する情報とをアイコンの色で区別してもよいし、アイコン内の文字の色や太さで区別してもよい。また、基準エッジとして選択されているエッジに対応する情報を示すアイコンのみを点滅させてもよい。
【０１３４】
エッジ抽出領域でエッジを抽出できなかった場合に、エッジ抽出における閾値を下げてから再度エッジの抽出を行ったり、エッジ抽出領域を自動的に広げてから再度エッジの抽出を行ったりしてもよい。
【０１３５】
線基準計測における計測点は自動的に設定されてもよい。例えば、模様の輪郭の頂点を画像処理により検出して計測点に設定してもよい。
【０１３６】
以上、図面を参照して本発明の実施形態について詳述してきたが、具体的な構成は上記の実施形態に限られるものではなく、本発明の要旨を逸脱しない範囲の設計変更等も含まれる。
【符号の説明】
【０１３７】
１  内視鏡装置、２  内視鏡ユニット、３  装置本体、４  モニタ（表示部）、５  筐体、６  操作部、８  コネクターユニット、９  ＣＣＵ、１０  制御ユニット、１２  映像信号処理回路、１３  ＲＯＭ、１４  ＲＡＭ、１８  ＣＰＵ、２８  撮像素子（撮像部）、１８０  制御部、１８１  領域設定部、１８２  エッジ抽出部、１８３  表示制御部、１８４  エッジ選択部、１８５  ３次元座標算出部、１８６  基準線算出部、１８７  線基準計測点指定部、１８８  ３次元距離算出部、２８  撮像素子
【図１】
2014140402.tif 000014
【図２】
2014140402.tif 000015
【図３】
2014140402.tif 000016
【図４】
2014140402.tif 000017
【図５】
2014140402.tif 000018
【図６】
2014140402.tif 000019
【図７】
2014140402.tif 000020
【図８】
2014140402.tif 000021
【図９】
2014140402.tif 000022
【図１０】
2014140402.tif 000023
【図１１】
2014140402.tif 000024
【図１２】
2014140402.tif 000025
【図１３】
2014140402.tif 000026
【図１４】
2014140402.tif 000027
【図１５】
2014140402.tif 000028
【図１６】
2014140402.tif 000029
【図１７】
2014140402.tif 000030
【図１８】
2014140402.tif 000031
【図１９】
2014140402.tif 000032
【図２０】
2014140402.tif 000033
【図２１】
2014140402.tif 000034