Main Content

imwrite

イメージをグラフィックス ファイルに書き込む

説明

imwrite(A,filename) は、filename で指定されたファイルの拡張子からファイル形式を推測して、イメージ データ A をそのファイルに書き込みます。imwrite は、新しいファイルを現在のフォルダーに作成します。出力イメージのビット深度は、A のデータ型とファイル形式によって決まります。ほとんどの形式では、次のようになります。

  • A がデータ型 uint8 の場合、imwrite は 8 ビット値を出力します。

  • A がデータ型 uint16 で、出力ファイル形式が 16 ビット データ (JPEG、PNG および TIFF) をサポートしている場合、imwrite は 16 ビット値を出力します。出力ファイル形式が 16 ビット データをサポートしていない場合、imwrite はエラーを返します。

  • A がデータ型 double または single のグレースケールまたは RGB カラー イメージの場合、imwrite は、ダイナミック レンジを [0, 1] と仮定してデータを自動的に 255 でスケーリングしてから、8 ビット値としてファイルに書き込みます。A のデータが single の場合は、GIF または TIFF ファイルに書き込む前に、Adouble に変換します。

  • A がデータ型 logical の場合、imwrite はデータをバイナリ イメージと仮定し、その形式で許可されている場合は、ビット深度 1 でファイルに書き込みます。BMP、PNG、または TIFF 形式は、入力配列としてバイナリ イメージを受け入れます。

A にインデックス付きイメージ データが含まれている場合は、map 入力引数を追加で指定する必要があります。

imwrite(A,map,filename) は、A のインデックス付きイメージおよびその関連カラーマップ mapfilename で指定されたファイルに書き込みます。

  • A がデータ型 double または single のインデックス付きイメージの場合、imwrite は、各要素から 1 を減算することで、インデックスを 0 ベース インデックスに変換し、データを uint8 として書き込みます。A のデータが single の場合は、GIF または TIFF ファイルに書き込む前に、Adouble に変換します。

imwrite(___,fmt) は、filename のファイル拡張子に関係なく、イメージを fmt で指定された形式で書き込みます。前述のいずれの構文でも、入力引数の後に fmt を指定できます。

imwrite(___,Name,Value) は、名前と値の引数を 1 つ以上使用して、GIF、HDF、JPEG、PBM、PGM、PNG、PPM および TIFF の出力ファイル用の追加パラメーターを指定します。たとえば、PNG 形式のイメージにコメントを追加できます。

すべて折りたたむ

グレースケール値の 50 行 50 列の配列を現在のフォルダーの PNG ファイルに書き込みます。

A = rand(50);
imwrite(A,"myGray.png")

インデックス付きイメージ配列およびその関連カラーマップを PNG ファイルに書き込みます。

ファイル earth.mat からサンプル イメージ データを読み込みます。

load earth.mat

イメージ配列 X とその関連カラーマップ map がワークスペースに読み込まれます。

新しい PNG ファイルにデータを書き込みます。

imwrite(X,map,"myearth.png")

imwrite によって、現在のフォルダーにファイル myearth.png が作成されます。

imshow を使用して新しい PNG ファイルを表示します。

imshow("myearth.png")

Figure contains an axes object. The axes object contains an object of type image.

組み込みの MATLAB カラーマップ copper を使用して新しい PNG ファイルにイメージ データを書き込みます。

ファイル earth.mat からサンプル イメージ データを読み込みます。

load earth.mat

イメージ配列 X とその関連カラーマップ map がワークスペースに読み込まれます。map は 64 RGB ベクトルの行列です。

64 RGB ベクトルで赤銅色トーン カラーマップを作成します。次に、新しいカラーマップを使用して PNG ファイルにイメージ データを書き込みます。

newmap = copper(64);
imwrite(X,newmap,"copperearth.png");

imwrite によって、現在のフォルダーにファイル copperearth.png が作成されます。

imshow を使用して新しい PNG ファイルを表示します。

imshow("copperearth.png")

Figure contains an axes object. The axes object contains an object of type image.

トゥルーカラー イメージ データを作成して JPEG ファイルに書き込みます。

ランダムな RGB 値の 49×49×3 の配列を作成します。

A = rand(49,49,3);

イメージ データを JPEG ファイルに書き込みます。.jpg ファイル拡張子を使用すると、imwrite によってこの形式が自動的に選択されます。名前と値の引数 Comment を使用してファイルにコメントを付加します。

