Halcon图像运动模糊,虚焦模糊仿真与恢复

一、所谓图像运动模糊指的是,相机在拍摄运动物体时造成的拖影,图像的模糊。而虚焦模糊是相机的镜头没有在焦点位置拍照,造成的虚焦模糊。
二、Halcon针对这两张图像模糊有很好的仿真算子,以及恢复模糊图像为真实图像的算子。下面是这些算子的简介

  1. gen_psf_defocus

功能:产生一个均匀散焦模糊的脉冲相应。

  1. gen_psf_motion

功能:产生一个(线性)运动模糊的脉冲相应。

  1. simulate_defocus

功能:对一个图像的均匀散焦模糊进行仿真。

  1. simulate_motion

功能:(线性)运动模糊的仿真。

  1. wiener_filter

功能:通过Wiener滤波进行图像恢复。

  1. wiener_filter_ni

功能:通过Wiener滤波进行图像恢复。
三、案例说明
dev_close_window ()
dev_open_window (0, 0, 512, 512, ‘black’, WindowHandle)
dev_set_draw (‘margin’)
read_image (Image, ‘C:/Users/Dell/Desktop/2022_11_28_15_44_14_0588_id_36429.bmp’)
*相机拍摄运动物体模糊图像仿真
simulate_motion (Image, MovedImage, 40, 0, 3)
*利用维纳滤波恢复运动模糊的图像
mean_image (MovedImage, ImageMean, 3, 3)
get_image_size (MovedImage, Width, Height)
gen_psf_motion (Psf, Width, Height, 40, 0, 3)
wiener_filter (MovedImage, Psf, ImageMean, RestoredImage)
*相机失焦造成图像模糊仿真
simulate_defocus (Image, DefocusedImage, 40)
*利用维纳滤波恢复失焦模糊的图像
mean_image (DefocusedImage, ImageMean1, 3, 3)
get_image_size (DefocusedImage, Width, Height)
gen_psf_defocus (Psf1, Width, Height, 40)
wiener_filter (DefocusedImage, Psf1, ImageMean1, RestoredImage1)

在利用维纳滤波恢复后,与原图对比。直线和边缘仍然在一条直线上,效果很好。
原图
Halcon图像运动模糊,虚焦模糊仿真与恢复_第1张图片
运动模糊图
Halcon图像运动模糊,虚焦模糊仿真与恢复_第2张图片
运动模糊恢复图
Halcon图像运动模糊,虚焦模糊仿真与恢复_第3张图片
失焦模糊图
Halcon图像运动模糊,虚焦模糊仿真与恢复_第4张图片
失焦模糊恢复图
Halcon图像运动模糊,虚焦模糊仿真与恢复_第5张图片

你可能感兴趣的:(计算机视觉,图像处理,人工智能)