(57)【特許請求の範囲】
【請求項１】
生体内管腔を撮像した生体内管腔画像から異常部を検出する画像処理装置であって、
前記生体内管腔画像をもとに、各画素の画素値の勾配強度を算出する勾配強度算出手段と、
前記勾配強度が所定の値以上である画素を領域の内部に含まず、かつ、領域の境界が該領域の内側に所定の曲率以上で屈曲しないことを条件として該条件を満たす閉領域を抽出する閉領域抽出手段と、
前記閉領域の内側から異常部を検出する異常部検出手段と、
を備え、
前記閉領域抽出手段は、
前記閉領域の初期形状を設定する初期閉領域設定手段と、
少なくとも前記閉領域の外形によって定まるエネルギーおよび前記閉領域における前記勾配強度によって定まるエネルギーを含む複数のエネルギーの値を算出するエネルギー算出手段と、
前記複数のエネルギーの加重和を算出するエネルギー加重和算出手段と、
前記閉領域の外形によって定まるエネルギーおよび前記閉領域における前記勾配強度によって定まるエネルギーのうちのいずれか１つの値が所定の条件を満たす制御点から所定の範囲内にある制御点を除外するように、前記閉領域の形状を更新する更新範囲を決定する更新範囲決定手段と、
前記加重和が小さくなるように、前記閉領域の前記更新範囲内の形状を更新する閉領域更新手段と、
を備えることを特徴とする画像処理装置。
【請求項２】
前記エネルギー算出手段は、前記勾配強度が前記所定の値以上である画素が前記閉領域内部に多く存在するほど大きい値を示すエッジ内包エネルギーの値を算出するエッジ内包エネルギー算出手段を備えることを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記エッジ内包エネルギー算出手段は、前記閉領域内部の前記勾配強度をもとに閉領域内勾配強度を算出する閉領域勾配強度算出手段を備え、前記閉領域内勾配強度が大きいほど大きい値を示すエッジ内包エネルギーの値を算出することを特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記エッジ内包エネルギー算出手段は、前記勾配強度が前記所定の値以上である画素をエッジとして抽出するエッジ抽出手段を備え、前記閉領域内部の前記エッジをもとに前記エッジ内包エネルギーの値を算出することを特徴とする請求項２に記載の画像処理装置。
【請求項５】
前記エッジ内包エネルギー算出手段は、
前記エッジの屈曲点を検出する屈曲点検出手段と、
前記エッジの端点を検出する端点検出手段と、
を備え、前記閉領域内における前記屈曲点および前記端点の内包状況をもとに前記エッジ内包エネルギーの値を算出することを特徴とする請求項４に記載の画像処理装置。
【請求項６】
前記閉領域は複数の制御点を結んだものとして設定され、該制御点が移動されて前記形状の更新がされていくものであり、
前記エッジ内包エネルギー算出手段は、前記制御点から前記屈曲点および前記端点へ向かうベクトルの外積を算出する外積算出手段を備え、前記外積の値をもとに前記エッジ内包エネルギーの値を算出することを特徴とする請求項５に記載の画像処理装置。
【請求項７】
前記エッジ内包エネルギー算出手段は、前記閉領域内部の前記勾配強度の前記形状の更新前後での増加率を算出する増加率算出手段を備え、前記増加率をもとに前記エッジ内包エネルギーの値を算出することを特徴とする請求項３に記載の画像処理装置。
【請求項８】
前記エネルギー算出手段は、前記閉領域の境界が内側に屈曲するほど大きな値を示す屈曲エネルギーの値を算出する屈曲エネルギー算出手段を備えることを特徴とする請求項１に記載の画像処理装置。
【請求項９】
前記閉領域は複数の制御点を結んだものとして設定され、該制御点が移動されて前記形状の更新がされていくものであり、
前記屈曲エネルギー算出手段は、前記制御点毎に、隣接する制御点へ向かうベクトルの外積をもとに外積エネルギーの値を算出する外積エネルギー算出手段を備え、前記外積エネルギーの値を前記屈曲エネルギーの値とすることを特徴とする請求項８に記載の画像処理装置。
【請求項１０】
前記閉領域は複数の制御点を結んだものとして設定され、該制御点が移動されて前記形状の更新がされていくものであり、
前記屈曲エネルギー算出手段は、前記制御点毎に、所定の距離以上離れた制御点へ向かうベクトルの外積をもとに大局外積エネルギーの値を算出する大局外積エネルギー算出手段を備え、前記大局外積エネルギーの値を前記屈曲エネルギーの値とすることを特徴とする請求項８に記載の画像処理装置。
【請求項１１】
前記閉領域は複数の制御点を結んだものとして設定され、該制御点が移動されて前記形状の更新がされていくものであり、
前記屈曲エネルギー算出手段は、前記制御点毎に、処理対象の制御点から所定の距離以上離れた制御点へ向かうベクトルの外積をもとに外積エネルギーの値を算出し、この外積エネルギーの値が所定の閾値より小さい場合に前記所定の距離離れた制御点よりも前記処理対象の制御点に近い制御点へ向かうベクトルの外積をもとに外積エネルギーの値を算出する処理を繰り返し行う多重外積エネルギー算出手段を備え、前記多重外積エネルギー算出手段が算出した外積エネルギーの値を前記屈曲エネルギーの値とすることを特徴とする請求項８に記載の画像処理装置。
【請求項１２】
前記閉領域は複数の制御点を結んだものとして設定され、該制御点が移動されて前記形状の更新がされていくものであり、
前記屈曲エネルギー算出手段は、前記制御点毎に、他の制御点との間を結ぶベクトルの前記閉領域内における内包状況をもとに凸状エネルギーの値を算出する凸状エネルギー算出手段を備え、前記凸状エネルギーの値を前記屈曲エネルギーの値とすることを特徴とする請求項８に記載の画像処理装置。
【請求項１３】
前記閉領域は複数の制御点を結んだものとして設定され、該制御点が移動されて前記形状の更新がされていくものであり、
前記更新範囲決定手段は、制御点毎に、前記閉領域の外形によって定まるエネルギーおよび前記閉領域における前記勾配強度によって定まるエネルギーのうちの少なくともいずれか１つの値が所定の閾値以上である制御点との距離を算出する制御点距離算出手段を備え、前記距離をもとに前記複数の制御点の中から次回移動させる制御点を選出することで前記更新範囲を決定することを特徴とする請求項１に記載の画像処理装置。
【請求項１４】
前記更新範囲決定手段は、前記閉領域の形状情報を算出する形状情報算出手段を備え、前記閉領域の形状情報をもとに前記更新範囲を決定することを特徴とする請求項１に記載の画像処理装置。
【請求項１５】
前記形状情報算出手段は、前記閉領域の面積を算出する面積算出手段を備えることを特徴とする請求項１４に記載の画像処理装置。
【請求項１６】
前記形状情報算出手段は、前記閉領域の周囲長を算出する周囲長算出手段を備えることを特徴とする請求項１４に記載の画像処理装置。
【請求項１７】
前記形状情報算出手段は、前記閉領域の曲率を算出する曲率算出手段を備えることを特徴とする請求項１４に記載の画像処理装置。
【請求項１８】
前記更新範囲決定手段は、
少なくとも前記勾配強度が所定の閾値以上である画素をエッジとして抽出するエッジ情報検出手段を備え、
前記エッジをもとに前記更新範囲を決定することを特徴とする請求項１に記載の画像処理装置。
【請求項１９】
前記エッジ情報検出手段は、前記エッジの端点および前記エッジの屈曲点を検出し、
前記エッジの端点または前記エッジの屈曲点からの距離を算出する端点屈曲点距離算出手段を備え、前記エッジの端点または前記エッジの屈曲点からの距離をもとに前記更新範囲を決定することを特徴とする請求項１８に記載の画像処理装置。
【請求項２０】
前記更新範囲決定手段は、前記エッジからの距離を算出するエッジ距離算出手段を備え、前記エッジからの距離をもとに前記更新範囲を決定することを特徴とする請求項１８に記載の画像処理装置。
【請求項２１】
前記閉領域抽出手段が抽出した前記閉領域を前記条件を満たすように統合する領域統合手段をさらに備えることを特徴とする請求項１に記載の画像処理装置。
【請求項２２】
前記領域統合手段は、
前記閉領域のうち、一部が重なり合った閉領域を統合する統合手段と、
前記統合後の閉領域について前記複数のエネルギーの値を算出する統合後エネルギー算出手段と、
を備え、前記統合後エネルギー算出手段が算出した前記複数のエネルギーの値をもとに前記統合の許否を判定することを特徴とする請求項２１に記載の画像処理装置。
【請求項２３】
生体内管腔を撮像した生体内管腔画像から異常部を検出する画像処理装置の作動方法であって、
演算部が、前記生体内管腔画像をもとに、各画素の画素値の勾配強度を算出する勾配強度算出工程と、
前記演算部が、前記勾配強度が所定の値以上である画素を領域の内部に含まず、かつ、領域の境界が該領域の内側に所定の曲率以上で屈曲しないことを条件として該条件を満たす閉領域を抽出する閉領域抽出工程と、
前記演算部が、前記閉領域の内側から異常部を検出する異常部検出工程と、
を含み、
前記閉領域抽出工程は、
前記閉領域の初期形状を設定する初期閉領域設定工程と、
少なくとも前記閉領域の外形によって定まるエネルギーおよび前記閉領域における前記勾配強度によって定まるエネルギーを含む複数のエネルギーの値を算出するエネルギー算出工程と、
前記複数のエネルギーの加重和を算出するエネルギー加重和算出工程と、
前記閉領域の外形によって定まるエネルギーおよび前記閉領域における前記勾配強度によって定まるエネルギーのうちのいずれか１つの値が所定の条件を満たす制御点から所定の範囲内にある制御点を除外するように、前記閉領域の形状を更新する更新範囲を決定する更新範囲決定工程と、
前記加重和が小さくなるように、前記閉領域の前記更新範囲内の形状を更新する閉領域更新工程と、
を含むことを特徴とする画像処理装置の作動方法。
【請求項２４】
生体内管腔を撮像した生体内管腔画像から異常部を検出する画像処理プログラムであって、
前記生体内管腔画像をもとに、各画素の画素値の勾配強度を算出する勾配強度算出ステップと、
前記勾配強度が所定の値以上である画素を領域の内部に含まず、かつ、領域の境界が該領域の内側に所定の曲率以上で屈曲しないことを条件として該条件を満たす閉領域を抽出する閉領域抽出ステップと、
前記閉領域の内側から異常部を検出する異常部検出ステップと、
をコンピュータに実行させ、
前記閉領域抽出ステップは、
前記閉領域の初期形状を設定する初期閉領域設定ステップと、
少なくとも前記閉領域の外形によって定まるエネルギーおよび前記閉領域における前記勾配強度によって定まるエネルギーを含む複数のエネルギーの値を算出するエネルギー算出ステップと、
前記複数のエネルギーの加重和を算出するエネルギー加重和算出ステップと、
前記閉領域の外形によって定まるエネルギーおよび前記閉領域における前記勾配強度によって定まるエネルギーのうちのいずれか１つの値が所定の条件を満たす制御点から所定の範囲内にある制御点を除外するように、前記閉領域の形状を更新する更新範囲を決定する更新範囲決定ステップと、
前記加重和が小さくなるように、前記閉領域の前記更新範囲内の形状を更新する閉領域更新ステップと、
を前記コンピュータに実行させることを特徴とする画像処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、生体内管腔を撮像した生体内管腔画像を処理する画像処理装置、画像処理方法、および画像処理プログラムに関するものである。
【背景技術】
【０００２】
従来から、患者等の被検者の体内に導入されて体内管腔内を観察する医用観察装置として、内視鏡が広く普及している。また、近年では、カプセル型の筐体内部に撮像装置やこの撮像装置によって撮像された画像データを体外に無線送信する通信装置等を備えた飲み込み型の内視鏡（カプセル内視鏡）が開発されている。これらの医用観察装置によって撮像された体内管腔内の画像（生体内管腔画像）の観察・診断は、多くの経験を必要とするため、医師による診断を補助する医療診断支援機能が望まれている。この機能を実現する画像認識技術の１つとして、生体内管腔画像から病変等の異常部を自動的に検出して医師等に提示する技術が提案されている。
【０００３】
例えば、特許文献１には、形状依存性フィルタを用い、粗大構造や線構造の影響を受けることなく乳癌の癌化部分の特徴の１つである微小石灰化陰影の候補を安定的に検出する技術が開示されている。この特許文献１では、想定される微小石灰化陰影の形状をもとに、撮影条件や読取り条件、画像コントラスト、微小石灰化陰影のサイズといった各種条件、あるいはこれらを組み合わせた条件等に応じてフィルタ特性を最適化した第２の形状依存性フィルタを事前に準備しておく。そして、先ず、モルフォロジーフィルタ（例えば非特許文献１，２を参照）である第１の形状依存性フィルタを用いて画像中の直線構造を除去することで、微細構造部分を表す微細構造画像を生成する。その後、微細構造画像に対して準備しておいた第２の形状依存性フィルタを用いた強調処理を施すことにより、周囲（第１の形状依存性フィルタで除ききれなかった粗大構造部分や線構造部分等を含む微小石灰化陰影候補以外の部分）と比較して相対的に微小石灰化陰影候補のみを強調した強調処理済画像を生成している。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００２−９９８９６号公報
【非特許文献】
【０００５】
【非特許文献１】小畑他，「多重構造要素を用いたモルフォロジーフィルタによる微小石灰化像の抽出」，電子情報通信学会論文誌，D-II，Vol.J75-D-II，No.7，P1170〜1176，July  1992
【非特許文献２】小畑他，「モルフォロジーの基礎とそのマンモグラム処理への応用」，MEDICAL  IMAGING  TECHNOLOGY，Vol.12，No.1，January  1994
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ところで、上記した内視鏡やカプセル内視鏡等の医用観察装置によって撮像される生体内管腔画像には、例えば消化管内壁の粘膜構造の折りたたみやうねりによって発生する溝や、粘膜ひだの輪郭等、曲率が大きく折れ曲がったような箇所が多く存在する。このため、特許文献１を生体内管腔画像に適用し、病変等の異常部を検出しようとすると、直線構造を除去する第１の形状依存性フィルタ（モルフォロジーフィルタ）では、フィルタのサイズに依存して、前述のような生体組織が形成する溝位置や輪郭部分等のように、曲率が大きく折れ曲がったような箇所が微細構造画像に残ってしまう。また、特許文献１の第２の形状依存性フィルタは特定の形状（微小石灰化陰影の形状）を強調するためのものであるが、生体内管腔画像に映る異常部は決まった形状を持たない。このため、特許文献１のように、異常部の形状を事前に想定し、第１の形状依存性フィルタで残る構造、例えば前述のような曲率が大きく折れ曲がったような箇所と異常部とを区別するための最適な形状依存性フィルタを設計するのは難しい。したがって、２種類の形状依存性フィルタを組み合わせても、異常部を溝位置や輪郭部分と区別して検出するのは困難であった。
【０００７】
本発明は、上記に鑑み為されたものであって、生体内管腔画像から異常部を精度良く検出することができる画像処理装置、画像処理方法、および画像処理プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記した課題を解決し、目的を達成するための、本発明のある態様にかかる画像処理装置は、生体内管腔を撮像した生体内管腔画像から異常部を検出する画像処理装置であって、前記生体内管腔画像をもとに、各画素の画素値の勾配強度を算出する勾配強度算出手段と、前記勾配強度が所定の値以上である画素を領域の内部に含まず、かつ、領域の境界が該領域の内側に所定の曲率以上で屈曲しないことを条件として該条件を満たす閉領域を抽出する閉領域抽出手段と、前記閉領域の内側から異常部を検出する異常部検出手段と、を備え、前記閉領域抽出手段は、前記閉領域の初期形状を設定する初期閉領域設定手段と、少なくとも前記閉領域の外形によって定まるエネルギーおよび前記閉領域における前記勾配強度によって定まるエネルギーを含む複数のエネルギーの値を算出するエネルギー算出手段と、前記複数のエネルギーの加重和を算出するエネルギー加重和算出手段と、前記複数のエネルギーのうちのいずれか１つの値をもとに前記閉領域の形状を更新する更新範囲を決定する更新範囲決定手段と、前記加重和をもとに、前記閉領域の前記更新範囲内の形状を更新する閉領域更新手段と、を備えることを特徴とする。
【０００９】
上記態様の画像処理装置によれば、閉領域の外形によって定まるエネルギーおよび閉領域における前記勾配強度によって定まるエネルギーを含む複数のエネルギーのうちのいずれか１つの値をもとに閉領域の形状を更新する更新範囲を決定することができる。したがって、勾配強度が所定の値以上である画素を領域の内部に含まず、かつ、領域の境界がこの領域の内側に所定の曲率以上で屈曲しない条件を満たす閉領域を適切に抽出することができ、抽出した閉領域内部の異常部を検出することができる。これによれば、溝位置や輪郭部分を異常部として誤検出する事態を抑制し、生体内管腔画像から異常部を精度良く検出することができるという効果を奏する。
【００１０】
また、本発明の別の態様にかかる画像処理方法は、生体内管腔を撮像した生体内管腔画像から異常部を検出する画像処理方法であって、前記生体内管腔画像をもとに、各画素の画素値の勾配強度を算出する勾配強度算出工程と、前記勾配強度が所定の値以上である画素を領域の内部に含まず、かつ、領域の境界が該領域の内側に所定の曲率以上で屈曲しないことを条件として該条件を満たす閉領域を抽出する閉領域抽出工程と、前記閉領域の内側から異常部を検出する異常部検出工程と、を含み、前記閉領域抽出工程は、前記閉領域の初期形状を設定する初期閉領域設定工程と、少なくとも前記閉領域の外形によって定まるエネルギーおよび前記閉領域における前記勾配強度によって定まるエネルギーを含む複数のエネルギーの値を算出するエネルギー算出工程と、前記複数のエネルギーの加重和を算出するエネルギー加重和算出工程と、前記複数のエネルギーのうちのいずれか１つの値をもとに前記閉領域の形状を更新する更新範囲を決定する更新範囲決定工程と、前記加重和をもとに、前記閉領域の前記更新範囲内の形状を更新する閉領域更新工程と、を含むことを特徴とする。
【００１１】
また、本発明の別の態様にかかる画像処理プログラムは、生体内管腔を撮像した生体内管腔画像から異常部を検出する画像処理プログラムであって、前記生体内管腔画像をもとに、各画素の画素値の勾配強度を算出する勾配強度算出ステップと、前記勾配強度が所定の値以上である画素を領域の内部に含まず、かつ、領域の境界が該領域の内側に所定の曲率以上で屈曲しないことを条件として該条件を満たす閉領域を抽出する閉領域抽出ステップと、前記閉領域の内側から異常部を検出する異常部検出ステップと、をコンピュータに実行させ、前記閉領域抽出ステップは、前記閉領域の初期形状を設定する初期閉領域設定ステップと、少なくとも前記閉領域の外形によって定まるエネルギーおよび前記閉領域における前記勾配強度によって定まるエネルギーを含む複数のエネルギーの値を算出するエネルギー算出ステップと、前記複数のエネルギーの加重和を算出するエネルギー加重和算出ステップと、前記複数のエネルギーのうちのいずれか１つの値をもとに前記閉領域の形状を更新する更新範囲を決定する更新範囲決定ステップと、前記加重和をもとに、前記閉領域の前記更新範囲内の形状を更新する閉領域更新ステップと、を前記コンピュータに実行させることを特徴とする。
【発明の効果】
【００１２】
本発明によれば、生体内管腔画像から異常部を精度良く検出することができるという効果を奏する。
【図面の簡単な説明】
【００１３】
【図１】図１は、実施の形態１の画像処理装置の機能構成を説明するブロック図である。
【図２】図２は、閉領域の抽出原理を説明する説明図である。
【図３】図３は、内部に溝位置等であるエッジを含む閉領域を示す図である。
【図４】図４は、図３中に一点鎖線で示すライン上の画素値の変化曲線を示す図である。
【図５】図５は、輪郭部分等である大きく屈曲するエッジを境界に含む閉領域を示す図である。
【図６】図６は、図５中に一点鎖線で示すライン上の画素値の変化曲線を示す図である。
【図７】図７は、実施の形態１の画像処理装置が行う処理手順を示す全体フローチャートである。
【図８】図８は、実施の形態１における閉領域抽出処理の詳細な処理手順を示すフローチャートである。
【図９】図９は、実施の形態１におけるエネルギー算出処理の詳細な処理手順を示すフローチャートである。
【図１０】図１０は、実施の形態１におけるエッジ内包判定処理の詳細な処理手順を示すフローチャートである。
【図１１】図１１は、実施の形態１におけるエッジ内包判定処理の原理を説明する説明図である。
【図１２】図１２は、エッジ内包エネルギーを説明する説明図である。
【図１３】図１３は、閉領域統合処理の詳細な処理手順を示すフローチャートである。
【図１４】図１４は、異常部検出処理の詳細な処理手順を示すフローチャートである。
【図１５】図１５は、実施の形態２の画像処理装置の機能構成を説明するブロック図である。
【図１６】図１６は、実施の形態２における閉領域抽出処理の詳細な処理手順を示すフローチャートである。
【図１７】図１７は、エッジ抽出処理の詳細な処理手順を示すフローチャートである。
【図１８】図１８は、実施の形態２におけるエネルギー算出処理の詳細な処理手順を示すフローチャートである。
【図１９】図１９は、実施の形態２におけるエッジ内包判定処理の詳細な処理手順を示すフローチャートである。
【図２０】図２０は、実施の形態２における更新範囲決定処理の詳細な処理手順を示すフローチャートである。
【図２１】図２１は、実施の形態３の画像処理装置の機能構成を説明するブロック図である。
【図２２】図２２は、実施の形態３の画像処理装置が行う処理手順を示す全体フローチャートである。
【図２３】図２３は、実施の形態３における閉領域抽出処理の詳細な処理手順を示すフローチャートである。
【図２４】図２４は、実施の形態３におけるエネルギー算出処理の詳細な処理手順を示すフローチャートである。
【図２５】図２５は、外積エネルギーを説明する説明図である。
【図２６】図２６は、実施の形態３における更新範囲決定処理の詳細な処理手順を示すフローチャートである。
【図２７】図２７は、実施の形態４の画像処理装置の機能構成を説明するブロック図である。
【図２８】図２８は、実施の形態４における閉領域抽出処理の詳細な処理手順を示すフローチャートである。
【図２９】図２９は、実施の形態４におけるエネルギー算出処理の詳細な処理手順を示すフローチャートである。
【図３０】図３０は、実施の形態５の画像処理装置の機能構成を説明するブロック図である。
【図３１】図３１は、屈曲エネルギーを説明する説明図である。
【図３２】図３２は、実施の形態５における閉領域抽出処理の詳細な処理手順を示すフローチャートである。
【図３３】図３３は、実施の形態５におけるエネルギー算出処理の詳細な処理手順を示すフローチャートである。
【図３４】図３４は、実施の形態６の画像処理装置の機能構成を説明するブロック図である。
【図３５】図３５は、凸状エネルギーを説明する説明図である。
【図３６】図３６は、実施の形態６におけるエネルギー算出の詳細な処理手順を示すフローチャートである。
【図３７】図３７は、実施の形態６における屈曲エネルギー算出処理の詳細な処理手順を示すフローチャートである。
【図３８】図３８は、本発明を適用したコンピューターシステムの構成を示すシステム構成図である。
【図３９】図３９は、図３８のコンピューターシステムを構成する本体部の構成を示すブロック図である。
【発明を実施するための形態】
【００１４】
以下、図面を参照し、本発明の好適な実施の形態について説明する。なお、この実施の形態によって本発明が限定されるものではない。また、各図面の記載において、同一部分には同一の符号を付して示している。
【００１５】
本実施の形態の画像処理装置は、例えば内視鏡やカプセル内視鏡等の医用観察装置が被検者の体内の消化管等の生体内管腔を撮像した画像（生体内管腔画像）を処理し、生体内管腔画像から例えば病変や出血部位等の異常部を検出する処理を行うものである。上記したように、生体内管腔画像には、粘膜構造等の生体組織が形成する溝の陰影や輪郭が映る。本実施の形態では、この溝位置や輪郭部分を異常部として誤検出する事態を抑制するため、生体内管腔画像中においてこれら溝位置や輪郭部分を内部や境界に含まないように閉領域を抽出し、抽出した閉領域毎に異常部を検出する。なお、本実施の形態において、生体内管腔画像は、例えば、画素毎にＲ（赤），Ｇ（緑），Ｂ（青）の各波長成分に対する画素値を持つカラー画像である。
【００１６】
（実施の形態１）
先ず、実施の形態１の画像処理装置について説明する。図１は、実施の形態１の画像処理装置１の機能構成を説明するブロック図である。実施の形態１の画像処理装置１は、図１に示すように、画像取得部１１と、入力部１２と、表示部１３と、記録部１４と、演算部２０と、画像処理装置１全体の動作を制御する制御部１５とを備える。
【００１７】
画像取得部１１は、医用観察装置によって撮像された生体内管腔画像の画像データを取得するためのものであり、この画像取得部１１によって取得された生体内管腔画像の画像データは記録部１４に記録され、演算部２０によって処理された後、必要に応じて適宜表示部１３に表示される。画像取得部１１は、例えば医用観察装置との間の画像データの受け渡しに可搬型の記録媒体が使用される場合であれば、この記録媒体を着脱自在に装着して保存された生体内管腔画像の画像データを読み出すリーダ装置で構成される。また、医用観察装置によって撮像された生体内管腔画像の画像データを保存しておくサーバを適所に設置し、このサーバから取得する構成の場合には、画像取得部１１を、サーバと接続するための通信装置等で構成する。そして、この画像取得部１１を介してサーバとデータ通信を行い、生体内管腔画像の画像データを取得する。また、この他、医用観察装置から画像データをケーブルを介して取得する構成の場合には、画像取得部１１を、画像データが入力されるインターフェース装置等で構成してもよい。
【００１８】
入力部１２は、例えばキーボードやマウス、タッチパネル、各種スイッチ等によって実現されるものであり、入力信号を制御部１５に出力する。表示部１３は、ＬＣＤやＥＬディスプレイ等の表示装置によって実現されるものであり、制御部１５の制御のもと、生体内管腔画像を含む各種画面を表示する。
【００１９】
記録部１４は、更新記録可能なフラッシュメモリ等のＲＯＭやＲＡＭといった各種ＩＣメモリ、内蔵或いはデータ通信端子で接続されたハードディスク、ＣＤ−ＲＯＭ等の情報記録媒体およびその読取装置等によって実現されるものであり、画像処理装置１を動作させ、この画像処理装置１が備える種々の機能を実現するためのプログラムや、このプログラムの実行中に使用されるデータ等が予めあるいは処理の都度一時的に記録される。この記録部１４には、画像取得部１１によって取得された生体内管腔画像の画像データが記録される。また、記録部１４には、実施の形態１の処理を実現して生体内管腔画像から異常部を検出するための画像処理プログラム１４１が記録される。
【００２０】
演算部２０は、ＣＰＵ等のハードウェアによって実現され、生体内管腔画像を処理して異常部を検出するための種々の演算処理を行う。この演算部２０は、勾配強度算出手段としての勾配強度算出部２１と、閉領域抽出手段としての閉領域抽出部２２と、領域統合手段としての領域統合部３２と、異常部検出手段としての異常部検出部３３とを含む。
【００２１】
勾配強度算出部２１は、生体内管腔画像の各画素の画素値をもとに、各画素の画素値の勾配強度を算出する。
【００２２】
閉領域抽出部２２は、勾配強度が予め設定される所定の値以上である画素を領域の内部に含まず、かつ、領域の境界がこの領域の内側に所定の曲率以上で屈曲しないことを条件とし、生体内管腔画像から前述の条件を満たす閉領域を抽出する。この閉領域抽出部２２は、初期閉領域設定手段としての初期閉領域設定部２３と、エネルギー算出手段としてのエネルギー算出部２４と、エネルギー加重和算出手段としてのエネルギー加重和算出部２７と、閉領域更新手段としての閉領域更新部２８とを備え、動的輪郭抽出法（参考：ＣＧ−ＡＲＴＳ協会，ディジタル画像処理，Ｐ１９６〜Ｐ２００，領域分割処理）を用いて複数のエネルギー、例えば後述するエッジ内包エネルギー、内部エネルギー、画像エネルギーおよび外部エネルギーの４つのエネルギーの加重和の最小値を求めることで、閉領域を抽出する。
【００２３】
初期閉領域設定部２３は、閉領域の初期形状である初期閉領域を設定する。
【００２４】
エネルギー算出部２４は、少なくとも閉領域の外形によって定まるエネルギーおよび閉領域の画素の勾配強度によって定まるエネルギーを含む複数のエネルギーの値を算出する。このエネルギー算出部２４は、エッジ内包エネルギー算出手段としてのエッジ内包エネルギー算出部２５を備える。エッジ内包エネルギー算出部２５は、閉領域の画素の勾配強度によって定まるエネルギーに相当するエッジ内包エネルギーの値を算出する。ここで、エッジ内包エネルギーは、閉領域内の勾配強度が大きいほど大きい値を示すエネルギーである。このエッジ内包エネルギー算出部２５は、閉領域勾配強度算出手段としての閉領域勾配強度算出部２５１と、増加率算出手段としての増加率算出部２５２とを備える。閉領域勾配強度算出部２５１は、閉領域の内部における勾配強度をもとに閉領域内勾配強度を算出する。増加率算出部２５２は、形状の更新前後での閉領域の内部の勾配強度の増加率を算出する。
【００２５】
また、エネルギー算出部２４は、エッジ内包エネルギー算出部２５が算出するエッジ内包エネルギーとは別に、閉領域の外形によって定まるエネルギーに相当する内部エネルギーおよび外部エネルギーと、閉領域の画素の勾配強度によって定まるエネルギーに相当する画像エネルギーの３つのエネルギーの各値を算出する。ここで、内部エネルギーは、閉領域の境界の滑らかさを表し、閉領域の形状が滑らかなほど小さい値を示すエネルギーである。画像エネルギーは、閉領域の境界における勾配強度の値が大きいほど小さい値を示すエネルギーである。外部エネルギーは、閉領域の大きさが大きいほど小さい値を示すエネルギーである。
【００２６】
エネルギー加重和算出部２７は、エネルギー算出部２４が算出した複数のエネルギーの加重和を算出する。実施の形態１では、エネルギー加重和算出部２７は、エッジ内包エネルギー、内部エネルギー、画像エネルギーおよび外部エネルギーの４つのエネルギーの加重和を算出する。なお、必ずしもこれら４つのエネルギーの加重和を算出する必要はなく、これら４つの中から２つ以上のエネルギーを選んでその加重和を算出することとしてもよい。
【００２７】
閉領域更新部２８は、エネルギー加重和算出部２７が算出した４つのエネルギーの加重和が小さくなる方向へ閉領域の形状を更新する。この閉領域更新部２８は、更新範囲決定手段としての更新範囲決定部２９を備える。更新範囲決定部２９は、閉領域の形状を更新する更新範囲を決定する機能部であり、制御点距離算出手段としての制御点距離算出部２９１を備える。後述するように、初期閉領域は、複数の制御点を結んだものとして設定され、各制御点が移動されることで変形（形状が更新）されていくものである。ここで、制御点とは、閉領域の境界に位置する座標点のことをいう。制御点距離算出部２９１は、前述の制御点毎に、形状を更新した結果エッジ内包エネルギーの値が所定の閾値以上となった制御点との距離を算出する。なお、ここでは、エッジ内包エネルギーの値を用いることとしたが、他のエネルギーの値を用いることとしてもよい。
【００２８】
領域統合部３２は、閉領域抽出部２２が抽出した閉領域の統合を行う。このとき、領域統合部３２は、勾配強度が所定の値以上である画素を領域の内部に含まず、かつ、領域の境界がこの領域の内側に所定の曲率以上で屈曲しない条件を満たすように閉領域を統合する。この領域統合部３２は、統合手段としての統合部３２１と、統合後エネルギー算出手段としての統合後エネルギー算出部３２２とを備える。統合部３２１は、統合対象の閉領域を選出し、選出した閉領域を１つの領域に統合する。統合後エネルギー算出部３２２は、統合部３２１による統合後の閉領域についてエッジ内包エネルギー、内部エネルギー、画像エネルギーおよび外部エネルギーの４つのエネルギーの加重和を算出する。
【００２９】
異常部検出部３３は、閉領域毎にその境界の内側（内部）の異常部を検出する。
【００３０】
制御部１５は、ＣＰＵ等のハードウェアによって実現される。この制御部１５は、画像取得部１１によって取得された画像データや入力部１２から入力される入力信号、記録部１４に記録されるプログラムやデータ等をもとに画像処理装置１を構成する各部への指示やデータの転送等を行い、画像処理装置１全体の動作を統括的に制御する。
【００３１】
ここで、実施の形態１において閉領域抽出部２２が行う閉領域の抽出原理について説明する。図２は、閉領域の抽出原理を説明する説明図であり、閉領域抽出部２２において初期閉領域設定部２３が設定する初期閉領域Ｅ１１を模式的に示している。図２に示すように、初期閉領域Ｅ１１は、その境界上の画素に複数の制御点Ｐｃを配置し、これら制御点Ｐｃを結んだものとして設定される。なお、図２では、初期閉領域Ｅ１１を円形状として示しているが、これに限定されるものではない。また、初期閉領域Ｅ１１の大きさや、配置する制御点Ｐｃの数についても、適宜設定してよい。例えば、初期閉領域のサイズをもとに決定する。そして、各制御点Ｐｃの位置やその位置における勾配強度、重心（中心）Ｐ１からの各制御点Ｐｃの距離、内部の画素の勾配強度等から上記したエッジ内包エネルギー、内部エネルギー、画像エネルギーおよび外部エネルギーを制御点Ｐｃ毎に算出し、これら４つのエネルギーの加重和が最小となるように制御点Ｐｃを移動させることで初期閉領域Ｅ１１を領域が広がる方向に変形させていき、閉領域を抽出する。
【００３２】
このようにして閉領域を抽出したならば、閉領域内部の異常部を検出する。本例では、詳細を後述するように、モルフォロジー処理、例えば球形の構造要素を用いた３次元モルフォロジー処理（濃淡モルフォロジー）を行って異常部を検出する。ここで、モルフォロジー処理には、オープニング（Opening）処理（参考：ＣＧ−ＡＲＴＳ協会，ディジタル画像処理，Ｐ１７９〜Ｐ１８０，収縮・膨張処理）とクロージング（Closing）処理（参考：ＣＧ−ＡＲＴＳ協会，ディジタル画像処理，Ｐ１７９〜Ｐ１８０，収縮・膨張処理）とがある。オープニング処理は、画素値を高度とみなした３次元空間において、構造要素と呼ばれる基準図形（本例では球形）を対象領域の画素値の小さい方（下側）から外接させて移動させた際に構造要素の外周の最大値が通過する軌跡（面）を算出する処理である。一方、クロージング処理は、同様の３次元空間において、構造要素を対象領域の画素値の大きい方（上側）から外接させて移動させた際に構造要素の外周の最小値が通過する軌跡（面）を算出する処理である。そして、オープニング処理を用いた場合には、得られた軌跡上の値を基準値として用い、実際の画素値との差分が大きい画素を異常部として検出する。クロージング処理を用いた場合も同様に、得られた軌跡上の基準値と実際の画素値との差分が大きい画素を異常部として検出する。
【００３３】
ところで、前述のオープニング処理やクロージング処理を含むモルフォロジー処理を適用して閉領域毎に異常部を検出する場合、溝位置を閉領域の内部に含むと、この溝位置を異常部として誤検出する場合があった。図３は、閉領域の一例を示す模式図であり、内部に溝位置等であるエッジ５１を含むように作成された閉領域を示している。また、図４は、横軸を図３中に一点鎖線で示すライン（エッジ５１を跨ぐライン）上の境界画素Ｐ３１，Ｐ３２間の画素位置とし、縦軸を該当する各画素の画素値として画素値の変化曲線Ｌ３１を示したものである。エッジ５１を跨ぐライン上では、図４に示すように、その画素値の変化がエッジ位置で局所的に大きく窪む。このため、内部にエッジ５１を含む閉領域に対してモルフォロジー処理（クロージング処理）を行い、構造要素Ｆ３を上側から外接させて移動させた際（矢印Ａ３１）、前述の窪んだ部分の幅に対して構造要素Ｆ３が大きいとこの部分に構造要素Ｆ３が入り込まないため、図４中に一点鎖線で示すような軌跡Ｌ３２（実際には面）が得られる。このように、閉領域の内部に溝位置等であるエッジ５１を含むと、構造要素Ｆ３の形状に依存して、得られる基準値が実際の画素値から大きく逸脱する。一方で、上記したように、異常部の検出は、得られた軌跡Ｌ３２上の値を基準値として用い、各画素の画素値を基準値と比較することで差の大きい画素を異常部として検出する。したがって、溝位置等であるエッジを閉領域の内部に含むような閉領域を作成してしまうと、矢印Ａ３２で示す差分によってエッジ５１の部分が異常部として誤検出されてしまう場合がある。
【００３４】
同様に、所定の曲率以上で内側に屈曲する輪郭部分を閉領域の境界が含むと、この輪郭部分を異常部として誤検出する場合があった。図５は、閉領域の他の例を示す模式図であり、輪郭部分等である所定の曲率以上で内側に屈曲するエッジ５２を境界に含むように作成された閉領域を示している。また、図６は、横軸を図５中に一点鎖線で示すライン（エッジ５２の屈曲部分を跨ぐライン）上の境界画素Ｐ４１，Ｐ４４間の画素位置とし、縦軸を閉領域の内部である境界画素Ｐ４１，Ｐ４２間および境界画素Ｐ４３，Ｐ４４間の各画素の画素値として画素値の変化曲線Ｌ４１を示したものである。エッジ５２の屈曲部分を跨ぐライン上では、図６に示すように、その画素値の変化が屈曲位置で途切れる。ここで、境界が内側に大きく屈曲するエッジ５２を含む閉領域に対してモルフォロジー処理（クロージング処理）を行い、構造要素Ｆ４を上側から外接させて移動させた際（矢印Ａ４１）、前述の途切れた部分の間隔に対して構造要素Ｆ４が大きいとこの部分に構造要素Ｆ４が入り込まないため、図６中に一点鎖線で示すような軌跡Ｌ４２（実際には面）が得られる。このように、閉領域の境界が輪郭部分等である内側に大きく屈曲するエッジを含むと、閉領域の内部に溝位置等であるエッジを含む場合と同様に、構造要素の形状に依存して得られる基準値が実際の画素値から大きく逸脱してしまい、矢印Ａ４２で示す差分によって輪郭部分が異常部として誤検出されてしまう場合がある。
【００３５】
以上のような事態を抑制するため、実施の形態１では、閉領域抽出部２２は、勾配強度が所定の値以上である画素（エッジ部分の画素）を領域の内部に含まず、かつ、領域の境界が内側に所定の曲率以上で屈曲しないことを条件とした閉領域の抽出を行う。これにより、モルフォロジー処理を適用して行う後段の異常部検出において、基準値を適正に得ることが可能となる。
【００３６】
次に、実施の形態１の画像処理装置１が行う具体的な処理手順について説明する。図７は、実施の形態１の画像処理装置１が行う処理手順を示す全体フローチャートである。ここで説明する処理は、演算部２０が記録部１４に記録された画像処理プログラム１４１を実行することにより実現される。
【００３７】
図７に示すように、先ず演算部２０は、処理対象の生体内管腔画像を取得する（ステップａ１）。ここでの処理によって、演算部２０は、画像取得部１１によって取得され、記録部１４に記録された処理対象の生体内管腔画像を読み出して取得する。
【００３８】
続いて、勾配強度算出部２１が、生体内管腔画像の各画素の例えばＧ値をもとに画素毎に勾配強度を算出する（ステップａ３）。これは、例えばソーベル（Sobel）フィルタ等の１次微分フィルタやラプラシアン（Laplacian）フィルタ等の２次微分フィルタを用いた公知のエッジ抽出処理（参考：ＣＧ−ＡＲＴＳ協会，ディジタル画像処理，Ｐ１１４〜Ｐ１２１，エッジ抽出）等を適用することで実現できる。Ｇ値を用いるのは、ヘモグロビンの吸収波長帯域に近く、感度も得易いことから、生体内管腔画像の構造をよく表すためである。なお、ここでは、各画素のＧ値をもとに勾配強度を算出することとしたが、各画素の輝度値を算出し、輝度値をもとに各画素の勾配強度を算出することとしてもよい。
【００３９】
続いて、初期閉領域設定部２３が、閉領域の初期形状（初期閉領域）を設定する（ステップａ５）。例えば、初期閉領域設定部２３は、設定位置をランダムに決定し、決定した設定位置に初期閉領域を設定する。また、このとき、初期閉領域設定部２３は、設定した初期閉領域の重心（中心）を算出する。設定する初期閉領域の大きさ、形状および配置する制御点の数は例えば固定とし、予め設定しておく。なお、これらの値は、ユーザ操作に従って可変に設定可能に構成してもよい。また、初期閉領域の設定方法は特に限定されるものではなく、各画素の勾配強度をもとに、勾配強度が小さい箇所を選んで初期閉領域を設定するようにしてもよい。
【００４０】
続いて、閉領域抽出部２２が、閉領域抽出処理を実行する（ステップａ７）。図８は、実施の形態１における閉領域抽出処理の詳細な処理手順を示すフローチャートである。図８に示すように、実施の形態１の閉領域抽出処理では、先ず、エネルギー算出部２４が、エネルギー算出処理を実行する（ステップｂ１）。このエネルギー算出処理は、後段のステップｂ１５と同様の処理手順で初期閉領域について行い、エッジ内包エネルギー、内部エネルギー、画像エネルギーおよび外部エネルギーの４つのエネルギーの値を制御点毎に算出する。なお、詳細な処理手順については、ステップｂ１５の説明として後述する。
【００４１】
続いて、エネルギー加重和算出部２７が、初期閉領域についてステップｂ１で算出したエッジ内包エネルギー、内部エネルギー、画像エネルギーおよび外部エネルギーの４つのエネルギーの加重和を算出する（ステップｂ３）。具体的には、４つのエネルギーの加重和は、ステップｂ１で制御点毎に算出したエッジ内包エネルギー、内部エネルギー、画像エネルギーおよび外部エネルギーの４つのエネルギーの加重和（重み付けしたエッジ内包エネルギー、内部エネルギー、画像エネルギーおよび外部エネルギーの和）の総和として算出される。その後、ステップｂ５〜ステップｂ１９の処理を繰り返し行うことで初期閉領域（閉領域の初期形状）を更新していき、閉領域を抽出する。
【００４２】
先ず、ステップｂ５では、更新範囲決定部２９が、エッジ内包エネルギーの値が予め設定される閾値以上である制御点の有無を判定する。そして、更新範囲決定部２９は、エッジ内包エネルギーの値が所定の閾値以上である制御点がある場合には（ステップｂ５：Ｙｅｓ）、エッジ内包エネルギーの値が所定の閾値以上である制御点との距離を制御点毎に算出する（ステップｂ７）。そして、更新範囲決定部２９は、算出した距離が予め設定される所定範囲内である制御点を除外して制御点の更新範囲を決定する（ステップｂ９）。すなわち、エッジ内包エネルギーの値が所定の閾値以上である制御点からの距離が所定範囲内にある制御点を制御点の更新範囲から除外する。このとき、ステップｂ５〜ステップｂ１９の繰り返しの過程で既にエッジ内包エネルギーの値が所定の閾値以上となっている制御点から所定範囲内の制御点についても、制御点の更新範囲から除外する。一方、エッジ内包エネルギーの値が所定の閾値以上である制御点がない場合には（ステップｂ５：Ｎｏ）、更新範囲決定部２９は、全ての制御点を制御点の更新範囲とする（ステップｂ１１）。
【００４３】
続いて、閉領域更新部２８が、ステップｂ９またはステップｂ１１で決定した更新範囲内の制御点を移動させることで閉領域の形状を更新する（ステップｂ１３）。ここでは、例えば、周囲８方向のうちの閉領域の外側となる方向を優先して更新範囲内の制御点をそれぞれ移動させることで、閉領域の形状を広がる方向へ更新する。例えば、図２の例では、各制御点Ｐｃの位置を初期閉領域Ｅ１１の境界外側に移動させ、その形状を図２中に矢印で示すように広がる方向へ更新する。各制御点を移動させる距離については、例えば乱数を発生させる等して決定する。また、このとき、制御点Ｐｃの更新範囲が図２中に一点鎖線で囲って示す範囲Ｅ１２の場合には、この更新範囲Ｅ１２外の制御点Ｐｃは動かさず、更新範囲Ｅ１２内の制御点Ｐｃのみを動かして閉領域の形状を更新する。
【００４４】
続いて、エネルギー算出部２４が、エネルギー算出処理を実行する（ステップｂ１５）。このステップｂ１５では、ステップｂ１３で更新した更新後の閉領域についてエネルギー算出処理を実行する。図９は、実施の形態１におけるエネルギー算出処理の詳細な処理手順を示すフローチャートである。
【００４５】
図９に示すように、実施の形態１のエネルギー算出処理では先ず、エッジ内包エネルギー算出部２５が、エッジ内包判定処理を実行する（ステップｃ１）。このエッジ内包判定処理では、制御点を順次処理対象とし、その内包判定領域内の勾配強度をもとに処理対象の制御点についての閉領域内勾配強度を算出する。具体的には、処理対象の制御点、この制御点と時計回り方向に隣接する制御点、および閉領域の重心を頂点とする三角形を内包判定領域とし、この内包判定領域に内包される画素の勾配強度をもとに閉領域内勾配強度を算出する。そして、閉領域の更新前後での閉領域内勾配強度の増加率を算出する。図１０は、実施の形態１におけるエッジ内包判定処理の詳細な処理手順を示すフローチャートである。また、図１１は、実施の形態１におけるエッジ内包判定処理の原理を説明する説明図であり、閉領域の重心Ｐ５と、この閉領域の境界に配置された２つの制御点Ｐｃ５１，Ｐｃ５２とを示している。
【００４６】
図１０に示すように、実施の形態１のエッジ内包判定処理では、制御点毎にループＡの処理を実行する（ステップｄ１〜ステップｄ１５）。このループＡでは、先ず、エッジ内包エネルギー算出部２５において、閉領域勾配強度算出部２５１が、処理対象の制御点である制御点Ａi(ｉ＝０，１，２・・・，ｎ：ｎは制御点の数)と、この制御点Ａiと時計回り方向に隣接する制御点Ａi+1とを結んだベクトルＶ１iを求める（ステップｄ３）。例えば、図１１に示すように、制御点Ａiである制御点Ｐｃ５１から、この制御点Ｐｃ５１と時計回り方向に隣接する制御点Ａi+1である制御点Ｐｃ５２へのベクトルＶ５１をＶ１iとして求める。
【００４７】
続いて、閉領域勾配強度算出部２５１は、制御点Ａiと時計回り方向に隣接する制御点Ａi+1と、閉領域（前段の図８のステップｂ１の処理としてエネルギー算出処理を行う場合は初期閉領域であり、以下エネルギー算出処理の説明において同様である）の重心Ｗとを結んだベクトルＶ２iを求める（ステップｄ５）。例えば、図１１の例では、制御点Ｐｃ５２から、閉領域の重心Ｗである重心Ｐ５へのベクトルＶ５２をＶ２iとして求める。
【００４８】
続いて、閉領域勾配強度算出部２５１は、閉領域の重心Ｗと制御点Ａiとを結んだベクトルＶ３iを求める（ステップｄ７）。例えば、図１１の例では、重心Ｐ５から制御点Ｐｃ５１へのベクトルＶ５３をＶ３iとして求める。
【００４９】
続いて、閉領域勾配強度算出部２５１は、閉領域内の各画素に順次注目し、求めた３つのベクトルＶ１i，Ｖ２i，Ｖ３iのそれぞれについてその始点から注目画素へのベクトルとの外積を算出することで、処理対象の制御点の内包判定領域、すなわち、制御点Ａi、制御点Ａi+1および重心Ｗを頂点とする三角形に内包される画素を判定する（ステップｄ９）。算出した外積の符号が全て同じであれば、その注目画素を内包判定領域内の画素と判定する。全ての符号が一致しない場合には、その注目画素を内包判定領域外の画素と判定する。
【００５０】
例えば、図１１中にハッチングを付して示す制御点Ｐｃ５１の内包判定領域Ｅ５、すなわち、制御点Ｐｃ５１、制御点Ｐｃ５２および重心Ｐ５を頂点とする三角形内の画素Ｐ６１に注目した場合、ベクトルＶ５１と制御点Ｐｃ５１から注目画素Ｐ６１へのベクトルＶ６１との外積（Ｖ５１×Ｖ６１）、ベクトルＶ５２と制御点Ｐｃ５２から注目画素Ｐ６１へのベクトルＶ６２との外積（Ｖ５２×Ｖ６２）、およびベクトルＶ５３と重心Ｐ５から注目画素Ｐ６１へのベクトルＶ６３との外積（Ｖ５３×Ｖ６３）を算出する。ここで、注目画素Ｐ６１のように、内包判定領域Ｅ５内の画素は、各ベクトルＶ５１，Ｖ５２，Ｖ５３に対して右側に存在するため、得られる外積の符号は一致する。一方、画素Ｐ６２のように、内包判定領域Ｅ５外の画素について同様に外積を求めると、得られる外積の符号は一致しない。
【００５１】
続いて、閉領域勾配強度算出部２５１は、内包判定領域に内包されると判定された各画素の勾配強度の平均値を算出し、処理対象の制御点である制御点Ａiについての閉領域内勾配強度とする（ステップｄ１１）。なお、内包判定領域に内包されると判定された各画素の中から勾配強度が所定の値以上である画素（エッジ部分の画素）を選出し、選出した画素の勾配強度の平均値を算出して閉領域内勾配強度としてもよい。この場合、後段の図９のステップｃ３で算出されるエッジ内包エネルギーは、勾配強度が所定の値以上である画素が閉領域内（実際には対応する内包判定領域内）に多く存在するほど大きい値を示すエネルギーとなる。
【００５２】
その後、増加率算出部２５２が、ステップｄ１１で算出した処理対象の制御点の閉領域内勾配強度をもとに、次式（１）に従って増加率Ｘｉ（ｉ＝０，１，２・・・，ｎ：ｎは制御点の数）を算出する（ステップｄ１３）。ここで、閉領域は、上記した４つのエネルギーの加重和が最小となるように、前段の図８のステップｂ１３で更新した閉領域（更新後の閉領域）の形状を後段のステップｂ１９で修正する処理を繰り返し行うことで抽出される。次式（１）において、更新前の閉領域内勾配強度は、ステップｂ１３での更新前の閉領域の閉領域内勾配強度であり、更新後の閉領域内勾配強度は、ステップｂ１３での更新後の閉領域の閉領域内勾配強度である。
増加率Ｘｉ＝更新後の閉領域内勾配強度／更新前の閉領域内勾配強度  ・・・（１）
【００５３】
以上のようにして増加率Ｘｉを算出したならば、処理対象の制御点についてのループＡの処理を終える。そして、全ての制御点についてループＡの処理を実行した後、図９のステップｃ１にリターンしてステップｃ３に移行する。
【００５４】
そして、ステップｃ３では、エッジ内包エネルギー算出部２５が、閉領域内勾配強度が大きいほど大きい値を示すエッジ内包エネルギーを制御点毎に算出する（ステップｃ３）。実施の形態１では、次式（２）に従い、図１０のステップｄ１３で算出した増加率Ｘｉをもとに、増加率Ｘｉが高いほど値が大きくなるようにエッジ内包エネルギーＥiを算出する。なお、式（２）のδは、エネルギーに対する重み係数を表し、経験則に従って値を決定する。
【数１】
0005658945.tif 000002
【００５５】
図１２は、エッジ内包エネルギーを説明する説明図である。ここで、図１２（ａ）に示すように、溝位置等であるエッジ（線エッジ）ＥＬ６が制御点Ｐｃ６１の内包判定領域Ｅ６、すなわち、制御点Ｐｃ６１、制御点Ｐｃ６２および重心Ｐ６を頂点とする三角形内に入り込んだ場合を考える。上記したように、閉領域は、その外側に制御点を移動させることで広がる方向に更新していく。このため、閉領域を更新すると、エッジＥＬ６が制御点Ｐｃ６１の内包判定領域Ｅ６内にさらに入り込み（図１２（ｂ））、制御点Ｐｃ６１について得られる閉領域内勾配強度は更新の前後で増加する。したがって、閉領域内勾配強度の増加率が高ければ、その制御点の内包判定領域内にエッジが入り込んできていると推定できる。これに対し、更新前の閉領域内勾配強度がある程度大きい場合であっても、更新の前後で閉領域内勾配強度が増加しない場合には、ノイズ等によるものと推定できる。以上のように、内包判定領域における閉領域内勾配強度の増加率が高いほど大きくなるようにエッジ内包エネルギーの値を算出することで、ノイズ等の比較的小さなエッジの閉領域内への内包は制限せずに、溝位置等のエッジ（線エッジ）の閉領域内への内包を制限した閉領域の抽出が可能となる。なお、図示しないが、輪郭部分等の線エッジについても同様である。
【００５６】
続いて、図９に示すように、エネルギー算出部２４が、閉領域の境界が滑らかなほど小さい値を示す内部エネルギーの値を制御点毎に算出する（ステップｃ５）。例えば、隣接する制御点間のベクトルの内積をもとに、内部エネルギーの値を算出する。例えば、次式（３）に従い、注目する制御点（ｘi，ｙi）と隣接する２つの制御点（ｘi-1，ｙi-1），（ｘi+1，ｙi+1）との間のベクトルの内積をもとに内部エネルギーＥinternalを算出する。この内部エネルギーＥinternalは、注目する制御点が、隣接する制御点の位置に対して閉領域の内側に所定の曲率以上で屈曲しないように制限する。
【数２】
0005658945.tif 000003
【００５７】
続いて、エネルギー算出部２４は、閉領域の境界における勾配強度が大きいほど小さい値を示す画像エネルギーの値を制御点毎に算出する（ステップｃ７）。例えば、画像エネルギーＥimageは、次式（４）によって表され、注目する制御点位置の画素の勾配強度の逆数として算出する。
【数３】
0005658945.tif 000004
【００５８】
そして、エネルギー算出部２４は、閉領域の大きさが大きいほど小さい値を示す外部エネルギーの値を制御点毎に算出する（ステップｃ９）。この外部エネルギーＥexternalは、注目する制御点が閉領域の広がる方向へ受けるエネルギーであり、例えば、次式（５）によって表され、閉領域の重心と注目する制御点との距離の逆数として算出する。
【数４】
0005658945.tif 000005
【００５９】
なお、式（３）のα、式（４）のβ、および式（５）のγは、それぞれ該当するエネルギーに対する重み係数を表し、経験則に従って値を決定すればよい。また、このα，β，γの各値は、固定値としてもよいし、例えばユーザによる操作入力等に従って可変に設定する構成としてもよい。
【００６０】
以上のようにしてエッジ内包エネルギー、内部エネルギー、画像エネルギーおよび外部エネルギーの４つのエネルギーの値を算出したならば、図８のステップｂ１５にリターンし、その後ステップｂ１７に移行する。
【００６１】
そして、ステップｂ１７では、エネルギー加重和算出部２７が、ステップｂ１３での更新後の閉領域についてステップｂ１５で算出したエッジ内包エネルギー、内部エネルギー、画像エネルギーおよび外部エネルギーの４つのエネルギーの加重和（重み付けしたエッジ内包エネルギー、内部エネルギー、画像エネルギーおよび外部エネルギーの和）を算出する。ここでの処理は、ステップｂ３と同様に行い、制御点毎の４つのエネルギーの加重和の総和を算出する。
【００６２】
続いて、閉領域更新部２８が、ステップｂ１３での更新前の閉領域の４つのエネルギーの加重和（以下、適宜「更新前エネルギー加重和」と呼ぶ。）と、ステップｂ１３での更新後の閉領域についてステップｂ１５で算出した４つのエネルギーの加重和（以下、適宜「更新後エネルギー加重和」と呼ぶ。）とを比較して閉領域の形状を修正する（ステップｂ１９）。具体的には、閉領域更新部２８は、更新後エネルギー加重和よりも更新前エネルギー加重和の方が小さい場合には、閉領域の形状を更新前の形状に修正する。なお、初回のステップｂ１９の実行時には、ステップｂ３で初期閉領域について算出した４つのエネルギーの加重和を更新前エネルギー加重和とし、更新前エネルギー加重和の方が小さい場合には、閉領域の形状を初期形状に修正する。
【００６３】
その後、閉領域更新部２８は、繰り返しの終了を判定する。そして、閉領域更新部２８は、更新後エネルギー加重和が更新前エネルギー加重和以下または閉領域の形状を更新しても更新後エネルギー加重和が変化しない状態が予め設定される所定回数未満である間は繰り返しを終了しないと判定する（ステップｂ２１：Ｎｏ）。この場合には、今回更新した閉領域の形状に対してステップｂ５〜ステップｂ１９の処理を行い、閉領域の形状を更新していく。一方、更新後エネルギー加重和が更新前エネルギー加重和よりも大きく、更新後エネルギー加重和が変化しない状態が所定回数続いた場合には繰り返しを終了すると判定し（ステップｂ２１：Ｙｅｓ）、閉領域抽出処理を終える。その後、図７のステップａ７にリターンし、ステップａ９に移行する。
【００６４】
そして、ステップａ９では、閉領域抽出部２２は、閉領域として抽出されていない領域の有無を判定し、閉領域として抽出されていない領域がある場合には（ステップａ９：Ｙｅｓ）、この閉領域として抽出されていない領域に抽出済みの閉領域と重ならないように初期閉領域を設定する（ステップａ１１）。その後、ステップａ７に戻り、閉領域として抽出されていない領域がなくなるまで閉領域抽出処理を繰り返す。一方、ステップａ９において閉領域として抽出されていない領域がないと判定した場合には（ステップａ９：Ｎｏ）、ステップａ１３に移行する。
【００６５】
ステップａ１３では、領域統合部３２が、閉領域統合処理を実行する。図１３は、閉領域統合処理の詳細な処理手順を示すフローチャートである。図１３に示すように、閉領域統合処理では、先ず、統合部３２１が、予め設定される閾値以上の割合で重なり合う閉領域を統合する（ステップｅ１）。
【００６６】
続いて、統合後エネルギー算出部３２２が、統合後の閉領域の輪郭線を抽出する（ステップｅ３）。これは、例えば公知の輪郭追跡法（参考：ＣＧ−ＡＲＴＳ協会，ディジタル画像処理，Ｐ１７８〜Ｐ１７９，輪郭追跡）を用いることで実現できる。
【００６７】
続いて、統合後エネルギー算出部３２２は、統合後の閉領域の境界上の画素に複数の制御点を等間隔で配置する（ステップｅ５）。そして、統合後エネルギー算出部３２２は、ステップｅ５で配置した制御点毎にエッジ内包エネルギー、内部エネルギー、画像エネルギーおよび外部エネルギーの４つのエネルギーの値を算出してその加重和を算出し、統合する前の各閉領域の４つのエネルギーの加重和との平均値を平均エネルギーとして算出する（ステップｅ７）。配置した制御点毎の４つのエネルギーの値は図９のエネルギー算出処理と同様の処理手順で算出し、その加重和は図８のステップｂ３と同様の手順で算出する。
【００６８】
そして、領域統合部３２が、平均エネルギーの値が予め設定される所定範囲外か否かを判定することで統合の許否（統合するか否か）を判定し、所定範囲外の場合には（ステップｅ９：Ｙｅｓ）、統合を取り消して統合する前の閉領域に戻す（ステップｅ１１）。平均エネルギーが所定範囲内の場合には（ステップｅ９：Ｎｏ）、ステップｅ１１の処理を行わずにステップｅ１３に移行することで統合を許可し、統合後の閉領域を１つの閉領域とする。
【００６９】
その後、領域統合部３２は、統合可能な閉領域、すなわち、閾値以上の割合で重なり合う閉領域の有無を判定し、ある場合には（ステップｅ１３：Ｙｅｓ）、該当する閉領域同士を統合した後（ステップｅ１５）、ステップｅ３に戻って処理を繰り返す。このとき、ステップｅ１１で既に統合を取り消した閉領域は除外して統合可能な閉領域の有無を判定する。一方、統合可能な閉領域がないと判定した場合には（ステップｅ１３：Ｎｏ）、図７のステップａ１３にリターンし、ステップａ１５に移行する。以上の閉領域統合処理によれば、統合前と統合後とで４つのエネルギーの加重和の変化が小さい閉領域同士を統合して１つの閉領域とすることができるので、後段のステップａ１５で行う異常部検出処理の処理負荷を軽減できる。
【００７０】
そして、ステップａ１５では、異常部検出部３３が異常部検出処理を実行する。実施の形態１では、例えば、公知のクロージング処理を行ったクロージング画像に対して、公知のオープニング処理を行い、得られた画素値（基準値）と元の画素値との差分を閾値処理することで異常部を検出する。
【００７１】
図１４は、異常部検出処理の詳細な処理手順を示すフローチャートである。図１４に示すように、異常部検出処理では、異常部検出部３３は、閉領域毎にループＢの処理を実行する（ステップｆ１〜ステップｆ９）。このループＢでは、異常部検出部３３は、先ず、処理対象の閉領域の画素毎に基準値を算出する（ステップｆ３）。続いて、異常部検出部３３は、処理対象の閉領域の各画素について、その画素値とステップｆ３で算出した基準値との差分を算出する（ステップｆ５）。そして、異常部検出部３３は、差分を閾値処理し、差分が予め設定される閾値以上である画素を異常部として検出する（ステップｆ７）。全ての閉領域についてループＢの処理を実行したならば、図７のステップａ１５にリターンし、その後処理を終える。なお、図１４の異常部検出処理の結果（ステップｆ７での異常部の検出結果）は表示部１３に出力され、例えば生体内管腔画像中の異常部を他の領域と識別可能に表して表示するといったことが行われて医師等のユーザに提示される。
【００７２】
以上説明したように、実施の形態１では、対応する内包判定領域に内包される画素の勾配強度を用いて制御点毎に閉領域内勾配強度を算出し、閉領域の更新前後での閉領域内勾配強度の増加率が高いほど大きくなるようにエッジ内包エネルギーの値を算出することとした。そして、このエッジ内包エネルギーを含む複数のエネルギーの加重和が最小となるように形状を更新していくことで閉領域を抽出することとした。また、このとき、エッジ内包エネルギーの値が予め設定される閾値以上であり、対応する内包判定領域に溝位置や輪郭部分等の線エッジが入り込んだと推定される制御点から所定範囲内に存在する制御点を次回閉領域の形状を更新する際に動かさないように制御点の更新範囲を決定することとした。これによれば、閉領域を更新する過程で閉領域の内部に溝位置や輪郭部分等の線エッジが入り込まないように制限しつつ、勾配強度が所定の値以上である画素を領域の内部に含まず、かつ、領域の境界がこの領域の内側に所定の曲率以上で屈曲しない条件を満たすように閉領域を抽出することができる。したがって、生体内管腔画像中に映る溝位置を内部に含まず、その境界が輪郭部分を含まないような閉領域の抽出を適切に行うことができ、抽出した閉領域毎にモルフォロジー処理を適用することで閉領域内部の異常部を検出することができる。これによれば、溝位置や輪郭部分を異常部として誤検出することなく生体内管腔画像から異常部を精度良く検出することができる。
【００７３】
（実施の形態２）
先ず、実施の形態２の画像処理装置の構成について説明する。図１５は、実施の形態２の画像処理装置１ａの機能構成を説明するブロック図である。なお、実施の形態１で説明した構成と同一の構成については、同一の符号を付する。実施の形態２の画像処理装置１ａは、図１５に示すように、画像取得部１１と、入力部１２と、表示部１３と、記録部１４ａと、演算部２０ａと、画像処理装置１ａ全体の動作を制御する制御部１５とを備える。
【００７４】
記録部１４ａには、実施の形態２の処理を実現して生体内管腔画像から異常部を検出するための画像処理プログラム１４１ａが記録される。
【００７５】
また、演算部２０ａは、勾配強度算出部２１と、閉領域抽出部２２ａと、領域統合部３２と、異常部検出部３３とを含む。そして、実施の形態２において、閉領域抽出部２２ａは、初期閉領域設定部２３と、エネルギー算出部２４ａと、エネルギー加重和算出部２７と、閉領域更新部２８ａとを備える。
【００７６】
エネルギー算出部２４ａは、エッジ内包エネルギー算出部２５ａを備え、このエッジ内包エネルギー算出部２５ａは、エッジ抽出手段としてのエッジ抽出部２５３ａと、屈曲点検出手段としての屈曲点検出部２５４ａと、端点検出手段としての端点検出部２５５ａと、外積算出手段としての外積算出部２５６ａとを備える。エッジ抽出部２５３ａは、生体内管腔画像の各画素の勾配強度をもとに、勾配強度が所定の値（例えば閉領域を抽出する際の条件としている所定の値と同じ値）以上の画素をエッジとして抽出する。屈曲点検出部２５４ａは、エッジの屈曲点を検出する。端点検出部２５５ａは、エッジの端点を検出する。外積算出部２５６ａは、制御点から閉領域の重心へのベクトルと制御点からエッジの屈曲点および端点へのベクトルとの外積を算出する。
【００７７】
閉領域更新部２８ａは、更新範囲決定部２９ａを備える。この更新範囲決定部２９ａは、閉領域の形状情報を算出する形状情報算出手段としての形状情報算出部３０ａを備える。形状情報算出部３０ａは、面積算出手段としての面積算出部３０１ａと、周囲長算出手段としての周囲長算出部３０２ａと、曲率算出手段としての曲率算出部３０３ａとを備える。面積算出部３０１ａは、閉領域の面積を算出する。周囲長算出部３０２ａは、閉領域の周囲長を算出する。曲率算出部３０３ａは、閉領域の曲率を算出する。
【００７８】
次に、実施の形態２の画像処理装置１ａが行う具体的な処理手順について説明する。なお、ここで説明する処理は、演算部２０ａが記録部１４ａに記録された画像処理プログラム１４１ａを実行することにより実現される。実施の形態２は、図７の全体フローチャートにおいて、ステップａ７の閉領域抽出処理が実施の形態１と異なる。図１６は、実施の形態２における閉領域抽出処理の詳細な処理手順を示すフローチャートである。なお、図１６において、実施の形態１と同一の処理工程には、同一の符号を付する。
【００７９】
図１６に示すように、実施の形態２の閉領域抽出処理では、先ず、エッジ抽出処理を実行する（ステップｇ１）。図１７は、エッジ抽出処理の詳細な処理手順を示すフローチャートである。
【００８０】
図１７に示すように、エッジ抽出処理では、先ず、エッジ内包エネルギー算出部２５ａのエッジ抽出部２５３ａが、実施の形態１で説明した前段の処理（図７のステップａ３を参照）で画素毎に算出した勾配強度をもとに、処理対象の生体内管腔画像から勾配強度の値が所定の値以上の画素をエッジとして抽出する（ステップｈ１）。これは、公知のCanny，Harris等のエッジ抽出技術を適用することで実現できる。
【００８１】
続いて、屈曲点検出部２５４ａが、ステップｈ１で抽出したエッジの屈曲点を検出する（ステップｈ３）。続いて、端点検出部２５５ａが、ステップｈ１で抽出したエッジの端点を検出する（ステップｈ５）。ここで、屈曲点とは、エッジが予め設定される所定の値以上の曲率で屈曲する点のことをいう。エッジの屈曲点の検出は、例えば、公知の２次微分や内積等により、近傍位置にあるエッジ点間の曲率を算出することで実現できる。また、エッジの端点の検出は、例えば、公知の特徴点抽出技術（参考：ＣＧ−ＡＲＴＳ協会，ディジタル画像処理，Ｐ１８８，細線の特徴点抽出）を適用することで実現できる。また、その後、図１６のステップｇ１にリターンし、ステップｇ２に移行する。
【００８２】
そして、ステップｇ２では、エネルギー算出部２４ａが、エネルギー算出処理を実行する。このエネルギー算出処理は、初期閉領域について行い、エッジ内包エネルギー、内部エネルギー、画像エネルギーおよび外部エネルギーの４つのエネルギーの値を制御点毎に算出する。図１８は、実施の形態２におけるエネルギー算出処理の詳細な処理手順を示すフローチャートである。なお、図１８において、実施の形態１と同一の処理工程には、同一の符号を付する。
【００８３】
図１８に示すように、実施の形態２のエネルギー算出処理では先ず、エッジ内包エネルギー算出部２５ａが、エッジ内包判定処理を実行する（ステップｉ１）。図１９は、実施の形態２におけるエッジ内包判定処理の詳細な処理手順を示すフローチャートである。
【００８４】
図１９に示すように、実施の形態２のエッジ内包判定処理では、制御点毎にループＣの処理を実行する（ステップｊ１〜ステップｊ１３）。このループＣでは、エッジ内包エネルギー算出部２５ａは、先ず、実施の形態と同様の要領でステップｊ３〜ステップｊ７の処理を行う。すなわち、エッジ内包エネルギー算出部２５ａは、処理対象の制御点である制御点Ａi(ｉ＝０，１，２・・・，ｎ：ｎは制御点の数)と、この制御点Ａiと時計回り方向に隣接する制御点Ａi+1とを結んだベクトルＶ１iを求める（ステップｊ３）。続いて、エッジ内包エネルギー算出部２５ａは、制御点Ａiと時計回り方向に隣接する制御点Ａi+1と、閉領域の重心Ｗとを結んだベクトルＶ２iを求める（ステップｊ５）。そして、エッジ内包エネルギー算出部２５ａは、閉領域の重心Ｗと制御点Ａiとを結んだベクトルＶ３iを求める（ステップｊ７）。
【００８５】
続いて、外積算出部２５６ａが、図１７のステップｈ３で検出したエッジの屈曲点およびステップｈ５で検出したエッジの端点に順次注目し、求めた３つのベクトルＶ１i，Ｖ２i，Ｖ３iのそれぞれについてその始点から注目する屈曲点および端点へのベクトルとの外積を算出することで、処理対象の制御点の内包判定領域、すなわち、制御点Ａi、制御点Ａi+1および重心Ｗを頂点とする三角形に内包されるエッジの屈曲点および端点を判定する（ステップｊ９）。算出した外積の符号が全て同じであれば、その注目画素を内包判定領域内の画素と判定する。全ての符号が一致しない場合には、その注目画素を内包判定領域外の画素と判定する。
【００８６】
その後、エッジ内包エネルギー算出部２５ａが、内包判定領域に内包されると判定されたエッジの屈曲点および端点の数を計数して内包状況の一例である内包数Ｘｉ（ｉ＝０，１，２・・・，ｎ：ｎは制御点の数）を算出する（ステップｊ１１）。
【００８７】
以上のようにして内包数Ｘｉを算出したならば、処理対象の制御点についてのループＣの処理を終える。そして、全ての制御点についてループＣの処理を実行した後、図１８のステップｉ１にリターンしてステップｉ３に移行する。
【００８８】
そして、ステップｉ３では、エッジ内包エネルギー算出部２５ａが、勾配強度が所定の値以上である画素が閉領域内（実際には対応する内包判定領域内）に多く存在するほど大きい値を示すエッジ内包エネルギー（Ｅi）を制御点毎に算出する。実施の形態２では、次式（６）に従い、図１９のステップｊ１１で算出した内包数Ｘｉをもとに、内包数Ｘｉが多いほど（対応する内包判定領域内にエッジの屈曲点および端点が多く内包されているほど）値が大きくなるようにエッジ内包エネルギーＥiを算出する。
Ｅi＝Ｘｉ（ｉ＝０，１，２・・・，ｎ：ｎは制御点の数）  ・・・（６）
【００８９】
以上のように、内包判定領域内にエッジの屈曲点および端点が多く内包されているほど大きくなるようにエッジ内包エネルギーの値を算出することで、溝位置や輪郭部分等のエッジ（線エッジ）の閉領域内への内包を制限した閉領域の抽出が可能となる。その後、エネルギー算出部２４ａが、ステップｃ５以降の処理を実施の形態１と同様に行う。そして、エッジ内包エネルギー、内部エネルギー、画像エネルギーおよび外部エネルギーの４つのエネルギーの値を算出したならば、図１６のステップｇ２にリターンし、その後ステップｂ３に移行する。
【００９０】
そして、ステップｂ３では、エネルギー加重和算出部２７が、初期閉領域についてステップｇ２で算出したエッジ内包エネルギー、内部エネルギー、画像エネルギーおよび外部エネルギーの値をもとに、実施の形態１と同様にこれら４つのエネルギーの加重和を算出する。
【００９１】
続いて、更新範囲決定部２９ａが、エッジ内包エネルギーの値が予め設定される閾値以上である制御点の有無を判定する。そして、更新範囲決定部２９ａは、エッジ内包エネルギーの値が所定の閾値以上である制御点がある場合には（ステップｂ５：Ｙｅｓ）、更新範囲決定処理を実行する（ステップｇ７）。一方、エッジ内包エネルギーの値が所定の閾値以上である制御点がない場合には（ステップｂ５：Ｎｏ）、更新範囲決定部２９ａは、実施の形態１で説明したように、全ての制御点を制御点の更新範囲とする（ステップｂ１１）。
【００９２】
図２０は、ステップｇ７で実行する更新範囲決定処理の詳細な処理手順を示すフローチャートである。図２０に示すように、更新範囲決定処理では、先ず、形状情報算出部３０ａの面積算出部３０１ａが、閉領域の面積を算出する（ステップｋ１）。続いて、周囲長算出部３０２ａが、閉領域の周囲長を算出する（ステップｋ３）。
【００９３】
続いて、曲率算出部３０３ａが、各制御点位置における閉領域の境界の曲率を算出する（ステップｋ５）。具体的には、例えば、曲率算出部３０３ａは、制御点毎に、制御点から両側に隣接する２つの制御点のそれぞれへ向かうベクトルの外積を算出し、該当する制御点位置における閉領域の境界の曲率とする。
【００９４】
続いて、更新範囲決定部２９ａは、算出した閉領域の面積、閉領域の周囲長および閉領域の境界の曲率をもとに、更新範囲外とする範囲を算出する（ステップｋ７）。ここで、ステップｋ５で算出した閉領域の境界の曲率の値が大きいということは、その候補点位置において閉領域の境界が大きく屈曲しているということである。このような屈曲が大きい位置の制御点を動かすと、更新後の閉領域においてさらに境界が大きく屈曲する可能性がある。そこで、ステップｋ７では、この境界の曲率を含む閉領域の形状情報をもとに更新範囲外とする範囲を算出する。例えば、更新範囲決定部２９ａは、閉領域の面積、周囲長、および境界の曲率が大きいほど広くなるように更新範囲外とする範囲を算出する。なお、本例では、閉領域の面積、周囲長および境界の曲率のうちの１つ以上を用いて更新範囲外とする範囲を算出することとしてもよい。
【００９５】
そして、更新範囲決定部２９ａは、エッジ内包エネルギーの値が所定の閾値以上である制御点からの距離がステップｋ７で算出した範囲内である制御点を除外して制御点の更新範囲を決定する（ステップｋ９）。その後、図１６のステップｇ７にリターンし、ステップｂ１３に移行する。
【００９６】
そして、ステップｂ１３では、閉領域更新部２８ａが、ステップｇ７またはステップｂ１１で決定した更新範囲に従い、実施の形態１と同様に更新範囲内の制御点を移動させることで閉領域の形状を更新する（ステップｇ１３）。その後、エネルギー算出部２４ａが、エネルギー算出処理を実行する（ステップｂ１５）。このステップｇ１５では、ステップｂ１３で更新した更新後の閉領域について、図１８に示して説明したエネルギー算出処理を実行する。その後、ステップｂ１７に移る。
【００９７】
以上説明したように、実施の形態２では、対応する内包判定領域にエッジの屈曲点および端点が多く内包されているほど値が大きくなるようにエッジ内包エネルギーの値を算出することとした。また、このとき、エッジ内包エネルギーの値が予め設定される閾値以上であり、対応する内包判定領域に溝位置や輪郭部分等の線エッジが入り込んだと推定される制御点を動かさないように制御点の更新範囲を決定することとした。これによれば、実施の形態１と同様の効果を奏することができる。また、実施の形態２では、面積や周囲長、境界の曲率といった閉領域の形状情報をもとに更新範囲外とする範囲を算出し、算出した範囲をもとに制御点の更新範囲を決定することとした。したがって、生体内管腔画像中に映る溝位置を内部に含まず、その境界が輪郭部分を含まないような閉領域の抽出をより適切に行うことができる。
【００９８】
（実施の形態３）
先ず、実施の形態３の画像処理装置の構成について説明する。図２１は、実施の形態３の画像処理装置１ｂの機能構成を説明するブロック図である。なお、実施の形態１で説明した構成と同一の構成については、同一の符号を付する。実施の形態３の画像処理装置１ｂは、図２１に示すように、画像取得部１１と、入力部１２と、表示部１３と、記録部１４ｂと、演算部２０ｂと、画像処理装置１ｂ全体の動作を制御する制御部１５とを備える。
【００９９】
記録部１４ｂには、実施の形態３の処理を実現して生体内管腔画像から異常部を検出するための画像処理プログラム１４１ｂが記録される。
【０１００】
また、演算部２０ｂは、勾配強度算出部２１と、閉領域抽出部２２ｂと、領域統合部３２と、異常部検出部３３とを含む。そして、実施の形態３において、閉領域抽出部２２ｂは、初期閉領域設定部２３と、エネルギー算出部２４ｂと、エネルギー加重和算出部２７と、閉領域更新部２８ｂとを備える。
【０１０１】
エネルギー算出部２４ｂは、屈曲エネルギー算出手段としての屈曲エネルギー算出部２６ｂを備える。屈曲エネルギー算出部２６ｂは、閉領域の外形によって定まるエネルギーに相当する屈曲エネルギーの値を算出する。ここで、屈曲エネルギーは、内部エネルギーの一例であり、閉領域の境界が内側に屈曲するほど大きな値を示すエネルギーである。この屈曲エネルギー算出部２６ｂは、外積エネルギー算出手段としての外積エネルギー算出部２６１ｂを備える。実施の形態３では、この外積エネルギー算出部２６１ｂが、制御点毎に、隣接する制御点へ向かうベクトルの外積をもとに外積エネルギーの値を算出し、この外積エネルギーの値を屈曲エネルギーの値とする。
【０１０２】
閉領域更新部２８ｂは、更新範囲決定部２９ｂを備える。この更新範囲決定部２９ｂは、エッジ情報検出手段としてのエッジ情報検出部３１１ｂと、端点屈曲点距離算出手段としての端点屈曲点距離算出部３１２ｂと、エッジ距離算出手段としてのエッジ距離算出部３１３ｂとを備える。エッジ情報検出部３１１ｂは、生体内管腔画像の各画素の勾配強度をもとに、勾配強度が所定の値（例えば閉領域を抽出する際の条件としている所定の値と同じ値）以上の画素をエッジとして抽出し、抽出したエッジの端点および屈曲点を検出してエッジ情報とする。端点屈曲点距離算出部３１２ｂは、エッジの端点または屈曲点と、屈曲エネルギーの値が予め設定される閾値以上である制御点との距離（端点屈曲点距離）を算出する。エッジ距離算出部３１３ｂは、エッジと屈曲エネルギーの値が予め設定される閾値以上である制御点との距離（エッジ距離）を算出する。
【０１０３】
次に、実施の形態３の画像処理装置１ｂが行う具体的な処理手順について説明する。図２２は、実施の形態３の画像処理装置１ｂが行う処理手順を示す全体フローチャートである。なお、ここで説明する処理は、演算部２０ｂが記録部１４ｂに記録された画像処理プログラム１４１ｂを実行することにより実現される。また、図２２において、実施の形態１と同一の処理工程には、同一の符号を付する。
【０１０４】
図２２に示すように、実施の形態３では、ステップａ５で初期閉領域設定部２３が初期閉領域を設定した後、閉領域抽出部２２ｂが閉領域抽出処理を実行する（ステップｌ７）。図２３は、実施の形態３における閉領域抽出処理の詳細な処理手順を示すフローチャートである。
【０１０５】
図２３に示すように、実施の形態３の閉領域抽出処理では、先ず、更新範囲決定部２９ｂのエッジ情報検出部３１１ｂがエッジ情報検出処理を実行する（ステップｍ１）。このエッジ情報検出処理は、実施の形態２で図１７を参照して説明したエッジ抽出処理と同様の処理手順で行う。具体的には、エッジ情報検出部３１１ｂは、図２２のステップａ３で画素毎に算出した勾配強度をもとに，Canny，Harris等のエッジ抽出技術を適用して処理対象の生体内管腔画像から勾配強度の値が所定の値以上の画素をエッジとして抽出する（図１７のステップｈ１と同様）。その後、エッジ情報検出部３１１ｂは、抽出したエッジの端点を検出するとともに（ステップｈ５と同様）、抽出したエッジの屈曲点を検出する（ステップｈ３と同様）。
【０１０６】
続いて、エネルギー算出部２４ｂが、エネルギー算出処理を実行する（ステップｍ３）。このエネルギー算出処理は、初期閉領域について行い、内積エネルギーと屈曲エネルギーの２つの内部エネルギー、画像エネルギーおよび外部エネルギーの４つのエネルギーの値を制御点毎に算出する。ここで、内積エネルギーは、実施の形態１等で説明した内部エネルギーに相当する。図２４は、実施の形態３におけるエネルギー算出処理の詳細な処理手順を示すフローチャートである。なお、図２４において、実施の形態１と同一の処理工程には、同一の符号を付する。
【０１０７】
図２４に示すように、実施の形態３のエネルギー算出処理では先ず、屈曲エネルギー算出部２６ｂの外積エネルギー算出部２６１ｂが、外積エネルギーの値を制御点毎に算出し、各制御点の屈曲エネルギーの値とする（ステップｎ１）。図２５は、外積エネルギーを説明する説明図であり、閉領域の境界を部分的に示している。例えば、図２５に示す制御点Ｐｃ７１に着目すれば、隣接する両側の制御点Ｐｃ７２，Ｐｃ７３のそれぞれへ向かうベクトルＶ７１，Ｖ７２の外積をもとに、制御点Ｐｃ７１についての外積エネルギーの値を算出する。この外積エネルギーは、注目する制御点Ｐｃ７１が、隣接する制御点Ｐｃ７２，Ｐｃ７３の位置に対して閉領域の内側に所定の曲率以上で屈曲しないように制限する。実際の処理では、例えば、次式（７），（８）に従い、注目する制御点ｖ2および隣接する制御点ｖ1，ｖ3の３つの制御点ｖ1，ｖ2，ｖ3間のベクトルｘa，ｘbの外積をもとに外積エネルギーＥcを算出する。なお、式（８）のεは、外積エネルギーＥcに対する重み係数を表し、経験則に従って値を決定すればよい。また、このεの値は、固定値としてもよいし、例えばユーザによる操作入力等に従って可変に設定する構成としてもよい。
【数５】
0005658945.tif 000006
【０１０８】
また、エネルギー算出部２４ｂは、図９のステップｃ５と同様の処理を行って実施の形態１で説明した内部エネルギーを算出し、内積エネルギーとする（ステップｎ５）。その後、エネルギー算出部２４ｂが、ステップｃ７以降の処理を実施の形態１と同様に行って、画像エネルギーおよび外部エネルギーの各値を算出する。以上のようにして４つのエネルギーの値を算出したならば、図２３のステップｍ３にリターンし、その後ステップｍ５に移行する。
【０１０９】
そして、ステップｍ５では、エネルギー加重和算出部２７が、初期閉領域についてステップｍ３で算出した内積エネルギーと屈曲エネルギーの２つの内部エネルギー、画像エネルギーおよび外部エネルギーの値をもとに、これら４つのエネルギーの加重和を算出する。具体的には、４つのエネルギーの加重和は、ステップｍ３で制御点毎に算出した内積エネルギーと屈曲エネルギーの２つの内部エネルギー、画像エネルギーおよび外部エネルギーの４つのエネルギーの加重和（重み付けした内積エネルギー、屈曲エネルギー、画像エネルギーおよび外部エネルギーの和）の総和として算出される。
【０１１０】
続いて、更新範囲決定部２９ｂが、屈曲エネルギーの値が予め設定される閾値以上である制御点の有無を判定する。そして、更新範囲決定部２９ｂは、屈曲エネルギーの値が所定の閾値以上である制御点がある場合には（ステップｍ７：Ｙｅｓ）、更新範囲決定処理を実行する（ステップｍ９）。一方、屈曲エネルギーの値が所定の閾値以上である制御点がない場合には（ステップｍ７：Ｎｏ）、更新範囲決定部２９ｂは、全ての制御点を制御点の更新範囲とする（ステップｍ１１）。
【０１１１】
図２６は、ステップｍ９で実行する更新範囲決定処理の詳細な処理手順を示すフローチャートである。図２６に示すように、更新範囲決定処理では、先ず、更新範囲決定部２９ｂの端点屈曲点距離算出部３１２ｂが、図２３のステップｍ１で検出したエッジの端点または屈曲点から、屈曲エネルギーの値が所定の閾値以上である制御点までの端点屈曲点距離を算出する（ステップｏ１）。エッジの端点または屈曲点が複数ある場合には、最も近いエッジの端点または屈曲点との距離を端点屈曲点距離として算出する。
【０１１２】
続いて、図２６に示すように、エッジ距離算出部３１３ｂが、図２３のステップｍ１で抽出したエッジから、屈曲エネルギーの値が所定の閾値以上である制御点までのエッジ距離を算出する（ステップｏ３）。具体的には、屈曲エネルギーの値が所定の閾値以上である制御点と最も近接するエッジ上の位置との距離をエッジ距離として算出する。
【０１１３】
そして、更新範囲決定部２９ｂが、算出した端点屈曲点距離および／またはエッジ距離をもとに、更新範囲外とする範囲を算出する（ステップｏ５）。ここで、閉領域の外側にエッジやその端点、あるいは大きく屈曲するエッジ（エッジの屈曲点）が存在すると、閉領域を変形させていく過程で閉領域の内部にエッジが入り込んだり、あるいは閉領域の境界がエッジに沿って広がっていってしまい、その境界が大きく屈曲するエッジを含むような閉領域が抽出されてしまう事態が生じ得る。そこで、ステップｏ５では、屈曲エネルギーの値が所定の閾値以上であり、ある程度屈曲している制御点位置からエッジの端点または屈曲点までの端点屈曲点距離をもとに、更新範囲外とする範囲を算出する。具体的には、端点屈曲点距離が小さく、制御点位置からエッジの端点または屈曲点までの距離が小さくこれらが近いほど更新範囲外とする範囲を広く算出する。また、前述のようにある程度屈曲している制御点位置からエッジまでのエッジ距離をもとに、更新範囲外とする範囲を算出する。具体的には、エッジ距離が小さく、その制御点位置からエッジまでの距離が小さくこれらが近いほど更新範囲外とする範囲を広く算出する。これにより、勾配強度が所定の値以上である画素を領域の内部に含まず、かつ、領域の境界がこの領域の内側に所定の曲率以上で屈曲しない条件を満たすような閉領域の抽出を実現できる。
【０１１４】
なお、端点屈曲点距離のみを用いて更新範囲外とする範囲を算出する場合には、ステップｏ１の処理は行わなくてもよく、また、エッジ距離のみを用いて更新範囲外とする範囲を算出する場合には、ステップｏ３の処理は行わなくてもよい。
【０１１５】
そして、更新範囲決定部２９ｂは、屈曲エネルギーの値が所定の閾値以上である制御点からの距離がステップｏ５で算出した範囲内である制御点を除外して制御点の更新範囲を決定する（ステップｏ７）。その後、図２３のステップｍ９にリターンし、ステップｍ１３に移行する。
【０１１６】
そして、ステップｍ１３では、閉領域更新部２８ｂが、ステップｍ９またはステップｍ１１で決定した更新範囲に従い、更新範囲内の制御点を移動させることで閉領域の形状を更新する。ここでの処理は、実施の形態１と同様の処理手順で行う（図８のステップｂ１３を参照）。その後、エネルギー算出部２４ｂが、エネルギー算出処理を実行する（ステップｍ１５）。このステップｍ１５では、ステップｍ１３で更新した更新後の閉領域について、ステップｍ３と同様の処理手順でエネルギー算出処理を実行する（図２４を参照）。その後、ステップｍ１７に移る。
【０１１７】
そして、ステップｍ１７では、エネルギー加重和算出部２７が、ステップｍ１３での更新後の閉領域についてステップｍ１７で算出した内積エネルギーと屈曲エネルギーの２つの内部エネルギー、画像エネルギーおよび外部エネルギーの４つのエネルギーの加重和を算出する。ここでの処理は、ステップｍ５と同様に行う。
【０１１８】
続いて、閉領域更新部２８ｂが、ステップｍ１３での更新前の更新前エネルギー加重和と、ステップｍ１３での更新後の更新後エネルギー加重和とを比較して閉領域の形状を修正する（ステップｍ１９）。ここでの処理は、実施の形態１と同様の処理手順で行う（図８のステップｂ１９を参照）。
【０１１９】
その後、閉領域更新部２８ｂは、繰り返しの終了を判定する。そして、閉領域更新部２８ｂは、繰り返しを終了しないと判定した場合には（ステップｍ２１：Ｎｏ）、今回更新した閉領域の形状に対してステップｍ７〜ステップｍ１９の処理を行い、閉領域の形状を更新していく。一方、繰り返しを終了すると判定した場合には（ステップｍ２１：Ｙｅｓ）、閉領域抽出処理を終える。その後、図２２のステップｌ７にリターンし、ステップａ９に移行する。
【０１２０】
以上説明したように、実施の形態３では、制御点毎に、隣接する制御点へ向かうベクトルの外積をもとに外積エネルギーの値を算出し、閉領域の境界が内側に屈曲するほど大きな値を示す屈曲エネルギーの値を算出することとした。そして、この屈曲エネルギーを含む複数のエネルギーの加重和が最小となるように形状を更新していくことで閉領域を抽出することとした。また、このとき、屈曲エネルギーの値が予め設定される閾値以上であり、該当する制御点位置がある程度屈曲している場合に、この制御点位置からの端点屈曲点距離およびエッジ距離を算出し、端点屈曲点距離および／またはエッジ距離をもとに更新範囲を決定する。具体的には、端点屈曲点距離および／またはエッジ距離が小さいほど該当する制御点位置を基準とした広範囲を更新範囲外とすることで制御点の更新範囲を決定することとした。したがって、生体内管腔画像中に映る溝位置を内部に含まず、その境界が輪郭部分を含まないような閉領域の抽出を適切に行うことができ、抽出した閉領域毎にモルフォロジー処理を適用することで閉領域内部の異常部を検出することができる。これによれば、溝位置や輪郭部分を異常部として誤検出することなく生体内管腔画像から異常部を精度良く検出することができる。
【０１２１】
（実施の形態４）
先ず、実施の形態４の画像処理装置の構成について説明する。図２７は、実施の形態４の画像処理装置１ｃの機能構成を説明するブロック図である。なお、実施の形態３で説明した構成と同一の構成については、同一の符号を付する。実施の形態４の画像処理装置１ｃは、図２７に示すように、画像取得部１１と、入力部１２と、表示部１３と、記録部１４ｃと、演算部２０ｃと、画像処理装置１ｃ全体の動作を制御する制御部１５とを備える。
【０１２２】
記録部１４ｃには、実施の形態４の処理を実現して生体内管腔画像から異常部を検出するための画像処理プログラム１４１ｃが記録される。
【０１２３】
また、演算部２０ｃは、勾配強度算出部２１と、閉領域抽出部２２ｃと、領域統合部３２と、異常部検出部３３とを含む。そして、実施の形態４において、閉領域抽出部２２ｃは、初期閉領域設定部２３と、エネルギー算出部２４ｃと、エネルギー加重和算出部２７と、閉領域更新部２８ｃとを備える。
【０１２４】
エネルギー算出部２４ｃは、屈曲エネルギー算出部２６ｃを備える。屈曲エネルギー算出部２６ｃは、大局外積エネルギー算出手段としての大局外積エネルギー算出部２６２ｃを備える。実施の形態４では、この大局外積エネルギー算出部２６２ｃが、制御点毎に、予め設定される距離以上離れた制御点へ向かうベクトルの外積をもとに大局外積エネルギーの値を算出し、この大局外積エネルギーの値を屈曲エネルギーの値とする。また、閉領域更新部２８ｃは、制御点の更新範囲を決定する更新範囲決定部２９ｃを備える。
【０１２５】
次に、実施の形態４の画像処理装置１ｃが行う具体的な処理手順について説明する。なお、ここで説明する処理は、演算部２０ｃが記録部１４ｃに記録された画像処理プログラム１４１ｃを実行することにより実現される。実施の形態４では、図２２の全体フローチャートにおいて、ステップｌ７の閉領域抽出処理が実施の形態３と異なる。図２８は、実施の形態４における閉領域抽出処理の詳細な処理手順を示すフローチャートである。なお、図２８において、実施の形態３と同一の処理工程には、同一の符号を付する。
【０１２６】
図２８に示すように、実施の形態４の閉領域抽出処理では、先ず、エネルギー算出部２４ｃが、エネルギー算出処理を実行する（ステップｐ３）。このエネルギー算出処理は、初期閉領域について行い、内積エネルギーと屈曲エネルギーの２つの内部エネルギー、画像エネルギーおよび外部エネルギーの４つのエネルギーの値を制御点毎に算出する。図２９は、実施の形態４におけるエネルギー算出処理の詳細な処理手順を示すフローチャートである。なお、図２９において、実施の形態３と同一の処理工程には、同一の符号を付する。
【０１２７】
図２９に示すように、実施の形態４のエネルギー算出処理では先ず、屈曲エネルギー算出部２６ｃの大局外積エネルギー算出部２６２ｃが、大局外積エネルギーの値を制御点毎に算出し、各制御点の屈曲エネルギーの値とする（ステップｑ１）。このステップｑ１では、制御点毎に、その両側において予め設定される距離以上離れて存在する制御点のそれぞれへ向かうベクトルの外積をもとに、各制御点についての大局外積エネルギーを算出する。この大局外積エネルギーは、実施の形態３の外積エネルギーと同様の要領で算出できる。すなわち、大局外積エネルギーは、上記した式（７），（８）において、隣接する制御点ｖ1，ｖ3を注目する制御点の両側に所定の距離以上離れて存在する制御点とすることで算出できる。
【０１２８】
その後、エネルギー算出部２４ｃが、ステップｎ５以降の処理を実施の形態３と同様に行って、内積エネルギー、画像エネルギーおよび外部エネルギーの各値を算出する。以上のようにして４つのエネルギーの値を算出したならば、図２８のステップｐ３にリターンし、その後ステップｍ５に移行する。
【０１２９】
また、実施の形態４では、ステップｍ７において、屈曲エネルギーの値が所定の閾値以上である制御点があると判定した場合に（ステップｍ７：Ｙｅｓ）、更新範囲決定部２９ｃが、屈曲エネルギーが所定の閾値以上である制御点からの距離が予め設定される所定範囲内である制御点を除外して制御点の更新範囲を決定する（ステップｐ９）。なお、更新範囲から除外する範囲を予め設定される所定範囲とする場合に限らず、実施の形態３で説明した更新範囲決定処理（図２０を参照）を実行して更新範囲を決定することとしてもよい。これにより、閉領域の境界が内側に所定の曲率以上で屈曲するような形状の更新を制限できる。
【０１３０】
そして、閉領域更新部２８ｃが、ステップｐ９またはステップｍ１１で決定した更新範囲に従い、更新範囲内の制御点を移動させることで閉領域の形状を更新する（ステップｍ１３）。続いて、エネルギー算出部２４ｃが、エネルギー算出処理を実行する（ステップｐ１５）。このステップｐ１５では、ステップｍ１３で更新した更新後の閉領域について、ステップｐ３と同様の処理手順でエネルギー算出処理を実行する（図２９を参照）。その後、ステップｍ１７に移る。
【０１３１】
以上説明したように、実施の形態４では、制御点毎に、所定の距離以上離れた制御点へ向かうベクトルの外積をもとに大局外積エネルギーの値を算出し、閉領域の境界が内側に屈曲するほど大きな値を示す屈曲エネルギーの値を算出することとした。そして、この屈曲エネルギーを含む複数のエネルギーの加重和が最小となるように形状を更新していくことで閉領域を抽出することとした。また、このとき、屈曲エネルギーの値が予め設定される閾値以上であり、該当する制御点位置がある程度屈曲している場合に、この制御点位置から所定範囲内に存在する制御点を次回閉領域の形状を更新する際に移動させないように制御点の更新範囲を決定することができる。したがって、生体内管腔画像中に映る溝位置を内部に含まず、その境界が輪郭部分を含まないような閉領域の抽出を適切に行うことができ、抽出した閉領域毎にモルフォロジー処理を適用することで閉領域内部の異常部を検出することができる。これによれば、溝位置や輪郭部分を異常部として誤検出することなく生体内管腔画像から異常部を精度良く検出することができる。
【０１３２】
（実施の形態５）
先ず、実施の形態５の画像処理装置の構成について説明する。図３０は、実施の形態５の画像処理装置１ｄの機能構成を説明するブロック図である。なお、実施の形態３で説明した構成と同一の構成については、同一の符号を付する。実施の形態５の画像処理装置１ｄは、図３０に示すように、画像取得部１１と、入力部１２と、表示部１３と、記録部１４ｄと、演算部２０ｄと、画像処理装置１ｄ全体の動作を制御する制御部１５とを備える。
【０１３３】
記録部１４ｄには、実施の形態５の処理を実現して生体内管腔画像から異常部を検出するための画像処理プログラム１４１ｄが記録される。
【０１３４】
また、演算部２０ｄは、勾配強度算出部２１と、閉領域抽出部２２ｄと、領域統合部３２と、異常部検出部３３とを含む。そして、実施の形態５において、閉領域抽出部２２ｄは、初期閉領域設定部２３と、エネルギー算出部２４ｄと、エネルギー加重和算出部２７と、閉領域更新部２８ｄとを備える。
【０１３５】
エネルギー算出部２４ｄは、屈曲エネルギー算出部２６ｄを備える。屈曲エネルギー算出部２６ｄは、多重外積エネルギー算出部２６３ｄを備える。また、閉領域更新部２８ｄは、制御点の更新範囲を決定する更新範囲決定部２９ｄを備える。
【０１３６】
ここで、図３１を参照して、実施の形態５における屈曲エネルギーの算出原理について説明する。図３１は、屈曲エネルギーを説明する説明図であり、閉領域の境界を部分的に示している。例えば、図３１に示す制御点Ｐｃ８に着目すると、屈曲エネルギーの算出では、制御点Ｐｃ８の両側において予め設定される所定数離れたものから順番に外積算出対象の制御点組、例えば両側において４つ離れた２つの制御点Ｐｃ８４１，Ｐｃ８４２を選択する。そして、これら各制御点Ｐｃ８４１，Ｐｃ８４２のそれぞれへ向かうベクトルＶ８４１，Ｖ８４２の外積をもとに、外積エネルギーの一例である制御点Ｐｃ８についての大局外積エネルギーを実施の形態４と同様の要領で算出する。その後、得られた大局外積エネルギーの値が予め設定される閾値以上か否かを判定し、所定の閾値以上であればその値を制御点Ｐｃ８についての屈曲エネルギーの値とする。一方、閾値未満の場合には、今回外積算出対象とした制御点組の各制御点Ｐｃ８４１，Ｐｃ８４２よりも１つ制御点Ｐｃ８側の制御点Ｐｃ８３１，Ｐｃ８３２を新たな外積算出対象の制御点組として選択する。そして、同様の要領で大局外積エネルギーを算出し、所定の閾値以上であればその値を制御点Ｐｃ８についての屈曲エネルギーの値とする。一方、閾値未満の場合には、さらに制御点Ｐｃ８側の制御点Ｐｃ８２１，Ｐｃ８２２を外積算出対象の制御点組として選択して同様の処理を行う。最終的に、制御点Ｐｃ８に隣接する制御点Ｐｃ８１１，Ｐｃ８１２を外積算出対象の制御点組として選択した場合には、実施の形態３と同様の要領で外積エネルギーの値を算出し、この外積エネルギーの値を制御点Ｐｃ８についての屈曲エネルギーの値とする。
【０１３７】
例えば、図３１において、制御点Ｐｃ８３１，Ｐｃ８３２を外積算出対象の制御点組とし、ベクトルＶ８３１，Ｖ８３２の外積をもとに算出した大局外積エネルギーの値が所定の閾値以上であったとする。この場合には、この大局外積エネルギーの値を制御点Ｐｃ８についての屈曲エネルギーの値とする。このようにすれば、閉領域の境界が屈曲している範囲、すなわち、制御点Ｐｃ８３１，Ｐｃ８３２間の範囲を特定できる。なお、実施の形態５では、このようにして特定した制御点Ｐｃ８３１，Ｐｃ８３２間の範囲をもとに、次回閉領域の形状を更新する際の制御点の更新範囲を決定するようになっている。
【０１３８】
次に、実施の形態５の画像処理装置１ｄが行う具体的な処理手順について説明する。なお、ここで説明する処理は、演算部２０ｄが記録部１４ｄに記録された画像処理プログラム１４１ｄを実行することにより実現される。実施の形態５では、図２２の全体フローチャートにおいて、ステップｌ７の閉領域抽出処理が実施の形態３と異なる。図３２は、実施の形態５における閉領域抽出処理の詳細な処理手順を示すフローチャートである。なお、図３２において、実施の形態３と同一の処理工程には、同一の符号を付する。
【０１３９】
図３２に示すように、実施の形態５の閉領域抽出処理では、先ず、エネルギー算出部２４ｄが、エネルギー算出処理を実行する（ステップｒ３）。このエネルギー算出処理は、初期閉領域について行い、内積エネルギーと屈曲エネルギーの２つの内部エネルギー、画像エネルギーおよび外部エネルギーの４つのエネルギーの値を制御点毎に算出する。図３３は、実施の形態５におけるエネルギー算出処理の詳細な処理手順を示すフローチャートである。なお、図３３において、実施の形態３と同一の処理工程には、同一の符号を付する。
【０１４０】
図３３に示すように、実施の形態５のエネルギー算出処理では、先ず、制御点毎にループＤの処理を実行する（ステップｓ１〜ステップｓ１５）。このループＤでは、先ず、屈曲エネルギー算出部２６ｄが、処理対象の制御点から両側に予め設定される所定数離れた２つの制御点を外積算出対象の制御点組として選択する（ステップｓ３）。
【０１４１】
続いて、多重外積エネルギー算出部２６３ｄが、選択した外積算出対象の制御点組の各制御点のそれぞれへ向かうベクトルの外積をもとに、大局外積エネルギーまたは外積エネルギーを算出する（ステップｓ５）。すなわち、ステップｓ５では、処理対象の制御点と外積算出対象の制御点との間に別の制御点が存在する場合には、実施の形態４と同様の要領で大局外積エネルギーを算出し（図２９のステップｑ１を参照）、処理対象の制御点と外積算出対象の制御点とが隣接する場合には、実施の形態３と同様の要領で外積エネルギーを算出する（図２４のステップｎ１を参照）。
【０１４２】
そして、多重外積エネルギー算出部２６３ｄは、ステップｓ５で外積エネルギーの値を算出した場合（ステップｓ７：Ｙｅｓ）、あるいはステップｓ５で算出した大局外積エネルギーの値が予め設定される閾値以上の場合には（ステップｓ９：Ｙｅｓ）、その値を屈曲エネルギーの値とする（ステップｓ１１）。一方、ステップｓ５で外積エネルギーの値を算出した場合ではなく（ステップｓ７：Ｎｏ）、ステップｓ５で算出した大局外積エネルギーの値が所定の閾値未満でもない場合には（ステップｓ９：Ｎｏ）、今回外積算出対象とした制御点組よりも１つ処理対象の制御点側の制御点組を新たな外積算出対象として選択し（ステップｓ１３）、ステップｓ５に戻って上記した処理を行う。
【０１４３】
以上のようにして屈曲エネルギーの値を得たならば、処理対象の制御点についてのループＤの処理を終える。そして、全ての制御点についてループＤの処理を実行したならば、エネルギー算出部２４ｄが、ステップｎ５以降の処理を実施の形態３と同様に行って内積エネルギー、画像エネルギーおよび外部エネルギーの各値を算出する。そして、４つのエネルギーの値を算出したならば、図３２のステップｒ３にリターンし、その後ステップｍ５に移行する。
【０１４４】
また、実施の形態５では、ステップｍ７において、屈曲エネルギーの値が所定の閾値以上である制御点があると判定した場合に（ステップｍ７：Ｙｅｓ）、更新範囲決定部２９ｄが、その屈曲エネルギーを算出した際に外積算出対象とした制御点組までの制御点と、この制御点組の各制御点から所定範囲外側の制御点を除外して制御点の更新範囲を決定する（ステップｒ９）。例えば、図３１を参照して説明したように、制御点Ｐｃ８から制御点Ｐｃ８３１，Ｐｃ８３２へ向かうベクトルＶ８３１，Ｖ８３２の外積をもとに算出した大局外積エネルギーの値を屈曲エネルギーの値とした場合には、制御点Ｐｃ８３１，Ｐｃ８３２より外側の所定範囲内の制御点を含む図３１中に二点鎖線で示す範囲Ｅ８内の制御点を除外して制御点の更新範囲を決定する。そしてこれにより、後段のステップｍ１３で次に閉領域の形状を更新する際には、範囲Ｅ８外の制御点を動かすようにする。
【０１４５】
その後、閉領域更新部２８ｄが、ステップｒ９またはステップｍ１１で決定した更新範囲に従い、更新範囲内の制御点を移動させることで閉領域の形状を更新する（ステップｍ１３）。続いて、エネルギー算出部２４ｄが、エネルギー算出処理を実行する（ステップｒ１５）。このステップｒ１５では、ステップｍ１３で更新した更新後の閉領域について、ステップｒ３と同様の処理手順でエネルギー算出処理を実行する（図３３を参照）。その後、ステップｍ１７に移る。
【０１４６】
以上説明したように、実施の形態５では、制御点毎に、処理対象の制御点からある程度距離が離れた制御点から順番に大局外積エネルギーを算出していき、最終的に外積エネルギーを算出することで、境界が屈曲している範囲を特定することができる。そして、特定した範囲およびその外側の所定範囲を除外して制御点の更新範囲を決定することができるので、生体内管腔画像中に映る溝位置を内部に含まず、その境界が輪郭部分を含まないような閉領域の抽出をより適切に行うことができ、抽出した閉領域毎にモルフォロジー処理を適用することで閉領域内部の異常部を検出することができる。これによれば、溝位置や輪郭部分を異常部として誤検出することなく生体内管腔画像から異常部を精度良く検出することができる。
【０１４７】
（実施の形態６）
先ず、実施の形態６の画像処理装置の構成について説明する。図３４は、実施の形態６の画像処理装置１ｅの機能構成を説明するブロック図である。なお、実施の形態４で説明した構成と同一の構成については、同一の符号を付する。実施の形態６の画像処理装置１ｅは、図３４に示すように、画像取得部１１と、入力部１２と、表示部１３と、記録部１４ｅと、演算部２０ｅと、画像処理装置１ｅ全体の動作を制御する制御部１５とを備える。
【０１４８】
記録部１４ｅには、実施の形態６の処理を実現して生体内管腔画像から異常部を検出するための画像処理プログラム１４１ｅが記録される。
【０１４９】
また、演算部２０ｅは、勾配強度算出部２１と、閉領域抽出部２２ｅと、領域統合部３２と、異常部検出部３３とを含む。そして、実施の形態６において、閉領域抽出部２２ｅは、初期閉領域設定部２３と、エネルギー算出部２４ｅと、エネルギー加重和算出部２７と、閉領域更新部２８ｃとを備える。
【０１５０】
エネルギー算出部２４ｅは、屈曲エネルギー算出部２６ｅを備える。屈曲エネルギー算出部２６ｅは、凸状エネルギー算出部２６４ｅを備える。実施の形態６では、この凸状エネルギー算出部２６４ｅが、制御点毎に、他の制御点へのベクトルの閉領域内における内包状況をもとに凸状エネルギーの値を算出し、この凸状エネルギーの値を屈曲エネルギーの値とする。ここで、凸状エネルギーは、制御点間を結ぶ直線が閉領域内に多く内包されるほど大きな値を示すエネルギーである。
【０１５１】
ここで、図３５を参照して、実施の形態６における凸状エネルギーの算出原理について説明する。図３５は、凸状エネルギーを説明する説明図であり、境界の一部が屈曲している閉領域Ｅ９を示している。例えば、図３５に示す制御点Ｐｃ９に着目すると、凸状エネルギーの算出では、制御点Ｐｃ９から他の全ての制御点へのベクトルを算出する。そして、算出したベクトルのうち、閉領域Ｅ９に内包されないベクトル数をもとに凸状エネルギーの値を算出する。例えば、図３５では、制御点Ｐｃ９から他の制御点のそれぞれへ向かうベクトルのうち、制御点Ｐｃ９１や制御点Ｐｃ９２へ向かうベクトルＶ９１は閉領域Ｅ９に内包されている。一方、境界が屈曲している箇所の制御点（例えば制御点Ｐｃ９３や制御点Ｐｃ９４）へ向かうベクトルＶ９２は、閉領域Ｅ９に内包されていない。実施の形態６では、このベクトルＶ９２のような閉領域Ｅ９に内包されないベクトルの数をもとに各制御点についての凸状エネルギーの値を算出し、算出した凸状エネルギーの値を屈曲エネルギーの値とする。
【０１５２】
次に、実施の形態６の画像処理装置１ｅが行う具体的な処理手順について説明する。なお、ここで説明する処理は、演算部２０ｅが記録部１４ｅに記録された画像処理プログラム１４１ｅを実行することにより実現される。実施の形態６では、実施の形態４と同様に屈曲エネルギーの値を算出するが、その算出方法が実施の形態４と異なり、図２８の閉領域算出処理においてステップｐ３およびステップｐ１５で行うエネルギー算出処理の手順が実施の形態４と異なる。図３６は、実施の形態６におけるエネルギー算出の詳細な処理手順を示すフローチャートである。なお、図３６において、実施の形態３と同一の処理工程には、同一の符号を付する。
【０１５３】
図３６に示すように、実施の形態６のエネルギー算出処理では、先ず、凸状エネルギー算出部２６４ｅが、屈曲エネルギー算出処理を実行する（ステップｔ１）。図３７は、実施の形態６における屈曲エネルギー算出処理の詳細な処理手順を示すフローチャートである。なお、図３７において、実施の形態３と同一の処理工程には、同一の符号を付する。
【０１５４】
図３７に示すように、実施の形態６の屈曲エネルギー算出処理では、制御点Ａi(ｉ＝０，１，２・・・，ｎ：ｎは制御点の数)毎にループＥの処理を実行する（ステップｕ１〜ステップｕ９）。このループＥでは、先ず、凸状エネルギー算出部２６４ｅは、処理対象の制御点Ａiから他の全ての制御点Ａj(ｊ＝０，１，２・・・，ｍ：ｍは他の制御点の数)へ向かうベクトルＶijを算出する（ステップｕ３）。続いて、凸状エネルギー算出部２６４ｅは、ステップｕ３で算出したベクトルＶijが閉領域に内包されるか否かを判定し、内包されないと判定したベクトルＶijの数を計数して内包状況の一例である非内包ベクトル数を算出する（ステップｕ５）。その後、凸状エネルギー算出部２６４ｅは、ステップｕ５で算出した非内包ベクトル数をもとに、次式（９）に従って非内包ベクトル数が多いほど大きい値を示す凸状エネルギーＥcを算出し、屈曲エネルギーの値とする（ステップｕ７）。
凸状エネルギーＥc＝非内包ベクトル数／(総制御点数−１)  ・・・（９）
【０１５５】
以上のようにして屈曲エネルギーの値を得たならば、処理対象の制御点についてのループＥの処理を終える。そして、全ての制御点についてループＥの処理を実行したならば、図３６のステップｔ１にリターンする。この凸状エネルギーの値を算出して屈曲エネルギーの値とすることで、領域の境界がこの領域の内側に所定の曲率以上で屈曲しない条件を満たすような閉領域の抽出を実現できる。
【０１５６】
その後、エネルギー算出部２４ｅが、ステップｎ５以降の処理を実施の形態１と同様に行って内積エネルギー、画像エネルギーおよび外部エネルギーの各値を算出する。
【０１５７】
以上説明したように、実施の形態６では、各制御点から他の制御点へ向かうベクトルを算出し、閉領域に内包されるか否かを判定することで凸状エネルギーの値を算出することで閉領域の境界が内側に屈曲するほど大きな値を示す屈曲エネルギーの値を算出することとした。そして、この屈曲エネルギーを含む複数のエネルギーの加重和が最小となるように形状を更新していくことで閉領域を抽出することとした。したがって、生体内管腔画像中に映る溝位置を内部に含まず、その境界が輪郭部分を含まないような閉領域の抽出を適切に行うことができ、抽出した閉領域毎にモルフォロジー処理を適用することで閉領域内部の異常部を検出することができる。これによれば、溝位置や輪郭部分を異常部として誤検出することなく生体内管腔画像から異常部を精度良く検出することができる。
【０１５８】
なお、上記した実施の形態１の画像処理装置１、実施の形態２の画像処理装置１ａ、実施の形態３の画像処理装置１ｂ、実施の形態４の画像処理装置１ｃ、実施の形態５の画像処理装置１ｄ、実施の形態６の画像処理装置１ｅは、予め用意されたプログラムをパソコンやワークステーション等のコンピュータシステムで実行することによって実現することができる。以下、各実施の形態１〜６で説明した画像処理装置１，１ａ，１ｂ，１ｃ，１ｄ，１ｅと同様の機能を有し、画像処理プログラム１４１，１４１ａ，１４１ｂ，１４１ｃ，１４１ｄ，１４１ｅを実行するコンピュータシステムについて説明する。
【０１５９】
図３８は、本変形例におけるコンピューターシステム４００の構成を示すシステム構成図であり、図３９は、このコンピューターシステム４００を構成する本体部４１０の構成を示すブロック図である。図３８に示すように、コンピューターシステム４００は、本体部４１０と、本体部４１０からの指示によって表示画面４２１に画像等の情報を表示するためのディスプレイ４２０と、このコンピューターシステム４００に種々の情報を入力するためのキーボード４３０と、ディスプレイ４２０の表示画面４２１上の任意の位置を指定するためのマウス４４０とを備える。
【０１６０】
また、このコンピューターシステム４００における本体部４１０は、図３８および図３９に示すように、ＣＰＵ４１１と、ＲＡＭ４１２と、ＲＯＭ４１３と、ハードディスクドライブ（ＨＤＤ）４１４と、ＣＤ−ＲＯＭ４６０を受け入れるＣＤ−ＲＯＭドライブ４１５と、ＵＳＢメモリ４７０を着脱可能に接続するＵＳＢポート４１６と、ディスプレイ４２０、キーボード４３０およびマウス４４０を接続するＩ／Ｏインターフェース４１７と、ローカルエリアネットワークまたは広域エリアネットワーク（ＬＡＮ／ＷＡＮ）Ｎ１に接続するためのＬＡＮインターフェース４１８とを備える。
【０１６１】
さらに、このコンピューターシステム４００には、インターネット等の公衆回線Ｎ３に接続するためのモデム４５０が接続されるとともに、ＬＡＮインターフェース４１８およびローカルエリアネットワークまたは広域エリアネットワークＮ１を介して、他のコンピューターシステムであるパソコン（ＰＣ）４８１、サーバ４８２、プリンタ４８３等が接続される。
【０１６２】
そして、このコンピューターシステム４００は、記録媒体に記録された画像処理プログラム（例えば実施の形態１の画像処理プログラム１４１や実施の形態２の画像処理プログラム１４１ａ、実施の形態３の画像処理プログラム１４１ｂ、実施の形態４の画像処理プログラム１４１ｃ、実施の形態５の画像処理プログラム１４１ｄ、実施の形態６の画像処理プログラム１４１ｅ）を読み出して実行することで画像処理装置（例えば実施の形態１の画像処理装置１や実施の形態２の画像処理装置１ａ、実施の形態３の画像処理装置１ｂ、実施の形態４の画像処理装置１ｃ、実施の形態５の画像処理装置１ｄ、実施の形態６の画像処理装置１ｅ）を実現する。ここで、記録媒体とは、ＣＤ−ＲＯＭ４６０やＵＳＢメモリ４７０の他、ＭＯディスクやＤＶＤディスク、フレキシブルディスク（ＦＤ）、光磁気ディスク、ＩＣカード等を含む「可搬用の物理媒体」、コンピューターシステム４００の内外に備えられるＨＤＤ４１４やＲＡＭ４１２、ＲＯＭ４１３等の「固定用の物理媒体」、モデム４５０を介して接続される公衆回線Ｎ３や、他のコンピューターシステムであるＰＣ４８１やサーバ４８２が接続されるローカルエリアネットワークまたは広域エリアネットワークＮ１等のように、プログラムの送信に際して短期にプログラムを記憶する「通信媒体」等、コンピューターシステム４００によって読み取り可能な画像処理プログラムを記録するあらゆる記録媒体を含む。
【０１６３】
すなわち、画像処理プログラムは、「可搬用の物理媒体」「固定用の物理媒体」「通信媒体」等の記録媒体にコンピューター読み取り可能に記録されるものであり、コンピューターシステム４００は、このような記録媒体から画像処理プログラムを読み出して実行することで画像処理装置を実現する。なお、画像処理プログラムは、コンピューターシステム４００によって実行されることに限定されるものではなく、他のコンピューターシステムであるＰＣ４８１やサーバ４８２が画像処理プログラムを実行する場合や、これらが協働して画像処理プログラムを実行するような場合にも、本発明を同様に適用することができる。
【０１６４】
また、本発明は、上記した各実施の形態１〜６およびその変形例そのままに限定されるものではなく、各実施の形態や変形例に開示されている複数の構成要素を適宜組み合わせることによって、種々の発明を形成できる。例えば、各実施の形態や変形例に示される全構成要素からいくつかの構成要素を除外して形成してもよい。あるいは、異なる実施の形態や変形例に示した構成要素を適宜組み合わせて形成してもよい。
【産業上の利用可能性】
【０１６５】
以上のように、本発明の画像処理装置、画像処理方法、および画像処理プログラムは、生体内管腔画像から異常部を精度良く検出するのに適している。
【符号の説明】
【０１６６】
１，１ａ，１ｂ，１ｃ，１ｄ，１ｅ      画像処理装置
１１      画像取得部
１２      入力部
１３      表示部
１４，１４ａ，１４ｂ，１４ｃ，１４ｄ，１４ｅ      記録部
１４１，１４１ａ，１４１ｂ，１４１ｃ，１４１ｄ，１４１ｅ      画像処理プログラム
２０，２０ａ，２０ｂ，２０ｃ，２０ｄ，２０ｅ      演算部
２１      勾配強度算出部
２２，２２ａ，２２ｂ，２２ｃ，２２ｄ，２２ｅ      閉領域抽出部
２３      初期閉領域設定部
２４，２４ａ，２４ｂ，２４ｃ，２４ｄ，２４ｅ      エネルギー算出部
２５，２５ａ      エッジ内包エネルギー算出部
２５１      閉領域勾配強度算出部
２５２      増加率算出部
２５３ａ      エッジ抽出部
２５４ａ      屈曲点検出部
２５５ａ      端点検出部
２５６ａ      外積算出部
２６ｂ，２６ｃ，２６ｄ，２６ｅ      屈曲エネルギー算出部
２６１ｂ      外積エネルギー算出部
２６２ｃ      大局外積エネルギー算出部
２６３ｄ      多重外積エネルギー算出部
２６４ｅ      凸状エネルギー算出部
２７      エネルギー加重和算出部
２８，２８ａ，２８ｂ，２８ｃ，２８ｄ      閉領域更新部
２９，２９ａ，２９ｂ，２９ｃ，２９ｄ      更新範囲決定部
２９１      制御点距離算出部
３０ａ      形状情報算出部
３０１ａ      面積算出部
３０２ａ      周囲長算出部
３０３ａ      曲率算出部
３１１ｂ      エッジ情報検出部
３１２ｂ      端点屈曲点距離算出部
３１３ｂ      エッジ距離算出部
３２      領域統合部
３２１      統合部
３２２      統合後エネルギー算出部
３３      異常部検出部
１５      制御部
【図１】
0005658945.tif 000007
【図２】
0005658945.tif 000008
【図３】
0005658945.tif 000009
【図４】
0005658945.tif 000010
【図５】
0005658945.tif 000011
【図６】
0005658945.tif 000012
【図７】
0005658945.tif 000013
【図８】
0005658945.tif 000014
【図９】
0005658945.tif 000015
【図１０】
0005658945.tif 000016
【図１１】
0005658945.tif 000017
【図１２】
0005658945.tif 000018
【図１３】
0005658945.tif 000019
【図１４】
0005658945.tif 000020
【図１５】
0005658945.tif 000021
【図１６】
0005658945.tif 000022
【図１７】
0005658945.tif 000023
【図１８】
0005658945.tif 000024
【図１９】
0005658945.tif 000025
【図２０】
0005658945.tif 000026
【図２１】
0005658945.tif 000027
【図２２】
0005658945.tif 000028
【図２３】
0005658945.tif 000029
【図２４】
0005658945.tif 000030
【図２５】
0005658945.tif 000031
【図２６】
0005658945.tif 000032
【図２７】
0005658945.tif 000033
【図２８】
0005658945.tif 000034
【図２９】
0005658945.tif 000035
【図３０】
0005658945.tif 000036
【図３１】
0005658945.tif 000037
【図３２】
0005658945.tif 000038
【図３３】
0005658945.tif 000039
【図３４】
0005658945.tif 000040
【図３５】
0005658945.tif 000041
【図３６】
0005658945.tif 000042
【図３７】
0005658945.tif 000043
【図３８】
0005658945.tif 000044
【図３９】
0005658945.tif 000045