(57)【要約】【課題】入力画像の特徴を基に抽出した注目領域候補の形状に応じて、初期輪郭の制御点を適切に設定できるようにする。【解決手段】入力画像は、前処理部２２にて必要に応じて解像度変換、色空間変換を受け、ＲＯＩ候補領域抽出部２３で注目候補領域が抽出される。抽出された注目候補領域に対して、制御点生成部２４で輪郭の抽出、及びサンプリングを行う。輪郭の複雑な形状部には多くの制御点を、簡単な形状の部分には少数の制御点を割り振ることで、初期輪郭として利用するのに好適な制御点を構成することができる。【選択図】図２
2012064043.tif 000002
【特許請求の範囲】
【請求項１】
入力画像の予め定められた特徴を基に注目領域候補を抽出する注目領域候補抽出手段と、
前記注目領域候補抽出手段により抽出された注目領域候補の輪郭情報を抽出する輪郭情報抽出手段と、
前記輪郭情報抽出手段により抽出された輪郭情報から、前記注目領域候補の輪郭形状の複雑さを算出する輪郭複雑さ算出手段と、
前記輪郭複雑さ算出手段により算出された輪郭形状の複雑さに応じて制御点を生成する制御点生成手段と
を有する画像処理装置。
【請求項２】
請求項１に記載された画像処理装置において、
前記輪郭複雑さ算出手段は、前記輪郭形状の変化の程度が閾値を越えるか否かを輪郭の各位置について算出し、
前記制御点生成手段は、前記輪郭形状の変化の程度が閾値を越える位置のみに制御点を生成する
画像処理装置。
【請求項３】
請求項２に記載された画像処理装置において、
前記輪郭複雑さ算出手段は、前記輪郭形状の変化の程度を示す値として、前記輪郭の二次元位置の線微分値の加重移動平均値を算出する
画像処理装置。
【請求項４】
請求項１に記載された画像処理装置において、
前記輪郭複雑さ算出手段は、前記輪郭の二次元位置の線微分値の輪郭形状全体の平均値及びバラツキ度合を算出し、
前記制御点生成手段は、前記平均値及びバラツキ度合に応じて、等間隔に生成する制御点の間隔を決める
画像処理装置。
【請求項５】
請求項１に記載された画像処理装置において、
前記制御点生成手段は、輪郭形状の複雑さに応じて、前記制御点を等間隔に設定するか不等間隔に設定するかを決める
画像処理装置。
【請求項６】
請求項１に記載された画像処理装置において、
前記輪郭複雑さ算出手段は、前記輪郭情報抽出手段により抽出された輪郭情報を縦方向及び横方向にサンプリングすることで、二次元位置データを有する点列からなる境界情報を生成し、隣り合う前記点列の二次元位置の変化を輪郭形状の複雑さとして算出し、
前記制御点生成手段は前記点列をサンプリングすることで制御点を生成する
画像処理装置。
【請求項７】
入力画像の予め定められた特徴を基に注目領域候補を抽出する注目領域候補抽出工程と、
前記注目領域候補抽出手段により抽出された注目領域候補の輪郭情報を抽出する輪郭情報抽出工程と、
前記輪郭情報抽出工程により抽出された輪郭情報から、前記注目領域候補の輪郭形状の複雑さを算出する輪郭複雑さ算出工程と、
前記輪郭複雑さ算出工程により算出された輪郭形状の複雑さに応じて制御点を生成する制御点設定工程と
を有する画像処理方法。
【請求項８】
コンピュータを、請求項１乃至６のいずれかに記載された画像処理装置の各手段として機能させるためのプログラム。
【請求項９】
入力画像の予め定められた特徴を基に注目領域候補を抽出する注目領域候補抽出手段と、
前記注目領域候補抽出手段により抽出された注目領域候補の輪郭情報を抽出する輪郭情報抽出手段と、
前記輪郭情報抽出手段により抽出された輪郭情報から、前記注目領域候補の輪郭形状の複雑さを算出する輪郭複雑さ算出手段と、
前記輪郭複雑さ算出手段により算出された輪郭形状の複雑さに応じて制御点を生成する制御点生成手段と
を有する画像処理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動的輪郭法により輪郭抽出を行う画像処理装置、画像処理方法、画像処理システム、及び画像処理プログラムに関する。
【背景技術】
【０００２】
画像中から物体（以下オブジェクト）を取り出すための処理には様々な種類があるが、その中でも動的輪郭モデル（Active Contour Model：ＡＣＭ）は処理の柔軟性と速度の面で良好な性能を持つ方法である。
【０００３】
ＡＣＭにおいては、図１５に示すように、画像に含まれる特定のオブジェクトに対して変形可能な閉曲線Ｌを設定し、その閉曲線Ｌのエネルギーを定義することにより、その閉曲線Ｌの状態を定量的に評価する。閉曲線Ｌのエネルギーは閉曲線Ｌがオブジェクトの輪郭に一致した場合に最小になるように定義されるものであり、これにより閉曲線Ｌをそのエネルギーが最小となるように変形させることでオブジェクトの輪郭を抽出することができる。閉曲線Ｌはその閉曲線Ｌを形成する離散的に配置された制御点Ｐを連結したものであり、ＡＣＭの多くの方法では制御点間をスプライン法などで補間して実際の輪郭にする。実際にＡＣＭで制御されるのはこの制御点であり、制御点の位置を決めるためのコスト関数が動的輪郭法の根幹である。
【０００４】
この制御点とコスト関数は事前実験などにより、対象となる画像に適したものを構成することになるが、一般に制御点の初期位置（つまり初期輪郭）は、ＡＣＭ計算収束までの時間と、最終的に得られる輪郭の精度の両方に大きな影響を与える。
【０００５】
初期輪郭の与え方には様々な方法があるが、最も単純なものは、抽出すべきオブジェクトが画面中央に存在すると仮定し、画像周辺部や画像中央に中心を持つ円を初期輪郭として利用する方法である（特許文献１）。この方法は前記の仮定が成立しないことが多いために、収束までの計算速度、輪郭の精度のいずれの面でも劣っている。
【０００６】
より高度な方法としては、画像中の特定の特徴量（例えば分散値）などを利用し、画像中のＲＯＩ（Region Of Interest：注目領域）の候補を求め、その周囲に初期輪郭を構成する方法がある（特許文献２）。しかし、この文献には、初期輪郭を構成する制御点をＲＯＩ候補の形状に応じて適切に設定することは考慮されていない。
【発明の概要】
【発明が解決しようとする課題】
【０００７】
本発明は、このような問題を解決するためになされたものであり、その目的は、入力画像の特徴を基に抽出した注目領域候補の形状に応じて、初期輪郭の制御点を適切に設定できるようにすることである。
【課題を解決するための手段】
【０００８】
本発明の画像処理装置は、入力画像の予め定められた特徴を基に注目領域候補を抽出する注目領域候補抽出手段と、前記注目領域候補抽出手段により抽出された注目領域候補の輪郭情報を抽出する輪郭情報抽出手段と、前記輪郭情報抽出手段により抽出された輪郭情報から、前記注目領域候補の輪郭形状の複雑さを算出する輪郭複雑さ算出手段と、前記輪郭複雑さ算出手段により算出された輪郭形状の複雑さに応じて制御点を生成する制御点生成手段とを有する画像処理装置である。
本発明の画像処理方法は、入力画像の予め定められた特徴を基に注目領域候補を抽出する注目領域候補抽出工程と、前記注目領域候補抽出手段により抽出された注目領域候補の輪郭情報を抽出する輪郭情報抽出工程と、前記輪郭情報抽出工程により抽出された輪郭情報から、前記注目領域候補の輪郭形状の複雑さを算出する輪郭複雑さ算出工程と、前記輪郭複雑さ算出工程により算出された輪郭形状の複雑さに応じて制御点を生成する制御点設定工程とを有する画像処理方法である。
本発明の画像処理プログラムは、コンピュータを、本発明の画像処理装置の各手段として機能させるためのプログラムである。
本発明の画像処理システムは、入力画像の予め定められた特徴を基に注目領域候補を抽出する注目領域候補抽出手段と、前記注目領域候補抽出手段により抽出された注目領域候補の輪郭情報を抽出する輪郭情報抽出手段と、前記輪郭情報抽出手段により抽出された輪郭情報から、前記注目領域候補の輪郭形状の複雑さを算出する輪郭複雑さ算出手段と、前記輪郭複雑さ算出手段により算出された輪郭形状の複雑さに応じて制御点を生成する制御点生成手段とを有する画像処理システムである。
【０００９】
［作用］
本発明によれば、入力画像の特徴に応じて注目領域候補を抽出し、その注目領域候補の輪郭の形状の複雑さに応じて、その注目領域候補の輪郭に対応する制御点を生成する。
【発明の効果】
【００１０】
本発明によれば、入力画像の特徴を基に抽出した注目領域候補の形状に応じて、初期輪郭の制御点を適切に設定することができる。
【図面の簡単な説明】
【００１１】
【図１】本発明の第１の実施形態の画像処理装置を有する画像処理システムを示す図である。
【図２】本発明の第１の実施形態の画像処理装置における画像入力から制御点生成までの流れを示す図である。
【図３】本発明の第１の実施形態の画像処理装置の機能ブロック図である。
【図４】本発明の第１の実施形態の画像処理装置のコンポーネントレベルの振る舞いを示すシーケンス図である。
【図５】本発明の第１の実施形態の画像処理装置における領域分割処理の機能ブロック図である。
【図６】本発明の第１の実施形態の画像処理装置における領域分割処理のシーケンス図である。
【図７】本発明の第１の実施形態の画像処理装置における領域統合処理の機能ブロック図である。
【図８】本発明の第１の実施形態の画像処理装置における領域統合処理のシーケンス図である。
【図９】本発明の第１の実施形態の画像処理装置における制御点生成処理の機能ブロック図である。
【図１０】本発明の第１の実施形態の画像処理装置における制御点生成処理のシーケンス図である。
【図１１】本発明の第１の実施形態の画像処理装置において、注目領域候補の輪郭上の点毎の微分値の加重移動平均値の算出に用いる関数の一例を示す図である。
【図１２】本発明の第１の実施形態の画像処理装置において、注目領域候補の輪郭の形状の微分値の加重移動平均値を基に制御点を生成する処理のフローチャートである。
【図１３】本発明の第２の実施形態の画像処理装置において、注目領域候補の輪郭全体の形状の微分値の平均値及び標準偏差値を基に等間隔サンプリングの間隔を決定する処理のフローチャートである。
【図１４】本発明の第３の実施形態の画像処理装置において、注目領域候補の輪郭全体の形状の微分値の平均値を基に等間隔サンプリングか不等間隔サンプリングかを決定する処理のフローチャートである。
【図１５】動的輪郭法の概略を示す図である。
【発明を実施するための形態】
【００１２】
以下、本発明の実施の形態について、図面を参照して説明する。
［第１の実施形態］
〈実施形態全体の概要〉
本実施形態では、ウォーターシェッド（Watershed）法などの簡易的な領域分割法を前処理として利用することで、動的輪郭モデルに適切な初期輪郭を、少ないユーザ作業量で与えることができる。
【００１３】
本実施形態によると、少ないユーザ作業量で、ユーザの意図する抽出対象オブジェクトを指定することができ、且つ、オブジェクト輪郭の実際の詳細な抽出はシステムが行うために、ユーザの全体の作業量を顕著に低減することができる。
【００１４】
本実施形態の処理は大きく分けて２段階からなる。ＲＯＩを抽出する段階と、ＲＯＩから輪郭を抽出し、その輪郭をサンプリングし、制御点を定める段階である。
【００１５】
ＲＯＩ抽出には様々な方法がある。本実施形態では、領域成長法の一つであるウォーターシェッド法を用いた場合について説明するが、他の方法を用いてもよい。ウォーターシェッド法は、いくつかのシード点から、グラディエントの和が一定になるように領域を成長させ、他のシード点からの領域との接触線を最終的な輪郭とする、領域成長法による画像分割法である（「http://en.wikipedia.org/wiki/Watershed_％28algorithm％29」参照）。この方法では、シード点はユーザが指定することが基本となるが、他の方法によるＲＯＩ情報などを用いて自動的にシード点を設定することもできる。
【００１６】
ウォーターシェッド法では、シード点の数だけ領域が生じるが、一般的にウォーターシェッド法では複雑なオブジェクトを抽出するために、一つのオブジェクトに対して複数のシード点が必要となり、所謂過分割の状態となりやすい。そのため一旦分割した後、抽出対象のオブジェクトの輪郭となるように、領域の統合を行うことがある。この領域の統合には例えばスプリット・アンド・マージ（Split-and-Merge）法(「http://homepage.inf.ed.ac.uk/rbf/CVonline/LOCAL_COPIES/MARBLE/medium/segment/split.htm」参照)などを用いることができる。
【００１７】
抽出対象のオブジェクトと領域が一意に対応付けできた後、これをＲＯＩ候補領域と呼ぶことにする。次にこのＲＯＩ候補領域の輪郭を抽出する。ＲＯＩ候補領域は他の領域と二値的に識別できるため、この輪郭抽出は単純な二値画像からの輪郭抽出法を用いることができる。
【００１８】
ここで抽出された輪郭は連続線情報であるため、このまま動的輪郭法で利用することはできない。そのため抽出された輪郭をサンプリングし、制御点を設定する必要がある。曲線のサンプリングにも様々な手法がある。最も単純には、等間隔サンプリング法があるが、これは輪郭形状にかかわらず一定の間隔でサンプリングするため、後処理である動的輪郭法における輪郭形状追従性が悪くなり適切ではない。輪郭形状に従ってサンプリング間隔を調整する不等間隔サンプリング方式には例えば「The-Chin  チェーンの近似アルゴリズム」のような方法があり、これにより後段の動的輪郭法で高い精度が期待できるような、制御点を設定することができる。これは端的には、複雑な形状部には多くの制御点を、簡単な形状の部分には少数の制御点を割り振る方法といえる。このような処理の組み合わせにより、動的輪郭法で初期輪郭として利用するのに好適な、制御点を構成することができる。
【００１９】
〈画像処理システムの構成〉
図１に本発明の実施形態の画像処理装置を有する画像処理システムを示す。この画像処理システムは、ネットワーク２と、それぞれがネットワーク２に接続された画像処理装置１、画像取得装置３、画像出力装置４、及び記憶装置５からなる。
【００２０】
画像取得装置３はイメージスキャナやデジタルカメラなど、写真、原稿、風景などの画像の画像情報を取得する装置である。画像出力装置４は電子写真記録方式やインクジェット記録方式のプリンタやプロッタからなる画像を形成する装置である。記憶装置５はＨＤＤ（ハードディスクドライブ）などの大容量の外部記憶装置である。
【００２１】
画像処理装置１は、コンピュータにより構成されており、画像処理装置内部バス１１と、それぞれが画像処理装置内部バス１１に接続されたＣＰＵ（Central Processing Unit）１２、ＲＯＭ（Read Only Memory）１３、ＲＡＭ（Random Access Memory）１４、記憶装置１５、操作装置１６、表示装置１７、及び通信装置１８を有する。
【００２２】
ＣＰＵ１２は、ＲＯＭ１３や記憶装置１５に格納されているプログラムやデータをＲＡＭ１４に読み込んで実行することにより、この画像処理装置１の全体の制御などを行うプロセッサである。ＲＯＭ１３はプログラムやデータを記憶するメモリである。ＲＡＭ１４は、ＣＰＵ１２が各種動作を行うときにプログラムやデータを一時的に記憶するメモリである。記憶装置１５はＨＤＤからなり、ＣＰＵ１２が各種動作を行うときに使用するプログラムやデータを記憶する内部記憶装置である。
【００２３】
操作装置１６は、キーボード、マウスなど、ユーザが画像処理装置１を操作するためのユーザインタフェースである。表示装置１７は、ＬＣＤ（Liquid Crystal Display）やＣＲＴ（Cathode Ray Tube）など、操作装置１６から入力した情報や画像処理装置１の動作状態などを表示するユーザインタフェースである。通信装置１８は、ネットワーク２を介して、画像取得装置３、画像出力装置４、記憶装置５とデータ通信を行うための装置である。
【００２４】
このような構成により、画像処理装置１は内部の記憶装置１５、外部の記憶装置５のいずれかに保持される入力画像、もしくは画像取得装置３により取得される入力画像情報を取得する。次に作業用のＲＡＭ１４にその入力画像情報を展開し、予め定められた処理方法によりこれを処理する。この結果は記憶装置１５もしくはネットワーク２経由で記憶装置５に保持することができる。ユーザからの指示に従い、システムはＲＡＭ１４に展開された処理済み画像情報をネットワーク２経由で画像出力装置４に送り、ハードコピーを作成することができる。
【００２５】
〈画像入力から制御点生成処理までの流れ〉
図２は、本実施形態の画像処理装置１に画像が入力されてから初期輪郭の制御点が生成されるまでの流れを示す図である。
【００２６】
図示のように、入力画像は、順次、前処理部２２と、ＲＯＩ候補領域抽出部２３と、制御点生成部２４で処理される。
前処理部２２は、与えられた入力画像を後段の処理に適する形に変換するための解像度変換部２２１と色空間変換部２２２を備えている。入力画像の解像度が高すぎる場合には処理速度向上のために、後段の処理で用いる解像度に変換する場合がある。また入力画像の色空間が後段の処理での色空間と異なる場合には、適時色空間変換を行う。
【００２７】
ＲＯＩ候補領域抽出部２３は初期輪郭のもとになるＲＯＩ候補領域を抽出するものであり、領域分割部２３１とその後の領域統合部２３２からなる。領域分割部２３１はここでは領域成長法の一つであるウォーターシェッド法を用いる。ウォーターシェッド法では、グレーレベルに変換した入力画像からグラディエントを計算し、別途設定されたシード点からのグラディエント和が一定になるように領域分割を行う。
【００２８】
ウォーターシェッド法では一般的に過分割になる傾向があり、そのため抽出したいオブジェクト１つに対して複数の領域が発生することがある。その場合にはユーザの指示により、領域を統合し、抽出するオブジェクトと一対一に領域が対応するようにする。この処理は領域統合部２３２で行われ、例えばスプリット・アンド・マージアルゴリズムの統合部を用いて処理することができる。この領域統合により、オブジェクト周囲のＲＯＩ候補領域が設定される。
【００２９】
制御点生成部２４の輪郭抽出部２４１では、ＲＯＩ候補領域の輪郭抽出を行う。ウォーターシェッド法及びスプリット・アンド・マージ処理により既にＲＯＩ候補領域は他の領域と区別するためのフラグを与えられているため、二値画像からの輪郭抽出処理となり、簡易な方法で輪郭を抽出することができる。このとき、抽出すべきオブジェクト領域のトポロジーが１でない場合（ドーナツ状などで領域に穴があいている場合）、内部の穴の周囲にも輪郭を構成することができる。この場合、領域外周部の輪郭と内周部の輪郭を別の輪郭としてそれぞれ輪郭抽出→制御点設定を行うことで、複雑な形状の領域も抽出することができるようになる。
【００３０】
最後にサンプリング部２４２では、最も単純な方法として等間隔サンプリングを用いるものとする。この場合、輪郭情報を点列として符号化した後、予め定められた間隔でその符号をサンプリングすることでサンプリング結果として制御点が得られる。
【００３１】
〈画像処理装置の機能ブロック図〉
図３は、本実施形態の画像処理装置の機能ブロック図である。図示のように、図２に示す処理に対応するように、解像度変換部３２、色空間変換部３３、領域分割部３４、領域統合部３６、輪郭抽出部３７、サンプリング部３８の各処理部と、ユーザとのインタラクションを行うためのユーザインタフェース３１、画像等を保持するためのリポジトリ３５からなる。ここでユーザインタフェース３１は各処理の制御も行う。
【００３２】
〈画像処理装置のコンポーネントレベルの振る舞い〉
図４は、画像処理装置１のコンポーネントレベルの振る舞いを示すシーケンス図である。
【００３３】
本実施形態における画像処理は、前記のとおり大きく分けるとＲＯＩ候補領域抽出と、制御点生成処理からなる。ただし任意の入力画像を処理するために、多くの場合解像度変換や色空間変換などの前処理が必要になる。
【００３４】
まず前処理部２２では、入力画像に対して解像度変換（Ｓ５）と色空間変換（Ｓ６）を行う。ここでは、ユーザインタフェース３１に対する指示（Ｓ１）に基づいて、リポジトリ３５から検索した画像を入力画像とする（Ｓ２〜Ｓ４）。
【００３５】
入力画像Input_imageの解像度をx、予め定められた出力画像Output_imageの解像度をy、入力画像の高さheight、幅widthとすると、最も単純な解像度変換は、以下のように表される。ここで関数Avgは引数の平均を返すものである。
【００３６】
Ratio = x/y
For i=0, i< height/Ratio
For j=0, j<width/Ratio
Output_image(i,j)=Avg(Input_image(ii,jj),height*Ratio<ii<(height+1)*Ratio,
width*Ratio<jj<(width+1)*Ratio)
なお、これ以外のサンプリング方法を用いて低解像度化を行ってもかまわない。
【００３７】
本実施形態では、ＲＯＩ候補領域抽出処理部２３において領域成長法の一つであるウォーターシェッド法を利用する。この方法はグレースケール画像を入力画像として想定するため、色空間変換（Ｓ６）では、カラー画像からグレースケール画像への縮退を行うことが求められる。ただし、カラー画像をそのまま利用可能なウォーターシェッド法の派生法を用いる場合には、色空間変換は必要ない。ＲＧＢカラー画像からグレースケール画像への最も単純な変換は上記の仮定の下で以下のように示される。ここで関数R，G，Bはそれぞれ引数の画像情報の赤、緑、青成分を返すものである。
【００３８】
For i=0, i<height
For j=0, j<width
Gray_scale_image(i, j) = 0.3 R(Input_image(i, j)) + 0.5 G(Input_image(i, j)) 
+ 0.2 B(Input_image(i, j))
【００３９】
低解像度化、色空間変換を受けた画像は、一旦途中生成画像（中間生成画像）としてリポジトリ３５に保存する（Ｓ７、Ｓ８）。ただし、後段の全処理を通じてメモリ（ＲＡＭ１４）内で利用可能であればリポジトリ３５に保存する必要はない。保存（書き込み）の終了がリポジトリ３５から前処理部２２に通知され（Ｓ９）、前処理の終了が前処理部２２からユーザインタフェース３１に通知される（Ｓ１０）。
【００４０】
次にＲＯＩ候補領域抽出部２３では、ユーザインタフェース３１に対する指示（Ｓ１１）に基づいて、リポジトリ３５から途中生成画像を検索し（Ｓ１２〜Ｓ１４）、領域の分割（Ｓ１５）と主なオブジェクトに沿った領域の統合（Ｓ１６）を行う。一般的に色や明度などの局所特徴に基づいた領域分割は、画像中の意味あるオブジェクトに対して過分割になりやすい。そのため局所特徴に基づいた領域分割の後、オブジェクトに沿って領域を統合する処理が必要となる。
【００４１】
《領域分割処理の詳細》
まず領域分割処理（Ｓ１５）は、前記のとおり局所特徴を利用した方式を用いる。これは画像の見えに近い領域分割結果を得るために必要である。図５は領域分割処理（Ｓ１５）の詳細な機能ブロックであり、図６はその機能ブロックに対応するシーケンス図である。図５は、図３の領域分割部３４及びリポジトリ３５に対応するものであり、処理制御部４１、シード点配置部４２、グラディエントマップ計算部４３、グラディエント和計算部４４、終了評価部４５、及びリポジトリ３５からなる。
【００４２】
図６に示すように、まずシード点配置部４２が処理制御部４１の指示に応じてシード点を配置してシード点情報を処理制御部４１に渡し（Ｓ１０１〜Ｓ１０３）、次いでグラディエントマップ計算部４３が処理制御部４１の指示（Ｓ１０４）に応じてグラディエントマップを計算し（Ｓ１０５）、計算結果のグラディエントマップを処理制御部４１に渡す（Ｓ１０６）。
【００４３】
次にグラディエント和計算部４４が処理制御部４１の指示（Ｓ１０７）に応じてグラディエント和を計算し（Ｓ１０８）、計算が終了したら終了通知を処理制御部４１に送る（Ｓ１０９〜Ｓ１１１）。
【００４４】
位置(i, j)におけるグラディエント場Grad(i, j)の計算（Ｓ１０８）を例えば以下のように行う。
For i=0, i<height
For j=0, j<width
Grad(i, j) = MAX(g(n))
【００４５】
ここでg(n)は点i, jを中心とする局所窓の中での、中心からの勾配とし、nはその通し番号とし、１つの局所窓内で計算される勾配の総数をNとする。二次元画像の場合、Gradは、各点に対して方向を持つベクトルを与える。
【００４６】
次に各点に定義されたグラディエント情報と、与えられたシード点情報を元に、領域を構成する。このときシード点はユーザが与えるものとするが、例えば予め定められた数のシード点をランダムに配置する方法などを採ってもよい。
【００４７】
ここでシード点の数をMとし、シード点mから成長した領域R(m)の隣接画素の集合をAdj_R(m)、隣接画素の総数をAとする。また、各シード点から輪郭各点までのグラディエント和Sum_Gradが最小となるパスをpに沿って以下のように計算する。関数MINは引数の最小値を返すものである。
【００４８】
For m=0, m<M
For a=0, a<A
Sum_Grad(m, a) += MIN(Adj_Rm(m)(a))
【００４９】
この指標は、各シード点に対して隣接画素の数A個計算される。この方法で各シード点から領域成長を続ける。領域成長の終了条件は、他のシード点からの領域との接触であり、上記のグラディエント和を計算する過程で、単一の画素が複数のシード点からのパスに乗ったことを条件にして終了させることができる（Ｓ１０９、Ｓ１１０）。なお、図示を省略したが、領域分割処理済みの画像データは途中生成画像としてリポジトリ３５に保存される。
【００５０】
《領域統合処理の詳細》
図７は領域統合処理（Ｓ１６）の詳細な機能ブロックであり、図８はその機能ブロックに対応するシーケンス図である。図７は、図３の領域統合部３６及びリポジトリ３５に対応するものであり、処理制御部５１、色空間変換部５２、平均色計算部５３、統合クライテリア評価部５４、領域統合部５５、及びリポジトリ３５からなる。
【００５１】
図８に示すように、色空間変換部５２は処理制御部５１からの色空間変換指示（Ｓ２０１）を受けると、リポジトリ３５から領域分割済みの画像を検索・取得して入力画像とし（Ｓ２０２〜Ｓ２０４）、Lab色空間への色空間変換を行う（Ｓ２０５）。次いでLab色空間の入力画像を用いて領域統合を行い、統合結果を処理制御部５１に渡す（Ｓ２０６〜Ｓ２１４）。
【００５２】
この領域統合には様々な方法が利用できるが、代表的なものとしてスプリット・アンド・マージアルゴリズムの統合部分（マージ処理段）を用いることとする。スプリット・アンド・マージアルゴリズムのマージ処理段では、予め定められた統合指標を各領域に対して計算し、指標が近い近接領域を統合していくこと（この条件を統合クライテリアと呼ぶ）で過分割状態を緩和する。この統合クライテリアは自由に設定可能であるが、計算が収束するように統合の終了条件を設定する必要がある。
【００５３】
本実施形態では、統合指標として領域の平均色を利用し、近接領域間の統合指標の差が予め定められた閾値THを下回る場合にはこれらの領域を統合する。平均色の差異を人間の知覚と近づけるために、平均色計算はLab色空間で行う。RGB色空間からLab色空間への変換（Ｓ２０５）は例えば「http://image-d.isp.jp/commentary/color_cformula/Lab.html」にある変換式を用いて計算することができる。
【００５４】
領域mのLab色空間における平均色をE(m)、領域mに属する画素の集合をS(m)とすると、各領域の平均色E(m)は、
For m=0, m<M
E(m) = Avg(S(m))
と表せる（Ｓ２０７）。
【００５５】
領域mに隣接する領域の集合をNeighbor(n)、領域mの隣接領域の総数をNとすると、
For m=0, m<M
For n=0, n<N
If (Diff (E(m)-Neighbor(n))<T)
Neighbor(n)を領域mに統合する（Ｓ２１０、Ｓ２１１）。ここで条件判定は統合クライテリア評価部５４が行い、統合は領域統合部５５が行う。
【００５６】
各領域に領域番号を振り、領域に属する画素の属性の一つとして領域番号を保持することで、各画素の領域番号を修正することで上記統合過程を効率的に行うことができる。
【００５７】
図４の説明に戻る。領域統合処理された画像は、ＲＯＩ候補領域抽出部２３によりリポジトリ３５に途中生成画像として保存され（Ｓ１７、Ｓ１８）、保存の終了がリポジトリ３５からＲＯＩ候補領域抽出部２３に通知され（Ｓ１９）、ＲＯＩ候補領域抽出処理の終了がＲＯＩ候補領域抽出部２３からユーザインタフェース３１に通知される（Ｓ２０）。
【００５８】
次にユーザインタフェース３１に対する指示（Ｓ２１）に応じて、制御点生成部２４がリポジトリ３５から、ＲＯＩ候補領域抽出部２３により保存された途中生成画像を検索して取得する（Ｓ２２〜Ｓ２４）。次いで、取得した途中生成画像に対して、順次、輪郭抽出処理（Ｓ２５）、サンプリング処理（Ｓ２６）を施して制御点を生成する。そして、生成した制御点データをリポジトリ３５に保存し、保存の完了をリポジトリ３５が制御点生成部２４に通知し（Ｓ２９）、制御点生成処理の終了を制御点生成部２４がユーザインタフェース３１に通知する（Ｓ３０）。
【００５９】
《制御点生成処理の詳細》
図９は制御点生成処理（Ｓ２５、Ｓ２６）の詳細な機能ブロックであり、図１０はその機能ブロックに対応するシーケンス図である。図９は、図３の輪郭抽出部３７、サンプリング部３８及びリポジトリ３５に対応するものであり、処理制御部６１、境界抽出部６２、サンプリング６３、及びリポジトリ３５からなる。
【００６０】
図１０に示すように、まず処理制御部６１はリポジトリ３５からＲＯＩ候補領域抽出部２３により保存された途中生成画像を検索し、取得して入力画像とする（Ｓ３０１〜Ｓ３０３）。
【００６１】
次いで境界抽出部６２が処理制御部６１の指示に基づいて、ＲＯＩ候補領域の境界抽出を行い、境界情報を処理制御部６１に渡す（Ｓ３０４〜Ｓ３０６）。最後にサンプリング部６３が処理制御部６１の指示に基づいて、境界情報のサンプリングを行って制御点を生成し、制御点情報を処理制御部６１に渡す（Ｓ３０７〜Ｓ３０９）。ここでＳ３０４〜Ｓ３０９はＲＯＩ候補領域の数だけ反復する。
【００６２】
また、Ｓ３０７のサンプリングでは、等間隔サンプリング、不等間隔サンプリングのどちらかを行うように、予めユーザインタフェース３１から設定することができる。
【００６３】
各ＲＯＩ候補領域の境界情報（輪郭についての点群情報）のデータ構造例を下記の表１に示す。ここで、Ｘ座標位置、Ｙ座標位置は、各ＲＯＩ候補領域の輪郭である連続線を横方向（Ｘ軸方向）、縦方向（Ｙ軸方向）に所定の間隔でサンプリングした点、換言すれば、ＲＯＩ候補領域の輪郭に格子を重ねたときの輪郭上の格子点の座標である。
【００６４】
【表１】
2012064043.tif 000003
【００６５】
等間隔サンプリングの場合には、上記データの内、点列を等間隔にサンプリングすることで結果が得られる。この場合最終的に得られる輪郭上の点情報がそのまま制御点情報となるため、制御点のデータ構造も表１に準ずるものとする。
【００６６】
次に不等間隔サンプリングであるが、サンプリングを不等間隔にする理由は前記のとおりオブジェクトの複雑さに従い、変化の少ない部分には少ない制御点を、変化の多い部分には多くの制御点を割り当てるためである。
【００６７】
不等間隔サンプリングの一例として、以下の様なサンプリング方法を用いる。
点列情報が表１のように与えられた場合、各点における変化量は微分値（線微分）を用いて表すことができる。ここで、隣り合う２個の点の間のＸ座標位置の変化がΔＸ、Ｙ座標位置の変化がΔＹの場合、
√｛（ΔＸ）２＋（ΔＹ）２｝
により微分値を算出する。つまり、差分により近似する。
【００６８】
次に輪郭に沿った微分値の加重移動平均を求める。この加重移動平均を求めるための局所窓の大きさは予め与えておく。加重移動平均値の算出に用いる関数の一例を図１１に示す。この例は、ターゲット点（ターゲット（処理対象）となるデータ点）からの距離に応じて加重がリニアに減少する関数である。
【００６９】
通常の平均と異なり、加重移動平均はターゲット点からの距離に従い重み付け係数が減少するため、遠方のデータ点からの影響を小さく抑えることができる。これにより、ＲＯＩ候補領域の輪郭の微分値の平均を計算するための局所窓外周部に、微分値の大きな点が入ってきた瞬間の平均値の急激な増大を防ぎ、より実際的な微分平均値の算出が可能となる。
【００７０】
この加重移動平均Avg_dが予め定められた閾値TH1を上回る場合には、その点をサンプリングして制御点とする。このためのデータ構造例を表２に示す。THは予め与えられた固定値を用いてもよいし、TH1をパラメタとして変化させ、制御点の数が一定になるまでTH1を降下させ、サンプリング処理を繰り返すことで、予め定められた制御点数を満たすサンプリング結果を得ることもできる。
【００７１】
【表２】
2012064043.tif 000004
【００７２】
以上説明した不等間隔サンプリングの一例のフローを図１２に示す。
図示のように、ＲＯＩ候補領域の境界情報の一点を輪郭開始地点（最初のターゲット点）とし（ＳＴ１）、そのターゲット点における輪郭上の微分値を計算する（ＳＴ２）。
【００７３】
次いでターゲット点における微分値加重移動平均値を計算し（ＳＴ３）、計算結果が閾値TH1を上回るか否かを判断する（ＳＴ４）。そして、上回ると判断した場合は（ＳＴ４：Yes）、そのターゲット点を制御点に指定し（ＳＴ５）、上回らないと判断した場合は（ＳＴ４：No）、そのターゲット点を制御点に指定しない（ＳＴ６）。
【００７４】
輪郭を一周するまでターゲット点を移して（ＳＴ７：No→ＳＴ８）、ＳＴ２〜ＳＴ６を反復し、輪郭を一周したら（ＳＴ７：Yes）、ターゲット点を次の輪郭に移す（ＳＴ１０）。全ての輪郭の処理を終了するまで輪郭毎に上記のステップを実行し（ＳＴ９：No→ＳＴ１０）、全ての輪郭の処理を終了したら（ＳＴ９：Yes）、この図の処理を終了させる。
以上の処理により、輪郭曲線の複雑さに適応した制御点を生成することができる。
【００７５】
［第２の実施形態］
〈実施形態全体の概要〉
本実施形態におけるシステム構成は第１の実施形態と同様である。即ち、第１の実施形態の図１、図２は本実施形態と共通である。また、本実施形態の画像処理装置の機能ブロック、そのコンポーネントレベルの振る舞いは、それぞれ図３、図４と同様である。
【００７６】
本実施形態は、入力画像中の複数の輪郭を検出し、各輪郭に対して最適な制御点の配置を行うためのシステムである。本実施形態では、ＲＯＩ候補領域抽出部をスプリット・アンド・マージアルゴリズム（領域分割統合法）を用いて行う。スプリット・アンド・マージアルゴリズムは、最終的に少数の領域のみを与える方式であるため、これらの領域からオブジェクトとして抽出するべき領域を選択する処理が別途必要になる。
【００７７】
スプリット・アンド・マージアルゴリズムは周知であるから、ここでは概略のみを説明する。スプリット・アンド・マージアルゴリズムは、領域の分割を行うスプリット処理段と、統合を行うマージ処理段からなる。
【００７８】
スプリット処理段では、予め定められた指標に基づき、領域を再帰的に分割する。殆どの場合この処理段での分割は過分割（最終的な分割結果よりも過度に領域が分割されている状態）となる。再帰的分割処理を停止する条件としては、ターゲット領域内部の均一性指標の閾値処理によることが多い。また均一でないと判定された領域の分割方式に関しても多くの研究があるが、殆どの例では単純な分割方法で十分であり、４分割で実装している例が多い。
【００７９】
スプリット処理段で過分割された領域情報を元に、マージ処理段では領域の統合を行い、最終的な領域分割結果を得る。マージ処理段はスプリット処理段に比べ技術的な難易度が高いが、処理全体の性能の決定要因となる重要な処理段である。一般的にはスプリット処理段と同じく、均一性指標を用いて隣接領域の統合を行う。
【００８０】
例えば領域の平均色を均一性尺度とし、平均色間の差異の大小により領域の統合を決める方式の場合、例えばターゲット領域の隣接領域を平均色の順にスタックにため、スタック上位の隣接領域から順にターゲット領域との統合の可否を判定することで領域の統合を行うことができる。この方式の場合画像内のどの領域からマージ処理を開始するかで結果が異なる場合があるが、例えば画像左上から処理を開始すると予め決めておくことで、処理の一貫性を保つことができる。
【００８１】
最も単純な方法は、画像中心に抽出するべきオブジェクトが存在すると仮定し、中心からの距離が最も小さい領域をＲＯＩ候補領域とする方法である。他にも抽出すべきオブジェクトが決まっている場合には、類似画像領域検索機能を利用することで、大まかなＲＯＩ候補領域を抽出することが可能である。
【００８２】
〈制御点生成処理の詳細〉
抽出したＲＯＩ候補領域から第１の実施形態と同様に境界情報を抽出し、次いで境界情報をサンプリングして制御点を生成する。本実施形態では、画像内の複数の輪郭に対してそれぞれ最適な等間隔サンプリングのための間隔を与えるために、まず各輪郭に対して、輪郭形状の微分値の平均avg_dと標準偏差std_dを指標として求める。
【００８３】
そのため、サンプリング間隔とこれらの指標との関係を予め実験により導出しておく。今回の場合、指標が２つあるため、表３のように２次元の表として、サンプリング間隔を定義することができる。同様に３つ以上の指標を用いる場合にも、対応した次元の表を作成することで対応できる。avg_d及びstd_dはそれぞれ0から100の間の値に正規化されている。
【００８４】
【表３】
2012064043.tif 000005
【００８５】
より簡単にサンプリング間隔を決めるために、与えられた複数の指標を統合する評価式を設定することもできる。これは上記の例で、微分値の平均をavg_d、微分値の標準偏差をstd_dとして、評価式Ｃを以下の式１のように両者の線形結合として構成するものである。ここでα及びβは線形結合のための係数であり、予め定めておく。
【００８６】
Ｃ＝α・avg_d＋β・std_d      ・・・（式１）
【００８７】
ここで、avg_dとstd_dを比較した場合、avg_dの方が支配的であるため、上記の評価式を以下の式２のようにavg_dのみで構成することもできる。
【００８８】
Ｃ＝α・avg_d      ・・・（式２）
【００８９】
このＣの値とサンプリング間隔との関係を予め定めておき、Ｃの値に従い間隔を選択する。このような方法は、指標の数が増えた場合にも利用できる。
【００９０】
以上説明した等間隔サンプリングによる制御点生成処理のフローを図１３に示す。
図示のように、ＲＯＩ候補領域の境界情報の一点を輪郭開始地点（最初のターゲット点）とし（ステップＳＴ１０１）、そのターゲット点における輪郭上の微分値を計算する（ＳＴ１０２）。
【００９１】
輪郭を一周するまでターゲット点を移して（ＳＴ１０３：No→ＳＴ１０４）、ＳＴ１０２を反復し、輪郭を一周したら（ＳＴ１０３：Yes）、ターゲット輪郭全体の微分値の平均値avg_dを算出し（ＳＴ１０５）、さらにターゲット輪郭全体の微分値の標準偏差値std_dを算出する（ＳＴ１０６）。次に平均値avg_d及び標準偏差値std_d、並びに表３を基に等間隔サンプリングの間隔を決定する。
【００９２】
全ての輪郭の処理を終了するまで処理対象の輪郭を移して（ＳＴ１０８：No→ＳＴ１０９）、輪郭毎に上記のステップを実行し、全ての輪郭の処理を終了したら（ＳＴ１０８：Yes）、この図の処理を終了させる。
【００９３】
以上の処理により、画像内の各ＲＯＩ候補領域の輪郭に対して、それぞれの微分値の平均値及び標準偏差値を基に最適な等間隔サンプリングのための間隔を与え、最適な制御点を生成することができる。
【００９４】
［第３の実施形態］
本実施形態は、サンプリング間隔の決定処理以外は第２の実施形態と同じであるため、サンプリング間隔の決定処理についてのみ説明する。
【００９５】
本実施形態の画像処理装置は、画像内の各輪郭それぞれに対して、等間隔サンプリングを行うか、不等間隔サンプリングを行うかを決定する前処理を持つことが特徴である。この前処理では、第２の実施形態と同様に各輪郭から指標を算出する。ここでは指標として微分値の標準偏差値std_dを用いた。予め指標と上記判断との間の関係を定めておくことで、各輪郭に対して等間隔サンプリングを用いるか、不等間隔サンプリングを用いるかの判断を行うことができる。複数の指標を用いる場合には、第２の実施形態のように評価式を構成して対応することができる。本実施形態では例えば以下のような判別式で簡単に実装することができる。ここでTH2は予め定められた閾値である。
【００９６】
If (std_d >TH2) {不等間隔サンプリングを用いる}
If (std_d <=TH2) {等間隔サンプリングを用いる}
実際の等間隔サンプリング及び不等間隔サンプリングには、第１の実施形態における方法（図９〜図１２）を用いることができる。
【００９７】
以上説明した等間隔サンプリング又は不等間隔サンプリングを選択して行う処理のフローを図１４に示す。
図示のように、ＲＯＩ候補領域の境界情報の一点を輪郭開始地点（最初のターゲット点）とし（ステップＳＴ２０１）、そのターゲット点における輪郭上の微分値を計算する（ＳＴ２０２）。
【００９８】
輪郭を一周するまでターゲット点を移して（ＳＴ２０３：No→ＳＴ２０４）、ＳＴ２０２を反復し、輪郭を一周したら（ＳＴ２０３：Yes）、ターゲット輪郭全体の微分値の平均値avg_dを算出する（ＳＴ２０５）。
【００９９】
次に平均値avg_dが閾値TH2を上回るか否かを判断する(ＳＴ２０６)。そして、上回ると判断した場合は（ＳＴ２０６：Yes）、そのＲＯＩ候補領域のターゲット輪郭を不等間隔にサンプリングし（ＳＴ２０７）、上回らないと判断した場合は（ＳＴ２０６：No）、等間隔にサンプリングする（ＳＴ２０８）。
【０１００】
全ての輪郭の処理を終了するまで処理対象の輪郭を移して（ＳＴ２０９：No→ＳＴ２１０）、輪郭毎に上記のステップを実行し、全ての輪郭の処理を終了したら（ＳＴ２０９：Yes）、この図の処理を終了させる。
以上の処理により、画像内の各ＲＯＩ候補領域の輪郭に対して、複雑さが大きければ不等間隔サンプリングを施し、複雑さが小さければ等間隔サンプリングを行うことができる。
【０１０１】
なお、以上の各実施形態では、画像処理装置１が画像入力から制御点生成までの全ての画像処理を行うものとしたが、この画像処理の一部をインターネットなどのネットワーク上の画像処理サーバが実行するような画像処理システムを構成することもできる。
【符号の説明】
【０１０２】
１…画像処理装置、２１…画像処理部、２３…ＲＯＩ候補領域抽出部、２４…制御点生成部、３４，２３１…領域分割部、３６，２３２…領域統合部、３７，２４１…輪郭抽出部、３８，２４２…サンプリング部。
【先行技術文献】
【特許文献】
【０１０３】
【特許文献１】特開２００２−４９９２２号公報
【特許文献２】特許第３０７０５４１号公報
【図１】
2012064043.tif 000006
【図２】
2012064043.tif 000007
【図３】
2012064043.tif 000008
【図４】
2012064043.tif 000009
【図５】
2012064043.tif 000010
【図６】
2012064043.tif 000011
【図７】
2012064043.tif 000012
【図８】
2012064043.tif 000013
【図９】
2012064043.tif 000014
【図１０】
2012064043.tif 000015
【図１１】
2012064043.tif 000016
【図１２】
2012064043.tif 000017
【図１３】
2012064043.tif 000018
【図１４】
2012064043.tif 000019
【図１５】
2012064043.tif 000020