(57)【要約】【課題】機械学習モデルを利用した画像認識において、処理効率の向上を図り得る、画像認識装置、画像認識方法、及びプログラムを提供する。【解決手段】画像認識装置１０は、画像から特定の物体を検出するための機械学習モデルの畳み込み層を用いて、画像認識の対象となる画像の特徴量マップを生成する、特徴量マップ生成部１１と、特徴量マップ上に、仮想のウィンドウを設定し、ウィンドウを設定量だけスライドさせながら、複数の所定の位置において、特徴量マップのウィンドウ内の領域を、機械学習モデルの全結合層に入力して、所定の位置毎に、当該領域に特定の物体が存在している可能性を示すスコアを算出する、スコア算出部１２と、を備えている。【選択図】図１
2020160921.tif 000002
【特許請求の範囲】
【請求項１】
画像から特定の物体を検出するための機械学習モデルの畳み込み層を用いて、画像認識の対象となる画像の特徴量マップを生成する、特徴量マップ生成部と、
前記特徴量マップ上に、仮想のウィンドウを設定し、前記ウィンドウを設定量だけスライドさせながら、複数の所定の位置において、前記特徴量マップの前記ウィンドウ内の領域を、前記機械学習モデルの全結合層に入力して、前記所定の位置毎に、当該領域に前記特定の物体が存在している可能性を示すスコアを算出する、スコア算出部と、
を備えている、ことを特徴とする画像認識装置。
【請求項２】
請求項１に記載の画像認識装置であって、
画像データを取得し、取得した画像データで特定される画像において、前記画像認識の対象となる範囲を設定する、対象画像設定部を、更に備え、
前記特徴量マップ生成部が、設定された範囲について、前記特徴量マップを生成する、ことを特徴とする画像認識装置。
【請求項３】
請求項１または２に記載の画像認識装置であって、
前記所定の位置毎に算出された前記スコアの中から、最も値の大きい前記スコアと、そのときの前記所定の位置とを特定し、特定した前記スコアと前記所定の位置とを出力する、認識処理部を、更に備えている、
ことを特徴とする画像認識装置。
【請求項４】
請求項１〜３のいずれかに記載の画像認識装置であって、
前記機械学習モデルの構築に用いられた学習データに、パディングデータが付加されており、それによって、前記特徴量マップに余分なデータが付加される場合に、付加されているデータを補正するための、補正データを生成する、補正データ生成部を、更に備え、
前記スコア算出部は、生成された前記補正データを用いて、前記特徴量マップを補正し、補正後の前記特徴量マップを用いて、前記スコアを算出する、
ことを特徴とする画像認識装置。
【請求項５】
（ａ）画像から特定の物体を検出するための機械学習モデルの畳み込み層を用いて、画像認識の対象となる画像の特徴量マップを生成する、ステップと、
（ｂ）前記特徴量マップ上に、仮想のウィンドウを設定し、前記ウィンドウを設定量だけスライドさせながら、複数の所定の位置において、前記特徴量マップの前記ウィンドウ内の領域を、前記機械学習モデルの全結合層に入力して、前記所定の位置毎に、当該領域に前記特定の物体が存在している可能性を示すスコアを算出する、ステップと、
を有する、ことを特徴とする画像認識方法。
【請求項６】
請求項５に記載の画像認識方法であって、
（ｃ）画像データを取得し、取得した画像データで特定される画像において、前記画像認識の対象となる範囲を設定する、ステップを、更に有する、
前記（ａ）のステップにおいて、設定された範囲について、前記特徴量マップを生成する、
ことを特徴とする画像認識方法。
【請求項７】
請求項５または６に記載の画像認識方法であって、
（ｄ）前記所定の位置毎に算出された前記スコアの中から、最も値の大きい前記スコアと、そのときの前記所定の位置とを特定し、特定した前記スコアと前記所定の位置とを出力する、ステップを、更に有する、
ことを特徴とする画像認識方法。
【請求項８】
請求項５〜７のいずれかに記載の画像認識方法であって、
（ｅ）前記機械学習モデルの構築に用いられた学習データに、パディングデータが付加されており、それによって、前記特徴量マップに余分なデータが付加される場合に、付加されているデータを補正するための、補正データを生成する、ステップを、更に有し、
前記（ｂ）のステップにおいて、生成された前記補正データを用いて、前記特徴量マップを補正し、補正後の前記特徴量マップを用いて、前記スコアを算出する、
ことを特徴とする画像認識方法。
【請求項９】
コンピュータに、
（ａ）画像から特定の物体を検出するための機械学習モデルの畳み込み層を用いて、画像認識の対象となる画像の特徴量マップを生成する、ステップと、
（ｂ）前記特徴量マップ上に、仮想のウィンドウを設定し、前記ウィンドウを設定量だけスライドさせながら、複数の所定の位置において、前記特徴量マップの前記ウィンドウ内の領域を、前記機械学習モデルの全結合層に入力して、前記所定の位置毎に、当該領域に前記特定の物体が存在している可能性を示すスコアを算出する、ステップと、
を実行させる、プログラム。
【請求項１０】
請求項９に記載のプログラムであって、
前記コンピュータに、
（ｃ）画像データを取得し、取得した画像データで特定される画像において、前記画像認識の対象となる範囲を設定する、ステップを、更に実行させ、
前記（ａ）のステップにおいて、設定された範囲について、前記特徴量マップを生成する、
ことを特徴とするプログラム。
【請求項１１】
請求項９または１０に記載のプログラムであって、
前記コンピュータに、
（ｄ）前記所定の位置毎に算出された前記スコアの中から、最も値の大きい前記スコアと、そのときの前記所定の位置とを特定し、特定した前記スコアと前記所定の位置とを出力する、ステップを、更に実行させ、
ことを特徴とするプログラム。
【請求項１２】
請求項９〜１１のいずれかに記載のプログラムであって、
前記コンピュータに、
（ｅ）前記機械学習モデルの構築に用いられた学習データに、パディングデータが付加されており、それによって、前記特徴量マップに余分なデータが付加される場合に、付加されているデータを補正するための、補正データを生成する、ステップを、更に実行させ、
前記（ｂ）のステップにおいて、生成された前記補正データを用いて、前記特徴量マップを補正し、補正後の前記特徴量マップを用いて、前記スコアを算出する、
ことを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像から対象物を認識するための画像認識装置及び画像認識方法に関し、更には、これらを実現するためのプログラムに関する。
【背景技術】
【０００２】
近年、機械学習モデルを用いて画像認識を行う画像認識装置が開発されている（例えば、特許文献１及び２参照）。このような画像認識装置によれば、予め学習させた人物、動物、自動車等を、画像から検出することができる。このため、画像認識装置は、映像監視システム、車両に搭載される事故防止システム等に利用されている。
【０００３】
ここで、従来からの画像認識装置における処理について図１１を用いて説明する。図１１は、従来からの画像認識装置で行われる処理を示すフロー図である。また、この画像認識装置は、特定の物体を認識する機械学習モデルを備えている。機械学習モデルは、ディープラーニングによって構築されている。
【０００４】
図１１に示すように、最初に、画像認識装置は、外部の撮像装置又は記憶装置から画像データを取得する（ステップＳ１）。取得された画像データは、画像認識装置に搭載されたメモリ等に格納される。
【０００５】
次に、画像認識装置は、取得した画像において検知対象物が含まれる可能性のある部分の範囲を指定する（ステップＳ２）。具体的には、画像認識装置は、ステップＳ２において、画面左上の座標、領域の横幅、及び領域の高さを指定することによって、範囲を指定する。また、ステップＳ２では、取得した画像の部分的な指定の代わりに、画像全体が指定される場合もある。
【０００６】
次に、画像認識装置は、ステップＳ２で指定された範囲内に、水平方向及び垂直方向の解像度が予め設定された矩形の領域を設定し、設定した領域の画像の切り出しを実行する（ステップＳ３）。ステップＳ３は、後述するように複数回繰り返し実行される。また、矩形の領域の設定は、実行の度に、その位置を設定画素数分だけスライドしながら行われる。この方式は、スライディング方式と呼ばれ、矩形の領域はスライディングウィンドウと呼ばれる。
【０００７】
また、この方式では、スライディングウィンドウは、指定された範囲の左上の端を基点にして、まず、水平方向に沿って、設定画素数分スライドされ、右上の端に到達すると、垂直方向に設定画素数分スライドさせた位置で、更に左端から右端へとスライドされる。また、スライド量となる設定画素数は、位置的に隣接するスライディングウィンドウ同士の端の部分が重なるように行われる。
【０００８】
次に、画像認識装置は、ステップＳ３で切り出された画像を、機械学習モデルに入力して、画像中の物体について推論を実行し、物体が特定の物体であることの確からしさ示すスコアを算出する（ステップＳ４）。
【０００９】
次に、画像認識装置は、ステップＳ４で算出されたスコアと、別のスライディングウィンドウについてのステップＳ４で先に算出されたスコアとを比較する。そして、画像認識装置は、値が高い方のスコアと、スコアの高い方のスライディングウィンドウの座標と、このスライディングウィンドウの画像識別番号とを保存する（ステップＳ５）。
【００１０】
次に、画像認識装置は、ステップＳ２で指定された範囲全てについて、ステップＳ３〜Ｓ５が実行されているかどうかを判定する（ステップＳ６）。ステップＳ６の判定の結果、ステップＳ２で指定された範囲全てについて、ステップＳ３〜Ｓ５が実行されていない場合は、上述したように、画像認識装置は、スライディングウィンドウをスライドさせて、再度ステップＳ３を実行する。
【００１１】
一方、ステップＳ６の判定の結果、ステップＳ２で指定された範囲全てについて、ステップＳ３〜Ｓ５が実行されている場合は、画像認識装置は、保存しているスコアと、座標と、画像識別番号とを、外部に出力する。
【００１２】
このように、従来の画像認識装置では、スライディングウィンドウ単位で、学習モデルを用いた推論が行われて、画像認識が行われる。
【先行技術文献】
【特許文献】
【００１３】
【特許文献１】特開２０１２−２４３１５５号公報
【特許文献２】特開２０１４−０４１４２７号公報
【発明の概要】
【発明が解決しようとする課題】
【００１４】
しかしながら、従来の画像認識装置には、処理効率が低く、処理速度の向上が難しいという問題がある。具体的には、従来の画像認識装置は、上述したようにスライディングウィンドウ毎に、推論を実行する。そして、各スライディングウィンドウは、隣接する別のスライディングウィンドウと重なるように設定されている。このため、従来の画像認識装置は、重なっている部分については、重複して推論を実行しており、無駄な処理を行っている。結果、上述した問題が生じてしまう。
【００１５】
本発明の目的の一例は、上記問題を解消し、機械学習モデルを利用した画像認識において、処理効率の向上を図り得る、画像認識装置、画像認識方法、及びプログラムを提供することにある。
【課題を解決するための手段】
【００１６】
上記目的を達成するため、本発明の一側面における画像認識装置は、
画像から特定の物体を検出するための機械学習モデルの畳み込み層を用いて、画像認識の対象となる画像の特徴量マップを生成する、特徴量マップ生成部と、
前記特徴量マップ上に、仮想のウィンドウを設定し、前記ウィンドウを設定量だけスライドさせながら、複数の所定の位置において、前記特徴量マップの前記ウィンドウ内の領域を、前記機械学習モデルの全結合層に入力して、前記所定の位置毎に、当該領域に前記特定の物体が存在している可能性を示すスコアを算出する、スコア算出部と、
を備えている、ことを特徴とする。
【００１７】
また、上記目的を達成するため、本発明の一側面における画像認識方法は、
（ａ）画像から特定の物体を検出するための機械学習モデルの畳み込み層を用いて、画像認識の対象となる画像の特徴量マップを生成する、ステップと、
（ｂ）前記特徴量マップ上に、仮想のウィンドウを設定し、前記ウィンドウを設定量だけスライドさせながら、複数の所定の位置において、前記特徴量マップの前記ウィンドウ内の領域を、前記機械学習モデルの全結合層に入力して、前記所定の位置毎に、当該領域に前記特定の物体が存在している可能性を示すスコアを算出する、ステップと、
を有する、ことを特徴とする。
【００１８】
更に、上記目的を達成するため、本発明の一側面におけるプログラムは、
コンピュータに、
（ａ）画像から特定の物体を検出するための機械学習モデルの畳み込み層を用いて、画像認識の対象となる画像の特徴量マップを生成する、ステップと、
（ｂ）前記特徴量マップ上に、仮想のウィンドウを設定し、前記ウィンドウを設定量だけスライドさせながら、複数の所定の位置において、前記特徴量マップの前記ウィンドウ内の領域を、前記機械学習モデルの全結合層に入力して、前記所定の位置毎に、当該領域に前記特定の物体が存在している可能性を示すスコアを算出する、ステップと、
を実行させる、ことを特徴とする。
【発明の効果】
【００１９】
以上のように、本発明によれば、機械学習モデルを利用した画像認識において、処理効率の向上を図ることができる。
【図面の簡単な説明】
【００２０】
【図１】図１は、本発明の実施の形態１における画像認識装置の概略構成を示すブロック図である。
【図２】図２は、本発明の実施の形態１における画像認識装置の構成を具体的に示すブロック図である。
【図３】図３は、本発明の実施の形態１で得られる特徴量マップの一例を示す図である。
【図４】図４は、本発明の実施の形態１において用いられる識別器（機械学習モデル）の一例を示す図である。
【図５】図５は、本発明の実施の形態１における画像認識装置の動作を示すフロー図である。
【図６】図６は、本発明の実施の形態２における画像認識装置の構成を具体的に示すブロック図である。
【図７】図７は、本発明の実施の形態２における識別器（機械学習モデル）の一例を示す図である。
【図８】図８は、本発明の実施の形態２において識別器の畳み込み層が出力するデータの一例を示す図である。
【図９】図９は、本発明の実施の形態２における画像認識装置の動作を示すフロー図である。
【図１０】図１０は、本発明の実施の形態における画像認識装置を実現するコンピュータの一例を示すブロック図である。
【図１１】図１１は、従来からの画像認識装置で行われる処理を示すフロー図である。
【発明を実施するための形態】
【００２１】
（実施の形態１）
以下、本発明の実施の形態１における画像認識装置、画像認識方法、及びプログラムについて、図１〜図５を参照しながら説明する。
【００２２】
［装置構成］
最初に、図１を用いて、本発明の実施の形態１における画像認識装置の概略構成について説明する。図１は、本発明の実施の形態１における画像認識装置の概略構成を示すブロック図である。
【００２３】
図１に示す、本実施の形態１における画像認識装置１０は、画像から特定の物体を検出する装置である。図１に示すように、画像認識装置１０は、特徴量マップ生成部１１と、スコア算出部１２とを備えている。
【００２４】
特徴量マップ生成部１１は、画像から特定の物体を検出するための機械学習モデルの畳み込み層を用いて、画像認識の対象となる画像の特徴量マップを生成する。
【００２５】
スコア算出部１２は、特徴量マップ上に、仮想のウィンドウを設定し、このウィンドウを設定量だけスライドさせながら、複数の所定の位置において、特徴量マップのウィンドウ内の領域を、機械学習モデルの全結合層に入力する。そして、この入力処理の結果から、スコア算出部１２は、所定の位置毎に、このウィンドウ内の領域に特定の物体が存在している可能性を示すスコアを算出する。
【００２６】
このように、本実施の形態１では、まず、機械学習モデルの畳み込み層を用いて、特徴量マップが生成され、そして、この特徴量マップ上でスライディングウィンドウによる処理が行われる。このため、従来に比べて、重複して行われる処理が大きく低減されるので、本実施の形態１によれば、機械学習モデルを利用した画像認識において、処理効率の向上を図ることができる。
【００２７】
続いて、図２〜図４を用いて、本実施の形態１における画像認識装置１０の構成及び機能について具体的に説明する。図２は、本発明の実施の形態１における画像認識装置の構成を具体的に示すブロック図である。図３は、本発明の実施の形態１で得られる特徴量マップの一例を示す図である。図４は、本発明の実施の形態１において用いられる識別器（機械学習モデル）の一例を示す図である。
【００２８】
図２に示すように、本実施の形態では、画像認識装置１０は、上述した特徴量マップ生成部１１及びスコア算出部１２に加えて、対象画像設定部１３と、特徴量マップ記憶部１４と、認識処理部１５と、機械学習モデルである識別器２０とを更に備えている。
【００２９】
なお、識別器２０は、図２の例では、画像認識装置１０内に備えられているが、この例に限定されるものではない。識別器２０は、画像認識装置１０以外の装置に設けられていても良い。
【００３０】
対象画像設定部１３は、まず、画像認識の対象となる画像の画像データを取得する。続いて、対象画像設定部１３は、取得した画像データで特定される画像において、画像認識の対象となる範囲を設定する。
【００３１】
具体的には、対象画像設定部１３は、画像において、認識対象が含まれる可能性のある範囲を特定し、その範囲を設定する。また、認識対象が含まれる可能性のある範囲の特定は、例えば、画像中の物体の輪郭検出を行い、検出された輪郭が存在する範囲を特定することによって行われる。更に、範囲の設定は、設定された範囲の左上の座標、横幅、及び高さを設定することによって行われる。加えて、対象画像設定部１３は、画像データの画像全体を、画像認識の対象となる範囲として設定することもできる。
【００３２】
特徴量マップ生成部１１は、本実施の形態では、対象画像設定部１３によって設定された範囲について、識別器２０の畳み込み層（図４参照）を用いて、特徴量マップを生成する。また、特徴量マップ生成部１１は、生成した特徴量マップを、特徴量マップ記憶部１４に格納する。特徴量マップ記憶部１４は、例えば、メモリであり、その記憶領域上に、特徴量マップを格納する。
【００３３】
具体的には、図３に示すように、特徴量マップ生成部１１は、まず、対象画像設定部１３によって設定された範囲の画像データから、水平方向における全画素による行（ライン）をＮライン分毎に取り出す（Ｎ：任意の自然数）。続いて、特徴量マップ生成部１１は
、取り出したＮ行分の画像データを、順に、識別器２０の畳み込み層に入力する。これにより、Ｎライン分毎に、特徴量マップが生成される。図３においては、Ｎライン分の画像データと、それから生成された特徴量マップとが示されている。また、特徴量マップにおいて、格子は画素を示し、■は特徴量を示している。
【００３４】
スコア算出部１２は、本実施の形態では、まず、特徴量マップ記憶部１４から、Ｎライン分の特徴量マップを取り出す。続いて、スコア算出部１２は、取り出したＮライン分の特徴量マップ上で、設定した仮想のウィンドウを設定量だけスライドさせながら、複数の所定の位置において、特徴量マップのウィンドウ内の領域を、識別器２０の全結合層（図４参照）に入力する。そして、スコア算出部１２は、所定の位置毎の全結合層の出力結果を、所定の位置毎のスコアとする。なお、図３において、矩形の破線は、仮想のウィンドウを示している。
【００３５】
また、図４に示すように、識別器２０は、畳み込み層２１〜２４と、全結合層２５とを備えている。図４の例では、画像データは、まず、畳み込み層２１に入力され、畳み込み層２１の出力が、畳み込み層２２と畳み込み層２４とに入力される。畳み込み層２４は、入力データに対してサイズ変換を行い、サイズ変換後の入力データを出力する。更に、畳み込み層２２の出力が、畳み込み層２３に入力され、畳み込み層２３の出力と畳み込み層２４の出力とが合成されて、特徴量マップとなる。
【００３６】
全結合層２５は、スコア算出部１２によって、特徴量マップのウィンドウ内の領域が入力されると、入力された領域に対して識別を行い、クラス毎に、画像中の物体がそのクラスに該当する確率を算出し、算出した確率を出力する。スコア算出部１２は、出力された確率を、スコアとする。
【００３７】
認識処理部１５は、まず、スコア算出部１２によって、所定の位置毎に算出されたスコアの中から、最も値の大きいスコアと、そのときの所定の位置とを特定する。そして、認識処理部１５は、この特定したスコアと所定の位置とを、画像認識の結果として、出力する。この出力結果によれば、画像中に、特定の物体が存在しているかどうかを判断することができる。
【００３８】
［装置動作］
次に、本実施の形態１における画像認識装置１０の動作について図５を用いて説明する。図５は、本発明の実施の形態１における画像認識装置の動作を示すフロー図である。以下の説明においては、適宜図１〜図４を参照する。また、本実施の形態１では、画像認識装置１０を動作させることによって、画像認識方法が実施される。よって、本実施の形態１における画像認識方法の説明は、以下の画像認識装置１０の動作説明に代える。
【００３９】
図５に示すように、最初に、対象画像設定部１３は、画像認識の対象となる画像の画像データを取得する（ステップＡ１）。次に、対象画像設定部１３は、ステップＡ１で取得した画像データの画像において、画像認識の対象となる範囲を設定する（ステップＡ２）。
【００４０】
次に、特徴量マップ生成部１１は、ステップＡ２で設定された範囲の画像データから、Ｎライン分の画像データを取り出す（ステップＡ３）。続いて、特徴量マップ生成部１１は、取り出したＮライン分の画像データを、識別器２０の畳み込み層に入力して、特徴量マップを生成する（ステップＡ４）。また、特徴量マップ生成部１１は、生成した特徴量マップを、特徴量マップ記憶部１４に格納する。
【００４１】
次に、スコア算出部１２は、特徴量マップ記憶部１４から、Ｎライン分の特徴量マップ
を取り出す。そして、スコア算出部１２は、取り出した特徴量マップ上で、仮想のウィンドウをスライドさせながら、複数の所定の位置において、特徴量マップのウィンドウ内の領域を、識別器２０の全結合層に入力して、スコアを算出する（ステップＡ５）。
【００４２】
次に、認識処理部１５は、ステップＡ５において所定の位置毎に算出されたスコアの中から、最も値の大きいスコアと、そのときの所定の位置とを特定し、この特定したスコアと所定の位置とを、画像認識の結果として、出力する（ステップＡ６）。
【００４３】
次に、認識処理部１５は、ステップＡ２で設定された範囲全てについて、ステップＡ３〜Ａ６の処理が終了しているかどうかを判定する（ステップＡ７）。
【００４４】
ステップＡ７の判定の結果、ステップＡ２で設定された範囲全てについて、ステップＡ３〜Ａ６の処理が終了していない場合は、認識処理部１５は、特徴量マップ生成部１１に再度ステップＡ３を実行させる。これにより、特徴量マップ生成部１１は、前回の画像データの下方に位置するＮライン分の画像データを取り出す。
【００４５】
一方、ステップＡ７の判定の結果、ステップＡ２で設定された範囲全てについて、ステップＡ３〜Ａ６の処理が終了している場合は、画像認識装置における処理は終了する。
【００４６】
［実施の形態１における効果］
以上のように、本実施の形態１では、画像のＮライン分毎に特徴量マップが生成され、Ｎライン分の特徴量マップ毎に、全結合層を用いたスコアの算出が行われる。このため、従来のように、重複した特徴量マップの生成は行われないので、本実施の形態１によれば、機械学習モデルを利用した画像認識において、処理効率の向上を図ることができる。
【００４７】
［プログラム］
本実施の形態１におけるプログラムは、コンピュータに、図５に示すステップＡ１〜Ａ７を実行させるプログラムであれば良い。このプログラムをコンピュータにインストールし、実行することによって、本実施の形態１における画像認識装置１０と画像認識方法とを実現することができる。この場合、コンピュータのプロセッサは、特徴量マップ生成部１１、スコア算出部１２、対象画像設定部１３、及び認識処理部１５として機能し、処理を行なう。
【００４８】
また、本実施の形態におけるプログラムは、複数のコンピュータによって構築されたコンピュータシステムによって実行されても良い。この場合は、例えば、各コンピュータが、それぞれ、特徴量マップ生成部１１、スコア算出部１２、対象画像設定部１３、及び認識処理部１５のいずれかとして機能しても良い。
【００４９】
（実施の形態２）
次に、本発明の実施の形態２における画像認識装置、画像認識方法、及びプログラムについて、図６〜図９を参照しながら説明する。
【００５０】
［装置構成］
最初に、図６を用いて、本発明の実施の形態２における画像認識装置の概略構成について説明する。図６は、本発明の実施の形態２における画像認識装置の構成を具体的に示すブロック図である。
【００５１】
図６に示すように、本実施の形態２における画像認識装置３０は、実施の形態１における画像認識装置１０と同様の構成を備えているが、以下の点で異なっている。以下、実施の形態１との相違点を中心に説明する。
【００５２】
まず、本実施の形態２における画像認識装置３０は、識別器（機械学習モデル）２０の構築に用いられた学習データに、パディングデータが付加されており、それによって、特徴量マップに余分なデータが付加される場合に対応している。このため、画像認識装置３０は、実施の形態１における画像認識装置１０と異なり、補正データ生成部３１と、補正データ記憶部３２とを備えている。
【００５３】
補正データ生成部３１は、補正データを生成し、生成した補正データを補正データ記憶部３２に格納する。補正データは、学習データに付加されたパディングによって特徴量マップに付加されたデータを補正するための、データである。スコア算出部１２は、本実施の形態２では、補正データ生成部３１によって生成された補正データを用いて、特徴量マップを補正し、補正後の特徴量マップを用いて、スコアを算出する。
【００５４】
また、本実施の形態２において用いられる識別器２０は、入力されたデータのサイズが、出力時において小さくなるという特性を有している。このため、上述したように、識別器２０の構築に用いられた学習データに、パディングデータが付加されている。
【００５５】
パディングとは、畳み込み層に入力されたデータのサイズと、それから出力されるデータのサイズとが変わらないように、入力されたデータに、新たにデータ（パディングデータ）を追加することである。例えば、畳み込み層のカーネルの幅及び高さが共にＫであるとする（幅ｗ＝高さｈ＝Ｋ）。この場合、パディングデータを付加しないと、畳み込み層から出力されたデータのサイズは、幅及び高さ共に、入力時のサイズから「−（Ｋ−１）」となる。具体的には、Ｋ＝３の場合は、幅及び高さ共に「２」小さくなる。
【００５６】
従って、入力されるデータの矩形の外側に（Ｋ−１）／２ピクセルずつ、パディングデータを付加すれば、入力時と出力時とでデータの実質的なサイズを同一にすることができる。また、パディングデータの付加は、一般に、最初の畳み込み層（入力層）に対してだけではなく、下層の各畳み込み層に対しても行われる。また、通常は、パディングデータとしては、データ値がゼロとなったデータが使われる。この場合のパディングは「ゼロパディング」と称される。
【００５７】
ここで、図７及び図８を用いて、本実施の形態２における特徴量マップ生成部１１及び補正データ生成部３１の機能についてより具体的に説明する。図７は、本発明の実施の形態２における識別器（機械学習モデル）の一例を示す図である。図８は、本発明の実施の形態２において識別器の畳み込み層が出力するデータの一例を示す図である。
【００５８】
上述したように、ゼロパディングのように固定値をパディングすると、それにより矩形の境界において、畳み込み層からの出力結果が変化してしまう可能性がある。このため、本実施の形態では、特徴量マップ生成部１１は、対象画像設定部１３によって設定された範囲の画像データにパディングデータを付加し、パディング後の画像データを、畳み込み層２１に入力する。
【００５９】
また、このため、本実施の形態２では、識別器２０の構築に用いられる学習データにおいても、学習データとなる画像の周辺の画素データがパディングされる。例えば、スライディングウィンドウの矩形サイズが６４画素×８０画素であり、畳み込み層のカーネルのサイズがＫ＝３であるとする。この場合、機械学習においては、学習データとなる画像の周辺の１画素（＝（Ｋ−１）／２）を含めた６６画素×８２画素の画像が使用される。
【００６０】
ところで、入力層（畳み込み層２１）以外の畳み込み層では、適切なパディングデータの値を特定することが困難である。なお、畳み込み層２４は、入力データに対してサイズ
変換を行うだけであるので、そのカーネルは、１×１であり、畳み込み層２４では、パディングは発生しない。
【００６１】
このため、本実施の形態２では、図７に示すように、補正データ生成部３１は、畳み込み層２２及び２３のパディングデータに対応する補正データを生成する。また、補正データ生成部３１は、対応する畳み込み層の数だけ、補正ブロックを有している。図８の例では、補正データ生成部３１は、補正ブロック３１ａと、補正ブロック３１ｂとを有している。また、補正データ生成部３１は、畳み込み層での処理と同じに処理を実行でき、補正データ生成による処理の遅延を抑制している。
【００６２】
ここで、図８に示すように、畳み込み層（入力層）２１の出力をp[n,m]、畳み込み層２２の出力をq[n,m]、畳み込み層２３の出力をR[n,m]とする。また、補正データ生成部３１による補正データによって補正された後の畳み込み層２３の出力をｒ[n,m]とする。なお、ｎは行を示し、ｍは列を示す。
【００６３】
この場合、補正後の出力ｒ[n,m]は、ゼロパディングが行われていた場合と同一となる。よって、r[1,4]を例に挙げると、以下の数１によって算出される。
【００６４】
［数１］
r[1,4] = q[0,4]*w2[0,1]+q[0,5]*w2[0,2]
+q[1,4]*w2[1,1]+q[1,5]*w2[1,2]
+q[2,4]*w2[2,1]+q[2,5]*w2[2,2]
【００６５】
これに対して、本実施の形態２では、実施の形態１で述べたように、Ｎライン分のデータが畳み込みの対象となるので、パディングデータとして実データが用いられている。従って、畳み込み層２３の出力R[1,4]は、以下の数２によって算出される。
【００６６】
［数２］
R[1,4] = q[0,3]*w2[0,0] + { q[0,4]*w2[0,1]+q[0,5]*w2[0,2] }
+q[1,3]*w2[1,0] + { q[1,4]*w2[1,1]+q[1,5]*w2[1,2] }
+q[2,3]*w2[2,0] + { q[2,4]*w2[2,1]+q[2,5]*w2[2,2] }
= r[1,4] + { q[0,3]*w2[0,0] + q[1,3]*w2[1,0] + q[2,3]*w2[2,0] }
【００６７】
また、上記数２において、r[1,4]をR[1,4]で表すと、下記数３に示す通りとなる。
【００６８】
［数３］
r[1,4] = R[1,4] - { q[0,3]*w2[0,0] + q[1,3]*w2[1,0] + q[2,3]*w2[2,0] }
【００６９】
ここで、上記数３において、｛｝内をCr[1,4]とすると、上記数３は、下記の数４によって表すことができる。
【００７０】
［数４］
r[1,4] = R[1,4] - Cr[1,4]
【００７１】
上記数４におけるC[1,4]が、パディングを補正するための補正データとなる。本実施の形態２においては、補正データ生成部３１の補正ブロック３１ｂは、この補正データを生成し、これを補正データ記憶部３２に格納する。
【００７２】
また、畳み込み層２２の出力q[n,m]も、畳み込み層２１でのパディングの影響を受ける。但し、畳み込み層２１からの出力には、パディングデータは含まれていない。このため
、補正ブロック３１ａも、上述の補正ブロック３１ｂと同様の処理を実行する。
【００７３】
［装置動作］
次に、本実施の形態２における画像認識装置３０の動作について図９を用いて説明する。図９は、本発明の実施の形態２における画像認識装置の動作を示すフロー図である。以下の説明においては、適宜図６〜図８を参照する。また、本実施の形態２においても、画像認識装置３０を動作させることによって、画像認識方法が実施される。よって、本実施の形態２における画像認識方法の説明は、以下の画像認識装置３０の動作説明に代える。
【００７４】
図９に示すように、最初に、対象画像設定部１３は、画像認識の対象となる画像の画像データを取得する（ステップＢ１）。次に、対象画像設定部１３は、ステップＡ１で取得した画像データの画像において、画像認識の対象となる範囲を設定する（ステップＢ２）。
【００７５】
次に、特徴量マップ生成部１１は、ステップＢ２で設定された範囲の画像データから、Ｎライン分の画像データを取り出す（ステップＢ３）。続いて、特徴量マップ生成部１１は、取り出したＮライン分の画像データを、識別器２０の畳み込み層に入力して、特徴量マップを生成する（ステップＢ４）。また、特徴量マップ生成部１１は、生成した特徴量マップを、特徴量マップ記憶部１４に格納する。
【００７６】
次に、補正データ生成部３１は、パディングによって特徴量マップに付加されたデータを補正するため、補正データを生成し、生成した補正データを補正データ記憶部３２に格納する（ステップＢ５）。なお、ステップＢ５は、ステップＢ４と同じに実行されても良い。
【００７７】
次に、スコア算出部１２は、特徴量マップ記憶部１４から、Ｎライン分の特徴量マップを取り出し、更に、補正データ記憶部３２から補正データを取り出す。そして、スコア算出部１２は、取り出した特徴量マップを、補正データを用いて補正する（ステップＢ６）。
【００７８】
次に、スコア算出部１２は、補正後の特徴量マップ上で、仮想のウィンドウをスライドさせながら、複数の所定の位置において、特徴量マップのウィンドウ内の領域を、識別器２０の全結合層に入力して、スコアを算出する（ステップＢ７）。
【００７９】
次に、認識処理部１５は、ステップＢ７において所定の位置毎に算出されたスコアの中から、最も値の大きいスコアと、そのときの所定の位置とを特定し、この特定したスコアと所定の位置とを、画像認識の結果として、出力する（ステップＢ８）。
【００８０】
次に、認識処理部１５は、ステップＢ２で設定された範囲全てについて、ステップＢ３〜Ｂ８の処理が終了しているかどうかを判定する（ステップＢ９）。
【００８１】
ステップＢ９の判定の結果、ステップＢ２で設定された範囲全てについて、ステップＢ３〜Ｂ８の処理が終了していない場合は、認識処理部１５は、特徴量マップ生成部１１に再度ステップＢ３を実行させる。これにより、特徴量マップ生成部１１は、前回の画像データの下方に位置するＮライン分の画像データを取り出す。
【００８２】
一方、ステップＢ９の判定の結果、ステップＢ２で設定された範囲全てについて、ステップＢ３〜Ｂ８の処理が終了している場合は、画像認識装置における処理は終了する。
【００８３】
［実施の形態２における効果］
以上のように、本実施の形態２によれば、学習データにパディングが必要となる識別器２０が用いられる場合において、パディングデータを補正することができ、このような場合における識別精度の低下を抑制できる。また、本実施の形態２においても、実施の形態１と同様に、機械学習モデルを利用した画像認識において、処理効率の向上を図ることができる。
【００８４】
［プログラム］
本実施の形態２におけるプログラムは、コンピュータに、図９に示すステップＢ１〜Ｂ９を実行させるプログラムであれば良い。このプログラムをコンピュータにインストールし、実行することによって、本実施の形態２における画像認識装置３０と画像認識方法とを実現することができる。この場合、コンピュータのプロセッサは、特徴量マップ生成部１１、スコア算出部１２、対象画像設定部１３、認識処理部１５、及び補正データ生成部３１として機能し、処理を行なう。
【００８５】
また、本実施の形態におけるプログラムは、複数のコンピュータによって構築されたコンピュータシステムによって実行されても良い。この場合は、例えば、各コンピュータが、それぞれ、特徴量マップ生成部１１、スコア算出部１２、対象画像設定部１３、認識処理部１５、及び補正データ生成部３１のいずれかとして機能しても良い。
【００８６】
（変形例）
上述した実施の形態１及び２においては、図３及び図４に例示した識別器２０が用いられているが、実施の形態１及び２において、識別器は特に限定されるものではない。特に、実施の形態１においては、パディングが必要のない識別器が用いられていても良い。
【００８７】
（物理構成）
ここで、実施の形態１及び２におけるプログラムを実行することによって、画像認識装置を実現するコンピュータについて図１０を用いて説明する。図１０は、本発明の実施の形態における画像認識装置を実現するコンピュータの一例を示すブロック図である。
【００８８】
図１０に示すように、コンピュータ１１０は、ＣＰＵ１１１と、メインメモリ１１２と、記憶装置１１３と、入力インターフェイス１１４と、表示コントローラ１１５と、データリーダ／ライタ１１６と、通信インターフェイス１１７とを備える。これらの各部は、バス１２１を介して、互いにデータ通信可能に接続される。また、コンピュータ１１０は、ＣＰＵ１１１に加えて、又はＣＰＵ１１１に代えて、ＧＰＵ（Graphics Processing Unit）、又はＦＰＧＡ（Field-Programmable Gate Array）又はＡＳＩＣ（Application Specific IC）を備えていても良い。
【００８９】
ＣＰＵ１１１は、記憶装置１１３に格納された、本実施の形態におけるプログラム（コード）をメインメモリ１１２に展開し、これらを所定順序で実行することにより、各種の演算を実施する。メインメモリ１１２は、典型的には、ＤＲＡＭ（Dynamic Random Access Memory）等の揮発性の記憶装置である。また、本実施の形態におけるプログラムは、コンピュータ読み取り可能な記録媒体１２０に格納された状態で提供される。なお、本実施の形態におけるプログラムは、通信インターフェイス１１７を介して接続されたインターネット上で流通するものであっても良い。
【００９０】
また、記憶装置１１３の具体例としては、ハードディスクドライブの他、フラッシュメモリ等の半導体記憶装置が挙げられる。入力インターフェイス１１４は、ＣＰＵ１１１と、キーボード及びマウスといった入力機器１１８との間のデータ伝送を仲介する。表示コントローラ１１５は、ディスプレイ装置１１９と接続され、ディスプレイ装置１１９での表示を制御する。
【００９１】
データリーダ／ライタ１１６は、ＣＰＵ１１１と記録媒体１２０との間のデータ伝送を仲介し、記録媒体１２０からのプログラムの読み出し、及びコンピュータ１１０における処理結果の記録媒体１２０への書き込みを実行する。通信インターフェイス１１７は、ＣＰＵ１１１と、他のコンピュータとの間のデータ伝送を仲介する。
【００９２】
また、記録媒体１２０の具体例としては、ＣＦ（Compact Flash（登録商標））及びＳＤ（Secure Digital）等の汎用的な半導体記憶デバイス、フレキシブルディスク（Flexible Disk）等の磁気記録媒体、又はＣＤ−ＲＯＭ（Compact Disk Read Only Memory）などの光学記録媒体が挙げられる。
【００９３】
なお、本実施の形態における画像認識装置は、プログラムがインストールされたコンピュータではなく、各部に対応したハードウェアを用いることによっても実現可能である。更に、画像認識装置は、一部がプログラムで実現され、残りの部分がハードウェアで実現されていてもよい。
【００９４】
上述した実施の形態の一部又は全部は、以下に記載する（付記１）〜（付記１２）によって表現することができるが、以下の記載に限定されるものではない。
【００９５】
（付記１）
画像から特定の物体を検出するための機械学習モデルの畳み込み層を用いて、画像認識の対象となる画像の特徴量マップを生成する、特徴量マップ生成部と、
前記特徴量マップ上に、仮想のウィンドウを設定し、前記ウィンドウを設定量だけスライドさせながら、複数の所定の位置において、前記特徴量マップの前記ウィンドウ内の領域を、前記機械学習モデルの全結合層に入力して、前記所定の位置毎に、当該領域に前記特定の物体が存在している可能性を示すスコアを算出する、スコア算出部と、
を備えている、ことを特徴とする画像認識装置。
【００９６】
（付記２）
付記１に記載の画像認識装置であって、
画像データを取得し、取得した画像データで特定される画像において、前記画像認識の対象となる範囲を設定する、対象画像設定部を、更に備え、
前記特徴量マップ生成部が、設定された範囲について、前記特徴量マップを生成する、ことを特徴とする画像認識装置。
【００９７】
（付記３）
付記１または２に記載の画像認識装置であって、
前記所定の位置毎に算出された前記スコアの中から、最も値の大きい前記スコアと、そのときの前記所定の位置とを特定し、特定した前記スコアと前記所定の位置とを出力する、認識処理部を、更に備えている、
ことを特徴とする画像認識装置。
【００９８】
（付記４）
付記１〜３のいずれかに記載の画像認識装置であって、
前記機械学習モデルの構築に用いられた学習データに、パディングデータが付加されており、それによって、前記特徴量マップに余分なデータが付加される場合に、付加されているデータを補正するための、補正データを生成する、補正データ生成部を、更に備え、
前記スコア算出部は、生成された前記補正データを用いて、前記特徴量マップを補正し、補正後の前記特徴量マップを用いて、前記スコアを算出する、
ことを特徴とする画像認識装置。
【００９９】
（付記５）
（ａ）画像から特定の物体を検出するための機械学習モデルの畳み込み層を用いて、画像認識の対象となる画像の特徴量マップを生成する、ステップと、
（ｂ）前記特徴量マップ上に、仮想のウィンドウを設定し、前記ウィンドウを設定量だけスライドさせながら、複数の所定の位置において、前記特徴量マップの前記ウィンドウ内の領域を、前記機械学習モデルの全結合層に入力して、前記所定の位置毎に、当該領域に前記特定の物体が存在している可能性を示すスコアを算出する、ステップと、
を有する、ことを特徴とする画像認識方法。
【０１００】
（付記６）
付記５に記載の画像認識方法であって、
（ｃ）画像データを取得し、取得した画像データで特定される画像において、前記画像認識の対象となる範囲を設定する、ステップを、更に有する、
前記（ａ）のステップにおいて、設定された範囲について、前記特徴量マップを生成する、
ことを特徴とする画像認識方法。
【０１０１】
（付記７）
付記５または６に記載の画像認識方法であって、
（ｄ）前記所定の位置毎に算出された前記スコアの中から、最も値の大きい前記スコアと、そのときの前記所定の位置とを特定し、特定した前記スコアと前記所定の位置とを出力する、ステップを、更に有する、
ことを特徴とする画像認識方法。
【０１０２】
（付記８）
付記５〜７のいずれかに記載の画像認識方法であって、
（ｅ）前記機械学習モデルの構築に用いられた学習データに、パディングデータが付加されており、それによって、前記特徴量マップに余分なデータが付加される場合に、付加されているデータを補正するための、補正データを生成する、ステップを、更に有し、
前記（ｂ）のステップにおいて、生成された前記補正データを用いて、前記特徴量マップを補正し、補正後の前記特徴量マップを用いて、前記スコアを算出する、
ことを特徴とする画像認識方法。
【０１０３】
（付記９）
コンピュータに、
（ａ）画像から特定の物体を検出するための機械学習モデルの畳み込み層を用いて、画像認識の対象となる画像の特徴量マップを生成する、ステップと、
（ｂ）前記特徴量マップ上に、仮想のウィンドウを設定し、前記ウィンドウを設定量だけスライドさせながら、複数の所定の位置において、前記特徴量マップの前記ウィンドウ内の領域を、前記機械学習モデルの全結合層に入力して、前記所定の位置毎に、当該領域に前記特定の物体が存在している可能性を示すスコアを算出する、ステップと、
を実行させる、プログラム。
【０１０４】
（付記１０）
付記９に記載のプログラムであって、
前記コンピュータに、
（ｃ）画像データを取得し、取得した画像データで特定される画像において、前記画像認識の対象となる範囲を設定する、ステップを、更に実行させ、
前記（ａ）のステップにおいて、設定された範囲について、前記特徴量マップを生成す
る、
ことを特徴とするプログラム。
【０１０５】
（付記１１）
付記９または１０に記載のプログラムであって、
前記コンピュータに、
（ｄ）前記所定の位置毎に算出された前記スコアの中から、最も値の大きい前記スコアと、そのときの前記所定の位置とを特定し、特定した前記スコアと前記所定の位置とを出力する、ステップを、更に実行させ、
ことを特徴とするプログラム。
【０１０６】
（付記１２）
付記９〜１１のいずれかに記載のプログラムであって、
前記コンピュータに、
（ｅ）前記機械学習モデルの構築に用いられた学習データに、パディングデータが付加されており、それによって、前記特徴量マップに余分なデータが付加される場合に、付加されているデータを補正するための、補正データを生成する、ステップを、更に実行させ、
前記（ｂ）のステップにおいて、生成された前記補正データを用いて、前記特徴量マップを補正し、補正後の前記特徴量マップを用いて、前記スコアを算出する、
ことを特徴とするプログラム。
【産業上の利用可能性】
【０１０７】
以上のように、本発明によれば、機械学習モデルを利用した画像認識において、処理効率の向上を図ることができる。本発明は、画像認識が必要される種々のシステムに有用である。
【符号の説明】
【０１０８】
１０  画像認識装置（実施の形態１）
１１  特徴量マップ生成部
１２  スコア算出部
１３  対象画像設定部
１４  特徴量マップ記憶部
１５  認識処理部
２０  機械学習モデルである識別器
２１〜２４  畳み込み層
２５  全結合層
３０  画像認識装置（実施の形態２）
３１  補正データ生成部
３１ａ、３１ｂ  補正ブロック
３２  補正データ記憶部
１１０  コンピュータ
１１１  ＣＰＵ
１１２  メインメモリ
１１３  記憶装置
１１４  入力インターフェイス
１１５  表示コントローラ
１１６  データリーダ／ライタ
１１７  通信インターフェイス
１１８  入力機器
１１９  ディスプレイ装置
１２０  記録媒体
１２１  バス
【図１】
2020160921.tif 000003
【図２】
2020160921.tif 000004
【図３】
2020160921.tif 000005
【図４】
2020160921.tif 000006
【図５】
2020160921.tif 000007
【図６】
2020160921.tif 000008
【図７】
2020160921.tif 000009
【図８】
2020160921.tif 000010
【図９】
2020160921.tif 000011
【図１０】
2020160921.tif 000012
【図１１】
2020160921.tif 000013