文档章节

图像的二阶微分算子

自由的角马
 自由的角马
发布于 2015/01/10 14:00
字数 426
阅读 38
收藏 0

Laplacian微分算子

定义

最单间的各项同性微分算子是拉普拉斯算子,一个二维图像f(x,y)的拉普拉斯微分算子的定义如下:



将(2)(3)式代入(1)式得

写成权系数矩阵模板为


效果如下:


算法源代码(java)

/**
	 * 二阶微分算子  laplacian算子方法
	* @param srcPath 图片的存储位置
	 * @param distPath 图像要保存的存储位置
	 * @param formatName 图像要保存的存储位置
	 */
	public static void laplacian0(String srcPath, String distPath, String formatName) {
		BufferedImage img = readImg(srcPath);		
		int w = img.getWidth();
		int h = img.getHeight();
		int pix[] = new int[w*h];
		        pix= img.getRGB(0, 0, w, h, pix, 0, w);
		pix = laplacian0(pix, w, h);
		img.setRGB(0, 0, w, h, pix, 0, w);
		writeImg(img, formatName, distPath);
	}
	/**
	 * 二阶微分算子  laplacian算子方法
	 * @param pix 像素矩阵数组
	 * @param w 矩阵的宽
	 * @param h 矩阵的高
	 * @return 处理后的数组
	 */	 
	public static int[] laplacian0(int[] pix, int w, int h) {
		int[] newpix = new int[w*h];
		ColorModel cm = ColorModel.getRGBdefault();
		int r;
		for(int y=0; y<h; y++) {
			for(int x=0; x<w; x++) {
				if(x!=0 && x!=w-1 && y!=0 && y!=h-1) {
					//G = 4f(x,y) - f(x-1,y) - f(x+1,y) - f(x,y-1) - f(x,y+1)
					r = 4*cm.getRed(pix[x+(y)*w]) - cm.getRed(pix[x-1+(y)*w]) - cm.getRed(pix[x+1+(y)*w])
					- cm.getRed(pix[x+(y-1)*w]) - cm.getRed(pix[x+(y+1)*w]);					
					newpix[x+y*w] = 255<<24 | r<<16 | r<<8 | r;
				}
			}
		}
		int temp = findMinInt(newpix);
		for(int i=0; i<newpix.length; i++) {
			newpix[i] = newpix[i] + temp;
		}
		return newpix;
		
	}


还有几种laplacian算子的变形,如下

    

对应的效果如下:

     

L1                                                          L2                                                                L3

从以上几个效果可以看出,L1与L0算子的效果基本相同,肉眼很难分辨;L2获得的细节信息较弱;L3处理的结果是图像的纹里比原图更清晰。

本文转载自:http://blog.csdn.net/luoweifu/article/details/8116265

自由的角马
粉丝 1
博文 269
码字总数 0
作品 0
文山
私信 提问
OpenCV边缘检测算子原理总结及实现

拉普拉斯算子 原理:是一种基于图像导数运算的高通线性滤波器。它通过二阶导数来度量图像函数的曲率。 拉普拉斯算子是最简单的各向同性微分算子,它具有旋转不变性。一个二维图像函数的拉普拉...

漫步当下
2018/08/17
98
0
图像空间滤波数学基础—Apple的学习笔记

1. 卷积 是图像的加权叠加。是向量的内积。AX=b形式 2. 图像锐化 主要目的是突出图像中的细节或者增强被模糊了的细节 3. 图像梯度 梯度的方向是函数f(x,y)变化最快的方向,当图像中存在边缘时...

applecai
2018/11/07
0
0
[Python图像处理] 十七.图像锐化与边缘检测之Roberts算子、Prewitt算子、Sobel算子和Laplacian算子

版权声明:本文为博主原创文章,转载请注明CSDN博客源地址!共同学习,一起进步~ https://blog.csdn.net/Eastmount/article/details/89001702 该系列文章是讲解Python OpenCV图像处理知识,前...

Eastmount
04/03
0
0
使用Matlab对二值图像进行轮廓提取

转自:http://blog.csdn.net/q1302182594/article/details/50394576 本文主要总结一下在matlab中可用于进行轮廓提取的函数。 1 bwperim 根据参考资料[2]的提示,可以使用bwperim()函数进行轮...

u013066730
2017/02/22
0
0
【工具语言系列】关于 MATLAB 图像分割 & 边缘检测

如何进行图像分割 图像分割 基于边缘的图像分割 微分算子 曲线拟合边缘检测 Canny边缘检测算子 轮廓跟踪 边缘形态检测 霍夫变换 多尺度轮廓提取 基于区域的图像分割 阈值化分割 特征空间聚类...

AllenMoore
2018/01/27
126
0

没有更多内容

加载失败,请刷新页面

加载更多

64.监控平台介绍 安装zabbix 忘记admin密码

19.1 Linux监控平台介绍 19.2 zabbix监控介绍 19.3/19.4/19.6 安装zabbix 19.5 忘记Admin密码如何做 19.1 Linux监控平台介绍: 常见开源监控软件 ~1.cacti、nagios、zabbix、smokeping、ope...

oschina130111
今天
13
0
当餐饮遇上大数据,嗯真香!

之前去开了一场会,主题是「餐饮领袖新零售峰会」。认真听完了餐饮前辈和新秀们的分享,觉得获益匪浅,把脑子里的核心纪要整理了一下,今天和大家做一个简单的分享,欢迎感兴趣的小伙伴一起交...

数澜科技
今天
7
0
DNS-over-HTTPS 的下一代是 DNS ON BLOCKCHAIN

本文作者:PETER LAI ,是 Diode 的区块链工程师。在进入软件开发领域之前,他主要是在做工商管理相关工作。Peter Lai 也是一位活跃的开源贡献者。目前,他正在与 Diode 团队一起开发基于区块...

红薯
今天
12
0
CC攻击带来的危害我们该如何防御?

随着网络的发展带给我们很多的便利,但是同时也带给我们一些网站安全问题,网络攻击就是常见的网站安全问题。其中作为站长最常见的就是CC攻击,CC攻击是网络攻击方式的一种,是一种比较常见的...

云漫网络Ruan
今天
12
0
实验分析性专业硕士提纲撰写要点

为什么您需要研究论文的提纲? 首先当您进行研究时,您需要聚集许多信息和想法,研究论文提纲可以较好地组织你的想法, 了解您研究资料的流畅度和程度。确保你写作时不会错过任何重要资料以此...

论文辅导员
今天
8
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部