''' 特征點檢測: 常用特征點檢測有:STAR特征點檢測 / SIFT特征點檢測 特征點檢測結合了邊緣檢測與角點檢測從而識別出圖形的特征點。 STAR特征點檢測相關API如下: import cv2 as cv # 創建STAR特征點檢測器 star = cv.xfeatures2d.StarDetector_create() # 檢測出gray圖像所有的特征點 keypoints = star.detect(gray) # drawKeypoints方法可以把所有的特征點繪制在mixture圖像中 cv.drawKeypoints(original, keypoints, mixture, flags=cv.DRAW_MATCHES_FLAGS_DRAW_RICH_KEYPOINTS) cv.imshow('Mixture', mixture) ''' import cv2 as cv original = cv.imread('./ml_data/table.jpg') cv.imshow('Original', original) gray = cv.cvtColor(original, cv.COLOR_BGR2GRAY) cv.imshow('Gray', gray) # 創建特征點檢測器 star = cv.xfeatures2d.StarDetector_create() keypoints = star.detect(gray) mixture = original.copy() cv.drawKeypoints(original, keypoints, mixture, flags=cv.DRAW_MATCHES_FLAGS_DRAW_RICH_KEYPOINTS) cv.imshow('Mixture', mixture) cv.waitKey()
''' 特征點檢測: 常用特征點檢測有:STAR特征點檢測 / SIFT特征點檢測 特征點檢測結合了邊緣檢測與角點檢測從而識別出圖形的特征點。 STAR特征點檢測相關API如下: import cv2 as cv # 創建STAR特征點檢測器 star = cv.xfeatures2d.StarDetector_create() # 檢測出gray圖像所有的特征點 keypoints = star.detect(gray) # drawKeypoints方法可以把所有的特征點繪制在mixture圖像中 cv.drawKeypoints(original, keypoints, mixture, flags=cv.DRAW_MATCHES_FLAGS_DRAW_RICH_KEYPOINTS) cv.imshow('Mixture', mixture) ''' import cv2 as cv original = cv.imread('./ml_data/table.jpg') cv.imshow('Original', original) gray = cv.cvtColor(original, cv.COLOR_BGR2GRAY) cv.imshow('Gray', gray) # 創建特征點檢測器 sift = cv.xfeatures2d.SIFT_create() keypoints = sift.detect(gray) mixture = original.copy() cv.drawKeypoints(original, keypoints, mixture, flags=cv.DRAW_MATCHES_FLAGS_DRAW_RICH_KEYPOINTS) cv.imshow('Mixture', mixture) cv.waitKey()