Opencv+ROS实现特定物品识别

演示

一、工具

ROS+opencv

ubuntu18.04

二、原理

基于opencv的颜色识别,捕捉特定物品的hsv值来进行轮廓框取,最后包装与ROS框架中。

  • 颜色识别
  • 鼠标事件响应
  • 保存hsv

按照我上一个博客完成了颜色识别,然后通过鼠标捕捉目标像素点的hsv值进行识别,最后将hsv保存再output.txt中

cpp 复制代码
ofstream file("output.txt");
        if (file.is_open()) {
            file << "H: "<<H<<" S: " << S<< "  V: "<<V<< endl;
            ROS_INFO("成功保存参数");
            file.close();
        } else {
            ROS_ERROR("Failed to open file");
        }

三、安装

bash 复制代码
cd ~/catkin_ws/src
git clone https://github.com/jiezz12/color_detect.git
cd ..
catkin_make

编译完成后进入launch文件夹修改一些参数

XML 复制代码
<?xml version="1.0"?>
<launch>
  <node pkg="color_detect" name="opencv_camera" type="color_detect" output="screen"/>
            <param name="image_view" type="bool" value="true"/>
            <param name="video_device" type="int" value="0"/>
            <param name="width" type="int" value="640"/>
            <param name="height" type="int" value="480"/>
            <param name="H" type="int" value="100"/>
            <param name="S" type="int" value="100"/>
            <param name="V" type="int" value="100"/>

</launch>
  • 图像可视化
  • 相机接口
  • 图像分辨率
  • 识别物品的hsv值

用法

cpp 复制代码
roslaunch color_detect color_detec.launch

会打开video窗口

通过点击窗口会保存新的hsv值

默认保存在/.ros/中,可以更改

话题查看

XML 复制代码
rostopic echo /opencv_camera/color_detect

发布方式为如果图像中没有识别物则会重复发布上次的坐标。

https://github.com/jiezz12/color_detect.githttps://github.com/jiezz12/color_detect.git

相关推荐
吴佳浩几秒前
构建企业级 DevOps 排错 Agent:从日志告警到自动化修复 PR
人工智能·agent·ai编程
机核研创社几秒前
卫衣长袖长裤一套的自动化工序拆解:拉链侧袋、螺纹口、裤腰、卷边各交给谁做
人工智能·自动化
seowmt3 分钟前
结构化数据和自然语言描述哪个更管用?答案分场景
人工智能·google·typescript·go语言·schema
海宇数据4 分钟前
零信任架构实战:基于海宇车型识别精准构建自动化违章处理网关
运维·人工智能·架构·自动化
XMAIPC_Robot6 分钟前
RK3588+CODESYS+RK182X AI 扩展机器人控制器解决方案|硬实时运动控制 + 大算力边缘 AI 融合实战
人工智能·机器人·rk3588+codesys·arm+codesys
陕西企来客7 分钟前
NAP 信息统一治理:构建生成式 AI 时代企业 GEO 增长的坚实底座-企来客科技NAP方法论-企来客科技NAP信息治理实战解析
大数据·人工智能·科技
a努力。8 分钟前
SpringBoot4迁移:Jackson3包名大变,注解别乱改
人工智能
SamChan909 分钟前
PDF翻译时页眉页脚总在捣乱?跨页重复文本块的检测与过滤实测
人工智能·python·ai·pdf·wpf
徐健峰10 分钟前
JEV 1.13 接入教程:Python 调用 Decisions API,实现分类、评分与 Agent 路由
人工智能
CubeSandbox14 分钟前
沙箱是选项,不是标配:花椒 Agent 平台的架构思考与 Cube 实践
大数据·人工智能·架构