2 绿竹巷人

尚未进行身份认证

我要认证

不想做算法工程师的算法工程师

等级
TA的排名 5w+

error: ‘shared_ptr’ in namespace ‘std’ does not name a template type

描述ROS下编译cpp文件时,出现编译错误错误提示error: ‘shared_ptr’ in namespace ‘std’ does not name a template type解决方案在需要编译的包的CMakeLists.txt文件下,添加如下一句话add_compile_options(-std=c++11)使用C++ 11编译方式,问题解决...

2020-09-28 10:02:25

ROS下查看rviz中的机械臂位姿

描述ROS系统下,想要查看Rviz中机械臂的末端位姿命令在已经roslaunch某个文件,打开了gazebo和rviz后另起终端执行命令rosrun moveit_commander moveit_commander_cmdline.py执行命令use <group name>为自己程序中设置的,我执行的是默认的manipulatoruse manipulator执行命令currentcurrent命令将会返回运动组的当前状态,包括关节的状态(关节1,

2020-09-28 09:48:47

ROS下C++控制UR机械臂

描述ROS系统下,使用moveit和gazebo搭建UR机械臂控制的仿真环境,并使用C++编写一个节点来控制UR机械臂的移动ROS系统:kineticUR5机械臂电脑系统:Ubuntu16.04截图和运行效果gazebo的机械臂会先水平,然后依次移动到两个位置rviz中的机械臂移动和gazebo机械臂一致,但是会有一个透明效果的机械臂,沿着同样路径非常滞后的移动代码1. 特殊位置移动(Moveit中默认的位置)#include <moveit/move_group_interfa

2020-09-27 21:25:45

Ubuntu16.04安装pandas

描述Ubuntu16.04安装pandas库问题在运行某个python代码python XXX.py时,系统提示ImportError: No module named pandas安装pandas的命令是pip install pandas额外的问题我在执行pip install pandas命令时,安装失败,系统又提示我意思很显然,我的pip版本不够,系统让我升级一下pip的版本因此按照系统提示,执行以下命令pip install --upgrade pip再次执行命令

2020-09-24 18:15:49

ROS下UR机械臂仿真控制失败(机械臂躺着)

描述在使用ROS的kinetic版本控制UR机械臂时,moveit规划成功但UR机械臂不运动的问题失败表现成功的截图如下注意到,MotionPlanning界面下的“Commands”下有四个按钮,分别是“plan”、“Execute”、“Plan and Execute”和“Stop”下面有一个提示,截图中是“Executed”,也即是我运动成功了,可以看到我的UR机械臂已经直立了这里没有截出失败的示意图。失败时,“Executed”的位置为“failed”。机械臂一直是倒下的状态。问题提

2020-09-24 14:12:47

ROS下UR机械臂仿真控制(kinetic版)

描述使用ROS的kinetic版本,在gazebo仿真系统下控制UR机械臂问题CMake Warning at /opt/ros/kinetic/share/catkin/cmake/catkinConfig.cmake:76 (find_package): Could not find a package configuration file provided by "moveit_core" with any of the following names: moveit_core

2020-09-24 11:58:09

C++获取时间戳

描述最近的项目代码里有一个小需求,我需要别人输入给我一个SLAM位置(或者随便什么位置),但是他的频率并不能满足我的计算需求。因此我需要在他不给我发信息时,我的线程仍在按照真实时间更新。库代码#include <string>#include <chrono>#include <iostream>double getTimeNow(){ std::chrono::system_clock::time_point current_time =

2020-09-11 15:43:30

C++实现PID控制算法

描述PID控制算法,是自动化专业学生必须掌握的基本控制算法比例积分微分算法比例项P:与当前误差相关积分项I:与一段时间积累的误差相关微分项D:与误差的变化相关大家的解释都很多了,这里不进行描述了。说一下调参的顺序和心得吧:先调P,再调D,最后调I调P,让曲线震荡起来调D,阻止曲线的震荡,让曲线平滑调I,把曲线整体调整到目标值代码我随便写的代码,pid三个参数没有调整,但PID的意思我是基本写清楚了。#include <iostream>#include <ma

2020-08-24 23:15:55

黄金搜索算法

描述黄金搜索算法,黄金分割数是5−12\frac{\sqrt{5}-1}{2}25​−1​挺简单的一个小算法,算法原理简要说一下:假设我们要在范围[a, b]内寻找距离c最近的一个点。由于黄金分割率的特性11+5−12  =5−12\frac{1}{1+\frac{\sqrt{5}-1}{2}}\; =\frac{\sqrt{5}-1}{2}1+25​−1​1​=25​−1​我们把 b−ab-ab−a 的差算是1份,0.618份可以算出两个值,c= b-0.618(b-a),d=a+0.618(

2020-08-24 22:29:27

Python语言的一些杂记

描述这篇文章随时更新,目的是记录一些python语言小技巧求两个数的平方和的平方根import mathmath.hypot(3, 4)

2020-08-17 21:03:12

Python使用Eigen库的一些操作

描述python使用Eigen库加载import numpy as npimport scipy.linalg as la1. 矩阵定义零矩阵m_matrix = np.zeros((5, 2))对角矩阵m_matrix = np.eye(5)2. 基本操作矩阵乘法,两种写法A = B @ CA = B.dot(C)3. 特殊矩阵转置矩阵A = m_matrix.T逆矩阵A = la.inv(m_matrix)4. 特征值和特征向量#

2020-08-17 20:58:27

Coursera自动驾驶课程学习——软硬件架构

硬件传感器包括:相机和深度相机、激光雷达(红外激光),雷达(无线电),声呐(超声波测距),GPS/IMU,里程计覆盖范围主动减速率大致是5m/s2s^2s2:人用力踩下刹车的速度一般减速率2m/s2s^2s2:减速距离的计算是 d  =  v22ad\; =\; \frac{v^{2}}{2a}d=2av2​ , aaa 就是减速率讨论两个情况:高速公路及城市道路高速公路的需求紧急刹车:前后方150米到200米,左右车道感知匀速行驶:160度~180度视野范围变道:左右层要能看更远

2020-08-17 20:25:56

C++Eigen库矩阵常见操作

描述使用C++语言的Eigen库进行一些常见操作代码头文件声明#include <Eigen/Dense>1. 矩阵声明n*n方阵(已知n)Eigen::Matrix2d m_matrix;m_matrix<< 2,3,2.2,1;std::cout << "m_matrix = \n"<< m_matrix<std::endl;注意矩阵里的值有2.2这个浮点型,因此定义Eigen::Matrix2i会出现问题(Matrix2

2020-08-17 11:57:36

Opencv图像拼接

描述两张图片,如何拼成一张图片代码主要有两种方法我这里举个例子,假设我有一张图片,这张图片左边部分是a,右面部分是b我想要的新图片,想要左边是原图像的b,右边是原图像的a,而a和b的尺寸和信息都不变,我的代码应该怎么写我先贴一段模板吧,下面会有实际的例子讲解cv::Mat inputImage;cv::Mat outputImage;// 选定第一帧图要放的位置:0, 0, width, heightCvRect rect = cvRect(0, 0, inputImage.cols,

2020-08-13 11:06:07

Opencv读取写入视频

描述调用opencv库来读取写入视频语言:C++视频格式:MP4代码1. 读取视频#include <iostream>#include <cstdlib>#include <ctime>#include <opencv2/core/core.hpp>#include <opencv2/highgui/highgui.hpp>#include <opencv2/imgproc.hpp>int main(){

2020-08-13 10:43:47

Coursera自动驾驶课程学习——自动驾驶等级分类

描述这一系列我会开始介绍一下Coursera自动驾驶课程的关键内容本文内容自动驾驶的分类法驾驶任务的感知需求如何做出驾驶决策1. 自动驾驶等级的分类1.1 驾驶任务三个子任务感知环境: 跟踪汽车的状态,识别路标、行人等,跟踪运动物体,预测它们未来的行动运动规划操控车 辆,加减速,控制轨迹等Operational Design Domain(ODD, 操作设计域或奇数)构成了给定系统设计运行的操作条件,包括环境,一天中的时间,道路和其他特征明确定义设计自动驾驶汽车的操作条件

2020-08-11 21:30:32

贝塞尔曲线生成路径

描述使用贝塞尔曲线生成路径已知:若干个二维路径点(x, y),生成一段由一系列(x, y)点组成的点集公式网上有很多贝塞尔曲线的概念和知识,这里不做赘述贝塞尔曲线上的路径点计算公式:P(t)  =∑i=0nk(i,  n,  t)⋅Pi,        t∈[0,1]P\left( t \right)\; =\sum_{i=0}^{n}{k\left( i,\; n,\; t \right)\cdot P_{i}},\; \; \; \; t\in \left[ 0,1 \right]P(t)=

2020-08-10 18:53:34

离散点的曲率计算

描述我有一个点集,里面都是[x,y]这样的二维点,这个点集能形成一个曲线。在并不想去求这个曲线的表达式时,怎么得到某一点的曲率呢相关知识曲率的定义是:针对曲线上某个点的切线方向角对弧长的转动率,而曲率的倒数就是曲率半径K  =  ∣Δθl∣  =  ∣1r∣  K\; =\; \left| \frac{\Delta \theta }{l} \right|\; =\; \left| \frac{1}{r} \right|\; K=∣∣∣∣​lΔθ​∣∣∣∣​=∣∣∣∣​r1​∣∣∣∣​式子中KK

2020-08-08 19:16:26

C++在终端输入命令时传入参数

描述运行代码时,想通过终端命令传入参数举例子在Ubuntu终端下某一路径下,有一个可执行程序detectcd detect/./detect而我想执行两种不同的操作,使程序不用重新编译就能达到这一目的cd detect/./detect online ./detect offline代码你最开始学C++代码时每次都要写到的int main(int argc, char* argv[])就是干这事儿的代码if (argc > 1 && (strcmp(a

2020-08-04 19:42:35

Eigen矩阵colPivHouseholderQr().solve()求解Ax=b

描述使用eigen库求解Ax=b代码#include <Eigen/Dense>Eigen::Matrix2d A;A << 1,2, 4,5;Eigen::Vector2d b(3, 4);Eigen::Vector2d C = A.colPivHouseholderQr().solve(b);std::cout<<C<<std::endl;输出的结果是-2.33333 2.66667代码中的colPivHouseh

2020-07-30 22:35:37

查看更多

勋章 我的勋章
  • 签到新秀
    签到新秀
    累计签到获取,不积跬步,无以至千里,继续坚持!
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv3
    勤写标兵Lv3
    授予每个自然周发布7篇到8篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。