imwrite(A,"newImage.jpg","Comment","My JPEG file")

新しいファイルの情報を表示します。

info = imfinfo("newImage.jpg");
info.ColorType
ans = 
'truecolor'
[info.Height,info.Width,info.NumberOfSamples,info.BitDepth]
ans = 1×4

    49    49     3    24

info.Comment
ans = 1x1 cell array
    {'My JPEG file'}

複数のイメージを単一のマルチページ TIFF ファイルに書き込みます。

2 つのランダム イメージ データセット im1 および im2 を作成します。

im1 = rand(50,40,3);
im2 = rand(50,50,3);

最初のイメージを新しい TIFF ファイルに書き込みます。次に、2 番目のイメージを同じファイルに追加します。

imwrite(im1,"myMultipageFile.tiff")
imwrite(im2,"myMultipageFile.tiff","WriteMode","append")

一連のプロットを描画し、それらをイメージとして取得して 1 つのアニメーション GIF ファイルに書き込みます。

n=3 の場合の y=xn をプロットします。

x = 0:0.01:1;
n = 3;
y = x.^n;
plot(x,y,"LineWidth",3)
title("y = x^n,  n = " + num2str(n))

Figure contains an axes object. The axes object with title y blank = blank x toThePowerOf n baseline , blank blank n blank = blank 3 contains an object of type line.

n の増加する値の一連のプロットを取得します。

n = 1:0.5:5;
nImages = length(n);

fig = figure;
for idx = 1:nImages
    y = x.^n(idx);
    plot(x,y,"LineWidth",3)
    title("y = x^n,  n = " + num2str(n(idx)))
    drawnow
    frame = getframe(fig);
    im{idx} = frame2im(frame);
end
close;

一連のイメージを 1 つの Figure に表示します。

figure;
for idx = 1:nImages
    subplot(3,3,idx)
    imshow(im{idx});
end

Figure contains 9 axes objects. Axes object 1 contains an object of type image. Axes object 2 contains an object of type image. Axes object 3 contains an object of type image. Axes object 4 contains an object of type image. Axes object 5 contains an object of type image. Axes object 6 contains an object of type image. Axes object 7 contains an object of type image. Axes object 8 contains an object of type image. Axes object 9 contains an object of type image.

9 つのイメージを GIF ファイルに保存します。3 次元データは GIF ファイルではサポートされていないため、rgb2ind を呼び出し、カラーマップ map を使用してイメージの RGB データをインデックス付きイメージ A に変換します。複数のイメージを最初のイメージに追加するために、名前と値の引数 WriteMode"append" に設定して imwrite を呼び出します。

filename = "testAnimated.gif"; % Specify the output file name
for idx = 1:nImages
    [A,map] = rgb2ind(im{idx},256);
    if idx == 1
        imwrite(A,map,filename,"gif","LoopCount",Inf,"DelayTime",1);
    else
        imwrite(A,map,filename,"gif","WriteMode","append","DelayTime",1);
    end
end

imwrite は、GIF ファイルを現在のフォルダーに書き込みます。LoopCountInf に設定すると、アニメーションは連続的にループします。DelayTime1 に設定すると、アニメーションの各イメージの表示間隔が 1 秒に指定されます。

入力引数

すべて折りたたむ

イメージ データ。フル (非スパース) 行列として指定します。

  • グレースケール イメージの場合、A は m 行 n 列にできます。

  • インデックス付きイメージの場合、A は m 行 n 列にできます。関連カラーマップを map 入力引数で指定します。

  • トゥルーカラー イメージの場合、A は m×n×3 でなければなりません。imwrite では RGB イメージの GIF ファイルへの書き込みはサポートされていません。

TIFF ファイルの場合、A は、CMYK 色空間を使用する色データを含む m×n×4 の配列にすることができます。

マルチフレーム GIF ファイルの場合、A は、グレースケールまたはインデックス付きイメージを含む m×n×1×p の配列にすることができます。ここで p は書き込むフレームの数です。この場合、RGB イメージはサポートされません。

データ型: double | single | uint8 | uint16 | logical

出力ファイルの名前。string スカラーまたは文字ベクトルとして指定します。

書き込み先の場所によって、filename は次のいずれかの形式にできます。

場所

形式

現在のフォルダー

