您好,登錄后才能下訂單哦!
本篇文章為大家展示了使用OpenCV怎么實現圖像的直線檢測,內容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。
1、代碼部分:
// Detect_Lines.cpp : 定義控制臺應用程序的入口點。 // #include "stdafx.h" #include <cv.h> #include "highgui.h" using namespace std; using namespace cv; void drawDetectLines(Mat& image,const vector<Vec4i>& lines,Scalar & color) { // 將檢測到的直線在圖上畫出來 vector<Vec4i>::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<Vec4i> 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怎么實現圖像的直線檢測,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。