自動運転のための2Dおよび3D視覚認識アルゴリズムについて話す

自動運転のための2Dおよび3D視覚認識アルゴリズムについて話す

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

① 視覚を主体としたマルチセンサー融合ソリューション。代表的な例はテスラ。

②LIDARを主技術とし、他のセンサーを補助技術として利用する技術ソリューション。代表的なものとしては、Google、Baiduなどが挙げられます。

環境認識における主要な視覚認識アルゴリズムを紹介します。そのタスクの範囲と属する技術分野を下図に示します。以下では、2D および 3D 視覚認識アルゴリズムのコンテキストと方向性をそれぞれ整理します。

2D視覚認識

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

1. 物体検出

1.1 2段階検出

2 段階方式とは、検出プロセスに 2 つのステップがあることを意味します。1 つはオブジェクト領域を抽出するステップ、もう 1 つはその領域に対して CNN 分類と認識を実行するステップです。そのため、「2 段階」方式は候補領域に基づくターゲット検出 (領域提案) とも呼ばれます。代表的なアルゴリズムとしては、R-CNNシリーズ(R-CNN、Fast R-CNN、Faster R-CNN)などが挙げられます。 Faster R-CNN は、初のエンドツーエンド検出ネットワークです。最初の段階では、領域提案ネットワーク (RPN) を使用して特徴マップに基づいて候補ボックスを生成し、ROIPooling を使用して候補特徴のサイズを調整します。2 番目の段階では、完全接続レイヤーを使用して、洗練された分類と回帰を行います。

ここでは、計算の難易度を軽減し、速度を向上させるために、Anchor のアイデアが提案されています。特徴マップの各位置は、異なるサイズとアスペクト比のアンカーを生成し、オブジェクト フレーム回帰の参照として使用されます。アンカーを導入すると、回帰タスクで比較的小さな変更のみを処理できるようになり、ネットワークの学習が容易になります。下図はFaster R-CNNのネットワーク構造図です。

CascadeRCNN の最初のステージは Faster R-CNN とまったく同じであり、2 番目のステージでは複数の RoiHead レイヤーを使用してカスケードします。その後の研究のほとんどは、前述のネットワークの改良やこれまでの研究の寄せ集めに重点が置かれ、画期的な改良はほとんどありませんでした。

1.2 シングルステージ検出

2 段階アルゴリズムと比較すると、1 段階アルゴリズムでは、ターゲット検出を実現するために特徴を 1 回抽出するだけで済みます。速度アルゴリズムは高速ですが、全体的な精度はわずかに低くなります。このタイプのアルゴリズムの先駆的な研究はYOLOであり、その後SSDとRetinanetによって改良されました。YOLOを提案したチームは、パフォーマンスを向上させるこれらのトリックをYOLOアルゴリズムに組み込み、その後YOLOv2〜YOLOv5の4つの改良バージョンを提案しました。予測精度は2段階ターゲット検出アルゴリズムほど良くはありませんが、実行速度が速いため、YOLOは業界の主流となっています。下図はYOLO v3のネットワーク構造図です。

1.3 アンカーフリー検出

このタイプの方法では、通常、オブジェクトをいくつかのキーポイントとして表現し、CNN を使用してこれらのキーポイントの位置を回帰します。キー ポイントは、オブジェクト ボックスの中心点 (CenterNet)、コーナー ポイント (CornerNet)、または代表点 (RepPoints) になります。 CenterNet は、ターゲット検出問題を中心点予測問題に変換します。つまり、ターゲットはその中心点で表され、ターゲットの中心点のオフセットと幅と高さを予測することによってターゲットの長方形ボックスが得られます。ヒートマップは分類情報を表し、各カテゴリは個別のヒートマップを生成します。各ヒートマップでは、特定の座標にターゲットの中心点が含まれる場合、そのターゲットにキーポイントが生成されます。キーポイント全体を表すためにガウス円を使用します。次の図に具体的な詳細を示します。

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

1.4 変圧器検出

