説明

画像処理装置、画像処理方法、および画像処理プログラム

【課題】生体内管腔画像から異常部を精度良く検出すること。
【解決手段】本発明のある実施の形態の画像処理装置1において、閉領域抽出部22は、閉領域の初期形状を設定する初期閉領域設定部23と、少なくとも閉領域の外形によって定まるエネルギーおよび閉領域における勾配強度によって定まるエネルギーを含む複数のエネルギーの値を算出するエネルギー算出部24と、複数のエネルギーの加重和を算出するエネルギー加重和算出部27と、複数のエネルギーのうちのいずれか1つの値をもとに閉領域の形状を更新する更新範囲を決定する更新範囲決定部29と、加重和をもとに、閉領域の更新範囲内の形状を更新する閉領域更新部28とを備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、生体内管腔を撮像した生体内管腔画像を処理する画像処理装置、画像処理方法、および画像処理プログラムに関するものである。
【背景技術】
【0002】
従来から、患者等の被検者の体内に導入されて体内管腔内を観察する医用観察装置として、内視鏡が広く普及している。また、近年では、カプセル型の筐体内部に撮像装置やこの撮像装置によって撮像された画像データを体外に無線送信する通信装置等を備えた飲み込み型の内視鏡(カプセル内視鏡)が開発されている。これらの医用観察装置によって撮像された体内管腔内の画像(生体内管腔画像)の観察・診断は、多くの経験を必要とするため、医師による診断を補助する医療診断支援機能が望まれている。この機能を実現する画像認識技術の1つとして、生体内管腔画像から病変等の異常部を自動的に検出して医師等に提示する技術が提案されている。
【0003】
例えば、特許文献1には、形状依存性フィルタを用い、粗大構造や線構造の影響を受けることなく乳癌の癌化部分の特徴の1つである微小石灰化陰影の候補を安定的に検出する技術が開示されている。この特許文献1では、想定される微小石灰化陰影の形状をもとに、撮影条件や読取り条件、画像コントラスト、微小石灰化陰影のサイズといった各種条件、あるいはこれらを組み合わせた条件等に応じてフィルタ特性を最適化した第2の形状依存性フィルタを事前に準備しておく。そして、先ず、モルフォロジーフィルタ(例えば非特許文献1,2を参照)である第1の形状依存性フィルタを用いて画像中の直線構造を除去することで、微細構造部分を表す微細構造画像を生成する。その後、微細構造画像に対して準備しておいた第2の形状依存性フィルタを用いた強調処理を施すことにより、周囲(第1の形状依存性フィルタで除ききれなかった粗大構造部分や線構造部分等を含む微小石灰化陰影候補以外の部分)と比較して相対的に微小石灰化陰影候補のみを強調した強調処理済画像を生成している。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2002−99896号公報
【非特許文献】
【0005】
【非特許文献1】小畑他,「多重構造要素を用いたモルフォロジーフィルタによる微小石灰化像の抽出」,電子情報通信学会論文誌,D-II,Vol.J75-D-II,No.7,P1170〜1176,July 1992
【非特許文献2】小畑他,「モルフォロジーの基礎とそのマンモグラム処理への応用」,MEDICAL IMAGING TECHNOLOGY,Vol.12,No.1,January 1994
【発明の概要】
【発明が解決しようとする課題】
【0006】
ところで、上記した内視鏡やカプセル内視鏡等の医用観察装置によって撮像される生体内管腔画像には、例えば消化管内壁の粘膜構造の折りたたみやうねりによって発生する溝や、粘膜ひだの輪郭等、曲率が大きく折れ曲がったような箇所が多く存在する。このため、特許文献1を生体内管腔画像に適用し、病変等の異常部を検出しようとすると、直線構造を除去する第1の形状依存性フィルタ(モルフォロジーフィルタ)では、フィルタのサイズに依存して、前述のような生体組織が形成する溝位置や輪郭部分等のように、曲率が大きく折れ曲がったような箇所が微細構造画像に残ってしまう。また、特許文献1の第2の形状依存性フィルタは特定の形状(微小石灰化陰影の形状)を強調するためのものであるが、生体内管腔画像に映る異常部は決まった形状を持たない。このため、特許文献1のように、異常部の形状を事前に想定し、第1の形状依存性フィルタで残る構造、例えば前述のような曲率が大きく折れ曲がったような箇所と異常部とを区別するための最適な形状依存性フィルタを設計するのは難しい。したがって、2種類の形状依存性フィルタを組み合わせても、異常部を溝位置や輪郭部分と区別して検出するのは困難であった。
【0007】
本発明は、上記に鑑み為されたものであって、生体内管腔画像から異常部を精度良く検出することができる画像処理装置、画像処理方法、および画像処理プログラムを提供することを目的とする。
【課題を解決するための手段】
【0008】
上記した課題を解決し、目的を達成するための、本発明のある態様にかかる画像処理装置は、生体内管腔を撮像した生体内管腔画像から異常部を検出する画像処理装置であって、前記生体内管腔画像をもとに、各画素の画素値の勾配強度を算出する勾配強度算出手段と、前記勾配強度が所定の値以上である画素を領域の内部に含まず、かつ、領域の境界が該領域の内側に所定の曲率以上で屈曲しないことを条件として該条件を満たす閉領域を抽出する閉領域抽出手段と、前記閉領域の内側から異常部を検出する異常部検出手段と、を備え、前記閉領域抽出手段は、前記閉領域の初期形状を設定する初期閉領域設定手段と、少なくとも前記閉領域の外形によって定まるエネルギーおよび前記閉領域における前記勾配強度によって定まるエネルギーを含む複数のエネルギーの値を算出するエネルギー算出手段と、前記複数のエネルギーの加重和を算出するエネルギー加重和算出手段と、前記複数のエネルギーのうちのいずれか1つの値をもとに前記閉領域の形状を更新する更新範囲を決定する更新範囲決定手段と、前記加重和をもとに、前記閉領域の前記更新範囲内の形状を更新する閉領域更新手段と、を備えることを特徴とする。
【0009】
上記態様の画像処理装置によれば、閉領域の外形によって定まるエネルギーおよび閉領域における前記勾配強度によって定まるエネルギーを含む複数のエネルギーのうちのいずれか1つの値をもとに閉領域の形状を更新する更新範囲を決定することができる。したがって、勾配強度が所定の値以上である画素を領域の内部に含まず、かつ、領域の境界がこの領域の内側に所定の曲率以上で屈曲しない条件を満たす閉領域を適切に抽出することができ、抽出した閉領域内部の異常部を検出することができる。これによれば、溝位置や輪郭部分を異常部として誤検出する事態を抑制し、生体内管腔画像から異常部を精度良く検出することができるという効果を奏する。
【0010】
また、本発明の別の態様にかかる画像処理方法は、生体内管腔を撮像した生体内管腔画像から異常部を検出する画像処理方法であって、前記生体内管腔画像をもとに、各画素の画素値の勾配強度を算出する勾配強度算出工程と、前記勾配強度が所定の値以上である画素を領域の内部に含まず、かつ、領域の境界が該領域の内側に所定の曲率以上で屈曲しないことを条件として該条件を満たす閉領域を抽出する閉領域抽出工程と、前記閉領域の内側から異常部を検出する異常部検出工程と、を含み、前記閉領域抽出工程は、前記閉領域の初期形状を設定する初期閉領域設定工程と、少なくとも前記閉領域の外形によって定まるエネルギーおよび前記閉領域における前記勾配強度によって定まるエネルギーを含む複数のエネルギーの値を算出するエネルギー算出工程と、前記複数のエネルギーの加重和を算出するエネルギー加重和算出工程と、前記複数のエネルギーのうちのいずれか1つの値をもとに前記閉領域の形状を更新する更新範囲を決定する更新範囲決定工程と、前記加重和をもとに、前記閉領域の前記更新範囲内の形状を更新する閉領域更新工程と、を含むことを特徴とする。
【0011】
また、本発明の別の態様にかかる画像処理プログラムは、生体内管腔を撮像した生体内管腔画像から異常部を検出する画像処理プログラムであって、前記生体内管腔画像をもとに、各画素の画素値の勾配強度を算出する勾配強度算出ステップと、前記勾配強度が所定の値以上である画素を領域の内部に含まず、かつ、領域の境界が該領域の内側に所定の曲率以上で屈曲しないことを条件として該条件を満たす閉領域を抽出する閉領域抽出ステップと、前記閉領域の内側から異常部を検出する異常部検出ステップと、をコンピュータに実行させ、前記閉領域抽出ステップは、前記閉領域の初期形状を設定する初期閉領域設定ステップと、少なくとも前記閉領域の外形によって定まるエネルギーおよび前記閉領域における前記勾配強度によって定まるエネルギーを含む複数のエネルギーの値を算出するエネルギー算出ステップと、前記複数のエネルギーの加重和を算出するエネルギー加重和算出ステップと、前記複数のエネルギーのうちのいずれか1つの値をもとに前記閉領域の形状を更新する更新範囲を決定する更新範囲決定ステップと、前記加重和をもとに、前記閉領域の前記更新範囲内の形状を更新する閉領域更新ステップと、を前記コンピュータに実行させることを特徴とする。
【発明の効果】
【0012】
本発明によれば、生体内管腔画像から異常部を精度良く検出することができるという効果を奏する。
【図面の簡単な説明】
【0013】
【図1】図1は、実施の形態1の画像処理装置の機能構成を説明するブロック図である。
【図2】図2は、閉領域の抽出原理を説明する説明図である。
【図3】図3は、内部に溝位置等であるエッジを含む閉領域を示す図である。
【図4】図4は、図3中に一点鎖線で示すライン上の画素値の変化曲線を示す図である。
【図5】図5は、輪郭部分等である大きく屈曲するエッジを境界に含む閉領域を示す図である。
【図6】図6は、図5中に一点鎖線で示すライン上の画素値の変化曲線を示す図である。
【図7】図7は、実施の形態1の画像処理装置が行う処理手順を示す全体フローチャートである。
【図8】図8は、実施の形態1における閉領域抽出処理の詳細な処理手順を示すフローチャートである。
【図9】図9は、実施の形態1におけるエネルギー算出処理の詳細な処理手順を示すフローチャートである。
【図10】図10は、実施の形態1におけるエッジ内包判定処理の詳細な処理手順を示すフローチャートである。
【図11】図11は、実施の形態1におけるエッジ内包判定処理の原理を説明する説明図である。
【図12】図12は、エッジ内包エネルギーを説明する説明図である。
【図13】図13は、閉領域統合処理の詳細な処理手順を示すフローチャートである。
【図14】図14は、異常部検出処理の詳細な処理手順を示すフローチャートである。
【図15】図15は、実施の形態2の画像処理装置の機能構成を説明するブロック図である。
【図16】図16は、実施の形態2における閉領域抽出処理の詳細な処理手順を示すフローチャートである。
【図17】図17は、エッジ抽出処理の詳細な処理手順を示すフローチャートである。
【図18】図18は、実施の形態2におけるエネルギー算出処理の詳細な処理手順を示すフローチャートである。
【図19】図19は、実施の形態2におけるエッジ内包判定処理の詳細な処理手順を示すフローチャートである。
【図20】図20は、実施の形態2における更新範囲決定処理の詳細な処理手順を示すフローチャートである。
【図21】図21は、実施の形態3の画像処理装置の機能構成を説明するブロック図である。
【図22】図22は、実施の形態3の画像処理装置が行う処理手順を示す全体フローチャートである。
【図23】図23は、実施の形態3における閉領域抽出処理の詳細な処理手順を示すフローチャートである。
【図24】図24は、実施の形態3におけるエネルギー算出処理の詳細な処理手順を示すフローチャートである。
【図25】図25は、外積エネルギーを説明する説明図である。
【図26】図26は、実施の形態3における更新範囲決定処理の詳細な処理手順を示すフローチャートである。
【図27】図27は、実施の形態4の画像処理装置の機能構成を説明するブロック図である。
【図28】図28は、実施の形態4における閉領域抽出処理の詳細な処理手順を示すフローチャートである。
【図29】図29は、実施の形態4におけるエネルギー算出処理の詳細な処理手順を示すフローチャートである。
【図30】図30は、実施の形態5の画像処理装置の機能構成を説明するブロック図である。
【図31】図31は、屈曲エネルギーを説明する説明図である。
【図32】図32は、実施の形態5における閉領域抽出処理の詳細な処理手順を示すフローチャートである。
【図33】図33は、実施の形態5におけるエネルギー算出処理の詳細な処理手順を示すフローチャートである。
【図34】図34は、実施の形態6の画像処理装置の機能構成を説明するブロック図である。
【図35】図35は、凸状エネルギーを説明する説明図である。
【図36】図36は、実施の形態6におけるエネルギー算出の詳細な処理手順を示すフローチャートである。
【図37】図37は、実施の形態6における屈曲エネルギー算出処理の詳細な処理手順を示すフローチャートである。
【図38】図38は、本発明を適用したコンピューターシステムの構成を示すシステム構成図である。
【図39】図39は、図38のコンピューターシステムを構成する本体部の構成を示すブロック図である。
【発明を実施するための形態】
【0014】
以下、図面を参照し、本発明の好適な実施の形態について説明する。なお、この実施の形態によって本発明が限定されるものではない。また、各図面の記載において、同一部分には同一の符号を付して示している。
【0015】
本実施の形態の画像処理装置は、例えば内視鏡やカプセル内視鏡等の医用観察装置が被検者の体内の消化管等の生体内管腔を撮像した画像(生体内管腔画像)を処理し、生体内管腔画像から例えば病変や出血部位等の異常部を検出する処理を行うものである。上記したように、生体内管腔画像には、粘膜構造等の生体組織が形成する溝の陰影や輪郭が映る。本実施の形態では、この溝位置や輪郭部分を異常部として誤検出する事態を抑制するため、生体内管腔画像中においてこれら溝位置や輪郭部分を内部や境界に含まないように閉領域を抽出し、抽出した閉領域毎に異常部を検出する。なお、本実施の形態において、生体内管腔画像は、例えば、画素毎にR(赤),G(緑),B(青)の各波長成分に対する画素値を持つカラー画像である。
【0016】
(実施の形態1)
先ず、実施の形態1の画像処理装置について説明する。図1は、実施の形態1の画像処理装置1の機能構成を説明するブロック図である。実施の形態1の画像処理装置1は、図1に示すように、画像取得部11と、入力部12と、表示部13と、記録部14と、演算部20と、画像処理装置1全体の動作を制御する制御部15とを備える。
【0017】
画像取得部11は、医用観察装置によって撮像された生体内管腔画像の画像データを取得するためのものであり、この画像取得部11によって取得された生体内管腔画像の画像データは記録部14に記録され、演算部20によって処理された後、必要に応じて適宜表示部13に表示される。画像取得部11は、例えば医用観察装置との間の画像データの受け渡しに可搬型の記録媒体が使用される場合であれば、この記録媒体を着脱自在に装着して保存された生体内管腔画像の画像データを読み出すリーダ装置で構成される。また、医用観察装置によって撮像された生体内管腔画像の画像データを保存しておくサーバを適所に設置し、このサーバから取得する構成の場合には、画像取得部11を、サーバと接続するための通信装置等で構成する。そして、この画像取得部11を介してサーバとデータ通信を行い、生体内管腔画像の画像データを取得する。また、この他、医用観察装置から画像データをケーブルを介して取得する構成の場合には、画像取得部11を、画像データが入力されるインターフェース装置等で構成してもよい。
【0018】
入力部12は、例えばキーボードやマウス、タッチパネル、各種スイッチ等によって実現されるものであり、入力信号を制御部15に出力する。表示部13は、LCDやELディスプレイ等の表示装置によって実現されるものであり、制御部15の制御のもと、生体内管腔画像を含む各種画面を表示する。
【0019】
記録部14は、更新記録可能なフラッシュメモリ等のROMやRAMといった各種ICメモリ、内蔵或いはデータ通信端子で接続されたハードディスク、CD−ROM等の情報記録媒体およびその読取装置等によって実現されるものであり、画像処理装置1を動作させ、この画像処理装置1が備える種々の機能を実現するためのプログラムや、このプログラムの実行中に使用されるデータ等が予めあるいは処理の都度一時的に記録される。この記録部14には、画像取得部11によって取得された生体内管腔画像の画像データが記録される。また、記録部14には、実施の形態1の処理を実現して生体内管腔画像から異常部を検出するための画像処理プログラム141が記録される。
【0020】
演算部20は、CPU等のハードウェアによって実現され、生体内管腔画像を処理して異常部を検出するための種々の演算処理を行う。この演算部20は、勾配強度算出手段としての勾配強度算出部21と、閉領域抽出手段としての閉領域抽出部22と、領域統合手段としての領域統合部32と、異常部検出手段としての異常部検出部33とを含む。
【0021】
勾配強度算出部21は、生体内管腔画像の各画素の画素値をもとに、各画素の画素値の勾配強度を算出する。
【0022】
閉領域抽出部22は、勾配強度が予め設定される所定の値以上である画素を領域の内部に含まず、かつ、領域の境界がこの領域の内側に所定の曲率以上で屈曲しないことを条件とし、生体内管腔画像から前述の条件を満たす閉領域を抽出する。この閉領域抽出部22は、初期閉領域設定手段としての初期閉領域設定部23と、エネルギー算出手段としてのエネルギー算出部24と、エネルギー加重和算出手段としてのエネルギー加重和算出部27と、閉領域更新手段としての閉領域更新部28とを備え、動的輪郭抽出法(参考:CG−ARTS協会,ディジタル画像処理,P196〜P200,領域分割処理)を用いて複数のエネルギー、例えば後述するエッジ内包エネルギー、内部エネルギー、画像エネルギーおよび外部エネルギーの4つのエネルギーの加重和の最小値を求めることで、閉領域を抽出する。
【0023】
初期閉領域設定部23は、閉領域の初期形状である初期閉領域を設定する。
【0024】
エネルギー算出部24は、少なくとも閉領域の外形によって定まるエネルギーおよび閉領域の画素の勾配強度によって定まるエネルギーを含む複数のエネルギーの値を算出する。このエネルギー算出部24は、エッジ内包エネルギー算出手段としてのエッジ内包エネルギー算出部25を備える。エッジ内包エネルギー算出部25は、閉領域の画素の勾配強度によって定まるエネルギーに相当するエッジ内包エネルギーの値を算出する。ここで、エッジ内包エネルギーは、閉領域内の勾配強度が大きいほど大きい値を示すエネルギーである。このエッジ内包エネルギー算出部25は、閉領域勾配強度算出手段としての閉領域勾配強度算出部251と、増加率算出手段としての増加率算出部252とを備える。閉領域勾配強度算出部251は、閉領域の内部における勾配強度をもとに閉領域内勾配強度を算出する。増加率算出部252は、形状の更新前後での閉領域の内部の勾配強度の増加率を算出する。
【0025】
また、エネルギー算出部24は、エッジ内包エネルギー算出部25が算出するエッジ内包エネルギーとは別に、閉領域の外形によって定まるエネルギーに相当する内部エネルギーおよび外部エネルギーと、閉領域の画素の勾配強度によって定まるエネルギーに相当する画像エネルギーの3つのエネルギーの各値を算出する。ここで、内部エネルギーは、閉領域の境界の滑らかさを表し、閉領域の形状が滑らかなほど小さい値を示すエネルギーである。画像エネルギーは、閉領域の境界における勾配強度の値が大きいほど小さい値を示すエネルギーである。外部エネルギーは、閉領域の大きさが大きいほど小さい値を示すエネルギーである。
【0026】
エネルギー加重和算出部27は、エネルギー算出部24が算出した複数のエネルギーの加重和を算出する。実施の形態1では、エネルギー加重和算出部27は、エッジ内包エネルギー、内部エネルギー、画像エネルギーおよび外部エネルギーの4つのエネルギーの加重和を算出する。なお、必ずしもこれら4つのエネルギーの加重和を算出する必要はなく、これら4つの中から2つ以上のエネルギーを選んでその加重和を算出することとしてもよい。
【0027】
閉領域更新部28は、エネルギー加重和算出部27が算出した4つのエネルギーの加重和が小さくなる方向へ閉領域の形状を更新する。この閉領域更新部28は、更新範囲決定手段としての更新範囲決定部29を備える。更新範囲決定部29は、閉領域の形状を更新する更新範囲を決定する機能部であり、制御点距離算出手段としての制御点距離算出部291を備える。後述するように、初期閉領域は、複数の制御点を結んだものとして設定され、各制御点が移動されることで変形(形状が更新)されていくものである。ここで、制御点とは、閉領域の境界に位置する座標点のことをいう。制御点距離算出部291は、前述の制御点毎に、形状を更新した結果エッジ内包エネルギーの値が所定の閾値以上となった制御点との距離を算出する。なお、ここでは、エッジ内包エネルギーの値を用いることとしたが、他のエネルギーの値を用いることとしてもよい。
【0028】
領域統合部32は、閉領域抽出部22が抽出した閉領域の統合を行う。このとき、領域統合部32は、勾配強度が所定の値以上である画素を領域の内部に含まず、かつ、領域の境界がこの領域の内側に所定の曲率以上で屈曲しない条件を満たすように閉領域を統合する。この領域統合部32は、統合手段としての統合部321と、統合後エネルギー算出手段としての統合後エネルギー算出部322とを備える。統合部321は、統合対象の閉領域を選出し、選出した閉領域を1つの領域に統合する。統合後エネルギー算出部322は、統合部321による統合後の閉領域についてエッジ内包エネルギー、内部エネルギー、画像エネルギーおよび外部エネルギーの4つのエネルギーの加重和を算出する。
【0029】
異常部検出部33は、閉領域毎にその境界の内側(内部)の異常部を検出する。
【0030】
制御部15は、CPU等のハードウェアによって実現される。この制御部15は、画像取得部11によって取得された画像データや入力部12から入力される入力信号、記録部14に記録されるプログラムやデータ等をもとに画像処理装置1を構成する各部への指示やデータの転送等を行い、画像処理装置1全体の動作を統括的に制御する。
【0031】
ここで、実施の形態1において閉領域抽出部22が行う閉領域の抽出原理について説明する。図2は、閉領域の抽出原理を説明する説明図であり、閉領域抽出部22において初期閉領域設定部23が設定する初期閉領域E11を模式的に示している。図2に示すように、初期閉領域E11は、その境界上の画素に複数の制御点Pcを配置し、これら制御点Pcを結んだものとして設定される。なお、図2では、初期閉領域E11を円形状として示しているが、これに限定されるものではない。また、初期閉領域E11の大きさや、配置する制御点Pcの数についても、適宜設定してよい。例えば、初期閉領域のサイズをもとに決定する。そして、各制御点Pcの位置やその位置における勾配強度、重心(中心)P1からの各制御点Pcの距離、内部の画素の勾配強度等から上記したエッジ内包エネルギー、内部エネルギー、画像エネルギーおよび外部エネルギーを制御点Pc毎に算出し、これら4つのエネルギーの加重和が最小となるように制御点Pcを移動させることで初期閉領域E11を領域が広がる方向に変形させていき、閉領域を抽出する。
【0032】
このようにして閉領域を抽出したならば、閉領域内部の異常部を検出する。本例では、詳細を後述するように、モルフォロジー処理、例えば球形の構造要素を用いた3次元モルフォロジー処理(濃淡モルフォロジー)を行って異常部を検出する。ここで、モルフォロジー処理には、オープニング(Opening)処理(参考:CG−ARTS協会,ディジタル画像処理,P179〜P180,収縮・膨張処理)とクロージング(Closing)処理(参考:CG−ARTS協会,ディジタル画像処理,P179〜P180,収縮・膨張処理)とがある。オープニング処理は、画素値を高度とみなした3次元空間において、構造要素と呼ばれる基準図形(本例では球形)を対象領域の画素値の小さい方(下側)から外接させて移動させた際に構造要素の外周の最大値が通過する軌跡(面)を算出する処理である。一方、クロージング処理は、同様の3次元空間において、構造要素を対象領域の画素値の大きい方(上側)から外接させて移動させた際に構造要素の外周の最小値が通過する軌跡(面)を算出する処理である。そして、オープニング処理を用いた場合には、得られた軌跡上の値を基準値として用い、実際の画素値との差分が大きい画素を異常部として検出する。クロージング処理を用いた場合も同様に、得られた軌跡上の基準値と実際の画素値との差分が大きい画素を異常部として検出する。
【0033】
ところで、前述のオープニング処理やクロージング処理を含むモルフォロジー処理を適用して閉領域毎に異常部を検出する場合、溝位置を閉領域の内部に含むと、この溝位置を異常部として誤検出する場合があった。図3は、閉領域の一例を示す模式図であり、内部に溝位置等であるエッジ51を含むように作成された閉領域を示している。また、図4は、横軸を図3中に一点鎖線で示すライン(エッジ51を跨ぐライン)上の境界画素P31,P32間の画素位置とし、縦軸を該当する各画素の画素値として画素値の変化曲線L31を示したものである。エッジ51を跨ぐライン上では、図4に示すように、その画素値の変化がエッジ位置で局所的に大きく窪む。このため、内部にエッジ51を含む閉領域に対してモルフォロジー処理(クロージング処理)を行い、構造要素F3を上側から外接させて移動させた際(矢印A31)、前述の窪んだ部分の幅に対して構造要素F3が大きいとこの部分に構造要素F3が入り込まないため、図4中に一点鎖線で示すような軌跡L32(実際には面)が得られる。このように、閉領域の内部に溝位置等であるエッジ51を含むと、構造要素F3の形状に依存して、得られる基準値が実際の画素値から大きく逸脱する。一方で、上記したように、異常部の検出は、得られた軌跡L32上の値を基準値として用い、各画素の画素値を基準値と比較することで差の大きい画素を異常部として検出する。したがって、溝位置等であるエッジを閉領域の内部に含むような閉領域を作成してしまうと、矢印A32で示す差分によってエッジ51の部分が異常部として誤検出されてしまう場合がある。
【0034】
同様に、所定の曲率以上で内側に屈曲する輪郭部分を閉領域の境界が含むと、この輪郭部分を異常部として誤検出する場合があった。図5は、閉領域の他の例を示す模式図であり、輪郭部分等である所定の曲率以上で内側に屈曲するエッジ52を境界に含むように作成された閉領域を示している。また、図6は、横軸を図5中に一点鎖線で示すライン(エッジ52の屈曲部分を跨ぐライン)上の境界画素P41,P44間の画素位置とし、縦軸を閉領域の内部である境界画素P41,P42間および境界画素P43,P44間の各画素の画素値として画素値の変化曲線L41を示したものである。エッジ52の屈曲部分を跨ぐライン上では、図6に示すように、その画素値の変化が屈曲位置で途切れる。ここで、境界が内側に大きく屈曲するエッジ52を含む閉領域に対してモルフォロジー処理(クロージング処理)を行い、構造要素F4を上側から外接させて移動させた際(矢印A41)、前述の途切れた部分の間隔に対して構造要素F4が大きいとこの部分に構造要素F4が入り込まないため、図6中に一点鎖線で示すような軌跡L42(実際には面)が得られる。このように、閉領域の境界が輪郭部分等である内側に大きく屈曲するエッジを含むと、閉領域の内部に溝位置等であるエッジを含む場合と同様に、構造要素の形状に依存して得られる基準値が実際の画素値から大きく逸脱してしまい、矢印A42で示す差分によって輪郭部分が異常部として誤検出されてしまう場合がある。
【0035】
以上のような事態を抑制するため、実施の形態1では、閉領域抽出部22は、勾配強度が所定の値以上である画素(エッジ部分の画素)を領域の内部に含まず、かつ、領域の境界が内側に所定の曲率以上で屈曲しないことを条件とした閉領域の抽出を行う。これにより、モルフォロジー処理を適用して行う後段の異常部検出において、基準値を適正に得ることが可能となる。
【0036】
次に、実施の形態1の画像処理装置1が行う具体的な処理手順について説明する。図7は、実施の形態1の画像処理装置1が行う処理手順を示す全体フローチャートである。ここで説明する処理は、演算部20が記録部14に記録された画像処理プログラム141を実行することにより実現される。
【0037】
図7に示すように、先ず演算部20は、処理対象の生体内管腔画像を取得する(ステップa1)。ここでの処理によって、演算部20は、画像取得部11によって取得され、記録部14に記録された処理対象の生体内管腔画像を読み出して取得する。
【0038】
続いて、勾配強度算出部21が、生体内管腔画像の各画素の例えばG値をもとに画素毎に勾配強度を算出する(ステップa3)。これは、例えばソーベル(Sobel)フィルタ等の1次微分フィルタやラプラシアン(Laplacian)フィルタ等の2次微分フィルタを用いた公知のエッジ抽出処理(参考:CG−ARTS協会,ディジタル画像処理,P114〜P121,エッジ抽出)等を適用することで実現できる。G値を用いるのは、ヘモグロビンの吸収波長帯域に近く、感度も得易いことから、生体内管腔画像の構造をよく表すためである。なお、ここでは、各画素のG値をもとに勾配強度を算出することとしたが、各画素の輝度値を算出し、輝度値をもとに各画素の勾配強度を算出することとしてもよい。
【0039】
続いて、初期閉領域設定部23が、閉領域の初期形状(初期閉領域)を設定する(ステップa5)。例えば、初期閉領域設定部23は、設定位置をランダムに決定し、決定した設定位置に初期閉領域を設定する。また、このとき、初期閉領域設定部23は、設定した初期閉領域の重心(中心)を算出する。設定する初期閉領域の大きさ、形状および配置する制御点の数は例えば固定とし、予め設定しておく。なお、これらの値は、ユーザ操作に従って可変に設定可能に構成してもよい。また、初期閉領域の設定方法は特に限定されるものではなく、各画素の勾配強度をもとに、勾配強度が小さい箇所を選んで初期閉領域を設定するようにしてもよい。
【0040】
続いて、閉領域抽出部22が、閉領域抽出処理を実行する(ステップa7)。図8は、実施の形態1における閉領域抽出処理の詳細な処理手順を示すフローチャートである。図8に示すように、実施の形態1の閉領域抽出処理では、先ず、エネルギー算出部24が、エネルギー算出処理を実行する(ステップb1)。このエネルギー算出処理は、後段のステップb15と同様の処理手順で初期閉領域について行い、エッジ内包エネルギー、内部エネルギー、画像エネルギーおよび外部エネルギーの4つのエネルギーの値を制御点毎に算出する。なお、詳細な処理手順については、ステップb15の説明として後述する。
【0041】
続いて、エネルギー加重和算出部27が、初期閉領域についてステップb1で算出したエッジ内包エネルギー、内部エネルギー、画像エネルギーおよび外部エネルギーの4つのエネルギーの加重和を算出する(ステップb3)。具体的には、4つのエネルギーの加重和は、ステップb1で制御点毎に算出したエッジ内包エネルギー、内部エネルギー、画像エネルギーおよび外部エネルギーの4つのエネルギーの加重和(重み付けしたエッジ内包エネルギー、内部エネルギー、画像エネルギーおよび外部エネルギーの和)の総和として算出される。その後、ステップb5〜ステップb19の処理を繰り返し行うことで初期閉領域(閉領域の初期形状)を更新していき、閉領域を抽出する。
【0042】
先ず、ステップb5では、更新範囲決定部29が、エッジ内包エネルギーの値が予め設定される閾値以上である制御点の有無を判定する。そして、更新範囲決定部29は、エッジ内包エネルギーの値が所定の閾値以上である制御点がある場合には(ステップb5:Yes)、エッジ内包エネルギーの値が所定の閾値以上である制御点との距離を制御点毎に算出する(ステップb7)。そして、更新範囲決定部29は、算出した距離が予め設定される所定範囲内である制御点を除外して制御点の更新範囲を決定する(ステップb9)。すなわち、エッジ内包エネルギーの値が所定の閾値以上である制御点からの距離が所定範囲内にある制御点を制御点の更新範囲から除外する。このとき、ステップb5〜ステップb19の繰り返しの過程で既にエッジ内包エネルギーの値が所定の閾値以上となっている制御点から所定範囲内の制御点についても、制御点の更新範囲から除外する。一方、エッジ内包エネルギーの値が所定の閾値以上である制御点がない場合には(ステップb5:No)、更新範囲決定部29は、全ての制御点を制御点の更新範囲とする(ステップb11)。
【0043】
続いて、閉領域更新部28が、ステップb9またはステップb11で決定した更新範囲内の制御点を移動させることで閉領域の形状を更新する(ステップb13)。ここでは、例えば、周囲8方向のうちの閉領域の外側となる方向を優先して更新範囲内の制御点をそれぞれ移動させることで、閉領域の形状を広がる方向へ更新する。例えば、図2の例では、各制御点Pcの位置を初期閉領域E11の境界外側に移動させ、その形状を図2中に矢印で示すように広がる方向へ更新する。各制御点を移動させる距離については、例えば乱数を発生させる等して決定する。また、このとき、制御点Pcの更新範囲が図2中に一点鎖線で囲って示す範囲E12の場合には、この更新範囲E12外の制御点Pcは動かさず、更新範囲E12内の制御点Pcのみを動かして閉領域の形状を更新する。
【0044】
続いて、エネルギー算出部24が、エネルギー算出処理を実行する(ステップb15)。このステップb15では、ステップb13で更新した更新後の閉領域についてエネルギー算出処理を実行する。図9は、実施の形態1におけるエネルギー算出処理の詳細な処理手順を示すフローチャートである。
【0045】
図9に示すように、実施の形態1のエネルギー算出処理では先ず、エッジ内包エネルギー算出部25が、エッジ内包判定処理を実行する(ステップc1)。このエッジ内包判定処理では、制御点を順次処理対象とし、その内包判定領域内の勾配強度をもとに処理対象の制御点についての閉領域内勾配強度を算出する。具体的には、処理対象の制御点、この制御点と時計回り方向に隣接する制御点、および閉領域の重心を頂点とする三角形を内包判定領域とし、この内包判定領域に内包される画素の勾配強度をもとに閉領域内勾配強度を算出する。そして、閉領域の更新前後での閉領域内勾配強度の増加率を算出する。図10は、実施の形態1におけるエッジ内包判定処理の詳細な処理手順を示すフローチャートである。また、図11は、実施の形態1におけるエッジ内包判定処理の原理を説明する説明図であり、閉領域の重心P5と、この閉領域の境界に配置された2つの制御点Pc51,Pc52とを示している。
【0046】
図10に示すように、実施の形態1のエッジ内包判定処理では、制御点毎にループAの処理を実行する(ステップd1〜ステップd15)。このループAでは、先ず、エッジ内包エネルギー算出部25において、閉領域勾配強度算出部251が、処理対象の制御点である制御点Ai(i=0,1,2・・・,n:nは制御点の数)と、この制御点Aiと時計回り方向に隣接する制御点Ai+1とを結んだベクトルV1iを求める(ステップd3)。例えば、図11に示すように、制御点Aiである制御点Pc51から、この制御点Pc51と時計回り方向に隣接する制御点Ai+1である制御点Pc52へのベクトルV51をV1iとして求める。
【0047】
続いて、閉領域勾配強度算出部251は、制御点Aiと時計回り方向に隣接する制御点Ai+1と、閉領域(前段の図8のステップb1の処理としてエネルギー算出処理を行う場合は初期閉領域であり、以下エネルギー算出処理の説明において同様である)の重心Wとを結んだベクトルV2iを求める(ステップd5)。例えば、図11の例では、制御点Pc52から、閉領域の重心Wである重心P5へのベクトルV52をV2iとして求める。
【0048】
続いて、閉領域勾配強度算出部251は、閉領域の重心Wと制御点Aiとを結んだベクトルV3iを求める(ステップd7)。例えば、図11の例では、重心P5から制御点Pc51へのベクトルV53をV3iとして求める。
【0049】
続いて、閉領域勾配強度算出部251は、閉領域内の各画素に順次注目し、求めた3つのベクトルV1i,V2i,V3iのそれぞれについてその始点から注目画素へのベクトルとの外積を算出することで、処理対象の制御点の内包判定領域、すなわち、制御点Ai、制御点Ai+1および重心Wを頂点とする三角形に内包される画素を判定する(ステップd9)。算出した外積の符号が全て同じであれば、その注目画素を内包判定領域内の画素と判定する。全ての符号が一致しない場合には、その注目画素を内包判定領域外の画素と判定する。
【0050】
例えば、図11中にハッチングを付して示す制御点Pc51の内包判定領域E5、すなわち、制御点Pc51、制御点Pc52および重心P5を頂点とする三角形内の画素P61に注目した場合、ベクトルV51と制御点Pc51から注目画素P61へのベクトルV61との外積(V51×V61)、ベクトルV52と制御点Pc52から注目画素P61へのベクトルV62との外積(V52×V62)、およびベクトルV53と重心P5から注目画素P61へのベクトルV63との外積(V53×V63)を算出する。ここで、注目画素P61のように、内包判定領域E5内の画素は、各ベクトルV51,V52,V53に対して右側に存在するため、得られる外積の符号は一致する。一方、画素P62のように、内包判定領域E5外の画素について同様に外積を求めると、得られる外積の符号は一致しない。
【0051】
続いて、閉領域勾配強度算出部251は、内包判定領域に内包されると判定された各画素の勾配強度の平均値を算出し、処理対象の制御点である制御点Aiについての閉領域内勾配強度とする(ステップd11)。なお、内包判定領域に内包されると判定された各画素の中から勾配強度が所定の値以上である画素(エッジ部分の画素)を選出し、選出した画素の勾配強度の平均値を算出して閉領域内勾配強度としてもよい。この場合、後段の図9のステップc3で算出されるエッジ内包エネルギーは、勾配強度が所定の値以上である画素が閉領域内(実際には対応する内包判定領域内)に多く存在するほど大きい値を示すエネルギーとなる。
【0052】
その後、増加率算出部252が、ステップd11で算出した処理対象の制御点の閉領域内勾配強度をもとに、次式(1)に従って増加率Xi(i=0,1,2・・・,n:nは制御点の数)を算出する(ステップd13)。ここで、閉領域は、上記した4つのエネルギーの加重和が最小となるように、前段の図8のステップb13で更新した閉領域(更新後の閉領域)の形状を後段のステップb19で修正する処理を繰り返し行うことで抽出される。次式(1)において、更新前の閉領域内勾配強度は、ステップb13での更新前の閉領域の閉領域内勾配強度であり、更新後の閉領域内勾配強度は、ステップb13での更新後の閉領域の閉領域内勾配強度である。
増加率Xi=更新後の閉領域内勾配強度/更新前の閉領域内勾配強度 ・・・(1)
【0053】
以上のようにして増加率Xiを算出したならば、処理対象の制御点についてのループAの処理を終える。そして、全ての制御点についてループAの処理を実行した後、図9のステップc1にリターンしてステップc3に移行する。
【0054】
そして、ステップc3では、エッジ内包エネルギー算出部25が、閉領域内勾配強度が大きいほど大きい値を示すエッジ内包エネルギーを制御点毎に算出する(ステップc3)。実施の形態1では、次式(2)に従い、図10のステップd13で算出した増加率Xiをもとに、増加率Xiが高いほど値が大きくなるようにエッジ内包エネルギーEiを算出する。なお、式(2)のδは、エネルギーに対する重み係数を表し、経験則に従って値を決定する。
【数1】

