自動運転視覚認識アルゴリズム

343b4d32903dd532fea9eb13e1d21941.png

来源:小白学视觉 新机器视觉 
本文约5700字,建议阅读11分钟
本文将围绕着环境感知中关键的视觉感知算法进行介绍。


自動運転視覚認識アルゴリズム(1)

環境認識は自動運転の最初のリンクであり、車両と環境の間のリンクです。自動運転システムの全体的なパフォーマンスは、知覚システムの品質に大きく依存します。現在、環境認識技術には 2 つの主流の技術ルートがあります。

① テスラに代表される、ビジョン主導のマルチセンサー フュージョン ソリューション。

②LiDARが主流で、GoogleやBaiduなどの代表的な他のセンサーが支援する技術的ソリューション。

環境認知における主要な視覚認知アルゴリズムを紹介し、その業務範囲と技術分野を下図に示します。2D および 3D 視覚認識アルゴリズムのコンテキストと方向性を整理するために、2 つのセクションに分割しました。

7da5640760ca84585e683486a1155717.jpeg

このセクションでは、自動運転で広く使用されているいくつかのタスクから始めて、画像やビデオに基づく 2D オブジェクトの検出と追跡、2D シーンのセマンティック セグメンテーションなどの 2D 視覚認識アルゴリズムを紹介します。近年、ディープラーニングは視覚のさまざまな分野に浸透し、良好な成果を上げているため、いくつかの古典的なディープラーニングアルゴリズムを整理しました。

01 ターゲット検出

1.1 2段階検出

2 段階とは、検出を実現する方法のことで、物体の領域を抽出する処理と、その領域に対して CNN 分類と認識を行う処理の 2 つの処理があるため、「2 段階」とも呼ばれます。候補エリア (領域提案) に基づいたターゲット検出。代表的なアルゴリズムとしては、R-CNNシリーズ(R-CNN、Fast R-CNN、Faster R-CNN)などがあります。

より高速な R-CNN は、初のエンドツーエンド検出ネットワークです。第 1 段階では、領域候補ネットワーク (RPN) を使用して特徴マップに基づいて候補ボックスを生成し、ROIPooling を使用して候補特徴のサイズを調整します。第 2 段階では、全結合層を使用して洗練された分類を行います。そして回帰。ここでは、計算の難しさを軽減し、速度を向上させるために、アンカーのアイデアが提案されています。特徴マップの各位置は、オブジェクト フレーム回帰の参照として使用される、さまざまなサイズとアスペクト比のアンカーを生成します。アンカーの導入により、回帰タスクは比較的小さな変更のみを処理する必要があるため、ネットワークの学習が容易になります。以下の図は Faster R-CNN のネットワーク構成図です。

a2ba52b0d8d269899f95e4d322b6b992.png

CascadeRCNN の最初のステージは Faster R-CNN とまったく同じで、2 番目のステージはカスケードに複数の RoiHead レイヤーを使用します。後続の作業の一部は、主に上記のネットワークの改善や前任者のその他の作業に関連しており、画期的な改善はほとんどありません。

1.2 一段階検出

2 段階アルゴリズムと比較して、1 段階アルゴリズムはターゲット検出を達成するために特徴を 1 回抽出するだけでよく、その速度アルゴリズムは高速で、一般的な精度はわずかに低くなります。このタイプのアルゴリズムの先駆者は YOLO であり、その後 SSD や Retinanet によって改良されました。YOLO を提案したチームは、パフォーマンス向上に役立つこれらのトリックを YOLO アルゴリズムに統合し、その後 4 つの改良バージョン YOLOv2 ~ YOLOv5 を提案しました。予測精度は 2 段階ターゲット検出アルゴリズムには及ばないものの、実行速度が速いため、YOLO が業界の主流になっています。以下の図はYOLOv3のネットワーク構成図です。

cc63866c74fc6cba2e2505677e5e8895.jpeg

1.3 アンカーフリー検出(アンカー検出なし)

