因此,使用K意味着,我已经能够在过滤过程中实现这一目标。但是,我的目标是检测已发布图像中的白点,并将每个白点保存为自己的图像文件。我该怎么做呢?
答案 0 :(得分:3)
您可以使用blob detection 在Python中使用OpenCV:
Blob是图像中的一组连接像素,它们共享一些共同属性(例如灰度值)。在您的情况下,光连接区域是斑点,斑点检测的目标是通过以下步骤识别和标记这些区域:
python中的示例代码是:
# Standard imports
import cv2
import numpy as np;
# Read image
im = cv2.imread("blob.jpg", cv2.IMREAD_GRAYSCALE)
# Set up the detector with default parameters.
detector = cv2.SimpleBlobDetector()
# Detect blobs.
keypoints = detector.detect(im)
# Draw detected blobs as red circles.
# cv2.DRAW_MATCHES_FLAGS_DRAW_RICH_KEYPOINTS ensures the size of the circle corresponds to the size of blob
im_with_keypoints = cv2.drawKeypoints(im, keypoints, np.array([]), (0,0,255), cv2.DRAW_MATCHES_FLAGS_DRAW_RICH_KEYPOINTS)
# Show keypoints
cv2.imshow("Keypoints", im_with_keypoints)
cv2.waitKey(0)
具有检测到的斑点的示例性图像: