博客
关于我
ROS:OpenCV canny边缘检测
阅读量:332 次
发布时间:2019-03-04

本文共 1710 字,大约阅读时间需要 5 分钟。

#include 
#include
#include
#include
#include
using namespace cv;//包含cv命名空间int main(int argc, char** argv){ ros::init(argc, argv, "canny_proc_node"); ros::NodeHandle nh; cv::VideoCapture capture(0); //0为读取摄像头,“video.format"为读取本地视频 if (!capture.isOpened()) { ROS_ERROR_STREAM("Failed to open video device\n"); ros::shutdown(); } Mat edges; //image_transport负责订阅和发布 image_transport::ImageTransport it(nh); image_transport::Publisher pub_image = it.advertise("canny_proc", 1); while (ros::ok()) { Mat frame; capture >> frame; //载入 if (frame.empty()) { ROS_ERROR_STREAM("Failed to capture image!"); ros::shutdown(); } cvtColor(frame, edges, CV_BGR2GRAY); blur(edges, edges, Size(7, 7)); Canny(edges, edges, 0, 30, 3); //将图像从cv::Mat类型转化成sensor_msgs/Image类型并发布 pub_image.publish(cv_bridge::CvImage(std_msgs::Header(), "mono8", edges).toImageMsg()); //将图像从sensor_msgs/Image类型转化成cv::Mat类型 /* cv_bridge可以有选择的对颜色和深度信息进行转化。为了使用指定的特征编码,就有下面集中的编码形式: mono8: CV_8UC1, 灰度图像 mono16: CV_16UC1,16位灰度图像 bgr8: CV_8UC3,带有颜色信息并且颜色的顺序是BGR顺序 rgb8: CV_8UC3,带有颜色信息并且颜色的顺序是RGB顺序 bgra8: CV_8UC4, BGR的彩色图像,并且带alpha通道 rgba8: CV_8UC4,CV,RGB彩色图像,并且带alpha通道 */ imshow("canny", edges); waitKey(3); // opencv刷新图像 3ms } ros::spin();}

在CMakeLists.txt中添加

find_package(OpenCV REQUIRED)
target_link_libraries(cannyproc  ${catkin_LIBRARIES}  ${OpenCV_LIBRARIES})

Q:命名空间的使用using namespace cv;

不清楚为什么,在未添加命名空间cv情况下使用cv::blur会编译错误,而添加了上述命名空间的声明后正常。望解答

转载地址:http://waxq.baihongyu.com/

你可能感兴趣的文章
NIFI数据库同步_多表_特定表同时同步_实际操作_MySqlToMysql_可推广到其他数据库_Postgresql_Hbase_SqlServer等----大数据之Nifi工作笔记0053
查看>>
NIFI汉化_替换logo_二次开发_Idea编译NIFI最新源码_详细过程记录_全解析_Maven编译NIFI避坑指南001---大数据之Nifi工作笔记0068
查看>>
NIFI汉化_替换logo_二次开发_Idea编译NIFI最新源码_详细过程记录_全解析_Maven编译NIFI避坑指南002---大数据之Nifi工作笔记0069
查看>>
NIFI集群_内存溢出_CPU占用100%修复_GC overhead limit exceeded_NIFI: out of memory error ---大数据之Nifi工作笔记0017
查看>>
NIFI集群_队列Queue中数据无法清空_清除队列数据报错_无法删除queue_解决_集群中机器交替重启删除---大数据之Nifi工作笔记0061
查看>>
NIH发布包含10600张CT图像数据库 为AI算法测试铺路
查看>>
Nim教程【十二】
查看>>
Nim游戏
查看>>
NIO ByteBuffer实现原理
查看>>
Nio ByteBuffer组件读写指针切换原理与常用方法
查看>>
NIO Selector实现原理
查看>>
nio 中channel和buffer的基本使用
查看>>
NIO_通道之间传输数据
查看>>
NIO三大组件基础知识
查看>>
NIO与零拷贝和AIO
查看>>
NIO同步网络编程
查看>>
NIO基于UDP协议的网络编程
查看>>
NIO笔记---上
查看>>
NIO蔚来 面试——IP地址你了解多少?
查看>>
NISP一级,NISP二级报考说明,零基础入门到精通,收藏这篇就够了
查看>>