現在のフォルダーに書き込むには、ファイルの名前を filename に指定します。

filename にはファイル拡張子を含めなければなりません。imwrite が書き込むことができるイメージ タイプの一覧については、入力引数 fmt の説明を参照してください。

例: "myImage.jpg"

その他のフォルダー

現在のフォルダーとは異なるフォルダーに書き込むには、絶対パス名または相対パス名を filename に指定します。

例: "C:\myFolder\myImage.ext"

例: "\imgDir\myImage.ext"

リモートの場所

リモートの場所に書き込むには、filename に次の形式の Uniform Resource Locator (URL) として指定されたファイルの絶対パスを含めなければなりません。

scheme_name://path_to_file/my_file.ext

リモートの場所に基づいて、scheme_name には次の表の値のいずれかを指定できます。

リモートの場所scheme_name
Amazon S3™s3
Windows Azure® Blob Storagewasb, wasbs
HDFS™hdfs

詳細については、リモート データの操作を参照してください。

例: "s3://bucketname/path_to_file/my_image.jpg"

データ型: char | string

A のインデックス付きイメージ データに関連付けられたカラーマップ。m 行 3 列の配列で指定します。map は有効な MATLAB® カラーマップでなければなりません。組み込みの MATLAB カラーマップの一覧については、colormap を参照してください。イメージ ファイルの形式の多くは、256 要素を超えるカラーマップをサポートしていません。

例: [0,0,0; 0.5,0.5,0.5; 1,1,1]

例: jet(60)

データ型: double

出力ファイルの形式。次の表のいずれかの形式として指定します。

以下の表は、imwrite が書き込むことができるイメージのタイプも示しています。MATLAB ファイル形式レジストリは、どのファイル形式をサポートしているかを決定します。このレジストリの詳細については、imformats を参照してください。

特定の形式については、imwrite は追加の名前と値の引数を受け入れることができます。これらの引数を表示するには、以下のリンク付き形式名をクリックしてください。

fmt の値

出力ファイルの形式

説明

"bmp"

Windows® ビットマップ (BMP)

1 ビット、8 ビット、および 24 ビットの非圧縮イメージ

"gif"

GIF — Graphics Interchange Format

8 ビット イメージ

"hdf"

HDF4 — Hierarchical Data Format

8 ビットのラスター イメージ データセット、関連カラーマップ付きまたは関連カラーマップなし、24 ビットのラスター イメージ データセット

"jpg" または "jpeg"

JPEG — Joint Photographic Experts Group

8 ビット、12 ビットおよび 16 ビット Baseline JPEG イメージ

メモ

JPEG 形式はインデックス付きイメージをサポートしていないため、imwrite はデータを JPEG ファイルに書き込む前にインデックス付きイメージを RGB に変換します。

"jp2" または "jpx"

JPEG 2000 — Joint Photographic Experts Group 2000

1 ビット、8 ビット、および 16 ビット JPEG 2000 イメージ

"pbm"

Portable Bitmap (PBM)

任意の 1 ビット PBM イメージ。エンコードされた ASCII (プレーン) または raw (バイナリ)

"pcx"

Windows Paintbrush (PCX)

8 ビット イメージ

"pgm"

Portable Graymap (PGM)

任意の標準的な PGM イメージ: 任意のカラー階調度をもつエンコードされた ASCII (プレーン): グレー値に対して、16 ビットまでの階調度をもつエンコードされた raw (バイナリ)

"png"

PNG — ポータブル ネットワーク グラフ

1 ビット、2 ビット、4 ビット、8 ビット、および 16 ビットのグレースケール イメージ: アルファ チャネルをもつ 8 ビットと 16 ビットのグレースケール イメージ: 1 ビット、2 ビット、4 ビット、8 ビットのインデックス付きイメージ: 24 ビットまたは 48 ビットのトゥルーカラー イメージ: アルファ チャネルをもつ 24 ビットまたは 48 ビットのトゥルーカラー イメージ

メモ

関数 imwrite は、カラーマップの要素が不足しているインデックス付き PNG ファイルの書き込みをサポートしていません。

"pnm"

Portable Anymap (PNM)

PPM/PGM/PBM 形式のいずれかで、自動的に選択

"ppm"

Portable Pixmap (PPM)

標準の PPM イメージ。任意のカラー階調度をもつエンコードされた ASCII (プレーン) またはグレー値に対して、16 ビットまでの階調度をもつエンコードされた raw (バイナリ)

