【发布时间】:2019-08-27 21:19:47
【问题描述】:
我有一系列有趣的细胞生长图像,我的公司正在尝试以编程方式量化培养皿中有多少含有细胞,有多少没有。
我在下面添加了一张图片作为我的示例。任何封闭区域都是细胞生长,而任何其他非黑色区域则不是。
我尝试了几种不同的过滤器和填充算法来在细胞生长区域之间进行搜索,但是在图像处理方面经验不足并没有取得太大的成功。这是我从互联网上收集的一些代码,用于计算黑色像素的数量。不过,太慢了,我觉得还是问问大家比较好。
image = Image.open("Images/24Hour/HB15_2.jpg")
image = image.getdata()
def is_black_enough(pixel):
r, g, b = pixel
return r < 10 and g < 10 and b < 10
w, h = np.asarray(image).shape
black_pixels = 0
for pixel in image:
if is_black_enough(pixel)==True:
black_pixels+=1
print(black_pixels)
black_pixels/(w*h)
编辑
我用谷歌搜索并管理了几件事。首先,我有一个有效的黑色像素计算器。其次,我有一个细胞生长区域的初始计算器。有人知道如何计算下面封闭的黄色边界或完全有不同的解决方案吗?
img = Image.open("Images/24Hour/HB15_2.jpg")
img = img.convert('L')
img = np.asarray(img)
img = 1 * (img < 130) * (img > 90)
m,n = img.shape
plt.figure(figsize=(20,10))
plt.imshow(img)
【问题讨论】:
标签: python image opencv image-processing python-imaging-library