我是计算机视觉新手的微生物学学生,所以任何帮助都将受到极大的赞赏。
这个问题涉及我试图分析的显微镜图像。我想要实现的目标是计算图像中的细菌,但我需要先对图像进行预处理,以增强任何不会发出明亮荧光的细菌。我曾考虑使用几种不同的技术,如增强对比度或锐化图像,但这并不是我需要的。
我想在RBG刻度上将噪音(黑色空间)降低到0并增强绿色空间。我最初在OpenCV中编写了一个for循环,其阈值限制改变了每个像素,但我知道有更好的方法。
以下是我在原始图片的照片商店中所做的一个例子。
Original Image和enhanced Image。
我需要学习在python环境中执行此操作,以便我可以自动执行此过程。正如我所说的我是新手,但我熟悉python的OpenCV,mahotas,numpy
等等所以我并不完全依赖于特定的包。我对这些技术也很陌生,所以即使你指的是我正确的方向,我也愿意接受。
谢谢!
答案 0 :(得分:2)
您可以查看histogram equalization。这将强调绿色并减少黑色范围。有一个OpenCV教程here。之后,您可以尝试最佳产生细菌的thresholding mechanisms。
答案 1 :(得分:1)
使用TensorFlow:
TensorFlow非常适合此类任务,您无需担心不同的强度级别。
答案 2 :(得分:0)
我最初尝试直方图均衡但没有得到预期的结果。所以我使用自适应阈值使用均值过滤器:
th = cv2.adaptiveThreshold(img, 255, cv2.ADAPTIVE_THRESH_MEAN_C, cv2.THRESH_BINARY_INV, 3, 2)
然后我应用中值过滤器:
median = cv2.medianBlur(th, 5)
最后,我将椭圆内核形态闭合应用于
k1 = cv2.getStructuringElement(cv2.MORPH_ELLIPSE,(5,5))
dilate = cv2.morphologyEx(median, cv2.MORPH_CLOSE, k1, 3)
THIS PAGE会帮助您根据需要修改此结果。