线性点运算

a=imread('20151130101641521.tif');
subplot(231);
imshow(a);
title('原始图像');
b1=a+45;  %灰度值增加45
subplot(232);
imshow(b1);
title('灰度值增加');
b2=a*1.35;   %图像对比度增大
subplot(233);
imshow(b2);
title('对比度增加');
b3=0.55*a;     %图像对比度减少
subplot(234);
imshow(b3);
title('对比度减少');
b4=-double(a)+255;%图像求补,把a的类型转换成double后,再把double类型转换为uint8
subplot(235);
imshow(uint8(b4));
title('双精度类型');

结果:

分段线性点运算

为了突出图像中感兴趣的目标或灰度区间,可采用分段线性法,将需要的图像细节灰度拉伸,对比度增加。

非线性变换

当输出图像的像素点灰度值与输入图像的像素点灰度值不满足线性关系时,这种灰度变换都称为非线性灰度变换。

J = imadjust(I)

将灰度图像 I 中的亮度值映射到 J 中的新值并使 1% 的数据是在低高强度和饱和,这增加了输出图像 J 的对比度值。此用法相当于 imadjust(I,stretchlim(I))

J = imadjust(I,[low_in; high_in],[low_out; high_out])

将图像I中的亮度值映射到J中的新值,即将low_in至high_in之间的值映射到low_out至high_out之间的值。low_in 以下与 high_in 以上的值被剪切掉了,也就是说,low_in 以下的值映射到 low_out,high_in 以上的值映射到high_out。它们都可以使用空的矩阵[],默认值是[0 1]。

J = imadjust(I,[low_in; high_in],[low_out; high_out],gamma)

将图像 I 中的亮度值映射到 J 中的新值,其中 gamma指定描述值I和值J关系的曲线形状。如果gamma小于1,此映射偏重更高数值(明亮)输出,如果gamma大于1,此映射偏重更低数值(灰暗)输出,如果省略此参数,默认为(线性映射)。

newmap = imadjust(map,[low_in; high_in],[low_out; high_out],gamma)

调整索引色图像的调色板map。如果low_in, high_in, low_out, high_out 和 gamma 都是标量,那么对 r,g,b 分量同时都做此映射。对于每个颜色分量都有唯一的映射,当 low_in 和 high_in 同时为1*3向量或者 low_out 和 high_out 同时为1*3向量或者 gamma 为1*3向量时。调整后的颜色矩阵 newmap 和 map 有相同的大小。

RGB2 = imadjust(RGB1,...)

对 RGB 图像 RGB1 的红、绿、蓝调色板分别进行调整。随着颜色矩阵的调整,每一个调色板都有唯一的映射值。

M=imread('20151130101641521.tif');
I=rgb2gray(M);
subplot(221);imshow(I);
J=imadjust(I); %调整灰度
subplot(222);imshow(J);
title('原始图像灰度调整');
K=imadjust(I,[0.3,0.7],[]);
subplot(223);imshow(K)
title('图像变亮');
G=imadjust(I,[0.3,0.7],[0,1],4);
subplot(224);imshow(G)
title('图像变暗');

结果:

直方图修正

灰度级的直方图就是反映一幅图像中的灰度级与出现这种灰度概率之间关系的图形。

MATLAB中的imhist函数计算和显示图像的直方图。调用格式:

(1)imhist(I,n),绘制灰度图像的直方图。

(2)imhist(X,map),绘制索引色图像的直方图。

(3)[counts,x]=imhist(...)

其中,I代表灰度图像,n为指定的灰度级数目,默认为256,counts和x分别为返回直方图数据向量和相应的色彩值向量。

%利用imhist函数计算和显示灰度图像的直方图
I=imread('20151130101641521.tif');
subplot(121);imshow(I);
title('原始图像');
subplot(122);imhist(I);
title('灰度直方图');

结果:

 
直方图均衡化

直方图均衡化是一种利用灰度变换自动调节图像对比质量的方式,基本思想是通过灰度级的概率密度函数求出灰度变换函数,它是一种以累积分布函数变换法为基础的直方图修正法。

步骤:

(1)求出给定待处理的直方图

(2)利用累计分布函数对原图像的统计直方图作变换,得到新的图像灰度

(3)进行近似处理,将新灰度代替旧灰度,同时将灰度值相等或者相近的每个灰度值直方图合并一起。

histep函数:

(1)J=histep(I,n),直方图均衡化,指定均衡化后的灰度级数n,n默认为64

(2)[J,T]=histep(I,...),返回能将图像I的直方图转换为图像J的直方图的变换矩阵T

(3)[newmap,T]=histep(X,...)返回能将索引图像I的直方图转换为newmapyans直方图的变换矩阵T。

%利用histep函数对灰度图像进行直方图均衡化
I=imread('20151130101641521.tif');
J=histeq(I);
subplot(221);imshow(I);
title('原始图像');
subplot(222);imshow(J);
title('图像均衡化');
subplot(223);imhist(I,64);
title('原图像的直方图');
subplot(224);imhist(J,64);
title('图像均衡化的直方图');

结果:

直方图规定划

直方图均衡化所产生的直方图是近似均匀的,但有时为了增加图像中某些灰度级,从而得到具有特定属性的直方图图像,由此产生了直方图规定划处理。直方图规定划是对图像的直方图进行处理,使得处理后的图像直方图的形状逼近用户希望的直方图。

histeq函数的调用格式:

