自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

welin的博客

ROS,Qt,OpenCV发烧友

  • 博客(27)
  • 收藏
  • 关注

原创 OpenCV,Qt,ROS学习笔记

这几年接触了不少东西,才知道原来在大学的时候欠下了好多债,以前在学校的时候还总觉得课程多,学不过来,后来发现很多东西连门都还没入,真的需要大量的积累啊。想起之前在实验室时,一个博士师兄说,不仅要多看,还要学习整理和总结,觉得非常正确。作为开山第一篇,先把过去接触的东西整理一遍。OpenCVOpenCV是开源的计算机视觉库,跨平台且便于移植,由C++构成,于1999年由Intel建立,...

2018-02-22 14:41:06 1408 3

原创 TI CC265x的IIC通讯读取IMU BMI08x数据

2021-12-12 21:00:14 1394

原创 树莓派IIC通讯获取BMI08x IMU数据进行姿态解算,并通过UART/TCP在rviz上显示

截至2021年,树莓派出的最新款应该Raspberry Pi 400,设计得跟键盘一样,很难想象到这是个树莓派,尤其是它的标语写的很好“你的下一个电脑,何必是电脑”,不言而喻。我看到后就很想买,对于很多硬件通讯方面的测试以及开发一些小玩意还是很有帮助的,如下图所示。(图片来源自Buy a Raspberry Pi 400 Personal Computer Kit – Raspberry Pi)最近刚好玩了一个小项目,通过树莓派IIC采集BoschBMI08x IMU数据并进行姿态解算,..

2021-11-14 18:39:59 6379 11

原创 Virtual Box+Ubuntu20.04+ROS2 Foxy配置

ROS从最早的正式版本Box Turtle到现在也十几年了。而ROS2出来也挺久了,一直没机会看看。好久也没弄ROS,这几天捣鼓了捣鼓。目录1. Virtual Box安装Ubuntu20.042. ROS2 Foxyd安装1. Virtual Box安装Ubuntu20.04Virtual Box是Oracle公司收购的一款免费且开源的虚拟机软件,而且提供了《Programming Guide and Reference》可供开发人员进行二次开发,主要是提供一些脚本可调用Virtu

2021-07-18 21:19:16 566 4

原创 OpenCV与机器视觉

最近在网易云课堂把南科大于仕琪团队的OpenCV教程完整看了一遍。1 初始图像处理2 机器人的视觉研究

2021-05-07 22:39:23 17934 38

原创 python OpenCV的环境搭建及其简单使用

python语言越来越火,感觉再不使用就要out了。以前用C++做过一些关于OpenCV的小项目,这次用python试试。一、python-OpenCV环境搭建现在再来搭建python和OpenCV的环境实在太方便了,各种封装很完备,各种资料也很容易查找到。一般来说有两种方式,pycharm加本地安装的python环境用pip下载安装,在命令行窗口仅需输入pip install opencv-python即可。 anaconda,打开Anaconda Powershell Prom..

2021-04-18 13:34:44 1105 2

原创 一个做ROS安装包的想法

一般情况下,ROS运行在Linux Ubuntu系统上,最好是采用server版本,一是Linux系统免费开源,二是实时性还不错。此外,Linux还需要运行在一个性能不错的工业级PC板上。其实做机器人,最最重要的就是控制器,也就是这个工业级PC板和运行在上面的Linux系统。我们知道,大部分的ROS包可以从网站上获取到,其实下载后是一个deb文件,它里面指定了需要安装的目录,并用sudo dpkg -i *.deb进行安装。对于用ROS开发的产品,我们选好系统和ROS版本后,比如在Ubuntu Fo

2021-03-21 17:40:46 218 2

原创 写代码的规范性和严谨

似乎日本人,德国人做事严谨是一个名片,全球知晓,觉得他们做出来的东西就好品质好。就写代码而言,倒不是说写的逻辑有多么复杂,设计模式用得有多么好写代码就一定犀利,尤其是设计模式是经过大量实践和验证后得出来的理论方法。现在的软件很容易就越做越大,而且经常不是两三个人就能做好,所以代码一定要统一风格才方便他人backup,maintenance以及iteration。举几个例子,感觉他们真的是处女座,仅限C++编程。Please use spaces instead of tabs. If pos

2021-02-20 17:30:03 1102 2

原创 Anaconda环境下搭建tensorflow

该博客亦是对博客《PyCharm下配置PyQt,TensorFlow等环境》的一个扩展。目录1. conda和Anaconda的安装2. tensorflow的安装1. conda和Anaconda的安装和pip一样,conda也是一个开源的包管理系统和环境管理系统 ,包括多种语言的包安装,运行,更新,删除,最重要的是可以解决包依赖问题。conda支持语言包括 Python,R,Ruby,Lua,Scala,Java,JavaScript,C / C ++,FORTRAN。不过co.

