显微镜图像处理(优化)-图像去噪算法比对

本篇文章介绍三种图像去噪算法,分别为:高斯滤波去噪、中值滤波去噪、非局部均值滤波器去噪
在显微镜图像处理技术中,去噪是非常重要的图像优化手段,不管我们是用何种电子显微镜拍摄出来的图像,都会或多或少的存在图像噪声,需要一种技术,能够将拍摄出来的图像去除噪声,并且在去除噪声的同时能够保留或者优化图像纹理细节。

噪声图像

高斯滤波去噪

代码

python 复制代码
from skimage import img_as_ubyte, img_as_float
from scipy import ndimage as nd
from matplotlib import pyplot as plt
img = img_as_float(io.imread("images/denoising/noisy_img.jpg"))
gaussian_img = nd.gaussian_filter(img, sigma=3)
plt.imsave("images/gaussian.jpg", gaussian_img)

效果

高斯滤波去噪效果

中值滤波去噪

代码

python 复制代码
from skimage import img_as_ubyte, img_as_float
from scipy import ndimage as nd
from matplotlib import pyplot as plt
img = img_as_float(io.imread("images/denoising/noisy_img.jpg"))
median_img = nd.median_filter(img, size=3)
plt.imsave("images/median.jpg", median_img)

效果

中值滤波去噪效果

非局部均值去噪

代码

python 复制代码
from skimage.restoration import denoise_nl_means, estimate_sigma
from skimage import img_as_ubyte, img_as_float
from skimage import io
from scipy import ndimage as nd
from matplotlib import pyplot as plt
img = img_as_float(io.imread("images/denoising/noisy_img.jpg"))
sigma_est = np.mean(estimate_sigma(img, multichannel=True))
patch_kw = dict(patch_size=5,      
                patch_distance=3,  
                multichannel=True)
denoise_img = denoise_nl_means(img, h=1.15 * sigma_est, fast_mode=False,
                               patch_size=5, patch_distance=3, multichannel=True)
# denoise_img_as_8byte = img_as_ubyte(denoise_img)
plt.imsave("images/NLM.jpg",denoise_img)

效果

非局部均值去噪效果

核型分析随堂小测

下面是使用非局部均值的去噪效果

原图

去噪图

可以看到细节提升非常的明显,就像原图上蒙了一层布,去噪算法将这层布给移除掉了。并且保留了条带细节,需要后续多传一些图进入去噪函数,看这种针对原图细节优化的算法是否对所有核型图都具有普遍性。

相关推荐
weixin_4130632112 分钟前
测试《A Simple Algorithm for Fitting a Gaussian Function》拟合
python·算法
MarkHD22 分钟前
智能体在车联网中的应用:第31天 基于RLlib的多智能体PPO实战:MAPPO算法解决simple_spread合作任务
算法
IT猿手24 分钟前
三维动态避障路径规划:基于部落竞争与成员合作算法(CTCM)融合动态窗口法DWA的无人机三维动态避障方法研究,MATLAB代码
算法·matlab·动态规划·无人机·路径规划·动态路径规划
wadesir42 分钟前
Java实现遗传算法(从零开始掌握智能优化算法)
java·开发语言·算法
Jeremy爱编码1 小时前
leetcode热题腐烂的橘子
算法·leetcode·职场和发展
H CHY1 小时前
C++代码
c语言·开发语言·数据结构·c++·算法·青少年编程
alphaTao1 小时前
LeetCode 每日一题 2025/12/22-2025/12/28
算法·leetcode
xiaolang_8616_wjl1 小时前
c++题目_传桶(改编于atcoder(题目:Heavy Buckets))
数据结构·c++·算法
中國龍在廣州1 小时前
生成不遗忘,「超长时序」世界模型,北大EgoLCD长短时记忆加持
人工智能·深度学习·算法·自然语言处理·chatgpt
亓才孓1 小时前
java中的Math.Radom拓展
开发语言·python·算法