图像处理MATLAB1研讨.ppt

图像处理MATLAB1研讨

(7)Toeplitz矩阵 Toeplitz矩阵是由一行和一列来定义的矩阵, 其语法格式为: T=toeplitz(r)——生成一个由向量r构成的对称 toeplitz矩阵,其第一行由r定义。 T=toeplitz(c,r)——生成一个非对称的Toeplitz矩阵, c作为其第一列,r作为第一行,如果c和r 的第一个元素不同,则用列中元素。 》r =[1,2,3,4] r = 1 2 3 4 》T=toeplitz(r) T= 1 2 3 4 2 1 2 3 3 2 1 2 4 3 2 1 》c=[5,6,7,8] c= 5 6 7 8 T= 5 2 3 4 6 5 2 3 7 6 5 2 8 7 6 5 例: 1.3.4程序流程控制 在MATLAB中一共有8种流程控制语句,所有的流程控制语句都由end来作为结束标志。 1. if 语句 复杂的计算需要根据表达式的情况是否满足条件来确定下一步该做什么,MATLAB提供了if-else-end语句来进行判断选择。 if语句最简单的调用格式为: if expression statements end 其中,expression是逻辑表达式,statement为语句体。执行过程:当表达式为真时,执行语句体,否则跳过。 如果有多个条件,可用下面的结构: if expression1 statements1 else if expression2 statements2 …… else statements end 执行过程是:先判断expression1 ,如果为真,则 执行命令statements1,执行完后跳出该语句继续 执行end后的其他语句;如果expression1为 假,则跳过statements1,接着判断 expression2;如果为真,执行命令statements2, 依此类推,直到运行完所有的语句。 例:判断奇偶数。 例:判断奇偶数。 2.分支语句switch-case-otherwise语句 switch用于有选择性的程序设计,调用格式为: 注意:与C语言不同,当第一个case语句为真时,余下的 case语句将不再执行,因此这里不用break语句。 执行结果:当input-var=1,显示1;当input-var=3,显示2 or 3 or 4;当input-var=7,显示something else。 例: 例:设一个M函数,该函数接收一幅图像f,并将 其转换为一个指定的类,称该类为newclass。该转换只对三种图像类有效,即uint8类图像,uint16类图像和double类图像。 switch newclass case ‘uint8’ g=im2uint8(f); case ‘uint16’ g=im2uint16(f); case ‘double’ g=im2double(f); otherwise error (Unknown or improper image class.’) 3.for语句 for循环的最大特点是它的循环判断条件是对循环次数的判断,在一般情况下,for语句的循环次数是确定的,调用格式为: for index=start:increment:end statements end 其中,start为起始值;increment为增量,默认增量 为1;end为终值。 例: 还可以用数组的方式编写: 嵌套的f

文档评论(0)

1亿VIP精品文档

相关文档