"ras"

Sun™ ラスター (RAS)

アルファをもつ 1 ビットのビットマップ、8 ビットのインデックス付き、24 ビットのトゥルーカラーおよび 32 ビットのトゥルーカラーを含む任意の RAS イメージ

"tif" または "tiff"

Tagged Image File Format (TIFF)

以下のイメージを含むベースライン TIFF イメージ

  • 1 ビット、8 ビット、16 ビット、24 ビットおよび 48 ビットの非圧縮イメージと packbits、LZW または Deflate 圧縮を使用したイメージ

  • CCITT 1D、グループ 3 およびグループ 4 圧縮を使用した 1 ビット イメージ

  • CIELAB、ICCLAB および CMYK イメージ

"xwd"

X Windows Dump (XWD)

8 ビット ZPixmaps

名前と値の引数

引数のオプションのペアを Name1=Value1,...,NameN=ValueN として指定します。ここで Name は引数名で、Value は対応する値です。名前と値の引数は他の引数の後になければなりませんが、ペアの順序は重要ではありません。

例: imwrite(A,"myFile.png",BitDepth=8) は、各ピクセルを表す 8 ビットを使用して A のデータを書き込みます。

R2021a より前では、コンマを使用してそれぞれの名前と値を区切り、Name を引用符で囲みます。

例: imwrite(A,"myFile.png","BitDepth",8) は、各ピクセルを表す 8 ビットを使用して A のデータを書き込みます。

GIF — Graphics Interchange Format

すべて折りたたむ

インデックス付きイメージの背景色として使用する色。カラーマップ インデックスに対応する非負の整数スカラーとして指定します。

背景色は、アニメーション GIF の一部の破棄メソッドで使用されます。

  • イメージ データ Auint8 または logical の場合、カラーマップ インデックスは 0 ベースです。

  • イメージ データ Adouble の場合、カラーマップ インデックスは 1 ベースです。

既定の背景色はカラーマップの最初の色に対応します。

例: "BackgroundColor",15

イメージに付加するコメント。string スカラー、文字ベクトル、1 行 n 列の string 配列、または 1 行 n 列の文字ベクトルの cell 配列として指定します。string 配列、または文字ベクトルの cell 配列の場合、imwrite は各エントリの後にキャリッジ リターンを追加します。

例: "Comment",["Sample #314","January 5, 2013"]

データ型: string | char | cell

次のイメージを表示するまでの遅延 (秒単位)。[0, 655] の範囲のスカラー値として指定します。

ヒント

アニメーション速度を高速にするには、DelayTime0.02 に設定します。DelayTime に低い値を設定すると、多くのイメージ ビューアーや Web ブラウザーで実際のアニメーション速度が低下します。

例: "DelayTime",60

アニメーション GIF の破棄メソッド。次の表のいずれかのメソッドとして指定します。

DisposalMethod の値 結果
"doNotSpecify" (既定)フルサイズの不透明なフレームを別のフレームに置換します。
"leaveInPlace"次のフレームによってカバーされないピクセルはすべて引き続き表示されます。
"restoreBG"背景色または背景タイルは透明なピクセルを介して表示されます。
"restorePrevious"前の状態の未処理フレームに戻します。

例: "DisposalMethod","restoreBG"

イメージを基準とする画面のオフセット。それぞれの左上隅から測定され、2 要素ベクトルとして指定します。最初のベクトル要素は上からのオフセットを、2 番目の要素は左からのオフセットをピクセル単位で指定します。

例: "Location",[10,15]

データ型: double

アニメーションを繰り返す回数。[0, 65,535] の範囲内の整数または値 Inf として指定します。値 0 を指定するとアニメーションが 1 回再生され、値 1 を指定するとアニメーションが 2 回再生され、以降も同様の繰り返しとなります。InfLoopCount 値を指定すると、アニメーションは連続的にループします。

Microsoft® PowerPoint® 内でアニメーションを有効にするには、[1, 65,535] の範囲内の LoopCount 値を指定します。Microsoft のアプリケーションによっては、値 0 をループなしと解釈するものがあります。

例: "LoopCount",3

フレームの高さと幅。2 要素ベクトルとして指定します。ScreenSize 引数を Location と一緒に使用して、フレーム全体より小さいイメージにフレームを書き込むことができます。DisposalMethod はフレームの外側のピクセルの塗りつぶしの値を決定します。

