関連出願の相互参照
本出願は、2018年4月27日に中国特許局に提出された、出願番号201810394688.4、発明名称が「測距方法、知能制御方法及び装置、電子機器ならびに記憶媒体」の中国特許出願の優先権を主張し、その開示の全てが参照によって本願に組み込まれる。
本開示は、コンピュータビジョン技術の分野に関し、特に測距方法、知能制御方法及び装置、電子機器ならびに記憶媒体に関する。
車両のインテリジェントドライブの場合、コンピュータビジョン技術を使用して他の車両および歩行者との距離を検知し、検知した他の車両および歩行者との距離をインテリジェントドライブの制御に用いる必要がある。
本開示は、測距方法に関する技術的解決手段および知能制御方法に関する技術的解決手段を提供する。
本開示の一方面によれば、現在対象物が撮像した画像中の目標対象物の検出フレームを取得することと、前記検出フレームの形状に応じて、少なくとも1つの測距点を決定することと、前記測距点に基づいて、前記目標対象物と前記現在対象物との間の距離を決定することと、を含む測距方法を提供する。
本開示の一方面によれば、上記に記載の測距方法によって現在対象物と目標対象物との間の距離を取得することと、前記距離に基づいて、前記現在対象物に対する警告情報および/または制御情報を生成することとを含む知能制御方法を提供する。
本開示の一方面によれば、現在対象物が撮像した画像中の目標対象物の検出フレームを取得するための検出フレーム取得モジュールと、前記検出フレームの形状に応じて、少なくとも1つの測距点を決定するための測距点決定モジュールと、前記測距点に基づいて、前記目標対象物と前記現在対象物との間の距離を決定するための距離決定モジュールと、を含む測距装置を提供する。
本開示の一方面によれば、上記に記載の測距装置によって現在対象物と目標対象物との間の距離を取得するための距離取得モジュールと、前記距離に基づいて、前記現在対象物に対する警告情報および/または制御情報を生成するための制御情報生成モジュールとを含む知能制御装置を提供する。
本開示の一方面によれば、プロセッサと、プロセッサにより実行可能なコマンドを記憶するためのメモリを含み、前記プロセッサは、上述測距方法および/または知能制御方法を実行するように構成される電子機器を提供する。
本開示の一方面によれば、コンピュータプログラムコマンドが記憶されているコンピュータ読み取り可能な記憶媒体であって、前記コンピュータプログラムコマンドがプロセッサによって実行されると、本開示が提供する測距方法および/または知能制御方法を実現させるコンピュータ読み取り可能な記憶媒体を提供する。
本開示の一方面によれば、プロセッサによって実行されると、本開示が提供する測距方法および/または知能制御方法を実行させるコンピュータプログラムを提供する。
本開示の実施例では、目標対象物の検出フレームの形状に応じて少なくとも1つの測距点を決定し、測距点に基づいて現在対象物と目標対象物との間の距離を決定する。検出フレームの形状は、目標対象物との距離の大きさ、撮像視角、および目標対象物自体の運動状態と密接に関係しているため、検出フレームの形状に応じて決定された測距点を使用して、正確な測定結果を取得することができる。
以下、図面を参照しながら例示的な実施例について詳細に説明することにより、本願の他の特徴及び方面は明瞭になる。
明細書の一部として明細書に含まれる図面は、明細書と共に本開示の例示的な実施例、特徴及び方面を示し、本開示の原理を解釈するために用いられる。
本開示の一実施例による測距方法のフローチャートを示す。
本開示の一実施例による測距方法のフローチャートを示す。
本開示の一実施例による測距方法のフローチャートを示す。
本開示の一実施例による測距方法のフローチャートを示す。
本開示の一実施例による測距方法のフローチャートを示す。
本開示の一実施例による測距方法のフローチャートを示す。
本開示の一実施例による測距装置のブロック図を示す。
本開示の一実施例による知能制御装置のブロック図を示す。
一例示的な実施例に基づいて示した電子機器のブロック図である。
以下に図面を参照しながら本開示の様々な例示的実施例、特徴および方面を詳細に説明する。図面において、同じ符号が同じまたは類似する機能の要素を表す。図面において実施例の様々な方面を示したが、特に断らない限り、比例に従って図面を描く必要がない。
ここの用語「例示的」とは、「例、実施例として用いられることまたは説明的なもの」を意味する。ここで「例示的」に説明されるいかなる実施例も他の実施例より好ましい又は優れるものであると理解すべきではない。
また、本開示をより効果的に説明するために、以下の具体的な実施形態において様々な具体的な詳細を示す。当業者であれば、何らかの具体的な詳細がなくても、本開示は同様に実施できるということを理解すべきである。いくつかの実施例では、本開示の趣旨を強調するように、当業者に既知の方法、手段、要素および回路について、詳細な説明を行わない。
図1は本開示の一実施例による測距方法のフローチャートを示す。図1に示すように、前記測距方法は、以下のステップを含む。
ステップS10、現在対象物が撮像した画像中の目標対象物の検出フレームを取得する。
可能な実施形態では、現在対象物は、移動可能な対象物を含んでも良く、移動不可能な対象物を含んでも良い。現在対象物は、人、自動車、非自動車、ロボット及びウェアブルデバイスなどを含んでもよい。現在対象物が車両である場合、本開示の実施例は自動運転、支援運転などの技術分野で応用され得る。現在対象物が路側に配置される監視装置である場合、本開示の実施例は目標対象物と監視装置との間の距離を測定することに使用され得る。現在対象物は、要求に応じて決定され得るが、本開示はこれを限定しない。
現在対象物に撮像装置を配置して、測距の要求に応じて設定方向の画像を撮像することができる。現在対象物が撮像した画像は、撮像装置によって撮像された単一フレームの画像を含んでもよく、撮像装置によって撮像されたビデオストリーム内のフレーム画像を含んでも良い。
現在対象物は、単眼カメラ、RGBカメラ、赤外線カメラ、双眼カメラなどの様々なビジョンセンサーによって画像を撮像することができる。単眼カメラを使用する場合、システムコストが低く、応答が速い。RGBカメラまたは赤外線カメラを使用する場合、特別な環境で画像を撮像することができる。双眼カメラを使用する場合、目標対象物のより豊かな情報を取得することができる。測距の要求、環境、現在対象物のタイプおよびコストなどに応じて、異なる撮像装置を選択することができる。本開示はこれを限定しない。
目標対象物は、車両、歩行者、建築物、障害物及び動物などを含む。目標対象物は、単一の対象物タイプの1つまたは複数の目標対象物であってもよく、複数の対象物タイプの複数の目標対象物であってもよい。例えば、車両だけを目標対象物としてもよく、目標対象物は1つの車両であってもよく、複数の車両であってもよい。また、車両および歩行者をともに目標対象物としてもよい。目標対象物は複数の車両および複数の歩行者である。要求に応じて、設定された対象物タイプを目標対象物としても良く、設定された対象物個体を目標対象物としてもよい。
画像検出技術によって、現在対象物が撮像した画像中の目標対象物の検出フレームを取得することができる。検出フレームは矩形フレームであってもよく、他の形状のフレームであってもよい。画像中の各目標対象物の検出フレームの形状は、同じであってもよく、目標対象物の形状によって異なっても良い。検出フレームの大きさは、画像中の目標対象物が画像に占める面積大きさによって異なっても良い。例えば、画像中の目標対象物は3台の自動車および2人の歩行者を含む。画像検出技術によって、画像において5つの検出フレームで各目標対象物をマークすることができる。
検出フレームは、検出された目標対象物の外郭フレームであってもよく、例えば、検出フレームは検出された目標対象物の最小外郭フレームであって、3台の自動車の検出フレームは幅方向に長い矩形フレームであって、2人の歩行者の検出フレームは高さ方向に長い矩形フレームであってもよい。そのうち、距離が比較的近い自動車および歩行者の検出フレームは大きく、距離が比較的遠い自動車および歩行者の検出フレームは小さいようにしてもよい。
ステップS20、前記検出フレームの形状に応じて、少なくとも1つの測距点を決定する。
可能な実施形態では、画像において決定された測距点は目標対象物と現在対象物との間の距離を測定するために使用されることができる。検出フレームの底辺の固定位置に測距点を決定し、例えば検出フレームの底辺の中心点を測距点として決定し、測距点を利用して目標対象物と現在対象物との間の距離を決定することができる。
画像では、目標対象物との距離の大きさ、撮像視角、および目標対象物自体の運動状態によって、検出フレーム内の目標対象物の画像内容が変化し、検出フレームの形状も変化する。例えば、目標対象物である自動車1は自動運転または支援運転の機能を有する車両2に対して幅方向に駐車または走行している場合、自動車1の側面がカメラに向かい、自動車1の検出フレームに自動車1の側面の車体画像が含まれ、検出フレームの形状が幅方向に長い矩形フレームである。自動車1は自動運転または支援運転の機能を有する車両に対して高さ方向に走行または駐車している場合、自動車1の前部または後部がカメラに向かい、自動車1の検出フレームに自動車1の前部または後部の画像が含まれ、検出フレームの形状は幅方向に短い矩形フレームである。
従来の測距方法では、検出フレームの底辺の中心点に基づいて決定された測距点は、自動車1の側面の底辺の中心点である可能性があり、自動車1の前部または後部の底辺の中心点である可能性もある。測距点は目標対象物自体の異なる位置に対応する。目標対象物との距離の大きさ、撮像視角、および目標対象物自体の運動状態によって、測距点の選択位置は大きく異なる。さらに、自動運転または支援運転の機能を有する車両が取得した画像には、一般的に移動中の目標対象物、例えば道路を走行している自動車および歩行している歩行者などが含まれる。移動する目標対象物に対応する検出フレーム内の画像内容は、目標対象物の移動に伴って大きく変化する。従って、検出フレームの固定位置に基づいて決定された測距点は、目標対象物自体の如何なる不変の属性情報も反映できず、目標対象物の異なる位置に対応して、大きく変化する。測距点の選択は、距離測定結果の精度に影響を与えるので、検出フレームの固定位置に基づいて決定された測距点を使用して正確な測定結果を取得することができない。
前記検出フレームの形状に応じて、少なくとも1つの測距点を決定することは、検出フレームの形状に応じて、検出フレームの縁フレームに、または検出フレーム内で少なくとも1つの測距点を決定することを含む。検出フレームの形状は、目標対象物との距離の大きさ、撮像視角、および目標対象物自体の運動状態と密接に関係しているため、検出フレームの形状に応じて決定された測距点を使用して正確な測定結果を取得することができる。
ステップS30、前記測距点に基づいて、前記目標対象物と前記現在対象物との間の距離を決定する。
可能な実施形態では、コンピュータビジョン技術の分野では、平面ホモグラフィは、1つの平面から別の平面への投影マッピングとして定義できる。平面ホモグラフィは、1つの2次元平面上の点の画像へのマッピングを含んでもよい。現在対象物の位置する環境に応じて構築されたホモグラフィマトリックス(Homography matrix)を利用して、測距点の画像での対応位置を現在対象物の位置する環境にマッピングした後、目標対象物と現在対象物との間の距離を決定するようにしてもよい。
可能な実施形態では、現在対象物が撮像した画像は互い関連する複数の静止画像である場合、または現在対象物が撮像した画像はビデオストリーム内のフレーム画像である場合、各画像から個別に測距点を決定してもよい。同一の目標対象物について、第1枚の画像で決定された測距点の位置をすべての画像での測距点の位置とし、後の画像に個別に計算しないようにしてもよい。
本実施例では、目標対象物の検出フレームの形状に応じて、少なくとも1つの測距点を決定し、測距点に基づいて、現在対象物と目標対象物との間の距離を決定する。検出フレームの形状は、目標対象物との距離の大きさ、撮像視角、および目標対象物自体の運動状態に密接に関係しているため、検出フレームの形状に応じて決定された測距点を使用して正確な測定結果を取得することができる。
可能な実施形態では、決定された距離に基づいて提示情報を送信するようにしてもよい。
提示情報は、音声情報、画像情報、振動情報、ショートメッセージ及びメール情報などが含んでもよい。決定された距離の大きさに応じて、異なるレベルの提示情報を送信するようにしてもよい。例えば、距離が5メートル未満であると、重大警告情報を送信し、距離が5メートルを超え10メートル未満であると、警告情報を送信し、距離が10メートルを超えると、通知情報を送信する。提示情報のレベルによって異なる情報の表現形式を使用し、例えば、重大警告情報では音声情報を使用し、警告情報では振動情報を使用し、通知情報ではショートメッセージ情報を使用するようにしてもよい。音声デシベルの大きさで異なるレベルの提示情報を表現してもよい。例えば、100デシベルの音声で重大告警情報を示し、50デシベルの音声で警告情報を示し、20デシベルの音声で通知情報を示す。本開示はこれを限定しない。
可能な実施形態では、前記検出フレームは矩形フレームを含み、前記検出フレームの形状に応じて、少なくとも1つの測距点を決定することは、前記矩形フレームの高さに基づいて、少なくとも1つの測距点を決定することを含む。
可能な実施形態では、地平面をX軸およびY軸で定義される平面内として、地平面から空への方向をZ軸の正方向とするように3次元座標系を確立することができる。確立された3次元座標系を現在対象物が撮像した画像に対応する場合、目標対象物の矩形フレームの高さについて、矩形フレームの底辺のZ軸座標を始点とし、矩形フレームの上辺のZ軸座標を終点として算出されたZ軸方向の距離である。ここで、矩形フレームの底辺は目標対象物の地平面に接触する箇所が位置する辺である。例えば、目標対象物は車両であり、矩形フレームの底辺はタイヤが位置する辺である。矩形フレームの高さは車両のタイヤからルーフまでの高さである。
矩形フレームの幅方向は、地平面を参照として、矩形フレームの地平面と平行する投影方向(横方向とも呼ばれる)である。選択可能で、矩形フレームの幅は目標対象物の撮像方向での自体の幅情報が含まれ得る。矩形フレームの高さ方向は、地平面を参照として、矩形フレームの地平面に垂直する投影方向(縦方向とも呼ばれる)である。選択可能で、矩形フレームの高さは目標対象物の撮像方向での自体の高さ情報が含まれ得る。目標対象物に対応する矩形フレームの幅は、運動状態および撮像角度によって大きく変化する可能性がある。一方、目標対象物に対応する矩形フレームの高さは、目標対象物自体の高さ情報を反映するので、運動状態および撮像角度が異なっても、あまり変化しない。例えば、目標対象物の自動車1に対応する画像内の矩形フレームは、自動車1の旋回に伴って、矩形フレームの幅が大きく変化するが、矩形フレームの形状があまり変化しない。
本実施例では、目標対象物自体の高さ情報は画像中であまり変化しないため、矩形フレームの高さに基づいて決定された測距点を使用して、より正確な距離測定結果を取得することができる。
可能な実施形態では、前記矩形フレームの高さに基づいて、少なくとも1つの測距点を決定することは、前記矩形フレームの高さに基づいて、前記矩形フレームの底辺に少なくとも1つの測距点を決定することを含む。
可能な実施形態では、矩形フレームの高さに基づいて、矩形フレームの底辺に少なくとも1つの測距点を決定することができる。矩形フレームの底辺は、目標対象物の地平面に接触する箇所が位置する辺であり、底辺の位置は比較的固定で安定性が高い。
矩形フレームの底辺に測距点を決定するには、矩形フレームの底辺の左側端点または右側端点を始点とし、矩形フレームの高さと高さの重み係数を乗算して積を求め、矩形フレームの底辺の始点からの距離がこの積の値である位置を測距点の位置として決定するようにしてもよい。例えば、自動車1の矩形フレームの幅は3cmであり、高さは1cmであり、高さの重み係数は0.5である。矩形フレーム底辺の左側端点を始点とし、矩形フレーム底辺の底辺左側端点からの距離が1×0.5=0.5(cm)である位置を測距点の位置として決定する。
本実施例では、前記矩形フレームの高さに基づいて前記矩形フレームの底辺に決定された少なくとも1つの測距点を使用して、より正確な距離測定結果を取得することができる。
可能な実施形態では、前記矩形フレームの高さに基づいて、前記矩形フレームの底辺に測距点を決定することは、
前記矩形フレームの縦横比および縦横閾値に基づいて、高さの重み係数を決定することと、
前記矩形フレームの高さおよび前記高さの重み係数に基づいて、前記矩形フレームの底辺に測距点を決定することとを含む。
可能な実施形態では、高さの重み係数は第1の高さの重み係数および第2の高さの重み係数を含み、且つ前記第1の高さの重み係数と前記第2の高さの重み係数は異なるようにしてもよい。矩形フレームの縦横比は矩形フレームの幅と高さの比を含む。目標対象物によって、矩形フレームの幅と高さの比が異なる。矩形フレームの高さに基づいて、矩形フレームの底辺に測距点を決定する際、矩形フレームの高さが大きすぎるため、矩形フレームの底辺に決定された測距点の位置が大きくずれることがある。矩形フレームの縦横比及び縦横閾値に基づいて、第1の高さの重み係数または第2の高さの重み係数を選択して、矩形フレームの高さと乗算して測距点を決定することにより、目標対象物に応じて、測距点の位置をより正確かつ合理的に決定することができる。
縦横閾値は矩形フレームの幅と高さの比に基づいて決定された閾値を含む。矩形フレームの縦横比および幅閾値に基づいて、第1の高さの重み係数及び第2の高さの重み係数のいずれを矩形フレームの高さと乗算するかを決定することができる。例えば、縦横閾値は1であり、第1の高さの重み係数は0.1であり、第2の高さの重み係数は0.5である。矩形フレーム1は車両を示し、矩形フレーム1の幅は3cmであり、高さは1cmであり、矩形フレーム1の縦横比は3である。矩形フレーム2は歩行者を示し、矩形フレーム2の幅は1cmであり、高さは3cmであり、矩形フレーム2の縦横比は0.3である。同じ高さの重み係数0.5に基づいて測距点を決定すると、矩形フレーム底辺の左側端点を始点とする場合、矩形フレーム1では始点からの距離が0.5cmである位置に測距点を決定する。矩形フレーム2では始点からの距離が1.5cmである位置に測距点を決定してしまい、矩形フレーム2の底辺の全長を超えるので、測距点の位置が大きくずれる。
矩形フレーム1および矩形フレーム2の縦横比を縦横閾値と比較し、矩形フレーム1の縦横比は3であり、縦横閾値1よりも大きいので、矩形フレーム1の高さと第2の高さの重み係数0.5を乗算する。矩形フレーム1の左側端点を始点とし、矩形フレーム1の底辺左側端点からの距離が1×0.5=0.5(cm)である位置に測距点を決定することができる。矩形フレーム2の縦横比は0.3であり、縦横閾値1よりも小さいので、矩形フレーム2の高さと第1の高さの重み係数0.1を乗算する。矩形フレーム2の左側端点を始点とし、矩形フレーム2の底辺の左側端点からの距離が3×0.1=0.3(cm)である位置に測距点の位置を決定することができる。
本実施例では、矩形フレームの縦横比と縦横閾値との比較結果に応じて、異なる高さの重み係数を選択し、矩形フレームの高さと乗算して、矩形フレームの底辺に測距点を決定する。それにより、様々な高さの矩形フレームに対応でき、決定された測距点の位置がより合理的になり、測定結果がより正確になる。本実施例の応用範囲もより広くなる。
図2は本開示の一実施例による測距方法のフローチャートを示す。図2に示すように、ステップS30は以下のステップを含む。
ステップS31、前記測距点、および現在対象物の位置する環境に応じて構築されたホモグラフィマトリックスに基づいて、前記目標対象物と前記現在対象物との間の距離を決定する。
可能な実施形態では、コンピュータビジョンでは、平面のホモグラフィは1つの平面から別の平面への投影マッピングとして定義される。3次元空間内の2つの平面を変換することができる。1つの2次元平面上の点のカメライメージャーへのマッピングは平面ホモグラフィの例である。同次座標を使用してキャリブレーションターゲット上の点Pをイメージャー上の点mにマッピングするようなマッピングをいわゆるホモグラフィマトリックスで表すことができる。ここで、同次座標とは、n+1次元のベクトルで本来n次元のベクトルを表し、ユークリッドジオメトリで使用されるデカルト座標のように、射影幾何ための座標システムである。
ホモグラフィマトリックスによって現在対象物が撮像した画像中の測距点と目標対象物との間の距離情報を取得することができる。測距の前に、現在対象物の位置する環境に応じてホモグラフィマトリックスを構築することができる。例えば、自動運転車両に搭載される単眼カメラによって実際の道路画像を撮像し、道路画像上のポイントセット、および画像上のポイントセットに対応する実際路面上のポイントセットを利用し、ホモグラフィマトリックスを構築することができる。具体的な方法は以下の通りである。1、座標系の確立:自動運転車両の左前輪を原点とし、運転者の視角の右方向をX軸の正方向とし、前方向をY軸の正方向として、車体座標系を確立する。2、ポイント選択:車体座標系での点を選択し、ポイントセットを取得する。例えば(0,5)、(0,10)、(0,15)、(1.85,5)、(1.85,10)、(1.85,15)などの各点を取得する(単位:メートル)。要求に応じて、より遠くにある点を選択してもよい。3、マーキング:選択された点を実際路面上にマーキングし、実際のポイントセットを取得する。4、キャリブレーション:キャリブレーションターゲット及びキャリブレーションプログラムを使用して、実際のポイントセットに対応する撮像画像での画素位置を取得する。5、対応の画素位置に基づいてホモグラフィマトリックスを生成する。
要求に応じて、異なる距離範囲でホモグラフィマトリックスを構築することができる。例えば、100メートルの距離範囲でホモグラフィマトリックスを構築してもよく、10メートルの範囲でホモグラフィマトリックスを構築してもよい。距離範囲が小さいほど、ホモグラフィマトリックスにより決定された距離の精度が高い。
本実施例では、ホモグラフィマトリックスおよび測距点を利用して、目標対象物との距離を決定する。キャリブレーションされたホモグラフィマトリックスを利用して、正確な目標対象物との距離を取得することができる。
図3は本開示の一実施例による測距方法のフローチャートを示す。図3に示すように、ステップS31は以下のステップを含む。
ステップS311、前記測距点、および第1の距離範囲のホモグラフィマトリックスを含む第1のホモグラフィマトリックスに基づいて、前記目標対象物と前記現在対象物との間の第1の距離を決定する。
ステップS312、決定された前記第1の距離、および前記第1の距離範囲よりも小さい第2の距離範囲のホモグラフィマトリックスを含む第2のホモグラフィマトリックスに基づいて、前記目標対象物と前記現在対象物との間の第2の距離を決定する。
可能な実施形態では、第1のホモグラフィマトリックスおよび測距点に基づいて、目標対象物との第1の距離を決定した後、さらに第2のホモグラフィマトリックスを利用して目標対象物との第2の距離を決定することができる。第1の距離範囲が第2の距離範囲よりも大きいため、第2のホモグラフィマトリックスを利用して算出された第2の距離はより正確になる。例えば、第1のホモグラフィマトリックスの距離範囲は100メートルである。第2のホモグラフィマトリックスの距離範囲は10メートルであり、0〜10メートル、10〜20メートル、20〜30メートル……90〜100メートルなどの10個の距離範囲を含む第2のホモグラフィマトリックスを生成することができる。要求に応じて、設定された距離範囲の第2のホモグラフィマトリックス、例えば20〜30メートル、30〜40メートル、40〜50メートル、50〜60メートルとの4つの第2のホモグラフィマトリックスだけを生成してもよい。例えば、第1のホモグラフィマトリックスおよび測距点に基づいて、目標対象物との距離が58.32メートルであると決定し、さらに50〜60メートルの第2のホモグラフィマトリックスにより、目標対象物との第2の距離が54.21メートルであると決定する。
本実施例では、異なる距離範囲のホモグラフィマトリックスにより、目標対象物と前記現在対象物との間の距離を決定することにより、計算効率が改善されて、測距の結果がより正確になる。
図4は本開示の一実施例による測距方法のフローチャートを示す。図4に示すように、ステップS10は以下のステップを含む。
ステップS11、ニューラルネットワークにより、前記現在対象物が撮像した画像に対して目標対象物検出を行い、前記目標対象物の検出フレームを取得する。
可能な実施形態では、ニューラルネットワークにより画像を検出し、目標対象物の検出フレームを取得することができる。ニューラルネットワークは、RFCN(Region―based Fully Convolutional Networks、領域ベースの完全畳み込みネットワーク)、SSD(Single Shot multibox Detector、シングルショットマルチボックス検出器)、RCNN(Regions with CNN、領域ベースの畳み込みニューラルネットワーク)、FastRCNN(Fast RCNN、高速の領域ベースの畳み込みニューラルネットワーク)、FasterRCNN(Faster RCNN、より高速の領域ベースの畳み込みニューラルネットワーク)、SPPNet(Spatial Pyramid Pooling Convolutional Networks、空間ピラミッドプーリング畳み込みネットワーク)、DPM Deformable Parts Models、変形可能パーツモデル)、OverFeat(同じ畳み込みネットワークに基づく複数のタスク)、YOLO(You Only Look Once、画像を1度だけ見る)などの構築方式に基づくものであってよいが、本開示はこれを限定しない。
図5は本開示の一実施例による測距方法のフローチャートを示す。前記画像は前記現在対象物が撮像したビデオ中のフレーム画像であり、図5に示すように、ステップS10は以下のステップを含む。
ステップS12、前記画像に対して目標対象物検出を行い、前記目標対象物の第1の検出フレームを取得する。
ステップS13、前記ビデオ中の、時系列上の前記画像の前の少なくとも1フレームの画像から、前記目標対象物の履歴検出フレームを取得する。
ステップS14、前記目標対象物の履歴検出フレームに基づいて、前記画像における前記目標対象物の予測フレームを決定する。
ステップS15、前記第1の検出フレームおよび前記予測フレームに基づいて、前記目標対象物の第2の検出フレームを決定する。
可能な実施形態では、画像が前記現在対象物が撮像したビデオ中のフレーム画像である場合、目標対象物は、ビデオ中の、時系列上の前記画像の前の少なくとも1フレームの画像にも出現可能である。前のフレーム画像での目標対象物の検出フレームを前記目標対象物の履歴検出フレームとすることができる。例えば、道路に向いている監視カメラによって取得された監視ビデオには自動車1の監視画面が含まれる。監視ビデオの10番目〜120番目のフレームには、いずれも自動車1の検出フレームが出現する。10番目〜120番目のフレーム画像中の自動車1の検出フレームを履歴検出フレームとする。自動車1の履歴検出フレームに基づいて、自動車1の運動状態を決定することができる。決定された自動車1の運動状態に基づいて、121番目のフレームのフレーム画像における自動車1の位置を推定することができ、また、推定された位置に基づいて、121番目のフレーム画像における自動車1の予測フレームの位置を予測することができる。
履歴検出フレームを選別して、予測フレームの予測結果をより正確にするようにしてもよい。例えば、画像の前のフレーム画像において位置変化が大きすぎる履歴検出フレームを除外することができる。
目標対象物のすべての履歴検出フレームに基づいて目標対象物の予測フレームを決定してもよく、目標対象物の設定数の履歴検出フレームに基づいて目標対象物の予測フレームを決定してもよい。例えば、目標対象物の100個の履歴検出フレームのみに基づいて予測フレームを決定してもよい。
第1の検出フレームと予測フレームとの位置差が設定された閾値よりも小さい場合、第1の検出フレームと予測フレームの位置を重み付け平均化して、取得された現在対象物の撮像による画像中の目標対象物の検出フレームである第2の検出フレームの位置を取得するようにしてもよい。
本実施例では、目標対象物の履歴検出フレームに基づいて、目標対象物の予測フレームを決定し、予測フレームおよび第1の検出フレームに基づいて、目標対象物の第2の検出フレームを決定し、それにより、検出フレームをより効率的に確認することができ、確認結果がより正確になる。
可能な実施形態では、前記現在対象物が撮像したビデオ中の、前記画像の前のN(1よりも大きい正の整数)枚のフレーム画像から、前記目標対象物の履歴検出フレームを取得してもよい。
可能な実施形態では、目標対象物の履歴検出フレームを決定するとき、目標対象物の運動状態が経時的に変化するので、古すぎる履歴検出フレームは参照として無意義になり、予測フレームの予測結果に干渉する恐れがある。平滑化列を設定して、画像の前のN枚のフレーム画像を平滑化列に配置するようにしてもよい。例えば、現在フレーム画像の検出フレームを決定した後、次のフレームのフレーム画像中の目標対象物の履歴検出フレームとして使用してもよい。現在フレームを平滑化列に追加し、平滑化列中の最も古いフレーム画像を削除し、平滑化列にNフレームの画像のみが存在することを維持するようにしてもよい。また、Nの大きさを要求に応じて設定することができる。
本実施例では、前記画像の前のNフレームの画像から取得された目標対象物の履歴検出フレームにより、古すぎる履歴検出フレームから予測フレームへの干渉を解消でき、予測フレームの予測結果がより正確になる。
図6は本開示の一実施例による測距方法のフローチャートを示す。前記画像は検出ビデオ中のフレーム画像であり、図6に示すように、ステップS14は以下のステップを含む。
ステップS141、前記目標対象物の履歴検出フレームに基づいて、前記目標対象物の運動状態を決定する。
ステップS142、前記目標対象物の運動状態に基づいて、前記目標対象物の予測フレームをフィッティングする。
可能な実施形態では、目標対象物の履歴検出フレームに基づいて、目標対象物の履歴位置、運動速度、運動加速度、運動軌跡などを取得することができる。目標対象物の履歴位置、運動速度、運動加速度、運動軌跡に基づいて、目標対象物の画像での運動状態を取得することができる。例えば、目標対象物の自動車2の履歴検出フレームに基づいて、座標点1、座標点2、座標点3……座標点98、座標点99、座標点100を含む自動車2の履歴検出フレームの100個の位置を得ることができ、上記座標点に基づいて、自動車2の走行速度をAkm/hとして取得することができる。100個の履歴座標点および走行速度に基づいて、自動車2の画像での予測座標点101を取得でき、予測座標点101を自動車2の予測フレームの位置として決定することができる。
可能な実施形態では、履歴検出フレームに基づいて予測フレームの位置をフィッティングし、最後の履歴検出フレームの縦横比を予測フレームの縦横比として予測フレームを決定するようにしてもよい。
本実施例では、目標対象物の履歴検出フレームに基づいて目標対象物の運動状態を決定した後、目標対象物の運動状態に基づいて目標対象物の予測フレームの位置をフィッティングすることができ、それにより、予測フレームがより正確になる。
可能な実施形態では、前記画像は検出ビデオ中のフレーム画像であり、ステップS14は、
前記目標対象物の履歴検出フレームに基づいて、履歴検出フレームの縦横比の変化状態を決定することと、
前記履歴検出フレームの縦横比の変化状態に基づいて、前記目標対象物の予測フレームの縦横比をフィッティングすることとを含む。
可能な実施形態では、目標対象物の運動状態に応じて、履歴検出フレームの大きさおよび形状が変化する。例えば、自動運転または支援運転の機能を有する車両に対向して走行する自動車3では、自動車3が自動運転または支援運転の機能を有する車両に近づくにつれて、自動車3の検出フレーム中に車体側面の画像が多く含まれ、検出フレームの幅も大きくなる。履歴検出フレームの縦横比は目標対象物の運動状態、位置情報と密接に関係している。履歴検出フレーム中の目標対象物の縦横比の変化状態に基づいて、目標対象物の画像での予測フレームの縦横比をフィッティングすることができる。
可能な実施形態では、履歴検出フレームに基づいて予測フレームの位置をフィッティングし、履歴検出フレームの縦横比に基づいて予測フレームの縦横比をフィッティングし、最後にフィッティングされた位置およびフィッティングされた縦横比に基づいて予測フレームを決定するようにしてもよい。
本実施例では、目標対象物の履歴検出フレームの縦横比の変化状態に基づいて予測フレームの縦横比をフィッティングし、それにより、予測フレームがより正確になる。
可能な実施形態では、ステップS15は以下のことを含む。
前記目標対象物の第1の検出フレームと前記目標対象物の予測フレームとの間の第1の重複率を決定する。
前記第1の重複率が第1の重複閾値以上である場合、前記目標対象物の第1の検出フレームの位置および前記目標対象物の予測フレームの位置に基づいて、前記目標対象物の検出位置を決定する。
前記目標対象物の第1の検出フレームの縦横比および前記目標対象物の予測フレームの縦横比に基づいて、前記目標対象物の検出縦横比を決定する。
前記検出位置および前記検出縦横比に基づいて、前記目標対象物の第2の検出フレームを決定する。
可能な実施形態では、第1の重複率は第1の検出フレームおよび予測フレーム中の画像内容の重複比を含んでもよい。第1の検出フレームと予測フレームとの間の第1の重複率が第1の重複閾値以上である場合、第1の検出フレームと予測フレームはほとんど一致すると考えられ、予測フレームに基づいて第1の検出フレームを補正して第2の検出フレームを取得することができる。第1の検出フレームと予測フレームは第1の重複率よりも小さい場合、第1の検出フレームと予測フレームに大きな差があると考えられ、予測フレームに基づいて第1の検出フレームを補正して第2の検出フレームを取得することができない。
予測フレームに基づいて第1の検出フレームを補正することは、予測フレームの位置に基づいて第1の検出フレームの位置を補正することと、予測フレームの縦横比に基づいて第1の検出フレームの縦横比を補正することとを含む。予測フレームの位置と第1の検出フレームの位置との中間点を目標対象物の検出位置として決定してもよい。予測フレームの縦横比と第1の検出フレームの縦横比との中間値を目標対象物の検出縦横比として決定してもよい。
予測フレームと第1の検出フレームの位置を重み付け平均化して、目標対象物の検出位置を決定してもよく、ここで、第1の検出フレームの位置の重みが予測フレームの位置の重みよりも高い。予測フレームと第1の検出フレームの縦横比を重み付け平均化して、目標対象物の検出縦横比を決定してもよく、ここで、第1の検出フレームの縦横比の重みが予測フレームの縦横比の重みよりも高い。
決定された目標対象物の検出位置および検出縦横比に基づいて、目標対象物の第2の検出フレームを決定することができる。
本実施例では、目標対象物の予測フレームと第1の検出フレームとの間の第1の重複率を計算し、第1の重複率を第1の重複閾値と比較した後、重複率が大きい予測フレームおよび第1の検出フレームに基づいて目標対象物の検出位置および検出縦横比を決定する。予測フレームおよび第1の検出フレームに基づいて決定された目標対象物の検出位置および検出縦横比は、目標対象物の運動軌跡により適合する。取得された第2の検出フレームの位置および縦横比がより正確になる。
可能な実施形態では、前記方法は、
前記第1の重複率が第1の重複閾値よりも小さい場合、前記目標対象物の第1の検出フレームを前記目標対象物の第2の検出フレームとして決定することをさらに含む。
可能な実施形態では、目標対象物の運動が速すぎる場合、予測フレームと第1の検出フレームの第1の重複率が第1の重複閾値よりも小さくなる可能性がある。例えば、目標対象物の自動車4は走行速度が速すぎるので、予測フレームと第1の検出フレーム中の画像の差が大きすぎ、履歴検出フレームに基づいて取得された予測フレームは予測の価値がなくなり、第1の検出フレームを第2の検出フレームとして決定することができる。
本実施例では、予測フレームと第1の検出フレームとの間の第1の重複率が小さすぎる場合、第1の検出フレームのみに基づいて目標対象物の第2の検出フレームを決定する。履歴検出フレームにおける予測価値のない内容が第2の検出フレームの精度に与える影響を低減することができる。
可能な実施形態では、前記第1の検出フレームおよび前記予測フレームに基づいて、前記目標対象物の第2の検出フレームを決定することは、前記画像に対して目標対象物検出を行っても、前記目標対象物の第1の検出フレームを取得できない場合、前記目標対象物の予測フレームを前記目標対象物の第2の検出フレームとして決定することをさらに含む。
可能な実施形態では、目標対象物の第1の検出フレームを取得できない場合、予測フレームを目標対象物の第2の検出フレームとして決定することができる。それにより、検出フレームが連続性を有し、測定結果もより完全になる。
可能な実施形態では、ステップS15は以下のことをさらに含む。
前記目標対象物の履歴検出フレームと他の対象物の履歴検出フレームとが重複する場合、
前記目標対象物の履歴検出フレームと前記他の対象物の履歴検出フレームとの間の第2の重複率を取得する。
前記画像の1フレーム前の画像中の前記目標対象物の履歴検出フレームと前記目標対象物の第1の検出フレームとの間の第3の重複率を計算する。
前記第3の重複率が前記第2の重複率よりも大きい場合、前記目標対象物の第1の検出フレームを前記目標対象物の第2の検出フレームとして決定する。
可能な実施形態では、目標対象物と他の対象物の位置が近い場合、画像中の目標対象物と他の対象物の画像が重複する可能性がある。例えば、駐車場に並列に駐車している自動車5と自動車6は、一定の撮像角度で、監視画像中の自動車5と自動車6の画像が重複することがある。目標対象物が自動車5である場合、画像では、自動車5の履歴検出フレームと自動車6の履歴検出フレームとの間の第2の重複率を計算し、自動車5の第1の検出フレームと自動車5の履歴検出フレームとの間の第3の重複率を計算する必要があり、第3の重複率が第2の重複率よりも大きい場合、自動車5の第1の検出フレームを自動車5の第2の検出フレームとして決定することができる。誤って自動車6の第1の検出フレームを自動車5の検出フレームとして決定することを防止することができる。
本実施例では、目標対象物の履歴検出フレームが他の対象物の履歴検出フレームと重複する場合、目標対象物の履歴検出フレームと他の対象物の履歴検出フレームとの間の第2の重複率、および目標対象物の履歴検出フレームと第1の検出フレームとの間の第3の重複率に基づいて、目標対象物の第2の検出フレームを決定する。距離が近い他の対象物から目標対象物への干渉を低減乃至解消することができ、目標対象物の検出フレームの精度を向上させることができる。
可能な実施形態では、本開示は、以下のことを含む知能制御方法を提供する。
本開示の実施例のいずれか1項に記載の測距方法によって現在対象物と目標対象物との間の距離を取得する。
前記距離に基づいて、前記現在対象物に対する警告情報および/または制御情報を生成する。
可能な実施形態では、本開示の実施例のいずれか1項に記載の測距方法によって現在対象物と目標対象物との間の距離を取得し、知能制御の要求に応じて、取得された距離に基づいて、警告情報および/または制御情報を生成することができる。
可能な実施形態では、現在対象物は、人、車両、ロボット、ウェアラブルデバイス、盲導装置、監視装置、知能端末装置、生産装置及び建築物のいずれか1つまたは任意の組合せを含んでもよい。現在対象物に応じて知能制御の要求を決定することができる。例えば、現在対象物が人である場合、取得された目標対象物との間の距離に基づいて、警告情報を人に送信し、目標対象物からの距離が近すぎ、回避策を採取する必要があるように提示することができる。現在対象物が自動運転または支援運転の機能を有する車両である場合、取得された目標対象物との間の距離に基づいて、自動運転または支援運転の機能を有する車両に警告情報および/または制御情報を送信し、運転者に回避策を採取するように促し、または自動運転または支援運転の機能を有する車両を直接制御して回避動作を実行させることができる。現在対象物がウェアラブルデバイス、盲導装置、知能端末装置である場合、取得された目標対象物との間の距離に基づいて、ウェアラブルデバイス、盲導装置、知能端末装置の使用者または着用者に警告情報を送信することができる。現在対象物が監視装置、生産装置、建築物である場合、取得された目標対象物との間の距離に基づいて、監視装置、生産装置、建築物の管理者に警告情報を送信することができる。
目標対象物が複数のタイプの対象物の組合せである場合、取得された目標対象物との間の距離に基づいて、異なる対象物に異なる警告情報および/または制御情報を送信することができる。本開示はこれを限定しない。
本実施例では、取得された現在対象物と目標対象物との間の距離に基づいて、前記現在対象物に対する警告情報および/または制御情報を生成し、それにより、現在対象物が警告情報および/または制御情報に基づいて対応の解決策を実行することができる。
可能な実施形態では、前記距離に基づいて、前記現在対象物に対する警告情報および/または制御情報を生成することは、
距離および距離閾値に基づいて、前記現在対象物に対する警告情報および/または制御情報を生成することを含む。
可能な実施形態では、距離閾値を設定し、取得された距離を距離閾値と比較し、比較結果に基づいて、前記現在対象物に対する警告情報および/または制御情報を生成することができる。取得された距離が距離閾値よりも大きい場合、前記現在対象物に対する警告情報および/または制御情報を生成することができる。このように、知能制御システムの、意味のあまりない警告情報の送信の回数および/または制御情報に基づく不要な知能制御の回数を低減することができる。
例えば、現在対象物が自動運転または支援運転の機能を有する車両Aであり、距離が100メートルの目標対象物1、距離が30メートルの目標対象物2および距離が10メートルの目標対象物3の3つの目標対象物の距離を取得した。3つの目標対象物の距離に基づいて警告情報および/または制御情報を生成すれば、目標対象物1に基づいて生成された警告情報はほとんど警告の意味がない。距離閾値を20メートルとして設定し、距離が20メートルよりも小さい目標対象物3の距離に基づいて警告情報および/または制御情報を生成することによって、知能制御システムの適切性を向上させることができる。
可能な実施形態では、距離および距離閾値に基づいて、前記現在対象物に対する警告情報および/または制御情報を生成することは、
前記距離が前記距離閾値以下である場合、前記現在対象物に対する第1の警告情報または第1の制御情報を生成することと、
前記距離が前記距離閾値よりも大きい場合、前記現在対象物に対する第2の警告情報および第2の制御情報を生成することとを含む。
可能な実施形態では、第1の警告情報の警告レベルが第2の警告情報よりも高く、第1の制御情報の制御レベルが第2の制御情報よりも高い。距離閾値に基づいて異なるレベルの警告情報および制御情報を決定することができる。取得された距離が前記距離閾値以下である場合、現在対象物と目標対象物との間の距離が小さく、レベルが高い第1の警告情報および/または第1の制御情報を送信することができる。取得された距離が前記距離閾値よりも大きい場合、現在対象物と目標対象物との間の距離が大きく、レベルが低い第2の警告情報および/または第2の制御情報を送信することができる。
本実施例では、距離閾値に基づいて異なるレベルの警告情報および/または制御情報を決定することができ、それにより、前記現在対象物に対して生成された警告情報および/または制御情報がより正確になり、実用性がより高い。
可能な実施形態では、前記距離に基づいて、前記現在対象物に対する警告情報および/または制御情報を生成することは、
前記距離に基づいて警告レベルを決定し、前記警告レベルに基づいて警告情報を決定する、および/または
前記距離に基づいて制御レベルを決定し、前記制御レベルに基づいて制御情報を決定することを含む。
可能な実施形態では、知能制御の要求に応じて、距離によって、複数の警告レベルを決定することができる。同じ距離間隔で警告レベルを決定することができる。例えば、0〜5メートルの第1の警告レベル、5〜10メートルの第2の警告レベル、10〜15メートルの第3の警告レベル、15〜20メートルの第4の警告レベル、20〜100メートルの第5の警告レベルの5つの警告レベルを決定することができる。また、異なる距離間隔で警告レベルを決定することもできる。例えば、0〜5メートルの第1の警告レベル、5〜20メートルの第2の警告レベル、20〜200メートルの第3の警告レベルの3つの警告レベルを決定することもできる。本開示はこれを限定しない。
制御レベルの決定方式については、上記警告レベルの決定方式を参照すればよい。警告レベルの決定方式と制御レベルの決定方式は、同じでもよく、異なってもよい。例えば、距離が150メートルよりも小さくなると警告レベルを決定し始め、距離が20メートルよりも小さくなって初めて、制御レベルを決定し始める。本開示はこれを限定しない。
可能な実施形態では、前記警告情報は、音声警告情報、光警告情報、文字警告情報、画像警告情報及び振動情報のいずれか1つまたは任意の組合せを含み、前記制御情報は、非常ブレーキ情報、停止情報、加速情報及び旋回情報のいずれか1つまたは任意の組合せを含んでもよい。
可能な実施形態では、異なる警告レベルに異なる情報タイプの警告情報を設定し、情報タイプで異なる警告レベルを区別することができるようにしてもよい。異なる警告レベルに同じ情報タイプの警告情報を設定するが、警告情報自体の異なる特徴を利用して異なる警告レベルを区別するようにしてもよい。例えば、高い警告レベルに音声警告情報を設定し、低い警告レベルに文字情報を設定してもよい。音声デシベルの大きさを利用して異なるレベルの警告情報を表現してもよい。本開示はこれを限定しない。
可能な実施形態では、異なる制御レベルに異なる制御タイプの制御情報を設定するようにしてもよい。制御タイプで異なる制御レベルを区別する。異なる制御レベルに同じ制御タイプの制御情報を設定するが、制御情報自体の異なる特徴を利用して異なる制御レベルを区別するようにしてもよい。例えば、低い制御レベルに加速情報または減速情報を設定し、高い制御レベルに非常ブレーキ情報または停止情報を設定してもよい。低い制御レベルに低加速度の加速情報を設定し、高い制御レベルに高加速度の加速情報を設定してもよい。本開示はこれを限定しない。
可能な実施形態では、制御情報は自動運転または支援運転の機能を有する車両の運転制御に用いられ得る。運転制御は、現在走行対象物の運動状態および/または運動方向を変更するための制御動作を含んでもよく、例えば現在走行対象物の加速、ブレーキ減速、走行方向の変更などの現在走行対象物の運動方向および/または運動状態を変更できる制御動作を含んでもよい。例えば、1つの実際の応用シーンでは、自動運転または支援運転の機能を有する現在車両の元の運動方向が車線を直進し続ける場合、衝突時間に基づいて、現在車両が前方の疑似衝突対象物と衝突する可能性があると、衝突を回避するように、運転制御により自動運転または支援運転の機能を有する現在車両の走行方向を変更して、自動運転または支援運転の機能を有する現在車両に車線を変更させることができる。この過程中に前方の疑似衝突対象物が加速して遠ざかると、運転制御により自動運転または支援運転の機能を有する現在車両の走行方向を変更して、自動運転または支援運転の機能を有する現在車両が元の運動方向をそのまま維持し、走行車線を直進するようにすることができる。
本実施例では、距離に基づいて、警告レベルおよび/または制御レベルを決定することにより、知能制御システムはより精密な知能制御を実行することができる。
本開示で言及された上記各方法の実施例は、原理と論理に違反しない限り、相互に組み合わせて実施例を形成することができることが理解され、紙数に限りがあるので、本開示では詳細な説明を省略する。
また、本開示は画像処理装置、電子機器、コンピュータ読み取り可能な記憶媒体及びプログラムをさらに提供し、それらはいずれも本開示で提供される方法のいずれか1つを実現するために利用可能であり、それに対応する技術的解決手段及び説明は、方法部分の対応する記載を参照すればよく、ここで省略する。
図7は本開示の一実施例による測距装置のブロック図を示す。図7に示すように、前記測距装置は、
現在対象物が撮像した画像中の目標対象物の検出フレームを取得するための検出フレーム取得モジュール10と、
前記検出フレームの形状に応じて、少なくとも1つの測距点を決定するための測距点決定モジュール20と、
前記測距点に基づいて、前記目標対象物と前記現在対象物との間の距離を決定するための距離決定モジュール30とを含む。
本実施例では、目標対象物の検出フレームの形状に応じて、少なくとも1つの測距点を決定し、測距点に基づいて、現在対象物と目標対象物との間の距離を決定する。検出フレームの形状は、目標対象物距離の大きさ、撮像視角、および目標対象物自体の運動状態と密接に関係しているため、検出フレームの形状に応じて決定された測距点を使用して、正確な測定結果を取得することができる。
可能な実施形態では、前記検出フレームは矩形フレームを含み、前記測距点決定モジュール20は、前記矩形フレームの高さに基づいて、少なくとも1つの測距点を決定するための第1の測距点決定サブモジュールを含む。
本実施例では、目標対象物自体の高さ情報は画像中であまり変化しないため、矩形フレームの高さに基づいて決定された測距点を使用して、より正確な距離測定結果を取得することができる。
可能な実施形態では、第1の測距点決定サブモジュールは、前記矩形フレームの高さに基づいて、前記矩形フレームの底辺に少なくとも1つの測距点を決定するための底辺測距点決定サブモジュールを含む。
本実施例では、前記矩形フレームの高さに基づいて、前記矩形フレームの底辺に決定された少なくとも1つの測距点を使用して、より正確な距離測定結果を取得することができる。
可能な実施形態では、前記底辺測距点決定サブモジュールは、前記矩形フレームの縦横比および縦横閾値に基づいて高さの重み係数を決定するための高さ重み係数決定サブモジュールと、前記矩形フレームの高さおよび前記高さの重み係数に基づいて、前記矩形フレームの底辺に測距点を決定するための第1の底辺測距点決定サブモジュールとを含む。
本実施例では、矩形フレームの縦横比と縦横閾値との比較結果に応じて、異なる高さの重み係数を選択し、矩形フレームの高さと乗算して、矩形フレームの底辺に測距点を決定する。それにより、様々な高さの矩形フレームに対応でき、決定された測距点の位置がより合理的になり、測定結果がより正確になる。本実施例の応用範囲もより広くなる。
可能な実施形態では、前記距離決定モジュールは、前記測距点、および現在対象物の位置する環境に応じて構築されたホモグラフィマトリックスに基づいて、前記目標対象物と前記現在対象物との間の距離を決定するための第1の距離決定サブモジュールを含む。
本実施例では、ホモグラフィマトリックスおよび測距点を利用して目標対象物との距離を決定する。キャリブレーションされたホモグラフィマトリックスを利用して、正確な目標対象物との距離を取得することができる。
可能な実施形態では、前記第1の距離決定サブモジュールは、前記測距点、および第1の距離範囲のホモグラフィマトリックスを含む第1のホモグラフィマトリックスに基づいて、前記目標対象物と前記現在対象物との間の第1の距離を決定するための第2の距離決定サブモジュールと、決定された前記第1の距離、および前記第1の距離範囲より小さい第2の距離範囲のホモグラフィマトリックスを含む第2のホモグラフィマトリックスに基づいて、前記目標対象物と前記現在対象物との間の第2の距離を決定するための第3の距離決定サブモジュールとを含む。
本実施例では、異なる距離範囲のホモグラフィマトリックスにより、目標対象物と前記現在対象物との間の距離を決定することにより、計算効率が改善されて、測距の結果がより正確になる。
可能な実施形態では、前記検出フレーム取得モジュールは、ニューラルネットワークにより、前記現在対象物が撮像した画像に対して目標対象物検出を行い、前記目標対象物の検出フレームを取得するための第1の検出フレーム取得サブモジュールを含む。
本実施例では、ニューラルネットワークにより画像を検出し、目標対象物の検出フレームを取得することができる。
可能な実施形態では、前記画像は前記現在対象物が撮像したビデオ中のフレーム画像であり、前記検出フレーム取得モジュールは、前記画像に対して目標対象物検出を行い、前記目標対象物の第1の検出フレームを取得するための第2の検出フレーム取得サブモジュールと、前記ビデオ中の、時系列上の前記画像の前の少なくとも1フレームの画像から、前記目標対象物の履歴検出フレームを取得するための履歴検出フレーム取得サブモジュールと、前記目標対象物の履歴検出フレームに基づいて、前記画像における前記目標対象物の予測フレームを決定するための予測フレーム取得サブモジュールと、前記第1の検出フレームおよび前記予測フレームに基づいて、前記目標対象物の第2の検出フレームを決定するための第3の検出フレーム取得サブモジュールとを含む。
本実施例では、目標対象物の履歴検出フレームに基づいて目標対象物の予測フレームを決定し、予測フレームおよび第1の検出フレームに基づいて、目標対象物の第2の検出フレームを決定し、それにより、検出フレームをより効率的に確認することができ、確認結果がより正確になる。
可能な実施形態では、前記予測フレーム取得サブモジュールは、前記目標対象物の履歴検出フレームに基づいて、前記目標対象物の運動状態を決定するための運動状態取得サブモジュールと、前記目標対象物の運動状態に基づいて前記目標対象物の予測フレームをフィッティングするための第1の予測フレーム取得サブモジュールとを含む。
本実施例では、目標対象物の履歴検出フレームに基づいて目標対象物の運動状態を決定した後、目標対象物の運動状態に基づいて、目標対象物の予測フレームの位置をフィッティングすることができ、それにより、予測フレームがより正確になる。
可能な実施形態では、前記予測フレーム取得サブモジュールは、前記目標対象物の履歴検出フレームに基づいて、履歴検出フレームの縦横比の変化状態を決定するための変化状態取得サブモジュールと、前記履歴検出フレームの縦横比の変化状態に基づいて、前記目標対象物の予測フレームの縦横比をフィッティングするための第2の予測フレーム取得サブモジュールとを含む。
本実施例では、目標対象物の履歴検出フレームの縦横比の変化状態に基づいて、予測フレームの縦横比をフィッティングし、それにより、予測フレームがより正確になる。
可能な実施形態では、前記第3の検出フレーム取得サブモジュールは、前記目標対象物の第1の検出フレームと前記目標対象物の予測フレームとの間の第1の重複率を決定するための第1の重複率取得サブモジュールと、前記第1の重複率が第1の重複閾値以上である場合、前記目標対象物の第1の検出フレームの位置および前記目標対象物の予測フレームの位置に基づいて、前記目標対象物の検出位置を決定するための検出位置取得サブモジュールと、前記目標対象物の第1の検出フレームの縦横比および前記目標対象物の予測フレームの縦横比に基づいて、前記目標対象物の検出縦横比を決定するための検出縦横比取得サブモジュールと、前記検出位置および前記検出縦横比に基づいて、前記目標対象物の第2の検出フレームを決定するための第4の検出フレーム取得サブモジュールとを含む。
本実施例では、目標対象物の予測フレームと第1の検出フレームとの間の第1の重複率を計算し、第1の重複率を第1の重複閾値と比較した後、重複率が大きい予測フレームおよび第1の検出フレームに基づいて、目標対象物の検出位置および検出縦横比を決定する。予測フレームおよび第1の検出フレームに基づいて決定された目標対象物の検出位置および検出縦横比は、目標対象物の運動軌跡により適合する。取得された第2の検出フレームの位置および縦横比がともにより正確になる。
可能な実施形態では、前記装置は、前記第1の重複率が第1の重複閾値よりも小さい場合、前記目標対象物の第1の検出フレームを前記目標対象物の第2の検出フレームとして決定するための第5の検出フレーム取得サブモジュールをさらに含む。
本実施例では、予測フレームと第1の検出フレームとの間の第1の重複率が小さすぎる場合、第1の検出フレームのみに基づいて目標対象物の第2の検出フレームを決定する。履歴検出フレームにおける予測価値のない内容が第2の検出フレームの精度に与える影響を低減することができる。
可能な実施形態では、前記第3の検出フレーム取得サブモジュールは、前記画像に対して目標対象物検出を行っても、前記目標対象物の第1の検出フレームを取得できない場合、前記目標対象物の予測フレームを前記目標対象物の第2の検出フレームとして決定するための第6の検出フレーム取得サブモジュールをさらに含む。
本実施例では、目標対象物の第1の検出フレームを取得できない場合、予測フレームを目標対象物の第2の検出フレームとして決定することができる。それにより、検出フレームが連続性を有し、測定結果もより完全になる。
可能な実施形態では、前記第3の検出フレーム取得サブモジュールは、前記目標対象物の履歴検出フレームと他の対象物の履歴検出フレームとが重複する場合、前記目標対象物の履歴検出フレームと前記他の対象物の履歴検出フレームとの間の第2の重複率を取得するための第2の重複率取得サブモジュールと、前記画像の1フレーム前の画像における前記目標対象物の履歴検出フレームと前記目標対象物の第1の検出フレームとの間の第3の重複率を算出するための第3の重複率取得サブモジュールと、前記第3の重複率が前記第2の重複率よりも大きい場合、前記目標対象物の第1の検出フレームを前記目標対象物の第2の検出フレームとして決定するための第7の検出フレーム取得サブモジュールとを含む。
本実施例では、目標対象物の履歴検出フレームが他の対象物の履歴検出フレームと重複する場合、目標対象物の履歴検出フレームと他の対象物の履歴検出フレームとの間の第2の重複率、および目標対象物の履歴検出フレームと第1の検出フレームとの間の第3の重複率に基づいて、目標対象物の第2の検出フレームを決定する。距離が小さい他の対象物から目標対象物への干渉を低減乃至解消することができ、目標対象物の検出フレームの精度を向上させることができる。
いくつかの実施例では、本開示の実施例で提供された測距装置が備えた機能又はモジュールは、上記測距方法の実施例に記載の方法を実行するために用いられ、その具体的な実現については、上記測距方法の実施例の説明を参照すればよい。簡潔化するために、ここで重複説明は割愛する。
図8は本開示の一実施例による知能制御装置のブロック図を示す。図8に示すように、前記知能制御装置は、
測距方法のいずれか1項に記載の装置によって現在対象物と目標対象物との間の距離を取得するための距離取得モジュール1と、
前記距離に基づいて、前記現在対象物に対する警告情報および/または制御情報を生成するための制御情報生成モジュール2とを含む。
本実施例では、取得された現在対象物と目標対象物との間の距離に基づいて、前記現在対象物に対する警告情報および/または制御情報を生成し、それにより、現在対象物が警告情報および/または制御情報に基づいて対応の解決策を実行することができる。
可能な実施形態では、前記現在対象物は、人、車両、ロボット、ウェアラブルデバイス、盲導装置、監視装置、知能端末装置、生産装置及び建築物のいずれか1つまたは任意の組合せを含む。
可能な実施形態では、前記制御情報生成モジュール2は、距離および距離閾値に基づいて、前記現在対象物に対する警告情報および/または制御情報を生成するための第1の制御情報生成モジュールを含む。
本実施例では、距離閾値を設定し、取得された距離を距離閾値と比較し、比較結果に基づいて、前記現在対象物に対する警告情報および/または制御情報を生成することができる。取得された距離が距離閾値よりも大きい場合、前記現在対象物に対する警告情報および/または制御情報を生成することができる。知能制御システムの、意味のあまりない警告情報の送信の回数および/または制御情報に基づく不要な知能制御の回数を低減することができる。
可能な実施形態では、前記第1の制御情報生成モジュールは、前記距離が前記距離閾値以下である場合、前記現在対象物に対する第1の警告情報および/または第1の制御情報を生成するための第1の制御情報生成サブモジュールと、前記距離が前記距離閾値よりも大きい場合、前記現在対象物に対する第2の警告情報および/または第2の制御情報を生成するための第2の制御情報生成サブモジュールとを含む。
本実施例では、距離閾値に基づいて、異なるレベルの警告情報および/または制御情報を決定することができ、それにより、前記現在対象物に対して生成された警告情報および/または制御情報がより正確になり、実用性がより高い。
可能な実施形態では、前記第1の制御情報生成モジュールは、前記距離に基づいて警告レベルを決定するための警告レベル決定サブモジュールと、前記警告レベルに基づいて警告情報を決定するための警告情報決定サブモジュール、および/または前記距離に基づいて制御レベルを決定するための制御レベル決定サブモジュールと、前記制御レベルに基づいて制御情報を決定するための制御情報決定サブモジュールとを含む。
本実施例では、距離に基づいて警告レベルおよび/または制御レベルを決定することにより、知能制御システムはより精密な知能制御を実行することができる。
可能な実施形態では、前記警告情報は、音声警告情報、光警告情報、文字警告情報、画像警告情報及び振動情報のいずれか1つまたは任意の組合せを含み、前記制御情報は、非常ブレーキ情報、停止情報、加速情報、減速情報及び旋回情報のいずれか1つまたは任意の組合せを含む。
いくつかの実施例では、本開示の実施例で提供された知能制御装置が備えた機能又はモジュールは、上記知能制御方法の実施例に記載の方法を実行するために用いられ、その具体的な実現については、上記知能制御方法の実施例の説明を参照すればよく、簡潔化するために、ここで重複説明は割愛する
図9は、例示的な実施例に基づいて示した電子機器のブロック図である。前記電子機器800は端末、サーバ又は他の形態装置として提供されてよい。前記電子機器は測距に用いられる。例えば、装置800は携帯電話、コンピュータ、デジタル放送端末、メッセージ送受信装置、ゲームコンソール、タブレット装置、医療機器、フィットネス器具、パーソナル・デジタル・アシスタントなどであってよい。
図9に示すように、装置800は、処理コンポーネント802、メモリ804、電源コンポーネント806、マルチメディアコンポーネント808、オーディオコンポーネント810、入力/出力(I/O)インタフェース812、センサコンポーネント814、および通信コンポーネント816のうちの一つ以上を含んでもよい。
処理コンポーネント802は通常、装置800の全体的な動作、例えば表示、電話の呼び出し、データ通信、カメラ動作および記録動作に関連する動作を制御する。処理コンポーネント802は、命令を実行して上記方法の全てまたは一部のステップを実行するための一つ以上のプロセッサ820を含んでもよい。また、処理コンポーネント802は、処理コンポーネント802とのインタラクションのための一つ以上のモジュールを含んでもよい。例えば、処理コンポーネント802は、マルチメディアコンポーネント808とのインタラクションのために、マルチメディアモジュールを含んでもよい。
メモリ804は装置800での動作をサポートするための様々なタイプのデータを記憶するように構成される。これらのデータは、例として、装置800において運用するためのあらゆるアプリケーションプログラムまたは方法の命令、連絡先データ、電話帳データ、メッセージ、ピクチャー、ビデオなどを含む。メモリ804は、例えば静的ランダムアクセスメモリ(SRAM)、電気的消去可能プログラマブル読み取り専用メモリ(EEPROM)、消去可能なプログラマブル読み取り専用メモリ(EPROM)、プログラマブル読み取り専用メモリ(PROM)、読み取り専用メモリ(ROM)、磁気メモリ、フラッシュメモリ、磁気ディスクまたは光ディスクなどのあらゆるタイプの揮発性または非揮発性記憶装置またはそれらの組み合わせによって実現できる。
電源コンポーネント806は装置800の各コンポーネントに電力を供給する。電源コンポーネント806は電源管理システム、一つ以上の電源、および装置800のための電力生成、管理および配分に関連する他のコンポーネントを含んでもよい。
マルチメディアコンポーネント808は前記装置800とユーザとの間で出力インタフェースを提供するスクリーンを含む。いくつかの実施例では、スクリーンは液晶ディスプレイ(LCD)およびタッチパネル(TP)を含んでもよい。スクリーンがタッチパネルを含む場合、ユーザからの入力信号を受信するために、タッチスクリーンとして実現してもよい。タッチパネルは、タッチ、スライドおよびタッチパネルでのジェスチャを検知するために、一つ以上のタッチセンサを含む。前記タッチセンサはタッチまたはスライド動きの境界を検知するのみならず、前記タッチまたはスライド操作に関連する持続時間および圧力を検出するようにしてもよい。いくつかの実施例では、マルチメディアコンポーネント808は前面カメラおよび/または後面カメラを含む。装置800が動作モード、例えば撮影モードまたは撮像モードになる場合、前面カメラおよび/または後面カメラは外部のマルチメディアデータを受信するようにしてもよい。各前面カメラおよび後面カメラは固定された光学レンズ系、または焦点距離および光学ズーム能力を有するものであってもよい。
オーディオコンポーネント810はオーディオ信号を出力および/または入力するように構成される。例えば、オーディオコンポーネント810は、マイク(MIC)を含み、マイク(MIC)は装置800が動作モード、例えば呼び出しモード、記録モードおよび音声認識モードになる場合、外部のオーディオ信号を受信するように構成される。受信されたオーディオ信号はさらにメモリ804に記憶されるか、または通信コンポーネント816によって送信されてもよい。いくつかの実施例では、オーディオコンポーネント810はさらに、オーディオ信号を出力するためのスピーカーを含む。
I/Oインタフェース812は処理コンポーネント802と周辺インタフェースモジュールとの間でインタフェースを提供し、上記周辺インタフェースモジュールはキーボード、クリックホイール、ボタンなどであってもよい。これらのボタンはホームボタン、音量ボタン、スタートボタンおよびロックボタンを含んでもよいが、これらに限定されない。
センサコンポーネント814は装置800の各面での状態評価のために一つ以上のセンサを含む。例えば、センサコンポーネント814は装置800のオン/オフ状態、例えば装置800の表示装置およびキーパッドであるコンポーネントの相対的位置決めを検出でき、センサコンポーネント814はさらに、装置800または装置800のあるコンポーネントの位置の変化、ユーザと装置800との接触の有無、装置800の方位または加減速および装置800の温度変化を検出できる。センサコンポーネント814は、いかなる物理的接触もない場合に近傍の物体の存在を検出するように構成された近接センサを含んでもよい。センサコンポーネント814はさらに、CMOSまたはCCDイメージセンサのような、イメージングアプリケーションにおいて使用するための光センサを含んでもよい。いくつかの実施例では、該センサコンポーネント814はさらに、加速度センサ、ジャイロスコープセンサ、磁気センサ、圧力センサまたは温度センサを含んでもよい。
通信コンポーネント816は装置800と他の装置との間の有線または無線通信を実現するように配置される。装置800は通信規格に基づく無線ネットワーク、例えばワイヤレスフィデリティ(WiFi)、2Gまたは3G、またはそれらの組み合わせにアクセスできる。一例示的実施例では、通信コンポーネント816は放送チャネルによって外部の放送管理システムからの放送信号または放送関連情報を受信する。一例示的実施例では、前記通信コンポーネント816はさらに、近距離通信を促進させるために、近距離無線通信(NFC)モジュールを含む。例えば、NFCモジュールは無線周波数識別(RFID)技術、赤外線データ協会(IrDA)技術、超広帯域(UWB)技術、ブルートゥース(BT)技術および他の技術によって実現できる。
例示的な実施例では、装置800は一つ以上の特定用途向け集積回路(ASIC)、デジタル信号プロセッサ(DSP)、デジタル信号処理デバイス(DSPD)、プログラマブルロジックデバイス(PLD)、フィールドプログラマブルゲートアレイ(FPGA)、コントローラ、マイクロコントローラ、マイクロプロセッサまたは他の電子要素によって実現され、上記方法を実行するために用いられることができる。
例示的な実施例では、さらに、非揮発性コンピュータ読み取り可能な記憶媒体、例えばコンピュータプログラム命令を含むメモリ804が提供され、上記コンピュータプログラム命令は装置800のプロセッサ820によって実行されると、上記方法を実行させることができる。
例示的な実施例では、コンピュータプログラムをさらに提供する。コンピュータプログラムがプロセッサによって実行されると、上記いずれか1つの方法を実行させる。例えば、コンピュータプログラムは、装置800のプロセッサ820によって実行されて、上記いずれか1つの方法を実行する。
本開示はシステム、方法および/またはコンピュータプログラム製品であってもよい。コンピュータプログラム製品はプロセッサに本開示の各方面を実現させるためのコンピュータ読み取り可能なプログラム命令を有しているコンピュータ読み取り可能な記憶媒体を含んでもよい。
コンピュータ読み取り可能な記憶媒体は命令実行装置により使用される命令を保存および記憶可能な有形装置であってもよい。コンピュータ読み取り可能な記憶媒体は例えば、電気記憶装置、磁気記憶装置、光記憶装置、電磁記憶装置、半導体記憶装置または上記の任意の適当な組み合わせであってもよいが、これらに限定されない。コンピュータ読み取り可能な記憶媒体のさらに具体的な例(非網羅的リスト)としては、携帯型コンピュータディスク、ハードディスク、ランダムアクセスメモリ(RAM)、読み取り専用メモリ(ROM)、消去可能プログラマブル読み取り専用メモリ(EPROMまたはフラッシュメモリ)、静的ランダムアクセスメモリ(SRAM)、携帯型コンパクトディスク読み取り専用メモリ(CD−ROM)、デジタル多用途ディスク(DVD)、メモリスティック、フロッピーディスク、例えば命令が記憶されているせん孔カードまたはスロット内突起構造のような機械的符号化装置、および上記の任意の適当な組み合わせを含む。ここで使用されるコンピュータ読み取り可能な記憶媒体は瞬時信号自体、例えば無線電波または他の自由に伝播される電磁波、導波路または他の伝送媒体を経由して伝播される電磁波(例えば、光ファイバーケーブルを通過するパルス光)、または電線を経由して伝送される電気信号と解釈されるものではない。
ここで記述したコンピュータ読み取り可能なプログラム命令はコンピュータ読み取り可能な記憶媒体から各計算/処理機器にダウンロードされてもよいし、またはネットワーク、例えばインターネット、ローカルエリアネットワーク、広域ネットワークおよび/または無線ネットワークによって外部のコンピュータまたは外部記憶装置にダウンロードされてもよい。ネットワークは銅伝送ケーブル、光ファイバー伝送、無線伝送、ルーター、ファイアウォール、交換機、ゲートウェイコンピュータおよび/またはエッジサーバを含んでもよい。各計算/処理機器内のネットワークアダプタカードまたはネットワークインタフェースはネットワークからコンピュータ読み取り可能なプログラム命令を受信し、該コンピュータ読み取り可能なプログラム命令を転送し、各計算/処理機器内のコンピュータ読み取り可能な記憶媒体に記憶させる。
本開示の動作を実行するためのコンピュータプログラム命令はアセンブラ命令、命令セットアーキテクチャ(ISA)命令、機械語命令、機械依存命令、マイクロコード、ファームウェア命令、状態設定データ、またはSmalltalk、C++などのオブジェクト指向プログラミング言語、および「C」言語または類似するプログラミング言語などの一般的な手続き型プログラミング言語を含む一つ以上のプログラミング言語の任意の組み合わせで書かれたソースコードまたは目標コードであってもよい。コンピュータ読み取り可能なプログラム命令は、完全にユーザのコンピュータにおいて実行されてもよく、部分的にユーザのコンピュータにおいて実行されてもよく、スタンドアロンソフトウェアパッケージとして実行されてもよく、部分的にユーザのコンピュータにおいてかつ部分的にリモートコンピュータにおいて実行されてもよく、または完全にリモートコンピュータもしくはサーバにおいて実行されてもよい。リモートコンピュータに関与する場合、リモートコンピュータは、ローカルエリアネットワーク(LAN)または広域ネットワーク(WAN)を含む任意の種類のネットワークを経由してユーザのコンピュータに接続されてもよく、または、(例えばインターネットサービスプロバイダを利用してインターネットを経由して)外部コンピュータに接続されてもよい。いくつかの実施例では、コンピュータ読み取り可能なプログラム命令の状態情報を利用して、例えばプログラマブル論理回路、フィールドプログラマブルゲートアレイ(FPGA)またはプログラマブル論理アレイ(PLA)などの電子回路をパーソナライズし、該電子回路によりコンピュータ読み取り可能なプログラム命令を実行することにより、本開示の各方面を実現するようにしてもよい。
ここで本開示の実施例に係る方法、装置(システム)およびコンピュータプログラム製品のフローチャートおよび/またはブロック図を参照しながら本開示の各方面を説明したが、フローチャートおよび/またはブロック図の各ブロックおよびフローチャートおよび/またはブロック図の各ブロックの組み合わせは、いずれもコンピュータ読み取り可能なプログラム命令によって実現できることが理解すべきである。
これらのコンピュータ読み取り可能なプログラム命令は、汎用コンピュータ、専用コンピュータまたは他のプログラマブルデータ処理装置のプロセッサへ提供されて、これらの命令がコンピュータまたは他のプログラマブルデータ処理装置のプロセッサによって実行されると、フローチャートおよび/またはブロック図の一つ以上のブロックにおいて指定された機能/動作を実現するように機械を製造してもよい。また、これらのコンピュータ読み取り可能なプログラム命令は、コンピュータ読み取り可能な記憶媒体に記憶し、コンピュータ、プログラマブルデータ処理装置および/または他の機器を特定の方式で動作させるようにしてもよい。命令を記憶しているコンピュータ読み取り可能な記憶媒体には、フローチャートおよび/またはブロック図の一つ以上のブロックにおいて指定された機能/動作の各方面を実現するための命令を有する製品を含む。
コンピュータ読み取り可能なプログラムはコンピュータ、他のプログラマブルデータ処理装置、または他の機器にロードし、コンピュータ、他のプログラマブルデータ処理装置または他の機器において一連の動作ステップを実行させることにより、コンピュータにより実現されるプロセスを生成し、コンピュータ、他のプログラマブルデータ処理装置、または他の機器において実行される命令によりフローチャートおよび/またはブロック図の一つ以上のブロックにおいて指定された機能/動作を実現する。
図面のうちフローチャートおよびブロック図は本開示の複数の実施例に係るシステム、方法およびコンピュータプログラム製品の実現可能なシステムアーキテクチャ、機能および動作を示す。この点では、フローチャートまたはブロック図における各ブロックは一つのモジュール、プログラムセグメントまたは命令の一部分を代表することができ、前記モジュール、プログラムセグメントまたは命令の一部分は指定された論理機能を実現するための一つ以上の実行可能命令を含む。いくつかの代替としての実現形態では、ブロックに表記される機能は図面に付した順序と異なって実現してもよい。例えば、二つの連続的なブロックは実質的に同時に実行してもよく、また、係る機能によって、逆な順序で実行してもよい場合がある。なお、ブロック図および/またはフローチャートにおける各ブロック、およびブロック図および/またはフローチャートにおけるブロックの組み合わせは、指定される機能または動作を実行するハードウェアに基づく専用システムによって実現してもよいし、または専用ハードウェアとコンピュータ命令との組み合わせによって実現してもよいことに注意すべきである。
以上、本開示の各実施例を記述したが、上記説明は例示的なものに過ぎず、網羅的なものではなく、かつ披露された各実施例に限定されるものでもない。当業者にとって、説明された各実施例の範囲および精神から逸脱することなく、様々な修正および変更が自明である。本明細書に選ばれた用語は、各実施例の原理、実際の適用または市場における技術への技術的改善を好適に解釈するか、または他の当業者に本文に披露された各実施例を理解させるためのものである。
関連出願の相互参照
本出願は、2018年4月27日に中国特許局に提出された、出願番号201810394688.4、発明名称が「測距方法、知能制御方法及び装置、電子機器ならびに記憶媒体」の中国特許出願の優先権を主張し、その開示の全てが参照によって本願に組み込まれる。
本開示は、コンピュータビジョン技術の分野に関し、特に測距方法、知能制御方法及び装置、電子機器ならびに記憶媒体に関する。
車両のインテリジェントドライブの場合、コンピュータビジョン技術を使用して他の車両および歩行者との距離を検知し、検知した他の車両および歩行者との距離をインテリジェントドライブの制御に用いる必要がある。
本開示は、測距方法に関する技術的解決手段および知能制御方法に関する技術的解決手段を提供する。
本開示の一方面によれば、現在対象物が撮像した画像中の目標対象物の検出フレームを取得することと、前記検出フレームの形状に応じて、少なくとも1つの測距点を決定することと、前記測距点に基づいて、前記目標対象物と前記現在対象物との間の距離を決定することと、を含む測距方法を提供する。
本開示の一方面によれば、上記に記載の測距方法によって現在対象物と目標対象物との間の距離を取得することと、前記距離に基づいて、前記現在対象物に対する警告情報および/または制御情報を生成することとを含む知能制御方法を提供する。
本開示の一方面によれば、現在対象物が撮像した画像中の目標対象物の検出フレームを取得するための検出フレーム取得モジュールと、前記検出フレームの形状に応じて、少なくとも1つの測距点を決定するための測距点決定モジュールと、前記測距点に基づいて、前記目標対象物と前記現在対象物との間の距離を決定するための距離決定モジュールと、を含む測距装置を提供する。
本開示の一方面によれば、上記に記載の測距装置によって現在対象物と目標対象物との間の距離を取得するための距離取得モジュールと、前記距離に基づいて、前記現在対象物に対する警告情報および/または制御情報を生成するための制御情報生成モジュールとを含む知能制御装置を提供する。
本開示の一方面によれば、プロセッサと、プロセッサにより実行可能なコマンドを記憶するためのメモリを含み、前記プロセッサは、上述測距方法および/または知能制御方法を実行するように構成される電子機器を提供する。
本開示の一方面によれば、コンピュータプログラムコマンドが記憶されているコンピュータ読み取り可能な記憶媒体であって、前記コンピュータプログラムコマンドがプロセッサによって実行されると、本開示が提供する測距方法および/または知能制御方法を実現させるコンピュータ読み取り可能な記憶媒体を提供する。
本開示の一方面によれば、プロセッサによって実行されると、本開示が提供する測距方法および/または知能制御方法を実行させるコンピュータプログラムを提供する。
本開示の実施例では、目標対象物の検出フレームの形状に応じて少なくとも1つの測距点を決定し、測距点に基づいて現在対象物と目標対象物との間の距離を決定する。検出フレームの形状は、目標対象物との距離の大きさ、撮像視角、および目標対象物自体の運動状態と密接に関係しているため、検出フレームの形状に応じて決定された測距点を使用して、正確な測定結果を取得することができる。
以下、図面を参照しながら例示的な実施例について詳細に説明することにより、本願の他の特徴及び方面は明瞭になる。
明細書の一部として明細書に含まれる図面は、明細書と共に本開示の例示的な実施例、特徴及び方面を示し、本開示の原理を解釈するために用いられる。
本開示の一実施例による測距方法のフローチャートを示す。
本開示の一実施例による測距方法のフローチャートを示す。
本開示の一実施例による測距方法のフローチャートを示す。
本開示の一実施例による測距方法のフローチャートを示す。
本開示の一実施例による測距方法のフローチャートを示す。
本開示の一実施例による測距方法のフローチャートを示す。
本開示の一実施例による測距装置のブロック図を示す。
本開示の一実施例による知能制御装置のブロック図を示す。
一例示的な実施例に基づいて示した電子機器のブロック図である。
以下に図面を参照しながら本開示の様々な例示的実施例、特徴および方面を詳細に説明する。図面において、同じ符号が同じまたは類似する機能の要素を表す。図面において実施例の様々な方面を示したが、特に断らない限り、比例に従って図面を描く必要がない。
ここの用語「例示的」とは、「例、実施例として用いられることまたは説明的なもの」を意味する。ここで「例示的」に説明されるいかなる実施例も他の実施例より好ましい又は優れるものであると理解すべきではない。
また、本開示をより効果的に説明するために、以下の具体的な実施形態において様々な具体的な詳細を示す。当業者であれば、何らかの具体的な詳細がなくても、本開示は同様に実施できるということを理解すべきである。いくつかの実施例では、本開示の趣旨を強調するように、当業者に既知の方法、手段、要素および回路について、詳細な説明を行わない。
図1は本開示の一実施例による測距方法のフローチャートを示す。図1に示すように、前記測距方法は、以下のステップを含む。
ステップS10、現在対象物が撮像した画像中の目標対象物の検出フレームを取得する。
可能な実施形態では、現在対象物は、移動可能な対象物を含んでも良く、移動不可能な対象物を含んでも良い。現在対象物は、人、自動車、非自動車、ロボット及びウェアブルデバイスなどを含んでもよい。現在対象物が車両である場合、本開示の実施例は自動運転、支援運転などの技術分野で応用され得る。現在対象物が路側に配置される監視装置である場合、本開示の実施例は目標対象物と監視装置との間の距離を測定することに使用され得る。現在対象物は、要求に応じて決定され得るが、本開示はこれを限定しない。
現在対象物に撮像装置を配置して、測距の要求に応じて設定方向の画像を撮像することができる。現在対象物が撮像した画像は、撮像装置によって撮像された単一フレームの画像を含んでもよく、撮像装置によって撮像されたビデオストリーム内のフレーム画像を含んでも良い。
現在対象物は、単眼カメラ、RGBカメラ、赤外線カメラ、双眼カメラなどの様々なビジョンセンサーによって画像を撮像することができる。単眼カメラを使用する場合、システムコストが低く、応答が速い。RGBカメラまたは赤外線カメラを使用する場合、特別な環境で画像を撮像することができる。双眼カメラを使用する場合、目標対象物のより豊かな情報を取得することができる。測距の要求、環境、現在対象物のタイプおよびコストなどに応じて、異なる撮像装置を選択することができる。本開示はこれを限定しない。
目標対象物は、車両、歩行者、建築物、障害物及び動物などを含む。目標対象物は、単一の対象物タイプの1つまたは複数の目標対象物であってもよく、複数の対象物タイプの複数の目標対象物であってもよい。例えば、車両だけを目標対象物としてもよく、目標対象物は1つの車両であってもよく、複数の車両であってもよい。また、車両および歩行者をともに目標対象物としてもよい。目標対象物は複数の車両および複数の歩行者である。要求に応じて、設定された対象物タイプを目標対象物としても良く、設定された対象物個体を目標対象物としてもよい。
画像検出技術によって、現在対象物が撮像した画像中の目標対象物の検出フレームを取得することができる。検出フレームは矩形フレームであってもよく、他の形状のフレームであってもよい。画像中の各目標対象物の検出フレームの形状は、同じであってもよく、目標対象物の形状によって異なっても良い。検出フレームの大きさは、画像中の目標対象物が画像に占める面積大きさによって異なっても良い。例えば、画像中の目標対象物は3台の自動車および2人の歩行者を含む。画像検出技術によって、画像において5つの検出フレームで各目標対象物をマークすることができる。
検出フレームは、検出された目標対象物の外郭フレームであってもよく、例えば、検出フレームは検出された目標対象物の最小外郭フレームであって、3台の自動車の検出フレームは幅方向に長い矩形フレームであって、2人の歩行者の検出フレームは高さ方向に長い矩形フレームであってもよい。そのうち、距離が比較的近い自動車および歩行者の検出フレームは大きく、距離が比較的遠い自動車および歩行者の検出フレームは小さいようにしてもよい。
ステップS20、前記検出フレームの形状に応じて、少なくとも1つの測距点を決定する。
可能な実施形態では、画像において決定された測距点は目標対象物と現在対象物との間の距離を測定するために使用されることができる。検出フレームの底辺の固定位置に測距点を決定し、例えば検出フレームの底辺の中心点を測距点として決定し、測距点を利用して目標対象物と現在対象物との間の距離を決定することができる。
画像では、目標対象物との距離の大きさ、撮像視角、および目標対象物自体の運動状態によって、検出フレーム内の目標対象物の画像内容が変化し、検出フレームの形状も変化する。例えば、目標対象物である自動車1は自動運転または支援運転の機能を有する車両2に対して幅方向に駐車または走行している場合、自動車1の側面がカメラに向かい、自動車1の検出フレームに自動車1の側面の車体画像が含まれ、検出フレームの形状が幅方向に長い矩形フレームである。自動車1は自動運転または支援運転の機能を有する車両に対して高さ方向に走行または駐車している場合、自動車1の前部または後部がカメラに向かい、自動車1の検出フレームに自動車1の前部または後部の画像が含まれ、検出フレームの形状は幅方向に短い矩形フレームである。
従来の測距方法では、検出フレームの底辺の中心点に基づいて決定された測距点は、自動車1の側面の底辺の中心点である可能性があり、自動車1の前部または後部の底辺の中心点である可能性もある。測距点は目標対象物自体の異なる位置に対応する。目標対象物との距離の大きさ、撮像視角、および目標対象物自体の運動状態によって、測距点の選択位置は大きく異なる。さらに、自動運転または支援運転の機能を有する車両が取得した画像には、一般的に移動中の目標対象物、例えば道路を走行している自動車および歩行している歩行者などが含まれる。移動する目標対象物に対応する検出フレーム内の画像内容は、目標対象物の移動に伴って大きく変化する。従って、検出フレームの固定位置に基づいて決定された測距点は、目標対象物自体の如何なる不変の属性情報も反映できず、目標対象物の異なる位置に対応して、大きく変化する。測距点の選択は、距離測定結果の精度に影響を与えるので、検出フレームの固定位置に基づいて決定された測距点を使用して正確な測定結果を取得することができない。
前記検出フレームの形状に応じて、少なくとも1つの測距点を決定することは、検出フレームの形状に応じて、検出フレームの縁フレームに、または検出フレーム内で少なくとも1つの測距点を決定することを含む。検出フレームの形状は、目標対象物との距離の大きさ、撮像視角、および目標対象物自体の運動状態と密接に関係しているため、検出フレームの形状に応じて決定された測距点を使用して正確な測定結果を取得することができる。
ステップS30、前記測距点に基づいて、前記目標対象物と前記現在対象物との間の距離を決定する。
可能な実施形態では、コンピュータビジョン技術の分野では、平面ホモグラフィは、1つの平面から別の平面への投影マッピングとして定義できる。平面ホモグラフィは、1つの2次元平面上の点の画像へのマッピングを含んでもよい。現在対象物の位置する環境に応じて構築されたホモグラフィマトリックス(Homography matrix)を利用して、測距点の画像での対応位置を現在対象物の位置する環境にマッピングした後、目標対象物と現在対象物との間の距離を決定するようにしてもよい。
可能な実施形態では、現在対象物が撮像した画像は互い関連する複数の静止画像である場合、または現在対象物が撮像した画像はビデオストリーム内のフレーム画像である場合、各画像から個別に測距点を決定してもよい。同一の目標対象物について、第1枚の画像で決定された測距点の位置をすべての画像での測距点の位置とし、後の画像に個別に計算しないようにしてもよい。
本実施例では、目標対象物の検出フレームの形状に応じて、少なくとも1つの測距点を決定し、測距点に基づいて、現在対象物と目標対象物との間の距離を決定する。検出フレームの形状は、目標対象物との距離の大きさ、撮像視角、および目標対象物自体の運動状態に密接に関係しているため、検出フレームの形状に応じて決定された測距点を使用して正確な測定結果を取得することができる。
可能な実施形態では、決定された距離に基づいて提示情報を送信するようにしてもよい。
提示情報は、音声情報、画像情報、振動情報、ショートメッセージ及びメール情報などが含んでもよい。決定された距離の大きさに応じて、異なるレベルの提示情報を送信するようにしてもよい。例えば、距離が5メートル未満であると、重大警告情報を送信し、距離が5メートルを超え10メートル未満であると、警告情報を送信し、距離が10メートルを超えると、通知情報を送信する。提示情報のレベルによって異なる情報の表現形式を使用し、例えば、重大警告情報では音声情報を使用し、警告情報では振動情報を使用し、通知情報ではショートメッセージ情報を使用するようにしてもよい。音声デシベルの大きさで異なるレベルの提示情報を表現してもよい。例えば、100デシベルの音声で重大告警情報を示し、50デシベルの音声で警告情報を示し、20デシベルの音声で通知情報を示す。本開示はこれを限定しない。
可能な実施形態では、前記検出フレームは矩形フレームを含み、前記検出フレームの形状に応じて、少なくとも1つの測距点を決定することは、前記矩形フレームの高さに基づいて、少なくとも1つの測距点を決定することを含む。
可能な実施形態では、地平面をX軸およびY軸で定義される平面内として、地平面から空への方向をZ軸の正方向とするように3次元座標系を確立することができる。確立された3次元座標系を現在対象物が撮像した画像に対応する場合、目標対象物の矩形フレームの高さについて、矩形フレームの底辺のZ軸座標を始点とし、矩形フレームの上辺のZ軸座標を終点として算出されたZ軸方向の距離である。ここで、矩形フレームの底辺は目標対象物の地平面に接触する箇所が位置する辺である。例えば、目標対象物は車両であり、矩形フレームの底辺はタイヤが位置する辺である。矩形フレームの高さは車両のタイヤからルーフまでの高さである。
矩形フレームの幅方向は、地平面を参照として、矩形フレームの地平面と平行する投影方向(横方向とも呼ばれる)である。選択可能で、矩形フレームの幅は目標対象物の撮像方向での自体の幅情報が含まれ得る。矩形フレームの高さ方向は、地平面を参照として、矩形フレームの地平面に垂直する投影方向(縦方向とも呼ばれる)である。選択可能で、矩形フレームの高さは目標対象物の撮像方向での自体の高さ情報が含まれ得る。目標対象物に対応する矩形フレームの幅は、運動状態および撮像角度によって大きく変化する可能性がある。一方、目標対象物に対応する矩形フレームの高さは、目標対象物自体の高さ情報を反映するので、運動状態および撮像角度が異なっても、あまり変化しない。例えば、目標対象物の自動車1に対応する画像内の矩形フレームは、自動車1の旋回に伴って、矩形フレームの幅が大きく変化するが、矩形フレームの形状があまり変化しない。
本実施例では、目標対象物自体の高さ情報は画像中であまり変化しないため、矩形フレームの高さに基づいて決定された測距点を使用して、より正確な距離測定結果を取得することができる。
可能な実施形態では、前記矩形フレームの高さに基づいて、少なくとも1つの測距点を決定することは、前記矩形フレームの高さに基づいて、前記矩形フレームの底辺に少なくとも1つの測距点を決定することを含む。
可能な実施形態では、矩形フレームの高さに基づいて、矩形フレームの底辺に少なくとも1つの測距点を決定することができる。矩形フレームの底辺は、目標対象物の地平面に接触する箇所が位置する辺であり、底辺の位置は比較的固定で安定性が高い。
矩形フレームの底辺に測距点を決定するには、矩形フレームの底辺の左側端点または右側端点を始点とし、矩形フレームの高さと高さの重み係数を乗算して積を求め、矩形フレームの底辺の始点からの距離がこの積の値である位置を測距点の位置として決定するようにしてもよい。例えば、自動車1の矩形フレームの幅は3cmであり、高さは1cmであり、高さの重み係数は0.5である。矩形フレーム底辺の左側端点を始点とし、矩形フレーム底辺の底辺左側端点からの距離が1×0.5=0.5(cm)である位置を測距点の位置として決定する。
本実施例では、前記矩形フレームの高さに基づいて前記矩形フレームの底辺に決定された少なくとも1つの測距点を使用して、より正確な距離測定結果を取得することができる。
可能な実施形態では、前記矩形フレームの高さに基づいて、前記矩形フレームの底辺に測距点を決定することは、
前記矩形フレームの縦横比および縦横閾値に基づいて、高さの重み係数を決定することと、
前記矩形フレームの高さおよび前記高さの重み係数に基づいて、前記矩形フレームの底辺に測距点を決定することとを含む。
可能な実施形態では、高さの重み係数は第1の高さの重み係数および第2の高さの重み係数を含み、且つ前記第1の高さの重み係数と前記第2の高さの重み係数は異なるようにしてもよい。矩形フレームの縦横比は矩形フレームの幅と高さの比を含む。目標対象物によって、矩形フレームの幅と高さの比が異なる。矩形フレームの高さに基づいて、矩形フレームの底辺に測距点を決定する際、矩形フレームの高さが大きすぎるため、矩形フレームの底辺に決定された測距点の位置が大きくずれることがある。矩形フレームの縦横比及び縦横閾値に基づいて、第1の高さの重み係数または第2の高さの重み係数を選択して、矩形フレームの高さと乗算して測距点を決定することにより、目標対象物に応じて、測距点の位置をより正確かつ合理的に決定することができる。
縦横閾値は矩形フレームの幅と高さの比に基づいて決定された閾値を含む。矩形フレームの縦横比および幅閾値に基づいて、第1の高さの重み係数及び第2の高さの重み係数のいずれを矩形フレームの高さと乗算するかを決定することができる。例えば、縦横閾値は1であり、第1の高さの重み係数は0.1であり、第2の高さの重み係数は0.5である。矩形フレーム1は車両を示し、矩形フレーム1の幅は3cmであり、高さは1cmであり、矩形フレーム1の縦横比は3である。矩形フレーム2は歩行者を示し、矩形フレーム2の幅は1cmであり、高さは3cmであり、矩形フレーム2の縦横比は0.3である。同じ高さの重み係数0.5に基づいて測距点を決定すると、矩形フレーム底辺の左側端点を始点とする場合、矩形フレーム1では始点からの距離が0.5cmである位置に測距点を決定する。矩形フレーム2では始点からの距離が1.5cmである位置に測距点を決定してしまい、矩形フレーム2の底辺の全長を超えるので、測距点の位置が大きくずれる。
矩形フレーム1および矩形フレーム2の縦横比を縦横閾値と比較し、矩形フレーム1の縦横比は3であり、縦横閾値1よりも大きいので、矩形フレーム1の高さと第2の高さの重み係数0.5を乗算する。矩形フレーム1の左側端点を始点とし、矩形フレーム1の底辺左側端点からの距離が1×0.5=0.5(cm)である位置に測距点を決定することができる。矩形フレーム2の縦横比は0.3であり、縦横閾値1よりも小さいので、矩形フレーム2の高さと第1の高さの重み係数0.1を乗算する。矩形フレーム2の左側端点を始点とし、矩形フレーム2の底辺の左側端点からの距離が3×0.1=0.3(cm)である位置に測距点の位置を決定することができる。
本実施例では、矩形フレームの縦横比と縦横閾値との比較結果に応じて、異なる高さの重み係数を選択し、矩形フレームの高さと乗算して、矩形フレームの底辺に測距点を決定する。それにより、様々な高さの矩形フレームに対応でき、決定された測距点の位置がより合理的になり、測定結果がより正確になる。本実施例の応用範囲もより広くなる。
図2は本開示の一実施例による測距方法のフローチャートを示す。図2に示すように、ステップS30は以下のステップを含む。
ステップS31、前記測距点、および現在対象物の位置する環境に応じて構築されたホモグラフィマトリックスに基づいて、前記目標対象物と前記現在対象物との間の距離を決定する。
可能な実施形態では、コンピュータビジョンでは、平面のホモグラフィは1つの平面から別の平面への投影マッピングとして定義される。3次元空間内の2つの平面を変換することができる。1つの2次元平面上の点のカメライメージャーへのマッピングは平面ホモグラフィの例である。同次座標を使用してキャリブレーションターゲット上の点Pをイメージャー上の点mにマッピングするようなマッピングをいわゆるホモグラフィマトリックスで表すことができる。ここで、同次座標とは、n+1次元のベクトルで本来n次元のベクトルを表し、ユークリッドジオメトリで使用されるデカルト座標のように、射影幾何ための座標システムである。
ホモグラフィマトリックスによって現在対象物が撮像した画像中の測距点と目標対象物との間の距離情報を取得することができる。測距の前に、現在対象物の位置する環境に応じてホモグラフィマトリックスを構築することができる。例えば、自動運転車両に搭載される単眼カメラによって実際の道路画像を撮像し、道路画像上のポイントセット、および画像上のポイントセットに対応する実際路面上のポイントセットを利用し、ホモグラフィマトリックスを構築することができる。具体的な方法は以下の通りである。1、座標系の確立:自動運転車両の左前輪を原点とし、運転者の視角の右方向をX軸の正方向とし、前方向をY軸の正方向として、車体座標系を確立する。2、ポイント選択:車体座標系での点を選択し、ポイントセットを取得する。例えば(0,5)、(0,10)、(0,15)、(1.85,5)、(1.85,10)、(1.85,15)などの各点を取得する(単位:メートル)。要求に応じて、より遠くにある点を選択してもよい。3、マーキング:選択された点を実際路面上にマーキングし、実際のポイントセットを取得する。4、キャリブレーション:キャリブレーションターゲット及びキャリブレーションプログラムを使用して、実際のポイントセットに対応する撮像画像での画素位置を取得する。5、対応の画素位置に基づいてホモグラフィマトリックスを生成する。
要求に応じて、異なる距離範囲でホモグラフィマトリックスを構築することができる。例えば、100メートルの距離範囲でホモグラフィマトリックスを構築してもよく、10メートルの範囲でホモグラフィマトリックスを構築してもよい。距離範囲が小さいほど、ホモグラフィマトリックスにより決定された距離の精度が高い。
本実施例では、ホモグラフィマトリックスおよび測距点を利用して、目標対象物との距離を決定する。キャリブレーションされたホモグラフィマトリックスを利用して、正確な目標対象物との距離を取得することができる。
図3は本開示の一実施例による測距方法のフローチャートを示す。図3に示すように、ステップS31は以下のステップを含む。
ステップS311、前記測距点、および第1の距離範囲のホモグラフィマトリックスを含む第1のホモグラフィマトリックスに基づいて、前記目標対象物と前記現在対象物との間の第1の距離を決定する。
ステップS312、決定された前記第1の距離、および前記第1の距離範囲よりも小さい第2の距離範囲のホモグラフィマトリックスを含む第2のホモグラフィマトリックスに基づいて、前記目標対象物と前記現在対象物との間の第2の距離を決定する。
可能な実施形態では、第1のホモグラフィマトリックスおよび測距点に基づいて、目標対象物との第1の距離を決定した後、さらに第2のホモグラフィマトリックスを利用して目標対象物との第2の距離を決定することができる。第1の距離範囲が第2の距離範囲よりも大きいため、第2のホモグラフィマトリックスを利用して算出された第2の距離はより正確になる。例えば、第1のホモグラフィマトリックスの距離範囲は100メートルである。第2のホモグラフィマトリックスの距離範囲は10メートルであり、0〜10メートル、10〜20メートル、20〜30メートル……90〜100メートルなどの10個の距離範囲を含む第2のホモグラフィマトリックスを生成することができる。要求に応じて、設定された距離範囲の第2のホモグラフィマトリックス、例えば20〜30メートル、30〜40メートル、40〜50メートル、50〜60メートルとの4つの第2のホモグラフィマトリックスだけを生成してもよい。例えば、第1のホモグラフィマトリックスおよび測距点に基づいて、目標対象物との距離が58.32メートルであると決定し、さらに50〜60メートルの第2のホモグラフィマトリックスにより、目標対象物との第2の距離が54.21メートルであると決定する。
本実施例では、異なる距離範囲のホモグラフィマトリックスにより、目標対象物と前記現在対象物との間の距離を決定することにより、計算効率が改善されて、測距の結果がより正確になる。
図4は本開示の一実施例による測距方法のフローチャートを示す。図4に示すように、ステップS10は以下のステップを含む。
ステップS11、ニューラルネットワークにより、前記現在対象物が撮像した画像に対して目標対象物検出を行い、前記目標対象物の検出フレームを取得する。
可能な実施形態では、ニューラルネットワークにより画像を検出し、目標対象物の検出フレームを取得することができる。ニューラルネットワークは、RFCN(Region―based Fully Convolutional Networks、領域ベースの完全畳み込みネットワーク)、SSD(Single Shot multibox Detector、シングルショットマルチボックス検出器)、RCNN(Regions with CNN、領域ベースの畳み込みニューラルネットワーク)、FastRCNN(Fast RCNN、高速の領域ベースの畳み込みニューラルネットワーク)、FasterRCNN(Faster RCNN、より高速の領域ベースの畳み込みニューラルネットワーク)、SPPNet(Spatial Pyramid Pooling Convolutional Networks、空間ピラミッドプーリング畳み込みネットワーク)、DPM Deformable Parts Models、変形可能パーツモデル)、OverFeat(同じ畳み込みネットワークに基づく複数のタスク)、YOLO(You Only Look Once、画像を1度だけ見る)などの構築方式に基づくものであってよいが、本開示はこれを限定しない。
図5は本開示の一実施例による測距方法のフローチャートを示す。前記画像は前記現在対象物が撮像したビデオ中のフレーム画像であり、図5に示すように、ステップS10は以下のステップを含む。
ステップS12、前記画像に対して目標対象物検出を行い、前記目標対象物の第1の検出フレームを取得する。
ステップS13、前記ビデオ中の、時系列上の前記画像の前の少なくとも1フレームの画像から、前記目標対象物の履歴検出フレームを取得する。
ステップS14、前記目標対象物の履歴検出フレームに基づいて、前記画像における前記目標対象物の予測フレームを決定する。
ステップS15、前記第1の検出フレームおよび前記予測フレームに基づいて、前記目標対象物の第2の検出フレームを決定する。
可能な実施形態では、画像が前記現在対象物が撮像したビデオ中のフレーム画像である場合、目標対象物は、ビデオ中の、時系列上の前記画像の前の少なくとも1フレームの画像にも出現可能である。前のフレーム画像での目標対象物の検出フレームを前記目標対象物の履歴検出フレームとすることができる。例えば、道路に向いている監視カメラによって取得された監視ビデオには自動車1の監視画面が含まれる。監視ビデオの10番目〜120番目のフレームには、いずれも自動車1の検出フレームが出現する。10番目〜120番目のフレーム画像中の自動車1の検出フレームを履歴検出フレームとする。自動車1の履歴検出フレームに基づいて、自動車1の運動状態を決定することができる。決定された自動車1の運動状態に基づいて、121番目のフレームのフレーム画像における自動車1の位置を推定することができ、また、推定された位置に基づいて、121番目のフレーム画像における自動車1の予測フレームの位置を予測することができる。
履歴検出フレームを選別して、予測フレームの予測結果をより正確にするようにしてもよい。例えば、画像の前のフレーム画像において位置変化が大きすぎる履歴検出フレームを除外することができる。
目標対象物のすべての履歴検出フレームに基づいて目標対象物の予測フレームを決定してもよく、目標対象物の設定数の履歴検出フレームに基づいて目標対象物の予測フレームを決定してもよい。例えば、目標対象物の100個の履歴検出フレームのみに基づいて予測フレームを決定してもよい。
第1の検出フレームと予測フレームとの位置差が設定された閾値よりも小さい場合、第1の検出フレームと予測フレームの位置を重み付け平均化して、取得された現在対象物の撮像による画像中の目標対象物の検出フレームである第2の検出フレームの位置を取得するようにしてもよい。
本実施例では、目標対象物の履歴検出フレームに基づいて、目標対象物の予測フレームを決定し、予測フレームおよび第1の検出フレームに基づいて、目標対象物の第2の検出フレームを決定し、それにより、検出フレームをより効率的に確認することができ、確認結果がより正確になる。
可能な実施形態では、前記現在対象物が撮像したビデオ中の、前記画像の前のN(1よりも大きい正の整数)枚のフレーム画像から、前記目標対象物の履歴検出フレームを取得してもよい。
可能な実施形態では、目標対象物の履歴検出フレームを決定するとき、目標対象物の運動状態が経時的に変化するので、古すぎる履歴検出フレームは参照として無意義になり、予測フレームの予測結果に干渉する恐れがある。平滑化列を設定して、画像の前のN枚のフレーム画像を平滑化列に配置するようにしてもよい。例えば、現在フレーム画像の検出フレームを決定した後、次のフレームのフレーム画像中の目標対象物の履歴検出フレームとして使用してもよい。現在フレームを平滑化列に追加し、平滑化列中の最も古いフレーム画像を削除し、平滑化列にNフレームの画像のみが存在することを維持するようにしてもよい。また、Nの大きさを要求に応じて設定することができる。
本実施例では、前記画像の前のNフレームの画像から取得された目標対象物の履歴検出フレームにより、古すぎる履歴検出フレームから予測フレームへの干渉を解消でき、予測フレームの予測結果がより正確になる。
図6は本開示の一実施例による測距方法のフローチャートを示す。前記画像は検出ビデオ中のフレーム画像であり、図6に示すように、ステップS14は以下のステップを含む。
ステップS141、前記目標対象物の履歴検出フレームに基づいて、前記目標対象物の運動状態を決定する。
ステップS142、前記目標対象物の運動状態に基づいて、前記目標対象物の予測フレームをフィッティングする。
可能な実施形態では、目標対象物の履歴検出フレームに基づいて、目標対象物の履歴位置、運動速度、運動加速度、運動軌跡などを取得することができる。目標対象物の履歴位置、運動速度、運動加速度、運動軌跡に基づいて、目標対象物の画像での運動状態を取得することができる。例えば、目標対象物の自動車2の履歴検出フレームに基づいて、座標点1、座標点2、座標点3……座標点98、座標点99、座標点100を含む自動車2の履歴検出フレームの100個の位置を得ることができ、上記座標点に基づいて、自動車2の走行速度をAkm/hとして取得することができる。100個の履歴座標点および走行速度に基づいて、自動車2の画像での予測座標点101を取得でき、予測座標点101を自動車2の予測フレームの位置として決定することができる。
可能な実施形態では、履歴検出フレームに基づいて予測フレームの位置をフィッティングし、最後の履歴検出フレームの縦横比を予測フレームの縦横比として予測フレームを決定するようにしてもよい。
本実施例では、目標対象物の履歴検出フレームに基づいて目標対象物の運動状態を決定した後、目標対象物の運動状態に基づいて目標対象物の予測フレームの位置をフィッティングすることができ、それにより、予測フレームがより正確になる。
可能な実施形態では、前記画像は検出ビデオ中のフレーム画像であり、ステップS14は、
前記目標対象物の履歴検出フレームに基づいて、履歴検出フレームの縦横比の変化状態を決定することと、
前記履歴検出フレームの縦横比の変化状態に基づいて、前記目標対象物の予測フレームの縦横比をフィッティングすることとを含む。
可能な実施形態では、目標対象物の運動状態に応じて、履歴検出フレームの大きさおよび形状が変化する。例えば、自動運転または支援運転の機能を有する車両に対向して走行する自動車3では、自動車3が自動運転または支援運転の機能を有する車両に近づくにつれて、自動車3の検出フレーム中に車体側面の画像が多く含まれ、検出フレームの幅も大きくなる。履歴検出フレームの縦横比は目標対象物の運動状態、位置情報と密接に関係している。履歴検出フレーム中の目標対象物の縦横比の変化状態に基づいて、目標対象物の画像での予測フレームの縦横比をフィッティングすることができる。
可能な実施形態では、履歴検出フレームに基づいて予測フレームの位置をフィッティングし、履歴検出フレームの縦横比に基づいて予測フレームの縦横比をフィッティングし、最後にフィッティングされた位置およびフィッティングされた縦横比に基づいて予測フレームを決定するようにしてもよい。
本実施例では、目標対象物の履歴検出フレームの縦横比の変化状態に基づいて予測フレームの縦横比をフィッティングし、それにより、予測フレームがより正確になる。
可能な実施形態では、ステップS15は以下のことを含む。
前記目標対象物の第1の検出フレームと前記目標対象物の予測フレームとの間の第1の重複率を決定する。
前記第1の重複率が第1の重複閾値以上である場合、前記目標対象物の第1の検出フレームの位置および前記目標対象物の予測フレームの位置に基づいて、前記目標対象物の検出位置を決定する。
前記目標対象物の第1の検出フレームの縦横比および前記目標対象物の予測フレームの縦横比に基づいて、前記目標対象物の検出縦横比を決定する。
前記検出位置および前記検出縦横比に基づいて、前記目標対象物の第2の検出フレームを決定する。
可能な実施形態では、第1の重複率は第1の検出フレームおよび予測フレーム中の画像内容の重複比を含んでもよい。第1の検出フレームと予測フレームとの間の第1の重複率が第1の重複閾値以上である場合、第1の検出フレームと予測フレームはほとんど一致すると考えられ、予測フレームに基づいて第1の検出フレームを補正して第2の検出フレームを取得することができる。第1の検出フレームと予測フレームは第1の重複率よりも小さい場合、第1の検出フレームと予測フレームに大きな差があると考えられ、予測フレームに基づいて第1の検出フレームを補正して第2の検出フレームを取得することができない。
予測フレームに基づいて第1の検出フレームを補正することは、予測フレームの位置に基づいて第1の検出フレームの位置を補正することと、予測フレームの縦横比に基づいて第1の検出フレームの縦横比を補正することとを含む。予測フレームの位置と第1の検出フレームの位置との中間点を目標対象物の検出位置として決定してもよい。予測フレームの縦横比と第1の検出フレームの縦横比との中間値を目標対象物の検出縦横比として決定してもよい。
予測フレームと第1の検出フレームの位置を重み付け平均化して、目標対象物の検出位置を決定してもよく、ここで、第1の検出フレームの位置の重みが予測フレームの位置の重みよりも高い。予測フレームと第1の検出フレームの縦横比を重み付け平均化して、目標対象物の検出縦横比を決定してもよく、ここで、第1の検出フレームの縦横比の重みが予測フレームの縦横比の重みよりも高い。
決定された目標対象物の検出位置および検出縦横比に基づいて、目標対象物の第2の検出フレームを決定することができる。
本実施例では、目標対象物の予測フレームと第1の検出フレームとの間の第1の重複率を計算し、第1の重複率を第1の重複閾値と比較した後、重複率が大きい予測フレームおよび第1の検出フレームに基づいて目標対象物の検出位置および検出縦横比を決定する。予測フレームおよび第1の検出フレームに基づいて決定された目標対象物の検出位置および検出縦横比は、目標対象物の運動軌跡により適合する。取得された第2の検出フレームの位置および縦横比がより正確になる。
可能な実施形態では、前記方法は、
前記第1の重複率が第1の重複閾値よりも小さい場合、前記目標対象物の第1の検出フレームを前記目標対象物の第2の検出フレームとして決定することをさらに含む。
可能な実施形態では、目標対象物の運動が速すぎる場合、予測フレームと第1の検出フレームの第1の重複率が第1の重複閾値よりも小さくなる可能性がある。例えば、目標対象物の自動車4は走行速度が速すぎるので、予測フレームと第1の検出フレーム中の画像の差が大きすぎ、履歴検出フレームに基づいて取得された予測フレームは予測の価値がなくなり、第1の検出フレームを第2の検出フレームとして決定することができる。
本実施例では、予測フレームと第1の検出フレームとの間の第1の重複率が小さすぎる場合、第1の検出フレームのみに基づいて目標対象物の第2の検出フレームを決定する。履歴検出フレームにおける予測価値のない内容が第2の検出フレームの精度に与える影響を低減することができる。
可能な実施形態では、前記第1の検出フレームおよび前記予測フレームに基づいて、前記目標対象物の第2の検出フレームを決定することは、前記画像に対して目標対象物検出を行っても、前記目標対象物の第1の検出フレームを取得できない場合、前記目標対象物の予測フレームを前記目標対象物の第2の検出フレームとして決定することをさらに含む。
可能な実施形態では、目標対象物の第1の検出フレームを取得できない場合、予測フレームを目標対象物の第2の検出フレームとして決定することができる。それにより、検出フレームが連続性を有し、測定結果もより完全になる。
可能な実施形態では、ステップS15は以下のことをさらに含む。
前記目標対象物の履歴検出フレームと他の対象物の履歴検出フレームとが重複する場合、前記目標対象物の履歴検出フレームと前記他の対象物の履歴検出フレームとの間の第2の重複率を取得する。
前記画像の1フレーム前の画像中の前記目標対象物の履歴検出フレームと前記目標対象物の第1の検出フレームとの間の第3の重複率を計算する。
前記第3の重複率が前記第2の重複率よりも大きい場合、前記目標対象物の第1の検出フレームを前記目標対象物の第2の検出フレームとして決定する。
可能な実施形態では、目標対象物と他の対象物の位置が近い場合、画像中の目標対象物と他の対象物の画像が重複する可能性がある。例えば、駐車場に並列に駐車している自動車5と自動車6は、一定の撮像角度で、監視画像中の自動車5と自動車6の画像が重複することがある。目標対象物が自動車5である場合、画像では、自動車5の履歴検出フレームと自動車6の履歴検出フレームとの間の第2の重複率を計算し、自動車5の第1の検出フレームと自動車5の履歴検出フレームとの間の第3の重複率を計算する必要があり、第3の重複率が第2の重複率よりも大きい場合、自動車5の第1の検出フレームを自動車5の第2の検出フレームとして決定することができる。誤って自動車6の第1の検出フレームを自動車5の検出フレームとして決定することを防止することができる。
本実施例では、目標対象物の履歴検出フレームが他の対象物の履歴検出フレームと重複する場合、目標対象物の履歴検出フレームと他の対象物の履歴検出フレームとの間の第2の重複率、および目標対象物の履歴検出フレームと第1の検出フレームとの間の第3の重複率に基づいて、目標対象物の第2の検出フレームを決定する。距離が近い他の対象物から目標対象物への干渉を低減乃至解消することができ、目標対象物の検出フレームの精度を向上させることができる。
可能な実施形態では、本開示は、以下のことを含む知能制御方法を提供する。
本開示の実施例のいずれか1項に記載の測距方法によって現在対象物と目標対象物との間の距離を取得する。
前記距離に基づいて、前記現在対象物に対する警告情報および/または制御情報を生成する。
可能な実施形態では、本開示の実施例のいずれか1項に記載の測距方法によって現在対象物と目標対象物との間の距離を取得し、知能制御の要求に応じて、取得された距離に基づいて、警告情報および/または制御情報を生成することができる。
可能な実施形態では、現在対象物は、人、車両、ロボット、ウェアラブルデバイス、盲導装置、監視装置、知能端末装置、生産装置及び建築物のいずれか1つまたは任意の組合せを含んでもよい。現在対象物に応じて知能制御の要求を決定することができる。例えば、現在対象物が人である場合、取得された目標対象物との間の距離に基づいて、警告情報を人に送信し、目標対象物からの距離が近すぎ、回避策を採取する必要があるように提示することができる。現在対象物が自動運転または支援運転の機能を有する車両である場合、取得された目標対象物との間の距離に基づいて、自動運転または支援運転の機能を有する車両に警告情報および/または制御情報を送信し、運転者に回避策を採取するように促し、または自動運転または支援運転の機能を有する車両を直接制御して回避動作を実行させることができる。現在対象物がウェアラブルデバイス、盲導装置、知能端末装置である場合、取得された目標対象物との間の距離に基づいて、ウェアラブルデバイス、盲導装置、知能端末装置の使用者または着用者に警告情報を送信することができる。現在対象物が監視装置、生産装置、建築物である場合、取得された目標対象物との間の距離に基づいて、監視装置、生産装置、建築物の管理者に警告情報を送信することができる。
目標対象物が複数のタイプの対象物の組合せである場合、取得された目標対象物との間の距離に基づいて、異なる対象物に異なる警告情報および/または制御情報を送信することができる。本開示はこれを限定しない。
本実施例では、取得された現在対象物と目標対象物との間の距離に基づいて、前記現在対象物に対する警告情報および/または制御情報を生成し、それにより、現在対象物が警告情報および/または制御情報に基づいて対応の解決策を実行することができる。
可能な実施形態では、前記距離に基づいて、前記現在対象物に対する警告情報および/または制御情報を生成することは、
距離および距離閾値に基づいて、前記現在対象物に対する警告情報および/または制御情報を生成することを含む。
可能な実施形態では、距離閾値を設定し、取得された距離を距離閾値と比較し、比較結果に基づいて、前記現在対象物に対する警告情報および/または制御情報を生成することができる。取得された距離が距離閾値よりも大きい場合、前記現在対象物に対する警告情報および/または制御情報を生成することができる。このように、知能制御システムの、意味のあまりない警告情報の送信の回数および/または制御情報に基づく不要な知能制御の回数を低減することができる。
例えば、現在対象物が自動運転または支援運転の機能を有する車両Aであり、距離が100メートルの目標対象物1、距離が30メートルの目標対象物2および距離が10メートルの目標対象物3の3つの目標対象物の距離を取得した。3つの目標対象物の距離に基づいて警告情報および/または制御情報を生成すれば、目標対象物1に基づいて生成された警告情報はほとんど警告の意味がない。距離閾値を20メートルとして設定し、距離が20メートルよりも小さい目標対象物3の距離に基づいて警告情報および/または制御情報を生成することによって、知能制御システムの適切性を向上させることができる。
可能な実施形態では、距離および距離閾値に基づいて、前記現在対象物に対する警告情報および/または制御情報を生成することは、
前記距離が前記距離閾値以下である場合、前記現在対象物に対する第1の警告情報または第1の制御情報を生成することと、
前記距離が前記距離閾値よりも大きい場合、前記現在対象物に対する第2の警告情報および第2の制御情報を生成することとを含む。
可能な実施形態では、第1の警告情報の警告レベルが第2の警告情報よりも高く、第1の制御情報の制御レベルが第2の制御情報よりも高い。距離閾値に基づいて異なるレベルの警告情報および制御情報を決定することができる。取得された距離が前記距離閾値以下である場合、現在対象物と目標対象物との間の距離が小さく、レベルが高い第1の警告情報および/または第1の制御情報を送信することができる。取得された距離が前記距離閾値よりも大きい場合、現在対象物と目標対象物との間の距離が大きく、レベルが低い第2の警告情報および/または第2の制御情報を送信することができる。
本実施例では、距離閾値に基づいて異なるレベルの警告情報および/または制御情報を決定することができ、それにより、前記現在対象物に対して生成された警告情報および/または制御情報がより正確になり、実用性がより高い。
可能な実施形態では、前記距離に基づいて、前記現在対象物に対する警告情報および/または制御情報を生成することは、
前記距離に基づいて警告レベルを決定し、前記警告レベルに基づいて警告情報を決定する、および/または
前記距離に基づいて制御レベルを決定し、前記制御レベルに基づいて制御情報を決定することを含む。
可能な実施形態では、知能制御の要求に応じて、距離によって、複数の警告レベルを決定することができる。同じ距離間隔で警告レベルを決定することができる。例えば、0〜5メートルの第1の警告レベル、5〜10メートルの第2の警告レベル、10〜15メートルの第3の警告レベル、15〜20メートルの第4の警告レベル、20〜100メートルの第5の警告レベルの5つの警告レベルを決定することができる。また、異なる距離間隔で警告レベルを決定することもできる。例えば、0〜5メートルの第1の警告レベル、5〜20メートルの第2の警告レベル、20〜200メートルの第3の警告レベルの3つの警告レベルを決定することもできる。本開示はこれを限定しない。
制御レベルの決定方式については、上記警告レベルの決定方式を参照すればよい。警告レベルの決定方式と制御レベルの決定方式は、同じでもよく、異なってもよい。例えば、距離が150メートルよりも小さくなると警告レベルを決定し始め、距離が20メートルよりも小さくなって初めて、制御レベルを決定し始める。本開示はこれを限定しない。
可能な実施形態では、前記警告情報は、音声警告情報、光警告情報、文字警告情報、画像警告情報及び振動情報のいずれか1つまたは任意の組合せを含み、前記制御情報は、非常ブレーキ情報、停止情報、加速情報及び旋回情報のいずれか1つまたは任意の組合せを含んでもよい。
可能な実施形態では、異なる警告レベルに異なる情報タイプの警告情報を設定し、情報タイプで異なる警告レベルを区別することができるようにしてもよい。異なる警告レベルに同じ情報タイプの警告情報を設定するが、警告情報自体の異なる特徴を利用して異なる警告レベルを区別するようにしてもよい。例えば、高い警告レベルに音声警告情報を設定し、低い警告レベルに文字情報を設定してもよい。音声デシベルの大きさを利用して異なるレベルの警告情報を表現してもよい。本開示はこれを限定しない。
可能な実施形態では、異なる制御レベルに異なる制御タイプの制御情報を設定するようにしてもよい。制御タイプで異なる制御レベルを区別する。異なる制御レベルに同じ制御タイプの制御情報を設定するが、制御情報自体の異なる特徴を利用して異なる制御レベルを区別するようにしてもよい。例えば、低い制御レベルに加速情報または減速情報を設定し、高い制御レベルに非常ブレーキ情報または停止情報を設定してもよい。低い制御レベルに低加速度の加速情報を設定し、高い制御レベルに高加速度の加速情報を設定してもよい。本開示はこれを限定しない。
可能な実施形態では、制御情報は自動運転または支援運転の機能を有する車両の運転制御に用いられ得る。運転制御は、現在走行対象物の運動状態および/または運動方向を変更するための制御動作を含んでもよく、例えば現在走行対象物の加速、ブレーキ減速、走行方向の変更などの現在走行対象物の運動方向および/または運動状態を変更できる制御動作を含んでもよい。例えば、1つの実際の応用シーンでは、自動運転または支援運転の機能を有する現在車両の元の運動方向が車線を直進し続ける場合、衝突時間に基づいて、現在車両が前方の疑似衝突対象物と衝突する可能性があると、衝突を回避するように、運転制御により自動運転または支援運転の機能を有する現在車両の走行方向を変更して、自動運転または支援運転の機能を有する現在車両に車線を変更させることができる。この過程中に前方の疑似衝突対象物が加速して遠ざかると、運転制御により自動運転または支援運転の機能を有する現在車両の走行方向を変更して、自動運転または支援運転の機能を有する現在車両が元の運動方向をそのまま維持し、走行車線を直進するようにすることができる。
本実施例では、距離に基づいて、警告レベルおよび/または制御レベルを決定することにより、知能制御システムはより精密な知能制御を実行することができる。
本開示で言及された上記各方法の実施例は、原理と論理に違反しない限り、相互に組み合わせて実施例を形成することができることが理解され、紙数に限りがあるので、本開示では詳細な説明を省略する。
また、本開示は画像処理装置、電子機器、コンピュータ読み取り可能な記憶媒体及びプログラムをさらに提供し、それらはいずれも本開示で提供される方法のいずれか1つを実現するために利用可能であり、それに対応する技術的解決手段及び説明は、方法部分の対応する記載を参照すればよく、ここで省略する。
図7は本開示の一実施例による測距装置のブロック図を示す。図7に示すように、前記測距装置は、
現在対象物が撮像した画像中の目標対象物の検出フレームを取得するための検出フレーム取得モジュール10と、
前記検出フレームの形状に応じて、少なくとも1つの測距点を決定するための測距点決定モジュール20と、
前記測距点に基づいて、前記目標対象物と前記現在対象物との間の距離を決定するための距離決定モジュール30とを含む。
本実施例では、目標対象物の検出フレームの形状に応じて、少なくとも1つの測距点を決定し、測距点に基づいて、現在対象物と目標対象物との間の距離を決定する。検出フレームの形状は、目標対象物距離の大きさ、撮像視角、および目標対象物自体の運動状態と密接に関係しているため、検出フレームの形状に応じて決定された測距点を使用して、正確な測定結果を取得することができる。
可能な実施形態では、前記検出フレームは矩形フレームを含み、前記測距点決定モジュール20は、前記矩形フレームの高さに基づいて、少なくとも1つの測距点を決定するための第1の測距点決定サブモジュールを含む。
本実施例では、目標対象物自体の高さ情報は画像中であまり変化しないため、矩形フレームの高さに基づいて決定された測距点を使用して、より正確な距離測定結果を取得することができる。
可能な実施形態では、第1の測距点決定サブモジュールは、前記矩形フレームの高さに基づいて、前記矩形フレームの底辺に少なくとも1つの測距点を決定するための底辺測距点決定サブモジュールを含む。
本実施例では、前記矩形フレームの高さに基づいて、前記矩形フレームの底辺に決定された少なくとも1つの測距点を使用して、より正確な距離測定結果を取得することができる。
可能な実施形態では、前記底辺測距点決定サブモジュールは、前記矩形フレームの縦横比および縦横閾値に基づいて高さの重み係数を決定するための高さ重み係数決定サブモジュールと、前記矩形フレームの高さおよび前記高さの重み係数に基づいて、前記矩形フレームの底辺に測距点を決定するための第1の底辺測距点決定サブモジュールとを含む。
本実施例では、矩形フレームの縦横比と縦横閾値との比較結果に応じて、異なる高さの重み係数を選択し、矩形フレームの高さと乗算して、矩形フレームの底辺に測距点を決定する。それにより、様々な高さの矩形フレームに対応でき、決定された測距点の位置がより合理的になり、測定結果がより正確になる。本実施例の応用範囲もより広くなる。
可能な実施形態では、前記距離決定モジュールは、前記測距点、および現在対象物の位置する環境に応じて構築されたホモグラフィマトリックスに基づいて、前記目標対象物と前記現在対象物との間の距離を決定するための第1の距離決定サブモジュールを含む。
本実施例では、ホモグラフィマトリックスおよび測距点を利用して目標対象物との距離を決定する。キャリブレーションされたホモグラフィマトリックスを利用して、正確な目標対象物との距離を取得することができる。
可能な実施形態では、前記第1の距離決定サブモジュールは、前記測距点、および第1の距離範囲のホモグラフィマトリックスを含む第1のホモグラフィマトリックスに基づいて、前記目標対象物と前記現在対象物との間の第1の距離を決定するための第2の距離決定サブモジュールと、決定された前記第1の距離、および前記第1の距離範囲より小さい第2の距離範囲のホモグラフィマトリックスを含む第2のホモグラフィマトリックスに基づいて、前記目標対象物と前記現在対象物との間の第2の距離を決定するための第3の距離決定サブモジュールとを含む。
本実施例では、異なる距離範囲のホモグラフィマトリックスにより、目標対象物と前記現在対象物との間の距離を決定することにより、計算効率が改善されて、測距の結果がより正確になる。
可能な実施形態では、前記検出フレーム取得モジュールは、ニューラルネットワークにより、前記現在対象物が撮像した画像に対して目標対象物検出を行い、前記目標対象物の検出フレームを取得するための第1の検出フレーム取得サブモジュールを含む。
本実施例では、ニューラルネットワークにより画像を検出し、目標対象物の検出フレームを取得することができる。
可能な実施形態では、前記画像は前記現在対象物が撮像したビデオ中のフレーム画像であり、前記検出フレーム取得モジュールは、前記画像に対して目標対象物検出を行い、前記目標対象物の第1の検出フレームを取得するための第2の検出フレーム取得サブモジュールと、前記ビデオ中の、時系列上の前記画像の前の少なくとも1フレームの画像から、前記目標対象物の履歴検出フレームを取得するための履歴検出フレーム取得サブモジュールと、前記目標対象物の履歴検出フレームに基づいて、前記画像における前記目標対象物の予測フレームを決定するための予測フレーム取得サブモジュールと、前記第1の検出フレームおよび前記予測フレームに基づいて、前記目標対象物の第2の検出フレームを決定するための第3の検出フレーム取得サブモジュールとを含む。
本実施例では、目標対象物の履歴検出フレームに基づいて目標対象物の予測フレームを決定し、予測フレームおよび第1の検出フレームに基づいて、目標対象物の第2の検出フレームを決定し、それにより、検出フレームをより効率的に確認することができ、確認結果がより正確になる。
可能な実施形態では、前記予測フレーム取得サブモジュールは、前記目標対象物の履歴検出フレームに基づいて、前記目標対象物の運動状態を決定するための運動状態取得サブモジュールと、前記目標対象物の運動状態に基づいて前記目標対象物の予測フレームをフィッティングするための第1の予測フレーム取得サブモジュールとを含む。
本実施例では、目標対象物の履歴検出フレームに基づいて目標対象物の運動状態を決定した後、目標対象物の運動状態に基づいて、目標対象物の予測フレームの位置をフィッティングすることができ、それにより、予測フレームがより正確になる。
可能な実施形態では、前記予測フレーム取得サブモジュールは、前記目標対象物の履歴検出フレームに基づいて、履歴検出フレームの縦横比の変化状態を決定するための変化状態取得サブモジュールと、前記履歴検出フレームの縦横比の変化状態に基づいて、前記目標対象物の予測フレームの縦横比をフィッティングするための第2の予測フレーム取得サブモジュールとを含む。
本実施例では、目標対象物の履歴検出フレームの縦横比の変化状態に基づいて、予測フレームの縦横比をフィッティングし、それにより、予測フレームがより正確になる。
可能な実施形態では、前記第3の検出フレーム取得サブモジュールは、前記目標対象物の第1の検出フレームと前記目標対象物の予測フレームとの間の第1の重複率を決定するための第1の重複率取得サブモジュールと、前記第1の重複率が第1の重複閾値以上である場合、前記目標対象物の第1の検出フレームの位置および前記目標対象物の予測フレームの位置に基づいて、前記目標対象物の検出位置を決定するための検出位置取得サブモジュールと、前記目標対象物の第1の検出フレームの縦横比および前記目標対象物の予測フレームの縦横比に基づいて、前記目標対象物の検出縦横比を決定するための検出縦横比取得サブモジュールと、前記検出位置および前記検出縦横比に基づいて、前記目標対象物の第2の検出フレームを決定するための第4の検出フレーム取得サブモジュールとを含む。
本実施例では、目標対象物の予測フレームと第1の検出フレームとの間の第1の重複率を計算し、第1の重複率を第1の重複閾値と比較した後、重複率が大きい予測フレームおよび第1の検出フレームに基づいて、目標対象物の検出位置および検出縦横比を決定する。予測フレームおよび第1の検出フレームに基づいて決定された目標対象物の検出位置および検出縦横比は、目標対象物の運動軌跡により適合する。取得された第2の検出フレームの位置および縦横比がともにより正確になる。
可能な実施形態では、前記装置は、前記第1の重複率が第1の重複閾値よりも小さい場合、前記目標対象物の第1の検出フレームを前記目標対象物の第2の検出フレームとして決定するための第5の検出フレーム取得サブモジュールをさらに含む。
本実施例では、予測フレームと第1の検出フレームとの間の第1の重複率が小さすぎる場合、第1の検出フレームのみに基づいて目標対象物の第2の検出フレームを決定する。履歴検出フレームにおける予測価値のない内容が第2の検出フレームの精度に与える影響を低減することができる。
可能な実施形態では、前記第3の検出フレーム取得サブモジュールは、前記画像に対して目標対象物検出を行っても、前記目標対象物の第1の検出フレームを取得できない場合、前記目標対象物の予測フレームを前記目標対象物の第2の検出フレームとして決定するための第6の検出フレーム取得サブモジュールをさらに含む。
本実施例では、目標対象物の第1の検出フレームを取得できない場合、予測フレームを目標対象物の第2の検出フレームとして決定することができる。それにより、検出フレームが連続性を有し、測定結果もより完全になる。
可能な実施形態では、前記第3の検出フレーム取得サブモジュールは、前記目標対象物の履歴検出フレームと他の対象物の履歴検出フレームとが重複する場合、前記目標対象物の履歴検出フレームと前記他の対象物の履歴検出フレームとの間の第2の重複率を取得するための第2の重複率取得サブモジュールと、前記画像の1フレーム前の画像における前記目標対象物の履歴検出フレームと前記目標対象物の第1の検出フレームとの間の第3の重複率を算出するための第3の重複率取得サブモジュールと、前記第3の重複率が前記第2の重複率よりも大きい場合、前記目標対象物の第1の検出フレームを前記目標対象物の第2の検出フレームとして決定するための第7の検出フレーム取得サブモジュールとを含む。
本実施例では、目標対象物の履歴検出フレームが他の対象物の履歴検出フレームと重複する場合、目標対象物の履歴検出フレームと他の対象物の履歴検出フレームとの間の第2の重複率、および目標対象物の履歴検出フレームと第1の検出フレームとの間の第3の重複率に基づいて、目標対象物の第2の検出フレームを決定する。距離が小さい他の対象物から目標対象物への干渉を低減乃至解消することができ、目標対象物の検出フレームの精度を向上させることができる。
いくつかの実施例では、本開示の実施例で提供された測距装置が備えた機能又はモジュールは、上記測距方法の実施例に記載の方法を実行するために用いられ、その具体的な実現については、上記測距方法の実施例の説明を参照すればよい。簡潔化するために、ここで重複説明は割愛する。
図8は本開示の一実施例による知能制御装置のブロック図を示す。図8に示すように、前記知能制御装置は、
本開示の実施例のいずれか1項に記載の測距装置によって現在対象物と目標対象物との間の距離を取得するための距離取得モジュール1と、
前記距離に基づいて、前記現在対象物に対する警告情報および/または制御情報を生成するための制御情報生成モジュール2とを含む。
本実施例では、取得された現在対象物と目標対象物との間の距離に基づいて、前記現在対象物に対する警告情報および/または制御情報を生成し、それにより、現在対象物が警告情報および/または制御情報に基づいて対応の解決策を実行することができる。
可能な実施形態では、前記現在対象物は、人、車両、ロボット、ウェアラブルデバイス、盲導装置、監視装置、知能端末装置、生産装置及び建築物のいずれか1つまたは任意の組合せを含む。
可能な実施形態では、前記制御情報生成モジュール2は、距離および距離閾値に基づいて、前記現在対象物に対する警告情報および/または制御情報を生成するための第1の制御情報生成モジュールを含む。
本実施例では、距離閾値を設定し、取得された距離を距離閾値と比較し、比較結果に基づいて、前記現在対象物に対する警告情報および/または制御情報を生成することができる。取得された距離が距離閾値よりも大きい場合、前記現在対象物に対する警告情報および/または制御情報を生成することができる。知能制御システムの、意味のあまりない警告情報の送信の回数および/または制御情報に基づく不要な知能制御の回数を低減することができる。
可能な実施形態では、前記第1の制御情報生成モジュールは、前記距離が前記距離閾値以下である場合、前記現在対象物に対する第1の警告情報および/または第1の制御情報を生成するための第1の制御情報生成サブモジュールと、前記距離が前記距離閾値よりも大きい場合、前記現在対象物に対する第2の警告情報および/または第2の制御情報を生成するための第2の制御情報生成サブモジュールとを含む。
本実施例では、距離閾値に基づいて、異なるレベルの警告情報および/または制御情報を決定することができ、それにより、前記現在対象物に対して生成された警告情報および/または制御情報がより正確になり、実用性がより高い。
可能な実施形態では、前記第1の制御情報生成モジュールは、前記距離に基づいて警告レベルを決定するための警告レベル決定サブモジュールと、前記警告レベルに基づいて警告情報を決定するための警告情報決定サブモジュール、および/または前記距離に基づいて制御レベルを決定するための制御レベル決定サブモジュールと、前記制御レベルに基づいて制御情報を決定するための制御情報決定サブモジュールとを含む。
本実施例では、距離に基づいて警告レベルおよび/または制御レベルを決定することにより、知能制御システムはより精密な知能制御を実行することができる。
可能な実施形態では、前記警告情報は、音声警告情報、光警告情報、文字警告情報、画像警告情報及び振動情報のいずれか1つまたは任意の組合せを含み、前記制御情報は、非常ブレーキ情報、停止情報、加速情報、減速情報及び旋回情報のいずれか1つまたは任意の組合せを含む。
いくつかの実施例では、本開示の実施例で提供された知能制御装置が備えた機能又はモジュールは、上記知能制御方法の実施例に記載の方法を実行するために用いられ、その具体的な実現については、上記知能制御方法の実施例の説明を参照すればよく、簡潔化するために、ここで重複説明は割愛する
図9は、例示的な実施例に基づいて示した電子機器のブロック図である。前記電子機器800は端末、サーバ又は他の形態装置として提供されてよい。前記電子機器は測距に用いられる。例えば、装置800は携帯電話、コンピュータ、デジタル放送端末、メッセージ送受信装置、ゲームコンソール、タブレット装置、医療機器、フィットネス器具、パーソナル・デジタル・アシスタントなどであってよい。
図9に示すように、装置800は、処理コンポーネント802、メモリ804、電源コンポーネント806、マルチメディアコンポーネント808、オーディオコンポーネント810、入力/出力(I/O)インタフェース812、センサコンポーネント814、および通信コンポーネント816のうちの一つ以上を含んでもよい。
処理コンポーネント802は通常、装置800の全体的な動作、例えば表示、電話の呼び出し、データ通信、カメラ動作および記録動作に関連する動作を制御する。処理コンポーネント802は、命令を実行して上記方法の全てまたは一部のステップを実行するための一つ以上のプロセッサ820を含んでもよい。また、処理コンポーネント802は、処理コンポーネント802とのインタラクションのための一つ以上のモジュールを含んでもよい。例えば、処理コンポーネント802は、マルチメディアコンポーネント808とのインタラクションのために、マルチメディアモジュールを含んでもよい。
メモリ804は装置800での動作をサポートするための様々なタイプのデータを記憶するように構成される。これらのデータは、例として、装置800において運用するためのあらゆるアプリケーションプログラムまたは方法の命令、連絡先データ、電話帳データ、メッセージ、ピクチャー、ビデオなどを含む。メモリ804は、例えば静的ランダムアクセスメモリ(SRAM)、電気的消去可能プログラマブル読み取り専用メモリ(EEPROM)、消去可能なプログラマブル読み取り専用メモリ(EPROM)、プログラマブル読み取り専用メモリ(PROM)、読み取り専用メモリ(ROM)、磁気メモリ、フラッシュメモリ、磁気ディスクまたは光ディスクなどのあらゆるタイプの揮発性または非揮発性記憶装置またはそれらの組み合わせによって実現できる。
電源コンポーネント806は装置800の各コンポーネントに電力を供給する。電源コンポーネント806は電源管理システム、一つ以上の電源、および装置800のための電力生成、管理および配分に関連する他のコンポーネントを含んでもよい。
マルチメディアコンポーネント808は前記装置800とユーザとの間で出力インタフェースを提供するスクリーンを含む。いくつかの実施例では、スクリーンは液晶ディスプレイ(LCD)およびタッチパネル(TP)を含んでもよい。スクリーンがタッチパネルを含む場合、ユーザからの入力信号を受信するために、タッチスクリーンとして実現してもよい。タッチパネルは、タッチ、スライドおよびタッチパネルでのジェスチャを検知するために、一つ以上のタッチセンサを含む。前記タッチセンサはタッチまたはスライド動きの境界を検知するのみならず、前記タッチまたはスライド操作に関連する持続時間および圧力を検出するようにしてもよい。いくつかの実施例では、マルチメディアコンポーネント808は前面カメラおよび/または後面カメラを含む。装置800が動作モード、例えば撮影モードまたは撮像モードになる場合、前面カメラおよび/または後面カメラは外部のマルチメディアデータを受信するようにしてもよい。各前面カメラおよび後面カメラは固定された光学レンズ系、または焦点距離および光学ズーム能力を有するものであってもよい。
オーディオコンポーネント810はオーディオ信号を出力および/または入力するように構成される。例えば、オーディオコンポーネント810は、マイク(MIC)を含み、マイク(MIC)は装置800が動作モード、例えば呼び出しモード、記録モードおよび音声認識モードになる場合、外部のオーディオ信号を受信するように構成される。受信されたオーディオ信号はさらにメモリ804に記憶されるか、または通信コンポーネント816によって送信されてもよい。いくつかの実施例では、オーディオコンポーネント810はさらに、オーディオ信号を出力するためのスピーカーを含む。
I/Oインタフェース812は処理コンポーネント802と周辺インタフェースモジュールとの間でインタフェースを提供し、上記周辺インタフェースモジュールはキーボード、クリックホイール、ボタンなどであってもよい。これらのボタンはホームボタン、音量ボタン、スタートボタンおよびロックボタンを含んでもよいが、これらに限定されない。
センサコンポーネント814は装置800の各面での状態評価のために一つ以上のセンサを含む。例えば、センサコンポーネント814は装置800のオン/オフ状態、例えば装置800の表示装置およびキーパッドであるコンポーネントの相対的位置決めを検出でき、センサコンポーネント814はさらに、装置800または装置800のあるコンポーネントの位置の変化、ユーザと装置800との接触の有無、装置800の方位または加減速および装置800の温度変化を検出できる。センサコンポーネント814は、いかなる物理的接触もない場合に近傍の物体の存在を検出するように構成された近接センサを含んでもよい。センサコンポーネント814はさらに、CMOSまたはCCDイメージセンサのような、イメージングアプリケーションにおいて使用するための光センサを含んでもよい。いくつかの実施例では、該センサコンポーネント814はさらに、加速度センサ、ジャイロスコープセンサ、磁気センサ、圧力センサまたは温度センサを含んでもよい。
通信コンポーネント816は装置800と他の装置との間の有線または無線通信を実現するように配置される。装置800は通信規格に基づく無線ネットワーク、例えばワイヤレスフィデリティ(WiFi)、2Gまたは3G、またはそれらの組み合わせにアクセスできる。一例示的実施例では、通信コンポーネント816は放送チャネルによって外部の放送管理システムからの放送信号または放送関連情報を受信する。一例示的実施例では、前記通信コンポーネント816はさらに、近距離通信を促進させるために、近距離無線通信(NFC)モジュールを含む。例えば、NFCモジュールは無線周波数識別(RFID)技術、赤外線データ協会(IrDA)技術、超広帯域(UWB)技術、ブルートゥース(BT)技術および他の技術によって実現できる。
例示的な実施例では、装置800は一つ以上の特定用途向け集積回路(ASIC)、デジタル信号プロセッサ(DSP)、デジタル信号処理デバイス(DSPD)、プログラマブルロジックデバイス(PLD)、フィールドプログラマブルゲートアレイ(FPGA)、コントローラ、マイクロコントローラ、マイクロプロセッサまたは他の電子要素によって実現され、上記方法を実行するために用いられることができる。
例示的な実施例では、さらに、非揮発性コンピュータ読み取り可能な記憶媒体、例えばコンピュータプログラム命令を含むメモリ804が提供され、上記コンピュータプログラム命令は装置800のプロセッサ820によって実行されると、上記方法を実行させることができる。
例示的な実施例では、コンピュータプログラムをさらに提供する。コンピュータプログラムがプロセッサによって実行されると、上記いずれか1つの方法を実行させる。例えば、コンピュータプログラムは、装置800のプロセッサ820によって実行されて、上記いずれか1つの方法を実行する。
本開示はシステム、方法および/またはコンピュータプログラム製品であってもよい。コンピュータプログラム製品はプロセッサに本開示の各方面を実現させるためのコンピュータ読み取り可能なプログラム命令を有しているコンピュータ読み取り可能な記憶媒体を含んでもよい。
コンピュータ読み取り可能な記憶媒体は命令実行装置により使用される命令を保存および記憶可能な有形装置であってもよい。コンピュータ読み取り可能な記憶媒体は例えば、電気記憶装置、磁気記憶装置、光記憶装置、電磁記憶装置、半導体記憶装置または上記の任意の適当な組み合わせであってもよいが、これらに限定されない。コンピュータ読み取り可能な記憶媒体のさらに具体的な例(非網羅的リスト)としては、携帯型コンピュータディスク、ハードディスク、ランダムアクセスメモリ(RAM)、読み取り専用メモリ(ROM)、消去可能プログラマブル読み取り専用メモリ(EPROMまたはフラッシュメモリ)、静的ランダムアクセスメモリ(SRAM)、携帯型コンパクトディスク読み取り専用メモリ(CD−ROM)、デジタル多用途ディスク(DVD)、メモリスティック、フロッピーディスク、例えば命令が記憶されているせん孔カードまたはスロット内突起構造のような機械的符号化装置、および上記の任意の適当な組み合わせを含む。ここで使用されるコンピュータ読み取り可能な記憶媒体は瞬時信号自体、例えば無線電波または他の自由に伝播される電磁波、導波路または他の伝送媒体を経由して伝播される電磁波(例えば、光ファイバーケーブルを通過するパルス光)、または電線を経由して伝送される電気信号と解釈されるものではない。
ここで記述したコンピュータ読み取り可能なプログラム命令はコンピュータ読み取り可能な記憶媒体から各計算/処理機器にダウンロードされてもよいし、またはネットワーク、例えばインターネット、ローカルエリアネットワーク、広域ネットワークおよび/または無線ネットワークによって外部のコンピュータまたは外部記憶装置にダウンロードされてもよい。ネットワークは銅伝送ケーブル、光ファイバー伝送、無線伝送、ルーター、ファイアウォール、交換機、ゲートウェイコンピュータおよび/またはエッジサーバを含んでもよい。各計算/処理機器内のネットワークアダプタカードまたはネットワークインタフェースはネットワークからコンピュータ読み取り可能なプログラム命令を受信し、該コンピュータ読み取り可能なプログラム命令を転送し、各計算/処理機器内のコンピュータ読み取り可能な記憶媒体に記憶させる。
本開示の動作を実行するためのコンピュータプログラム命令はアセンブラ命令、命令セットアーキテクチャ(ISA)命令、機械語命令、機械依存命令、マイクロコード、ファームウェア命令、状態設定データ、またはSmalltalk、C++などのオブジェクト指向プログラミング言語、および「C」言語または類似するプログラミング言語などの一般的な手続き型プログラミング言語を含む一つ以上のプログラミング言語の任意の組み合わせで書かれたソースコードまたは目標コードであってもよい。コンピュータ読み取り可能なプログラム命令は、完全にユーザのコンピュータにおいて実行されてもよく、部分的にユーザのコンピュータにおいて実行されてもよく、スタンドアロンソフトウェアパッケージとして実行されてもよく、部分的にユーザのコンピュータにおいてかつ部分的にリモートコンピュータにおいて実行されてもよく、または完全にリモートコンピュータもしくはサーバにおいて実行されてもよい。リモートコンピュータに関与する場合、リモートコンピュータは、ローカルエリアネットワーク(LAN)または広域ネットワーク(WAN)を含む任意の種類のネットワークを経由してユーザのコンピュータに接続されてもよく、または、(例えばインターネットサービスプロバイダを利用してインターネットを経由して)外部コンピュータに接続されてもよい。いくつかの実施例では、コンピュータ読み取り可能なプログラム命令の状態情報を利用して、例えばプログラマブル論理回路、フィールドプログラマブルゲートアレイ(FPGA)またはプログラマブル論理アレイ(PLA)などの電子回路をパーソナライズし、該電子回路によりコンピュータ読み取り可能なプログラム命令を実行することにより、本開示の各方面を実現するようにしてもよい。
ここで本開示の実施例に係る方法、装置(システム)およびコンピュータプログラム製品のフローチャートおよび/またはブロック図を参照しながら本開示の各方面を説明したが、フローチャートおよび/またはブロック図の各ブロックおよびフローチャートおよび/またはブロック図の各ブロックの組み合わせは、いずれもコンピュータ読み取り可能なプログラム命令によって実現できることが理解すべきである。
これらのコンピュータ読み取り可能なプログラム命令は、汎用コンピュータ、専用コンピュータまたは他のプログラマブルデータ処理装置のプロセッサへ提供されて、これらの命令がコンピュータまたは他のプログラマブルデータ処理装置のプロセッサによって実行されると、フローチャートおよび/またはブロック図の一つ以上のブロックにおいて指定された機能/動作を実現するように機械を製造してもよい。また、これらのコンピュータ読み取り可能なプログラム命令は、コンピュータ読み取り可能な記憶媒体に記憶し、コンピュータ、プログラマブルデータ処理装置および/または他の機器を特定の方式で動作させるようにしてもよい。命令を記憶しているコンピュータ読み取り可能な記憶媒体には、フローチャートおよび/またはブロック図の一つ以上のブロックにおいて指定された機能/動作の各方面を実現するための命令を有する製品を含む。
コンピュータ読み取り可能なプログラムはコンピュータ、他のプログラマブルデータ処理装置、または他の機器にロードし、コンピュータ、他のプログラマブルデータ処理装置または他の機器において一連の動作ステップを実行させることにより、コンピュータにより実現されるプロセスを生成し、コンピュータ、他のプログラマブルデータ処理装置、または他の機器において実行される命令によりフローチャートおよび/またはブロック図の一つ以上のブロックにおいて指定された機能/動作を実現する。
図面のうちフローチャートおよびブロック図は本開示の複数の実施例に係るシステム、方法およびコンピュータプログラム製品の実現可能なシステムアーキテクチャ、機能および動作を示す。この点では、フローチャートまたはブロック図における各ブロックは一つのモジュール、プログラムセグメントまたは命令の一部分を代表することができ、前記モジュール、プログラムセグメントまたは命令の一部分は指定された論理機能を実現するための一つ以上の実行可能命令を含む。いくつかの代替としての実現形態では、ブロックに表記される機能は図面に付した順序と異なって実現してもよい。例えば、二つの連続的なブロックは実質的に同時に実行してもよく、また、係る機能によって、逆な順序で実行してもよい場合がある。なお、ブロック図および/またはフローチャートにおける各ブロック、およびブロック図および/またはフローチャートにおけるブロックの組み合わせは、指定される機能または動作を実行するハードウェアに基づく専用システムによって実現してもよいし、または専用ハードウェアとコンピュータ命令との組み合わせによって実現してもよいことに注意すべきである。
以上、本開示の各実施例を記述したが、上記説明は例示的なものに過ぎず、網羅的なものではなく、かつ披露された各実施例に限定されるものでもない。当業者にとって、説明された各実施例の範囲および精神から逸脱することなく、様々な修正および変更が自明である。本明細書に選ばれた用語は、各実施例の原理、実際の適用または市場における技術への技術的改善を好適に解釈するか、または他の当業者に本文に披露された各実施例を理解させるためのものである。