自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(100)
  • 收藏
  • 关注

原创 ROS2+OpenCV综合应用--11. AprilTag标签码跟随

apriltag标签码追踪是在apriltag标签码识别的基础上,增加了小车车体运动的功能,控制车体从而使摄像头会保持标签码在视觉中间左右运动,在根据物体在摄像头成像近大远小的原理根据这一特性,从而实现标签码跟随功能。

2025-01-07 09:29:38 574

原创 ROS2+OpenCV综合应用--10. AprilTag标签码追踪

apriltag标签码追踪是在apriltag标签码识别的基础上,增加了小车摄像头云台运动的功能,摄像头会保持标签码在视觉中间而运动,根据这一特性,从而实现标签码追踪功能。

2024-12-31 09:27:58 567

原创 ROS2+OpenCV综合应用--9. AprilTag标签码识别

Apriltag是一种常用于机器视觉中的编码标志,它具有较高的识别率和可靠性,可用于各种任务,包括增强现实、机器人和相机校准。

2024-12-30 09:52:37 463

原创 ROS2+OpenCV综合应用--8. 视觉巡线自动驾驶

程序启动后,调整摄像头的俯仰角,把摄像头往下掰动,使得摄像头可以看到线,然后点击图像窗口,按下r 键进选色模式;接着在在画面中的线的区域内,框出所需要巡线的颜色,松开鼠标后会自动加载处理后的图像;最后按下空格键开启巡线功能。小车在运行过程中,遇到障碍物会停下并且蜂鸣器会响。

2024-12-27 16:31:02 911

原创 ROS2+OpenCV综合应用--7. 手掌控制二维云台舵机

MediaPipe是一款由Google开发并开源的数据流处理机器学习应用开发框架。它是一个基于图的数据处理管线,用于构建使用了多种形式的数据源,如视频、音频、传感器数据以及任何时间序列数据。MediaPipe是跨平台的,可以运行在嵌入式平台(树莓派等),移动设备(iOS和Android),工作站和服务器上,并支持移动端GPU加速。MediaPipe为实时和流媒体提供跨平台、可定制的ML解决方案。

2024-12-23 08:00:00 499

原创 ROS2+OpenCV综合应用--6. 手掌控制小车运动

MediaPipe是一款由Google开发并开源的数据流处理机器学习应用开发框架。它是一个基于图的数据处理管线,用于构建使用了多种形式的数据源,如视频、音频、传感器数据以及任何时间序列数据。MediaPipe是跨平台的,可以运行在嵌入式平台(树莓派等),移动设备(iOS和Android),工作站和服务器上,并支持移动端GPU加速。MediaPipe为实时和流媒体提供跨平台、可定制的ML解决方案。MediaPipe Hands是一款高保真的手和手指跟踪解决方案。

2024-12-18 09:00:00 1127

原创 ROS2+OpenCV综合应用--5. 手势控制小车做形状

功能开启后,摄像头捕获图像,识别相关手势来控制小车移动。这里当每个手势运动完后,会归回初始化位置,并且滴一声,等待下次的手势识别。MediaPipe Hands从一帧中推断出21个手值关节的3D坐标。

2024-12-17 09:15:00 323

原创 ROS2+OpenCV综合应用--4. 手势控制小车基础运动

self.media_ros.pub_vel(x,y,z) #这函数也是在media_library,py中。再新开一个终端,进入同一个docker,以下的 da8c4f47020a 修改成实际终端显示的ID。from media_library import * #这个库包含了检测手部,获取手势等函数。功能开启后,摄像头捕获图像,识别手势来控制小车移动。打开一个终端输入以下指令进入docker,出现以下界面就是进入docker成功。进入docker容器后,终端输入,

2024-12-16 08:45:00 286

原创 ROS2+OpenCV综合应用--3. mediapipe趣味玩法

