文档章节

Matlab数字图像处理之二:图像的点运算

天蚕宝衣
 天蚕宝衣
发布于 2017/03/16 19:02
字数 761
阅读 76
收藏 0
点赞 0
评论 0

Matlab数字图像处理之二:图像的点运算

一.实验目的

熟悉Matlab图像处理工具箱及函数的使用;

了解图像增强的目的及意义,加深对图像增强的感性认识,巩固所学理论知识;

学会对图像直方图的分析;

掌握图像点运算、直方图均衡化的图像增强方法;

二.实验设备

1.PC机一台;

2.软件matlab;

三.程序设计

详见实验结果。

四.实验步骤

1、图像数据读取;

2、使用灰度变换函数对图像进行线性与非线性点运算(灰度拉伸、压缩、分段拉伸/压缩,灰度反转、对数变换、指数变换);

3、计算并分析图像直方图

4、对图像进行直方图均衡化处理

五.实验结果

1、图像数据读取;

A=imread(‘cameraman.tif’)

imshow(A)

Matlab数字图像处理之二:图像的点运算

2. 使用灰度变换函数对图像进行线性与非线性点运算(灰度拉伸、压缩、分段拉伸/压缩,灰度反转、对数变换、指数变换)

灰度拉伸:

B=1.25*A+10;

subplot(1,2,1),imshow(A);subplot(1,2,2),imshow(B)

Matlab数字图像处理之二:图像的点运算

灰度压缩:

B=0.5*A+100;

subplot(1,2,1),imshow(A);subplot(1,2,2),imshow(B)

Matlab数字图像处理之二:图像的点运算

分段拉伸/压缩:

if A<=120

B=2*A;

else B=0.5*A;

end

subplot(1,2,1),imshow(A);subplot(1,2,2),imshow(B)

Matlab数字图像处理之二:图像的点运算

灰度反转:

B=255-A;

subplot(1,2,1),imshow(A);subplot(1,2,2),imshow(B)

Matlab数字图像处理之二:图像的点运算

对数变换:

B=im2double(A);

B=abs(B);

C=log(B+1);

subplot(1,2,1),imshow(A);subplot(1,2,2),imshow(C,[])

Matlab数字图像处理之二:图像的点运算

指数变换:

B=im2double(A);

C= B.^0.5;

subplot(1,2,1),imshow(A);subplot(1,2,2),imshow(C,[])

Matlab数字图像处理之二:图像的点运算

3、计算并分析图像直方图

imhist(A)

Matlab数字图像处理之二:图像的点运算

4、对图像进行直方图均衡化处理

B=histeq(A)

imhist(B)

subplot(1,2,1),imshow(A);subplot(1,2,2), imshow(B)

Matlab数字图像处理之二:图像的点运算

Matlab数字图像处理之二:图像的点运算

六、问题与思考:

1. 直方图是什么概念?它反映了图像的什么信息?

图像直方图:是图像的亮度分布的概率密度函数,是一幅图像的所有象素集合的最基本的统计规律。

直方图反映了图像的明暗分布规律,可以通过图像变换进行直方图调整,获得较好的视觉效果。

2. 直方图均衡化是什么意思?它的主要用途是什么?

直方图均衡化:通过灰度变换将一幅图像转换为另一幅具有均衡直方图,即在每个灰度级上都具有相同的象素点数的过程。

直方图均衡化是图像处理领域中利用图像直方图对对比度进行调整的方法。这种方法通常用来增加许多图像的局部对比度,尤其是当图像的有用数据的对比度相当接近的时候。通过这种方法,亮度可以更好地在直方图上分布。这样就可以用于增强局部的对比度而不影响整体的对比度,直方图均衡化通过有效地扩展常用的亮度来实现这种功能。

本文转载自:http://www.jishuzh.com/gis/matlab%E6%95%B0%E5%AD%97%E5%9B%BE%E5%83%8F%E5%A4%84%E7%90%86%E4%B9%8B%E4%

共有 人打赏支持
天蚕宝衣
粉丝 18
博文 237
码字总数 178069
作品 0
天津
【工具使用系列】关于 MATLAB 图像处理工具箱,你需要知道的事

如何使用 MATLAB 图像处理工具箱 MATLAB 图像类型转换 图像文件的读写和查询 图像文件的显示 不同类型的图像显示方法 什么是 MATLAB 图像处理工具箱 图像 图像的概念 图像的分类 图像的表示 ...

AllenMoore
01/28
9
0
数字信号处理、数学形态学、MATLAB GUI实现简单找茬软件

0、简介   这个小作品是我的数字图像处理课程设计,应用基本的图像处理知识与MATLAB的基本脚本编程,实现一个简单的找茬软件。软件实现过程中使用到的找茬游戏图片来源有“梦幻找茬”、“图...