例: "ScreenSize",[1000 1060]

データ型: double

イメージの透明色として使用する色。カラーマップ インデックスに対応する非負の整数スカラーとして指定します。

  • イメージ データ Auint8 または logical の場合、インデックスは 0 から始まります。

  • イメージ データ Adouble の場合、インデックスは 1 から始まります。

例: "TransparentColor",20

書き込みモード。"overwrite" または "append" として指定します。"overwrite" モードでは、imwrite は既存ファイル filename を上書きします。"append" モードでは、imwrite は既存ファイルにフレームを 1 つ追加します。

例: "WriteMode","append"

HDF4 — Hierarchical Data Format

すべて折りたたむ

圧縮方式。次の表のオプションのいずれかとして指定します。

Compression の値 結果
"none" (既定)圧縮なし
"jpeg"JPEG 圧縮。グレースケールおよび RGB イメージの場合にのみ有効です。
"rle"連長圧縮。グレースケールおよびインデックス付きイメージの場合にのみ有効です。

例: "Compression","jpeg"

JPEG 圧縮ファイルの品質。[0, 100] の範囲のスカラーとして指定します。ここで、0 は低品質で高圧縮、100 は高品質で低圧縮です。このパラメーターは、Compression"jpeg" の場合にのみ適用されます。

例: "Quality",25

書き込みモード。"overwrite" または "append" として指定します。"overwrite" モードでは、imwrite は既存ファイル filename を上書きします。"append" モードでは、imwrite は既存ファイルにフレームを 1 つ追加します。

例: "WriteMode","append"

JPEG — Joint Photographic Experts Group

すべて折りたたむ

ピクセルあたりのビット数。スカラーとして指定します。

  • グレースケール イメージの場合、BitDepth 値は 812、または 16 にすることができます。既定値は 8 です。16 ビット イメージの場合、名前と値の引数 Mode"lossless" でなければなりません。

  • カラー イメージの場合、BitDepth 値は平面あたりのビット数で 8 または 12 にすることができます。既定値は平面あたり 8 ビットです。

例: "BitDepth",12

イメージに付加するコメント。string スカラー、文字ベクトル、n 行 1 列の string 配列、または n 行 1 列の文字ベクトルの cell 配列として指定します。string 配列、または文字ベクトルの cell 配列の場合、imwrite は、入力の各行をコメントとして JPEG ファイルに書き込みます。

例: "Comment",["First comment";"second comment";"third comment"]

データ型: string | char | cell

圧縮のタイプ。"lossy" または "lossless" として指定します。

例: "Mode","lossless"

出力ファイルの品質。[0, 100] の範囲のスカラーとして指定します。ここで、0 は低品質で高圧縮、100 は高品質で低圧縮です。Quality 値を 100 にすると、可逆 JPEG イメージは書き込まれません。代わりに、名前と値の引数 Mode"lossless" に設定します。

例: "Quality",100

JPEG 2000 — Joint Photographic Experts Group 2000

すべて折りたたむ

イメージに付加するコメント。string スカラー、文字ベクトル、string 配列、または文字ベクトルの cell 配列として指定します。string 配列、または文字ベクトルの cell 配列の場合、imwrite は、各エントリをコメントとして JPEG 2000 ファイルに列優先の順序で書き込みます。

例: "Comment",["First comment";"second comment";"third comment"]

例: "Comment",{'First comment','second comment','third comment'}

データ型: string | char | cell

ターゲットの圧縮率。1 以上の正のスカラーとして指定します。圧縮率は、入力イメージのサイズと出力の圧縮サイズの比率です。たとえば、2 という値は、出力イメージのサイズが入力イメージのサイズの半分以下になることを意味します。大きな値を指定すると、ファイル サイズは小さくなりますが、画質が低下します。圧縮率では、ヘッダー サイズは考慮されません。

CompressionRatio は、Mode"lossy" の場合にのみ指定できます。

例: "CompressionRatio",3

圧縮のタイプ。"lossy" または "lossless" として指定します。

例: "Mode","lossless"

コード ストリーム内のパケットの順序。次のオプションのいずれかとして指定します。

  • "LRCP"

  • "RLCP"

  • "RPCL"

  • "PCRL"

  • "CPRL"

これらの文字はパケットを表しており、L=layer、R=resolution、C=component、および P=position です。