MediaPipe是⼀款由Google开发并开源的数据流处理机器学习应⽤开发框架。它是⼀个基于图的数据处理管线,⽤于构建使⽤了多种形式的数据源,如视频、⾳频、传感器数据以及任何时间序列数据。MediaPipe是跨平台的,可以运⾏在嵌⼊式平台(树莓派等),移动设备(iOS和Android),⼯作站和服务器上,并⽀持移动端GPU加速。MediaPipe为实时和流媒体提供跨平台、可定制的ML解决⽅案。MediaPipe 的核⼼框架由 C++ 实现,并提供 Java 以及 Objective C 等语⾔的⽀持。

2024-12-15 08:45:00 813

原创 ROS2+OpenCV综合应用--2. AR视觉

增强现实(Augmented Reality),简称“AR”,技术是一种将虚拟信息与真实世界巧妙融合的技术,广泛运用了多媒体、三维建模、实时跟踪及注册、智能交互、传感等多种技术手段,将计算机生成的文字、图像、三维模型、音乐、视频等虚拟信息模拟仿真后,应用到真实世界中,两种信息互为补充,从而实现对真实世界的“增强”。AR系统具有三个突出的特点:①真实世界和虚拟世界的信息集成;②具有实时交互性;③是在三维尺度空间中增添定位虚拟物体。

2024-12-14 08:45:00 335

原创 ROS2+OpenCV综合应用--1. ROS+opencv案例

ROS 以自己的sensor_msgs/Image消息格式传递图像,无法直接进行图像处理,但是提供的【CvBridge】可以完美转换和被转换图像数据格式。【CvBridge】是一个 ROS 库,相当于ROS和Opencv之间的桥梁。Opencv和ROS图像数据转换如下图所示:下面有三个案例来展示如何使用CvBridge进行数据转换。

2024-12-13 08:15:00 1861

原创 ROS2-机器人底盘与控制--03、URDF模型

小车启动,终端运行程序,rviz中会显示URDF模型。

2024-12-12 08:00:00 2235

原创 ROS2-机器人底盘与控制--02、机器人控制

程序启动后,可以通过键盘控制小车运动。

2024-12-11 09:00:00 412

原创 ROS2-机器人底盘与控制--01、机器人信息发布

小车启动底盘驱动之后,会发布超声波、四路巡线等传感器模块数据,可以在docker中,运行命令去查询这些信息,也可以发布速度、蜂鸣器、RGB灯条等传感器的控制数据。

2024-12-10 09:00:00 772

原创 ROS2基础学习--6. ROS2节点

在通信时,不论采用何种方式,通信对象的构建都依赖于节点(Node),在ROS2中,一般情况下每个节点都对应某一单一的功能模块(例如:雷达驱动节点可能负责发布雷达消息,摄像头驱动节点可能负责发布图像消息)。一个完整的机器人系统可能由许多协同工作的节点组成,ROS2中的单个可执行文件(C++程序或Python程序)可以包含一个或多个节点。

2024-12-09 09:00:00 848

原创 ROS2基础学习--5. ROS2功能包

每个机器人可能有很多功能,比如移动控制、视觉感知、自主导航等,如果我们把这些功能的源码都放到一起当然也是可以的,但是当我们想把其中某些功能分享给别人时,就会发现代码都混合到了一起,很难拆分出来。功能包就是这个原理,我们把不同功能的代码划分到不同的功能包中,尽量降低他们之间的耦合关系,当需要在ROS社区中分享给别人的时候,只需要说明这个功能包该如何使用,别人很快就可以用起来了。所以功能包的机制,是提高ROS中软件复用率的重要方法之一。

2024-12-08 08:45:00 998

原创 ROS2基础学习--4. ROS2工作空间

在ROS机器人开发中,我们针对机器人某些功能进行开发时,各种编写的代码、参数、脚本等文件,需要放置在某一个文件夹里进行管理,这个文件夹在ROS系统中就叫做工作空间。所以工作空间是一个存放项目开发相关文件的文件夹,也是开发过程中存放所有资料的大本营。

