(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022134315
(43)【公開日】2022-09-15
(54)【発明の名称】制御装置およびプログラム
(51)【国際特許分類】
E05B 49/00 20060101AFI20220908BHJP
E05F 15/73 20150101ALI20220908BHJP
B60R 25/01 20130101ALI20220908BHJP
B60J 5/00 20060101ALI20220908BHJP
G06T 7/20 20170101ALI20220908BHJP
【FI】
E05B49/00 R
E05F15/73
B60R25/01
B60J5/00 H
G06T7/20 300A
【審査請求】未請求
【請求項の数】17
【出願形態】OL
(21)【出願番号】P 2021033370
(22)【出願日】2021-03-03
(71)【出願人】
【識別番号】000003551
【氏名又は名称】株式会社東海理化電機製作所
(74)【代理人】
【識別番号】110001195
【氏名又は名称】弁理士法人深見特許事務所
(72)【発明者】
【氏名】梶田 基貴
【テーマコード(参考)】
2E052
2E250
5L096
【Fターム(参考)】
2E052AA09
2E052BA06
2E052BA07
2E052EA09
2E052EB06
2E052EC01
2E052LA02
2E250AA21
2E250BB05
2E250BB08
2E250BB65
2E250CC28
2E250DD01
2E250DD06
2E250DD08
2E250EE03
2E250FF11
2E250FF18
2E250FF27
2E250FF36
2E250HH01
2E250JJ03
2E250JJ22
2E250JJ53
2E250KK03
2E250LL01
2E250LL05
2E250MM05
5L096BA04
5L096CA04
5L096CA24
5L096FA69
5L096HA02
5L096HA09
5L096KA04
(57)【要約】
【課題】ユーザーの動作に基づいて車両のドアを制御する場合に、ユーザーが車両に対して接触することを低減する。
【解決手段】車両20に搭載される制御装置1は、車両20に搭載されたカメラ3から車両20の外部の画像を取得する取得部102と、取得部102が取得した画像に基づいてユーザーの動作を判定する判定部101とを備える。判定部101は、水平面に対して平行となるユーザーの所定動作が終了したと判定した後、車両20のドア21のロックを解除するために必要な信号を出力する。
【選択図】
図2
【特許請求の範囲】
【請求項1】
車両に搭載される制御装置であって、
前記車両に搭載されたカメラから前記車両の外部の画像を取得する取得部と、
前記取得部が取得した画像に基づいてユーザーの動作を判定する判定部とを備え、
前記判定部は、水平面に対して平行となる前記ユーザーの所定動作が終了したと判定した後、前記車両のドアのロックを解除するために必要な第1信号を出力する、制御装置。
【請求項2】
前記判定部は、前記取得部が取得した画像に基づいて、前記ユーザーの状態が開始条件を満たすか否かを判定し、前記開始条件を満たすと判定したときに、前記所定動作の判定を開始する、請求項1に記載の制御装置。
【請求項3】
前記判定部は、前記ユーザーが前記所定動作を終えた後、前記取得部が取得した画像に基づいて、前記ユーザーの状態が終了条件を満たすか否かを判定し、前記終了条件を満たすと判定したときに、前記第1信号を出力する、請求項1または請求項2に記載の制御装置。
【請求項4】
前記判定部は、前記ユーザーによる前記所定動作が終了するまでに、前記ユーザーによるエラー動作を検出したとき、エラーと判定する、請求項1~請求項3のいずれか1項に記載の制御装置。
【請求項5】
前記判定部は、前記エラーと判定したとき、前記エラーの発生を前記ユーザーに通知するための第2信号を出力する、請求項4に記載の制御装置。
【請求項6】
前記所定動作に関わる前記ユーザーの部位の選択を受け付ける設定部をさらに備える、請求項1~請求項5のいずれか1項に記載の制御装置。
【請求項7】
前記判定部は、前記第1信号の入力を条件に前記車両のドアを開放する開閉装置に対して、前記第1信号を出力する、請求項1~請求項6のいずれか1項に記載の制御装置。
【請求項8】
前記所定動作は、第1動作と第2動作とを含み、
前記判定部は、前記第1動作と前記第2動作とが基準に合致し、かつ、前記第1動作と前記第2動作との順序が予め定めた順序と一致すると判定したとき、前記所定動作が終了したと判定する、請求項1~請求項7のいずれか1項に記載の制御装置。
【請求項9】
前記第2動作は、前記第1動作の逆の順序の動作である、請求項8に記載の制御装置。
【請求項10】
前記所定動作は、前記ユーザーの一方の脚の動作である、請求項1~請求項9のいずれか1項に記載の制御装置。
【請求項11】
前記所定動作は、前記ユーザーの脚の動作であり、
前記開始条件は、前記ユーザーの両足首および両膝が静止することを含む、請求項2に記載の制御装置。
【請求項12】
前記所定動作は、前記ユーザーの脚の動作であり、
前記終了条件は、前記ユーザーの両足首が静止することを含む、請求項3に記載の制御装置。
【請求項13】
前記エラー動作は、前記ユーザーによる前記所定動作が規定時間で終了しないことを含む、請求項4に記載の制御装置。
【請求項14】
前記所定動作は、第1動作と第2動作とを含み、
前記エラー動作は、前記第1動作の後に検出された、前記第2動作の方向とは逆方向の動作を含む、請求項4に記載の制御装置。
【請求項15】
前記所定動作は、前記ユーザーの第1の脚の動作であり、
前記エラー動作は、前記第1の脚とは別の前記ユーザーの第2の脚の動作であることを含む、請求項4に記載の制御装置。
【請求項16】
前記所定動作は、前記ユーザーの第1の脚の動作であり、
前記エラー動作は、前記第1の脚とは別の前記ユーザーの第2の脚の膝と前記第2の脚の足首との角度が閾値を超える動作であることを含む、請求項4に記載の制御装置。
【請求項17】
車両のユーザーの動作を判定する判定プログラムであって、
コンピュータに、
前記車両に搭載されたカメラから前記車両の外部の画像を取得するステップと、
前記画像に基づいて水平面に対して平行となる前記ユーザーの所定動作の終了を判定した後、前記車両のドアのロックを解除するために必要な第1信号を出力するステップとを実行させる、判定プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、制御装置およびプログラムに関し、特に、車両に搭載される制御装置および車両の制御のためのプログラムに関する。
【背景技術】
【0002】
ユーザーの動作を検出することによって車両のドアを開くシステムが知られている。たとえば、特開2017-141640号公報(特許文献1)には、車両のスライドドアの下方に設けたキックセンサに向けてユーザーがキック動作をすると、車両のスライドドアが開くシステムが記載されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
先行技術文献1に記載されたシステムにおいては、キックセンサの検出領域に足先が入るよう、ユーザーは足を車両の底の空間に対して十分に差し入れてキック動作をする必要がある。このため、勢いよくキック動作をしたユーザーは、キック動作の際に車両の底に足を衝突させてしまうおそれがある。
【0005】
本開示は、かかる問題を解決するためになされたものであり、本開示の目的は、ユーザーの動作に基づいて車両のドアを制御する場合に、ユーザーが車両に対して接触することを低減することである。
【課題を解決するための手段】
【0006】
本開示の制御装置は、車両に搭載される制御装置である。制御装置は、車両に搭載されたカメラから車両の外部の画像を取得する取得部と、取得部が取得した画像に基づいてユーザーの動作を判定する判定部とを備える。判定部は、水平面に対して平行となるユーザーの所定動作が終了したと判定した後、車両のドアのロックを解除するために必要な第1信号を出力する。
【0007】
また、本開示のプログラムは、車両のユーザーの動作を判定する判定プログラムである。判定プログラムは、コンピュータに、コンピュータに、車両に搭載されたカメラから車両の外部の画像を取得するステップと、画像に基づいて水平面に対して平行となるユーザーの所定動作の終了を判定した後、車両のドアのロックを解除するために必要な第1信号を出力するステップとを実行させる。
【発明の効果】
【0008】
本開示の制御装置およびプログラムによれば、車両に搭載されたカメラで撮影された画像に基づいて、ユーザーの所定動作を判定するため、ユーザーの動作に基づいて車両のドアを制御する場合に、ユーザーが車両に対して接触することを低減できる。
【図面の簡単な説明】
【0009】
【
図2】制御装置の制御に関わる構成を概念的に示すブロック図である。
【
図3】ドアのロックを解除する条件を満たす所定動作を示す図である。
【
図4】ユーザーの動作と制御装置の判定内容との関係を示すタイミングチャート1である。
【
図5】ユーザーの動作と制御装置の判定内容との関係を示すタイミングチャート2である。
【
図6】ユーザーの動作と制御装置の判定内容との関係を示すタイミングチャート3である。
【
図7】ユーザーの動作と制御装置の判定内容との関係を示すタイミングチャート4である。
【
図8】ユーザーの動作と制御装置の判定内容との関係を示すタイミングチャート5である。
【
図9】ユーザーの動作と制御装置の判定内容との関係を示すタイミングチャート6である。
【
図10】制御装置により実行される処理の手順の一例を示すフローチャートである。
【
図11】制御装置により実行される動作判定処理の手順の一例を示すフローチャートである。
【
図12】制御装置により実行される動作判定処理の手順の一例を示すフローチャートである。
【
図13】制御装置により実行される左脚チェック処理の手順の一例を示すフローチャートである。
【
図14】制御装置と携帯装置とにより実行される処理の手順の一例を示すフローチャートである。
【発明を実施するための形態】
【0010】
以下、本開示の実施の形態について、図面を参照しながら詳細に説明する。なお、図中同一または相当部分には同一符号を付してその説明は繰り返さない。
【0011】
<全体ブロック図>
図1は、ドア制御システム100の全体ブロック図である。ドア制御システム100は、車両20に搭載される。車両20は、たとえば、ハッチバック型の車両である。車両20は、乗車席に対応するドアの他、跳ね上げ式のドア21を後部に備えている。
図1では、乗車席に対応するドアの図示を省略している。本開示に関わる車両はハッチバック型の車両に限定されない。
【0012】
ドア制御システム100は、制御装置1と、ドア21を開閉するロック装置2と、車両20の外部を撮影するカメラ3と、通信装置4とを備える。制御装置1は、ロック装置2、カメラ3、および通信装置4と通信可能に接続されている。カメラ3は、たとえば、車両20の後部に取り付けられている。カメラ3は車両20の後方に位置する人の下半身を少なくとも撮影できるよう、その取り付け位置が調整されている。カメラは、撮影した動画を制御装置1に送信する。
【0013】
通信装置4は、ユーザーが携帯する携帯装置50と通信する。携帯装置50は、たとえば、制御装置1が認証に用いるIDを記憶しているスマートキーである。携帯装置50は、制御装置1が認証に用いるIDを記憶しているスマートフォンであってもよい。
【0014】
ロック装置2は、制御装置1の指令に従い、車両20に設けられたドアを開閉する。
図1では、ドアの代表例として車両20の後方に設けられたドア21を示している。ロック装置2は、車両20のドアを開閉する開閉装置の一例である。
【0015】
制御装置1は、ハードウエアの構成として、各種の演算を実行するプロセッサ11と、プログラムおよび演算結果を記憶するメモリ12と、各種のデータを入力および出力する入出力ポート13とを含んでいる。
【0016】
制御装置1は、通信装置4を介して携帯装置50からIDを受信する。これにより、車両20に近づいた人物が車両20のドア21を開閉することが許されたユーザー本人であることを認証する。IDを用いて本人認証をすることに変えて、カメラ3で撮影された人物の特徴に基づいて本人認証をしてもよい。たとえば、人物の顔の特徴に基づいて本人認証することが考えられる。
【0017】
制御装置1は、カメラ3から受信する画像に基づいて、車両20の後方に位置するユーザーの動作を判定する。制御装置1は、ユーザーの動作がドア21のロックを解除するために設定された所定動作に一致すると判定した後、ドア21のロックを解除するために必要な信号をロック装置2に出力する。以下、この信号をアンロック信号と称する。アンロック信号は、第1信号の一例である。ロック装置2は、アンロック信号に基づいてドア21のロックを解除する。ロック装置2は、アンロック信号に基づいてドア21のロックを解除するとともに、ドア21を開いてもよい。
【0018】
ドア制御システム100によれば、ユーザーは、車両20の近くで所定動作をすることによってドア21のロックを解除することができる。特に、ドア制御システム100は、画像を用いてユーザーの動作を判定する。このため、車両20の底に搭載したセンサでユーザーの動作を判定するシステムと比較して、ユーザーが必要以上に車両20に接近し過ぎてユーザーが動作をする際に車両20に衝突してしまうおそれを極力防止できる。
【0019】
<制御装置1の概念図>
図2は、制御装置1の制御に関わる構成を概念的に示すブロック図である。
図2には、制御装置1の制御に関わる各種構成の他、制御装置1が記憶する座標を説明するための座標系も示されている。
【0020】
制御装置1は、判定部101と、取得部102と、通信部103と、座標検出部104と、設定部105とを概念的に含んでいる。これらは、
図1を用いて説明したハードウエアの構成によって実現される。
【0021】
通信部103は通信装置4と通信する。通信装置4は携帯装置50に対して定期的にポーリングを送信する。通信装置4は、ポーリングに対する応答として携帯装置50から受信したIDを通信部103に送信する。通信部103はIDを判定部101に送信する。判定部101は受信したIDに基づいて携帯装置50を所持する人物を認証する。
【0022】
取得部102は、カメラ3が撮影したフレーム画像を時系列順に取得する。フレーム画像は、車両20の外のユーザーの動きを撮影した動画に含まれる。取得部102は取得した画像を座標検出部104に送信する。
【0023】
座標検出部104は、機械学習による姿勢推定技術を用いて、フレーム画像から人体の複数部位の座標posを検出する。座標検出部104は、座標を検出するための学習済モデルを含んで構成される。フレーム画像から得られる情報を学習済モデルに入力すると、入力されたフレーム画像に対応する人体の複数部位の座標posが学習済みモデルから出力される。人体の各部位は、たとえば、首、肩、肘、手首、腰、膝、足首などである。座標検出用の学習済モデルとして、たとえば、OpenPoseなどを用いることが考えられる。
【0024】
図2には、複数部位の座標posが人体を表す絵の中に黒丸で示されている。本開示では、画像に含まれるユーザーに対する右、左、上、および下の方向を図示のとおりに定義する。
【0025】
判定部101は、IDに基づいた本人認証を終えた後、座標検出部104から取得した座標に基づいてドア21のロックを解除する条件を満たす所定動作をユーザーが実施するか否かを判定する。判定部101は、所定動作のパターンを記憶している。本人認証は、所定動作の判定後に行ってもよい。判定部101は、ユーザーの動作がドア21のロックを解除するために設定された所定動作に一致すると判定した後、アンロック信号をロック装置2に出力する。ロック装置2は、アンロック信号に基づいてドア21のロックを解除する。
【0026】
設定部105は、所定動作に関するユーザーの設定を受け付ける。たとえば、所定動作が脚を用いた動作である場合、設定部105は右脚と左脚とのいずれの脚を所定動作に用いるかの選択を受け付ける。設定部105は、通信部103を介して通信装置4と通信する。たとえば、ユーザーが携帯装置50を操作することによって、所定動作の対象とする脚を指定した場合、携帯装置50から通信装置4に動作の対象を指定する信号が送信される。設定部105は、通信部103を介してその信号を取得する。設定部105は、取得した信号に基づいて所定動作に対応させる脚を設定する。
【0027】
<所定動作の例>
図3は、ドア21のロックを解除する条件を満たす所定動作を示す図である。所定動作は、たとえば、水平面に対して平行となるユーザーの動作である。また、所定動作は、たとえば、一方の脚の動作である。所定動作は、たとえば、第1動作と第2動作とから構成されている。所定動作の判定は、ユーザーの両脚および両膝が静止している状態から開始される。たとえば、このときの右足首の座標はpos0である。第1動作は、右脚を右方向に動かす動作である。右脚を右方向に動かし終えたときの右足首の座標はpos1である。第2動作は、右方向に動かした右脚を元の位置に戻す動作である。換言すると、第2動作は、右脚を左方向に動かす動作である。右脚を左方向に動かし終えたときの右足首の座標はpos2である。
【0028】
制御装置1は、ユーザーが第1動作と第2動作とを実施したこと、および第1動作と第2動作との順序が予め定めた順序と一致することを条件にして、ドア21のロックを解除する。ただし、制御装置1は、ユーザーが右脚を図示のとおりに動作する間に、予め定めたエラー動作を検出した場合、ドア21のロックを解除しない。以下、ユーザーの動作とドア21のロックの解除との関係について、図面を用いてより詳細に説明する。
【0029】
<ロックが解除される場合>
図4は、ユーザーの動作と制御装置1の判定内容との関係を示すタイミングチャート1である。タイミングチャート1は、ドア21のロックが解除されるパターンを示す。
【0030】
制御装置1は、ユーザーの右足首の座標の変化に基づいて、ユーザーの動作がドア21のロックを解除する所定動作に該当するか否かを判定する。より具体的には、制御装置1は、ユーザーの右脚の第1動作と第2動作とを判定する。制御装置1は、右脚の第1動作と第2動作とを判定する間、ユーザーの左足首の座標と、ユーザーの両膝の座標と、ユーザーの左膝と左足首との角度とを併せて判定している。これらの座標は、カメラ3が撮影した画像に基づいて座標検出部104が検出する。ユーザーの左膝と左足首との角度は、
図2に示した座標系において、左膝の座標位置を通りz軸に平行な直線と、左膝の位置と右足首の位置とを通る直線と、が成す角度に基づいて算出できる。
【0031】
制御装置1は、ユーザーの両膝および両足首が静止していることを開始条件として、ユーザーの動作の判定を開始する。
図4は、時刻t0において開始条件が成立した状態を示す。時刻t0での右足首の座標はpos0である。
【0032】
制御装置1は、開始条件の成立後、右脚の第1動作を判定する。
図4は、時刻t1で右脚の右方向への移動、すなわち、第1動作が検出された状態を示す。時刻t1での右足首の座標はpos1である。その後、制御装置1は、右脚の第2動作を判定する。制御装置1は、ユーザーが第2動作を開始した後、ユーザーの両足首が静止したことを終了条件として、ユーザーが第2動作を終えたものと判定する。
図4は、時刻t2で右脚の左方向への移動、すなわち、第2動作が検出された状態を示す。時刻t2での右足首の座標はpos2である。
【0033】
制御装置1は、時刻t0で検出した右脚の座標と、時刻t2で検出した右脚の座標とを比較し、両者の差異が閾値Dthの範囲にあることを条件にして、基準に従う第2動作が終了したと判定する。閾値Dthは、x座標、y座標、およびz座標毎に異ならせてもよく、各座標で共通な値を採用してもよい。
【0034】
制御装置1は、判定の開始条件が成立してから終了条件が成立するまでの間、ユーザーの左足首が静止していること、およびユーザーの左膝と左足首との角度が閾値α以内であることを判定し続ける。
【0035】
整理すると、制御装置1は、(1)ユーザーの両膝および両足首が静止していることを開始条件にして、判定を開始し、(2)ユーザーの右脚の右方向への移動を判定し、(3)ユーザーの右脚の左方向への戻り、および両足首の静止を判定する。さらに、制御装置1は、上記(1)から(3)の間、(4)ユーザーの左足首の静止、およびユーザーの左膝と左足首との角度が閾値α以内であることを判定し続ける。
【0036】
制御装置1は、これら(1)から(4)のいずれにおいてもユーザーの動作が基準を満たし、かつ、動作を終えたユーザーの右足首の座標位置と、ユーザーが動作を開始したときの右足首の座標位置との差異が閾値Dthの範囲にあることを条件にして、ドア21のロックを解除するために必要なアンロック信号を出力する。ロック装置2は、アンロック信号に基づいてドア21のロックを解除する。
【0037】
<右脚が元の位置に戻らない場合>
図5は、ユーザーの動作と制御装置1の判定内容との関係を示すタイミングチャート2である。タイミングチャート2は、ユーザーの右脚が規定時間内に元の位置に戻らないために、ドア21のロックが解除されないパターンを示す。
【0038】
制御装置1は、ユーザーが右脚を右方向に移動する第1動作の終了を時刻t1で検出する。その後、制御装置1は、ユーザー右足を左方向に戻す第2動作の終了を待つ。しかし、時刻t1から時間Twが経過しても第2の動作の終了を検出できない場合、制御装置1は、ユーザーの動作にエラーが発生したと判定する。この場合、制御装置1は、ドア21のロックを解除するための信号を出力しない。制御装置1は、時間Twが経過した時点でエラーを通知する通知信号を出力する。この通知信号は、たとえば、通信装置4を介してユーザーの携帯装置50へ送信される。通知信号は第2信号の一例である。
【0039】
携帯装置50は、通知信号を受信したときにエラー音を発生させる。または、携帯装置50は、通知信号を受信したときに画面にエラーのメッセージを表示させる。または、携帯装置50は、通知信号を受信したときに、所定動作のやり直しを促すメッセージを表示する。
【0040】
制御装置1は、以下に説明するとおり、様々な条件で通知信号を出力する。いずれの通知信号も携帯装置50へ送信される。携帯装置50は、通知信号を受信すると、上述の動作を実行する。
【0041】
制御装置1は、エラーを通知する通知信号を出力した後、ユーザーの両脚および両膝が静止すると、所定動作の判定をはじめからやり直す。
【0042】
<左脚が動いた場合>
図6は、ユーザーの動作と制御装置1の判定内容との関係を示すタイミングチャート3である。タイミングチャート3は、ユーザーが所定動作をする間にユーザーの左脚の動きが検出されたために、ドア21のロックが解除されないパターンを示す。
【0043】
制御装置1は、ユーザーが右脚を右方向に移動する第1動作の終了を時刻t1で検出する。その後、右足を元の移置に移動する第2動作の検出を待つ間に、制御装置1は、ユーザーの左脚の動きを時刻t3で検出する。制御装置1は、左脚が動いたことを左足首の座標の変化に基づいて検出する。制御装置1は、左脚の動きを検出した場合、その後に右脚を左に移動する第2動作をユーザーが実行したとしても、アンロック信号を出力しない。制御装置1は、左脚の移動を検出した時刻t3の時点でユーザーの動作にエラーが発生したと判定する。この場合、制御装置1は、エラーを通知する通知信号を出力する。この通知信号は、たとえば、通信装置4を介してユーザーの携帯装置50へ送信される。
【0044】
制御装置1は、エラーを通知する通知信号を出力した後、ユーザーの両脚および両膝が静止すると、所定動作の判定をはじめからやり直す。
【0045】
図6は、左脚が第2動作の途中で動いた場合を例示しているに過ぎない。制御装置1は、時刻t0から時刻t2までの間のいずれのタイミングで左脚の動きが検出された場合でも、アンロック信号を出力することなく、左脚の動きが検出された時点で通知信号を出力する。
【0046】
<左膝と左足首との角度が閾値を超えた場合>
図7は、ユーザーの動作と制御装置1の判定内容との関係を示すタイミングチャート4である。タイミングチャート4は、ユーザーが所定動作をする間にユーザーの左膝と左足首との角度が閾値αを超えたために、ドア21のロックが解除されないパターンを示す。
【0047】
制御装置1は、ユーザーが右脚を右方向に移動する第1動作の終了を待つ間に、ユーザーの左膝と左足首との角度が閾値αを超えたことを時刻t4で検出する。制御装置1は、ユーザーの左膝と左足首との角度が閾値αを超えたことを検出した場合、その後に第1動作および第2動作をユーザーが実行したとしても、アンロック信号を出力しない。制御装置1は、時刻t4の時点でユーザーの動作にエラーが発生したと判定する。この場合、制御装置1は、エラーを通知する通知信号を出力する。この通知信号は、たとえば、通信装置4を介してユーザーの携帯装置50へ送信される。
【0048】
制御装置1は、エラーを通知する通知信号を出力した後、ユーザーの両脚および両膝が静止すると、所定動作の判定をはじめからやり直す。
【0049】
<右脚がはじめに左方向に動いた場合>
図8は、ユーザーの動作と制御装置1の判定内容との関係を示すタイミングチャート5である。タイミングチャート5は、ユーザーがはじめに右脚を右方向でなく左方向に動かしたために、ドア21のロックが解除されないパターンを示す。
【0050】
制御装置1は、時刻t0においてユーザーの両膝および両足首が静止していることを開始条件として、ユーザーの動作の判定を開始する。その後、制御装置1は、ユーザーの右脚が左へ動いたことを時刻t5で検出する。この場合、制御装置1はアンロック信号を出力しない。制御装置1は、時刻t5の時点でユーザーの動作にエラーが発生したと判定する。この場合、制御装置1は、エラーを通知する通知信号を出力する。この通知信号は、たとえば、通信装置4を介してユーザーの携帯装置50へ送信される。
【0051】
制御装置1は、エラーを通知する通知信号を出力した後、ユーザーの両脚および両膝が静止すると、所定動作の判定をはじめからやり直す。
【0052】
<第2動作で右脚が右に動いた場合>
図9は、ユーザーの動作と制御装置1の判定内容との関係を示すタイミングチャート6である。タイミングチャート6は、ユーザーが第2動作において右脚を左方向でなく右方向に動かしたために、ドア21のロックが解除されないパターンを示す。
【0053】
制御装置1は、時刻t1においてユーザーが第1動作を終えた後、ユーザーの第2動作の判定を開始する。ユーザーは、時刻t1から右脚を左方向に動かす動作を開始しているが、途中で右脚を動かす方向を左から右に変更している。制御装置1は、ユーザーの右脚が動く方向が左から右に変化したことを時刻t6で検出する。この場合、制御装置1はアンロック信号を出力しない。制御装置1は、時刻t6の時点でユーザーの動作にエラーが発生したと判定する。この場合、制御装置1は、エラーを通知する通知信号を出力する。この通知信号は、たとえば、通信装置4を介してユーザーの携帯装置50へ送信される。
【0054】
制御装置1は、エラーを通知する通知信号を出力した後、ユーザーの両脚および両膝が静止すると、所定動作の判定をはじめからやり直す。なお、制御装置1は、時刻t1の直後からユーザーの右脚が右方向に移動した場合にも同様に通知信号を出力する。
【0055】
<制御装置1の処理手順を示すフローチャート>
図10は、制御装置1により実行される処理の手順の一例を示すフローチャートである。本フローチャートに対応する各ステップを実行するためのプログラムは、制御装置1のメモリ12に格納されている。制御装置1のプロセッサ11は、メモリ12に格納されたプログラムを実行することにより、以下に説明する処理を実行する。
【0056】
はじめに、制御装置1は、車両20の外に向けてポーリングをする(ステップS1)。制御装置1は、ポーリングに対する応答として、携帯装置50からIDを受信したか否かを判定する(ステップS2)。制御装置1はIDを受信するまで繰り返しポーリングを出力する。
【0057】
制御装置1は、IDを受信したと判定した場合(ステップS2にてYES)、受信したIDと制御装置1内に格納しているIDとを照合する。制御装置1は、両IDが一致していない場合、IDの照合に問題有と判断し(ステップS3にてNO)、処理を終える。制御装置1は、両IDが一致している場合、IDの照合に問題がないと判断し(ステップS3にてYES)、動作判定処理を実行する(ステップS4)。動作判定処理については、
図11および
図12を用いて後に詳細に説明する。動作判定処理を実行した後、制御装置1は本フローチャートに基づく処理を終える。
【0058】
<動作判定処理および左脚チェック処理の手順を示すフローチャート>
図11および
図12は、制御装置1により実行される動作判定処理の手順の一例を示すフローチャートである。
図13は、制御装置1により実行される左脚チェック処理のフローチャートである。動作判定処理は、
図10のサブルーチンである。左脚チェック処理は動作判定処理のサブルーチンである。
【0059】
制御装置1は、動作判定処理として、はじめに左脚チェック処理を実行する(ステップS41)。左脚チェック処理は、ユーザーの各部位の位置を特定するための座標を更新するとともに、左足首が静止し、かつ、左膝と左足首の角度が閾値αを超えていないことをチェックする処理である。したがって、左脚チェック処理は、
図4に示した(4)の判定を含んでいる。左脚チェック処理は、所定動作を判定する間に繰り返し実行する必要がある。このため、
図11および
図12に示すフローチャートは、左脚チェック処理に対応する複数のステップを含んでいる。
【0060】
ここで、
図13を参照して、左脚チェック処理を説明する。制御装置1は、はじめに、ユーザーの各部位の座標位置を更新する(ステップS101)。この座標位置には、少なくとも、ユーザーの両膝、両足首の座標が含まれる。これらの座標は、カメラ3が撮影したユーザーの画像に基づいて座標検出部104により検出される。
【0061】
次に、制御装置1は、ユーザーの左足首が静止しているか否かを判定する(ステップS102)。換言すると、制御装置1は、ユーザーの左脚が動いたか否かを判定する。たとえば、制御装置1は、数秒程度の規定時間が経過する前後で左足首の座標が変化しないことを確認することによって、左足首が静止しているか否かを判定することができる。
【0062】
制御装置1は、ユーザーの左足首が静止していない場合、左脚チェックの結果をNG(No Good)とする(ステップS105)。次に、制御装置1は、エラー報知処理を実行する(ステップS106)。具体的には、制御装置1は、エラーを通知するための通知信号を出力する。通知信号は、通信装置4を経由してユーザーの携帯装置50へ送信される。制御装置1は、ステップS106の報知処理の後、ステップS41に処理を戻す。これにより、制御装置1は、動作判定処理をはじめから実行する。
【0063】
なお、
図6には、ユーザーの左脚が動いたときにエラーとなる様子を示すタイミングチャートが示されている。
【0064】
制御装置1は、ステップS102においてユーザーの左足首が静止していると判定した場合、ユーザーの左膝と左足首との角度が閾値α以内であるか否かを判定する(ステップS103)。制御装置1は、ステップS103において、NOと判定したとき、すでに説明したステップS105およびステップS106の処理を実行する。その後、ステップS41に処理を戻して動作判定処理をはじめから実行する。
【0065】
なお、
図7には、ユーザーの左膝と左足首との角度が閾値α以内でないときにエラーとなる様子を示すタイミングチャートが示されている。
【0066】
制御装置1は、左脚チェック処理において、ユーザーの左足首が静止し(ステップS102でYES)、かつ、ユーザーの左膝と左足首との角度が閾値α以内である場合(ステップS103にてYES)、左脚チェックの結果がOKであると判定する(ステップS104)。この場合、制御装置1は、左脚チェック処理を抜けて、動作判定処理のうち、本左脚チェック処理のルーチンが呼び出されたステップに戻る。
【0067】
図11に戻り、動作判定処理を説明する。制御装置1は、ステップS41の左脚チェック処理を終えた後、ユーザーの両膝および両足首は静止しているか否かを判定する(ステップS43)。たとえば、制御装置1は、数秒程度の規定時間が経過する前後で両膝および両足首の座標が変化しないことを確認することによって、両膝および両足首が静止しているか否かを判定することができる。
【0068】
制御装置1は、ユーザーの両膝および両足首が静止していないと判定した場合(ステップS43にてNO)、エラー報知処理を実行する(ステップS47)。具体的には、制御装置1は、エラーを通知するための通知信号を出力する。通知信号は、通信装置4を経由してユーザーの携帯装置50へ送信される。制御装置1は、ステップS47の報知処理の後、ステップS41に処理を戻す。これにより、制御装置1は、動作判定処理をはじめから実行する。
【0069】
制御装置1は、ステップS43においてユーザーの両膝および両足首は静止していると判定した場合、ユーザーの所定動作を判定する開始条件が成立したと判断し、ユーザーの右足首の座標pos0を取得する(ステップS45)。
【0070】
次に、制御装置1は、ユーザーの右脚が右方向ではなく左方向へ動いたか否かを判定する(ステップS49)。なお、
図8には、ユーザーの右脚が右方向ではなく左方向へ動いたときにエラーとなる様子を示すタイミングチャートが示されている。
【0071】
制御装置1は、右脚が左方向へ動いたと判定したとき、すでに説明したステップS47に移行し、エラー報知処理を実行する。エラー報知処理の後、ステップS41に処理を戻す。これにより、制御装置1は、動作判定処理をはじめから実行する。
【0072】
制御装置1は、右脚が左方向へ動いていない判定した後、右脚が右方向へ動いたか否かを判定する(ステップS51)。すなわち、制御装置1は、ユーザーが第1動作を開始したか否かを判定する。制御装置1は、右脚が右方向へ動いていないと判定したとき、ステップS49に処理を戻す。制御装置1は、右脚が右方向へ動いたと判定したとき、左脚チェック処理を実行する(ステップS53)。これにより、制御装置1は、右脚が右方向へ動いている最中に、左脚が動いていないこと、および左膝と左足首の角度が閾値αを超えていないことを確認する。
【0073】
制御装置1は、ステップS53の後、ユーザーの右脚が静止したか否かを判定する(ステップS55)。すなわち、制御装置1は、ユーザーが第1動作を終えたか否かを判定する。制御装置1は、右脚が静止していないと判定した場合(ステップS55でNO)、ステップS53に処理を戻す。
【0074】
制御装置1は、ユーザーの右脚の動きが静止していると判定した場合、ユーザーの右足首の座標pos1を取得する(ステップS59)。
【0075】
ステップS59の次の処理を
図12に基づいて説明する。制御装置1は、ステップS59において、ユーザーの右足首の座標pos1を取得した後、ユーザーの右脚が左方向へ動いたか否かを判定する(ステップS61)。すなわち、制御装置1は、ユーザーが第2動作を開始したか否かを判定する。制御装置1は、ユーザーの右脚が左方向へ動いたと判定したとき、ユーザーの右足首の座標pos2を取得する(ステップS65)。次に、制御装置1は、座標pos2とすでに取得済みの右足首の座標pos0とのユークリッド距離dを計算する(ステップS69)。
【0076】
次に、制御装置1は、計算した距離dが閾値Dth未満であるか否かを判定する(ステップS71)。ユーザーが右脚を元の位置へ戻す途中である場合、ここではNOと判定される。制御装置1は、ステップS71においてNOと判定した場合、座標pos1を取得した時点から時間Twが経過したか否かを判定する(ステップS73)。制御装置1は、ステップS73においてNOと判定した場合、左脚チェック処理(ステップS77)を実行した後、処理をステップS61に戻す。
【0077】
制御装置1は、ステップS61において再び、ユーザーの右脚が左方向へ動いたか否かを判定する。ユーザーが右脚を動かす方向を左から右へ変更したとき、制御装置1は、ステップS63において右脚の右方向への動きがあると判定する。この場合、制御装置1はすでに説明したステップS47に移行し、エラー報知処理を実行する。エラー報知処理の後、ステップS41に処理を戻す。これにより、制御装置1は、動作判定処理をはじめから実行する。
【0078】
なお、
図9には、第2動作の途中でユーザーの右脚の方向が方向左から右に変化したときにエラーとなる様子を示すタイミングチャートが示されている。
【0079】
制御装置1は、ステップS61において右脚の左への動きがあると判定するごとに、ステップS65において、ユーザーの右足首の座標pos2を取得する。ステップS65では取得された最新の座標pos2が保持される。その後、制御装置1は、ステップS69において、座標pos2とすでに取得済みの右足首の座標pos0とのユークリッド距離dを計算する。
【0080】
制御装置1は、計算した距離dが閾値Dth未満である場合(ステップS71にてNO)、ステップS73において、座標pos1を取得した時点から時間Twが経過したか否かを判定する。制御装置1は、ステップS73においてYESと判定した場合、制御装置1は、すでに説明したステップS47に移行し、エラー報知処理を実行する。エラー報知処理の後、ステップS41に処理を戻す。これにより、制御装置1は、動作判定処理をはじめから実行する。
【0081】
なお、
図5には、座標pos1を取得した時点から時間Twが経過したときにエラーとなる様子を示すタイミングチャートが示されている。
【0082】
制御装置1は、ステップS71において、距離dが閾値Dth未満であると判定した場合(ステップS71にてYES)、ユーザーの右脚が静止したか否かを判定する(ステップS75)。
【0083】
制御装置1は、ユーザーの右脚が静止していないと判定した場合(ステップS75にてNO)、処理をステップS61に戻す。制御装置1は、ユーザーの右脚が静止していると判定した場合(ステップS75にてYES)、ユーザーの両足首は静止しているか否かを判定する(ステップS79)。制御装置1は、ユーザーの両足首が静止していない場合(ステップS79でNO)、ユーザーの両足首が静止するまで待機する。ただし、待機している間に左脚チェック処理を実行する(ステップS81)。
【0084】
制御装置1は、ステップS79において、ユーザーの両足首が静止していると判定した場合(ステップS79にてYES)、所定動作の終了条件が成立したものとして、アンロック信号をロック装置2に出力し(ステップS83)、処理を終える。ロック装置2は、アンロック信号に基づいて車両20のドア21のロックを解除する。
【0085】
なお、
図4には、アンロック信号が出力されることに基づいてドア21のロックが解除される様子を示すタイミングチャートが示されている。
【0086】
<制御装置1および携帯装置50の処理手順を示すフローチャート>
図14は、制御装置1と携帯装置50とにより実行される処理の手順の一例を示すフローチャートである。制御装置1は、携帯装置50と連携することにより、所定動作に関わる脚を右脚から左脚に変更する設定を受け付ける。また、制御装置1は、携帯装置50と連携することにより、所定動作に関わる脚を左脚から右脚に変更する設定を受け付ける。
【0087】
ここでは、たとえば、携帯装置50はスマートフォンである。携帯装置50は、ユーザーの操作に応じて、動作の対象を選択する画面を表示する(ステップS131)。携帯装置50は、ユーザーが動作の対象を選択する操作を待つ(ステップS133)。携帯装置50は、たとえば、右脚および左脚の選択を受け付ける。
【0088】
携帯装置50は、ユーザーが動作の対象を選択する操作を検出した場合、選択した対象を指定する信号を制御装置1に送信する(ステップS135)。
【0089】
制御装置1は、動作の対象を指定する信号を受信するまで待機する(ステップS121)。制御装置1は、動作の対象を指定する信号を受信すると(ステップS121でYES)、指定された対象が右脚であるか否かを判定する(ステップS123)。制御装置1は、指定された対象が右脚であると判定した場合、動作の対象を右脚に設定する(ステップS125)。制御装置1は、指定された対象が右脚でないと判定した場合(左脚であると判定した場合)、動作の対象を左脚に設定する(ステップS127)。次に、制御装置1は、受付信号を携帯装置50に送信し(ステップS129)、処理を終える。
【0090】
携帯装置50は、ステップS135の処理を終えた後、受付信号を受信するまで待機する(ステップS137)。携帯装置50は、受付信号を受信したと判定した場合(ステップS137でYES)、受付終了を示す画面を表示し(ステップS139)、処理を終える。
【0091】
以上のように、本実施の形態においては、ユーザーは、車両20の近くで所定動作をすることによってドア21のロックを解除することができる。特に、制御装置1は、カメラ3で撮影された画像を用いてユーザーの動作を判定する。このため、車両の底に搭載したセンサでユーザーの動作を判定するシステムと比較して、ユーザーが必要以上に車両に接近し過ぎてユーザーが動作をする際に車両に衝突してしまうおそれを極力防止できる。
【0092】
特に、制御装置1は、水平面に対して平行となるユーザーの所定動作を画像で特定する。カメラ3の撮像面にユーザーが正対するため、制御装置1は、所定動作を判定する際、
図2に示す座標系の奥行き方向(y軸方向)の座標をほとんど必要としない。このため、所定動作の判定処理を単純化することができる。
【0093】
さらに、本実施の形態においては、ドア21のロックの解除に必要な所定動作を判定する間に、左脚が動くなどの予め定めた複数のエラー動作のいずれかが検出された場合、制御装置1は、所定動作が終了しなかったものと判定する。したがって、ドア21のロックを解除することを希望するユーザーは、予め定めた基準に従って所定動作を実行する必要がある。このため、ユーザーが意図しない動作がたまたま所定動作であると制御装置1に判定されて、ドア21が解除されてしまう不都合を防止できる。
【0094】
さらに、本実施の形態においては、予め定めた複数のエラー動作のいずれかが検出された場合、制御装置1は通知信号を出力する。たとえば、携帯装置50は通知信号に基づいてエラーの発生をユーザーに通知する。このため、エラーが発生しているにもかかわらず、そのことを知らずにユーザーが所定動作を最後まで続けてしまうことがない。
【0095】
さらに、本実施の形態においては、ユーザーが所定動作に使用する脚を右脚とするか左脚とするかを選択できる。このため、ユーザーは利き足で所定動作をすることができる。
【0096】
<変形例>
ドア21のロックを解除する所定動作は、水平面に対して平行となるユーザーの所定動作である。所定動作の一例として、右脚を右方向へ動かした後、左方向に戻す動作を挙げた。この動作は、第1動作と、第1動作に続く第2動作とを含む。しかし、所定動作は単一の動作であってもよい。たとえば、脚を右または左の一方向に動かす動作を所定動作と定めてもよい。
【0097】
所定動作に関わる身体の部位として、脚を例に挙げて説明した。しかし、所定動作に関わる身体の部位は脚に限られない。たとえば、所定動作に関わる身体の部位として、腕を採用してもよい。この場合、ユーザーが右腕または左腕を右または左の方向に延ばす動作を所定動作としてもい。または、ユーザーが右腕または左腕を右方向に延ばした後、その腕を胸元に戻す動作を所定動作としてもよい。本開示においては、このような動作も水平面に対して平行となるユーザーの所定動作の一例として想定されている。
【0098】
図10に示すフローチャートでは、ID照合の後に動作判定処理が続く。しかし、制御装置1は、動作判定処理の途中でID照合をしてもよい。また、制御装置1は、動作判定処理のステップS79にてYESと判定した後、ID照合をしてもよい。その場合、制御装置1は、ID照合の結果、問題がなければアンロック信号を出力し、問題があれはアンロック信号を出力しない。また、IDを用いて本人認証をすることに変えて、カメラ3で撮影された人物の特徴に基づいて本人認証をしてもよい。たとえば、人物の顔の特徴に基づいて本人認証することが考えられる。
【0099】
ロック装置2は、制御装置1からアンロック信号を受信したときにドア21のロックを解除する。アンロック信号は、第1信号の一例である。しかし、ロック装置2は、制御装置1から受信したアンロック信号のみに基づいてドア21のロックを解除するものでなくてもよい。
【0100】
つまり、制御装置1が出力するアンロック信号は、ドア21のロックを解除することを指令する信号ではなく、ドアのロックを解除するための複数の条件のうちの1つが成立したことを示す信号であってもよい。この場合、制御装置1がステップS83で出力する信号は、予め定めた基準に合致する動作をユーザーが実行したことを示す信号に過ぎない。本開示において、第1信号は、アンロックを指令する信号であっても、予め定めた基準に合致する動作をユーザーが実行したことを示す信号であってもよい。
【0101】
ロック装置2は、制御装置1を備えていてもよい。携帯装置50に制御装置1の機能を組み込んでもよい。この場合、カメラ3は携帯装置50に画像を送信する。また、携帯装置50は、通信装置4を介してアンロック信号をロック装置2に送信する。
【0102】
制御装置1は、エラー動作を検出したときに出力する通知信号をエラー動作の種類別に異ならせてもよい。これにより、携帯装置50は、それぞれの通知信号に応じたエラーの内容を画面などに表示してもよい。
【0103】
以上に説明した例示的な形態は、以下の態様の具体例である。
(1)一態様における制御装置(1)は、車両(20)に搭載される制御装置(1)である。制御装置(1)は、車両(20)に搭載されたカメラ(3)から車両の外部の画像を取得する取得部(102)と、取得部が取得した画像に基づいてユーザーの動作を判定する判定部(101)とを備える。判定部は、水平面に対して平行となるユーザーの所定動作が終了したと判定した後、車両のドアのロックを解除するために必要な第1信号(アンロック信号)を出力する。
【0104】
(2)判定部は、取得部が取得した画像に基づいて、ユーザーの状態が開始条件を満たすか否かを判定し(ステップS43)、開始条件を満たすと判定したときに、所定動作の判定を開始する(ステップS45)。
【0105】
(3)判定部は、ユーザーが所定動作を終えた後、取得部が取得した画像に基づいて、ユーザーの状態が終了条件(ステップS79)を満たすか否かを判定し、終了条件を満たすと判定したときに、第1信号を出力する(ステップS83)。
【0106】
(4)判定部は、ユーザーによる所定動作が終了するまでに、ユーザーによるエラー動作(
図5~
図9)を検出したとき、エラーと判定する(ステップS43、ステップS63、ステップS73、ステップS102、ステップS103)。
【0107】
(5)判定部は、エラーと判定したとき、エラーの発生をユーザーに通知するための第2信号(通知信号)を出力する(ステップS47、ステップS106)。
【0108】
(6)所定動作に関わるユーザーの部位の選択を受け付ける設定部(105)をさらに備える。
【0109】
(7)判定部は、第1信号の入力を条件に車両のドアを開放する開閉装置(ロック装置2)に対して、第1信号を出力する。
【0110】
(8)所定動作は、第1動作(右脚の右方向への移動)と第2動作(右脚の左方向への移動)とを含み、判定部は、第1動作と第2動作とが基準に合致し、かつ、第1動作と第2動作との順序が予め定めた順序と一致すると判定したとき、ユーザーが所定動作を終了したと判定する。
【0111】
(9)第2動作は、第1動作(右脚の右方向への移動)の逆の順序の動作(右脚の左方向への移動)である。
【0112】
(10)所定動作は、ユーザーの一方の脚の動作である(
図3)。
(11)所定動作は、前記ユーザーの脚の動作であり、開始条件は、前記ユーザーの両足首および両膝が静止することを含む(ステップS43)。
【0113】
(12)所定動作は、ユーザーの脚の動作であり、終了条件は、前記ユーザーの両足首が静止することを含む(ステップS79)。
【0114】
(13)エラー動作は、ユーザーによる所定動作が規定時間で終了しないことを含む((ステップS73)。
【0115】
(14)所定動作は、第1動作(右脚の右方向への移動)と第2動作(右脚の左方向への移動)とを含み、エラー動作は、第1動作の後に検出された、第2動作の方向とは逆方向の動作を含む(
図9)。
【0116】
(15)所定動作は、ユーザーの第1の脚の動作であり、エラー動作は、第1の脚とは別のユーザーの第2の脚の動作であることを含む(
図6)。
【0117】
(16)所定動作は、ユーザーの第1の脚の動作であり、エラー動作は、第1の脚とは別のユーザーの第2の脚の膝と第2の脚の足首との角度が閾値を超える動作であることを含む(
図7)。
【0118】
(17)他の態様における判定プログラムは、車両(20)のユーザーの動作を判定する判定プログラムである。判定プログラムは、コンピュータに、車両(20)に搭載されたカメラ(3)から車両の外部の画像を取得するステップ(ステップS101)と、画像に基づいて水平面に対して平行となるユーザーの所定動作の終了を判定した後(ステップS79)、車両のドアのロックを解除するために必要な第1信号を出力するステップ(ステップS83)とを実行させる。
【0119】
今回開示された実施の形態は、全ての点で例示であって制限的なものではないと考えられるべきである。本開示により示される技術的範囲は、上記した実施の形態の説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内での全ての変更が含まれることが意図される。
【符号の説明】
【0120】
1 制御装置、2 ロック装置、3 カメラ、4 通信装置、11 プロセッサ、12 メモリ、13 入出力ポート、20 車両、21 ドア、50 携帯装置、100 ドア制御システム、101 判定部、102 取得部、103 通信部、104 座標検出部、105 設定部、POS 座標。