1、以文件打開方式讀入圖片 [fn,pn,fi]=uigetfile('*.bmp','選擇圖片'); I=imread([pn fn]); 2、直接讀入圖片 I=imread('F:examMatlabshibie1.jpg'); F:examMatlabshibie1.jpg 是圖片1.jpg的路徑
matlab怎樣導(dǎo)入顯示圖片內(nèi)呢?下面一起來看一看
方法
首先打開MATLAB
1、打開圖片:在主界面上輸入命令將圖像轉(zhuǎn)換為數(shù)據(jù);Data = imread('folder icon.bmp')。 2、查看數(shù)據(jù):雙擊工作區(qū)中的數(shù)據(jù),我們可以看到圖像數(shù)據(jù)的具體信息。 3、驗(yàn)證圖像結(jié)果:輸入命令,我們可以看到數(shù)據(jù)數(shù)據(jù)是圖片所代表的;Imshow(數(shù)據(jù))
在彈出的窗口中輸入引用圖片的地址“i=imread”
是單個(gè)的數(shù)值,R等于三維數(shù)組W中第一個(gè)數(shù)組的第150行和第150列上的那個(gè)元素,G等于三維數(shù)組W中第二個(gè)數(shù)組的第150行和第150列上的那個(gè)元素,依此類推B。讀入圖像的數(shù)據(jù)類型可以是雙精度或uint8,要參與計(jì)算則不支持uint8的運(yùn)算,你要將uint8轉(zhuǎn)為d
輸入imshow(名稱)回車
方法/步驟 1、在matlab軟件中,讀取圖像數(shù)據(jù)(載入)利用的是imread函數(shù),主要有以下4種方式: A = imread(filename, fmt) [X, map] = imread() [] = imread(filename) [] = imread(URL,) [] = imread(,Param1,Val1,Param2,Va
在彈出的窗口中即會(huì)彈出顯示圖片
MATLAB 安裝文件夾下的toolboximagesimdemos. 使用imread()函數(shù)來讀取圖片: 比如你要讀的圖片在D:PIC,叫photo.jpg 則應(yīng)輸入輸入:A=imread('d:picphoto.jpg'); imshow(A); 也可以先把圖片保存到work 目錄中。Matlab 安裝時(shí)一般默認(rèn)位于
擴(kuò)展閱讀,以下內(nèi)容您可能還感興趣。
matlab 中怎么進(jìn)行多個(gè)圖像的讀入
比如你要讀取E盤里的png 格式的圖片
p1=dir('E:\*.p*');%讀取文件夾里的png 所有圖片 *.p*是尋找E盤下后綴第一個(gè)字為p的 你當(dāng)然可以改。
[r1 c1]=size(p1);
for i=1:r1
ImgN=p1(i).name;%圖片的名字
ImgN=strcat('E:\',ImgN);%讀取圖片
Img=(imread(ImgN));
if size(Img,3) == 3 %如果維數(shù)為三 則RGB圖像轉(zhuǎn)化為灰度圖像
Img = rgb2gray(Img);
else
Img = Img;
end
end追問恩,好,我還想問下,我的文件放在H盤,需要讀入H盤下命名為‘matlab處理圖片’文件下所有的jpeg文件,圖片一共14張,為了簡(jiǎn)便我將每張圖片分別其命名為1,2,3....14,我的圖像是二維灰度圖像,幫我看看這些圖片如何輸入,同時(shí)再將它們輸出,可以嗎?還有我需要將輸入的每一張圖片使用此[c,s]=wavedec2(I,2,'db4');小波分解,從而得到水平、垂直、對(duì)角的分解系數(shù),這樣的程序可以編出來嗎?呵呵,剛接觸matlab不太熟悉。
MATLAB如何讀取圖片?
1、以文件打開方式讀入圖片
[fn,pn,fi]=uigetfile('*.bmp','選擇圖片');
I=imread([pn fn]);
2、直接讀入圖片
I=imread('F:\exam\Matlab\shibie\1.jpg');
F:\exam\Matlab\shibie\1.jpg 是圖片1.jpg的路徑
如何用Matlab讀入并顯示圖片文件?
MATLAB 支持的圖形圖象格式很全面的,其自帶的圖片文件存儲(chǔ)位置為
MATLAB 安裝文件夾下的toolbox\images\imdemos.
使用imread()函數(shù)來讀取圖片:
比如你要讀的圖片在D:\PIC,叫photo.jpg
則應(yīng)輸入輸入:A=imread('d:\pic\photo.jpg'); imshow(A);
也可以先把圖片保存到work 目錄中。Matlab 安裝時(shí)一般默認(rèn)位于
C:\Documents and Settings\Administrator\My Documents\MATLAB
此時(shí)可以直接輸入:A=imread('photo.jpg'); imshow(A);
以下幾行代碼,可以實(shí)現(xiàn)多圖片文件的讀入:
%%%%%%%%%%%%%%%%%%%%%%%
all_ccdfile=char('LENA616.bmp', 'LENA617.bmp'); %可以在這這里繼
續(xù)添加你的文件名字,這里比較耗時(shí)
tmp=size(all_ccdfile);
file_num=tmp(1); %%%file_num:文件的個(gè)數(shù)
for i=1:file_num
ccdfile=deblank(all_ccdfile(i,:));
ii=imread(ccdfile); %%%%%%讀入圖片%%%處理end%%%%%%%%%%%%%%%%%%%%%%%%%%
利用以上代碼可以實(shí)現(xiàn)對(duì)幾百幅圖像一次處理,讓電腦慢慢算,自己回
家睡覺去了!
用MATLAB如何讀取一個(gè)文件夾里的圖片
1、查看圖片所在的位置。
2、輸入命令I(lǐng)=imread('E:1.jpg')。
3、點(diǎn)擊右邊工作區(qū)的名稱為I的,可以查看圖片的編碼。
4、輸入命令imsho(I),選擇命令,右擊,執(zhí)行所選內(nèi)容。
5、或選擇命令,點(diǎn)擊上端的“運(yùn)行并前進(jìn)”。
6、如圖所示,圖片就顯示出來了。
如何用matlab將讀入的bmp圖像格式文件的象素?cái)?shù)據(jù)寫入數(shù)組,并以文本文件格式(*.txt)輸出。
假設(shè)你有圖片test.bmp,可以用如下的方式讀入matlab,然后寫到txt。
img_test = imread('test.bmp');
dlmwrite('b1.txt',img_test(:,:,1));
dlmwrite('b2.txt',img_test(:,:,3));
dlmwrite('b3.txt',img_test(:,:,3));
BMP是有3個(gè)波段的,所以這里寫了三次,分別存入三個(gè)文件。追問后來我自己是這樣做的
A=imread('lena.jpg');
A=rgb2gray(A);
fid=fopen('F.txt','wt');
[m ,n]=size(A);
for i=1:1:m
for j=1:1:n
if j==n
fprintf(fid,'%g\n',A(i,j));
else
fprintf(fid,'%g\t',A(i,j));
end
end
end
fclose(fid);
得到256*256的矩陣形式
那我最終對(duì)圖像的處理一般是對(duì)哪個(gè)波段處理么?能再問一哥問題么?怎么將bmp格式轉(zhuǎn)灰度圖追答你對(duì)圖像的那個(gè)波段進(jìn)行處理是你自己控制的,不是程序自動(dòng)實(shí)現(xiàn)的。
比如我上面代碼中,分別把RGB三個(gè)波段存入文件。
比如你的代碼中,把3個(gè)波段合成為1個(gè)波段,然后對(duì)這個(gè)波段進(jìn)行處理。
BMP轉(zhuǎn)灰度:
先試試這個(gè)看是否OK
img_test = imread('test.bmp');
b = rgb2gray(img_test);
如果不行,針對(duì)你這個(gè)問題,只需要將其中的第一波段存下即可轉(zhuǎn)換。
img_test = imread('test.bmp');
b = img_test(:,:,1);
原因如下:
1 如果你的圖本身就是灰度圖,但是存成了RGB的bmp圖像,那么只用存一個(gè)波段即可,因?yàn)檫@時(shí)三個(gè)波段一樣。
2 如果你的圖本身是彩色BMP,但是你需要的是灰度,那么同樣只用存一個(gè)波段即可,因?yàn)檫@時(shí)三個(gè)波段雖然不同,但是只能保留一個(gè)波段。
(我沒有研究過matlab中實(shí)現(xiàn)rgb2gray(A)這個(gè)函數(shù)的算法,但通常使用的算法有,RGB三者的平均值,或者按參數(shù)組合得到灰度)
聲明:本網(wǎng)頁(yè)內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:0731-84117792 E-MAIL:11247931@qq.com