(57)【要約】      （修正有）【課題】オーバーフィッティングの発生を抑制できる教師データセットを提供する。【解決手段】画像クロップ方法は、画像認識装置のオリジナル学習データを拡張するデータオーギュメンテーションを行う画像クロップ方法であって、クロップ対象のオリジナル画像毎にクロップ数を決定するクロップ数算出行程Ｓ１０１と、オリジナル画像から複数クロップするクロップ行程Ｓ１０２と、クロップ行程においてクロップした複数のクロップ画像から、クロップ数算出行程Ｓ１０１で算出したクロップ数分のクロップ画像を選択するクロップ画像選択行程Ｓ１０３を備える。【選択図】図３
2020177486.tif 000002
【特許請求の範囲】
【請求項１】
画像認識装置のオリジナル学習データを拡張するデータオーギュメンテーションを行う画像クロップ方法であって、
クロップ対象のオリジナル画像毎にクロップ数を決定するクロップ数算出行程と、
前記オリジナル画像から複数クロップするクロップ行程と、
前記クロップ行程においてクロップした複数のクロップ画像から、前記クロップ数算出行程で算出したクロップ数分のクロップ画像を選択するクロップ画像選択行程と、を備えることを特徴とする画像クロップ方法。
【請求項２】
前記オリジナル学習データは、画像中にある複数のオブジェクトクラスに分類がなされた画像のデータセットであって、
前記クロップ数算出行程において、画像中のオブジェクト分類の数に基づいてクロップ数を決定することを特徴とする請求項１に記載の画像クロップ方法。
【請求項３】
前記クロップ行程において、切り出しの始点（ｓｘ、ｓｙ）、終点（ｅｘ、ｅｙ）または、幅（ｗ）、高さ（ｈ）をランダム値によって算出することを特徴とする請求項１に記載の画像クロップ方法。
【請求項４】
前記クロップ行程において、あらかじめ設定した、幅（ｗ）、高さ（ｈ）の比率範囲となるようにランダム値の範囲を設定することを特徴とする請求項１または３に記載の画像クロップ方法。
【請求項５】
前記クロップ行程において、あらかじめ設定された複数の領域をクロップすることを特徴とする請求項１記載の画像クロップ方法。
【請求項６】
前記クロップ画像選択行程において、オリジナル画像及び各クロップ画像が異なるオブジェクトクラス配分になるようにクロップ画像を選択することを特徴とする請求項１記載の画像クロップ方法。
【請求項７】
画像認識装置のオリジナル学習データを拡張するデータオーギュメンテーションを行う画像クロッププログラムであって、
クロップ対象のオリジナル画像毎にクロップ数を決定するクロップ数算出ステップと、
前記オリジナル画像から複数クロップするクロップステップと、
前記クロップステップにおいてクロップした複数のクロップ画像から、前記クロップ数算出ステップで算出したクロップ数分のクロップ画像を選択するクロップ画像選択ステップと、をコンピュータに実行させることを特徴とする画像クロッププログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は画像クロップ方法及び画像クロッププログラムに関し、例えば画像認識装置、ニューラルネットワークモデル、撮像装置及び画像認識方法に適用可能な画像クロップ方法及び画像クロッププログラムに関する。
【背景技術】
【０００２】
画像認識の分野では、機械学習手法が多用されており学習には教師データが必要になる。この教師データはできるだけ多様な大量のデータで学習した方が高精度の識別器を生成できる。しかしながら、これら大量のデータを準備することが最も大変な作業となっている。
【０００３】
そこで、画像データを教師データとする場合に、１枚の画像データを拡張する技術として、データオーギュメンテーション技術がある。非特許文献１には、画像のランダムクロップによりデータを拡張することが記載されている。データオーギュメンテーション技術の具体的な手法としては、画像の回転や反転、幾何変換、ノイズ付加など多くの手法がある。
【０００４】
後述する本発明にかかる手法は、データオーギュメンテーション技術のうち、画像の一部を切り取るクロップに関するものである。後述する本発明にかかる手法は、クロップのみならず、画像の一部領域を遮蔽するランダムイレーシングにも応用可能である。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】https://www.learnopencv.com/understanding-alexnet/
【発明の概要】
【発明が解決しようとする課題】
【０００６】
クロップは無作為に切り出し位置を決めるランダムクロップが広く使用されている。しかしながら、広い範囲が芝生や空などの一様なシーンであった場合、クロップによるデータ拡張を行っても、似たような画像が増えることになる。この結果、似ているクロップ画像を多数用いた学習を行うと、単調なシーンにオーバーフィッティング（過学習）してしまうという問題がある。さらに画像認識技術では、このオーバーフィッティングによって、画像認識精度が悪化するという問題もある。
【課題を解決するための手段】
【０００７】
一実施形態の画像クロップ方法は、画像認識装置のオリジナル学習データを拡張するデータオーギュメンテーションを行う画像クロップ方法であって、クロップ対象のオリジナル画像毎にクロップ数を決定するクロップ数算出行程と、前記オリジナル画像から複数クロップするクロップ行程と、前記クロップ行程においてクロップした複数のクロップ画像から、前記クロップ数算出行程で算出したクロップ数分のクロップ画像を選択するクロップ画像選択行程と、を備えるようにした。
【０００８】
一実施形態の画像クロップ方法によれば、オーバーフィッティングの発生を抑制できる教師データセットを提供できる。
【０００９】
好ましくは、一実施形態の画像クロップ方法は、前記オリジナル学習データは、画像中にある複数のオブジェクトクラスに分類がなされた画像のデータセットであって、前記クロップ数算出行程において、画像中のオブジェクト分類の数に基づいてクロップ数を決定するようにした。
【００１０】
好ましくは、一実施形態の画像クロップ方法は、前記クロップ行程において、切り出しの始点（ｓｘ、ｓｙ）、終点（ｅｘ、ｅｙ）または、幅（ｗ）、高さ（ｈ）をランダム値によって算出するようにした。
【００１１】
好ましくは、一実施形態の画像クロップ方法は、前記クロップ行程において、あらかじめ設定した、幅（ｗ）、高さ（ｈ）の比率範囲となるようにランダム値の範囲を設定するようにした。
【００１２】
好ましくは、一実施形態の画像クロップ方法は、前記クロップ行程において、あらかじめ設定された複数の領域をクロップするようにした。
【００１３】
好ましくは、一実施形態の画像クロップ方法は、前記クロップ画像選択行程において、オリジナル画像及び各クロップ画像が異なるオブジェクトクラス配分になるようにクロップ画像を選択するようにした。
【００１４】
一実施形態の画像クロッププログラムは、画像認識装置のオリジナル学習データを拡張するデータオーギュメンテーションを行う画像クロッププログラムであって、クロップ対象のオリジナル画像毎にクロップ数を決定するクロップ数算出ステップと、前記オリジナル画像から複数クロップするクロップステップと、前記クロップステップにおいてクロップした複数のクロップ画像から、前記クロップ数算出ステップで算出したクロップ数分のクロップ画像を選択するクロップ画像選択ステップと、をコンピュータに実行させるようにした。
【００１５】
一実施形態の画像クロッププログラムによれば、オーバーフィッティングの発生を抑制できる教師データセットを提供できる。
【発明の効果】
【００１６】
本発明の画像クロップ方法及び画像クロッププログラムによれば、オーバーフィッティングの発生を抑制できる教師データセットを提供できる。
【図面の簡単な説明】
【００１７】
【図１】画像のクロップの一例を示す図である。
【図２】画像のクロップの一例を示す図である。
【図３】実施の形態１にかかる画像クロップ方法の一例を示すフローチャートである。
【図４】実施の形態１にかかる画像クロップ方法の一例を示すフローチャートである。
【発明を実施するための形態】
【００１８】
本実施の形態
以下、図面を参照して本発明の実施の形態について説明する。まず、最初に画像のクロップとオーバーフィッティングについて説明する。図１は、画像のクロップの一例を示す図である。
【００１９】
図１には、クロップの対象となる画像の一例が示されている。図１において、四角の枠で囲まれた領域がランダムにクロップされる。そして、図１に示す番号０〜２のクラスの少なくとも１つを含む。例えば、図１において領域１１のクロップ画像は、０〜２のクラスを含むクロップ画像である。
【００２０】
このような画像のクロップを繰り返すと内容が重複するクロップ画像が増加する。図２は、画像のクロップの一例を示す図である。図２において、領域２１〜２７でそれぞれ画像がクロップされた場合、クラス４を含む画像は領域２２〜２５に含まれている。したがって、これらの領域２１〜２７のクロップ画像を教師データとして学習させた場合、図２のクラス４のような空の一様なシーンが増えることになり、単調なシーンにオーバーフィッティングしてしまう。
【００２１】
本実施の形態の画像では、以下の処理を行うことにより、このようなオーバーフィッティングを抑制する。図３は、実施の形態１にかかる画像クロップ方法の一例を示すフローチャートである。図３の画像クロップ方法において、教師画像データのクロップは、オリジナル学習データセットを対象に実施する。このオリジナル学習データセットは、セマンティックセグメンテーションのアノテーション済み教師データである。また、オリジナル学習データセットとは、撮像画像とセマンティックセグメンテーション画像のセットを意味する。
【００２２】
まず、ステップＳ１０１において、クロップ数が算出され、ステップＳ１０２に進む。例えば、ステップＳ１０１では、複数あるオリジナル学習データセットに対して個別にクロップ数を算出する。具体的には、セグメントクラス数が少ないものはクロップ数を少なく決定し、セグメントクラス数が多いものはクロップ数を多くなるようにクロップ数を決定する。
【００２３】
例えば、以下に示す式（１）を用いて、クロップ数を決定してもよい。
クロップ数＝セグメントクラス数／２・・・（１）
【００２４】
また、あらかじめセグメントクラス数と分割数とを対応づけたテーブルを準備し、テーブルを参照するようにしてもよい。
【００２５】
次に、ステップＳ１０２において、オリジナル学習データセットから画像がクロップされ、ステップＳ１０３に進む。
【００２６】
例えば、ステップＳ１０１で決めたクロップ数より多くのクロップをランダムに実行する。クロップする範囲は、始点（ｓｘ、ｓｙ）、終点（ｅｘ、ｅｙ）または、始点（ｓｘ、ｓｙ）、幅（ｗ）、高さ（ｈ）をランダム値によって算出してもよい。
【００２７】
この時、クロップする範囲が、あらかじめ設定した最小のクロップサイズ、幅（ｗ）、高さ（ｈ）の比率範囲となるようにランダム値の範囲を限定することが望ましい。
【００２８】
次に、ステップＳ１０３において、クロップされた画像から教師データに適切な画像が選択される。例えば、ステップＳ１０３において、ランダムクロップした画像が選択される。そして、以下の式２に示すように、オリジナル画像(o)のセグメントクラスの面積比とランダムクロップ画像(c)のセグメントクラスの面積比の差分をとり、この差分の絶対値の総和ｄが算出される。具体的には、セグメントクラス単位で、オリジナル画像の面積比とランダムクロップ画像の面積比の差分をとり、この差分の絶対値の総和をとることによりｄが算出される。
【数１】
2020177486.tif 000003
ここで、ｎはセグメントクラス数、ｏはオリジナル画像のセグメントクラスの面積比、ｃはクロップ画像のセグメントクラスの面積比を示す。式（２）では、０〜ｎまでのクラスがある場合の計算式を示している。式（２）では、各セグメントクラスの面積比の差分を算出し、この差分の絶対値を０〜ｎまでのクラスで加算する。そして、この総和ｄが最も大きい画像を教師データに適切なクロップ画像として選択する。
【００２９】
計算結果の一例を以下の表１に示す。
【表１】
2020177486.tif 000004
【００３０】
表１の左側の３欄には、セグメントクラス、オリジナル画像の面積、オリジナル画像の面積比を示す。また表１の中央の３欄には、セグメントクラス、クロップ後の画像の面積、クロップ後の画像の面積比を示す。そして、表１の右側の３欄には、セグメントクラス、オリジナル画像の面積とクロップ後の画像の面積の差分、差分の面積比を示す。
【００３１】
表１に示すように、式（２）の計算結果ｄが７８．３３％となる。同様の計算をクロップした複数の画像すべてに行い、総和ｄが最も大きなクロップ画像を教師データに適切なクロップ画像として選択する。
【００３２】
２分割目のクロップは、クロップした画像とオリジナル画像の差分と、クロップした画像と１分割目のクロップ画像の差分を加算して、この加算した値がより大きいクロップ画像を、教師データに適切なクロップ画像として選択する。
【００３３】
以降、同様にオリジナル画像と選択されたクロップ画像のすべてとの差分を加算して、この値がより大きいものをクロップ画像として選択する。
【００３４】
そして、ステップＳ１０１で決定したクロップ数の、教師データに適切なクロップ画像を選択する。
【００３５】
上述のステップＳ１０３の繰り返し処理の詳細を、図４を用いて説明する。図４は、実施の形態１にかかる画像クロップ方法の一例を示すフローチャートである。
【００３６】
まず、ステップＳ２０１からステップＳ２０６までクロップ数分繰り返し、教師データに適切なクロップ画像として選択を選択するための処理が行われる。
【００３７】
さらに、ステップＳ２０２からステップＳ２０４まで、ランダムクロップ数分繰り返し、クロップした画像毎に上述の式（２）の計算を行われる。
【００３８】
ステップＳ２０３において、ランダムクロップ数分繰り返し、クロップした画像毎に上述の式（２）の計算を行い、総和ｄを算出する。
【００３９】
ステップＳ２０５において、総和ｄが最も大きい画像を教師データに適切なクロップ画像として選択を選択する。
【００４０】
以上の処理により、教師データに適切なクロップ画像を必要なクロップ数得ることができる。
【００４１】
このように本実施の形態の画像クロップ方法によれば、クロップ対象画像毎にクロップ数を決定し、ランダムクロップ後の画像ができるだけ異なる被写体(オブジェクトクラス)となるように教師画像データセットを選択することにより、オーバーフィッティングの発生を抑制できる教師データセットを提供できる。また、過学習の発生を抑制可能なデータオーギュメンテーション手法を提供できる。
【００４２】
すなわち、本実施の形態の画像クロップ方法は、画像における物体認識を行うための学習の際に、過学習の発生を抑制した教師データセットのクロップによる拡張を実現できる。
教師データセットの拡張により、物体認識率が向上することで、様々な産業用途に適用でき、たとえばカメラのシーン認識機能などに活用することができる。
【００４３】
例えば、電子撮像装置にはシーンや物体認識を備えてシーンに最適な画像処理を行うものがある。画像処理にはホワイトバランス、色補正、エッジ強調、ノイズリダクション、ガンマ補正などがあり、シーンに合わせて最適な画質になるように設定を変更する。
【００４４】
シーンや物体認識の技術としてセマンティックセグメンテーションがあり、ニューラルネットワークで推論する。本実施の形態の画像クロップ方法を適用するにより、セマンティックセグメンテーションの学習の際に教師画像データをクロップによって拡張することで推論精度を向上することができる。
【００４５】
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。
【００４６】
例えば、オリジナル学習データは、画像中にある複数のオブジェクトクラスに分類がなされた画像のデータセットであって、ステップＳ１０１において、画像中のオブジェクト分類の数に基づいてクロップ数を決定するようにしてもよい。
【００４７】
また、ステップＳ１０２において、切り出しの始点（ｓｘ、ｓｙ）、終点（ｅｘ、ｅｙ）または、幅（ｗ）、高さ（ｈ）をランダム値によって算出するようにしてもよい。
【００４８】
また、ステップＳ１０２において、あらかじめ設定した、幅（ｗ）、高さ（ｈ）の比率範囲となるようにランダム値の範囲を設定するようにしてもよい。
【００４９】
また、ステップＳ１０２において、あらかじめ設定された複数の領域をクロップするようにしてもよい。
【００５０】
また、ステップＳ１０３において、オリジナル画像及び各クロップ画像が異なるオブジェクトクラス配分になるようにクロップ画像を選択するようにしてもよい。
【００５１】
また、様々な処理を行う各行程として図面に記載される各要素は、ハードウェア的には、ＣＰＵ、メモリ、その他の回路で構成することができ、ソフトウェア的には、メモリにロードされたプログラムなどによって実現される。したがって、これらの機能ブロックがハードウェアのみ、ソフトウェアのみ、またはそれらの組合せによっていろいろな形で実現できることは当業者には理解されるところであり、いずれかに限定されるものではない。
【００５２】
また、上述したプログラムは、様々なタイプの非一時的なコンピュータ可読媒体を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体（例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ）、光磁気記録媒体（例えば光磁気ディスク）、ＣＤ−ＲＯＭ（Read Only Memory）、ＣＤ−Ｒ、ＣＤ−Ｒ／Ｗ、半導体メモリ（例えば、マスクＲＯＭ、ＰＲＯＭ（Programmable ROM）、ＥＰＲＯＭ（Erasable PROM）、フラッシュＲＯＭ、ＲＡＭ（Random Access Memory））を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
【符号の説明】
【００５３】
１１，２１〜２６  領域
【図１】
2020177486.tif 000005
【図２】
2020177486.tif 000006
【図３】
2020177486.tif 000007
【図４】
2020177486.tif 000008