例: "ProgressionOrder","RLCP"

品質層の数。[1, 20] の範囲の整数として指定します。

例: "QualityLayers",8

低減レベルまたはウェーブレット分解レベルの数。[1, 8] の範囲の整数として指定します。

例: "ReductionLevels",6

タイルの高さと幅。2 要素ベクトルとして指定します。指定できる最小サイズは [128 128] です。

例: "TileSize",[130 130]

PBM、PGM および PPM — Portable Bitmap、Graymap、Pixmap

すべて折りたたむ

エンコード。"rawbits" (バイナリ エンコードの場合) または "ASCII" (プレーン エンコードの場合) として指定します。

例: "Encoding","ASCII"

最大グレーまたはカラー値。正の整数スカラーとして指定します。

この名前と値の引数は PGM および PPM ファイルに対してのみ指定します。PBM ファイルでは、この値は常に 1 です。

イメージ配列が uint16 の場合、MaxValue の既定値は 65535 です。そうでない場合は、既定値は 255 です。

例: "MaxValue",510

PNG — ポータブル ネットワーク グラフ

すべて折りたたむ

各ピクセルの透明度。範囲 [0, 1] の値の行列として指定します。Alpha 行列の行と列の次元は、イメージ データ配列の行と列の次元と同じでなければなりません。Alpha は、グレースケール (m 行 n 列) およびトゥルーカラー (m×n×3) イメージ データに対してのみ指定できます。

メモ

AlphaTransparency の両方を同時に指定することはできません。

データ型: double | uint8 | uint16

作成者情報。string スカラーまたは文字ベクトルとして指定します。

例: "Author","Ann Smith"

データ型: string | char

透明ピクセルを合成するときの背景色。次の表に示すように、イメージ データ依存の値として指定します。

イメージ タイプBackground 値の形式
グレースケール イメージ[0, 1] の範囲のスカラー。
インデックス付きイメージ[1, P] の範囲の整数。ここで P はカラーマップの長さです。たとえば、"Background",50 と指定すると、背景色はカラーマップの 50 番目のインデックスで指定された色に設定されます。
トゥルーカラー イメージ[0, 1] の範囲の RGB 強度からなる 3 要素ベクトル。たとえば、"Background",[0 1 1] と指定すると、背景色はシアンに設定されます。

データ型: double

ピクセルあたりのビット数。スカラーとして指定します。出力イメージに応じて、スカラーは以下のいずれかの値にすることができます。

イメージ タイプBitDepth に指定できる値
グレースケール イメージ1248 または 16
アルファ チャネルをもつグレースケール イメージ8 または 16
インデックス付きイメージ124、または 8
トゥルーカラー イメージ8 または 16
  • イメージの型が double または uint8 の場合、既定のビット深度はピクセルあたり 8 ビットです。

  • イメージの型が uint16 の場合、既定値はピクセルあたり 16 ビットです。

  • イメージの型が logical の場合、既定値はピクセルあたり 1 ビットです。

例: "BitDepth",4

基準白色点と原色の色度。[wx wy rx ry gx gy bx by] の形式の 8 要素ベクトルとして指定します。要素 wx および wy は白色点の色度座標で、要素 rxrygxgybx および by は、それぞれ赤、緑、青の色度座標です。

Chromaticities を指定する場合は、名前と値の引数 Gamma も指定する必要があります。

例: "Chromaticities",[0.312,0.329,0.002,0.002,0.001,0.001,0.115,0.312]

データ型: double

イメージに付加するコメント。string スカラーまたは文字ベクトルとして指定します。

元のイメージの作成時間。ある時点を表す datetime、string スカラー、または文字ベクトルとして指定します。タイム ゾーンをもつ datetime 値として CreationTime を指定した場合、imwrite はそのタイム ゾーンを値の一部として保存します。

例: "CreationTime",datetime("1955-11-12 10:04 PM","TimeZone","America/Los_Angeles")

イメージの説明。string スカラーまたは文字ベクトルとして指定します。

法的放棄声明。string スカラーまたは文字ベクトルとして指定します。

ファイル ガンマ。数値スカラーとして指定します。

例: "Gamma",2.2

