嵌入式开发项目学习
陈一月的编程岁月
只做自己喜欢的事情、只热衷于自己的编程
展开
-
利用Gazebo搭建赛道,控制小车完成比赛(大学生智能车大赛室外光电组赛道仿真模拟)
ROS学习【18】-----利用Gazebo搭建赛道,控制小车完成比赛目录一、 ROS仿真功能包下载编译1、racecar功能包下载2、安装该功能包运行需要的控件3、racecar功能包编译4、测试是否编译成功二、 运行功能包自带的赛道1、运行赛道,控制小车进行位移2、进行gmapping建图三、 自行进行赛道搭建1、新建终端,打开Gazebo2、运行小车模型,导入刚刚的模型框架,然后保存world文件3、创建launch文件,填写赛道配置参数4、运行我们的地图5、进行gmapping建图四、 实现 小车自原创 2020-07-03 16:27:54 · 5328 阅读 · 13 评论 -
python人脸微笑识别1-----基于Ubuntu16.04的Python3+Dlib+Opencv实现人脸识别及摄像头人脸检测
python人脸识别-----基于Ubuntu16.04的dlib+python3实现人脸识别及摄像头人脸检测目录一、skimage及opencv-python库的安装1、skimage库的安装2、opencv-python库的安装二、face_recognition的下载及安装1、安装相关依赖2、pip3的安装3、face_recognition的下载4、扩展三、实现基础人脸识别1、项目创建及数据准备2、基础人脸识别python代码3、人脸识别结果4、整体python代码四、实现摄像头人脸检测1、摄像头人原创 2020-06-16 00:10:51 · 1454 阅读 · 4 评论 -
视觉SLAM学习【7】-----基于ubuntu16.04的深度及彩色图像立体匹配,并生成深度和彩色3D点云
在进行嵌入式视觉学习的时候,很多时候我们会用到立体匹配并生成3D点云,本次博客,林君学长主要带大家学习灰度及彩色图片的立体匹配,并生成灰度和彩色的3D点云,一起来看吧!一、数据准备和库的安装及配置1、数据准备1)、本次需要的数据比较简单,就是图片的准备,两张对比彩色图、两张对比深度图(1)、深度图(2)、彩色图对于以上图片呢,小伙伴可以通过截图获取就OK,并且,将以上图片放在创建的test1项目里的build文件夹下,后面会有说到!2、Pangolin库的下载安装及配置本次需要的库有原创 2020-06-11 19:13:31 · 1662 阅读 · 3 评论 -
ROS学习【18】-----利用Gazebo搭建赛道,控制小车完成比赛(大学生智能车大赛室外光电组赛道仿真模拟)
现在很多小伙伴在为全国大学生智能车比赛做准备,但在进行小车组装之前,一定会通过ROS进行赛道模拟,调试,一切准备就绪后才会进行现实中小车的组装,因此,测试是非常重要的,本次博客,林君学长主要带大家利用Gazebo搭建全国大学生智能车比赛的规则赛道,控制小车,跑完赛道,虽然只是简单的模拟,但对参赛的小伙伴来说,可以说非常重要了,有了一个入门的基础,接下来,一起看步骤了解吧!一、 ROS仿真功能包下载编译一下ROS的仿真功能包需要通过GitHub克隆下载,当然是网络的大佬写好了的,小伙伴如需要自己写,可以原创 2020-06-02 16:07:19 · 5371 阅读 · 18 评论 -
视觉SLAM学习【6】-----基于python的SIFT和ORB特征点提取及匹配的对比探索
在进行嵌入式开发的过程中,对于图像特征点的提取及匹配一直是一个重点问题,之前我们通过C++进行对应的orb特征点的匹配提取,本次博客,林君学长将带大家了解如何通过python实现SIFT和ORB两钟方法的特征点提取,理解sift 和orb在尺度缩放、旋转、仿射图上面的特征不变性,并进行两种提取方法的速度比较,一起来看吧!一、python终端安装需要的图像处理库1、打开终端,安装opencv-python1)、安装opencv-python库pip install --user opencv-pyth原创 2020-05-27 10:24:22 · 1941 阅读 · 3 评论 -
视觉SLAM学习【5】-----ubuntu16.04上基于KDevelop的VO框架搭建及特征提取与匹配
视觉SLAM学习【5】-----ubuntu16.04上基于KDevelop的VO框架搭建及特征提取与匹配目录一、VO框架简介1、什么是VO框架?2、VO框架的组成结构3、VO框架的项目构成4、VO框架的项目在KDevelop中的目录5、项目资源获取二、Sophus工具的安装1、Sophus工具的下载2、Sophus工具的编译三、基于KDevelop的VO框架搭建1、创建VO项目2、创建bin文件夹3、将g2o中的cmake_modules文件夹移动到该项目中4、新建config文件夹5、新建include原创 2020-05-15 03:17:15 · 956 阅读 · 7 评论 -
视觉SLAM学习【4】-----ubuntu16.04上KDevelop的安装、配置、项目创建以及外部嵌入式项目导入
ROS学习【21】-----ubuntu16.04上KDevelop的安装、配置、项目创建以及外部嵌入式项目导入目录一、KDevelop的安装1、KDevelop的三种安装方法2、KDevelop的图形界面二、KDevelop的项目创建1、创建新新项目2、创建文件,开始项目运行3、编写CMakeLists.txt文件4、再次编译5、运行三、外部导入嵌入式项目1、外部test项目内容2、导入test项目3、添加运行参数,配置运行4、实验完成,关闭KDevelop下实际工作中,我们大多数不会通过终端创建项目,原创 2020-05-13 19:36:00 · 1375 阅读 · 7 评论 -
视觉SLAM学习【3】-----视觉SLAM通过三角测量和PnP法估计特征点的空间位置(采用make编译方式)
ROS学习【20】-----视觉SLAM通过三角测量和PnP法估计特征点的空间位置目录一、G2O的安装1、g2o的下载2、文件上传ubuntu3、安装依赖库4、g2o的编译二、项目创建1、创建项目文件夹2、创建三角测量的cpp文件3、创建PnP法的cpp文件4、创建CMakeLists.txt配置文件三、编译项目1、文件准备2、项目进行编译2、结果运行嵌入式开发学习也慢慢的进入尾声了,从之前的ros学习,到gazebo再到机械臂的学习,到现在的slam视觉学习,层次逐渐上升,难度逐渐加大,本次博客,林君学原创 2020-05-13 12:05:28 · 1140 阅读 · 2 评论 -
视觉SLAM学习【2】-----ubuntu16.04基于kitti数据集的SLAM中ORB特征点提取及暴力匹配
ROS学习【19】-----ubuntu16.04基于kitti数据集的SLAM中ORB特征点提取及暴力匹配目录一、Kitti数据集1、什么是Kitti数据集?2、Kitti完整数据集的获取3、Kitti数据集上传至ubuntu二、编写kitti数据集的ORB特征点的提取及暴力匹配代码1、创建cpp格式文件2、编写相应功能的C++代码三、实验整体代码四、运行结果测试1、程序编译2、程序运行3、运行结果上次博客,林君学长讲解了如何对我们拍摄的物体进行SLAM中ORB特征点提取及暴力匹配;但这种匹配是但方面的原创 2020-05-09 16:06:39 · 821 阅读 · 1 评论 -
视觉SLAM学习【1】-----基于ubuntu16.04的SLAM中ORB特征点提取及暴力匹配
ROS学习【18】----基于ubuntu16.04的SLAM中ORB特征点提取及暴力匹配目录一、ORB特征点提取及暴力匹配定义1、什么是ORB特征点提取?2、什么是暴力匹配?二、进行相关数据准备1、拍摄图像2、特征点提取、匹配的文件夹创建3、在创建的文件夹中新建cpp文件4、图像特征点提取、暴力匹配的代码编写三、图像特征点匹配完整代码四、进行图像特征匹配测试1、编译slamORB.cpp文件2、...原创 2020-04-28 20:19:27 · 1105 阅读 · 2 评论 -
ROS学习【17】-----基于ubuntu16.04的ORB_SLAM2包的安装及配置
在进行ROS学习的时候,必不可少的学习阶段就是对于ORB_SLAM2的学习,同时,也是通过自己进行文件的编译而执行的可视化视觉系统,本次博客,林君学长主要带大家了解ORB_SLAM2的安装及配置ubuntu系统:ubuntuKylin-16.04opencv版本:opencv-3.4.1一、了解ORB_SLAM21、什么是ORB_SLAM2ORB-SLAM是西班牙Zaragoza大...原创 2020-04-17 18:14:49 · 1858 阅读 · 3 评论 -
ROS学习【16】-----Ubuntu16.04下openCV的安装及配置
ROS学习【16】-----Ubuntu16.04下openCV的安装及配置目录一、官网下载openCV3.4.11、openCV官网2、上传文件到Ubuntu系统上面二、opencv的安装1、解压到当前目录2、下载安装依赖库和编译工具cmake3、创建编译文件夹,进行编译4、编译安装opencv-3.4.15、对openCv进行配置三、编程程序、测试openCV是否安装完成1、创建测试文件夹并创...原创 2020-04-16 20:21:19 · 2256 阅读 · 5 评论 -
ROS学习【15】-----利用Gazebo+Rviz搭建基于MoveIt系统架构的机械臂控制可视化仿真
ROS学习【15】-----利用Gazebo+Rviz搭建基于MoveIt系统架构的机械臂控制仿真目录一、MoveIt系统架构的定义1、什么是MoveIt系统架构2、MoveIt系统架构的结构组成3、它的用户接口4、MoveIt的插件机制二、机械臂模型的创建1、机械臂Rviz仿真工程包(marm_description)及相应文件的创建2、机械臂Gazebo仿真工程包(marm_gazebo)及相...原创 2020-04-08 14:16:55 · 4651 阅读 · 13 评论 -
ROS学习【14】-----利用ROS中的导航框架(move_base,amcl),实现基于gazebo仿真机器人的自主导航
@TOC上次的ROS学习,我们通过SLAM框架下的gmapping及hector_slam实现了手动控制我们Gzebo仿真机器人进行地图的规划,并保存了相应的地图,那么如何让自己人按照我们规划的路线,或者是他自己规划相应的路线,进而完成在封闭环境下的自主导航呢?这就是本次博客,林君学长为大家介绍的,如何通过ROS中的导航框架(move_base,amcl),实现基于gazebo仿真机器人的自主导...原创 2020-04-03 16:00:51 · 4997 阅读 · 20 评论 -
ROS学习【13】-----学习使用ROS中SLAM功能包中的gmapping及hector_slam,完成带激光雷达机器人的室内的导航仿真,并保存机器人创建的地图(pgm)
ROS学习【13】-----使用ROS中SLAM功能包中的gmapping,完成雷达机器人的导航图仿真目录一、利用gazebo进行室内封闭环境的创建1、打开gazebo,进行室内封闭环境规划2、保存创建完成的室内环境的word文件二、将SLAM工程包导入ROS工作空间1、将如下链接的SLAM工程包下载到本地文件夹2、将SLAM工程包传输到ubuntu上面的ROS工作空间3、下载gmapping4、...原创 2020-04-01 01:25:19 · 4418 阅读 · 15 评论 -
ROS学习【12】-----基于ubuntu16.04运用Gazebo仿真软件搭建室内环境
ROS学习-----基于ubuntu16.04运用Gazebo仿真软件搭建室内环境目录一、打开gazebo,进行环境搭建1、运行gazebo仿真软件2、、进行环境搭建二、gazebo模型保存1、将上面搭建好的模型进行保存2、修改model.config文件,加入我们自己的备注,如下所示:三、配置launch文件,通过运行该文件打开刚刚创建的模型1、打开终端,运行gazebo2、在insert中找到...原创 2020-03-28 16:03:14 · 4769 阅读 · 14 评论 -
ROS学习【11】-----基于ubuntu16.04上Gazebo机器人环境搭建的传感器仿真(camera、kinect、Lidar),并通过Rviz进行数据显示
ROS学习-----基于ubuntu16.04上Gazebo机器人环境搭建的传感器仿真目录一、Gazebo环境搭建前的准备1、将搭建模型下载到我们的gazebo环境下2、升级我们的gazebo版本二、创建配置launch文件参数的world文件1、进入工程包mbot_gazebo2、创建文件夹worlds3、进入该文件夹4、创建playground.world文件5、创建room.world文件三...原创 2020-03-27 23:15:37 · 3267 阅读 · 10 评论 -
ROS学习【10】-----搭建Gazebo机器人物理仿真环境并展示空环境中的机器人
机器人的环境搭建,是学习嵌入式的一个重要过程,只有先模拟出搭建的机器人平台,发现并解决问题,才能在后续自己进行嵌入式机器人开发时候的解决关键的技术问题,避免不必要的问题,创造出优质的产品本次博客,林君学长主要带大家如何搭建Gazebo的机器人物理仿真环境并展示空环境下的Gazebo下的机器人一、运行Gazebo,查看是否能够正常打开程序1、新建一个终端,运行Gazebo仿真软件1)、运行G...原创 2020-03-25 13:35:26 · 3972 阅读 · 36 评论 -
ROS学习【9】-----通过python语言,进行自定义消息的通信话题编程
ROS学习-----通过python语言,进行自定义消息的通信话题编程目录一、创建自定义消息文件[.msg]1、进入项目工程包、创建msg文件2、打开个人信息文件,录入我们个人信息的属性二、配置package.xml文件内容1、进入项目包目录下,打开package.xml2、将package.xml文件中加入如下配置三、配置CMakeLists文件1、进入项目包目录下,打开CMakeLists.t...原创 2020-03-22 17:18:32 · 1385 阅读 · 5 评论 -
ROS学习【8】-----ubuntu16.04之摄像头的标定
ROS学习-----ubuntu16.04之摄像头的标定目录一、进行摄像头的挂载1、打开ubuntu16.04,进入图像界面后,选择VM上面的用户看,右击,选择可移动设备二、安装相机校准功能包1、安装命令如下,没有安装的就安装,安装过的会提示已经安装三、启动ROS,进行摄像头的标定1、启动ROS2、新建一个终端,运行相机节点3、准备棋盘4、进行摄像头校正1、输入如下命令进行摄像头的校正2、将棋盘放...原创 2020-03-18 15:19:04 · 1903 阅读 · 7 评论 -
ROS学习【7】-----ubuntu16.04中ROS调用笔记本的摄像头显示,并在Rviz中进行摄像区域的显示
ROS学习-----ubuntu16.04中ROS调用笔记本的摄像头显示,并在Rviz中进行摄像区域显示的目录一、打开ubuntu16.04之前的准备1、打开VM,点击我们ubuntu16.04右击,选择设置,如下所示:2、在设置页面选择usb控制器,并将usb兼容选择为==usb3.0==,然后关闭二、打开ubuntu,进行摄像头的连接1、打开ubuntu16.04,进入图像界面后,选择VM上面...原创 2020-03-17 19:18:22 · 2727 阅读 · 7 评论 -
ROS学习【6】-----如何通过rviz读入.bag格式的文件并播放?并解决“For frame [XX]: Fixed Frame [XXX] does not exist”的问题
ROS学习-----通过rviz读入.bag格式的文件并播放,并解决“For frame [XX]: Fixed Frame [XXX] does not exist”的问题rviz读入.bag格式的文件并播放步骤一、准备bag格式的文件二、打开Rviz并播放bag格式的文件1、打开终端(命名为==终端1==),运行ROS2、新建一个终端(命名为==终端2==),打开rviz软件3、配置我们的r...原创 2020-03-13 14:29:38 · 10424 阅读 · 12 评论 -
ROS学习【5】-----ROS TF编程:小乌龟的坐标变换,如何让一个乌龟跟随着另一个乌龟移动
ROS TF编程-----小乌龟的坐标变换,如何让一个乌龟跟随着另一个乌龟移动为了探索TF编程中的坐标变换,我们需要了解小乌龟(机器人)头部坐标系相对于全局坐标系的关系是什么样的?机器人夹取的物体相对于机器人中心坐标系的位置?机器人中心坐标系相对于全局坐标系的位置?这些是我们在进行嵌入式需要探索的坐标变换,只有明确机器人的相对位置,我们才能更好的进行更深入的学习!TF坐标变换实现广播TF变...原创 2020-03-11 11:52:27 · 5084 阅读 · 14 评论 -
ROS学习【5】-----ROS TF编程:广播并监听机器人的坐标变换
TF编程:广播并监听机器人的坐标变换例题:广播并监听机器人的坐标变换,已知激光雷达和机器人底盘的坐标关系,求解激光雷达数据在底盘坐标系下的坐标值?ROS的TF编程是对于嵌入式的进阶学习,有助于我们理解机器人运动与实时获取位置信息的方式,学习TF编程,我们就的指导TF功能包,什么是ROS的TF功能包?ROS的TF功能包:TF功能包,可以通过广播TF变换和监听TF变换获取如下坐标变换关系:...原创 2020-03-10 13:52:57 · 3161 阅读 · 22 评论 -
ROS学习【4】-----ROS动作编程:小乌龟移动到指定的位置,并且实时更新位置信息
ROS动作编程-----小乌龟移动到指定的位置,并且实时更新位置信息ros进行动作编程是进行嵌入式开发的一个核心步骤,也是帮助我们更好的了解机器学习的一项重要基础,通过动作编程,我们可以了解到机器人是如何进行我们人类行为得规划的,这也为我们未来进入人工智能打下一个良好的开端本次博客,林君学长主要让大家知道,如何让ros系统机器人ros如何通过我们认为代码运行打指定的位置,话不多说,一起来看步骤...原创 2020-03-09 12:08:57 · 7993 阅读 · 20 评论 -
ROS学习【3】-----ROS通信编程:小乌龟走正方形
ROS通信编程--------小乌龟走正方形ROS话题编程是嵌入式开发学习的一项重要内容,只有学会ros的话题与服务编程,我们才能够继续往更深入的地方学习嵌入式的系统开发,本次博客,林君将带大家学习怎么控制乌龟走正方形,并通过订阅服务实时在终端打印位置信息一、进入我们的工程包,创建小乌龟画圆发送程序1、新建一个终端,命名为终端1,然后进入我们的工程文件包cd ~/ros/src/comm/...原创 2020-03-06 18:49:19 · 9356 阅读 · 6 评论 -
ROS学习【2】-----ROS话题与服务编程:控制小乌龟画圆(旋转),并且通过代码订阅小乌龟的实时位置并在终端打印
ROS话题与服务编程:控制小乌龟画圆圈(旋转),并且通过代码订阅小乌龟的实时位置,并在终端打印ROS话题编程是嵌入式开发学习的一项重要内容,只有学会ros的话题与服务编程,我们才能够继续往更深入的地方学习嵌入式的系统开发,本次博客,林君将带大家学习怎么控制乌龟画圆(旋转),并通过订阅服务实时在终端打印位置信息一、进入我们的工程包,创建小乌龟画圆发送程序1、新建一个终端,命名为终端1,然后进入...原创 2020-03-05 00:21:26 · 7037 阅读 · 7 评论 -
ROS学习【2】-----ubuntu16.04中进行ROS通信编程(话题编程)
ROS通信编程-----话题编程作为嵌入式系统应用开发的重要支柱之一的ROS,是我们学习嵌入式开发的第一步,既要学习ROS,我们就得知道ROS怎么使用,今天,林君学长带大家开始学习ROS的第一步:ROS通信编程—话题编程一、创建一个工作区工作区可以作为一个独立的项目进行编译,存放ROS程序的源文件、编译文件和执行文件。1、建立工作区的,命令如下:打开ubuntu16.04的终端,依次输入...原创 2020-03-04 13:04:29 · 2435 阅读 · 5 评论 -
ROS学习【1】-----ubuntu16.04如何安装ROS,并解决重启后出现的the system is running in low-graphics mode 的解决方法
ubuntu16.04如何安装ROS,并解决重启后出现的the system is running in low-graphics mode 的解决方法在目前的人工智能机器学习或者是嵌入式开发与应用的过程中,学生党大多数都会用到基于linux安装ROS进行开发,那么我们如何进行ROS的安装呢,并解决后续的一些相关问题,这是林君学长本次博客给大家带来的内容,话不多说,一起来看吧!一、ubuntu...原创 2020-02-28 12:39:23 · 1314 阅读 · 6 评论 -
如何在Windows上通过VMware安装Ubuntu16.04系统?
在Windows上面安装Ubuntu16.04系统现在很多时候,我们做一些项目开发会在linux系统上面做,因为该系统开源,而且方便,但大多数会是在ubuntu上面去做,也是linux的一种,这里,给大家介绍如何在Windows上面安装Ubuntu系统!在Windows上面安装Ubuntu系统是需要软件的,VM、VirtualBox等等,这里,学长给大家介绍VM安装Ubuntu的方法,因为学长...原创 2020-01-29 12:44:55 · 1065 阅读 · 5 评论 -
怎么通过PC连接树莓派桌面端?
通过个人PC连接嵌入式开发设备树莓派端面很多时候,我们在做嵌入式开发的时候,我们通过树莓派进行操作,树莓派也是一个小型pc,但有时候我们没有给自己的树莓派一个单独的显示器,这这时候,我们就需要通过我们个人pc连接我们的树莓派端了,这里,学长给大家介绍几种连接树莓派桌面的方法!注意:在进行以下几种方法连接树莓派的时候,我们首先得确保树莓派和我们的pc处在同一个网络下面,例如,我们可以通过手机开...原创 2020-01-28 13:59:37 · 1649 阅读 · 0 评论