【0055】
図12は、エッジ内包エネルギーを説明する説明図である。ここで、図12(a)に示すように、溝位置等であるエッジ(線エッジ)EL6が制御点Pc61の内包判定領域E6、すなわち、制御点Pc61、制御点Pc62および重心P6を頂点とする三角形内に入り込んだ場合を考える。上記したように、閉領域は、その外側に制御点を移動させることで広がる方向に更新していく。このため、閉領域を更新すると、エッジEL6が制御点Pc61の内包判定領域E6内にさらに入り込み(図12(b))、制御点Pc61について得られる閉領域内勾配強度は更新の前後で増加する。したがって、閉領域内勾配強度の増加率が高ければ、その制御点の内包判定領域内にエッジが入り込んできていると推定できる。これに対し、更新前の閉領域内勾配強度がある程度大きい場合であっても、更新の前後で閉領域内勾配強度が増加しない場合には、ノイズ等によるものと推定できる。以上のように、内包判定領域における閉領域内勾配強度の増加率が高いほど大きくなるようにエッジ内包エネルギーの値を算出することで、ノイズ等の比較的小さなエッジの閉領域内への内包は制限せずに、溝位置等のエッジ(線エッジ)の閉領域内への内包を制限した閉領域の抽出が可能となる。なお、図示しないが、輪郭部分等の線エッジについても同様である。
【0056】
続いて、図9に示すように、エネルギー算出部24が、閉領域の境界が滑らかなほど小さい値を示す内部エネルギーの値を制御点毎に算出する(ステップc5)。例えば、隣接する制御点間のベクトルの内積をもとに、内部エネルギーの値を算出する。例えば、次式(3)に従い、注目する制御点(xi,yi)と隣接する2つの制御点(xi-1,yi-1),(xi+1,yi+1)との間のベクトルの内積をもとに内部エネルギーEinternalを算出する。この内部エネルギーEinternalは、注目する制御点が、隣接する制御点の位置に対して閉領域の内側に所定の曲率以上で屈曲しないように制限する。
【数2】

