imread
グラフィックス ファイルからイメージを読み込む
構文
説明
は、前述の構文の任意の入力引数の組み合わせに加え、1 つ以上の名前と値の引数を使用して形式固有のオプションを指定します。たとえば、JPEG イメージの向きを自動設定するには、A = imread(___,Name=Value)AutoOrient を true (R2024b 以降) に設定します。
[ はさらに、イメージの透明度を返します。この構文は、PNG、CUR および ICO のファイルにのみ適用されます。PNG ファイルの場合、A,map,transparency] = imread(___)transparency はアルファ チャネルです (存在する場合)。CUR および ICO のファイルの場合、transparency は AND (不透明度) マスクです。
例
サンプル イメージを読み取ります。
A = imread("ngc6543a.jpg");imread 関数は、uint8 型の 650×600×3 の配列を返します。
イメージを表示します。
image(A)

サンプルのインデックス付きイメージ ファイルの最初のイメージを読み取ります。
[A,map] = imread("corn.tif"); whos A map
Name Size Bytes Class Attributes A 415x312 129480 uint8 map 256x3 6144 double
インデックス付きイメージ A は uint8 型の 415 行 312 列の行列で、カラーマップ map は double 型の 256 行 3 列の行列です。map の寸法は、インデックス付きイメージに最大 256 色が含まれていることを示します。
イメージを表示します。
imshow(A,map)

インデックス付きイメージを RGB イメージに変換します。結果は double 型の 415×312×3 の配列になります。
RGB = ind2rgb(A,map);
RGB イメージの値が範囲 [0, 1] 内にあることを確認します。
[minVal,maxVal] = bounds(RGB(:))
minVal = 0.0078
maxVal = 0.9765
サンプル イメージのアルファ チャネルを返します。
[A,map,alpha] = imread("peppers.png"); whos alpha
Name Size Bytes Class Attributes alpha 0x0 0 double
アルファ チャネルが存在しないため、alpha は空です。
サンプル イメージの特定のピクセル領域を読み取ります。
読み取る領域の境界を示すベクトルの cell 配列とともに名前と値の引数 PixelRegion を指定します。最初のベクトルでは読み取る行の範囲を示し、2 番目のベクトルでは読み取る列の範囲を示します。
[A,map] = imread("corn.tif",PixelRegion={[201 400] [151 250]});imread 関数は、corn.tif から行 201 ~ 400、列 151 ~ 250 のイメージ データを読み取り、200 行 100 列の配列 A を返します。
イメージを表示します。
imshow(A,map)

R2024b 以降
一部のイメージ ファイルでは、Exif (Exchangeable image file format) の Orientation タグに方向メタデータが含まれています。imread でイメージ ファイルを読み取る場合、名前と値の引数 AutoOrient を true として指定することで、この方向タグに従ってイメージ データの向きを自動設定できます。
Exif の Orientation タグの値が異なる同じイメージの 8 つのバージョンのタイル配置を作成します。ファイル clock_n.jpg では、Exif の Orientation タグに値 "n" が含まれています。名前と値の引数 AutoOrient を指定しなかった場合、それぞれの Exif の Orientation タグ値を考慮せずにイメージが読み込まれます。
filenames = "clock_" + string(1:8) + ".jpg"; for i = 1:8 rawImages{i} = imread(filenames(i)); end imshow(imtile(rawImages,BorderSize=[25 25],GridSize=[2 4]))

名前と値の引数 AutoOrient を使用して、イメージ データをワークスペースに読み取る前に、それぞれの Exif の Orientation タグ値に従って各イメージを変換します。変換されたイメージを表示します。
for i = 1:8 orientedImages{i} = imread(filenames(i),AutoOrient=true); end imshow(imtile(orientedImages,BorderSize=[25 25],GridSize=[2 4]))

