C# 基于OpenCv的视觉工作流-章98-频域滤波

C# 基于OpenCv的视觉工作流-章98-频域滤波

本章目标:
一、原理;
二、频域滤波;

频域滤波,通过傅里叶变换将图像的灰度分布函数变换为图像的频率分布函数,然后对不需要的频率滤掉,再通过逆变换还原为时域图像,此时得到的图像即滤波后的图像。

一、原理

简单理解,平常看到的一条波,可以拆成多个不同频率值的小波,每条小波的频率值是固定的,很多的这种小波摆放在一起,成了一个集合,起个名称,叫频域。

更深入的原理,见文末链接。

二、频域滤波

1.通过Cv2.Dft(complexImg, complexImg, DftFlags.ComplexOutput); 快速傅里叶变换(FFT)函数,将时域图像转为频域图像;

2.频谱中心化,把低频移到中心,高频移到四周;

3.构建滤波器,进行频域滤波;

4.逆中心化;

5.通过 Cv2.Dft(complexImg, complexImg, DftFlags.Inverse | DftFlags.RealOutput);进行傅里叶逆变换。

实现效果如下图

参考链接

https://zhuanlan.zhihu.com/p/19763358

https://www.cnblogs.com/wj-1314/p/11983496.html

https://blog.csdn.net/weixin_45590420/article/details/143799857

https://bthvi-leiqi.blog.csdn.net/article/details/145768148

https://developer.aliyun.com/article/1207899

https://bbs.huaweicloud.com/blogs/433226

"VisionTool 探迹"免费视觉工具 自研

下载地址:https://pan.baidu.com/s/11tktKOSnepLNIEqNbvnv6w?pwd=qv5i

版本已更新,内容如下:

1.车辆统计,播放结束自动停止;

2.区域警报,结合yolo识别人物,播放结束自动停止;

3.增加槽线不良,实现槽线缺失、线不入槽检测;

4.增加绕线不匀,实现绕线堆积,凹缺检测;

5.增加YOLO手部姿态,实现手部关节点识别;

6.增加颜色计数,以视频方式识别彩球,统计进球得分;

7.增加包装检漏,以视频方式检测方便面配料是否齐全;

8.增加模型信息,用于查询ONNX模型的输入输出参数;

"VisionTool Halcon"付费视觉工具 (自研,淘宝可搜)

对应系列文章"C# 基于Halcon的视觉工作流",欢迎前往阅读。

上述内容需要一定的技术功底,本章至此已结束,欢迎阅读下章,谢谢!

相关推荐
眼泪划过的星空1 小时前
基于 LangChain 框架构建本地化 RAG 系统:无需调用云端 API 的完整实践
人工智能·langchain
布鲁飞丝1 小时前
彩笔运维勇闯机器学习--cpu与qps的线性关系
运维·人工智能·机器学习
ZHOU_WUYI1 小时前
5. light wam 中video pre阶段
人工智能
2501_926978331 小时前
提示工程的实战报告(二):模型的失败模式与边界行为
人工智能·深度学习·算法
行走的小派1 小时前
Zero 4不是Zero 3W的升级版,是香橙派的策略补位
人工智能·香橙派·边缘ai
IanSkunk1 小时前
企业AI办公落地技术拆解:从WorkBuddy任务引擎到JOTO实施路径
大数据·人工智能
Mycdn_WD2 小时前
项目交付后的机房,能参与边缘节点协作吗?
人工智能·cdn·pcdn·城域网·pcdn资源招募
LayZhangStrive2 小时前
线性代数 - 第1章 行列式
人工智能·线性代数·机器学习
Michaelliu_dev2 小时前
多模态大模型推理流程解析
人工智能·llm·多模态大模型·vit·llava·rope·mllm