【0057】
続いて、エネルギー算出部24は、閉領域の境界における勾配強度が大きいほど小さい値を示す画像エネルギーの値を制御点毎に算出する(ステップc7)。例えば、画像エネルギーEimageは、次式(4)によって表され、注目する制御点位置の画素の勾配強度の逆数として算出する。
【数3】

【0058】
そして、エネルギー算出部24は、閉領域の大きさが大きいほど小さい値を示す外部エネルギーの値を制御点毎に算出する(ステップc9)。この外部エネルギーEexternalは、注目する制御点が閉領域の広がる方向へ受けるエネルギーであり、例えば、次式(5)によって表され、閉領域の重心と注目する制御点との距離の逆数として算出する。
【数4】

【0059】
なお、式(3)のα、式(4)のβ、および式(5)のγは、それぞれ該当するエネルギーに対する重み係数を表し、経験則に従って値を決定すればよい。また、このα,β,γの各値は、固定値としてもよいし、例えばユーザによる操作入力等に従って可変に設定する構成としてもよい。
【0060】
以上のようにしてエッジ内包エネルギー、内部エネルギー、画像エネルギーおよび外部エネルギーの4つのエネルギーの値を算出したならば、図8のステップb15にリターンし、その後ステップb17に移行する。
【0061】
そして、ステップb17では、エネルギー加重和算出部27が、ステップb13での更新後の閉領域についてステップb15で算出したエッジ内包エネルギー、内部エネルギー、画像エネルギーおよび外部エネルギーの4つのエネルギーの加重和(重み付けしたエッジ内包エネルギー、内部エネルギー、画像エネルギーおよび外部エネルギーの和)を算出する。ここでの処理は、ステップb3と同様に行い、制御点毎の4つのエネルギーの加重和の総和を算出する。
【0062】
続いて、閉領域更新部28が、ステップb13での更新前の閉領域の4つのエネルギーの加重和(以下、適宜「更新前エネルギー加重和」と呼ぶ。)と、ステップb13での更新後の閉領域についてステップb15で算出した4つのエネルギーの加重和(以下、適宜「更新後エネルギー加重和」と呼ぶ。)とを比較して閉領域の形状を修正する(ステップb19)。具体的には、閉領域更新部28は、更新後エネルギー加重和よりも更新前エネルギー加重和の方が小さい場合には、閉領域の形状を更新前の形状に修正する。なお、初回のステップb19の実行時には、ステップb3で初期閉領域について算出した4つのエネルギーの加重和を更新前エネルギー加重和とし、更新前エネルギー加重和の方が小さい場合には、閉領域の形状を初期形状に修正する。
【0063】
その後、閉領域更新部28は、繰り返しの終了を判定する。そして、閉領域更新部28は、更新後エネルギー加重和が更新前エネルギー加重和以下または閉領域の形状を更新しても更新後エネルギー加重和が変化しない状態が予め設定される所定回数未満である間は繰り返しを終了しないと判定する(ステップb21:No)。この場合には、今回更新した閉領域の形状に対してステップb5〜ステップb19の処理を行い、閉領域の形状を更新していく。一方、更新後エネルギー加重和が更新前エネルギー加重和よりも大きく、更新後エネルギー加重和が変化しない状態が所定回数続いた場合には繰り返しを終了すると判定し(ステップb21:Yes)、閉領域抽出処理を終える。その後、図7のステップa7にリターンし、ステップa9に移行する。
【0064】
そして、ステップa9では、閉領域抽出部22は、閉領域として抽出されていない領域の有無を判定し、閉領域として抽出されていない領域がある場合には(ステップa9:Yes)、この閉領域として抽出されていない領域に抽出済みの閉領域と重ならないように初期閉領域を設定する(ステップa11)。その後、ステップa7に戻り、閉領域として抽出されていない領域がなくなるまで閉領域抽出処理を繰り返す。一方、ステップa9において閉領域として抽出されていない領域がないと判定した場合には(ステップa9:No)、ステップa13に移行する。
【0065】
ステップa13では、領域統合部32が、閉領域統合処理を実行する。図13は、閉領域統合処理の詳細な処理手順を示すフローチャートである。図13に示すように、閉領域統合処理では、先ず、統合部321が、予め設定される閾値以上の割合で重なり合う閉領域を統合する(ステップe1)。
【0066】
続いて、統合後エネルギー算出部322が、統合後の閉領域の輪郭線を抽出する(ステップe3)。これは、例えば公知の輪郭追跡法(参考:CG−ARTS協会,ディジタル画像処理,P178〜P179,輪郭追跡)を用いることで実現できる。
【0067】
続いて、統合後エネルギー算出部322は、統合後の閉領域の境界上の画素に複数の制御点を等間隔で配置する(ステップe5)。そして、統合後エネルギー算出部322は、ステップe5で配置した制御点毎にエッジ内包エネルギー、内部エネルギー、画像エネルギーおよび外部エネルギーの4つのエネルギーの値を算出してその加重和を算出し、統合する前の各閉領域の4つのエネルギーの加重和との平均値を平均エネルギーとして算出する(ステップe7)。配置した制御点毎の4つのエネルギーの値は図9のエネルギー算出処理と同様の処理手順で算出し、その加重和は図8のステップb3と同様の手順で算出する。
【0068】
そして、領域統合部32が、平均エネルギーの値が予め設定される所定範囲外か否かを判定することで統合の許否(統合するか否か)を判定し、所定範囲外の場合には(ステップe9:Yes)、統合を取り消して統合する前の閉領域に戻す(ステップe11)。平均エネルギーが所定範囲内の場合には(ステップe9:No)、ステップe11の処理を行わずにステップe13に移行することで統合を許可し、統合後の閉領域を1つの閉領域とする。
【0069】
その後、領域統合部32は、統合可能な閉領域、すなわち、閾値以上の割合で重なり合う閉領域の有無を判定し、ある場合には(ステップe13:Yes)、該当する閉領域同士を統合した後(ステップe15)、ステップe3に戻って処理を繰り返す。このとき、ステップe11で既に統合を取り消した閉領域は除外して統合可能な閉領域の有無を判定する。一方、統合可能な閉領域がないと判定した場合には(ステップe13:No)、図7のステップa13にリターンし、ステップa15に移行する。以上の閉領域統合処理によれば、統合前と統合後とで4つのエネルギーの加重和の変化が小さい閉領域同士を統合して1つの閉領域とすることができるので、後段のステップa15で行う異常部検出処理の処理負荷を軽減できる。
【0070】
そして、ステップa15では、異常部検出部33が異常部検出処理を実行する。実施の形態1では、例えば、公知のクロージング処理を行ったクロージング画像に対して、公知のオープニング処理を行い、得られた画素値(基準値)と元の画素値との差分を閾値処理することで異常部を検出する。
【0071】
図14は、異常部検出処理の詳細な処理手順を示すフローチャートである。図14に示すように、異常部検出処理では、異常部検出部33は、閉領域毎にループBの処理を実行する(ステップf1〜ステップf9)。このループBでは、異常部検出部33は、先ず、処理対象の閉領域の画素毎に基準値を算出する(ステップf3)。続いて、異常部検出部33は、処理対象の閉領域の各画素について、その画素値とステップf3で算出した基準値との差分を算出する(ステップf5)。そして、異常部検出部33は、差分を閾値処理し、差分が予め設定される閾値以上である画素を異常部として検出する(ステップf7)。全ての閉領域についてループBの処理を実行したならば、図7のステップa15にリターンし、その後処理を終える。なお、図14の異常部検出処理の結果(ステップf7での異常部の検出結果)は表示部13に出力され、例えば生体内管腔画像中の異常部を他の領域と識別可能に表して表示するといったことが行われて医師等のユーザに提示される。
【0072】
以上説明したように、実施の形態1では、対応する内包判定領域に内包される画素の勾配強度を用いて制御点毎に閉領域内勾配強度を算出し、閉領域の更新前後での閉領域内勾配強度の増加率が高いほど大きくなるようにエッジ内包エネルギーの値を算出することとした。そして、このエッジ内包エネルギーを含む複数のエネルギーの加重和が最小となるように形状を更新していくことで閉領域を抽出することとした。また、このとき、エッジ内包エネルギーの値が予め設定される閾値以上であり、対応する内包判定領域に溝位置や輪郭部分等の線エッジが入り込んだと推定される制御点から所定範囲内に存在する制御点を次回閉領域の形状を更新する際に動かさないように制御点の更新範囲を決定することとした。これによれば、閉領域を更新する過程で閉領域の内部に溝位置や輪郭部分等の線エッジが入り込まないように制限しつつ、勾配強度が所定の値以上である画素を領域の内部に含まず、かつ、領域の境界がこの領域の内側に所定の曲率以上で屈曲しない条件を満たすように閉領域を抽出することができる。したがって、生体内管腔画像中に映る溝位置を内部に含まず、その境界が輪郭部分を含まないような閉領域の抽出を適切に行うことができ、抽出した閉領域毎にモルフォロジー処理を適用することで閉領域内部の異常部を検出することができる。これによれば、溝位置や輪郭部分を異常部として誤検出することなく生体内管腔画像から異常部を精度良く検出することができる。
【0073】
(実施の形態2)
先ず、実施の形態2の画像処理装置の構成について説明する。図15は、実施の形態2の画像処理装置1aの機能構成を説明するブロック図である。なお、実施の形態1で説明した構成と同一の構成については、同一の符号を付する。実施の形態2の画像処理装置1aは、図15に示すように、画像取得部11と、入力部12と、表示部13と、記録部14aと、演算部20aと、画像処理装置1a全体の動作を制御する制御部15とを備える。
【0074】
記録部14aには、実施の形態2の処理を実現して生体内管腔画像から異常部を検出するための画像処理プログラム141aが記録される。
【0075】
また、演算部20aは、勾配強度算出部21と、閉領域抽出部22aと、領域統合部32と、異常部検出部33とを含む。そして、実施の形態2において、閉領域抽出部22aは、初期閉領域設定部23と、エネルギー算出部24aと、エネルギー加重和算出部27と、閉領域更新部28aとを備える。
【0076】
エネルギー算出部24aは、エッジ内包エネルギー算出部25aを備え、このエッジ内包エネルギー算出部25aは、エッジ抽出手段としてのエッジ抽出部253aと、屈曲点検出手段としての屈曲点検出部254aと、端点検出手段としての端点検出部255aと、外積算出手段としての外積算出部256aとを備える。エッジ抽出部253aは、生体内管腔画像の各画素の勾配強度をもとに、勾配強度が所定の値(例えば閉領域を抽出する際の条件としている所定の値と同じ値)以上の画素をエッジとして抽出する。屈曲点検出部254aは、エッジの屈曲点を検出する。端点検出部255aは、エッジの端点を検出する。外積算出部256aは、制御点から閉領域の重心へのベクトルと制御点からエッジの屈曲点および端点へのベクトルとの外積を算出する。
【0077】
閉領域更新部28aは、更新範囲決定部29aを備える。この更新範囲決定部29aは、閉領域の形状情報を算出する形状情報算出手段としての形状情報算出部30aを備える。形状情報算出部30aは、面積算出手段としての面積算出部301aと、周囲長算出手段としての周囲長算出部302aと、曲率算出手段としての曲率算出部303aとを備える。面積算出部301aは、閉領域の面積を算出する。周囲長算出部302aは、閉領域の周囲長を算出する。曲率算出部303aは、閉領域の曲率を算出する。
【0078】
次に、実施の形態2の画像処理装置1aが行う具体的な処理手順について説明する。なお、ここで説明する処理は、演算部20aが記録部14aに記録された画像処理プログラム141aを実行することにより実現される。実施の形態2は、図7の全体フローチャートにおいて、ステップa7の閉領域抽出処理が実施の形態1と異なる。図16は、実施の形態2における閉領域抽出処理の詳細な処理手順を示すフローチャートである。なお、図16において、実施の形態1と同一の処理工程には、同一の符号を付する。
【0079】
図16に示すように、実施の形態2の閉領域抽出処理では、先ず、エッジ抽出処理を実行する(ステップg1)。図17は、エッジ抽出処理の詳細な処理手順を示すフローチャートである。
【0080】
図17に示すように、エッジ抽出処理では、先ず、エッジ内包エネルギー算出部25aのエッジ抽出部253aが、実施の形態1で説明した前段の処理(図7のステップa3を参照)で画素毎に算出した勾配強度をもとに、処理対象の生体内管腔画像から勾配強度の値が所定の値以上の画素をエッジとして抽出する(ステップh1)。これは、公知のCanny,Harris等のエッジ抽出技術を適用することで実現できる。
【0081】
続いて、屈曲点検出部254aが、ステップh1で抽出したエッジの屈曲点を検出する(ステップh3)。続いて、端点検出部255aが、ステップh1で抽出したエッジの端点を検出する(ステップh5)。ここで、屈曲点とは、エッジが予め設定される所定の値以上の曲率で屈曲する点のことをいう。エッジの屈曲点の検出は、例えば、公知の2次微分や内積等により、近傍位置にあるエッジ点間の曲率を算出することで実現できる。また、エッジの端点の検出は、例えば、公知の特徴点抽出技術(参考:CG−ARTS協会,ディジタル画像処理,P188,細線の特徴点抽出)を適用することで実現できる。また、その後、図16のステップg1にリターンし、ステップg2に移行する。
【0082】
そして、ステップg2では、エネルギー算出部24aが、エネルギー算出処理を実行する。このエネルギー算出処理は、初期閉領域について行い、エッジ内包エネルギー、内部エネルギー、画像エネルギーおよび外部エネルギーの4つのエネルギーの値を制御点毎に算出する。図18は、実施の形態2におけるエネルギー算出処理の詳細な処理手順を示すフローチャートである。なお、図18において、実施の形態1と同一の処理工程には、同一の符号を付する。
【0083】
図18に示すように、実施の形態2のエネルギー算出処理では先ず、エッジ内包エネルギー算出部25aが、エッジ内包判定処理を実行する(ステップi1)。図19は、実施の形態2におけるエッジ内包判定処理の詳細な処理手順を示すフローチャートである。
【0084】
図19に示すように、実施の形態2のエッジ内包判定処理では、制御点毎にループCの処理を実行する(ステップj1〜ステップj13)。このループCでは、エッジ内包エネルギー算出部25aは、先ず、実施の形態と同様の要領でステップj3〜ステップj7の処理を行う。すなわち、エッジ内包エネルギー算出部25aは、処理対象の制御点である制御点Ai(i=0,1,2・・・,n:nは制御点の数)と、この制御点Aiと時計回り方向に隣接する制御点Ai+1とを結んだベクトルV1iを求める(ステップj3)。続いて、エッジ内包エネルギー算出部25aは、制御点Aiと時計回り方向に隣接する制御点Ai+1と、閉領域の重心Wとを結んだベクトルV2iを求める(ステップj5)。そして、エッジ内包エネルギー算出部25aは、閉領域の重心Wと制御点Aiとを結んだベクトルV3iを求める(ステップj7)。
【0085】
続いて、外積算出部256aが、図17のステップh3で検出したエッジの屈曲点およびステップh5で検出したエッジの端点に順次注目し、求めた3つのベクトルV1i,V2i,V3iのそれぞれについてその始点から注目する屈曲点および端点へのベクトルとの外積を算出することで、処理対象の制御点の内包判定領域、すなわち、制御点Ai、制御点Ai+1および重心Wを頂点とする三角形に内包されるエッジの屈曲点および端点を判定する(ステップj9)。算出した外積の符号が全て同じであれば、その注目画素を内包判定領域内の画素と判定する。全ての符号が一致しない場合には、その注目画素を内包判定領域外の画素と判定する。
【0086】
その後、エッジ内包エネルギー算出部25aが、内包判定領域に内包されると判定されたエッジの屈曲点および端点の数を計数して内包状況の一例である内包数Xi(i=0,1,2・・・,n:nは制御点の数)を算出する(ステップj11)。
【0087】
以上のようにして内包数Xiを算出したならば、処理対象の制御点についてのループCの処理を終える。そして、全ての制御点についてループCの処理を実行した後、図18のステップi1にリターンしてステップi3に移行する。
【0088】
そして、ステップi3では、エッジ内包エネルギー算出部25aが、勾配強度が所定の値以上である画素が閉領域内(実際には対応する内包判定領域内)に多く存在するほど大きい値を示すエッジ内包エネルギー(Ei)を制御点毎に算出する。実施の形態2では、次式(6)に従い、図19のステップj11で算出した内包数Xiをもとに、内包数Xiが多いほど(対応する内包判定領域内にエッジの屈曲点および端点が多く内包されているほど)値が大きくなるようにエッジ内包エネルギーEiを算出する。
i=Xi(i=0,1,2・・・,n:nは制御点の数) ・・・(6)
【0089】
以上のように、内包判定領域内にエッジの屈曲点および端点が多く内包されているほど大きくなるようにエッジ内包エネルギーの値を算出することで、溝位置や輪郭部分等のエッジ(線エッジ)の閉領域内への内包を制限した閉領域の抽出が可能となる。その後、エネルギー算出部24aが、ステップc5以降の処理を実施の形態1と同様に行う。そして、エッジ内包エネルギー、内部エネルギー、画像エネルギーおよび外部エネルギーの4つのエネルギーの値を算出したならば、図16のステップg2にリターンし、その後ステップb3に移行する。
【0090】
そして、ステップb3では、エネルギー加重和算出部27が、初期閉領域についてステップg2で算出したエッジ内包エネルギー、内部エネルギー、画像エネルギーおよび外部エネルギーの値をもとに、実施の形態1と同様にこれら4つのエネルギーの加重和を算出する。
【0091】
続いて、更新範囲決定部29aが、エッジ内包エネルギーの値が予め設定される閾値以上である制御点の有無を判定する。そして、更新範囲決定部29aは、エッジ内包エネルギーの値が所定の閾値以上である制御点がある場合には(ステップb5:Yes)、更新範囲決定処理を実行する(ステップg7)。一方、エッジ内包エネルギーの値が所定の閾値以上である制御点がない場合には(ステップb5:No)、更新範囲決定部29aは、実施の形態1で説明したように、全ての制御点を制御点の更新範囲とする(ステップb11)。
【0092】
図20は、ステップg7で実行する更新範囲決定処理の詳細な処理手順を示すフローチャートである。図20に示すように、更新範囲決定処理では、先ず、形状情報算出部30aの面積算出部301aが、閉領域の面積を算出する(ステップk1)。続いて、周囲長算出部302aが、閉領域の周囲長を算出する(ステップk3)。
【0093】
続いて、曲率算出部303aが、各制御点位置における閉領域の境界の曲率を算出する(ステップk5)。具体的には、例えば、曲率算出部303aは、制御点毎に、制御点から両側に隣接する2つの制御点のそれぞれへ向かうベクトルの外積を算出し、該当する制御点位置における閉領域の境界の曲率とする。
【0094】
続いて、更新範囲決定部29aは、算出した閉領域の面積、閉領域の周囲長および閉領域の境界の曲率をもとに、更新範囲外とする範囲を算出する(ステップk7)。ここで、ステップk5で算出した閉領域の境界の曲率の値が大きいということは、その候補点位置において閉領域の境界が大きく屈曲しているということである。このような屈曲が大きい位置の制御点を動かすと、更新後の閉領域においてさらに境界が大きく屈曲する可能性がある。そこで、ステップk7では、この境界の曲率を含む閉領域の形状情報をもとに更新範囲外とする範囲を算出する。例えば、更新範囲決定部29aは、閉領域の面積、周囲長、および境界の曲率が大きいほど広くなるように更新範囲外とする範囲を算出する。なお、本例では、閉領域の面積、周囲長および境界の曲率のうちの1つ以上を用いて更新範囲外とする範囲を算出することとしてもよい。
【0095】
そして、更新範囲決定部29aは、エッジ内包エネルギーの値が所定の閾値以上である制御点からの距離がステップk7で算出した範囲内である制御点を除外して制御点の更新範囲を決定する(ステップk9)。その後、図16のステップg7にリターンし、ステップb13に移行する。
【0096】
そして、ステップb13では、閉領域更新部28aが、ステップg7またはステップb11で決定した更新範囲に従い、実施の形態1と同様に更新範囲内の制御点を移動させることで閉領域の形状を更新する(ステップg13)。その後、エネルギー算出部24aが、エネルギー算出処理を実行する(ステップb15)。このステップg15では、ステップb13で更新した更新後の閉領域について、図18に示して説明したエネルギー算出処理を実行する。その後、ステップb17に移る。
【0097】
以上説明したように、実施の形態2では、対応する内包判定領域にエッジの屈曲点および端点が多く内包されているほど値が大きくなるようにエッジ内包エネルギーの値を算出することとした。また、このとき、エッジ内包エネルギーの値が予め設定される閾値以上であり、対応する内包判定領域に溝位置や輪郭部分等の線エッジが入り込んだと推定される制御点を動かさないように制御点の更新範囲を決定することとした。これによれば、実施の形態1と同様の効果を奏することができる。また、実施の形態2では、面積や周囲長、境界の曲率といった閉領域の形状情報をもとに更新範囲外とする範囲を算出し、算出した範囲をもとに制御点の更新範囲を決定することとした。したがって、生体内管腔画像中に映る溝位置を内部に含まず、その境界が輪郭部分を含まないような閉領域の抽出をより適切に行うことができる。
【0098】
(実施の形態3)
先ず、実施の形態3の画像処理装置の構成について説明する。図21は、実施の形態3の画像処理装置1bの機能構成を説明するブロック図である。なお、実施の形態1で説明した構成と同一の構成については、同一の符号を付する。実施の形態3の画像処理装置1bは、図21に示すように、画像取得部11と、入力部12と、表示部13と、記録部14bと、演算部20bと、画像処理装置1b全体の動作を制御する制御部15とを備える。
【0099】
記録部14bには、実施の形態3の処理を実現して生体内管腔画像から異常部を検出するための画像処理プログラム141bが記録される。
【0100】
また、演算部20bは、勾配強度算出部21と、閉領域抽出部22bと、領域統合部32と、異常部検出部33とを含む。そして、実施の形態3において、閉領域抽出部22bは、初期閉領域設定部23と、エネルギー算出部24bと、エネルギー加重和算出部27と、閉領域更新部28bとを備える。
【0101】
エネルギー算出部24bは、屈曲エネルギー算出手段としての屈曲エネルギー算出部26bを備える。屈曲エネルギー算出部26bは、閉領域の外形によって定まるエネルギーに相当する屈曲エネルギーの値を算出する。ここで、屈曲エネルギーは、内部エネルギーの一例であり、閉領域の境界が内側に屈曲するほど大きな値を示すエネルギーである。この屈曲エネルギー算出部26bは、外積エネルギー算出手段としての外積エネルギー算出部261bを備える。実施の形態3では、この外積エネルギー算出部261bが、制御点毎に、隣接する制御点へ向かうベクトルの外積をもとに外積エネルギーの値を算出し、この外積エネルギーの値を屈曲エネルギーの値とする。
【0102】
閉領域更新部28bは、更新範囲決定部29bを備える。この更新範囲決定部29bは、エッジ情報検出手段としてのエッジ情報検出部311bと、端点屈曲点距離算出手段としての端点屈曲点距離算出部312bと、エッジ距離算出手段としてのエッジ距離算出部313bとを備える。エッジ情報検出部311bは、生体内管腔画像の各画素の勾配強度をもとに、勾配強度が所定の値(例えば閉領域を抽出する際の条件としている所定の値と同じ値)以上の画素をエッジとして抽出し、抽出したエッジの端点および屈曲点を検出してエッジ情報とする。端点屈曲点距離算出部312bは、エッジの端点または屈曲点と、屈曲エネルギーの値が予め設定される閾値以上である制御点との距離(端点屈曲点距離)を算出する。エッジ距離算出部313bは、エッジと屈曲エネルギーの値が予め設定される閾値以上である制御点との距離(エッジ距離)を算出する。
【0103】
次に、実施の形態3の画像処理装置1bが行う具体的な処理手順について説明する。図22は、実施の形態3の画像処理装置1bが行う処理手順を示す全体フローチャートである。なお、ここで説明する処理は、演算部20bが記録部14bに記録された画像処理プログラム141bを実行することにより実現される。また、図22において、実施の形態1と同一の処理工程には、同一の符号を付する。
【0104】
図22に示すように、実施の形態3では、ステップa5で初期閉領域設定部23が初期閉領域を設定した後、閉領域抽出部22bが閉領域抽出処理を実行する(ステップl7)。図23は、実施の形態3における閉領域抽出処理の詳細な処理手順を示すフローチャートである。
【0105】
図23に示すように、実施の形態3の閉領域抽出処理では、先ず、更新範囲決定部29bのエッジ情報検出部311bがエッジ情報検出処理を実行する(ステップm1)。このエッジ情報検出処理は、実施の形態2で図17を参照して説明したエッジ抽出処理と同様の処理手順で行う。具体的には、エッジ情報検出部311bは、図22のステップa3で画素毎に算出した勾配強度をもとに,Canny,Harris等のエッジ抽出技術を適用して処理対象の生体内管腔画像から勾配強度の値が所定の値以上の画素をエッジとして抽出する(図17のステップh1と同様)。その後、エッジ情報検出部311bは、抽出したエッジの端点を検出するとともに(ステップh5と同様)、抽出したエッジの屈曲点を検出する(ステップh3と同様)。
【0106】
続いて、エネルギー算出部24bが、エネルギー算出処理を実行する(ステップm3)。このエネルギー算出処理は、初期閉領域について行い、内積エネルギーと屈曲エネルギーの2つの内部エネルギー、画像エネルギーおよび外部エネルギーの4つのエネルギーの値を制御点毎に算出する。ここで、内積エネルギーは、実施の形態1等で説明した内部エネルギーに相当する。図24は、実施の形態3におけるエネルギー算出処理の詳細な処理手順を示すフローチャートである。なお、図24において、実施の形態1と同一の処理工程には、同一の符号を付する。
【0107】
図24に示すように、実施の形態3のエネルギー算出処理では先ず、屈曲エネルギー算出部26bの外積エネルギー算出部261bが、外積エネルギーの値を制御点毎に算出し、各制御点の屈曲エネルギーの値とする(ステップn1)。図25は、外積エネルギーを説明する説明図であり、閉領域の境界を部分的に示している。例えば、図25に示す制御点Pc71に着目すれば、隣接する両側の制御点Pc72,Pc73のそれぞれへ向かうベクトルV71,V72の外積をもとに、制御点Pc71についての外積エネルギーの値を算出する。この外積エネルギーは、注目する制御点Pc71が、隣接する制御点Pc72,Pc73の位置に対して閉領域の内側に所定の曲率以上で屈曲しないように制限する。実際の処理では、例えば、次式(7),(8)に従い、注目する制御点v2および隣接する制御点v1,v3の3つの制御点v1,v2,v3間のベクトルxa,xbの外積をもとに外積エネルギーEcを算出する。なお、式(8)のεは、外積エネルギーEcに対する重み係数を表し、経験則に従って値を決定すればよい。また、このεの値は、固定値としてもよいし、例えばユーザによる操作入力等に従って可変に設定する構成としてもよい。
【数5】