(1)J=histeq(I,hgram).I为输入的直方图像,hgram为一个整数向量,表示用户希望的直方图形状,该向量的长度与规定的效果有密度关系,向量越短,最后得到的直方图越逼近用户希望的直方图。

(2)newmap=histeq[X,map,hgram],对索引图像X进行直方图规定划,参数map为列数为3的矩阵,表示色图。

%利用histep函数对图像进行规定划处理
I=imread('20151130101641521.tif');
hgram=ones(1,256);
J=histeq(I,hgram);
subplot(121);imshow(uint8(I));
title('原始图像');
subplot(122);imhist(J)

结果:

matlab图像进行变换相关推荐

  1. matlab图像算子变换,拉布拉斯算子锐化图像的空域和频域--matlab实现

    本文将用matlab实现拉布拉斯算子提取边缘,锐化图像.分别采用空域和频域两种方法. 空域 步骤: 1.读取图像/(标定) 2.生成空间滤波器(fspecial('laplacian',0)) 3.卷 ...

  2. matlab 图像极坐标变换,如何在Matlab中将图像从笛卡尔坐标变换为极坐标?

    这不是很清楚你正在尝试做的,这就是为什么我在做...... 所以给出的图像我自己的例子,我使用CART2POL将像素x/y坐标从笛卡尔坐标转换为极坐标. 在第一个图中,我显示了点的位置,第二个图中我绘 ...

  3. hough变换检测直线 matlab,Matlab实现Hough变换检测图像中的直线

    Hough变换的原理: 将图像从图像空间变换至参数空间,变换公式如下: 变换以后,图像空间与参数空间存在以下关系: 图像空间中的一点在参数空间是一条曲线,而图像空间共线的各点对应于参数空间交于一点的各 ...

  4. matlab图像融合评价,MATLAB 图像融合评估算法

    MATLAB 图像融合评价算法 function laplacian(ori_A,ori_B) path(path,'FusionEvaluation/') %Ori_A = imread('cloc ...

  5. matlab 图像操作函数的详解

    转自博客:http://blog.163.com/fei_lai_feng/blog/static/9289962200991713415422/ 一. 读写图像文件 1. imread imread ...

  6. 深度-图像风格变换【二】

    深度卷积神经网络图像风格变换 Deep Photo Style Transfer Taylor Guo, 2017年4月23日 星期日 - 4月27日星期四 摘要 本文介绍了深度学习方法的图像风格转换 ...

  7. 【图像处理】MATLAB:亮度变换

    亮度变换 函数imadjust f = imread('breast_digital_Xray.tif');g1 = imadjust(f,[0 1],[1 0]); %阴暗反转图像(负片图像),等同 ...

  8. 图像傅立叶变换的原理和物理意义

    图像傅立叶变换的原理和物理意义 图像的傅立叶变换,原始图像由N行N列构成,N必须是基2的,把这个N*N个包含图像的点称为实部,另外还需要N*N个点称为虚部,因为FFT是基于复数的,如下图所示: (// ...

  9. 【数字图像处理matlab】(HSI变换融合算法)

    [数字图像处理matlab](HSI变换融合算法) 输入一张高分辨率的全色影像HR,一张低分辨率的多光谱影像MS,采用HSI变换融合算法实现影像融合,其中RGB与HSI影像的相互转换调用自定义函数RG ...

最新文章

  1. 莎拉波顿,莎曼莎考克斯——英伦设计VS美国设计
  2. 用C语言实现分治方法数组的排序,C语言实现分治法实例
  3. 加减法叫做什么运算_小学四则运算基础知识,赶快给孩子存下吧!
  4. 避开这2个误区,测试目标 KPI 不再难设
  5. Apache Shiro源码解读之SecurityManager的创建
  6. android activity 通知 service,android activity和service通信问题
  7. Silverlight 解谜游戏 之十二 游戏暗示(1)
  8. Guava学习笔记之Maps(1):Maps.uniqueIndex(Iterable, Function)
  9. ❤️VS Code❤️,cmd终端窗口运行,解决中文乱码问题
  10. 文件服务器 共享 端口,共享文件服务端口设置
  11. 抽象代数笔记-环、域、扩域、伽罗瓦理论
  12. C#中导出数据时控制Excel 2007生成2003兼容模式的文件
  13. 富滇银行 Windows7 无法使用U盾【证书信息读取失败,请选择正确的富滇银行网银证书!】 解决办法
  14. 居于canvas的原生js抽奖小程序
  15. 【代码随想录】Day6
  16. 设置网站 titile keyword 以及 descript
  17. IT人才外包的合作流程是怎样的?
  18. Sphnix + Markdown 记笔记之一目了然的搭建过程
  19. 计算机屏幕尺寸不是全屏,为什么把电脑显示器分辨率调成1366X768后网页不能全屏显示呢?...
  20. 关于流量分析软件brim最新安装方法

热门文章

  1. jxl导出excel(合并单元格)
  2. js+canvas画布制作烟花
  3. 获取MP3音频时长 | Java工具类
  4. 学院新闻报道,邹老师光临指导
  5. Kotlin 协程与flow
  6. Oracle数据库系统结构一(存储结构)
  7. 强化学习 - 详细解读DQN(更新完成)
  8. C#代码实现 - 扑克牌排序
  9. 三维CAD设计软件的核心技术解析----工业软件讲坛第二次讲座
  10. 红米2 com.android.phone,红米2手机(移动/联通/电信) 7.1 ROM 下载地址搬运(2017年3月10日更新)...