matlab图像灰度调整——imadjust函数的使用
在MATLAB中,通过函数imadjust()进行图像灰度的调整,该函数调用格式如下:
J=imadjust( I ) 对图像I进行灰度调整
J=imadjust( I,[low_in;high_in],[low_out;high_out]) [low_in;high_in]为原图像中要变换的灰度范围,[low_out;high_out]为变换后的灰度范围
J=imadjust( I,[low_in;high_in],[low_out;high_out],gamma) 该gamma参数为映射的方式,默认值为1,即线性映射。当gamma不等于1时为非线性映射
RGB2=imadjust(RGB1,......) 该函数对彩色图像的RGB1进行调整
1. 通过函数imadjust()调整灰度图像灰度范围
close all;clear all;clc;
%通过imadjust()函数调整灰度图像的灰度范围
I=imread('F:/paohui.jpg');
J=imadjust(I,[0.2 0.5],[0 1]); %调整灰度范围
figure;
subplot(121),imshow(uint8(I));
subplot(122),imshow(uint8(J));
在程序中通过函数imadjust()调整灰度图像的灰度范围。原图像灰度范围为0-255,程序将小于255×0.2的灰度值设置为0,将大于255×0.5的灰度值设置为255。程序运行后输出如下:
2. 通过函数imadjust()调整灰度图像的亮度
close all;clear all;clc;
%调整灰度图像的灰度和显示亮度
I=imread('F:/paohui.jpg');
J=imadjust(I,[0.1 0.5],[0 1],0.4); %调整图像灰度并调高亮度
K=imadjust(I,[0.1 0.5],[0 1],4); %调整图像灰度并调低亮度
figure,
subplot(131),imshow(uint8(I));
subplot(132),imshow(uint8(J));
subplot(133),imshow(uint8(K));
左侧是原图,中间是调整图像灰度并加强亮色值的输出后显示的图像,右侧是调整图像灰度并加强暗色值的输出后显示的图像。
3. 通过函数imadjust()对彩色图像进行增强
close all;clear all;clc;
%imadjust()对彩色图像进行增强
I=imread('F:/pao1.jpg');
J=imadjust(I,[0.2 0.3 0;0.6 0.7 1],[]); %imadjust()对RGB图像进行处理
figure,
subplot(121),imshow(uint8(I));
subplot(122),imshow(uint8(J));
左侧为原图,右侧为处理后的图像,可以看到图像亮度显著增强:
4. 通过函数stretchlim()和函数imadjust()进行图像增强
可以采用stretchlim()计算灰度图像的最佳输入区间,即函数imadjust(I,[low_in;high_in],[low_out;high_out])中的第二个参数,以此来实现图像增强,具体实例如下:
close all;clear all;clc;
%通过函数stretchlim()和imadjust()进行图像增强
I=imread('pout.tif');
M=stretchlim(I); %获取最佳区间
J=imadjust(I,M,[]); %调整灰度范围
figure,
subplot(121),imshow(uint8(I));
subplot(122);imshow(uint8(J));
5. 用函数imcomplement()进行灰度图像的反转变换
灰度图像的反转变换,将灰度值为0的像素值转换为255,将灰度值为255的像素值转换为0,将灰度值为x的像素值转换为255-x。通过灰度反转,能够增强暗色背景下的白色或灰色细节信息。
代码如下:
close all;clear all;clc;
%利用函数imcomplement()实现灰度图像灰度反转
I=imread('F:/pao1.jpg');
J=imcomplement(I); %实现灰度反转
figure;
subplot(121),imshow(uint8(I));
subplot(122),imshow(uint8(J));
原文链接:https://blog.csdn.net/ibelievesunshine/article/details/79958899
matlab图像灰度调整——imadjust函数的使用的更多相关文章
- 调整图像的尺寸 - cvResize() 函数实现
前言 有时会碰到一张图片太大了,想将它缩小.本文将讲解一个很好用的函数解决这个问题. 图像尺寸调整函数 cvResize() // 图像尺寸调整函数 void Resize ( const CvArr ...
- matlab图像基础知识
1.MATLAB支持的几种图像文件格式: ⑴JPEG(Joint Photogyaphic Expeyts Group):一种称为联合图像专家组的图像压缩格式. ⑵BMP(Windows Bitmap ...
- imadjust函数分析一
声明:本文涉及到的行数皆指本文提供的附件imadjust.m的代码中行数 本文只讨论imadjust函数是一种用法,即 J = IMADJUST(I,[LOW_IN; HIGH_IN],[LOW_OU ...
- MATLAB相关快捷键以及常用函数
MATLAB快捷键大全 F1帮助 F2改名F3搜索 F4地址 F5刷新 F6切换 F10菜单 CTRL+A全选 CTRL+C复制 CTRL+X剪切 CTRL+V粘贴 CTRL+Z撤消 CTRL+O打开 ...
- 深入学习OpenCV中图像灰度化原理,图像相似度的算法
最近一段时间学习并做的都是对图像进行处理,其实自己也是新手,各种尝试,所以我这个门外汉想总结一下自己学习的东西,图像处理的流程.但是动起笔来想总结,一下却不知道自己要写什么,那就把自己做过的相似图片搜 ...
- MATLAB图像的代数运算
1.图像旋转与缩放 bm=imread("3.png"); %subplot(1,3,1); imshow(bm); %缩放图片 %bt=imresize(bm,0.5,'near ...
- OpenCV计算机视觉学习(3)——图像灰度线性变换与非线性变换(对数变换,伽马变换)
如果需要处理的原图及代码,请移步小编的GitHub地址 传送门:请点击我 如果点击有误:https://github.com/LeBron-Jian/ComputerVisionPractice 下面 ...
- matlab图像类型转换以及uint8、double、im2double、im2uint8和mat2gray等说明
转自:http://blog.csdn.net/fx677588/article/details/53301740 1. matlab图像保存说明 matlab中读取图片后保存的数据是uint8类型( ...
- 图像对比度调整的simulink仿真总结
图像对比度调整可以由一个模块contrast adjustment 完成,参数有输入范围和输出范围,计算过程由以下公式决定 解释一下,当input<=low_in的时候输出的值是low_out+ ...
随机推荐
- Linux之redis的安装,主从配置
一,redis安装 redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合).zset(s ...
- ubuntu 使用MySQL Workbench 连接远程云服务器mysql
前提:我的是腾讯云的服务器,所以需要在安全组开发端口. 配置安全组 1.创建新用户 一般为了安全性,我们不直接使用root用户,而是选择创建一个新用户. 在服务器中,输入 mysql -u root ...
- Java--8--新特性--Lambda
java9 都出来了,我才开始接触到java8的新特性,有点脱节啊.. Lambda是一个匿名函数,可以理解为一段可以传递的代码,将代码像数据一样传递,下面是一个小例子. public class E ...
- 应用在Windows系统中的自动化部署实践
因为公司的产品有linux 和windows两套部署环境,领导安排我先来做windows的自动化部署.由于本人对windows 的dos命令基本没啥概念,所以在最终完成之前,走了很多弯路,在这里记载下 ...
- 使用Arduino开发板控制步进电机
目前为止,我还没有真正深入了解过电机,特别是步进电机. 最近我在计划一个项目,需要相对精确的电机控制,所以可能会使用到步进电机,但很快就意识到我首先应该更多地了解这些. 本篇文章主要介绍我到目前为止学 ...
- Number of Islands II
Given a n,m which means the row and column of the 2D matrix and an array of pair A( size k). Origina ...
- Jmeter之JDBC类型组件
一.背景 在测试过程中,避免不了与数据库打交道,比如数据的校验.数据的准备或者重置操作,又或者对数据库进行增删改查,基于以上诉求,在Jmeter中是如何实现的呢.可使用JDBC类型组件来实现以上功能操 ...
- php MySQL 选择数据库
在你连接到 MySQL 数据库后,可能有多个可以操作的数据库,所以你需要选择你要操作的数据库. 从命令提示窗口中选择MySQL数据库 在 mysql> 提示窗口中可以很简单的选择特定的数据库.你 ...
- package.json 与 package-lock.json 的区别
根据官方文档,这个package-lock.json 是在 `npm install`时候生成一份文件,用以记录当前状态下实际安装的各个npm package的具体来源和版本号. 它有什么用呢?因为n ...
- 「学习笔记」FFT及NTT入门知识
前言 快速傅里叶变换(\(\text{Fast Fourier Transform,FFT}\) )是一种能在\(O(n \log n)\)的时间内完成多项式乘法的算法,在\(OI\)中的应用很多,是 ...