輪郭抽出装置およびプログラム
【課題】対象物の輪郭を柔軟かつ適切に抽出する技術を提供する。
【解決手段】エネルギー関数設定部13が、輪郭曲線の状態に対応して定義される複数種類のエネルギー項の重み付き線形和により表され、抽出すべき輪郭の形状に近づくほど、その値が小さくなるように定式化されたエネルギー関数を設定し、繰り返し演算処理部14が、エネルギー関数を繰り返し演算により最小化させる。重み付け係数変更部15は、繰り返し演算の過程で輪郭曲線に含まれる独立した線の本数が変動したか否かを監視しており、この本数が変動した場合に、エネルギー関数の重み付け係数を変更する。
【解決手段】エネルギー関数設定部13が、輪郭曲線の状態に対応して定義される複数種類のエネルギー項の重み付き線形和により表され、抽出すべき輪郭の形状に近づくほど、その値が小さくなるように定式化されたエネルギー関数を設定し、繰り返し演算処理部14が、エネルギー関数を繰り返し演算により最小化させる。重み付け係数変更部15は、繰り返し演算の過程で輪郭曲線に含まれる独立した線の本数が変動したか否かを監視しており、この本数が変動した場合に、エネルギー関数の重み付け係数を変更する。
【発明の詳細な説明】
【技術分野】
【0001】
この発明は、曲線が変形を繰り返して収束することによって輪郭を抽出する動的輪郭モデルの一つであるレベルセット法を用いて、画像に含まれる対象物の輪郭を抽出する技術に関する。
【背景技術】
【0002】
医療現場では、超音波やX線等を用いて内蔵や骨格等に含まれる患部を撮影することにより、各種検査や診断が行われている。これにより、体内の臓器等の情報が視覚的に把握可能となり診断精度の向上が期待できる。
【0003】
一方で、近年においては、計算機を援用した定量的或いは自動的診断の要望が強まっており、計算機による診断支援(CAD:Computer−aided diagnosis)システムの研究が盛んに行われている。計算機による診断支援を行うには、患部を撮像して得られた画像から診断に必要な情報、つまり臓器領域等を正確に抽出することが重要な課題となる。
【0004】
画像から対象物の輪郭を抽出する手法として、レベルセット(Level set)、スネーク(Snakes)といった動的輪郭モデル(Active Contour Model)を用いた手法が知られている。動的輪郭モデルとは、所定の変形傾向に沿って変形を繰り返す曲線(動的曲線)によって、対象物の輪郭を動的に抽出する手法である。動的曲線の変形傾向は、曲線の状態を定量的に評価した値である「動的曲線のエネルギー」によって規定される。この「動的曲線のエネルギー」は、動的曲線が対象物の輪郭を抽出した時点で最小となるように予め定義される。したがって、動的曲線のエネルギーが最小となるように動的曲線を変形させていき、エネルギーが最小となる安定状態を見つけることによって、対象物の輪郭を抽出することができるのである。
【0005】
つまり、動的輪郭モデルとは、動的曲線が対象物の輪郭を抽出した時に最小となるエネルギー関数を定義し、このエネルギー関数が最小となる安定状態を見つけることによって、対象物の輪郭を抽出する手法であるといえる。エネルギー関数の最小化処理は、一般に、繰り返し演算によって行われる。
【0006】
動的曲線のエネルギーは、例えば下記(式1)の関数Eoの形で表される。
【0007】
Eo=Wi*Ei+We*Ee ・・・(式1)
すなわち、エネルギー関数Eoは、動的曲線の状態に対応して定義される複数種類のエネルギー項の重み付き線形和として定義され、エネルギー項としては、例えば、動的曲線自体の形状(例えば、滑らかさ)から規定されるエネルギー項(内部エネルギー項)Ei、動的曲線と対象物の輪郭との一致度から規定されるエネルギー項(外部エネルギー項)Eeを採用することができる。ただし、上述した通り、エネルギー関数Eoは、動的曲線が適切な形で対象物の輪郭を抽出した時に最小となるように定義する必要があるので、各エネルギー項は、動的曲線が目標形状に近づくほど、その値が小さくなるように定式化されている必要がある。
【0008】
例えば、外部エネルギー項Eeは、動的曲線と対象物の輪郭との一致度が高いほど小さな値となるように定式化される。エネルギー関数Eoに外部エネルギー項Eeが導入されることによって、対象物の輪郭を忠実に抽出する傾向に動的曲線を変形させることができる。ただし、外部エネルギー項Eeだけでエネルギー関数Eoを規定してしまうと、抽出された輪郭が画像中に現れているノイズ等までをも忠実に再現したものとなってしまうため、逆に対象物の形状が逆に把握されにくい。そこで、動的曲線が滑らかになるほど小さな値となるように定式化された内部エネルギー項Eiをエネルギー関数Eoに導入しておく。エネルギー関数Eoに内部エネルギー項Eiが導入されることによって、動的曲線自身の形状を滑らかにする傾向に動的曲線を変形させることができる。このように、エネルギー関数Eoに内部エネルギー項Eiと外部エネルギー項Eeとの2項を導入し、これらを適切にバランスさせることによって、適切な形で対象物の輪郭を抽出することが可能となる。
【0009】
エネルギー関数Eoにおいて、複数種類のエネルギー項Ei,Eeをどのようにバランスさせるかは、画像の状態、対象物の形状、対象物の滑らかさ等に依存し、一般的に決定できるものではない。そこで、エネルギー項Ei,Eeのそれぞれに重み付け係数Wi,Weを付加し、対象物の形状等に応じてその値を調整することによって、各エネルギー項Ei,Eeのバランスを調整する。例えば、内部エネルギー項Eiの重み付け係数Wiを大きくすると、エネルギー関数Eoが最小値となった時点の動的曲線の形状がより滑らかになる。一方、外部エネルギー項Eeの重み付け係数Weを大きくすると、エネルギー関数Eoが最小値となった時点の動的曲線が対象物の輪郭をより忠実に捉えたものとなる。このように、重み付け係数の値によって、結果として得られる曲線の様子が変わってくる。
【0010】
ところで、動的輪郭モデルとしてよく知られているスネークと呼ばれる手法においては、動的な閉曲線による輪郭線モデルを用いて対象物の輪郭を抽出する。この手法は輪郭抽出手法として広く実用化されているものの、閉曲線を変形させながら対象物の輪郭を抽出するものであるため、対象物の輪郭に分離部分や結合部分がある場合に、これを抽出することが困難であるという欠点があった。スネークについては、特許文献1にその概要が説明されている。
【0011】
一方、やはり代表的な動的輪郭モデルの1つであるレベルセット法においては、対象物よりも1次元高い補助関数(Φ関数)を規定し、対象物の輪郭を、このΦ関数のゼロ等高面(Φ=0)により抽出する。具体的には、エネルギー関数を、Φ関数が対象物の輪郭を抽出したとき(すなわち、Φ関数のゼロ等高面における断面により規定される曲線(以下「輪郭曲線」という)が、対象物の輪郭を抽出したとき)に最小となるように定義する。そして、このエネルギー関数が最小となる安定状態を見つけることによって、対象物の輪郭を抽出する。この手法によると、対象物よりも1次元高い関数(Φ関数)を用いて輪郭曲線を変形させるので、エネルギー関数の最小化処理の過程で、輪郭曲線の形状をトポロジー変化させることが可能となる。すなわち、エネルギー関数の最小化処理の過程で、輪郭曲線を構成する独立した線を自由に生成、あるいは消滅させることができる。したがって、対象物の輪郭に分離部分や結合部分がある場合であっても、これを難なく抽出することが可能となる。レベルセット法の詳細については、非特許文献1,2に記載されている。
【先行技術文献】
【特許文献】
【0012】
【特許文献1】特開平10−11588号公報
【非特許文献】
【0013】
【非特許文献1】倉爪亮、「レベルセット法とその実装法について」情報処理学会研究報告、2006-CVIM-156-(17),2006
【非特許文献2】T.Chan and L.Vese,"Active Contours Without Edges"IEEE,Trans.Image,Processing,Vol.10,No.2,pp.266-277,Feb.2001
【発明の概要】
【発明が解決しようとする課題】
【0014】
上述した通り、レベルセット法のように、トポロジー変化を許容する動的輪郭モデルにおいては、エネルギー関数の最小化処理の過程で、輪郭曲線を構成する独立した線を自由に生成、あるいは消滅させることが可能であるため、対象物の輪郭を柔軟に抽出できるという利点がある。
【0015】
ところが実際には、エネルギー関数の最小化処理の過程で輪郭曲線を構成する独立した線が生成、あるいは消滅した場合には、輪郭曲線の最終形状が、例えば、ユーザの意図よりも滑らかさに欠くものとなっていたり、あるいは、ユーザの意図よりも低い精度でしか対象物の輪郭を特定できていないものとなっていたり、といったように、ユーザの意図にそぐわないものとなっていることが多かった。したがって、対象物の輪郭を柔軟かつ適切に抽出することを可能とする技術が求められていた。
【0016】
この発明は、このような事情に鑑みなされたものであり、対象物の輪郭を柔軟かつ適切に抽出可能とする技術を提供することを目的とする。
【課題を解決するための手段】
【0017】
請求項1の発明は、レベルセット法を用いて対象物の輪郭を抽出する輪郭抽出装置であって、輪郭曲線の状態に対応して定義される複数種類のエネルギー項の重み付き線形和により表され、前記輪郭曲線の形状が抽出すべき輪郭の形状に近づくほど、その値が小さくなるように定式化されたエネルギー関数を設定するエネルギー関数設定手段と、前記エネルギー関数を繰り返し演算により最小化させる繰り返し演算手段と、前記輪郭曲線を構成する独立した線の本数を前記輪郭曲線の線本数とし、前記繰り返し演算の過程で前記線本数が変動した場合に、前記エネルギー関数の重み付け係数の値を変更する重み付け係数変更手段と、を備える。
【0018】
請求項2の発明は、請求項1に記載の輪郭抽出装置であって、前記重み付け係数変更手段が、前記複数種類のエネルギー項のうち、前記輪郭曲線の長さに依存するエネルギー項の重み付け係数の値を変更する。
【0019】
請求項3の発明は、請求項2に記載の輪郭抽出装置であって、前記重み付け係数変更手段が、前記線本数が増加した場合に、前記輪郭曲線の長さに依存するエネルギー項の重み付け係数の値をより小さな値に変更する。
【0020】
請求項4の発明は、請求項2または3に記載の輪郭抽出装置であって、前記重み付け係数変更手段が、前記線本数が減少した場合に、前記輪郭曲線の長さに依存するエネルギー項の重み付け係数の値をより大きな値に変更する。
【0021】
請求項5の発明は、請求項1から4のいずれかに記載の輪郭抽出装置であって、前記重み付け係数変更手段が、前記繰り返し演算の過程で前記輪郭曲線に独立した線が新たに1本生じ、かつ、当該新たに生じた線の長さが所定の閾値を超えた場合に、前記線本数が1増加したと判断する。
【0022】
請求項6の発明は、請求項5に記載の輪郭抽出装置であって、前記所定の閾値が、初期形状における前記輪郭曲線の長さに基づいて規定される。
【0023】
請求項7の発明は、請求項1から6のいずれかに記載の輪郭抽出装置であって、前記重み付け係数変更手段が、前記繰り返し演算の過程で前記輪郭曲線から独立した線の1本が消滅し、かつ、当該消滅した線が少なくとも一度は所定の閾値を超える長さを有していた場合に、前記線本数が1減少したと判断する。
【0024】
請求項8の発明は、請求項7に記載の輪郭抽出装置であって、前記所定の閾値が、初期形状における前記輪郭曲線の長さに基づいて規定される。
【0025】
請求項9の発明は、コンピュータに記憶され、前記コンピュータにおいて実行されることにより、前記コンピュータを、レベルセット法を用いて対象物の輪郭を抽出する輪郭抽出装置として機能させるプログラムであって、前記輪郭抽出装置が、輪郭曲線の状態に対応して定義される複数種類のエネルギー項の重み付き線形和により表され、前記輪郭曲線の形状が抽出すべき輪郭の形状に近づくほど、その値が小さくなるように定式化されたエネルギー関数を設定するエネルギー関数設定手段と、前記エネルギー関数を繰り返し演算により最小化させる繰り返し演算手段と、前記輪郭曲線を構成する独立した線の本数を前記輪郭曲線の線本数とし、前記繰り返し演算の過程で前記線本数が変動した場合に、前記エネルギー関数の重み付け係数の値を変更する重み付け係数変更手段と、を備える。
【発明の効果】
【0026】
請求項1,9の発明によると、繰り返し演算の過程で輪郭曲線の線本数が変動した場合に、エネルギー関数の重み付け係数の値を変更する。輪郭曲線の線本数が変動するとエネルギー関数におけるエネルギー項間のバランスが崩れるところ、この構成においては、重み付け係数の値を変更することによってこれを補って、エネルギー項間のバランスを常に適正に保ち続けることができる。これによって、輪郭曲線の線本数が変動した場合であっても、対象物の輪郭を適切に抽出することが可能となる。すなわち、対象物の輪郭を柔軟かつ適切に抽出することが可能となる。
【0027】
請求項2の発明によると、繰り返し演算の過程で輪郭曲線の線本数が変動した場合に、輪郭曲線の長さに依存するエネルギー項の重み付け係数の値を変更する。輪郭曲線の線本数が変動した場合、輪郭曲線の長さに依存するエネルギー項の値がその影響を受けて大きく変動するところ、当該エネルギー項の重み付け係数の値を変更することによって、エネルギー関数におけるエネルギー項間のバランスを効果的かつ適正に調整することが可能となる。
【0028】
請求項3の発明によると、輪郭曲線の線本数が増加した場合に、輪郭曲線の長さに依存するエネルギー項の重み付け係数の値をより小さな値に変更する。線本数が増加すると、輪郭曲線において、長さに依存するエネルギー項により規定される変形傾向が過剰に効いてしまうところ、当該エネルギー項の重み付け係数の値をより小さな値に変更することによって、この変形傾向が過剰に強くなることを抑制することができる。したがって、線本数が増加した場合であっても、対象物の輪郭を適切に抽出することが可能となる。
【0029】
請求項4の発明によると、輪郭曲線の線本数が減少した場合に、輪郭曲線の長さに依存するエネルギー項の重み付け係数の値をより大きな値に変更する。線本数が減少すると、輪郭曲線において、長さに依存するエネルギー項により規定される変形傾向が弱くなってしまうところ、当該エネルギー項の重み付け係数の値をより大きな値に変更することによって、この変形傾向が弱くなることを抑制することができる。したがって、線本数が減少した場合であっても、対象物の輪郭を適切に抽出することが可能となる。
【0030】
請求項5の発明によると、繰り返し演算の過程で輪郭曲線に独立した線が新たに生じ、かつ、当該新たに生じた線の長さが所定の閾値を超えた場合に、輪郭曲線の線本数が増加したと判断する。つまり、輪郭曲線に独立した線が新たに生じても、当該新たに生じた線の長さが所定の閾値を超えない限りは輪郭曲線の線本数が変動したと判断しない。すなわち、重み付け係数を変更しない。この構成によると、ノイズに反応して重み付け係数の値が不用意に変更されてしまう、といった事態を未然に防止することができる。
【0031】
請求項6の発明によると、繰り返し演算の過程で輪郭曲線に独立した線が新たに生じた場合に、これを線本数の増加とするか否かの判断基準となる閾値が、初期形状における輪郭曲線の長さに基づいて規定される。通常、輪郭曲線の初期形状は対象物の輪郭を意識して設定されるため、初期形状における輪郭曲線の長さに基づいて設定された閾値は、対象物のサイズを考慮した値となっている。したがって、閾値を初期形状における輪郭曲線の長さに基づいて規定することによって、ノイズの影響を適切に除去することができる。
【0032】
請求項7の発明によると、繰り返し演算の過程で輪郭曲線から独立した線が消滅し、かつ、当該消滅した線が少なくとも一度は所定の閾値を超える長さを有していた場合に、輪郭曲線の線本数が減少したと判断する。つまり、輪郭曲線から消滅した線があったとしても、当該消滅した線が、一度も所定の閾値を超える長さにまで成長したことがなかったものである場合は輪郭曲線の線本数が変動したと判断しない。すなわち、重み付け係数を変更しない。この構成によると、ノイズに反応して重み付け係数の値が不用意に変更されてしまう、といった事態を未然に防止することができる。
【0033】
請求項8の発明によると、繰り返し演算の過程で輪郭曲線から独立した線が消滅した場合に、これを線本数の減少とするか否かの判断基準となる閾値が、初期形状における輪郭曲線の長さに基づいて規定される。通常、輪郭曲線の初期形状は対象物の輪郭を意識して設定されるため、初期形状における輪郭曲線の長さに基づいて設定された閾値は、対象物のサイズを考慮した値となっている。したがって、閾値を初期形状における輪郭曲線の長さに基づいて規定することによって、ノイズの影響を適切に除去することができる。
【図面の簡単な説明】
【0034】
【図1】輪郭抽出装置のハードウェア構成を示すブロック図である。
【図2】輪郭抽出機能に関する構成を示すブロック図である。
【図3】輪郭抽出装置において実行される処理の全体の流れを示す図である。
【図4】繰り返し演算処理の流れを示す図である。
【図5】対象画像データの一例を模式的に示す図である。
【図6】初期形状における輪郭曲線を模式的に示す図である。
【図7】繰り返し演算の過程で変形する輪郭曲線の様子を模式的に示した図である。
【図8】繰り返し演算の過程で変形する輪郭曲線の様子を模式的に示した図である。
【図9】繰り返し演算の結果得られる最終形状の輪郭曲線を模式的に示す図である。
【図10】繰り返し演算の過程で変形する輪郭曲線の様子を模式的に示した図である。
【図11】重み付け係数を変更しなかった場合に、繰り返し演算の結果得られる輪郭曲線の最終形状を模式的に示す図である。
【発明を実施するための形態】
【0035】
〈1.ハードウェア構成〉
この発明の実施の形態に係る輪郭抽出装置1のハードウェア構成について、図1を参照しながら説明する。図1は、輪郭抽出装置1のハードウェア構成を示すブロック図である。
【0036】
輪郭抽出装置1は、処理対象とされる画像データ(以下「対象画像データ」という)に現れる対象物の輪郭を、動的輪郭モデルを用いて抽出する。輪郭抽出装置1は、一般的なコンピュータにより構成されており、制御部2、表示部3、操作部4、入力部5、および、記憶部6をバスライン10に接続した構成となっている。
【0037】
制御部2は、例えばCPUによって構成され、記憶部6に記憶されるプログラムPを実行することによって、輪郭抽出装置1全体の動作を決定し、輪郭抽出装置1全体に指令を与える。
【0038】
表示部3は、液晶表示ディスプレイ等によって構成され、制御部2で生成される画像データなどを可視的に出力する。
【0039】
操作部4は、キーボード、タッチパネルまたはマウス等から構成され、ユーザの各種操作にしたがって各種指令信号を制御部2に送信する。
【0040】
入力部5は、対象画像データとなる画像データを入力する。入力部5が画像データを取得する態様はどのようなものであってもよい。例えば、外部装置から画像データをオンライン受信してもよく、DVD等の可搬型の記憶媒体からのデータの読み取りや、スキャナによる読み取りによって画像データを取得してもよい。あるいは、ネットワークで接続されたファイルサーバなどに画像データを記憶しておき、これを読み込むことによって画像データを取得してもよい。入力された画像データは、記憶部6に記憶される。
【0041】
なお、輪郭抽出装置1を医療用画像撮影装置と接続しておけば、医療用画像撮影装置により撮像された各種の画像データを対象画像データとすることも可能となる。例えば、医療用画像撮影装置として広く用いられている装置の1つに、超音波撮影装置がある。超音波撮影装置は、2.5MHz〜13.0MHzの超音波を撮影対象者の内蔵等の所定部位に当て、その反響を映像化することによって当該部位の超音波画像を取得する。この超音波撮影装置を輪郭抽出装置1と接続しておけば、超音波撮影装置により撮影された撮影対象者の内蔵等を表す超音波画像を入力部5を介して入力し、これを対象画像データとすることが可能となる。
【0042】
記憶部6は、例えば半導体メモリ、ハードディスクなどの記憶装置によって構成される。記憶部6には、制御部2で実行されるプログラムP、プログラムPを実行する際に必要な情報、入力部5から入力された画像データなどの各種の情報が記憶される。
【0043】
〈2.輪郭抽出に関する機能部〉
上述した通り、輪郭抽出装置1は、対象画像データに現れる対象物の輪郭を、動的輪郭モデルの1つであるレベルセット法を用いて抽出する機能(輪郭抽出機能)を備えている。上述した通り、レベルセット法は、対象物よりも1次元高い補助関数(Φ関数)を規定し、対象物の輪郭を、このΦ関数のゼロ等高面(Φ=0)により抽出する手法である。具体的には、Φ関数が対象物の輪郭を抽出したとき(すなわち、Φ関数のゼロ等高面における断面により規定される曲線(輪郭曲線)が、対象物の輪郭を抽出したとき)に最小となるエネルギー関数を定義し、繰り返し演算でこのエネルギー関数の最小化処理を行ってエネルギー関数の値が最小となる安定状態を見つけることによって、対象物の輪郭を抽出する、という手法である。
【0044】
なお、レベルセット法によると、エネルギー関数の最小化処理の過程で、輪郭曲線の形状をトポロジー変化させることが可能となる。すなわち、エネルギー関数の最小化処理の過程で、輪郭曲線を構成する独立した線(以下「独立線」という)の生成、あるいは消滅が許容されている。これによって、対象物の輪郭に分離部分や結合部分がある場合であっても、これを難なく抽出することが可能となる。
【0045】
輪郭抽出機能を実現するための構成について、図2を参照しながら説明する。図2は、輪郭抽出機能に関する構成を示すブロック図である。
【0046】
輪郭抽出装置1は、輪郭抽出機能に関する構成として、画像取得部11、初期形状設定部12、エネルギー関数設定部13、繰り返し演算処理部14、重み付け係数変更部15を備える。これら各部は、記憶部6に記憶されたプログラムPに従って制御部2が演算処理を行うことにより実現されてもよいし、専用のハードウェアによって実現されてもよい。
【0047】
画像取得部11は、対象画像データを取得する。例えば、記憶部6に記憶された画像データのうち、ユーザが指定したものを読み出して対象画像データとして取得する。
【0048】
初期形状設定部12は、輪郭曲線の初期形状を設定する。具体的には、例えば、対象画像データを表示部3に表示させ、ユーザが当該表示画面を見ながら操作部4から入力した形状を、輪郭曲線の初期形状として受け付ける。また、1以上の初期形状のサンプルを記憶部6に記憶しておき、記憶されたサンプルのうちのいずれかをユーザに選択させ(もしくは、初期形状設定部12が対象画像データに付された名称等に基づいて自動に選択し)、選択されたサンプルを輪郭曲線の初期形状として読み出す構成としてもよい。なお、輪郭曲線の初期形状はどのようなものであってもよいが、輪郭抽出に係る処理を効率的かつ適確に行うためには、対象物の輪郭となるべく近い形状であることが好ましい。なお、初期形状における輪郭曲線を、以下「初期輪郭曲線」という。
【0049】
エネルギー関数設定部13は、エネルギー関数Eを設定する。エネルギー関数Eは、輪郭曲線の状態に対応して定義される複数種類のエネルギー項の重み付き線形和により表される。エネルギー関数Eに含めるエネルギー項の個数、および、各エネルギー項の内容は任意に設定することができるが、この実施の形態においては、「長さエネルギー項E1」「領域エネルギー項E2」の2種類のエネルギー項を用いてエネルギー関数Eを規定する。すなわち、この実施の形態に係るエネルギー関数Eは、下記(式2)により表される関数となる。ただし、(式2)中、「W1」「W2」は、長さエネルギー項E1、領域エネルギー項E2のそれぞれに付される重み付け係数を表している。
【0050】
E=W1*E1+W2*E2 ・・・(式2)
ただし、エネルギー関数Eは、輪郭曲線(すなわち、Φ関数のゼロ等高面における断面により規定される曲線)が抽出すべき輪郭の形状に近づくほど、その値が小さくなるように定式化されている。
【0051】
すなわち、第1のエネルギー項(長さエネルギー項E1)は、輪郭曲線の長さを短くする傾向に働く力であり、輪郭曲線が短くなるほど小さな値となるように定式化されている。具体的には、長さエネルギー項E1は、輪郭曲線の長さを「L{Φ=0}」とした場合、下記(式3)で与えられる。ただし、本明細書において「輪郭曲線の長さ」とは、輪郭曲線に含まれる独立線それぞれの長さを総和した値を意味する。
【0052】
E1=L{Φ=0} ・・・(式3)
また、第2のエネルギー項(領域エネルギー項E2)は、輪郭曲線と対象物の輪郭との一致度が高くなる傾向に働く力であり、輪郭曲線の内側に存在する画素値と、外側に存在する画素値との間のばらつきが小さくなるほど小さな値となり、外側に存在する画素値との間のばらつきがなくなった場合にゼロとなるように定式化されている。具体的には、領域エネルギー項E2は、座標(x、y)における画素値を「uo(x、y)」と、輪郭曲線の外側に存在する画素値の平均値を「c+」と、輪郭曲線の内側に存在する画素値の平均値を「c-」と、それぞれ示した場合、下記(式4)で与えられる。
【0053】
【数1】
【0054】
なお、重み付け係数W1,W2は、エネルギー関数Eにおいて、長さエネルギー項E1と領域エネルギー項E2とをどのようにバランスさせるかを規定する。例えば、長さエネルギー項E1の重み付け係数W1の値を大きくすると、輪郭曲線の長さを短くする傾向が強くなる。すなわち、輪郭曲線を、その長さを短くする傾向に変形させる力が強くなる。したがって、繰り返し演算の結果として得られる輪郭曲線(すなわち、抽出される対象物の輪郭)がより滑らかな形状となる。また、領域エネルギー項E2の重み付け係数W2の値を大きくすると、輪郭曲線と対象物の輪郭との一致度が高くなる傾向が強くなる。すなわち、輪郭曲線を、対象物の輪郭と一致する傾向に変形させる力が強くなる。したがって、繰り返し演算の結果として得られる輪郭曲線が対象物の輪郭をより忠実に再現した形状となる。
【0055】
この実施の形態においては、ユーザが、対象物の輪郭として予測される形状、どのような形で対象物の輪郭を抽出したいか等を考慮して、重み付け係数W1,W2の値を決定し、決定した値を予め(例えば輪郭抽出装置1の初期設定において)輪郭抽出装置1に入力しているものとする。このときユーザに入力された値は記憶部6に記憶されており、エネルギー関数設定部13は、当該値を読み出してエネルギー関数Eを設定する。なお、重み付け係数W1,W2の設定方法はこれに限らない。例えば、初期形状のサンプルと対応づけて重み付け係数W1,W2の値を記憶しておき、エネルギー関数設定部13が、選択された初期形状のサンプルと対応づけられた重み付け係数W1,W2の値を読み出してエネルギー関数Eを設定する構成であってもよい。
【0056】
繰り返し演算処理部14は、繰り返し演算によってエネルギー関数Eの最小化処理を行う。すなわち、繰り返し演算によって、Φ関数を(ひいては輪郭曲線を)エネルギー関数Eによって規定される変形傾向に沿って変形させていく。そして、エネルギー関数Eの値が所定の閾値よりも小さくなると繰り返し演算を終了し、その際の動的曲線を、対象物の輪郭を適切に抽出した動的曲線(以下「最終動的曲線」という)として取得する。
【0057】
重み付け係数変更部15は、繰り返し演算の過程で、輪郭曲線を構成する独立線の本数(以下、輪郭曲線の「線本数」という)が変動した場合に、エネルギー関数Eの重み付け係数の値を変更する。
【0058】
重み付け係数変更部15について詳細に説明する。重み付け係数変更部15は、線本数変動監視部151と、係数値調整部152とを備える。
【0059】
線本数変動監視部151は、繰り返し演算が行われている間、輪郭曲線の線本数の変動を監視する。具体的には、繰り返し演算に係る演算処理が1回行われる度に、当該演算処理の前後で、輪郭曲線の線本数が増加もしくは減少したか否かを判定する。
【0060】
ただし、線本数変動監視部151は、繰り返し演算の過程で輪郭曲線に独立線が新たに1本生じ、かつ、当該新たに生じた線の長さが第1閾値L1を超えた場合に、線本数が1増加したと判断する。したがって、例えば、繰り返し演算の過程で輪郭曲線に新たな独立線が生じた場合であっても、当該独立線の長さが第1閾値L1を超える長さにまで成長しない限り、線本数は増加していないと判断される。
【0061】
また、線本数変動監視部151は、繰り返し演算の過程で輪郭曲線から独立線の1本が消滅し、かつ、当該消滅した線が少なくとも一度は第2閾値L2を超える長さを有していた場合に、線本数が1減少したと判断する。したがって、例えば、繰り返し演算の過程で輪郭曲線から独立線が消滅した場合であっても、当該独立線が、一度も第2閾値L2を超える長さにまで成長しないまま消滅したものであった場合は、線本数は減少していないと判断される。
【0062】
なお、第1閾値L1の値と第2閾値L2の値とは、同じ値であってもよいし、異なる値であってもよい。また、第1閾値L1および第2閾値L2の値は、初期輪郭曲線の長さに基づいて規定することが好ましい。具体的には、例えば、初期輪郭曲線の長さの数%に相当する値を、閾値L1,L2の値として採用することが好ましい。通常、輪郭曲線の初期形状は対象物の輪郭を意識して設定されるため、初期輪郭曲線の長さに基づいて設定された閾値L1,L2は、対象物のサイズを考慮した値となっている。したがって、閾値L1,L2を初期輪郭曲線の長さに基づいて規定することによって、ノイズの影響を適切に除去することができるのである。
【0063】
係数値調整部152は、繰り返し演算の過程で輪郭曲線の線本数が変動したと判断された場合に、エネルギー関数Eに含まれるエネルギー項のうちで、輪郭曲線の長さに依存するエネルギー項(この実施の形態においては、長さエネルギー項E1)の重み付け係数の値を変更する。具体的には、線本数が増加した場合には、長さエネルギー項E1の重み付け係数W1の値をより小さな値に変更する。また、線本数が減少した場合には、長さエネルギー項E1の重み付け係数W1の値をより大きな値に変更する。
【0064】
〈3.輪郭抽出処理の流れ〉
輪郭抽出装置1において実行される処理の流れについて、図3、図4を参照しながら説明する。図3は、輪郭抽出装置1において実行される処理の全体の流れを示す図である。図4は、繰り返し演算処理の流れを示す図である。なお、以下の説明においては、図5〜図9を適宜参照する。図5は、対象画像データの一例を模式的に示す図である。図6は、初期形状における輪郭曲線(初期輪郭曲線T(0))を模式的に示す図である。図7〜図8(および、後に参照する図10)の各図は、繰り返し演算の過程で変形する輪郭曲線の様子を模式的に示した図である。図9は、繰り返し演算の結果として得られる最終形状の輪郭曲線(最終輪郭曲線T(E))を模式的に示す図である。
【0065】
〈3−1.全体の流れ〉
輪郭抽出装置1において実行される処理の全体の流れについて、図3を参照しながら説明する。まず、画像取得部11が、対象画像データを取得する(ステップS1)。以下においては、図5に示される超音波画像の画像データQが対象画像データとして取得されたとする。超音波画像においては、血管領域が暗く現れており、ここでは、この血管が、その輪郭を抽出すべき対象物であるとする。
【0066】
続いて、初期形状設定部12が、輪郭曲線の初期形状を設定する(ステップS2)。いま、対象物は血管であるので、抽出されるべき形状は管状であると予想される。ここでは、これを意識して、図6に示されるような、2本の独立線K1,K2から構成される輪郭曲線が、初期輪郭曲線T(0)として設定されたとする。
【0067】
続いて、エネルギー関数設定部13が、エネルギー関数Eを設定する(ステップS3)。ここでは、上記(式2)で示される関数がエネルギー関数Eとして設定されるとする。
【0068】
続いて、繰り返し演算処理部14が、繰り返し演算によるエネルギー関数Eの最小化処理を実行する(ステップS4)。演算回数が重ねられるにつれてエネルギー関数Eの値が減少し、これに対応して、ステップS2で設定された初期輪郭曲線T(0)が変形して対象物の輪郭に近づいていく(図7〜図8参照)。ただし、輪郭曲線の変形傾向は、演算処理に用いられているエネルギー関数Eによって規定される。エネルギー関数Eの値が所定の閾値よりも小さくなると、繰り返し演算処理部14は、繰り返し演算を終了し、得られた輪郭曲線を最終輪郭曲線T(E)として取得する(図9参照)。
【0069】
〈3−2.繰り返し演算処理〉
繰り返し演算処理(図3のステップS4)について、図4を参照しながらより詳細に説明する。繰り返し演算処理部14が、繰り返し演算を開始するのに先だって、線本数変動監視部151が、ステップS2(図3参照)で設定された初期輪郭曲線T(0)に含まれる独立線の本数を計数しているものとする。ただし、初期輪郭曲線T(0)に、長さが第1閾値L1に満たない独立線が含まれている場合、線本数変動監視部151は、当該独立線は1本とカウントしない。例えば、図6に示される初期輪郭曲線T(0)が与えられており、ここに現れる2本の独立線K1,K2の長さがいずれも閾値L1よりも長いとすると、線本数変動監視部151は、初期輪郭曲線T(0)の線本数を「2」と計数する。
【0070】
繰り返し演算処理部14が繰り返し演算を開始すると(ステップS41)、1回の演算処理が行われる度にエネルギー関数Eの値は減少し、これに対応して輪郭曲線はエネルギー関数Eにより規定される変形傾向にしたがって変形して、対象物の輪郭に近づいていく。
【0071】
繰り返し演算処理部14は、1回の演算処理が行われる度に(ステップS43)、当該演算処理後のエネルギー関数Eの値が所定の閾値よりも小さいか否かを判断する(ステップS44)。
【0072】
例えばn回目(nは任意の自然数)の演算処理後のエネルギー関数Eの値が所定の閾値よりも小さいと判断された場合(ステップS44でYES)、繰り返し演算処理部14は、繰り返し演算を終了し、得られた輪郭曲線を最終輪郭曲線T(E)として取得する。
【0073】
一方、例えばn回目の演算処理後のエネルギー関数Eの値が所定の閾値よりも小さくないと判断された場合(ステップS44でNO)、繰り返し演算処理部14は、(n+1)回目の演算処理を行うことになる。ただし、(n+1)回目の演算処理を行う前に、線本数変動監視部151が、n回目の演算処理の前後において、輪郭曲線の線本数が変動したか否かを判定する(ステップS45)。
【0074】
n回目の演算処理の前後において、輪郭曲線の線本数が変動していないと判断された場合(ステップS45でNO)、係数値調整部152は、エネルギー関数Eの重み付け係数の値を変更しない。この場合、繰り返し演算処理部14は、n回目の演算処理に用いられていたエネルギー関数Eをそのまま用いて、(n+1)回目の演算処理を実行することになる(ステップS47〜ステップS43)。
【0075】
一方、n回目の演算処理の前後において、輪郭曲線の線本数が変動していると判断された場合(ステップS45でYES)、係数値調整部152は、エネルギー関数Eの重み付け係数の値を変更して、エネルギー関数Eを更新する(ステップS46)。重み付け係数変更部15がエネルギー関数Eを更新して新たなエネルギー関数Eを設定した場合、繰り返し演算処理部14は、当該新たなエネルギー関数Eを用いて(n+1)回目の演算処理を実行することになる(ステップS47〜ステップS43)。
【0076】
〈具体例1〉
例えば、図6に示される初期輪郭曲線T(0)が与えられており、n回(nは任意の自然数)の演算処理が行われた段階において、図7(a)に示される輪郭曲線T(n)が得られたとする。n回目の演算処理の前後で、輪郭曲線において、独立線の発生、独立線の消滅のいずれも生じなかったとすると、線本数変動監視部151は、n回目の演算処理の前後において輪郭曲線の線本数は変動していないと判断する(ステップS45でNO)。この場合、係数値調整部152は、エネルギー関数Eの重み付け係数の値を変更しない。したがって、繰り返し演算処理部14は、n回目の演算処理に用いられていたエネルギー関数Eをそのまま用いて、(n+1)回目の演算処理を実行する。
【0077】
(n+1)回目の演算処理が行われた結果、図7(b)に示される輪郭曲線T(n+1)が得られたとする。ここでは、(n+1)回目の演算処理の前後で、輪郭曲線に新たな独立線K3が発生している。しかしここでは、この独立線K3の長さは第1閾値L1を超えていないとする。この場合、線本数変動監視部151は、(n+1)回目の演算処理の前後において、輪郭曲線の線本数は変動していないと判断する(ステップS45でNO)。この場合、係数値調整部152は、エネルギー関数Eの重み付け係数の値を変更しない。したがって、繰り返し演算処理部14は、(n+1)回目の演算処理に用いられていたエネルギー関数Eをそのまま用いて、(n+2)回目の演算処理を実行する。
【0078】
(n+2)回目の演算処理が行われた結果、図8(a)に示される輪郭曲線T(n+2)が得られたとする。ここでは、(n+2)回目の演算処理の前後で、独立線K3の長さが第1閾値L1を超える長さにまで成長したとする。この場合、線本数変動監視部151は、(n+2)回目の演算処理の前後において、輪郭曲線の線本数が増加したと判断する(ステップS45でYES)。この場合、係数値調整部152は、エネルギー関数Eの重み付け係数の値を変更して、エネルギー関数Eを更新する(ステップS46)。具体的には、エネルギー関数Eに含まれる長さエネルギー項E1の重み付け係数W1をより小さな値W1a(W1a<W1)に変更する。したがって、繰り返し演算処理部14は、下記(式5)に示される新たなエネルギー関数Eaを用いて、(n+3)回目の演算処理を実行する。
【0079】
Ea=W1a*E1+W2*E2 ・・・(式5)
新たなエネルギー関数Eaを用いて(n+3)回目の演算処理が行われると、図8(b)に示されるような輪郭曲線T(n+3)が得られ、さらに繰り返し演算が実行されることによって、最終的に、図9に示されるような最終輪郭曲線T(E)が得られる。
【0080】
〈具体例2〉
例えば、m回(mは任意の自然数)の演算処理が行われた段階において、図10(a)に示される輪郭曲線T(m)が得られたとする。m回目の演算処理の前後で、輪郭曲線において、独立線の発生、独立線の消滅のいずれも生じなかったとすると、線本数変動監視部151は、m回目の演算処理の前後において輪郭曲線の線本数は変動していないと判断する(ステップS45でNO)。この場合、係数値調整部152は、エネルギー関数Eの重み付け係数の値を変更しない。したがって、繰り返し演算処理部14は、m回目の演算処理に用いられていたエネルギー関数Eをそのまま用いて、(m+1)回目の演算処理を実行する。
【0081】
(m+1)回目の演算処理が行われた結果、図10(b)に示される輪郭曲線T(m+1)が得られたとする。ここでは、(m+1)回目の演算処理の前後で、輪郭曲線から独立線K4が消滅している。しかし、この独立線K4は、第2閾値L2を超える長さにまで一度も成長したことのない独立線であったとする。この場合、線本数変動監視部151は、(m+1)回目の演算処理の前後において、輪郭曲線の線本数は変動していないと判断する(ステップS45でNO)。この場合、係数値調整部152は、エネルギー関数Eの重み付け係数の値を変更しない。したがって、繰り返し演算処理部14は、(m+1)回目の演算処理に用いられていたエネルギー関数Eをそのまま用いて、(m+2)回目の演算処理を実行する。
【0082】
(m+2)回目の演算処理が行われた結果、図10(c)に示される輪郭曲線T(m+2)が得られたとする。ここでは、(m+2)回目の演算処理の前後で、輪郭曲線において、独立線K3が消滅している。また、この独立線K3は、第2閾値L2を超える長さにまで成長したことがある独立線であったとする。この場合、線本数変動監視部151は、(m+2)回目の演算処理の前後において、輪郭曲線の線本数が減少したと判断する(ステップS45でYES)。この場合、係数値調整部152は、エネルギー関数Eの重み付け係数の値を変更して、エネルギー関数Eを更新する(ステップS46)。具体的には、エネルギー関数Eに含まれる長さエネルギー項E1の重み付け係数W1をより大きな値W1b(W1b>W1)に変更する。したがって、繰り返し演算処理部14は、下記(式6)に示される新たなエネルギー関数Ebを用いて、(m+3)回目の演算処理を実行する。
【0083】
Eb=W1b*E1+W2*E2 ・・・(式6)
〈4.効果〉
上述した通り、レベルセット法を用いた輪郭抽出においては、繰り返し演算の過程において輪郭曲線の線本数が変動する場合がある。上記の実施の形態に係る輪郭抽出装置1においては、繰り返し演算の過程において輪郭曲線の線本数が変動した場合に、エネルギー関数Eの重み付け係数を変更する。この構成によると、例えば図9に示されるように、対象物の輪郭を適切に抽出した輪郭曲線を、最終輪郭曲線として得ることが可能となる。
【0084】
繰り返し演算の過程において輪郭曲線の線本数が変動した場合にも、はじめに設定されたエネルギー関数Eをそのまま用いて繰り返し演算を行った場合を考える。この場合、最終輪郭曲線として得られる輪郭曲線は、例えば図11に示されるような輪郭曲線T(E)’となる。この輪郭曲線T(E)’と図9に示される輪郭曲線T(E)とを比べると、輪郭曲線T(E)’においては独立線K3’が対象物の輪郭を十分に抽出できていないのがわかる。その理由は次の通りである。
【0085】
上述した通り、ユーザは、対象物の輪郭としてどのような形状が抽出されるかを予測し、予測される形状に基づいて、エネルギー関数Eの重み付け係数W1,W2の値を決定している。例えば、対象物が血管の場合、抽出されるべき形状は管状であると想定して、重み付け係数W1,W2の値を決定している。ところが、実際の対象物の形状がユーザの予測していたものとは異なっている場合、繰り返し演算の過程において輪郭曲線の線本数が変動する。例えば、管状と予測した対象物が実は分岐した形状であった場合、繰り返し演算の過程において、初期形状で設定されていた独立線K1,K2に加え、新たな独立線K3が発生する(図7(b))。
【0086】
輪郭曲線の線本数が増加すると、長さエネルギー項E1の値は、ユーザが想定していたよりも大きな値となってくる。すると、エネルギー関数Eにおける長さエネルギー項E1の比重が大きくなり、輪郭曲線の長さを短くする傾向に働く力が強く効いてくる。つまり、輪郭曲線を、その長さを短くする傾向に変形させる力が、他の力(例えば、輪郭曲線を対象物の輪郭と一致する傾向に変形させる力)に比べて強くなる。その結果、新たに発生した独立線は思うように伸びることができず、対象物の輪郭を十分に抽出することができない。例えば、輪郭曲線T(n+1)で発生した独立線K3(図7(b))が、繰り返し演算の過程で思うように伸びることができないと、図11に示されるように、分岐部分の輪郭を十分に抽出していない輪郭曲線が最終輪郭曲線として得られてしまう。
【0087】
一方、輪郭曲線の線本数が減少すると、長さエネルギー項E1の値は、ユーザが想定していたよりも小さな値となってくる。すると、エネルギー関数Eにおける長さエネルギー項E1の比重が小さくなり、輪郭曲線の長さを短くする傾向に働く力が弱くしか効いてこない。つまり、輪郭曲線を、その長さを短くする傾向に変形させる力が他の力に比べて弱くなる。その結果、輪郭曲線は対象物の輪郭を過度に忠実に再現し、滑らかさに欠けるものとなってしまう。
【0088】
このように、繰り返し演算の過程において輪郭曲線の線本数が変動すると、輪郭曲線の変形傾向を規定するエネルギー関数Eにおけるエネルギー項E1,E2間のバランスが崩れるため、対象物の輪郭を適切に抽出することができないのである。
【0089】
上記の実施の形態においては、重み付け係数変更部15が、繰り返し演算の過程で輪郭曲線の線本数が変動した場合に、エネルギー関数Eの重み付け係数を変更することによって、輪郭曲線の線本数が変動することに起因して生じたエネルギー項間のバランスの崩れを補う。
【0090】
具体的には、繰り返し演算の過程において輪郭曲線の線本数が増加した場合、長さエネルギー項E1の重み付け係数をより小さな値W1aに変更する。すなわち、線本数が増加すると、輪郭曲線において、長さエネルギー項E1により規定される変形傾向(すなわち、輪郭曲線の長さを短くする傾向)が過剰に効いてしまうところ、当該エネルギー項E1の重み付け係数をより小さな値に変更することによって、この変形傾向が過剰に強くなることを抑制する。その結果、図9に示されるように、対象物の輪郭を適切に抽出した輪郭曲線を最終輪郭曲線として得ることができる。
【0091】
また、繰り返し演算の過程において輪郭曲線の線本数が減少した場合、長さエネルギー項E1の重み付け係数をより大きな値W1bに変更する。すなわち、線本数が減少すると、輪郭曲線において、長さエネルギー項E1により規定される変形傾向が弱くなってしまうところ、当該エネルギー項E1の重み付け係数をより大きな値に変更することによって、この変形傾向が弱まってしまうことを抑制する。その結果、対象物の輪郭を適切に抽出した輪郭曲線を最終輪郭曲線として得ることができる。
【0092】
また特に、上記の実施の形態に係る輪郭抽出装置1においては、線本数変動監視部151が、繰り返し演算の過程で輪郭曲線に独立線が新たに生じ、かつ、当該新たに生じた独立線の長さが第1閾値L1を超えた場合に、輪郭曲線の線本数が増加したと判断する。つまり、輪郭曲線に独立線が新たに生じても、当該新たに生じた独立線の長さが第1閾値L1を超えない限りは輪郭曲線の線本数が変動したと判断しない。すなわち、重み付け係数を変更しない。この構成によると、ノイズに反応して重み付け係数が不用意に変更されてしまう、といった事態を未然に防止することができる。
【0093】
また、線本数変動監視部151は、繰り返し演算の過程で輪郭曲線に存在していた独立線が消滅し、かつ、当該消滅した独立線が少なくとも一度は第2閾値L2を超える長さを有していた場合に、輪郭曲線の線本数が減少したと判断する。つまり、輪郭曲線において消滅した独立線があったとしても、当該消滅した独立線が、一度も第2閾値L2を超える長さにまで成長したことのなかったものである場合は輪郭曲線の線本数が変動したと判断しない。すなわち、重み付け係数を変更しない。この構成によると、ノイズに反応して重み付け係数が不用意に変更されてしまう、といった事態を未然に防止することができる。
【0094】
なお、上記の実施の形態に係る輪郭抽出装置1は、たとえ、対象物が想定外の形状をとっている場合であっても、その輪郭を適切に抽出できるという点に利点がある。例えば、人間を含む動物の臓器等が対象物とされた場合、その対象物が想定外の形状をとっている場合であっても、その輪郭を適切に抽出することができる。対象物が臓器の場合、その形状が想定外のものとなっていることは、当該臓器に何らかの異常が発生していることを意味している可能性が高い。したがって、医療現場においては、このような場合にこそ、対象物の輪郭を適切に把握したいという要望がある。上記の実施の形態に係る輪郭抽出装置1においては、このような要望に応えることができる。
【0095】
〈5.変形例〉
以上、この発明の実施の形態について説明したが、この発明は上記に説明した内容のものに限定されるものではない。
【0096】
例えば、上記の実施の形態においては、係数値調整部152は、線本数が変動した場合には長さエネルギー項E1の重み付け係数W1の値を変更する構成としていたが、重み付け係数W1,W2を変更する態様はこれに限らず、輪郭曲線の線本数が変動することに起因して生じたエネルギー項間のバランスの崩れを補うことができれば、どのような構成であってもよい。例えば、線本数が増加した場合には領域エネルギー項E2の重み付け係数W2を大きくし、また、線本数が減少した場合には領域エネルギー項E2の重み付け係数W2を大きくする構成としてもよい。また例えば、長さエネルギー項E1の重み付け係数W1の値と、領域エネルギー項E2の重み付け係数のW2の値との両方を変更する構成としてもよい。ただし、線本数が変動した場合、その影響を最もダイレクトに受けるのは、輪郭曲線の長さに依存するエネルギー項(上記の実施の形態においては、長さエネルギー項E1)であるので、そのようなエネルギー項の重み付け係数を変更すれば、エネルギー関数Eにおけるエネルギー項間のバランスを効果的かつ適正に調整することができる。
【0097】
また、上記の実施の形態においては、第1閾値L1および第2閾値L2の具体的な値は、初期輪郭曲線の長さに基づいて規定するとしたが、これらの値は、画像サイズに基づいて規定してもよい。また、ユーザが予め設定した値を用いてもよい。
【0098】
また、上記の実施の形態においては、エネルギー関数Eが、2種類のエネルギー項(長さエネルギー項E1、領域エネルギー項E2)を含む構成としていたが、これらのエネルギー項E1,E2に加え、もしくはこれらと変えて、他の各種のエネルギー項でエネルギー関数Eを規定してもよい。例えば、輪郭曲線を対象物のエッジに向かわせる傾向に働く力であり、輪郭曲線が対象物のエッジに近づくほど小さな値となるように定式化されたエネルギー項等を加味してもよい。
【符号の説明】
【0099】
1 輪郭抽出装置
2 制御部
11 画像取得部
12 初期形状設定部
13 エネルギー関数設定部
14 繰り返し演算処理部
15 重み付け係数変更部
151 線本数変動監視部
152 係数値調整部
P プログラム
【技術分野】
【0001】
この発明は、曲線が変形を繰り返して収束することによって輪郭を抽出する動的輪郭モデルの一つであるレベルセット法を用いて、画像に含まれる対象物の輪郭を抽出する技術に関する。
【背景技術】
【0002】
医療現場では、超音波やX線等を用いて内蔵や骨格等に含まれる患部を撮影することにより、各種検査や診断が行われている。これにより、体内の臓器等の情報が視覚的に把握可能となり診断精度の向上が期待できる。
【0003】
一方で、近年においては、計算機を援用した定量的或いは自動的診断の要望が強まっており、計算機による診断支援(CAD:Computer−aided diagnosis)システムの研究が盛んに行われている。計算機による診断支援を行うには、患部を撮像して得られた画像から診断に必要な情報、つまり臓器領域等を正確に抽出することが重要な課題となる。
【0004】
画像から対象物の輪郭を抽出する手法として、レベルセット(Level set)、スネーク(Snakes)といった動的輪郭モデル(Active Contour Model)を用いた手法が知られている。動的輪郭モデルとは、所定の変形傾向に沿って変形を繰り返す曲線(動的曲線)によって、対象物の輪郭を動的に抽出する手法である。動的曲線の変形傾向は、曲線の状態を定量的に評価した値である「動的曲線のエネルギー」によって規定される。この「動的曲線のエネルギー」は、動的曲線が対象物の輪郭を抽出した時点で最小となるように予め定義される。したがって、動的曲線のエネルギーが最小となるように動的曲線を変形させていき、エネルギーが最小となる安定状態を見つけることによって、対象物の輪郭を抽出することができるのである。
【0005】
つまり、動的輪郭モデルとは、動的曲線が対象物の輪郭を抽出した時に最小となるエネルギー関数を定義し、このエネルギー関数が最小となる安定状態を見つけることによって、対象物の輪郭を抽出する手法であるといえる。エネルギー関数の最小化処理は、一般に、繰り返し演算によって行われる。
【0006】
動的曲線のエネルギーは、例えば下記(式1)の関数Eoの形で表される。
【0007】
Eo=Wi*Ei+We*Ee ・・・(式1)
すなわち、エネルギー関数Eoは、動的曲線の状態に対応して定義される複数種類のエネルギー項の重み付き線形和として定義され、エネルギー項としては、例えば、動的曲線自体の形状(例えば、滑らかさ)から規定されるエネルギー項(内部エネルギー項)Ei、動的曲線と対象物の輪郭との一致度から規定されるエネルギー項(外部エネルギー項)Eeを採用することができる。ただし、上述した通り、エネルギー関数Eoは、動的曲線が適切な形で対象物の輪郭を抽出した時に最小となるように定義する必要があるので、各エネルギー項は、動的曲線が目標形状に近づくほど、その値が小さくなるように定式化されている必要がある。
【0008】
例えば、外部エネルギー項Eeは、動的曲線と対象物の輪郭との一致度が高いほど小さな値となるように定式化される。エネルギー関数Eoに外部エネルギー項Eeが導入されることによって、対象物の輪郭を忠実に抽出する傾向に動的曲線を変形させることができる。ただし、外部エネルギー項Eeだけでエネルギー関数Eoを規定してしまうと、抽出された輪郭が画像中に現れているノイズ等までをも忠実に再現したものとなってしまうため、逆に対象物の形状が逆に把握されにくい。そこで、動的曲線が滑らかになるほど小さな値となるように定式化された内部エネルギー項Eiをエネルギー関数Eoに導入しておく。エネルギー関数Eoに内部エネルギー項Eiが導入されることによって、動的曲線自身の形状を滑らかにする傾向に動的曲線を変形させることができる。このように、エネルギー関数Eoに内部エネルギー項Eiと外部エネルギー項Eeとの2項を導入し、これらを適切にバランスさせることによって、適切な形で対象物の輪郭を抽出することが可能となる。
【0009】
エネルギー関数Eoにおいて、複数種類のエネルギー項Ei,Eeをどのようにバランスさせるかは、画像の状態、対象物の形状、対象物の滑らかさ等に依存し、一般的に決定できるものではない。そこで、エネルギー項Ei,Eeのそれぞれに重み付け係数Wi,Weを付加し、対象物の形状等に応じてその値を調整することによって、各エネルギー項Ei,Eeのバランスを調整する。例えば、内部エネルギー項Eiの重み付け係数Wiを大きくすると、エネルギー関数Eoが最小値となった時点の動的曲線の形状がより滑らかになる。一方、外部エネルギー項Eeの重み付け係数Weを大きくすると、エネルギー関数Eoが最小値となった時点の動的曲線が対象物の輪郭をより忠実に捉えたものとなる。このように、重み付け係数の値によって、結果として得られる曲線の様子が変わってくる。
【0010】
ところで、動的輪郭モデルとしてよく知られているスネークと呼ばれる手法においては、動的な閉曲線による輪郭線モデルを用いて対象物の輪郭を抽出する。この手法は輪郭抽出手法として広く実用化されているものの、閉曲線を変形させながら対象物の輪郭を抽出するものであるため、対象物の輪郭に分離部分や結合部分がある場合に、これを抽出することが困難であるという欠点があった。スネークについては、特許文献1にその概要が説明されている。
【0011】
一方、やはり代表的な動的輪郭モデルの1つであるレベルセット法においては、対象物よりも1次元高い補助関数(Φ関数)を規定し、対象物の輪郭を、このΦ関数のゼロ等高面(Φ=0)により抽出する。具体的には、エネルギー関数を、Φ関数が対象物の輪郭を抽出したとき(すなわち、Φ関数のゼロ等高面における断面により規定される曲線(以下「輪郭曲線」という)が、対象物の輪郭を抽出したとき)に最小となるように定義する。そして、このエネルギー関数が最小となる安定状態を見つけることによって、対象物の輪郭を抽出する。この手法によると、対象物よりも1次元高い関数(Φ関数)を用いて輪郭曲線を変形させるので、エネルギー関数の最小化処理の過程で、輪郭曲線の形状をトポロジー変化させることが可能となる。すなわち、エネルギー関数の最小化処理の過程で、輪郭曲線を構成する独立した線を自由に生成、あるいは消滅させることができる。したがって、対象物の輪郭に分離部分や結合部分がある場合であっても、これを難なく抽出することが可能となる。レベルセット法の詳細については、非特許文献1,2に記載されている。
【先行技術文献】
【特許文献】
【0012】
【特許文献1】特開平10−11588号公報
【非特許文献】
【0013】
【非特許文献1】倉爪亮、「レベルセット法とその実装法について」情報処理学会研究報告、2006-CVIM-156-(17),2006
【非特許文献2】T.Chan and L.Vese,"Active Contours Without Edges"IEEE,Trans.Image,Processing,Vol.10,No.2,pp.266-277,Feb.2001
【発明の概要】
【発明が解決しようとする課題】
【0014】
上述した通り、レベルセット法のように、トポロジー変化を許容する動的輪郭モデルにおいては、エネルギー関数の最小化処理の過程で、輪郭曲線を構成する独立した線を自由に生成、あるいは消滅させることが可能であるため、対象物の輪郭を柔軟に抽出できるという利点がある。
【0015】
ところが実際には、エネルギー関数の最小化処理の過程で輪郭曲線を構成する独立した線が生成、あるいは消滅した場合には、輪郭曲線の最終形状が、例えば、ユーザの意図よりも滑らかさに欠くものとなっていたり、あるいは、ユーザの意図よりも低い精度でしか対象物の輪郭を特定できていないものとなっていたり、といったように、ユーザの意図にそぐわないものとなっていることが多かった。したがって、対象物の輪郭を柔軟かつ適切に抽出することを可能とする技術が求められていた。
【0016】
この発明は、このような事情に鑑みなされたものであり、対象物の輪郭を柔軟かつ適切に抽出可能とする技術を提供することを目的とする。
【課題を解決するための手段】
【0017】
請求項1の発明は、レベルセット法を用いて対象物の輪郭を抽出する輪郭抽出装置であって、輪郭曲線の状態に対応して定義される複数種類のエネルギー項の重み付き線形和により表され、前記輪郭曲線の形状が抽出すべき輪郭の形状に近づくほど、その値が小さくなるように定式化されたエネルギー関数を設定するエネルギー関数設定手段と、前記エネルギー関数を繰り返し演算により最小化させる繰り返し演算手段と、前記輪郭曲線を構成する独立した線の本数を前記輪郭曲線の線本数とし、前記繰り返し演算の過程で前記線本数が変動した場合に、前記エネルギー関数の重み付け係数の値を変更する重み付け係数変更手段と、を備える。
【0018】
請求項2の発明は、請求項1に記載の輪郭抽出装置であって、前記重み付け係数変更手段が、前記複数種類のエネルギー項のうち、前記輪郭曲線の長さに依存するエネルギー項の重み付け係数の値を変更する。
【0019】
請求項3の発明は、請求項2に記載の輪郭抽出装置であって、前記重み付け係数変更手段が、前記線本数が増加した場合に、前記輪郭曲線の長さに依存するエネルギー項の重み付け係数の値をより小さな値に変更する。
【0020】
請求項4の発明は、請求項2または3に記載の輪郭抽出装置であって、前記重み付け係数変更手段が、前記線本数が減少した場合に、前記輪郭曲線の長さに依存するエネルギー項の重み付け係数の値をより大きな値に変更する。
【0021】
請求項5の発明は、請求項1から4のいずれかに記載の輪郭抽出装置であって、前記重み付け係数変更手段が、前記繰り返し演算の過程で前記輪郭曲線に独立した線が新たに1本生じ、かつ、当該新たに生じた線の長さが所定の閾値を超えた場合に、前記線本数が1増加したと判断する。
【0022】
請求項6の発明は、請求項5に記載の輪郭抽出装置であって、前記所定の閾値が、初期形状における前記輪郭曲線の長さに基づいて規定される。
【0023】
請求項7の発明は、請求項1から6のいずれかに記載の輪郭抽出装置であって、前記重み付け係数変更手段が、前記繰り返し演算の過程で前記輪郭曲線から独立した線の1本が消滅し、かつ、当該消滅した線が少なくとも一度は所定の閾値を超える長さを有していた場合に、前記線本数が1減少したと判断する。
【0024】
請求項8の発明は、請求項7に記載の輪郭抽出装置であって、前記所定の閾値が、初期形状における前記輪郭曲線の長さに基づいて規定される。
【0025】
請求項9の発明は、コンピュータに記憶され、前記コンピュータにおいて実行されることにより、前記コンピュータを、レベルセット法を用いて対象物の輪郭を抽出する輪郭抽出装置として機能させるプログラムであって、前記輪郭抽出装置が、輪郭曲線の状態に対応して定義される複数種類のエネルギー項の重み付き線形和により表され、前記輪郭曲線の形状が抽出すべき輪郭の形状に近づくほど、その値が小さくなるように定式化されたエネルギー関数を設定するエネルギー関数設定手段と、前記エネルギー関数を繰り返し演算により最小化させる繰り返し演算手段と、前記輪郭曲線を構成する独立した線の本数を前記輪郭曲線の線本数とし、前記繰り返し演算の過程で前記線本数が変動した場合に、前記エネルギー関数の重み付け係数の値を変更する重み付け係数変更手段と、を備える。
【発明の効果】
【0026】
請求項1,9の発明によると、繰り返し演算の過程で輪郭曲線の線本数が変動した場合に、エネルギー関数の重み付け係数の値を変更する。輪郭曲線の線本数が変動するとエネルギー関数におけるエネルギー項間のバランスが崩れるところ、この構成においては、重み付け係数の値を変更することによってこれを補って、エネルギー項間のバランスを常に適正に保ち続けることができる。これによって、輪郭曲線の線本数が変動した場合であっても、対象物の輪郭を適切に抽出することが可能となる。すなわち、対象物の輪郭を柔軟かつ適切に抽出することが可能となる。
【0027】
請求項2の発明によると、繰り返し演算の過程で輪郭曲線の線本数が変動した場合に、輪郭曲線の長さに依存するエネルギー項の重み付け係数の値を変更する。輪郭曲線の線本数が変動した場合、輪郭曲線の長さに依存するエネルギー項の値がその影響を受けて大きく変動するところ、当該エネルギー項の重み付け係数の値を変更することによって、エネルギー関数におけるエネルギー項間のバランスを効果的かつ適正に調整することが可能となる。
【0028】
請求項3の発明によると、輪郭曲線の線本数が増加した場合に、輪郭曲線の長さに依存するエネルギー項の重み付け係数の値をより小さな値に変更する。線本数が増加すると、輪郭曲線において、長さに依存するエネルギー項により規定される変形傾向が過剰に効いてしまうところ、当該エネルギー項の重み付け係数の値をより小さな値に変更することによって、この変形傾向が過剰に強くなることを抑制することができる。したがって、線本数が増加した場合であっても、対象物の輪郭を適切に抽出することが可能となる。
【0029】
請求項4の発明によると、輪郭曲線の線本数が減少した場合に、輪郭曲線の長さに依存するエネルギー項の重み付け係数の値をより大きな値に変更する。線本数が減少すると、輪郭曲線において、長さに依存するエネルギー項により規定される変形傾向が弱くなってしまうところ、当該エネルギー項の重み付け係数の値をより大きな値に変更することによって、この変形傾向が弱くなることを抑制することができる。したがって、線本数が減少した場合であっても、対象物の輪郭を適切に抽出することが可能となる。
【0030】
請求項5の発明によると、繰り返し演算の過程で輪郭曲線に独立した線が新たに生じ、かつ、当該新たに生じた線の長さが所定の閾値を超えた場合に、輪郭曲線の線本数が増加したと判断する。つまり、輪郭曲線に独立した線が新たに生じても、当該新たに生じた線の長さが所定の閾値を超えない限りは輪郭曲線の線本数が変動したと判断しない。すなわち、重み付け係数を変更しない。この構成によると、ノイズに反応して重み付け係数の値が不用意に変更されてしまう、といった事態を未然に防止することができる。
【0031】
請求項6の発明によると、繰り返し演算の過程で輪郭曲線に独立した線が新たに生じた場合に、これを線本数の増加とするか否かの判断基準となる閾値が、初期形状における輪郭曲線の長さに基づいて規定される。通常、輪郭曲線の初期形状は対象物の輪郭を意識して設定されるため、初期形状における輪郭曲線の長さに基づいて設定された閾値は、対象物のサイズを考慮した値となっている。したがって、閾値を初期形状における輪郭曲線の長さに基づいて規定することによって、ノイズの影響を適切に除去することができる。
【0032】
請求項7の発明によると、繰り返し演算の過程で輪郭曲線から独立した線が消滅し、かつ、当該消滅した線が少なくとも一度は所定の閾値を超える長さを有していた場合に、輪郭曲線の線本数が減少したと判断する。つまり、輪郭曲線から消滅した線があったとしても、当該消滅した線が、一度も所定の閾値を超える長さにまで成長したことがなかったものである場合は輪郭曲線の線本数が変動したと判断しない。すなわち、重み付け係数を変更しない。この構成によると、ノイズに反応して重み付け係数の値が不用意に変更されてしまう、といった事態を未然に防止することができる。
【0033】
請求項8の発明によると、繰り返し演算の過程で輪郭曲線から独立した線が消滅した場合に、これを線本数の減少とするか否かの判断基準となる閾値が、初期形状における輪郭曲線の長さに基づいて規定される。通常、輪郭曲線の初期形状は対象物の輪郭を意識して設定されるため、初期形状における輪郭曲線の長さに基づいて設定された閾値は、対象物のサイズを考慮した値となっている。したがって、閾値を初期形状における輪郭曲線の長さに基づいて規定することによって、ノイズの影響を適切に除去することができる。
【図面の簡単な説明】
【0034】
【図1】輪郭抽出装置のハードウェア構成を示すブロック図である。
【図2】輪郭抽出機能に関する構成を示すブロック図である。
【図3】輪郭抽出装置において実行される処理の全体の流れを示す図である。
【図4】繰り返し演算処理の流れを示す図である。
【図5】対象画像データの一例を模式的に示す図である。
【図6】初期形状における輪郭曲線を模式的に示す図である。
【図7】繰り返し演算の過程で変形する輪郭曲線の様子を模式的に示した図である。
【図8】繰り返し演算の過程で変形する輪郭曲線の様子を模式的に示した図である。
【図9】繰り返し演算の結果得られる最終形状の輪郭曲線を模式的に示す図である。
【図10】繰り返し演算の過程で変形する輪郭曲線の様子を模式的に示した図である。
【図11】重み付け係数を変更しなかった場合に、繰り返し演算の結果得られる輪郭曲線の最終形状を模式的に示す図である。
【発明を実施するための形態】
【0035】
〈1.ハードウェア構成〉
この発明の実施の形態に係る輪郭抽出装置1のハードウェア構成について、図1を参照しながら説明する。図1は、輪郭抽出装置1のハードウェア構成を示すブロック図である。
【0036】
輪郭抽出装置1は、処理対象とされる画像データ(以下「対象画像データ」という)に現れる対象物の輪郭を、動的輪郭モデルを用いて抽出する。輪郭抽出装置1は、一般的なコンピュータにより構成されており、制御部2、表示部3、操作部4、入力部5、および、記憶部6をバスライン10に接続した構成となっている。
【0037】
制御部2は、例えばCPUによって構成され、記憶部6に記憶されるプログラムPを実行することによって、輪郭抽出装置1全体の動作を決定し、輪郭抽出装置1全体に指令を与える。
【0038】
表示部3は、液晶表示ディスプレイ等によって構成され、制御部2で生成される画像データなどを可視的に出力する。
【0039】
操作部4は、キーボード、タッチパネルまたはマウス等から構成され、ユーザの各種操作にしたがって各種指令信号を制御部2に送信する。
【0040】
入力部5は、対象画像データとなる画像データを入力する。入力部5が画像データを取得する態様はどのようなものであってもよい。例えば、外部装置から画像データをオンライン受信してもよく、DVD等の可搬型の記憶媒体からのデータの読み取りや、スキャナによる読み取りによって画像データを取得してもよい。あるいは、ネットワークで接続されたファイルサーバなどに画像データを記憶しておき、これを読み込むことによって画像データを取得してもよい。入力された画像データは、記憶部6に記憶される。
【0041】
なお、輪郭抽出装置1を医療用画像撮影装置と接続しておけば、医療用画像撮影装置により撮像された各種の画像データを対象画像データとすることも可能となる。例えば、医療用画像撮影装置として広く用いられている装置の1つに、超音波撮影装置がある。超音波撮影装置は、2.5MHz〜13.0MHzの超音波を撮影対象者の内蔵等の所定部位に当て、その反響を映像化することによって当該部位の超音波画像を取得する。この超音波撮影装置を輪郭抽出装置1と接続しておけば、超音波撮影装置により撮影された撮影対象者の内蔵等を表す超音波画像を入力部5を介して入力し、これを対象画像データとすることが可能となる。
【0042】
記憶部6は、例えば半導体メモリ、ハードディスクなどの記憶装置によって構成される。記憶部6には、制御部2で実行されるプログラムP、プログラムPを実行する際に必要な情報、入力部5から入力された画像データなどの各種の情報が記憶される。
【0043】
〈2.輪郭抽出に関する機能部〉
上述した通り、輪郭抽出装置1は、対象画像データに現れる対象物の輪郭を、動的輪郭モデルの1つであるレベルセット法を用いて抽出する機能(輪郭抽出機能)を備えている。上述した通り、レベルセット法は、対象物よりも1次元高い補助関数(Φ関数)を規定し、対象物の輪郭を、このΦ関数のゼロ等高面(Φ=0)により抽出する手法である。具体的には、Φ関数が対象物の輪郭を抽出したとき(すなわち、Φ関数のゼロ等高面における断面により規定される曲線(輪郭曲線)が、対象物の輪郭を抽出したとき)に最小となるエネルギー関数を定義し、繰り返し演算でこのエネルギー関数の最小化処理を行ってエネルギー関数の値が最小となる安定状態を見つけることによって、対象物の輪郭を抽出する、という手法である。
【0044】
なお、レベルセット法によると、エネルギー関数の最小化処理の過程で、輪郭曲線の形状をトポロジー変化させることが可能となる。すなわち、エネルギー関数の最小化処理の過程で、輪郭曲線を構成する独立した線(以下「独立線」という)の生成、あるいは消滅が許容されている。これによって、対象物の輪郭に分離部分や結合部分がある場合であっても、これを難なく抽出することが可能となる。
【0045】
輪郭抽出機能を実現するための構成について、図2を参照しながら説明する。図2は、輪郭抽出機能に関する構成を示すブロック図である。
【0046】
輪郭抽出装置1は、輪郭抽出機能に関する構成として、画像取得部11、初期形状設定部12、エネルギー関数設定部13、繰り返し演算処理部14、重み付け係数変更部15を備える。これら各部は、記憶部6に記憶されたプログラムPに従って制御部2が演算処理を行うことにより実現されてもよいし、専用のハードウェアによって実現されてもよい。
【0047】
画像取得部11は、対象画像データを取得する。例えば、記憶部6に記憶された画像データのうち、ユーザが指定したものを読み出して対象画像データとして取得する。
【0048】
初期形状設定部12は、輪郭曲線の初期形状を設定する。具体的には、例えば、対象画像データを表示部3に表示させ、ユーザが当該表示画面を見ながら操作部4から入力した形状を、輪郭曲線の初期形状として受け付ける。また、1以上の初期形状のサンプルを記憶部6に記憶しておき、記憶されたサンプルのうちのいずれかをユーザに選択させ(もしくは、初期形状設定部12が対象画像データに付された名称等に基づいて自動に選択し)、選択されたサンプルを輪郭曲線の初期形状として読み出す構成としてもよい。なお、輪郭曲線の初期形状はどのようなものであってもよいが、輪郭抽出に係る処理を効率的かつ適確に行うためには、対象物の輪郭となるべく近い形状であることが好ましい。なお、初期形状における輪郭曲線を、以下「初期輪郭曲線」という。
【0049】
エネルギー関数設定部13は、エネルギー関数Eを設定する。エネルギー関数Eは、輪郭曲線の状態に対応して定義される複数種類のエネルギー項の重み付き線形和により表される。エネルギー関数Eに含めるエネルギー項の個数、および、各エネルギー項の内容は任意に設定することができるが、この実施の形態においては、「長さエネルギー項E1」「領域エネルギー項E2」の2種類のエネルギー項を用いてエネルギー関数Eを規定する。すなわち、この実施の形態に係るエネルギー関数Eは、下記(式2)により表される関数となる。ただし、(式2)中、「W1」「W2」は、長さエネルギー項E1、領域エネルギー項E2のそれぞれに付される重み付け係数を表している。
【0050】
E=W1*E1+W2*E2 ・・・(式2)
ただし、エネルギー関数Eは、輪郭曲線(すなわち、Φ関数のゼロ等高面における断面により規定される曲線)が抽出すべき輪郭の形状に近づくほど、その値が小さくなるように定式化されている。
【0051】
すなわち、第1のエネルギー項(長さエネルギー項E1)は、輪郭曲線の長さを短くする傾向に働く力であり、輪郭曲線が短くなるほど小さな値となるように定式化されている。具体的には、長さエネルギー項E1は、輪郭曲線の長さを「L{Φ=0}」とした場合、下記(式3)で与えられる。ただし、本明細書において「輪郭曲線の長さ」とは、輪郭曲線に含まれる独立線それぞれの長さを総和した値を意味する。
【0052】
E1=L{Φ=0} ・・・(式3)
また、第2のエネルギー項(領域エネルギー項E2)は、輪郭曲線と対象物の輪郭との一致度が高くなる傾向に働く力であり、輪郭曲線の内側に存在する画素値と、外側に存在する画素値との間のばらつきが小さくなるほど小さな値となり、外側に存在する画素値との間のばらつきがなくなった場合にゼロとなるように定式化されている。具体的には、領域エネルギー項E2は、座標(x、y)における画素値を「uo(x、y)」と、輪郭曲線の外側に存在する画素値の平均値を「c+」と、輪郭曲線の内側に存在する画素値の平均値を「c-」と、それぞれ示した場合、下記(式4)で与えられる。
【0053】
【数1】
【0054】
なお、重み付け係数W1,W2は、エネルギー関数Eにおいて、長さエネルギー項E1と領域エネルギー項E2とをどのようにバランスさせるかを規定する。例えば、長さエネルギー項E1の重み付け係数W1の値を大きくすると、輪郭曲線の長さを短くする傾向が強くなる。すなわち、輪郭曲線を、その長さを短くする傾向に変形させる力が強くなる。したがって、繰り返し演算の結果として得られる輪郭曲線(すなわち、抽出される対象物の輪郭)がより滑らかな形状となる。また、領域エネルギー項E2の重み付け係数W2の値を大きくすると、輪郭曲線と対象物の輪郭との一致度が高くなる傾向が強くなる。すなわち、輪郭曲線を、対象物の輪郭と一致する傾向に変形させる力が強くなる。したがって、繰り返し演算の結果として得られる輪郭曲線が対象物の輪郭をより忠実に再現した形状となる。
【0055】
この実施の形態においては、ユーザが、対象物の輪郭として予測される形状、どのような形で対象物の輪郭を抽出したいか等を考慮して、重み付け係数W1,W2の値を決定し、決定した値を予め(例えば輪郭抽出装置1の初期設定において)輪郭抽出装置1に入力しているものとする。このときユーザに入力された値は記憶部6に記憶されており、エネルギー関数設定部13は、当該値を読み出してエネルギー関数Eを設定する。なお、重み付け係数W1,W2の設定方法はこれに限らない。例えば、初期形状のサンプルと対応づけて重み付け係数W1,W2の値を記憶しておき、エネルギー関数設定部13が、選択された初期形状のサンプルと対応づけられた重み付け係数W1,W2の値を読み出してエネルギー関数Eを設定する構成であってもよい。
【0056】
繰り返し演算処理部14は、繰り返し演算によってエネルギー関数Eの最小化処理を行う。すなわち、繰り返し演算によって、Φ関数を(ひいては輪郭曲線を)エネルギー関数Eによって規定される変形傾向に沿って変形させていく。そして、エネルギー関数Eの値が所定の閾値よりも小さくなると繰り返し演算を終了し、その際の動的曲線を、対象物の輪郭を適切に抽出した動的曲線(以下「最終動的曲線」という)として取得する。
【0057】
重み付け係数変更部15は、繰り返し演算の過程で、輪郭曲線を構成する独立線の本数(以下、輪郭曲線の「線本数」という)が変動した場合に、エネルギー関数Eの重み付け係数の値を変更する。
【0058】
重み付け係数変更部15について詳細に説明する。重み付け係数変更部15は、線本数変動監視部151と、係数値調整部152とを備える。
【0059】
線本数変動監視部151は、繰り返し演算が行われている間、輪郭曲線の線本数の変動を監視する。具体的には、繰り返し演算に係る演算処理が1回行われる度に、当該演算処理の前後で、輪郭曲線の線本数が増加もしくは減少したか否かを判定する。
【0060】
ただし、線本数変動監視部151は、繰り返し演算の過程で輪郭曲線に独立線が新たに1本生じ、かつ、当該新たに生じた線の長さが第1閾値L1を超えた場合に、線本数が1増加したと判断する。したがって、例えば、繰り返し演算の過程で輪郭曲線に新たな独立線が生じた場合であっても、当該独立線の長さが第1閾値L1を超える長さにまで成長しない限り、線本数は増加していないと判断される。
【0061】
また、線本数変動監視部151は、繰り返し演算の過程で輪郭曲線から独立線の1本が消滅し、かつ、当該消滅した線が少なくとも一度は第2閾値L2を超える長さを有していた場合に、線本数が1減少したと判断する。したがって、例えば、繰り返し演算の過程で輪郭曲線から独立線が消滅した場合であっても、当該独立線が、一度も第2閾値L2を超える長さにまで成長しないまま消滅したものであった場合は、線本数は減少していないと判断される。
【0062】
なお、第1閾値L1の値と第2閾値L2の値とは、同じ値であってもよいし、異なる値であってもよい。また、第1閾値L1および第2閾値L2の値は、初期輪郭曲線の長さに基づいて規定することが好ましい。具体的には、例えば、初期輪郭曲線の長さの数%に相当する値を、閾値L1,L2の値として採用することが好ましい。通常、輪郭曲線の初期形状は対象物の輪郭を意識して設定されるため、初期輪郭曲線の長さに基づいて設定された閾値L1,L2は、対象物のサイズを考慮した値となっている。したがって、閾値L1,L2を初期輪郭曲線の長さに基づいて規定することによって、ノイズの影響を適切に除去することができるのである。
【0063】
係数値調整部152は、繰り返し演算の過程で輪郭曲線の線本数が変動したと判断された場合に、エネルギー関数Eに含まれるエネルギー項のうちで、輪郭曲線の長さに依存するエネルギー項(この実施の形態においては、長さエネルギー項E1)の重み付け係数の値を変更する。具体的には、線本数が増加した場合には、長さエネルギー項E1の重み付け係数W1の値をより小さな値に変更する。また、線本数が減少した場合には、長さエネルギー項E1の重み付け係数W1の値をより大きな値に変更する。
【0064】
〈3.輪郭抽出処理の流れ〉
輪郭抽出装置1において実行される処理の流れについて、図3、図4を参照しながら説明する。図3は、輪郭抽出装置1において実行される処理の全体の流れを示す図である。図4は、繰り返し演算処理の流れを示す図である。なお、以下の説明においては、図5〜図9を適宜参照する。図5は、対象画像データの一例を模式的に示す図である。図6は、初期形状における輪郭曲線(初期輪郭曲線T(0))を模式的に示す図である。図7〜図8(および、後に参照する図10)の各図は、繰り返し演算の過程で変形する輪郭曲線の様子を模式的に示した図である。図9は、繰り返し演算の結果として得られる最終形状の輪郭曲線(最終輪郭曲線T(E))を模式的に示す図である。
【0065】
〈3−1.全体の流れ〉
輪郭抽出装置1において実行される処理の全体の流れについて、図3を参照しながら説明する。まず、画像取得部11が、対象画像データを取得する(ステップS1)。以下においては、図5に示される超音波画像の画像データQが対象画像データとして取得されたとする。超音波画像においては、血管領域が暗く現れており、ここでは、この血管が、その輪郭を抽出すべき対象物であるとする。
【0066】
続いて、初期形状設定部12が、輪郭曲線の初期形状を設定する(ステップS2)。いま、対象物は血管であるので、抽出されるべき形状は管状であると予想される。ここでは、これを意識して、図6に示されるような、2本の独立線K1,K2から構成される輪郭曲線が、初期輪郭曲線T(0)として設定されたとする。
【0067】
続いて、エネルギー関数設定部13が、エネルギー関数Eを設定する(ステップS3)。ここでは、上記(式2)で示される関数がエネルギー関数Eとして設定されるとする。
【0068】
続いて、繰り返し演算処理部14が、繰り返し演算によるエネルギー関数Eの最小化処理を実行する(ステップS4)。演算回数が重ねられるにつれてエネルギー関数Eの値が減少し、これに対応して、ステップS2で設定された初期輪郭曲線T(0)が変形して対象物の輪郭に近づいていく(図7〜図8参照)。ただし、輪郭曲線の変形傾向は、演算処理に用いられているエネルギー関数Eによって規定される。エネルギー関数Eの値が所定の閾値よりも小さくなると、繰り返し演算処理部14は、繰り返し演算を終了し、得られた輪郭曲線を最終輪郭曲線T(E)として取得する(図9参照)。
【0069】
〈3−2.繰り返し演算処理〉
繰り返し演算処理(図3のステップS4)について、図4を参照しながらより詳細に説明する。繰り返し演算処理部14が、繰り返し演算を開始するのに先だって、線本数変動監視部151が、ステップS2(図3参照)で設定された初期輪郭曲線T(0)に含まれる独立線の本数を計数しているものとする。ただし、初期輪郭曲線T(0)に、長さが第1閾値L1に満たない独立線が含まれている場合、線本数変動監視部151は、当該独立線は1本とカウントしない。例えば、図6に示される初期輪郭曲線T(0)が与えられており、ここに現れる2本の独立線K1,K2の長さがいずれも閾値L1よりも長いとすると、線本数変動監視部151は、初期輪郭曲線T(0)の線本数を「2」と計数する。
【0070】
繰り返し演算処理部14が繰り返し演算を開始すると(ステップS41)、1回の演算処理が行われる度にエネルギー関数Eの値は減少し、これに対応して輪郭曲線はエネルギー関数Eにより規定される変形傾向にしたがって変形して、対象物の輪郭に近づいていく。
【0071】
繰り返し演算処理部14は、1回の演算処理が行われる度に(ステップS43)、当該演算処理後のエネルギー関数Eの値が所定の閾値よりも小さいか否かを判断する(ステップS44)。
【0072】
例えばn回目(nは任意の自然数)の演算処理後のエネルギー関数Eの値が所定の閾値よりも小さいと判断された場合(ステップS44でYES)、繰り返し演算処理部14は、繰り返し演算を終了し、得られた輪郭曲線を最終輪郭曲線T(E)として取得する。
【0073】
一方、例えばn回目の演算処理後のエネルギー関数Eの値が所定の閾値よりも小さくないと判断された場合(ステップS44でNO)、繰り返し演算処理部14は、(n+1)回目の演算処理を行うことになる。ただし、(n+1)回目の演算処理を行う前に、線本数変動監視部151が、n回目の演算処理の前後において、輪郭曲線の線本数が変動したか否かを判定する(ステップS45)。
【0074】
n回目の演算処理の前後において、輪郭曲線の線本数が変動していないと判断された場合(ステップS45でNO)、係数値調整部152は、エネルギー関数Eの重み付け係数の値を変更しない。この場合、繰り返し演算処理部14は、n回目の演算処理に用いられていたエネルギー関数Eをそのまま用いて、(n+1)回目の演算処理を実行することになる(ステップS47〜ステップS43)。
【0075】
一方、n回目の演算処理の前後において、輪郭曲線の線本数が変動していると判断された場合(ステップS45でYES)、係数値調整部152は、エネルギー関数Eの重み付け係数の値を変更して、エネルギー関数Eを更新する(ステップS46)。重み付け係数変更部15がエネルギー関数Eを更新して新たなエネルギー関数Eを設定した場合、繰り返し演算処理部14は、当該新たなエネルギー関数Eを用いて(n+1)回目の演算処理を実行することになる(ステップS47〜ステップS43)。
【0076】
〈具体例1〉
例えば、図6に示される初期輪郭曲線T(0)が与えられており、n回(nは任意の自然数)の演算処理が行われた段階において、図7(a)に示される輪郭曲線T(n)が得られたとする。n回目の演算処理の前後で、輪郭曲線において、独立線の発生、独立線の消滅のいずれも生じなかったとすると、線本数変動監視部151は、n回目の演算処理の前後において輪郭曲線の線本数は変動していないと判断する(ステップS45でNO)。この場合、係数値調整部152は、エネルギー関数Eの重み付け係数の値を変更しない。したがって、繰り返し演算処理部14は、n回目の演算処理に用いられていたエネルギー関数Eをそのまま用いて、(n+1)回目の演算処理を実行する。
【0077】
(n+1)回目の演算処理が行われた結果、図7(b)に示される輪郭曲線T(n+1)が得られたとする。ここでは、(n+1)回目の演算処理の前後で、輪郭曲線に新たな独立線K3が発生している。しかしここでは、この独立線K3の長さは第1閾値L1を超えていないとする。この場合、線本数変動監視部151は、(n+1)回目の演算処理の前後において、輪郭曲線の線本数は変動していないと判断する(ステップS45でNO)。この場合、係数値調整部152は、エネルギー関数Eの重み付け係数の値を変更しない。したがって、繰り返し演算処理部14は、(n+1)回目の演算処理に用いられていたエネルギー関数Eをそのまま用いて、(n+2)回目の演算処理を実行する。
【0078】
(n+2)回目の演算処理が行われた結果、図8(a)に示される輪郭曲線T(n+2)が得られたとする。ここでは、(n+2)回目の演算処理の前後で、独立線K3の長さが第1閾値L1を超える長さにまで成長したとする。この場合、線本数変動監視部151は、(n+2)回目の演算処理の前後において、輪郭曲線の線本数が増加したと判断する(ステップS45でYES)。この場合、係数値調整部152は、エネルギー関数Eの重み付け係数の値を変更して、エネルギー関数Eを更新する(ステップS46)。具体的には、エネルギー関数Eに含まれる長さエネルギー項E1の重み付け係数W1をより小さな値W1a(W1a<W1)に変更する。したがって、繰り返し演算処理部14は、下記(式5)に示される新たなエネルギー関数Eaを用いて、(n+3)回目の演算処理を実行する。
【0079】
Ea=W1a*E1+W2*E2 ・・・(式5)
新たなエネルギー関数Eaを用いて(n+3)回目の演算処理が行われると、図8(b)に示されるような輪郭曲線T(n+3)が得られ、さらに繰り返し演算が実行されることによって、最終的に、図9に示されるような最終輪郭曲線T(E)が得られる。
【0080】
〈具体例2〉
例えば、m回(mは任意の自然数)の演算処理が行われた段階において、図10(a)に示される輪郭曲線T(m)が得られたとする。m回目の演算処理の前後で、輪郭曲線において、独立線の発生、独立線の消滅のいずれも生じなかったとすると、線本数変動監視部151は、m回目の演算処理の前後において輪郭曲線の線本数は変動していないと判断する(ステップS45でNO)。この場合、係数値調整部152は、エネルギー関数Eの重み付け係数の値を変更しない。したがって、繰り返し演算処理部14は、m回目の演算処理に用いられていたエネルギー関数Eをそのまま用いて、(m+1)回目の演算処理を実行する。
【0081】
(m+1)回目の演算処理が行われた結果、図10(b)に示される輪郭曲線T(m+1)が得られたとする。ここでは、(m+1)回目の演算処理の前後で、輪郭曲線から独立線K4が消滅している。しかし、この独立線K4は、第2閾値L2を超える長さにまで一度も成長したことのない独立線であったとする。この場合、線本数変動監視部151は、(m+1)回目の演算処理の前後において、輪郭曲線の線本数は変動していないと判断する(ステップS45でNO)。この場合、係数値調整部152は、エネルギー関数Eの重み付け係数の値を変更しない。したがって、繰り返し演算処理部14は、(m+1)回目の演算処理に用いられていたエネルギー関数Eをそのまま用いて、(m+2)回目の演算処理を実行する。
【0082】
(m+2)回目の演算処理が行われた結果、図10(c)に示される輪郭曲線T(m+2)が得られたとする。ここでは、(m+2)回目の演算処理の前後で、輪郭曲線において、独立線K3が消滅している。また、この独立線K3は、第2閾値L2を超える長さにまで成長したことがある独立線であったとする。この場合、線本数変動監視部151は、(m+2)回目の演算処理の前後において、輪郭曲線の線本数が減少したと判断する(ステップS45でYES)。この場合、係数値調整部152は、エネルギー関数Eの重み付け係数の値を変更して、エネルギー関数Eを更新する(ステップS46)。具体的には、エネルギー関数Eに含まれる長さエネルギー項E1の重み付け係数W1をより大きな値W1b(W1b>W1)に変更する。したがって、繰り返し演算処理部14は、下記(式6)に示される新たなエネルギー関数Ebを用いて、(m+3)回目の演算処理を実行する。
【0083】
Eb=W1b*E1+W2*E2 ・・・(式6)
〈4.効果〉
上述した通り、レベルセット法を用いた輪郭抽出においては、繰り返し演算の過程において輪郭曲線の線本数が変動する場合がある。上記の実施の形態に係る輪郭抽出装置1においては、繰り返し演算の過程において輪郭曲線の線本数が変動した場合に、エネルギー関数Eの重み付け係数を変更する。この構成によると、例えば図9に示されるように、対象物の輪郭を適切に抽出した輪郭曲線を、最終輪郭曲線として得ることが可能となる。
【0084】
繰り返し演算の過程において輪郭曲線の線本数が変動した場合にも、はじめに設定されたエネルギー関数Eをそのまま用いて繰り返し演算を行った場合を考える。この場合、最終輪郭曲線として得られる輪郭曲線は、例えば図11に示されるような輪郭曲線T(E)’となる。この輪郭曲線T(E)’と図9に示される輪郭曲線T(E)とを比べると、輪郭曲線T(E)’においては独立線K3’が対象物の輪郭を十分に抽出できていないのがわかる。その理由は次の通りである。
【0085】
上述した通り、ユーザは、対象物の輪郭としてどのような形状が抽出されるかを予測し、予測される形状に基づいて、エネルギー関数Eの重み付け係数W1,W2の値を決定している。例えば、対象物が血管の場合、抽出されるべき形状は管状であると想定して、重み付け係数W1,W2の値を決定している。ところが、実際の対象物の形状がユーザの予測していたものとは異なっている場合、繰り返し演算の過程において輪郭曲線の線本数が変動する。例えば、管状と予測した対象物が実は分岐した形状であった場合、繰り返し演算の過程において、初期形状で設定されていた独立線K1,K2に加え、新たな独立線K3が発生する(図7(b))。
【0086】
輪郭曲線の線本数が増加すると、長さエネルギー項E1の値は、ユーザが想定していたよりも大きな値となってくる。すると、エネルギー関数Eにおける長さエネルギー項E1の比重が大きくなり、輪郭曲線の長さを短くする傾向に働く力が強く効いてくる。つまり、輪郭曲線を、その長さを短くする傾向に変形させる力が、他の力(例えば、輪郭曲線を対象物の輪郭と一致する傾向に変形させる力)に比べて強くなる。その結果、新たに発生した独立線は思うように伸びることができず、対象物の輪郭を十分に抽出することができない。例えば、輪郭曲線T(n+1)で発生した独立線K3(図7(b))が、繰り返し演算の過程で思うように伸びることができないと、図11に示されるように、分岐部分の輪郭を十分に抽出していない輪郭曲線が最終輪郭曲線として得られてしまう。
【0087】
一方、輪郭曲線の線本数が減少すると、長さエネルギー項E1の値は、ユーザが想定していたよりも小さな値となってくる。すると、エネルギー関数Eにおける長さエネルギー項E1の比重が小さくなり、輪郭曲線の長さを短くする傾向に働く力が弱くしか効いてこない。つまり、輪郭曲線を、その長さを短くする傾向に変形させる力が他の力に比べて弱くなる。その結果、輪郭曲線は対象物の輪郭を過度に忠実に再現し、滑らかさに欠けるものとなってしまう。
【0088】
このように、繰り返し演算の過程において輪郭曲線の線本数が変動すると、輪郭曲線の変形傾向を規定するエネルギー関数Eにおけるエネルギー項E1,E2間のバランスが崩れるため、対象物の輪郭を適切に抽出することができないのである。
【0089】
上記の実施の形態においては、重み付け係数変更部15が、繰り返し演算の過程で輪郭曲線の線本数が変動した場合に、エネルギー関数Eの重み付け係数を変更することによって、輪郭曲線の線本数が変動することに起因して生じたエネルギー項間のバランスの崩れを補う。
【0090】
具体的には、繰り返し演算の過程において輪郭曲線の線本数が増加した場合、長さエネルギー項E1の重み付け係数をより小さな値W1aに変更する。すなわち、線本数が増加すると、輪郭曲線において、長さエネルギー項E1により規定される変形傾向(すなわち、輪郭曲線の長さを短くする傾向)が過剰に効いてしまうところ、当該エネルギー項E1の重み付け係数をより小さな値に変更することによって、この変形傾向が過剰に強くなることを抑制する。その結果、図9に示されるように、対象物の輪郭を適切に抽出した輪郭曲線を最終輪郭曲線として得ることができる。
【0091】
また、繰り返し演算の過程において輪郭曲線の線本数が減少した場合、長さエネルギー項E1の重み付け係数をより大きな値W1bに変更する。すなわち、線本数が減少すると、輪郭曲線において、長さエネルギー項E1により規定される変形傾向が弱くなってしまうところ、当該エネルギー項E1の重み付け係数をより大きな値に変更することによって、この変形傾向が弱まってしまうことを抑制する。その結果、対象物の輪郭を適切に抽出した輪郭曲線を最終輪郭曲線として得ることができる。
【0092】
また特に、上記の実施の形態に係る輪郭抽出装置1においては、線本数変動監視部151が、繰り返し演算の過程で輪郭曲線に独立線が新たに生じ、かつ、当該新たに生じた独立線の長さが第1閾値L1を超えた場合に、輪郭曲線の線本数が増加したと判断する。つまり、輪郭曲線に独立線が新たに生じても、当該新たに生じた独立線の長さが第1閾値L1を超えない限りは輪郭曲線の線本数が変動したと判断しない。すなわち、重み付け係数を変更しない。この構成によると、ノイズに反応して重み付け係数が不用意に変更されてしまう、といった事態を未然に防止することができる。
【0093】
また、線本数変動監視部151は、繰り返し演算の過程で輪郭曲線に存在していた独立線が消滅し、かつ、当該消滅した独立線が少なくとも一度は第2閾値L2を超える長さを有していた場合に、輪郭曲線の線本数が減少したと判断する。つまり、輪郭曲線において消滅した独立線があったとしても、当該消滅した独立線が、一度も第2閾値L2を超える長さにまで成長したことのなかったものである場合は輪郭曲線の線本数が変動したと判断しない。すなわち、重み付け係数を変更しない。この構成によると、ノイズに反応して重み付け係数が不用意に変更されてしまう、といった事態を未然に防止することができる。
【0094】
なお、上記の実施の形態に係る輪郭抽出装置1は、たとえ、対象物が想定外の形状をとっている場合であっても、その輪郭を適切に抽出できるという点に利点がある。例えば、人間を含む動物の臓器等が対象物とされた場合、その対象物が想定外の形状をとっている場合であっても、その輪郭を適切に抽出することができる。対象物が臓器の場合、その形状が想定外のものとなっていることは、当該臓器に何らかの異常が発生していることを意味している可能性が高い。したがって、医療現場においては、このような場合にこそ、対象物の輪郭を適切に把握したいという要望がある。上記の実施の形態に係る輪郭抽出装置1においては、このような要望に応えることができる。
【0095】
〈5.変形例〉
以上、この発明の実施の形態について説明したが、この発明は上記に説明した内容のものに限定されるものではない。
【0096】
例えば、上記の実施の形態においては、係数値調整部152は、線本数が変動した場合には長さエネルギー項E1の重み付け係数W1の値を変更する構成としていたが、重み付け係数W1,W2を変更する態様はこれに限らず、輪郭曲線の線本数が変動することに起因して生じたエネルギー項間のバランスの崩れを補うことができれば、どのような構成であってもよい。例えば、線本数が増加した場合には領域エネルギー項E2の重み付け係数W2を大きくし、また、線本数が減少した場合には領域エネルギー項E2の重み付け係数W2を大きくする構成としてもよい。また例えば、長さエネルギー項E1の重み付け係数W1の値と、領域エネルギー項E2の重み付け係数のW2の値との両方を変更する構成としてもよい。ただし、線本数が変動した場合、その影響を最もダイレクトに受けるのは、輪郭曲線の長さに依存するエネルギー項(上記の実施の形態においては、長さエネルギー項E1)であるので、そのようなエネルギー項の重み付け係数を変更すれば、エネルギー関数Eにおけるエネルギー項間のバランスを効果的かつ適正に調整することができる。
【0097】
また、上記の実施の形態においては、第1閾値L1および第2閾値L2の具体的な値は、初期輪郭曲線の長さに基づいて規定するとしたが、これらの値は、画像サイズに基づいて規定してもよい。また、ユーザが予め設定した値を用いてもよい。
【0098】
また、上記の実施の形態においては、エネルギー関数Eが、2種類のエネルギー項(長さエネルギー項E1、領域エネルギー項E2)を含む構成としていたが、これらのエネルギー項E1,E2に加え、もしくはこれらと変えて、他の各種のエネルギー項でエネルギー関数Eを規定してもよい。例えば、輪郭曲線を対象物のエッジに向かわせる傾向に働く力であり、輪郭曲線が対象物のエッジに近づくほど小さな値となるように定式化されたエネルギー項等を加味してもよい。
【符号の説明】
【0099】
1 輪郭抽出装置
2 制御部
11 画像取得部
12 初期形状設定部
13 エネルギー関数設定部
14 繰り返し演算処理部
15 重み付け係数変更部
151 線本数変動監視部
152 係数値調整部
P プログラム
【特許請求の範囲】
【請求項1】
レベルセット法を用いて対象物の輪郭を抽出する輪郭抽出装置であって、
輪郭曲線の状態に対応して定義される複数種類のエネルギー項の重み付き線形和により表され、前記輪郭曲線の形状が抽出すべき輪郭の形状に近づくほど、その値が小さくなるように定式化されたエネルギー関数を設定するエネルギー関数設定手段と、
前記エネルギー関数を繰り返し演算により最小化させる繰り返し演算手段と、
前記輪郭曲線を構成する独立した線の本数を前記輪郭曲線の線本数とし、前記繰り返し演算の過程で前記線本数が変動した場合に、前記エネルギー関数の重み付け係数の値を変更する重み付け係数変更手段と、
を備えることを特徴とする輪郭抽出装置。
【請求項2】
請求項1に記載の輪郭抽出装置であって、
前記重み付け係数変更手段が、
前記複数種類のエネルギー項のうち、前記輪郭曲線の長さに依存するエネルギー項の重み付け係数の値を変更することを特徴とする輪郭抽出装置。
【請求項3】
請求項2に記載の輪郭抽出装置であって、
前記重み付け係数変更手段が、
前記線本数が増加した場合に、前記輪郭曲線の長さに依存するエネルギー項の重み付け係数の値をより小さな値に変更することを特徴とする輪郭抽出装置。
【請求項4】
請求項2または3に記載の輪郭抽出装置であって、
前記重み付け係数変更手段が、
前記線本数が減少した場合に、前記輪郭曲線の長さに依存するエネルギー項の重み付け係数の値をより大きな値に変更することを特徴とする輪郭抽出装置。
【請求項5】
請求項1から4のいずれかに記載の輪郭抽出装置であって、
前記重み付け係数変更手段が、
前記繰り返し演算の過程で前記輪郭曲線に独立した線が新たに1本生じ、かつ、当該新たに生じた線の長さが所定の閾値を超えた場合に、前記線本数が1増加したと判断することを特徴とする輪郭抽出装置。
【請求項6】
請求項5に記載の輪郭抽出装置であって、
前記所定の閾値が、初期形状における前記輪郭曲線の長さに基づいて規定されることを特徴とする輪郭抽出装置。
【請求項7】
請求項1から6のいずれかに記載の輪郭抽出装置であって、
前記重み付け係数変更手段が、
前記繰り返し演算の過程で前記輪郭曲線から独立した線の1本が消滅し、かつ、当該消滅した線が少なくとも一度は所定の閾値を超える長さを有していた場合に、前記線本数が1減少したと判断することを特徴とする輪郭抽出装置。
【請求項8】
請求項7に記載の輪郭抽出装置であって、
前記所定の閾値が、初期形状における前記輪郭曲線の長さに基づいて規定されることを特徴とする輪郭抽出装置。
【請求項9】
コンピュータに記憶され、前記コンピュータにおいて実行されることにより、前記コンピュータを、レベルセット法を用いて対象物の輪郭を抽出する輪郭抽出装置として機能させるプログラムであって、前記輪郭抽出装置が、
輪郭曲線の状態に対応して定義される複数種類のエネルギー項の重み付き線形和により表され、前記輪郭曲線の形状が抽出すべき輪郭の形状に近づくほど、その値が小さくなるように定式化されたエネルギー関数を設定するエネルギー関数設定手段と、
前記エネルギー関数を繰り返し演算により最小化させる繰り返し演算手段と、
前記輪郭曲線を構成する独立した線の本数を前記輪郭曲線の線本数とし、前記繰り返し演算の過程で前記線本数が変動した場合に、前記エネルギー関数の重み付け係数の値を変更する重み付け係数変更手段と、
を備えることを特徴とするプログラム。
【請求項1】
レベルセット法を用いて対象物の輪郭を抽出する輪郭抽出装置であって、
輪郭曲線の状態に対応して定義される複数種類のエネルギー項の重み付き線形和により表され、前記輪郭曲線の形状が抽出すべき輪郭の形状に近づくほど、その値が小さくなるように定式化されたエネルギー関数を設定するエネルギー関数設定手段と、
前記エネルギー関数を繰り返し演算により最小化させる繰り返し演算手段と、
前記輪郭曲線を構成する独立した線の本数を前記輪郭曲線の線本数とし、前記繰り返し演算の過程で前記線本数が変動した場合に、前記エネルギー関数の重み付け係数の値を変更する重み付け係数変更手段と、
を備えることを特徴とする輪郭抽出装置。
【請求項2】
請求項1に記載の輪郭抽出装置であって、
前記重み付け係数変更手段が、
前記複数種類のエネルギー項のうち、前記輪郭曲線の長さに依存するエネルギー項の重み付け係数の値を変更することを特徴とする輪郭抽出装置。
【請求項3】
請求項2に記載の輪郭抽出装置であって、
前記重み付け係数変更手段が、
前記線本数が増加した場合に、前記輪郭曲線の長さに依存するエネルギー項の重み付け係数の値をより小さな値に変更することを特徴とする輪郭抽出装置。
【請求項4】
請求項2または3に記載の輪郭抽出装置であって、
前記重み付け係数変更手段が、
前記線本数が減少した場合に、前記輪郭曲線の長さに依存するエネルギー項の重み付け係数の値をより大きな値に変更することを特徴とする輪郭抽出装置。
【請求項5】
請求項1から4のいずれかに記載の輪郭抽出装置であって、
前記重み付け係数変更手段が、
前記繰り返し演算の過程で前記輪郭曲線に独立した線が新たに1本生じ、かつ、当該新たに生じた線の長さが所定の閾値を超えた場合に、前記線本数が1増加したと判断することを特徴とする輪郭抽出装置。
【請求項6】
請求項5に記載の輪郭抽出装置であって、
前記所定の閾値が、初期形状における前記輪郭曲線の長さに基づいて規定されることを特徴とする輪郭抽出装置。
【請求項7】
請求項1から6のいずれかに記載の輪郭抽出装置であって、
前記重み付け係数変更手段が、
前記繰り返し演算の過程で前記輪郭曲線から独立した線の1本が消滅し、かつ、当該消滅した線が少なくとも一度は所定の閾値を超える長さを有していた場合に、前記線本数が1減少したと判断することを特徴とする輪郭抽出装置。
【請求項8】
請求項7に記載の輪郭抽出装置であって、
前記所定の閾値が、初期形状における前記輪郭曲線の長さに基づいて規定されることを特徴とする輪郭抽出装置。
【請求項9】
コンピュータに記憶され、前記コンピュータにおいて実行されることにより、前記コンピュータを、レベルセット法を用いて対象物の輪郭を抽出する輪郭抽出装置として機能させるプログラムであって、前記輪郭抽出装置が、
輪郭曲線の状態に対応して定義される複数種類のエネルギー項の重み付き線形和により表され、前記輪郭曲線の形状が抽出すべき輪郭の形状に近づくほど、その値が小さくなるように定式化されたエネルギー関数を設定するエネルギー関数設定手段と、
前記エネルギー関数を繰り返し演算により最小化させる繰り返し演算手段と、
前記輪郭曲線を構成する独立した線の本数を前記輪郭曲線の線本数とし、前記繰り返し演算の過程で前記線本数が変動した場合に、前記エネルギー関数の重み付け係数の値を変更する重み付け係数変更手段と、
を備えることを特徴とするプログラム。
【図1】
【図2】
【図3】
【図4】
【図10】
【図5】
【図6】
【図7】
【図8】
【図9】
【図11】
【図2】
【図3】
【図4】
【図10】
【図5】
【図6】
【図7】
【図8】
【図9】
【図11】
【公開番号】特開2010−282268(P2010−282268A)
【公開日】平成22年12月16日(2010.12.16)
【国際特許分類】
【出願番号】特願2009−133006(P2009−133006)
【出願日】平成21年6月2日(2009.6.2)
【出願人】(303000420)コニカミノルタエムジー株式会社 (2,950)
【Fターム(参考)】
【公開日】平成22年12月16日(2010.12.16)
【国際特許分類】
【出願日】平成21年6月2日(2009.6.2)
【出願人】(303000420)コニカミノルタエムジー株式会社 (2,950)
【Fターム(参考)】
[ Back to top ]