(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023056237
(43)【公開日】2023-04-19
(54)【発明の名称】画像処理装置及び画像処理方法
(51)【国際特許分類】
G06T 7/13 20170101AFI20230412BHJP
【FI】
G06T7/13
【審査請求】未請求
【請求項の数】12
【出願形態】OL
(21)【出願番号】P 2021165465
(22)【出願日】2021-10-07
(71)【出願人】
【識別番号】000005108
【氏名又は名称】株式会社日立製作所
(74)【代理人】
【識別番号】110001678
【氏名又は名称】藤央弁理士法人
(72)【発明者】
【氏名】藤尾 正和
(72)【発明者】
【氏名】高橋 健太
(72)【発明者】
【氏名】加賀 陽介
(72)【発明者】
【氏名】中村 渉
(72)【発明者】
【氏名】安村 慶子
【テーマコード(参考)】
5L096
【Fターム(参考)】
5L096AA02
5L096AA06
5L096DA02
5L096EA33
5L096FA06
5L096FA13
5L096FA25
5L096FA59
5L096FA64
5L096FA67
5L096FA69
5L096GA12
5L096GA32
5L096GA40
5L096GA51
5L096HA11
5L096KA04
(57)【要約】
【課題】画像から対象物の領域を適切に抽出することが可能となるモデルを生成する。
【解決手段】画像処理装置は、画像が入力されると当該画像に含まれる対象物の輪郭を、パラメトリック関数を用いて推定関数として出力し、当該パラメトリック関数のパラメータをモデルパラメータとして含む、モデルと、入力画像と、入力画像に含まれる対象物の輪郭の正解である正解輪郭を示す正解関数を示す教師データと、を保持し、入力画像をモデルに入力することで当該入力画像に含まれる対象物の輪郭の推定関数を取得し、正解関数と、取得した推定関数と、の誤差を算出し、算出した誤差が所定値より大きい場合、当該誤差が小さくなるよう、前記パラメトリック関数のパラメータを更新する。
【選択図】
図1
【特許請求の範囲】
【請求項1】
画像処理装置であって、
プロセッサとメモリとを含み、
前記メモリは、
画像が入力されると前記画像に含まれる対象物の輪郭を、パラメトリック関数を用いて推定関数として出力し、前記パラメトリック関数のパラメータをモデルパラメータとして含む、モデルと、
入力画像と、
前記入力画像に含まれる前記対象物の輪郭の正解である正解輪郭を示す正解関数を示す教師データと、を保持し、
前記プロセッサは、
前記入力画像を前記モデルに入力することで当該入力画像に含まれる対象物の輪郭の推定関数を取得し、
前記教師データが示す正解関数と、前記取得した推定関数と、の誤差を算出し、
前記算出した誤差が所定値より大きい場合、前記算出した誤差が小さくなるよう、前記パラメトリック関数のパラメータを更新する、画像処理装置。
【請求項2】
請求項1に記載の画像処理装置であって、
前記プロセッサは、前記入力画像から背景分離画像を生成し、前記生成した背景分離画像に基づいて、前記正解関数を生成して、前記メモリに格納する、画像処理装置。
【請求項3】
請求項2に記載の画像処理装置であって、
前記プロセッサは、前記背景分離画像の輪郭を、パラメータと制御点とを用いて定義される関数に変換することで、前記正解関数を生成する、画像処理装置。
【請求項4】
請求項3に記載の画像処理装置であって、
前記プロセッサは、
前記背景分離画像の輪郭を所定の方法で複数の部分輪郭に分割し、
前記分割した部分輪郭それぞれを、パラメータと制御点とによって定義される関数に変換することで、前記正解関数を生成する、画像処理装置。
【請求項5】
請求項1に記載の画像処理装置であって、
前記プロセッサは、前記正解関数と前記推定関数とに囲まれる領域の面積に基づいて、前記誤差を算出する、画像処理装置。
【請求項6】
請求項1に記載の画像処理装置であって、
前記正解関数は、パラメトリック関数であり、
前記プロセッサは、
前記正解関数と前記推定関数のパラメータをサンプリングし、
前記正解関数と前記推定関数において、前記サンプリングしたパラメータが同じ値の座標点の距離の2乗に基づいて、前記誤差を算出する、画像処理装置。
【請求項7】
請求項1に記載の画像処理装置であって、
前記プロセッサは、前記正解関数と、前記推定関数を座標変換したあとの変換後推定関数と、に囲まれる領域の面積に基づいて、前記誤差を算出する、画像処理装置。
【請求項8】
請求項1に記載の画像処理装置であって、
前記プロセッサは、前記推定関数のパラメータをサンプリングして計算した座標点を座標変換したあとの座標点と、前記正解関数のパラメータをサンプリングし計算した座標点と、の距離の2乗に基づいて、前記誤差を算出する、画像処理装置。
【請求項9】
請求項1に記載の画像処理装置であって、
前記メモリは、
属性パラメータごとに定義された、複数の前記モデルを保持し、
前記プロセッサは、
前記入力画像の属性パラメータを取得し、
前記入力画像を、前記取得した入力画像の属性パラメータに対応するモデルに入力することで当該入力画像に含まれる対象物の輪郭の推定関数を取得する、画像処理装置。
【請求項10】
請求項9に記載の画像処理装置であって、
前記属性パラメータは、前記入力画像の撮影環境を示すパラメータ、前記入力画像に含まれる対象物の色を示すパラメータ、及び前記入力画像の撮影時の照度を示すパラメータの少なくとも1つを含む、画像処理装置。
【請求項11】
請求項9に記載の画像処理装置であって、
入力装置及び表示装置に接続され、
前記プロセッサは、
前記属性パラメータの種類を前記表示装置に表示し、
前記入力装置を介して、前記表示した種類の属性パラメータの値を取得する、画像処理装置。
【請求項12】
画像処理装置による画像処理方法であって、
前記画像処理装置は、プロセッサとメモリとを含み、
前記メモリは、
画像が入力されると前記画像に含まれる対象物の輪郭を、パラメトリック関数を用いて推定関数として出力し、前記パラメトリック関数のパラメータをモデルパラメータとして含む、モデルと、
入力画像と、
前記入力画像に含まれる前記対象物の輪郭の正解である正解輪郭を示す正解関数を示す教師データと、を保持し、
前記画像処理方法は、
前記プロセッサが、前記入力画像を前記モデルに入力することで当該入力画像に含まれる対象物の輪郭の推定関数を取得し、
前記プロセッサが、前記教師データが示す正解関数と、前記取得した推定関数と、の誤差を算出し、
前記プロセッサが、前記算出した誤差が所定値より大きい場合、前記算出した誤差が小さくなるよう、前記パラメトリック関数のパラメータを更新する、画像処理方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像処理装置及び画像処理方法に関する。
【背景技術】
【0002】
本技術分野の背景技術として、特開2018-180660号公報(特許文献1)がある。この公報には、「生体認証装置は、環境光の下で指を撮影して少なくとも1つの生体画像を取得する画像入力部と、生体画像を処理する認証処理部と、指から得られる複数の生体特徴のうち少なくとも1つに関する登録情報を記憶する記憶部と、を備える。認証処理部は、記憶部にある登録情報を用い、基準となる生体画像と認証時の生体画像の代表色の色差を最小化する色変換行列を生成し、生成した色変換行列を用いて色変換した生体画像を生成しS111、特徴量抽出S112して登録情報との類似度を算出して照合を行うS113。」と記載されている(要約参照)。
【0003】
また、非特許文献1には、看板などの曲線閉領域を抽出する際に、スプライン曲線等で領域をモデル化し、その曲線パラメータを推定する方式を開示している。
【先行技術文献】
【特許文献】
【0004】
【非特許文献】
【0005】
【非特許文献1】Yuliang Liu, et. al. “ABCNet: Real-time Scene Text Spotting with Adaptive Bezier-Curve Network”,2020年2月
【発明の概要】
【発明が解決しようとする課題】
【0006】
特許文献1に記載の技術は、入力画像の各ピクセルがどのクラスに属するかを推定する必要があり、推定結果の領域形状の妥当性については考慮されていない。また、非特許文献1に記載の技術は、ピクセル単位の推定ではなく、領域境界を直接表現及び推定しているが、領域の形状の違いを推定スコアに反映することはできない。そこで、本発明の一態様は、画像から対象物の領域を適切に抽出することが可能となるモデルを生成する。
【課題を解決するための手段】
【0007】
上記課題を解決するために、本発明の一態様は以下の構成を採用する。画像処理装置は、プロセッサとメモリとを含み、前記メモリは、画像が入力されると前記画像に含まれる対象物の輪郭を、パラメトリック関数を用いて推定関数として出力し、前記パラメトリック関数のパラメータをモデルパラメータとして含む、モデルと、入力画像と、前記入力画像に含まれる前記対象物の輪郭の正解である正解輪郭を示す正解関数を示す教師データと、を保持し、前記プロセッサは、前記入力画像を前記モデルに入力することで当該入力画像に含まれる対象物の輪郭の推定関数を取得し、前記教師データが示す正解関数と、前記取得した推定関数と、の誤差を算出し、前記算出した誤差が所定値より大きい場合、前記算出した誤差が小さくなるよう、前記パラメトリック関数のパラメータを更新する。
【発明の効果】
【0008】
本発明の一態様によれば、画像から対象物の領域を適切に抽出することが可能となるモデルを生成することができる。
【0009】
上記した以外の課題、構成及び効果は、以下の実施形態の説明により明らかにされる。
【図面の簡単な説明】
【0010】
【
図1】実施例1における画像処理システムの構成例を示すブロック図である。
【
図2】実施例1における画像処理システムが背景分離画像をパラメトリック曲線に変換する処理の一例を示すフローチャートである。
【
図3】実施例1における画像処理システムによる訓練フェーズの一例を示すフローチャートである。
【
図4】実施例1における輪郭曲線の一部を表現するパラメトリック曲線の一例である。
【
図5】実施例1における輪郭追跡処理、連結成分抽出処理、及び曲線分割処理の一例を示す説明図である。
【
図6】実施例1における輪郭追跡処理、連結成分抽出処理、及び曲線分割処理の別例を示す説明図である。
【
図7】実施例1における推定輪郭曲線と正解輪郭曲線の誤差の計算方法の一例を示す説明図である。
【
図8】実施例1における曲線誤差計算処理の一例を示すフローチャートである。
【
図9】実施例1における推定輪郭曲線と正解輪郭曲線の誤差の計算方法の別例を示す説明図である。
【
図10】実施例1における曲線誤差計算処理の別例を示すフローチャートである。
【
図11】実施例1における情報処理装置の表示装置に表示される属性パラメータ入力画面の一例である。
【
図12】実施例1における推定輪郭曲線と正解輪郭曲線の誤差の計算方法の別例を示す説明図である。
【
図13】実施例1における曲線誤差計算処理の一例を示すフローチャートである。
【発明を実施するための形態】
【0011】
以下、添付図面を参照して本発明の実施形態を説明する。本実施形態は本発明を実現するための一例に過ぎず、本発明の技術的範囲を限定するものではないことに注意すべきである。
【実施例0012】
図1は、画像処理システム10の構成例を示すブロック図である。画像処理システム10は、車、人、又は看板の他、顔、指、又は手のひらのような対象が撮影された画像から、検知対象物を抽出する。画像処理システム10は、互いにインターネット等のネットワーク4で接続された撮像装置2、情報処理装置3、及びサーバ5を含む。撮像装置2は、例えば、情報処理装置3に備え付けられていてもよい。なお、
図1の例では、画像処理システム10は、1つの情報処理装置3を含んでいるが複数の情報処理装置3を含んでもよい。
【0013】
画像処理システム10において、撮像装置2で撮影された静止画又は動画が情報処理装置3に入力され、情報処理装置3は動画処理、撮影画像中の曲線パラメータ抽出、及び輪郭再現を含む一連の処理を行う。情報処理装置3とサーバ5は、ネットワーク4を介して、訓練用データ、練後モデル、及び訓練中のパラメータの送受信に関する処理を行う。情報処理装置3は、撮影が成功したか、及び物体の提示方法に関するガイドを、例えば、情報処理装置3が有する表示装置36に表示してもよい。
【0014】
情報処理装置3は、例えば、CPU31、メモリ32、補助記憶装置33、通信装置34、入力装置35、及び表示装置36を含む計算機によって構成される。CPU31は、プロセッサを含み、メモリ32に格納されたプログラムを実行する。
【0015】
メモリ32は、不揮発性の記憶素子であるROM(Read Only Memory)及び揮発性の記憶素子であるRAM(Random Access Memory)を含む。ROMは、不変のプログラム(例えば、BIOS(Basic Input/Output System))などを格納する。RAMは、DRAM(Dynamic Random Access Memory)のような高速かつ揮発性の記憶素子であり、CPU31が実行するプログラム及びプログラムの実行時に使用されるデータを一時的に格納する。
【0016】
補助記憶装置33は、例えば、磁気記憶装置(HDD(Hard Disk Drive))、フラッシュメモリ(SSD(Solid State Drive))等の大容量かつ不揮発性の記憶装置であり、CPU31が実行するプログラム及びプログラムの実行時に使用されるデータを格納する。すなわち、プログラムは、補助記憶装置33から読み出されて、メモリ32にロードされて、CPU31によって実行される。
【0017】
なお、本実施形態において、画像処理システム10が使用する情報は、データ構造に依存せずどのようなデータ構造で表現されていてもよい。例えば、テーブル、リスト、データベース、又はキューから適切に選択したデータ構造体が、情報を格納することができる。
【0018】
入力装置35は、キーボードやマウスなどの、オペレータからの入力を受ける装置である。表示装置36は、ディスプレイ装置やプリンタなどの、プログラムの実行結果をオペレータが視認可能な形式で出力する装置である。また、情報処理装置3は、撮像装置2から動画の入力を受け付けるための入力インターフェースを有してもよいし、ネットワーク4を介して撮像装置2から動画を受信してもよい。通信装置34は、所定のプロトコルに従って、他の装置との通信を制御するネットワークインターフェース装置である。
【0019】
CPU31が実行するプログラムは、非一時的な記憶装置を備えた他の情報処理装置から、非一時的な記憶媒体であるリムーバブルメディア(CD-ROM、フラッシュメモリなど)を介して又はネットワーク4を介して、情報処理装置3に提供され、非一時的記憶媒体である不揮発性の補助記憶装置33に格納されてもよい。このため、情報処理装置3は、リムーバブルメディアからデータを読み込むインターフェースを有するとよい。これは、サーバ5についても同様である。
【0020】
情報処理装置3は、物理的に一つの計算機上で、又は、論理的又は物理的に構成された複数の計算機上で構成される計算機システムであり、同一の計算機上で別個のスレッドで動作してもよく、複数の物理的計算機資源上に構築された仮想計算機上で動作してもよい。これは、サーバ5についても同様である。
【0021】
CPU31は、例えば、動画入力部320、動画処理部321、物体検出部322を含む。動画入力部320は、撮像装置2から動画の入力を受け付ける。動画入力部320は、情報処理装置3の一例であるモバイル端末やノート型PC(Personal Computer)に予め搭載されている機能部であってもよい。
【0022】
動画処理部321は、動画入力部320が入力を受け付けた動画を複数の静止画へと変換する。物体検出部322は、対象物検知部323及び輪郭再現部324を含む。対象物検知部323は、各静止画から検知対象物を検知して抽出する。輪郭再現部324は、曲線のパラメータに基づいて、対象領域の輪郭線を再現する。
【0023】
例えば、CPU31は、メモリ32にロードされた動画入力プログラムに従って動作することで、動画入力部320として機能し、メモリ32にロードされた動画処理プログラムに従って動作することで、動画処理部321として機能する。CPU31に含まれる他の機能部についても、プログラムと機能部の関係は同様である。また、サーバ5が有するCPU51に含まれる後述する機能部についても、プログラムと機能部の関係は同様である。
【0024】
なお、CPU31及びCPU51に含まれる機能部による機能の一部又は全部が、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field-Programmable Gate Array)等のハードウェアによって実現されてもよい。
【0025】
補助記憶装置33は、訓練後モデル328及び訓練用データ330を保持する。訓練後モデル328は、検知対象物が含まれる画像が入力されると当該対象物の輪郭が出力されるモデルであって、訓練が実行された後のモデルである。訓練用データ330は、当該モデルの訓練に用いられるデータであり、検知対象物が含まれる画像と、検知対象物の領域を示す情報と、が紐付けられた情報を含む。
【0026】
サーバ5は、例えば、CPU51、メモリ52、補助記憶装置53、通信装置54、入力装置55、及び表示装置56を含む計算機によって構成される。CPU51、メモリ52、補助記憶装置53、通信装置54、入力装置55、及び表示装置56それぞれのハードウェアとしての説明は、CPU31、メモリ32、補助記憶装置33、通信装置34、入力装置35、及び表示装置36それぞれのハードウェアとしての説明と同様であるため、省略する。
【0027】
CPU51は、訓練部151及びデータ配信部155を含む。訓練部151は、訓練用データ161を用いてモデルの訓練を行うことで訓練後モデル162を生成する。また、訓練部151は、輪郭曲線パラメータ抽出部152、回帰推定訓練部153、及び曲線誤差計算部154を含む。
【0028】
輪郭曲線パラメータ抽出部152は、訓練用データ161の教師データを生成する。一つの入力画像から生成される教師データは、2次元の背景分離画像の輪郭を表現するパラメトリック曲線を示す有限個のベクトル値(制御点座標)に圧縮表現されたものである。
【0029】
背景分離画像は、例えば、入力画像から抽出された対象物領域と、対象物領域から分離された背景画像と、を含む。例えば、背景分離画像は2値画像であって、対象物領域と背景領域とは2値で分離されている。
【0030】
例えば、対象物領域の各画素に1が与えられ、背景領域の各画素に0が与えられる。この背景分離画像から生成される教師データは、例えばベジェ曲線、スプライン曲線、線形補間、及び多項式表現などで表現される場合、パラメトリック曲線を表す有限個のベクトル値で圧縮表現することが可能となる。輪郭曲線パラメータ抽出部152は、背景分離画像を、パラメトリック曲線を表す有限個のベクトル値に変換する。
【0031】
回帰推定訓練部153は、モデルの訓練フェーズにおいて、訓練用データ161を使用してモデルを訓練する。回帰推定訓練部153は、入力画像の対象物領域と背景領域とを教師データとして入力し、パラメトリック曲線を表す有限個のベクトル値を生成するモデルを訓練する。
【0032】
また、一般に画像から対象物領域を推定する方式では、照度、照明環境、及び対象物のデフォルト色(例えば、生体情報の場合人種による色の違いなど)に依存して、認証率の劣化が起こりうる。このため、当該モデルの入力データは、画像以外にも照度、照明色、及び対象物のデフォルト色等を属性パラメータとして含んでもよい。
【0033】
訓練時に属性パラメータが追加された場合、輪郭曲線パラメータ抽出部152は属性パラメータを入力して推定を行う、または、輪郭曲線パラメータ抽出部152は、属性パラメータの値ごと(複数種類の属性パラメータが与えられている場合には、当該複数種類の属性パラメータの値の組み合わせごと)に異なる訓練対象のモデルを学習し、ユーザから入力及び選択された属性パラメータの値に従って訓練対象のモデルを切り替えてもよい。
【0034】
曲線誤差計算部154は、訓練フェーズにおいて、推定された曲線と正解曲線との誤差を数値化し、誤差情報として回帰推定訓練部153にフィードバックする。データ配信部155は、訓練後モデル162を情報処理装置3に対して配信する。データ配信部155は、情報処理装置3から配信要求を受信したときに、訓練後モデル162を当該情報処理装置3に配信してもよい。
【0035】
なお、
図1の構成例に限らず、CPU31及びCPU51の一方に含まれる機能部による処理が、他方によって実行されてもよいし、双方で分散して実行されてもよい。また、情報処理装置3とサーバ5が一体化していてもよい。
【0036】
補助記憶装置53は、訓練用データ161及び訓練後モデル162を保持する。訓練用データ161は、訓練後モデル162の訓練に用いられるデータであり、入力画像と輪郭曲線パラメータ抽出部152により生成される教師データとのセットと、が紐付けられた情報を含む。訓練用データ161は、情報処理装置3から収集したデータを含む。訓練用データ161の収集対象の情報処理装置3は一つに限らず複数の情報処理装置3であってもよい。訓練後モデル162は、検知対象物が含まれる画像が入力されると当該対象物の輪郭が出力されるモデルであって、訓練が実行された後のモデルである。
【0037】
図2は、画像処理システム10が、背景分離画像を、パラメータtを媒介変数に持ち、有限個のベクトル値で定義されるパラメトリック曲線(例えば、ベジェ曲線、スプライン曲線、線形補間、又は多項式表現等)に変換する処理の一例を示すフローチャートである。
【0038】
背景分離画像は、入力画像から抽出された対象物領域と、対象物領域から分離された背景画像と、を含む。例えば、背景分離画像は2値画像であって、当該背景分離画像の対象物領域と背景領域とは2値で分離されている(例えば、対象物領域の各画素に1が与えられ、背景領域の各画素に0が与えられる)。本実施例における背景分離処理の対象画像は、検知対象物が撮像された可視光画像である。以下、背景分離処理の対象画像に含まれる検知対象物が、複数の手指である例を説明する。
【0039】
図2の処理が開始する前に、動画入力部320は手指が撮影された動画を撮像装置2から受信し、動画処理部321が当該動画を複数の静止画に切り出し、対象物検知部323は当該複数の静止画を用いて背景と検知対象物とを分離することで背景分離画像を生成し、生成した背景分離画像をサーバ5に送信しているものとする。
【0040】
ステップS201において、輪郭曲線パラメータ抽出部152は、背景分離画像に対して輪郭追跡を行う。一般的に、輪郭追跡の結果は、曲線上の連続する座標点系列として表現される。ステップS202において、輪郭曲線パラメータ抽出部152は、輪郭線を分割することで1以上の連結成分を抽出する。但し、輪郭線が抽出された段階で輪郭線が連結成分ごとに分かれている場合もあり、この場合、ステップS202の処理が実行されなくてもよい。
【0041】
輪郭線は閉曲線であるため、ステップS203において、輪郭曲線パラメータ抽出部152は、抽出した連結成分のうち未選択の連結成分を1つ選択し、選択した連結成分を、曲線で近似可能な部分曲線に分割する。
【0042】
ステップS204において、輪郭曲線パラメータ抽出部152は、分割された部分曲線それぞれを、パラメトリック曲線で近似する。ステップS204の近似処理の一例については
図4並びに(式1)及び(式2)を用いて後述する。
【0043】
ステップS205において、輪郭曲線パラメータ抽出部152は、ステップS204で近似した曲線のパラメータを抽出する。ステップ206において、輪郭曲線パラメータ抽出部152は、全ての連結成分について曲線パラメータを抽出したかを判定する。
【0044】
輪郭曲線パラメータ抽出部152は、曲線パラメータを抽出していない連結成分があると判定した場合(S206:NO)、ステップS203の処理に戻る。輪郭曲線パラメータ抽出部152は、全ての連結成分について曲線パラメータを抽出したと判定した場合(S206:YES)、ステップS207において、抽出した曲線パラメータの集合と入力画像のペアと、を含む教師データを、訓練用データ161の一要素として格納する。また、輪郭曲線パラメータ抽出部152は、当該教師データを情報処理装置3に送信して、訓練用データ330に格納してもよい。
【0045】
以上により、画像処理システム10は、指形状の事前知識を反映した指領域推定が可能となる訓練後モデル162を生成することができる。また、画像処理システム10は、指領域が接触している場合などに正しく指領域を分離して抽出することが可能となる訓練後モデル162を生成することができる。
【0046】
図3は、画像処理システム10による訓練フェーズの一例を示すフローチャートである。訓練フェーズにおいて、画像処理システム10は、RGBやYUVなどの色空間情報の値の範囲に基づいて、動画フレーム画像の対象物領域と背景領域とを分離し、教師あり学習で使用するための訓練用データ161を生成する。さらに、画像処理システム10は、生成した訓練用データ161を使用して機械学習モデル(訓練後モデル162)を訓練(生成)する。推定処理において、画像処理システム10は、生成した機械学習モデルを用いて、動画フレーム画像から対象物領域を抽出する。
【0047】
ステップS300において、情報処理装置3は、例えば入力装置35を介して、訓練部151が用いる、検知対象物が撮影されている処理対象画像(
図2の処理が開始する前に取得されている背景分離画像を生成するために用いられた元の画像)及び属性パラメータの入力を受け付け、サーバ5に送信する。一般に画像から対象物領域を推定する方式において、照度や照明環境、対象物のデフォルト色(例えば、生体情報が対象物である場合、人種による色の違いなど)に依存して認証率の劣化が起こりうる。このため、入力データとして処理対象画像以外にも照度、照明色、及び対象物のデフォルト色等が属性パラメータに含まれてもよい。
【0048】
ステップS301において、対象物検知部323は、処理対象画像から抽出対象が写った一定サイズの部分領域を切り出す。対象物検知部323は、例えば、画面上に手をかざす位置を示すガイド等を情報処理装置3の表示装置36に表示して、入力装置35を介した入力に従って切り出す部分領域の位置を予め設定してもよいし、入力装置オブジェクト検知技術を用いて検知対象物の外接矩形領域を検出してもよい。なお、対象物検知部323は、切り出した画像を、サーバ5に送信して、訓練用データ161に格納する。
【0049】
ステップS302において、訓練部151は、ステップS301における検知対象物に対応する背景分離画像(
図2の処理が開始する前に取得されている背景分離画像)を取得する。訓練部151は、入力装置55を介して予め人手によって当該背景分離画像を取得してもよいし、既存手法によって自動的に背景分離画像を抽出してもよい。例えば、訓練部151は、切り出した部分領域からRGBやYUVなどの色空間情報(例えば、肌の色等の属性パラメータ)に基づき、対象物領域と背景領域とを分離し、背景分離画像を取得する。
【0050】
ステップS303において、輪郭曲線パラメータ抽出部152は、
図2で説明した処理に従って、抽出対象領域ごとに曲線パラメータを抽出し、訓練用データ161の一部として格納する。ステップS304において、訓練部151は、訓練データのサンプル数が所定数nに達したかを判定する。訓練部151は、訓練データのサンプル数が所定数nに達していないと判定した場合(S304:NO)、ステップS301に戻る。訓練部151は、訓練データのサンプル数が所定数nに達したと判定した場合(S304:YES)、ステップS305に遷移する。
【0051】
次に、ステップS305~ステップS311において、回帰推定訓練部153は、蓄積した訓練用データ161を用いて、検知対象物を含む画像を入力とし、曲線パラメータを出力する推定モデルを訓練する。
【0052】
まずステップS305において、画像処理システム10は、ステップS300の処理と同様に、入力データとして処理対象画像に加えて照度、照明色、対象物のデフォルト色等を属性パラメータとして取得する。
【0053】
ステップS306において、回帰推定訓練部153は、現時点の訓練中モデル163(訓練初回時は、ランダムな値で推定モデルのモデルパラメータを初期化しておく。また訓練中モデル163はメモリ52に一時的に格納されている)を用いて、曲線パラメータを推定するステップS307において、回帰推定訓練部153は、推定パラメータを用いて曲線パラメータを推定する。輪郭再現部156は推定パラメータを用いて輪郭曲線を再現する。
【0054】
ステップS308において、曲線誤差計算部154は、再現した輪郭曲線である推定輪郭曲線と、訓練用データ161に格納された正解輪郭曲線(教師データに含まれる曲線パラメータで与えられる輪郭曲線)と、の誤差(以降、曲線誤差と呼ぶ)を計算する。曲線誤差計算の具体例については
図7及び
図9を用いて後述する。
【0055】
ステップS309において、回帰推定訓練部153は、曲線誤差が所定閾値δ未満であるかを判定する。回帰推定訓練部153は、曲線誤差が所定閾値δ以上であると判定した場合(S309:NO)、ステップS310において、誤差が少なくなる方向に訓練中モデル163内のモデルパラメータを更新し、ステップS306に戻る。回帰推定訓練部153によるモデルパラメータの修正方法は当該モデルの機械学習手法に依存するが、例えば、深層学習モデルが用いられている場合、確率的勾配降下法(SGD)を用いてモデルパラメータを修正することができる。
【0056】
回帰推定訓練部153は、曲線誤差が所定閾値δ未満であると判定した場合(S309:YES)、訓練フェーズを終了し、ステップS311において訓練中モデル163を訓練後モデル162として保存する。
【0057】
図3の処理により、画像処理システム10は、指形状事前知識を反映した指領域推定が可能であって、指領域が接触している場合などに正しく指領域を分離して抽出することが可能である、訓練後モデル162を生成することができる。また、画像処理システム10は、例えば、入力画像から指領域を抽出する場合、輪郭線領域を抽出するものの輪郭線領域の内側の画素が背景か否かを推定することはなく、少ない計算量で効率的に対象物領域を抽出することができる。
【0058】
図4は、輪郭曲線の一部を表現するパラメトリック曲線の一例である。パラメータtを媒介変数として用いたパラメトリック曲線は、例えば、n個の制御点に基づき曲線を描画する(式1)により定義される。(式1)において、パラメータtの値が0から1まで変化する時、制御点P
0とP
n-1を両端とするパラメトリック曲線が得られる。P
0~P
n-1は、それぞれx座標とy座標の座標点で表される。
【0059】
【0060】
(式1)はパラメータtのサンプリング数をkとした場合、n個の変数を持つ、k個の連立1次方程式、又はk×n次元の係数行列の積として表現することができる(下記の(式2)及び(式3))。(式2)及び(式3)において、x1~xkおよびy1~ykは、近似対象の曲線からサンプリングした点のx座標又はy座標を表す。輪郭曲線パラメータ抽出部152は、(式2)及び(式3)の右辺の疑似逆行列を計算することによって、近似曲線の制御点P0~Pn-1を計算することができる(ステップS205)。
【0061】
【0062】
上記手順により計算された制御点P
0~P
n-1は、訓練用データ161に保存され、
図3における訓練フェーズで用いられる。
【0063】
なお、曲線401は、上記手順により計算された制御点P0~P3により表現されたパラメトリック曲線の一例である。上記手順で計算された制御点を初期制御点と呼ぶ。以下、制御点の数が4つである例を用いて説明する。
【0064】
輪郭曲線パラメータ抽出部152は、制御点の再帰計算処理において、隣接する全ての制御点PiPi+1で構成される直線PiPi+1を、(式1)のパラメータtを用いてt:1-tに分割し、新規制御点Pkを計算する。
【0065】
輪郭曲線パラメータ抽出部152は、曲線401における、新規制御点の1回目の再帰計算において、直線P0P1の分割点として新規制御点P4を計算し、P1P2の分割点として制御点P5を計算し、直線P2P3の分割点として制御点P5を計算する。輪郭曲線パラメータ抽出部152は、新規制御点の2回目の再帰計算において、直線P4P5の分割点として制御点P7を計算し、直線P5P6の分割点として制御点P8を計算する。最後に、輪郭曲線パラメータ抽出部152は、新規制御点の3回目の再帰計算において、直線P7P8の分割点として点P9を計算する。再帰計算の回数は、例えば、初期制御点の回数-1回である。最後の再帰計算で算出された点P9が、曲線上の点f(t)を表す。
【0066】
すなわち、輪郭曲線パラメータ抽出部152は、制御点P0~Pnを用いて(式1)のパラメータtを0~1まで変化させることで、パラメトリック曲線f(t)上の座標点を計算し、曲線401を再現することができる。なお、曲線402は座標の異なる別の制御点P0~P3を用いて上記した同様の処理で計算された曲線の一例である。
【0067】
図5は、
図2のステップS201~S203の輪郭追跡処理、連結成分抽出処理、及び曲線分割処理の一例を示す説明図である。
図5の例では、手を撮影した画像を入力とし、4つの指領域の曲線パラメータが抽出されているが、対象物は4つの指に限られない。
【0068】
手領域画像の背景分離画像である背景分離画像500は、対象物領域501、対象物領域502、対象物領域503、対象物領域504を含む。対象物領域501、対象物領域502、対象物領域503、及び対象物領域504は、それぞれ、人差し指、中指、薬指、及び小指の対象物領域である。
【0069】
画像520は、背景分離画像500から対象物の輪郭が抽出された画像である。輪郭505は、対象物領域501の輪郭線である。ステップS201において、輪郭曲線パラメータ抽出部152は、画像処理の一般的な手法により輪郭505を抽出することができる。または、輪郭曲線パラメータ抽出部152は、入力装置55を介した入力により、輪郭505を取得してもよい。
【0070】
ステップS202において、輪郭曲線パラメータ抽出部152は、一般的には対象物領域から輪郭を、連続する座標点系列として抽出するが、対象物領域501、対象物領域502、対象物領域503、及び対象物領域504のように非連結の輪郭線については、これらの対象物領域それぞれから別々の連続座標点データとして輪郭を抽出する。
【0071】
輪郭曲線パラメータ抽出部152は、抽出した輪郭線の1つについて、始点と終点を決定する。対象物領域501の例では、輪郭曲線パラメータ抽出部152は、指又の位置に相当する始点506と終点507を抽出する。具体的には、例えば、輪郭曲線パラメータ抽出部152は、対象物領域501の外接矩形座標のうち、左下座標にもっとも近い点を始点として、右下座標に最も近い点を終点として、抽出することができる。
【0072】
また、例えば、輪郭曲線パラメータ抽出部152は、輪郭座標を左周り又は右回りに探索し、対象物領域501の外接矩形座標下方1/3領域において、進行方向の傾きの変化が大きい座標(例えば30度以上等)をそれぞれ始点と終点に設定してもよい。曲線508は、輪郭曲線パラメータ抽出部152が輪郭505、始点506、及び終点507から抽出した曲線の一例である。
【0073】
輪郭曲線パラメータ抽出部152は、ステップ203において、パラメトリック曲線での近似を容易にするため、抽出した曲線を部分曲線に分割する。
図5の例では、輪郭曲線パラメータ抽出部152は、曲線508を部分曲線509と部分曲線510とに分割している。
【0074】
輪郭曲線パラメータ抽出部152は、
図4、(式2)、及び(式3)を用いて前述した手順に従い、パラメトリック曲線の制御点P1~P8を、部分曲線509及び部分曲線510から抽出する。なお、
図5の例では、輪郭曲線パラメータ抽出部152は、4つの制御点を各部分曲線から抽出しているが、制御点の数はこれに限られない。
【0075】
図6は、
図2のステップS201~S203の輪郭追跡処理、連結成分抽出処理、及び曲線分割処理の別例を示す説明図である。
図6の例では、瞳周辺を撮影した画像を入力とし、虹彩領域の曲線パラメータを抽出する。
【0076】
目領域画像の入力虹彩画像61から得られた背景分離画像62は、虹彩領域の対象物領域である対象物領域601を含む。輪郭602及び輪郭603は、対象物領域601の輪郭線である。ステップS201において、輪郭曲線パラメータ抽出部152は、画像処理の一般的な手法により輪郭602及び輪郭603を抽出することができる。または、輪郭曲線パラメータ抽出部152は、入力装置55を介した入力により、輪郭602及び輪郭603を取得してもよい。
【0077】
ステップS202において、輪郭曲線パラメータ抽出部152は、一般的には対象物領域から輪郭602及び輪郭603を、連続する座標点系列として抽出する。ステップS203において、輪郭曲線パラメータ抽出部152は、パラメトリック曲線での近似を容易にするため、抽出した輪郭602及び輪郭603をそれぞれ部分曲線に分割する。
図6の例では、外輪郭である輪郭602を部分曲線609と部分曲線610の二つに、内輪郭である輪郭603を部分曲線611と部分曲線612の二つに分割する。
【0078】
輪郭曲線パラメータ抽出部152は、
図4、(式2)、及び(式3)を用いて前述した手順に従い、パラメトリック曲線の制御点P1~P4を、部分曲線609、部分曲線610、部分曲線611、及び部分曲線612それぞれから抽出する。なお、
図5の例では、輪郭曲線パラメータ抽出部152は、4つの制御点を各部分曲線から抽出しているが、制御点の数はこれに限られない。
【0079】
図7は、ステップS308における、推定輪郭曲線と正解輪郭曲線の誤差の計算方法の一例を示す説明図である。ここでは、
図5における分割後の部分曲線509を例にとって説明する。
【0080】
推定輪郭曲線70は、訓練中モデル163が推定した制御点P1~P4を用いて再現された曲線である。また、正解輪郭曲線71は、正解制御点P1~P4を用いて再現された曲線である。例えば、推定輪郭曲線70と正解輪郭曲線71の2曲線間の領域面積によって、推定輪郭曲線70と正解輪郭曲線71の2曲線の誤差が定義される。
【0081】
曲線誤差計算部154は、2曲線に共通して存在する区間については各曲線の積分値の差を計算し、一方の曲線しか存在しない区間については、他方の曲線のY座標を端点座標の固定値として伸ばして積分値の差を計算する。
【0082】
図7の例では、曲線誤差計算部154は、指の長軸方向をX軸、指の長軸方向に垂直な方向をY軸として、2曲線が交点するX座標で区間を分割し、それぞれの区間で領域面積を求めている。
図7の例では、推定輪郭曲線70と正解輪郭曲線71が交点701で交わるため、曲線誤差計算部154は、区間x
1~x
iと、区間x
i~x
nと、に分けて積分の差を計算する。下記の(式4)は、(式1)の曲線をパラメータtについて区間a~bで積分するための式である。
【0083】
【0084】
また、下記の(式5)は、(式4)の(a)を算出するための式である。
【0085】
【0086】
(式5)の最後の等式には、ベータ関数の積分公式が用いられている。上記の式により、曲線誤差計算部154は、推定輪郭曲線70と正解輪郭曲線71のうちYの値が大きい曲線の積分からYの値が小さい方の曲線の積分を引くことにより、2曲線間の領域面積を、制御点Piの1次式として記述することができる。また、2曲線のY軸上の上下関係は、2曲線の交点を区切りとする区間ごとに決定することができる。
【0087】
曲線誤差計算部154は、推定輪郭曲線70と正解輪郭曲線71の交点を、Beziel Cliping法等を用いて算出することができる。また、曲線誤差計算部154は、補正項として、推定輪郭曲線70又は正解輪郭曲線71のはみ出した部分の積分量を誤差項に加えてもよい。
【0088】
図7の例では、曲線誤差計算部154は、x
0~x
1区間について、推定輪郭曲線70の(式4)を用いた積分と、正解輪郭曲線71の端点x
0におけるY座標固定値とした矩形エリアの面積と、を計算し、その差分を曲線誤差に加える。同様に、曲線誤差計算部154は、区間x
n~x
n+1についても、正解輪郭曲線71の(式4)を用いた積分と、推定輪郭曲線70の端点x
n+1のY座標固定値とした矩形エリアの面積と、を計算し、その差分を曲線誤差に加える。
【0089】
以上により、本実施例の画像処理システム10は、指形状事前知識を反映した指領域推定が可能となる訓練後モデル162を生成することができる。また、画像処理システム10は、指領域が接触している場合などに正しく指領域を分離して抽出することが可能となる訓練後モデル162を生成することができる。また、画像処理システム10は、訓練中モデル163に輪郭形状の誤差を直接反映させることができる。
【0090】
図8は、ステップS308における曲線誤差計算処理の一例を示すフローチャートである。以下では、
図7の推定輪郭曲線70と正解輪郭曲線71に対する曲線誤差計算の例を説明する。
【0091】
ステップS801において、曲線誤差計算部154は、推定輪郭曲線70と正解輪郭曲線71の積分領域の開始点x座標(x1)を求める。具体的には、例えば、曲線誤差計算部154は、推定輪郭曲線70と正解輪郭曲線71の左端のX座標のうち大きい方を、開始点に決定する。
【0092】
ステップS802において、曲線誤差計算部154は、推定輪郭曲線70と正解輪郭曲線71の積分領域の終了点のx座標(xn)を求める。具体的には、例えば、曲線誤差計算部154は、推定輪郭曲線70と正解輪郭曲線71の右端のX座標のうち小さい方を、終了点に決定する。
【0093】
ステップS803において、曲線誤差計算部154は、推定輪郭曲線70及び正解輪郭曲線71の左端のX座標のうち小さい方(x0)を求める。また、曲線誤差計算部154は、区間x0~x1について、推定輪郭曲線70又は正解輪郭曲線71の一方(区間x0~x1までのY座標の値が定義されていた曲線)の積分と、他方の曲線の左端点のY座標と区間x0~x1で構成される矩形面積と、の差を曲線誤差として計算する。
【0094】
ステップS804において、曲線誤差計算部154は、推定輪郭曲線70又は正解輪郭曲線71の右端のX座標のうち大きい方(xn+1)を求める。曲線誤差計算部154は、区間xn~xn+1について、推定輪郭曲線70又は正解輪郭曲線71の一方(区間xn~xn+1までのY座標の値が定義されていた曲線)の積分と、他方の曲線の右端点のY座標と区間xn~xn+1で構成される矩形面積と、の差を曲線誤差として計算する。
【0095】
ステップS805において、曲線誤差計算部154は、推定輪郭曲線70と正解輪郭曲線71の交点を算出し、交点のX座標を分割点としてX軸のx0~xnまでの区間を部分区間に分割する。曲線誤差計算部154は、例えば、Beziel Cliping法を用いて、2曲線の交点を算出する。
【0096】
ステップS806において、曲線誤差計算部154は、未選択の、分割された部分区間を選択し、選択した部分区間について、
図7を用いて説明した手順に従い、曲線間の領域面積を計算する。ステップS807において、曲線誤差計算部154は、全ての部分区間の曲線間の領域面積を計算したかを判定する。曲線誤差計算部154は、曲線間の領域面積を計算していない部分区間があると判定した場合(S807:NO)、ステップS806に戻る。
【0097】
曲線誤差計算部154は、全ての部分区間の曲線間の領域面積を計算したと判定した場合(S807:YES)、ステップS808において、全区間の曲線間の領域面積の総和を計算する。以上により、曲線誤差計算部154は、曲線誤差を計算し、曲線誤差を訓練中モデル163にフィードバックすることができる。
【0098】
以上により、本実施例の画像処理システム10は、指形状事前知識を反映した指領域推定が可能となる訓練後モデル162を生成することができる。また、画像処理システム10は、指領域が接触している場合などに正しく指領域を分離して抽出することが可能となる訓練後モデル162を生成することができる。また、画像処理システム10は、訓練中モデル163に輪郭形状の誤差を直接反映させることができる。
【0099】
図9は、ステップS308における、推定輪郭曲線と正解輪郭曲線の誤差の計算方法の別例を示す説明図である。ここでは、
図5における分割後の部分曲線509を例にとって説明する。
【0100】
推定輪郭曲線90は、訓練中モデル163が推定した制御点P1~P4を用いて再現された曲線である。また、正解輪郭曲線91は、正解制御点P1~P4を用いて再現された曲線である。例えば、推定輪郭曲線90と正解輪郭曲線91の2つのパラメトリック曲線間の二つのパラメトリック曲線の有限個のサンプリング点に基づく2乗誤差によって、2曲線の誤差が定義される。
【0101】
推定輪郭曲線90上の点901~点909は、(式1)のパラメータtが、0~1の区間で、等間隔でサンプリング(
図9の例では9座標が用いられた8等分)されたときのf(t)の値(各点の座標)を示す。
【0102】
正解輪郭曲線91上の点911~点919は、(式1)のパラメータtが、0~1の区間で、等間隔でサンプリングされたとき(
図9の例では9座標が用いられた8等分)のf(t)の値(各点の座標)を示す。
【0103】
曲線誤差計算部154は、点901~点909及び点911~点919間の下記の誤差D(2乗誤差)を用いて、訓練中モデル163の更新時に必要な誤差関数を計算することができる。下記の関数fp(t)は、推定輪郭曲線90を表す。下記の関数fg(t)は、正解輪郭曲線91を表す。下記の関数Jの定義は(式1)における関数Jと同じである。下記のPt及びPSは、それぞれ、推定輪郭曲線90の制御点座標、正解輪郭曲線91の制御点座標を表す。
【0104】
【0105】
以上により、本実施例の画像処理システム10は、指形状事前知識を反映した指領域推定が可能となる訓練後モデル162を生成することができる。また、画像処理システム10は、指領域が接触している場合などに正しく指領域を分離して抽出することが可能となる訓練後モデル162を生成することができる。また、画像処理システム10は、訓練中モデル163に輪郭形状の誤差を直接反映させることができる。
【0106】
図10は、ステップS308における曲線誤差計算処理の別例を示すフローチャートである。以下では、
図9の推定輪郭曲線90と正解輪郭曲線91に対する曲線誤差計算の例を説明する。
【0107】
ステップS1001において、曲線誤差計算部154は、誤差計算用のサンプリング点のサンプル数mを設定する。なお、曲線誤差計算部154は、例えば、入力装置55を介した入力に従ってサンプル数mを設定してもよいし、パラメータtの定義域の広さ、値域の広さ、又は正解曲線の全長に応じて(例えば、正解曲線の全長/サンプル数m、が所定範囲に含まれる値になるように)サンプル数mを設定してもよい。
【0108】
ステップS1002において、曲線誤差計算部154は、推定輪郭曲線90のパラメータtを0~1の区間について等間隔でm点サンプリングする。ステップS1003において、曲線誤差計算部154は、正解輪郭曲線91の媒介変数tを0~1の区間について等間隔でm点サンプリングする。ステップS1004において、曲線誤差計算部154は、推定輪郭曲線90と正解輪郭曲線91のサンプリング点のうち、媒介変数tの値が等しいサンプリング点間の平均2乗誤差を、曲線誤差として計算する。
【0109】
以上により、本実施例の画像処理システム10は、指形状事前知識を反映した指領域推定が可能となる訓練後モデル162を生成するこができる。また、画像処理システム10は、指領域が接触している場合などに正しく指領域を分離して抽出することが可能となる訓練後モデル162を生成することができる。また、画像処理システム10は、訓練中モデル163に輪郭形状の誤差を直接反映させることができる。
【0110】
図11は、ステップS300で情報処理装置3の表示装置36に表示される属性パラメータ入力画面の一例である。
図11の例では、情報処理装置3がスマートフォンであり、表示装置36が入力装置35を兼ねるタッチパネルである。
【0111】
表示装置36には、例えば、利用環境選択ボックス1101、対象色選択ボックス1102、及び照度選択ボックス1103が表示される。利用環境選択ボックス1101において、入力画像が撮影される利用環境を選択可能である。利用環境は属性パラメータの一例であり、例えば、自宅、屋外、又はオフィス等の環境属性を選択可能である。
【0112】
対象色選択ボックス1102において、入力画像に含まれる対象物の色である対象色を選択可能である。対象色は属性パラメータの一例である。照度選択ボックス1103において、入力画像が撮影される利用環境の照度を選択可能である。
【0113】
図11の属性パラメータ入力画面により、画像処理システム10は画像だけでなく照度、照明色、及び対象物のデフォルト色等の属性パラメータの入力を受け付けることができ、属性パラメータを考慮した指領域推定が可能となる。
【0114】
図12は、ステップS308における、推定輪郭曲線と正解輪郭曲線の誤差の計算方法の別例を示す説明図である。ここでは、
図5における指の推定輪郭505を例にとって説明する。
【0115】
正解中心輪郭曲線1201は訓練用データ161に格納された正解輪郭曲線(教師データに含まれる曲線パラメータで与えられる輪郭曲線)の一例である。正解中心輪郭曲線1201は、複数の指種(人差指、中指、薬指、小指等)のどの指の正解輪郭曲線であってもよいが、ここでは中指の正解輪郭曲線であるものとしている。
【0116】
輪郭曲線1202は、指の推定輪郭505が、パラメータθで決定される座標変換を用いて変換された座標変換後の推定輪郭曲線の一例である。パラメータθで決定される座標返還として、例えばアフィン変換や射影変換を用いることができる。アフィン変換及び射影変換は、例えば、3×3の行列によって表現することができる。
【0117】
図13は、ステップS308における曲線誤差計算処理の一例を示すフローチャートである。以下では、
図12の座標変換後の輪郭曲線1202と正解中心輪郭曲線1201に対する曲線誤差計算の例を説明する。
図13の例では上記したθが、パラメトリック曲線関数におけるパラメータ(即ち訓練後モデル162及び訓練中モデル163のモデルパラメータ)である。
図13の例では上記したθは、複数の指種(人差指、中指、薬指、小指等)のいずれかの指の正解輪郭曲線を用いて独立に予め学習され、パラメトリック曲線関数におけるパラメータ(即ち訓練後モデル162及び訓練中モデル163のモデルパラメータ)の学習時には、固定パラメータとしておいてもよい。
【0118】
ステップS1301において、曲線誤差計算部154は、正解中心輪郭曲線1201を選択する。ステップS1302において、曲線誤差計算部154は、訓練中モデル163の中のパラメータθを用いて、推定輪郭505の座標を輪郭曲線1202に座標変換する。
【0119】
ステップ1303において、曲線誤差計算部154は、座標変換後の輪郭曲線1202と正解中心輪郭曲線1201の誤差を求める。曲線誤差計算部154は、
図8又は
図10で示した手順を用いて誤差を計算してもよいし、輪郭曲線を2次元ベクトル(輪郭のある位置を1としそれ以外を0とする)で表現し、座標変換後の輪郭曲線1202の2次元ベクトルと、正解中心輪郭曲線1201の2次元ベクトルと、の間のクロスエントロピー、又はIOU(Intersection over union)を用いて誤差を計算してもよい。
【0120】
ステップ1304において、回帰推定訓練部153は、曲線誤差が所定閾値δ未満であるかを判定する。回帰推定訓練部153は、曲線誤差が所定閾値δ以上であると判定した場合(S1304:NO)、ステップS1306において、誤差が少なくなる方向に訓練中モデル163内のモデルパラメータを更新し、ステップS306に戻る。回帰推定訓練部153によるモデルパラメータの修正方法は、当該モデルの機械学習手法に依存するが、例えば、深層学習モデルが用いられている場合、確率的勾配降下法(SGD)を用いてモデルパラメータを修正することができる。
【0121】
なお、ステップS1302において、座標変換対象となる入力は輪郭線に限るものではなく、曲線上の端点や分岐点などサンプリングした特徴点のみであってもよい。また入力データは画像(2次元データ)に限るものではなく、(x,y,z)等の3次元以上のデータを対象としてもよい。
【0122】
回帰推定訓練部153は、曲線誤差が所定閾値δ未満であると判定した場合(S1304:YES)、訓練フェーズを終了し、ステップS1305において訓練中モデル163を訓練後モデル162として保存する。
【0123】
図13の処理により、画像処理システム10は、複数輪郭領域の相対的位置関係を考慮した、訓練後モデル162を生成することができる。また、画像処理システム10は、例えば、入力画像から指領域を抽出する場合、輪郭線領域を抽出するものの輪郭線領域の内側の画素が背景か否かを推定することはなく、少ない計算量で効率的に対象物領域を抽出することができる。
【0124】
なお、本発明は上記した実施形態に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施形態は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明したすべての構成を備えるものに限定されるものではない。また、ある実施形態の構成の一部を他の実施形態の構成に置き換えることが可能であり、また、ある実施形態の構成に他の実施形態の構成を加えることも可能である。また、各実施形態の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
【0125】
また、上記の各構成・機能・処理部等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、SSD(Solid State Drive)等の記録装置、または、ICカード、SDカード等の記録媒体に置くことができる。
【0126】
また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしもすべての制御線や情報線を示しているとは限らない。実際には殆どすべての構成が相互に接続されていると考えてもよい。
3 情報処理装置、5 サーバ、10 画像処理システム、31 CPU、32 メモリ、33 補助記憶装置、34 通信装置、35 入力装置、36 表示装置、51 CPU、52 メモリ、53 補助記憶装置、54 通信装置、55 入力装置、56 表示装置、151 訓練部、152 輪郭曲線パラメータ抽出部、153 回帰推定訓練部、154 曲線誤差計算部、156 輪郭再現部、161 訓練用データ、162 訓練後モデル