ターゲット検出が 1 段階か 2 段階か、アンカーが使用されているかどうかに関係なく、注意メカニズムは十分に活用されていません。この状況に対処するために、Relation Net と DETR は Transformer を使用して、ターゲット検出の分野に注目メカニズムを導入します。 Relation Net は、Transformer を使用して異なるターゲット間の関係をモデル化し、関係情報を機能に組み込み、機能強化を実現します。 DETR は、Transformer に基づく新しいターゲット検出アーキテクチャを提案し、ターゲット検出の新時代を切り開きました。下の図は、DETR のアルゴリズム フローです。最初に CNN を使用して画像の特徴を抽出し、次に Transformer を使用してグローバル空間関係をモデル化します。最後に、出力は二部グラフ マッチング アルゴリズムを通じて手動注釈とマッチングされます。

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

2. ターゲット追跡

自動運転アプリケーションでは、入力はビデオデータであり、車両、歩行者、自転車など、注意を払う必要があるターゲットが多数あります。したがって、これは典型的なマルチオブジェクト追跡タスク (MOT) です。 MOT タスクの場合、最も人気のあるフレームワークは Tracking-by-Detection であり、そのプロセスは次のとおりです。

①ターゲット検出器は、単一フレーム画像上でターゲットフレーム出力を取得する。

② 検出された各ターゲットの特徴(通常は視覚的特徴と動きの特徴を含む)を抽出します。

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

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

ディープラーニングは上記の 4 つのステップすべてに適用されますが、主に最初の 2 つのステップに適用されます。ステップ 1 では、ディープラーニングの適用は主に高品質のターゲット検出器を提供することを目的としているため、通常はより精度の高い方法が選択されます。 SORTはFaster R-CNNをベースとしたターゲット検出方法で、カルマンフィルタアルゴリズム+ハンガリーアルゴリズムを採用し、SOTA精度を実現しながらマルチターゲット追跡の速度を大幅に向上させ、実用化にも広く利用されているアルゴリズムです。ステップ 2 では、ディープラーニングの応用は主に CNN を使用してオブジェクトの視覚的特徴を抽出することにあります。 DeepSORTの最大の特徴は、外観情報を追加し、ReIDモジュールを借用してディープラーニングの特徴を抽出することで、IDスイッチの回数を減らすことです。全体的なフローチャートは次のとおりです。

さらに、同時検出と追跡と呼ばれるフレームワークがあります。たとえば、代表的な CenterTrack は、先ほど紹介したシングルステージのアンカーフリー検出アルゴリズム CenterNet から生まれました。 CenterNet と比較して、CenterTrack は、前のフレームの RGB 画像とオブジェクト中心のヒートマップを追加入力として追加し、前のフレームと次のフレーム間の関連付けのためのオフセット ブランチを追加します。多段階の Tracking-by-Detection と比較して、CenterTrack は検出段階とマッチング段階を 1 つのネットワークで実装し、MOT の速度を向上させます。

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

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

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

3D視覚認識

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

1. 単眼3D知覚

単一のカメラ画像に基づいて 3D 環境を認識することは不適切設定問題ですが、幾何学的仮定 (地面にあるピクセルなど)、事前の知識、または追加情報 (深度推定など) を利用して解決できます。今回は、自動運転を実現するための2つの基本タスク(3Dターゲット検出と深度推定)に基づいて、関連するアルゴリズムを紹介します。

1.1 3Dオブジェクト検出

表現変換 (疑似ライダー): 視覚センサーは通常、周囲の車両を検出する際に遮蔽や距離測定不能などの問題に遭遇します。透視画像は鳥瞰図表現に変換できます。ここでは 2 つの変換方法を紹介します。 1 つ目は逆透視マッピング (IPM) で、すべてのピクセルが地面にあり、カメラの外部情報が正確であると想定しています。このとき、ホモグラフィ変換を使用して画像を BEV に変換し、次に YOLO ネットワークベースの方法を使用してターゲットの地面フレームを検出します。 2 つ目は、ResNet-18 を使用して透視画像の特徴を抽出する直交特徴変換 (OFT) です。次に、投影されたボクセル領域にわたって画像ベースの特徴を蓄積することによって、ボクセルベースの特徴が生成されます。