2024-12-07 09:15:00 553

原创 ROS2基础学习--3. ROS2集成开发环境搭建

理论上,在ROS2中,只需要记事本就可以编写基本的ROS2程序,但是为了提高开发效率,可以安装集成开发环境,这里推荐使用:vscode。另外,终端、git也经常需要用到。

2024-12-06 08:30:00 1278

原创 ROS2基础学习--2. ROS2安装Humble

每次新开终端时,都得执行上述命令,或者也可以执行如下命令,将配置环境指令写入 ”~/.bashrc“ 文件,那么每次新启动终端时,不需要在手动配置环境。请先检查本地语言环境是否支持UTF-8编码,可调用如下指令检查并设置UTF-8编码。将ROS 2 apt存储库添加到系统,用apt授权我们的GPG密钥。注意:语言环境可以不同,但必须支持UTF-8编码。locale # 检查是否支持 UTF-8。到目前为止,ROS2就已经安装且配置完毕了。启动Ubuntu universe存储库。将存储库添加到源列表。

2024-12-05 09:30:00 1215

原创 ROS2基础学习--1. ROS2简介

ROS2是第二代的Robot Operating System,ROS1的升级版本,解决了ROS1存在的一些问题。ROS2最早出现的版本Arden是在2017年,随着版本的迭代,不断地更新与优化,现如今已经有了稳定的版本。与ROS1相通过,Linux版本与ROS2版本的选择也是有关系的,两者对应的版本如下,ROS2版本Ubuntu版本FoxyGalacticHumble根据自己的Linux版本,下载对应的ROS2版本,本产品课程以Humble版本为基础。

2024-12-04 09:45:00 328

原创 Docker基础学习--5. 进入机器人的docker容器

GUI即图形用户界面,这里主要是指:opencv显示的图像窗口、rviz界面、rqt界面等。这里的机器人就是raspbot v2小车,也就是已配置好各种开发依赖环境的raspbot v2小车容器在操作本章节教程前,请确保自己已经掌握了下面这些章节的知识,否则可能会感到学起来比较吃力。出现这种情况,请反复查看下面这些预先知识的内容,熟练掌握后会觉得很轻松,Come on,you are the best!

2024-12-03 10:00:00 1041

原创 Docker基础学习--4. docker数据处理

将应用和运行的环境打包形成容器运行,运行可以伴随着容器,但是我们对于数据的要求,是希望能够持久化的!就好比,你安装一个mysql,结果你把容器删了,就相当于删库跑路了,这肯定不行吧!所以我们希望容器之间有可能可以共享数据,docker容器产生的数据,如果不通过docker commit 生成新的镜像,使得数据作为镜像的一部分保存下来,那么当容器删除后,数据自然也就没有了!这样是行不通的!为了能保存数据在docker中我们就可以使用卷!让数据挂载到我们本地!这样数据就不会因为容器删除而丢失了!

2024-12-02 10:30:00 1149

原创 Docker基础学习--3. docker镜像深入理解和发布镜像

镜像是一种轻量级、可执行的独立软件包,它包含运行某个软件所需要的所有内容。我们将应用程序、配置打包成一个成型的、可交付、可部署的运行环境,包括代码、运行时所需要的库、环境变量和配置文件等,这个大包好的运行环境就是image镜像文件。只有通过镜像文件才能生成docker容器实例。

2024-12-01 17:30:00 859

原创 Docker基础学习--2. docker镜像容器常用命令

通常情况下,操作docker命令,需要加上前缀sudo,如下:但是添加docker用户组之后,就可以不用加sudo前缀了。添加上述命令之后,使用【docker images】命令测试,如果没报错,说明已经可以不使用sudo命令了。

2024-12-01 09:00:00 1011

原创 Docker基础学习--1. docker概述和docker安装

docker是一个应用容器引擎项目,基于go语言开发,开源。

