《数字图像处理》冈萨雷斯学习笔记1:基本原理

本文介绍了图像处理的基础操作,包括图像的读取、显示、写入及格式转换等基本功能。同时还探讨了不同类型的图像及其相互转换的方法,并提供了一些实用的MATLAB函数示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、图像的读取和显示

A=imread(FILENAME,FMT)

 

f = imread('D:\myimage\chestxray.jpg');

 

二、图像的写入

inwrite(A,FILENAME,FMT)

 

inwrite(f,'patient10_run1.tif')

只使用于JPEG图像

 

 

imwrite(f,'filename.jpg','quality',q)

三、图像的显示

 

 

imshow(f,[low high])
figure; %创建一个新窗口
subplot(m,n,p);%打开一个有m行n列图像%位置的窗口,并将焦点位于第p个位置上。
%%=======================
figure;
subplot(m,n,p);
inshow(f);

四、图像格式的转换

 

im2uint8     将图像装换成uint8类型   将输入中所有小于0的值设置为0,大于1的值设置为255,其他值乘以255.

im2uint16   将图像装换成uint16类型

rgb2gray    从RGB图创建灰度图,存储类型不变。

im2bw(f,T) 通过阈值处理,将一幅亮度图像转换成一幅二值图像g。

im2double  将图像转换成double类型(Matlab中所有的数值计算都可用double类来进行,所以它也是图像处理应用中最常见使用的数据类)

mat2gray   讲一个矩阵转换成一个强度图(但是什么叫强度图呢?)0对应的是黑色,1对应的是白色。

补充知识点:

1、TIFF 加标识的图像文件格式   .tif   .tiff

2、当用imshow显示另一幅图像g时,Matlab会再屏幕上用新图像替换旧图像,为了保持第一幅图像并同时显示第二幅图像,可以使用figure函数。

 

figure,imshow(g)

3、图像的类型:亮度图像、二值图像、索引图像、RGB图像。

 

4、若v是一个向量,则v(:)产生一个列向量,v(1:end)产生一个行向量。

5、ture(M,N)生成一个大小为M*N的logical类矩阵,其元素为1.

     false(M,N)生成一个大小为M*N的logical类矩阵,其元素为0.

6、rand(M,N)生成一个大小为M*N的矩阵,矩阵中元素都在区间[0,1]中均匀分布的随机数。

     randn(M,N)生成一个大小为M*N的矩阵,矩阵中元素是正态分布的随机数,随机数的均值是0,方差是1.

7、函数定义:function[outputs]=name(inputs) 注意输出变量必须位于方括号内,而输入变量必须位于圆括号内。

8、算数运算符 A*B表示矩阵乘法,而A.*B则表示数组乘法。

9、B=A指的仅仅是做一个B等于A的“记录”,但实际上并不将数据复制到B。记住MATLAB没有复制信息这一功能。

10、all函数:检测矩阵中是否全为非零元素,如果是,则返回1,否则,返回0。
       any函数:检测矩阵中是否有非零元素,如果有,则返回1,否则,返回0。

11、可以用whos f 来查看图片的信息。

12、f(x,y)=Asin(ux+vy)    x=0,1,2……,M-1   y=0,1,2……,N-1 生成该图像

 

%First implement using for loops
tic
for r = 1:M
    ux = u*(r-1);
    for c = 1:N
        vy = v*(c-1);
        f(r,c) = A*sin(ux+cy);
    end
end
t1 = toc;                %End timing
%Now implement using vectorization. call the image g
tic    %start timing
r = 0:M-1;
c = 0:N-1;
[C,R] = meshgrid(c,r);   %将行向量c,r指定的域变换成数组C,R
g = A*sin(u*R + v*C);
t2 = toc;                %End timing
%compute the ratio of the two times
rt = t1/(t2 + eps);
[rt,f,g] = twodsin(1,1/(4*pi),1/(4*pi),512,512);
g = mat2gray(g);
imshow(g)

向量化循环效率更高。

 

12、从给定图像中提取子图像,提取大小为m*n且其左上角坐标为(rx,cy)的区域s

 

rowhigh = rx+m-1;   %Matlab中图像的原点在(1,1)处
colhigh = cy+n-1;
s = f (rx:rowhigh,cy:colhigh);





 

 

数字图像处理领域,《数字图像处理(第三版)》作为主要教材已有30多年。这一版本是作者在前两版的基础上修订而成的,是前两版的发展与延续。除保留了前两版的大部分内容外,根据读者的反馈,作者在13个方面对《数字图像处理(第三版)》进行了修订,新增了400多幅图像、200多幅图表及80多道习题,融入了近年来数字图像处理领域的重要进展,因而《数字图像处理(第三版)》特色鲜明且与时俱进。《数字图像处理(第三版)》仍分为12章,即绪论、数字图像基础、灰度变换与空间滤波、频率域滤波、图像复原与重建、彩色图像处理、小波和多分辨率处理、图像压缩、形态学图像处理、图像分割、表示与描述、目标识别。   《数字图像处理(第三版)》的读者对象主要是从事信号与信息处理、通信工程、电子科学与技术、信息工程、自动化、计算机科学与技术、地球物理、生物工程、生物医学工程、物理、化学、医学、遥感等领域的大学教师和科技工作者、研究生、大学本科高年级学生及工程技术人员。 第1章 绪论  前言  1.1 什么是数字图像处理  1.2 数字图像处理的起源  1.3 使用数字图像处理的领域实例  1.4 数字图像处理的基本步骤  1.5 图像处理系统的组成  小结  参考文献 第2章 数字图像基础  引言  2.1 视觉感知要素  2.2 光和电磁波谱  2.3 图像感知和获取  2.4 图像取样和量化
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值