このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
イメージのインポート、処理およびエクスポートの基本
この例では、ワークスペースにイメージを読み取り、イメージのコントラストを調整した後、調整したイメージをファイルに書き込む方法を説明します。
手順 1: イメージの読み取りと表示
関数imread
を使用して、イメージをワークスペースに読み取ります。この例では、ツールボックスに含まれるサンプル イメージのうち pout.tif
というファイル名の少女のイメージを読み取り、I
という配列に格納します。関数 imread
は、このファイルからグラフィックス ファイル形式が TIFF (Tagged Image File Format) であると推測します。
I = imread("pout.tif");
関数imshow
を使用してこのイメージを表示します。イメージ ビューアーアプリでイメージを表示することもできます。このアプリは、イメージを表示し、いくつかの一般的なイメージ処理タスクを実行するための統合環境を提供します。イメージ ビューアー アプリは imshow
のイメージ表示機能をすべて備えているほか、スクロール バー、ピクセル領域ツール、イメージ情報ツール、コントラスト調整ツールなどイメージのナビゲートや確認のためのツールも備えています。
imshow(I)
手順 2: イメージがワークスペースにどのように表示されるかの確認
関数 whos
を使用して、イメージ データが関数 imread
によりどのようにワークスペースに格納されているかを確認します。この変数はワークスペース ブラウザーで確認することもできます。関数 imread
は、変数 I
にイメージ データを返します。これは uint8
データの 291 行 240 列の要素で構成される配列です。
whos I
Name Size Bytes Class Attributes I 291x240 69840 uint8
手順 3: イメージ コントラストの改善
イメージのピクセル強度の分布を表示します。pout.tif
はコントラストが若干低いイメージです。イメージ内の強度の分布を見るには、関数 imhist
を呼び出してヒストグラムを作成します イメージの強度の範囲が狭いことがヒストグラムによって示されている点に注目してください。この範囲は [0, 255] の有効範囲に及んでいません。また、イメージには高い値と低い値がなく、コントラストが良好ではありません。
imhist(I)
関数imhist
を使用してイメージのコントラストを改善し、結果を表示します。ヒストグラム均等化を実行するとイメージの範囲全域に強度値が拡散されます。このツールボックスには、imadjust
や adapthisteq
などのコントラスト調整を実行する他の関数や、イメージ ビューアー アプリで利用できるコントラスト調整ツールなどの対話型ツールが含まれています。
I2 = histeq(I); imshow(I2)
関数 imhist
を再び呼び出して、均等化されたイメージ I2
のヒストグラムを作成します。2 つのヒストグラムを比較すると、I2
のヒストグラムが I
のヒストグラムより範囲全体に拡散していることがわかります。
figure imhist(I2)
手順 4: 調整したイメージのファイルへの書き込み
調整した新たなイメージ I2
をファイルに書き込むには、関数imwrite
を使用します。この例では、ファイル名に拡張子 ".png"
が含まれているため、関数 imwrite
はイメージを Portable Network Graphics (PNG) 形式でファイルに書き込みます。他のファイル形式を指定することもできます。
imwrite(I2,"pout2.png");
手順 5: 新たに書き込んだファイルの内容の確認
関数imfinfo
を使用して、ファイル内のイメージに関する情報 (形式、サイズ、幅、高さなど) を表示します。
imfinfo("pout2.png")
ans = struct with fields:
Filename: '/tmp/Bdoc23b_2463843_965647/tpbe76c22a/images-ex89505080/pout2.png'
FileModDate: '04-Dec-2023 12:42:48'
FileSize: 36938
Format: 'png'
FormatVersion: []
Width: 240
Height: 291
BitDepth: 8
ColorType: 'grayscale'
FormatSignature: [137 80 78 71 13 10 26 10]
Colormap: []
Histogram: []
InterlaceType: 'none'
Transparency: 'none'
SimpleTransparencyData: []
BackgroundColor: []
RenderingIntent: []
Chromaticities: []
Gamma: []
XResolution: []
YResolution: []
ResolutionUnit: []
XOffset: []
YOffset: []
OffsetUnit: []
SignificantBits: []
ImageModTime: '4 Dec 2023 17:42:48 +0000'
Title: []
Author: []
Description: []
Copyright: []
CreationTime: []
Software: []
Disclaimer: []
Warning: []
Source: []
Comment: []
OtherText: []
参考
imread
| imshow
| imwrite
| imfinfo