2024-11-30 11:30:00 733

原创 小车AI视觉交互--8.手势跟随

前面我们介绍了使用 MediaPipe 实现手势识别,这章节我们利用 MediaPipe 结合手势识别和麦轮以及云台的控制,实现小车跟随手部,用手势控制小车运动的功能。

2024-11-30 08:30:00 256

原创 小车AI视觉交互--7. 自动驾驶地图沙盘Mini版

1.关闭开机大程序,如何关闭可以参考【】里的“2.调节四路巡线模块,如何调节可以参考【】‘’‘’3.因摄像头受环境光线影响较大,确保环境光线充足,且环境光线均匀。环境光线昏暗将会影响路标识别。4.启动前将jupyter leb内核环境切换为。

2024-11-29 09:00:00 1500

原创 小车AI视觉交互--6. 垃圾识别

利用yolov5-lite模型来实现积木块上垃圾图片识别,使用前将jupyter lab的内核环境切换为。

2024-11-28 17:30:00 561

原创 小车AI视觉交互--5.视觉巡线自动驾驶

通过对摄像头的画面进行处理,实现视觉巡线。

2024-11-28 08:30:00 972

原创 小车AI视觉交互--4.人脸跟随

结合摄像头云台实现人脸跟随。通过对人脸对象进行识别,并检测识别到的人脸的外切圆的圆形的x,y坐标与画面中心的差值,运用PID算法控制Y轴舵机和车体运动使识别目标位于画面中心位置。

2024-11-27 14:30:00 210

原创 小车AI视觉交互--3.人脸追踪

结合摄像头云台实现人脸追踪。通过对人脸对象进行识别,并检测识别到的人脸的外切圆的圆形的x,y坐标与画面中心的差值,运用PID算法控制舵机运动使识别目标位于画面中心位置。

2024-11-27 13:30:00 258

原创 小车AI视觉交互--2.颜色跟随

前面利用了颜色对象在摄像头画面的x,y不同位置通过云台进行跟踪,接下来我们可以在这个基础上修改下,x方向改为车身左右运动进行跟随,然后根据识别的图像外切圆大小进行前进的控制,通过二者叠加来整体控制小车电机运动。

2024-11-27 08:30:00 595

原创 小车AI视觉交互--1.颜色追踪

结合硬件,完成摄像头云台颜色追踪,通过对红色对象进行识别,并检测识别颜色的外切圆的圆形的x,y坐标与画面中心的差值,运用PID算法控制舵机运动使识别目标位于画面中心位置。

2024-11-26 16:30:00 495

原创 小车AI视觉识别--16.手指控制

MediaPipe是⼀款由Google开发并开源的数据流处理机器学习应⽤开发框架。它是⼀个基于图的数据处理管线,⽤于构建使⽤了多种形式的数据源,如视频、⾳频、传感器数据以及任何时间序列数据。MediaPipe是跨平台的,可以运⾏在嵌⼊式平台(树莓派等),移动设备(iOS和Android),⼯作站和服务器上,并⽀持移动端GPU加速。MediaPipe为实时和流媒体提供跨平台、可定制的ML解决⽅案。MediaPipe 的核⼼框架由 C++ 实现,并提供 Java 以及 Objective C 等语⾔的⽀持。

2024-11-26 09:15:00 377

原创 小车AI视觉识别--15.画笔

MediaPipe是⼀款由Google开发并开源的数据流处理机器学习应⽤开发框架。它是⼀个基于图的数据处理管线,⽤于构建使⽤了多种形式的数据源,如视频、⾳频、传感器数据以及任何时间序列数据。MediaPipe是跨平台的,可以运⾏在嵌⼊式平台(树莓派等),移动设备(iOS和Android),⼯作站和服务器上,并⽀持移动端GPU加速。MediaPipe为实时和流媒体提供跨平台、可定制的ML解决⽅案。MediaPipe 的核⼼框架由 C++ 实现,并提供 Java 以及 Objective C 等语⾔的⽀持。