このタイプのメソッドは通常、オブジェクトをいくつかのキー ポイントとして表し、これらのキー ポイントの位置を返すために CNN が使用されます。キーポイントは、オブジェクトフレームの中心点 (CenterNet)、コーナーポイント (CornerNet)、または代表点 (RepPoints) です。CenterNet は、ターゲット検出問題を中心点予測問題に変換します。つまり、ターゲットはターゲットの中心点によって表され、ターゲットの長方形フレームは、ターゲット中心点のオフセットと幅を予測することによって取得されます。

ヒートマップは分類情報を表し、カテゴリごとに個別のヒートマップ グラフが生成されます。各ヒートマップでは、特定の座標にターゲットの中心点が含まれる場合、ターゲットにキー ポイントが生成されます。キー ポイント全体をガウス円を使用して表現します。具体的な詳細は次の図に示されています。

1381dcfe20396d7403926cff42b29fa8.png

RepPoints は、オブジェクトを代表点セットとして表現することを提案し、変形可能な畳み込みを通じてオブジェクトの形状変化に適応します。点セットは最終的に、手動の注釈との差分を計算するためにオブジェクト ボックスに変換されます。

1.4 変圧器の検出

1 段階の物体検出であっても 2 段階の物体検出であっても、アンカーを使用するかどうかにかかわらず、アテンション メカニズムは十分に活用されていません。この状況に対応して、Relation Net と DETR は Transformer を使用して、ターゲット検出の分野にアテンション メカニズムを導入します。Relation Net は、Transformer を使用してさまざまなターゲット間の関係をモデル化し、関係情報を機能に組み込んで機能強化を実現します。DETR は、Transformer に基づいた新しいターゲット検出アーキテクチャを提案し、ターゲット検出の新時代を切り開きます。次の図は、DETR のアルゴリズム フローを示しています。まず、CNN を使用して画像の特徴を抽出し、次に Transformer を使用してグローバル空間をモデル化します。最終的に、 の出力が 2 部グラフ マッチング アルゴリズムによって手動の注釈と照合されます。

4525809391d24b605d8778dd898f3585.jpeg

以下の表の精度は MSCOCO データベースの mAP を指標として使用し、速度は FPS によって測定されます。上記のアルゴリズムと比較すると、ネットワーク構造の設計には多くの異なるオプションがあります (入力サイズの違い、バックボーン ネットワークの違いなど) 、など)、各アルゴリズムの実装ハードウェア プラットフォームも異なるため、精度と速度を完全に比較することはできません。ここでは参考までに大まかな結果のみを示します。

4db2743260dbdba7280a4f130c24032d.jpeg

02ターゲットトラッキング

自動運転アプリケーションでは入力は映像データであり、車両、歩行者、自転車など注意すべき対象が多数存在します。したがって、これは典型的なマルチオブジェクト追跡タスク (MOT) です。MOT タスクの場合、最も一般的なフレームワークは Tracking-by-Detection であり、プロセスは次のとおりです。

① ターゲット フレーム出力は、単一フレーム画像上のターゲット検出器によって取得されます。

② 各検出対象の特徴を抽出します。通常、視覚的特徴と動きの特徴が含まれます。

③ 特徴に応じて、隣接するフレームからのターゲット検出間の類似性を計算し、それらが同じターゲットからのものである確率を決定します。

④ 隣接するフレームのターゲット検出を一致させ、同じターゲットからのオブジェクトには同じ ID を割り当てます。

ディープラーニングは上記の 4 つのステップで適用されますが、最初の 2 つのステップが主要なステップです。ステップ 1 では、深層学習の適用は主に高品質のターゲット検出器を提供することであるため、一般に精度の高い方法が選択されます。SORT は Faster R-CNN に基づいたターゲット検出手法であり、カルマン フィルター アルゴリズム + ハンガリー アルゴリズムを使用しており、マルチターゲット追跡の速度が大幅に向上すると同時に、SOTA の精度も達成されており、広く使用されています。実用的なアプリケーションのアルゴリズム。ステップ 2 では、主に CNN を使用してオブジェクトの視覚的特徴を抽出することに深層学習を適用します。DeepSORT の最大の特徴は、外観情報を追加し、ReID モジュールを借用して深層学習の特徴を抽出し、ID スイッチの数を削減することです。全体的なフローチャートは次のとおりです。

