(57)【要約】      （修正有）【課題】効率よく走行環境に関する情報を抽出できる抽出装置、制御システム、通信システム、学習モデル、情報処理装置、コンピュータプログラム、および、記憶媒体を提供する。【解決手段】抽出装置１は、例えば人力駆動車に搭載されるコンピュータであり、人力駆動車周囲環境についての検出結果から、人力駆動車の走行環境に関する情報を学習アルゴリズムによって抽出する。人力駆動車の走行環境に関する情報は、障害物に関する情報を含み、障害物は、例えば人力駆動車の進行走行に沿って延びる段差を含む。出力部１４は、演算処理部１２による抽出結果を出力する出力インタフェースを備える。出力部１４は、演算処理部１２から得られる抽出結果を示す画像を出力してもよい。【選択図】図２
2020006759.tif 000002
【特許請求の範囲】
【請求項１】
人力駆動車の周囲環境についての検出結果から、前記人力駆動車の走行環境に関する情報を、学習アルゴリズムによって抽出する抽出部を備える抽出装置。
【請求項２】
前記学習アルゴリズムは、深層学習アルゴリズムを含む、請求項１に記載の抽出装置。
【請求項３】
前記検出結果は、前記人力駆動車の周囲の画像を含む、請求項１または２に記載の抽出装置。
【請求項４】
前記走行環境に関する情報は、障害物に関する情報を含む、請求項１〜３のいずれか一項に記載の抽出装置。
【請求項５】
前記障害物に関する情報は、前記人力駆動車の進行方向に沿って延びる段差に関する情報を含む、請求項４に記載の抽出装置。
【請求項６】
請求項１〜５のいずれか一項に記載の抽出装置と、
前記抽出装置の抽出結果に基づいて、前記人力駆動車のコンポーネントを制御する制御装置と、を備える制御システム。
【請求項７】
前記コンポーネントは、報知装置を含む、請求項６に記載の制御システム。
【請求項８】
前記報知装置は、照明装置を含む、請求項７に記載の制御システム。
【請求項９】
前記コンポーネントは、前記人力駆動車の操舵装置の支援装置を含む、請求項６〜８のいずれか一項に記載の制御システム。
【請求項１０】
請求項１〜５のいずれか一項に記載の抽出装置と、
外部装置と通信する通信部を含む通信装置と、を備え、
前記通信部は、前記抽出装置の抽出結果を前記外部装置へ送信する、通信システム。
【請求項１１】
前記通信装置は、位置情報を取得する位置情報取得部をさらに含み、
前記通信部は、前記位置情報取得部が取得した位置情報、および、前記抽出装置の抽出結果を外部装置へ送信する、請求項１０に記載の通信システム。
【請求項１２】
前記外部装置は、前記通信装置からの前記位置情報、および、前記抽出結果から、地図に関する情報を生成する、請求項１１に記載の通信システム。
【請求項１３】
前記通信装置は、前記外部装置から、他の人力駆動車の位置情報、および、他の人力駆動車における抽出結果を受信する、請求項１１または１２に記載の通信システム。
【請求項１４】
人力駆動車の周囲環境についての検出結果が入力される入力層と、
前記検出結果が障害物を含むか否かを示す推定結果を出力する出力層と、
障害物を含む検出結果および前記検出結果が障害物を含むことを示すラベルデータを含む教師データに基づく中間層と、を備え、
前記入力層に入力された前記周囲環境についての検出結果に基づき、前記中間層で演算し、前記検出結果に関する推定結果を前記出力層から出力する処理に用いられる学習モデル。
【請求項１５】
前記障害物は、前記人力駆動車の進行方向に沿って延びる段差を含む、請求項１４に記載の学習モデル。
【請求項１６】
前記検出結果は、前記人力駆動車の周囲の画像を含む、請求項１４または１５に記載の学習モデル。
【請求項１７】
前記教師データは、障害物を含まない検出結果および前記検出結果が障害物を含まないことを示すラベルデータを含む、請求項１４〜１６のいずれか一項に記載の学習モデル。
【請求項１８】
前記教師データは、前記人力駆動車の走行中に検出される走行情報を含む、請求項１４〜１７のいずれか一項に記載の学習モデル。  
【請求項１９】
人力駆動車の周囲環境についての検出結果を、請求項１４〜１８の何れか一項に記載の学習モデルへ入力し、前記検出結果に関する推定結果を前記学習モデルから取得する演算処理部を備える、情報処理装置。
【請求項２０】
人力駆動車の周囲環境についての検出結果に基づく追加学習によって更新された更新済学習モデルを受信する受信部、を備え、
前記更新済学習モデルへ更新する旨の選択を受け付けた場合に、前記学習モデルを前記更新済学習モデルに更新する、請求項１９に記載の情報処理装置。
【請求項２１】
前記学習モデルが推定する障害物は前記人力駆動車の進行方向に沿って延びる段差であり、
前記検出結果が前記障害物を含むことを示す推定結果を前記演算処理部が取得し、前記人力駆動車と前記段差との間の距離が設定距離未満であり、かつ、前記人力駆動車の前記段差への進入角度が設定角度未満である場合、警告情報を出力する出力部を備える、請求項１９または請求項２０に記載の情報処理装置。
【請求項２２】
コンピュータに、
人力駆動車の周囲環境についての検出結果から、前記人力駆動車の走行環境に関する情報を、学習アルゴリズムによって抽出する
処理を実行させるためのコンピュータプログラム。
【請求項２３】
請求項２２に記載のコンピュータプログラムが記憶される記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、抽出装置、制御システム、通信システム、学習モデル、情報処理装置、コンピュータプログラム、および、記憶媒体に関する。
【背景技術】
【０００２】
自動車において、車両前方の障害物の有無を検知する障害物検知装置が知られている（例えば、特許文献１を参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００６−１２３５６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１では、内燃機関または電動機を駆動源とする車両での障害物検知が想定されており、人力駆動車において、効率よく走行環境に関する情報を抽出する手法は提案されていない。
【０００５】
本発明は、効率よく走行環境に関する情報を抽出できる抽出装置、制御システム、通信システム、学習モデル、情報処理装置、コンピュータプログラム、および、記憶媒体を提供することを目的とする。
【課題を解決するための手段】
【０００６】
〔１〕本発明の一態様に係る抽出装置は、人力駆動車の周囲環境についての検出結果から、前記人力駆動車の走行環境に関する情報を、学習アルゴリズムによって抽出する抽出部を備える。
【０００７】
この抽出装置によれば、機械学習、深層学習等の学習によって人力駆動車の周囲環境についての検出結果から走行環境を推定する学習アルゴリズムを用いるので、効率良く走行環境に関する情報を抽出できる。人力駆動車の周囲環境についての検出結果は、例えば、撮像装置によって人力駆動車の周囲を撮像して得られる画像データ、測距センサを用いて計測される人力駆動車から障害物までの距離データ等を含む。抽出装置が抽出する走行環境に関する情報は、障害物に関する情報を含む。障害物に関する情報は、例えば人力駆動車の進行走行に沿って延びる段差の情報である。また、障害物に関する情報は、路面の凹凸または滑りやすさに関する情報、路面上に存在する物体などの情報であってもよい。
【０００８】
〔２〕本発明の一態様に係る抽出装置は、前記学習アルゴリズムは、深層学習アルゴリズムを含む。
【０００９】
この抽出装置によれば、深層学習によって人力駆動車の周囲環境についての検出結果から走行環境を推定する深層学習アルゴリズムを用いるので、検出結果の特徴を示す特徴量を抽出する処理が不要となり、特徴量の抽出結果に左右されずに走行環境に関する情報を精度良く抽出できる。
【００１０】
〔３〕本発明の一態様に係る抽出装置は、前記検出結果は、前記人力駆動車の周囲の画像を含む。
【００１１】
この抽出装置によれば、学習アルゴリズムを用いて人力駆動車の周囲の画像を解析することによって、走行環境に関する情報を効率良く抽出できる。
【００１２】
〔４〕本発明の一態様に係る抽出装置は、前記走行環境に関する情報は、障害物に関する情報を含む。
【００１３】
この抽出装置によれば、学習アルゴリズムを用いて人力駆動車の周囲環境についての検出結果を解析することによって、障害物に関する情報を効率良く抽出できる。
【００１４】
〔５〕本発明の一態様に係る抽出装置は、前記障害物に関する情報は、前記人力駆動車の進行方向に沿って延びる段差に関する情報を含む。
【００１５】
この抽出装置によれば、学習アルゴリズムを用いて人力駆動車の周囲環境についての検出結果を解析することによって、人力駆動車の進行方向に沿って延びる段差に関する情報を抽出できる。
【００１６】
〔６〕本発明の一態様に係る制御システムは、前述の抽出装置と、前記抽出装置の抽出結果に基づいて、前記人力駆動車のコンポーネントを制御する制御装置と、を備える。
【００１７】
この制御システムによれば、抽出装置によって人力駆動車の走行環境に関する情報が抽出されるので、抽出装置によって抽出された走行環境に応じて、人力駆動車のコンポーネントを制御できる。
【００１８】
〔７〕本発明の一態様に係る制御システムは、前記コンポーネントは、報知装置を含む。
【００１９】
この制御システムによれば、制御対象のコンポーネントは報知装置を含むので、抽出装置によって抽出された走行環境に関する情報を人力駆動車の搭乗者に報知できる。
【００２０】
〔８〕本発明の一態様に係る制御システムは、前記報知装置は、照明装置を含む。
【００２１】
この制御システムによれば、報知装置は照明装置を含むので、例えば、走行環境に関する情報に障害物等が含まれている場合、この障害物等を照明することによって、障害物等の情報を人力駆動車の搭乗者に報知できる。
【００２２】
〔９〕本発明の一態様に係る制御システムは、前記コンポーネントは、前記人力駆動車の操舵装置の支援装置を含む。
【００２３】
この制御システムによれば、抽出装置によって人力駆動車の走行環境に関する情報が得られるので、走行環境に応じて人力駆動車の操舵を支援することによって、人力駆動車の操作性を向上できる。
【００２４】
〔１０〕本発明の一態様に係る通信システムは、前述の抽出装置と、外部装置と通信する通信部を含む通信装置と、を備え、前記通信部は、前記抽出装置の抽出結果を前記外部装置へ送信する。
【００２５】
この通信システムによれば、通信装置を介して外部装置と通信できるので、拡張性が高められる。
【００２６】
〔１１〕本発明の一態様に係る通信システムは、前記通信装置は、位置情報を取得する位置情報取得部をさらに含み、前記通信部は、前記位置情報取得部が取得した位置情報、および、前記抽出装置の抽出結果を外部装置へ送信する。
【００２７】
この通信システムによれば、人力駆動車の位置情報と、抽出装置によって抽出された抽出結果とを外部装置へ送信するので、抽出結果が得られた場所を外部装置において把握できる。
【００２８】
〔１２〕本発明の一態様に係る通信システムは、前記外部装置は、前記通信装置からの前記位置情報、および、前記抽出結果から、地図に関する情報を生成する。
【００２９】
この通信システムによれば、抽出結果が得られた場所を示す地図を生成できる。
【００３０】
〔１３〕本発明の一態様に係る通信システムは、前記通信装置は、前記外部装置から、他の人力駆動車の位置情報、および、他の人力駆動車における抽出結果を受信する。
【００３１】
この通信システムによれば、複数の人力駆動車の間で抽出結果を共有できる。
【００３２】
〔１４〕本発明の一態様に係る学習モデルは、人力駆動車の周囲環境についての検出結果が入力される入力層と、前記検出結果が障害物を含むか否かを示す推定結果を出力する出力層と、障害物を含む検出結果および前記検出結果が障害物を含むことを示すラベルデータを含む教師データに基づく中間層と、を備え、前記入力層に入力された前記周囲環境についての検出結果に基づき、前記中間層で演算し、前記検出結果に関する推定結果を前記出力層から出力する処理に用いられる。
【００３３】
この学習モデルによれば、人力駆動車の周囲環境についての検出結果から、障害物を含むか否かを示す推定結果を出力する実行環境をコンピュータによって実現できる。
【００３４】
〔１５〕本発明の一態様に係る学習モデルは、前記障害物は、前記人力駆動車の進行方向に沿って延びる段差を含む。
【００３５】
この学習モデルによれば、人力駆動車の周囲環境についての検出結果から、人力駆動車の進行方向に沿って延びる段差を含むか否かを示す推定結果を出力する実行環境をコンピュータによって実現できる。
【００３６】
〔１６〕本発明の一態様に係る学習モデルは、前記検出結果は、前記人力駆動車の周囲の画像を含む。
【００３７】
この学習モデルによれば、人力駆動車の周囲の画像から、人力駆動車の進行方向に延びる段差を含む障害物についての推定結果を出力する実行環境をコンピュータによって実現できる。
【００３８】
〔１７〕本発明の一態様に係る学習モデルは、前記教師データは、障害物を含まない検出結果および前記検出結果が障害物を含まないことを示すラベルデータを含む。
【００３９】
この学習モデルによれば、障害物を含む検出結果と、この検出結果が障害物を含むことを示すラベルデータとを含む教師データ、および、障害物を含まない検出結果と、この検出結果が障害物を含まないことを示すラベルデータとを含む教師データの双方に基づくので、推定精度を向上できる。
【００４０】
〔１８〕本発明の一態様に係る学習モデルは、前記教師データは、前記人力駆動車の走行中に検出される走行情報を含む。
【００４１】
この学習モデルによれば、人力駆動車の走行中に検出される走行情報に基づき、人力駆動車の周囲環境の検出結果が障害物を含むか否かを判断し、その判断結果を教師データに含めることができる。
【００４２】
〔１９〕本発明の一態様に係る情報処理装置は、人力駆動車の周囲環境についての検出結果を、前述の学習モデルへ入力し、前記検出結果に関する推定結果を前記学習モデルから取得する演算処理部を備える。
【００４３】
この情報処理装置によれば、人力駆動車の周囲環境についての検出結果を学習モデルに入力することによって、検出結果が障害物を含むか否かについての推定結果が得られるので、効率良く走行環境に関する情報を取得できる。
【００４４】
〔２０〕本発明の一態様に係る情報処理装置は、人力駆動車の周囲環境についての検出結果に基づく追加学習によって更新された更新済学習モデルを受信する受信部、を備え、前記更新済学習モデルへ更新する旨の選択を受け付けた場合に、前記学習モデルを前記更新済学習モデルに更新する。
【００４５】
この情報処理装置によれば、追加学習によって更新された更新済学習モデルを受信し、必要に応じて更新できる。このため、情報処理装置にて追加学習を実行する必要はなく、より処理能力が高い外部サーバ等に追加学習を実行させ、更新された更新学習モデルを外部サーバ等から受信できるので、情報処理装置における処理負担を軽減できる。
【００４６】
〔２１〕本発明の一態様に係る情報処理装置は、前記学習モデルが推定する障害物は前記人力駆動車の進行方向に沿って延びる段差であり、前記検出結果が前記障害物を含むことを示す推定結果を前記演算処理部が取得し、前記人力駆動車と前記段差との間の距離が設定距離未満であり、かつ、前記人力駆動車の前記段差への進入角度が設定角度未満である場合、警告情報を出力する出力部を備える。
【００４７】
この情報処理装置によれば、人力駆動車の進行方向に沿って延びる段差についての推定結果が得られ、この段差と人力駆動車との距離が設定距離未満であり、かつ、段差への進入角度が設定角度未満である場合、警告情報を出力するので、人力駆動車による走行が困難となる可能性を低減できる。
【００４８】
〔２２〕本発明の一態様に係るコンピュータプログラムは、コンピュータに、人力駆動車の周囲環境についての検出結果から、前記人力駆動車の走行環境に関する情報を、学習アルゴリズムによって抽出する処理を実行させるためのコンピュータプログラムである。
【００４９】
このコンピュータプログラムによれば、人力駆動車の周囲環境についての検出結果から、学習アルゴリズムを用いて、人力駆動車の走行環境に関する情報を抽出する実行環境をコンピュータによって実現できる。
【００５０】
〔２３〕本発明の一態様に係る記憶媒体は、前述のコンピュータプログラムが記憶される。
【００５１】
この記憶媒体によれば、記憶媒体に記憶されているコンピュータプログラムをコンピュータにインストールすることによって、人力駆動車の周囲環境についての検出結果から、学習アルゴリズムを用いて、人力駆動車の走行環境に関する情報を抽出する実行環境を実現できる。
【発明の効果】
【００５２】
本願によれば、人力駆動車の周囲環境についての検出結果から、前記人力駆動車の走行環境に関する情報を効率よく抽出できる。
【図面の簡単な説明】
【００５３】
【図１】第１実施形態に係る抽出装置を説明する模式的説明図である。
【図２】第１実施形態に係る抽出装置の内部構成を示すブロック図である。
【図３】第１実施形態における学習モデルの構成例を示す模式図である。
【図４】第１実施形態に係る抽出装置が実行する処理の手順を説明するフローチャートである。
【図５Ａ】入力画像の一例を示す模式図である。
【図５Ｂ】出力画像の一例を示す模式図である。
【図６】第２実施形態に係る制御システムを説明するブロック図である。
【図７】第２実施形態における制御手順を示すフローチャートである。
【図８】第３実施形態に係る通信システムを説明するブロック図である。
【図９】サーバ装置の内部構成を示すブロック図である。
【図１０Ａ】第３実施形態における通信装置の制御手順を示すフローチャートである。
【図１０Ｂ】第３実施形態におけるサーバ装置の制御手順を示すフローチャートである。
【図１１】情報処理装置の内部構成を示すブロック図である。
【図１２Ａ】更新手順を説明するフローチャートである。
【図１２Ｂ】更新手順を説明するフローチャートである。
【発明を実施するための形態】
【００５４】
以下、本発明をその実施の形態を示す図面に基づいて具体的に説明する。
（第１実施形態）
図１は第１実施形態に係る抽出装置１を説明する模式的説明図である。第１実施形態に係る抽出装置１は、例えば人力駆動車１００に搭載されるコンピュータであり、人力駆動車１００の周囲環境についての検出結果から、人力駆動車１００の走行環境に関する情報を学習アルゴリズムによって抽出する。本実施形態において、人力駆動車１００は、走行のための原動力に関して、少なくとも部分的に人力を用いる車両であり、人力を電動補助する車両を含む。内燃機関または電動機のみを原動力に用いる車両は、人力駆動車１００からは除外される。本実施形態において、人力駆動車１００は自転車である。人力駆動車１００は、操舵装置Ｈを備える。操舵装置Ｈの一例は、ハンドルバーである。抽出装置１は、人力駆動車１００に設けられる専用端末であってもよく、人力駆動車１００の搭乗者が携帯するスマートフォンなどの携帯端末であってもよい。
【００５５】
人力駆動車１００の周囲環境についての検出結果は、人力駆動車１００の周囲の画像を含む。本実施形態において、人力駆動車１００の周囲環境の検出結果は、例えば、デジタルカメラなどの撮像装置Ｐによって人力駆動車１００の周囲を撮像して得られる画像である。また、抽出装置１が取得する周囲環境の検出結果は、超音波センサなどの測距センサを用いて計測される人力駆動車１００から障害物までの距離などであってもよい。
【００５６】
抽出装置１は、取得した検出結果から人力駆動車１００の走行環境に関する情報を学習アルゴリズムによって抽出する。学習アルゴリズムは、図３に示される学習モデル１３０を用いて、人力駆動車１００の周囲環境についての検出結果から、人力駆動車１００の走行環境を推定するためのアルゴリズムである。学習アルゴリズムは、機械学習による機械学習アルゴリズム、深層学習による深層学習アルゴリズム等の学習アルゴリズムを含む。
【００５７】
人力駆動車１００の走行環境に関する情報は、障害物に関する情報を含む。障害物は、走行の障害となる物体である。障害物は、例えば人力駆動車１００の進行走行に沿って延びる段差Ｓを含む。このような段差Ｓは、例えば車道と歩道との間に存在する。図１に示す段差Ｓは、人力駆動車１００の進行方向に対して左側に存在する。ここで、前後左右は、人力駆動車１００の搭乗者がハンドルに向かってサドルに跨がった状態から見た前後左右を表す。
【００５８】
人力駆動車１００の進行方向に沿って延びる段差Ｓは、例えば人力駆動車１００の進行方向に対して略平行に延びる、または、人力駆動車１００の進行方向に対して例えば１０度未満の角度範囲内にて左方または右方に斜めに延びる。段差Ｓを乗り越える際の人力駆動車１００の進入角度が例えば１０度未満の比較的浅い角度である場合、走行が困難となる可能性がある。このため、抽出装置１は、周囲環境の検出結果から、人力駆動車１００の進行方向に沿って延びる段差Ｓの情報を抽出対象として抽出する。また、人力駆動車１００の進行方向に沿って延びる段差Ｓのうち、高さが設定高さよりも低いものを抽出対象とし、高さが設定高さよりも高いものについては抽出対象から除外してもよい。設定高さは、例えば２０ｃｍであるが、人力駆動車１００の種類、人力駆動車１００が備える車輪のサイズ等によって適宜設定され得る。
【００５９】
また、障害物に関する情報は、側溝、マンホール、路面の凹凸、滑りやすい路面、および、人力駆動車１００の周囲に存在する物体（車両、人物、動物など）に関する情報を含んでもよい。
【００６０】
以下では、撮像装置Ｐによって撮像される画像から、学習アルゴリズムによって、自転車の進行方向に沿って延びる段差Ｓの情報を抽出する構成について説明する。
【００６１】
図２は第１実施形態に係る抽出装置１の内部構成を示すブロック図である。抽出装置１は、入力部１１、演算処理部１２、記憶部１３、および、出力部１４を含む抽出部１０を備える。抽出部１０は、これらのハードウェア各部を用いて、自転車の周囲環境についての検出結果から、自転車の走行環境に関する情報を学習アルゴリズムによって抽出する。
【００６２】
入力部１１は、撮像装置Ｐを接続する入力インタフェースを備える。入力部１１には、撮像装置Ｐから出力される画像の画像データが入力される。本実施形態では、撮像装置Ｐは、段差Ｓの情報を抽出するために好適な画角を有し、人力駆動車１００の本体において、進行方向前方を撮像するために好適な場所に取り付けられていることが好ましい。撮像装置Ｐから出力される画像データは、静止画の画像データ、または、動画データである。入力部１１に入力される画像データは、例えば、複数の画素から構成され、各画素がＲＧＢ各色の階調値によって表されるフレーム単位のデータである。入力部１１は、入力された画像データを演算処理部１２へ出力する。
【００６３】
演算処理部１２は、ＣＰＵ（Central Processing Unit）、ＲＯＭ（Read Only Memory）、ＲＡＭ（Random Access Memory）などを備える。演算処理部１２が備えるＲＯＭには、抽出装置１が備えるハードウェア各部の動作を制御するためのコンピュータプログラム等が記憶される。演算処理部１２内のＣＰＵは、ＲＯＭに記憶されたコンピュータプログラムを実行し、ハードウェア各部の動作を制御することによって、入力された画像データから走行環境に関する情報を抽出する処理を実現する。演算処理部１２が備えるＲＡＭには、演算の実行中に利用されるデータが一時的に記憶される。
【００６４】
演算処理部１２は、ＣＰＵ、ＲＯＭおよびＲＡＭを備える構成としたが、ＧＰＵ（Graphics Processing Unit）、ＦＰＧＡ（Field Programmable Gate Array）、ＤＳＰ（Digital Signal Processor）、量子プロセッサ、揮発性または不揮発性のメモリ等を備える１又は複数の演算回路であってもよい。
【００６５】
記憶部１３は、ＥＥＰＲＯＭ（Electronically Erasable Programmable Read Only Memory）、ＳＲＡＭ（Static Random Access Memory）などのメモリを備える。記憶部１３には、演算処理部１２によって実行されるコンピュータプログラム、学習モデル１３０等が記憶される。
【００６６】
記憶部１３は、推定処理プログラムを記憶する。推定処理プログラムは、コンピュータに、人力駆動車１００の周囲環境についての検出結果から、人力駆動車１００の走行環境に関する情報を、学習アルゴリズムによって抽出する処理を実行させるためのコンピュータプログラムである。演算処理部１２は、推定処理プログラムを実行することによって、学習モデル１３０を用いて走行環境を推定する学習アルゴリズムに基づき、人力駆動車１００の周囲環境の検出結果から走行環境に関する情報を抽出する。
【００６７】
推定処理プログラムを含むコンピュータプログラムは、コンピュータプログラムが記憶される記憶媒体Ｍによって提供され得る。記憶媒体Ｍは、例えば、ＣＤ−ＲＯＭ、ＵＳＢメモリ、ＳＤ（Secure Digital）カード、マイクロＳＤカード、コンパクトフラッシュ（登録商標）などの可搬型メモリである。本実施形態において、記憶媒体Ｍは、コンピュータプログラムを読み取り可能に記憶する非一時的な記憶媒体である。演算処理部１２は、読取装置を用いて記憶媒体Ｍから各種プログラムを読み取り、読み取った各種プログラムを記憶部１３にインストールする。
【００６８】
記憶部１３に記憶される学習モデル１３０は、その定義情報によって記述される。学習モデル１３０の定義情報は、学習モデル１３０を構成するニューラルネットワーク等の構造情報、学習モデル１３０において用いられる各種パラメータ等を含む。学習モデル１３０において用いられる各種パラメータには、例えばニューラルネットワークを構成するノード間の重み及びバイアス等が含まれる。本実施形態では、抽出対象の段差Ｓを含む画像データと、この画像データが抽出対象の段差Ｓを含むことを示すラベルデータとを含む教師データに基づき予め学習された学習モデル１３０が記憶部１３に記憶される。
【００６９】
出力部１４は、演算処理部１２による抽出結果を出力する出力インタフェースを備える。抽出結果の出力形式は任意である。出力部１４は、演算処理部１２から得られる抽出結果を示す画像を出力してもよい。また、出力部１４は、演算処理部１２の抽出結果に基づき、段差Ｓの情報が抽出された旨の文字情報を出力してもよい。更に、出力部１４は、演算処理部１２によって段差Ｓの情報が抽出された場合、搭乗者に注意喚起を促す音又は音声を出力してもよい。抽出装置１が操作ボタンなどのユーザインタフェースを備える場合、抽出装置１は、搭乗者による出力形式の選択を受付けてもよい。この場合、出力部１４は、搭乗者により選択された出力形式に従って情報を出力してもよい。
【００７０】
図３は第１実施形態における学習モデル１３０の構成例を示す模式図である。学習モデル１３０は、入力層１３１、中間層１３２、および、出力層１３３を備える。学習モデル１３０によって定められる学習アルゴリズムの一例は、例えば、Ｒ−ＣＮＮ（Region-based Convolutional Neural Networks）のアルゴリズムである。
【００７１】
入力層１３１には、人力駆動車１００の周囲環境の検出結果が入力される。本実施形態では、人力駆動車１００の周囲環境の検出結果は、人力駆動車１００の周囲の画像を含む。人力駆動車１００の周囲の画像に係る画像データを入力層１３１に入力する際、画像に含まれる何らかのオブジェクトを含む複数の部分領域を抽出し、抽出した全ての部分領域を一定の大きさにリサイズして入力層１３１に入力してもよい。各部分領域に含まれるオブジェクトは、抽出対象の段差Ｓだけでなく、人物、他車両などの任意のオブジェクトが含まれてもよい。領域の抽出には、例えば、"Selective search for object recognition.", Uijlings, Jasper RR, et al. International journal of computer vision 104.2 (2013), 154-171に開示される手法が用いられる。
【００７２】
中間層１３２は、障害物を含む検出結果と、この検出結果が障害物を含むことを示すラベルデータとを含む教師データに基づく。本実施形態では、障害物を含む検出結果は抽出対象の段差Ｓを含む画像データであり、ラベルデータは画像データが抽出対象の段差Ｓを含むことを示すデータである。また、教師データには、障害物を含まない検出結果と、この検出結果が障害物を含まないことを示すラベルデータとが含まれていてもよい。中間層１３２は、例えば、畳み込み層１３２ａ、プーリング層１３２ｂ、および、全結合層１３２ｃにより構成される。中間層１３２における畳み込み層１３２ａおよびプーリング層１３２ｂは交互に複数設けられていてもよい。畳み込み層１３２ａおよびプーリング層１３２ｂは、入力層１３１を通じて入力される各部分領域の領域画像から画像の特徴量を抽出する。畳み込み層１３２ａおよびプーリング層１３２ｂにて抽出される特徴量は、例えば、明度差、輝度勾配、形状、エッジ、テクスチャなどである。畳み込み層１３２ａおよびプーリング層１３２ｂによって抽出された特徴量は、全結合層１３２ｃへ出力される。全結合層１３２ｃは、最終のプーリング層１３２ｂから入力される画像の特徴量に基づき、各部分領域の物体を分類し、分類結果を出力層１３３へ出力する。
【００７３】
出力層１３３は、全結合層１３２ｃから入力される分類結果に基づき、入力層１３１に入力された人力駆動車１００の周囲環境の検出結果が障害物を含むか否かの推定結果を出力する。本実施形態では、障害物は、人力駆動車１００の進行方向に沿って延びる段差Ｓである。出力層１３３が出力する推定結果には、推定結果の確からしさを示す確率の情報が含まれていてもよい。また、出力層１３３が出力する推定結果には、推定した物体を囲む領域の情報を含んでもよい。推定した物体を囲む領域は、例えば四角形の領域であり、中央位置の座標、幅および高さ、もしくは、四隅の座標によって特定される。
【００７４】
図４は第１実施形態に係る抽出装置１が実行する処理の手順を説明するフローチャートである。抽出装置１の演算処理部１２は、ステップＳ１０１において、周囲環境の検出結果を取得する。具体的には、演算処理部１２は、撮像装置Ｐによって得られる画像データを、入力部１１を通じて取得する。
【００７５】
次いで、演算処理部１２は、ステップＳ１０２において、取得した画像データを学習モデル１３０の入力層１３１に入力することによって学習アルゴリズムによる演算を実行する。このとき、演算処理部１２は、記憶部１３に記憶されている学習モデル１３０の定義情報を参照する。また、演算処理部１２は、記憶部１３に記憶されている推定処理プログラムを実行することによって、入力した画像データについて、学習モデル１３０によって走行環境を推定する学習アルゴリズムによる演算を実行する。
【００７６】
次いで、演算処理部１２は、ステップＳ１０３において、学習モデル１３０によって抽出される走行環境に関する情報を出力層１３３から取得する。すなわち、学習モデル１３０は、入力層１３１に入力された周囲環境の検出結果に基づき、中間層１３２で演算し、検出結果に関する出力結果を出力層１３３から出力する処理に用いられる。また、演算処理部１２は、人力駆動車１００の周囲環境についての検出結果を学習モデル１３０へ入力し、検出結果に関する推定結果を学習モデル１３０から取得する。学習モデル１３０の出力層１３３から得られる情報は、入力層１３１に入力された人力駆動車１００の周囲環境の検出結果が障害物を含むか否かの推定結果を含む。
【００７７】
また、演算処理部１２は、学習モデル１３０から取得した情報に基づき、搭乗者に報知する出力画像を生成してもよい。図５Ａは入力画像の一例を示す模式図であり、図５Ｂは出力画像の一例を示す模式図である。図５Ａは、撮像装置Ｐを用いて人力駆動車１００の進行方向前方を撮像することによって得られる入力画像の一例を示している。図５Ａに示す入力画像には、人力駆動車１００の進行方向に対して右側および左側に段差Ｓが含まれている。
【００７８】
図５Ｂは、学習モデル１３０から取得した情報に基づき、演算処理部１２が生成する出力画像の一例を示している。入力画像内の特定の部分領域に段差Ｓが含まれるとの推定結果が得られ、その推定結果の確からしさを示す確率が閾値以上である場合、演算処理部１２は、図５Ｂに示すような出力画像を生成してもよい。確率に対する閾値は適宜設定され得る。閾値の一例は８０％である。
【００７９】
演算処理部１２は、学習モデル１３０から得られる領域の情報に基づき、画像内の段差Ｓの位置を特定できる。演算処理部１２は、段差Ｓを含む領域内の各画素の濃度を上げ、領域外の各画素の濃度を下げることによって、図５Ｂに示すような、段差Ｓを強調した画像を生成できる。また、演算処理部１２は、段差Ｓを含む領域内の各画素の色を赤などの目立つ色に変更することによって、段差Ｓを強調した画像を生成してもよい。また、演算処理部１２は、段差Ｓの位置を示すマーカ、および、警告を示す文字情報を付した出力画像を生成してもよい。図５Ｂの例では、進行方向の左側に存在する段差Ｓに対して、マーカＭ１および文字情報Ｎ１を付し、右側に存在する段差Ｓに対して、マーカＭ２および文字情報Ｎ２を付した出力画像を示している。
【００８０】
以上のように、第１実施形態では、学習アルゴリズムを用いることによって、人力駆動車１００の走行中に得られる撮像画像から、効率良く段差Ｓの情報を抽出できる。
【００８１】
本実施形態では、深層学習アルゴリズムの１つであるＲ−ＣＮＮを用いて抽出対象の段差Ｓの情報を抽出する構成について説明したが、学習モデル１３０において利用される深層学習アルゴリズムは、Ｒ−ＣＮＮに限定されない。例えば、Ｒ−ＣＮＮに代えて、ＳＰＰｎｅｔ（Spatial Pyramid Pooling network）、Ｆａｓｔ  Ｒ−ＣＮＮ、Ｆａｓｔｅｒ  Ｒ−ＣＮＮ、ＹＯＬＯ（You Only Look Once）、ＳＳＤ（Single Shot multibox Detector）などを含む深層学習アルゴリズムを用いてもよい。また、深層学習以外の学習アルゴリズムとして、サポートベクターマシン、ベイズ分類などの学習アルゴリズムを用いて、抽出対象の段差の情報を抽出する構成としてもよい。
【００８２】
（第２実施形態）
第２実施形態では、抽出装置１による抽出結果に基づき、人力駆動車１００のコンポーネントＣを制御する制御システムについて説明する。
【００８３】
図６は第２実施形態に係る制御システムを説明するブロック図である。第２実施形態に係る制御システムは、抽出装置１と、抽出装置１による抽出結果に基づき、人力駆動車１００のコンポーネントＣを制御する制御装置２と、を備える。抽出装置１の内部構成は、第１実施形態と同様であるため、その詳細な説明は省略する。
【００８４】
制御装置２は、制御部２１、記憶部２２、入力部２３、および、出力部２４を備える。制御部２１は、例えば、ＣＰＵ、ＲＯＭ、ＲＡＭなどを備える。制御部２１が備えるＲＯＭには、制御装置２が備えるハードウェア各部の動作を制御するための制御プログラム等が記憶される。制御部２１内のＣＰＵは、ＲＯＭに記憶された制御プログラム、および、記憶部２２に記憶された各種プログラムを実行し、ハードウェア各部の動作を制御することによって、本願の制御装置を実現する。具体的には、制御部２１は、入力部２３を通じて入力される抽出装置１からの抽出結果に基づき、人力駆動車１００のコンポーネントＣを制御する制御信号を生成し、生成した制御信号を出力部２４から出力する。
【００８５】
制御部２１は上述の構成に限定されない。制御部２１は、シングルコアＣＰＵ、マルチコアＣＰＵ、ＦＰＧＡ、揮発性または不揮発性のメモリ等を含む１又は複数の制御回路であればよい。また、制御部２１は、日時情報を出力するクロック、計測開始指示を与えてから計測終了指示を与えるまでの経過時間を計測するタイマ、数をカウントするカウンタ等の機能を備えていてもよい。
【００８６】
記憶部２２は、ＥＥＰＲＯＭ、ＳＲＡＭなどのメモリを備える。記憶部２２には、制御部２１によって実行されるコンピュータプログラム、このコンピュータプログラムが用いるデータ等が記憶される。
【００８７】
入力部２３は、信号線Ｌ１を介して抽出装置１を接続するインタフェースを備える。入力部２３には、抽出装置１から出力される抽出結果が入力される。入力部２３に入力される抽出結果は、抽出結果を示す画像データであってもよく、抽出結果を示す文字情報もしくは信号であってもよい。入力部２３は、入力された抽出結果を制御部２１へ出力する。本実施形態では、信号線Ｌ１を介して抽出装置１を接続する構成としたが、無線通信のインタフェースを介して、抽出装置１と制御装置２との間でデータを送受信できるように構成してもよい。無線通信では、Ｂｌｕｅｔｏｏｔｈ（登録商標） 、ＷｉＦｉ（登録商標）、ＺｉｇＢｅｅ（登録商標）、その他の無線ＬＡＮ（Local Area Network）等の通信規格に準じた無線伝送方式が利用できる。
【００８８】
出力部２４は、信号線Ｌ２を介して制御対象の人力駆動車１００のコンポーネントＣを接続するインタフェースを備える。出力部２４は、制御部２１によって生成される制御信号を取得し、取得した制御信号を制御対象のコンポーネントＣへ出力する。本実施形態では、信号線Ｌ２を介して人力駆動車１００のコンポーネントＣを接続する構成としたが、無線通信のインタフェースを介して、制御装置２と人力駆動車１００のコンポーネントＣとの間でデータを送受信できるように構成してもよい。無線通信では、上述した各種の通信規格に準拠した無線伝送方式が利用できる。
【００８９】
自転車のコンポーネントＣは、報知装置Ｎを含む。報知装置Ｎは、照明装置２１０を含む。本実施形態において、報知装置Ｎは、さらに、表示装置２３０、および、音声出力装置２２０を含む。また、自転車のコンポーネントＣは、人力駆動車１００の操舵装置Ｈの支援装置２４０を含む。
【００９０】
照明装置２１０は、例えば人力駆動車１００の進行方向を照らす前照灯である。照明装置２１０は、出力部２４から出力される制御信号に従って、点灯、点滅または消灯するように構成されている。制御装置２は、抽出装置１によって段差Ｓの情報が抽出された場合、設定時間だけ照明装置２１０を点灯または点滅させることによって、搭乗者に注意喚起を促す。
【００９１】
表示装置２３０は、出力部２４から出力される制御信号に基づいて情報を表示する液晶表示パネル等を備える。表示装置２１０は、搭乗者から視認できる人力駆動車１００の適宜箇所に設置される。制御装置２は、抽出装置１によって段差Ｓが抽出された場合、段差Ｓを強調表示するための画像、段差Ｓの位置を示すマーカ、警告を表す文字情報等を含む画像などを表示装置２３０に表示させることによって、搭乗者に注意喚起を促す。
【００９２】
音声出力装置２２０は、出力部２４から出力される制御信号に基づいて音声を出力するスピーカ等を備える。音声出力装置２２０は、出力する音声が搭乗者によって聴き取ることがきる人力駆動車１００の適宜箇所に設置される。制御装置２は、抽出装置１によって段差Ｓが抽出された場合、段差Ｓが存在する旨の音声を音声出力装置２２０から出力させることによって、搭乗者に注意喚起を促す。音声出力装置２２０は音声に限らず、警報音を出力する構成であってもよい。
【００９３】
本実施形態では、報知装置の一例として、照明装置２１０、表示装置２３０、および、音声出力装置２２０を記載したが、報知装置は、これらの装置に限定されない。例えば、左右両側のハンドルに振動装置を設けてもよい。抽出装置１からの抽出結果に基づき、進行方向の左側に段差Ｓがあると判断できる場合、制御装置２は、左側のハンドルに設けられた振動装置を作動させる制御信号を出力してもよい。制御装置２は、左側のハンドルに設けられた振動装置を作動させることによって、進行方向の左側に段差Ｓがあることを搭乗者に報知できる。進行方向の右側に段差Ｓがあると判断できる場合についても同様である。
【００９４】
支援装置２４０は、少なくとも、人力駆動車１００の操舵装置Ｈの操舵を支援するための支援機構、支援機構のアクチュエータ、および、ドライバを備える。支援装置２４０は、ドライバが、出力部２４から出力される制御信号に基づき、アクチュエータによって、支援機構を動作させることによって、人力駆動車１００の操舵を支援するように構成されている。
【００９５】
制御装置２は、抽出装置１によって段差Ｓが抽出された場合、その段差Ｓが人力駆動車１００の進行方向に対して右側に存在するか、左側に存在するかを判断する。制御装置２は、段差Ｓが進行方向の右側に存在すると判断した場合、人力駆動車１００の進行方向を右方向へ曲げるように制御する制御信号を支援装置２４０へ出力する。支援装置２４０は、制御装置２からの制御信号に従ってアクチュエータを駆動し、進行方向を右方向に曲げるように人力駆動車１００の操舵を支援する。このような制御を行うことにより、段差Ｓに対する人力駆動車１００の進入角度が深くなり、段差Ｓへの進入角度が浅いことによって、人力駆動車１００による走行が困難となる可能性を低減することができる。段差Ｓが進行方向の左側に存在すると判断した場合も同様であり、制御装置２は、進行方向を左方向に曲げるように人力駆動車１００の操舵を支援する。
【００９６】
図７は第２実施形態における制御手順を示すフローチャートである。制御装置２の制御部２１は、抽出装置１による抽出結果を取得する都度、以下の手順を実行する。制御部２１は、ステップＳ２０１において、抽出装置１による抽出結果を取得する。制御部２１は、ステップＳ２０２において、ステップＳ２０１において取得した抽出結果に基づき、抽出装置１によって抽出された段差Ｓが存在するか否かを判断する。第２実施形態に係る抽出装置１が抽出する段差Ｓの情報は、人力駆動車１００の進行方向に沿って延び、かつ、高さが設定高さよりも低い段差Ｓの情報であり、進入角度が比較的浅い場合に人力駆動車１００による走行が困難となる可能性がある段差Ｓを表す。制御部２１は、ステップＳ２０２において抽出装置１によって抽出された段差Ｓが存在しないと判断した場合、本フローチャートによる処理を終了する。
【００９７】
制御部２１は、ステップＳ２０２において抽出装置１によって抽出された段差Ｓが存在すると判断した場合、ステップＳ２０３において、人力駆動車１００から段差Ｓまでの距離を算出する。制御部２１は、抽出装置１から学習モデル１３０への入力画像を取得し、取得した入力画像に基づき距離を算出できる。制御部２１は、まず、入力画像内において、段差Ｓに重なる直線式と、人力駆動車１００の進行方向を延長する直線式とを導出する。制御部２１は、導出した２つの直線式が交差する点の座標と、タイヤの接地点を示す座標との間の距離から、人力駆動車１００から段差Ｓまでの距離を算出できる。撮像装置Ｐが固定であるため、タイヤの接地点を示す座標は予め設定された点の座標であってもよい。また、人力駆動車１００から段差Ｓまでの距離を計測する測距センサが設けられている場合、人力駆動車１００から段差Ｓまでの距離を算出する構成に代えて、測距センサの計測結果を取得してもよい。測距センサの一例は、超音波センサである。
【００９８】
次いで、制御部２１は、ステップＳ２０４において、人力駆動車１００の段差Ｓへの進入角度を算出する。制御部２１は、上述した２つの直線式のなす角度を算出することによって、段差Ｓへの進入角度を算出できる。本実施形態では、便宜的に、距離を算出した後に進入角度を算出する構成としたが、進入角度を算出した後に距離を算出してもよい。
【００９９】
次いで、制御部２１は、ステップＳ２０５において、人力駆動車１００から段差Ｓまでの距離が設定距離未満であり、かつ、段差Ｓへの進入角度が設定角度未満であるか否かを判断する。設定距離は、支援装置２４０の駆動を開始するのに適した距離が設定される。設定距離は例えば５０ｃｍである。設定角度は、設定角度未満の進入角度をもって人力駆動車１００が段差Ｓに進入した場合、人力駆動車１００による走行が困難となる可能性がある角度が設定される。設定角度は例えば１０度である。
【０１００】
制御部２１は、ステップＳ２０５において段差Ｓまでの距離が設定距離以上、または、段差Ｓへの進入角度が設定角度以上であると判断した場合、ステップＳ２０６において、第１制御信号を生成して報知装置Ｎへ出力する。照明装置２１０は、第１照明様態にて段差Ｓを照明する。第１照明態様では、例えば、段差Ｓを通常よりも高い照度で照明する。また、表示装置２３０は、第１表示態様にて段差Ｓを表示する。第１表示態様では、例えば、段差Ｓの強調表示を行う。
【０１０１】
一方、制御部２１は、ステップＳ２０５において段差Ｓまでの距離が設定距離未満、かつ、段差Ｓへの進入角度が設定角度未満であると判断した場合ステップＳ２０７において、第２制御信号を生成して報知装置Ｎへ出力する。照明装置２１０は、第１照明様態と異なる第２照明様態にて段差Ｓを照明する。第２照明態様では、例えば、明滅状態で段差Ｓを照明する。また、表示装置２３０は、第１表示態様とは異なる第２表示態様にて段差Ｓ表示する。第２表示態様では、例えば、段差Ｓの強調表示を行うと共に、段差Ｓの位置を示すマーカ、および、段差Ｓが迫っていることを警告する文字情報を表示する。
【０１０２】
制御部２１は、ステップＳ２０８において、支援装置２４０への制御信号を出力することによって、支援装置２４０を制御する。このとき、制御部２１は、段差Ｓが人力駆動車１００の進行方向に対して右側に存在するか、左側に存在するかを判断してもよい。制御装置２は、段差Ｓが進行方向の右側に存在すると判断した場合、人力駆動車１００の進行方向を右方向へ曲げるように制御する制御信号を支援装置２４０へ出力する。支援装置２４０は、制御装置２からの制御信号に従ってアクチュエータを駆動し、進行方向を右方向に曲げるように人力駆動車１００の操舵を支援する。このような制御を行うことにより、段差Ｓに対する人力駆動車１００の進入角度が深くなり、走行しやすくなる。段差Ｓが進行方向の左側に存在すると判断した場合も同様であり、制御装置２は、進行方向を左方向に曲げるように人力駆動車１００の操舵を支援する。
【０１０３】
以上のように、第２実施形態では、抽出装置１によって抽出対象の段差Ｓが抽出された場合、制御装置２は、段差Ｓの存在を搭乗者に報知する。また、制御装置２は、必要に応じて操舵を支援する制御を行う。以上の構成によって、操舵の快適性を向上できる。
【０１０４】
第２実施形態では、抽出装置１と制御装置２とをそれぞれ独立した装置として記載したが、抽出装置１と制御装置２とが一体となった装置であってもよい。また、照明装置２１０、表示装置２３０、および、音声出力装置２２０、および支援装置２４０を含む全てのコンポーネントＣが制御装置２に接続されている必要はなく、選択した１つ以上のコンポーネントＣが接続されていればよい。
【０１０５】
また、第２実施形態では、人力駆動車１００の操舵装置Ｈを操作することによって操舵を支援する構成としたが、操舵装置Ｈを固定することによって支援する構成としてもよい。段差Ｓへの進入角度が比較的浅い場合、タイヤが段差Ｓに乗り上がる際に、人力駆動車１００のハンドルバーが段差Ｓとは反対方向に回転する可能性がある。よって、制御部２１は、人力駆動車１００のハンドルバーを固定させる制御信号を支援装置２４０へ出力することによって、ハンドルバーの反対方向への回転を抑制する支援を実行してもよい。
【０１０６】
（第３実施形態）
第３実施形態では、抽出装置１による抽出結果を外部サーバへ送信する通信システムについて説明する。
【０１０７】
図８は第３実施形態に係る通信システムを説明するブロック図である。第３実施形態に係る通信システムは、抽出装置１と、外部装置と通信する通信部３４を含む通信装置３とを備える。通信装置３は、位置情報取得部３５をさらに含む。抽出装置１の内部構成は、第１実施形態と同様であるため、その詳細な説明は省略する。第３実施形態では、抽出装置１と通信装置３とをそれぞれ独立した装置として記載するが、抽出装置１と制御装置２とが一体となった装置であってもよい。
【０１０８】
通信装置３は、制御部３１、記憶部３２、入力部３３、通信部３４、および、位置情報取得部３５を備える。制御部３１は、例えば、ＣＰＵ、ＲＯＭ、ＲＡＭなどを備える。制御部３１が備えるＲＯＭには、通信装置３が備えるハードウェア各部の動作を制御するための制御プログラム等が記憶される。制御部３１内のＣＰＵは、ＲＯＭに記憶された制御プログラム、および、記憶部３２に記憶された各種プログラムを実行し、ハードウェア各部の動作を制御することによって、本願の通信装置を実現する。具体的には、制御部３１は、入力部３３を通じて入力される抽出装置１からの抽出結果を、外部装置へ送信する。本実施形態において、外部装置はインターネット網などの通信ネットワークＮＷに接続されたサーバ装置３００である。図８では、簡略化のため、サーバ装置３００と通信する通信装置３の台数を１台としているが、サーバ装置３００と複数の人力駆動車１００にそれぞれ接続された複数の通信装置３とが互いに通信できるように構成してもよい。
【０１０９】
制御部３１は上述の構成に限定されない。制御部３１は、シングルコアＣＰＵ、マルチコアＣＰＵ、ＦＰＧＡ、揮発性または不揮発性のメモリ等を含む１又は複数の制御回路であればよい。また、制御部３１は、日時情報を出力するクロック、計測開始指示を与えてから計測終了指示を与えるまでの経過時間を計測するタイマ、数をカウントするカウンタ等の機能を備えていてもよい。
【０１１０】
記憶部３２は、ＥＥＰＲＯＭ、ＳＲＡＭなどのメモリを備える。記憶部３２には、制御部３１によって実行されるコンピュータプログラム、このコンピュータプログラムが用いるデータ等が記憶される。
【０１１１】
入力部３３は、信号線Ｌ３を介して抽出装置１を接続するインタフェースを備える。入力部３３には、抽出装置１から出力される抽出結果が入力される。入力部３３に入力される抽出結果は、抽出結果を示す画像データであってもよく、抽出結果を示す文字情報もしくは信号であってもよい。入力部３３は、入力された抽出結果を制御部３１へ出力する。本実施形態では、信号線Ｌ３を介して抽出装置１を接続する構成としたが、無線通信のインタフェースを介して、抽出装置１と通信装置３との間でデータを送受信できるように構成してもよい。無線通信では、上述した各種の通信規格に準拠した無線伝送方式が利用できる。
【０１１２】
通信部３４は、通信ネットワークＮＷに接続する通信インタフェースを備える。通信部３４は、サーバ装置３００へ通知すべき情報を、通信ネットワークＮＷを介してサーバ装置３００へ送信する。また、通信部３４は、通信装置３を宛先としてサーバ装置３００から送信される情報を、通信ネットワークＮＷを介して受信する。
【０１１３】
位置情報取得部３５は、ＧＰＳ衛星から送信されるＧＰＳ信号を受信する受信アンテナ、および、受信したＧＰＳ信号に基づき人力駆動車１００の現在位置を測位することで位置情報を取得する演算回路等を備える。
【０１１４】
図９はサーバ装置３００の内部構成を示すブロック図である。サーバ装置３００は、制御部３０１、記憶部３０２および通信部３０３を備える。
【０１１５】
制御部３０１は、例えば、ＣＰＵ、ＲＯＭ、ＲＡＭなどを備える。制御部３０１が備えるＲＯＭには、サーバ装置３００が備えるハードウェア各部の動作を制御するための制御プログラム等が記憶される。制御部３０１内のＣＰＵは、ＲＯＭに記憶された制御プログラム、および、記憶部３０２に記憶された各種プログラムを実行し、ハードウェア各部の動作を制御する。
【０１１６】
制御部３０１は上述の構成に限定されない。制御部３０１は、ＣＰＵ、ＲＯＭ及びＲＡＭを備えた構成に限定されない。制御部３０１は、例えば、ＧＰＵ、ＦＰＧＡ、ＤＳＰ、量子プロセッサ、揮発性または不揮発性のメモリ等を含む１又は複数の制御回路または演算回路であってもよい。また、制御部３０１は、日時情報を出力するクロック、計測開始指示を与えてから計測終了指示を与えるまでの経過時間を計測するタイマ、数をカウントするカウンタ等の機能を備えていてもよい。
【０１１７】
記憶部３０２は、ハードディスクドライブなどの記憶装置を備える。記憶部３０２には、制御部３０１によって実行される各種コンピュータプログラムが記憶される。また、記憶部３０２には、人力駆動車１００に搭載される通信装置３から送信されるデータを基に学習した学習モデル３１０が記憶されていてもよい。学習モデル３１０は、その定義情報によって記述される。学習モデル３１０の定義情報は、学習モデル３１０を構成するニューラルネットワーク等の構造情報、学習モデル３１０において用いられる各種パラメータ等を含む。学習モデル３１０において用いられる各種パラメータには、例えばニューラルネットワークを構成するノード間の重み及びバイアス等が含まれる。サーバ装置３００は、抽出対象の段差Ｓを含む画像データと、この画像データが抽出対象の段差Ｓを含むことを示すラベルデータとを含む教師データを用いて、学習モデル３１０を学習する。サーバ装置３００は、サーバ装置３００の運営者等によって用意される多数の画像データおよびラベルデータを教師データとして、学習モデル３１０を学習してもよい。また、第４実施形態で説明するように、複数の人力駆動車１００にそれぞれ搭載される通信装置３から送信される画像データおよびラベルデータを教師データとして学習モデル３１０を学習してもよい。更に、教師データには、抽出対象の段差Ｓを含まない画像データと、この画像データが抽出対象の段差Ｓを含まないことを示すラベルデータとが含まれていてもよい。
【０１１８】
通信部３０３は、通信ネットワークＮＷに接続する通信インタフェースを備える。通信部３０３は、通信装置３へ通知すべき情報を、通信ネットワークＮＷを介して通信装置３へ送信する。また、通信部３０３は、サーバ装置３００を宛先として通信装置３から送信される情報を、通信ネットワークＮＷを介して受信する。
【０１１９】
図１０Ａは第３実施形態における通信装置３の制御手順を示すフローチャートである。通信装置３の制御部３１は、ステップＳ３０１において、抽出装置１による抽出結果を取得する。次いで、制御部３１は、ステップＳ３０２において、ステップＳ３０１で取得した抽出結果に基づき、抽出装置１によって抽出された段差Ｓが存在するか否かを判断する。制御部３１は、ステップＳ３０２において抽出装置１によって抽出された段差Ｓが存在しないと判断した場合、本フローチャートによる処理を終了する。
【０１２０】
制御部３１は、ステップＳ３０２において抽出装置１によって抽出された段差Ｓが存在すると判断した場合、ステップＳ３０３において、その段差Ｓの情報を通信部３４よりサーバ装置３００へ送信する。ステップＳ３０３において、通信部３４は、位置情報取得部３５が取得した位置情報、および、抽出装置１の抽出結果を外部装置へ送信する。            
【０１２１】
図１０Ｂは第３実施形態におけるサーバ装置３００の制御手順を示すフローチャートである。サーバ装置３００は、ステップＳ４０１において、通信装置３から送信される段差Ｓの情報を受信する。サーバ装置３００は、ステップＳ４０２において、ステップＳ４０１において受信した段差Ｓの情報を記憶部３０２に記憶させる。また、サーバ装置３００は、段差Ｓの情報と共に、人力駆動車１００の位置情報を受信した場合、受信した段差Ｓの情報を人力駆動車１００の位置情報に関連付けて記憶部３０２に記憶させてもよい。
【０１２２】
サーバ装置３００は、ステップＳ４０３において、記憶部３０２に記憶される段差Ｓに関する情報と、人力駆動車１００の位置情報とに基づき、地図データを生成する。ステップＳ４０３において生成される地図データは、例えば、段差Ｓに関する情報を地図上に重畳した画像データである。
【０１２３】
また、サーバ装置３００は、ステップＳ４０４において、通信ネットワークＮＷを介して、地図データのダウンロード要求を受信したか否かを判断する。サーバ装置３００は、ステップＳ４０４においてダウンロード要求を受信していないと判断した場合、本フローチャートによる処理を終了する。
【０１２４】
サーバ装置３００は、ステップＳ４０４においてダウンロード要求を受信したと判断した場合、ステップＳ４０５において、ステップＳ４０３において作成した地図データを、ダウンロード要求の要求元へ送信する。ダウンロード要求の要求元は、ステップＳ３０３で段差Ｓの情報を送信した通信装置３に限定されず、他の人力駆動車１００に搭載された通信装置３であってもよく、人力駆動車１００の搭乗者が携帯する携帯端末であってもよい。すなわち、第３実施形態では、通信装置３は、外部装置から、他の人力駆動車１００の位置情報、および、他の人力駆動車１００における抽出結果を受信することが可能である。
【０１２５】
以上のように、第３実施形態では、抽出装置１によって抽出対象の段差Ｓが抽出された場合、通信装置３は、段差Ｓの情報をサーバ装置３００へ送信するので、サーバ装置３００において段差Ｓの情報を管理できる。また、段差Ｓの情報と位置情報とをサーバ装置３００に記憶させておき、段差Ｓの情報を含む地図データを送信できるので、例えば、段差Ｓが存在する場所の付近を通過する人力駆動車１００に対して注意喚起を促すことができる。
【０１２６】
（第４実施形態）
第４実施形態では、人力駆動車１００の周囲環境についての検出結果を、学習モデルへ入力し、検出結果に関する推定結果を学習モデルから取得する演算処理部４２を備える情報処理装置４について説明する。より具体的には、情報処理装置４が、サーバ装置３００から学習モデル３１０をダウンロードすることよって、学習モデル１３０を更新する形態について説明する。サーバ装置３００の構成は、第３実施形態と同様であるから、その説明を省略することとする。
【０１２７】
図１１は、情報処理装置４の内部構成を示すブロック図である。情報処理装置４は、入力部４１、演算処理部４２、記憶部４３、出力部４４、および、受信部４５を備える。入力部４１、演算処理部４２、および、記憶部４３の構成は、それぞれ第１実施例における入力部１１、演算処理部１２、および、記憶部１３の構成と同様であるため説明を省略する。本実施形態において、学習モデル１３０が推定する障害物は人力駆動車１００の進行方向に沿って延びる段差Ｓである。
【０１２８】
出力部４４は、人力駆動車１００の周囲環境についての検出結果が障害物を含むことを示す推定結果を演算処理部４２が取得し、人力駆動車１００と段差Ｓとの間の距離が設定距離未満であり、かつ、人力駆動車１００の段差Ｓへの進入角度が設定角度未満である場合、警告情報を出力する。
【０１２９】
受信部４５は、インターネット網などの通信ネットワークＮＷを介してサーバ装置３００と接続される。受信部４５は、人力駆動車１００の周囲環境についての検出結果に基づく追加学習によって更新された更新済学習モデル３１０を受信する。演算処理部４２は、更新済学習モデルへ更新する旨の選択を受け付けた場合に、学習モデル１３０を更新済学習モデルに更新する。
【０１３０】
図１２Ａは更新手順を説明するフローチャートである。情報処理装置４の演算処理部４２は、ステップＳ５０１において、撮像装置Ｐによって撮像された画像データを、入力部４１を通じて取得する。次いで、演算処理部４２は、ステップＳ５０２において、段差Ｓを検出したか否かを判断する。例えば、演算処理部４２は、人力駆動車１００に設けられる測距センサの出力を取得することによって、段差Ｓを検出してもよい。また、演算処理部４２は、人力駆動車１００に設けられる振動センサの出力を取得することによって、段差Ｓを検出してもよい。
【０１３１】
演算処理部４２は、ステップＳ５０２において段差Ｓを検出したと判断した場合、ステップＳ５０３において、ステップＳ５０１において取得した画像データに対し、段差Ｓである旨のラベルデータを付与する。演算処理部４２は、ステップＳ５０１で取得した画像データを記憶部４３に記憶させておき、段差Ｓが検出された時点よりも設定時間だけ前に取得した画像データに段差Ｓである旨のラベルデータを付与する構成であってもよい。
【０１３２】
演算処理部４２は、ステップＳ５０２において段差Ｓを検出していないと判断した場合、ステップＳ５０４において、ステップＳ５０１において取得した画像データに対し、段差Ｓでない旨のラベルデータを付与する。
【０１３３】
次いで、演算処理部４２は、ステップＳ５０５において、ラベルデータを付与した画像データを、通信部３４を通じてサーバ装置３００へ送信する。
【０１３４】
次いで、演算処理部４２は、ステップＳ５０６において、サーバ装置３００から送信される更新済学習モデル３１０を受信部４５によって受信する。次いで、演算処理部４２は、ステップＳ５０７において、学習モデル１３０の更新要否を判断する。例えば、入力部４１が更新要否の選択を受付ける選択ボタンを含み、選択ボタンの操作に応じて更新要否を判断してもよい。また、演算処理部４２は、受信部４５を通じて搭乗者が所持する携帯端末に更新の要否を問い合わせ、携帯端末からの応答に基づき更新の要否を判断してもよい。
【０１３５】
演算処理部４２は、ステップＳ５０７において更新が必要であると判断した場合、ステップＳ５０８において、記憶部４３に記憶されている学習モデル１３０を、ステップＳ５０６において受信した更新済学習モデル３１０に更新させる。
【０１３６】
演算処理部４２は、ステップＳ５０７において更新が不要であると判断した場合学習モデル１３０を更新せずに、本フローチャートによる処理を終了する。
【０１３７】
図１２Ｂは更新手順を説明するフローチャートである。サーバ装置３００の制御部３０１は、ステップＳ６０１において、通信部３０３を通じて、情報処理装置４から送信されるラベルデータが付与された画像データを受信する。
【０１３８】
次いで、制御部３０１は、ステップＳ６０２において、ラベルデータが付与された画像データを受信した場合、画像データと、その画像データが段差Ｓを含むか否かを示すラベルデータとを教師データとして、学習モデル３１０の追加学習を実行する。この追加学習によって、学習モデル３１０の構造情報、学習モデル３１０において用いられる各種パラメータが更新され、学習モデル３１０が更新される。ステップＳ６０２の追加学習は、画像データを受信する都度実行する必要はなく、例えば、予め設定した数の画像データを受信した場合、もしくは、定期的なタイミング等の適宜のタイミングにおいて実行すればよい。また、制御部３０１は、段差Ｓである旨のラベルデータが付与された画像データのみを教師データとして、学習モデル３１０を追加学習してもよい。
【０１３９】
次いで、制御部３０１は、ステップＳ６０３において、追加学習後の学習モデル３１０を記憶部３０２から読み出し、更新済学習モデルとして通信装置３へ送信する。
【０１４０】
以上のように、第４実施形態では、複数の人力駆動車１００にそれぞれ搭載されている情報処理装置４から送信されてくる画像データを基に、サーバ装置３００が学習モデル３１０を追加学習する。また、人力駆動車１００に搭載された情報処理装置４は、必要に応じて、サーバ装置３００から送信される更新済学習モデルに更新でき、更新後の学習モデルに基づき、走行環境に関する情報を精度良く抽出できる。
【０１４１】
第４実施形態では、情報処理装置４において画像データが段差Ｓを含むか否かのラベル付けを実行する構成としたが、測距センサ、振動センサ等の出力を含む人力駆動車１００の走行中に検出される走行情報を、画像データと共にサーバ装置３００へ送信する構成としてもよい。すなわち、教師データは、人力駆動車１００の走行中に検出される走行情報を含む。この場合、サーバ装置３００は、通信装置３から送信されてくる走行情報を含む教師データに基づき、学習モデル３１０の追加学習を実行してもよい。
【０１４２】
第１実施形態〜第４実施形態では、人力駆動車１００の進行方向に沿って延びる段差Ｓを抽出対象としたが、抽出対象はこれに限定されず、例えば、側溝、マンホール、路面の凹凸、滑りやすい路面、人力駆動車１００の周囲に存在する物体（車両、人物、動物など）を抽出対象としてもよい。これらの抽出対象を含む画像データと、抽出対象を含むことを示すラベルデータとを含む教師データとして学習した学習モデル１３０を用いることにより、新たに入力された画像データから抽出対象が抽出される。
【０１４３】
また、撮像装置Ｐによる撮像方向は、人力駆動車１００の前方に限定されない。人力駆動車１００の後方、左方または右方に存在する他車両などの障害物の情報を抽出するために、撮像装置Ｐを用いて、人力駆動車１００の後方、左方または右方を撮像した画像データを取得する構成としてもよい。
【０１４４】
第１実施形態〜第４実施形態では、人力駆動車１００の周囲環境についての検出結果として、撮像装置Ｐによって画像データを用いた構成について説明したが、人力駆動車１００の周囲環境についての検出結果は画像データに限定されない。例えば、人力駆動車１００の周囲環境の検出結果として、例えば超音波センサなどの測距センサを用いて計測される人力駆動車１００から障害物までの距離データを、単独もしくは画像データと併用して用いてもよい。
【０１４５】
今回開示された実施形態は、全ての点において例示であって、制限的なものではないと考えられるべきである。本発明の範囲は、上述した意味ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内での全ての変更が含まれることが意図される。
【符号の説明】
【０１４６】
１  抽出装置
１１  入力部
１２  演算処理部
１３  記憶部
１４  出力部
１３０  学習モデル
【図１】
2020006759.tif 000003
【図２】
2020006759.tif 000004
【図３】
2020006759.tif 000005
【図４】
2020006759.tif 000006
【図５Ａ】
2020006759.tif 000007
【図５Ｂ】
2020006759.tif 000008
【図６】
2020006759.tif 000009
【図７】
2020006759.tif 000010
【図８】
2020006759.tif 000011
【図９】
2020006759.tif 000012
【図１０Ａ】
2020006759.tif 000013
【図１０Ｂ】
2020006759.tif 000014
【図１１】
2020006759.tif 000015
【図１２Ａ】
2020006759.tif 000016
【図１２Ｂ】
2020006759.tif 000017
【手続補正書】
【提出日】平成30年7月9日(2018.7.9)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】０００３
【補正方法】変更
【補正の内容】
【０００３】
【特許文献１】特開２００６−１２３５６９号公報