2021-02-19 20:19:08 4342 3

原创 ROS与机器人

快一年没用ROS了,不过尽管如此,如果有人在博客上问之前关于ROS的技术问题,我还是会很仔细得回答。结合这些问题,加上从事的机器人与自动化行业的经历和经验,进行一个简单的整理和总结。1. 机器人机器人的研究在各大实验室和研究所里面一直都是一个很火的话题,所涉及到的细分领域也非常多。它前沿、高端、有挑战性,而且经常是多学科的结合,更容易碰撞出创新的火花。后来公司开始不断投入去研究我觉得跟两个因素有关,一是2015年两会提出了“中国制造2025”的概念,以提高制造业的智能性,而机器人又是制造业的重要力量

2021-01-23 18:20:39 4787 13

原创 两种方法在Qt中使用OpenGL库加载stl三维模型

OpenGL(Open Graphics Library)是一种用于渲染2D、3D矢量图形的跨语言、跨平台的应用程序接口。OpenGL的实现利用了图形加速硬件,这些实现一般由显示设备厂商提供。但真正使用时,一般采用基于gl的第三方库,用于在程序的运行期判断当前硬件是否支持相关的扩展,防止程序崩溃甚至造成硬件损坏。目前我了解到的第三方库就有glad、glew、glfw、freeglut等,下图反映了它们之间的关系。此外在安装Qt后,Qt本身也会对gl库进行一定的封装,即qopengl.h和QOpenG

2020-12-30 12:01:24 9473 20

原创 PyCharm下配置PyQt,TensorFlow等环境

该博客亦是对博客《在ROS中利用PyQt写GUI程序》的一个扩展。目录一、软件安装二、环境配置三、安装其他库四、PyQt在PyCharm中的搭建一、软件安装Pycharm是python比较好的IDE。PyCharm的下载为https://www.jetbrains.com/pycharm/download,可选择community版本,免费使用,安装过程...

2019-09-21 16:39:46 561

原创 C+11编译调用PCL库时出现segmentation fault(core dumped)错误

最近在ros框架下调用PCL库,进行一些点云操作,编译没问题。但程序一执行便报错,提示如下:segmentation fault(core dumped)后来便单独写个小程序只调用PCL库,结果没有问题。经过仔细对比,发现在ros程序的CMakeLists.txt中,我加入了C+11编译的选项,删掉后则没问题。原来在C+11下编译PCL还有这问题,于是在网上查了。如果要用C+11编译...

2018-12-23 16:53:12 4101 2

原创 用qmake搭建框架之加载静态、共享库

目录一、建立大型工程1.1 建立静态库1.2 建立共享库二、调用生成的库文件三、运行时加载共享库关于插件关于打包 关于qmake的语法可以参考:http://doc.qt.io/qt-5/qmake-manual.html。这里是qt5的,qt4和qt5的写法还略有区别。一般来说,我们使用qt creator建立的工程都是以.pro结尾,实际上这里涉及到的就...

2018-12-23 16:26:38 2886

原创 如何用cmake搭建ros工程,make编译而不是catkin_make

用ros的都知道一般是用catkin_create_pkg命令创建一个新的包,然后修改CMakeLists.txt文件,最后用catkin_make进行编译。之前的文章《三种方法在ROS中加载Qt库进行GUI设计》也说过如何搭建环境并进行ros开发,而实际上catkin_make也是对cmake的一定封装,因此用cmake加make去开发ros程序更方便简洁。我们知道qt工程实际用的qma...

2018-10-31 20:39:36 6313 4

原创 ros中rqt_reconfigure源码解读及其C++实现

ROS中参数如需实时更新得采用dynamic_reconfigure机制,这样用户在客户端修改参数后不需要重启master,直接向服务端发送请求,然后服务端通过回调函数确认来完成参数的动态重配置,具体服务端、客户端的写法可参见dynamic_reconfigure/Tutorials和《ROS动态调参(dynamic reconfigure)客户端服务端之C++ Python实现》。此外,ROS还...

2018-09-08 18:18:24 4159

原创 ROS中slam_gmapping、map_server源码解读及其librviz的使用

SLAM全称simultaneous localization and mapping,即实时定位与地图构建。也就是说导航离不开地图,目前常用的地图构建方法有三种:1、gmapping,一种基于粒子滤波的算法,依赖里程计数据。ROS中的slam_gmapping包也是调用了openslam_gmapping开源算法。openslam_gmapping的介绍及其源码可在http://wiki....

2018-08-11 19:41:16 7564 53