【0108】
また、エネルギー算出部24bは、図9のステップc5と同様の処理を行って実施の形態1で説明した内部エネルギーを算出し、内積エネルギーとする(ステップn5)。その後、エネルギー算出部24bが、ステップc7以降の処理を実施の形態1と同様に行って、画像エネルギーおよび外部エネルギーの各値を算出する。以上のようにして4つのエネルギーの値を算出したならば、図23のステップm3にリターンし、その後ステップm5に移行する。
【0109】
そして、ステップm5では、エネルギー加重和算出部27が、初期閉領域についてステップm3で算出した内積エネルギーと屈曲エネルギーの2つの内部エネルギー、画像エネルギーおよび外部エネルギーの値をもとに、これら4つのエネルギーの加重和を算出する。具体的には、4つのエネルギーの加重和は、ステップm3で制御点毎に算出した内積エネルギーと屈曲エネルギーの2つの内部エネルギー、画像エネルギーおよび外部エネルギーの4つのエネルギーの加重和(重み付けした内積エネルギー、屈曲エネルギー、画像エネルギーおよび外部エネルギーの和)の総和として算出される。
【0110】
続いて、更新範囲決定部29bが、屈曲エネルギーの値が予め設定される閾値以上である制御点の有無を判定する。そして、更新範囲決定部29bは、屈曲エネルギーの値が所定の閾値以上である制御点がある場合には(ステップm7:Yes)、更新範囲決定処理を実行する(ステップm9)。一方、屈曲エネルギーの値が所定の閾値以上である制御点がない場合には(ステップm7:No)、更新範囲決定部29bは、全ての制御点を制御点の更新範囲とする(ステップm11)。
【0111】
図26は、ステップm9で実行する更新範囲決定処理の詳細な処理手順を示すフローチャートである。図26に示すように、更新範囲決定処理では、先ず、更新範囲決定部29bの端点屈曲点距離算出部312bが、図23のステップm1で検出したエッジの端点または屈曲点から、屈曲エネルギーの値が所定の閾値以上である制御点までの端点屈曲点距離を算出する(ステップo1)。エッジの端点または屈曲点が複数ある場合には、最も近いエッジの端点または屈曲点との距離を端点屈曲点距離として算出する。
【0112】
続いて、図26に示すように、エッジ距離算出部313bが、図23のステップm1で抽出したエッジから、屈曲エネルギーの値が所定の閾値以上である制御点までのエッジ距離を算出する(ステップo3)。具体的には、屈曲エネルギーの値が所定の閾値以上である制御点と最も近接するエッジ上の位置との距離をエッジ距離として算出する。
【0113】
そして、更新範囲決定部29bが、算出した端点屈曲点距離および/またはエッジ距離をもとに、更新範囲外とする範囲を算出する(ステップo5)。ここで、閉領域の外側にエッジやその端点、あるいは大きく屈曲するエッジ(エッジの屈曲点)が存在すると、閉領域を変形させていく過程で閉領域の内部にエッジが入り込んだり、あるいは閉領域の境界がエッジに沿って広がっていってしまい、その境界が大きく屈曲するエッジを含むような閉領域が抽出されてしまう事態が生じ得る。そこで、ステップo5では、屈曲エネルギーの値が所定の閾値以上であり、ある程度屈曲している制御点位置からエッジの端点または屈曲点までの端点屈曲点距離をもとに、更新範囲外とする範囲を算出する。具体的には、端点屈曲点距離が小さく、制御点位置からエッジの端点または屈曲点までの距離が小さくこれらが近いほど更新範囲外とする範囲を広く算出する。また、前述のようにある程度屈曲している制御点位置からエッジまでのエッジ距離をもとに、更新範囲外とする範囲を算出する。具体的には、エッジ距離が小さく、その制御点位置からエッジまでの距離が小さくこれらが近いほど更新範囲外とする範囲を広く算出する。これにより、勾配強度が所定の値以上である画素を領域の内部に含まず、かつ、領域の境界がこの領域の内側に所定の曲率以上で屈曲しない条件を満たすような閉領域の抽出を実現できる。
【0114】
なお、端点屈曲点距離のみを用いて更新範囲外とする範囲を算出する場合には、ステップo1の処理は行わなくてもよく、また、エッジ距離のみを用いて更新範囲外とする範囲を算出する場合には、ステップo3の処理は行わなくてもよい。
【0115】
そして、更新範囲決定部29bは、屈曲エネルギーの値が所定の閾値以上である制御点からの距離がステップo5で算出した範囲内である制御点を除外して制御点の更新範囲を決定する(ステップo7)。その後、図23のステップm9にリターンし、ステップm13に移行する。
【0116】
そして、ステップm13では、閉領域更新部28bが、ステップm9またはステップm11で決定した更新範囲に従い、更新範囲内の制御点を移動させることで閉領域の形状を更新する。ここでの処理は、実施の形態1と同様の処理手順で行う(図8のステップb13を参照)。その後、エネルギー算出部24bが、エネルギー算出処理を実行する(ステップm15)。このステップm15では、ステップm13で更新した更新後の閉領域について、ステップm3と同様の処理手順でエネルギー算出処理を実行する(図24を参照)。その後、ステップm17に移る。
【0117】
そして、ステップm17では、エネルギー加重和算出部27が、ステップm13での更新後の閉領域についてステップm17で算出した内積エネルギーと屈曲エネルギーの2つの内部エネルギー、画像エネルギーおよび外部エネルギーの4つのエネルギーの加重和を算出する。ここでの処理は、ステップm5と同様に行う。
【0118】
続いて、閉領域更新部28bが、ステップm13での更新前の更新前エネルギー加重和と、ステップm13での更新後の更新後エネルギー加重和とを比較して閉領域の形状を修正する(ステップm19)。ここでの処理は、実施の形態1と同様の処理手順で行う(図8のステップb19を参照)。
【0119】
その後、閉領域更新部28bは、繰り返しの終了を判定する。そして、閉領域更新部28bは、繰り返しを終了しないと判定した場合には(ステップm21:No)、今回更新した閉領域の形状に対してステップm7〜ステップm19の処理を行い、閉領域の形状を更新していく。一方、繰り返しを終了すると判定した場合には(ステップm21:Yes)、閉領域抽出処理を終える。その後、図22のステップl7にリターンし、ステップa9に移行する。
【0120】
以上説明したように、実施の形態3では、制御点毎に、隣接する制御点へ向かうベクトルの外積をもとに外積エネルギーの値を算出し、閉領域の境界が内側に屈曲するほど大きな値を示す屈曲エネルギーの値を算出することとした。そして、この屈曲エネルギーを含む複数のエネルギーの加重和が最小となるように形状を更新していくことで閉領域を抽出することとした。また、このとき、屈曲エネルギーの値が予め設定される閾値以上であり、該当する制御点位置がある程度屈曲している場合に、この制御点位置からの端点屈曲点距離およびエッジ距離を算出し、端点屈曲点距離および/またはエッジ距離をもとに更新範囲を決定する。具体的には、端点屈曲点距離および/またはエッジ距離が小さいほど該当する制御点位置を基準とした広範囲を更新範囲外とすることで制御点の更新範囲を決定することとした。したがって、生体内管腔画像中に映る溝位置を内部に含まず、その境界が輪郭部分を含まないような閉領域の抽出を適切に行うことができ、抽出した閉領域毎にモルフォロジー処理を適用することで閉領域内部の異常部を検出することができる。これによれば、溝位置や輪郭部分を異常部として誤検出することなく生体内管腔画像から異常部を精度良く検出することができる。
【0121】
(実施の形態4)
先ず、実施の形態4の画像処理装置の構成について説明する。図27は、実施の形態4の画像処理装置1cの機能構成を説明するブロック図である。なお、実施の形態3で説明した構成と同一の構成については、同一の符号を付する。実施の形態4の画像処理装置1cは、図27に示すように、画像取得部11と、入力部12と、表示部13と、記録部14cと、演算部20cと、画像処理装置1c全体の動作を制御する制御部15とを備える。
【0122】
記録部14cには、実施の形態4の処理を実現して生体内管腔画像から異常部を検出するための画像処理プログラム141cが記録される。
【0123】
また、演算部20cは、勾配強度算出部21と、閉領域抽出部22cと、領域統合部32と、異常部検出部33とを含む。そして、実施の形態4において、閉領域抽出部22cは、初期閉領域設定部23と、エネルギー算出部24cと、エネルギー加重和算出部27と、閉領域更新部28cとを備える。
【0124】
エネルギー算出部24cは、屈曲エネルギー算出部26cを備える。屈曲エネルギー算出部26cは、大局外積エネルギー算出手段としての大局外積エネルギー算出部262cを備える。実施の形態4では、この大局外積エネルギー算出部262cが、制御点毎に、予め設定される距離以上離れた制御点へ向かうベクトルの外積をもとに大局外積エネルギーの値を算出し、この大局外積エネルギーの値を屈曲エネルギーの値とする。また、閉領域更新部28cは、制御点の更新範囲を決定する更新範囲決定部29cを備える。
【0125】
次に、実施の形態4の画像処理装置1cが行う具体的な処理手順について説明する。なお、ここで説明する処理は、演算部20cが記録部14cに記録された画像処理プログラム141cを実行することにより実現される。実施の形態4では、図22の全体フローチャートにおいて、ステップl7の閉領域抽出処理が実施の形態3と異なる。図28は、実施の形態4における閉領域抽出処理の詳細な処理手順を示すフローチャートである。なお、図28において、実施の形態3と同一の処理工程には、同一の符号を付する。
【0126】
図28に示すように、実施の形態4の閉領域抽出処理では、先ず、エネルギー算出部24cが、エネルギー算出処理を実行する(ステップp3)。このエネルギー算出処理は、初期閉領域について行い、内積エネルギーと屈曲エネルギーの2つの内部エネルギー、画像エネルギーおよび外部エネルギーの4つのエネルギーの値を制御点毎に算出する。図29は、実施の形態4におけるエネルギー算出処理の詳細な処理手順を示すフローチャートである。なお、図29において、実施の形態3と同一の処理工程には、同一の符号を付する。
【0127】
図29に示すように、実施の形態4のエネルギー算出処理では先ず、屈曲エネルギー算出部26cの大局外積エネルギー算出部262cが、大局外積エネルギーの値を制御点毎に算出し、各制御点の屈曲エネルギーの値とする(ステップq1)。このステップq1では、制御点毎に、その両側において予め設定される距離以上離れて存在する制御点のそれぞれへ向かうベクトルの外積をもとに、各制御点についての大局外積エネルギーを算出する。この大局外積エネルギーは、実施の形態3の外積エネルギーと同様の要領で算出できる。すなわち、大局外積エネルギーは、上記した式(7),(8)において、隣接する制御点v1,v3を注目する制御点の両側に所定の距離以上離れて存在する制御点とすることで算出できる。
【0128】
その後、エネルギー算出部24cが、ステップn5以降の処理を実施の形態3と同様に行って、内積エネルギー、画像エネルギーおよび外部エネルギーの各値を算出する。以上のようにして4つのエネルギーの値を算出したならば、図28のステップp3にリターンし、その後ステップm5に移行する。
【0129】
また、実施の形態4では、ステップm7において、屈曲エネルギーの値が所定の閾値以上である制御点があると判定した場合に(ステップm7:Yes)、更新範囲決定部29cが、屈曲エネルギーが所定の閾値以上である制御点からの距離が予め設定される所定範囲内である制御点を除外して制御点の更新範囲を決定する(ステップp9)。なお、更新範囲から除外する範囲を予め設定される所定範囲とする場合に限らず、実施の形態3で説明した更新範囲決定処理(図20を参照)を実行して更新範囲を決定することとしてもよい。これにより、閉領域の境界が内側に所定の曲率以上で屈曲するような形状の更新を制限できる。
【0130】
そして、閉領域更新部28cが、ステップp9またはステップm11で決定した更新範囲に従い、更新範囲内の制御点を移動させることで閉領域の形状を更新する(ステップm13)。続いて、エネルギー算出部24cが、エネルギー算出処理を実行する(ステップp15)。このステップp15では、ステップm13で更新した更新後の閉領域について、ステップp3と同様の処理手順でエネルギー算出処理を実行する(図29を参照)。その後、ステップm17に移る。
【0131】
以上説明したように、実施の形態4では、制御点毎に、所定の距離以上離れた制御点へ向かうベクトルの外積をもとに大局外積エネルギーの値を算出し、閉領域の境界が内側に屈曲するほど大きな値を示す屈曲エネルギーの値を算出することとした。そして、この屈曲エネルギーを含む複数のエネルギーの加重和が最小となるように形状を更新していくことで閉領域を抽出することとした。また、このとき、屈曲エネルギーの値が予め設定される閾値以上であり、該当する制御点位置がある程度屈曲している場合に、この制御点位置から所定範囲内に存在する制御点を次回閉領域の形状を更新する際に移動させないように制御点の更新範囲を決定することができる。したがって、生体内管腔画像中に映る溝位置を内部に含まず、その境界が輪郭部分を含まないような閉領域の抽出を適切に行うことができ、抽出した閉領域毎にモルフォロジー処理を適用することで閉領域内部の異常部を検出することができる。これによれば、溝位置や輪郭部分を異常部として誤検出することなく生体内管腔画像から異常部を精度良く検出することができる。
【0132】
(実施の形態5)
先ず、実施の形態5の画像処理装置の構成について説明する。図30は、実施の形態5の画像処理装置1dの機能構成を説明するブロック図である。なお、実施の形態3で説明した構成と同一の構成については、同一の符号を付する。実施の形態5の画像処理装置1dは、図30に示すように、画像取得部11と、入力部12と、表示部13と、記録部14dと、演算部20dと、画像処理装置1d全体の動作を制御する制御部15とを備える。
【0133】
記録部14dには、実施の形態5の処理を実現して生体内管腔画像から異常部を検出するための画像処理プログラム141dが記録される。
【0134】
また、演算部20dは、勾配強度算出部21と、閉領域抽出部22dと、領域統合部32と、異常部検出部33とを含む。そして、実施の形態5において、閉領域抽出部22dは、初期閉領域設定部23と、エネルギー算出部24dと、エネルギー加重和算出部27と、閉領域更新部28dとを備える。
【0135】
エネルギー算出部24dは、屈曲エネルギー算出部26dを備える。屈曲エネルギー算出部26dは、多重外積エネルギー算出部263dを備える。また、閉領域更新部28dは、制御点の更新範囲を決定する更新範囲決定部29dを備える。
【0136】
ここで、図31を参照して、実施の形態5における屈曲エネルギーの算出原理について説明する。図31は、屈曲エネルギーを説明する説明図であり、閉領域の境界を部分的に示している。例えば、図31に示す制御点Pc8に着目すると、屈曲エネルギーの算出では、制御点Pc8の両側において予め設定される所定数離れたものから順番に外積算出対象の制御点組、例えば両側において4つ離れた2つの制御点Pc841,Pc842を選択する。そして、これら各制御点Pc841,Pc842のそれぞれへ向かうベクトルV841,V842の外積をもとに、外積エネルギーの一例である制御点Pc8についての大局外積エネルギーを実施の形態4と同様の要領で算出する。その後、得られた大局外積エネルギーの値が予め設定される閾値以上か否かを判定し、所定の閾値以上であればその値を制御点Pc8についての屈曲エネルギーの値とする。一方、閾値未満の場合には、今回外積算出対象とした制御点組の各制御点Pc841,Pc842よりも1つ制御点Pc8側の制御点Pc831,Pc832を新たな外積算出対象の制御点組として選択する。そして、同様の要領で大局外積エネルギーを算出し、所定の閾値以上であればその値を制御点Pc8についての屈曲エネルギーの値とする。一方、閾値未満の場合には、さらに制御点Pc8側の制御点Pc821,Pc822を外積算出対象の制御点組として選択して同様の処理を行う。最終的に、制御点Pc8に隣接する制御点Pc811,Pc812を外積算出対象の制御点組として選択した場合には、実施の形態3と同様の要領で外積エネルギーの値を算出し、この外積エネルギーの値を制御点Pc8についての屈曲エネルギーの値とする。
【0137】
例えば、図31において、制御点Pc831,Pc832を外積算出対象の制御点組とし、ベクトルV831,V832の外積をもとに算出した大局外積エネルギーの値が所定の閾値以上であったとする。この場合には、この大局外積エネルギーの値を制御点Pc8についての屈曲エネルギーの値とする。このようにすれば、閉領域の境界が屈曲している範囲、すなわち、制御点Pc831,Pc832間の範囲を特定できる。なお、実施の形態5では、このようにして特定した制御点Pc831,Pc832間の範囲をもとに、次回閉領域の形状を更新する際の制御点の更新範囲を決定するようになっている。
【0138】
次に、実施の形態5の画像処理装置1dが行う具体的な処理手順について説明する。なお、ここで説明する処理は、演算部20dが記録部14dに記録された画像処理プログラム141dを実行することにより実現される。実施の形態5では、図22の全体フローチャートにおいて、ステップl7の閉領域抽出処理が実施の形態3と異なる。図32は、実施の形態5における閉領域抽出処理の詳細な処理手順を示すフローチャートである。なお、図32において、実施の形態3と同一の処理工程には、同一の符号を付する。
【0139】
図32に示すように、実施の形態5の閉領域抽出処理では、先ず、エネルギー算出部24dが、エネルギー算出処理を実行する(ステップr3)。このエネルギー算出処理は、初期閉領域について行い、内積エネルギーと屈曲エネルギーの2つの内部エネルギー、画像エネルギーおよび外部エネルギーの4つのエネルギーの値を制御点毎に算出する。図33は、実施の形態5におけるエネルギー算出処理の詳細な処理手順を示すフローチャートである。なお、図33において、実施の形態3と同一の処理工程には、同一の符号を付する。
【0140】
図33に示すように、実施の形態5のエネルギー算出処理では、先ず、制御点毎にループDの処理を実行する(ステップs1〜ステップs15)。このループDでは、先ず、屈曲エネルギー算出部26dが、処理対象の制御点から両側に予め設定される所定数離れた2つの制御点を外積算出対象の制御点組として選択する(ステップs3)。
【0141】
続いて、多重外積エネルギー算出部263dが、選択した外積算出対象の制御点組の各制御点のそれぞれへ向かうベクトルの外積をもとに、大局外積エネルギーまたは外積エネルギーを算出する(ステップs5)。すなわち、ステップs5では、処理対象の制御点と外積算出対象の制御点との間に別の制御点が存在する場合には、実施の形態4と同様の要領で大局外積エネルギーを算出し(図29のステップq1を参照)、処理対象の制御点と外積算出対象の制御点とが隣接する場合には、実施の形態3と同様の要領で外積エネルギーを算出する(図24のステップn1を参照)。
【0142】
そして、多重外積エネルギー算出部263dは、ステップs5で外積エネルギーの値を算出した場合(ステップs7:Yes)、あるいはステップs5で算出した大局外積エネルギーの値が予め設定される閾値以上の場合には(ステップs9:Yes)、その値を屈曲エネルギーの値とする(ステップs11)。一方、ステップs5で外積エネルギーの値を算出した場合ではなく(ステップs7:No)、ステップs5で算出した大局外積エネルギーの値が所定の閾値未満でもない場合には(ステップs9:No)、今回外積算出対象とした制御点組よりも1つ処理対象の制御点側の制御点組を新たな外積算出対象として選択し(ステップs13)、ステップs5に戻って上記した処理を行う。
【0143】
以上のようにして屈曲エネルギーの値を得たならば、処理対象の制御点についてのループDの処理を終える。そして、全ての制御点についてループDの処理を実行したならば、エネルギー算出部24dが、ステップn5以降の処理を実施の形態3と同様に行って内積エネルギー、画像エネルギーおよび外部エネルギーの各値を算出する。そして、4つのエネルギーの値を算出したならば、図32のステップr3にリターンし、その後ステップm5に移行する。
【0144】
また、実施の形態5では、ステップm7において、屈曲エネルギーの値が所定の閾値以上である制御点があると判定した場合に(ステップm7:Yes)、更新範囲決定部29dが、その屈曲エネルギーを算出した際に外積算出対象とした制御点組までの制御点と、この制御点組の各制御点から所定範囲外側の制御点を除外して制御点の更新範囲を決定する(ステップr9)。例えば、図31を参照して説明したように、制御点Pc8から制御点Pc831,Pc832へ向かうベクトルV831,V832の外積をもとに算出した大局外積エネルギーの値を屈曲エネルギーの値とした場合には、制御点Pc831,Pc832より外側の所定範囲内の制御点を含む図31中に二点鎖線で示す範囲E8内の制御点を除外して制御点の更新範囲を決定する。そしてこれにより、後段のステップm13で次に閉領域の形状を更新する際には、範囲E8外の制御点を動かすようにする。
【0145】
その後、閉領域更新部28dが、ステップr9またはステップm11で決定した更新範囲に従い、更新範囲内の制御点を移動させることで閉領域の形状を更新する(ステップm13)。続いて、エネルギー算出部24dが、エネルギー算出処理を実行する(ステップr15)。このステップr15では、ステップm13で更新した更新後の閉領域について、ステップr3と同様の処理手順でエネルギー算出処理を実行する(図33を参照)。その後、ステップm17に移る。
【0146】
以上説明したように、実施の形態5では、制御点毎に、処理対象の制御点からある程度距離が離れた制御点から順番に大局外積エネルギーを算出していき、最終的に外積エネルギーを算出することで、境界が屈曲している範囲を特定することができる。そして、特定した範囲およびその外側の所定範囲を除外して制御点の更新範囲を決定することができるので、生体内管腔画像中に映る溝位置を内部に含まず、その境界が輪郭部分を含まないような閉領域の抽出をより適切に行うことができ、抽出した閉領域毎にモルフォロジー処理を適用することで閉領域内部の異常部を検出することができる。これによれば、溝位置や輪郭部分を異常部として誤検出することなく生体内管腔画像から異常部を精度良く検出することができる。
【0147】
(実施の形態6)
先ず、実施の形態6の画像処理装置の構成について説明する。図34は、実施の形態6の画像処理装置1eの機能構成を説明するブロック図である。なお、実施の形態4で説明した構成と同一の構成については、同一の符号を付する。実施の形態6の画像処理装置1eは、図34に示すように、画像取得部11と、入力部12と、表示部13と、記録部14eと、演算部20eと、画像処理装置1e全体の動作を制御する制御部15とを備える。
【0148】
記録部14eには、実施の形態6の処理を実現して生体内管腔画像から異常部を検出するための画像処理プログラム141eが記録される。
【0149】
また、演算部20eは、勾配強度算出部21と、閉領域抽出部22eと、領域統合部32と、異常部検出部33とを含む。そして、実施の形態6において、閉領域抽出部22eは、初期閉領域設定部23と、エネルギー算出部24eと、エネルギー加重和算出部27と、閉領域更新部28cとを備える。
【0150】
エネルギー算出部24eは、屈曲エネルギー算出部26eを備える。屈曲エネルギー算出部26eは、凸状エネルギー算出部264eを備える。実施の形態6では、この凸状エネルギー算出部264eが、制御点毎に、他の制御点へのベクトルの閉領域内における内包状況をもとに凸状エネルギーの値を算出し、この凸状エネルギーの値を屈曲エネルギーの値とする。ここで、凸状エネルギーは、制御点間を結ぶ直線が閉領域内に多く内包されるほど大きな値を示すエネルギーである。
【0151】
ここで、図35を参照して、実施の形態6における凸状エネルギーの算出原理について説明する。図35は、凸状エネルギーを説明する説明図であり、境界の一部が屈曲している閉領域E9を示している。例えば、図35に示す制御点Pc9に着目すると、凸状エネルギーの算出では、制御点Pc9から他の全ての制御点へのベクトルを算出する。そして、算出したベクトルのうち、閉領域E9に内包されないベクトル数をもとに凸状エネルギーの値を算出する。例えば、図35では、制御点Pc9から他の制御点のそれぞれへ向かうベクトルのうち、制御点Pc91や制御点Pc92へ向かうベクトルV91は閉領域E9に内包されている。一方、境界が屈曲している箇所の制御点(例えば制御点Pc93や制御点Pc94)へ向かうベクトルV92は、閉領域E9に内包されていない。実施の形態6では、このベクトルV92のような閉領域E9に内包されないベクトルの数をもとに各制御点についての凸状エネルギーの値を算出し、算出した凸状エネルギーの値を屈曲エネルギーの値とする。
【0152】
次に、実施の形態6の画像処理装置1eが行う具体的な処理手順について説明する。なお、ここで説明する処理は、演算部20eが記録部14eに記録された画像処理プログラム141eを実行することにより実現される。実施の形態6では、実施の形態4と同様に屈曲エネルギーの値を算出するが、その算出方法が実施の形態4と異なり、図28の閉領域算出処理においてステップp3およびステップp15で行うエネルギー算出処理の手順が実施の形態4と異なる。図36は、実施の形態6におけるエネルギー算出の詳細な処理手順を示すフローチャートである。なお、図36において、実施の形態3と同一の処理工程には、同一の符号を付する。
【0153】
図36に示すように、実施の形態6のエネルギー算出処理では、先ず、凸状エネルギー算出部264eが、屈曲エネルギー算出処理を実行する(ステップt1)。図37は、実施の形態6における屈曲エネルギー算出処理の詳細な処理手順を示すフローチャートである。なお、図37において、実施の形態3と同一の処理工程には、同一の符号を付する。
【0154】
図37に示すように、実施の形態6の屈曲エネルギー算出処理では、制御点Ai(i=0,1,2・・・,n:nは制御点の数)毎にループEの処理を実行する(ステップu1〜ステップu9)。このループEでは、先ず、凸状エネルギー算出部264eは、処理対象の制御点Aiから他の全ての制御点Aj(j=0,1,2・・・,m:mは他の制御点の数)へ向かうベクトルVijを算出する(ステップu3)。続いて、凸状エネルギー算出部264eは、ステップu3で算出したベクトルVijが閉領域に内包されるか否かを判定し、内包されないと判定したベクトルVijの数を計数して内包状況の一例である非内包ベクトル数を算出する(ステップu5)。その後、凸状エネルギー算出部264eは、ステップu5で算出した非内包ベクトル数をもとに、次式(9)に従って非内包ベクトル数が多いほど大きい値を示す凸状エネルギーEcを算出し、屈曲エネルギーの値とする(ステップu7)。
凸状エネルギーEc=非内包ベクトル数/(総制御点数−1) ・・・(9)
【0155】
以上のようにして屈曲エネルギーの値を得たならば、処理対象の制御点についてのループEの処理を終える。そして、全ての制御点についてループEの処理を実行したならば、図36のステップt1にリターンする。この凸状エネルギーの値を算出して屈曲エネルギーの値とすることで、領域の境界がこの領域の内側に所定の曲率以上で屈曲しない条件を満たすような閉領域の抽出を実現できる。
【0156】
その後、エネルギー算出部24eが、ステップn5以降の処理を実施の形態1と同様に行って内積エネルギー、画像エネルギーおよび外部エネルギーの各値を算出する。
【0157】
以上説明したように、実施の形態6では、各制御点から他の制御点へ向かうベクトルを算出し、閉領域に内包されるか否かを判定することで凸状エネルギーの値を算出することで閉領域の境界が内側に屈曲するほど大きな値を示す屈曲エネルギーの値を算出することとした。そして、この屈曲エネルギーを含む複数のエネルギーの加重和が最小となるように形状を更新していくことで閉領域を抽出することとした。したがって、生体内管腔画像中に映る溝位置を内部に含まず、その境界が輪郭部分を含まないような閉領域の抽出を適切に行うことができ、抽出した閉領域毎にモルフォロジー処理を適用することで閉領域内部の異常部を検出することができる。これによれば、溝位置や輪郭部分を異常部として誤検出することなく生体内管腔画像から異常部を精度良く検出することができる。
【0158】
なお、上記した実施の形態1の画像処理装置1、実施の形態2の画像処理装置1a、実施の形態3の画像処理装置1b、実施の形態4の画像処理装置1c、実施の形態5の画像処理装置1d、実施の形態6の画像処理装置1eは、予め用意されたプログラムをパソコンやワークステーション等のコンピュータシステムで実行することによって実現することができる。以下、各実施の形態1〜6で説明した画像処理装置1,1a,1b,1c,1d,1eと同様の機能を有し、画像処理プログラム141,141a,141b,141c,141d,141eを実行するコンピュータシステムについて説明する。
【0159】
図38は、本変形例におけるコンピューターシステム400の構成を示すシステム構成図であり、図39は、このコンピューターシステム400を構成する本体部410の構成を示すブロック図である。図38に示すように、コンピューターシステム400は、本体部410と、本体部410からの指示によって表示画面421に画像等の情報を表示するためのディスプレイ420と、このコンピューターシステム400に種々の情報を入力するためのキーボード430と、ディスプレイ420の表示画面421上の任意の位置を指定するためのマウス440とを備える。
【0160】
また、このコンピューターシステム400における本体部410は、図38および図39に示すように、CPU411と、RAM412と、ROM413と、ハードディスクドライブ(HDD)414と、CD−ROM460を受け入れるCD−ROMドライブ415と、USBメモリ470を着脱可能に接続するUSBポート416と、ディスプレイ420、キーボード430およびマウス440を接続するI/Oインターフェース417と、ローカルエリアネットワークまたは広域エリアネットワーク(LAN/WAN)N1に接続するためのLANインターフェース418とを備える。
【0161】
さらに、このコンピューターシステム400には、インターネット等の公衆回線N3に接続するためのモデム450が接続されるとともに、LANインターフェース418およびローカルエリアネットワークまたは広域エリアネットワークN1を介して、他のコンピューターシステムであるパソコン(PC)481、サーバ482、プリンタ483等が接続される。
【0162】
そして、このコンピューターシステム400は、記録媒体に記録された画像処理プログラム(例えば実施の形態1の画像処理プログラム141や実施の形態2の画像処理プログラム141a、実施の形態3の画像処理プログラム141b、実施の形態4の画像処理プログラム141c、実施の形態5の画像処理プログラム141d、実施の形態6の画像処理プログラム141e)を読み出して実行することで画像処理装置(例えば実施の形態1の画像処理装置1や実施の形態2の画像処理装置1a、実施の形態3の画像処理装置1b、実施の形態4の画像処理装置1c、実施の形態5の画像処理装置1d、実施の形態6の画像処理装置1e)を実現する。ここで、記録媒体とは、CD−ROM460やUSBメモリ470の他、MOディスクやDVDディスク、フレキシブルディスク(FD)、光磁気ディスク、ICカード等を含む「可搬用の物理媒体」、コンピューターシステム400の内外に備えられるHDD414やRAM412、ROM413等の「固定用の物理媒体」、モデム450を介して接続される公衆回線N3や、他のコンピューターシステムであるPC481やサーバ482が接続されるローカルエリアネットワークまたは広域エリアネットワークN1等のように、プログラムの送信に際して短期にプログラムを記憶する「通信媒体」等、コンピューターシステム400によって読み取り可能な画像処理プログラムを記録するあらゆる記録媒体を含む。
【0163】
すなわち、画像処理プログラムは、「可搬用の物理媒体」「固定用の物理媒体」「通信媒体」等の記録媒体にコンピューター読み取り可能に記録されるものであり、コンピューターシステム400は、このような記録媒体から画像処理プログラムを読み出して実行することで画像処理装置を実現する。なお、画像処理プログラムは、コンピューターシステム400によって実行されることに限定されるものではなく、他のコンピューターシステムであるPC481やサーバ482が画像処理プログラムを実行する場合や、これらが協働して画像処理プログラムを実行するような場合にも、本発明を同様に適用することができる。
【0164】
また、本発明は、上記した各実施の形態1〜6およびその変形例そのままに限定されるものではなく、各実施の形態や変形例に開示されている複数の構成要素を適宜組み合わせることによって、種々の発明を形成できる。例えば、各実施の形態や変形例に示される全構成要素からいくつかの構成要素を除外して形成してもよい。あるいは、異なる実施の形態や変形例に示した構成要素を適宜組み合わせて形成してもよい。
【産業上の利用可能性】
【0165】
以上のように、本発明の画像処理装置、画像処理方法、および画像処理プログラムは、生体内管腔画像から異常部を精度良く検出するのに適している。
【符号の説明】
【0166】
1,1a,1b,1c,1d,1e 画像処理装置
11 画像取得部
12 入力部
13 表示部
14,14a,14b,14c,14d,14e 記録部
141,141a,141b,141c,141d,141e 画像処理プログラム
20,20a,20b,20c,20d,20e 演算部
21 勾配強度算出部
22,22a,22b,22c,22d,22e 閉領域抽出部
23 初期閉領域設定部
24,24a,24b,24c,24d,24e エネルギー算出部
25,25a エッジ内包エネルギー算出部
251 閉領域勾配強度算出部
252 増加率算出部
253a エッジ抽出部
254a 屈曲点検出部
255a 端点検出部
256a 外積算出部
26b,26c,26d,26e 屈曲エネルギー算出部
261b 外積エネルギー算出部
262c 大局外積エネルギー算出部
263d 多重外積エネルギー算出部
264e 凸状エネルギー算出部
27 エネルギー加重和算出部
28,28a,28b,28c,28d 閉領域更新部
29,29a,29b,29c,29d 更新範囲決定部
291 制御点距離算出部
30a 形状情報算出部
301a 面積算出部
302a 周囲長算出部
303a 曲率算出部
311b エッジ情報検出部
312b 端点屈曲点距離算出部
313b エッジ距離算出部
32 領域統合部
321 統合部
322 統合後エネルギー算出部
33 異常部検出部
15 制御部

