我对 OpenCV 完全陌生,并且正在尝试分析生物图像。但是,我无法量化您在这些图片上看到的“点”:
1.) 这是一张图片,您可以清楚地看到红色背景上的红点。
2.)在这张照片上,由于强烈的背景信号,很难识别这些点:
3.) 然而,它们是一张大的显微镜图像的一部分:
我正在尝试编写一个程序来量化每个粒子并编写以下 OpenCV 脚本:
import cv2
import numpy as np
img = cv2.imread('image.png')
mask = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
th = 35
mask[mask<th] = 0
mask[mask>0] = 255
mask = np.stack([mask, mask, mask], axis=2)
result = np.hstack((img, mask))
cv2.namedWindow("peaks", cv2.WINDOW_NORMAL)
cv2.imshow("peaks", result)
cv2.waitKey(0)
cv2.destroyAllWindows()
然而,这只适用于没有强烈嘈杂背景的图像:
但没有一个具有强大背景的人:
这非常令人沮丧,因为背景噪音导致成像非常糟糕 - 但是有没有办法分析粒子?我听说过自适应阈值。它对这个问题有效吗?我会很高兴得到任何帮助!
亲切的问候,柱间