Vitcou
07/11
0
0
使用Matlab对二值图像进行轮廓提取

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

u013066730
2017/02/22
0
0
(三)matlab数字图像处理实验-图像灰度变换处理

前两节都是熟悉一下怎么在matlab底下对图片做一些操作,并没有什么卵用,这一节稍微有点卵用,灰度变换一般是图像处理的第一步。 数字图像处理实验1-9点击下列链接有源码和链接: matlab数字...

aninstein
01/06
0
0
图像处理入门教程

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

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

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

Eastmount
2015/06/08
0
0
带你认识计算机视觉(Computer Vision)

如果想要机器能够进行思考,我们需要先教会它们去看。 李飞飞——Director of Stanford AI Lab and Stanford Vision Lab 计算机视觉(Computer vision)是一门研究如何使机器“看”的科学,更...

喵妹
05/16
0
0
离散余弦变换(DCT)

DCT变换、DCT反变换、分块DCT变换 一、引言 DCT变换的全称是离散余弦变换(Discrete Cosine Transform),主要用于将数据或图像的压缩,能够将空域的信号转换到频域上,具有良好的去相关性的性...

li_wen01
2017/06/05
0
0
DIP课程大作业---图像分割

数字图像处理课程的大作业,要求如下: 图像分割就是把图像分成若干个特定的、具有独特性质的区域并提出感兴趣目标的技术和过程。它是由图像处理到图像分析的关键步骤。现有的图像分割方法主...

sirius_0
2015/06/07
0
0
OpenCV学习之旅-简介

1、什么是图像,对图像进行处理是神马操作 一副图像可以定义为二维的函数z = f(x,y),其中x、y是其空间坐标,而其值z的大小就是函数在该点的灰度值。 例图.png 比如我用Matlab打开了一张256...

C6C
2017/08/28
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

大数据教程(2.13):keepalived+nginx(多主多活)高可用集群搭建教程【自动化脚本】

上一章节博主为大家介绍了目前大型互联网项目的keepalived+nginx(主备)高可用系统架构体系,相信大家应该看了博主的文章对keepalived/nginx技术已经有一定的了解,在本节博主将为大家分享k...

em_aaron
5分钟前
0
0
Git 2.18版本发布:支持Git协议v2,提升性能

在最新的官方 Git 客户端正式版2.18中添加了对 Git wire 协议 v2 的支持,并引入了一些性能与 UI 改进的新特性。在 Git 的核心团队成员 Brandon Williams 公开宣布这一消息前几周,Git 协议 ...

六库科技
9分钟前
0
0
Java8新特性之接口

在JDK8以前,我们定义接口类中,方法都是抽象的,并且不能存在静态方法。所有的方法命名规则基本上都是 public [返回类型] [方法名](参数params) throws [异常类型] {}。 JDK8为接口的定义带...

developlee的潇洒人生
47分钟前
0
0
aop + annotation 实现统一日志记录

aop + annotation 实现统一日志记录 在开发中,我们可能需要记录异常日志。由于异常比较分散,每个 service 方法都可能发生异常,如果我们都去做处理,会出现很多重复编码,也不好维护。这种...

长安一梦
58分钟前
2
0
将博客搬至CSDN

AHUSKY
今天
1
0
Python web框架Django学习(1)

1.Django简介 (1)Python下有许多款不同的 Web 框架。Django是重量级选手中最有代表性的一位。许多成功的网站和APP都基于Django。Django是一个开放源代码的Web应用框架,由Python写成。 (2...

十年磨一剑3344
今天
0
0
Databook-数据之书

Databook-数据之书 用于数据分析的Jupyter Notebooks。 不需购买服务器,快速开始自己的数据分析过程。 源码:https://github.com/openthings/databook 作者:openthings,https://github.co...

openthings
今天
7
0
Python PIPEs

https://www.python-course.eu/pipes.php https://www.tutorialspoint.com/python/os_pipe.htm

zungyiu
今天
1
0
gRPC学习笔记

gRPC编程流程 1. proto文件定义 proto文件用于定义需要通过gRPC生成的接口,可以理解为接口定义文档 2. 通过构建工具生成服务基类代码-Maven或Gradle 3. 服务端开发 服务端实现类须实现通过构...

OSC_fly
今天
0
0
Docker Mac (三) Dockerfile 及命令

Dockerfile 最近学习docker的时候,遇到一件怪事,关于docker镜像可能会被破坏,还不知道它会有此措施 所以需要了解构建Dockerfile的正确方法 Dockerfile是由一系列命令和参数构成的脚本,这些命...

___大侠
今天
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部