立体栅格地图_三维栅格地图构建之三:点集到栅格的投射
为什么要有点集到证据栅格的投射过程?
答:点集到证据栅格的投射时将空间的点放到栅格中的过程,其后会涉及到概率的计算和叠加。栅格是一种概率(或权重)的表示方式,在理论上有严谨的逻辑(越是模糊的东西在理论上就越严谨);有助于地图的拼接。
证据栅格(evidence grid)或占据栅格(occupancy grid)是由前期的概率栅格发展而来。概率到栅格的演变是有对数公式:log(p/(1-p))实现的。
为什么要演变到证据栅格?
答:为了地图更新的方便。原来的概率栅格,即使是很小的概率经叠加后也可以变大,但证据栅格的范围是(-1,1),叠加的效果是小的越小,大的越大。
我的实验
(先囧下:Moravec论文中的方法我没看懂,Franz Andert论文中的方法我亦没看懂!于是乎自己胡编乱造了一种方法
。若有大牛光顾小弟博客还望多指点,告知我真相!)
我的假设:我觉得摄像头测距模型并不符合高斯分布或正太分布什么的。因为视觉测距完全受配准点的影响,若匹配的好,则测距误差很小(摄像头测距误差在2mm内,这是10多年前的经验,现在不知是多少了),但若匹配的不好,则测得的距离偏离真实值很大。所以干脆认为有双目系统得到的距离数据是正确的概率为100%。这是一种非常理想的模型。
有了上面的假设,接下来的事就简单了,先对空间点作正尺度变换,都变为正坐标,再对栅格尺寸取余直接放到多维数组中就OK了。空间点的位置设置比较大的概率,空间点到双目系统间的栅格全部设置比较小的概率,其它的栅格不去管(初始化时设置)。
空栅格和占据栅格投射代码如下:
for i=1:size(PointMsr,1)
x=PointMsr(i,1);
y=PointMsr(i,2);
z=PointMsr(i,3);
ordx=PointMsr(i,1);
ordy=PointMsr(i,2);
ordz=PointMsr(i,3);
l=sqrt(ordx^2+ordy^2+ordz^2);
angx=acos(abs(ordx)/sqrt(ordx^2+ordy^2+ordz^2));
angy=acos(abs(ordy)/sqrt(ordx^2+ordy^2+ordz^2));
angz=acos(abs(ordz)/sqrt(ordx^2+ordy^2+ordz^2));
dl=cellsize;
while 1
l=l-dl;
if l
break;
end
nx=sign(x)*l*cos(angx);
ny=l*cos(angy);
nz=sign(z)*l*cos(angz); %vertical ord also temp's row;点的z坐标为数组的行
temp(fix((nz+abs(minz))/cellsize)+1,fix((nx+abs(minx))/cellsize)+1,fix(ny/cellsize)+1)=...
temp(fix((nz+abs(minz))/cellsize)+1,fix((nx+abs(minx))/cellsize)+1,fix(ny/cellsize)+1)-0.9542;
end
l=sqrt(ordx^2+ordy^2+ordz^2);
nx=sign(x)*l*cos(angx);
ny=l*cos(angy);
nz=sign(z)*l*cos(angz);
temp(fix((nz+abs(minz))/cellsize)+1,fix((nx+abs(minx))/cellsize)+1,fix(ny/cellsize)+1)=...
temp(fix((nz+abs(minz))/cellsize)+1,fix((nx+abs(minx))/cellsize)+1,fix(ny/cellsize)+1)+0.9542;
end得到的实验结果如下:
上图中,白色部分是代表的双目系统与空间点之间的空白区域,黑色点代表空间点,灰色部分代表未知区域。当然这都是以点表示的,每个点代表栅格的中心点。
立体栅格地图_三维栅格地图构建之三:点集到栅格的投射相关推荐
- 凯立德3d实景地图_360全景地图、3D全景地图、三维实景地图哪个好?
360全景地图.3D全景地图.三维实景地图哪个好?对于小迪来说,它们都统称为全景地图. 其实,360全景地图对于很多人来说其实并不算陌生,现在很多导航应用都上线了360全景地图功能.无论是国外的谷歌, ...
- wms地图绘制工具_三维离线地图-三维地图开发,三维地球,三维可视化开发
一.软件介绍 BIGEMAP离线地图服务器,提供一站式搭建离线/在线地图数据服务器,支持40多种地图离线发布:提供快速WEB应用.WMTS.TMS.WMS等地图服务:支持二次开发调用:支持数据集管理. ...
- mapbox中文地图_使用 Mapbox 地图
如果您可以访问 Mapbox 地图,则可以将其添加至您的工作簿,或者使用它们在 Tableau Desktop 中创建地图视图.有关特定于国家/地区的可用数据的列表,请参见支持的地图数据. 将使用 M ...
- 中国地图_铜板画地图铜地球仪高档办公室装饰用品定制铜版画地图中国地图世界地图定制惠风堂铜雕艺术...
惠风堂铜雕艺术 惠风堂911期 春华秋实,惠风堂与你同在!惠风堂感谢过去一年,新老顾客的支持和厚爱!新的一年我们会更加努力的,为您做出令您满意的艺术作品.感恩! 客户定制彩色地图,可以免费写赠言!15 ...
- 地图上分成一块一块区域 高德地图_在谷歌地图上绘制行政区域轮廓【结合高德地图的API】...
实现思路: 1.利用高德地图行政区域API获得坐标列表 2.将坐标列表绘制在谷歌地图上[因为高德地图和国内的谷歌地图都是采用GCJ02坐标系,所有误差很小,可以不进行坐标误差转换] 注意点: 1.用百 ...
- arcgis直方图导出地图_利用Arcgis地图工具自动输出报告地图图纸
大家在日常工作中经常会用到arcgis进行矢量的绘制,以完成规划,设计,以及测绘,监测一类的工作.这些工作的需要往往也伴随着需要完成项目报告,项目报告中会涉及到各种利用arcgis绘制的矢量图纸,这个 ...
- 怎么下载没水印的谷歌卫星地图_谷歌卫星地图有水印怎么办
我们在下载谷歌卫星地图时,发现卫星地图上有水印,那怎么办呢?虽然没有办法去掉卫星地图上的水印,但是可以换一种谷歌卫星地图呀,下面小编就给大家介绍下,如何下载无水印的谷歌卫星地图. 我们先来看下几个卫星 ...
- wince搜狗地图_安卓百度地图winCE版 V10.9.2 安卓版下载 - 加速吧 - win10系统之家
百度地图winCE版是一款非常好用的车载地图导航app.这款百度导航车载wince版基于wince技术开发,为每一位即将出行的用户提供最适合的路线规划,少走烂路.歪路,更快更精准的找到目的地. [功能 ...
- 立体栅格地图_三维栅格地图构建之二:视差图及点云图 | 学步园
在上一步骤--双目校正的基础上可以很方便的获取视差图.视差即空间中同一点在左右目图像上的水平位置差. 自己凭感觉(不知道对错的)总结了一下,主要分为两大类:基于兴趣点的,不基于兴趣点的. 基于兴趣点的 ...
- 立体栅格地图_三维栅格地图构建之一:双目系统 | 学步园
前言:对一般物体(刚体.文物.建筑物)的三维重建通过一个摄像机或几个摄像机(不需要平行)可完成.但在机器人技术中,一般都应用双目平行视觉或三目视觉,目前三目系统应用的比较多.三目即在双目基础上在上方再 ...
最新文章
- thinkPHP学习笔记(2)
- 百度得来的所谓“三层结构”
- 你认为手机会取代个人电脑吗?
- sklearn中的metrics
- Involved Parties Object ID generation logic
- 时间表达式java定时器_quartz定时任务时间表达式说明
- 学Java编程可以做什么?发展方向有哪些?
- PX4原生固件,position_estimator_inav解读
- JN5169 NXP ZigBee PRO 无线网络应用所需的常见操作(二)
- 使用VBA让Word或Excel文档窗口置顶
- u盘启动 联想一体机_联想一体机怎么设置U盘启动?
- Android 源码之overlay分析
- Linux 桌面玩家指南:16. 使用 CUDA 发挥显卡的计算性能
- MAC使用Bootcamp安装win7
- 机器人彩铅画_高达机器人铅笔画图片
- Android分享之“始终”和“仅此一次”
- 【Tree-easy】617. Merge Two Binary Trees 合并两个二叉树
- HTML:课堂练习5-3唐代诗歌目录页面设计
- iOS意见反馈(邮箱反馈)
- 精美表格html代码
热门文章
- java 菱形继承_菱形继承与菱形虚拟继承
- 如何通过Facebook主页获得用户的邮箱
- 国际电离层参考模型程序说明
- 云服务器无法连接怎么办
- 如何实现 React 中的状态自动保存?
- Linux下qt程序部署到ARM开发板上: error: Upload of file “你的程序“ failed. The server said: “Failure
- 万字案例 | 用Python建立客户流失预测模型(含源数据+代码)
- 诡异事件之--数据库存3.12E8 但是自动变成了31.00
- c语言怎么输入加减符号,C语言有符号加减溢出
- 针对s3c2440芯片制作交叉编译工具链