//输入灰度图像
cv::Mat dst = cv::Mat::zeros(width,height,CV_32FC1);
src.convertTo(src,CV_32FC1);
for(int i = 0; i < width; ++i)
{float *sdata = src.ptr<float>(i);float *ldata = src.ptr<float>(i);for(int j= 0; j< width; ++j){ldata[j]=std::log(sdata[j]+1);}
}
//
cv::Mat d = cv::Mat::zeros(width,height,CV_32FC1);
cv::dct(src,d);
//
float gh,gl,c,d1,d2;
cv::Mat huv = cv::Mat::zeros(width,height,CV_32FC1);
for(int i = 0; i < width; ++i)
{float *huvdata = src.ptr<float>(i);for(int j= 0; j< width; ++j){d2 = std::pow(i-floor(width/2),2)+std::pow(j-floor(height/2),2);huvdata[j] = (gh-gl)*exp(-d2/(d1*d1))+gl;}
}
huv.ptr<float>(0)[0]=1.5;
dct = dct.mul(huv);
cv::idct(dct,dst);
for(int i = 0; i < width; ++i)
{float *sdata1 = src.ptr<float>(i);float *ddata1 = dst.ptr<float>(i);for(int j= 0; j< width; ++j){ddata1[j]=std::exp(sdata1[j]+1);}
}
dst.convertTo(dst,CV_8UC1);

opencv同态滤波相关推荐

  1. MATLAB图像处理_同态滤波1

    原 MATLAB图像处理_同态滤波 2015年01月20日 09:54:25 风雨也无晴 阅读数:14234 <span class="tags-box artic-tag-box&q ...

  2. C++(ALL) STL ATL Opencv 视觉图像实践进展记录

    目录 检索文件夹中的图片名--可用于批量读取图片 C++ 创建文件夹并检测指定文件的个数 C++ 检测指定文件的个数 C++ 多线程 C++ 常见错误解决 "Error: "con ...

  3. OpenCV —— 频率域滤波(傅里叶变换,低通和高通滤波,带通和带阻滤波,同态滤波)

    频率域滤波 基本概念 傅里叶变换 二维离散的傅里叶变换 快速傅里叶变换 傅里叶幅度谱与相位谱 谱残差显著性检测 卷积与傅里叶变换的 频率域滤波 低通滤波和高通滤波 带通和带阻滤波 同态滤波 基本概念 ...

  4. 经典的同态滤波算法的优化及其应用参数配置。

    同态滤波,网络上有很多文章提到过这个算法,我们摘取百度的一段文字简要的说明了该算法的核心: 同态滤波是一种减少低频增加高频,从而减少光照变化并锐化边缘或细节的图像滤波方法. 关于该算法,网络上已经有很 ...

  5. 图像同态滤波的Butterworth方程(Butterworth equations for homomorphic Filtering of images)

    论文实现代码见本人github MyHomomorphicFilter MyHomomorphicFilter 中文翻译 题目图像同态滤波的Butterworth方程Butterworth equat ...

  6. Python+OpenCV图像处理(一篇全)

    参考:1.网易云课堂 Python+OpenCV图像处理 - 网易云课堂 2.[在水一方xym的博客]业精于勤荒于嬉,行成于思毁于随 - CSDN博客 https://blog.csdn.net/za ...

  7. opencv回顾之Core module

    该篇围绕Core Functionality模块进行展开 该模块的主要作用是成为构建opencv更多高级功能的基础核心层. Mat基础图像存储数据结构 将Mat对象赋值给其他Mat变量将会共享一个地址 ...

  8. opencv python书籍_OpenCV算法精解:基于Python与C++

    目录 1 OpenCV入门 1.1 初识OpenCV 1.1.1 OpenCV的模块简介 1.1.2 OpenCV 2.4.13与3.2版本的区别 1.2 部署OpenCV 1.2.1 在Visual ...

  9. Python 计算机视觉(八)—— OpenCV 进行图像增强

    参考的一些文章以及论文我都会给大家分享出来 -- 文章链接就贴在原文,论文我上传到资源中去,大家可以免费下载学习,如果当天资源区找不到论文,那就等等,可能正在审核,审核完后就可以下载了.大家一起学习, ...

  10. 图像增强之一种改进的同态滤波增强算法-221211工作总结

    目录 一.参考 二.背景 三.步骤 四.加权分布的自适应伽马校正(AGCWD) 1.背景 2.原理 3.函数补充 1. cv2.calcHist()函数 2. img.convert() 五.单参数同 ...

最新文章

  1. awk 分隔符 多个空格_如何在awk中指定多个分隔符
  2. mag6000变送器怎么使用_变送器的迁移原理和故障分析
  3. yii2 migrate 数据库迁移的简单分享
  4. camvid数据集介绍_语义分割的数据集
  5. 02 button的练习
  6. nested set model应用系列文章-基于后根跳跃遍历的规则匹配算法
  7. PAT乙级 1032 挖掘机技术哪家强 (20 分)
  8. 祝每位读者在新的一年里虎虎有生气·事事皆如意!
  9. python画笔的尺寸_Matplotlib 常用画图命令总结:使用 Python 在论文中画出一手漂亮的数据图...
  10. 使用adb命令启动APK方法
  11. 系统发育树构建算法和软件
  12. 图解PLC与变频器通讯接线
  13. 开源公告|腾讯代码安全指南开源,涉及C/C++、Go等六门编程语言
  14. The software-quanlity landscape -- Code complete reading notes
  15. ArcGIS数据降雨量插值
  16. 将一台笔记本电脑作为另一台笔记本电脑的扩展显示器
  17. 【前端】JS批量生成调查问卷选项
  18. docker desktop 运行mysql
  19. Python测试 ——开发工具库
  20. 谷歌地球飞行模式使用教程

热门文章

  1. Python时钟代码——利用python turtle实现模拟时钟
  2. Win10下 Java环境变量配置
  3. DirectX SDK 安装时出现错误 [Error Code:S1023] 的解决方案
  4. 一篇好文之Android文本软键盘全解
  5. 06-maven的profile和Spring boot 的profile整合
  6. 启动计算机实现5秒开机,win10提高开机速度的设置教程 电脑五秒开机优化步骤...
  7. Cocosbuilder使用教程
  8. 北航机试 16逆序数
  9. 水晶报表Crystal Reports实例
  10. CrystalReports水晶报表中的组