首页 > 其他 > 详细

MATLAB基础(1)

时间:2015-11-01 00:11:54      阅读:456      评论:0      收藏:0      [点我收藏+]

     首先,在了解了大概的数字图像处理的基本知识后,我准备用MATLAB工具软件来进行编辑和处理。因此接下来的几章我都会记录我看到的一些比较重要的,比较基础的,或者可能会用到的MATLAB的相关知识介绍。

1.字符串操作常用的函数,如下表

 

表1 字符串操作的常用函数
函数 说明 函数 说明
blanks(n) 生成一个由n个空格组成的字符串 str2double(s) 将字符串数组转化为数值数组
cellstr(s) 利用给定的字符数s组创建字符串单元数组 strcat(s1,s2,...) 将多个字符串串联
char(s1,s2,...) 利用给定的字符串或单元数组s1、s2...创建字符数组 strcmp(s1,s2) 判断字符串是否相等
deblank(s) 删除字符串s尾部的空格 strcmpi(s1,s2) 判断字符串是否相等(忽略大小写)
double(s) 将字符串s转化成ASC码形式 strjust(s1,type) 按照指定的type调整呢一个字符串数组
findstr(s1,s2) 在长字符串中查找短字符串 strfind(s1,s2) 在字符串s1中查找s2 (注意与findstr的区别)
iscellstr(A) 判断是不是字符串单元数组 strncmp(s1,s2,n) 判断前n个字符串是否相等
ischar(A) 判断是不是字符串数组 strncmpi(s1,s2,n) 判断前n个字符串是否相等(忽略大小写)
isletter(‘A‘) 判断是不是字母 strrep(s1,s2,s3)

将字符串s1中出现的s2用s3代替

isspace(‘s‘) 判断是不是空格 strtok(s1,D) 查找s1中的第一个给定的分隔符之前和之后的字符串
lower(s) 将一个字符串写成小写 strtrim(s) 删除字符串s开始和结尾的空格
int2str(x) 将整数型转换为字符串 strvcat(s1,s2,...) 将多个字符串竖直排列
num2str(x) 将数字转换成字符串 upper(s) 将一个字符串写成大写

 

2.字符串的连接和拆分:

下面是常用的一些连接拆分的MATLAB的代码,值得注意的是,以数组合并符“[ ]”可以连接两个字符串,连接后保留字符串结尾处的空格;而通过字符串连接函数strcat()将字符串连接后会将结尾的空格删除

close all; clear all; clc;	        %关闭所有图形窗口,清除工作空间所有变量,清空命令行
S1=‘How are you!   ‘;		        %创建S1字符串
S2=‘Fine, Thank you!‘;		        %创建S2字符串
A=[S1,S2];                          	%合并字符数组
B=char(S1,S2);				%连接字符串S1和S2
C=strcat(S1,S2);			%横向连接字符串S1和S2
D=strvcat(S1,S2);			%纵向连接字符串S1和S2
E=S2(7:16);                             %拆分截取字符串S2

 

运行结果的workplace如下图所示:

技术分享

 

 

3.字符串的转换

close all; clear all; clc;				%关闭所有图形窗口,清除工作空间所有变量,清空命令行
num=rand(3,3);						%产生3×3随机矩阵
s1=num2str(num);					%将数值转换成字符串
s2=num2str(pi,10);					%将pi的前10位转换成字符串
int=12345;							
s3=int2str(int);					%将整数转换成字符串
s4=mat2str(pascal(3));				        %将矩阵转换成字符串
num1=str2num(‘123456‘);				        %将字符串转换成数值
num2=str2double(‘1234.56‘);			        %将字符串转换成双精度浮点数

运行结果:

技术分享

 

 

4.进制之间的转换

close all; clear all; clc;					%关闭所有图形窗口,清除工作空间所有变量,清空命令行
a=bin2dec(‘1011001‘);					        %将二进制数转换成十进制数
b=dec2bin(18);							%将十进制数转换成二进制数
c=hex2dec(‘9A2B‘);						%将十六进制数转换成十进制数
d=dec2hex(97);							%将十进制数转换成十六进制数
e=base2dec(‘212‘,3);						%将任意进制数转换成十进制数

  

5.逻辑类型  

close all; clear all; clc;			        %关闭所有图形窗口,清除工作空间所有变量,清空命令行
A=[0 0 1;2 0 0;0 3 0]; 
B=logical(A); 					        %将矩阵A转换成逻辑矩阵B
C=true(3);						%生成3阶逻辑真矩阵
D=false(3);						%生成3阶逻辑假矩阵

 

运行结果:

技术分享

 

MATLAB基础(1)

原文:http://www.cnblogs.com/sharilove/p/sharilove_digital_image_processing_002.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!