matlab中imRead(),imShow()方法封装重写

imRead()方法:

function [imgIn,grayImg] = myImgRead(imgInFile)
    %
    % MYIMGREAD:从图像文件输出灰度图像。 
    % imgOut = myImgRead(imgInFile):从图像文件(imgInFile)中读取图像(可以是 % 彩色或灰度的),并输出其灰度图(imgOut)。
    % imgInFile -- 输入图像文件名
    %imgIn——输出原图像文件
    % imgOut -- 输出灰度图像 
    % 
    imgIn = imread(imgInFile);   %读入一帧图像 
    INFO=imfinfo(imgInFile);   %获得与图像文件有关的信息 
    if INFO.ColorType == 'truecolor'   %truecolor彩色图像    
        grayImg = rgb2gray(imgIn);           %将彩色图像转化为灰度图像,并输出
    elseif INFO.ColorType == 'grayscale'  %grayscale灰度图像    
        grayImg = imgIn;    %输出原灰度图 
    else      %其它图像    
        error('Unsupported input image type.');  %显示出错信息,并退出 
    end
end

 imshow()方法:

function  myImShow(imgFile,index,imgTitle,range)
    %MyIMSHOW:将图像按一个2X3矩阵位置显示
    %figure = myImShow(index,imgFile):将图像文件imgFile显示在2x3排列的第index个位置上
    %index:整数,范围:1——3
    %imgFile:输入的图像文件
    %range:显示参数
    %title:图像标题
    %figure: 开启一个显示图像的新窗口;subplot:在同一窗口中显示多幅图像;title(‘string’):在图像上方中央处加上图题
    %用法:figure; 
    %
    if nargin == 3
        subplot(3,2,index),imshow(imgFile),title(imgTitle);%显示第index幅图像imshow(I)’);
    else
        subplot(3,2,index),imshow(imgFile,range),title(imgTitle);%显示第index幅图像imshow(I)’);
    end
en
function  myImgShow(imgFile,index,method,range,imgTitle)
    %MyIMGSHOW:将图像按一个2X3矩阵位置显示
    %figure = myImgShow(index,imgFile):将图像文件imgFile显示在2x3排列的第index个位置上
    %index:整数,范围:1——3
    %imgFile:输入的图像文件
    %method:显示图像的方法
    %range:显示参数
    %title:图像标题
    %figure: 开启一个显示图像的新窗口;subplot:在同一窗口中显示多幅图像;title(‘string’):在图像上方中央处加上图题
    %用法:figure; subplot(1,3,1),imshow(I),title(‘imshow(I)’);
    %
    if method == 'imshow'%显示输入图像文件
        if range == 0 %直接用imshow(uni_LBP),结果——将uni_LBP中为0的显示为黑色,大于等于1的显示为白色
            subplot(3,2,index),imshow(imgFile),title(imgTitle);%显示第index幅图像
        else   %imshow(I,[low,high]),灰度低于low的像素被显示为黑色,高于high的被显示为为白色,介于low和high之间的像素按比例显示为各个等级的灰色
            subplot(3,2,index),imshow(imgFile,range),title(imgTitle);%显示第index幅图像
        end
    else method == 'imhist'%显示输入图像的直方图
        if range == 0  % 将直方图均分为range个等级,默认为256个等级
            subplot(3,2,index),imhist(imgFile),title(imgTitle);%显示第index幅图像
        else
            subplot(3,2,index),imhist(imgFile,range),title(imgTitle);%显示第index幅图像
        end
    end
end

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值