累积概率霍夫变换(程序)

#include <opencv2\opencv.hpp>
#include <opencv2\highgui\highgui.hpp>
#include <opencv2\imgproc\imgproc.hpp>

using namespace cv;
using namespace std;

int main()
{
Mat srcImg=imread(“s1.jpg”);
Mat dstImg,tmpImg;
Canny(srcImg,tmpImg,50,200,3);
cvtColor(tmpImg,dstImg,COLOR_GRAY2BGR);
//imshow(“转换后”,dstImg);
vector lines;
HoughLinesP(tmpImg,lines,1,CV_PI/180,80,50,10); //霍夫曼变换要配合着线一起使用才最方便
for(size_t i=0;i<lines.size();i++)
{
Vec4i l=lines[i]; //和之前的二维点的矢量还是有区别的
line(dstImg,Point(l[0],l[1]),Point(l[2],l[3]),Scalar(0,0,255),1,CV_AA);
}
imshow(“原始图像”,srcImg);
imshow(“边缘检测的图像”,tmpImg);
imshow(“效果图”,dstImg);
waitKey(0);
return 0;
}

猜你喜欢

转载自blog.csdn.net/nbxuwentao/article/details/86726137