How to find the extreme corner point in image ?

后端 未结 1 747
粉色の甜心
粉色の甜心 2020-12-18 11:59

Form the source images above ( source image1、image2), I wanna find the extreme corner point and get the points like destination image1、image2 what I dr

1条回答
  •  粉色の甜心
    2020-12-18 12:44

    You can use cv2.goodFeaturesToTrack() for corner detection. The function takes four parameters

    corners = cv2.goodFeaturesToTrack(image, maxCorners, qualityLevel, minDistance)
    
    • image - Input 8-bit or floating-point 32-bit grayscale single-channel image
    • maxCorners - Maximum number of corners to return
    • qualityLevel - Minimum accepted quality level of corners between 0-1. All corners below quality level are rejected
    • minDistance - Minimum possible Euclidean distance between corners

    import cv2
    
    image = cv2.imread('1.png')
    gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
    
    corners = cv2.goodFeaturesToTrack(gray,10,0.2,20)
    
    for corner in corners:
        x,y = corner.ravel()
        cv2.circle(image,(x,y),5,(36,255,12),-1)
    
    cv2.imshow('image', image)
    cv2.waitKey()
    

    0 讨论(0)
提交回复
热议问题