精华内容
下载资源
问答
  • matlab图像处理工具

    千次阅读 2016-08-31 11:59:48
    ///////////////////////matlab图像处理工具箱///////////// 图像格式 文件格式不同在于不同软件对二进制文件的编码解码方法方式不同,理论上一款软件就有自己的一套文件格式,统一文件格式适用于不同的传输要求和...
    ///matlab图像处理工具箱/
    图像格式
    文件格式不同在于不同软件对二进制文件的编码解码方法方式不同,理论上一款软件就有自己的一套文件格式,统一文件格式适用于不同的传输要求和欣赏要求

    图像类型
    二进制图像每个像素点用二进制0 1表示
    索引图像是一种把像素值直接作为 RGB 调色板下标的图像,每个像素点映射成一种调配色
    灰度图像通常由一个 unit8、unit16 或双精度类型的数组来描述,其实质是一个数据矩阵 I,该矩阵中的数据均代表了一定范围内的灰度级,每一个元素与图像的一个像素点相对应, 通常 0 代表黑色,1、255 或 65635(针对不同存储类型)代表白色。
    多帧图像是一种包含多幅图像或帧的图像文件,又称为多页图像或图像序列,它主要用 于需要对时间或场景集合进行操作的场合,例如磁谐振图像切片或电影帧等
    RGB 图像又称为真彩图像,它是利用 R、G、B 三个分量标识一个像素的颜色,R、G、 B 分别代表红、绿、蓝 3 种不同的颜色,通过三基色可以合成出任意颜色

    在有些图像操作中,需要对图像的类型进行转换。比如要对一副索引图像的彩色图像进 行滤波,首先应该将其转换成 RGB 图像,此时在对 RGB 图像使用滤波器时,MATLAB 7.0 将恰当地滤掉图像中的部分灰度值。如果不将索引图像进行转换,MATLAB 7.0 则对图像调 色板的序号进行滤波,这样得到的结果将没有任何意义。下面对一些 MATLAB 7.0 图像处理 工具箱中常用的类型转换进行介绍
    图像颜色浓淡处理(图像抖动)
    dither 函数通过抖动算法转换图像类型,其语法格式为:
    灰度图像转换为索引图像
    gray2ind 函数可以将灰度图像转换成索引图像,其语法格式如下:
    索引图像转换为灰度图像
    ind2gray 函数可以将索引图像转换为灰度图像,其语法格式如下:
    索引图像转换为灰度图像
    ind2gray 函数可以将索引图像转换为灰度图像,其语法格式如下:
    RGB 图像转换为索引图像
    rgb2ind 函数用于将真彩图像转换成为索引图像,可采用直接转换、均匀量化、最小量化、 颜色图近似 4 种方法。除直接转换方法外,其他方法在不指定选项 nodither 时自动进行图像 抖动。其语法格式为
    索引图像转换为 RGB 图像
    ind2rgb 函数将索引图像转换成真彩图像,其语法格式为:
    通过阈值化方法将图像转换为二值图像
    im2bw 函数通过设置亮度阈值将真彩图像、索引图像以及灰度图像转换成二值图像。在 转换过程中,如果输入图像不是灰度图像,首先将其转换为灰度级图像,然后通过阈值化将 灰度级图像转换成二值图像。输出二值图像和输入图像之间的关系是在输入图像所有亮度小 于给定值(level 取值范围为[0,1])的像素点处均为 0,其他均为 1。其语法格式为:
    通过阈值化方法从灰度图像产生索引图像
    grayslice 函数通过设定阈值将灰度图像转换成索引图像,其语法格式为:
    将矩阵转换为灰度图像
    mat2gray 函数用于将一个数据矩阵转换为一幅灰度图像,其语法格式为: 

    图像的显示过程是将数字图像从一组离散数据还原为一幅可见图像的过程。严格地说, 图像的显示在图像处理(尤其是图像分析过程)中并不是必须的,因为图像处理和分析过程 都是基于图像数据的计算,以数字数据或决策的形式给出处理或分析的结果,其中间过程并 不一定要求可视。但是图像的显示是提高图像处理分析性能非常有用的手段,通过图像的显 示,可以监视图像处理过程,并与处理分析交互地控制处理分析过程。 图像显示最重要的特性是图像的大小、光度分辨率、灰度线性、平坦能力和噪声特性等, 这些显示特性将共同决定一个数字图像显示系统的质量及其在特定应用中的适用性等性能指 标。本节主要介绍 MATLAB 7.0 软件图像显示工具,MATLAB 7.0 及图像处理工具箱的显示 功能非常强大,不仅可以用来显示各种类型的图像,还可以用多种方式显示图像及图像序列。 本节将介绍 MATLAB 7.0 中的基本图像显示技术,包括多图像显示和纹理映射等。

    imshow 函数
    当用户调用 imshow 函数显示图像时,将自动设置图形窗口、坐标轴和图像属性,以控 制图像数据在 MATLAB 7.0 的解释方式。这些自动设置的属性包括图像对象的 CData 属性和 CDdata-Mapping 属性、坐标轴对象的 Clim 属性和图像窗口对象的 Colormap 属性
    显示索引图像
    利用 imshow 函数显示 MATLAB 7.0 的索引图像时,可以同时指定图像的数据矩阵和颜 色映射表,具体调用形式为
    显示灰度图像
    调用 imshow 函数显示灰度图像的语法如下:
    显示二进制位图
    下面介绍 imshow 函数显示二进制位图的语法。
    显示 RGB 图像
    RGB 图像即真彩图像。RGB 图像直接表征像素颜色,而不是其他像图像那样通过颜色 映射表来指定像素颜色,显示 RGB 图像的语法如下
    显示图形文件中的图像
    通常情况下,在显示图像时,该图像的对象数据保存在 MATLAB 7.0 运行内存中的一个 或多个变量中。但是,如果用户将图像保存在可以通过 imread 函数读取的图形文件中,则可 以通过下面的语法直接将其显示出来


    特殊图像显示技术
    在 MATLAB 7.0 的图像处理工具箱中,除了 imshow 函数外,还提供了一些实现特殊显 示功能的函数。它们与 MATLAB 7.0 自身提供的图形函数相结合,为图像显示提供了各种特 殊的显示技术,包括图像显示中添加颜色条;显示多帧图像阵列;将图像纹理映射到表面对 象上。下面将具体介绍这些技术的实现方法。

    添加颜色条
    在 MATLAB 7.0 的图像显示中,可以利用 colorbar 函数将颜色条添加到坐标轴对象中。 如果该坐标轴对象包含一个图像对象,则添加的颜色条将指示出该图像中不同颜色的数据值
    实例:例如,下面的代码将首先过滤一个类为 uint8 的图像,然后将其显示为灰度图,并添加 颜色条,示例代码如下:
    RGB = imread(’saturn.png’);
    I = rgb2gray(RGB);
    h = [1 2 1; 0 0 0; -1 -2 -1];
    I2 = filter2(h,I);
    imshow(I2,[]), colorbar
    显示多帧图像阵列
    多帧图像是一个包含多个图像的图像文件。MATLAB 7.0 支持的多帧图像的文件格式包 括 HDF 和 TIFF 两种。文件一旦被读入 MATLAB,多帧图像的显示帧数由矩阵的第四维数值 来决定。调用 montage 函数可实现多帧显示,该函数的语法如下:
    上面几种函数调用方式分别对应着不同的图像格式,有兴趣的读者可以一一验证。这里 举一个简单的例子进行说明:
    实例:%定义一个 4 维矩阵,用来存储 27 幅核磁共振图像
    mri = uint8(zeros(128,128,1,27)); %循环读出多帧图像中的每一幅图像
    for frame=1:27
        [mri(:,:,:,frame),map] = imread(’mri.tif’,frame);
    end %多帧显示
    montage(mri,map);
    除了多帧显示之外,还可以利用 immovie 函数,从多帧图像阵列中创建 MATLAB 7.0 电 影动画。值得提醒的是该函数只能用于索引图像,所以如果希望将其他类型的图像阵列转化 为电影动画,则首先必须将该图像类型转换为索引类型

    .纹理映射
    在使用 imshow 函数时,MATLAB 7.0 在二维空间中显示图像。除此之外,MATLAB 7.0 专门提供了一个对图像进行纹理映射处理的函数 warp,使之显示在三维空间中,三维的面可 以是柱面、球面以及自定义的三维曲面。warp 函数的语法格式如下:
    在 MATLAB 7.0 中,纹理映射是利用双线性渐进算法将图像映射到某个表面栅格上。例 如下面的代码:
    实例:[x,y,z] = cylinder;
    I = imread(’testpat1.png’);
    warp(x,y,z,I);

    图像大小调整
    利用 imresize 函数通过一种特定的插值方法可以实现图像大小的调整
    实例:下面是使用不同的插值方法对图像进行放大的程序:
    load woman2
    subplot(2,2,1)
    imshow(X,map)
    X1 = imresize(X,2,’nearest’);
    subplot(2,2,2)
    imshow(X1,[]);
    X2 = imresize(X,2,’bilinear’);
    subplot(2,2,3)
    imshow(X2,[]);
    X3 = imresize(X,2,’bicubic’);
    subplot(2,2,4)
    imshow(X3,[]);

    图像旋转
    在对数字图像进行旋转的时候,各像素的坐标将会发生变化,使得旋转之后不能正好落 在整数坐标外,需要进行插值。在工具箱中的函数 imrotate 可以用上述 3 种方法对图像进行
    插值旋转,利用 imrotate 函数可以通过一种特定的插值方法来改变图像的显示角度
    实例:下面是将 circuit.tif 图像插值旋转 35o的程序清单:
    I = imread(’circuit.tif’);
    J = imrotate(I,35,’bilinear’);
    subplot(1,2,1)
    imshow(I)
    subplot(1,2,2)
    imshow(J)

    图像剪裁
    在图像处理过程中,有时只需要处理图像中的一部分,或者需要将某部分取出,这样就 需要对图像进行剪切。图像处理工具箱中的 imcrop 函数将图像剪裁成指定矩形区域。该函数 的语法如下:
    实例:下面是从 ic.tif 图像中减去鼠标左键拖动选取的举行区域,并以新的图形窗口显示的 程序
    subplot(1,2,1)
    imshow circuit.tif
    I = imcrop;
    subplot(1,2,2)
    imshow(I);



    图像的变换技术
    为了快速有效地对图像进行处理和分析,常常需要将原定义在图像空间的图像以某种形 式转换到另外一些空间,并利用这些空间特有的性质方便地进行一定的加工,最后再转换回 图像空间以得到需要的效果。这种使图像处理简化的方法通常是对图像进行变换。图像变换 技术在图像增强、图像恢复和有效地减少图像数据、进行数据压缩以及特征提取等方面都有 着十分重要的作用。本节将主要对应用最多傅立叶变换、离散余弦变换、小波变化以及 MATLAB 7.0 实现进行比较详细的介绍。
     数字图像的二维傅立叶变换
    在图像处理的广泛领域中,傅立叶变换起着非常重要的作用,包括图像的效果增强、图 像分析、图像复原和图像压缩等。在图像数据的数字处理中常用的是二维离散傅立叶变化, 它能把空间域的图像转变到频域上进行研究,从而能很容易地对图像的各空间频域成分进行 相应处理。在第 10 章已经比较详细地介绍了傅立叶变换以及离散傅立叶变换的概念,而二维 傅立叶变换又是一维傅立叶变换的简单的推广,这里不再赘述,着重介绍二维傅立叶变换在 图像处理中的应用
    1.MATLAB 7.0 提供的快速傅立叶变换函数
    在 MATLAB 7.0 中,提供了 fft 函数、fft2 函数和 fftn 函数分别用于进行一维 DFT、二维 DFT 和 N 维 DFT 的快速傅立叶变换;ifft 函数、ifft2 函数和 ifftn 函数分别用于进行一维 DFT、 二维 DFT 和 N 维 DFT 的快速傅立叶反变换。下面分别进行具体介绍
    (1)fft2 函数 该函数是用于计算二维快速傅立叶变化,其语法格式为:
    (2)fftn 函数 该函数用于 n 维傅立叶变换,其语法格式为:
    (3)fftshift 函数 该函数是用于将变换后图像频谱中心从矩阵的原点移到矩阵的中心,其语法格式为:
    (4)ifft2 函数 该函数用于计算图像的二维傅立叶反变换,其语法格式为:
    (5)ifftn 函数 该函数用于计算 n 维傅立叶反变换,其语法格式为:
    2.二维傅立叶变换的 MATLAB 7.0 实现
    下面,举例来说明傅立叶变换的实现语句 B = fft2(A),该语句执行对矩阵 A 有二维傅立 叶变换。给出一幅图像(saturn2.tif),其傅立叶变换程序如下
    figure(1);
    load imdemos saturn2; %显示图像
    imshow(saturn2);
    figure(2); %进行傅立叶变换
    B = fftshift(fft2(saturn2)); %显示变换后的系数分布
    imshow(log(abs(B)),[]),colormap(jet(64)),colorbar
    3. 滤波器频率响应
    利用傅立叶变换可以得到线性滤波器的频率响应,其过程如下:首先求出滤波器的脉冲 响应,然后利用快速傅立叶变换算法对滤波器的脉冲响应进行变换,得到的结果就是线性滤 波器的频率响应。MATLAB 7.0 工具箱中提供的 freqz2 函数就是利用这个原理可以同时计算 和显示滤波器的频率响应。 下面是一个利用 freq2 函数得到的高斯滤波器的频率响应的程序:
    h = fspecial(’gaussian’);
    freqz2(h)
    4. 快速卷积
    傅立叶变换的另一个重要特性就是能够实现快速卷积。由线性系统理论可知,两个函数 卷积的傅立叶变换等于两个函数的傅立叶变换的乘积。该特性与快速傅立叶变换相结合,可 以快速计算函数的卷积。假设 A 是一个 M×N 的矩阵,B 是一个 P×Q 的矩阵,则快速计算 矩阵的方法如下:
    下面是一个计算魔方阵和一个 1 矩阵的卷积的程序:
    A = magic(3);
    B = ones(3); %对 A 进行零填充,使之成为 8×8 矩阵
    A(8,8) = 0; %对 B 进行零填充,使之成为 8×8 矩阵
    B(8,8) = 0;
    C = ifft2(fft2(A).*fft2(B)); %抽取矩阵中的非零部分
    C = C(1:5,1:5); %去掉错误的,由四舍五入产生的虚部
    C = real(C)
    5.图像特征识别
    傅立叶变换还能够用来分析两幅图像的相关性,相关性可以用来确定一幅图像的特征, 在这个意义下,相关性通常被成为模板匹配。例如,假如希望在图像 text.tif 中定位字符“a”, 如图 11-13 左上所示,可以采用下面的方法定位。 将包含字母“a”的图像与 text.tif 图像进行相关运算,也就是首先将字母 a 和图像 text.tif 进行傅立叶变换,然后利用快速卷积的方法,计算字母 a 和图像 text.tif 的卷积(其结果如图 11-13右上所示),提取卷积运算的峰值,如图11-13左下所示的白色亮点,即得到在图像text.tif 中对字母“a”定位的结果。 程序代码如下: %读入图像’text.tif’
    bw = imread(’text.png’); %从图像中抽取字母 a 的图像
    a = bw(32:45,88:98); 
    subplot(2,2,1),
    imshow(bw);
    subplot(2,2,2),
    imshow(a);
    C = real(ifft2(fft2(bw) .* fft2(rot90(a,2),256,256)));
    subplot(2,2,3)
    imshow(C,[]) %选择一个略小于 C 中最大值的值做为阈值
    thresh = 60; % 
    subplot(2,2,4), %显示像素值超过阈值的点
    imshow(C > thresh)%


     数字图像的离散余弦变换
    离散余弦变换的变换核为余弦函数,计算速度比较快,有利于图像雅座和其他处理。在 大多数情况下,离散余弦变换(DCT)用于图像的压缩操作中。JPEG 图像格式的压缩算法 采用的是 DCT。
    离散余弦变换的 MATLAB 7.0 实现
    在 MATLAB 7.0 中,函数 dct2 核函数 idct2 分别用于进行二维 DCT 变换和二维 DCT 反 变换。下面举例来说明二维余弦正反变换在 MATLAB 7.0 中的实现,程序代码如下: %载入图像
    RGB = imread(’autumn.tif’);
    figure(1);
    imshow(RGB); %将真彩图转换为灰度图
    I = rgb2gray(RGB);
    figure(2);
    imshow(I); %进行余弦变换
    J = dct2(I);
    figure(3);
    imshow(log(abs(J)),[]);
    colormap(jet(64));
    colorbar; %将 DCT 变换值小于 11 的元素设为 0
    J(abs(J)<11) = 0; %进行余弦反变换
    K = idct2(J)/255;
    figure(4);
    imshow(K)
    下面是一个展示了如何把如图 11-16 左边所示的输入图像划分成 8×8 的图像块,计算它 们的 DCT 系数,并且只保留 64 个 DCT 系数中的 11 个,然后对每个图像块利用这 11 个系数 进行 DCT 反变换来重构图像的程序:
    I = imread(’cameraman.tif’);
    I = im2double(I); %产生二维 DCT 变换矩阵
    T = dctmtx(8); %计算二维 DCT
    B = blkproc(I,[8 8],’P1*x*P2’,T,T’); %二值掩模,用来压缩 DCT 系数
    mask = [1   1   1   1   0   0   0   0
            1   1   1   0   0   0   0   0
            1   1   0   0   0   0   0   0
            1   0   0   0   0   0   0   0
            0   0   0   0   0   0   0   0
            0   0   0   0   0   0   0   0
            0   0   0   0   0   0   0   0
            0   0   0   0   0   0   0   0]; %只保留 DCT 变换的 11 个系数
    B2 = blkproc(B,[8 8],’P1.*x’,mask); %DCT 反变换,用来重构图像
    I2 = blkproc(B2,[8 8],’P1*x*P2’,T’,T);
    subplot(1,2,1)
    imshow(I), 
    subplot(1,2,2)
    imshow(I2)

     其他变换技术
    除了上面介绍的傅立叶变换和离散余弦变换外,在图像处理中还有几种使用比较广泛的 变换技术,它们是离散沃尔什变换、离散哈达玛变换以及 Randon 变换。这里只简略的介绍 每种变换的基本思想,详细的内容以及使用方法请有兴趣的读者参看书后的附录以及 MATLAB 7.0 自带的帮助文档。







    图像分析
    MATLAB 7.0 的图像处理工具箱支持多种标准的图像处理操作,以方便用户对图像进行 分析和调整。这些图像处理操作主要包括: • 获取像素值及其统计数据;
    第 11 章  图像处理工具箱
    –419–
    • 分析图像,抽取其主要结构信息; • 调整图像,突出其某些特征或抑制噪声。

    像素值及其统计
    MATLAB 7.0 的图像处理工具提供多个函数以返回与构成图像的数据值相关的信息,这 些函数能够以多种形式返回图像数据的信息,主要包括: • 选定像素的数据值(pixval 函数和 impixel 函数); • 沿图像中某个路径的数据值(improfile 函数); • 图像数据的轮廓图(imcontour 函数); • 图像数据的柱状图(imhist 函数); • 图像数据的摘要统计值(mean2 函数、std2 函数和 corr2 函数); • 图像区域的特征度量(imfeature 函数)。

    图像分析
    在 MATLAB 7.0 中的图像分析技术可以提取图像的结构信息。例如,可以利用图像处理 工具箱中提供的 edge 函数来探测边界。这里所谓的边界,其实就是图像中包含的对象所对应 的位置。下面介绍几种常见图像分析函数。
    1.灰度图像的边缘:edge 函数
    2.行四叉树分解:qtdecomp 函数
    4.设置四叉树分解块值:qtsetblk 函数
    实例:
    (1)图像分析中的灰度边缘检测实例 源代码设置如下: %调入与显示 RGB 图像
    RGB = imread(’peppers.png’);
    isrgb(RGB);
    figure(1);
    imshow(RGB); %RGB 图转换为灰度图像
    I = rgb2gray(RGB);
    figure(2);
    imshow(I);
    colorbar(’horiz’);
    isgray(I); %边缘检测
    ED = edge(I,’sobel’,0.08);
    figure(3)
    imshow(ED);
    3.获取四叉树分解块值:qtdgetblk 函数
    (2)Sobel 边界探测器和 Canny 边界探测器再图像分析中的应用实例 源代码设置如下: %读入原始图像
    I = imread(’coins.png’);
    imshow(I)
    %sobel 边界探测器
    BW1 = edge(I,’sobel’); %canny 边界探测器
    BW2 = edge(I,’canny’);
    figure
    imshow(BW1)
    figure, imshow(BW2)




    图像调整
    MATLAB 7.0 中的图像调整技术用于图像的改善。此处的改善有两个方面的含义,即客 观方面,例如提高图像的信噪比;主观方面,例如通过修正图像的颜色和强度(灰度)使其 某些特征更容易辨识
    1.灰度调整
    在 MATLAB 7.0 中,相关的函数为 imadjust,该函数可用于调整灰度值或颜色图
    下面是一个调整图像的对比度的程序:
    I = imread(’cameraman.tif’);
    J = imadjust(I,[0 0.2],[0.5 1]);
    subplot(1,2,1)
    imshow(I)
    subplot(1,2,2)
    imshow(J)
    2.直方图调整法
    在 MATLAB 7.0 中,histeq 函数用直方图均衡增强对比度。
    下面是对图像 pout.tif 进行直方图均匀化的程序: %读入图像
    I = imread(’pout.tif’); %进行直方图均匀化
    J = histeq(I);
    subplot(2,2,1)
    imshow(I);
    subplot(2,2,2)
    imshow(J)
    subplot(2,2,3)
    imhist(I)
    subplot(2,2,4)
    imhist(J)




    图像平滑
    图像平滑主要目的是减少图像噪声。图像噪声来自多方面,有来自于系统外部的干扰(如 经过电源窜进系统内部的外部噪声),也有来自于系统内部的干扰(如摄像机的热噪声)。实 际获得的图像都因受到干扰而含有噪声,噪声产生的原因决定了噪声分布的特性及与图像信 号的关系。减少噪声的方法可以在空间域或在频率域处理,即:在空间域进行时,基本方法 就是求像素的平均值或中值;在频率域中则运用低通滤波技术。 图像处理工具箱提供了许多方法来去除图像中的噪声,针对不同的噪声类型,有不同的 去噪的方法。这些方法概括起来有以下三大类: • 线性滤波; • 中值滤波; • 自适应滤波。 线性滤波的方法所采用的线性滤波器大部分在第 10 章中做了详细的介绍,所以这里我 们着重对后面的两种处理方法进行介绍。
    在 MATLAB 7.0 图像处理工具中,提供了 medfilt2 函数用于实现中值滤波。
    下面给出的例子将采用中值滤波对加有椒盐噪声的图像进行滤波,源代码设置如下: %读入图像
    I = imread(’eight.tif’);
    imshow(I) %加入椒盐噪声
    J = imnoise(I,’salt & pepper’,0.02); %显示加入噪声后的图像
    figure, imshow(J) %进行中值滤波
    L = medfilt2(J,[3 3]); %显示中值滤波后的图像
    figure, imshow(L)

    自适应滤波
    MATLAB 7.0 的图像处理工具箱中提供了 wiener2 函数来实现自适应滤波,该函数的用 法如下:
    自适应滤波对高斯白噪声的去除效果最好,下面是自适应滤波的示例代码: %载入图像
    RGB = imread(’saturn.png’); %RGB 转换为灰度图
    I = rgb2gray(RGB); %加入高斯白噪声
    J = imnoise(I,’gaussian’,0,0.005); %采用自适应滤波
    K = wiener2(J,[5 5]); %显示原始图像、加入噪声的图像以及滤波后的噪声
    imshow(I)
    figure,imshow(J)
    figure, imshow(K)




    MATLAB 7.0 中对特定区域的处理是通过二值掩模来实现的,通过选定一个区域后 会生成一个与原图大小相同的二值图像,选定的区域为白色,其余部分为黑色。通过掩模图 像,就可以实现对特定区域的选择性处理。下面介绍创建区域的方法:
    1.多边形选择方法
    roipoly 函数用于设定图像中的多边形区域,该函数返回与输入图像大小一致的二值图像 BW,选中的区域值为 1,其余的部分值为 0。其语法格式为:
    下面是一个根据指定的坐标选择一个六边形区域的程序: %载入图像
    I = imread(’eight.tif’); %指定六边形的角点
    c = [222 272 300 272 222 194];
    r = [21 21 75 121 121 75]; %生成对应的二值图像
    BW = roipoly(I,c,r);
    figure,imshow(I);
    figure,imshow(BW); 
    其他选择方法
    另外,在 MATLAB 7.0 的图像处理工具箱中提供了可以实现按灰度选择区域的函数 roicolor 函数,其语法格式为
    下面是一个按灰度图像中的目标进行分割的程序: %载入图像
    I = imread(’coins.png’); %选择图像灰度范围在 128~255 之间的像素
    BW = roicolor(I,128,255);
    figure,imshow(I)
    figure,imshow(BW)

    特定区域滤波
    在 MATLAB 7.0 的图像处理工具箱中提供的 roifilt2 函数用于对特定区域进行滤波,其语 法格式为:
    下面是一个对指定区域进行锐化滤波的程序清单: %载入图像
    I = imread(’pout.tif’);
    第 11 章  图像处理工具箱
    –433–
    %生成对应的二值图像
    imshow(I) %交互式选择区域
    BW = roipoly %定义滤波器
    h = fspecial(’unsharp’); %进行区域滤波
    I2 = roifilt2(h,I,BW);
    figure, imshow(I2)

     特定区域填充
    在 MATLAB 7.0 的图像处理工具箱中提供的 roifill 函数用于对特定区域进行填充,其语 法格式为:
    下面是特定区域填充的示例代码。 %载入图像
    load trees %RGB 转换为灰度图
    I = ind2gray(X,map);
    MATLAB 7.0
    –434–
    imshow(I) %指定特定区域,并进行填充
    I2 = roifill;
    imshow(I2)

    图形处理高级/
    句柄图形(Handle Graphics)是一种面向对象的绘图系统。该系统提供创建计算机图形 所必须的各种软件。它所支持的指令,可以直接创建线、文字、网格、面以及图形用户界面。 在第 4 章所介绍的各种 MATLAB 7.0 高层(High-level)图形指令(如 plot、mesh)都是以句 柄图形软件为基础写成的。也正是这个原因,句柄图形也被称为低层(Low-level)图形
    P448GUI UI设计
    展开全文
  • MATLAB图像处理工具

    千次阅读 2018-08-11 22:21:26
    自己在学习过程中查阅资料整理了MATLAB图像处理工具箱中函数的名称列表,以及MathWorks中讲解各个函数使用的链接: 1.绘图工具箱 plot 基本绘图函数 mesh 绘制三维网格曲面 fplot 绘制数学函数图 ....

    版权说明 ,转自 https://blog.csdn.net/BAR_WORKSHOP/article/details/81009900

     

    自己在学习过程中查阅资料整理了MATLAB图像处理工具箱中函数的名称列表,以及MathWorks中讲解各个函数使用的链接:

    1.绘图工具箱

    plot 基本绘图函数 mesh 绘制三维网格曲面
    fplot 绘制数学函数图 surf 绘制着色的三维彩色曲面
    ezplot 直接绘制隐函数图形 meshgrid 针对三维图形的x和y数组
    bar 绘制条形图 semilogx 绘制x对数坐标系图
    area 绘制面积图 semilogy 绘制y对数坐标系图
    pie 绘制饼形图 loglog 绘制对数坐标系图
    title 标题 contour 绘制等高线图
    hist 绘制直方图 stem 绘制火柴杆图
    axis 控制轴的比例和外观

    grid

    网格线
    xlabel x-轴标记 ylabel y-轴标记

    2.图像的显示

    imshow 以处理图像的方式显示图像 imtool 以图像工具的方式显示图像
    subimage 以单幅图像的形式显示排列好的多幅图像 immovie 多帧图像制成电影
    implay 播放电影,视频或图像序列 montage 矩形蒙太奇显示多幅图像
    warp 纹理映射表面    

    3.几何变换

    imrotate 旋转图像 makeresampler 创建重取样结构
    imcrop 裁剪图象 maketform 创建空间变换结构(TFORM)
    imresize 调整图像大小 fliptform 转换TFORM结构的输入和输出角色
    checkerboard 创建棋盘格图像 tformarray 对N-D阵列施以空间变换
    findbounds 为空间变换寻找输出边界 tformfwd 应用正向空间变换
    imtransform 对图像进行二维空间变换 tforminv 应用逆向空间变换
    impyramid 以金字塔形式缩减或扩展图像    

    4.像素值和统计

    imhist 显示图像数据的直方图 std2 矩阵元素的标准差
    impixel 像素彩色值 mean2 矩阵元素的平均或均值
    imcontour 创建图像数据轮廓线 corr2 二维相关系数
    improfile 沿着线段的横截面的像素值 regionprops 度量图像区域的特性

    5.图像变换

    fanbeam 扇形射束变换 fan2para 把扇形射束投影变换为平行射束
    ifanbeam 反扇形射束变换 para2fan 把平行射束投影变换为扇形射束
    radon 雷登变换 dct2 二维离散余弦变换
    iradon 反雷登变换 idct2 二维反离散余弦变换
    phantom 创建头部幻影图像 dctmtx 离散余弦变换矩阵

    6.图像分析

    bwtraceboundary 追踪二值图像中的目标 qtdecomp 四叉树分解
    edge 寻找灰度图像的边缘 qtgetblk 得到块值
    hough 霍夫变换 qtsetblk 设置块值
    houghlines 基于霍夫变换的线段提取    
    houghpeaks 识别霍夫变换的峰    

    7.图像算术

    imabsdiff 计算两幅图像的绝对差 imlincomb 图像的线性组合
    imcomplement 图像求补 ippl 检查IPPL是否存在

    8.图像去模糊

    deconvblind

    盲去卷积法

    edgetaper 点扩散函数渐变边缘
    deconvlucy Lucy-Richardson方法 otf2psf 把光传递函数转换为点扩散函数
    deconvreg 规则滤波器法 psf2otf 把点扩散函数转换为光传递函数
    deconvwnr 维纳滤波器法    

    9.线性滤波以及线性二维滤波器设计

    convmtx2

    二维卷积矩阵 fsamp2 频率取样的二维FIR滤波器
    fspecial 创建预定义的二维滤波器 ftrans2 频率变换的二维FIR滤波器
    imfilter 多维图像的N-D滤波 fwind1 一维窗方法的二维FIR滤波器
    freqz2 二维频率响应 fwind2 二维窗方法的二维FIR滤波器

    10.图像配准

    normxcorr2 归一化的二维互相关 cp2tform 用控制点对推断空间变换
    cpselect 控制点选择工具 cpstruct2pairs 把CPSTRUCT转换为控制点对
    cpcorr 用互相关调整控制点位置    

    11.图像增强

    histeq 用直方图均衡增强对比度 wiener2 二维自适应噪声去除滤波
    imadjust 调整图像亮度值或彩色图 intlut 用查表法转换整数值
    medfilt2 二维中值滤波 adapthisteq 有限对比度的自适应直方图均衡CLAHE
    ordfilt2 二维统计排序滤波 stretchlim 寻找如何限制一幅图像的对比度拉伸

    12.形态学操作

    灰度图像和二值图像 conndef 默认的连通性数组 imhmax 最大H变换
    imbothat 底帽滤波 imhmin 最小H变换
    imclearborder 连接到图像边缘的抑制光结构 imimposemin 强迫最小
    mclose 形态学闭操作图像 imopen 形态学开操作图象
    imdilate 膨胀图像 imreconstruct 形态学重建
    imerode 腐蚀图像 imregionalmax 区域最大
    imextendedmax 最大扩展变换 imregionalmin 区域最小
    imextendedmin 最小扩展变换 imtophat 顶帽滤波
    imfill 填充图像区域和孔洞 watershed 分水岭变换
    二值图像 applylut 查表法的领域操作 bwmorph 二值图像的形态学操作
    bwarea 二值图像中的目标区域 bwpack 打包二值图像
    bwareaopen 形态学开二值图像 bwperim 寻找目标的周长
    bwdist 二值图像的距离变换 bwselect

    选择目标

    bweuler 二值图像的欧拉数 bwulterode 最终腐蚀
    bwhitmiss 二元击中-击不中操作 bwunpack 拆包二值图像
    bwlabel 二维二值图像中标记连通分量 makelut 为了使用APPLYLUT而创建查找表
    bwlabeln N维二值图像中标记连通分量    

    13.彩色空间

    cmpermute 在彩色图中重新安排彩色 lab2uint8 L*a*b转变为uint8
    cmunique 去除索引图像的彩色图中不需要的颜色 xyz2double xyz颜色值转变为double
    imapprox 用较少颜色之一近似索引图像 xyz2uint16 xyz颜色值转变为uint16
    ntsc2rgb NTSC转变为RGB makecform 创建独立于设备的彩色空间变换结构CFORM
    ycbcr2rgb YCbCr转变为RGB applyform 适用于与设备无关的彩色空间变换
    rgb2ntsc RGB转变为NTSC iccfind 搜索ICC剖面
    rgb2ycbcr RGB转变为YCbCr iccroot 寻找系统的ICC剖面存放处
    whitepoint 标准照明的XYZ颜色值 iccwrite 写ICC彩色剖面
    lab2double L*a*b转变为double isicc 对完全剖面结构为真
    lab2uint6 L*a*b转变为uint16    

    14.邻域和块处理

    bestblk 块处理的最佳尺寸 col2im 把矩阵列重排为块
    blkproc 图像的不同块处理 colfilt 列方式的邻域操作
    nlfilter 一般的滑动邻域处理 im2col 把图像块重排为列

     

    展开全文
  • Matlab图像处理工具箱 1.图像类型及其转换 2.图像类型的转换 rgb2gray : 输入输出数据类型一致 [X,map] = rgb2ind(I,tol) : 均匀量化法,tol取[0.0,1.0]。 [X,map] = rgb2ind(I,N) : 最小方差量化法,N为map中...

    Matlab图像处理工具箱

    1.图像类型及其转换

    在这里插入图片描述

    2.图像类型的转换

    在这里插入图片描述

    1. rgb2gray : 输入输出数据类型一致

    2. [X,map] = rgb2ind(I,tol) : 均匀量化法,tol取[0.0,1.0]。

      [X,map] = rgb2ind(I,N) : 最小方差量化法,N为map中最少包含的颜色。

      X = rgb2ind(I,map) : 颜色匹配法,将rgb中颜色与map中颜色进行匹配后生成索引色,最终索引图像矩阵为X和map(colorcube()可以用于生成map)

    3.图像文件操作

    I1=imread('football.jpg');                           %读取一幅RGB图像
    I2=imread('cameraman','tif');                       %读取一幅灰度图像
    I3=imread('E:\onion.png');                         %读取非当前路径下的一幅RGB图像
    
    imwrite(I1,'football1.jpg','jpg');				%保存football1.jpg于当前文件夹
    imwrite(X,map,'football.jpg','jpg');				%保存索引色图像。
    
    imtool(I1);										%图像工具浏览器显示
    imshow(I1);										%通用图形图像视窗显示
    image(I1);										%显示矩阵所代表的图像
    
    展开全文
  • MATLAB 图像处理工具箱 一种简单的基于图像处理交通信号灯识别算法 欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个...


    1 前言
    智能车辆感知层主要有摄像头、雷达等,其中摄像头是视觉识别的重要元件。智能车辆可以通过摄像头进行交通标识识别,配合其它感知元件进行环境感知。交通信号灯是智能车辆在城市环境中行驶的主要指示信号,如交通信号灯等交通标示识别,是智能车辆进行路径规划、车道动态控制的前提因素。本文介绍了在简单工况下,利用MATLAB图像处理工具箱的相关函数在颜色空间中对信号灯颜色进行分割等操作,然后再通过信号灯形状特征等进行进一步的判断从而识别交通信号灯的简便方法。

    2 系统分析
    2.1 交通信号灯
    道路交通信号灯1是指挥交通运行的信号灯,一般由红灯、绿灯、黄灯组成三个无图案圆形单位组成的一组灯,指导机动车通行。绿灯亮时,准许车辆通行,但转弯的车辆不得妨碍被放行的直行车辆、行人通行;黄灯亮时,已越过停止线的车辆可以继续通行;红灯亮时,禁止车辆通行。
    国标GB14887中对道路交通信号灯有明确规定,如发光单元尺寸Φ200mm、Φ300 mm、Φ400 mm三种规格发光单元在信号灯壳体上安装孔的直径分别为Φ200mm、Φ290 mm、Φ390 mm,尺寸允许偏差±2 mm。对于无图案信号灯,出光面直径分别为Φ185mm、Φ275 mm、Φ365 mm,尺寸允许偏差±2 mm;对于有图案信号灯,出光面直径分别为Φ185mm、Φ275 mm、Φ365 mm,尺寸允许偏差±2 mm,图像尺寸符合国标附录。
    发光亮度在各个方向上的平均值不低于表1中的最小亮度值,且不大于15000cd/m2。在可观察信号灯点亮区域内,亮度应均匀,在基准轴上的发光亮度的最大值与最小值之比应不大于2。
    表1 有图案信号灯最低亮度值
    在这里插入图片描述
    发光强度在基准轴上不小于150cd,且不大于400 cd,其它方向上的发光强度应不低于表2规定。
    表2 有图案信号灯轮廓最低光强
    在这里插入图片描述

    2.2 彩色视觉

    彩色视觉(color vision)是一个生物体或机器基于物体所反射,发出或透过的光的波长(或频率) 以区分物体的能力。颜色可以以不同的方式被测量和量化;事实上,人对颜色的感知是一个主观的过程,即,脑响应当进入的光与眼中的若干种视锥细胞作用时所产生的刺激。
    彩色视觉常用颜色空间也称彩色模型(又称彩色空间或彩色系统)描述,它的用途是在某些标准下用通常可接受的方式对彩色加以说明。彩色模型是坐标系统和子空间的阐述。位于系统的每种颜色都有单个点表示。采用的大多数颜色模型都是面向硬件或面向应用的。
    其中RGB颜色空间是依据人眼识别的颜色定义出的空间,可表示大部分颜色。以R(Red红)、G(Green绿)、B(Blue蓝)三种基本色为基础,进行不同程度的叠加,产生丰富而广泛的颜色,所以俗称三基色模式。在大自然中有无穷多种不同的颜色,而人眼只能分辨有限种不同的颜色,RGB模式可表示一千六百多万种不同的颜色,在人眼看来它非常接近大自然的颜色,故又称为自然色彩模式。
    亮度、色调、饱和度三个基本特征来描述;其中亮度是指明暗程度,色调是指光的颜色,饱和度是指颜色的深浅程度。颜色空间2模型如图1所示。
    H参数表示色彩信息,即所处的光谱颜色的位置。该参数用一角度量来表示,红、绿、蓝分别相隔120度。
    S为一比例值,范围从0到1,它表示成所选颜色的纯度和该颜色最大的纯度之间的比率。S=0时,只有灰度。
    V表示色彩的明亮程度,范围从0到1。有一点要注意:它和光强度之间并没有直接的联系。

    图1 颜色空间模型在这里插入图片描述

    2.3 MATLAB图像处理工具箱
    Matlab对图像的处理功能主要集中在它的图像处理工具箱 ( Image Processing Toolbox ) 中,图像处理工具箱是由一系列支持图像处理操作的函数组成,可以进行诸如几何操作、线性滤波和滤波器设计、图像变换、图像分析与图像增强、数学形态学处理等图像处理操作,主要有以下功能模块:
    Image Acquisition Toolbox ( 图像采集工具箱)
    Image Processing Toolbox ( 图像处理工具箱)
    Signal Processing Toolbox(信号处理工具箱)
    Wavelet Toolbox(小波分析工具箱)
    Statistics Toolbox(统计工具箱)
    Bioinformatics Toolbox(生物信息学工具箱)
    Matlab其具有上手容易,开发周期短,见效快;程序代码编写量明显减少;提供多种图像处理工具包等特点,比较适合进行图像识别相关工作。
    2.4 识别系统方案实施
    本文分析了道路交通信号灯色彩特点、图形学特点等特征,结合彩色视觉RGB颜色空间基本特征,并利用Matlab图像处理工具箱进行图像的灰度分割、边缘检测等操作,能够实现多交通信号灯的识别,并制定其系统流程如图2所示:
    在这图2  识别系统流程图里插入图片描述
    图2 识别系统流程图
    其中红色信号灯识别为例,首先将RGB 值转换为相应的色调、饱和度和明度 (HSV) 坐标。rgb 可以是 p×3 颜色图数组或 m×n×3 图像数组。hsv 的大小与 rgb 相同。其次,利用红色色彩特征值,搜索敏感区域识别红色颜色区域;并结合交通信号灯外形特征完成结构元素。再次,对图形结构元素实现二值化图像,填充背景色。
    部分主要代码如下:
    %hsv三元色图像
    hsv=rgb2hsv(a);
    h=hsv(:,:,1);
    s=hsv(:,:,2);
    v=hsv(:,:,3);
    figure(2)
    imshow(hsv);
    title(‘HSV图像’); %转换为hsv图像并显示
    bw1=h>0.9|h<0.05; %0.9,0.05
    bw1=bw1.*(s>0.5); %检测红色区域
    se=strel(‘disk’,3); %创建一个指定半径R的平面结构元素
    bw2=imopen(bw1,se); %用结构元素SE实现二值图像的bw1的形态开运算。
    bw2=bwfill(bw2,‘holes’); %填充二进制图像的背景色
    figure
    imshow(bw2)

       依据以上方案在MATLAB环境中完成了整个算法搭建及实现,算法运行正常,随后分别针对网络资源道路交通信号灯图片、实际路况道路交通信号灯图片进行功能测试。
    

    4 试验效果
    4.1 网络资源验证
    为了验证算法实际效果,首先通过网络资源下载相关交通信号灯图片,利用已完成的算法进行离线交通信号灯识别效果验证,其效果如图3、图4所示;
    在这里插入图片描述
    图3 网络资源红灯识别效果
    在这里插入图片描述
    图4 网络资源黄灯识别效果

    4.2 实际路况验证进行实际效果检验,其效果如图5、图6所示;

    在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述
    图4 实际路口红灯识别效果

    根据验证效果分析,利用道路交通信号灯色彩特点、图形学特点等特征,结合彩色视觉RGB颜色空间基本特征,并利用Matlab图像处理工具箱进行图像的灰度分割、边缘检测等操作,可以实现简单路况道路交通信号的识别。

    5 结论
    本文实现的评估方案是建立在道路交通信号灯色彩和形状特征基础上,利用MATLAB图像处理工具箱相关函数进行识别;相对于基于深度学习的方案,无需进行大量的前期数据采集、标注等工作,可以快速搭建及实现。经过测试可以满足简单路况道路交通信号的识别需求。
    下一步计划对色彩干扰、图形干扰等干扰因素进行剔除,提高识别精度;并图像坐标上半区域敏感区域进行筛选,预计减少50%运算量;其次根据实际车速,选取合理的间隔帧,提高实时,可进一步优化方案。

    参考文献
    1 道路交通信号灯GB14887-2011
    2 陈超. MATLAB应用实例精讲[M]. 北京:电子工业出版社,2011.11.

    欢迎使用Markdown编辑器

    你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。

    新的改变

    我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标准的Markdown编辑器功能,我们增加了如下几点新功能,帮助你用它写博客:

    1. 全新的界面设计 ,将会带来全新的写作体验;
    2. 在创作中心设置你喜爱的代码高亮样式,Markdown 将代码片显示选择的高亮样式 进行展示;
    3. 增加了 图片拖拽 功能,你可以将本地的图片直接拖拽到编辑区域直接展示;
    4. 全新的 KaTeX数学公式 语法;
    5. 增加了支持甘特图的mermaid语法1 功能;
    6. 增加了 多屏幕编辑 Markdown文章功能;
    7. 增加了 焦点写作模式、预览模式、简洁写作模式、左右区域同步滚轮设置 等功能,功能按钮位于编辑区域与预览区域中间;
    8. 增加了 检查列表 功能。

    功能快捷键

    撤销:Ctrl/Command + Z
    重做:Ctrl/Command + Y
    加粗:Ctrl/Command + B
    斜体:Ctrl/Command + I
    标题:Ctrl/Command + Shift + H
    无序列表:Ctrl/Command + Shift + U
    有序列表:Ctrl/Command + Shift + O
    检查列表:Ctrl/Command + Shift + C
    插入代码:Ctrl/Command + Shift + K
    插入链接:Ctrl/Command + Shift + L
    插入图片:Ctrl/Command + Shift + G
    查找:Ctrl/Command + F
    替换:Ctrl/Command + G

    合理的创建标题,有助于目录的生成

    直接输入1次#,并按下space后,将生成1级标题。
    输入2次#,并按下space后,将生成2级标题。
    以此类推,我们支持6级标题。有助于使用TOC语法后生成一个完美的目录。

    如何改变文本的样式

    强调文本 强调文本

    加粗文本 加粗文本

    标记文本

    删除文本

    引用文本

    H2O is是液体。

    210 运算结果是 1024.

    插入链接与图片

    链接: link.

    图片: Alt

    带尺寸的图片: Alt

    居中的图片: Alt

    居中并且带尺寸的图片: Alt

    当然,我们为了让用户更加便捷,我们增加了图片拖拽功能。

    如何插入一段漂亮的代码片

    博客设置页面,选择一款你喜欢的代码片高亮样式,下面展示同样高亮的 代码片.

    // An highlighted block
    var foo = 'bar';
    

    生成一个适合你的列表

    • 项目
      • 项目
        • 项目
    1. 项目1
    2. 项目2
    3. 项目3
    • 计划任务
    • 完成任务

    创建一个表格

    一个简单的表格是这么创建的:

    项目 Value
    电脑 $1600
    手机 $12
    导管 $1

    设定内容居中、居左、居右

    使用:---------:居中
    使用:----------居左
    使用----------:居右

    第一列 第二列 第三列
    第一列文本居中 第二列文本居右 第三列文本居左

    SmartyPants

    SmartyPants将ASCII标点字符转换为“智能”印刷标点HTML实体。例如:

    TYPE ASCII HTML
    Single backticks 'Isn't this fun?' ‘Isn’t this fun?’
    Quotes "Isn't this fun?" “Isn’t this fun?”
    Dashes -- is en-dash, --- is em-dash – is en-dash, — is em-dash

    创建一个自定义列表

    Markdown
    Text-to-HTML conversion tool
    Authors
    John
    Luke

    如何创建一个注脚

    一个具有注脚的文本。2

    注释也是必不可少的

    Markdown将文本转换为 HTML

    KaTeX数学公式

    您可以使用渲染LaTeX数学表达式 KaTeX:

    Gamma公式展示 Γ(n)=(n1)!nN\Gamma(n) = (n-1)!\quad\forall n\in\mathbb N 是通过欧拉积分

    Γ(z)=0tz1etdt. \Gamma(z) = \int_0^\infty t^{z-1}e^{-t}dt\,.

    你可以找到更多关于的信息 LaTeX 数学表达式here.

    新的甘特图功能,丰富你的文章

    Mon 06Mon 13Mon 20已完成 进行中 计划一 计划二 现有任务Adding GANTT diagram functionality to mermaid
    • 关于 甘特图 语法,参考 这儿,

    UML 图表

    可以使用UML图表进行渲染。 Mermaid. 例如下面产生的一个序列图:

    张三李四王五你好!李四, 最近怎么样?你最近怎么样,王五?我很好,谢谢!我很好,谢谢!李四想了很长时间,文字太长了不适合放在一行.打量着王五...很好... 王五, 你怎么样?张三李四王五

    这将产生一个流程图。:

    链接
    长方形
    圆角长方形
    菱形
    • 关于 Mermaid 语法,参考 这儿,

    FLowchart流程图

    我们依旧会支持flowchart的流程图:

    Created with Raphaël 2.2.0开始我的操作确认?结束yesno
    • 关于 Flowchart流程图 语法,参考 这儿.

    导出与导入

    导出

    如果你想尝试使用此编辑器, 你可以在此篇文章任意编辑。当你完成了一篇文章的写作, 在上方工具栏找到 文章导出 ,生成一个.md文件或者.html文件进行本地保存。

    导入

    如果你想加载一篇你写过的.md文件,在上方工具栏可以选择导入功能进行对应扩展名的文件导入,
    继续你的创作。


    1. mermaid语法说明 ↩︎

    2. 注脚的解释 ↩︎

    展开全文
  • 几个常用到的matlab图像处理工具箱:峰值检测;梯度方向图;多尺度血管增强滤波;
  • MATLAB图像处理工具箱函数

    千次阅读 2011-10-02 16:33:28
    附录 MATLAB图像处理工具箱函数     表1通用函数 函数 功能 语法 colorbar 显示颜色条 colorbar colorbar(...,'peer',axes_handle)
  • Matlab 图像处理工具

    千次阅读 2015-04-08 21:49:29
    计算机视觉/图像处理研究中经常要用到Matlab,虽然其自带了图像处理和计算机视觉的许多功能,但是术业有专攻,在进行深入的视觉算法研究的时候Matlab的自带功能难免会不够用。本文收集了一些比较优秀的Matlab计算机...
  • Matlab图像处理工具

    千次阅读 2015-03-04 20:11:18
    1. 图像图像数据   缺省情况下,MATLAB图像中的数据存储为双精度类型... 在使用MATLAB工具箱时,一定要注意函数所要求的参数类型。另外,uint8  与double两种类型数据的值域不同,编程需注意值域转换。   
  • MATLAB中,图像的旋转也可以通过直接调用图像处理工具箱指令imrotate来实现,其调用格式为: B=imrotate(A,angle) 上述函数以图像中心点为基准,以角度angle逆时针方向旋转。angle为负值,可实现图像的顺时针...
  • 1.从磁盘上读入图像,将其分别放大到1.5倍(用“bilinear”方法)和2.6倍(用“bicubic”方法),显示在不同的图像窗口中。 2、读入一幅RGB图像,变换为灰度图像和二值图像,并在同一个窗口内分成三个子窗口来分别...
  • matlab | 图像处理工具

    万次阅读 多人点赞 2020-06-27 00:15:12
    自己在学习过程中查阅资料整理了MATLAB图像处理工具箱中函数的名称列表,以及MathWorks中讲解各个函数使用的链接: 1.绘图工具箱 plot 基本绘图函数 mesh 绘制三维网格曲面 fplot 绘制数学函数图 ...
  • 今天发现了matlab图像处理工具箱的强大之处, 任务缘由: 需要对图像进行批处理改变尺寸 一般遇到这种任务,我们往往都会写matlab代码进行批量操作 但是matlab有自带的很强大的图像处理工具箱,  图片批处理...
  • MATLAB图像处理

    万人学习 2017-01-18 14:22:18
    全面系统的学习MATLAB图像处理中的应用
  • Matlab图像处理函数:regionprops

    千次阅读 2016-12-08 17:47:46
    这里给出在Matlab图像处理工具箱中非常重要的一个图像分析函数:regionprops。顾名思义:它的用途是get the properties of region,即用来度量图像区域属性的函数。 语法   STATS = regionprops(L,properties...
  • 本书分为4部分,共29章,详细讲解了MATLAB的结构和功能,以及MATLAB图像处理工具箱。针对制作完整的图像处理软件的需要,本书还讲解了MATLAB界面编程。 本书第1部分“基础篇”,包括第1~第10章,对MATLAB安装试验...
  • Matlab 图像处理与计算机视觉工具

    千次阅读 2018-02-09 21:45:49
    目录 1.常用工具箱 ...1.3Peter Kovesi的工具箱:轻量好用,侧重图像处理 1.4 Machine Vision Toolbox:侧重机器视觉、三维视觉 1.5​​Piotr's Image & Video Matlab Toolbox:侧重物体识别 1.6 DI...
  • MATLAB 图像处理命令1、 MATLAB图像处理的一些简单函数A、 imread imread函数用于读入各种图像文件,其一般的用法为 [X,MAP]=imread(‘filename’,‘fmt’)其中,X,MAP分别为读出的图像数据和颜色表数据,fmt...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 21,205
精华内容 8,482
关键字:

matlab图像处理工具

matlab 订阅