イメージの最終変更時間。ある時点を表す datetime、string スカラー、または文字ベクトルとして指定します。UTC 以外のタイム ゾーンをもつ datetime 値として ImageModTime を指定した場合、imwrite は、値を保存する前に UTC に変換します。タイム ゾーンのない datetime 値として ImageModTime を指定した場合、imwrite は値を UTC として解釈します。

既定の ImageModTime 値は、imwrite を呼び出した時間です。

例: "ImageModTime",datetime("2018-04-01 9:00 AM","TimeZone","Europe/Rome")

インターレース スキーム。"none" (インターレースなしの場合) または "adam7" (Adam7 アルゴリズムを使用する場合) として指定します。

例: "InterlaceType","adam7"

イメージ解像度の単位。"unknown" または "meter" として指定します。ResolutionUnit を指定する場合は、名前と値の引数 XResolutionYResolution のうちの少なくとも 1 つを含めなければなりません。ResolutionUnit の値が "meter" の場合、XResolutionYResolution の値はメートルあたりのピクセルとして解釈されます。

例: "ResolutionUnit","meter","XResolution",1000

データ配列の有効ビットの数。[1,BitDepth] の範囲のスカラーまたはベクトルとして指定します。出力イメージ タイプに応じて、値は以下のいずれかの形式で指定する必要があります。

イメージ タイプSignificantBits 値の形式
アルファ チャネルをもたないグレースケール イメージスカラー
アルファ チャネルをもつグレースケール イメージ2 要素ベクトル
インデックス付きイメージ3 要素ベクトル
アルファ チャネルをもたないトゥルーカラー イメージ3 要素ベクトル
アルファ チャネルをもつトゥルーカラー イメージ4 要素ベクトル

例: "SignificantBits",[2,3]

イメージの作成に使用されるソフトウェア。string スカラーまたは文字ベクトルとして指定します。

イメージの作成に使用されるデバイス。string スカラーまたは文字ベクトルとして指定します。

アルファ チャネルが使用されない場合に透明と見なすピクセル。スカラーまたはベクトルとして指定します。出力イメージに応じて、値は以下のいずれかの形式で指定する必要があります。

イメージ タイプTransparency 値の形式
グレースケール イメージ透明と見なされるグレースケール カラーを示す、[0, 1] の範囲のスカラー。
インデックス付きイメージ[0, 1] の範囲の値からなる Q- 要素ベクトル。ここで、Q はカラーマップ長より短く、各値は対応するカラーマップ要素に関連付けられた透明度を示します。多くの場合、Q は 1 です。
トゥルーカラー イメージ透明と見なされるトゥルーカラーを示す、[0, 1] の範囲の RGB 強度からなる 3 要素ベクトル。

メモ

TransparencyAlpha の両方を同時に指定することはできません。

例: "Transparency",[1 1 1]

データ型: double

コンテンツの性質に関する警告。string スカラーまたは文字ベクトルとして指定します。

水平方向のイメージ解像度 (ピクセル/単位)。数値スカラーとして指定します。名前と値の引数 ResolutionUnit を指定して単位を定義します。

YResolution を合わせて指定しない場合、XResolution 値は水平方向と垂直方向の両方に適用されます。

例: "XResolution",900

垂直方向のイメージ解像度 (ピクセル/単位)。数値スカラーとして指定します。名前と値の引数 ResolutionUnit を指定して単位を定義します。

XResolution を合わせて指定しない場合、YResolution 値は垂直方向と水平方向の両方に適用されます。

例: "YResolution",900

PNG 用にリストされた名前と値の引数に加えて、キーワードに PNG 仕様を満たす任意のパラメーター名を使用できます。つまり、前後にスペースを含まない 80 文字以内の表示可能な文字を名前に使用できます。これらのユーザー指定の名前に対応する値は、改行以外の制御文字を含まない string スカラーまたは文字ベクトルでなければなりません。

RAS — Sun ラスター グラフィックス

すべて折りたたむ

各ピクセルの透明度。イメージ データ配列と同じ行と列の次元をもつ行列として指定します。

この名前と値の引数は、トゥルーカラー (m×n×3) イメージ データの場合にのみ有効です。

データ型: double | single | uint8 | uint16

イメージ タイプ。次の表のオプションのいずれかとして指定します。

Type の値説明
"standard" (既定)非圧縮、トゥルーカラー イメージの場合 B-G-R
"rgb"非圧縮、トゥルーカラー イメージの場合 R-G-B
"rle"1 ビットおよび 8 ビット イメージの連長圧縮

