文档章节

图像处理技术课第二次试验(2)——图像的规定化处理_1

天蚕宝衣
 天蚕宝衣
发布于 2017/03/23 11:26
字数 534
阅读 9
收藏 0
点赞 0
评论 0

直方图规定化的原理,

直方图规定化是指将一幅图象通过灰度变换后,使其具有特定的直方图形式。直方图规定化处理一般可以分为两类:①使图象与某一标准图象具有相同的直方图;②图象具有某一特定函数(比如说高斯函数)形式的直方图。

如下图所示,希望将图象A(x,y)变换为具有特定直方图H3(D)的图象C(x,y)。首先利用直方图均衡化将图象A(x,y)变换为具有平坦直方图的图象B(x,y),再利用第二个灰度变换将B(x,y)变换为C(x,y):

直方图规定化处理的第二种方法,代码举例如下:

% AdvancedGaussian.m

% 定义一个高斯函数。
r = 127;                              
x = -r : r + 1;
sigma = 20;
y = exp(-(x.^2) / (2 * sigma ^ 2));

%im=imread('bg.bmp');  %匹配一个图像的直方图
%y=imhist(im);
y = y / sum(y);        %归一化,使函数符合概率分布的sum(y)==1这样一个规律
plot(y);               %待匹配的直方图

%函数的累积直方图
Q = [];                
for i = 1 : 256  
    if (i == 1)
        Q(i) = y(i);
    else
        Q(i) = Q(i - 1) + y(i);
    end
end

img = imread('F:/personal/2_硕士/1_2_研一下学期/3_图像处理技术(李智)/2017.03.21/0_Equalization/lena512.bmp');
figure;imshow(img)
[m n] = size(img);
hist = imhist(img);       %待处理图像的直方图
p = hist / (m * n);           
figure;plot(p)          %原图直方图

%待处理图像的累积直方图
P = [];                   
for i = 1:256
%     P = [P sum(p(1 : i))];
    if (i == 1)
        P(i)=p(i);
    else
        P(i) = P(i - 1) + p(i);
    end
end

for i = 1 : 256
    tmp{i} = Q - P(i);
    % 因为要找距离最近的点,所以取绝对值
    tmp{i} = abs(tmp{i});         
    % 找到两个累积直方图距离最近的点
    [a index(i)] = min(tmp{i});   
end

imgn = zeros(m, n);
for i = 1 : m
    for j = 1 : n
        %由原图的灰度通过索引映射到新的灰度
        imgn(i, j) = index(img(i, j) + 1) - 1;    
    end
end

imgn=uint8(imgn);
figure;imshow(imgn)
figure;plot(imhist(imgn))       %新图的直方图

 

© 著作权归作者所有

共有 人打赏支持
天蚕宝衣
粉丝 18
博文 236
码字总数 178069
作品 0
天津
我如何用57行代码复刻一个8600万美元的项目

摘要:利用现有的开源技术就可以将工作做得更好,外国一技术牛人利用现有的开源技术成功用57行代码完成了维多利亚警方耗资8600万美元的项目。 本文由jshhcdxs 在众成翻译平台上翻译。 当使用...

众成翻译 ⋅ 2017/12/21 ⋅ 0

【数字图像处理】七.MFC图像增强之图像普通平滑、高斯平滑、Laplacian、Sobel、Prewitt锐化详解

本文主要讲述基于VC++6.0 MFC图像处理的应用知识,主要结合自己大三所学课程《数字图像处理》及课件进行讲解,主要通过MFC单文档视图实现显示BMP图像增强处理,包括图像普通平滑、高斯平滑、...

Eastmount ⋅ 2015/06/08 ⋅ 0

专业级Web图像处理引擎--AlloyImage

腾讯Web前端 AlloyTeam 近日推出了最新开源项目:一个基于HTML5技术的专业级图像处理引擎——AlloyImage(简称AI),以及一个在线Web图像处理平台——AlloyPhoto(简称AP)。这预示着腾讯的Web前...

Kinvix ⋅ 2013/03/27 ⋅ 12