次に、ボクセル フィーチャを垂直方向に沿って縮小し、直交する地面の平面フィーチャを生成します。最後に、ResNet に似た別のトップダウン ネットワークが 3D オブジェクト検出に使用されます。これらの方法は、車両や歩行者などの地上のターゲットにのみ適用できます。交通標識や信号機などの地上以外のターゲットの場合、深度推定を使用して 3D 検出用の疑似ポイント クラウドを生成できます。疑似LiDARは、まず深度推定の結果を使用してポイントクラウドを生成し、次にLiDARに基づく3Dターゲット検出器を直接適用して3Dターゲットフレームを生成します。アルゴリズムフローを下図に示します。

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

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

3DBox を直接生成: このタイプの方法は、密集した 3D ターゲット候補ボックスから開始し、2D 画像上の特徴を通じてすべての候補ボックスにスコアを付けます。スコアの高い候補ボックスが最終出力になります。いくつかは、ターゲット検出における従来のスライディング ウィンドウ方式に似ています。代表的な Mono3D アルゴリズムは、まずターゲットの前の位置 (z 座標は地面) とサイズに基づいて、密な 3D 候補ボックスを生成します。これらの 3D 候補ボックスが画像座標に投影された後、2D 画像上の特徴を統合することによってスコア付けされ、その後、CNN を通じて 2 回目のスコアリングが実行され、最終的な 3D ターゲット ボックスが取得されます。

M3D-RPN は、2D および 3D アンカーを定義するアンカー ベースの方法です。 2D アンカーは画像上の高密度サンプリングによって取得され、3D アンカーはトレーニング セット データの事前知識 (ターゲットの実際のサイズの平均など) によって決定されます。 M3D-RPN も、標準畳み込みと深度認識畳み込みの両方を使用します。前者は空間的に不変ですが、後者は画像の行 (Y 座標) を複数のグループに分割し、各グループは異なるシーン深度に対応し、異なる畳み込みカーネルで処理されます。上記の高密度サンプリング方法は、計算負荷が非常に高くなります。 SS3D は、画像内の各関連オブジェクトの冗長表現と対応する不確実性の推定値を出力する CNN や、3D 境界ボックス オプティマイザーなど、より効率的な単一段階検出を使用します。 FCOS3D も単一ステージ検出方法です。回帰ターゲットは、3D ターゲット ボックスの中心を 2D 画像に投影して取得した 2.5D 中心 (X、Y、深度) をさらに追加します。

1.2 深度推定

前述の 3D オブジェクトの検出であれ、自動運転認識の別の重要なタスクであるセマンティック セグメンテーションであれ、2D から 3D への拡張により、多かれ少なかれ、疎または密な深度情報が適用されます。単眼深度推定の重要性は自明です。入力は画像であり、出力は各ピクセルに対応するシーン深度値で構成される同じサイズの画像です。入力はビデオ シーケンスにすることもでき、カメラまたはオブジェクトの動きからの追加情報を使用して、深度推定の精度を向上させます。教師あり学習と比較して、単眼深度推定のための教師なし手法では、困難な真値データセットの構築が不要で、実装が簡単です。単眼深度推定のための教師なし方法は、単眼ビデオシーケンスに基づく方法と同期されたステレオ画像ペアに基づく方法の 2 種類に分けられます。

前者は、移動するカメラと静止したシーンを前提としています。後者の方法では、Garg らはまず、同時にステレオ補正された 1 組の両眼画像を使用して画像を再構成することを試みました。左右のビュー間のポーズ関係は両眼の位置決めによって取得され、比較的理想的な結果が得られました。これを基に、Godardらは左右の一貫性制約を使用して精度をさらに向上させました。しかし、受容野を拡大するために高レベルの特徴を抽出するためにレイヤーごとにダウンサンプリングを行うと、特徴の解像度が常に低下し、粒度が常に失われ、深度の詳細処理効果と境界の明瞭度に影響を与えます。

