当前位置: 首页 > news >正文

上海网站建设哪家专业图片街景位置识别

上海网站建设哪家专业,图片街景位置识别,展示型网站开发,温州建设小学网站首页【 声明#xff1a;版权所有#xff0c;欢迎转载#xff0c;请勿用于商业用途。 联系信箱#xff1a;feixiaoxing 163.com】 不可否认#xff0c;slam中的有一部分内容来自于数学。但是#xff0c;我们在学习使用的过程中#xff0c;也不用纠结于整个数学的推导过程版权所有欢迎转载请勿用于商业用途。 联系信箱feixiaoxing 163.com】 不可否认slam中的有一部分内容来自于数学。但是我们在学习使用的过程中也不用纠结于整个数学的推导过程能正确使用数学结论也是可以的。有能力的同学按照书本提示的方法自己推导一下也无可厚非。实在觉得麻烦可以暂时先放下或者用的比较熟练了再来查看相关的推导原理也可以。和那些复杂的高维矩阵运算、优化算法相比有一些基本的数学和规则可能大家在日常处理中遇到的机会更大这里不妨总结一下。 1、浮点数 过去我们自己编写web前后端、或者写os、db的时候遇到浮点数的机会并不多。即使遇到也是简单的加减法。但是slam学习中大量的操作都是浮点数。既然是浮点数那么就离不开比较、除法、滤波、平方根这些计算。 1.1 数值比较 既然做浮点运算那么数值比较肯定是少不了的。这个时候大家一定要理解浮点数之间是没有绝对相等的。要比较他们是否相等只要判断是不是在一个范围内即可 if(fabs(f1 - f2) 1e-6) {std::cout equal std::endl; } else {std::cout not equal std::endl; } 1.2 除法运算 用浮点做除法运算本身是一件很危险的事情。因为f1/f2的时候如果f2很小那么f1/f2就会是非常大的一个数值。这样的话这个结果本身其实是没有任何意义的。所以即使要做除法运算一定、一定要约束一下f2的数值范围。 1.3 数值滤波 SLAM中用到的数据大部分都是从传感器采集过来的。既然是采集的物理数据就会不可避免地引入噪声。所以这个时候就要对浮点数进行降噪处理常用的方法一般有 1取平均值 2去掉最大值、最小值取平均值 3v_new v_old * 0.95 v_capture * (1 - 0.95); 4连续满足某个条件之后才开始采样等等。 1.4 平方根 SLAM中的欧氏距离真的很好用。有的时候最简单的方法往往就是最鲁棒的方法。所以distance sqrt (pow(x, 2) pow(y, 2))这样的计算方法一定要多看多用。 2、角度的计算 在一个平面上面假设有一个x轴和一个y轴那么任何的坐标p都会被拆解为x0y0。其中它和x轴的角度称之为theta那么就会有了下面一些列的计算 2.1 点p到原点的距离 r sqrt (pow(x, 2) pow(y, 2)) 2.2 对应的角度theta该如何计算 theta atan(y0 / x0) 2.3 角度和弧度的对应关系 rad (angle * 2 * pi) / 360 2.4 sin、cos、tan 由于时间的关系大家对于sin、cos、tan的周期性可能没有那么熟悉了这里为了方便大家回忆。我们分别贴上sincos的周期图、tan的周期图。首先是sincos的周期图 其次是tan的周期图 仔细观察下sin的周期是2*pi其中(-pi0)为负0pi为正。cos的周期也是2*pi其中-pi/2pi/2为正-pi-pi/2pi/2pi为负。tan的周期是pi其中-pi/20为负0pi/2为正。 2.5 一个有意思的旋转 之前我们谈到假设有一个点他处在x0y0这个时候如果逆时针旋转alpha角度新的坐标是多少。要注意这里面其实是有一个不变的量那就是距离distance也可以记着为r。按照道理新的坐标应该是 x1 r * cos(theta alpha) y1 r * sin(theta alpha) 如果仅仅是这样那么数值并不太容易求出来所以这里需要进一步分解一下 x1 r * cos(alpha theta) r * (cos(alpha) * cos(theta) - sin(alpha) * sin(theta)) x * cos(alpha) - y * sin(alpha)y1 r * sin(alpha theta) r * (sin(alpha) * cos(theta) cos(alpha) * sin(theta)) x * sin(alpha) y * cos(alpha) 如果换成矩阵其实写起来就很容易了 [x_new, y_new] [cos(alpha), -sin(alpha); sin(alpha), cos(alpha)] * [x, y] 3、矩阵的计算 大学数学里面除了高等代数也就是微分和积分之外最重要的两门数学课就是线性代数和概率。而线性代数中最重要的计算就是矩阵。例2中提到的旋转大家就可以转变成矩阵乘法的形式来进行处理就是这样的 pos_new matrix * pos_old; 有些同学也许忘记了矩阵的相关内容没关系。其实大家只要会使用eigen这个库就好了。这个库是一个模板库本身没有.a或者.so文件直接使用即可。 sudo apt-get install libeigen3-dev 4、概率的计算 概率这部分大部分都是浮点的相关计算。中间以统计、加减法为主本身困难不大。需要注意的地方就两个一个是随机数的生成一个就是高斯分布的生成。两个都很重要。 如果是随机数的生成一般是先给一个种子然后生成随机数 #include stdio.h #include stdlib.h #include time.h int main(int argc, char *argv[]) {int i;srand((int) time(0));for(i0;i 10;i){printf( %d , rand());}printf(n);return 0; } 另外一个就是高斯分布的生成两个参数一个是平均值一个是方差 #include random #include chrono #include iostreamint main(int argc, char* argv[]) {unsigned seed std::chrono::system_clock::now().time_since_epoch().count();std::default_random_engine generator(seed);std::normal_distributiondouble distribution(0.0, 1.0);for (int i 0; i 10; i){std::cout distribution(generator) std::endl;}return 0; }
http://www.zqtcl.cn/news/611406/

