zoukankan      html  css  js  c++  java
  • 【原】数字图像处理学习之一基础篇

    一、矩阵

    矩阵的表示:

    A = [1 2 3;4 5 6;7 8 9]

    表示矩阵:

     1  2  3  

     4  5  6

     7  8  9

    元素 A(1,1) A(1,2)2  注:下标从11开始

     

    ans为 answer的缩写

    矩阵运算:

    1、矩阵转置: A

    2、sum(A), 矩阵每列求和,产生一个行向量,sum(A) 结果为 12 15 18

    3、如果赋值给矩阵不存在的元素,则将产生一个新的矩阵,没有赋值的地方自动补零。如:

    A(14)=4 A为:

    1  2  3  4

    4  5  6  0

    7  8  9  0

    4、冒号表达式, 1:10 表示在区间[1,10]的整数,1:2:10表示步为2,在区间[1,10]之间的整数1 3 5 7 9A(1,1:3)表示A(1,1) A(1,2) A(1,3)  单独使用 表示一整行或一整列。如A(1,:)表示第一行。

    5、关键字end表示最后一列或一行。

    6、A(1,:)=[] 表示删除第一行。

    7、A*B A+B A-B A/B

    8、det(A) A矩阵的行列式。

    9、rref(A) A的阶梯矩阵

    10、inv(A) A的逆阵

    11、eig(A) 求得方阵A的特征根, poly(A) 方阵A的特征多项式      http://baike.baidu.com/view/2280659.htm 

    12、mean(A) 每列的平均值,std(A) 每列的方差, prod(A) 每列的乘积

    13、find函数用于返回所需要元素的所在位置  (位置的判定:在矩阵中,第一列开始,自上而下,依次为123...,然后再从第二列,第三列依次往后数)

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

     

     

    数组运算:

    +

    Addition

    -

    Subtraction

    .*

    Element-by-element multiplication

    ./

    Element-by-element division

    .

    Element-by-element left division

    .^

    Element-by-element power

    .'

    Unconjugated array transpose

     

    构造矩阵:

    zeros

    All zeros

    ones

    All ones

    rand

    Uniformly distributed random elements

    randn

    Normally distributed random elements

     

     

    二、绘图

    http://www.mathworks.cn/support/2009a/matlab/7.8/demos/PlotTools_viewlet_swf.html 

     

    三、流控制

    if rem(n,2) ~= 0

       M = odd_magic(n)

    elseif rem(n,4) ~= 0

       M = single_even_magic(n)

    else

       M = double_even_magic(n)

    end

     

     switch (rem(n,4)==0) + (rem(n,2)==0)

        case 0

           M = odd_magic(n)

        case 1

           M = single_even_magic(n)

        case 2

           M = double_even_magic(n)

        otherwise

           error('This is impossible')

     end

     

    for i = 1:m

       for j = 1:n

          H(i,j) = 1/(i+j);

       end

    end

     

    fid = fopen('magic.m','r');

    count = 0;

    while ~feof(fid)

        line = fgetl(fid);

        if isempty(line) || strncmp(line,'%',1) || ~ischar(line)

            continue

    end

    if count==3

    break

    end

        count = count + 1;

    end

    fprintf('%d lines ',count);

    fclose(fid);

     

    try

       statement

       ...

       statement

    catch

       statement

       ...

       statement

    end

     

    四、图片基础操作

    函数

    说明

    imread

    读图像

    imshow

    显示图像

    imwrite

    保存图像

    figure

    产生新的画图面板

    size

    获取图片大小

    imfinfo

    获取图片信息

    im2uint8

    im2uint16

    mat2gray

    im2double

    im2bw

    图像类和类型间转换

    plot

    绘图函数

    imadd        +

    imsubtract     -

    immultiply    *

    imdivide      /

    imabsdiff     绝对差

    imcomplement  图像求补

    imlincomb     两幅或多幅图像的线性组合

    图像算术

    disp

    input 

    strread

    交互式I/O

     

  • 相关阅读:
    LOJ#2244 起床困难综合症
    CF集萃2
    LOJ#2085 循环之美
    LOJ#2087 国王饮水记
    LOJ#2304 泳池
    人生中十个重要的健康伴侣
    web容器和servlet容器
    有关服务器,web 服务器,WEB容器的一点总结
    学习Java需要达到的25个目标
    EJB 规范
  • 原文地址:https://www.cnblogs.com/irish/p/3143618.html
Copyright © 2011-2022 走看看