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

咨询网站搭建asp.net 网站修改发布

咨询网站搭建,asp.net 网站修改发布,局域网里建设网站,公司官网网址实现方式: 模仿源代码,在cartographer_ros写一个函数,以函数指针的方式传入cartographer后端,然后接收矫正后的scan数据,然后按照话题laserScan发布出来。 需要同时发布点云强度信息的,还要自己添加含有强度…

实现方式:
模仿源代码,在cartographer_ros写一个函数,以函数指针的方式传入cartographer后端,然后接收矫正后的scan数据,然后按照话题laserScan发布出来。
需要同时发布点云强度信息的,还要自己添加含有强度信息的代码。
核心转换代码如下:

  for (size_t i = 0; i < synchronized_data.ranges.size(); ++i) {const sensor::TimedRangefinderPoint& hit =synchronized_data.ranges[i].point_time;const Eigen::Vector3f origin_in_local =range_data_poses[i] *synchronized_data.origins.at(synchronized_data.ranges[i].origin_index);sensor::RangefinderPoint hit_in_local =range_data_poses[i] * sensor::ToRangefinderPoint(hit);const Eigen::Vector3f delta = hit_in_local.position - origin_in_local;const float range = delta.norm();if (range >= options_.min_range()) {if (range <= options_.max_range()) {hit_in_local.intensity = synchronized_data.ranges[i].intensity; //accumulated_range_data_.returns.push_back(hit_in_local);//transform::Rigid3f sensor_to_tracking = transform::Rigid3f::Translation(Eigen::Vector3f(synchronized_data.origins.at(synchronized_data.ranges[i].origin_index)[0],synchronized_data.origins.at(synchronized_data.ranges[i].origin_index)[1],synchronized_data.origins.at(synchronized_data.ranges[i].origin_index)[2]));undistortion_scan_data_.returns.push_back(sensor_to_tracking.inverse() *(range_data_poses[0].inverse() * hit_in_local));} else {hit_in_local.position =origin_in_local +options_.missing_data_ray_length() / range * delta;hit_in_local.intensity = synchronized_data.ranges[i].intensity; //    accumulated_range_data_.misses.push_back(hit_in_local);//transform::Rigid3f sensor_to_tracking = transform::Rigid3f::Translation(Eigen::Vector3f(synchronized_data.origins.at(synchronized_data.ranges[i].origin_index)[0],synchronized_data.origins.at(synchronized_data.ranges[i].origin_index)[1],synchronized_data.origins.at(synchronized_data.ranges[i].origin_index)[2]));undistortion_scan_data_.returns.push_back(sensor_to_tracking.inverse() *(range_data_poses[0].inverse() * hit_in_local));}}else{//hit_in_local.position = Eigen::Vector3f::Zero();//origin_in_local + 0.0 / range * delta;hit_in_local.intensity = 0; //    //accumulated_range_data_.misses.push_back(hit_in_local);//undistortion_scan_data_.returns.push_back(hit_in_local);}}

其他:改的地方其实挺多,因为
1.我把强度信息也传进去了。
2.对于注册返回的函数指针,为了不破坏原有的代码结构,都是自己添加新的接口。
3.因为源代码对于一些异常点进行了移除,而我要保留所有矫正后的点,所以也修改了部分代码。
4.最核心的就是数据转换,因为carto处理后的数据的坐标系是local的,所以要要逆变换回来。因为carto传入的数据考虑了激光头的外参数,所以传回来也要外参数逆变换回来。

好了,大家可以开心的使用畸变矫正后的scan话题了。

http://www.yayakq.cn/news/109222/

相关文章:

  • 网站建设与维护方式是什么旅游网站建设目的
  • 网站开发投标文件新手做电商需要投资多少
  • 网站信息抽查评估室内装饰设计师证书含金量
  • 网站怎么发布到服务器汕头外发加工网
  • 微信网站如何开发家在深圳龙岗
  • 做第三方的qq互联接口时_回调到自己的网站时要延时很久是什么原因工地临时工400元一天
  • 网站开发赚钱吗?解析网站制作
  • 杭州制作网站的公司什么叫网站前台
  • 网站建设需求分析报告撰写西安seo外包优化
  • 提升网站的访问速度广州网站建设设计公司信息
  • 济南网站制作创意怎么做一个论坛网站
  • 广州站在哪里wordpress最好的编辑器
  • 前端网站重构怎么做网站站开发 流量
  • 做相亲网站的红娘累吗网站免费诊断
  • 建设网站协议合同范本长沙行业网站建设费用标准
  • 淘客推广个人网站怎么做网站图片地址怎么做
  • 浙江网站建设公司电话wordpress添加百度地图
  • 网站设计的基本步骤网站建设jw100
  • kocool网站开发网站ip改变 备案
  • 牙科医院网站建设方案活动网站推广
  • 手机版网站做一下多少钱怎么样制作一个公众号
  • 网站自建系统电子商务网站建设规划教案
  • 做移动网站点击软件建设物流网站
  • 做的成功的地方网站网站建设简历模板
  • 查排名网站河南省住建局官方网站
  • 做网站的要多钱东莞阳光网站建设成效
  • 企业网站推广有哪些方式wordpress过滤html标签了
  • 电子商务网站建设选择服务器要考虑的因素有常德市做网站联系电话
  • 江西省上饶市城乡建设网站旅游网站制作方案
  • 国外网站无法访问我有项目找资金找合作