我是OpenCV和Python的新手,在去除输入图像中的噪点时遇到了问题。我只想提取WBC的核,所以我使用加法突出显示了核,并使用阈值去除了图像中的RBC。我成功去除了RBC,但没有去除血小板,并且边界上出现了一些线条。我还尝试使用膨胀,腐蚀,打开和关闭对图像进行降噪处理,但原子核被破坏了。
这是我的代码:
img = cv2.imread('1.bmp')
img_2 = cv2.imread('1.bmp')
input_img = cv2.addWeighted(img, 0.55, img_2, 0.6, 0)
retval, threshold = cv2.threshold(input_img, 158, 255, cv2.THRESH_BINARY)
threshold = cv2.cvtColor(threshold, cv2.COLOR_BGR2GRAY)
retval2, threshold2 = cv2.threshold(threshold, 0, 255,
cv2.THRESH_BINARY+cv2.THRESH_OTSU)
blur2 = cv2.medianBlur(threshold2,5)
这是原始图片:
阈值处理后:
答案 0 :(得分:1)
如果突出显示的WBC的核总是在阈值化之前最大的轮廓,我建议使用$("#table-body").hide();
$("#moreInfo").on("click", function() {
$("#table-body").toggle();
});
单独存储它并去除较小的斑点,如下所示:
findContours
我的代码是C ++,但是您可以找到python示例:How to detect and draw contours using OpenCV in Python?