图像处理学习笔记之——Matlab数字图像处理

这篇博客介绍了Matlab R2017b在数字图像处理中的应用,包括软件环境、文件操作、变量使用、矩阵操作等内容。详细讲解了如何读取和写入图像文件,以及图像的显示方法,如imshow函数的使用。此外,还讨论了Matlab中的矩阵定义、数据类型转换和图像类型,如灰度图像、RGB图像和二值图像的存储方式。
摘要由CSDN通过智能技术生成

Matlab 数字图像处理

1、Matlab R2017b 简介

1.1、Matlab 软件环境

1.1.1、软件界面

在这里插入图片描述

1.1.2、Matlab 命令与程序

可以在 >> 提示符后面输入简单的算式,如 5*3-2;或带有函数的算式,如 sin(pi/2)*sqrt(3)/2:

>> 5*3-2

ans =

    13

>> sin(pi/2)*sqrt(3)/2

ans =

    0.8660

这样的输入形式实际上是 Matlab 命令,而如果在每行命令的结尾输入半角分号,命令窗口不会立即显示命令执行结果,而会将结果保存到工作区中。如下:

在这里插入图片描述

新建文件,从而来创建一个 Matlab 程序。在 Matlab 程序中,使用 % 表示注释

1.1.3、跨行语句

Matlab 还允许将同一条语句分割在多行中书写以方便较长语句的阅读,方法是在行末使用 3 个半角圆点。如:

>> z = 2 .* x + exp(x .^ 2 + y .^ 2 - sqrt( 1 - log (x) - loy (y) ) ) ...
		-y .* sqrt(t) - x .* sqrt(t);

1.2、文件操作

默认情况下,Matlab 可以自动搜索到当前目录和 Matlab 的路径变量 path 中所含目录下面的文件。对处在这些位置可由 Matlab 执行的文件,直接在命令窗口中键入文件名即可运行。如果需要直接运行其他目录下的文件就要使用 addpath 和 genpath 等命令向路径列表中添加路径

1.2.1、addpath 函数

addpath 函数向 path 变量中加入指定的目录路径,其原型如下:

addpath('dir','dir2','dir3'...'-flag')

该函数可接受任意数目的参数。

参数说明:

  • dir、dir2、dir3 等为要加入的目录路径,这些变量必须是绝对路径

  • flag 参数可以用来指定函数的行为,它是可选参数,其取值的含义如下:

    合法取值 含义
    0 或者 begin 这些路径将被添加到搜索列表的最前面,这些目录中的文件将先于原列表中的同名文件被找到从而执行(优先执行)。往往用于需要修改系统某一命令行为的场合
    1 或者 end 这些路径将被添加到搜索列表的最后面,这样可避免用户 M 文件覆盖系统 M 文件
    省略 同 0
1.2.2、genpath 函数

genpath 函数生成包含指定目录下所有子目录的路径变量,其原型如下:

p = genpath('directory');

参数说明:

  • 参数 directory 为指定的目录。

返回值

  • 函数返回包含指定目录本身和其全部子目录的数据。返回值可以直接提供给 addpath,从而直接添加了一个目录及其全部子目录到当前路径列表中。通过这样的方式可以方便地调用我们自己的程序工具箱。
1.2.3、打开与编辑 M 文件

如果需要编辑某 M 文件,就可以使用 open 命令和 edit 命令,它们的调用形式如下:

open filename
edit filename

1.3、在线帮助的使用

  1. help 命令

    用于查看 Matlab 系统或 M 文件内置的在线帮助信息。命令格式如下:

    help command-name
    
  2. doc 命令

    用于查看命令或函数的 HTML 帮助,在浏览器中打开:

    doc function-name
    
  3. lookfor 命令

    当忘记命令或函数的完整拼写时,可以使用 lookfor 命令查找当前目录和自动搜索列表下所有名字当中含有所查内容的函数或命令。其调用格式如下:

    lookfor keyword
    
  4. F1 命令打开帮助浏览器

1.4、变量的使用

使用前一定要赋值,无须事先定义。变量的命名大小写敏感。

1.4.1、变量的赋值

赋值使用 “=”,变量定义时不需要显示地指明类型。默认对数字的存储类型为 double 型或 double 型数组,而字符的存储类型为 char 型,字符串的存储类型为 char 型数组

对于字符串赋值,需要用半角单引号 ‘’ 括起来。

1.4.2、内部变量

自定义变量不要与这些变量同名。

特殊变量 说明
ans 默认的结果输出变量
pi 圆周率
Inf 或 inf 无穷大值,如 1/0
i 和 j 单位虚数值
eps 浮点运算的相对精度
realmax 最大的正浮点数
realmin 最小的正浮点数
NaN 或 nan 不定量,如 0/0
nargin 函数输入参数个数
nargout 函数输出参数个数
lasterr 最近的错误信息
lastwarning 最近的警告信息
computer 计算机类型
version Matlab 版本
1.4.3、查看工作区中的变量

使用 who 和 whos 命令可以查看所有当前工作区中变量的情况。使用 clear 或 clear all 命令可以清除工作区中所有的变量定义,也可以在 clear 后面加上变量名清除特定的变量定义。另外,clc 命令可以用来清屏,所以这两个命令常常用在 M 文件的开头用来构造一个干净的工作区。

>> a = 1; %定义一个数值型变量 a
>> str = 'hello'; %定义了一个字符串变量(字符数组)
>> v = [3 2 1] %定义了一个数值型向量

v =

     3     2     1

>> whos
  Name      Size            Bytes  Class     Attributes

  a         1x1                 8  double              
  ans       1x1                 8  doub
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值