相关文章:

  • 如何解决网站图片打开慢关键词搜索推广排行榜
  • 网站建设销售话建网站需要怎样做
  • 网站排名和什么有关网络推广协议合同范本
  • 湖州房产网站建设南通市城乡和住房建设局网站
  • 郴州建设工程集团招聘信息网站wordpress 橘子皮模板
  • win7搭建网站服务器成都网站建设需多少钱
  • 网站开发一般需要多久菜谱网站模版
  • 基于jsp的电子商务网站开发最好的网站建设公司哪家好
  • 个人网站图片郑州技术支持seo
  • 先做网站还是先做app广州互联网
  • 租用网站的服务器wordpress手机加搜索
  • 做彩票网站怎么样才能让百度收录自己的网站
  • 廊坊网站建设技术托管seo怎么优化关键词排名培训
  • 抛丸机网站怎么做手机网站打不开的解决方法
  • 上海做网站的公司多少钱冷水江网站
  • 百度网站流量查询宣传片制作公司费用
  • 安徽炒股配资网站开发搭建平台载体
  • 中华建设杂志网站记者黑龙江省建设集团有限公司网站首页
  • 成都络迈品牌网站建设网站建设的行业资讯、
  • 英语网站大全免费赤峰市建设厅官方网站
  • 宁波网站建设熊掌号成都网络关键词排名
  • 织梦网站改版需要怎么做平台设计软件
  • 企业展示型网站网站建设设计
  • 增城网站建设服务网站建设制作设计公司佛山
  • 微网站套餐自媒体网站源码模板dede
  • 企业网站改版升级成都便宜网站建设公司
  • 广州公共资源建设工程交易中心网站新塘做网站
  • 数码港 太原网站开发公司iis 建立子网站
  • 做一个自己的网站需要什么商标设计网站猪八戒
  • 傻瓜式网站建设软件保险预约