13 东方赤龙曲和政

尚未进行身份认证

我要认证

致力于ROS机器人操作系统的研究,无人驾驶,机器人导航,SLAM,路径规划,视觉识别。数据成像。并发内存数据库内核开发。

等级
TA的排名 2w+

ROS中单独开辟线程接受message

ros::AsyncSpinner 已经可以开辟许多线程来接收message,但是有时候我们需要指定某个线程来单独对摸个topic的message进行接收处理。#include <ros/ros.h>#include "ros/callback_queue.h"void processImageGrabed(const sensor_msgs::Image::ConstPtr &a...

2018-04-13 16:44:27

gdb调试ros node崩溃地址

编译Debug版本catkin_make -DCMAKE_BUILD_TYPE=Debuggdb启动ros noderosrun --prefix 'gdb -ex run --args' package node[Thread debugging using libthread_db enabled]Using host libthread_db library "/lib/aarc...

2018-03-22 18:20:46

Caffe SGD solver代码阅读分析

代码文件:sgd_solver.cppsgd更新公式推导:这里以 L2 的regularization为例W( t+ 1) = W ( t )  − lr ∗ wd ∗ W ( t )   − lr ∗ delta(W)  −  momentum ∗( W ( t-1 ) - W ( t ) )               = W ( t ) −  lr ∗ [ wd ∗ W ...

2018-02-13 18:22:15

IntelliJ IDEA License Server本地搭建教程

使用PyCharm总是需要注册,网上所有的注册都被封了。只能自己创建注册服务器。1. 下载 https://mega.nz/#!f4A2WQRB!fMNbcuSt0YxrjXclW81_GZol-g6dURrO1htqXPMYa8Q打开压缩包,选择对应操作系统,我选择的是Linux AMD64版本:IntelliJIDEALicenseServer_linux_amd642. 修改执行权限sudo...

2018-01-21 21:26:33

安卓编译caffe错误 ‘undefined reference to `stderr'’

NDK:android-ndk-r15ccaffe:https://github.com/sh1r0编译错误:[ 76%] Building CXX object src/caffe/CMakeFiles/caffe.dir/util/insert_splits.cpp.o[ 77%] Building CXX object src/caffe/CMakeFiles/caffe.di

2018-01-11 15:42:27

Velodyne tracking相关代码

yolo v2 之车牌检测

2018-01-07 22:03:14

YOLO2从darknet到caffe转换的开源项目

gklz1982/caffe-yolov2 这个好像有完整的实现,包括reorg层的实现,提供了把darknet模型转换成caffe模型的脚本hustzxd/z1 这个也有完整的实现,并且提供了工具转换marvis/pytorch-caffe-darknet-convert 这个看起来很牛,三个平台的互相转换xingwangsfu/caffe-yolo 这个只是yolov1的实现

2018-01-05 21:06:04

使用PCA 计算点云平面法向量,并旋转至二维XoY坐标系

PCA对点云平面处理后,返回三个特征向量,分别是平面自身坐标系的X轴,Y轴和Z轴在点云全局坐标系中的向量。其中Z轴信息最少,就是平面的法向量。要想把点云从全局坐标系下转化到XoY的二维平面,只需把点按照旋转矩阵R变换后,PCA返回的三个向量就组成了3X3的旋转矩阵R。换句话说,PCA对平面点云的变换,就是把点转换到三个特征向量组成的新的XYZ坐标系下,新坐标系的原点和全局原点是相同的。

2017-12-24 19:33:33

ROS 学习系列 -- 程序发送点云PointCloud2到Rviz显示

方法1  直接加载PCD文件:#include // PCL specific includes#include #include #include #include // Create a ROS publisher for the output point cloudpub = nh.advertise ("filtered_plane", 1); pcl::PCLP

2016-03-11 09:48:53

ROS 学习系列 -- 动态程序控制Rviz眼睛位置和目的焦点

在ROS开发中,我们经常需要使用Rviz去观察机器人运行的状态,但是手工控制往往观察位置和焦点是不够灵活的,我们需要程序自动控制改变Rviz的行为。这个的具体实现插件就是 rviz_animated_view_controller首先安装:sudo apt-get install ros-indigo-rviz-animated-view-controller在程序中只需要向

2016-01-10 20:29:36

C 角度计算经验代码集合

double angle_diff(double a, double b){ double d1, d2; d1 = a-b; d2 = 2*PI - fabs(d1); if(d1 > 0) d2 *= -1.0; if(fabs(d1) < fabs(d2)) return(d1); else return(d2);}

2015-12-27 21:39:00

ROS 学习系列 -- image_transport 发布jpg图片文件流在image_view中看视频效果

目标:       目录/home/camera 中保存了2000张照相机连续拍照的JPG文件,名字按数字排序 1.jpg  2.jpg  3.jpg  ......... 现在需要在ROS中建立一个node按频率发布所有照片,并可以在image_view中看视频效果。       详细见链接:http://wiki.ros.org/image_transport/Tutorials/Pu

2015-12-16 11:37:02

ROS 学习系列 -- 执行turtlebot navigation的方法

我们讲一下如何使用现有的turtlebot launch文件来启动navigation,并在PC上使用rviz指挥。1. 网络环境布置turtlebot单片机我们使用的是firefly,rviz运行在PC上,它们使用wifi通讯。master ros运行在firefly上,PC需要指向firefly。在PC修改IP到firefly主机的映射,修改/etc/hosts 文

2015-11-19 10:19:36

ROS 主动蒙特卡罗粒子滤波定位算法 AMCL 解析-- map与odom坐标转换的方法

ROS AMCL 算法根据订阅到的地图数据配合激光扫描特征,使用粒子滤波获取最佳定位点,该点称为Mp (point on map), 它是相对于地图map上的坐标,也就是base_link相对map上的坐标。odom 的原点是机器人启动时刻的位置,它在map上的位置或转换矩阵是未知的。但是AMCL可以根据最佳粒子的位置推算出 odom->map的tf转换信息并发布到 tf主题上

2015-10-16 09:37:05

ROS代码经验系列-- tf进行位置查询变换

include文件:// For transform support#include "tf/transform_broadcaster.h"#include "tf/transform_listener.h"#include "tf/message_filter.h"#include "tf/tf.h"#include "message_filters/subscriber.h"

2015-10-14 14:13:14

卡尔曼滤波算法实例剖析--机器人足球赛场中的定位算法

卡尔曼滤波(Kalman filtering)最早在阿波罗飞船的导航电脑中使用,它对阿波罗计划的轨道预测很有用。卡尔曼滤波是一种利用线性系统状态方程,通过系统输入输出观测数据,对系统状态进行最优估计的算法。是目前应用最为广泛的滤波方法, 在通信, 导航, 制导与控制等多领域得到了较好的应用。卡尔曼滤波本身是贝叶斯滤波体系的,建立在马尔科夫概率模型基础上。大多数关于卡尔曼滤波的文章都

2015-09-22 20:43:01

Grass Gis 峡谷堰塞湖预测模型r.lake剖析--湖心灌水洪泛算法

Grass Gis 是20世纪80年代初,美国军方建筑工程研究实验室(USA/CERL)的Bill Gorgan负责遴选一款具有土地管理、环境规划、环境评估的GIS软件。它有400多个地质分析模块,今天我们剖析一下r.lake算法。1. 堰塞湖预测建模r.lake能做什么如下图1左为一张地形栅格图,也是最常见的2D平面图。从图中可以看到许多的凹地盆地,当有山洪暴雨时就会形成堰塞

2015-08-27 23:49:56

ROS 学习系列 -- Roomba, Xtion Pro机器人制作地图在Android手机无法实时观测地图

turtlebot 配合Android应用 Make a Map可以允许用户通过手机操纵机器人扫描室内地图并在手机上显示出来,效果图如下: ROS机器人与安卓设备的通讯协作是通过rocon实现的,细节这里不作描述。本文适合已经对该技术非常熟悉的人阅读。1. 问题描述下载安卓rocon remocon和Make a map并安装,在turtlebot上启动机器人:$ roslaunch turt

2015-07-30 21:23:59

ROS 学习系列 -- Roomba, Xtion Pro live 实现360度全景照片panorama 无法启动的解决方案

turtlebot 有个实现iPhone360全景照相功能的应用 panorama.  官方使用Create底座和Kinnect,  在使用Roomba底座和Xtion Pro Live配套时发现,按照教程的方式启动不了。1.  启动roslaunch turtlebot_bringup minimal.launch \\加载轮子驱动roslaunch turt

2015-07-24 23:16:20

ROS 学习系列 -- iRobot 第二代机座 Roomba 作为Turtlebot使用时无法开关机

iRobot 推出了第二代机座 Roomba来取代Create.  这是一个绿脸的机座。如果使用在turtlebot上,几乎是完全兼容的,不用该什么代码,但是波特率提高了一倍,所以需要更改环境变量。但是在停止所以turtlebot的进程后,发现Roomba不再有任何反应,灯灭了,按任何按钮都不管用,也无法充电,但是电池一直在放电。原因是退出进程时没有进入到passive模式。在full

2015-07-05 17:30:06

查看更多

勋章 我的勋章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!