(57)【特許請求の範囲】
【請求項１】
入力画像におけるオブジェクトを囲むように入力される入力閉曲線を含む画像を取得する入力閉曲線画像取得手段と、
前記入力閉曲線の形状に従って、前記入力閉曲線からの距離に応じて画素単位で設定される画素値からなる距離画像を生成する距離画像生成手段と、
前記画素単位の距離に基づいて変化する距離エネルギー、または前記距離画像を用いて、前記オブジェクトの領域および前記オブジェクトの領域以外の領域の色分布モデルに基づいた画素単位の尤度に応じて変化する尤度エネルギーと、前記距離画像を用いて隣接する画素間の色差に変化する色差エネルギーとを含む前記入力画像の入力画像エネルギーを算出するエネルギー算出手段と、
前記入力画像エネルギーを最小化するように計算し、最小化された入力画像エネルギーに基づいて、前記入力画像のオブジェクトの領域、および前記オブジェクト領域ではない領域のいずれかの属性を割り付け、マスク画像を生成するマスク画像生成手段と
を含む画像処理装置。
【請求項２】
前記距離画像生成手段は、前記入力閉曲線の内部に中間軸を計算し、各画素位置において計算した前記中間軸と前記入力閉曲線までの距離を内分して各画素の距離を求め、前記距離に応じて画素単位で設定される画素値からなる前記距離画像を生成する
請求項１に記載の画像処理装置。
【請求項３】
前記距離画像生成手段は、前記入力閉曲線を内部と外部で２値化した画像のうち、前記入力閉曲線の内部の形状を細線化処理することによって中間軸を計算する
請求項２に記載の画像処理装置。
【請求項４】
前記距離画像生成手段は、前記入力閉曲線の形状が円形になるように上記入力閉曲線内部をモーフィング変形し、各画素位置が前記モーフィング変形後に移動する位置から変形後の入力閉曲線までの距離に基づいて各画素の距離を求め、前記距離に応じて画素単位で設定される画素値からなる前記距離画像を生成する
請求項１に記載の画像処理装置。
【請求項５】
前記距離画像における各画素の距離は、輝度、ＲＧＢの色の差、または尤度の差を含む、前記各画素に関連づけられた特徴量の差分を積分した距離である
請求項２，４に記載の画像処理装置。
【請求項６】
前記距離画像における各画素の距離は、基準となる位置の画素と前記入力閉曲線の位置の画素との間で設定される経路上の空間的な距離である
請求項２，４に記載の画像処理装置。
【請求項７】
前記エネルギー算出手段は、前記距離画像の各画素の距離によって各画素の色を重み付けして色分布モデルを計算し、前記色分布モデルに基づいてエネルギーを算出する
請求項１に記載の画像処理装置。
【請求項８】
前記エネルギー算出手段は、前記各画素の色に応じて計算するエネルギーを前記距離画像における各画素の距離の値に基づいて増減する
請求項１に記載の画像処理装置。
【請求項９】
前記エネルギー算出手段は、前記各画素間の色差に応じて計算するエネルギーを前記距離画像の各画素の距離の値に基づいて増減する
請求項１に記載の画像処理装置。
【請求項１０】
前記エネルギー算出手段は、前記距離画像における各画素の距離の勾配方向を計算し、前記勾配方向と画素間の接続方向の角度差に応じてエネルギーを増減する
請求項１に記載の画像処理装置。
【請求項１１】
入力画像におけるオブジェクトを囲むように入力される入力閉曲線を含む画像を取得する入力閉曲線画像取得手段と、
前記入力閉曲線の形状に従って、前記入力閉曲線からの距離に応じて画素単位で設定される画素値からなる距離画像を生成する距離画像生成手段と、
前記画素単位の距離に基づいて変化する距離エネルギー、または前記距離画像を用いて、前記オブジェクトの領域および前記オブジェクトの領域以外の領域の色分布モデルに基づいた画素単位の尤度に応じて変化する尤度エネルギーと、前記距離画像を用いて隣接する画素間の色差に変化する色差エネルギーとを含む前記入力画像の入力画像エネルギーを算出するエネルギー算出手段と、
前記入力画像エネルギーを最小化するように計算し、最小化された入力画像エネルギーに基づいて、前記入力画像のオブジェクトの領域、および前記オブジェクト領域ではない領域のいずれかの属性を割り付け、マスク画像を生成するマスク画像生成手段と
を含む画像処理装置の画像処理方法は、
前記入力閉曲線画像取得手段における、入力画像におけるオブジェクトを囲むように入力される入力閉曲線を含む画像を取得する入力閉曲線画像取得ステップと、
前記距離画像生成手段における、前記入力閉曲線の形状に従って、前記入力閉曲線からの距離に応じて画素単位で設定される値からなる距離画像を生成する距離画像生成ステップと、
前記エネルギー算出手段における、前記画素単位の距離に基づいて変化する距離エネルギー、または前記距離画像を用いて、前記オブジェクトの領域および前記オブジェクトの領域以外の領域の色分布モデルに基づいた画素単位の尤度に応じて変化する尤度エネルギーと、前記距離画像を用いて隣接する画素間の色差に変化する色差エネルギーとを含む前記入力画像の入力画像エネルギーを算出するエネルギー算出ステップと、
前記マスク画像生成手段における、前記入力画像エネルギーを最小化するように計算し、最小化された入力画像エネルギーに基づいて、前記入力画像のオブジェクトの領域、および前記オブジェクト領域ではない領域のいずれかの属性を割り付け、マスク画像を生成するマスク画像生成ステップと
を含む画像処理方法。
【請求項１２】
入力画像におけるオブジェクトを囲むように入力される入力閉曲線を含む画像を取得する入力閉曲線画像取得手段と、
前記入力閉曲線の形状に従って、前記入力閉曲線からの距離に応じて画素単位で設定される画素値からなる距離画像を生成する距離画像生成手段と、
前記画素単位の距離に基づいて変化する距離エネルギー、または前記距離画像を用いて、前記オブジェクトの領域および前記オブジェクトの領域以外の領域の色分布モデルに基づいた画素単位の尤度に応じて変化する尤度エネルギーと、前記距離画像を用いて隣接する画素間の色差に変化する色差エネルギーとを含む前記入力画像の入力画像エネルギーを算出するエネルギー算出手段と、
前記入力画像エネルギーを最小化するように計算し、最小化された入力画像エネルギーに基づいて、前記入力画像のオブジェクトの領域、および前記オブジェクト領域ではない領域のいずれかの属性を割り付け、マスク画像を生成するマスク画像生成手段と
を含む画像処理装置を制御するコンピュータに、
前記入力閉曲線画像取得手段における、入力画像におけるオブジェクトを囲むように入力される入力閉曲線を含む画像を取得する入力閉曲線画像取得ステップと、
前記距離画像生成手段における、前記入力閉曲線の形状に従って、前記入力閉曲線からの距離に応じて画素単位で設定される値からなる距離画像を生成する距離画像生成ステップと、
前記エネルギー算出手段における、前記画素単位の距離に基づいて変化する距離エネルギー、または前記距離画像を用いて、前記オブジェクトの領域および前記オブジェクトの領域以外の領域の色分布モデルに基づいた画素単位の尤度に応じて変化する尤度エネルギーと、前記距離画像を用いて隣接する画素間の色差に変化する色差エネルギーとを含む前記入力画像の入力画像エネルギーを算出するエネルギー算出ステップと、
前記マスク画像生成手段における、前記入力画像エネルギーを最小化するように計算し、最小化された入力画像エネルギーに基づいて、前記入力画像のオブジェクトの領域、および前記オブジェクト領域ではない領域のいずれかの属性を割り付け、マスク画像を生成するマスク画像生成ステップと
を含む処理を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置および方法、並びにプログラムに関し、特に、オブジェクトを囲むように入力される入力閉曲線の形状に従って距離画像を生成し、エネルギーを算出することにより、画素単位でオブジェクトに属する画素であるか、または、オブジェクトに属する画素以外の画素であるかの属性の割付性能を向上できるようにした画像処理装置および方法、並びにプログラムに関する。
【背景技術】
【０００２】
画像処理の分野において、画像をオブジェクト（前景）と背景に分離するセグメンテーション処理は重要な機能の一つとなり多数の研究がなされている。
【０００３】
このセグメンテーション処理によって、画像の一部を選択して特定の処理を施したり、オブジェクトとして切り出して別の画像と合成するなどの処理が実現可能となっている。
【０００４】
このようなオブジェクトと背景という二つの属性（ラベル）を画像の画素ごとに割り当てるセグメンテーション処理の有用な方法にグラブカット法がある（非特許文献１、および特許文献１参照）。
【０００５】
この方法では、まず最初に抽出したいオブジェクトの周りを囲う矩形線、または閉曲線をユーザが指定する。アルゴリズムは初期状態では矩形線の外側を背景、内側をオブジェクトと背景画素が混ざったものとして考える。
【０００６】
オブジェクトおよび背景の二つの色分布モデルによって画素ごとの尤度と画素間の色の差による連続性の二つの情報を使って、セグメンテーション処理を繰り返し行い色分布モデルを更新しながら、オブジェクトを表す画素を決定する。
【０００７】
この画素ごとの尤度と画素間の色差はエネルギーとしてグラフデータとして与えて、これをエネルギー最小化計算することでオブジェクトの画素集合を得ることができる。
【０００８】
この最小化計算の際に使われるエネルギーは画素ごとの尤度と画素間の色差であって、入力した閉曲線は初期状態の前景、または背景という画素の属性分類という用途以外には使われていなかった。
【０００９】
この閉曲線はオブジェクトの外周を囲むように入力されるので、最終的なオブジェクトの形状に近い可能性が高く、重要な情報であり積極的に利用した方がよい。
【００１０】
このような課題を解決する簡単な方法として、入力閉曲線を内側へ所定の幅だけ縮退し、入力閉曲線と縮退した閉曲線の帯領域内にオブジェクトと背景の境界が収まるように工夫する方法が考えられる。
【００１１】
一般に所望の幅だけ縮退する操作をエロージョン（Ｅｒｏｓｉｏｎ）と呼び、このような方法を使ってセグメンテーションする方法が提案されている（特許文献２参照）。
【先行技術文献】
【特許文献】
【００１２】
【特許文献１】US7660463,FOREGROUND EXTRACTION USING ITERATED GRAPH CUTS
【特許文献２】US7400767,SYSTEM AND METHOD FOR GRAPH CUTS IMAGE SEGMENTATION USING SHAPE PRIOR
【非特許文献】
【００１３】
【非特許文献１】GrabCut: interactive foreground extraction using iterated graph cutsCarsten Rother, Vladimir Kolmogorov, Andrew Blake ACM Transactions on Graphics, 23(3), August 2004, pp. 309-314.
【発明の概要】
【発明が解決しようとする課題】
【００１４】
しかしながら、この方法では形状や位置に依らず一律に縮退処理が施される。
【００１５】
そのため最終的な境界を帯領域内に収めるためには、入力閉曲線と輪郭形状との距離変動を吸収するのに十分幅を大きくするか、繰り返し処理して輪郭を探索する必要があり、効果的な方法とは言えなかった。
【００１６】
本発明はこのような状況に鑑みてなされたものであり、特に、入力された閉曲線の情報を使って、閉曲線の形状に即した距離画像を算出することで、セグメンテーション処理のエネルギー計算に入力形状の情報を加えて、セグメンテーション結果の精度を向上させるものである。
【課題を解決するための手段】
【００１７】
本発明の一側面の画像処理装置は、入力画像におけるオブジェクトを囲むように入力される入力閉曲線を含む画像を取得する入力閉曲線画像取得手段と、前記入力閉曲線の形状に従って、前記入力閉曲線からの距離に応じて画素単位で設定される画素値からなる距離画像を生成する距離画像生成手段と、前記画素単位の距離に基づいて変化する距離エネルギー、または前記距離画像を用いて、前記オブジェクトの領域および前記オブジェクトの領域以外の領域の色分布モデルに基づいた画素単位の尤度に応じて変化する尤度エネルギーと、前記距離画像を用いて隣接する画素間の色差に変化する色差エネルギーとを含む前記入力画像の入力画像エネルギーを算出するエネルギー算出手段と、前記入力画像エネルギーを最小化するように計算し、最小化された入力画像エネルギーに基づいて、前記入力画像のオブジェクトの領域、および前記オブジェクト領域ではない領域のいずれかの属性を割り付け、マスク画像を生成するマスク画像生成手段とを含む。
【００１８】
前記距離画像生成手段には、前記入力閉曲線の内部に中間軸を計算し、各画素位置において計算した前記中間軸と前記入力閉曲線までの距離を内分して各画素の距離を求め、前記距離に応じて画素単位で設定される画素値からなる前記距離画像を生成させるようにすることができる。
【００１９】
前記距離画像生成手段には、前記入力閉曲線を内部と外部で２値化した画像のうち、前記入力閉曲線の内部の形状を細線化処理することによって中間軸を計算させるようにすることができる。
【００２０】
前記距離画像生成手段には、前記入力閉曲線の形状が円形になるように上記入力閉曲線内部をモーフィング変形させ、各画素位置が前記モーフィング変形後に移動する位置から変形後の入力閉曲線までの距離に基づいて各画素の距離を求めさせ、前記距離に応じて画素単位で設定される画素値からなる前記距離画像を生成させるようにすることができる。
【００２１】
前記距離画像における各画素の距離は、輝度、ＲＧＢの色の差、または尤度の差を含む、前記各画素に関連づけられた特徴量の差分を積分した距離とすることができる。
【００２２】
前記距離画像における各画素の距離は、基準となる位置の画素と前記入力閉曲線の位置の画素との間で設定される経路上の空間的な距離とすることができる。
【００２３】
前記エネルギー算出手段には、前記距離画像の各画素の距離によって各画素の色を重み付けして色分布モデルを計算させ、前記色分布モデルに基づいてエネルギーを算出させるようにすることができる。
【００２４】
前記エネルギー算出手段には、前記各画素の色に応じて計算するエネルギーを前記距離画像における各画素の距離の値に基づいて増減させるようにすることができる。
【００２５】
前記エネルギー算出手段には、前記各画素間の色差に応じて計算するエネルギーを前記距離画像の各画素の距離の値に基づいて増減させるようにすることができる。
【００２６】
前記エネルギー算出手段には、前記距離画像における各画素の距離の勾配方向を計算させ、前記勾配方向と画素間の接続方向の角度差に応じてエネルギーを増減させるようにすることができる。
【００２７】
本発明の一側面の画像処理方法は、入力画像におけるオブジェクトを囲むように入力される入力閉曲線を含む画像を取得する入力閉曲線画像取得手段と、前記入力閉曲線の形状に従って、前記入力閉曲線からの距離に応じて画素単位で設定される画素値からなる距離画像を生成する距離画像生成手段と、前記画素単位の距離に基づいて変化する距離エネルギー、または前記距離画像を用いて、前記オブジェクトの領域および前記オブジェクトの領域以外の領域の色分布モデルに基づいた画素単位の尤度に応じて変化する尤度エネルギーと、前記距離画像を用いて隣接する画素間の色差に変化する色差エネルギーとを含む前記入力画像の入力画像エネルギーを算出するエネルギー算出手段と、前記入力画像エネルギーを最小化するように計算し、最小化された入力画像エネルギーに基づいて、前記入力画像のオブジェクトの領域、および前記オブジェクト領域ではない領域のいずれかの属性を割り付け、マスク画像を生成するマスク画像生成手段とを含む画像処理装置の画像処理方法は、前記入力閉曲線画像取得手段における、入力画像におけるオブジェクトを囲むように入力される入力閉曲線を含む画像を取得する入力閉曲線画像取得ステップと、前記距離画像生成手段における、前記入力閉曲線の形状に従って、前記入力閉曲線からの距離に応じて画素単位で設定される値からなる距離画像を生成する距離画像生成ステップと、前記エネルギー算出手段における、前記画素単位の距離に基づいて変化する距離エネルギー、または前記距離画像を用いて、前記オブジェクトの領域および前記オブジェクトの領域以外の領域の色分布モデルに基づいた画素単位の尤度に応じて変化する尤度エネルギーと、前記距離画像を用いて隣接する画素間の色差に変化する色差エネルギーとを含む前記入力画像の入力画像エネルギーを算出するエネルギー算出ステップと、前記マスク画像生成手段における、前記入力画像エネルギーを最小化するように計算し、最小化された入力画像エネルギーに基づいて、前記入力画像のオブジェクトの領域、および前記オブジェクト領域ではない領域のいずれかの属性を割り付け、マスク画像を生成するマスク画像生成ステップとを含む。
【００２８】
本発明の一側面のプログラムは、入力画像におけるオブジェクトを囲むように入力される入力閉曲線を含む画像を取得する入力閉曲線画像取得手段と、前記入力閉曲線の形状に従って、前記入力閉曲線からの距離に応じて画素単位で設定される画素値からなる距離画像を生成する距離画像生成手段と、前記画素単位の距離に基づいて変化する距離エネルギー、または前記距離画像を用いて、前記オブジェクトの領域および前記オブジェクトの領域以外の領域の色分布モデルに基づいた画素単位の尤度に応じて変化する尤度エネルギーと、前記距離画像を用いて隣接する画素間の色差に変化する色差エネルギーとを含む前記入力画像の入力画像エネルギーを算出するエネルギー算出手段と、前記入力画像エネルギーを最小化するように計算し、最小化された入力画像エネルギーに基づいて、前記入力画像のオブジェクトの領域、および前記オブジェクト領域ではない領域のいずれかの属性を割り付け、マスク画像を生成するマスク画像生成手段とを含む画像処理装置を制御するコンピュータに、前記入力閉曲線画像取得手段における、入力画像におけるオブジェクトを囲むように入力される入力閉曲線を含む画像を取得する入力閉曲線画像取得ステップと、前記距離画像生成手段における、前記入力閉曲線の形状に従って、前記入力閉曲線からの距離に応じて画素単位で設定される値からなる距離画像を生成する距離画像生成ステップと、前記エネルギー算出手段における、前記画素単位の距離に基づいて変化する距離エネルギー、または前記距離画像を用いて、前記オブジェクトの領域および前記オブジェクトの領域以外の領域の色分布モデルに基づいた画素単位の尤度に応じて変化する尤度エネルギーと、前記距離画像を用いて隣接する画素間の色差に変化する色差エネルギーとを含む前記入力画像の入力画像エネルギーを算出するエネルギー算出ステップと、前記マスク画像生成手段における、前記入力画像エネルギーを最小化するように計算し、最小化された入力画像エネルギーに基づいて、前記入力画像のオブジェクトの領域、および前記オブジェクト領域ではない領域のいずれかの属性を割り付け、マスク画像を生成するマスク画像生成ステップとを含む処理を実行させるプログラム。
【００２９】
本発明の一側面においては、入力画像におけるオブジェクトを囲むように入力される入力閉曲線を含む画像が取得され、前記入力閉曲線の形状に従って、前記入力閉曲線からの距離に応じて画素単位で設定される画素値からなる距離画像が生成され、前記画素単位の距離に基づいて変化する距離エネルギー、または前記距離画像を用いて、前記オブジェクトの領域および前記オブジェクトの領域以外の領域の色分布モデルに基づいた画素単位の尤度に応じて変化する尤度エネルギーと、前記距離画像を用いて隣接する画素間の色差に変化する色差エネルギーとを含む前記入力画像の入力画像エネルギーが算出され、前記入力画像エネルギーが最小化されるように計算され、最小化された入力画像エネルギーに基づいて、前記入力画像のオブジェクトの領域、および前記オブジェクト領域ではない領域のいずれかの属性が割り付けられ、マスク画像が生成される。
【００３０】
本発明の画像処理装置は、独立した装置であっても良いし、画像処理を行うブロックであっても良い。
【発明の効果】
【００３１】
本発明の一側面によれば、最良のセグメンテーション結果を得ることが可能となる。
【図面の簡単な説明】
【００３２】
【図１】本発明を適用した画像処理装置の一実施の形態の構成例を示すブロック図である。
【図２】図１の画像処理装置による処理を説明する図である。
【図３】距離画像生成部の構成例を示す図である。
【図４】セグメンテーション処理を説明するフローチャートである。
【図５】セグメンテーション処理を説明する図である。
【図６】図２の距離画像生成部による距離画像生成処理を説明するフローチャートである。
【図７】距離画像生成部のその他の構成例を示す図である。
【図８】図７の距離画像生成部による距離画像生成処理を説明するフローチャートである。
【図９】図７の距離画像生成部による距離画像生成処理を説明する図である。
【図１０】図７の距離画像生成部による距離画像生成処理を説明する図である。
【図１１】汎用のパーソナルコンピュータの構成例を説明する図である。
【発明を実施するための最良の形態】
【００３３】
以下、発明を実施するための形態（以下、実施の形態という）について説明する。なお、説明は以下の順序で行う。
１．第１の実施の形態
２．第２の実施の形態
【００３４】
＜１．第１の実施の形態＞
［画像処理装置の構成例］
図１は、本発明を適用した画像処理装置のハードウェアの一実施の形態の構成例を示している。図１の画像処理装置１１は、例えば、図２で示される入力画像Ｐ１と、入力画像Ｐ１内の前景であるオブジェクト（白鳥の画像）の輪郭に沿って入力されている入力閉曲線Ｌ１の画像とから、図２で示されるマスク画像Ｐ２を生成する。マスク画像Ｐ２は、各画素がオブジェクトの領域（前景領域）、または、オブジェクト以外の領域（背景領域）のいずれに属するのかが属性として割り付けられている。図２のマスク画像Ｐ２は、オブジェクトの領域に属する画素が白色で示されており、背景の領域に属する画素が黒色で示されている。すなわち、画像処理装置１１は、入力画像と、入力画像内のオブジェクトの輪郭に沿って入力された入力閉曲線の画像とから、画素単位でオブジェクト領域とそれ以外の領域のいずれに属するかを示す属性を求め、マスク画像として出力する。このような画像処理装置１１によってなされる処理は、一般的にセグメンテーション処理と称されている。
【００３５】
画像処理装置１１は、画像取得部２１、入力閉曲線画像取得部２２、２値画像生成部２３、距離画像生成部２４、エネルギー算出部２５、マスク画像生成部２６、マスク画像出力判定部２７、マスク画像記憶部２８、およびマスク画像出力部２９を備えている。
【００３６】
画像取得部２１は、RGB（Red Green Blue）からなる入力画像を取得して、２値画像生成部２３に供給する。
【００３７】
入力閉曲線画像取得部２２は、入力画像内のオブジェクトの輪郭に沿って入力されている入力閉曲線からなる画像を取得する。入力閉曲線は、入力画像を見ながら、例えば、図示せぬ操作部等が操作されて、ユーザにより入力されるものとしてもよいし、または、物体認識技術として提案されている技術を用いることにより、認識された情報に基づいて入力された閉曲線であっても良い。尚、物体を入力画像から認識する技術としては、例えば、「Learning to Detect A Salient Object、Tie Liu，Jian Sun，Nan-Ning Zheng，Xiaoou Tang，Heung-Yeung Shum, Computer Vision and Pattern Recognition, 2007. CVPR '07. IEEE Conference on Publication Date: 17-22 June 2007」に、その手法が提案されている。
【００３８】
２値画像生成部２３は、入力閉曲線画像における入力閉曲線を含む入力閉曲線の外側の領域と、入力閉曲線を含まない入力閉曲線の内側の領域とをそれぞれ２値の画素値で表す２値画像を生成し、距離画像生成部２４に供給する。
【００３９】
距離画像生成部２４は、２値画像生成部２３、または、マスク画像出力判定部２７のいずれかから供給される２値画像の入力閉曲線内における各画素について、入力閉曲線からの距離に応じた値を求め、この値に比例した画素値からなる距離画像を生成し、エネルギー算出部２５に供給する。尚、距離画像生成部２４の構成については、図３を参照して詳細を後述するものとする。
【００４０】
エネルギー算出部２５は、距離画像に基づいて、画素毎の尤度および画素間の色差から、入力画像のエネルギーを求め、マスク画像生成部２６に供給する。尚、画素間の色差については、輝度差、RGBの色の差、または尤度の差を含むものである。
【００４１】
マスク画像生成部２６は、入力画像のエネルギーに基づいて、重み付きグラフを構築して最適化した後、最適化結果を用いてマスク画像を生成し、生成したマスク画像をマスク画像出力判定部２７に供給する。
【００４２】
マスク画像出力判定部２７は、今現在供給されてきたマスク画像をマスク画像記憶部２８に記憶させると共に、直前の処理で記憶させたマスク画像と、今現在供給されてきたマスク画像との差分を求め、差分が所定の大きさよりも大きいとき、供給されてきたマスク画像を距離画像生成部２４に戻す。一方、マスク画像出力判定部２７は、直前の処理で記憶させたマスク画像と、今現在供給されてきたマスク画像との差分が、所定の大きさよりも小さいとき、入力されたマスク画像をマスク画像出力部２９に供給し、出力させる。
【００４３】
［距離画像生成部の構成例］
次に、図３を参照して、距離画像生成部２４の構成例について説明する。
【００４４】
距離画像生成部２４は、中間軸画像生成部５１、第１距離画像生成部５２、第２距離画像生成部５３、正規化距離画像生成部５４、および距離画像出力部５５を備えている。
【００４５】
中間軸画像生成部５１は、２値画像生成部２３より供給されてくる２値画像のうち、入力閉曲線内の形状を細線化処理し、中間軸画像を生成して第１距離画像生成部５２、および第２距離画像生成部５３に供給する。
【００４６】
第１距離画像生成部５２は、入力閉曲線からなる境界の画素から順次中間軸画像を構成する画素への最短経路を設定する。そして、第１距離画像生成部５２は、その経路上で境界となる画素での距離を０として、中間軸に近付くに連れて、例えば、上下方向に隣接する画素間では１を、斜め方向に隣接する画素間では√２を加算して、中間軸の画素までの最短距離を画素単位で順次求める。さらに、第１距離画像生成部５２は、上述の要領で求められた画素単位の距離を画素値とした第１距離画像を生成して正規化距離画像生成部５４に供給する。
【００４７】
第２距離画像生成部５３は、中間軸を構成する各画素から入力閉曲線からなる境界の画素への最短経路を設定する。そして、第２距離画像生成部５３は、その経路上で中間軸を構成する画素での距離を０として、境界となる入力閉曲線に近付くに連れて、例えば、上下方向に隣接する画素間では１を、斜め方向に隣接する画素間では√２を加算して、中間軸の画素までの最短距離を画素単位で順次求める。さらに、第２距離画像生成部５３は、上述の要領で求められた画素単位の距離を画素値とした第２距離画像を生成して正規化距離画像生成部５４に供給する。
【００４８】
正規化距離画像生成部５４は、第１距離画像生成部５２より供給されてきた第１距離画像、および第２距離画像生成部５３より供給されてきた第２距離画像の結果を内分して、距離を正規化し、正規化距離画像を生成して、距離画像出力部５５に供給する。
【００４９】
距離画像出力部５５は、正規化距離画像生成部５４より供給されてくる正規化距離画像を距離画像生成部２４により生成された距離画像として出力する。
【００５０】
［セグメンテーション処理］
次に、図４のフローチャートを参照して、図１の画像処理装置１１における画像処理であるセグメンテーション処理について説明する。尚、このセグメンテーション処理においては、図示せぬオブジェクト検索処理により入力画像から検索されたオブジェクトの外周部に入力閉曲線が入力された入力閉曲線画像であるか、または、図示せぬ操作部がユーザにより操作されて、入力画像内のオブジェクトの外周部をなぞるように入力閉曲線が入力されている入力閉曲線画像が、入力画像と共に供給されることが前提とされる。
【００５１】
ステップＳ１１において、画像取得部２１は、入力画像を取得すると共に、入力閉曲線画像取得部２２は、入力閉曲線画像を取得する。そして、画像取得部２１は、取得した入力画像を２値画像生成部２３に供給する。また、入力閉曲線画像取得部２２は、取得した入力閉曲線画像を２値画像生成部２３に供給する。
【００５２】
ステップＳ１２において、２値画像生成部２３は、供給されてくる入力画像および入力閉曲線画像に基づいて、オブジェクトを含む入力閉曲線画像内の第１の画素値と、それ以外の第２の画素値からなる２値画像を生成し、距離画像生成部２４に供給する。例えば、図５の画像Ｐ１１で示されるような入力閉曲線画像を考える場合、２値画像生成部２３は、画像Ｐ１２で示されるような２値画像を生成する。ここで、図５の画像Ｐ１１は、画素値が０乃至２５５である場合、入力閉曲線Ｌ１（図２）を画素値０とし、それ以外の画素値が１２８である画像である。また、２値画像は、入力閉曲線Ｌ１を含むその内側の画素の画素値が１２８であり、それ以外の画素が０である。
【００５３】
ステップＳ１３において、距離画像生成部２４は、距離画像生成処理を実行し、２値画像から距離画像を生成し、エネルギー算出部２５に供給する。より詳細には、例えば、距離画像生成部２４は、２値画像である図５の画像Ｐ１２を距離画像生成処理により、図５の画像Ｐ１４で示されるような距離画像を生成する。尚、距離画像生成処理については、詳細を図６のフローチャートを参照して後述する。
【００５４】
ステップＳ１４において、エネルギー算出部２５は、距離画像を使って入力画像におけるエネルギーを計算する。ここで、エネルギー算出部２５は、以下の式（１）で示されるエネルギーE(X)を算出し、マスク画像生成部２６に供給する。尚、この式（１）のエネルギーE(X)は、上述した特許文献１で紹介されているエネルギー計算式を拡張したものである。
【００５５】
E(X) =ΣE_1(xi) ＋λΣE_2(xi,xj)
・・・（１）
【００５６】
ここで、Xは画素値xの集合を現している。さらに、式（１）におけるE_1(xi)，E_2(xi,xj)は、それぞれ以下の式（２），式（３）で示されるように定義される。
【００５７】
E_1(xi)=S(xi)＋M(xi)＋D(xi)
・・・（２）
E_2(xi,xj)=T(xi,xj)
・・・（３）
【００５８】
さらに、式（２）における、S(xi)は、入力シードの１の画素xiに与えられるエネルギーであり、以下の式（４）のように定義される。
【００５９】
S(xi)=＋∞or−∞or0
・・・（４）
【００６０】
すなわち、S(xi)は、入力シードの位置の画素xiに与えられるエネルギーであって、２値画像の画素値０の画素には−∞が、画素値２５５の画素には＋∞が、それ以外の画素には０がそれぞれ付与される。ここで、入力シードとはセグメンテーション処理に与える拘束条件であり、背景かオブジェクトの属性を画素ごとに明示的に指定するものである。例えば、２値画像の画素値０は背景の領域であり、画素値２５５はオブジェクトの領域であり、それ以外は未決定領域として属性自動計算の計算対象とする。
【００６１】
また、式（２）における、M(xi)は、色分布モデルに基づく画素ごとの尤度のエネルギーであり、以下の式（５）で定義され、範囲が−１．０乃至１．０である。
【００６２】
M(xi)=(Pf(C(xi))−Pb(C(xi)))/(Pf(C(xi))＋Pb(C(xi)))×λm
・・・（５）
【００６３】
さらに、D(xi)は、以下の式（６）で定義され、各画素xiの中間軸距離画像における距離の値であり、T(xi,xj)は、以下の式（７）で定義され、隣接する画素（xi,xj）の色差に比例するエネルギーである。
【００６４】
D(xi)=dist(xi)×λd
・・・（６）
T(xi,xj)=exp(−｜C(xi)−C(xj)｜2)×λt
・・・（７）
【００６５】
ここで、式（５）のPf(C)は、オブジェクトの色分布モデルによって推定される色Cの尤度である。色分布モデルPf(C)は、例えば、ガウス混合モデル（Gaussian Mixture Model）、または、カーネル密度推定（Kernel Density Estimation）を使って計算する。オブジェクト色分布Pf(C)を構築するためにサンプリングする画素は、２値画像の値が０以外のオブジェクト候補画素を用いる。Pb(C)は、背景の色分布モデルによって推定される色Ｃの尤度であり、オブジェクトのモデルPf(C)と同様にガウス混合モデルまたはカーネル密度推定の方法を利用する。オブジェクト色分布Pb(C)を構築するためにサンプリングする画素は、２値画像の値が０の背景画素を使う。
【００６６】
オブジェクト候補画素は、画素ごとの重みW(xi)を乗じて色分布モデル計算に適用する。例えば、色分布モデルPf(C)がガウス混合モデルであった場合、ガウス混合モデルを定義する平均と分散は、それぞれ重み付きの平均と重み付きの分散となる。画素ごとの重みW(xi)がすべて１であれば全サンプル均等に評価するので、通常の平均と分散になる。
【００６７】
ここで、式（５）におけるPf(xi)は、確率分布モデルは各画素色C(xi)に重みW(xi)を重み付けして得られるものである。この画素ごとの重みW(xi)は、距離画像における各画素の値である距離dist(xi)を使って計算する。例えば、重みW(xi)は、以下の式（８）で示されるように、距離dist(xi)として直接利用しても良いし、dist(xi)閾値処理して与えてもよい。また、閾値処理する場合、例えば、重みW(xi)は距離dist(xi)が閾値Th以上は1、それ以外は0にする。例えば、閾値Thを0.9にすると、中間軸画像の軸付近の画素の重みだけが１となりオブジェクトの色分布モデルを構築するときに背景の画素をサンプリングすることを避けることができる。
【００６８】
W(xi) =dist(xi)
or
W(xi) =1    (dist(xi)≧Th)
0    (dist(xi)<Th)
・・・（８）
【００６９】
尚、式（５）乃至式（７）におけるλm、λd、λtは、それぞれの成分の強弱を調整する混合パラメータであり、範囲は0.0乃至1.0である。
【００７０】
ステップＳ１５において、マスク画像生成部２６は、エネルギー算出部２５より供給されてくる入力画像のエネルギーE(X)を用いて、重み付きグラフを構築し、最適化計算によりマスク画像を生成してマスク画像出力判定部２７に出力する。最適化計算としては、例えば、特許文献１で紹介されているグラフカット法を用いることができる。また、重み付きグラフの構築に当たっては、式（２）で示されるE_1(xi)の項を用いて、グラフのノードを設定し、式（３）で示されるE_2(xi)の項を用いてグラフのエッジを設定する。尚、具体的なグラフ構築方法およびグラフカットによるエネルギー最小化計算の詳細については、特許文献１を参照されたい。
【００７１】
ステップＳ１６において、マスク画像出力判定部２７は、供給されてきたマスク画像に基づいて、再度、マスク画像を求める処理を繰り返すか否かを判定する。より詳細には、マスク画像出力判定部２７は、供給されてきたマスク画像をマスク画像記憶部２８に記憶させると共に、直前に記憶させたマスク画像を読み出し、今現在送られてきたマスク画像と比較して、一致の程度を示す一致度を求めて、所定の閾値よりも低い場合、繰り返すものとみなして、処理は、ステップＳ１７に進む。ここで、一致度とは、例えば、２枚のマスク画像のそれぞれの画素値が一致する画素数の全画素数に対する割合などである。
【００７２】
ステップＳ１７において、マスク画像出力判定部２７は、供給されてきたマスク画像を２値画像生成部２３より供給されてくる２値画像に代えて、距離画像生成部２４に供給する。すなわち、直前に生成されたマスク画像との一致の程度が高いとみなされるまで、ステップＳ１３乃至Ｓ１７の処理が繰り返される。そして、ステップＳ１６において、一致度が十分に高く、繰り返しが必要ないと判定された場合、処理は、ステップＳ１８に進む。
【００７３】
ステップＳ１８において、マスク画像出力判定部２７は、マスク画像生成部２６より供給されてきたマスク画像をマスク画像出力部２９に供給し、セグメンテーション処理の処理結果として出力させる。
【００７４】
尚、以上においては、直前のマスク画像との比較により、一致の程度を示す一致度が所定の閾値よりも高くなるまで繰り返す例について説明してきたが、繰り返しの判定については、これ以外の手法であってもよく、例えば、所定回数繰り返すようにしてもよいし、また、繰り返さず、処理を１回だけとするようにしてもよい。
【００７５】
［距離画像生成処理］
次に、図６のフローチャートを参照して、図３の距離画像生成部２４による距離画像生成処理について説明する。
【００７６】
ステップＳ２１において、距離画像生成部２４の中間軸画像生成部５１は、入力された２値画像を用いて、入力閉曲線で囲まれる範囲の中心軸を含む中心軸画像を生成し、第１距離画像生成部５２、および第２距離画像生成部５３に供給する。より詳細には、中間軸画像生成部５１は、例えば、図５の画像Ｐ１２で示されるような２値画像のうち、入力閉曲線で囲まれている画素値が１２８の領域について、細線化処理を実行し、図５の画像Ｐ１３で示されるような中間軸からなる画像を生成する。細線化処理の方法としては、例えば、「Fully Parallel Thinning Algorithms Based on Ronse's Sufficient Conditions for Topology Preservation. In Progress in Combinatorial Image Analysis, pages 183-194, 2009. Research Publishing」に提案されている方法を用いるようにしてもよい。この方法においては、２値画像の細線化の対象となっている画素について、その画素の近傍の状態が所定の条件を満たすか否かを判定し、画素を削除した際に位相や形状的な特徴を保つように細線化を進める。図５の画像Ｐ１２の画像が、細線化処理されると、例えば、入力閉曲線Ｌ１で囲まれた領域の形状の特徴を表す細線からなる中間軸画像である画像Ｐ１３が得られる。中間軸画像である画像Ｐ１３は、２値画像である画像Ｐ１２の入力曲線Ｌ１で表される形状を複数の折れ線として表現するものである。
【００７７】
ステップＳ２２において、第１距離画像生成部５２は、中間軸画像を用いて、入力閉曲線を境界としたとき、境界の各画素から基準となる中間軸を構成する画素までを結ぶ最短となる経路上の隣接画素間の距離を、画素単位で累積的に加算して求める。そして、第１距離画像生成部５２は、求められた各画素の距離の値を画素値とする画像を第１距離画像として正規化距離画像生成部５４に供給する。
【００７８】
より具体的には、第１距離画像生成部５２は、各画素までの距離を、例えば、Fast Marching Methodなどの方法を用いて計算する。加算する距離の値は１画素移動するごとに１加算するといった固定値距離、上下方向については１であり、または斜め方向には、√２といった隣接関係を考慮した隣接距離、または、当該位置の画素と隣接画素の色や輝度差に基づく色差距離といった値を用いるようにしてもよい。
【００７９】
また、詳細な距離の計算方法としては、尤度の差分を積分していったものを距離とするようにしてもよい。さらに、例えば、距離の計算方法については上述した式（５）で示した画素の色に基づく尤度M(xi)を使うことで実現できる。この場合オブジェクトと背景の境界で尤度が大きく変わることが期待されるので、その部分で大きく距離が変化し、オブジェクトと背景の分離が正しく行われやすくなると期待できる。
【００８０】
さらに、また、より正確な方法としては、２値画像生成部２３により生成された２値画像における画素値１２８の各画素において空間的に最短距離にある画素値０の画素を見つけて、ユークリッド距離を逐次計算して距離を与える方法がある。
【００８１】
ステップＳ２３において、第２距離画像生成部５３は、中間軸画像を用いて、入力閉曲線を境界としたとき、基準となる中間軸を構成する各画素から境界を構成する各画素までを結ぶ最短となる経路上の隣接画素間の距離を、画素単位で累積的に加算して求める。そして、第２距離画像生成部５３は、求められた各画素の距離の値を画素値とする画像を第２距離画像として正規化距離画像生成部５４に供給する。すなわち、第２距離画像生成部５３は、第１距離画像生成部５２と基本的に同様の計算方法で各画素の距離を求めるが、距離の積算における始点と終点となる画素とが入れ替わる。
【００８２】
ステップＳ２４において、正規化距離画像生成部５４は、第１距離画像および第２距離画像に基づいて、各画素の距離の情報を正規化して、正規化距離画像を生成して、例えば、図５の画像Ｐ１４で示されるような距離画像として距離画像出力部５５より出力させる。より具体的には、正規化距離画像生成部５４は、第１距離画像および第２距離画像の各画素の画素値の情報を用いて、以下の式（９）を計算することにより距離を正規化して正規化距離画像を生成する。
【００８３】
dist(xi)=d_1(xi)/(d_1(xi)＋d_2(xi))
・・・（９）
【００８４】
ここでdist(xi)は画素xiにおける中間軸距離で、d_1(xi)は第１距離画像の画素xiの距離を示す画素値であり、d_2(xi)は第２距離画像の画素xiの距離を示す画素値である。
【００８５】
以上の処理により、入力閉曲線の形状を考慮して距離画像を計算することが可能となり、その距離画像に基づいて、エネルギーが求められて、そのエネルギーが最適化された情報に基づいてマスク画像が求められるので、セグメンテーション処理における処理結果であるオブジェクトの形状を、入力閉曲線の形状に近づくように調整することが可能となり、画像内のオブジェクトの情報に加えて、入力閉曲線の形状を考慮してオブジェクトの形状を求めることが可能となる。結果として、セグメンテーション処理による画素毎にオブジェクト（前景）または背景のいずれに属すかを示す属性を正確に割り付けることが可能となる。
【００８６】
ところで、図６の距離画像生成処理において求められた距離画像は、上述した式（７）で示される、T(xi,xj)の平滑化項のエネルギー計算にも適用することができる。すなわち、特許文献１で紹介される方法では、隣接する色の差分のみがエネルギーとして考慮されるが、図６の距離画像生成処理により計算された距離画像を使って距離成分をエネルギーとして反映させることができる。
【００８７】
その第１の方法は、距離画像の距離の値dist(xi)に応じて平滑化項エネルギーを変化させる方法である。すなわち、例えば、以下の式（１０）で示される計算によりエネルギーが計算される。
【００８８】
T(xi,xj)=exp(MIN(−｜C(xi)−C(xj)｜2＋α×dist(xi),0.0))×λt
・・・（１０）
【００８９】
ここで、MIN(a,b)は、aとbの値のうち小さい方を選択する演算子である。また、αは距離成分dist(xi)の影響度を調整するパラメータである。
【００９０】
式（１０）においては距離dist(xi)が大きく中間軸に近いほどエネルギーが大きくなるため、コストが上昇することで、輪郭を形成し難くしている。すなわち、オブジェクトの内部と推定される中間軸付近を切れにくくすることでオブジェクトの真の輪郭が極端に内部に縮退してしまうようなケースを抑制できる。
【００９１】
また、距離成分を平滑化項エネルギー計算に適用する第２の方法としては、距離画像の等高線方向を利用するというものが挙げられる。より具体的には、以下の式（１１）で示される計算により、距離画像における距離が等しい画素を結ぶことにより設定される等高線に沿った方向、すなわち、各画素位置において距離dist(xi)が最も変化しない方向を求めてその方向に切れやすいようにエネルギーを設計できる。
【００９２】
T(xi,xj)=exp(−｜C(xi)−C(xj)｜2×(β×｜V(xi,xj)・Δdist(xi)｜)＋ε)×λt
・・・（１１）
【００９３】
ここで、βとεは方向距離成分dist(xi)の影響度を調整するパラメータである。また、V(xi,xj)は隣接する画素xi,xjの空間位置差分から求まる方向を表す単位ベクトルである。Δdist(xi)は距離画像における微分方向を表す単位ベクトルである。これはたとえばSobelフィルタなどで求めることができる。｜V(xi,xj)・Δdist(xi)｜の内積の絶対値が小さいとき、すなわち、エッジが距離画像の等高線方向を向いているときにエネルギーを小さくすることで輪郭になりやすいように調整できる。これによって、入力閉曲線と同じ輪郭方向を持ったセグメンテーション結果を出力され易くすることができる。
【００９４】
＜第２実施例＞
［その他の距離画像生成部の構成例］
以上においては、距離画像生成部２４において、境界となる入力閉曲線上の画素と、中間軸を構成する画素間の距離を画素単位で求め、これらの距離を画素値とした距離画像に基づいてエネルギーを計算して、最適化処理によりマスク画像を生成する例について説明してきた。しかしながら、中間軸などのような基準となる位置から入力閉曲線上の画素までの距離を定義し、画素単位で距離に応じた画素値を持つ距離画像が求められればよいので、その他の定義で画素単位の距離を定めた距離画像を求めてもよい。例えば、画素単位の距離を定義するその他の手法としては、例えば、入力閉曲線の形状をモーフィングにより特定の位置を中心とした円形などに変形させて、モーフィングに対応した画素位置における中心からの距離を正規化距離とみなして、距離画像を生成するようにしてもよい。
【００９５】
図７は、入力閉曲線の形状を円形にモーフィングすることにより、画素単位で円の中心を基準となる位置として、その基準となる位置からの距離で定義される画素値からなる距離画像を生成するようにした距離画像生成部２４の構成例を示している。
【００９６】
図７の距離画像生成部２４は、頂点列計算部７１、ドロネー三角形化計算部７２、追加頂点平均値座標計算部７３、円周頂点列計算部７４、円周追加頂点位置計算部７５、距離計算部７６、および距離画像出力部７７を備えている。
【００９７】
頂点列計算部７１は、入力閉曲線上に頂点となる画素を設定し、設定された画素の情報をドロネー三角形化計算部７２に供給する。より詳細には、頂点列計算部７１は、入力閉曲線上のいずれかの画素を基点として、隣接する画素に同一の画素値（例えば、図５の画像Ｐ１１における入力閉曲線Ｌ１であれば、画素値０の画素）を順次検索すると共に、所定数毎にほぼ一定間隔で間引きする。
【００９８】
ドロネー三角形化計算部７２は、頂点として設定された画素の位置の情報を用いて、入力閉曲線上の頂点列のうち指定した頂点ペアが必ず三角形の辺となるように順次接続することを拘束条件として、ドロネー三角形を順次設定し、その情報を追加頂点平均値座標計算部７３、および円周頂点列計算部７４に供給する。この際、ドロネー三角形化計算部７２は、必要に応じて追加頂点を設定する。
【００９９】
追加頂点平均値座標計算部７３は、ドロネー三角形化計算部７２より供給されてきた頂点の情報に基づいて、追加した頂点の平均座標位置を、各頂点の位置座標に対して重みを付加して計算し、円周頂点列計算部７４、および円周追加頂点位置計算部７５に供給する。
【０１００】
円周頂点列計算部７４は、ドロネー三角形化計算部７２より供給されてくる頂点情報、および、追加頂点の平均座標位置の情報に基づいて、入力閉曲線を円周状にモーフィングした場合の位置を計算して、円周追加頂点位置計算部７５、および距離計算部７６に供給する。
【０１０１】
円周追加頂点位置計算部７５は、円周頂点列計算部７４より供給されてくる円周頂点列の各座標の情報と、追加頂点平均値座標計算部７３より供給されてくる追加頂点平均値座標とに基づいて、各頂点を円周状にモーフィングした際に移動する追加頂点平均値座標に対応する座標を計算し、距離計算部７６に供給する。
【０１０２】
距離計算部７６は、モーフィングした際に移動する入力閉曲線内の各座標の円の中心からの距離を計算し、計算結果を対応するモーフィング前の座標の各画素における入力閉曲線内の画素値とした距離画像を生成して、距離画像出力部７７に供給し、出力させる。
【０１０３】
［図７の距離画像生成部における距離画像生成処理］
ここで、図８のフローチャートを参照して、図７の距離画像生成部２４における距離画像生成処理について説明する。
【０１０４】
ステップＳ３１において、頂点列計算部７１は、入力閉曲線画像の閉曲線を折れ線で近似した閉曲線頂点列を計算する。より詳細には、頂点列計算部７１は、入力閉曲線画像が、例えば、図５の画像Ｐ１１である場合、画素値が０となる入力閉曲線Ｌ１上の画素を抽出し、それらを所定の間隔で間引き、頂点列を設定する。例えば、図９の画像Ｐ３１で示されるような場合、オブジェクトが実線で描かれた星型の形状であって、点線で示されるように入力閉曲線が設定されたとき、頂点列計算部７１は、図９の画像Ｐ３３で示されるように、黒丸で示される頂点Ｃ１を基点として、頂点Ｃ１乃至Ｃ１０を１周するように頂点列として設定する。
【０１０５】
ステップＳ３２において、ドロネー三角形化計算部７２は、入力閉曲線に基づいて計算された頂点列の情報より、ドロネー三角形分割処理を実行し、ドロネー三角形集合を計算により生成し、追加頂点平均値座標計算部７３、および円周頂点列計算部７４に供給する。ドロネー三角形とは、構成した三角形の外接円の内側に他の点を含まないように三角形を構成するものである。ドロネー三角形化計算部７２は、入力閉曲線上の頂点列の接続を拘束条件としたドロネー三角形アルゴリズムにより、例えば、図９の画像Ｐ３４で示されるように、ドロネー三角形集合を求める。このとき、ドロネー三角形化計算部７２は、図９の画像Ｐ３４の白丸で示される追加頂点ｄ１のように、拘束付きドロネー三角形アルゴリズムにより、元々設定された頂点列だけではドロネー三角形に分割することができないとき、必要に応じて追加頂点を追加して、拘束条件ドロネー三角形に分割する。
【０１０６】
例えば、図９の画像Ｐ３４の場合、頂点ｃ１０，ｃ２，ｃ９からなる三角形、頂点ｃ９，ｃ８，ｃ２からなる三角形、頂点ｃ６，ｃ７，ｃ８からなる三角形、頂点ｃ４，ｃ５，ｃ６からなる三角形、頂点ｃ２，ｃ３，ｃ４からなる三角形、および頂点ｃ１，ｃ２，ｃ１０からなる三角形、並びに、追加頂点ｄ１、頂点ｃ２，ｃ８からなる三角形、追加頂点ｄ１、頂点ｃ２，ｃ４からなる三角形、追加頂点ｄ１、頂点ｃ４，ｃ６からなる三角形、および追加頂点ｄ１、頂点ｃ６，ｃ８からなる三角形に分割されている。
【０１０７】
ステップＳ３３において、追加頂点平均値座標計算部７３は、ステップＳ３２の処理において追加されたドロネー三角形の追加頂点の平均値座標（Mean Value Coordinate）を求め、円周頂点列計算部７４、および円周追加頂点位置計算部７５に供給する。より詳細には、追加頂点平均値座標計算部７３は、入力閉曲線上の頂点列の各位置を重み付け平均した位置として、追加頂点の平均値座標を計算する。このとき、追加頂点の平均値座標は、入力閉曲線上の頂点列の各重みは平均値座標アルゴリズムを使用して計算する。追加頂点平均値座標計算部７３は、平均値座標として求めたい頂点vxと基準となる頂点列viの位置関係とから平均値座標を計算する。
【０１０８】
より具体的には、追加頂点平均値座標計算部７３は、図１０で示されるように、追加頂点vxと基準となる頂点viの距離および角度から各頂点viの重みから、以下の式（１２）を計算することにより平均値座標を求める。
【０１０９】
v_x=Σλi×vi
・・・（１２）
【０１１０】
ここで、λiは、以下の式（１３）で定義され、このうちwiは、以下の式（１４）で定義される。
【０１１１】
【数１】
0005505164.tif 000002
・・・（１３）
【数２】
0005505164.tif 000003
・・・（１４）
【０１１２】
αiは、追加頂点vxを頂点とし、基準となる頂点との成す角がである。すなわち、重みwiの総合計は、１となるように設定されており、式（１３），式（１４）で示されるように、正規化される。
【０１１３】
尚、平均値座標の計算方法の詳細については、「FLOATER, M. S., K´OS, G., AND REIMERS, M. 2005. Mean value coordinates in 3d. Comput. Aided Geom. Des. 22, 7, 623.631.」を参照されたい。
【０１１４】
ステップＳ３４において、円周頂点列計算部７４は、入力閉曲線上の頂点列を円形に変形して円周頂点列を計算し、円周追加頂点位置計算部７５、および距離計算部７６に供給する。より具体的には、円周頂点列計算部７４は、例えば、図９の画像Ｐ３５で示されるように、半径１．０の円を仮定し、円周上に等間隔に入力閉曲線の頂点列Ｃ１’乃至Ｃ１０’を配置して円周頂点列とする。すなわち、このとき、入力閉曲線の形状が、半径１．０の円形にモーフィングされるため、入力閉曲線内の画像の座標もモーフィングにより移動されることになる。
【０１１５】
ステップＳ３５において、円周追加頂点位置計算部７５は、円周頂点列計算部７４より供給されてくる円周頂点列の座標、および追加頂点平均値座標計算部７３により計算された追加頂点の平均値座標を使って、円形にモーフィング後の追加頂点の位置を計算する。ここで、追加頂点の位置は、円形にモーフィングされた円周頂点列に平均値座標の重みを使って重み付き平均として計算する。尚、当然のことながら、モーフィングされても、ドロネー三角形の接続情報はそのまま維持される。ここまでの処理により円形にモーフィングされた円周頂点列、並びにドロネー三角形の追加頂点の位置および平均値座標が得られることになる。
【０１１６】
ステップＳ３６において、距離計算部７６は、円周頂点列の情報、および円周追加頂点位置の情報に基づいて、円形にモーフィング後の入力閉曲線内の画素の対応する位置を求め、各画素のモーフィング後の距離の情報を画素値とする距離画像を生成して、距離画像出力部７７より出力させる。ここで、距離画像の画素値とされる各画素の距離は、この円形の外周を０．０、中心を１．０として定義し、モーフィング前の形状に対応する画素の画素値とする。このような処理により、モーフィング前の画素が、モーフィング後の円形の位置に１対１に対応づけられて、円形内のどの位置に対応するかによって、基準となる中心からの距離が設定され、モーフィング前の画素の画素値とされる。
【０１１７】
より詳細には、距離計算部７６は、処理対象の画素が、画素g1であるとき、求められたドロネー三角形集合のいずれのドロネー三角形に含まれるかを計算して三角形tを得る。次に、距離計算部７６は、三角形tの３つの頂点位置を使って画素位置g1の重心座標を求める。さらに、距離計算部７６は、重心座標は位置g1を３つの頂点の重み付き平均で表現するとき、その３つの重みｗを求める。そして、距離計算部７６は、三角形ｔのモーフィング後の三角形ｔ’の円形での頂点座標を得て、位置g1の円形での位置g1’を、３つの重みｗを使って計算する。最後に、距離計算部７６は、モーフィング後である円形での位置g1'の中心からの距離を計算して画素g1における距離dist(g1)として求めることができる。
【０１１８】
以上の処理により、入力閉曲線の形状を円形に変換したときの対応する各画素の中心からの距離を画素値とした距離画像を求めることが可能となる。
【０１１９】
尚、モーフィングにより求められた距離画像を用いたセグメンテーション処理については、図４のフローチャートを参照して説明した処理と同様であるので、その説明は省略すうものとする。
【０１２０】
以上のように、オブジェクトを囲むように入力される入力閉曲線の形状に従って、入力閉曲線内における基準となる位置（中間軸または円形にモーフィングした後の円の中心位置）からの距離を画素値とする距離画像を生成し、距離画像に基づいてエネルギーを算出することにより、画素単位でオブジェクトに属する画素であるか、または、オブジェクトに属する画素以外の画素であるかの属性をより適切に割り付けるようにした。結果として、入力画像内におけるオブジェクトの画像としての特徴に加えて、入力閉曲線の形状の情報を考慮したセグメンテーション処理を実現することが可能となり、セグメンテーション処理によるオブジェクトを特定する精度を向上させることが可能となる。
【０１２１】
ところで、上述した一連の処理は、ハードウェアにより実行させることもできるが、ソフトウェアにより実行させることもできる。一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、記録媒体からインストールされる。
【０１２２】
図１１は、汎用のパーソナルコンピュータの構成例を示している。このパーソナルコンピュータは、CPU(Central Processing Unit)１００１を内蔵している。CPU１００１にはバス１００４を介して、入出力インタ-フェイス１００５が接続されている。バス１００４には、ROM(Read Only Memory)１００２およびRAM(Random Access Memory)１００３が接続されている。
【０１２３】
入出力インタ-フェイス１００５には、ユーザが操作コマンドを入力するキーボード、マウスなどの入力デバイスよりなる入力部１００６、処理操作画面や処理結果の画像を表示デバイスに出力する出力部１００７、プログラムや各種データを格納するハードディスクドライブなどよりなる記憶部１００８、LAN（Local Area Network）アダプタなどよりなり、インターネットに代表されるネットワークを介した通信処理を実行する通信部１００９が接続されている。また、磁気ディスク（フレキシブルディスクを含む）、光ディスク（CD-ROM(Compact Disc-Read Only Memory)、DVD(Digital Versatile Disc)を含む）、光磁気ディスク（ＭＤ(Mini Disc)を含む）、もしくは半導体メモリなどのリムーバブルメディア１０１１に対してデータを読み書きするドライブ１０１０が接続されている。
【０１２４】
CPU１００１は、ROM１００２に記憶されているプログラム、または磁気ディスク、光ディスク、光磁気ディスク、もしくは半導体メモリ等のリムーバブルメディア１０１１から読み出されて記憶部１００８にインストールされ、記憶部１００８からRAM１００３にロードされたプログラムに従って各種の処理を実行する。RAM１００３にはまた、CPU１００１が各種の処理を実行する上において必要なデータなども適宜記憶される。
【０１２５】
尚、本明細書において、記録媒体に記録されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理は、もちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理を含むものである。
【符号の説明】
【０１２６】
１１  画像処理装置，  ２１  画像取得部，  ２２  入力閉曲線画像取得部，  ２３  2値画像生成部，  ２４  距離画像生成部，  ２５  エネルギー算出部，  ２６  マスク画像生成部，  ２７  マスク画像出力判定部，  ２８  マスク画像記憶部，  ２９  マスク画像出力部，  ５１  中間軸画像生成部，  ５２  第１距離画像生成部，  ５３  第２距離画像生成部，  ５４  正規化距離画像生成部，  ５５  距離画像出力部，  ７１  頂点列計算部，  ７２  ドロネー三角形化計算部，  ７３  追加頂点平均値座標計算部，  ７４  円周頂点列計算部，  ７５  円周追加頂点位置計算部，  ７６  距離計算部，  ７７  距離画像出力部
【図１】
0005505164.tif 000004
【図２】
0005505164.tif 000005
【図３】
0005505164.tif 000006
【図４】
0005505164.tif 000007
【図５】
0005505164.tif 000008
【図６】
0005505164.tif 000009
【図７】
0005505164.tif 000010
【図８】
0005505164.tif 000011
【図９】
0005505164.tif 000012
【図１０】
0005505164.tif 000013
【図１１】
0005505164.tif 000014