2024-11-25 18:30:00 410

原创 小车AI视觉识别--14.三维物体识别

MediaPipe是⼀款由Google开发并开源的数据流处理机器学习应⽤开发框架。它是⼀个基于图的数据处理管线,⽤于构建使⽤了多种形式的数据源,如视频、⾳频、传感器数据以及任何时间序列数据。MediaPipe是跨平台的,可以运⾏在嵌⼊式平台(树莓派等),移动设备(iOS和Android),⼯作站和服务器上,并⽀持移动端GPU加速。MediaPipe为实时和流媒体提供跨平台、可定制的ML解决⽅案。MediaPipe 的核⼼框架由 C++ 实现,并提供 Java 以及 Objective C 等语⾔的⽀持。

2024-11-25 10:00:00 407

原创 小车AI视觉识别--13.人脸特效

MediaPipe是⼀款由Google开发并开源的数据流处理机器学习应⽤开发框架。它是⼀个基于图的数据处理管线,⽤于构建使⽤了多种形式的数据源,如视频、⾳频、传感器数据以及任何时间序列数据。MediaPipe是跨平台的,可以运⾏在嵌⼊式平台(树莓派等),移动设备(iOS和Android),⼯作站和服务器上,并⽀持移动端GPU加速。MediaPipe为实时和流媒体提供跨平台、可定制的ML解决⽅案。MediaPipe 的核⼼框架由 C++ 实现,并提供 Java 以及 Objective C 等语⾔的⽀持。

2024-11-24 17:00:00 287

原创 小车AI视觉识别--12.人脸检测

MediaPipe是⼀款由Google开发并开源的数据流处理机器学习应⽤开发框架。它是⼀个基于图的数据处理管线,⽤于构建使⽤了多种形式的数据源,如视频、⾳频、传感器数据以及任何时间序列数据。MediaPipe是跨平台的,可以运⾏在嵌⼊式平台(树莓派等),移动设备(iOS和Android),⼯作站和服务器上,并⽀持移动端GPU加速。MediaPipe为实时和流媒体提供跨平台、可定制的ML解决⽅案。MediaPipe 的核⼼框架由 C++ 实现,并提供 Java 以及 Objective C 等语⾔的⽀持。

2024-11-24 09:30:00 308

原创 小车AI视觉识别--11.手势识别

MediaPipe是⼀款由Google开发并开源的数据流处理机器学习应⽤开发框架。它是⼀个基于图的数据处理管线,⽤于构建使⽤了多种形式的数据源,如视频、⾳频、传感器数据以及任何时间序列数据。MediaPipe是跨平台的,可以运⾏在嵌⼊式平台(树莓派等),移动设备(iOS和Android),⼯作站和服务器上,并⽀持移动端GPU加速。MediaPipe为实时和流媒体提供跨平台、可定制的ML解决⽅案。MediaPipe 的核⼼框架由 C++ 实现,并提供 Java 以及 Objective C 等语⾔的⽀持。

2024-11-23 15:45:00 411

原创 小车AI视觉识别--10.yolov5-lite

YOLOv5 Lite在YOLOv5的基础上进行一系列消融实验,使其更轻(Flops更小,内存占用更低,参数更少),更快(加入shuffle channel,yolov5 head进行通道裁剪,在320的input_size至少能在树莓派4B上的推理速度可以达到10+FPS),更易部署(摘除Focus层和4次slice操作,让模型量化精度下降在可接受范围内)。

2024-11-23 09:00:00 329

Berkeley DB嵌入式数据库系统,无需独立服务器进程,为BerkeleyDBUI提供高效的数据管理基础

Berkeley DB嵌入式数据库系统,无需独立服务器进程,为BerkeleyDBUI提供高效的数据管理基础

2024-10-17

空空如也

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

TA关注的人

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