原创 ROS工程中C++调用python函数

在ROS api程序中,大部分函数的实现是用的python,python语言简单易学,特别做一些测试和调试非常简单。因此,在C++中调用python函数会极大地减少工作量。在C++中调用python函数C++调用python函数,python中用有Python.h头文件起到了很大作用。相关的函数介绍可在 Extending Python with C or C++ 中找到。(这个是针对python...

2018-06-09 20:15:34 3918 8

原创 通过OpenNI2获取数据并转至OpenCV格式及点云生成

OpenNI简介OpenNI(Open Natural Interaction)中文译为开放自然语言交互,用官方的表述来讲就是a standard framework for 3D sensing,用于3D感知的开发接口。OpenNI2是第二代版本(官网 http://structure.io/openni),相对于第一代更加专注于对3D设备的支持和数据的获取,移除了手势识别等中间件的方式,使...

2018-04-28 16:25:38 3530

原创 在ROS中利用PyQt写GUI程序

前段时间买了本王硕、孙洋洋写的《PyQt5快速开发与实战》,大致浏览了下,内容新,熟悉Qt5的人还是挺容易上手的。书中使用的环境为windows,PyQt5.9,Python3.5,Eric 6,Qt 5.9。笔者在自己的电脑上用的win7,Python3.6,PyQt5和PyCharm搭载了该环境,并写了一些测试小程序。PyQt可以在Riverbank上下到。Riverbank这个公司还提供了很...

2018-04-01 15:25:03 7355 6

原创 ros opencv qt yaml综合运用之滤波

本文是针对前面三篇所写内容:1、三种方法在ROS中加载Qt库进行GUI设计2、运用ROS和OpenCV进行简单的图像处理之检测3、在ROS中处理yaml文件进行的一个结合,来综合运用ros,opencv,qt和yaml-cpp库。 首先用catkin_create_pkg命令新建一个ROS工程,然后CMakeLists.txt文件中,依次包含opencv,qt和yaml-c...

2018-03-17 18:23:25 1461

原创 ROS动态调参(dynamic reconfigure)客户端服务端之C++ Python实现

在ROS系统中,我们需要实时修改参数,并能马上看到运行效果。这一功能是通过ros dynamic_reconfigure包实现的。官网教程如下:dynamic_reconfigure/Tutorials。具体操作流程可简述为如下:首先写一个.cfg文件,python语法。然后在CMakeLists.txt文件中添加generate_dynamic_reconfigure_options用于编译...

2018-03-12 20:21:06 7838 15

原创 在ROS中处理yaml文件

ROS中的参数服务器(Parameter Server)的相关操作可参见roscpp_tutorials/Tutorials/Parameters。如果想要载入参数,可以通过编写yaml文件,然后在launch文件中加入<rosparam file="$(find readyaml)/rosYaml.yaml" command="load"/>可以写个模板类来加载参数:...

2018-03-10 16:15:10 22197

原创 运用ROS和OpenCV进行简单的图像处理之检测

本文主要讲述在ROS下使用opencv进行图像处理,并给出了一个详细示例。首先建立一个ros包,在CMakeLists.txt中加入以下代码段,用于找到并链接OpenCV。好像安装完整版的ROS会顺带把OpenCV 2.4.x也装了,没有的话直接去OpenCV官网或者github下载源码编译安装。系统中存在多个opencv版本的情况,可参考《ubuntu 安装使用多版本opencv》博客。find...

2018-02-24 15:14:42 3991

原创 三种方法在ROS中加载Qt库进行GUI设计

编写ros程序,因为有时会涉及到界面设计,所以本人主要用的QtCreator IDE。首先当然是安装QtCreator,这个网上有很多安装教程和下载资源,非常简单。由于Qt的工程大多采用qmake对.pro文件进行编译,而在ros工程中运用的是catkin_make(实际也是对cmake的一个封装,语法都一样),因此很有必要了解下如何用cmake去写Qt工程,这里给个链接(Qt_Cmake_Man...

2018-02-23 17:18:04 16009 24

原创 GIT学习笔记

Git是一款免费、开源的分布式版本控制系统,可以有效、高速的处理从很小到非常大的项目版本管理。学习git可以参见《Git版本控制管理》一书,O'REILLY出版社。仓库1、创建仓库 $ git init repo_name2、克隆仓库 $ git clone from [to]将from的仓库克隆到to。from可以是本地仓库或远程仓库,如果没有to参数,创建跟from仓库同名的仓库目录。3、查看...

2018-02-22 16:03:22 202

原创 欢迎使用CSDN-markdown编辑器

本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl + Q插入链接 Ctrl +

2017-06-08 22:30:53 146

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除