(57)【要約】【課題】  ランドマークのクラスごとの基準点の位置を正確に推定するための装置及び方法を提供する。【解決手段】一実施形態に係るトレーニング装置は、クラスに依存して定義された測位損失を介してイメージ認識モデルをトレーニングさせることができる。【選択図】      図５
2020064619.tif 000002
【特許請求の範囲】
【請求項１】
イメージ認識モデルをトレーニングさせる方法において、
イメージ認識モデルに基づいて、トレーニングデータからクラス損失及びクラスに依存的な測位損失を算出するステップと、
前記クラス損失及び前記測位損失を含む全体損失を用いて、前記イメージ認識モデルをトレーニングさせるステップと、
を含むイメージ認識モデルをトレーニングさせる方法。
【請求項２】
前記クラス損失及びクラスに依存的な測位損失を算出するステップは、
前記イメージ認識モデルに基づいて、トレーニング入力イメージから臨時クラス情報及び臨時基準点情報を算出するステップと、
前記臨時クラス情報及び実際クラス情報に基づいて前記クラス損失を算出するステップと、
前記臨時基準点情報及び実際基準点情報に基づいて前記測位損失を算出するステップと、
を含む、請求項１に記載のイメージ認識モデルをトレーニングさせる方法。
【請求項３】
前記臨時クラス情報及び臨時基準点情報を算出するステップは、前記トレーニング入力イメージの各サブ領域ごとに前記臨時クラス情報及び前記臨時基準点情報を算出するステップを含む、請求項２に記載のイメージ認識モデルをトレーニングさせる方法。
【請求項４】
前記クラス損失を算出するステップは、
前記トレーニング入力イメージのサブ領域ごとに算出された臨時クラス情報と実際クラス情報との間の部分クラス損失を算出するステップと、
前記トレーニング入力イメージの前記サブ領域のそれぞれに対して算出された部分クラス損失の合計を前記クラス損失として決定するステップと、
を含む、請求項３に記載のイメージ認識モデルをトレーニングさせる方法。
【請求項５】
前記クラス損失を算出するステップは、
前記トレーニング入力イメージのサブ領域のうち実際のランドマーク部分に対応するサブ領域を選択するステップと、
前記選択されたサブ領域に対して算出された臨時クラス情報と実際クラス情報との間の部分クラス損失を算出するステップと、
前記選択されたサブ領域に対して算出された部分クラス損失の合計を前記クラス損失として決定するステップと、
を含む、請求項３に記載のイメージ認識モデルをトレーニングさせる方法。
【請求項６】
前記サブ領域を選択するステップは、前記トレーニング入力イメージのサブ領域のうち実際の背景部分に対応するサブ領域をさらに選択するステップを含む、請求項５に記載のイメージ認識モデルをトレーニングさせる方法。
【請求項７】
前記測位損失を算出するステップは、
前記トレーニング入力イメージのサブ領域ごとに該当のサブ領域に対して算出された臨時基準点情報と実際基準点情報との間の部分測位損失を算出するステップと、
前記サブ領域のそれぞれに対して算出された部分測位損失の合計を前記測位損失として決定するステップと、
を含む、請求項３に記載のイメージ認識モデルをトレーニングさせる方法。
【請求項８】
前記測位損失を算出するステップは、
前記トレーニング入力イメージのサブ領域のうち実際のランドマーク部分に対応するサブ領域を選択するステップと、
前記選択されたサブ領域に対して算出された基準点情報と実際基準点情報との間の部分測位損失を算出するステップと、
前記選択されたサブ領域に対して算出された部分測位損失の合計を前記測位損失として決定するステップと、
を含む、請求項３に記載のイメージ認識モデルをトレーニングさせる方法。
【請求項９】
前記の部分測位損失を算出するステップは、前記選択されたサブ領域から実際の背景部分のサブ領域を排除するステップを含む、請求項８に記載のイメージ認識モデルをトレーニングさせる方法。
【請求項１０】
前記トレーニング入力イメージの各サブ領域ごとに前記臨時クラス情報及び前記臨時基準点情報を算出するステップは、前記各サブ領域に設定された複数のアンカーノードごとに前記臨時クラス情報及び前記臨時基準点情報を算出するステップを含む、請求項３に記載のイメージ認識モデルをトレーニングさせる方法。
【請求項１１】
前記各サブ領域に設定された複数のアンカーノードごとに前記臨時クラス情報及び前記臨時基準点情報を算出するステップは、前記複数のアンカーノードごとに算出された信頼度に基づいて、上位信頼度を有するアンカーノードに対して臨時クラス情報及び臨時基準点情報を算出するステップを含む、請求項１０に記載のイメージ認識モデルをトレーニングさせる方法。
【請求項１２】
前記各サブ領域に設定された複数のアンカーノードごとに前記臨時クラス情報及び前記臨時基準点情報を算出するステップは、前記複数のアンカーノードのそれぞれに対して算出された信頼度の中から信頼度閾値未満の信頼度を有するアンカーノードを排除するステップを含む、請求項１０に記載のイメージ認識モデルをトレーニングさせる方法。
【請求項１３】
前記クラス損失及びクラスに依存的な測位損失を算出するステップは、
臨時クラス情報に基づいてクラス基盤加重値を算出するステップと、
前記クラス基盤加重値、臨時基準点情報、及び実際基準点情報に基づいて前記クラスに依存的な測位損失を決定するステップと、
を含む、請求項１に記載のイメージ認識モデルをトレーニングさせる方法。
【請求項１４】
前記クラスに依存的な測位損失を決定するステップは、前記臨時基準点情報と前記実際基準点情報との間の差に前記クラス基盤加重値を適用することによって、前記クラスに依存的な測位損失を決定するステップを含む、請求項１３に記載のイメージ認識モデルをトレーニングさせる方法。
【請求項１５】
前記トレーニングさせるステップは、前記全体損失を最小化するように前記イメージ認識モデルのパラメータをアップデートするステップを含む、請求項１−１４のうちの何れか一項に記載のイメージ認識モデルをトレーニングさせる方法。
【請求項１６】
前記パラメータをアップデートするステップは、前記全体損失が収斂するように、前記イメージ認識モデルのパラメータのアップデートを繰り返すステップを含む、請求項１５に記載のイメージ認識モデルをトレーニングさせる方法。
【請求項１７】
前記パラメータをアップデートするステップは、前記クラス損失が前記測位損失よりも先に最小化されるように、前記パラメータをアップデートするステップを含む、請求項１５に記載のイメージ認識モデルをトレーニングさせる方法。
【請求項１８】
請求項１乃至請求項１７のうち何れか一項に記載の方法を装置のコンピュータに実行させるための命令語を含むコンピュータプログラム。
【請求項１９】
トレーニング装置において、
イメージ認識モデルを格納するメモリと、
前記イメージ認識モデルに基づいて、トレーニングデータからクラス損失及びクラスに依存的な測位損失を算出し、前記クラス損失及び前記測位損失を含む全体損失を用いて前記イメージ認識モデルをトレーニングさせるプロセッサと、
を含むトレーニング装置。
【請求項２０】
イメージを認識する方法において、
入力イメージを取得するステップと、
イメージ認識モデルに基づいて、前記入力イメージから前記入力イメージに示されたランドマークのクラス及び前記ランドマークの基準点を推定するステップと、
を含むイメージを認識する方法。
【発明の詳細な説明】
【技術分野】
【０００１】
以下、イメージ認識モデルをトレーニングさせる技術が提供される。
【背景技術】
【０００２】
近年、入力パターンを特定のグループに分類する問題を解決する方法として、人が有する効率的なパターン認識方法を実際のコンピュータに適用しようとする研究が盛んに行われている。このような研究の１つとして、人の生物学的な神経細胞の特性を数学的な表現によりモデリングした人工ニューラルネットワーク（ａｒｔｉｆｉｃｉａｌ  ｎｅｕｒａｌ  ｎｅｔｗｏｒｋ）に対する研究が行われている。入力パターンを特定のグループに分類する問題を解決するために、人工ニューラルネットワークは、人が有している学習という能力を模倣したアルゴリズムを用いる。このアルゴリズムを介して人工ニューラルネットワークは、入力パターンと出力パターンとの間のマッピング（ｍａｐｐｉｎｇ）を生成することができ、人工ニューラルネットワークは学習能力を有する。また、人工ニューラルネットワークは、学習された結果に基づいて学習に利用されていない入力パターンに対して、比較的に正しい出力を生成できる一般化能力を有している。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
一実施形態の課題は、イメージ認識装置において、国ごとクラスごとに変わり得るランドマーク基準点の位置を推定することにある。
【０００４】
一実施形態の課題は、イメージ認識装置において、ランドマーク基準点を用いて装置の位置を推定することにある。
【課題を解決するための手段】
【０００５】
一実施形態に係るイメージ認識モデルをトレーニングさせる方法は、イメージ認識モデルに基づいて、トレーニングデータからクラス損失及びクラスに依存的な測位損失を算出するステップと、前記クラス損失及び前記測位損失を含む全体損失を用いて、前記イメージ認識モデルをトレーニングさせるステップとを含む。
【０００６】
前記クラス損失及びクラスに依存的な測位損失を算出するステップは、前記イメージ認識モデルに基づいて、トレーニング入力イメージから臨時クラス情報及び臨時基準点情報を算出するステップと、前記臨時クラス情報及び実際クラス情報に基づいて前記クラス損失を算出するステップと、前記臨時基準点情報及び実際基準点情報に基づいて前記測位損失を算出するステップとを含み得る。
【０００７】
前記臨時クラス情報及び臨時基準点情報を算出するステップは、前記トレーニング入力イメージの各サブ領域ごとに前記臨時クラス情報及び前記臨時基準点情報を算出するステップを含み得る。
【０００８】
前記クラス損失を算出するステップは、前記トレーニング入力イメージのサブ領域ごとに算出された臨時クラス情報と実際クラス情報との間の部分クラス損失を算出するステップと、前記トレーニング入力イメージの前記サブ領域のそれぞれに対して算出された部分クラス損失の合計を前記クラス損失として決定するステップとを含み得る。
【０００９】
前記クラス損失を算出するステップは、前記トレーニング入力イメージのサブ領域のうち実際のランドマーク部分に対応するサブ領域を選択するステップと、前記選択されたサブ領域に対して算出された臨時クラス情報と実際クラス情報との間の部分クラス損失を算出するステップと、前記選択されたサブ領域に対して算出された部分クラス損失の合計を前記クラス損失として決定するステップとを含み得る。
【００１０】
前記サブ領域を選択するステップは、前記トレーニング入力イメージのサブ領域のうち実際の背景部分に対応するサブ領域をさらに選択するステップを含み得る。
【００１１】
前記測位損失を算出するステップは、前記トレーニング入力イメージのサブ領域ごとに該当のサブ領域に対して算出された臨時基準点情報と実際基準点情報との間の部分測位損失を算出するステップと、前記サブ領域のそれぞれに対して算出された部分測位損失の合計を前記測位損失として決定するステップとを含み得る。
【００１２】
前記測位損失を算出するステップは、前記トレーニング入力イメージのサブ領域のうち実際のランドマーク部分に対応するサブ領域を選択するステップと、前記選択されたサブ領域に対して算出された基準点情報と実際基準点情報との間の部分測位損失を算出するステップと、前記選択されたサブ領域に対して算出された部分測位損失の合計を前記測位損失として決定するステップとを含み得る。
【００１３】
前記の部分測位損失を算出するステップは、前記選択されたサブ領域から実際の背景部分のサブ領域を排除するステップを含み得る。
【００１４】
前記トレーニング入力イメージの各サブ領域ごとに前記臨時クラス情報及び前記臨時基準点情報を算出するステップは、前記各サブ領域に設定された複数のアンカーノードごとに前記臨時クラス情報及び前記臨時基準点情報を算出するステップを含み得る。
【００１５】
前記各サブ領域に設定された複数のアンカーノードごとに前記臨時クラス情報及び前記臨時基準点情報を算出するステップは、前記複数のアンカーノードごとに算出された信頼度に基づいて、上位信頼度を有するアンカーノードに対して臨時クラス情報及び臨時基準点情報を算出するステップを含み得る。
【００１６】
前記各サブ領域に設定された複数のアンカーノードごとに前記臨時クラス情報及び前記臨時基準点情報を算出するステップは、前記複数のアンカーノードのそれぞれに対して算出された信頼度の中から信頼度閾値未満の信頼度を有するアンカーノードを排除するステップを含み得る。
【００１７】
前記クラス損失及びクラスに依存的な測位損失を算出するステップは、臨時クラス情報に基づいてクラス基盤加重値を算出するステップと、前記クラス基盤加重値、臨時基準点情報、及び実際基準点情報に基づいて前記クラスに依存的な測位損失を決定するステップとを含み得る。
【００１８】
前記クラスに依存的な測位損失を決定するステップは、前記臨時基準点情報と前記実際基準点情報との間の差に前記クラス基盤加重値を適用することによって、前記クラスに依存的な測位損失を決定するステップを含み得る。
【００１９】
前記トレーニングさせるステップは、前記全体損失を最小化するように前記イメージ認識モデルのパラメータをアップデートするステップを含み得る。
【００２０】
前記パラメータをアップデートするステップは、前記全体損失が収斂するように、前記イメージ認識モデルのパラメータのアップデートを繰り返すステップを含み得る。
【００２１】
前記パラメータをアップデートするステップは、前記クラス損失が前記測位損失よりも先に最小化されるように、前記パラメータをアップデートするステップを含み得る。
【００２２】
一実施形態に係るトレーニング装置は、イメージ認識モデルを格納するメモリと、前記イメージ認識モデルに基づいて、トレーニングデータからクラス損失及びクラスに依存的な測位損失を算出し、前記クラス損失及び前記測位損失を含む全体損失を用いて前記イメージ認識モデルをトレーニングさせるプロセッサとを含む。
【００２３】
一実施形態に係るイメージを認識する方法は、入力イメージを取得するステップと、イメージ認識モデルに基づいて、前記入力イメージから前記入力イメージに示されたランドマークのクラス及び前記ランドマークの基準点を推定するステップとを含む。
【発明の効果】
【００２４】
一実施形態に係るイメージ認識装置は、イメージ認識モデルを用いてクラスごとに変わり得る基準点の位置をより正確に推定することができる。
【００２５】
一実施形態に係るイメージ認識装置は、入力イメージに示されるランドマークのクラスごとに指定された基準点の正確な位置を推定するため、その結果に基づいて車両又はモバイル端末の位置及び方向も正確に推定することができる。
【図面の簡単な説明】
【００２６】
【図１】一実施形態に係るイメージ認識モデルの概略的な構成を説明する図である。
【図２】一実施形態に係るイメージ認識モデルに基づいた入力イメージの認識を説明する図である。
【図３】一実施形態に係るイメージに示されるオブジェクトを説明する図である。
【図４Ａ】様々なランドマークを説明する図である。
【図４Ｂ】様々なランドマークを説明する図である。
【図４Ｃ】様々なランドマークを説明する図である。
【図４Ｄ】様々なランドマークを説明する図である。
【図４Ｅ】様々なランドマークを説明する図である。
【図４Ｆ】様々なランドマークを説明する図である。
【図５】一実施形態に係るイメージ認識モデルのトレーニングを説明する図である。
【図６】一実施形態に係るイメージ認識モデルのトレーニング過程を具体的に説明する図である。
【図７】一実施形態に係るトレーニングでサブ領域ごとに損失を算出する過程を説明する図である。
【図８】一実施形態に係るトレーニングで各サブ領域からアンカーノードごとに損失を算出する過程を説明する図である。
【図９】一実施形態に係るトレーニング装置の構成を説明するブロック図である。
【図１０】一実施形態に係るトレーニング方法を説明するフローチャートである。
【図１１Ａ】一実施形態に係る各損失関数ごとのトレーニングによる損失減少推移を説明する図である。
【図１１Ｂ】一実施形態に係る各損失関数ごとのトレーニングによる損失減少推移を説明する図である。
【図１１Ｃ】一実施形態に係る各損失関数ごとのトレーニングによる損失減少推移を説明する図である。
【図１２】一実施形態に係るイメージ認識装置の構成を説明するブロック図である。
【発明を実施するための形態】
【００２７】
実施形態に対する特定な構造的又は機能的な説明は単なる例示のための目的として開示されたものとして、様々な形態に変更される。したがって、実施形態は特定な開示形態に限定されるものではなく、本明細書の範囲は技術的な思想に含まれる変更、均等物ないし代替物を含む。
【００２８】
第１又は第２などの用語を複数の構成要素を説明するために用いることがあるが、このような用語は１つの構成要素を他の構成要素から区別する目的としてのみ解釈されなければならない。例えば、第１構成要素は第２構成要素と命名することができ、同様に第２構成要素は第１構成要素にも命名することができる。
【００２９】
いずれかの構成要素が他の構成要素に「連結」されているか「接続」されていると言及されたときには、その他の構成要素に直接的に連結されているか又は接続されているが、中間に他の構成要素が存在し得るものと理解されなければならない。
【００３０】
本明細書で用いられる用語は、単に特定の実施形態を説明するために使用されたものであり、本発明を限定しようとする意図はない。単数の表現は、文脈上、明白に異なる意味をもたない限り複数の表現を含む。本明細書において、「含む」又は「有する」等の用語は明細書上に記載した特徴、数字、ステップ、動作、構成要素、部品又はこれらを組み合わせたものが存在することを示すものであって、１つ又はそれ以上の他の特徴や数字、ステップ、動作、構成要素、部品、又はこれを組み合わせたものなどの存在又は付加の可能性を予め排除しないものとして理解しなければならない。
【００３１】
異なるように定義さがれない限り、技術的であるか又は科学的な用語を含むここで用いる全ての用語は、本実施形態が属する技術分野で通常の知識を有する者によって一般的に理解されるものと同じ意味を有する。一般的に用いられる予め定義された用語は、関連技術の文脈上で有する意味と一致する意味を有するものと解釈すべきであって、本明細書で明白に定義しない限り、理想的又は過度に形式的な意味として解釈されることはない。
【００３２】
以下、実施形態を添付の図面を参照して詳説する。添付図面を参照して説明することにおいて、図面符号に関わらず同じ構成要素は同じ参照符号を付与し、これに関する重複説明は省略することにする。
【００３３】
図１は、一実施形態に係るイメージ認識モデルの概略的な構成を説明する図である。
【００３４】
一実施形態に係るイメージ認識モデルは、入力イメージから認識結果を出力するようトレーニングされた機械学習構造である。例えば、イメージ認識モデルは、下のニューラルネットワーク１００で構成されるが、これに限定されることはない。一実施形態に係るイメージ認識モデルをトレーニングさせる装置（以下、「トレーニング装置」）は、イメージ認識モデルをトレーニングさせることができる。トレーニング装置は、自動車に装着されたカメラで出力されたイメージから、該当イメージに示される表示板などの位置及び種類をイメージ認識モデルにトレーニングさせ得る。イメージ認識装置は、トレーニングされたイメージ認識モデルに基づいて入力イメージを認識する。例えば、イメージ認識装置は、トレーニングが完了したイメージ認識モデルに基づいて、入力イメージに示されるオブジェクトを識別してもよい。ただし、これに限定されることなく、トレーニング装置は、イメージ認識装置と統合されて実現されてもよい。以下では、イメージ認識モデルの例示として、図１に示されたニューラルネットワーク１００について説明する。
【００３５】
ニューラルネットワーク１００は、単一ネックワークから構成されてもよいし、リカレントネットワークから構成されてもよい。例えば、ニューラルネットワーク１００は、ディープニューラルネットワーク（ＤＮＮ、ｄｅｅｐ  ｎｅｕｒａｌ  ｎｅｔｗｏｒｋ）の例示に該当する。ＤＮＮは、完全接続ネットワーク（ｆｕｌｌｙ  ｃｏｎｎｅｃｔｅｄ  ｎｅｔｗｏｒｋ）、畳み込みネットワーク（ｄｅｅｐ  ｃｏｎｖｏｌｕｔｉｏｎａｌ  ｎｅｔｗｏｒｋ）、及びリカレントニューラルネットワーク（ｒｅｃｕｒｒｅｎｔ  ｎｅｕｒａｌ  ｎｅｔｗｏｒｋ）、ＬＳＴＭ（ｌｏｎｇ−ｓｈｏｒｔ  ｔｅｒｍ  ｍｅｍｏｒｙ）ネットワーク、ＧＲＵ（ｇｒａｔｅｄ  ｒｅｃｕｒｒｅｎｔ  ｕｎｉｔｓ）などを含む。
【００３６】
例えば、ニューラルネットワーク１００は、入力イメージ、特徴マップ、及び出力を含んでいる複数のレイヤを有する構造で実現されてもよい。ニューラルネットワークでは、入力イメージ及びカーネルに示されるフィルタ間の畳み込み演算が実行されることができ、畳み込み演算の結果として特徴マップが出力される。ここで、出力される特徴マップは入力特徴マップであり、出力特徴マップとカーネルとの間の畳み込み演算が再び実行されれば、その結果として、新しい特徴マップが出力される。このような畳み込み演算の繰り返しの実行に基づいて、入力イメージの特徴の認識結果がニューラルネットワークを介して出力され得る。
【００３７】
ニューラルネットワーク１００は、ディープランニングに基づいて非線形関係にある入力データ及び出力データを互いにマッピングすることにより、オブジェクト分類、オブジェクト認識、音声認識、及びイメージ認識などを行うことができる。ディープランニングは、ビッグデータセットからイメージ又は音声認識のような問題を解決するための機械学習方式である。ディープランニングの指導式（ｓｕｐｅｒｖｉｓｅｄ）又は非指導式（ｕｎｓｕｐｅｒｖｉｓｅｄ）学習を介して入力データ及び出力データが互いにマッピングされる。
【００３８】
異なる例として、ニューラルネットワークは、入力ソース文章（例えば、音声エントリ）を入力イメージの代わりに含んでもよい。このような例示において、畳み込み演算は、入力ソース文章に対してカーネルで実行され、その結果として特徴マップが出力される。畳み込み演算は、出力特徴マップに対して再び実行されて新しい特徴マップが出力される。畳み込み演算がこのように繰り返し実行されれば、入力ソース文章の特徴に対する認識結果は、最終的にニューラルネットワークを介して出力される。
【００３９】
図１を参照すると、ニューラルネットワーク１００は、入力レイヤ１１０、隠しレイヤ１２０、及び出力レイヤ１３０を含む。入力レイヤ１１０、隠しレイヤ１２０、及び出力レイヤ１３０はそれぞれ複数の人工ノードを含む。
【００４０】
図１には、説明の便宜のために隠しレイヤ１２０が３つのレイヤを含むものと示したが、隠しレイヤ１２０は様々な数のレイヤを含んでもよい。また、図１にニューラルネットワーク１００は、入力データを受信するための別途の入力レイヤを含むものと示したが、入力データが隠しレイヤ１２０に直接入力されてもよい。ニューラルネットワーク１００から出力レイヤ１３０を除いたレイヤの人工ノードは、出力信号を送信するためのリンクを介して次のレイヤの人工ノードに接続される。リンクの数は、次のレイヤに含まれた人工ノードの数に対応する。例えば、ニューラルネットワーク１００は、サブサンプリングレイヤ、プーリングレイヤ、及び完全連結レイヤのような追加的なレイヤを含んでもよい。
【００４１】
隠しレイヤ１２０に含まれた各人工ノードには、以前レイヤに含まれた人工ノードの加重された入力に関する活性関数の出力が入力される。加重された入力は、以前レイヤに含まれた人工ノードの入力に接続加重値が乗算されたものである。接続加重値は、ニューラルネットワーク１００のパラメータと称されてもよい。活性関数は、シグモイド（ｓｉｇｍｏｉｄ）、双曲線（ｈｙｐｅｒｂｏｌｉｃ  ｔａｎｇｅｎｔ；ｔａｎｈ）及びＲｅＬＵ（ｒｅｃｔｉｆｉｅｄ  ｌｉｎｅａｒ  ｕｎｉｔ）を含んでもよく、活性関数によりニューラルネットワーク１００に非線型性が形成される。出力レイヤ１３０に含まれたそれぞれの人工ノードには、以前レイヤに含まれた人工ノードの加重された入力が入力される。
【００４２】
ニューラルネットワーク１００は、入力データが与えられれば、隠しレイヤ１２０を経て出力レイヤ１３０で分類及び認識しようとするクラス数に応じて関数値を算出し、そのうち最も大きい値を有するクラスで入力データを分類及び認識できる。ニューラルネットワーク１００は、入力データを分類あるいは認識できるが、以下は、説明の便宜のためにニューラルネットワーク１００の分類及び認識過程を認識過程として説明する。下記の認識過程に関する説明は、性格に反しない限り、分類過程にも適用されてもよい。
【００４３】
ニューラルネットワーク１００の幅と深さが十分に大きければ、任意の関数を実現する程の容量を有する。ニューラルネットワーク１００が適切なトレーニング過程を介して十分に多くのトレーニングデータを学習すれば、最適な認識性能を達成することができる。
【００４４】
図２は、一実施形態に係るイメージ認識モデルに基づいた入力イメージの認識を説明する図である。
【００４５】
一実施形態に係るイメージ認識装置は、イメージ認識モデル２１０に基づいて入力イメージ２０１から出力データ２０９を算出する。例えば、イメージ認識装置は、イメージ認識モデル２１０に基づいて、入力イメージ２０１からランドマークのクラス及びランドマークの基準点を推定する。ランドマークについては下記の図３を参照して説明し、ランドマークのクラス及び基準点については、下記の図４Ａ〜図４Ｆを参照して説明する。
【００４６】
参考として、出力データ２０９は、個別ランドマークのクラス及び基準点に関する情報を含む。例えば、イメージ認識装置は、最大Ｎ個のランドマークを識別し、ｉ番目のランドマークに対して基準点の座標及びクラス情報を出力データ２０９として算出する。図２において、ｉ番目のランドマークはＯｂｊｉに示し、ｉ番目のランドマークに対する基準点の座標は（ｘｉ＾，ｙｉ＾）により示され、ｉ番目のランドマークのクラス情報はｃｉ＾により示される。ここで、Ｎは１以上の整数、ｉは１以上Ｎ以下の整数を示す。クラス情報ｃｉ＾は、様々なランドマークの種類のうちｉ番目のランドマークが属する種類を指示するクラスを示す。
【００４７】
下記、図３ではランドマークに関し、様々なオブジェクトが示された入力イメージ２０１について説明する。
【００４８】
図３は、一実施形態に係るイメージに示されるオブジェクトを説明する図である。
【００４９】
図３に示された入力イメージ３０１は、様々なオブジェクトを示す。例えば、走行オブジェクト３８１は道路を走行するオブジェクトとして、車両が走行オブジェクト３８１に属する。走行オブジェクト３８２は歩道を移動するオブジェクトとして、人及び動物が走行オブジェクト３８２に属する。ランドマークオブジェクト（以下、「ランドマーク」）３９０は、運転者に道路を走行するために必要な情報を提供するために、任意の地理的位置に固定されたオブジェクトを示す。例えば、道路表示板及び信号機などがランドマーク３９０に属する。
【００５０】
このようなランドマーク３９０は、交通の主な地点に設けられて位置が固定されているため、自律走行に有用な情報を提供することができる。したがって、一実施形態に係るイメージ認識装置は、イメージ認識モデルに基づいてこのようなランドマーク３９０の種類を区分し、該当のランドマーク３９０の基準点の位置を推定する。トレーニング装置は、イメージ認識モデルが入力イメージ３０１に示されるランドマーク３９０の種類を区分して基準点の位置を推定するよう、該当のイメージ認識モデルをトレーニングさせることができる。
【００５１】
図４Ａ〜図４Ｆは、様々なランドマークを説明する図である。
【００５２】
図４Ａ〜図４Ｆは、それぞれ様々な種類のランドマークを示す。韓国の道路交通法によれば、ランドマークは合計６種のクラスに分類される。例えば、ランドマークは、注意標識４１１、規制標識４１２、指示標識４１３、補助標識４１４、路面表示４１６、信号機４１５に分類される。
【００５３】
図４Ａは、注意標識４１１の例示を示す。注意標識４１１は、道路状態が危険であるか、道路又はその近くに危険物がある場合に必要な安全措置ができるよう、これを道路のユーザに知らせる標識を示す。注意標識４１１クラスに属するランドマークの基準点４２１は、該当のランドマークを取り囲むバウンディングボックス（例えば、イメージ上の２次元バウンディングボックス）の中心地点であってもよい。
【００５４】
図４Ｂは、規制標識４１２の例示を示す。規制標識４１２は、道路交通の安全のために各種の制限禁止などの規制する場合にこれを道路のユーザへ知らせる標識を示す。規制標識４１２クラスに属するランドマークの基準点４２２は、該当のランドマークを取り囲むバウンディングボックスの中心地点であってもよい。
【００５５】
図４Ｃは、指示標識４１３の例示を示す。指示標識４１３は、道路の通行方法及び通行区分など道路交通の安全のために必要な指示をする場合、道路のユーザがこれに従うように知らせる標識を示す。指示標識４１３クラスに属するランドマークの基準点４２３は、該当のランドマークを取り囲むバウンディングボックスの中心地点であってもよい。
【００５６】
図４Ｄは、補助標識４１４の例示を示す。補助標識４１４は、注意標識４１１、規制標識４１２、又は、指示標識４１３の主な機能を補充して道路のユーザに知らせる標識を示す。補助標識４１４クラスに属するランドマークの基準点４２４は、該当のランドマークを取り囲むバウンディングボックスの中心地点であってもよい。
【００５７】
図４Ｅは、信号機４１５の例示を示す。信号機４１５は、道路交通に関して文字記号又は明かりとして、進行、停止、方向転換、及び注意などの信号を表示することで、様々な交通類に優先権を割り当てる機能を行う施設である。信号機４１５クラスに属するランドマークの基準点４２５は、信号機４１５を取り囲むバウンディングボックスの中心地点であってもよい。
【００５８】
図４Ｆは、路面表示４１６の例示を示す。路面表示４１６は、道路交通の安全のために各種の注意、規制、及び指示などの内容を路面に記号文字又は線で道路のユーザに知らせる標識を示す。路面表示４１６クラスに属するランドマークの基準点４２６は、該当のランドマークの右側下段の地点であり得る。
【００５９】
ただし、ランドマークの各クラスごとの分類及び指定された基準点の位置を上述したものに限定することはない。国ごとのクラスの種類が変わり、各クラスごとの基準点の位置で変わる。
【００６０】
一実施形態に係るイメージ認識モデルは、上述したようにクラスごとに変わり得る基準点の位置をより正確に推定するよう設計されたモデルを示す。ランドマークの他のタイプとして、例えば、ＭＵＴＣＤ（Ｍａｎｕａｌ  ｏｎ  Ｕｎｉｆｏｒｍ  Ｔｒａｆｆｉｃ  Ｃｏｎｔｒｏｌ  Ｄｅｖｉｃｅｓ）、ＳＨＳ（Ｓｔａｎｄａｒｄ  Ｈｉｇｈｗａｙ  Ｓｉｇｎｓ）、及び道路表示及び信号標準に関するウィーン協約が使用されてもよい。
【００６１】
図５は、一実施形態に係るイメージ認識モデルのトレーニングを説明する図である。
【００６２】
一実施形態に係るトレーニング装置は、トレーニングデータに基づいて、イメージ認識モデル５１０をトレーニングさせる。トレーニングデータは、トレーニング入力及び該当のトレーニング入力に対応するトレーニング出力の対を含む。トレーニング入力は、トレーニングイメージ５０１であってもよい。トレーニング出力は、該当のトレーニング入力に与えられた実際のデータ５０８（ｇｒｏｕｎｄ  ｔｒｕｔｈ  ｄａｔａ）として、例えば、トレーニングイメージ５０１に示されるランドマークの実際のクラス（ｇｒｏｕｎｄ  ｔｒｕｔｈ  ｃｌａｓｓ）及び実際基準点座標（ｇｒｏｕｎｄ  ｔｒｕｔｈ  ｒｅｆｅｒｅｎｃｅ  ｐｏｉｎｔ  ｃｏｏｒｄｉｎａｔｅ）を含む。
【００６３】
まず、トレーニング装置は、トレーニングイメージ５０１からイメージ認識モデル５１０に基づいて臨時出力５０９を算出する。トレーニングが完了していないイメージ認識モデル５１０は臨時モデルと示される。臨時モデルの出力を臨時出力５０９と示される。図５に示すように、トレーニング装置は、臨時出力５０９として、トレーニングイメージ５０１に示されるランドマークの基準点情報（例えば、（ｘｉ＾，ｙｉ＾））及びクラス情報（例えば、ｃｉ＾）を算出する。
【００６４】
トレーニング装置は、算出された臨時出力５０９及び実際のデータ５０８に基づいて損失を算出する。例えば、トレーニング装置は、臨時クラス情報及び実際クラス情報に基づいてクラス損失を算出し、臨時基準点座標及び実際基準点座標に基づいて測位損失（ｌｏｃａｌｉｚａｔｉｏｎ  ｌｏｓｓ）を算出する。トレーニングイメージ５０１に示された任意のランドマークに対する臨時モデルの全体損失５０７は、下記の数式（１）のように簡略に表現される。
【００６５】
【数１】
2020064619.tif 000003
上述した数式（１）において、Ｌｔｏｔａｌは全体損失５０７、Ｌｃｌｓはクラス損失、Ｌｌｏｃは測位損失を示す。Ｃはトレーニングイメージ５０１に示されたランドマークに対して与えられた実際のクラスを示す。ｒは、トレーニングイメージ５０１に示されたランドマークに対して与えられた実際基準点座標として、（ｘ，ｙ）を示す。ｒ＾は、臨時モデルによって算出された臨時基準点座標として、（ｘｉ＾，ｙｉ＾）を示す。Ｌｃｌｓ（Ｃ）は、トレーニングイメージ５０１に示されたランドマークに対して臨時モデルに基づいて推定された臨時クラス情報と実際クラス情報との間のクラス損失を示す。Ｌｌｏｃ（ｒ，ｒ＾，Ｃ）は、トレーニングイメージ５０１に示されたランドマークに対して臨時モデルに基づいて推定された臨時基準点情報と実際基準点情報との間の測位損失を示す。λ［Ｃ≧１］は、測位損失に対してユーザにより設定される加重値として、トレーニングイメージ５０１にランドマークではない背景に属するクラス（例えば、Ｃ＝０）が示される場合には測位損失を排除し、ランドマークが示される場合にのみ測位損失を全体損失５０７に含ませる。
【００６６】
一実施形態に係るトレーニング装置は、上述したように算出された全体損失５０７が最小化されるよう、イメージ認識モデル５１０をトレーニングさせる。例えば、トレーニング装置は、全体損失５０７が収斂するまでイメージ認識モデル５１０のパラメータを繰り返しアップデートしてもよい。
【００６７】
上述したように、数式（１）において測位損失は、クラスに依存して定義されているため、トレーニング装置は、イメージ認識モデル５１０のクラスに対する推定正確度が向上するほど、測位に対する推定正確度も向上するようにイメージ認識モデル５１０をトレーニングさせることができる。
【００６８】
上述した数式（１）に係る全体損失の算出及びトレーニング過程について下記の図６を参照してより詳細に説明する。
【００６９】
図６は、一実施形態に係るイメージ認識モデル６１０のトレーニング過程を具体的に説明する図である。
【００７０】
まず、トレーニング装置は、トレーニングデータ６９０からトレーニング入力６０１を取得する。
【００７１】
トレーニング装置は、イメージ認識モデル６１０に基づいて、トレーニング入力６０１から臨時出力を算出する。イメージ認識モデル６１０は、ディープニューラルネットワーク（ＤＮＮ、ｄｅｅｐ  ｎｅｕｒａｌ  ｎｅｔｗｏｒｋ）６１１を含む。例えば、トレーニング装置は臨時出力として、臨時クラス情報６８１ＤＮＮｃｌｓ及び臨時基準点情報６８２ＤＮＮｌｏｃを算出する。
【００７２】
例えば、トレーニング装置は、下記の数式（２）のように臨時クラス情報６８１ＤＮＮｃｌｓに対するクラス損失６７１Ｌｃｌｓを算出する。
【００７３】
【数２】
2020064619.tif 000004
上述した数式（２）は、トレーニングイメージに示される任意のあるランドマークに対するクラス損失６７１Ｌｃｌｓを示す。ただし、数式（２）は例示的な損失関数として、これに限定されることはない。ＰＣはクラス基盤加重値として、例えば、クラス基盤加重値は下記の数式（３）のように定義される。
【００７４】
【数３】
2020064619.tif 000005
参考として、ランドマークの種類が合計Ｍ個のクラスに分類されると仮定された場合、臨時クラス情報６８１は、トレーニングイメージに示されたランドマークが０回目のクラスに属する確率ないしＭ−１回目のクラスに属する確率を含む。例えば、臨時クラス情報６８１は、［ｐＣ０，．．．，ｐＣＭ−１］のようなクラス確率ベクトルに表現される。ｃｊは複数のクラスのうちｊ番目のクラスを示す。Ｃは、該当のランドマークに対して与えられた実際のクラスを示す。ΣＣｅｘｐ（ｐＣ）は、該当のランドマークが各クラスに属する確率の指数合計（ｅｘｐｏｎｅｎｔｉａｌ  ｓｕｍ）を示す。また、臨時クラス情報６８１でｐＣは、ランドマークが実際のクラスＣに属する確率を示す。したがって、クラス基盤加重値ＰＣは、イメージ認識モデル６１０に基づいて複数のクラスに対して推定された確率のうち、該当のランドマークに対して与えられた実際のクラスＣに対して推定された確率が定量化された値を示す。トレーニング装置は、トレーニングデータ６９０から実際のクラスＣを取得する。
【００７５】
また、トレーニング装置は、下記の数式（４）のように臨時測位情報ＤＮＮｌｏｃに対する測位損失６７２Ｌｌｏｃを算出する。
【００７６】
【数４】
2020064619.tif 000006
上述した数式（４）は、トレーニングイメージに示される任意のあるランドマークに対する測位損失６７２Ｌｌｏｃを示す。ｍは該当のランドマークの実際基準点座標を示し、ｍ＾は、イメージ認識モデル６１０に基づいて推定された基準点座標を示す。トレーニング装置は、トレーニングデータ６９０から実際基準点座標を取得する。ｓｍｏｏｔｈＬ１は、Ｌ１損失関数及びＬ２損失関数が混合した関数として、ユークリッド距離関数の一種を示す。ただし、距離関数がこれに限定されることはない。
【００７７】
数式（４）に示されたように、トレーニング装置は、臨時基準点情報６８２と実際基準点情報との間の差（例えば、ｓｍｏｏｔｈＬ１の値）にクラス基盤加重値ＰＣを適用することによって、クラスに依存的な測位損失を決定し得る。したがって、測位損失６７２Ｌｌｏｃは、クラス基盤加重値ＰＣに依存的な損失として定義される。上述した数式（４）による測位損失６７２Ｌｌｏｃを介して、トレーニング装置は、イメージ認識モデル６１０の分類の正確度が正確度閾値よりも低い場合、全体損失６７９Ｌｔｏｔａｌで測位損失６７２Ｌｌｏｃの大きさを減少させることにより、イメージ認識モデル６１０で分類に該当する部分を先にトレーニングさせる。トレーニング装置は、分類の正確度が正確度閾値以上である場合、全体損失６７９Ｌｔｏｔａｌで測位損失６７２Ｌｌｏｃの大きさを増加させることにより、イメージ認識モデル６１０で測位に該当する部分をトレーニングする。したがって、トレーニング装置は、イメージ認識モデル６１０の分類性能を増加させてから測位性能を増加させることで、クラスによる測位認識を行うようにイメージ認識モデル６１０をトレーニングさせることができる。
【００７８】
参考として、トレーニングイメージが複数のサブ領域に分割される場合、トレーニング装置は各サブ領域に対して上述した数式（２）により部分クラス損失を算出し、部分クラス損失の合計から該当のトレーニングイメージに対する全体クラス損失を算出できる。トレーニング装置は、上述した数式（４）により部分測位損失を算出し、部分測位損失の合計から該当のトレーニングイメージに対する全体測位損失を算出できる。サブ領域は、下記の図７を参照して説明する。
【００７９】
図７は、一実施形態に係るトレーニングでサブ領域ごとに損失を算出する過程を説明する図である。
【００８０】
トレーニング装置は、イメージ認識モデル７１０に基づいてトレーニングイメージ７０１からサブ領域別に臨時出力７８０を算出する。例えば、トレーニング装置は、トレーニング入力イメージの各サブ領域ごとに臨時クラス情報及び臨時基準点情報を算出する。一実施形態によれば、トレーニング装置は、トレーニング入力イメージのサブ領域ごとに該当のサブ領域に対して算出された臨時クラス情報と実際クラス情報との間の部分クラス損失を算出する。トレーニング装置は、サブ領域（例えば、図７では合計２０個のサブ領域）に対して算出された部分クラス損失の合計をクラス損失として決定する。ただし、これに限定されることはない。
【００８１】
例えば、図７に示すように、トレーニング装置は、トレーニング入力イメージのサブ領域のうち、実際のランドマーク部分７８１に対応するサブ領域（例えば、図７では４個のサブ領域）を選択する。トレーニング装置は、選択されたサブ領域に対して算出された臨時クラス情報と実際クラス情報との間の部分クラス損失を算出する。トレーニング装置は、選択されたサブ領域に対して算出された部分クラス損失の合計をクラス損失として決定する。さらに、トレーニング装置は、トレーニング入力イメージのサブ領域のうち、実際の背景部分７８２に対応するサブ領域（例えば、図７では４個のサブ領域）をさらに選択してもよい。クラス分類に対するトレーニングのバランスのために、トレーニング装置は、実際のランドマーク部分７８１に対応するサブ領域の個数及び実際の背景部分７８２に対応するサブ領域の個数を類似に決定することができる。
【００８２】
また、トレーニング装置は、トレーニング入力イメージのサブ領域ごとに該当のサブ領域に対して算出された臨時基準点情報と実際基準点情報との間の部分測位損失を算出する。トレーニング装置は、サブ領域に対して算出された部分測位損失の合計を測位損失として決定する。トレーニング装置は、トレーニング入力イメージのサブ領域のうち、実際のランドマーク部分７８１に対応するサブ領域を選択する。トレーニング装置は、選択されたサブ領域に対して算出された基準点情報と実際基準点情報との間の部分測位損失を算出する。トレーニング装置は、選択されたサブ領域に対して算出された部分測位損失の合計を測位損失として決定する。トレーニング装置は、実際の背景部分７８２に対する部分測位損失の算出を排除する。実際の背景部分７８２では、ランドマークが示されていないため、測位損失を算出する必要がないからである。
【００８３】
参考として、トレーニング装置は、実際の出力７９２を生成するためにマップデータ７９１を変換する。実際の出力７９２は、実際クラス情報及び実際基準点情報を含む。一実施形態によれば、トレーニング装置は、実際のランドマーク部分７８１の実際基準点情報を生成するために、マップデータ７９１を変換する。例えば、マップデータ７９１は、ランドマークが位置する３次元座標に関する情報を含む。トレーニング装置は、マップデータ７９１でトレーニングイメージ７０１が撮影された位置及び姿勢（例えば、車両の姿勢）と共に、トレーニングイメージ７０１を撮影したイメージセンサの視野角などに基づいて、トレーニングイメージ７０１に示されるランドマークの３次元座標を２次元座標に変換する。トレーニング装置は、任意のサブ領域に対して算出された臨時基準点座標と上記のようにマップデータ７９１から変換された実際基準点座標７９３との間の差に基づいて部分測位損失を算出し得る。
【００８４】
トレーニング装置は、サブ領域ごとの部分クラス損失の合計であるクラス損失及びサブ領域ごとの部分測位損失の合計である測位損失に基づいて、全体損失７７０を算出することができる。
【００８５】
下記の図８では、サブ領域での部分クラス損失及び部分測位損失を算出するためのアンカーノードについて説明する。
【００８６】
図８は、一実施形態に係るトレーニングで各サブ領域でアンカーノードごとに損失を算出する過程を説明する図である。
【００８７】
トレーニング装置は、各サブ領域に設定された複数のアンカーノード８８１（ａｎｃｈｏｒ  ｎｏｄｅ）ごとに臨時クラス情報及び臨時基準点情報を算出する。例えば、図８において、トレーニング装置は、各サブ領域ごとに５個のアンカーノード８８１を設定する。
【００８８】
例えば、トレーニング装置は、トレーニングイメージの任意のサブ領域８８０で各アンカーノード８８１ごとに臨時測位座標８７１（ｘ＾，ｙ＾）を算出する。トレーニング装置は、基準出力のそれに対応するサブ領域８９０に含まれた実際基準点８９１に対する実際の座標８７２（ｘ，ｙ）及び臨時測位座標８７１（ｘ＾，ｙ＾）の差を算出する。トレーニング装置は、アンカーノード８８１ごとに算出された実際の座標８７２（ｘ，ｙ）及び臨時測位座標８７１（ｘ＾，ｙ＾）の差の合計から部分測位損失８７９を算出する。ただし、説明の便宜のために、臨時測位座標８７１（ｘ＾，ｙ＾）を算出するものとして説明したが、これに限定されることはない。トレーニング装置は、アンカーノード８８１ごとに、各アンカーノード８８１から基準点までのオフセットを臨時基準点情報として算出してもよい。オフセットは、アンカーノード８８１のピクセル位置から基準点までの位置変化量を示す。
【００８９】
また、トレーニング装置は、トレーニングイメージの任意のサブ領域８８０で各アンカーノード８８１ごとに臨時クラス情報８６１Ｃ＾を算出する。トレーニング装置は、基準出力のそれに対応するサブ領域８９０に含まれた実際クラス情報８６２ｃ及び臨時クラス情報８６１Ｃ＾から部分クラス損失８６９を算出する。
【００９０】
トレーニング装置は、複数のアンカーノード８８１に対して算出された損失を合算することによって、任意のサブ領域に対する部分測位損失８７９及び部分クラス損失８６９を算出する。トレーニング装置は、複数のサブ領域の部分損失を合算することにより全体損失を算出できる。
【００９１】
また、上記では全てのアンカーノード８８１を用いて損失を算出するものと説明したが、これに限定されることはない。例えば、トレーニング装置は、複数のアンカーノード８８１ごとに算出された信頼度に基づいて、上位信頼度を有するアンカーノード８８１に対して臨時クラス情報及び臨時基準点情報を算出してもよい。トレーニング装置は、最も高い信頼度を有するアンカーノード８８１から順にＫ個のアンカーノード８８１を選択し、選択されたＫ個のアンカーノード８８１に対して臨時クラス情報及び臨時基準点情報を算出してもよい。トレーニング装置は、任意のサブ領域で選択されたＫ個のアンカーノード８８１に基づいて、該当のサブ領域に対する部分損失を算出してもよい。ここで、Ｋは１以上の整数であり得る。トレーニング装置は、複数のアンカーノード８８１ごとに算出された信頼度に基づいて、信頼度閾値未満の信頼度を有するアンカーノード８８１を排除する。トレーニング装置は、該当のサブ領域で選択されたＫ個のアンカーノード８８１のうち、信頼度閾値未満の信頼度を有するアンカーノード８８１に対しては損失算出を排除する。したがって、トレーニング装置は、信頼度上位Ｋ個のアンカーノード８８１のうち、閾値の信頼度を充足するアンカーノード８８１のみを用いて損失を算出できる。
【００９２】
図９は、一実施形態に係るトレーニング装置の構成を説明するブロック図である。
【００９３】
一実施形態に係るトレーニング装置９００は、プロセッサ９１０及びメモリ９２０を含む。
【００９４】
プロセッサ９１０は、イメージ認識モデル９２１に基づいて、トレーニングデータからクラス損失及びクラスに依存的な測位損失を算出する。プロセッサ９１０は、クラス損失及び測位損失に基づいて算出された全体損失を用いて、イメージ認識モデル９２１をトレーニングさせる。ただし、プロセッサ９１０の動作がこれに限定されることなく、図１〜図８を参照して説明した動作も行うことができる。
【００９５】
プロセッサ９１０は、所望する動作を実行するための物理的な構造の回路を有するハードウェアとして構成されるデータ処理装置を示す。例えば、所望する動作はプログラムに含まれたコード又は命令語を含む。例えば、データ処理装置は、マイクロプロセッサ、ＣＰＵ、プロセッサコア、マルチコアプロセッサ、マルチプロセッサ、ＡＳＩＣ（ａｐｐｌｉｃａｔｉｏｎ−ｓｐｅｃｉｆｉｃ  ｉｎｔｅｇｒａｔｅｄ  ｃｉｒｃｕｉｔ）、及びＦＰＧＡ（ｆｉｅｌｄ  ｐｒｏｇｒａｍｍａｂｌｅ  ｇａｔｅ  ａｒｒａｙ）をハードウェアとして含み得る。プロセッサ９１０は、イメージ認識モデルを制御してプログラムを実行する。例えば、プロセッサ９１０は、ＧＰＵ（ｇｒａｐｈｉｃｓ  ｐｒｏｃｅｓｓｏｒ  ｕｎｉｔ）、再構成可能なプロセッサ、又は、他のタイプのマルチ又は単一プロセッサ構成であってもよい。プロセッサ９１０により実行されるプログラムコードは、メモリ９２０に格納される。プロセッサ９１０の詳細は後述する。
【００９６】
メモリ９２０は、イメージ認識モデル９２１を格納する。メモリ９２０は、トレーニングデータも格納してもよい。メモリ９２０は、イメージ認識モデル９２１によるトレーニングデータの評価結果を格納する。トレーニングデータは、トレーニング入力及びトレーニング出力の対を含む。本明細書でトレーニング入力はトレーニングイメージ９９１であり得る。トレーニング出力は、マップデータ９９２である得る。メモリ９２０は、プロセッサ９１０で処理中に生成される様々な情報を格納する。さらに、様々なデータ及びプログラムがメモリ９２０に格納される。メモリ９２０は、例えば、揮発性メモリ又は不揮発性メモリであってもよい。メモリ９２０は、様々なデータを格納するためにハードディスクのような大容量格納媒体を含む。メモリ９２０に関する詳細は後述することにする。
【００９７】
トレーニング装置９００は、マップデータ９９２を変換することによって実際の基準点情報及び実際クラス情報を取得する。例えば、プロセッサ９１０は、トレーニングイメージ９９１を撮影したイメージセンサの位置、姿勢、及び視野角などに基づいて、マップデータ９９２に含まれたランドマークのうち、イメージセンサにより撮影されるランドマークを抽出し、抽出されたランドマークの３次元座標をイメージ上の２次元座標に変換し得る。
【００９８】
図１０は、一実施形態に係るトレーニング方法を説明するフローチャートである。
【００９９】
まず、ステップＳ１０１０において、トレーニング装置は、イメージ認識モデルに基づいて、トレーニングデータからクラス損失及びクラスに依存的な測位損失を算出する。例えば、トレーニング装置は、イメージ認識モデルに基づいてトレーニング入力イメージから臨時クラス情報及び臨時基準点情報を算出する。トレーニング装置は、臨時クラス情報及び実際クラス情報に基づいてクラス損失を算出する。トレーニング装置は、臨時基準点情報及び実際基準点情報に基づいて測位損失を算出する。
【０１００】
一実施形態に係るトレーニング装置は、臨時クラス情報に基づいてクラス基盤加重値を算出する。トレーニング装置は、クラス基盤加重値、臨時基準点情報、及び実際基準点情報に基づいてクラスに依存的な測位損失を決定する。クラスに依存的な測位損失の決定については図６を参照して上述したため、詳しい説明は省略する。
【０１０１】
そして、ステップＳ１０２０において、トレーニング装置は、クラス損失及び測位損失に基づいて算出された全体損失を用いて、イメージ認識モデルをトレーニングさせる。例えば、トレーニング装置は、全体損失を最小化するようにイメージ認識モデルのパラメータをアップデートする。トレーニング装置は、全体損失が収斂するまで、イメージ認識モデルのパラメータのアップデートを繰り返す。したがって、トレーニング装置は、クラス損失が測位損失よりも先に最小化されるようパラメータをアップデートし得る。
【０１０２】
図１１Ａ〜図１１Ｃは、一実施形態に係る各損失関数ごとのトレーニングによる損失減少推移を説明する図である。
【０１０３】
図１１Ａ〜図１１Ｃにおいて、縦軸はクラス損失の大きさを示し、横軸は測位損失の大きさを示す。
【０１０４】
まず、図１１Ａは下記の数式（５）による損失関数に係るトレーニング推移を説明する図である。
【０１０５】
【数５】
2020064619.tif 000007
数式（５）において、Ｌｌｏｃ（ｒ，ｒ＾）はクラスに関係がない測位損失を示す。図１１ａに示すように、数式（５）により損失関数が定義される場合、クラス損失及び測位損失が互いに均等に線形的に減少する態様を示す。
【０１０６】
図１１Ｂは、下記の数式（６）に係る損失関数に係るトレーニング推移を説明する図である。図１１Ｃは、下記の数式（７）による損失関数に係るトレーニング推移を説明する図である。
【０１０７】
【数６】
2020064619.tif 000008
数式（６）及び数式（７）において、測位損失Ｌｌｏｃ（ｒ，ｒ＾）はクラス損失Ｌｃｌｓ（Ｃ）と関わっている。したがって、図１１Ｂ及び図１１Ｃに示すように、数式（６）及び数式（７）により損失関数が定義される場合、クラス損失が先に減少して測位損失が後ほど減少する態様を示す。
【０１０８】
図１２は、一実施形態に係るイメージ認識装置の構成を説明するブロック図である。
【０１０９】
一実施形態に係るイメージ認識装置１２００は、イメージ取得部１２１０、プロセッサ１２２０、及びメモリ１２３０、ＵＩ（ユーザインターフェース）又はディスプレイ１２４０、及び通信インターフェース１２５０を含む。プロセッサ１２２０、メモリ１２３０、イメージ取得部１２１０、ＵＩ又はディスプレイ１２４０、及び通信インターフェース１２５０は、通信バス１２０５を介して互いに通信する。
【０１１０】
イメージ取得部１２１０は、入力イメージを取得する。例えば、イメージ取得部１２１０は、イメージを撮影するイメージセンサを含む。イメージセンサは、例えば、カラーカメラ、深度センサ、赤外線センサ、熱画像センサ、レーダー（ｒａｄａｒ）センサ、及びライダ（ＬｉＤＡＲ）センサなどにより実現されるが、これに限定されることはない。
【０１１１】
プロセッサ１２２０は、イメージ認識モデルに基づいて、入力イメージから入力イメージに示されたランドマークのクラス及びランドマークの基準点を推定する。例えば、プロセッサ１２２０は、入力イメージに示された複数のランドマークのそれぞれに対して各ランドマークのクラス及び各ランドマークの基準点の座標を出力する。また、プロセッサ１２２０は、図１〜図１１を参照して上述した少なくとも１つの方法を行ってもよい。
【０１１２】
プロセッサ１２２０は、所望する動作を実行するための物理的な構造の回路を有するハードウェアとして構成されるデータ処理装置を示す。例えば、所望する動作は、プログラムに含まれたコード又は命令語を含む。例えば、データ処理装置は、マイクロプロセッサ、ＣＰＵ、プロセッサコア、マルチコアプロセッサ、マルチプロセッサ、ＡＳＩＣ（ａｐｐｌｉｃａｔｉｏｎ−ｓｐｅｃｉｆｉｃ  ｉｎｔｅｇｒａｔｅｄ  ｃｉｒｃｕｉｔ）、及びＦＰＧＡ（ｆｉｅｌｄ  ｐｒｏｇｒａｍｍａｂｌｅ  ｇａｔｅ  ａｒｒａｙ）をハードウェアとして含むことができる。プロセッサ１２２０は、イメージ認識モデルを制御してプログラムを実行する。例えば、プロセッサ１２２０は、ＧＰＵ（ｇｒａｐｈｉｃｓ  ｐｒｏｃｅｓｓｏｒ  ｕｎｉｔ）、再構成可能なプロセッサ、又は、他のタイプのマルチ回る単一プロセッサ構成であり得る。プロセッサ１２２０によって実行されるプログラムコードはメモリ１２３０に格納される。プロセッサ１２２０の詳細は後述する。
【０１１３】
メモリ１２３０は、トレーニングが完了したイメージ認識モデルを格納する。例えば、イメージ認識モデルは、図１〜図１１を参照して上述したトレーニング過程によりアップデートされたパラメータを有するモデルである。ただし、イメージ認識モデルのパラメータが固定されたものとして限定されず、リアルタイムの認識過程で、イメージ認識装置１２００はイメージ認識モデルのパラメータを今後アップデートしてもよい。
【０１１４】
メモリ１２３０は、プロセッサ１２２０で処理中に生成される様々な情報を格納する。さらに、様々なデータ及びプログラムがメモリ１２３０に格納される。メモリ１２３０は、例えば、揮発性メモリ又は非揮発性メモリであってもよい。メモリ１２３０は、様々なデータを格納するためにハードディスクのような大容量格納媒体を含む。メモリ１２３０に関する詳細は後述する。
【０１１５】
一実施形態に係るイメージ認識装置１２００は、図１〜図１１を参照して上述したようにクラスに依存的な測位損失関数に基づいてトレーニングされたイメージ認識モデルを用いることで、ランドマークの位置を正確に推定することができる。
【０１１６】
ＵＩ又はディスプレイ１２４０は、プロセッサ１２２０によって推定されたランドマークの位置を出力してもよいし、ランドマークの正確に推定された位置に基づいてマップデータ上にランドマークを指示する仮想オブジェクトを表示してもよい。ＵＩ又はディスプレイ１２４０は、ユーザインターフェースをレンダリングし、ディスプレイをレンダリングしてユーザ入力を受信できる１つ以上のハードウェア構成を含む物理的構造であり得る。ただし、ＵＩ又はディスプレイ１２４０を上述したものに限定せず、例えば、スマートフォン、ＥＧＤ（ｅｙｅ  ｇｌａｓｓ  ｄｉｓｐｌａｙ）のような他のディスプレイがイメージ認識装置１２００と動作的に接続して使用されてもよい。
【０１１７】
イメージ認識装置１２００は、車両の測位を行ってもよいし、モバイル端末の測位を行ってもよい。ここで言及された車両は、輸送、配達、又は、通信中任意のモードを示し、例えば、自動車、トラック、トラクター、スクーター、バイク、サイクル、水陸両用自動車、スノーモービル、船、公共輸送車両、バス、モノレール、汽車、トラム、自動又は無人走行車両、知能型車両、自律走行車両、無人航空機、電気車、ハイブリッドカー、スマート移動装置、ＡＤＡＳ（ａｄｖａｎｃｅｄ  ｄｒｉｖｅｒ  ａｓｓｉｓｔａｎｃｅ  ｓｙｓｔｅｍ）を有する知能型車両及びドローンを示す。例えば、スマート移動装置（ｓｍａｒｔ  ｍｏｂｉｌｉｔｙ  ｄｅｖｉｃｅ）は、例えば、電動ホイール（ｅｌｅｃｔｒｉｃ  ｗｈｅｅｌｓ）、電動キックボード（ｅｌｅｃｔｒｉｃ  ｋｉｃｋｂｏａｒｄ）、及び電気自転車などのような装置を含む。例えば、車両は、エンジンが走った車両及びエンジンが走らなかった車両を含んでもよく、動力エンジンを有する車両（例えば、耕うん機又はバイク）、自転車又は手押し車などであってもよい。
【０１１８】
また、ここで言及された車両の他にも、イメージ認識装置１２００は、例えば、スマートフォン、歩行補助装置、ウェラブル装置、セキュリティー装置、ロボット、移動端末、及び様々なＩｏＴ（Ｉｎｔｅｒｎｅｔ  ｏｆ  Ｔｈｉｎｇｓ）装置のような様々な装置に含まれてもよい。
【０１１９】
イメージ認識装置１２００は、入力イメージに示されるランドマークのクラスごとに指定された基準点の正確な位置を推定するため、車両又はモバイル端末の位置及び方向を推定するために使用される。ランドマークの基準点は、マップデータ（例えば、３Ｄ精密マップ）にその正確な位置が格納されているため、該当の位置を介して自動車の位置及び方向が推定され得るためである。
【０１２０】
以上述した装置は、ハードウェア構成要素、ソフトウェア構成要素、又はハードウェア構成要素及びソフトウェア構成要素の組み合せで具現される。例えば、本実施形態で説明した装置及び構成要素は、例えば、プロセッサ、コントローラ、ＡＬＵ（ａｒｉｔｈｍｅｔｉｃ  ｌｏｇｉｃ  ｕｎｉｔ）、デジタル信号プロセッサ（ｄｉｇｉｔａｌ  ｓｉｇｎａｌ  ｐｒｏｃｅｓｓｏｒ）、マイクロコンピュータ、ＦＰＡ（ｆｉｅｌｄ  ｐｒｏｇｒａｍｍａｂｌｅ  ａｒｒａｙ）、ＰＬＵ（ｐｒｏｇｒａｍｍａｂｌｅ  ｌｏｇｉｃ  ｕｎｉｔ）、マイクロプロセッサ、又は命令（ｉｎｓｔｒｕｃｔｉｏｎ）を実行して応答する異なる装置のように、１つ以上の汎用コンピュータ又は特殊目的コンピュータを用いて具現される。処理装置は、オペレーティングシステム（ＯＳ）及びオペレーティングシステム上で実行される１つ以上のソフトウェアアプリケーションを実行する。また、処理装置は、ソフトウェアの実行に応答してデータをアクセス、格納、操作、処理、及び生成する。理解の便宜のために、処理装置は１つが使用されるものとして説明する場合もあるが、当技術分野で通常の知識を有する者は、処理装置が複数の処理要素（ｐｒｏｃｅｓｓｉｎｇ  ｅｌｅｍｅｎｔ）及び／又は複数類型の処理要素を含むことが把握する。例えば、処理装置は、複数のプロセッサ又は１つのプロセッサ及び１つのコントローラを含む。また、並列プロセッサ（ｐａｒａｌｌｅｌ  ｐｒｏｃｅｓｓｏｒ）のような、他の処理構成も可能である。
【０１２１】
ソフトウェアは、コンピュータプログラム、コード、命令、又はそのうちの一つ以上の組合せを含み、所望の動作を行うよう処理装置を構成され、独立的又は結合的に処理装置を命令することができる。ソフトウェア及び／又はデータは、処理装置によって解釈され、処理装置に命令又はデータを提供するために、いずれかの類型の機械、構成要素、物理的装置、仮想装置、コンピュータ格納媒体又は装置、又は送信される信号波に永久的又は一時的に具体化することができる。ソフトウェアはネットワークに連結されたコンピュータシステム上に分散され、分散した方法で格納及び実行され得る。ソフトウェア及びデータは一つ以上のコンピュータで読出し可能な記録媒体に格納され得る。
【０１２２】
本実施形態による方法は、様々なコンピュータ手段を介して実施されるプログラム命令の形態で具現され、コンピュータ読み取り可能な記録媒体に記録される。記録媒体は、プログラム命令、データファイル、データ構造などを単独又は組み合せて含む。記録媒体及びプログラム命令は、本発明の目的のために特別に設計して構成されたものでもよく、コンピュータソフトウェア分野の技術を有する当業者にとって公知のものであり使用可能なものであってもよい。コンピュータ読み取り可能な記録媒体の例としては、ハードディスク、フロッピー（登録商標）ディスク及び磁気テープのような磁気媒体、ＣＤ−ＲＯＭ、ＤＹＩＪＤのような光記録媒体、フロプティカルディスクのような磁気−光媒体、及びＲＯＭ、ＲＡＭ、フラッシュメモリなどのようなプログラム命令を保存して実行するように特別に構成されたハードウェア装置を含む。プログラム命令の例としては、コンパイラによって生成されるような機械語コードだけでなく、インタプリタなどを用いてコンピュータによって実行される高級言語コードを含む。ハードウェア装置は、本発明に示す動作を実行するために１つ以上のソフトウェアモジュールとして作動するように構成してもよく、その逆も同様である。
【０１２３】
上述したように実施形態をたとえ限定された図面によって説明したが、当技術分野で通常の知識を有する者であれば、上記の説明に基づいて様々な技術的な修正及び変形を適用することができる。例えば、説明された技術が説明された方法と異なる順で実行されるし、及び／又は説明されたシステム、構造、装置、回路などの構成要素が説明された方法と異なる形態で結合又は組み合わせられてもよいし、他の構成要素又は均等物によって置き換え又は置換されたとしても適切な結果を達成することができる。
【０１２４】
したがって、本発明の範囲は、開示された実施形態に限定されて定められるものではなく、特許請求の範囲及び特許請求の範囲と均等なものなどによって定められるものである。
【符号の説明】
【０１２５】
９００：トレーニング装置
９１０：プロセッサ
９２０：メモリ
９２１：イメージ認識モデル
９９０：トレーニングデータ
【図１】
2020064619.tif 000009
【図２】
2020064619.tif 000010
【図３】
2020064619.tif 000011
【図４Ａ】
2020064619.tif 000012
【図４Ｂ】
2020064619.tif 000013
【図４Ｃ】
2020064619.tif 000014
【図４Ｄ】
2020064619.tif 000015
【図４Ｅ】
2020064619.tif 000016
【図４Ｆ】
2020064619.tif 000017
【図５】
2020064619.tif 000018
【図６】
2020064619.tif 000019
【図７】
2020064619.tif 000020
【図８】
2020064619.tif 000021
【図９】
2020064619.tif 000022
【図１０】
2020064619.tif 000023
【図１１Ａ】
2020064619.tif 000024
【図１１Ｂ】
2020064619.tif 000025
【図１１Ｃ】
2020064619.tif 000026
【図１２】
2020064619.tif 000027