入力引数
グラフィックス ファイルの名前。string スカラーまたは文字ベクトルとして指定します。
ファイルの場所に応じて、filename は次の形式のいずれかをとります。
場所 | 形式 | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| 現在のフォルダー、または MATLAB® パス上のフォルダー | ファイル名を 例: | ||||||||
フォルダー内のファイル | ファイルが現在のフォルダーまたは MATLAB パス上のフォルダーにない場合は、絶対パス名または相対パス名を指定します。 例: 例: | ||||||||
| Uniform Resource Locator (URL) | ファイルをインターネット URL で指定する場合、 例: | ||||||||
リモートの場所 | リモートの場所に保存されたファイルの場合、
リモートの場所に基づいて、
詳細については、リモート データの操作を参照してください。 例: |
イメージ形式。標準のファイル拡張子を示す string スカラーまたは文字ベクトルとして指定します。サポートする形式とそのファイル拡張子の一覧を表示するには、imformats を呼び出します。
例: "png"
読み取るイメージ。整数スカラー、GIF ファイルの場合は整数ベクトルとして指定します。たとえば、idx が 3 の場合、imread 関数はファイル内の 3 番目のイメージを読み取ります。GIF ファイルで idx が 1:5 の場合、imread 関数は最初の 5 フレームのみを読み取ります。idx 引数は、複数のイメージを含む GIF、CUR、ICO および HDF4 のファイルでのみサポートされています。
同じ GIF ファイルから複数のフレームを読み取る場合は、フレームのベクトルとして idx を指定するか、名前と値の引数 Frames を "all" として指定します。GIF ファイルの構造的な仕組みにより、これらの構文を使用すると、ループ内で imread を呼び出すよりも高速のパフォーマンスが得られます。
メモ
HDF4 ファイルの場合、idx は読み取るイメージの参照番号に対応します。参照番号は、必ずしもファイル内のイメージの順番と対応しません。imfinfo を使用すると、イメージの順番と参照番号を対応付けることができます。
例: 2
例: 6:10
データ型: double
名前と値の引数
オプションの引数のペアを Name1=Value1,...,NameN=ValueN として指定します。ここで、Name は引数名で、Value は対応する値です。名前と値の引数は他の引数の後に指定しなければなりませんが、ペアの順序は重要ではありません。
例: imread("myImage.tif",Index=5) は、TIFF ファイルの 5 番目のイメージを読み取ります。
R2021a より前では、コンマを使用して名前と値をそれぞれ区切り、Name を引用符で囲みます。
例: imread("myImage.tif","Index",5) は、TIFF ファイルの 5 番目のイメージを読み取ります。
GIF ファイル
読み取るフレーム。正の整数、整数ベクトル、または "all" として指定します。たとえば、3 を指定した場合、imread はファイルの 3 番目のフレームを読み取ります。"all" を指定した場合、imread はすべてのフレームをファイル内の順序で読み取って返します。
例: 5
例: 1:10
例: "all"
データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | string | char
JPEG ファイル
JPEG 2000 ファイル
読み取る領域の境界。{ という形式の cell 配列として指定します。rows,cols} の値は読み取る行の範囲を示し、rows の値は読み取る列の範囲を示します。cols と rows は両方とも、1 ベースのインデックスを含む 2 要素ベクトルでなければなりません。たとえば、colsPixelRegion={[1 2] [3 4]} は、イメージ データの第 1 行と第 2 行、第 3 列と第 4 列で囲まれた領域を読み取ります。
メモ
ReductionLevel を正の値として指定する場合は、解像度を下げた後のイメージを基準として PixelRegion を指定します。
例: {[1 100] [4 500]}
イメージ解像度の低減。非負の整数として指定します。ReductionLevel を値 として指定すると、イメージの解像度は L2 分の 1 に低減されます。低減レベルは、Limfinfo 関数の出力の WaveletDecompositionLevels フィールドで指定された分解レベルの総数によって制限されます。
データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64
MATLAB 7.9 (R2009b) 以前との互換性。false または true として指定します。V79Compatible を true として指定した場合、返されるグレースケールまたは RGB のイメージは、旧バージョンの imread (MATLAB 7.9 (R2009b) 以前) と互換性をもちます。
データ型: logical
PNG ファイル
背景色。"none"、正の整数、範囲 [0, 1] の数値、または範囲 [0, 1] の数値の 3 要素ベクトルとして指定します。BackgroundColor を "none" として指定した場合、imread 関数は合成を実行しません。それ以外の場合、imread 関数は透明ピクセルに背景色をブレンドします。
入力イメージがインデックス付きの場合、
BackgroundColorの値は、範囲 [1,P] の整数でなければなりません。ここで、Pは、カラーマップの長さです。入力イメージがグレースケールの場合、
BackgroundColorの値は、範囲 [0, 1] の数値でなければなりません。入力イメージが RGB の場合、
BackgroundColorの値は範囲 [0, 1] の数値の 3 要素ベクトルでなければなりません。
BackgroundColor の既定値は、出力引数 transparency の有無およびイメージの種類によって異なります。
transparency出力引数を要求した場合、BackgroundColorの既定値は"none"です。transparency出力を要求しなかった場合、次のようになります。ファイルに背景色チャンクが含まれている場合、そのチャンクの色が
BackgroundColorの既定値になります。ファイルに背景色チャンクが含まれていない場合は、次のようになります。
入力イメージがインデックス付きの場合、
BackgroundColorの既定値は1になります。入力イメージがグレースケールの場合、
BackgroundColorの既定値は0になります。入力イメージが RGB の場合、
BackgroundColorの既定値は[0 0 0]になります。
例: 2
例: 0.5
例: [0.2 0.8 0.5]
データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | string | char
TIFF ファイル
R2024b 以降
イメージの向きの自動設定。false または true として指定します。AutoOrient を true として指定すると、イメージ ファイルの Exif の Orientation タグに従って filename 内のデータが変換されます。AutoOrient を false として指定した場合、imread 関数は Exif の Orientation タグを無視します。
メモ
AutoOrient を true として指定することに加えて PixelRegion を指定すると、imread 関数はまず指定された領域を読み取り、次にファイル内の Exif の Orientation タグに従って領域を変換します。
データ型: logical
読み取るイメージ。正の整数として指定します。たとえば、Index の値が 3 の場合、imread 関数はファイル内の 3 番目のイメージを読み取ります。
データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64
イメージに関する情報。imfinfo 関数から返された構造体配列として指定します。名前と値の引数 Info を使用すると、複数のイメージを含む TIFF ファイルから imread がより高速にイメージを検出できるようになります。
データ型: struct
読み取る領域の境界。{ という形式の cell 配列として指定します。rows,cols} の値は読み取る行の範囲を示し、rows の値は読み取る列の範囲を示します。cols と rows は両方とも、1 ベースのインデックスを含む 2 要素または 3 要素ベクトルでなければなりません。cols
またはrowsのcols[という形式の 2 要素ベクトルで、読み取る最初と最後の行または列を指定します。たとえば、startstop]{[1 2] [3 4]}は、イメージ データの第 1 行と第 2 行、第 3 列と第 4 列で囲まれた領域を読み取ります。またはrowsのcols[という形式の 3 要素ベクトルで、ステップ サイズとともに、読み取る最初と最後の行または列を指定します。たとえば、startstepstop]{[1 2 10] [4 3 12]}は、イメージ データの第 1 行と第 10 行、第 4 列と第 12 列で囲まれた領域を、水平ステップ サイズ 2、垂直ステップ サイズ 3 で読み取ります。
例: {[1 100] [4 500]}
例: {[100 5 200] [250 2 500]}
出力引数
イメージ データ。配列として返されます。イメージ データに 行および m 列が含まれている場合、次のようになります。n
ファイルにグレースケール イメージが含まれている場合、
Aは、イメージ内のピクセルの強度を表す値の行m列の配列です。nファイルにインデックス付きイメージが含まれている場合、
Aは、mapの行を参照するインデックス値の行m列の配列です。nファイルに RGB (トゥルーカラー) イメージが含まれている場合、
Aは×m×3 の配列です。nファイルが TIFF ファイルで、CMYK 色空間を使用するカラー イメージを含む場合、
Aは×m×4 の配列です。n
A のクラスは、イメージの形式と、イメージ データのビット深度によって異なります。詳細については、アルゴリズムを参照してください。
A 内のインデックス付きイメージ データに関連付けられたカラーマップ。クラス double の 3 列の行列として返されます。
透明度の情報。行列として返されます。
PNG ファイルの場合:
アルファ チャネルが存在し、名前と値の引数
BackgroundColorを指定しなかった場合、transparencyがアルファ チャネルになります。アルファ チャネルが存在しない場合、または名前と値の引数
BackgroundColorを指定した場合、transparencyは空になります。
CUR および ICO のファイルの場合、
transparencyは AND (不透明度) マスクです。
詳細
ビット深度は、各イメージのピクセルを表すために使われるビット数です。
ビット深度は、サンプル単位のビットとピクセル単位のサンプルを乗算することで計算されます。そのため、各色要素 (またはサンプル) に 8 ビットおよびピクセルあたり 3 サンプルを使用する形式のビット深度は 24 になります。場合によっては、ビット深度に関連するサンプル サイズがあいまいなことがあります。たとえば、48 ビットのビット深度は、6 つの 8 ビット サンプル、4 つの 12 ビット サンプル、または 3 つの 16 ビット サンプルを表す可能性があります。このあいまいさを避けるためのサンプル サイズの情報は、アルゴリズムを参照してください。
ヒント
名前と値の引数
AutoOrientは、JPEG、TIFF (R2024b 以降)、HEIF、または HEIC (R2025a 以降) 形式のファイルでのみ機能します。他の形式のファイルでAutoOrient引数を指定した場合、この引数は効果をもちません。この動作により、コレクション内の一部のファイルが JPEG、TIFF (R2024b 以降)、HEIF、または HEIC (R2025a 以降) 形式でない場合でも、AutoOrient引数を使用してイメージのコレクションの向きの自動設定を試行できます。次の表に、名前と値の引数
AutoOrientがtrueである場合に、imread関数が Exif のOrientationタグの値を使用してイメージ データをどのように変換するのかを示します。Orientationフィールドの値変換の説明 1変換なし 2縦軸を中心に鏡映 3180 度回転 4縦軸を中心に鏡映してから、180 度回転 5縦軸を中心に鏡映してから、反時計回りに 90 度回転 6時計回りに 90 度回転 7縦軸を中心に鏡映してから、時計回りに 90 度回転 8反時計回りに 90 度回転 (R2024b 以降)
アルゴリズム
ほとんどのイメージ ファイル形式では、関数 imread は、色平面あたり 8 ビット以下を使用して、イメージ ピクセルを格納します。次の表に、ファイル形式で使用されるビット深度に応じて返されるイメージ配列 A のデータ型をリストします。
ファイルのビット深度 |
|
|---|---|
1 ビット/ピクセル |
|
2 ~ 8 ビット/色平面 |
|
9 ~ 16 ビット/ピクセル |
16 ビット BMP パック形式 (5-6-5) の場合、MATLAB は |
以下のセクションでは、形式名のアルファベット順に示した、特定の形式のサポートに関する情報を提供します。
次の表に、出力イメージ データ配列がサポートするビット深度およびデータ型をリストします。
| サポートされているビット深度 | 圧縮なし | RLE 圧縮 | 出力クラス | メモ |
|---|---|---|---|---|
| 1 ビット | ✓ | – | logical | – |
| 4 ビットまたは 8 ビット | ✓ | ✓ | uint8 | – |
| 16 ビット | ✓ | – | uint8 | 1 サンプル/ピクセル |
| 24 ビット | ✓ | – | uint8 | 3 サンプル/ピクセル |
| 32 ビット | ✓ | – | uint8 | 3 サンプル/ピクセル (1 バイトのパディング) |
次の表に、出力イメージ データ配列がサポートするビット深度およびデータ型をリストします。
| サポートされているビット深度 | 圧縮なし | 圧縮 | 出力クラス |
|---|---|---|---|
| 1 ビット | ✓ | – | logical |
| 4 ビット | ✓ | – | uint8 |
| 8 ビット | ✓ | – | uint8 |
メモ
既定では、Microsoft® Windows® のカーソルは 32 x 32 ピクセルです。MATLAB のポインターは 16 x 16 でなければならないので、イメージをスケーリングする必要がある場合があります。この操作を行うために imresize 関数を使用できます。
次の表に、出力イメージ データ配列がサポートするビット深度およびデータ型をリストします。
| サポートされているビット深度 | 圧縮なし | 圧縮 | 出力クラス |
|---|---|---|---|
| 1 ビット | ✓ | – | logical |
| 2 ~ 8 ビット | ✓ | – | uint8 |
次の表に、出力イメージ データ配列がサポートするビット深度およびデータ型をリストします。
| サポートされているビット深度 | カラーマップを含むラスター イメージ | カラーマップなしのラスター イメージ | 出力クラス | メモ |
|---|---|---|---|---|
| 8 ビット | ✓ | ✓ | uint8 | – |
| 24 ビット | – | ✓ | uint8 | 3 サンプル/ピクセル |
次の表に、HEIF ファイルと HEIC ファイルの関数でサポートされるビット深度、圧縮、およびデータ型をリストします。 (R2025a 以降)
| サポートされているビット深度 | 圧縮なし | 圧縮 | 出力クラス | メモ |
|---|---|---|---|---|
| 8 ビット | ✓ | – | uint8 | RGB |
| 10 ビット | ✓ | – | uint8 | RGB |
| 12 ビット | ✓ | – | uint8 | RGB |
CUR — Cursor ファイルを参照してください。
imread 関数は、ベースライン JPEG イメージと、一般的に使用されるいくつかの拡張子をもつ JPEG イメージを読み込みます。JPEG 2000 ファイルのサポートについては、JPEG 2000 — Joint Photographic Experts Group 2000を参照してください。次の表に、出力イメージ データ配列がサポートするビット深度およびデータ型をリストします。
| 1 サンプルあたりのサポートされているビット数 | 非可逆圧縮 | 可逆圧縮 | 出力クラス | メモ |
|---|---|---|---|---|
| 8 ビット | ✓ | ✓ | uint8 | グレースケールまたは RGB |
| 12 ビット | ✓ | ✓ | uint16 | グレースケールまたは RGB |
| 16 ビット | – | ✓ | uint16 | グレースケール |
JPEG ファイルについては、JPEG — Joint Photographic Experts Groupを参照してください。次の表に、出力イメージ データ配列がサポートするビット深度およびデータ型をリストします。
1 サンプルあたりのサポートされているビット数 | 非可逆圧縮 | 可逆圧縮 | 出力クラス | メモ |
|---|---|---|---|---|
| 1 ビット | ✓ | ✓ | logical | グレースケールのみ |
| 2 ~ 8 ビット | ✓ | ✓ | uint8 または int8 | グレースケールまたは RGB |
| 9 ~ 16 ビット | ✓ | ✓ | uint16 または int16 | グレースケールまたは RGB |
メモ
インデックス付き JPEG 2000 イメージはサポートされません。JP2/JPX ファイルでは JP2 互換の色空間のみがサポートされます。既定では、imread 関数は、ファイルに保存されている順序ですべてのイメージ チャネルを返します。
次の表に、出力イメージ データ配列がサポートするビット深度およびデータ型をリストします。
| サポートされているビット深度 | raw バイナリ | ASCII (プレーン) エンコード | 出力クラス |
|---|---|---|---|
| 1 ビット | ✓ | ✓ | logical |
次の表に、出力イメージ データ配列がサポートするビット深度およびデータ型をリストします。
| サポートされているビット深度 | 出力クラス | メモ |
|---|---|---|
| 1 ビット | logical | グレースケール |
| 8 ビット | uint8 | グレースケールまたはインデックス付き |
| 24 ビット | uint8 | RGB (3 つの 8 ビット サンプル/ピクセル) |
次の表に、出力イメージ データ配列がサポートするビット深度およびデータ型をリストします。
| サポートされているビット深度 | raw バイナリ | ASCII (プレーン) エンコード | 出力クラス | メモ |
|---|---|---|---|---|
| 8 ビット | ✓ | – | uint8 | – |
| 16 ビット | ✓ | – | uint16 | – |
| 任意 | – | ✓ | 1 ~ 8 ビット: 9 ~ 16 ビット: | 値はスケーリングされます。 |
次の表に、出力イメージ データ配列がサポートするビット深度およびデータ型をリストします。
| サポートされているビット深度 | 出力クラス | メモ |
|---|---|---|
| 1 ビット | logical | グレースケール |
| 2 ビットまたは 4 ビット | uint8 | グレースケール |
| 8 ビット | uint8 | グレースケールまたはインデックス付き |
| 16 ビット | uint16 | グレースケールまたはインデックス付き |
| 24 ビット | uint8 | RGB (3 つの 8 ビット サンプル/ピクセル) |
| 48 ビット | uint16 | RGB (3 つの 16 ビット サンプル/ピクセル) |
次の表に、出力イメージ データ配列がサポートするビット深度およびデータ型をリストします。
| サポートされているビット深度 | raw バイナリ | ASCII (プレーン) エンコード | 出力クラス |
|---|---|---|---|
| 16 ビットまで | ✓ | – | uint8 |
| 任意 | – | ✓ | uint8、uint16 または double |
次の表に、出力イメージ データ配列がサポートするビット深度およびデータ型をリストします。
| サポートされているビット深度 | 出力クラス | メモ |
|---|---|---|
| 1 ビット | logical | ビットマップ |
| 8 ビット | uint8 | インデックス付き |
| 24 ビット | uint8 | RGB (3 つの 8 ビット サンプル/ピクセル) |
| 32 ビット | uint8 | アルファを含む RGB (4 つの 8 ビット サンプル/ピクセル) |
TIFF ベースのイメージ ファイル形式。imread 関数では、非圧縮イメージと圧縮イメージの読み取りがサポートされます (JPEG 2000 圧縮を使用したイメージを含む)。詳細については、TIFF — Tagged Image File Formatを参照してください。
imread 関数では、TIFF 仕様または LibTIFF でサポートされているほとんどのイメージが読み取られ、次の TIFF 機能がサポートされます。
任意のサンプル数/ピクセル。
CCITT グループ 3 および 4 FAX、Packbits、JPEG、LZW、Deflate、ThunderScan 圧縮、および非圧縮イメージ。
論理、グレースケール、インデックス付きカラー、トゥルーカラー、およびハイパースペクトルのイメージ。
RGB、CMYK、CIELAB、ICCLAB の色空間。カラー イメージが CMYK 色空間を使用している場合、
Aは×m×4 の配列です (nとmはそれぞれ、イメージ データの行数と列数を表します)。ファイルで使用されている色空間を判別するには、nimfinfoを使用してグラフィックス ファイルの情報を取得し、PhotometricInterpretationフィールドの値を参照してください。ファイルに CIELAB カラー データが含まれている場合、imread関数はこのデータを ICCLAB に変換してから MATLAB ワークスペースに取り込みます。TIFF の 8 ビットまたは 16 ビットの CIELAB エンコード値には符号付きと符号なしのデータ型が混在しており、単一の MATLAB 配列として表現できないため、この変換が必要になります。タイルまたは走査線に整理されたデータ。
imread 関数は、次のように TIFF イメージを読み取って変換します。
YCbCr イメージは RGB 色空間に変換されます。
グレースケール イメージはすべて、黒 =
0、白 = 最大値として読み取られます。1 ビット イメージは
logicalクラスとして返されます。16 ビットの浮動小数点イメージはクラス
singleとして返されます。CIELAB イメージは ICCLAB 色空間に変換されます。
次の表に、出力イメージ データ配列のサポートされているビット深度、圧縮、およびデータ型をリストします。
| サポートされているビット深度 | ZPixmaps | XYBitmaps | XYPixmaps | 出力クラス |
|---|---|---|---|---|
| 1 ビット | ✓ | – | ✓ | logical |
| 8 ビット | ✓ | – | – | uint8 |
拡張機能
使用上の注意および制限:
この関数は、8 ビットの JPEG イメージの読み取りのみをサポートします。入力引数
filenameは有効な絶対パスまたは相対パスでなければなりません。コード生成は、名前と値の引数
AutoOrientをサポートしていません。この関数は、プリコンパイルされたプラットフォーム固有の共有ライブラリ (Image Processing Toolbox)を使用するコードを生成します。
コード生成時にランタイム エラーのチェックを無効にし、その後でランタイム エラーが発生した場合、以下のいずれかの方法でエラーが報告されます。
filenameがコンパイル時の定数でない場合、空の行列が返されます。filenameがコンパイル時の定数である場合、filenameと同じ次元の黒のイメージが返されます。
ランタイム エラー チェックは、組み込みターゲット用に生成されたコードでは無効です。
8 ビットの JPEG イメージで
imread関数を使用する、組み込みターゲット (NVIDIA® Jetson™ など) のコードを生成できます。次の手順に従って、8 ビットの JPEG イメージを読み取るために組み込みターゲットで使用できるコードを生成します。 (R2024b 以降)適切な構成、ハードウェア、および入力設定で MATLAB Coder™ を使用して、
imread関数を使用する MATLAB コードの C/C++ ソース コードと makefile を生成します。ターゲット用に
libjpeg-turboをコンパイルし、共有ライブラリとヘッダー ファイルをインストールします。(あるいは、一部のターゲットでは、事前にビルドされたlibjpeg-turboバイナリを使用したり、ターゲット上でlibjpeg-turboコンパイルしたりできる場合があります。)生成されたコードを、ターゲット用にビルドされた
libjpeg-turboとリンクしてコンパイルします。
使用上の注意および制限:
この関数は、8 ビットの JPEG イメージの読み取りのみをサポートします。入力引数
filenameは有効な絶対パスまたは相対パスでなければなりません。コード生成は、名前と値の引数
AutoOrientをサポートしていません。この関数は、プリコンパイルされたプラットフォーム固有の共有ライブラリ (Image Processing Toolbox)を使用するコードを生成します。
コード生成時にランタイム エラーのチェックを無効にし、その後でランタイム エラーが発生した場合、以下のいずれかの方法でエラーが報告されます。
filenameがコンパイル時の定数でない場合、空の行列が返されます。filenameがコンパイル時の定数である場合、filenameと同じ次元の黒のイメージが返されます。
ランタイム エラー チェックは、組み込みターゲット用に生成されたコードでは無効です。
8 ビットの JPEG イメージで
imread関数を使用する、組み込みターゲット (NVIDIA Jetson など) のコードを生成できます。次の手順に従って、8 ビットの JPEG イメージを読み取るために組み込みターゲットで使用できるコードを生成します。 (R2024b 以降)適切な構成、ハードウェア、および入力設定で MATLAB Coder を使用して、
imread関数を使用する MATLAB コードの C/C++ ソース コードと makefile を生成します。ターゲット用に
libjpeg-turboをコンパイルし、共有ライブラリとヘッダー ファイルをインストールします。(あるいは、一部のターゲットでは、事前にビルドされたlibjpeg-turboバイナリを使用したり、ターゲット上でlibjpeg-turboコンパイルしたりできる場合があります。)生成されたコードを、ターゲット用にビルドされた
libjpeg-turboとリンクしてコンパイルします。
使用上の注意および制限:
imreadは、backgroundPoolまたは Parallel Computing Toolbox™ のThreadpoolを使用してバックグラウンドでimreadを実行する場合、階層データ形式 (HDF)、SVS、TIFF、HEIF、または HEIC ファイルの読み取りはサポートしません。
詳細については、スレッドベースの環境での MATLAB 関数の実行を参照してください。
バージョン履歴
R2006a より前に導入imread を使用して HEIF と HEIC のイメージ ファイルに関する情報を取得できるようになりました。
この機能には、MATLAB Support for HEIF/HEIC Image Format が必要です。これは MATLAB デスクトップ環境でのみ利用できます。ただし、HEIF と HEIC のイメージ ファイルをスタンドアロン アプリケーションのワークフローで使用することはできません。
サポート パッケージをインストールするには次のようにします。
MATLAB の [ホーム] タブの [環境] セクションで、[アドオン]、[アドオンの探索] を選択します。
アドオン エクスプローラーの検索バーで MATLAB Support for HEIF/HEIC Image Format を検索し、MATLAB Support for HEIF/HEIC Image Format アドオンをクリックします。
名前と値の引数 AutoOrient を使用して、Exif の Orientation タグ値を JPEG および TIFF イメージに適用します。
MATLAB Coder を使用して、8 ビットの JPEG イメージで imread 関数を使用するコードを生成し、生成されたコードを組み込みターゲットで使用できます。
R2021b 以前のリリースの MATLAB では、JPEG 2000 イメージ間でピクセル値が異なる可能性があります。
追加の引数を指定せずに GIF ファイルを読み取ると、関数 imread は既定で最初のフレームのみを読み取ります。以前は、imread はファイル内のすべてのフレームを既定で読み取りました。
JPEG 2000 圧縮が含まれる Aperio SVS 顕微鏡イメージ ファイルと TIFF イメージ ファイルを読み取ることができます。
複数のイメージを含む PGM、PBM、または PPM ファイルから指定したイメージを読み取ることができます。
参考
関数
ライブ エディター タスク
トピック
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Web サイトの選択
Web サイトを選択すると、翻訳されたコンテンツにアクセスし、地域のイベントやサービスを確認できます。現在の位置情報に基づき、次のサイトの選択を推奨します:
また、以下のリストから Web サイトを選択することもできます。
最適なサイトパフォーマンスの取得方法
中国のサイト (中国語または英語) を選択することで、最適なサイトパフォーマンスが得られます。その他の国の MathWorks のサイトは、お客様の地域からのアクセスが最適化されていません。
南北アメリカ
- América Latina (Español)
- Canada (English)
- United States (English)
ヨーロッパ
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)
