imwrite

imwrite

imwrite在matlab中用於將圖像數據寫入到圖像檔案中, 存儲在磁碟上,在matlab命令視窗中鍵入help imwrite或doc imwrite可以獲得更多關於該函式的幫助信息。

基本信息

功能

imwrite用於將圖像數據寫入到圖像檔案中。

調用格式

imwrite(A,filename,fmt)

imwrite(...,filename)

imwrite(...,Param1,Val1,Param2,Val2...)

imwrite(f,'filename.jpg','quality',q)

調用格式說明

imwrite(A,filename,fmt)

A是圖像數據, filename是目標圖像名字, fmt是要生成的圖片的格式。

圖像格式有:bmp(1-bit、8-bit和4-bit)、gif(8-bit)、hdf、jpg(或jpeg)(8-bit、12-bit和16-bit)、jp2或jpx、pbm、pcx(8-bit)、gm、png、pnm、ppm、ras、tif(或tiff)、xwd。各種格式支持的圖像位數不一樣, 比如bmp格式不支持16-bit,而png格式支持, 又如gif只支持8-bit格式。

imwrite(X,map,filename,fmt)

如果要存儲一張索引圖像, 需要指定顏色表,這樣在硬碟上生成圖像檔案時指定的顏色表和圖像數據將一起寫入圖像檔案。

imwrite(...,filename)

imwrite(...,Param1,Val1,Param2,Val2...)

另一種常用但只適用於JPEG圖像的imwrite函式語法為

imwrite(f,'filename.jpg','quality',q)

其中q是一個在0-100之間的整數,為圖像質量因數。

相關函式

imread、imfinfo、fread、fwrite

舉例說明

close all; clear; clc;

warning off all;

% 本例子展示如何將一張真彩色jpg格式圖片轉換為灰度圖像、索引圖像、二值圖像

imgrgb = imread('flower.jpg');

imwrite(imgrgb, 'flower.bmp', 'bmp'); % jpg格式轉換為bmp格式

imggray = rgb2gray(imgrgb);

imwrite(imggray, 'flower_grayscale.bmp', 'bmp'); % 存儲為灰度圖像

[imgind, map] = rgb2ind(imgrgb, 256); % 轉換為256色的索引圖像

% 如果轉換為65536色圖像, imwrite函式無法寫入到檔案, 這是因為: 65536色的

% 索引圖像數據類型是uint16(16-bit), 而imwrite函式的bmp檔案格式僅僅支持

% 1-bit, 8-bit, 和 24-bit。png格式支持uint16。

imwrite(imgind, map, 'flower_index.bmp', 'bmp');

imgbw = im2bw(imgrgb, 0.5);

imwrite(imgbw, 'flower_binary.bmp', 'bmp');

相關詞條

相關搜尋

熱門詞條

聯絡我們