Opencv图像处理之轮廓外背景颜色改变
本文实例为大家分享了Opencv轮廓外背景颜色改变的具体代码,供大家参考,具体内容如下
自行学习弄得简单代码,使用了图像中的轮廓发现以及提取,再绘制出来,改变轮廓外的像素
首先,头文件,写的比较多,没用的可以自己去除
#include#include #include"opencv2/imgproc/imgproc.hpp" #include #include #include //命名空间 usingnamespacecv; usingnamespacestd;
//图片数据名字,原图,灰度图,二值图,直方图 Matsrc,src_gray,dst,src_equ; //声明一个函数,建立滑动条 staticvoidon_trackbar(int,void*);
主函数
intmain(intargc,char**argv) { //图片读入 src=imread("D:\\PersonWork\\OpenCV\\program\\picturedata\\0400.bmp"); //判断是否存在 if(!src.data) { cout<<"Imagenofind,error!"<回调函数
staticvoidon_trackbar(intpos,void*) { //二值化 threshold(src_gray,dst,pos,255,CV_THRESH_BINARY); imshow("二值图",dst); //直方均匀化 equalizeHist(dst,src_equ); //识别轮廓 vector>contours; vector hierarchy; findContours(src_equ,contours,hierarchy,CV_RETR_CCOMP,CV_CHAIN_APPROX_NONE); //轮廓数量,可没有 //intlen=contours.size(); //cout< (j); for(inti=0;i 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。