例: "Type","rgb"

TIFF — Tagged Image File Format

すべて折りたたむ

色データを表す色空間。"rgb""cielab"、または "icclab" として指定します。

この名前と値の引数は、イメージ データ配列 A がトゥルーカラー (m×n×3) の場合にのみ有効です。TIFF ファイルで CMYK 色空間を使用する場合は、名前と値の引数 ColorSpace を使用しないでください。代わりに、m×n×4 のイメージ データ配列を指定します。

imwrite は、L*a*b* 色空間を使用するカラー イメージ データを TIFF ファイルに書き込むことができます。1976 CIE L*a*b* 仕様は、輝度 (L*) および色調 (a* および b*) 情報を表す数値を定義します。"L*a*b*" カラー データを TIFF ファイルに保存するには、8 ビットまたは 16 ビット ストレージに収まるように値をエンコードしなければなりません。imwrite は、以下のエンコードを使用して "L*a*b*" カラー データを TIFF ファイルに保存できます。

  • CIELAB エンコード — TIFF 仕様で定義された 8 ビットまたは 16 ビットのエンコード

  • ICCLAB エンコード — International Color Consortium (ICC) で定義された 8 ビットまたは 16 ビットのエンコード

imwrite で使用される出力クラスとエンコードは、以下の表に示すように、入力イメージ データ配列のクラスと ColorSpace 値によって異なります。(8 ビットおよび 16 ビットの CIELAB エンコードは符号付きと符号なしの値を混ぜて使用し、1 つの MATLAB 配列として表すことができないため、入力配列にはできません)。

入力クラスおよびエンコード

ColorSpace の値

出力クラスおよびエンコード

8 ビット ICCLAB


値は範囲 [0, 255] の整数です。"L*" の値に 2.55 を掛けます。
128"a*""b*" の両方の値に足します。

"icclab"

8 ビット ICCLAB

"cielab"

8 ビット CIELAB

16 ビット ICCLAB


値は範囲 [0, 65,280] の整数です。"L*" の値に 652.8 を掛けます。
32768"a*""b*" の両方の値に足します。これらは範囲 [0, 65,535] の整数で表されます。

"icclab"

16 ビット ICCLAB

"cielab"

16 ビット CIELAB

倍精度 1976 CIE L*a*b* の値


L* は動的範囲 [0, 100] です。a*b* には、任意の値を使用できます。"a*""b*"0 (ゼロ) に設定すると、中間色 (グレー) になります。

"icclab"

8 ビット ICCLAB

"cielab"

8 ビット CIELAB

例: "ColorSpace","cielab"

圧縮方式。次のオプションのいずれかとして指定します。

  • "packbits" (非バイナリ イメージの既定の設定)

  • "none"

  • "lzw"

  • "deflate"

  • "jpeg"

  • "ccitt" (バイナリ イメージ専用でバイナリ イメージの既定の設定)

  • "fax3" (バイナリ イメージ専用)

  • "fax4" (バイナリ イメージ専用)

"jpeg" は非可逆圧縮方式で、他の圧縮モードは可逆です。また、"jpeg" 圧縮を指定した場合は、名前と値の引数 RowsPerStrip も指定しなければならず、その値は 8 の倍数でなければなりません。

例: "Compression","none"

イメージの説明。string スカラーまたは文字ベクトルとして指定します。この説明は、imfinfo が出力イメージの ImageDescription フィールドで返すテキストです。

例: "Description","Sample 2A301"

X および Y 解像度。X 解像度と Y 解像度の両方を示すスカラー、または X 解像度と Y 解像度を含む 2 要素ベクトルとして指定します。

例: "Resolution",80

例: "Resolution",[320,72]

データ型: double

各ストリップに含める行の数。スカラーとして指定します。既定値は、各ストリップがおよそ 8 キロバイトになる値です。

"jpeg" 圧縮を指定する場合は、RowsPerStrip を指定しなければなりません。この場合、値は 8 の倍数でなければなりません。

例: "RowsPerStrip",16

データ型: double | single | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

書き込みモード。"overwrite" または "append" として指定します。"overwrite" モードでは、imwrite は既存ファイルを上書きします。"append" モードでは、imwrite は既存ファイルにページを 1 つ追加します。

例: "WriteMode","append"

拡張機能

バージョン履歴

R2006a より前に導入

すべて展開する