• Tidak ada hasil yang ditemukan

MATLABによる画像・映像処理 - Sophia

N/A
N/A
Protected

Academic year: 2024

Membagikan "MATLABによる画像・映像処理 - Sophia"

Copied!
20
0
0

Teks penuh

(1)

MATLABによる画像・映像処理

目的:

画像・映像の表現方式を理解する共に、

基本的な画像処理の効果を実感すること

2013年度情報理工学演習Ⅲ

上智大学理工学部情報理工学科 川中 彰

(2)

1.輝度(またはモノクロ)画像

モノクロ画像のパラメータ 画像サイズ: M×N

諧調レベル数:

記録用: 8ビット(16ビット)符号なし整数表現uint8

uint16)、0から255(65535)の画素値

演算用 倍精度浮動小数点数表現(double型)、0から1.0 の画素値

MATLABにおいては、モノクロ画像データはM×Nの行列と して表現される。行列を示すMATLAB変数はその属性とし てデータ型とデータのサイズと画素値の型などを持ってい る。

(3)

行列によるモノクロ画像の表現

行列の作成

>> A=[0 64; 128 255]

倍精度小数型

>> B=uint8(A) 8

ビット符号なし整数

※ uint8: unsigned integer 8bit

>> C=A/2

倍精度小数型

>> whos

定義した行列の属性の表示

Name Size Bytes Class Attributes

A 2x2 32 double 演算処理用

B 2x2 4 uint8 保存、伝送用

C 2x2 32 double

(4)

行列で表された画像の表示

画像の表示

>> imshow(A)

※ file → close

fig window

を閉じる

>> imshow(resize(A,200,’nearest’))

※ 200

倍に拡大して表示。最近傍近似

※ double

型の画像は画素値

0

1

出なければ

ならない。

1

以上は

1

として表示。

>> imshow(resize(B,200,’nearest’))

※ B

8

ビット符号なし整数なので、諧調が出てい る。
(5)

画像の読み込みと表示

画像の読み込み

関数名 imread('ファイル名')

画像の標準フォーマットであるjpgtiffgifbmppngなどに対応してお り、ファイルの拡張子がデータの内容と一致している場合に適切に読み出 される。

画像の表示

関数名 imshow(画像変数名) または imshow('ファイル名' 画像のファイル情報の読み出し

関数名 imfinfo('ファイル名')

出力 ・ファイル名 ・ファイルサイズ ・画像の縦・横サイズ

・Bit Depth  ・カラータイプ

ファイルへの書き出し

関数名 imwrite(画像変数名, 'ファイル名')

(6)

モノクロ画像の属性の表示例

※使用する画像のコピー (xtermのコマンドラインにおいて)

=> cp /thome/lct/lct-d189/image/gray?.bmp gray?.bmp

=> cp /thome/lct/lct-d189/image/color?.bmp color?.bmp ここで、?は学生番号を5で割った余りとする。

※プロンプト>>は、Matlabのコマンドライン。

>>imfinfo(‘gray?.bmp’) ans =

Filename: ‘gray?.bmp'

FileModDate: '07-May-2010 10:18:43' FileSize: 66614

Format: 'bmp'

FormatVersion: 'Version 3 (Microsoft Windows 3.x)' Width: 256

Height: 256 BitDepth: 8

ColorType: 'indexed' FormatSignature: 'BM' NumColormapEntries: 256

Colormap: [256x3 double]

(7)

画像ファイルの属性と表示

次の命令は、画像ファイル

gray?.bmp

を読み込み、

画像、画像のサイズ、および画素の深さを表示 するものである。

>>imshow(‘gray?.bmp’); %

画像の表示 または

>>G=imread(‘gray?.bmp’); %

変数への読み込み

>>imshow(G); %

画像の表示

>>GInfo=imfinfo(‘gray?.bmp’); %画像ファイルの属性

>>Ginfo.Height %画像の縦サイズ

>>Ginfo.Width %画像の横サイズ

>>Ginfo.BitDepth %画像の表現可能な諧調ビット数

(8)

諧調レベル数について ( 例1−1)

次のプログラムは、ファイル名gray?.bmpを持つ輝度画 像データを変数Gに読み出し、画像の階調レベル数を2分の1

(128諧調画像)としたGLを作成し、そのヒストグラムと共にモニ ターに表示するプログラム例を示している。

% 画像の階調レベルの変更

G=imread(‘gray?.bmp’); %画像の読み込み

GL=floor(G/2+0.5)*2; %128諧調画像の作成

figure(1);

subplot(2,2,1); %22列の図形領域の1番目の指定

imshow(G); %画像の表示

subplot(2,2,2) ; %22列の図形領域の2番目の指定

imhist(G); %画像変数Gのヒストグラムの表示

suplot(2,2,3);

imshow(GL);

subplot (2,2,4);

imshow(GL);

(9)

画像の解像度

次の関数プログラムは、画像の解像度を 2

分の

1

に変更するものである。

ここでは、画像のサイズは変更しないで、

近傍の

4

画素をそれらの画素値の平均で置き 換えることにより、解像度を落としている。
(10)

解像度削減関数プログラム(例1−2)

function GL = lowRes( G ) GL=G;

s=size(G); m=s(1); n=s(2);

for i=1:m/2 ii=(i-1)*2;

for j=1:n/2 jj=(j-1)*2;

M=sum(sum(G(ii+1:ii+2,jj+1:jj+2)/double(2*2)));

GL(ii+1:ii+2,jj+1:jj+2)=floor(M+0.5);

end end

end

(11)

低解像度画像の導出(例1−3)

次のプログラムは、画像の解像度を2分の1にした画像を作成し、

オリジナル画像と共にモニターに表示するプログラムである。

/% 画像の解像度の変更 %/

G=imread(‘gray?.bmp');

GLR=lowRes(G,);

figure(1);

subplot (2,2,1);

imshow(G);

subplot (2,2,2);

imhist(G);

suplot (2,2,3);

imshow(GLR);

suplot(2,2,4);

imhist(GLR);

(12)

カラー画像の表現

カラー画像のパラメータ 画像サイズ: M×N

色成分: RGBなど3成分またはYMCKなど4成分

RBGRed, Green, Blue

YMCK: Yellow, Magenta, Cyan, Black ) 諧調レベル数: 各成分について

記録用 8ビット(16ビット)符号なし整数表現uint8

unit16)、256(65536)レベル、0から255(65535) 画素値