この問題を緩和するために、Godard らはフル解像度のマルチスケール損失を導入し、テクスチャの少ない領域のブラックホールとテクスチャの複製によって生じるアーティファクトを効果的に削減しました。しかし、精度の向上はまだ限られています。最近、すべての段階でグローバル受容野を取得することを目指した、Transformer ベースのモデルが数多く登場しており、これは高密度の深度推定タスクにも非常に適しています。教師ありDPTでは、Transformerとマルチスケール構造を使用して、予測のローカル精度とグローバル一貫性の両方を確保することが提案されています。次の図はネットワーク構造図です。

2. 両眼3D知覚

両眼視は遠近法の変換によって生じる曖昧さを解決できるため、理論的には 3D 知覚の精度を向上させることができます。ただし、双眼鏡システムには、ハードウェアとソフトウェアの両方において比較的高い要件があります。ハードウェアに関しては、正確に位置合わせされた 2 台のカメラが必要であり、車両の運転中は常に位置合わせが正確でなければなりません。ソフトウェアの観点から見ると、アルゴリズムは 2 台のカメラからのデータを同時に処理する必要があり、その結果、計算の複雑さが増し、アルゴリズムのリアルタイム パフォーマンスを確保することが難しくなります。単眼に比べると、双眼に関する研究は比較的少ないです。次に、3D オブジェクトの検出と深度推定についても簡単に紹介します。

2.1 3Dオブジェクト検出

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

2.2 深度推定

両眼深度推定の原理は非常に単純です。左右のビュー上の同じ 3D ポイント間のピクセル距離 d (2 台のカメラが同じ高さにあると仮定し、水平距離のみを考慮)、つまり視差、カメラの焦点距離 f、および 2 台のカメラ間の距離 B (ベースライン長) に基づいて、3D ポイントの深度を推定します。式は次のとおりです。視差を推定することで深度を計算できます。次に、各ピクセルに対して、他の画像上で一致するポイントを見つけるだけです。

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

<<:  ドローン技術の最新動向

>>:  人工知能はメタバースのビジョンの実現に役立つでしょうか?

ブログ    
ブログ    
ブログ    

推薦する

研究者らは、キーボードの打鍵音からデータを盗むためのディープラーニングモデルを最大95%の精度で訓練することに成功した。

8月7日のニュース、キーボードで入力した内容が他人に聞かれる可能性があることをご存知ですか?英国の...

企業が人工知能を活用してサービスをパーソナライズする方法

パーソナライズされたサービスが大きなメリットをもたらすことは間違いありません。うまく行けば、投資収益...

...

...

...

あらゆる人間の声を再現できるAI技術

ポッドキャスト業界は、よりリラックスした、自然でカジュアルなオーディオストーリーテリングへと移行して...

Google、検索結果にAIベースの「要約」機能を追加

Googleは8月4日、今年のGoogle I/Oで「Search Generative Engin...

...

視覚的な手がかりに「マーカー」を追加することで、Microsoft と他の企業は GPT-4V をより正確かつ詳細にしました。

最近、大規模言語モデル (LLM) において大きな進歩が見られました。特に、Generative P...

エッジAI: インテリジェンスをソースに近づける

人工知能の発展により、データをアルゴリズムに渡すのではなく、アルゴリズムがデータを処理するようになり...

機械経済の到来: つながる世界を動かす

機械経済は、長年にわたる急速な社会の発展と新しい製造プロセスへの移行によって進化してきました。第一次...

自律的で制御可能なAIフレームワークは信頼性が高いが、すべてのAIコンピューティングセンターが同等というわけではない

現在、人工知能の発展レベルは、都市の競争力と将来の発展の可能性を測る新たな指標となっている。その結果...

人工知能は建設ロボットを誇大広告から現実のものへと変える

ロボットが建設業界で重要な役割を果たすことは間違いありませんが、マッキンゼーのレポートによると、プロ...

「突破」に注目! 2021年6月のドローン業界の重要な動向の概要

ドローンは無人航空機であり、センサー、インテリジェント制御、情報処理、電力システムなどの技術を統合し...

エッジでの機械学習を活用して生産ラインの品質を向上させる方法

機械学習アルゴリズムは、予知保全、製品品質管理の改善、機械異常検出、生産ライン監視、サプライチェーン...