當前位置:首頁 » 辦公資訊 » matlab怎樣讀取圖片文件

matlab怎樣讀取圖片文件

發布時間: 2022-05-16 05:34:02

『壹』 如何用Matlab讀入並顯示圖片文件

imMatrix = imread('name.jpg')%jpg也可以bmp,圖片格式
MATLAB圖像處理工具箱支持四種基本圖像類型:索引圖像、灰度圖像、二進制圖像和RGB圖像。MATLAB直接從圖像文件中讀取的圖像為RGB圖像。
它存儲在三維數組中。這個三維數組有三個面,依次對應於紅(Red)、綠(Green)、藍(Blue)三種顏色,而面中的數據則分別是這三種顏色的強度
值,面中的元素對應於圖像中的像素點。設所得矩陣為X三維矩陣(256,256,3) ,X(:,:,1)代表紅顏色的2維矩陣
X(:,:,2)代表綠顏色的2維矩陣,
X(:,:,3)代表蘭顏色的2維矩陣。[X, map]=imread('34.bmp');r=double(X(:,:,1)); %r是256
x 256的紅色信息矩陣g=double(X(:,:,2)); %g是256 x 256的綠色信息矩陣b=double(X(:,:,3));
%b是256 x 256的蘭色信息矩陣
索引圖像數據包括圖像矩陣X與顏色圖數組map,其中顏色圖map是按圖像中顏色值進行排序後的數組。對於每個像素,圖像矩陣X包含一個值,這個值就是顏
色圖數組map中的索引。顏色圖map為m×3雙精度矩陣,各行分別指定紅、綠、藍(R、G、B)單色值,map=[RGB],R、G、B為值域為
[0,1]的實數值,m為索引圖像包含的像素個數。

對於相同的數據,採用uint8格式比雙精度格式節省內存空間,從而更經濟。在MATLAB中
如果索引圖像的顏色圖小於256行,則它的圖像矩陣以uint8格式存儲,否則以雙精度格式存儲。
一:imread:從圖像文件夾中讀取圖像。
A = imread(FILENAME,FMT) 讀取圖像到A,如果文件是包含一灰度圖像,A是一二維矩陣,如果文件是包含一真彩色圖像(RGB),A是一三維矩陣(M-by-N-by-3)。FILENAME :圖像文件名;FMT:圖像文件格式;
文件必須在當前目錄下,或在Matlab的一路徑上。如果 imread不能夠找到一名稱為FILENAME的文件,那麼它將找一名為FILENAME.FMT的文件
[X,MAP] = imread(FILENAME,FMT) 把圖像FILENAME讀入與它相關的圖像色彩信息寫入MAP,圖像色彩信息值在范圍[0,1]中自動地重新調整.
[...] = imread(FILENAME)這種方式是試圖得到文件的格式從文件所包含的信息。
[...] = imread(URL,...)從一Internet URL上讀圖像 URL 必須包含協議(即: "http://").
1.2數據類型:
TIFF的特殊語法:
[...] = imread(...,IDX)
從很多圖像TIFF文件中讀一個圖像;IDX是一個整數值,它顯示了所讀圖像在文件中的順序,例如:如果 IDX是 3,
imread將讀文件中的第三個圖像。 如果省略了這個變數, imread將讀文件中的第一個圖像.
IMREAD支持的圖像文件格式:JPEG TIFF GIF BMP PNG HDF PCX XWD ICO CUR RAS PBM PGM PPM
相關信息也可在Matlab中查看: imfinfo, imwrite, imformats, fread,
二:imwrite輸出圖像
imwrite(A,FILENAME,FMT) 把圖像 A 寫入圖像文件 FILENAME.
imwrite(X,MAP,FILENAME,FMT) 把 X和它的相關色彩信息MAP寫入FILENAME.
imwrite(...,FILENAME) 把圖像寫入圖像文件FILENAME,並推測可能的格式用來做filename的擴展名。擴展名必須是FMT中一合法名.
imwrite(...,PARAM1,VAL1,PARAM2,VAL2,...) 不同的參數控制輸出文件的各種不同特徵。參數要是當前所支持的HDF,JPEG, TIFF, PNG, PBM, PGM, 和PPM 文件
三:image 顯示圖像.image(C) 把矩陣 C 轉成一圖像. C 可以是一MxN 或 MxNx3維的矩陣,且可以是包含 double,
uint8,或 uint16 數據.image是用來顯示附標圖像,即顯示的圖像上有x,y坐標軸的顯示,可以看到圖像的像素大小。但可以加上axis
off命令即可把坐標去掉。
imshow只是顯示圖像。用colormap來定義圖像顯示用的顏色查找表,比如用colormap(pink),可以把黑白圖像顯示成帶粉紅色的圖像。
圖像像素矩陣的數據類型:(1)顯示真彩色圖像像素三維矩陣X,如果是uint8類型,要求矩陣的數據范圍為0-255,(2)如果是double型,則其數據范圍為0-1,要不就會出錯或者出現空白頁。
類型轉換:(1)如果你原來的數值是uint8,在運算中轉換為double後,實際要顯示的數值沒有改變的話,只要用uint8(X)就可轉換為
uint8型,如果不想轉換頻繁,也可在顯示時用X/255來轉換為符合0-1double類型範圍要求的數值顯示。(2)如果顯示索引圖像(二維矩
陣),如果索引圖像像素數值是double型,則它的取值范圍為1-length(colormap),數值起點為1,則矩陣中數值為1的對應
colormap中第一行數據,如果索引圖像像素數值是uint8,則取值范圍為0-255,數值起點為0,則矩陣中數值為0的對應colormap中第
一行數據,所以索引圖像這兩個數據類型之間的轉換,要考慮到+1或-1。直接用uint8或double轉換則會查找移位,產生失真情況。uint16數
據類型與uint8類似,取值范圍為0-65536。
四:其它常用圖像操作:
圖像顯示於屏幕有imshow( ), image( )函數;
圖像進行裁剪imcrop( );
圖像的插值縮放imresize( )函數實現;
旋轉用 imrotate( )實現。
五:具體的操作
下面通過運用圖像處理工具箱中的有關函數對下圖(nice.bmp)進行一些變換。見後面的transfer.m內容!

