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

2024-03-08 03:20

本文主要是介绍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图像运动模糊,虚焦模糊仿真与恢复的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/785818

相关文章

使用Python实现可恢复式多线程下载器

《使用Python实现可恢复式多线程下载器》在数字时代,大文件下载已成为日常操作,本文将手把手教你用Python打造专业级下载器,实现断点续传,多线程加速,速度限制等功能,感兴趣的小伙伴可以了解下... 目录一、智能续传:从崩溃边缘抢救进度二、多线程加速:榨干网络带宽三、速度控制:做网络的好邻居四、终端交互

Python中OpenCV与Matplotlib的图像操作入门指南

《Python中OpenCV与Matplotlib的图像操作入门指南》:本文主要介绍Python中OpenCV与Matplotlib的图像操作指南,本文通过实例代码给大家介绍的非常详细,对大家的学... 目录一、环境准备二、图像的基本操作1. 图像读取、显示与保存 使用OpenCV操作2. 像素级操作3.

C/C++的OpenCV 进行图像梯度提取的几种实现

《C/C++的OpenCV进行图像梯度提取的几种实现》本文主要介绍了C/C++的OpenCV进行图像梯度提取的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的... 目录预www.chinasem.cn备知识1. 图像加载与预处理2. Sobel 算子计算 X 和 Y

c/c++的opencv图像金字塔缩放实现

《c/c++的opencv图像金字塔缩放实现》本文主要介绍了c/c++的opencv图像金字塔缩放实现,通过对原始图像进行连续的下采样或上采样操作,生成一系列不同分辨率的图像,具有一定的参考价值,感兴... 目录图像金字塔简介图像下采样 (cv::pyrDown)图像上采样 (cv::pyrUp)C++ O

MySQL中like模糊查询的优化方案

《MySQL中like模糊查询的优化方案》在MySQL中,like模糊查询是一种常用的查询方式,但在某些情况下可能会导致性能问题,本文将介绍八种优化MySQL中like模糊查询的方法,需要的朋友可以参... 目录1. 避免以通配符开头的查询2. 使用全文索引(Full-text Index)3. 使用前缀索

Python+wxPython构建图像编辑器

《Python+wxPython构建图像编辑器》图像编辑应用是学习GUI编程和图像处理的绝佳项目,本教程中,我们将使用wxPython,一个跨平台的PythonGUI工具包,构建一个简单的... 目录引言环境设置创建主窗口加载和显示图像实现绘制工具矩形绘制箭头绘制文字绘制临时绘制处理缩放和旋转缩放旋转保存编

python+OpenCV反投影图像的实现示例详解

《python+OpenCV反投影图像的实现示例详解》:本文主要介绍python+OpenCV反投影图像的实现示例详解,本文通过实例代码图文并茂的形式给大家介绍的非常详细,感兴趣的朋友一起看看吧... 目录一、前言二、什么是反投影图像三、反投影图像的概念四、反向投影的工作原理一、利用反向投影backproj

MyBatis模糊查询报错:ParserException: not supported.pos 问题解决

《MyBatis模糊查询报错:ParserException:notsupported.pos问题解决》本文主要介绍了MyBatis模糊查询报错:ParserException:notsuppo... 目录问题描述问题根源错误SQL解析逻辑深层原因分析三种解决方案方案一:使用CONCAT函数(推荐)方案二:

使用Python实现图像LBP特征提取的操作方法

《使用Python实现图像LBP特征提取的操作方法》LBP特征叫做局部二值模式,常用于纹理特征提取,并在纹理分类中具有较强的区分能力,本文给大家介绍了如何使用Python实现图像LBP特征提取的操作方... 目录一、LBP特征介绍二、LBP特征描述三、一些改进版本的LBP1.圆形LBP算子2.旋转不变的LB

MySQL索引的优化之LIKE模糊查询功能实现

《MySQL索引的优化之LIKE模糊查询功能实现》:本文主要介绍MySQL索引的优化之LIKE模糊查询功能实现,本文通过示例代码给大家介绍的非常详细,感兴趣的朋友一起看看吧... 目录一、前缀匹配优化二、后缀匹配优化三、中间匹配优化四、覆盖索引优化五、减少查询范围六、避免通配符开头七、使用外部搜索引擎八、分