【特許請求の範囲】
【請求項1】
生体内管腔を撮像した生体内管腔画像から異常部を検出する画像処理装置であって、
前記生体内管腔画像をもとに、各画素の画素値の勾配強度を算出する勾配強度算出手段と、
前記勾配強度が所定の値以上である画素を領域の内部に含まず、かつ、領域の境界が該領域の内側に所定の曲率以上で屈曲しないことを条件として該条件を満たす閉領域を抽出する閉領域抽出手段と、
前記閉領域の内側から異常部を検出する異常部検出手段と、
を備え、
前記閉領域抽出手段は、
前記閉領域の初期形状を設定する初期閉領域設定手段と、
少なくとも前記閉領域の外形によって定まるエネルギーおよび前記閉領域における前記勾配強度によって定まるエネルギーを含む複数のエネルギーの値を算出するエネルギー算出手段と、
前記複数のエネルギーの加重和を算出するエネルギー加重和算出手段と、
前記複数のエネルギーのうちのいずれか1つの値をもとに前記閉領域の形状を更新する更新範囲を決定する更新範囲決定手段と、
前記加重和をもとに、前記閉領域の前記更新範囲内の形状を更新する閉領域更新手段と、
を備えることを特徴とする画像処理装置。
【請求項2】
前記エネルギー算出手段は、前記勾配強度が前記所定の値以上である画素が前記閉領域内部に多く存在するほど大きい値を示すエッジ内包エネルギーの値を算出するエッジ内包エネルギー算出手段を備えることを特徴とする請求項1に記載の画像処理装置。
【請求項3】
前記エッジ内包エネルギー算出手段は、前記閉領域内部の前記勾配強度をもとに閉領域内勾配強度を算出する閉領域勾配強度算出手段を備え、前記閉領域内勾配強度が大きいほど大きい値を示すエッジ内包エネルギーの値を算出することを特徴とする請求項1に記載の画像処理装置。
【請求項4】
前記エッジ内包エネルギー算出手段は、前記勾配強度が前記所定の値以上である画素をエッジとして抽出するエッジ抽出手段を備え、前記閉領域内部の前記エッジをもとに前記エッジ内包エネルギーの値を算出することを特徴とする請求項2に記載の画像処理装置。
【請求項5】
前記エッジ内包エネルギー算出手段は、
前記エッジの屈曲点を検出する屈曲点検出手段と、
前記エッジの端点を検出する端点検出手段と、
を備え、前記閉領域内における前記屈曲点および前記端点の内包状況をもとに前記エッジ内包エネルギーの値を算出することを特徴とする請求項4に記載の画像処理装置。
【請求項6】
前記閉領域は複数の制御点を結んだものとして設定され、該制御点が移動されて前記形状の更新がされていくものであり、
前記エッジ内包エネルギー算出手段は、前記制御点から前記屈曲点および前記端点へ向かうベクトルの外積を算出する外積算出手段を備え、前記外積の値をもとに前記エッジ内包エネルギーの値を算出することを特徴とする請求項5に記載の画像処理装置。
【請求項7】
前記エッジ内包エネルギー算出手段は、前記閉領域内部の前記勾配強度の前記形状の更新前後での増加率を算出する増加率算出手段を備え、前記増加率をもとに前記エッジ内包エネルギーの値を算出することを特徴とする請求項3に記載の画像処理装置。
【請求項8】
前記エネルギー算出手段は、前記閉領域の境界が内側に屈曲するほど大きな値を示す屈曲エネルギーの値を算出する屈曲エネルギー算出手段を備えることを特徴とする請求項1に記載の画像処理装置。
【請求項9】
前記閉領域は複数の制御点を結んだものとして設定され、該制御点が移動されて前記形状の更新がされていくものであり、
前記屈曲エネルギー算出手段は、前記制御点毎に、隣接する制御点へ向かうベクトルの外積をもとに外積エネルギーの値を算出する外積エネルギー算出手段を備え、前記外積エネルギーの値を前記屈曲エネルギーの値とすることを特徴とする請求項8に記載の画像処理装置。
【請求項10】
前記閉領域は複数の制御点を結んだものとして設定され、該制御点が移動されて前記形状の更新がされていくものであり、
前記屈曲エネルギー算出手段は、前記制御点毎に、所定の距離以上離れた制御点へ向かうベクトルの外積をもとに大局外積エネルギーの値を算出する大局外積エネルギー算出手段を備え、前記大局外積エネルギーの値を前記屈曲エネルギーの値とすることを特徴とする請求項8に記載の画像処理装置。
【請求項11】
前記閉領域は複数の制御点を結んだものとして設定され、該制御点が移動されて前記形状の更新がされていくものであり、
前記屈曲エネルギー算出手段は、前記制御点毎に、処理対象の制御点から所定の距離以上離れた制御点へ向かうベクトルの外積をもとに外積エネルギーの値を算出し、この外積エネルギーの値が所定の閾値より小さい場合に前記所定の距離離れた制御点よりも前記処理対象の制御点に近い制御点へ向かうベクトルの外積をもとに外積エネルギーの値を算出する処理を繰り返し行う多重外積エネルギー算出手段を備え、前記多重外積エネルギー算出手段が算出した外積エネルギーの値を前記屈曲エネルギーの値とすることを特徴とする請求項8に記載の画像処理装置。
【請求項12】
前記閉領域は複数の制御点を結んだものとして設定され、該制御点が移動されて前記形状の更新がされていくものであり、
前記屈曲エネルギー算出手段は、前記制御点毎に、他の制御点との間を結ぶベクトルの前記閉領域内における内包状況をもとに凸状エネルギーの値を算出する凸状エネルギー算出手段を備え、前記凸状エネルギーの値を前記屈曲エネルギーの値とすることを特徴とする請求項8に記載の画像処理装置。
【請求項13】
前記閉領域は複数の制御点を結んだものとして設定され、該制御点が移動されて前記形状の更新がされていくものであり、
前記更新範囲決定手段は、制御点毎に前記複数のエネルギーのうちの少なくともいずれか1つの値が所定の閾値以上である制御点との距離を算出する制御点距離算出手段を備え、前記距離をもとに前記複数の制御点の中から次回移動させる制御点を選出することで前記更新範囲を決定することを特徴とする請求項1に記載の画像処理装置。
【請求項14】
前記更新範囲決定手段は、前記閉領域の形状情報を算出する形状情報算出手段を備え、前記閉領域の形状情報をもとに前記更新範囲を決定することを特徴とする請求項1に記載の画像処理装置。
【請求項15】
前記形状情報算出手段は、前記閉領域の面積を算出する面積算出手段を備えることを特徴とする請求項14に記載の画像処理装置。
【請求項16】
前記形状情報算出手段は、前記閉領域の周囲長を算出する周囲長算出手段を備えることを特徴とする請求項14に記載の画像処理装置。
【請求項17】
前記形状情報算出手段は、前記閉領域の曲率を算出する曲率算出手段を備えることを特徴とする請求項14に記載の画像処理装置。
【請求項18】
前記更新範囲決定手段は、
少なくとも前記勾配強度が所定の閾値以上である画素をエッジとして抽出するエッジ情報検出手段を備え、
前記エッジをもとに前記更新範囲を決定することを特徴とする請求項1に記載の画像処理装置。
【請求項19】
前記エッジ情報検出手段は、前記エッジの端点および前記エッジの屈曲点を検出し、
前記エッジの端点または前記エッジの屈曲点からの距離を算出する端点屈曲点距離算出手段を備え、前記エッジの端点または前記エッジの屈曲点からの距離をもとに前記更新範囲を決定することを特徴とする請求項18に記載の画像処理装置。
【請求項20】
前記更新範囲決定手段は、前記エッジからの距離を算出するエッジ距離算出手段を備え、前記エッジからの距離をもとに前記更新範囲を決定することを特徴とする請求項18に記載の画像処理装置。
【請求項21】
前記閉領域抽出手段が抽出した前記閉領域を前記条件を満たすように統合する領域統合手段を備えることを特徴とする請求項1に記載の画像処理装置。
【請求項22】
前記領域統合手段は、
前記閉領域のうち、一部が重なり合った閉領域を統合する統合手段と、
前記統合後の閉領域について前記複数のエネルギーの値を算出する統合後エネルギー算出手段と、
を備え、前記統合後エネルギー算出手段が算出した前記複数のエネルギーの値をもとに前記統合の許否を判定することを特徴とする請求項21に記載の画像処理装置。
【請求項23】
生体内管腔を撮像した生体内管腔画像から異常部を検出する画像処理方法であって、
前記生体内管腔画像をもとに、各画素の画素値の勾配強度を算出する勾配強度算出工程と、
前記勾配強度が所定の値以上である画素を領域の内部に含まず、かつ、領域の境界が該領域の内側に所定の曲率以上で屈曲しないことを条件として該条件を満たす閉領域を抽出する閉領域抽出工程と、
前記閉領域の内側から異常部を検出する異常部検出工程と、
を含み、
前記閉領域抽出工程は、
前記閉領域の初期形状を設定する初期閉領域設定工程と、
少なくとも前記閉領域の外形によって定まるエネルギーおよび前記閉領域における前記勾配強度によって定まるエネルギーを含む複数のエネルギーの値を算出するエネルギー算出工程と、
前記複数のエネルギーの加重和を算出するエネルギー加重和算出工程と、
前記複数のエネルギーのうちのいずれか1つの値をもとに前記閉領域の形状を更新する更新範囲を決定する更新範囲決定工程と、
前記加重和をもとに、前記閉領域の前記更新範囲内の形状を更新する閉領域更新工程と、
を含むことを特徴とする画像処理方法。
【請求項24】
生体内管腔を撮像した生体内管腔画像から異常部を検出する画像処理プログラムであって、
前記生体内管腔画像をもとに、各画素の画素値の勾配強度を算出する勾配強度算出ステップと、
前記勾配強度が所定の値以上である画素を領域の内部に含まず、かつ、領域の境界が該領域の内側に所定の曲率以上で屈曲しないことを条件として該条件を満たす閉領域を抽出する閉領域抽出ステップと、
前記閉領域の内側から異常部を検出する異常部検出ステップと、
をコンピュータに実行させ、
前記閉領域抽出ステップは、
前記閉領域の初期形状を設定する初期閉領域設定ステップと、
少なくとも前記閉領域の外形によって定まるエネルギーおよび前記閉領域における前記勾配強度によって定まるエネルギーを含む複数のエネルギーの値を算出するエネルギー算出ステップと、
前記複数のエネルギーの加重和を算出するエネルギー加重和算出ステップと、
前記複数のエネルギーのうちのいずれか1つの値をもとに前記閉領域の形状を更新する更新範囲を決定する更新範囲決定ステップと、
前記加重和をもとに、前記閉領域の前記更新範囲内の形状を更新する閉領域更新ステップと、
を前記コンピュータに実行させることを特徴とする画像処理プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate

【図25】
image rotate

【図26】
image rotate

【図27】
image rotate

【図28】
image rotate

【図29】
image rotate

【図30】
image rotate

【図31】
image rotate

【図32】
image rotate

【図33】
image rotate

【図34】
image rotate

【図35】
image rotate

【図36】
image rotate

【図37】
image rotate

【図38】
image rotate

【図39】
image rotate


【公開番号】特開2012−45057(P2012−45057A)
【公開日】平成24年3月8日(2012.3.8)
【国際特許分類】
【出願番号】特願2010−187680(P2010−187680)
【出願日】平成22年8月24日(2010.8.24)
【出願人】(000000376)オリンパス株式会社 (11,466)
【Fターム(参考)】