OpenCV houghLinesP parameters

前端 未结 4 1150
情深已故
情深已故 2020-12-10 01:15

I am having difficulty finding the lines on a chessboard in this image using HoughLinesP with OpenCV in Python.

In an attempt to understand the parameters of HoughLi

4条回答
  •  半阙折子戏
    2020-12-10 01:51

    • edges: Output of the edge detector.
    • lines: A vector to store the coordinates of the start and end of the line.
    • rho: The resolution parameter \rho in pixels.
    • theta: The resolution of the parameter \theta in radians.
    • threshold: The minimum number of intersecting points to detect a line.

    Sample application

    import cv2
    import numpy as np
    
    img = cv2.imread('sudoku.png', cv2.IMREAD_COLOR)
    # Convert the image to gray-scale
    gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
    # Find the edges in the image using canny detector
    edges = cv2.Canny(gray, 50, 200)
    # Detect points that form a line
    lines = cv2.HoughLinesP(edges, 1, np.pi/180, 100, minLineLength=10, maxLineGap=250)
    # Draw lines on the image
    for line in lines:
        x1, y1, x2, y2 = line[0]
        cv2.line(img, (x1, y1), (x2, y2), (255, 0, 0), 3)
    
    # Show result
    img = cv2.resize(img, dsize=(600, 600))
    cv2.imshow("Result Image", img)
    
    if cv2.waitKey(0) & 0xff == 27:  
        cv2.destroyAllWindows()
    

提交回复
热议问题