01735dead59e5db2922ba48be37e7765.jpeg

さらに、同時検出と追跡というフレームワークがあります。代表的な CenterTrack などは、以前紹介した 1 段階のアンカーフリー検出アルゴリズム CenterNet から派生したものです。CenterNet と比較すると、CenterTrack は、前のフレームの RGB イメージとオブジェクト中心のヒートマップを追加入力として追加し、前フレームと後フレームの関連付けにオフセット ブランチを追加します。検出による追跡の複数の段階と比較して、CenterTrack は検出および照合段階をネットワークで実装するため、MOT の速度が向上します。

03 セマンティックセグメンテーション

セマンティック セグメンテーションは、自動運転の車線境界線検出タスクと走行可能領域検出タスクの両方で使用されます。代表的なアルゴリズムとしてはFCN、U-Net、DeepLabシリーズなどがあります。DeepLab は、拡張コンボリューションと ASPP (Atrous Spatial Pyramid Pooling) 構造を使用して、入力画像に対してマルチスケール処理を実行します。最後に、従来のセマンティック セグメンテーション手法で一般的に使用されている条件付きランダム フィールド (CRF) を使用して、セグメンテーション結果を最適化します。以下の図は DeepLab v3+ のネットワーク構造です。

751f4fdace80036b627144a27510904d.jpeg

近年、STDC アルゴリズムは FCN アルゴリズムと同様の構造を採用しており、U-Net アルゴリズムの複雑なデコーダ構造は削除されています。しかし同時に、ネットワーク ダウンサンプリングのプロセスで、ARM モジュールを使用して異なるレイヤーの特徴マップからの情報を継続的に融合するため、単一ピクセルの関係のみを考慮する FCN アルゴリズムの欠点も回避されます。STDC アルゴリズムは速度と精度のバランスが良く、自動運転システムのリアルタイム要件を満たしていると言えます。アルゴリズムの流れを以下の図に示します。

7a4bcc072def00e3a957d895822dc016.jpeg

自動運転視覚認識アルゴリズム (2)

前セクションでは 2D 視覚認識アルゴリズムを紹介しましたが、このセクションでは自動運転に不可欠な 3D シーン認識アルゴリズムを紹介します。対象物の奥行き情報や三次元サイズなどは二次元知覚では得られないため、この情報が自動運転システムによる周囲環境の正確な判断の鍵となります。3D 情報を取得する最も直接的な方法は、LiDAR を使用することです。しかし、LiDARにはコストが高い、車載用製品の量産が難しい、天候の影響を受けやすいなどのデメリットもあります。したがって、カメラのみに基づいた 3D 知覚は依然として非常に意味があり、価値のある研究方向です. 次に、単眼と両眼に基づいたいくつかの 3D 知覚アルゴリズムを整理します。

01 単眼立体知覚

単一カメラの画像に基づいて 3D 環境を認識するのは不適切な問題ですが、幾何学的な仮定 (地面上のピクセルなど)、事前知識、または追加情報 (深度推定など) によって支援することができます。今回は、自動運転の2つの基本タスク(3D目標検出と深度推定)から関連するアルゴリズムを紹介します。

1.1 3D オブジェクトの検出

dc8cacb07597ae212bd67231fc36df7a.jpeg

