(57)【特許請求の範囲】
【請求項１】
画像点群シーケンスを取得するステップであって、上記画像点群シーケンスは少なくとも一組の同時刻に取り込まれた初期画像と点群データを含み、初期画像は無人運転車両に取り付けられたカメラにより取り込まれ、点群データは無人運転車両に取り付けられたレーダにより取り込まれる、ステップと、
上記画像点群シーケンスに基づいて上記無人運転車両の実走行軌跡を確定するステップと、
上記実走行軌跡における、上記画像点群シーケンスの各組の画像点群における初期画像に対応する位置点を確定し、上記画像点群シーケンスに対応する位置点シーケンスを得るステップと、
上記位置点シーケンスにおける位置点について、該位置点において、上記初期画像に対応する目標点群データを取得するステップと、
目標点群データと上記画像点群シーケンスにおける対応する初期画像とをマッチングして、上記カメラの補正パラメータを確定するステップと、
を含む、カメラをキャリブレーションするための方法。
【請求項２】
上記画像点群シーケンスは、
無人運転車両が直線に沿って等速で走行し、無人運転車両に取り付けられた上記カメラにより設定時間おきに画像を取り込み、無人運転車両に取り付けられたレーダにより上記設定時間おきに点群データを取り込むように取得される、請求項１に記載の方法。
【請求項３】
上記画像点群シーケンスに基づいて上記無人運転車両の実走行軌跡を確定するステップは、
上記画像点群シーケンスにおける各組の画像点群に含まれる点群データに基づいて、上記無人運転車両の３次元空間におけるマーク点を確定し、上記点群データシーケンスに対応するマーク点シーケンスを得るステップと、
上記マーク点シーケンスにおけるマーク点の順位に基づいてマーク点をフィッティングし、上記無人運転車両の実走行軌跡を得るステップと、を含む、請求項１に記載の方法。
【請求項４】
上記画像点群シーケンスにおける各組の画像点群に含まれる点群データに基づいて、上記無人運転車両の３次元空間におけるマーク点を確定するステップは、
点群データの３次元空間における角度情報を確定し、上記角度情報に基づいて上記無人運転車両の３次元空間におけるマーク点を確定するステップを含む、請求項３に記載の方法。
【請求項５】
上記実走行軌跡における、上記画像点群シーケンスの各組の画像点群における初期画像に対応する位置点を確定するステップは、
上記マーク点を対応する各組の画像点群における初期画像の位置点に設定するステップを含む、請求項３に記載の方法。
【請求項６】
上記位置点において上記初期画像に対応する目標点群データを取得するステップは、
３次元空間の上記マーク点において目標点群データを取得するステップを含む、請求項５に記載の方法。
【請求項７】
上記目標点群データと上記画像点群シーケンスにおける対応する初期画像とをマッチングして、上記カメラの補正パラメータを確定するステップは、
初期画像から特徴点集合を取得するステップと、
上記目標点群データにおける上記特徴点集合に対応する少なくとも１つの点群特徴データを確定するステップと、
上記少なくとも１つの点群特徴データの間の位置関係及び角度関係に基づいて、上記カメラの補正パラメータを確定するステップと、を含む、請求項１〜６のいずれか１項に記載の方法。
【請求項８】
画像点群シーケンスを取得するように構成される画像点群シーケンス取得ユニットであって、上記画像点群シーケンスは少なくとも一組の同時刻に取り込まれた初期画像と点群データを含み、初期画像は無人運転車両に取り付けられたカメラにより取り込まれ、点群データは無人運転車両に取り付けられたレーダにより取り込まれる、画像点群シーケンス取得ユニットと、
上記画像点群シーケンスにおける各組の画像点群に対応する上記初期画像の目標点群データを確定するように構成される目標点群データ確定ユニットと、
目標点群データと上記画像点群シーケンスにおける対応する初期画像とをマッチングして、上記カメラの補正パラメータを確定するように構成される補正パラメータ取得ユニットと、を備え、
上記目標点群データ確定ユニットは、
上記画像点群シーケンスに基づいて上記無人運転車両の実走行軌跡を確定するように構成される実走行軌跡確定サブユニットと、
上記実走行軌跡における、上記画像点群シーケンスの各組の画像点群における初期画像に対応する位置点を確定し、上記画像点群シーケンスに対応する位置点シーケンスを得るように構成される位置点確定サブユニットと、
上記位置点シーケンスにおける位置点について、該位置点において上記初期画像に対応する目標点群データを取得するように構成される目標点群データ取得サブユニットと、を備える、カメラをキャリブレーションするための装置。
【請求項９】
上記画像点群シーケンスは、
無人運転車両が直線に沿って等速で走行し、無人運転車両に取り付けられた上記カメラにより設定時間おきに画像を取り込み、無人運転車両に取り付けられたレーダにより上記設定時間おきに点群データを取り込むように取得される、請求項８に記載の装置。
【請求項１０】
上記実走行軌跡確定サブユニットは、
上記画像点群シーケンスにおける各組の画像点群に含まれる点群データに基づいて、上記無人運転車両の３次元空間におけるマーク点を確定し、上記点群データシーケンスに対応するマーク点シーケンスを得るように構成されるマーク点確定モジュールと、
上記マーク点シーケンスにおけるマーク点の順位に基づいてマーク点をフィッティングし、上記無人運転車両の実走行軌跡を得るように構成される実走行軌跡フィッティングモジュールと、を備える、請求項８に記載の装置。
【請求項１１】
上記マーク点確定モジュールは、
点群データの３次元空間における角度情報を確定し、上記角度情報に基づいて上記無人運転車両の３次元空間におけるマーク点を確定するように構成されるマーク点確定サブモジュールを備える、請求項１０に記載の装置。
【請求項１２】
上記位置点確定サブユニットは、
上記マーク点を対応する各組の画像点群における初期画像の位置点に設定するように構成される位置点設定モジュールを備える、請求項１０に記載の装置。
【請求項１３】
上記目標点群データ取得サブユニットは、
３次元空間の上記マーク点において目標点群データを取得するように構成される目標点群データ取得モジュールを備える、請求項１２に記載の装置。
【請求項１４】
上記補正パラメータ取得ユニットは、
初期画像から特徴点集合を取得するように構成される特徴点集合取得サブユニットと、
上記目標点群データにおける上記特徴点集合に対応する少なくとも１つの点群特徴データを確定するように構成される点群特徴データ確定サブユニットと、
上記少なくとも１つの点群特徴データの間の位置関係及び角度関係に基づいて、上記カメラの補正パラメータを確定するように構成される補正パラメータ確定サブユニットと、を備える、請求項８〜１３のいずれか１項に記載の装置。
【請求項１５】
１つまたは複数のプロセッサと、
１つまたは複数のコンピュータプログラムが格納されているメモリと、
を備える電子機器であって、
上記１つまたは複数のコンピュータプログラムが、上記１つまたは複数のプロセッサに、請求項１〜７のいずれか１項に記載の方法を実行させる電子機器。
【請求項１６】
コンピュータプログラムが格納されているコンピュータ可読媒体であって、
該コンピュータプログラムが、プロセッサに請求項１〜７のいずれか１項に記載の方法を実行させる、コンピュータ可読媒体。
【請求項１７】
コンピュータプログラムであって、
上記コンピュータプログラムが、プロセッサに請求項１〜７のいずれか１項に記載の方法を実行させるコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示の実施例はデータ処理技術分野に関し、具体的にはカメラをキャリブレーションするための方法及び装置に関する。
【背景技術】
【０００２】
車両が人々の生活空間を大きく拡張しており、人々の日常生活及び国民経済において重要な役割を有し、自動車産業は既に中国の国民経済の支柱産業となっている。
【０００３】
技術の進歩に伴い、現在の車両に複数種の電子機器が搭載され、車両の各種運転状態及び環境情報へのモニタリングが実現され、車両の安全性が向上された。
【発明の概要】
【課題を解決するための手段】
【０００４】
本開示の実施例はカメラをキャリブレーションするための方法及び装置を提供する。
【０００５】
第１態様において、本開示の実施例は、カメラをキャリブレーションするための方法を提供し、該方法は、画像点群シーケンスを取得するステップであって、上記画像点群シーケンスは少なくとも一組の同時刻に取り込まれた初期画像と点群データを含み、初期画像は無人運転車両に取り付けられたカメラにより取り込まれ、点群データは無人運転車両に取り付けられたレーダにより取り込まれる、ステップと、上記画像点群シーケンスにおける各組の画像点群に対応する上記初期画像の目標点群データを確定するステップと、目標点群データと上記画像点群シーケンスにおける対応する初期画像とをマッチングして、上記カメラの補正パラメータを確定するステップと、を含む。
【０００６】
いくつかの実施例において、上記画像点群シーケンスは、無人運転車両が直線に沿って等速で走行し、無人運転車両に取り付けられた上記カメラにより設定時間おきに画像を取り込み、無人運転車両に取り付けられたレーダにより上記設定時間おきに点群データを取り込むように取得される。
【０００７】
いくつかの実施例において、上記画像点群シーケンスにおける各組の画像点群に対応する上記初期画像の目標点群データを確定するステップは、上記画像点群シーケンスに基づいて上記無人運転車両の実走行軌跡を確定するステップと、上記実走行軌跡における、上記画像点群シーケンスの各組の画像点群における初期画像に対応する位置点を確定し、上記画像点群シーケンスに対応する位置点シーケンスを得るステップと、上記位置点シーケンスにおける位置点について、該位置点において上記初期画像に対応する目標点群データを取得するステップと、を含む。
【０００８】
いくつかの実施例において、上記画像点群シーケンスに基づいて上記無人運転車両の実走行軌跡を確定するステップは、上記画像点群シーケンスにおける各組の画像点群に含まれる点群データに基づいて、上記無人運転車両の３次元空間におけるマーク点を確定し、上記点群データシーケンスに対応するマーク点シーケンスを得るステップと、上記マーク点シーケンスにおけるマーク点の順位に基づいてマーク点をフィッティングし、上記無人運転車両の実走行軌跡を得るステップと、を含む。
【０００９】
いくつかの実施例において、上記画像点群シーケンスにおける各組の画像点群に含まれる点群データに基づいて、上記無人運転車両の３次元空間におけるマーク点を確定するステップは、点群データの３次元空間における角度情報を確定し、上記角度情報に基づいて上記無人運転車両の３次元空間におけるマーク点を確定するステップを含む。
【００１０】
いくつかの実施例において、上記実走行軌跡における、上記画像点群シーケンスの各組の画像点群における初期画像に対応する位置点を確定するステップは、上記マーク点を対応する各組の画像点群における初期画像の位置点に設定するステップを含む。
【００１１】
いくつかの実施例において、該位置点において上記初期画像に対応する目標点群データを取得するステップは、３次元空間の上記マーク点において目標点群データを取得するステップを含む。
【００１２】
いくつかの実施例において、目標点群データと上記画像点群シーケンスにおける対応する初期画像とをマッチングして、上記カメラの補正パラメータを確定するステップは、初期画像から特徴点集合を取得するステップと、上記目標点群データにおける上記特徴点集合に対応する少なくとも１つの点群特徴データを確定するステップと、上記少なくとも１つの点群特徴データの間の位置関係及び角度関係に基づいて、上記カメラの補正パラメータを確定するステップと、を含む。
【００１３】
第２態様において、本開示の実施例はカメラをキャリブレーションするための装置を提供し、該装置は、画像点群シーケンスを取得するように構成される画像点群シーケンス取得ユニットであって、上記画像点群シーケンスは少なくとも一組の同時刻に取り込まれた初期画像と点群データを含み、初期画像は無人運転車両に取り付けられたカメラにより取り込まれ、点群データは無人運転車両に取り付けられたレーダにより取り込まれる、画像点群シーケンス取得ユニットと、上記画像点群シーケンスにおける各組の画像点群に対応する上記初期画像の目標点群データを確定するように構成される目標点群データ確定ユニットと、目標点群データと上記画像点群シーケンスにおける対応する初期画像とをマッチングして、上記カメラの補正パラメータを確定するように構成される補正パラメータ取得ユニットと、を備える。
【００１４】
いくつかの実施例において、上記画像点群シーケンスは、無人運転車両が直線に沿って等速で走行し、無人運転車両に取り付けられた上記カメラにより設定時間おきに画像を取り込み、無人運転車両に取り付けられたレーダにより上記設定時間おきに点群データを取り込むように取得される。
【００１５】
いくつかの実施例において、上記目標点群データ確定ユニットは、上記画像点群シーケンスに基づいて上記無人運転車両の実走行軌跡を確定するように構成される実走行軌跡確定サブユニットと、上記実走行軌跡における、上記画像点群シーケンスの各組の画像点群における初期画像に対応する位置点を確定し、上記画像点群シーケンスに対応する位置点シーケンスを得るように構成される位置点確定サブユニットと、上記位置点シーケンスにおける位置点について、該位置点において上記初期画像に対応する目標点群データを取得するように構成される目標点群データ取得サブユニットと、を備える。
【００１６】
いくつかの実施例において、上記実走行軌跡確定サブユニットは、上記画像点群シーケンスにおける各組の画像点群に含まれる点群データに基づいて、上記無人運転車両の３次元空間におけるマーク点を確定し、上記点群データシーケンスに対応するマーク点シーケンスを得るように構成されるマーク点確定モジュールと、上記マーク点シーケンスにおけるマーク点の順位に基づいてマーク点をフィッティングし、上記無人運転車両の実走行軌跡を得るように構成される実走行軌跡フィッティングモジュールと、を備える。
【００１７】
いくつかの実施例において、上記マーク点確定モジュールは、点群データの３次元空間における角度情報を確定し、上記角度情報に基づいて上記無人運転車両の３次元空間におけるマーク点を確定するように構成されるマーク点確定サブモジュールを備える。
【００１８】
いくつかの実施例において、上記位置点確定サブユニットは、上記マーク点を対応する各組の画像点群における初期画像の位置点に設定するように構成される位置点設定モジュールを備える。
【００１９】
いくつかの実施例において、上記目標点群データ取得サブユニットは、３次元空間の上記マーク点において目標点群データを取得するように構成される目標点群データ取得モジュールを備える。
【００２０】
いくつかの実施例では、上記補正パラメータ取得ユニットは、初期画像から特徴点集合を取得するように構成される特徴点集合取得サブユニットと、上記目標点群データにおける上記特徴点集合に対応する少なくとも１つの点群特徴データを確定するように構成される点群特徴データ確定サブユニットと、上記少なくとも１つの点群特徴データの間の位置関係及び角度関係に基づいて、上記カメラの補正パラメータを確定するように構成される補正パラメータ確定サブユニットと、を備える。
【００２１】
第３態様において、本開示の実施例は、１つまたは複数のプロセッサと、１つまたは複数のプログラムが格納されているメモリと、を備える電子機器であって、上記１つまたは複数のプログラムが上記１つまたは複数のプロセッサにより実行されると、上記１つまたは複数のプロセッサに、上記第１態様のカメラをキャリブレーションするための方法を実行させる電子機器を提供する。
【００２２】
第４態様において、本開示の実施例は、コンピュータプログラムが格納されているコンピュータ可読媒体であって、該プログラムがプロセッサにより実行されると、上記第１態様のカメラをキャリブレーションするための方法が実行されるコンピュータ可読媒体を提供する。
【００２３】
本開示の実施例が提供するカメラをキャリブレーションするための方法及び装置は、まず画像点群シーケンスを取得し、続いて上記画像点群シーケンスにおける各組の画像点群に対応する上記初期画像の目標点群データを確定し、最後に目標点群データと上記画像点群シーケンスにおける対応する初期画像とをマッチングして、上記カメラの補正パラメータを確定する。本出願は点群データによってカメラに対するキャリブレーションを実現することができる。
【００２４】
本開示の他の特徴、目的および利点は、以下の図面を参照して行われる非限定的な実施例についての詳細な説明から明らかになるであろう。
【図面の簡単な説明】
【００２５】
【図１】本開示の一実施例が適用可能な例示的なシステムアーキテクチャを示す図である。
【図２】本開示に係るカメラをキャリブレーションするための方法の一実施例を示すフローチャートである。
【図３】本開示に係るカメラをキャリブレーションするための方法の一適用シーンを示す概略図である。
【図４】本開示に係るカメラをキャリブレーションするための方法の他の実施例を示すフローチャートである。
【図５】本開示に係るカメラをキャリブレーションするための装置の一実施例を示す概略構成図である。
【図６】本開示の実施例を実現するために好適な電子機器の概略構成図である。
【発明を実施するための形態】
【００２６】
以下、図面と実施例を参照しながら本開示をさらに詳細に説明する。ここに説明する具体的な実施例は関連発明を解釈するためのものであり、本開示を限定するものではないことを理解すべきである。なお、説明の便宜上、図面中に関連発明に関する部分のみを示す。
【００２７】
なお、矛盾しない前提下、本開示における実施例及び実施例における特徴は互いに組み合わせることができる。次に、図面を参照しながら実施例を合わせて本開示を詳しく説明する。
【００２８】
図１は、本開示の実施例に係るカメラをキャリブレーションするための方法またはカメラをキャリブレーションするための装置が適用可能な例示的なシステムアーキテクチャ１００を示している。
【００２９】
図１に示すように、システムアーキテクチャ１００は、無人運転車両１０１、１０２、１０３、ネットワーク１０４及びサーバ１０５を含むことができる。ネットワーク１０４は、無人運転車両１０１、１０２、１０３とサーバ１０５との間で通信リンクを提供するための媒体である。ネットワーク１０４には、有線、無線通信リンクまたは光ファイバケーブル等の各種の接続形態が含まれていてもよい。
【００３０】
無人運転車両１０１、１０２、１０３は、カメラ、レーダ等の複数のデータ収集ユニット及びデータ処理ユニットを有する各種の車両であってもよく、電気自動車、ハイブリッド車、内燃機関自動車等が挙げられるが、これらに限定されるものではない。
【００３１】
サーバ１０５は、無人運転車両１０１、１０２、１０３から送信された画像点群シーケンスをサポートするサーバなど、様々なサービスを提供するサーバであってもよい。サーバは受信した画像点群シーケンス等のデータに対して分析等の処理を行い、且つ処理結果（例えば、無人運転車両１０１、１０２、１０３におけるカメラの補正パラメータ）を無人運転車両にフィードバックすることができる。
【００３２】
なお、本開示の実施例により提供される、カメラをキャリブレーションするための方法は、一般的にサーバ１０５により実行され、それに応じて、カメラをキャリブレーションするための装置は一般的にサーバ１０５に設けられる。
【００３３】
なお、サーバはハードウェアであってもよく、ソフトウェアであってもよい。サーバがハードウェアである場合、複数のサーバで構成される分散型サーバクラスタとして実現することができ、単一のサーバとして実現することもできる。サーバがソフトウェアである場合、複数のソフトウェア又はソフトウェアモジュール（例えば、分散サービスを提供するために用いられる）として実現することができ、単一のソフトウェア又はソフトウェアモジュールとして実現することもでき、ここでは特に限定しない。
【００３４】
なお、図１の無人運転車両、ネットワーク、サーバの数は例示的なものである。実現のニーズに応じて、任意の数の無人運転車両、ネットワーク及びサーバを有することができる。
【００３５】
次に、本開示のカメラをキャリブレーションするための方法の一実施例のフロー２００を示す図２を参照されたい。該カメラをキャリブレーションするための方法は、ステップ２０１〜２０３を含む。
【００３６】
ステップ２０１：画像点群シーケンスを取得する。
【００３７】
本実施例では、カメラをキャリブレーションするための方法の実行主体（例えば、図１に示すサーバ１０５）は、有線接続方式又は無線接続方式によって無人運転車両１０１、１０２、１０３から送信された画像点群シーケンスを受信することができる。ここで、無人運転車両１０１、１０２、１０３に、画像を取得するためのカメラ及び点群データを取得するためのレーダ等のデバイスが取り付けられている。なお、上記無線接続方式には、３Ｇ／４Ｇ接続、ＷｉＦｉ接続、ブルートゥース（登録商標）接続、ＷｉＭＡＸ接続、Ｚｉｇｂｅｅ接続、ＵＷＢ（Ｕｌｔｒａ  Ｗｉｄｅｂａｎｄ）接続、及びその他の現在既知又は将来に開発される無線接続方式が含まれるが、これらに限定されない。
【００３８】
従来の車両には、通常、複数種類のセンサが搭載されている。センサを車両に搭載した後、センサの各種のパラメータをキャリブレーションするために、一般的に特定の場所に移動する必要があり、車両の車載カメラはその一つである。カメラをキャリブレーションする際に、車両は特定の場所における複数の特定の位置まで走行する必要があり、続いてカメラで画像を撮影し又は二次元コードを走査するなどの方式により車両の現在位置を取得する。車両の現場における実際の位置を踏まえ、カメラが二次元コードを撮影又は走査する時に取得した画像と画像ライブラリにおける基準画像との差を確定することができ、さらにカメラの補正すべきパラメータを確定する。しかしながら、毎年多数の車種や同一車種の異なる車両は、車載のカメラを補正する必要があるが、対応する特定の場所が限られている。
【００３９】
本願の実行主体は、まず画像点群シーケンスを取得することができる。ここで、上記画像点群シーケンスは、少なくとも一組の同時刻に取り込まれた初期画像と点群データを含むことができる。初期画像は、無人運転車両に搭載されたカメラによって取り込まれる。点群データは、無人運転車両に搭載されたレーダによって取り込まれる。すなわち、本願は、無人運転車両上のカメラをキャリブレーションするために用いられる。
【００４０】
本実施例のいくつかの選択可能な実現方式において、上記画像点群シーケンスは、無人運転車両が直線に沿って等速で走行し、無人運転車両に取り付けられた上記カメラにより設定時間おきに画像を取り込み、無人運転車両に取り付けられたレーダにより上記設定時間おきに点群データを取り込むように取得される。
【００４１】
無人運転を実現するために、無人運転車両１０１、１０２、１０３に、いずれも点群データを取得することができるレーダ等のデバイスが取り付けられているのが通常である。点群データは、一般的には十分な精度を有しているため、カメラのパラメータの補正に利用することができる。具体的には、無人運転車両１０１、１０２、１０３は道路において直線的に等速で走行することができる。この過程において、無人運転車両１０１、１０２、１０３上のレーダ及びカメラは設定時間おきに点群データ及び画像を同時にそれぞれ取り込むことができる。すなわち、取り込まれた点群データと画像とはマッチング関係にある。
【００４２】
ステップ２０２：画像点群シーケンスにおける各組の画像点群に対応する初期画像の目標点群データを確定する。
【００４３】
点群データと画像がマッチング関係を有するため、カメラのパラメータを補正する必要がある。そのため、実行主体は点群データによって初期画像に対応する目標点群データを検索することができる。ここで、目標点群データは初期画像を補正するための点群データであってもよい。
【００４４】
本実施例のいくつかの選択可能な実現形態において、上記画像点群シーケンスにおける各組の画像点群に対応する上記初期画像の目標点群データを確定するステップは、次の第１ステップ〜第３ステップを含むことができる。
【００４５】
第１ステップ：上記画像点群シーケンスに基づいて上記無人運転車両の実走行軌跡を確定する。
【００４６】
実行主体は、画像点群シーケンスを取得した後、画像点群シーケンスに含まれる画像点群と従来の点群データとをマッチングして、無人運転車両１０１、１０２、１０３の実走行軌跡を確定することができる。
【００４７】
第２ステップ：上記実走行軌跡における、上記画像点群シーケンスの各組の画像点群における初期画像に対応する位置点を確定し、上記画像点群シーケンスに対応する位置点シーケンスを得る。
【００４８】
点群データと画像はマッチング関係を有し、カメラのパラメータを補正する必要がある。そのため、実走行軌跡において各初期画像を取り込む時に無人運転車両１０１、１０２、１０３が位置する位置、すなわち位置点を確定する必要がある。
【００４９】
第３ステップ：上記位置点シーケンスにおける位置点について、該位置点において上記初期画像に対応する目標点群データを取得する。
【００５０】
位置点が確定された後、実行主体は３次元空間の該位置点に点群データを取得することができ、該点群データは初期画像に対応する目標点群データである。
【００５１】
本実施例のいくつかの選択可能な実現形態において、上記画像点群シーケンスに基づいて上記無人運転車両の実走行軌跡を確定するステップは、次の第１ステップ〜第２ステップを含むことができる。
【００５２】
第１ステップ：上記画像点群シーケンスにおける各組の画像点群に含まれる点群データに基づいて、上記無人運転車両の３次元空間におけるマーク点を確定し、上記点群データシーケンスに対応するマーク点シーケンスを得る。
【００５３】
点群データは、３次元データであり、３次元データの角度情報を含んでもよい。したがって、実行主体は、各組の画像点群に含まれる点群データを３次元空間にマークし、点群データにどのような物体が含まれるかを判定し、さらに無人運転車両の３次元空間におけるマーク点を確定することができる。
【００５４】
第２ステップ：上記マーク点シーケンスにおけるマーク点の順位に基づいてマーク点をフィッティングし、上記無人運転車両の実走行軌跡を得る。
【００５５】
マーク点が得られた後、実行主体はフィッティング等の方式によりマーク点を連結して一本の線を得ることができ、該線は無人運転車両の実走行軌跡に対応する。
【００５６】
本実施例のいくつかの選択可能な実現形態において、上記画像点群シーケンスにおける各組の画像点群に含まれる点群データに基づいて、上記無人運転車両の３次元空間におけるマーク点を確定するステップは、点群データの３次元空間における角度情報を確定し、上記角度情報に基づいて上記無人運転車両の３次元空間におけるマーク点を確定することを含んでもよい。
【００５７】
点群データには角度情報が含まれてもよい。角度情報を合わせて、実行主体は点群データを取得する３次元空間点を確定することができる。該３次元空間点は、無人運転車両の３次元空間におけるマーク点である。
【００５８】
本実施例のいくつかの選択可能な実現形態において、上記実走行軌跡における、上記画像点群シーケンスの各組の画像点群における初期画像に対応する位置点を確定するステップは、上記マーク点を対応する各組の画像点群における初期画像の位置点に設定するステップを含んでもよい。
【００５９】
点群データと画像はマッチング関係を有し、マーク点は点群データに対応する３次元空間における無人運転車両の位置である。これにより、実行主体は、マーク点を、対応する各組の画像点群における初期画像の位置点に直接設定することができる。
【００６０】
本実施例のいくつかの選択可能な実現形態において、上記位置点において上記初期画像に対応する目標点群データを取得するステップは、３次元空間の上記マーク点において目標点群データを取得するステップを含んでもよい。
【００６１】
確定された位置点は実走行環境に対応しており、マーク点は位置点の３次元空間における座標表示と考えることができる。実行主体はマーク点で点群データを取り込むことができ、該点群データは初期画像に対応する目標点群データである。
【００６２】
ステップ２０３：目標点群データと画像点群シーケンスにおける対応する初期画像とをマッチングして、カメラの補正パラメータを確定する。
【００６３】
目標点群データは、カメラが対応する初期画像が存在する位置で撮影すべき画像に対応する。実行主体は目標点群データと初期画像とをマッチングして、上記カメラの補正パラメータを確定することができる。パラメータを補正することによりカメラをキャリブレーションすることができる。
【００６４】
本実施例のいくつかの選択可能な実現形態において、上記目標点群データと上記画像点群シーケンスにおける対応する初期画像とをマッチングして、上記カメラの補正パラメータを確定するステップは、次の第１ステップ〜第３ステップを含んでもよい。
【００６５】
第１ステップ：初期画像から特徴点集合を取得する。
【００６６】
カメラの補正すべきパラメータを確定するために、実行主体は初期画像から特徴点を抽出し、特徴点を得ることができる。特徴点は、初期画像において、建物の輪郭や路面の境界線などをマークアップする点であってもよい。初期画像内の異なる画像内容について、特徴点は他の種類の点であってもよく、ここでは説明を省略する。
【００６７】
第２ステップ：上記目標点群データにおける上記特徴点集合に対応する少なくとも１つの点群特徴データを確定する。
【００６８】
目標点群データは初期画像に対応しており、すなわち目標点群データには初期画像の画像内容に対応する点群データが含まれている。実行主体は特徴マッチング等の方式により、上記目標点群データのうち、上記特徴点集合に対応する少なくとも１つの点群特徴データを確定することができる。
【００６９】
第３ステップ：上記少なくとも１つの点群特徴データの間の位置関係及び角度関係に基づいて、上記カメラの補正パラメータを確定する。
【００７０】
目標点群データは、カメラが対応する初期画像の所在位置で撮影すべき画像である。すなわち、目標点群データは、カメラの各パラメータがキャリブレーションされた場合に取得された画像に対応すると考えられる。そのため、実行主体は、少なくとも１つの点群特徴データの間の位置関係及び角度関係に基づいて、上記カメラの補正パラメータを確定することができる。
【００７１】
次に、本実施例に係るカメラをキャリブレーションするための方法の適用シーンの一例を示す概略図である図３を参照されたい。図３の適用シーンにおいて、無人運転車両１０１は走行中に画像点群シーケンスを取得し、且つ画像点群シーケンスをネットワーク１０４を介してサーバ１０５に送信する。ここで、画像点群は道路わきの木とバスケットボールコートの画像と点群データを含む。サーバ１０５は画像点群シーケンスを受信した後、画像点群シーケンスにおける各組の画像点群に対応する初期画像の目標点群データを確定する。次に、目標点群データと画像点群シーケンスにおける対応する初期画像とをマッチングして、カメラの補正パラメータを確定する。最後に、サーバ１０５はカメラの補正パラメータを無人運転車両１０１に送信することができ、無人運転車両１０１はカメラのパラメータを補正し、カメラに対するキャリブレーションが実現される。
【００７２】
本開示の上記実施例により提供された方法は、まず画像点群シーケンスを取得する。次に、上記画像点群シーケンスにおける各組の画像点群に対応する上記初期画像の目標点群データを確定する。最後に、目標点群データと上記画像点群シーケンスにおける対応する初期画像とをマッチングして、上記カメラの補正パラメータを確定する。本出願は、点群データによってカメラに対するキャリブレーションを実現することができる。
【００７３】
さらに、カメラをキャリブレーションするための方法の他の実施例のフロー４００が示される図４を参照されたい。該カメラをキャリブレーションするための方法のフロー４００は、次のステップ４０１〜４０４を含む。
【００７４】
ステップ４０１：画像点群シーケンスを取得する。
【００７５】
本実施例において、カメラをキャリブレーションするための方法の実行主体（例えば、図１に示すサーバ１０５）は、有線接続方式又は無線接続方式によって無人運転車両１０１、１０２、１０３から送信された画像点群シーケンスを受信することができる。
【００７６】
ステップ４０１の内容はステップ２０１の内容と同じであり、ここでは説明を省略する。
【００７７】
ステップ４０２：画像点群シーケンスにおける各組の画像点群に対応する初期画像の目標点群データを確定する。
【００７８】
ステップ４０２の内容はステップ２０２の内容と同じであり、ここでは説明を省略する。
【００７９】
ステップ４０３：目標点群データと画像点群シーケンスにおける対応する初期画像とをマッチングして、カメラの補正パラメータを確定する。
【００８０】
ステップ４０３の内容はステップ２０３の内容と同じであり、ここでは説明を省略する。
【００８１】
ステップ４０４：補正パラメータを車両に送信する。
【００８２】
補正パラメータが得られると、実行主体は、補正パラメータを車両に送信することができる。車両は補正パラメータを受信した後、カメラのプリセットパラメータを補正することができ、それによりカメラはレーダで取り込まれた点群データとマッチングする画像を取得することができる。
【００８３】
さらに図５を参照し、上記各図に示す方法に対する実装として、本開示はカメラをキャリブレーションするための装置の一実施例を提供し、該装置の実施例は図２に示す方法の実施例に対応しており、該装置は具体的に様々な電子機器に適用することができる。
【００８４】
図５に示すように、本実施例のカメラをキャリブレーションするための装置５００は、画像点群シーケンス取得ユニット５０１、目標点群データ確定ユニット５０２及び補正パラメータ取得ユニット５０３を備えることができる。ここで、画像点群シーケンス取得ユニット５０１は、画像点群シーケンスを取得するように構成され、上記画像点群シーケンスは少なくとも一組の同時刻に取り込まれた初期画像と点群データを含み、初期画像は無人運転車両に取り付けられたカメラによって取り込まれ、点群データは無人運転車両に取り付けられたレーダによって取り込まれる。目標点群データ確定ユニット５０２は、上記画像点群シーケンスにおける各組の画像点群に対応する上記初期画像の目標点群データを確定するように構成される。補正パラメータ取得ユニット５０３は、目標点群データと上記画像点群シーケンスにおける対応する初期画像とをマッチングして、上記カメラの補正パラメータを確定するように構成される。
【００８５】
本実施例のいくつかの選択可能な実現形態において、上記画像点群シーケンスは、無人運転車両が直線に沿って等速で走行し、無人運転車両に取り付けられた上記カメラにより設定時間おきに画像を取り込み、無人運転車両に取り付けられたレーダにより上記設定時間おきに点群データを取り込むように取得されてもよい。
【００８６】
本実施例のいくつかの選択可能な実現形態において、上記目標点群データ確定ユニット５０２は、実走行軌跡確定サブユニット（図示せず）、位置点確定サブユニット（図示せず）及び目標点群データ取得サブユニット（図示せず）を備えることができる。そのうち、実走行軌跡確定サブユニットは、上記画像点群シーケンスに基づいて上記無人運転車両の実走行軌跡を確定するように構成される。位置点確定サブユニットは、上記実走行軌跡における、上記画像点群シーケンスの各組の画像点群における初期画像に対応する位置点を確定し、上記画像点群シーケンスに対応する位置点シーケンスを得るように構成される。目標点群データ取得サブユニットは、上記位置点シーケンスにおける位置点について、該位置点において上記初期画像に対応する目標点群データを取得するように構成される。
【００８７】
本実施例のいくつかの選択可能な実現形態において、上記実走行軌跡確定サブユニットは、マーク点確定モジュール（図示せず）及び実走行軌跡フィッティングモジュール（図示せず）を備えることができる。そのうち、マーク点確定モジュールは、上記画像点群シーケンスにおける各組の画像点群に含まれる点群データに基づいて、上記無人運転車両の３次元空間におけるマーク点を確定し、上記点群データシーケンスに対応するマーク点シーケンスを得るように構成される。実走行軌跡フィッティングモジュールは、上記マーク点シーケンスにおけるマーク点の順位に基づいてマーク点をフィッティングし、上記無人運転車両の実走行軌跡を得るように構成される。
【００８８】
本実施例のいくつかの選択可能な実現形態において、上記マーク点確定モジュールは、点群データの３次元空間における角度情報を確定し、上記角度情報に基づいて上記無人運転車両の３次元空間におけるマーク点を確定するように構成されるマーク点確定サブモジュール（図示せず）を備えることができる。
【００８９】
本実施例のいくつかの任意の実現形態において、上記位置点確定サブユニットは、上記マーク点を対応する各組の画像点群における初期画像の位置点に設定するように構成される位置点設定モジュール（図示せず）を備えることができる。
【００９０】
本実施例のいくつかの選択可能な実現形態において、上記目標点群データ取得サブユニットは、３次元空間の上記マーク点において目標点群データを取得するように構成される目標点群データ取得モジュール（図示せず）を備えることができる。
【００９１】
本実施例のいくつかの選択可能な実現形態において、上記補正パラメータ取得ユニット５０３は、特徴点集合取得サブユニット（図示せず）、点群特徴データ確定サブユニット（図示せず）及び補正パラメータ確定サブユニット（図示せず）を備えることができる。ここで、特徴点集合取得サブユニットは、初期画像から特徴点集合を取得するように構成される。点群特徴データ確定サブユニットは、上記目標点群データにおける上記特徴点集合に対応する少なくとも１つの点群特徴データを確定するように構成される。補正パラメータ確定サブユニットは、上記少なくとも１つの点群特徴データの間の位置関係及び角度関係に基づいて、上記カメラの補正パラメータを確定するように構成される。
【００９２】
本実施例は、１つまたは複数のプロセッサと、１つまたは複数のプログラムが格納されているメモリと、を備える電子機器であって、上記１つまたは複数のプログラムが上記１つまたは複数のプロセッサにより実行されると、上記１つまたは複数のプロセッサに、上記のカメラをキャリブレーションするための方法を実行させる電子機器をさらに提供する。
【００９３】
本実施例は、コンピュータプログラムが格納されているコンピュータ可読媒体であって、該プログラムがプロセッサにより実行されると、上記のカメラをキャリブレーションするための方法が実行されるコンピュータ可読媒体をさらに提供する。
【００９４】
次に、本開示の実施例に係る電子機器（例えば、図１のサーバ１０５）を実現するために好適なコンピュータシステム６００の概略構成図を示す図６を参照されたい。なお、図６に示す電子機器はあくまでも一例であり、本開示の実施例の機能および使用範囲には如何なる制限も与えない。
【００９５】
図６に示すように、電子機器６００は、読み取り専用メモリ（ＲＯＭ）６０２に格納されたプログラム、または記憶装置６０８からランダムアクセスメモリ（ＲＡＭ）６０３にロードされたプログラムに従って様々な適切な動作および処理を実行する処理装置（例えば、中央処理装置、グラフィックプロセッサ等）６０１を備えることができる。ＲＡＭ６０３にはまた、電子機器６００の動作に必要な各種のプログラムやデータが格納されている。処理装置６０１、ＲＯＭ６０２、およびＲＡＭ６０３は、バス６０４を介して相互に接続されている。バス６０４にはまた、入力／出力（Ｉ／Ｏ）インタフェース６０５が接続されている。
【００９６】
通常、Ｉ／Ｏインタフェース６０５には、例えば、タッチパネル、タッチパッド、キーボード、マウス、カメラ、マイクロホン、加速度計、ジャイロスコープなどを含む入力装置６０６、液晶ディスプレイ（ＬＣＤ）、スピーカ、バイブレータなどを含む出力装置６０７、磁気テープ、ハードディスクなどを含む記憶装置６０８並びに通信装置６０９が接続されている。通信装置６０９は、電子機器６００と他の機器との間で無線または有線による通信を行い、データの授受を可能にする。なお、図６では、様々な装置を有する電子機器６００を示しているが、必ずしも全ての装置を実装または備える必要はない。また、より多くの装置を実装してもよいし、より少ない装置を実装してもよい。図６に示す各ブロックは１つの装置を代表してもよいし、必要に応じて複数の装置を代表してもよい。
【００９７】
特に、本開示の実施例によれば、上記のフローチャートを参照しながら記載されたプロセスは、コンピュータのソフトウェアプログラムとして実現されてもよい。例えば、本開示の実施例は、コンピュータ可読媒体に具現化されるコンピュータプログラムを含むコンピュータプログラム製品を備え、該コンピュータプログラムは、フローチャートで示される方法を実行するためのプログラムコードを含む。このような実施例では、該コンピュータプログラムは、通信装置６０９を介してネットワークからダウンロードしてインストールすることが可能であり、または記憶装置６０８またはＲＯＭ６０２からインストールすることもできる。該コンピュータプログラムが処理デバイス６０１によって実行されると、本開示の実施例の方法で定義された上記の機能が実行される。
【００９８】
なお、本開示の実施例に記載されたコンピュータ可読媒体は、コンピュータ可読信号媒体またはコンピュータ可読記憶媒体、またはこれらの任意の組み合わせであってもよい。コンピュータ可読記憶媒体は、例えば、電気、磁気、光、電磁気、赤外線、または半導体システム、装置もしくはデバイス、またはこれらの任意の組み合わせであってもよいが、これらに限定されない。コンピュータ可読記憶媒体のより具体的な例としては、１本または複数の導線による電気的接続、ポータブルコンピュータディスク、ハードディスク、ランダムアクセスメモリ（ＲＡＭ）、読取り専用メモリ（ＲＯＭ）、消去可能プログラマブル読取り専用メモリ（ＥＰＲＯＭもしくはフラッシュメモリ）、光ファイバ、ポータブルコンパクトディスク読取り専用メモリ（ＣＤ−ＲＯＭ）、光メモリ、磁気メモリ、またはこれらの任意の適切な組み合わせが挙げられるが、これらに限定されない。本開示の実施例において、コンピュータ可読記憶媒体は、命令実行システム、装置もしくはデバイスによって使用される、またはそれらに組み込まれて使用されるプログラムを包含または格納する任意の有形の媒体であってもよい。本開示の実施例において、コンピュータ可読信号媒体は、ベースバンド内の、または搬送波の一部として伝搬されるデータ信号を含むことができ、その中にコンピュータ可読プログラムコードが担持されている。かかる伝搬されたデータ信号は、様々な形態をとることができ、電磁信号、光信号、またはこれらの任意の適切な組み合わせが挙げられるが、これらに限定されない。コンピュータ可読信号媒体は、更にコンピュータ可読記憶媒体以外の任意のコンピュータ可読媒体であってもよい。当該コンピュータ可読媒体は、命令実行システム、装置もしくはデバイスによって使用されるか、またはそれらに組み込まれて使用されるプログラムを送信、伝搬または伝送することができる。コンピュータ可読媒体に含まれるプログラムコードは、任意の適切な媒体で伝送することができ、当該任意の適切な媒体としては、電線、光ケーブル、ＲＦ（無線周波数）など、またはこれらの任意の適切な組み合わせが挙げられるが、これらに限定されない。
【００９９】
上記コンピュータ可読媒体は、上記電子機器に含まれるものであってもよく、該電子機器に実装されずに別体として存在するものであってもよい。上記コンピュータ可読媒体に１つ又は複数のプログラムが搭載され、上記１つ又は複数のプログラムが該電子機器により実行されると、該電子機器は、画像点群シーケンスを取得するステップであって、上記画像点群シーケンスは少なくとも一組の同時刻に取り込まれた初期画像と点群データを含み、初期画像は無人運転車両に取り付けられたカメラにより取り込まれ、点群データは無人運転車両に取り付けられたレーダにより取り込まれる、ステップと、上記画像点群シーケンスにおける各組の画像点群に対応する上記初期画像の目標点群データを確定するステップと、目標点群データと上記画像点群シーケンスにおける対応する初期画像とをマッチングして、上記カメラの補正パラメータを確定するステップと、を実行する。
【０１００】
本開示の実施例の動作を実行するためのコンピュータプログラムコードは、１種以上のプログラミング言語、又はそれらの組み合わせで作成することができ、上記プログラミング言語は、Ｊａｖａ（登録商標）、Ｓｍａｌｌｔａｌｋ、Ｃ＋＋などのオブジェクト指向プログラミング言語と、「Ｃ」言語又は同様のプログラミング言語などの従来の手続き型プログラミング言語とを含む。プログラムコードは、完全にユーザのコンピュータで実行することも、部分的にユーザのコンピュータで実行することも、単独のソフトウェアパッケージとして実行することも、部分的にユーザのコンピュータで実行しながら部分的にリモートコンピュータで実行することも、または完全にリモートコンピュータもしくはサーバで実行することも可能である。リモートコンピュータの場合、リモートコンピュータは、ローカルエリアネットワーク（ＬＡＮ）またはワイドエリアネットワーク（ＷＡＮ）を含む任意の種類のネットワークを介してユーザのコンピュータに接続することができ、または（例えば、インターネットサービスプロバイダによるインターネットサービスを介して）外部のコンピュータに接続することができる。
【０１０１】
図面のうちのフローチャートおよびブロック図は、本開示の様々な実施例に係るシステム、方法およびコンピュータプログラム製品によって実現できるアーキテクチャ、機能および動作の表示例である。これについて、フローチャートまたはブロック図における各ブロックは、モジュール、プログラムセグメント、またはコードの一部を表すことができる。当該モジュール、プログラムセグメント、またはコードの一部には、所定のロジック機能を実現するための１つまたは複数の実行可能命令が含まれている。さらに注意すべきなのは、一部の代替となる実施態様においては、ブロックに示されている機能は図面に示されているものとは異なる順序で実行することも可能である。例えば、連続して示された２つのブロックは、実際には係る機能に応じてほぼ並行して実行してもよく、時には逆の順序で実行してもよい。さらに注意すべきなのは、ブロック図および／またはフローチャートにおけるすべてのブロック、ならびにブロック図および／またはフローチャートにおけるブロックの組み合わせは、所定の機能または操作を実行する専用のハードウェアベースのシステムで実現することもできれば、専用のハードウェアとコンピュータ命令との組み合わせで実現することもできる。
【０１０２】
本開示の実施例に記載されたユニットは、ソフトウェアで実現されてもよく、ハードウェアで実現されてもよい。記載されたユニットは、プロセッサに設けられてもよく、例えば、「画像点群シーケンス取得ユニット、目標点群データ確定ユニット及び補正パラメータ取得ユニットを備えるプロセッサ」というように記載されてもよい。ここで、これらのユニットの名称は、ある場合において当該ユニット自体を限定するものではなく、例えば、補正パラメータ取得ユニットは、さらに「カメラの補正パラメータを取得するためのユニット」と記述され得る。
【０１０３】
以上の記載は、本開示の好ましい実施例、および適用される技術的原理に関する説明に過ぎない。当業者であれば、本開示に係る発明の範囲が、上記の技術的特徴の特定の組み合わせからなる技術案に限定されるものではなく、上記の本開示の趣旨を逸脱しない範囲で、上記の技術的特徴またはそれらの同等の特徴の任意の組み合わせからなる他の技術案も含まれるべきであることを理解すべきである。例えば、上記の特徴と、本開示に開示された類似の機能を持っている技術的特徴（これらに限定されていない）とを互いに置き換えてなる技術案が挙げられる。
【図１】
0006967098.tif 000002
【図２】
0006967098.tif 000003
【図３】
0006967098.tif 000004
【図４】
0006967098.tif 000005
【図５】
0006967098.tif 000006
【図６】
0006967098.tif 000007