(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-09-10
(45)【発行日】2024-09-19
(54)【発明の名称】学習プログラム、学習装置及び学習方法
(51)【国際特許分類】
G06T 7/00 20170101AFI20240911BHJP
【FI】
G06T7/00 350B
(21)【出願番号】P 2020142016
(22)【出願日】2020-08-25
【審査請求日】2023-07-19
(73)【特許権者】
【識別番号】506301140
【氏名又は名称】公立大学法人会津大学
(73)【特許権者】
【識別番号】000010098
【氏名又は名称】アルプスアルパイン株式会社
(74)【代理人】
【識別番号】100094525
【氏名又は名称】土井 健二
(74)【代理人】
【識別番号】100094514
【氏名又は名称】林 恒徳
(72)【発明者】
【氏名】富岡 洋一
(72)【発明者】
【氏名】趙 強福
(72)【発明者】
【氏名】志村 魁星
【審査官】秦野 孝一郎
(56)【参考文献】
【文献】特開2020-041326(JP,A)
【文献】国際公開第2019/189661(WO,A1)
【文献】特開2018-116599(JP,A)
【文献】特開平09-287915(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/00
(57)【特許請求の範囲】
【請求項1】
撮像装置によって撮像された複数の学習用画像データを取得したことに応じて、前記複数の学習用画像データごとに、各学習用画像データに映る
踏切警標、交差点または歩道橋を検出し、
前記複数の学習用画像データごとに、各学習用画像データにおける前記
踏切警標、交差点または歩道橋の位置情報に対して、前記撮像装置から前記
踏切警標、交差点または歩道橋までの距離情報を付加することによって、複数の学習データを生成し、
前記複数の学習データを用いた機械学習を行うことによって、学習モデルを生成する、
処理をコンピュータに実行させることを特徴とする学習プログラム。
【請求項2】
請求項1において、
前記複数の学習データを生成する処理では、前記複数の学習用画像データごとに、各学習用画像データと各学習用画像データに対応する前記位置情報とに対して、前記撮像装置から前記
踏切警標、交差点または歩道橋までの前記距離情報を付加することによって、前記複数の学習データの生成を行う、
ことを特徴とする学習プログラム。
【請求項3】
請求項1において、
前記位置情報は、前記
踏切警標、交差点または歩道橋のサイズを示す情報を含む、
ことを特徴とする学習プログラム。
【請求項4】
請求項
1において、
前記位置情報は、前記学習用画像データにおける前記
踏切警標、交差点または歩道橋の座標を示す情報と、前記
踏切警標、交差点または歩道橋のサイズを示す情報とを含む、
ことを特徴とする学習プログラム。
【請求項5】
請求項1において、さらに、
撮像装置によって撮像された第1検出用画像データを取得したことに応じて、前記第1検出用画像データに映る前記
踏切警標、交差点または歩道橋を検出し、
検出した前記
踏切警標、交差点または歩道橋の前記第1検出用画像データにおける位置情報の入力に伴って前記学習モデルから出力される値を、前記第1検出用画像データを撮像した前記撮像装置から前記
踏切警標、交差点または歩道橋までの第1距離情報として特定し、
特定した前記第1距離情報を出力する、
処理をコンピュータに実行させることを特徴とする学習プログラム。
【請求項6】
請求項
5において、
前記第1距離情報を特定する処理では、前記
踏切警標、交差点または歩道橋を検出する処理において複数の前記
踏切警標、交差点または歩道橋を検出した場合、前記複数の
踏切警標、交差点または歩道橋ごとに、前記第1検出用画像データを撮像した前記撮像装置から各
踏切警標、交差点または歩道橋までの前記第1距離情報を特定し、
前記第1距離情報を出力する処理では、特定した前記第1距離情報における最小値を出力する、
ことを特徴とする学習プログラム。
【請求項7】
請求項
6において、
前記第1距離情報を特定する処理では、前記第1距離情報における最大値と前記最小値との差を算出し、さらに、
前記第1検出用画像データの後に撮像された第2検出用画像データを取得したことに応じて、前記第2検出用画像データから前記
踏切警標、交差点または歩道橋を検出し、
前記最小値に対応する第1物体が検出されない場合、前記最大値に対応する第2物体の前記第2検出用画像データにおける位置情報の入力に伴って前記学習モデルから出力される値を、前記第2検出用画像データを撮像した前記撮像装置から前記第2物体までの第2距離情報として特定し、
特定した前記第2距離情報から前記差を減算することによって算出した第3距離情報を出力する、
処理をコンピュータに実行させることを特徴とする学習プログラム。
【請求項8】
請求項
6において、
前記第1距離情報を特定する処理では、前記複数の
踏切警標、交差点または歩道橋ごとに、各
踏切警標、交差点または歩道橋のサイズと前記
踏切警標、交差点または歩道橋と異なる他の種類の物体のサイズとの関係を特定し、さらに、
前記第1検出用画像データの後に撮像された第2検出用画像データを取得したことに応じて、前記第2検出用画像データから前記
踏切警標、交差点または歩道橋と前記他の種類の物体とを検出し、
前記最小値に対応する第1物体が検出されない場合、前記第2検出用画像データから検出した前記他の種類の物体のサイズと前記関係とから前記第1物体のサイズを算出し、
前記第1物体のサイズの入力に伴って前記学習モデルから出力される値を、前記第2検出用画像データを撮像した前記撮像装置から前記第1物体までの第4距離情報として特定し、
特定した前記第4距離情報を出力する、
処理をコンピュータに実行させることを特徴とする学習プログラム。
【請求項9】
請求項
8において、
前記関係を特定する処理では、前記複数の
踏切警標、交差点または歩道橋ごとに、前記他の種類の物体のサイズに対する各
踏切警標、交差点または歩道橋のサイズの割合を算出し、
前記第1物体のサイズを算出する処理では、前記第1物体が検出されない場合、前記第2検出用画像データから検出した前記他の種類の物体のサイズと前記割合とを乗算することによって前記第1物体のサイズを算出する、
ことを特徴とする学習プログラム。
【請求項10】
請求項
9において、
前記他の種類の物体は、踏切警標に取り付けられた信号機、方向指示器または注意柵である、
ことを特徴とする学習プログラム。
【請求項11】
撮像装置によって撮像された複数の学習用画像データを取得したことに応じて、前記複数の学習用画像データごとに、各学習用画像データに映る所定種類の物体を検出し、
前記複数の学習用画像データごとに、各学習用画像データにおける前記所定種類の物体の位置情報に対して、前記撮像装置から前記所定種類の物体までの距離情報を付加することによって、複数の学習データを生成し、
前記複数の学習データを用いた機械学習を行うことによって、学習モデルを生成し、
撮像装置によって撮像された第1検出用画像データを取得したことに応じて、前記第1検出用画像データに映る前記所定種類の物体を検出し、
検出した前記所定種類の物体の前記第1検出用画像データにおける位置情報の入力に伴って前記学習モデルから出力される値を、前記第1検出用画像データを撮像した前記撮像装置から前記所定種類の物体までの第1距離情報として特定し、
特定した前記第1距離情報を出力する、
処理をコンピュータに実行させ、
前記第1距離情報を特定する処理では、前記所定種類の物体を検出する処理において複数の前記所定種類の物体を検出した場合、前記複数の所定種類の物体ごとに、前記第1検出用画像データを撮像した前記撮像装置から各所定種類の物体までの前記第1距離情報を特定し、
前記第1距離情報を出力する処理では、特定した前記第1距離情報における最小値を出力することを特徴とする学習プログラム。
【請求項12】
撮像装置によって撮像された複数の学習用画像データを取得したことに応じて、前記複数の学習用画像データごとに、各学習用画像データに映る
踏切警標、交差点または歩道橋を検出する物体検出部と、
前記複数の学習用画像データごとに、各学習用画像データにおける前記
踏切警標、交差点または歩道橋の位置情報に対して、前記撮像装置から前記
踏切警標、交差点または歩道橋までの距離情報を付加することによって、複数の学習データを生成する学習データ生成部と、
前記複数の学習データを用いた機械学習を行うことによって、学習モデルを生成するモデル生成部と、を有する、
ことを特徴とする学習装置。
【請求項13】
撮像装置によって撮像された複数の学習用画像データを取得したことに応じて、前記複数の学習用画像データごとに、各学習用画像データに映る所定種類の物体を検出する物体検出部と、
前記複数の学習用画像データごとに、各学習用画像データにおける前記所定種類の物体の位置情報に対して、前記撮像装置から前記所定種類の物体までの距離情報を付加することによって、複数の学習データを生成する学習データ生成部と、
前記複数の学習データを用いた機械学習を行うことによって、学習モデルを生成するモデル生成部と、
撮像装置によって撮像された第1検出用画像データを取得したことに応じて、前記第1検出用画像データに映る前記所定種類の物体を検出する物体検出部と、
検出した前記所定種類の物体の前記第1検出用画像データにおける位置情報の入力に伴って前記学習モデルから出力される値を、前記第1検出用画像データを撮像した前記撮像装置から前記所定種類の物体までの第1距離情報として特定する距離特定部と、
特定した前記第1距離情報を出力する情報出力部と、を有し、
前記距離特定部は、前記所定種類の物体を検出する処理において複数の前記所定種類の物体を検出した場合、前記複数の所定種類の物体ごとに、前記第1検出用画像データを撮像した前記撮像装置から各所定種類の物体までの前記第1距離情報を特定し、
前記情報出力部は、特定した前記第1距離情報における最小値を出力することを特徴とする学習装置。
【請求項14】
撮像装置によって撮像された複数の学習用画像データを取得したことに応じて、前記複数の学習用画像データごとに、各学習用画像データに映る
踏切警標、交差点または歩道橋を検出し、
前記複数の学習用画像データごとに、各学習用画像データにおける前記
踏切警標、交差点または歩道橋の位置情報に対して、前記撮像装置から前記
踏切警標、交差点または歩道橋までの距離情報を付加することによって、複数の学習データを生成し、
前記複数の学習データを用いた機械学習を行うことによって、学習モデルを生成する、
処理をコンピュータに実行させることを特徴とする学習方法。
【請求項15】
撮像装置によって撮像された複数の学習用画像データを取得したことに応じて、前記複数の学習用画像データごとに、各学習用画像データに映る所定種類の物体を検出し、
前記複数の学習用画像データごとに、各学習用画像データにおける前記所定種類の物体の位置情報に対して、前記撮像装置から前記所定種類の物体までの距離情報を付加することによって、複数の学習データを生成し、
前記複数の学習データを用いた機械学習を行うことによって、学習モデルを生成し、
撮像装置によって撮像された第1検出用画像データを取得したことに応じて、前記第1検出用画像データに映る前記所定種類の物体を検出し、
検出した前記所定種類の物体の前記第1検出用画像データにおける位置情報の入力に伴って前記学習モデルから出力される値を、前記第1検出用画像データを撮像した前記撮像装置から前記所定種類の物体までの第1距離情報として特定し、
特定した前記第1距離情報を出力する、
処理をコンピュータに実行させ、
前記第1距離情報を特定する処理では、前記所定種類の物体を検出する処理において複数の前記所定種類の物体を検出した場合、前記複数の所定種類の物体ごとに、前記第1検出用画像データを撮像した前記撮像装置から各所定種類の物体までの前記第1距離情報を特定し、
前記第1距離情報を出力する処理では、特定した前記第1距離情報における最小値を出力することを特徴とする学習方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、学習プログラム、学習装置及び学習方法に関する。
【背景技術】
【0002】
近年、高齢者の生活活動を支援することを目的とした電動カート(以下、シニアカーとも呼ぶ)の利用が広がっている。高齢者は、例えば、シニアカーに乗車して買い物等の外出を行うことで、外出に伴う身体への負担を軽減させることが可能になる。
【0003】
ここで、上記のようなシニアカーは、例えば、悪路等の影響によって走行中に転倒する可能性がある。そして、高齢者は、この場合、自力で立ち上がることができない可能性がある。
【0004】
そのため、シニアカーは、例えば、特に走行を慎重に行う必要がある場所(例えば、走行経路上にある踏切)の存在を検出しながら走行を行う。そして、シニアカーは、例えば、走行経路上における踏切の存在を検知した場合、存在を検知した踏切についての情報を運転者(高齢者)に通知する。これにより、シニアカーは、走行時における運転者(高齢者)の安全を確保することが可能になる(特許文献1乃至3を参照)。
【先行技術文献】
【特許文献】
【0005】
【文献】特開2020-042853号公報
【文献】特開2017-016604号公報
【文献】特開平11-339197号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、上記のような踏切の存在有無についての情報は、シニアカーの運転者の安全性を確保するための情報として不十分である場合がある。そのため、シニアカーの分野では、走行経路上に存在する踏切についてのさらなる情報を提供が求められている。
【0007】
そこで、本発明の目的は、走行経路上における踏切についての情報を提供することを可能とする学習プログラム、学習装置及び学習方法を提供することにある。
【課題を解決するための手段】
【0008】
上記目的を達成するための本発明における学習プログラムは、撮像装置によって撮像された複数の学習用画像データを取得したことに応じて、前記複数の学習用画像データごとに、各学習用画像データに映る所定種類の物体を検出し、前記複数の学習用画像データごとに、各学習用画像データにおける前記所定種類の物体の位置情報に対して、前記撮像装置から前記所定種類の物体までの距離情報を付加することによって、複数の学習データを生成し、前記複数の学習データを用いた機械学習を行うことによって、学習モデルを生成する、処理をコンピュータに実行させることを特徴とする。
【0009】
また、上記目的を達成するための本発明における学習プログラムは、一つの態様では、前記複数の学習用画像データごとに、各学習用画像データと各学習用画像データに対応する前記位置情報とに対して、前記撮像装置から前記所定種類の物体までの前記距離情報を付加することによって、前記複数の学習データの生成を行う、ことを特徴とする。
【0010】
また、上記目的を達成するための本発明における学習プログラムは、一つの態様では、撮像装置によって撮像された第1検出用画像データを取得したことに応じて、前記第1検出用画像データに映る前記所定種類の物体を検出し、検出した前記所定種類の物体の前記第1検出用画像データにおける位置情報の入力に伴って前記学習モデルから出力される値を、前記第1検出用画像データを撮像した前記撮像装置から前記所定種類の物体までの第1距離情報として特定し、特定した前記第1距離情報を出力する、処理をコンピュータに実行させることを特徴とする。
【0011】
また、上記目的を達成するための本発明における学習プログラムは、一つの態様では、前記所定種類の物体を検出する処理において複数の前記所定種類の物体を検出した場合、前記複数の所定種類の物体ごとに、前記第1検出用画像データを撮像した前記撮像装置から各所定種類の物体までの前記第1距離情報を特定し、特定した前記第1距離情報における最小値を出力する、ことを特徴とする。
【0012】
また、上記目的を達成するための本発明における学習プログラムは、一つの態様では、前記第1距離情報における最大値と前記最小値との差を算出し、前記第1検出用画像データの後に撮像された第2検出用画像データを取得したことに応じて、前記第2検出用画像データから前記所定種類の物体を検出し、前記最小値に対応する第1物体が検出されない場合、前記最大値に対応する第2物体の前記第2検出用画像データにおける位置情報の入力に伴って前記学習モデルから出力される値を、前記第2検出用画像データを撮像した前記撮像装置から前記第2物体までの前記第2距離情報として特定し、特定した前記第2距離情報から前記差を減算することによって算出した第3距離情報を出力する、処理をコンピュータに実行させることを特徴とする。
【0013】
また、上記目的を達成するための本発明における学習プログラムは、一つの態様では、前記複数の所定種類の物体ごとに、各所定種類の物体のサイズと前記所定種類と異なる他の種類の物体のサイズとの関係を特定し、前記第1検出用画像データの後に撮像された第2検出用画像データを取得したことに応じて、前記第2検出用画像データから前記所定種類の物体と前記他の種類の物体とを検出し、前記最小値に対応する第1物体が検出されない場合、前記第2検出用画像データから検出した前記他の種類の物体のサイズと前記関係とから前記第1物体のサイズを算出し、前記第1物体のサイズの入力に伴って前記学習モデルから出力される値を、前記第2検出用画像データを撮像した前記撮像装置から前記第1物体までの第4距離情報として特定し、特定した前記第4距離情報を出力する、処理をコンピュータに実行させることを特徴とする。
【0014】
また、上記目的を達成するための本発明における学習プログラムは、一つの態様では、前記複数の所定種類の物体ごとに、前記他の種類の物体のサイズに対する各所定種類の物体のサイズの割合を算出し、前記第1物体が検出されない場合、前記第2検出用画像データから検出した前記他の種類の物体のサイズと前記割合とを乗算することによって前記第1物体のサイズを算出する、ことを特徴とする。
【0015】
また、上記目的を達成するための本発明における学習装置は、撮像装置によって撮像された複数の学習用画像データを取得したことに応じて、前記複数の学習用画像データごとに、各学習用画像データに映る所定種類の物体を検出する物体検出部と、前記複数の学習用画像データごとに、各学習用画像データにおける前記所定種類の物体の位置情報に対して、前記撮像装置から前記所定種類の物体までの距離情報を付加することによって、複数の学習データを生成する学習データ生成部と、前記複数の学習データを用いた機械学習を行うことによって、学習モデルを生成するモデル生成部と、を有する、ことを特徴とする。
【0016】
また、上記目的を達成するための本発明における学習方法は、撮像装置によって撮像された複数の学習用画像データを取得したことに応じて、前記複数の学習用画像データごとに、各学習用画像データに映る所定種類の物体を検出し、前記複数の学習用画像データごとに、各学習用画像データにおける前記所定種類の物体の位置情報に対して、前記撮像装置から前記所定種類の物体までの距離情報を付加することによって、複数の学習データを生成し、前記複数の学習データを用いた機械学習を行うことによって、学習モデルを生成する、処理をコンピュータに実行させることを特徴とする。
【発明の効果】
【0017】
本発明における学習プログラム、学習装置、学習方法によれば、走行経路上における踏切についての情報の提供を容易に行うことが可能になる。
【図面の簡単な説明】
【0018】
【
図1】
図1は、第1の実施の形態における情報処理装置1の構成例を示す図である。
【
図2】
図2は、シニアカー3と踏切4との関係を説明する図である。
【
図3】
図3は、第1の実施の形態における検出端末2の構成例を示す図である。
【
図4】
図4は、第1の実施の形態における学習処理の概略について説明する図である。
【
図5】
図5は、第1の実施の形態における推論処理の概略について説明する図である。
【
図6】
図6は、第1の実施の形態における学習処理の詳細を説明するフローチャート図である。
【
図7】
図7は、第1の実施の形態における推論処理の詳細を説明するフローチャート図である。
【
図8】
図8は、第1の実施の形態における推論処理の詳細を説明するフローチャート図である。
【
図9】
図9は、第1の実施の形態における推論処理の詳細を説明するフローチャート図である。
【
図10】
図10は、第1の実施の形態における推論処理の詳細を説明するフローチャート図である。
【
図11】
図11は、踏切4の具体例について説明する図である。
【
図12】
図12は、第1の学習モデルの具体例について説明する図である。
【
図13】
図13は、第1の学習モデルの具体例について説明する図である。
【発明を実施するための形態】
【0019】
以下、図面を参照して本発明の実施の形態について説明する。しかしながら、かかる実施の形態例が、本発明の技術的範囲を限定するものではない。
【0020】
初めに、第1の実施の形態における情報処理装置1(以下、学習装置1とも呼ぶ)の構成例について説明を行う。
図1は、第1の実施の形態における情報処理装置1の構成例を示す図である。
【0021】
情報処理装置1は、コンピュータ装置であって、例えば、汎用的なPC(Personal Computer)である。そして、情報処理装置1は、
図2に示すように、シニアカー3とシニアカー3の走行経路上に存在する踏切4との間における距離の算出(推定)を行う学習モデルの学習処理(以下、単に学習処理とも呼ぶ)を行う。
【0022】
情報処理装置1は、汎用的なコンピュータ装置のハードウエア構成を有し、例えば、
図1に示すように、プロセッサであるCPU101と、メモリ102と、通信インタフェース103と、記憶媒体104とを有する。各部は、バス105を介して互いに接続される。
【0023】
記憶媒体104は、例えば、学習処理を行うためのプログラム(図示しない)を記憶するプログラム格納領域(図示しない)を有する。
【0024】
また、記憶媒体104は、例えば、学習処理を行う際に用いられる情報を記憶する記憶部110(以下、記憶領域110とも呼ぶ)を有する。なお、記憶媒体104は、例えば、HDD(Hard Disk Drive)やSSD(Solid State Drive)であってよい。
【0025】
CPU101は、記憶媒体104からメモリ102にロードされたプログラムを実行して学習処理を行う。
【0026】
通信インタフェース103は、例えば、インターネット網等のネットワークNWを介して検出端末2と通信を行う。
【0027】
次に、第1の実施の形態における検出端末2の構成例について説明を行う。
図3は、第1の実施の形態における検出端末2の構成例を示す図である。
【0028】
検出端末2は、コンピュータ装置であって、例えば、スマートフォン等の携帯端末である。そして、検出端末2は、
図2に示すように、例えば、シニアカー3の進行方向前方付近に取り付けられる機器であって、情報処理装置1が生成した学習モデルを用いることによる推論処理(以下、単に推論処理とも呼ぶ)を行う。
【0029】
検出端末2は、汎用的なコンピュータ装置のハードウエア構成を有し、例えば、
図3に示すように、プロセッサであるCPU201と、メモリ202と、通信インタフェース203と、記憶媒体204とを有する。各部は、バス205を介して互いに接続される。
【0030】
記憶媒体204は、例えば、学習処理を行うためのプログラム(図示しない)を記憶するプログラム格納領域(図示しない)を有する。
【0031】
また、記憶媒体204は、例えば、情報処理装置1が生成した学習モデルを用いることによる推論処理を行う際に用いられる情報を記憶する記憶部210(以下、記憶領域210とも呼ぶ)を有する。なお、記憶媒体204は、例えば、HDDやSSDであってよい。
【0032】
CPU201は、記憶媒体204からメモリ202にロードされたプログラムを実行して学習処理を行う。
【0033】
通信インタフェース203は、例えば、インターネット網等のネットワークNWを介して情報処理装置1と通信を行う。なお、情報処理装置1と検出端末2との間における情報の移動は、例えば、作業者がUSBメモリ等の記憶媒体等を用いることによって手動で行うものであってもよい。
【0034】
具体的に、検出端末2は、例えば、シニアカー3の走行時において、カメラ等の撮像装置2aが撮像した走行経路についての動画データに含まれる画像データを、情報処理装置1から予め受信した学習モデルに対して連続的に入力する。そして、検出端末2は、学習モデルから出力された値を用いることにより、シニアカー3とシニアカー3の走行経路上に存在する踏切4との間における距離の算出を連続的に行う。さらに、検出端末2は、例えば、シニアカー3の運転手(高齢者)に対して、シニアカー3と踏切4との接近状況を示す情報やシニアカー3と踏切4の間における距離についての通知を行う。
【0035】
なお、検出端末2は、走行経路についての動画データを撮像する撮像装置2aを内蔵するものであってもよい。
【0036】
また、以下、学習処理が情報処理装置1において行われる場合について説明を行うが、学習処理は、検出端末2において行われるものであってもよい。すなわち、検出端末2は、自装置において生成した学習モデルを用いることによって推論処理を行うものであってもよい。
【0037】
[第1の実施の形態の概略]
次に、第1の実施の形態における学習処理及び推論処理の概略について説明を行う。
【0038】
初めに、第1の実施の形態における学習処理の概略について説明を行う。
図4は、第1の実施の形態における学習処理の概略について説明する図である。
【0039】
情報処理装置1の画像取得部111は、例えば、学習モデルの生成に用いられる複数の画像データ(以下、学習用画像データとも呼ぶ)を取得する。
【0040】
具体的に、画像取得部111は、例えば、作業者によって予め記憶領域110に記憶された動画データ(例えば、撮像装置2aによって予め撮像された動画データ)を構成する複数の画像データを取得する。
【0041】
そして、情報処理装置1の物体検出部112は、画像取得部111が取得した複数の画像データごとに、各画像データに映る所定種類の物体を検出する。
【0042】
具体的に、シニアカー3の走行経路上に存在する踏切4は、
図2に示すように、踏切警標4aを有している場合が多い。そのため、物体検出部112は、例えば、画像取得部111が取得した複数の画像データごとに、各画像データに含まれる踏切警標4aの検出を行う。
【0043】
続いて、情報処理装置1の学習データ生成部113は、画像取得部111が取得した複数の画像データごとに、各画像データにおける所定種類の物体の位置及びサイズについての情報(以下、これらを総称して単に位置情報とも呼ぶ)に対して、撮像装置2aから所定種類の物体までの距離情報(正解ラベル)を付加することによって、複数の学習データを生成する。
【0044】
具体的に、学習データ生成部113は、例えば、画像取得部111が取得した複数の画像データごとに、各画像データと、各画像データに映る踏切警標4aのX座標、Y座標、縦幅、横幅、面積及びアスペクト比等のうちの少なくとも一部と、撮像装置2aから各画像データに映る踏切警標4aまでの距離情報とを対応付けることによって、複数の学習データの生成を行う。
【0045】
なお、学習データ生成部113は、例えば、画像取得部111が取得した複数の画像データごとに、各画像データと各画像データにおける所定種類の物体に対応する位置情報とに対して、撮像装置2aから所定種類の物体までの距離情報を付加することによって、複数の学習データを生成するものであってもよい。
【0046】
また、学習データ生成部113は、例えば、踏切警標4aの縦幅と横軸のうちの最大値を位置情報として用いて複数の学習データの生成を行うものであってもよい。これにより、学習データ生成部113は、例えば、踏切警標4aの一部が障害物等の存在によって映っていない画像データが多い場合であっても、判定精度の高い学習モデルを生成可能な学習データを生成することが可能になる。
【0047】
その後、情報処理装置1のモデル生成部114は、学習データ生成部113が生成した複数の学習データを用いた機械学習を行うことによって、学習モデルを生成する。
【0048】
次に、第1の実施の形態における推論処理の概略について説明を行う。
図5は、第1の実施の形態における推論処理の概略について説明する図である。
【0049】
検出端末2の画像取得部211は、例えば、撮像装置2aによって撮像された動画データに含まれる画像データ(以下、検出用画像データとも呼ぶ)を取得する。具体的に、画像取得部211は、例えば、検出端末2から送信された画像データを受信する。
【0050】
そして、検出端末2の物体検出部212は、画像取得部211が取得した画像データに映る所定種類の物体を検出する。
【0051】
具体的に、物体検出部212は、例えば、画像取得部211が取得した画像データに含まれる踏切警標4aの検出を行う。
【0052】
続いて、検出端末2の距離特定部213は、物体検出部212が検出した所定種類の物体の画像データにおける位置情報の入力に伴って学習モデルから出力される値を、撮像装置2aから所定種類の物体までの距離情報として特定する。
【0053】
具体的に、距離特定部213は、例えば、画像取得部211が取得した画像データと、その画像データにおける踏切警標4aのX座標、Y座標、縦幅、横幅、面積及びアスペクト比等のうちの少なくとも一部の入力に伴って学習モデルから出力される値を、撮像装置2a(シニアカー3)から踏切警標4aまでの距離情報として特定する。
【0054】
その後、検出端末2の情報出力部214は、例えば、距離特定部213が特定した距離情報をシニアカー3の運転者(高齢者)に対して通知する。
【0055】
すなわち、本実施の形態における情報処理装置1は、例えば、シニアカー3の走行経路上における踏切4の存在有無についての情報だけでなく、シニアカー3と踏切4との間における距離情報についても運転者に通知する。
【0056】
これにより、情報処理装置1は、シニアカー3の走行中における運転者の安全性をより確保することが可能になる。
【0057】
[第1の実施の形態の詳細]
次に、第1の実施の形態における学習処理及び推論処理の詳細について説明を行う。
図6から
図10は、第1の実施の形態における学習処理及び推論処理の詳細を説明するフローチャート図である。また、
図11から
図13は、第1の実施の形態における学習処理及び推論の詳細を説明する図である。
【0058】
[学習処理の詳細]
初めに、第1の実施の形態における学習処理の詳細について説明を行う。
図6は、学習処理の詳細について説明する図である。
【0059】
画像取得部111は、
図6に示すように、例えば、学習タイミングになるまで待機する(S11のNO)。学習タイミングは、例えば、作業者が操作端末(図示しない)を介して学習モデルの学習処理を開始する旨の情報を入力したタイミングであってよい。
【0060】
そして、学習タイミングになった場合(S11のYES)、画像取得部111は、記憶領域110に記憶された動画データを構成する複数の画像データを取得する(S12)。
【0061】
続いて、物体検出部112は、S12の処理で取得した複数の画像データごとに、各画像データに映る踏切警標4aを検出する(S13)。
【0062】
具体的に、例えば、S12の処理において
図11に示す画像データを取得した場合、物体検出部112は、踏切4に含まれる踏切警標41aと踏切警標42aとをそれぞれ検出する。
【0063】
なお、物体検出部112は、この場合、例えば、学習済の学習モデル(YOLO(You Only Live Once)やSSD(Single Shot Multibox Detector)等による学習モデル)を用いることによって、踏切警標4aの検出を行うものであってよい。
【0064】
さらに、学習データ生成部113は、S12の処理で取得した複数の画像データごとに、各画像データと、各画像データに映る踏切警標4aの位置情報とに対して、撮像装置2aから踏切警標4aまでの距離情報を付加することによって、複数の学習データを生成する(S14)。そして、学習データ生成部113は、例えば、生成した複数の学習データを記憶領域110に記憶する。
【0065】
具体的に、作業者は、例えば、操作端末(図示しない)を介して、S12の処理で取得した複数の画像データごとに、撮像装置2aと各画像データに映る踏切警標4aとの間における距離情報を正解ラベルとして入力する。そして、学習データ生成部113は、S12の処理で取得した複数の画像データごとに、各画像データと各画像データにおける踏切警標4aの位置情報とに対して、作業者によって入力された距離情報を付加することによって、複数の学習データの生成を行う。
【0066】
その後、モデル生成部114は、S14の処理で生成した複数の学習データを用いた機械学習を行うことによって、学習モデルを生成する(S15)。以下、S15の処理で生成される学習モデルの具体例について説明を行う。
【0067】
[学習モデルの具体例(1)]
図12は、第1の学習モデルの具体例について説明する図である。具体的に、
図12は、最小二乗法を用いることによる学習モデルの具体例である。
【0068】
学習データ生成部113は、S14の処理において、例えば、S12の処理で取得した複数の画像データごとに、各画像データにおける踏切警標4aの縦幅に対して撮像装置2aから踏切警標4aまでの距離情報を正解ラベルとして付加することによって、複数の学習データを生成する。
【0069】
そして、モデル生成部114は、S15の処理において、S14の処理で生成した複数の学習データのそれぞれを対象とした最小二乗法を行うことにより、学習モデルを生成する。
【0070】
具体的に、モデル生成部114は、この場合、
図12に示すように、例えば、各学習データに含まれる踏切警標4aの逆数と各学習データに含まれる距離情報とに対応する点を平面上にプロットする。そして、モデル生成部114は、各点と回帰直線との差の二乗が最小になるように、以下の式(1)における係数A及び係数Bを算出することによって、学習モデルとして機能する回帰直線を生成する。
【0071】
【数1】
式(1)において、「推定距離」は、撮像装置2aから踏切警標4aまでの距離情報に対応し、「踏切警標の縦幅」は、踏切警標4aの縦幅に対応する。
【0072】
なお、学習データ生成部113は、S14の処理において、例えば、S12の処理で取得した複数の画像データごとに、各画像データにおける踏切警標4aの面積に対して撮像装置2aから踏切警標4aまでの距離情報を正解ラベルとして付加することによって、複数の学習データを生成するものであってもよい。
【0073】
[学習モデルの具体例(2)]
図13は、第2の学習モデルの具体例について説明する図である。具体的に、
図13は、ニューラルネットワークの具体例である。
【0074】
学習データ生成部113は、S14の処理において、例えば、S12の処理で取得した複数の画像データごとに、各画像データにおける踏切警標4aのX座標、Y座標、縦幅、横幅及び面積に対して撮像装置2aから踏切警標4aまでの距離情報を正解ラベルとして付加することによって、複数の学習データを生成する。
【0075】
そして、モデル生成部114は、S15の処理において、S13の処理で生成した複数の学習データのそれぞれを用いることによって、ニューラルネットワークの学習を行う。
【0076】
具体的に、モデル生成部114は、この場合、
図13に示すように、例えば、ニューラルネットワークの入力層から踏切警標4aのX座標、Y座標、縦幅、横幅及び面積のそれぞれに対応する値を入力することによって出力層から出力される値と、撮像装置2aから踏切警標4aまでの距離情報(正解ラベル)との差が小さくなるように、ニューラルネットワークの中間層に対応する重みのそれぞれを学習する。
【0077】
[推論処理の詳細(1)]
次に、第1の実施の形態における推論処理の詳細について説明を行う。
図7及び
図8は、推論処理の詳細について説明する図である。
【0078】
画像取得部211は、
図7に示すように、例えば、推論タイミングになるまで待機する(S21のNO)。推論タイミングは、例えば、走行中のシニアカー3に搭載された撮像装置2aによって画像データが撮像されたタイミングであってよい。すなわち、推論タイミングは、シニアカー3に搭載された撮像装置2aが進行方向前方についての画像データ(フレーム)を撮影するごとに訪れるタイミングであってよい。具体的に、撮像装置2aが撮影する動画データのフレーム数が30フレームである場合、推論タイミングは、1秒間に30回訪れるタイミングであってよい。
【0079】
そして、推論タイミングになった場合(S21のYES)、画像取得部211は、撮像装置2aによって撮像された画像データを取得する(S22)。
【0080】
続いて、物体検出部212は、S22の処理で取得した画像データに映る踏切警標4aを検出する(S23)。
【0081】
具体的に、例えば、S22の処理において
図11に示す画像データを取得した場合、物体検出部212は、踏切4における踏切警標41aと踏切警標42aとのそれぞれを検出する。
【0082】
その結果、前回までに行われたS23の処理において検出された踏切警標4aのうち、撮像装置2a(シニアカー3)から最も近い踏切警標4a(以下、第1踏切警標4aとも呼ぶ)が、今回行われたS23の処理においても検出された場合(S24のNO)、距離特定部213は、S23の処理で検出した踏切警標4aごとに、各踏切警標4aの位置情報の入力に伴って学習モデルから出力される値を、撮像装置2a(シニアカー3)から各踏切警標4aまでの距離情報として特定する(S25)。
【0083】
そして、距離特定部213は、S25の処理で特定した距離情報における最大値と最小値との差を算出する(S26)。
【0084】
具体的に、S22の処理において
図11に示す画像データを取得した場合、距離特定部213は、撮像装置2aと踏切警標42a(踏切4における奥側の踏切警標4a)との間における距離情報を、S25の処理で特定した距離情報における最大値として特定する。また、距離特定部213は、この場合、撮像装置2aと踏切警標41a(踏切4における手前側の踏切警標4a)との間における距離情報を、S25の処理で特定した距離情報における最小値として特定する。そして、距離特定部213は、撮像装置2aと踏切警標42aとの間における距離情報と、撮像装置2aと踏切警標41aとの間における距離情報との差を算出する。すなわち、距離特定部213は、この場合、踏切4の奥行のついての距離情報を算出する。
【0085】
その後、距離特定部213は、
図8に示すように、S25の処理で特定した距離情報を出力する(S33)。
【0086】
具体的に、情報出力部214は、S25の処理で特定した距離情報をシニアカー3の運転者(高齢者)に通知する。
【0087】
なお、情報出力部214は、この場合、例えば、S25の処理で特定した距離情報を音声によって通知するものであってもよい。
【0088】
そして、S22の処理において全ての画像データを取得していない場合(S34のNO)、画像取得部211は、S22以降の処理を再度行う。
【0089】
一方、S22の処理において全ての画像データを取得した場合(S34のYES)、検出端末2は、推論処理を終了する。
【0090】
また、S24の処理において、前回までに行われたS23の処理において検出された踏切警標4aのうち、撮像装置2a(シニアカー3)から最も近い第1踏切警標4aが、今回行われたS23の処理において検出されなかった場合(S24のYES)、距離特定部213は、
図8に示すように、S25の処理で算出した距離が最大の踏切警標4a(以下、第2踏切警標4aとも呼ぶ)の位置情報の入力に伴って学習モデルから出力される値を、撮像装置2aから第2踏切警標4aまでの距離情報として特定する(S31)。
【0091】
そして、距離特定部213は、S31の処理で特定した距離情報から、S26の処理で算出した差を減算して距離情報を算出する(S32)。
【0092】
すなわち、例えば、撮像装置2aと第1踏切警標4aとの間において障害物が存在する場合や撮像装置2aが踏切4に近接した場合、S23の処理において、第1踏切警標4aが検出されない可能性がある。
【0093】
そのため、距離特定部213は、この場合、撮像装置2aと第2踏切警標4aとの間における距離情報と踏切4の奥行についての距離情報とから、撮像装置2aと第1踏切警標4aとの間における距離情報の算出を行う。
【0094】
これにより、距離特定部213は、S23の処理において第1踏切警標4aが検出されない場合であっても、撮像装置2aと第1踏切警標4aとの間における距離情報の算出を行うことが可能になる。
【0095】
その後、情報出力部214は、S32の処理で算出した距離情報を出力する(S33)。
【0096】
そして、S22の処理において全ての画像データを取得していない場合(S34のNO)、画像取得部211は、S22以降の処理を再度行う。
【0097】
一方、S22の処理において全ての画像データを取得した場合(S34のYES)、検出端末2は、推論処理を終了する。
【0098】
すなわち、本実施の形態における情報処理装置1は、例えば、シニアカー3の走行経路上における踏切4の存在有無についての情報だけでなく、シニアカー3と踏切4との間における距離情報についても運転者に通知する。
【0099】
これにより、情報処理装置1は、シニアカー3の走行中における運転者の安全性をより確保することが可能になる。
【0100】
[推論処理の詳細(2)]
次に、第1の実施の形態における他の推論処理の詳細について説明を行う。
図9及び
図10は、他の推論処理の詳細について説明する図である。
【0101】
画像取得部211は、
図9に示すように、例えば、推論タイミングになるまで待機する(S41のNO)。
【0102】
そして、推論タイミングになった場合(S41のYES)、画像取得部211は、撮像装置2aによって撮像された画像データを取得する(S42)。
【0103】
続いて、物体検出部212は、S22の処理で取得した画像データに映る踏切警標4aと他の物体とを検出する(S43)。
【0104】
具体的に、例えば、S42の処理において
図11に示す画像データを取得した場合、物体検出部212は、踏切4における踏切警標41aと踏切警標42aとを検出するとともに、踏切4における信号機41b、方向指示器41c、注意柵41d及び信号機42bのうちの少なくとも1つを検出する。
【0105】
その結果、前回までに行われたS43の処理において検出された踏切警標4aのうち、撮像装置2a(シニアカー3)から最も近い第1踏切警標4aが、今回行われたS43の処理においても検出された場合(S44のNO)、距離特定部213は、S43の処理で検出した踏切警標4aの位置情報の入力に伴って学習モデル(例えば、
図13で説明した学習モデル)から出力される値を、撮像装置2aから踏切警標4aまでの距離情報として特定する(S45)。
【0106】
そして、距離特定部213は、S43で検出した踏切警標のサイズと他の物体のサイズとの関係を特定する(S46)。
【0107】
具体的に、例えば、S42の処理において
図11に示す画像データを取得した場合、距離特定部213は、例えば、信号機42bのサイズに対する踏切警標41a(第1踏切警標4a)のサイズの割合を算出する。
【0108】
さらに具体的に、距離特定部213は、この場合、例えば、信号機42bの縦幅に対する踏切警標41a(第1踏切警標4a)の縦幅の割合を算出する。
【0109】
その後、情報出力部214は、
図10に示すように、S45の処理で特定した距離情報を出力する(S53)。
【0110】
具体的に、情報出力部214は、S45の処理で特定した距離情報をシニアカー3の運転者(高齢者)に通知する。
【0111】
そして、S42の処理において全ての画像データを取得していない場合(S54のNO)、画像取得部211は、S42以降の処理を再度行う。
【0112】
一方、S42の処理において全ての画像データを取得した場合(S54のYES)、検出端末2は、推論処理を終了する。
【0113】
また、S44の処理において、前回までに行われたS43の処理において検出された踏切警標4aのうち、撮像装置2a(シニアカー3)から最も近い第1踏切警標4aが、今回行われたS43の処理において検出されなかった場合(S44のYES)、距離特定部213は、
図10に示すように、S42の処理で取得した画像データから検出した他の物体のサイズと、S46の処理で特定した関係とから、第1踏切警標4aのサイズを算出する(S51)。
【0114】
具体的に、例えば、S42の処理において
図11に示す画像データを取得した場合、距離特定部213は、信号機42bのサイズと、S46の処理で算出した割合(信号機42bのサイズに対する踏切警標41aのサイズの割合)とを乗算することにより、踏切警標41a(第1踏切警標4a)のサイズを算出する。
【0115】
さらに具体的に、距離特定部213は、この場合、例えば、信号機42bの縦幅と、S46の処理で算出した割合(信号機42bの縦幅に対する踏切警標41aの縦幅の割合)とを乗算することにより、踏切警標41a(第1踏切警標4a)の縦幅を算出する。
【0116】
そして、距離特定部213は、S51の処理で算出したサイズの入力に伴って学習モデル(例えば、
図12で説明した学習モデル)から出力される値を、撮像装置2aから第1踏切警標4aまでの距離情報として特定する(S52)。
【0117】
すなわち、S43の処理において、第1踏切警標4aが検出されなくなった場合、距離特定部213は、S42の処理で取得した画像データから検出した他の物体のサイズと、他の物体のサイズに対する第1踏切警標4aのサイズの割合とから、第1踏切警標4aのサイズを算出する。そして、距離特定部213は、算出した第1踏切警標4aのサイズを用いることによって、撮像装置2aから第1踏切警標4aまでの距離情報として特定する。
【0118】
これにより、距離特定部213は、S43の処理において第1踏切警標4aが検出されない場合であっても、撮像装置2aと第1踏切警標4aとの間における距離情報の算出を行うことが可能になる。
【0119】
なお、上記の例では、情報処理装置1及び検出端末2がシニアカー3と踏切4との間における距離の特定を行う場合について説明を行ったが、情報処理装置1及び検出端末2は、シニアカー3と踏切4以外の場所(例えば、交差点や歩道橋)との間における距離の特定を行うものであってもよい。
【符号の説明】
【0120】
1:情報処理装置
2:検出端末
101:CPU
102:メモリ
103:通信インタフェース
104:記憶媒体
105:バス