赞
踩
随着工业自动化、智能化的不断推进,机器视觉(2D/3D)在工业领域的应用和重要程度也同步激增(识别、定位、抓取、测量,缺陷检测等),而针对不同作业场景进行解决方案设计时,通常会借助PCL、OpenCV、Eigen等简单方便的开源算法库进行方案的快速验证和迭代以满足作业场景下的目标需求。
为了让对工业机器视觉方向感兴趣的同学能够少走一些弯路,故推出了此一系列简易入门教程示例,让初次使用者能够最简单直观地感受到当前所用算法模块的执行效果。
后续会逐步扩增与工业机器视觉相关的一些其它内容,如:
项目案例剖析、场景数据分析、基础算法模块、相机评测 等;
如有兴趣可加入群聊(若入群二维码被屏蔽,则可以通过Q群(1032861997)或评论、私信博主“群聊”,邀请入群),与同道同学及圈内同行一起交流讨论。
展示图像高斯滤波前后的效果对比;
/* * @File: gaussian_filter.cpp * @Brief: opencv course * @Description: 展示图像高斯滤波前后的效果对比 * @Version: 0.0.1 * @Author: MuYv */ #include <iostream> #include <string> #include <opencv2/opencv.hpp> int main(int argc, char** argv){ if(argc != 2){ std::cout<<"Usage: exec img_file_path"<<std::endl; return -1; } const std::string kImgFilePath = argv[1]; // 加载为 rgb 3通道彩色图数据 cv::Mat img_src = cv::imread(kImgFilePath, cv::IMREAD_COLOR); //进行高斯滤波操作 cv::Mat img_gaussian_filter; cv::GaussianBlur(img_src, img_gaussian_filter, cv::Size( 5, 5 ), 0, 0); cv::imshow("img_src", img_src); cv::imshow("img_gaussian_filter", img_gaussian_filter); // 等待n毫秒后关闭窗口,0代表一直开启,直到任意按键触发关闭窗口 cv::waitKey(0); return 0; }
图像滤波、平滑等相关处理操作的目的是在于弱化像素间跳变梯度,将后续需要依靠像素跳变梯度操作的泛性、鲁棒性提升;
注:部分测试所用图片数据来源于网络,如有侵权,请联系博主删除,谢谢。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。