/***********************************
*功能 -- 各项异性扩散滤波
*by 垚
*visual studio 2010 & windows 7 ultimalte
************************************/
#include <opencv2\core\core.hpp>void anisotropic_diffusion(cv::Mat &out, cv::Mat &in, int k, float lambda)
{int i, j;int iter = 20;int nRow = in.rows, nCol = in.cols;float ei, si, wi, ni;float ce, cs, cw, cn;cv::Mat tmp = in.clone();unsigned char *pin = in.data;unsigned char *ptmp = tmp.data;unsigned char *pout = out.data;for(int n = 0; n < iter; n++){for(i = 1; i < nRow-1; i ++)for(j = 1; j < nCol-1; j++){float cur = ptmp[i*nCol + j];ei = ptmp[(i-1)*nCol + j] - cur;si = ptmp[i*nCol + j + 1] - cur;wi = ptmp[(i+1)*nCol + j] - cur;ni = ptmp[i*nCol + j - 1] - cur;ce = exp(-ei*ei/(k*k));cs = exp(-si*si/(k*k));cw = exp(-wi*wi/(k*k));cn = exp(-ni*ni/(k*k));pout[i*nCol + j] = cur + lambda*(ce*ei + cs*si + cw*wi + cn*ni);}out.copyTo(tmp);}
}

各项异性扩散滤波 -- OpenCV实现相关推荐

  1. 各项异性扩散(Anisotropic diffusion)--算法简介(python)代码实现

    各项异性扩散(Anisotropic diffusion)–算法简介(python)代码实现 学习博文 https://blog.csdn.net/qq_38784098/article/detail ...

  2. 热传导与图像处理:非线性各项异性扩散

    首先,用通俗的语言说明两个基本概念,非线性和各向异性 非线性,可以从线性说起,不严谨的说,如果两个变量之间的关系是一次函数,那么就说他们是线性关系,比如一维的一条直线: y=kx+b,k和b都是实数, ...

  3. 双边滤波--OpenCV实现

    双边滤波器的定义双边滤波,Bilateral filter.是一种可以保边去噪的滤波器.之所以可以达到此去噪效果,是因为滤波器是由两个函数构成.一个函数是由几何空间距离决定滤波器系数.另一个由像素差值 ...

  4. 各项异性滤波简介Anisotropic Filtering(AF)

    本文主要整理简绍来自互联网的各项异性滤波的知识. 原文链接:http://www.linuxgraphics.cn/graphics/using_anisotropic_texture_filteri ...

  5. OpenCV 保边滤波器 各向异性扩散滤波(Anisotropic Filter)

    各向异性扩散滤波(Anisotropic filter),是双边滤波的一种简化,具有双边滤波的保留图像边缘同时减少噪声的作用,又加快了算法的实现速度. 首先,我们来了解一下各向异性扩散. 各向异性扩散 ...

  6. VTK:图像平滑——各项异性滤波

    1.各向异性扩散滤波 高斯平滑方法在平滑噪声的同时,模糊了图像重要的边缘图像.各向异性滤波是一种基于偏微分方程的滤波技术,建立于热量的各向异性扩散理论.各向异性滤波在图像的平坦区域选择大尺度平滑,而边 ...

  7. sdl2 opengl d3d9的mipmap和各项异性过滤渲染

    sdl支持的驱动 列出后可以根据自己的需求去做,如果没有驱动就使用software去做就好了,以下列出对比,视频源为1280 720 的摄像头,使用RGB24来测试 opengl CPU占用率在1.3 ...

  8. 各向异性扩散滤波(Anisotropic Filter)原理与C++实现

    各向异性扩散滤波(Anisotropic Filter,又称 Perona-Malik Filter),主要是用来平滑图像,克服了高斯滤波模糊的缺陷,各向异性扩散在平滑图像的同时又能保留图像边缘:此外 ...

  9. 数字图像处理Python语言实现-图像增强-各向异性扩散滤波

    各向异性扩散滤波 各向异性扩散滤波 1. 前言 2. 各向异性扩散滤波描述 3. 代码实现 1. 前言 各向异性扩散滤波主要是基于热扩散框架,通过偏微分方程来表示.基于偏微分方程的各向异性扩散被广泛用 ...

最新文章

  1. 刷题:二叉树的遍历方式及根据遍历结果还原二叉树
  2. ContentObserver类的使用
  3. 日记 [2007年04月05日]QMAIL服务器回顾
  4. 成为Web开发大师你必须知道的7件事情
  5. click F5 refresh button on detail page - how to get the usable OData model
  6. 如何识别是三层交换机还是二层交换机
  7. 平衡二叉树中需要旋转的情况
  8. 完成端口与高性能服务器程序开发
  9. 谷歌紧急修复已遭在野利用的0day
  10. java里氏替换原则例子_java 设计原则(六)里氏替换原则
  11. 更新CentOS中的python(从2.6.X到2.7.X)
  12. maven 内存不足_如何修复Maven内存不足问题
  13. 万用表测线路断点位置_万用表测电流口诀,正确使用方法
  14. 生信必备技巧之R语言基础教程01——R、Rstudio以及R包的安装载入
  15. 高斯滤波(Gauss filtering)
  16. vga焊接线顺序_VGA线的焊接方法,15线与7线分别如何焊接?
  17. 室内停车场地图定位-停车场地图定位导航
  18. 激活系统报错——输入错误: 没有文件扩展“.vbs”的脚本引擎
  19. 孙陶然:公司要与员工分享
  20. php模式设计之 适配器模式

热门文章

  1. 天津理工大学2018年计算机硕士真题
  2. 服务器独享宽带和共享宽带有那些区别
  3. 安全港到隐私护盾!美欧个人数据跨境流动20年政策变迁
  4. 【Excel VBA】Len的有趣之处——获取的长度怎么不一致?
  5. oracle全局索引改成本地索引,解析一个通过添加本地分区索引提高SQL性能的案例...
  6. opengl简单模拟行星运转
  7. Python实现自动挂机脚本(基础篇)
  8. 表情宝宝(v3.1)——一个表情包管理软件
  9. 静态HTML网页设计作品 仿唯品会购物商城(5页) HTML+CSS+JavaScript 学生DW网页设计作业成品 商城网站设计
  10. 【算法】递归|迷宫回溯问题|八皇后问题