沈雅

努力,以不负沈雅之名!
嵌入式、Linux、Cosplay、Acg、动漫、各种文学 全为我所爱矣!
交流联系:QQ88459122

【matlab数字图像处理实验】图像基本操作

学习在 MATLAB 环境下对图像文件的基本操作,为读取各种格式的图像文件和后续进行的图像处理打下基础。


实验内容

  1. 1

    读出MATLAB 目录下图像文件并进行旋转、加亮、取反、多幅图片显示等操作。

  2. 2

    将MATLAB 目录下图像文件读出,显示它的图像及灰度直方图并进行直方图衡化。

    END

实验结果

  1. 1

    读取和显示
    I=imread('rice.tif');
    imshow(I);


  2. 2

    加亮
    I=imread('rice.tif');
    K=I+80;
    imshow(K);


  3. 3

    取反
    I=imread('rice.tif');
    J=imcomplement(I);
    imshow(J);


  4. 4

    翻转
    I=imread('rice.tif');
    K=imrotate(I,45);
    imshow(K

  5. 5

    图片信息
    whos I


  6. 6

    图片大小
    I=imread('rice.tif');
    size(I);
    [M,N] = size(I);


  7. 7

    彩色到黑白
    I=imread('lene.jpg');
    K=rgb2gray(I);
    subplot(1,2,1),imshow(I);
    title('原始图像')
    subplot(1,2,2),imshow(K);
    title('黑白图像')


  8. 8

    直方图均衡化
    I=imread('rice.tif');
    subplot(2,2,1),imshow(I)
    title('原始图像')
    subplot(2,2,3),imhist(I)
    title('原始图像直方图')
    a=histeq(I,256); %直方图均衡化,灰度级为256
    subplot(2,2,2),imshow(a) %输出均衡化后图像
    title('均衡化后图像')
    subplot(2,2,4),imhist(a)
    title('均衡化后图像直方图')


    END

小结

  1. 在后续的图像处理中,size()函数在图像点运算,比如域值化以及线性处理中有特别作
    用。subplot(,,),imshow()函数用于多幅图像的显示,而单独显示则使用figure,
    imshow()。

  2. 直方图是灰度级数的函数,反映了图像中具有该灰度级数的像素的个数。直方图均衡
    化就是把原图像的灰度直方图从比较集中的某个区间变成在全部灰度范围内的均匀分布。均
    衡化后图像的像素重新分配,使一定会度范围内的像素数量大致相同。图像的亮度变得更亮
    了,增强了图像的整体效果。

  3. 3

    均衡化后直方图趋于平坦化,灰度间隔(动态范围)拉大,对比度加强,图像清晰,便
    于读取、分析和处理。


评论
热度(14)

© 沈雅 | Powered by LOFTER