表現変換(擬似ライダー):視覚センサーによる周囲の他車両の検出では、遮蔽や距離計測不能などの問題が発生しますが、透視図を鳥瞰図表現に変換できます。ここでは 2 つの変換方法を紹介します。1 つは逆遠近マッピング (IPM) で、すべてのピクセルが地面にあり、カメラの外部パラメーターが正確であることを前提としています。このとき、ホモグラフィー変換を使用して画像を BEV に変換し、次に、 YOLOネットワークは、ターゲットの接地フレームを検出するために使用されます。2 つ目は直交特徴変換 (OFT) で、ResNet-18 を使用して遠近感のある画像特徴を抽出します。次に、投影されたボクセル領域にわたって画像ベースの特徴を蓄積することによって、ボクセルベースの特徴が生成されます。次に、ボクセル フィーチャは垂直に折り畳まれ、直交する地表フィーチャが生成されます。最後に、ResNet に似た別のトップダウン ネットワークが 3D オブジェクト検出に使用されます。これらの方法は、車両や歩行者など、地面に近いオブジェクトにのみ適しています。交通標識や信号機などの非地上ターゲットの場合、3D 検出のための深度推定を通じて疑似点群を生成できます。Pseudo-LiDAR は、まず深度推定の結果を使用して点群を生成し、次に LIDAR ベースの 3D ターゲット検出器を直接適用して 3D ターゲット フレームを生成するアルゴリズム フローを下図に示します。

41d1ba75a2d5bf90ebfcf69992241253.jpeg

ポイントと3Dモデル:車両や歩行者などの検出対象の大きさや形状は比較的固定されて既知であり、これらを事前知識として対象の3次元情報を推定することができます。DeepMANTA は、この方向における先駆的な作品の 1 つです。まず、Faster RNN などのいくつかのターゲット検出アルゴリズムを使用して 2D ターゲット フレームを取得し、ターゲットのキー ポイントも検出します。次に、これらの 2D オブジェクト ボックスとキー ポイントがデータベース内のさまざまな 3D 車両 CAD モデルと照合され、最も類似性の高いモデルが 3D オブジェクト検出の出力として選択されます。MonoGRNet では、単眼 3D ターゲット検出を 2D ターゲット検出、インスタンス レベルの深度推定、投影された 3D 中心推定、およびローカル コーナー回帰の 4 つのステップに分割することを提案しており、そのアルゴリズム フローを次の図に示します。これらの方法はすべて、ターゲットが比較的固定された形状モデルを持っていることを前提としています。これは車両にとっては一般的に満足のいくものですが、歩行者にとっては比較的困難です。

62fdfe42b692a6dfd67d1aeefec2bd2b.jpeg

2D/3D 幾何学的制約: 3D 中心と大まかなインスタンスの深さの投影に関する回帰、およびその両方を使用した大まかな 3D 位置の推定。先駆的な研究は Deep3DBox で、最初に 2D オブジェクト ボックス内の画像特徴を使用してオブジェクトのサイズと方向を推定します。次に、中心点の 3D 位置が 2D/3D 幾何拘束によって解決されます。この制約は、画像上の 3D ターゲット フレームの投影が 2D ターゲット フレームに密接に囲まれている、つまり 3D ターゲット フレームの少なくとも 1 つのコーナー ポイントが 2D ターゲット フレームの両側に存在するということです。中心点の 3D 位置は、事前に予測されたサイズと方向をカメラのキャリブレーション パラメーターと組み合わせることによって取得できます。2D オブジェクト ボックスと 3D オブジェクト ボックス間の幾何学的制約を次の図に示します。Deep3DBox に基づいて、Shift R-CNN は、以前に取得した 2D ターゲット フレーム、3D ターゲット フレーム、およびカメラ パラメーターを入力として組み合わせ、完全に接続されたネットワークを使用して、より正確な 3D 位置を予測します。

49e7998bea8c065a4aee05b344aead0f.jpeg

