vehicleToImage
車両座標から鳥瞰ビューのイメージ座標への変換
説明
は、車両座標を鳥瞰ビューのイメージ座標 [x y] に変換します。imagePoints = vehicleToImage(birdsEye,vehiclePoints)
例
車両に取り付けられた前面カメラによって取得されたイメージから鳥瞰ビュー イメージを作成します。車両座標系およびイメージ座標系を使用して鳥瞰ビュー内の点を表示します。
カメラの内部パラメーターを定義し、これらの内部パラメーターが含まれたオブジェクトを作成します。
focalLength = [309.4362 344.2161]; principalPoint = [318.9034 257.5352]; imageSize = [480 640]; camIntrinsics = cameraIntrinsics(focalLength,principalPoint,imageSize);
カメラの高さを地上約 2 メートルになるように設定します。カメラのピッチを地面に向けて 14 度に設定します。
height = 2.1798; pitch = 14;
カメラ構成が含まれたオブジェクトを作成します。
sensor = monoCamera(camIntrinsics,height,'Pitch',pitch);鳥瞰ビューに変換する、カメラの前の領域を定義します。カメラの前に 3 から 30 メートル、カメラの両側に 6 メートルずつの領域を設定します。
distAhead = 30; spaceToOneSide = 6; bottomOffset = 3; outView = [bottomOffset,distAhead,-spaceToOneSide,spaceToOneSide];
出力イメージの幅を 250 ピクセルに設定します。長さを NaN に設定することで、出力の長さを幅から自動的に計算します。
outImageSize = [NaN,250];
前に定義したパラメーターを使用して、鳥瞰ビュー変換を実行するためのオブジェクトを作成します。
birdsEye = birdsEyeView(sensor,outView,outImageSize);
センサーによって取得されたイメージを読み込みます。
I = imread('road.png'); figure imshow(I) title('Original Image')

入力イメージを鳥瞰ビュー イメージに変換します。
BEV = transformImage(birdsEye,I);
鳥瞰ビュー イメージで、センサーの正面に 20 メートルのマーカーを配置します。関数 vehicleToImage を使用して、車両座標でマーカーの位置を指定します。鳥瞰ビュー イメージでマーカーを表示します。
imagePoint = vehicleToImage(birdsEye,[20 0]); annotatedBEV = insertMarker(BEV,imagePoint); annotatedBEV = insertText(annotatedBEV,imagePoint + 5,'20 meters'); figure imshow(annotatedBEV) title('Bird''s-Eye-View Image: vehicleToImage')

今度はイメージ座標で、元の鳥瞰ビュー イメージの位置を定義します。関数 imageToVehicle を使用して、イメージ座標を車両座標に変換します。マーカーから車両前面までの距離を表示します。
imagePoint2 = [120 400]; annotatedBEV = insertMarker(BEV,imagePoint2); vehiclePoint = imageToVehicle(birdsEye,imagePoint2); xAhead = vehiclePoint(1); displayText = sprintf('%.2f meters',xAhead); annotatedBEV = insertText(annotatedBEV,imagePoint2 + 5,displayText); figure imshow(annotatedBEV) title('Bird''s-Eye-View Image: imageToVehicle')

入力引数
イメージを鳥瞰ビューに変換するためのオブジェクト。birdsEyeView オブジェクトとして指定します。
車両ポイント。M 個の車両座標 [x y] を含む M 行 2 列の行列として指定します。
出力引数
イメージ ポイント。M 個のイメージ座標 [x y] を含む M 行 2 列の行列として返されます。
拡張機能
C/C++ コード生成
MATLAB® Coder™ を使用して C および C++ コードを生成します。
バージョン履歴
R2017a で導入
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Web サイトの選択
Web サイトを選択すると、翻訳されたコンテンツにアクセスし、地域のイベントやサービスを確認できます。現在の位置情報に基づき、次のサイトの選択を推奨します:
また、以下のリストから Web サイトを選択することもできます。
最適なサイトパフォーマンスの取得方法
中国のサイト (中国語または英語) を選択することで、最適なサイトパフォーマンスが得られます。その他の国の MathWorks のサイトは、お客様の地域からのアクセスが最適化されていません。
南北アメリカ
- América Latina (Español)
- Canada (English)
- United States (English)
ヨーロッパ
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)