MATLAB中图像的线性变换

MATLAB 图像线性变换是‌通过表达式y=kx+b调整每个像素的亮度与对比度‌,使灰暗/平淡的图片变清晰、变亮或变暗,便于观察或识别。

1、k=1且b=0,输出图像保持不变。

2、k>1,输出图像的‌对比度增大。

3、0<k<1,输出图像的‌对比度减小。

4、k=1且b≠0,输出图像所有像素的灰度值上移或下移,图像更暗或更亮。

5、k=-1且b=255,输出图像反转变化。

现要从当前工作目录中读取某原始彩色图像文件,进行上述5种线性变换。

可在命令窗口输入以下程序:

Matlab 复制代码
I=imread('paowuxianqumian.jpg');
k1=2;b1=0; 
k2=0.5;b2=30;
k3=1;b3=50;
k4=-1;b4=255;
I1=uint8(k1*double(I)+b1);
I1(I1>255)=255;I1(I1<0)=0;
I2= uint8(k2*double(I)+b2);
I2(I2>255)=255;I2(I2<0)=0;
I3=uint8(k3*double(I)+b3);
I3(I3>255)=255;img3(I3<0)=0;
I4=uint8(k4*double(I)+b4);
figure;
subplot(2,3,1); imshow(I); title('原始图像');
subplot(2,3,2); imshow(I1); title('k=2,b=0,对比度增大');
subplot(2,3,3); imshow(I2); title('k=0.5,b=30,对比度减小,更亮');
subplot(2,3,4); imshow(I3); title('k=1,b=50,更亮');
subplot(2,3,5); imshow(I4); title('k=-1,b=255,反转变化');

运行后得到如图1所示图形。

图1 图像的线性变换

相关推荐
阿里嘎多学长6 小时前
2026-10-20 GitHub 热点项目精选
开发语言·程序员·github·代码托管
dadaobusi7 小时前
学习: PCIe 6.0 的 L0p
学习
布吉岛的石头7 小时前
Java 程序员第 50 阶段2:预训练的目标函数:自回归语言建模本质
java·开发语言·人工智能·深度学习·回归·transformer
小羊没烦恼!8 小时前
铁道部新客票系统设计(二)
开发语言·前端·数据库·python·oracle·c#·php
quantdash_cc8 小时前
从实时行情到价格观察表:用 Python 和 Pandas 构建策略输入数据
开发语言·python·数据分析·pandas·量化交易·股票数据·quantdash
燕落南枝9 小时前
CSS 学习:类型选择器与 AI 注释实战
css·人工智能·学习
昂好的day9 小时前
VisionMaster 通信模块实战(上):Modbus、TCP 收发、协议组装解析
开发语言·网络·网络协议·tcp/ip·c#
努力实干10 小时前
面向对象设计原则——C++
开发语言·c++·数码相机
指针向南11 小时前
PDF转长图用什么?3种方法实测(2026)
图像处理·人工智能·计算机视觉·pdf
NetX行者12 小时前
四语言 Hello World 背后:编译模型与运行时对比
开发语言