3DBox の直接生成:このタイプの方法は、高密度 3D ターゲット候補ボックスから開始し、2D 画像上の特徴を通じてすべての候補ボックスにスコアを付けます。最も高いスコアを持つ候補ボックスが最終出力となります。一部は、物体検出における従来のスライディング ウィンドウ法に似ています。代表的な Mono3D アルゴリズムは、まず、オブジェクトの以前の位置 (Z 座標は地面上) とサイズに基づいて、密な 3D 候補ボックスを生成します。これらの 3D 候補ボックスが画像座標に投影された後、2D 画像上の特徴を統合することによってスコア付けされ、2 ラウンドのスコアリングにより CNN によって最終的な 3D ターゲット ボックスが取得されます。M3D-RPN は、2D および 3D アンカーを定義するアンカーベースの方法です。2D アンカーは画像上の高密度サンプリングによって取得され、3D アンカーはトレーニング セット データの事前知識 (ターゲットの実際のサイズの平均値など) によって決定されます。M3D-RPN は、標準畳み込みと深度認識畳み込みの両方も使用します。前者は空間不変性を持ち、後者は画像行 (Y 座標) を複数のグループに分割し、各グループは異なるシーン深度に対応し、異なるコンボリューション カーネルによって処理されます。上記の高密度サンプリング方法は、非常に多くの計算を必要とします。SS3D は、画像内の各関連オブジェクトの冗長表現と対応する不確実性推定値を出力する CNN と 3D バウンディング ボックス オプティマイザーを含む、より効率的な単一ステージ検出を使用します。FCOS3D も 1 段階の検出方法であり、回帰ターゲットは 3D ターゲット フレームの中心を 2D 画像に投影することによって得られる追加の 2.5D 中心 (X、Y、深度) を追加します。

1.2 深さの推定

前述の 3D ターゲット検出であれ、2D から 3D までの自動運転の知覚意味セグメンテーションという別の重要なタスクであれ、多かれ少なかれ、疎な深さ情報または密な深さ情報に適用されます。単眼奥行き推定の重要性は自明であり、その入力は画像であり、出力は各ピクセルに対応するシーンの奥行き値からなる同じサイズの画像です。入力はビデオ シーケンスにすることもでき、カメラまたはオブジェクトの動きによってもたらされる追加情報を使用して深度推定の精度を向上させます。

教師あり学習と比較して、単眼奥行き推定の教師なし方法は、非常に困難な実数値データセットを構築する必要がなく、実装の難易度も低くなります。単眼奥行き推定の教師なし方法は、単眼ビデオ シーケンスに基づく方法と、同期されたステレオ画像ペアに基づく 2 つのタイプに分類できます。前者は、移動するカメラと静止したシーンを想定して構築されています。後者の方法では、Garg らは、ステレオ補正後の両眼画像ペアを同時に画像再構成に使用することを初めて試み、両眼位置決めを通じて左右のビューの姿勢関係が得られ、比較的理想的な画像再構築を試みました。という効果が得られました。これに基づいて、ゴダールらは左右の一貫性制約を使用して精度をさらに向上させましたが、高度な特徴を層ごとに抽出して受容野を増加させる一方で、特徴の解像度も低下し、粒度が常に失われています。これは、詳細なディテール処理とエッジ定義を提供します。この問題を軽減するために、Godard らはフル解像度のマルチスケール損失を導入し、ブラック ホールや低テクスチャ領域のテクスチャ複製によって生じるアーティファクトを効果的に低減しました。ただし、この精度の向上にはまだ限界があります。

最近、集中的な深度推定タスクにも非常に適した全段階のグローバル受容野の取得を目的とした、Transformer ベースのモデルが次々に登場しています。教師あり DPT では、ローカルな精度とグローバルな予測の一貫性を同時に確保するために、Transformer とマルチスケール構造を使用することが提案されており、次の図はネットワーク構造図です。

5514226cc89dbe7a357405839ad913e3.jpeg

02 両眼立体知覚

両眼視機能は透視変換によって生じる曖昧さを解決できるため、理論的には 3D 認識の精度を向上させることができます。ただし、双眼システムにはハードウェアとソフトウェアに対する比較的高い要件があります。ハードウェアの面では、正確な位置合わせを行う 2 台のカメラが必要であり、車両の走行中は位置合わせが常に正しいことを保証する必要があります。ソフトウェアの面では、アルゴリズムは 2 台のカメラからのデータを同時に処理する必要があり、計算の複雑さは高く、アルゴリズムのリアルタイム性能を保証するのは困難です。両眼視での作業は単眼視に比べて比較的まれです。次に、3Dターゲット検出と奥行き推定の2つの側面からも簡単に紹介します。