演算用 倍精度浮動小数点数表現(double型)、0から 1.0の画素値

(13)

MATLAB のカラー画像表現

MATLAB

においては、カラー画像は画像サイズ

M

×

N

、色成分数を

C

とすると

M

×

N

×

C

の変 数によって表現され、その属性として画像サイ ズ、色成分数、成分値の型を持っている。

配列名を

F

とすると、各色成分は

F(:,:,1), F(:, :,2), …

と表される。

RGB

カラー画像では、

R

成分が

F(:,:,1), G

成分が

F(:, :,2), B

成分が

F(:, :,3)

となる
(14)

行列によるカラー画像の表現

行列の作成

>> F=uinit8(zeros(64,64,3)); 符号なし整数

※ uint8: unsigned integer 8bit

>> F(1:32,1:32,1)=255;

赤の成分(左上)

>> F(1:32,33:64,2)=255 ;

緑の成分(右上)

>> F(33:64,1:32,3)=255;

緑の成分(右上)

>> imshow(F);

※作成された画像はファイル名rei.jpgとして、保存しておく。

(15)

カラー画像の読み出しと表示

モノクロ画像と同じく、読み込み、表示、ファイル への書き出しには次の二つの関数を用いること ができる。

画像の読み込み

関数名

imread('

ファイル名

')

画像の表示

関数名

imshow(

画像変数名

)

又はファイル名

ファイルへの書き出し

関数名

imwrite(

画像配列名

, '

ファイル名

')

(16)

カラー画像の属性表示例

コマンド Finfo=imfinfo(‘color?.bmp’) Finfo =

Filename: ‘color?.bmp'

FileModDate: '16-May-2012 09:25:54' FileSize: 196662

Format: 'bmp'

FormatVersion: 'Version 3 (Microsoft Windows 3.x)' Width: 256

Height: 256 BitDepth: 24

ColorType: 'truecolor' FormatSignature: 'BM'

(17)

カラー画像の色成分の処理(例1−4)

次のプログラムは、RGBカラー画像color?.bmpの階調 16分の1にする例を示している。

F=imread(‘color?.bmp');

% 画像の階調レベルの変更 FL=floor(F/16+0.5)*16;

% 各成分に諧調レベル数の変換を行う場合 FL(:,:,1)=floor(F(:,:,1)/16.0+0.5)*16;

FL(:,:,2)=floor(F(:,:,2)/16.0+0.5)*16;

FL(:,:,3)=floor(F(:,:,3)/16.0+0.5)*16;

figure(1);

subplot (2,1,1);

imshow(F);

suplot( 2,1,2);

imshow(FL);

※課題3 http://akira.ee.sophia.ac.jp/enshu3/kadai34.pdf

(18)

提出課題3

指定されたカラー画像を読み込み、諧調レベル

数を

16 分の1にした画像を求め、オリジナル画像 と共に表示しなさい。

また、2つの画像の R 、 G 、 B 成分のヒストグラム も表示しなさい。

( subplot は 4 行 2 列を指定し、ファイル名は

kadai3.jpg として提出する)

※参考 提出課題1を変更する

(19)

提出課題4

指定されたカラー画像を読み込み、解像度を4分 の

1

にした画像を求め、オリジナル画像と共に表示 しなさい。

また、

2

つの画像の

R

G

B

成分のヒストグラムも 表示しなさい。(

subplot

4

2

列とし、ファイル名 は

kadai4.jpg

とする)

解像度の変更には、関数

lowRes2

を用いるが、こ の関数は

R,G,B

の各成分ごとに用いること。

※参考 提出課題3 提出課題2

(20)

モノクロ画像 G の解像度を k 分の1にする関数

function GL = lowRes2( G,k ) GL=G;

s=size(G); m=s(1); n=s(2);

for i=1:m/k ii=(i-1)*k;

for j=1:n/k jj=(j-1)*k;

M=sum(sum(G(ii+1:ii+k,jj+1:jj+k)/double(k*k)));

GL(ii+1:ii+k,jj+1:jj+k)=floor(M+0.5);

endend end

※例1−2(rei1_2.m)の 2 を k に変更している。

Referensi

Dokumen terkait

緊急企画 新型感染症との共存 緊急企画 新型感染症との共存 1.はじめに 未曽有の国難となった新型コロナウイル スの感染拡大に対処するため政府は、令和 2年3月28日に新型コロナウイルス感染症 対策本部を設置し、『新型コロナウイルス 感染症対策の基本的対処方針』(以下『基 本的対処方針』)1)を決定した。そして、 政府や地方公共団体、医療関係者、専門家、

本計画は、市町地域防災計画や都道府県災害廃棄物処理計 画、災害廃棄物対策指針(環境省:平成26年3月)等の内容 と整合性を図り、具体的かつ実効性の高い計画を行います。 被害想定等を基に、災害廃棄物の発生量を廃棄物種類別に推計します。 なお、避難所等から発生するごみ・し尿についても発生量を推計し、必要 な仮設トイレの設置数についても試算を行います。

学年 2 教科 理科 科目 生物 単位 3 週時数 【実験・実習】・身の回りの特定外来生物の活動を動画で知る ・よこやまの道周辺をトレッキングしながら周辺環境を実感しつつ、野生生物調査を行う 【年間の目標】 ①自然環境や生物に関連する基本的な概念や原理・法則の理解を深め、科学的に探究するために必要な観察、実験などに関する 基本的な技能を身に付けるようにする。

【講習会のご案内】 われわれの住む地表空間をマネージするための リモートセンシング画像の解析とその応用 〜MultiSpecを用いたハンズオンワークショップ〜 講師 飯坂譲二(カナダ・ビクトリア大学地理学科教授) ■ワークショップの概要 地球の温暖化の問題をはじめ、地球環境問題は最近の世界の重要な関心事の一つとなって

月 時数 単元名・教材名 学習指導要領との対応 〈学習事項(1)・言語活動例(2)〉 時 学習活動 評価規準 1 11 (話す聞 く3) 六 場面 や人 物の 様子 をく わしく読もう □様子を詳しく読んで,読み方を工夫して音読発 表会を開く。 かさこじぞう 1・2 ○単元全体の学習に見通しをもつ。 確かめよう

序論 天気予報の起源は天気の先駆現象に注目する「観 天望気」に始まった.例えば,夕焼けがあれば翌日 は晴れる,という経験則が挙げられる.その後,天 気図を用いて予想する「総観的天気予報法」が確立 され,現在はコンピュータを用いた「数値予報」が 主流となっている.科学技術の発達により空を見ず ともある程度天気を予報できるようになった.しか

組合せ回路 入力の組によって出力が決まる n 入力 m 出力の回路は Boole 関数 f:Xf −→{0, 1}m ここに Xf⊂{0, 1}n は許される入力全体 を定める 組合せ回路 : Boole 関数の論理素子による実現 以下では、NOT, OR, ANDを用いた実現を考える... SR-フリップフロップ Set-Reset

双曲正弦関数 sinhx の逆関数 arcsinhx や、双曲正接関数 tanhx の逆関数 arctanhxについて、上 2問と同様の考察により、それぞれのTaylor展開を求めてみよ。