博客
关于我
图像预处理 && C实现
阅读量:362 次
发布时间:2019-03-04

本文共 794 字,大约阅读时间需要 2 分钟。

之前用到的一些预处理整理,主要是图像增强和滤波算法。

代码地址:

1、直方图均衡化

调整图像的灰度分布使其能在0-255范围内分布更均衡,可用于提高图像的对比度,适用于对比度较低的图片,能增加图片的细节。

处理对比:
这里写图片描述

2、伽马矫正

主要用于将图片中灰度过高或过低部分进行修正,既是增强低灰度和高灰度值部分的细节, 能增强对比度。

公式为: dst = ( src )^gamma
gamma值以1为界,值越小,对图像低灰度部分的扩展作用越强; 值越大,对图像高灰度部分的扩展作用越强。伽马矫正对图像对比度偏低并且整体亮度偏高(过曝)情况下的图片增强效果明显。
伽马曲线:
这里写图片描述
gamma= 1.8:
这里写图片描述

3、拉普拉斯锐化

强调图片的边缘和细节,但同时会把噪声也增强(改进为LOG算子 –> DOG算子)。

原理:当领域中心像素灰度低于它所在领域内的其他像素的平均灰度,此中心像素的灰度并进一步降低,当领域中心像素灰度高于他所在的领域内其它像素的平均灰度,此中心像素的灰度被进一步提高,由此实现图片锐化。
这里写图片描述

4、白平衡(灰度世界法)

不同色温光源下图片中物体会出现颜色的偏差,以白色物体为参考进行颜色校正,故有白平衡这一说。

这里写图片描述

5、高斯滤波

线性平滑滤波,适用于消除高斯噪声,相对于均值滤波它的平滑效果更柔和而且边缘能较好的保留下来。

高斯滤波后图像被平滑的程度取决于高斯和的标准差,标准差越小,平滑效果越不明显
这里写图片描述

6、盒式滤波(Opencv中的均值滤波就是盒式方法实现的)

一种线性滤波技术,它的实现借鉴了积分图的原理。其关键步骤是初始化保存领域内像素值之和的数组S,在求解某领域内的像素值和时,只要索引输出图片中对应区域的位置即可。

盒式滤波可以使复杂度为O(MN)的求和,求方差等运算降低到O(1)或接近O(1),缺点是不支持多尺度。
盒式滤波在去除噪点的同时会去除很多细节部分,将图像变得模糊。
这里写图片描述

你可能感兴趣的文章
nginx-vts + prometheus 监控nginx
查看>>
Nginx/Apache反向代理
查看>>
Nginx: 413 – Request Entity Too Large Error and Solution
查看>>
nginx: [emerg] getpwnam(“www”) failed 错误处理方法
查看>>
nginx: [emerg] the “ssl“ parameter requires ngx_http_ssl_module in /usr/local/nginx/conf/nginx.conf:
查看>>
nginx: [error] open() “/usr/local/nginx/logs/nginx.pid“ failed (2: No such file or directory)
查看>>
nginx:Error ./configure: error: the HTTP rewrite module requires the PCRE library
查看>>
Nginx:objs/Makefile:432: recipe for target ‘objs/src/core/ngx_murmurhash.o‘解决方法
查看>>
nginxWebUI runCmd RCE漏洞复现
查看>>
nginx_rtmp
查看>>
Vue中向js中传递参数并在js中定义对象并转换参数
查看>>
Nginx、HAProxy、LVS
查看>>
nginx一些重要配置说明
查看>>
Nginx下配置codeigniter框架方法
查看>>
Nginx与Tengine安装和使用以及配置健康节点检测
查看>>
Nginx中使用expires指令实现配置浏览器缓存
查看>>
Nginx中使用keepalive实现保持上游长连接实现提高吞吐量示例与测试
查看>>
Nginx中如何配置WebSocket代理?
查看>>
Nginx中实现流量控制(限制给定时间内HTTP请求的数量)示例
查看>>
nginx中配置root和alias的区别
查看>>