去除图像中的中心噪声

问题描述 投票:0回答:1

我正在与生物学家合作,他们在显微镜下对 DNA 链进行成像,并提供灰度 PNG。根据实验的不同,可能会有很多背景噪音。对于那些很少的像素强度阈值通常足以将其删除。然而对于某些人来说,事情并不那么简单。

(不知道为什么它以 jpg 格式上传 - this 应该可以让你下载为 PNG 格式)

当我应用像素强度阈值时,我得到以下结果:

如果我再提高阈值,我将开始丢失图像边缘不太亮的像素。

根据其在图像中的位置,噪声似乎遵循高斯分布,这可能是由于显微镜的光源造成的。将像素与局部背景噪声进行比较的最佳方法是什么?我可以整合噪声分布吗?

目前我一直在 python3 中使用

imageio.v3
进行基本的像素操作,但我愿意接受建议。

编辑:我尝试使用直方图均衡,但它并不完全似乎是我正在寻找的......

python image png noise
1个回答
0
投票

我不确定你想要什么结果,所以我在黑暗中工作。我怀疑您想要一个“本地区域阈值” - 请参阅维基百科。也称为 “自适应阈值”

它是可用的,或者可以在许多图像处理包中实现,但为了简洁起见,在我(或其他人)更好地理解你想要的结果之前,我将仅使用 ImageMagick 进行演示,它是免费的,可以安装在macOS、Linux 和 Windows。命令是 -lat,意思是 “本地区域阈值”

因此,以白色突出显示任何比周围 80x80 局部区域亮 2% 以上的像素的语法如下:

magick image.png -alpha off -lat 80x80+2% result.png

如果您希望任何像素比其周围 10x10 邻域亮 2% 以上,请使用:

magick image.png -alpha off -lat 10x10+2% result.png


请注意,我使用了

-alpha off
,因为你的图像有一个多余的 Alpha 通道,我想丢弃。

© www.soinside.com 2019 - 2024. All rights reserved.