以下、図面を参照し、本発明の好適な実施の形態について詳細に説明する。なお、以下説明する実施の形態では、カプセル型内視鏡が時系列に沿って撮像した複数枚の生体内の時系列画像を処理する画像処理装置について説明するが、本発明の画像処理装置が処理可能な時系列画像は生体内を撮像して得た時系列画像に限定されるものではない。
(実施の形態1)
先ず、実施の形態1について説明する。図1は、実施の形態1の画像処理装置を含む画像処理システムの全体構成を示す概略模式図である。図1に示すように、画像処理システムは、被検体1内部の画像(以下、「生体内画像」と呼ぶ。)を撮像するカプセル型内視鏡10、カプセル型内視鏡10から無線送信される生体内画像を受信する受信装置30、受信装置30によって受信された生体内画像をもとに、カプセル型内視鏡10によって撮像された生体内画像を処理して表示する画像処理装置70等で構成される。受信装置30と画像処理装置70との間の画像データの受け渡しには、例えば可搬型の記録媒体(可搬型記録媒体)50が使用される。
カプセル型内視鏡10は、撮像機能や無線機能等を具備するものであって、被検体1の口から飲み込まれて被検体1内部に導入され、体腔内を移動しながら逐次生体内画像を撮像する。そして、撮像した生体内画像を体外に無線送信する。
受信装置30は、複数の受信用アンテナA1〜Anを備え、各受信用アンテナA1〜Anを介してカプセル型内視鏡10から無線送信される生体内画像を受信する。この受信装置30は、可搬型記録媒体50の着脱が自在に構成されており、受信した生体内画像の画像データを可搬型記録媒体50に逐次保存する。このようにして、カプセル型内視鏡10が撮像した被検体1内部の生体内画像は、受信装置30によって時系列順に可搬型記録媒体50に蓄積され、時系列画像として保存される。
ここで、カプセル型内視鏡10による生体内画像の撮像レートは通常2〜4(frame/sec)であり、約8時間の体内滞在時間の間に数万枚以上の膨大な枚数の生体内画像が撮像される。このため、カプセル型内視鏡10が撮像した生体内画像の画像データは、DCT符号化方式を用いた例えばJPEG等の圧縮技術により圧縮処理されて可搬型記録媒体50に格納される。このDCT符号化方式を用いた圧縮処理では、所定の単位区画(通常8×8画素ブロック)毎に離散コサイン変換(DCT)を行って画像データを周波数成分に変換し、その変換係数であるDCT係数を単位区画毎に量子化することによって画像データを圧縮する。またJPEGでは、撮像信号を輝度信号(Y信号)と色差(u信号、v信号)に変換した後、各信号に対してDCT処理を行っている。
受信アンテナA1〜Anは、例えばループアンテナで構成され、図1に示すように、被検体1の体表上の所定位置に分散配置される。具体的には、例えば、被検体1内におけるカプセル型内視鏡10の通過経路に対応する体表上の位置に分散配置される。なお、受信アンテナA1〜Anは、被検体1に着用させるジャケットに分散配置されるものであってもよい。この場合には、受信アンテナA1〜Anは、被検体1がこのジャケットを着用することによって、被検体1内におけるカプセル型内視鏡10の通過経路に対応する被検体1の体表上の所定位置に配置される。また、受信アンテナは、被検体1に対して1つ以上配置されればよく、その数は限定されない。
画像処理装置70は、カプセル型内視鏡10によって撮像された生体内画像を医師等が観察・診断するためのものであり、ワークステーションやパソコン等の汎用コンピュータで実現される。この画像処理装置70は、可搬型記録媒体50の着脱が自在に構成されており、可搬型記録媒体50に保存された時系列画像を構成する生体内画像を処理し、LCDやELD等のディスプレイに時系列順に順次表示する。体腔内を撮像した生体内画像には、体腔内の粘膜や、体腔内を浮遊する内容物、泡等が映るとともに、時として出血部位や病変部位、異常部位等の注目すべき異常部が映る。画像処理装置70は、この注目すべき異常部が映る生体内画像中の位置を検出し、他と区別して表示する処理を行う。
図2は、実施の形態1の画像処理装置70の機能構成を説明するブロック図である。実施の形態1では、画像処理装置70は、画像取得部710と、入力部720と、表示部730と、記憶部740と、画像処理部750と、装置各部を制御する制御部770とを備える。
画像取得部710は、カプセル型内視鏡10によって撮像されて受信装置30によって可搬型記録媒体50に保存された時系列画像を構成する生体内画像を取得するものであり、例えば、可搬型記録媒体50を着脱自在に装着し、装着した可搬型記録媒体50に蓄積された生体内画像の画像データを読み出して取得する。この画像取得部710は、例えば、可搬型記録媒体50の種類に応じた読み書き装置によって実現される。この画像取得部710によって取得された生体内画像は、制御部770を介して画像処理部750に出力され、圧縮処理時とは逆の手順で伸張処理されて復元される。なお、カプセル型内視鏡10によって撮像された時系列の生体内画像の取得は、可搬型記録媒体50を用いた構成に限定されるものではなく、例えば、画像取得部710の代わりにハードディスクを備える構成とし、ハードディスク内にカプセル型内視鏡10によって撮像された時系列の生体内画像を予め保存しておく構成としてもよい。あるいは、可搬型記録媒体50の代わりに別途サーバーを設置し、このサーバーに時系列の生体内画像を予め保存しておく構成としてもよい。この場合には、画像取得部を、サーバーと接続するための通信装置等で構成し、この画像取得部を介してサーバーに接続して、サーバーから時系列の生体内画像を取得する。
入力部720は、例えば、キーボードやマウス、タッチパネル、各種スイッチ等によって実現されるものであり、操作入力に応じた操作信号を制御部770に出力する。表示部730は、LCDやELD等の表示装置によって実現されるものであり、制御部770の制御によって、時系列の生体内画像の表示画面を含む各種画面を表示する。
画像処理部750は、CPU等のハードウェアによって実現され、画像取得部710によって可搬型記録媒体50から読み出されて取得された生体内画像の画像データを伸張処理し、復元した生体内画像を表示部730に表示するための種々の演算処理を行う。この画像処理部750は、優先順位設定手段に相当する優先順位設定部753と、異常部検出手段に相当する異常部検出部755と、処理停止制御手段に相当する異常部検出処理停止制御部757とを含む。
優先順位設定部753は、時系列で前(例えば直前)の生体内画像を処理対象画像として行った異常部検出処理の結果をもとに、DCT処理の処理単位である各単位区画に対して異常部検出部755が異常部検出処理を行う際の優先順位を設定する優先順位設定処理を行う。
異常部検出部755は、優先順位設定部753によって設定された優先順位に従って各単位区画を順次処理対象(以下、適宜「処理単位区画」と呼ぶ。)とし、出血部位や病変部位、異常部位等である可能性が疑われる単位区画を異常部として検出する異常部検出処理(検出処理)を行う。この異常部検出部755は、処理単位区画の特徴量を、処理対象画像の伸張処理時に単位区画毎に得られるDCT係数から求める。そして、異常部検出部755は、求めた処理単位区画の特徴量をもとに異常部検出を行い、検出の信頼性の指標である確信度を算出する。
ここで、DCT係数について説明する。図3は、伸張処理の際に単位区画毎に取得されるDCT係数を示す図である。8×8画素ブロックの単位区画に対しては、図3に示すような64個(=8×8)のDCT係数が、輝度信号Y,色差信号u,色差信号vの各々に対して得られる(計192個)。また、64個のDCT係数は、0次周波数成分であり、対応する単位区画内の平均値情報に相当するDC成分(図3における「DC」)と、単位区画内を方向及び周波数が異なる各周波数成分に分解した際の情報に相当する63個のAC成分(図3における複数の「AC」)とから構成されている。このため、Y,u,v各信号のDC成分を参照することにより、対応する単位区画の輝度や色の違いを判別することができ、また各信号のAC成分を参照することにより、対応する単位区画のテクスチャ(模様)等の違いを判別することができる。もちろん、DCT係数そのものを参照するのではなく、DCT係数を基に2次的に算出する数値を用いてもよい。
生体内画像では、一般に、血が流れ出している出血部位を映した領域は、血によって周囲の粘膜領域とは色味が大きく異なる。また、絨毛が剥げて白く褪色している異常部位を映した領域は、正常な粘膜領域と比べて色味や粘膜の模様が大きく異なる。そして、内容物領域や泡領域についても、色味や表面の模様が正常な粘膜領域と比べて大きく異なる。このため、色味や表面の模様の情報を含むDCT係数を特徴量として用いることにより、出血等がある異常部、正常な粘膜領域、便等が浮遊している内容物領域、気泡が発生している泡領域等を区別することが可能である。そこで実施の形態1では、このような特性を利用し、伸張処理の際に得られるDCT係数を特徴量として用いる。そして、この特徴量をもとに単位区画毎に異常部の検出を行う。
具体的には、特徴量とは、単位区画内の各DCT係数を個別の要素とするベクトルデータである。異常部検出部755は、単位区画毎に、輝度信号(Y信号)および2つの色差信号(u信号およびv信号)のDCT係数を要素とする特徴量を算出する。算出される特徴量は、64×3=192次元のベクトルデータとなる。なお、この特徴量は、単位区画内の全てのDCT係数を要素とする必要はなく、処理対象の単位区画内から各信号毎に任意のDCT係数を選出して特徴量の要素としてもよい。また、DCT係数そのものを要素として特徴量を生成することとしたが、DCT係数そのものを要素とする代わりに、DCT係数の定数倍や定数分の1、あるいはDCT係数の自乗値や、複数のDCT係数の平均値等、DCT係数を基に2次的に算出する演算値を要素とすることもできる。
異常部検出処理停止制御部757は、異常部検出部755によって算出された確信度をもとに、異常部検出部755による異常部検出処理を停止する制御を行う。
制御部770は、CPU等のハードウェアによって実現される。この制御部770は、画像取得部710によって取得された時系列の生体内画像の画像データや入力部720から入力される操作信号、記憶部740に格納されるプログラムやデータ等に基づいて画像処理装置70を構成する各部への指示やデータの転送等を行い、画像処理装置70全体の動作を統括的に制御する。また、制御部770は、可搬型記録媒体50に保存された時系列画像を構成する生体内画像のうち、異常部検出部755による異常部検出処理の結果異常部が検出された生体内画像を、順次表示部730に表示する処理を行う画像表示処理部771を含む。この画像表示処理部771は、表示処理手段に相当する機能部である。
記憶部740は、更新記憶可能なフラッシュメモリ等のROMやRAMといった各種ICメモリ、内蔵或いはデータ通信端子で接続されたハードディスク、CD−ROM等の情報記録媒体及びその読取装置等によって実現されるものであり、画像処理装置70の動作にかかるプログラムや、画像処理装置70の備える種々の機能を実現するためのプログラム、これらプログラムの実行にかかるデータ等が格納される。また、記憶部740には、画像処理部を優先順位設定部753、異常部検出部755、および異常部検出処理停止制御部757として機能させるとともに、制御部770を画像表示処理部771として機能させるための画像処理プログラム741、優先順位設定データ743や異常部検出データ745が格納される。
優先順位設定データ743は、優先順位設定部753による優先順位設定処理の結果を示すものであり、優先順位記録手段としての記憶部740に記憶される。例えば、優先順位設定部753は、各単位区画に設定した優先順位に従って優先順位が高い単位区画から順に通し番号を割り振り、割り振った通し番号を単位区画の識別番号と対応付けて優先順位設定データ743を生成し、記憶部740に格納することによって、優先順位設定処理の結果を記録する。
異常部検出データ745は、異常部検出部755が各生体内画像に対する異常部検出処理の結果を示すものであり、検出結果記録手段としての記憶部740に記憶される。図4は、異常部検出データ745のデータ構成例を示す図である。図4に示すように、異常部検出データ745は、画像番号と対応付けて異常部検出結果と異常部検出フラグとが設定されたデータテーブルであり、異常部検出結果として処理単位区画および確信度が設定される。画像番号は、可搬型記録媒体50に保存された時系列画像を構成する各生体内画像の時系列順を示すものであり、例えば、受信装置30が受信した生体内画像を可搬型記録媒体50に保存する際に受信順に従って割り当てることとしてもよいし、画像処理装置70において画像取得部710が可搬型記録媒体50から生体内画像を取得した際にその取得順に従って各生体内画像に画像番号を割り当てることとしてもよい。処理単位区画には、異常部検出処理された単位区画の識別番号が設定される。確信度には、対応する処理単位区画についてされた異常部検出処理の際に得られた確信度が設定される。異常部検出フラグは、対応する処理単位区画が異常部として検出されたか否かを示すフラグ情報であり、初期値として「OFF」が設定される。そして、異常部検出処理の結果、処理単位区画が異常部として検出された場合にその異常部検出フラグが「ON」に変更される。なお、この異常部検出データ745は、可搬型記録媒体50に書き込む構成としてもよい。
次に、実施の形態1の画像処理装置が行う処理の流れについて、図5〜図12を参照して説明する。図5は、実施の形態1の画像処理装置70が行う処理手順を示す全体フローチャートである。なお、ここで説明する処理は、記憶部740に格納された画像処理プログラム741に従って画像処理装置70の各部が動作することによって実現される。
先ず、画像処理部750が、処理対象の生体内画像(処理対象画像)の画像番号iを「i_start」に初期化する(ステップa1)。i_startは時系列画像の先頭の生体内画像の画像番号である。そして、画像処理部750は、画像取得部710および制御部770を介して画像番号iの生体内画像I(i)の画像データを取得する(ステップa3)。このとき、画像処理部750は、取得した画像データの伸張処理を行って生体内画像I(i)を復元する。この伸張処理時にJPEGにおける単位区画である8×8画素ブロック毎に得られたDCT係数は、記憶部740に一時的に保持される。なお、このとき画像を完全に復元せず、DCT係数を読み出すだけで異常部検出処理を行い、後で画像確認する際に、異常部が存在した画像のみを復元して表示してもよい。これにより異常部がない画像に対しては逆DCT処理を行う必要がなくなり、処理時間を高速化できる。
次に、優先順位設定部753が優先順位設定処理を行う(ステップa9)。続いて、異常部検出部755が、処理対象とする単位区画の優先順位kを「1」に初期化し(ステップa11)、処理対象画像I(i)中の優先順位kの単位区画を処理単位区画として異常部検出処理を行う(ステップa13)。そして、異常部検出処理停止制御部757が、異常部検出処理の結果をもとに、異常部検出部755による異常部検出処理を停止するか否かを判定する。ここで異常部検出処理停止制御部757が異常部検出処理を停止すると判定した場合には(ステップa15:Yes)、異常部検出部755が、優先順位kの処理単位区画に対応する異常部検出フラグを「ON」にして異常部検出データ745を更新し、この処理単位区画を異常部検出位置として記録する(ステップa17)。そしてこの後、次に処理対象とする生体内画像I(i)の有無の判定(ステップa23)に移行する。一方、異常部検出処理停止制御部757が異常部検出処理を停止しないと判定した場合には(ステップa15:No)、異常部検出部755は、全ての単位区画について異常部検出処理を行ったか否かを判定する。そして、行った場合には(ステップa19:Yes)、ステップa23に移行する。未処理の単位区画がある場合には(ステップa19:No)、異常部検出部755は、優先順位kをインクリメントしてk=k+1とし(ステップa21)、ステップa13〜ステップa19の処理を行う。
ステップa23では、画像処理部750が、次に処理対象とする生体内画像I(i)の有無をi=i_endにより判定する。そして、画像処理部750は、i≠i_endの場合には(ステップa23:No)、画像番号iをインクリメントしてi=i+1とし(ステップa25)、ステップa3に戻る。一方、i=i_endの場合には(ステップa23:Yes)、ステップa27に移行する。ステップa27では、画像表示処理部771が画像表示処理を実行し、画像番号i_start〜i_endに属する生体内画像であって、ステップa13の異常部検出処理の結果異常部が検出された生体内画像を表示対象として順次表示部730に表示する処理を行う。
次に、図5のステップa9による優先順位設定処理について説明する。図6は、優先順位設定処理の詳細な処理手順を示すフローチャートである。この優先順位設定処理では、優先順位設定部753は、先ず、異常部検出データ745を参照して時系列で処理対象画像I(i)の直前の生体内画像I(i−1)に対する異常部検出処理の結果を取得する(ステップb1)。ここで取得した画像番号i−1に対応する異常部検出フラグに「ON」が設定されている場合には、優先順位設定部753は、生体内画像I(i−1)中で異常部が検出されていると判定し(ステップb3:Yes)、この異常部検出処理の結果に従って各単位区画に優先順位を設定する(ステップb5)。このとき、設定した優先順位に基づいて優先順位設定データ743を更新する。カプセル型内視鏡10は、2〜4(frame/sec)の撮像レートで撮像動作を繰り返すため、撮像された生体内画像中に異常部が映る場合、時系列で近傍となる生体内画像にもこの異常部が映る場合が多く、またこの異常部が同じような位置に映る可能性が高い。このため、優先順位設定部753は、時系列で直前の生体内画像中で検出された異常部検出位置をもとに、各単位区画の優先順位を設定する。図7は、優先順位の設定方法について説明するための説明図であり、図7−1は、時系列で直前の生体内画像I(i−1)中で検出された異常部検出位置を示し、図7−2は、図7−1の異常部検出位置をもとに処理対象画像I(i)中の各単位区画に設定された優先順位を示している。図7−1に示すように、異常検出フラグが「ON」であり異常部検出位置として記録された処理単位区画が単位区画E10である場合には、図7−2に示すように、処理対象画像I(i)中のこの単位区画E10の優先順位を最も高い“1”とし、その他の単位区画については、単位区画E10に近い単位区画ほど高くなるように優先順位を設定する。
一方、図6に示すように、優先順位設定部753は、画像番号i−1に対応する異常部検出フラグに「ON」が設定されていないならば異常部が検出されていないと判定する(ステップb3:No)。この場合には、優先順位設定部753は、優先順位設定データ743を読み出し、この優先順位設定データ743に保持されている各単位区画の優先順位、すなわち前回の処理対象画像である生体内画像I(i−1)について設定した優先順位に従って、各単位区画に優先順位を設定する(ステップb7)。例えば一の生体内画像中に異常部が映った場合に、この異常部が、カプセル型内視鏡10の姿勢が変化した等の理由で時系列で次順の生体内画像には映らず、さらに次順の生体内画像には映るという場合がある。したがって、時系列で前の生体内画像中で異常部が検出されていない場合であっても、さらに時系列で前の生体内画像中で検出された異常部検出位置、すなわち、前々回に処理対象画像として処理された生体内画像中(前々回の生体内画像中で異常部が検出されていない場合にはそれ以前に処理対象画像として処理された生体内画像中)で検出された異常部検出位置またはその周辺で、異常部が検出される可能性がある。このため、実施の形態1では、時系列で直前の生体内画像I(i−1)について設定した優先順位を用い、前回検出された異常部検出位置の単位区画を異常部に対応する可能性のある単位区画として特定し、優先順位を設定する。優先順位を設定したならば、図5のステップa9にリターンし、その後ステップa11に移行する。
次に、図5のステップa13による異常部検出処理について説明する。図8は、異常部検出処理の詳細な処理手順を示すフローチャートである。この異常部検出処理では、異常部検出部755は、記憶部740に一時的に保持されている処理単位区画のDCT係数を取得する(ステップc1)。続いて、ステップc1で取得した処理単位区画内のDCT係数をもとに、異常部検出部755が処理単位区画の特徴量を算出する(ステップc3)。そして、取得した特徴量をもとに、異常部検出部755が、この処理単位区画についての異常部検出における確信度を算出する(ステップc5)。そして、図5のステップa13にリターンし、その後ステップa15に移行する。
ここで、異常部の検出方法について説明する。実施の形態1では、例えば、予め異常部のDCT係数をその種類毎にサンプルとして取得し、取得したDCT係数をもとに算出した異常部の特徴量分布情報等を教師データとして用意しておく。図9は、異常部の特徴量の教師データの一例を示す図である。教師データは、出血部位や病変部位、異常部位等の異常部の種類毎に用意され、図9では、異常タイプA,B,Cの3つの異常部種類を図示している。なお、図9中では、教師データを平面的に図示しているが、上記のように特徴量は、最大64×3=192次元となる多次元の特徴量である。異常部検出部755は、この教師データに基づいて、処理単位区画の特徴量が異常部タイプA,B,Cのいずれかに属する場合に、この処理単位区画を異常部として検出する。例えば、異常部タイプBに属する特徴量P11をもつ処理単位区画は、異常部として検出される。同様にして、異常部タイプAおよび異常部タイプCに属する特徴量P13をもつ処理単位区画は、異常部として検出される。
そして、異常部検出部755は、処理単位区画を異常部として検出した場合には、その異常部検出における確信度を算出する。図10は、確信度の算出方法を説明する図である。図10に示すように、確信度は、例えば属する異常部タイプの教師データの中心からの距離に従って算出される。ここで異常部検出部755が算出した確信度をもとに、図5のステップa15において、異常部検出処理停止制御部757が、異常部検出部755による処理対象画像I(i)に対する異常部検出処理を停止するか否かを判定する。具体的には、異常部検出処理停止制御部757は、この確信度を、異常部検出処理を停止するか否かの判断の基準値として予め設定される基準確信度と比較し、基準確信度以上ならば次に優先順位が高い単位区画についての異常部検出処理を停止する制御を行い、時系列で次順の生体内画像を処理対象画像とした異常部検出処理に移行させる制御を行う。例えば基準確信度が「0.6」であれば、異常部検出における確信度が「0.6」以上、すなわち、処理単位区画の特徴量が図10の領域E21に属する場合に、処理対象画像I(i)に対する異常部検出処理が停止される。なお、図9に示した異常部タイプAと異常部タイプCのように、互いにその教師データが重畳している場合に、処理単位区画の特徴量がこの重畳領域に属する場合には、異常部検出処理停止制御部757は、値の大きい確信度を用いて基準確信度との比較を行う。
なお、基準確信度は、ユーザ操作等による外部入力に従って設定することとしてもよい。この場合には、制御部770は、基準確信度設定手段として機能する。すなわち、制御部770は、基準確信度の設定依頼の通知を表示部730に表示する処理を行い、入力部720を介して基準確信度を定める入力を受け付ける。図11は、基準確信度の設定依頼の通知画面の一例を示す図である。通知画面W10には、基準確信度の入力を受け付ける旨のメッセージとともに、基準確信度の入力操作を受け付ける入力ボックスIB10、入力操作を確定して基準確信度を設定するOKボタンBTN11および入力操作を取り消す取消ボタンBTN13が配置されている。ユーザは、入力部720を介して所望の基準確信度の値を入力ボックスIB10に入力し、OKボタンBTN11を押下して基準確信度を設定する。例えば、図11に示すように、基準確信度を「0.8」としてOKボタンBTN11を押下した場合には、異常部検出処理停止制御部757は、異常部検出における確信度が「0.8」以上、すなわち処理単位区画の特徴量が図10の領域E23に属する場合に、処理対象画像I(i)に対する異常部検出処理を停止させることとなる。このように、設定依頼の通知画面において基準確信度の設定値を変更できるようにすれば、適宜基準確信度を厳しく設定し、あるいは緩く設定することができる。
次に、図5のステップa27による画像表示処理について説明する。図12は、画像表示処理の詳細な処理手順を示すフローチャートである。この画像表示処理では、画像表示処理部771は、先ず、表示対象の生体内画像の画像番号iを「i_start」に初期化する(ステップd1)。続いて、画像表示処理部771は、異常部検出データ745を参照して生体内画像I(i)に対する異常部検出処理の結果を取得する。そして、画像表示処理部771は、ここで取得した画像番号iに対応する異常部検出フラグに「ON」が設定されている場合に、生体内画像I(i)中で異常部が検出されていると判定する(ステップd3:Yes)。この場合には、画像表示処理部771は、画像番号iの生体内画像I(i)の画像データを取得し(ステップd5)、ステップd3で取得した画像番号iに対応する異常部検出結果に処理単位区画として設定されている単位区画の識別番号をもとに、異常部検出処理がされていない単位区画を検出する。そして画像表示処理部771は、異常部検出処理がされていない単位区画がある場合には(ステップd7:Yes)、この未処理の単位区画を処理単位区画とした異常部検出処理の再開を制御する(ステップd9)。すなわち、画像表示処理部771は処理再生制御手段として機能し、ここでの制御によって、異常部検出部755に未処理の単位区画を順次処理対象とした異常部検出処理を行わせ、生体内画像I(i)全域について異常部の検出を行うことができる。これにより、時系列全体の画像より異常部を含む画像を高速に検出すると共に、人が画像を目視確認する間を利用して異常部が存在する画像内の全ての領域での異常部検出も行うことができる。
そして、画像表示処理部771は、最終的に得られた各単位区画についての異常部検出処理の結果から異常部領域を決定し、生体内画像I(i)を異常部領域とともに表示部730に表示する処理を行う(ステップd11)。生体内画像を医師等が観察する際、注目すべき異常部を正常な粘膜部や内容物、泡等を映した他の部分と区別して提示することは、観察支援の観点から重要である。画像表示処理部771は、例えば異常部検出処理の結果得られた確信度が所定値以上である単位区画を異常部領域とする。そして、画像表示処理部771は、この異常部領域を他の領域と識別表示して生体内画像I(i)を表示する処理を行う。異常部領域とするか否かの判定基準とする閾値は適宜設定でき、基準確信度を用いてもよいし、基準確信度より大きい値、または小さい値としても構わない。
一方、画像表示処理部771は、画像番号iに対応する異常部検出フラグに「ON」が設定されていない場合には異常部が検出されていないと判定し(ステップd3:No)、この生体内画像I(i)の表示を行わないこととしてステップd13に移行する。なお、異常部が検出されていない生体内画像についても表示する構成としても構わない。例えば、異常部が検出された生体内画像と比べて短い表示時間で表示する処理を行うこととしてもよい。
そして、画像表示処理部771は、画像番号iをインクリメントしてi=i+1とし(ステップd13)、次に表示対象とする生体内画像I(i)の有無をi=i_endにより判定する。そして、画像処理部750は、i≦i_endの場合には(ステップd15:Yes)、時系列で直後の生体内画像についてステップd3〜ステップd13の処理を再度行う。一方、i>i_endの場合には(ステップd15:No)、図5のステップa27にリターンし、その後処理を終了する。
以上説明したように、実施の形態1によれば、時系列画像を構成する生体内画像を処理して異常部が映る生体内画像中の位置を検出する際に、処理対象画像を単位区画毎に領域分割し、時系列で前の生体内画像中で検出された異常部検出位置をもとに、各単位区画に優先順位を設定することができる。そして、この優先順位に従って単位区画を順次処理単位区画として異常部検出処理を行い、この異常部検出処理の結果得られた異常部検出における確信度が基準確信度以上の場合に、次に優先順位が高い単位区画についての異常部検出処理を停止し、時系列で次順の生体内画像を処理対象画像とした異常部検出処理に移行することができる。したがって、異常部の検出にかかる処理を必要最低限に抑え、時系列画像を構成する生体内画像中から、異常部を含む生体内画像を短時間で検出できるという効果を奏する。
(実施の形態2)
次に、実施の形態2について説明する。実施の形態1では、処理対象画像の伸張処理時に得られるDCT係数を用いて異常部を検出することとしたが、実施の形態2では、画素値の情報を用いて異常部の検出を行う。この実施の形態2の画像処理装置は、実施の形態1において図2に示して説明した画像処理装置70の構成において、画像処理部750を図13に示す画像処理部760に置き換えて構成される。図13に示すように、実施の形態2の画像処理装置を構成する画像処理部760は、領域分割部761と、特徴量算出部763と、優先順位設定部765と、異常部検出部767と、異常部検出処理停止制御部769とを含む。
ここで、実施の形態2の画像処理装置が行う処理の流れについて、図14〜図18を参照して説明する。なお、実施の形態1と同様の処理工程には、同一の符号を付している。
図14は、実施の形態2の画像処理装置が行う処理手順を示す全体フローチャートである。実施の形態2では、ステップe5において領域分割部761が、復元した生体内画像I(i)を処理対象画像I(i)として所定画素数の領域(実施の形態1と同様に、「単位区画」と呼ぶ)に領域分割する。続いて、特徴量算出部763が特徴量算出処理を実行し(ステップe7)、優先順位設定部765が優先順位設定処理を行う(ステップe9)。
次に、異常部検出部767が、処理対象とする単位区画の優先順位kを「1」に初期化し(ステップe11)、処理対象画像I(i)中の優先順位kの単位区画を処理単位区画として異常部検出処理を行う(ステップe13)。そして、ステップe15に移行し、異常部検出処理停止制御部769が、異常部検出処理の結果をもとに異常部検出部767による異常部検出処理を停止するか否かを判定する。
先ず、図14のステップe7による特徴量算出処理について説明する。図15は、特徴量算出処理の詳細な処理手順を示すフローチャートである。この特徴量算出処理では、特徴量算出部763は、各単位区画をそれぞれ処理対象として、ループAの処理を行う(ステップf1〜ステップf9)。
ループAでは、特徴量算出部763は先ず、処理対象の単位区画の特徴量として、該単位区画内の画素の画素値の平均値を算出する(ステップf3)。そして、特徴量算出部763は、ステップf3で算出した特徴量をもとに処理対象の単位区画が粘膜を映した粘膜領域か否かを判定し、粘膜領域ならば(ステップf5:Yes)、この処理対象の単位区画を粘膜領域として設定する(ステップf7)。これは、優先順位設定部765が各単位区画に優先順位を設定する際にその単位区画が粘膜領域であるか否かを加味するために行う処理である。例えば、予め粘膜を映した粘膜領域の画素値をもとにその特徴量をサンプルとして取得し、粘膜領域の特徴量分布情報等を教師データとして用意しておく。そして、特徴量算出部763が、処理対象の単位区画について算出した特徴量を教師データと比較・照合することによって、処理対象の単位区画が粘膜領域か否かを判定する。なお、予め粘膜以外を映した領域、すなわち例えば、内容物を映した内容物領域および泡を映した泡領域の画素値をもとにその特徴量をサンプルとして取得し、内容物領域および泡領域の特徴量分布情報等を教師データとして用意しておく。そして、特徴量算出部763が、処理対象の単位区画について算出した特徴量を教師データと比較・照合することによって、処理対象の単位区画が内容物領域または泡領域か否かを判定し、内容物領域でも泡領域でもない場合に、粘膜領域と判定することとしてもよい。
以上の手順に従い、全ての単位区画を処理対象としてループAの処理を実行したならば、図14のステップe7にリターンし、その後ステップe9に移行する。この特徴量算出処理の結果得られた各単位区画が粘膜領域か否かの情報は、記憶部に一時的に保持され、優先順位設定処理の際に参照される。
次に、図14のステップe9による優先順位設定処理について説明する。図16は、優先順位設定処理の詳細な処理手順を示すフローチャートである。実施の形態2では、優先順位設定部765は、ステップb5またはステップb7で優先順位を設定した後に、その単位区画が図15で説明した特徴量算出処理で判定された粘膜領域か否かに応じた重み付けを行って、優先順位を修正する(ステップg9)。体腔内を映した生体内画像中で観察者が確認したいのは主に粘膜が映る粘膜領域である。これは、粘膜領域には異常部が映る可能性があるためであり、実施の形態1では、粘膜領域を映した単位区画を異常部に対応する可能性のある単位区画として特定し、これを加味して優先順位を修正する。具体的には、優先順位設定部765は、粘膜領域である単位区画の優先順位を上げ、粘膜領域ではない領域の優先順位を下げて優先順位を修正する。
次に、図14のステップe13による異常部検出処理について説明する。図17は、異常部検出処理の詳細な処理手順を示すフローチャートである。ここで、異常部が映る領域は、周囲に存在する正常な粘膜領域を構成する画素とは画素値に変化が見られる箇所であると考えられる。そこでこの異常部検出処理では、処理単位区画内の一画素を注目画素として画素値変化量を算出するという処理を処理単位区画内の全画素について行い、異常部候補画素を検出する。画素値変化量の算出に際しては、血液の吸収帯域に相当する色成分を用いる。生体内画像がRGB画像である場合には、病変による画素値変化は血液の吸収帯域に近く、感度や解像度が比較的高いG成分において表れやすい傾向があるため、本実施の形態では、RGB画像を扱い、そのRGB画像のうちのG成分画像を用いて画素値変化量を特徴量として算出する。すなわち、異常部検出部767は、先ず、処理単位区画を構成する各画素を順次注目画素とし、ループBの処理をそれぞれ行う(ステップh1〜ステップh5)。
ループBでは、異常部検出部767は、先ず、注目画素の画素値変化量を算出する(ステップh2)。図18は、画素値変化量の算出方法を説明する説明図である。画素値変化量の算出は、例えば、処理単位区画E30内の一画素である注目画素IPを中心とした水平方向、垂直方向、右上がり斜め方向および右下がり斜め方向の4方向について行う。すなわち、図18に示すように、注目画素IPから水平方向に所定の画素数λまたは画素数λに相当する長さ離れた単位区画の各画素IAhor,IBhor、垂直方向に離れた単位区画の各画素IAver,IBver、右上がり斜め方向に離れた単位区画の各画素IAsla,IBsla、右下がり斜め方向に離れた単位区画の各画素IAbac,IBbacを周囲画素とし、注目画素とこれらの周囲画素とをもとに、画素値変化量を算出する。
注目画素IPの水平方向についての画素値変化量V
horは、注目画素IPと、水平方向の周囲画素IA
hor,IB
horとから、次式(1)によって表される。
注目画素IPの垂直方向についての画素値変化量V
verは、注目画素IPと、垂直方向の周囲画素IA
ver,IB
verとから、次式(2)によって表される。
注目画素IPの右上がり斜め方向についての画素値変化量V
slaは、注目画素IPと、右上がり斜め方向の周囲画素IA
sla,IB
slaとから、次式(3)によって表される。
注目画素IPの右下がり斜め方向についての画素値変化量V
bacは、注目画素IPと、右下がり斜め方向の周囲画素IA
bac,IB
bacとから、次式(4)によって表される。
ここで、式(1)〜(4)に従って算出した各画素値変化量Vhor,Vver,Vsla,Vbacを包括して、適宜画素値変化量Vdirと記す。ここで、添え字dirは、注目画素IPを中心とした予め定められた方向(本実施の形態では、水平,垂直,右上がり斜め,右下がり斜めの何れか)を示す添え字である。
注目画素IPの領域が周囲よりも凸の場合、画素値変化量Vdirは正の値をとる。一方、注目画素IPの領域が周囲よりも凹の場合、画素値変化量Vdirは負の値をとる。これは、一般に、周囲よりも凸となる領域は周囲よりも明るく輝度値が高くなり、周囲よりも凹となる領域は周囲よりも暗く輝度値が低くなるからである。
続いて図17に示すように、異常部検出部767は、算出した画素値変化量Vdirをもとに注目画素と各周囲画素との間に画素値に有意な変化がみられるかどうかを判定し、変化がみられる場合に(ステップh3:Yes)、注目画素を異常部候補画素とする(ステップh4)。具体的には、異常部検出部767は、各方向について算出した画素値変化量をもとに、全方向の画素値変化量が所定の凸閾値(ConvexityTh)より大きい場合、すなわち、Vhor>ConvexityThかつVver>ConvexityThかつVsla>ConvexityThかつVbac>ConvexityThならば、その注目画素が周囲に対して凸であると判定して異常部候補画素として検出する。一方、異常部検出部767は、各方向について算出した画素値変化量をもとに、全方向の画素値変化量が所定の凹閾値(ConcaveTh)より小さい場合、すなわち、Vhor<ConcaveThかつVver<ConcaveThかつVsla<ConcaveThかつVbac<ConcaveThならば、その注目画素が周囲に対して凹であると判定して異常部候補画素として検出する。そして、異常部検出部767は、処理単位区画内の全画素を注目画素として同様の処理を行って、処理単位区画内の異常部候補画素を検出し、ループBを終了する。その後、異常部検出部767は、異常部候補画素の面積や、異常部候補画素におけるR,G,B成分の平均画素値情報や画素値分散等を異常部候補画素の特徴量として算出し、この値を基に処理単位区画が異常部であるか判定する(ステップh6)。特徴量を用いた判定の方法に関しては、既に述べた教師データを利用する方法等が利用できる。
そして、図14のステップe13にリターンし、その後ステップe15に移行する。このステップe15では、異常部検出処理停止制御部769が、異常部検出部767による処理対象画像I(i)に対する異常部検出処理を停止するか否かを判定する。具体的には、異常部検出処理停止制御部769は、異常部検出処理の結果処理単位区画を異常部として検出した場合に、次に優先順位が高い単位区画についての異常部検出処理を停止する制御を行い、時系列で次順の生体内画像を処理対象画像とした異常部検出処理に移行させる制御を行う。
以上説明したように、実施の形態2によれば、実施の形態1と同様の効果を奏し、異常部の検出にかかる処理を必要最低限に抑え、時系列画像を構成する生体内画像中から、異常部を含む生体内画像を短時間で検出できるという効果を奏する。
以上、この発明の好適な2つの実施の形態について説明したが、この発明は、上記したものに限定されず、発明の趣旨を逸脱しない範囲で適宜変更が可能である。
例えば、上記した実施の形態1では、異常部検出における確信度を算出し、算出した確信度をもとに異常部検出処理を停止させる場合について説明したが、検出した異常部の重要度を算出し、この重要度をもとに異常部検出処理を停止させることとしてもよい。例えば、図19に示して説明した異常部タイプA,B,Cそれぞれについての重要度を設定した重要度テーブルを記憶部に記憶しておく。図19は、重要度テーブルのデータ構成例を示す図である。図19に示すように、重要度テーブルには、異常部種類と対応付けて、その重要度の値が設定されている。この場合には、異常部検出部が、この重要度テーブルに従って検出した異常部の重要度を算出する。このとき、図9に示した異常部タイプAと異常部タイプCのように、互いにその教師データが重畳している場合に、処理単位区画の特徴量がこの重畳領域に属する場合には、異常部検出部は、中心との距離が近い異常部種類を選択して重要度を算出する。そして、異常部検出処理停止制御部が、この重要度を、異常部検出処理を停止するか否かの判断の基準値として予め設定される基準重要度と比較し、基準重要度以上ならば異常部と判定する。例えば基準重要度が「0.5」であれば、処理単位区画の特徴量が、重要度テーブルに重要度として「0.5」以上の値が設定されている異常部種類(異常部タイプAや異常部タイプB)に属する場合に、次に優先順位が高い単位区画についての異常部検出処理が停止され、時系列で次順の生体内画像を処理対象画像とした異常部検出処理に移行される。
なお、基準重要度は、ユーザ操作等による外部入力に従って設定することとしてもよい。この場合には、制御部770は、基準重要度設定手段として機能する。すなわち、制御部770は、基準重要度の設定依頼の通知を表示部730に表示する処理を行い、入力部720を介して基準重要度を定める入力を受け付ける。図20は、基準重要度の設定依頼の通知画面の一例を示す図である。通知画面W20には、基準重要度の入力を受け付ける旨のメッセージとともに、基準重要度の入力操作を受け付ける入力ボックスIB20、入力操作を確定して基準重要度を設定するOKボタンBTN21および入力操作を取り消す取消ボタンBTN23が配置されている。ユーザは、入力部720を介して所望の基準重要度の値を入力ボックスIB20に入力し、OKボタンBTN21を押下して基準重要度を設定する。このように、設定依頼の通知画面において基準重要度の設定値を変更できるようにすれば、検出したい異常部の重要度に応じて適宜基準重要度を厳しく設定し、あるいは緩く設定することができる。
また、確信度の値と重要度の値とを両方用いて異常部を検出することとしてもよい。図21は、この場合の異常部の検出方法を説明するための図であり、図21において、異常部タイプE,F,Gそれぞれの教師データを示している。ここで例えば、異常部タイプEの重要度が「0.2」であり、異常部タイプFの重要度が「0.8」であり、異常部タイプGの重要度が「0.9」であるとする。また、基準確信度が「0.5」であり、基準重要度が「0.6」であるとする。例えば、異常部検出部が異常部検出処理を行った結果、図21に示す異常部タイプE,F,Gの各教師データが重畳する領域に属する特徴量P21が得られ、その確信度が異常部タイプEについて中心OEからの距離に従って「0.1」と算出され、異常部タイプFについて中心OFからの距離に従って「0.7」と算出され、異常部タイプGについて中心OGからの距離に従って「0.3」と算出された場合には、確信度が「0.5」以上である異常部タイプFの重要度が「0.8」であるので、次に優先順位が高い単位区画についての異常部検出処理が停止され、時系列で次順の生体内画像を処理対象画像とした異常部検出処理に移行される。すなわち、重要度が基準重要度以上である異常部タイプFまたは異常部タイプGの教師データに処理対象区画の特徴量が属しており、かつこの特徴量から求まる異常部検出における確信度が「0.5」以上の場合、すなわち処理単位区画の特徴量が図21中に破線で示す領域E41内または領域E43内に属する場合に、異常部検出処理が停止される。
また、上記した実施の形態1ではDCT係数を用い、実施の形態2では画素値変化量を用いて領域分割された単位区画の異常部を検出する場合について説明したが、異常部の検出方法はこれらに限定されるものではなく、公知の技術を用いて適宜検出することもできる。例えば、各単位区画を構成する画素の輝度や色度、色差等を用い、各単位区画の色情報を、出血等の異常部の色情報や正常な粘膜領域の色情報、内容物や泡領域の色情報に基づく基準値と比較することによって異常部を検出することとしてもよい。
また、優先順位設定処理において、時系列で前(例えば直前)の生体内画像に対して行った異常部検出処理の結果得られた確信度を加味して優先順位を設定することとしてもよい。図22は、この場合の優先順位の設定方法について説明する図であり、時系列で処理対象画像の直前の生体内画像に対して行った異常部検出処理の結果得られた各単位区画の確信度を示している。ここで、時系列で直前の生体内画像に対して異常部検出処理を行った結果単位区画E51について得られた確信度「0.8」をもとに、この単位区画E51が異常部検出位置として記録されたとする。この場合には、時系列で次順の生体内画像では、この単位区画E51の優先順位を最も高い“1”とし、その他の単位区画については、単位区画E51に近い単位区画ほど高くなるように優先順位を設定するが、さらにこのとき、異常部検出処理がされた単位区画について算出された確信度をもとに、この優先順位を修正することとしてもよい。具体的には、図22に示す時系列で直前の生体内画像中の異常部検出処理がされて確信度が求められた単位区画のうち、基準確信度には満たないが比較的大きい値の確信度が得られた単位区画E53や、単位区画E55の優先順位が高くなるように、各単位区画の優先順位を修正することとしてもよい。これによれば、時系列で前(例えば直前)の生体内画像に対して行った異常部検出処理の結果得られた確信度を加味し、高い確信度が得られた単位区画の優先順位を高く設定することができる。
また、優先順位設定処理において、異常部検出処理において検出した異常部に対する重要度を求める場合には、時系列で前(例えば直前)の生体内画像に対して行った異常部検出処理の結果得られた重要度を加味して優先順位を設定することもできる。例えば、時系列で直前の生体内画像中の異常部検出処理がされた単位区画について算出された重要度のうち、基準重要度には満たないが比較的大きい値の重要度が得られた単位区画の優先順位が高くなるように、各単位区画の優先順位を修正することとしてもよい。これによれば、時系列で前(例えば直前)の生体内画像に対して行った異常部検出処理の結果得られた重要度を加味し、高い重要度が得られた単位区画の優先順位を高く設定することができる。
また、単位区画毎に異常部検出処理を行うこととしたが、画素毎に異常部検出処理を行うこととしてもよい。例えば、実施の形態2では、画像を単位区画に領域分割し、この単位区画毎に画素値変化量を算出して異常部の検出を行うこととしたが、処理対象画像を構成する各画素をそれぞれ注目画素として、注目画素と所定の画素数λまたは画素数λに相当する長さ離れた周囲に位置する周囲画素とをもとに画素値変化量を算出し、周囲画素と比較して画素値に優位な変化がみられる注目画素を異常部として検出することとしてもよい。この場合には、時系列で近傍となる生体内画像中で検出された異常部検出位置の画素をもとに各画素に優先順位を設定し、この優先順位に従って各画素を順次注目画素として、異常部検出処理を行う。
また、上記した各実施の形態では、時系列で前(例えば直前)の生体内画像中で検出された異常部検出位置をもとに各単位区画に優先順位を設定することとしたが、時系列で後順の生体内画像を先に処理する場合には、この時系列で後(例えば直後)の生体内画像中で検出された異常部検出位置をもとに各単位区画に優先順位を設定することが可能である。
また、上記した各実施の形態では、前回の処理した生体内画像中で異常部が検出されていない場合には、該前回処理した生体内画像について設定した優先順位に従って各単位区画に優先順位を設定することとしたが、処理対象画像の特定の場所、例えば中心、周囲に存在する単位区画の優先順位を最も高く設定し、その場所から離れるほど低くなるように各単位区画の優先順位を設定することとしてもよい。また、最初に処理する例えば時系列で先頭の生体内画像を処理する場合も同様に、処理対象画像の特定の場所、例えば中心、周囲に存在する単位区画の優先順位を最も高く設定し、その場所から離れるほど低くなるように各単位区画の優先順位を設定することとしてもよい。なお、画素毎に異常部検出処理を行う場合であれば、処理対象画像の特定の場所、例えば中心、周囲に存在する画素の優先順位を最も高く設定し、その場所から離れるほど低くなるように各画素の優先順位を設定することとしてもよい。管状の生体内を映す場合、管の奥が暗く映る中心部より、周囲の方が認識しやすい異常が存在する場合があり、その場合には画像周囲から中心に向かってらせん状に優先順位を設定した方が効率よく検査できる。
また、画像処理装置において時系列画像中に映った異常部を検出する処理を行い、別の表示装置において異常部が検出された時系列画像を異常部領域とともに表示するようにしてもよい。