2.1 3D オブジェクトの検出

3DOP は、3D 分野の Fast R-CNN 手法を拡張した 2 段階の検出手法です。まず、両眼画像を使用して深度マップが生成され、次に深度マップが点群に変換されてからグリッド データ構造に量子化され、3D ターゲットの候補フレームを生成するための入力として使用されます。以前に導入した Pseudo-LiDAR と同様に、高密度深度マップ (単眼、両眼、さらには低線 LiDAR) を点群に変換し、点群ターゲット検出の分野にアルゴリズムを適用します。DSGN は、ステレオ マッチングを使用して平面スキャン ボリュームを構築し、3D ジオメトリとセマンティック情報をエンコードするためにそれらを 3D ジオメトリに変換します。これは、ステレオ マッチングのためのピクセル レベルの特徴と、ステレオ マッチングのための高レベルの特徴を抽出できるエンドツーエンドのフレームワークです。オブジェクト認識機能を備えており、シーンの深度の推定と 3D オブジェクトの検出を同時に行うことができます。ステレオ R-CNN は、ステレオ入力用に Faster R-CNN を拡張し、左右のビューでオブジェクトを同時に検出して関連付けます。RPN の後に追加の分岐が追加され、まばらなキーポイント、視点、オブジェクトの寸法を予測し、左右のビューの 2D 境界ボックスを結合して、粗い 3D オブジェクト境界ボックスを計算します。次に、左右の関心領域の領域ベースのフォトメトリック位置合わせを使用して、正確な 3D バウンディング ボックスが復元されます。次の図はそのネットワーク構造です。

8a30b43e3870793131650ac2dac1e304.jpeg

2.2 深さの推定

両眼奥行き推定の原理は非常に単純で、左右のビュー上の同じ 3D 点間のピクセル距離 d に基づいています (2 台のカメラが同じ高さを維持していると仮定しているため、水平方向の距離のみが考慮されます) )、つまり視差、カメラの焦点距離 f、および 2 台のカメラ間の距離 B (基線長) を使用して 3D 点の奥行きを推定します。式は次のとおりであり、奥行きは次のように計算できます。視差を推定することで計算されます。したがって、行う必要があるのは、ピクセルごとに別の画像上で一致する点を見つけることだけです。

e5cd6aafe1d75897c2a38fc86f2c4e24.png

考えられるそれぞれの d について、各ピクセルでのマッチング誤差を計算できるため、3 次元誤差データのコスト ボリュームが取得されます。コスト ボリュームを使用すると、各ピクセルでの視差 (最小マッチング エラーの d に対応) を簡単に取得して、奥行き値を取得できます。MC-CNN は、畳み込みニューラル ネットワークを使用して 2 つの画像パッチの一致度を予測し、それを使用してステレオ マッチング コストを計算します。コストは、交差ベースのコスト集計とセミグローバル マッチングによって洗練され、その後、左右の整合性チェックが行われて、遮蔽された領域のエラーが排除されます。PSMNet は、後処理を必要としないステレオ マッチングのためのエンドツーエンドの学習フレームワークを提案し、ピラミッド プーリング モジュールを導入し、グローバル コンテキスト情報を画像特徴に組み込み、グローバル情報をさらに強化するためのスタック型砂時計 3D CNN を提供します。次の図はそのネットワーク構造です。

1b6105c66d9b780990849f856173810d.jpeg

編集者: ユウ・テンカイ

校正:リン・イーリン

88396f3d9ef8aad1f8fa6c84e775621d.png

おすすめ

転載: blog.csdn.net/tMb8Z9Vdm66wH68VX1/article/details/131989738