精华内容
下载资源
问答
  • matlab中zeros函数是用于返回一个double类零矩阵,其用法是:1、在命令行窗口输入“B=zeros(5)”,按回车键可生成一个“5*5”的零矩阵;2、在命令行窗口输入“B=zeros(3,4)”,并按回车键即可。zeros函数使用...

    matlab中zeros函数是用于返回一个double类零矩阵,其用法是:1、在命令行窗口中输入“B=zeros(5)”,按回车键可生成一个“5*5”的零矩阵;2、在命令行窗口中输入“B=zeros(3,4)”,并按回车键即可。

    309076d61c1477708aeb3f9e93f78786.png

    zeros函数使用方法

    zeros功能是返回一个m×n×p×...的double类零矩阵的一个函数。

    第一步在命令行窗口中输入B=zeros(5),按回车键可以看到生成了一个5*5的零矩阵,如下图所示:

    21e5af9c2599ae1a0ebb5ff37d97d915.png

    第二步在命令行窗口中输入B=zeros(3,4),按回车键生成了一个3行4列的零矩阵,如下图所示:

    640551e81b75de009f4ec5ab2a42d184.png

    第三步输入B=zeros([3 4])格式,按回车键可以看到生成了和上面一样的3行4列零矩阵,只是格式不一样,如下图所示:

    c9f0d311c2ecd99cd282c2abcffd3284.png

    第四步命令行窗口中输入B=zeros(3,4,5,6),按回车键可以看到生成了3*4*5*6的全零矩阵,如下图所示:

    75a1a83250c1436b7f44a625054f62ce.png

    第五步新建一个A变量,输入B=zeros(size(A)),按回车键可以看到生成了一个和A矩阵相同大小的零矩阵,如下图所示:

    52428923e03d2cbb766e1a727ddfc191.png

    第六步最后总结一下zeros函数的使用方法,主要有下面几种,如下图所示:

    a5904f6c490860900e6657654a74ddf3.png

    很多相关知识,请访问PHP中文网!

    展开全文
  • matlab中fread函数用法

    万次阅读 多人点赞 2017-03-28 09:48:20
    fread函数常见用法:1、A=fread(fileID,sizeA,precision,skip,machinefmt) 2、A=fread(fileID) 3、fread(fileID,sizeA) 4、A=fread(fileID,sizeA,precision) 5、A=fread(fileID,sizeA,precision,skip) 6、A=fread...

    fread函数常见用法:1、A=fread(fileID,sizeA,precision,skip,machinefmt)  2、A=fread(fileID) 3、fread(fileID,sizeA) 4、A=fread(fileID,sizeA,precision) 5、A=fread(fileID,sizeA,precision,skip) 6、A=fread(fileID,sizeA,precision,skip)

    直接讲第一种参数最多时候的用法,其他可以类推。

    fread函数主要用法读取二进制文件。

    下面是常用参数的含义:

    1、fileID 文件标识

    打开的文件标识。比如fid=fopen('file.dat'); fid就是fileID,即文件标识

    2、sizeA  输出数组的维度

    有3种参数,Inf、n、[m,n]

    Inf 代表输出数据是列向量,文件中每一个元素对应一个值

    n 代表有n个元素的列向量

    [m,n] 代表按列向量排列的m行n列的矩阵,n可以取Inf,但m不可以

    3、precision   需要读取数据的类型和大小,默认'uint8=>double'

    常见有uint,uint8、uint16等数据格式,需要根据源数据来确定

    4、skip   代表跳过多少字节,默认为0

    5、machinefmt 待读取数据字节的排列方式,默认为'n'

    需要根据源数据格式来确定,有'b'、'l'、's'、'a'等格式

    'n'就是系统字节的排列顺序,即‘native’

    'b'就是'ieee-be',即'Big-endian ordering',即低位字节排放在内存的高地址端,高位字节排放在内存的低地址端

    'l'就是‘ieee-le’,即‘Little-endian ordering’即低位字节排放在内存的低地址端,高位字节排放在内存的高地址端


    展开全文
  • Matlab中image函数用法

    千次阅读 多人点赞 2021-01-10 12:07:10
    向三维视图的坐标区添加图像 输入参数 名称-值对组参数 输出参数 详细信息 图像的高级与低级版本 提示 image从数组显示图像 语法 image(C) image(x,y,C) image('CData',C) image('XData',x,'YData',y...

    目录

    image从数组显示图像

    语法

    说明

    示例

    显示矩阵数据的图像

    控制图像位置

    显示三维真彩色数组的图像

    创建后修改图像

    读取并显示 JPEG 图像文件

    向三维视图中的坐标区添加图像

    输入参数

    名称-值对组参数

    输出参数

    详细信息

    图像的高级与低级版本

    提示


    image从数组显示图像

    语法

    image(C)
    
    image(x,y,C)
    
    image('CData',C)
    
    image('XData',x,'YData',y,'CData',C)
    
    image(___,Name,Value)
    
    image(ax,___)
    
    im = image(___)

    说明

    image(C) 会将数组 C 中的数据显示为图像。C 的每个元素指定图像的 1 个像素的颜色。生成的图像是一个 m×n 像素网格,其中 m 和 n 分别是 C 中的行数和列数。这些元素的行索引和列索引确定了对应像素的中心。

    image(x,y,C) 指定图像位置。使用 x 和 y 可指定与 C(1,1) 和 C(m,n) 对应的边角的位置。要同时指定两个边角,请将 x 和 y 设置为二元素向量。要指定第一个边角并让 image 确定另一个,请将 x 和 y 设为标量值。图像将根据需要进行拉伸和定向。

    image('CData',C) 将图像添加到当前坐标区中而不替换现有绘图。此语法是 image(C) 的低级版本。

    image('XData',x,'YData',y,'CData',C) 指定图像位置。此语法是 image(x,y,C) 的低级版本。

    image(___,Name,Value) 使用一个或多个名称-值对组参数指定图像属性。可以使用先前语法中的任意输入参数组合指定图像属性。

    image(ax,___) 将在由 ax 指定的坐标区中而不是当前坐标区 (gca) 中创建图像。选项 ax 可以位于前面的语法中的任何输入参数组合之前。

    im = image(___) 返回创建的 Image 对象。使用 im 在创建图像后设置图像的属性。可以使用先前语法中的任意输入参数组合指定此输出。

    示例

    显示矩阵数据的图像

    创建矩阵C。显示 C 中数据的图像。向图形添加颜色栏以显示当前颜色图。

    C = [0 2 4 6; 8 10 12 14; 16 18 20 22];
    image(C)
    colorbar

    默认情况下,图像的 CDataMapping 属性设置为 'direct',因此 image 会将 C 中的值解释为颜色图的索引。例如,与 C 中最后一个元素 (22) 对应的右下方像素使用颜色图的第 22 个颜色。通过在创建图像时将 CDataMapping 属性设置为 'scaled',将值的范围缩放到当前颜色图的完整范围。

    image(C,'CDataMapping','scaled')
    colorbar

    也可以使用imagesc函数缩放这些值,而不是使用image(C,'CDataMapping','scaled')。例如,使用 imagesc(C)

    控制图像位置

    放置图像,使其位于 x 轴上的 5 和 8 之间及 y 轴上的 3 和 6 之间。

    x = [5 8];
    y = [3 6];
    C = [0 2 4 6; 8 10 12 14; 16 18 20 22];
    image(x,y,C)

    请注意,对应于 C(1,1) 的像素居中显示在点 (5,3) 上。对应于 C(3,4) 的像素在点 (8,6) 上居中显示。image 在这两个点之间定位和定向该图像的其余部分。

    显示三维真彩色数组的图像

    创建 C 作为真彩色三维数组。将该数组的最后两页设为零,以便仅使用红色。

    C = zeros(3,3,3);
    C(:,:,1) = [.1 .2 .3; .4 .5 .6; .7 .8 .9]
    C = 
    C(:,:,1) =
    
        0.1000    0.2000    0.3000
        0.4000    0.5000    0.6000
        0.7000    0.8000    0.9000
    
    
    C(:,:,2) =
    
         0     0     0
         0     0     0
         0     0     0
    
    
    C(:,:,3) =
    
         0     0     0
         0     0     0
         0     0     0
    

    显示 C 中数据的图像。

    image(C)

    创建后修改图像

    绘制一个线条,然后在该线条上方创建一个图像。返回图像对象。

    plot(1:3)
    hold on
    C = [1 2 3; 4 5 6; 7 8 9];
    im = image(C);

    使图像半透明,这样线条就会在图像中透明呈现。

    im.AlphaData = 0.5;

    读取并显示 JPEG 图像文件

    读取 JPEG 图像文件。

    C = imread('ngc6543a.jpg');

    imread 返回 650×600×3 数组 C。显示图像。

    image(C)

    向三维视图中的坐标区添加图像

    创建一个曲面图。然后,在曲面下添加一个图像。image在 xy 平面中显示该图像。

    Z = 10 + peaks;
    surf(Z)
    hold on 
    image(Z,'CDataMapping','scaled')

    输入参数

    C - 图像颜色数据
    向量或矩阵 | 由 RGB 三元组组成的三维数组

    图像颜色数据,指定为下列形式之一:

    • 向量或矩阵 - 此格式定义索引图像数据。C 的每个元素定义图像的 1 个像素的颜色。例如,C = [1 2 3; 4 5 6; 7 8 9];C 的元素映射到相关联的坐标区的颜色图中的颜色。CDataMapping属性控制映射方法。

    • 由 RGB 三元组组成的三维数组 - 此格式定义使用 RGB 三元值的真彩色图像数据。每个 RGB 三元组定义图像的 1 个像素的颜色。RGB 三元组是三元素向量,指定颜色的红、绿和蓝分量的强度。三维数组的第一页包含红色分量,第二页包含绿色分量,第三页包含蓝色分量。由于图像使用真彩色代替颜色图的颜色,因此 CDataMapping 没有任何作用。

      • 如果 C 为 double 类型,则 RGB 三元值 [0 0 0] 和 [1 1 1] 分别对应于黑色和白色。

      • 如果 C 为整数类型,则该图像使用完整范围的数据确定颜色。例如,如果 C 为类型 uint8,则 [0 0 0] 和 [255 255 255] 分别对应于黑色和白色。如果 CData 为类型 int8,则 [-128 -128 -128] 和 [127 127 127] 分别对应于黑色和白色。

      • 如果 C 为类型 logical,则 [0 0 0] 和 [1 1 1] 分别对应于黑色和白色。

    下图演示了两种颜色模型的 C 的相对维度。

    NaN 元素的行为未定义。要改用image函数的低级版本,请将CData属性设为名称-值对组。例如,image('CData',C)

    在数据类型间转换

    要将索引图像数据从整数类型转换为double类型,请加上1。例如,如果X8uint8类型的索引图像数据,则使用以下语法将其转换为 double 类型:

    X64 = double(X8) + 1;

    要将索引图像数据从double类型转换为整数类型,请减去 1 并使用round确保所有值都为整数。例如,如果 X64 为 double 类型的索引图像数据,则使用以下语法将其转换为 uint8

    X8 = uint8(round(X64 - 1));

    要将真彩色图像数据从整数类型转换为double类型,请重新缩放数据。例如,如果RGB8uint8类型的真彩色图像数据,则使用以下语法将其转换为 double

    RGB64 = double(RGB8)/255;

    要将真彩色图像数据从 double 类型转换为整数类型,请重新缩放数据并使用 round 确保所有值都为整数。例如,如果 RGB64 为 double 类型的图像数据,则使用以下语法将其转换为 uint8

    RGB8 = uint8(round(RGB64*255));

    数据类型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical

    x - 沿着 x 轴放置
    [1 size(C,2)] (默认) | 二元素向量 | 标量

    沿着 x 轴放置,以下列形式之一指定:

    • 二元素向量 - 将第一个元素用作 C(1,1) 的中心位置,将第二个元素用作 C(m,n) 的中心位置,其中 [m,n] = size(C)。如果 C 为三维数组,则 m 和 n 为前两个维度。C 的其余元素的中心均匀分布在这两点之间。

      每个像素的宽度由以下表达式确定:

      (x(2)-x(1))/(size(C,2)-1)

      如果 x(1) > x(2),则图像左右翻转。

    • 标量 - 会以此位置作为 C(1,1) 的中心,并使后面的每个元素相隔一个单位。

    要改用 image 函数的低级版本,请将XData属性设为名称-值对组。例如,image('XData',x,'YData',y,'CData',C)。无法在以交互方式将图像平移或缩放到图像的 x 轴或 y 坐标轴范围以外,除非设置的坐标轴范围界限已超出图像边界。如果这些轴范围超出边界,则无此类限制。如果其他对象(例如,线条)占用坐标区,并延伸到图像边界以外,您可以平移或缩放到其他对象的边界,但不能越过边界。

    数据类型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical

    y - 沿着 y 轴放置
    [1 size(C,1)] (默认) | 二元素向量 | 标量

    沿着 y 轴放置,以下列形式之一指定:

    • 二元素向量 - 将第一个元素用作 C(1,1) 的中心位置,将第二个元素用作 C(m,n) 的中心位置,其中 [m,n] = size(C)。如果 C 为三维数组,则 m 和 n 为前两个维度。C 的其余元素的中心均匀分布在这两点之间。

      每个像素的高度由以下表达式确定:

      (y(2)-y(1))/(size(C,1)-1)

      如果 y(1) > y(2),则图像上下翻转。

    • 标量 - 会以此位置作为 C(1,1) 的中心,并使后面的每个元素相隔一个单位。

    要改用 image 函数的低级版本,请将YData属性设为名称-值对组。例如,image('XData',x,'YData',y,'CData',C)。无法在以交互方式将图像平移或缩放到图像的 x 轴或 y 坐标轴范围以外,除非设置的坐标轴范围界限已超出图像边界。如果这些轴范围超出边界,则无此类限制。如果其他对象(例如,线条)占用坐标区,并延伸到图像边界以外,您可以平移或缩放到其他对象的边界,但不能越过边界。

    数据类型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical

    ax - Axes 对象
    Axes 对象

    Axes 对象。如果您不指定 Axes 对象,则image使用当前坐标区。

    名称-值对组参数

    指定可选的、以逗号分隔的 Name,Value 对组参数。Name 为参数名称,Value 为对应的值。Name 必须放在引号中。可采用任意顺序指定多个名称-值对组参数,如 Name1,Value1,...,NameN,ValueN 所示。

    示例: image([1 2 3],'AlphaData',0.5) 会显示半透明图像。

    此处所列的属性只是一部分图像属性。

    'CDataMapping' - 颜色数据的映射方法
    'direct' (默认) | 'scaled'

    颜色数据的映射方法,指定为 'direct' 或 'scaled'。使用该属性控制CData中的颜色数据值到颜色图的映射。CData必须是用来定义索引颜色的向量或矩阵。如果CData是定义真彩色的三维数组,该属性不起作用。

    这些方法具有以下作用:

    • 'direct' - 将值解释为当前颜色图中的索引。带小数部分的值舍取为最接近的整数。

      • 如果值为 double 或 single 类型,则小于或等于 1 的值将映射到颜色图中的第一个颜色。大于或等于颜色图长度的值将映射到颜色图中的最后一种颜色。

      • 如果值为 uint8uint16uint32uint64int8int16int32 或 int64 类型,则小于或等于 0 的值将映射到颜色图中的第一个颜色。大于或等于颜色图长度的值将映射到颜色图中的最后一种颜色(或者最大可为该类型的范围限值)。

      • 如果值为 logical 类型,则值 0 将映射到颜色图中的第一个颜色,值 1 将映射到颜色图中的第二个颜色。

    • 'scaled' - 缩放值以使其跨度覆盖颜色范围。坐标区的Clim属性包含颜色范围。

    'AlphaData' - 透明度数据
    1 (默认) | 标量 | 大小与 CData 相同的数组

    透明度数据,指定为以下格式之一:

    • 标量 - 在整个图像中使用一致的透明度。

    • 大小与 CData 相同的数组 - 对每个图像元素使用不同的透明度值。

    AlphaDataMapping属性控制 MATLAB® 如何解释 alpha 数据透明度值。

    示例: 0.5

    数据类型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical

    'AlphaDataMapping' - AlphaData 值的解释
    'none' (默认) | 'scaled' | 'direct'

    AlphaData 值的解释,指定为下列值之一:

    • 'none' - 将值解释为透明度值。值 1 或更大的值表示完全不透明,值 0 或更小的值表示完全透明,介于 0 和 1 之间的值表示半透明。

    • 'scaled' - 将值映射到图窗的 alphamap 中。坐标区的最小和最大 alpha 范围确定分别映射到 alphamap 中第一个和最后一个元素的 alpha 数据值。例如,如果alpha范围是[3 5],则小于或等于3的alpha数据值映射到 alphamap 中的第一个元素。大于或等于 5 的 alpha 数据值映射到颜色图中的最后一个元素。坐标区的ALim属性包含 alpha 范围。图窗的Alphamap属性包含 alphamap。

    • 'direct' - 将值解释为图窗的 alphamap 的索引。带小数部分的值向下舍取为最接近的整数:

      • 如果值为 double 或 single 类型,则小于或等于 1 的值将映射到 alphamap 中的第一个元素。等于或大于 alphamap 的长度的值映射到 alphamap 中的最后一个元素。

      • 如果值的类型为整数,则 0 或更小的值映射到 alphamap 中的第一个元素。等于或大于 alphamap 的长度的值映射到 alphamap 中的最后一个元素(或者最大可为该类型的范围限值)。整数类型有 uint8uint16uint32uint64int8int16int32 和 int64

      • 如果值为 logical 类型,则值 0 将映射到 alphamap 中的第一个元素,值 1 将映射到 alphamap 中的第二个元素。

    输出参数

    im - Image 对象
    Image 对象

    Image对象,以标量形式返回。使用im在创建图像后设置图像的属性。

    详细信息

    图像的高级与低级版本

    image 函数有两个版本:高级版本和低级版本。如果您使用的 image 将 'CData' 作为输入参数,则您使用的是低级版本。否则,您使用的是高级版本。

    image 的高级版本在绘图前调用newplot并设置以下坐标区属性:

    •  Layer至 'top'。该图像显示在任何刻度线或网格线前面。

    • YDir至 'reverse'。沿 y 轴的值从上到下递增。要使值从上到下递减,请将 YDir 设置为 'normal'。此设置会反转 y 轴和图像。

    • View至 [0 90]

    image 函数的低级版本不调用 newplot 且不设置这些坐标区属性。

    提示

    • 要将图像数据从不同标准格式(如 TIFF)的图形文件读取到 MATLAB 中,使用imread。要将 MATLAB 图像数据写入图形文件,使用imwrite。imreadimwrite函数支持各种图形文件格式和压缩方案。

    展开全文
  • Matlab中fopen函数用法

    千次阅读 2020-12-17 20:26:30
    fopen函数打开文件或获得有关打开文件的信息。 语法 fileID = fopen(filename) fileID = fopen(filename,permission) fileID = fopen(filename,permission,machinefmt,encodingIn) [fileID,errmsg] = fopen(__...

    目录

    语法

    说明

    示例

    1.打开文件并将标识符传递给文件 I/O 函数

    2.请求要打开的文件的名称

    3.打开要写入的文件并指定访问类型、写入顺序、字符编码

    4.获取有关已打开文件的信息

    输入参数

    提示


            fopen函数打开文件或获得有关打开文件的信息。

    语法

    fileID = fopen(filename)
    
    fileID = fopen(filename,permission)
    
    fileID = fopen(filename,permission,machinefmt,encodingIn)
    
    [fileID,errmsg] = fopen(___)
    
    fIDs = fopen('all')
    
    filename = fopen(fileID)
    
    [filename,permission,machinefmt,encodingOut] = fopen(fileID)

    说明

    • fileID = fopen(filename) 打开文件filename以便以二进制读取形式进行访问,并返回等于或大于 3 的整数文件标识符。MATLAB® 保留文件标识符 01 和 2 分别用于标准输入、标准输出(屏幕)和标准错误。
    • 如果 fopen 无法打开文件,则 fileID 为 -1
    • fileID = fopen(filename , permission ) 将打开由permission指定访问类型的文件。
    • fileID = fopen(filename , permission ,machinefmt,encodingIn) 使用machinefmt参数另外指定在文件中读写字节或位时的顺序。可选的encodingIn参数指定与文件相关联的字符编码方案。
    • 如果 fopen 打开文件失败,则 [fileID,errmsg] = fopen(___) 还将返回一条因系统而异的错误消息。否则,errmsg 是一个空字符向量。您可以将此语法与前面语法中的任何输入参数结合使用。
    • fIDs = fopen('all') 返回包含所有打开文件的文件标识符的行向量。为标准输入、输出以及错误而保留的标识符不包括在内。向量中元素的数量等于打开文件的数量。
    • filename = fopen(fileID) 返回上一次调用fopen在打开 fileID 指定的文件时所使用的文件名。输出文件名将解析到完整路径。fopen函数不会从文件读取信息来确定输出值。
    • [filename,permission,machinefmt,encodingOut] = fopen(fileID) 还会返回上一次调用 fopen 在打开指定文件时所使用的权限、计算机格式以及编码。如果是以二进制模式打开的文件,则 permission 会包含字母 'b'encodingOut 输出是一个标准编码方案名称。fopen 不会从文件读取信息来确定这些输出值。无效的 fileID 会为所有输出参数返回空字符向量。

    示例

    1.打开文件并将标识符传递给文件 I/O 函数

            打开文件并将文件标识符传递给fgetl函数以读取数据。

            打开文件tsunamis.txt并获取文件标识符。

    fileID = fopen('tsunamis.txt');

            将fileID传递给fgetl函数以从文件读取一行。

    tline = fgetl(fileID)
    
    tline =
    
      'A global tsunami data set in xlsx format, comprising the following file:'

            关闭文件。

    fclose(fileID)

    2.请求要打开的文件的名称

            创建一条提示,要求提供待打开文件的名称。如果fopen无法打开文件,则显示相关错误消息。

    fileID = -1;
    errmsg = '';
    while fileID < 0 
       disp(errmsg);
       filename = input('Open file: ', 's');
       [fileID,errmsg] = fopen(filename);
    end

    3.打开要写入的文件并指定访问类型、写入顺序、字符编码

            打开一个文件,使用 Shift-JIS 字符编码写入到文件。

    fileID = fopen('japanese_out.txt','w','n','Shift_JIS');

      'w' 输入指定写入权限,'n' 输入指定本机字节排序方式,'Shift_JIS' 指定字符编码方案。

    4.获取有关已打开文件的信息

            假定以前使用 fopen 打开了文件。

    fileID = fopen('tsunamis.txt');

            获取所有已打开文件的文件标识符。

    fIDs = fopen('all')
    fIDs =
    
         3

            获取已打开文件的文件名称及字符编码。使用 ~ 代替希望省略的输出参数。

    [filename,~,~,encoding] = fopen(fileID)
    filename =
    
        'matlabroot\toolbox\matlab\demos\tsunamis.txt'
    
    
    encoding =
    
        'windows-1252'

            这里显示的输出内容有代表性。结果可能有所不同。

    输入参数

    filename - 要打开的文件的名称
    字符向量或字符串标量

            要打开的文件名称(含文件扩展名),指定为字符行向量或字符串标量。如果该文件不在当前文件夹中,则 filename 必须包含完整或相对路径。

            在UNIX® 系统上,如果 filename 以 '~/' 或 '~username/' 开头,则 fopen 函数分别延长路径至当前用户或指定用户的主目录。

    • 如要打开有读取权限的文件而该文件不在当前文件夹中,则fopen将沿MATLAB搜索路径进行搜索。

    • 如要打开有写入或追加权限的文件而该文件不在当前文件夹中,则fopen将在当前目录中创建一个文件。

    示例: 'myFile.txt'

    数据类型: char | string

    permission - 文件访问类型
    'r' (默认) | 'w' | 'a' | 'r+' | 'w+' | 'a+' | 'A' | 'W' | .

            文件访问类型,指定为字符向量或字符串标量。可以用二进制模式或文本模式打开文件。在 UNIX 系统上,两种转换模式具有相同的效果。要以二进制模式打开文件,请指定以下各项之一。

    'r'

    打开要读取的文件。

    'w'

    打开或创建要写入的新文件。放弃现有内容(如果有)。

    'a'

    打开或创建要写入的新文件。追加数据到文件末尾。

    'r+'

    打开要读写的文件。

    'w+'

    打开或创建要读写的新文件。放弃现有内容(如果有)。

    'a+'

    打开或创建要读写的新文件。追加数据到文件末尾。

    'A'

    打开文件以追加(但不自动刷新)当前输出缓冲区。

    'W'

    打开文件以写入(但不自动刷新)当前输出缓冲区。

            要以文本模式打开文件,请将字母 't' 附加到 permission 参数,例如 'rt' 或 'wt+'

            在 Windows® 系统上,以文本模式:

    • 读取操作如果遇到回车符后加换行符 ('\r\n'),则会从输入中删除回车符。

    • 写入操作在输出中的任何换行符之前插入一个回车符。

    如果要在 MATLAB 中写入文件,则以文本模式打开或创建新文件,然后在 Microsoft® 记事本或不会将 '\n' 识别为换行符序列的任意文本编辑器中打开该文件。写入文件时,用 '\r\n' 结束每行。有关示例,可以参考fprintf函数。否则,请以二进制模式打开文件以获得更佳的性能。

    要读写同一文件:

    • 采用带加号 '+' 的 permission 值打开文件。

    • 在读写操作之间调用 fseekfrewind。例如,不在调用fread后调用fwrite,或调用 fwrite 后调用 fread,除非在它们之间调用 fseek 或 frewind

    数据类型: char | string

    machinefmt - 读取或写入字节或位的顺序
    'n' (默认) | 'b' | 'l' | 's' | 'a' | ...

            在文件中读取或写入字节或位的顺序,指定为以下字符向量或字符串标量之一。

    'n' 或 'native'

    系统字节排序方式(默认)

    'b' 或 'ieee-be'

    Big-endian 排序

    'l' 或 'ieee-le'

    Little-endian 排序

    's' 或 'ieee-be.l64'

    Big-endian 排序,64 位长数据类型

    'a' 或 'ieee-le.l64'

    Little-endian 排序,64 位长数据类型

            默认情况下,当前支持的所有平台都使用 little-endian 排序方式对新文件进行排序。现有二进制文件可以使用 big-endian 或 little-endian 排序方式。

    数据类型: char | string

    encodingIn - 字符编码
    'UTF-8' | 'ISO-8859-1' | 'windows-1251' | 'windows-1252' | ...

            后续读写操作使用的字符编码,包括 fscanffprintffgetlfgetsfread 以及 fwrite,指定为字符向量或字符串标量。该字符向量或字符串标量必须包含标准字符编码方案名称,如下所示。

    'Big5'

    'ISO-8859-1'

    'windows-874'

    'Big5-HKSCS'

    'ISO-8859-2'

    'windows-949'

    'CP949'

    'ISO-8859-3'

    'windows-1250'

    'EUC-KR'

    'ISO-8859-4'

    'windows-1251'

    'EUC-JP'

    'ISO-8859-5'

    'windows-1252'

    'EUC-TW'

    'ISO-8859-6'

    'windows-1253'

    'GB18030'

    'ISO-8859-7'

    'windows-1254'

    'GB2312'

    'ISO-8859-8'

    'windows-1255'

    'GBK'

    'ISO-8859-9'

    'windows-1256'

    'IBM866'

    'ISO-8859-11'

    'windows-1257'

    'KOI8-R'

    'ISO-8859-13'

    'windows-1258'

    'KOI8-U'

    'ISO-8859-15'

    'US-ASCII'

    'Macintosh'

    'UTF-8'

    'Shift_JIS'

            如果不指定编码方案,fopen 将使用系统的默认编码方案打开文件进行处理。

            如果为编码指定的值不在支持的值列表中,则 MATLAB 会发出警告。有时(并非总是)指定其他编码名称会产生正确的结果。

    数据类型: char | string

    fileID - 已打开文件的文件标识符
    整数

            已打开文件的文件标识符,指定为整数。

    数据类型: double

    提示

    • 在大多数情况下,不必以文本模式打开文件。MATLAB 导入函数、所有 UNIX 应用程序以及 Microsoft Word 和写字板都将 '\n' 识别为换行指示符。

    展开全文
  • matlab中 str2num 函数与 str2double 函数的区别

    万次阅读 多人点赞 2018-09-12 17:03:59
    str2num 函数与 str2double 函数的相同点与不同点 1. 相同点:当str为一个含数字的字符串时,str2num 函数与 str2double 函数一样。 如: 2. 不同点:当str为多个字符串构成的数组时,str2num 函数与 str2...
  • Matlab中各类函数用法

    千次阅读 2015-10-15 15:21:10
    开始接触Matlab,在此篇博文中将记录所有遇到的各类函数用法并配上自己测试后的说明,会定期更新。 1.size()获取矩阵的行数和列数 (1)s=size(A),  当只有一个输出参数时,返回一个行向量,该行向量的第一个元素...
  • Matlab中textscan函数用法

    千次阅读 2020-12-24 17:32:38
    textscan函数从文本文件或字符串读取格式化数据。 语法 C = textscan(fileID,formatSpec) C = textscan(fileID,formatSpec,N) C = textscan(chr,formatSpec) C = textscan(chr,formatSpec,N) C = textscan(__...
  • Matlab中imshow函数用法

    千次阅读 2021-01-08 17:51:35
    从文件显示图像 更改显示的图像的颜色图 输入参数 名称-值对组参数 输出参数 提示 imshow显示图像 语法 imshow(I) imshow(I,[low high]) imshow(I,[]) imshow(RGB) imshow(BW) imshow(X,map) ...
  • 图像类和类型间的转换 im2uint8 &amp;nbsp;将输入所有小于0的设置为0,而将输入所有大于1的设置为255 其他的所有乘以255 ... 把一个double类的任意数组转换成值范围在[0,1]的归一化dou...
  • Matlab中fread函数用法

    千次阅读 2020-12-22 09:44:27
    fread函数读取二进制文件的数据。 语法 A = fread(fileID) A = fread(fileID,sizeA) A = fread(fileID,sizeA,precision) A = fread(fileID,sizeA,precision,skip) A = fread(fileID,sizeA,precision,skip,...
  • Matlab中fgetl函数用法

    千次阅读 2020-12-18 08:43:12
    fgetl函数读取文件的行,并删除换行符。 语法 tline = fgetl(fileID) 说明 tline = fgetl(fileID)返回指定文件的下一行,并删除换行符。 如果文件非空,则fgetl以字符向量形式返回tline。 如果文件...
  • Matlab中zplane函数用法

    2021-01-15 09:03:31
    目录 zplane离散时间系统的零极点图 语法 描述 例子 椭圆低通滤波器的极点和零点 ...传递函数的零点和极点 ...zplane(z,p)在当前图形窗口绘制列向量指定的零点z和列向量p指定的极点。符号'o'代表零,符.
  • Matlab中fwrite函数用法

    千次阅读 2020-12-23 09:03:14
    fwrite将数据写入二进制文件。 语法 fwrite(fileID,A) fwrite(fileID,A,precision) fwrite(fileID,A,precision,skip) ...fwrite(fileID,A,precision,skip,machinefmt) ...fwrite(fileID,A)将数组A的元素...使用fopen...
  • Matlab中cell函数用法

    2021-01-23 08:39:57
    cell函数元胞数组。 说明 元胞数组是一种包含名为元胞的索引数据容器的数据类型,其中的每个元胞都可以包含任意类型的数据。元胞数组通常包含文本列表、文本和数字的组合或者不同大小的数值数组。通过将索引括在圆...
  • Matlab中flip函数用法

    千次阅读 2020-12-27 19:50:05
    目录 flip 语法 说明 示例 翻转字符向量 ...B重新排序的维度取决于A的形状: 如果A为向量,flip(A)将沿向量的长度方向反转元素顺序。 如果A为矩阵,flip(A)将反转每列元素的顺序。 ...
  • Matlab中bitcmp函数用法

    2021-01-02 11:10:30
    数据类型: double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 assumedtype - 假定的 A 的数据类型 'uint64' | 'uint32' | 'uint16' | 'uint8' | 'int64' ...
  • Matlab中edge函数使用方法

    万次阅读 多人点赞 2020-04-26 17:54:48
    引言:Matlab图像处理edge函数通常用于提取边缘。...BW = edge(I,method)使用方法指定的边缘检测算法检测图像I的边缘 BW = edge(I,method,threshold)返回所有比阈值强的边缘。 BW = edge...
  • Matlab中erf函数用法

    千次阅读 2020-12-06 18:41:22
    matlab中erf函数称为误差函数,公式如下式所示。 erf简单用法 erf函数matlab里面可以直接作为内置函数使用,如erf(1),erf(1)表示erf在1的取值 举例说明 计算erf(0),erf(1),erf(inf)的值 erf(0); 计算结果 ans = ...
  • matlab中svd函数用法总结

    千次阅读 2018-05-31 14:03:38
    1、帮助文档 svd Singular value decomposition Syntax s = svd(X) [U,S,V] = svd(X) [U,S,V] = svd(X,0) [U,S,V] = svd(X,'econ') ...出错原因,SVD在R2011a不能被调用,区分大小写 解决办法S=svd(double(A))
  • MATLAB中load函数用法

    万次阅读 多人点赞 2018-05-06 11:03:21
    转载自https://ww2.mathworks.cn/help/matlab/ref/load.htmlload将文件变量加载到工作区中全页折叠语法load(filename)load(filename,variables)load(filename,'-ascii')load(filename,'-mat')load(filename,'-mat',...
  • MATLAB中randi函数用法

    千次阅读 2021-02-06 21:28:55
    MATLAB中randi函数用法 均匀分布的伪随机整数 语法 X = randi(imax) X = randi(imax,n) X = randi(imax,sz1,...,szN) X = randi(imax,sz) X = randi(imax,classname) X = randi(imax,n,classname) X = randi(imax,...
  • Matlab中rand函数使用方法

    千次阅读 2019-11-24 23:22:00
    原创 MATLAB中rand,randi,randn函数,及rand('state',0)和rand('seed',0)产生随机种子详解              在学习matlab中看到书上有许多关于生成随机数...
  • MATLAB中find函数用法

    千次阅读 2018-12-14 13:45:34
    MATLAB中find函数用法 find函数:查找非零元素的索引和值 主要有下面5中用法, k = find(X) X有三种情况: (1):如果X为向量(行向量或者列向量),k为X中非零元素索引组成的向量。k的方向与X的方向相同。如果X...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 12,121
精华内容 4,848
关键字:

matlab中double函数用法

matlab 订阅