利用OpenCV实现局部动态阈值分割,参考Halcon dyn_threshold算子的思路实现。
# include“dialog.h” # include & lt; QApplication> # include“cv.h” # include“highgui.h” # include & lt; QDebug> int主要(int命令行参数个数,char * argv []) { IplImage * img=cvLoadImage (“D:/cs/1227/f9.bmp ", 0); IplImage *=cvCreateImage (cvGetSize (img), img→深度,1); cvSmooth (img, CV_BLUR 50); IplImage * res=cvCreateImage (cvGetSize (img), img→深度,1); qDebug () & lt; & lt; img→nChannels; 双=0; 双b=0; (int i=0; i< img→高度;我+ +){ (int j=0; j< img→宽度;j + +) { CvScalar颜色=cvGet2D (img, i, j); CvScalar color1=cvGet2D (, i, j); 一个=color.val [0]; b=color1.val [0];//=exp (); CvScalar c=CvScalar (b + 128); cvSet2D (res, i, j c); } } cvThreshold(150255年,res, CV_THRESH_BINARY_INV); cvNamedWindow("形象",0); cvShowImage(“形象”,res); cvSaveImage (“D:/cs/cs.bmp”); cvWaitKey (0); cvReleaseImage(和img); cvDestroyWindow(“图像”); 返回0; } >之前以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
利用OpenCV实现局部动态阈值分割