首页 > 代码库 > 图像处理过程中的一些预处理方法
图像处理过程中的一些预处理方法
逻辑思维对我来说总是瓶颈。看着别人在大量的出文章,而我自己还为一些琐事憋得愁眉不展,文章还是空空如也,心里真不是个滋味。索性在颓废中再振奋一次。认认真真的把Image Allignment好好的研究一番,争取在这里翻个身。
Matlab中会用到一些对图像的预处理,最经典的要数度一个图像矩阵向量化(Vectorize)。说得直白点儿就是把图像矩阵拉成一个长的列向量。我以前做这个工作,往往会用的reshape函数。但是这种函数化的处理方式不是MATLAB style的,昨天和师弟讨论image allignment问题,突然被教育了 其实这样表达最简单
A=A(:)想一想 这才是真正的MAtlab Style!自己真的是super stupid!
根据这个思想 可以做这样的一个小函数,读取某个指定目录下的所以尺寸相同的jpg图像,并把它们拉成列向量存储到一个新的矩阵中去:
function [X,ColVectorX,NumImgs] = ReadImgs(Folder,ImgType) Imgs = dir([Folder '/' ImgType]); NumImgs = size(Imgs,1); image = imread([Folder '/' Imgs(1).name]); %%Normalizeing the image data image=NormalImg(image); %% Storing the Image Data X = zeros([size(image) NumImgs]); ColVectorX=zeros([size(image,1)*size(image,2)*size(image,3) NumImgs]);% Vectorized data for i=1:NumImgs image = double(imread([Folder '/' Imgs(i).name])); if (size(image,3) == 1) X(:,:,i) = image; else X(:,:,:,i) = image;% i is the index of the image sequence % ColVectorX(:,i)=reshape(image,1,size(image,1)*size(image,2)*size(image,3))';%It's so stupid ColVectorX(:,i)=image(:)'; end endOver! 写的很丑 大家勉强看.................
图像处理过程中的一些预处理方法
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。