Quantcast
Channel: OpenCV Q&A Forum - RSS feed
Viewing all articles
Browse latest Browse all 2088

Contour + hough Transformation

$
0
0
Hello folks, currently, I'm working on a project where I have to detect a card let say "visiting card" so I used contour for that, the results are fine so to make the detection robust I was going through this paper http://vision.cs.uiuc.edu/~ddtran2/pubs/tlhdu_isimp04.pdf. This paper combine 2 approaches. contour + hough transformation for robust results. In this paper it's written that: ***used contour to detect closed boundaries of object and then transformed contour lines to hough coordinates to find intersected parallel line*** Kindly provide me some solution to solve the problem I detected the contour but I don't know how to transformed the contour lines to hough coordinates here is my code: gray = cv2.cvtColor(image,cv2.COLOR_BGR2GRAY) gray = cv2.bilateralFilter(gray,11, 17, 17) edges = cv2.Canny(gray,50,110) _,contours,_ = cv2.findContours(edges,cv2.RETR_CCOMP, cv2.CHAIN_APPROX_SIMPLE) if len(contours)!=0: cv2.drawContours(gray, contours, -1, (255,0,0), 3) c = max(contours,key=cv2.contourArea) M = cv2.moments(c) cx = int(M['m10']/M['m00']) cy = int(M['m01']/M['m00']) cv2.circle(image, (cx, cy), 7, (255, 255, 255), -1) cv2.putText(image,"centre",(cx - 20, cy - 20),cv2.FONT_HERSHEY_SIMPLEX, 0.5, (255, 255, 255), 2) peri = cv2.arcLength(c, True) approx = cv2.approxPolyDP(c, 0.02 * peri, True) print("approx",approx) x,y,w,h = cv2.boundingRect(approx) print("x,y,w,h",x,y,w,h) cv2.rectangle(image,(x,y),(x+w,y+h),(0,255,0),2) cv2.imshow("moment",image) cv2.waitKey(1) cv2.destroyAllWindows()

Viewing all articles
Browse latest Browse all 2088

Trending Articles