图像基本运算

本文介绍了图像处理中的基本运算,包括点运算、代数运算、逻辑运算和几何运算。点运算涉及线性和非线性变换,如灰度增强和对比度调整;代数运算涵盖加、减、乘、除,常用于降噪和提取图像特征;逻辑运算用于二值图像处理,如与、或、非操作;几何运算则包括平移、镜像、旋转和缩放,实现图像位置和形状变换。通过实例和MATLAB代码展示了各种运算的实现和效果。
摘要由CSDN通过智能技术生成
  图像基本运算
  图像处理是建立在各种算法基础上的处理方法,图像基本运算主要包括点运算、代数运算(加、减、乘、除)、逻辑运算(与、或、非)和几何运算(平移、镜像、旋转、缩放)。这些基本运算都具有十分重要的意义,如:改变输入图像的灰度级、降低图像的噪声、进行各种各样的几何变换。


1、点运算(Point Operation)
  点运算是对图像的每个像素点的灰度值按一定的映射关系运算,得到一福新图片的过程。由于点运算能够有规律的改变像素点的灰度值,故也被称为对比度增强或灰度变换。

1.1线性点运算
  线性点运算是指输入图像的灰度级与输出图像呈线性关系。
s=ar+b
  (r为输入灰度值,s为相应点的输出灰度值)。
  当a=1,b=0时,新图像与原图像相同;
  当a=1,b≠0时,新图像是原图像所有像素的灰度值上移或下移,是整个图像在显示时更亮或更暗;
  当a>1时,新图像对比度增加;
  当a<1时,新图像对比度降低;
  当a<0时,暗区域将变亮,亮区域将变暗,点运算完成了图像求补;

MATLAB程序如下:
I=imread('E:\my photo and video\1.jpg');
I=im2double(I);
figure(1);subplot(3,2,1);
imshow(I);
title('原图像','fontsize',7);

a=1;
b=50;
O=a.*I+b/255;
figure(1);
subplot(3,2,2);
imshow(O);title('a=1,b=50,图像变亮','fontsize',7);

a=2;b=0;
O=a.*I+b/255;
figure(1);subplot(3,2,3);imshow(O);
title('a=2,b=0,对比度增大','fontsize',7);

a=0.5;b=0;
O=a.*I+b/255;
figure(1);subplot(3,2,4);imshow(O);
title('a=0.5,b=0,对比度降低','fontsize',7);

a= -1;b=255;
O=a.*I+b/255;
figure(1);subplot(3,2,5);imshow(O);
title('a=-1,b=255,图像反色','fontsize',7);


运行结果

注:代码中O=a.*I+b/255 ,b除以255原因是: 灰度数据有两种表式方法:一种是用unit8类型,取值0~255;另一种是double类型,取值0~1。两者之间相差255倍。 就这段代码而言,I刚读入时是unit8类型,在第2句转换为double,所以后面涉及到与它进行运算的时候,为了统一,都要转换到0~1的范围,所以要除255。

1.2非线性点运算(Non-Linear Point Operation):
非线性点运算是指输入与输出为非线性关系,常见的非线性灰度变换为对数变换和幂次变换,对数变换一般形式为:
s=clog(1+r)
其中c为一常数,并假设r≥0.此变换使窄带低灰度输入图像映射为宽带输出值,相对的是输出灰度的 高调整。
MATLAB程序如下:
I=im2double(I);
figure(1);subplot(1,2,1);
imshow(I);
title('原图像','fontsize',7);

c=2;
O=c*log(1+I);
figure(1);subplot(1,2,2);imshow(O);
title('c>0','fontsize',7);

运行结果:

幂次变换一般形式:s=cr^γ
  • 5
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值