使用OpenCV怎么实现图像的直线检测-创新互联
本篇文章为大家展示了使用OpenCV怎么实现图像的直线检测,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。
创新互联基于分布式IDC数据中心构建的平台为众多户提供珉田数据中心 四川大带宽租用 成都机柜租用 成都服务器租用。1、代码部分:
// Detect_Lines.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #include#include "highgui.h" using namespace std; using namespace cv; void drawDetectLines(Mat& image,const vector & lines,Scalar & color) { // 将检测到的直线在图上画出来 vector ::const_iterator it=lines.begin(); while(it!=lines.end()) { Point pt1((*it)[0],(*it)[1]); Point pt2((*it)[2],(*it)[3]); line(image,pt1,pt2,color,2); //线条宽度设置为2 ++it; } } int _tmain(int argc, _TCHAR* argv[]) { Mat src_img=imread("..\\image_norm\\71253.jpg"); imshow("src_img",src_img); Mat I; cvtColor(src_img,I,CV_BGR2GRAY); Mat contours; Canny(I,contours,125,350); threshold(contours,contours,128,255,THRESH_BINARY); vector lines; HoughLinesP(contours,lines,1,CV_PI/180,80,50,10); drawDetectLines(src_img,lines,Scalar(0,255,0)); imshow("Detect_Lines",src_img); cvWaitKey(0); return 0; }
上述内容就是使用OpenCV怎么实现图像的直线检测,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注创新互联网站建设公司行业资讯频道。
另外有需要云服务器可以了解下创新互联建站www.cdcxhl.com,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
当前文章:使用OpenCV怎么实现图像的直线检测-创新互联
URL网址:http://azwzsj.com/article/geosh.html