變換前圖片:(nice.bmp)

變換後所得圖片:newpic.bmp
例,在電腦F\picture下有一彩色圖像文件nice.bmp,則可由下述語句讀取:
下面是對圖像 nice.bmp以y軸為對稱軸所做的一個對稱變換。
% Transfer1.m
clear all
figure
[x,map]=imread('F:\picture\nice.bmp');% 所得x為一375x420x3的矩陣
[w1,w2,w3]=size(x); % 375 X 420
w22=floor(w2/2);
image(x); %顯示出圖像
title('HELLO! @This is the first pose of me')%則顯示出圖像nice.bmp
axis off; % 去掉圖像中的坐標
colormap(map); % colormap(),圖像查找表函數。函數結構為colormap(map),設置當前的圖像查找表到map。
imwrite(x,map,'nice.bmp')
for i=1:w1
for j=1:w22 % 圖像關於y軸對折
t=x(i,j);
x(i,j)=x(i,w2-j+1);
x(i,w2-j+1)=t;
end
end
figure
image(x);
axis off
title('HELLO!!@@ Can you find any difference of my two picture! ') colormap(map);
imwrite(x,map,'newpic.bmp') %把x寫到nepic2.bmpz中去
% Transfer1.m文件中包含了最基本也是最常用的對讀像處理的命令。
在對圖像處理的整個過程中,實質上是對[x,map]=imread(『figure')函數中所得x矩陣的各種變換!

『貳』 如何用Matlab讀入並顯示圖片文件

MATLAB 支持的圖形圖象格式很全面的,其自帶的圖片文件存儲位置為
MATLAB 安裝文件夾下的toolbox\images\imdemos.
使用imread()函數來讀取圖片:
比如你要讀的圖片在D:\PIC,叫photo.jpg
則應輸入輸入:A=imread('d:\pic\photo.jpg'); imshow(A);
也可以先把圖片保存到work 目錄中。Matlab 安裝時一般默認位於
C:\Documents and Settings\Administrator\My Documents\MATLAB
此時可以直接輸入:A=imread('photo.jpg'); imshow(A);
以下幾行代碼,可以實現多圖片文件的讀入:
%%%%%%%%%%%%%%%%%%%%%%%
all_ccdfile=char('LENA616.bmp', 'LENA617.bmp'); %可以在這這里繼
續添加你的文件名字,這里比較耗時
tmp=size(all_ccdfile);
file_num=tmp(1); %%%file_num:文件的個數
for i=1:file_num
ccdfile=deblank(all_ccdfile(i,:));
ii=imread(ccdfile); %%%%%%讀入圖片%%%處理end%%%%%%%%%%%%%%%%%%%%%%%%%%
利用以上代碼可以實現對幾百幅圖像一次處理,讓電腦慢慢算,自己回
家睡覺去了!

『叄』 如何用MATLAB打開以及處理圖片

1、先打開軟體後,找到左上角按鈕,點擊即可用m編輯器,寫入代碼,可以每寫完一部分,執行一下,查看效果。

『肆』 matlab imread 怎麼一次讀取多張圖片用循環的方法

fileform
=
'圖片路徑*.bmp';
filepathsrc
=
'圖片路徑';
file
=
dir(fileform);
for
i
=
1:length(file)
myimg[i]
=
imread([filepathsrc,
file(i).name]);
end
圖片路徑替換成自己的圖片路徑,記得在最後加一個斜線

『伍』 怎樣用matlab讀取一個文件夾下的多個子文件夾中的多個jpg圖片,急用啊~~~

這樣:

imgPath = 'E:/imageData/'; % 圖像庫路徑

imgDir = dir([imgPath '*.jpg']); % 遍歷所有jpg格式文件

for i = 1:length(imgDir) % 遍歷結構體就可以一一處理圖片了

img = imread([imgPath imgDir(i).name]); %讀取每張圖片

end

(5)matlab怎樣讀取圖片文件擴展閱讀:

注意事項

imgDir返回的是一個結構體,包含每個圖片name(名稱),date(日期),bytes(位元組數),isdir(是否為文件夾/目錄),datenum(修改日期,連續日期號碼)。一般我們僅需使用圖片名稱就可以完成圖片遍歷的工作

需要先遍歷所有子文件夾,然後依次再遍歷每個子文件夾下的圖片。程序如下:

imgDataPath = 'E:/imageData/';

imgDataDir = dir(imgDataPath); % 遍歷所有文件

for i = 1:length(imgDataDir)

if(isequal(imgDataDir(i).name,'.')||... % 去除系統自帶的兩個隱文件夾

isequal(imgDataDir(i).name,'..')||...

~imgDataDir(i).isdir) % 去除遍歷中不是文件夾的

continue;

end

imgDir = dir([imgDataPath imgDataDir(i).name '/*.jpg']);

for j =1:length(imgDir) % 遍歷所有圖片

img = imread([imgDataPath imgDataDir(i).name '/' imgDir(j).name]);

end

end

『陸』 如何用matlab讀取圖像文件

通過函數
imread()
來打開的~
調用格式
pic=imread('filename')
不過文件不在matlab的搜索路徑中,應補上路徑~
具體調用格式見
help
imread

『柒』 給我一個實例,Matlab中用imread函數讀取一個圖像,求詳細步驟

1、首先在電腦中打開Matlab,點擊」新建腳本「,如下圖所示。

『捌』 MATLAB如何讀取圖片

把圖片放到你的matlab的目錄下,或者把matlab的目錄定在你要處理的圖片所在的目錄下。假設圖片名是a,在命令窗里輸入imread('a.jpg'),jpg是假設的圖片格式,就可以讀出了。有問題可以再問我喲!

『玖』 matlab 怎麼批量讀取圖像

MATLAB
並不支持一次讀取多幅圖像,但是可以通過使用循環語句將同一文件夾下變數名比較有規則的圖像文件依次讀取。具體寫法如下
for
i=1:5
%假設讀取5幅圖像,且圖像文件為1.jpg到5.jpg
str
=
[num2str(i),'.jpg'];
pic{i}
=
imread(str);
end
運行結束後,讀取了5幅圖像文件,並保存在名為pic的元胞數組中

『拾』 MATLAB中無法用imread函數讀自己的圖片。

1、首先在電腦中打開Matlab,點擊」新建腳本「。

(10)matlab怎樣讀取圖片文件擴展閱讀:

程序示例:

示例一:

下面這段代碼讀取一張圖片並顯示出來

filename='e.bmp';

imgRgb=imread(filename);%讀入一幅彩色圖像

imshow(imgRgb);%顯示彩色圖像

示例二:

下面這段代碼把24位真彩色點陣圖轉為灰度圖像

filename='e.bmp';

imfinfo(filename)%查看圖像文件信息

imgRgb=imread(filename);%讀入一幅彩色圖像

imshow(imgRgb);%顯示彩色圖像

imgGray=rgb2gray(imgRgb);%轉為灰度圖像

figure%打開一個新的窗口顯示灰度圖像

熱點內容
馬路上汽車的噪音在多少分貝 發布:2023-08-31 22:08:23 瀏覽:2167
應孕棒多少錢一盒 發布:2023-08-31 22:08:21 瀏覽:1634
標准養老金一年能領多少錢 發布:2023-08-31 22:05:05 瀏覽:1933
湖北通城接網線多少錢一個月 發布:2023-08-31 21:59:51 瀏覽:2000
開隨車吊車多少錢一個月 發布:2023-08-31 21:55:06 瀏覽:1760
京東付尾款怎麼知道前多少名 發布:2023-08-31 21:52:58 瀏覽:2084
在學校租鋪面一個月要多少錢 發布:2023-08-31 21:52:09 瀏覽:2224
2寸有多少厘米 發布:2023-08-31 21:50:34 瀏覽:1865
知道電壓如何算一小時多少電 發布:2023-08-31 21:46:20 瀏覽:1869
金手鐲54號圈周長是多少厘米 發布:2023-08-31 21:44:28 瀏覽:2009