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的视觉工作流",欢迎前往阅读。

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

相关推荐
YOLO数据集集合4 分钟前
UAVDT 无人机车辆检测数据集 - 无人机航拍 | 车辆检测 | 目标检测 | YOLO格式 | 智能交通 | 城市管理 | 多类别数据集 | 计算机视觉
人工智能·yolo·目标检测·机器学习·计算机视觉·目标跟踪·无人机
aneasystone本尊10 分钟前
大模型推理介绍:从一次提问说起
人工智能
小王20413 分钟前
Day 21:卷积神经网络CNN — 深入理解卷积
人工智能·神经网络·cnn
DevNo25 分钟前
学生党课堂复习利器:三款音视频转文字工具实测对比
人工智能
谢白羽26 分钟前
Mooncake在LLM的kv cache offload
人工智能·llm·论文·agent·mooncake
IT_陈寒29 分钟前
Vue的v-for为啥把我的渲染顺序搞乱套了?
前端·人工智能·后端
Yangs_noerr31 分钟前
Hermes Agent 打造私人 AI 助手
人工智能
慕容引刀32 分钟前
或许你真的需要这个Git神器:让团队提交文案终于对齐了
人工智能·git·vscode·自然语言处理·github
Jaeger_32 分钟前
MCP 配置到底要重复配几次?一次配置,Claude/Cursor/Codex 全通用
人工智能
天涯明月199334 分钟前
ray深度研究报告
大数据·人工智能·分布式·ray