前沿 | 视网膜眼底图像预测心脏病风险:Nature综述深度学习在生物医疗中的新应用

  选自Nature   作者:Amy Maxmen   机器之心编译   参与:黄小天、李泽南      生物医疗是机器学习技术应用对接的重要领域之一。近日,Nature 报道了谷歌运用深度学习技术(主要...

机器之心 ⋅ 01/05 ⋅ 0

图像处理入门教程

  最近有人问我图像处理怎么研究,怎么入门,怎么应用,我竟一时语塞。仔细想想,自己也搞了两年图像方面的研究,做个两个创新项目,发过两篇论文,也算是有点心得,于是总结总结和大家分享...

u013088062 ⋅ 2015/12/29 ⋅ 0

基于web的android图像处理示例(Win7+Apache+PHP+Matlab+Android)

本文将介绍C/S模式的图像处理系统。C/S的框架已经在[1]中作了简单的介绍。[2]中介绍了如何搭建基于android和WAMP5的B/S模式的本机测试平台。本系统是在[4]中介绍的基础上开发的,有关图像显示...

长平狐 ⋅ 2012/10/08 ⋅ 0

未来2个月,博客文章大纲,一切与公司要求对口

我的小目标 在我的上篇博客,我总结了当前十多家名企的招聘要求,做了技术要求汇总,发现列出的果然是每条都能写进简历的。我立即转变了写博客的路线,不再像无头苍蝇一样心血来潮地写博客了...

翻滚吧李博 ⋅ 2017/12/05 ⋅ 0

《慕课革命--互联网如何变革教育》

前言 书籍来源于@Dean Huo赠送,我用笔记、思考作为回馈; 全书共五大篇,18章节,约15万字; 本书的笔记采用问答式进行,筛选和总结我的问题,并在书中寻找答案; 笔记全文约1w字,建议阅读...

你好我是森林 ⋅ 05/27 ⋅ 0

FPGA设计——图像处理(锐化增强)

1. 概述 本设计采用FPGA技术,实现CMOS视频图像的锐化增强,并通过以太网传输(UDP方式)给PC实时显示。 2. 硬件系统框图 CMOS采用MT9V011(30万像素),FPGA采用ALTERA公司的CYCLONE IV,以太网...

shugenyin ⋅ 2017/10/28 ⋅ 0

机器学习算法

什么是程序(Program) 计算机程序,是指为了得到某种结果而可以由计算机(等具有信息处理能力的装置)执行的代码化指令序列(或者可以被自动转换成代码化指令序列的符号化指令序列或者符号化...

云栖希望。 ⋅ 2017/12/30 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

Spring Boot整合模板引擎thymeleaf

项目结构 引入依赖pom.xml <!-- 引入 thymeleaf 模板依赖 --><dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-thymeleaf</artifactId......

yysue ⋅ 8分钟前 ⋅ 0

ConstraintLayout使用解析

AndroidStudio3.0创建Project默认的布局就是ConstraintLayout。 AndroidStudio3.0前的可以自己修改,使用ConstraintLayout。 为了要使用ConstraintLayout,我们需要在app/build.gradle文件中...

_OUTMAN_ ⋅ 20分钟前 ⋅ 0

OSChina 周三乱弹 —— 这样的女人私生活太混乱了

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @ 胖达panda :你经历过体验到人生的大起大落吗?我一朋友在10秒内体验了,哈哈。@小小编辑 请点一首《almost lover》送给他。 《almost love...

小小编辑 ⋅ 53分钟前 ⋅ 8

自己动手写一个单链表

文章有不当之处,欢迎指正,如果喜欢微信阅读,你也可以关注我的微信公众号:好好学java,获取优质学习资源。 一、概述 单向链表(单链表)是链表的一种,其特点是链表的链接方向是单向的,对...

公众号_好好学java ⋅ 58分钟前 ⋅ 0

Centos7重置Mysql 8.0.1 root 密码

问题产生背景: 安装完 最新版的 mysql8.0.1后忘记了密码,向重置root密码;找了网上好多资料都不尽相同,根据自己的问题总结如下: 第一步:修改配置文件免密码登录mysql vim /etc/my.cnf 1...

豆花饭烧土豆 ⋅ 今天 ⋅ 0

熊掌号收录比例对于网站原创数据排名的影响[图]

从去年下半年开始,我在写博客了,因为我觉得业余写写博客也还是很不错的,但是从2017年下半年开始,百度已经推出了原创保护功能和熊掌号平台,为此,我也提交了不少以前的老数据,而这些历史...

原创小博客 ⋅ 今天 ⋅ 0

LVM讲解、磁盘故障小案例

LVM LVM就是动态卷管理,可以将多个硬盘和硬盘分区做成一个逻辑卷,并把这个逻辑卷作为一个整体来统一管理,动态对分区进行扩缩空间大小,安全快捷方便管理。 1.新建分区,更改类型为8e 即L...

蛋黄Yolks ⋅ 今天 ⋅ 0

Hadoop Yarn调度器的选择和使用

一、引言 Yarn在Hadoop的生态系统中担任了资源管理和任务调度的角色。在讨论其构造器之前先简单了解一下Yarn的架构。 上图是Yarn的基本架构,其中ResourceManager是整个架构的核心组件,它负...

p柯西 ⋅ 今天 ⋅ 0

uWSGI + Django @ Ubuntu

创建 Django App Project 创建后, 可以看到路径下有一个wsgi.py的问题 uWSGI运行 直接命令行运行 利用如下命令, 可直接访问 uwsgi --http :8080 --wsgi-file dj/wsgi.py 配置文件 & 运行 [u...

袁祾 ⋅ 今天 ⋅ 0

JVM堆的理解

在JVM中,我们经常提到的就是堆了,堆确实很重要,其实,除了堆之外,还有几个重要的模块,看下图: 大 多数情况下,我们并不需要关心JVM的底层,但是如果了解它的话,对于我们系统调优是非常...

不羁之后 ⋅ 昨天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部