使用matlab处理图像的基础知识

时间:2022-01-27 15:21:57

MATLAB基本函数
一 矩阵运算
  1.基本算数运算(加减乘除)
    + -运算要求矩阵维数相同,例m*n
    * /运算,例A=B*C,B矩阵是m*n矩阵,B是n*p矩阵,则A是m*p矩阵
    A/B相当于A*inv(B),A与B的逆矩阵相乘
    A\B相当于inv(A)*B
  2.点运算.* ./ .^两个矩阵对应元素进行相应运算

  3.关系运算<、> <= >= == ~=,表达式成立则为1,否则为0.如果是矩阵,
  则按位置逐个进行比较。

  4.逻辑运算& | ~

  5.矩阵其他运算
    1.矩阵求逆inv(A)
    2.行列式求值det(A)
    3.对角矩阵diag(A)
    4.矩阵转置'例:A'

二、矩阵其他运算
  1.矩阵尺寸[m,n]=size(A),A的行和列分别保存在m和n中
  2.绝对值abs(A),返回A中每个元素的绝对值
  3.最大值max(A)最小值min(A),返回矩阵A中每一列的最大值或最小值
  4.求和sum(A),返回矩阵A中每一列的和
  5.向下取整floor(A),向上取整ceil(A),对每一个元素取小于或等于元素值,
    如果是复数,对实部和虚部分别运算

  6.近似取整是round(A),
  7.取整数部分是fix(A)
  8.查找非零值find(A),返回的是非零元素位置的向量。将矩阵作为一维信号处理的
  9.求均值,median(A),对每一列元素求均值返回
  10.矩阵变形函数reshape(A,m,n),将矩阵A按照访问顺序变成m*n维的矩阵
  11.矩阵补充padarray(A,[m n],padvalue,DIRECTION),将矩阵A扩展成m*n维的矩阵,
  12.矩阵左右颠倒、上下颠倒。fliplr(A)或flipud(A);
  13.统计矩阵中元素个数,numel(A)

三、绘图
  1.figure函数
  产生一个绘图窗口
  2.指定绘图位置,将多个图形显示在一个窗口中,subplot(m,n,p),绘制在m行n列,第p的图形。

  3.绘制二维曲线plot(X,Y),将一维列向量X作为x坐标,一维列向量y作为y坐标;如果

四、图像处理基础知识
  1.图像处理常用数据类型,uint8,double,single
    double是默认数据类型,取值范围0-1,0表示分量最低的值,是黑色。
  1表示分量最高的,是白色。常在运算的中间结果运用,保证运算的精度。
    logical值为0或1,常用于形态学、图像分割、图像识别等。

  2.测试图像矩阵checkerboard(n,p,q),返回矩阵类型是double,矩阵由p*q个小单元构成
  每个小单元是由4个小方块组成,每个方块的边长都为n个像素。小方块为黑白相间或黑灰相间
  白色为1,黑色为0,灰色为0.7;

  3、图像类型转换,常用函数im2uint8(A),im2uint16(A),im2double(A),im2bw(A)转换为logical类型
  一个比较有用的函数是mat2gray(A),如果在处理图像的过程中,数据超出了数据类型所能表达的范围,
  它可以对图像进行归一化。