主要内容

birdsEyeView

使用逆透视映射创建鸟瞰图

描述

使用birdsEyeView对象创建一个鸟瞰的二维场景使用逆透视映射。将一幅图像转换成鸟瞰,通过birdsEyeView对象和形象的transformImage函数。将鸟瞰图从车辆图像坐标或坐标,使用imageToVehiclevehicleToImage功能。所有这些功能都假定输入图像没有镜头畸变。去除透镜畸变,使用undistortImage函数。

创建

描述

例子

宰= birdsEyeView(传感器、官样文章,outImageSize)创建一个birdsEyeView对象将图像转换为一个鸟瞰图。

  • 传感器是一个monoCamera对象定义的配置摄像头传感器。这个输入设置传感器财产。

  • 官样文章定义了相机视图的一部分,在车辆坐标系,转换成鸟瞰。这个输入设置OutputView财产。

  • outImageSize定义了大小,像素,图像输出的鸟瞰图。这个输入设置图象尺寸财产。

属性

全部展开

相机传感器配置,指定为一个monoCamera对象。对象包含内在相机参数,安装高度,摄像机安装角度。这个配置定义的工具坐标系birdsEyeView对象。更多细节,请参阅车辆坐标系

坐标的区域变成一个鸟瞰图的形象,指定为研制出向量的形式xminxmaxyminymax]。在世界坐标,单位是米和英尺等决定的传感器财产。四个坐标定义的输出空间(X,Y坐标系统,产地集中在相机的位置传感器。

车辆与相机传感器和矩形区域内的传感器观点正在转变。顺时针方向从上,该地区的标记ymax, xmax ymin, xmin。

你可以设置这个属性,当你创建对象。创建对象后,这个属性是只读的。

输出鸟瞰图图像大小,像素,指定为一个双元素向量的形式n),n指定的行数和列的像素输出图像,分别。如果你为一维指定一个值,你可以设置另一个维度birdsEyeView自动计算这个值。设置一个维度保持相同的像素world-unit比沿XV设在和YV设在。

你可以设置这个属性,当你创建对象。创建对象后,这个属性是只读的。

对象的功能

transformImage 变换图像鸟瞰图
imageToVehicle 鸟瞰图图像坐标转换为车辆坐标
vehicleToImage 车辆坐标转换为图像坐标鸟瞰图

例子

全部折叠

创建一个鸟瞰图图像从一个图像通过前置摄像头安装在一辆汽车。在使用车辆的鸟瞰图显示点和图像坐标系统。

定义包含这些intrinsic相机intrinsic和创建一个对象。

focalLength = (309.4362 - 344.2161);principalPoint = (318.9034 - 257.5352);图象尺寸= (480 - 640);camIntrinsics = cameraIntrinsics (focalLength principalPoint图象尺寸);

设置相机的高度离地面约2米。相机的间距设置为14度向地面。

身高= 2.1798;距= 14;

创建一个对象包含相机配置。

传感器= monoCamera (camIntrinsics、身高、“节”、沥青);

定义该地区在镜头面前,你想变成鸟瞰。从3 - 30米设置一个区域在镜头面前,与6米的相机。

distAhead = 30;spaceToOneSide = 6;bottomOffset = 3;官样文章= [bottomOffset distAhead、-spaceToOneSide spaceToOneSide);

输出图像的宽度设置为250像素。计算输出长度自动从宽度通过设置长度

outImageSize =(南,250年);

创建一个对象来执行鸟瞰图变换,使用前面定义的参数。

宰= birdsEyeView(传感器、官样文章、outImageSize);

负荷传感器捕捉到的图像。

我= imread (“road.png”);图imshow(我)标题(原始图像的)

图包含一个坐标轴对象。标题为原始图像的坐标轴对象包含一个类型的对象的形象。

将输入图像转换为一个鸟瞰图形象。

贝福= transformImage(宰,我);

鸟瞰图的形象,一个20米直接在传感器前面的标记。使用vehicleToImage函数在车辆指定标记的位置坐标。在鸟瞰图显示标记图像。

imagePoint = vehicleToImage(宰,20 [0]);annotatedBEV = insertMarker (BEV imagePoint);annotatedBEV = insertText (annotatedBEV imagePoint + 5,20米的);图imshow (annotatedBEV)标题(“鸟”s-Eye-View形象:vehicleToImage”)

图包含一个坐标轴对象。坐标轴标题鸟瞰图图像对象:vehicleToImage包含一个类型的对象的形象。

定义一个位置在原来的鸟瞰图的形象,这一次在图像坐标。使用imageToVehicle函数将图像坐标转换为车辆坐标。显示标记之间的距离和前面的车。

imagePoint2 = (120 - 400);annotatedBEV = insertMarker (BEV imagePoint2);vehiclePoint = imageToVehicle(宰,imagePoint2);xAhead = vehiclePoint (1);displayText = sprintf (' %。2 f米”,xAhead);annotatedBEV = insertText (annotatedBEV imagePoint2 + 5, displayText);图imshow (annotatedBEV)标题(“鸟”s-Eye-View形象:imageToVehicle”)

图包含一个坐标轴对象。坐标轴标题鸟瞰图图像对象:imageToVehicle包含一个类型的对象的形象。

更多关于

全部展开

扩展功能

C / c++代码生成
生成C和c++代码使用MATLAB®编码器™。

版本历史

介绍了R2017a