các hàm x_ lý _nh trong matlab

Upload: khoa-le

Post on 11-Jul-2015

193 views

Category:

Documents


0 download

TRANSCRIPT

Cc hm x l nh trong matlab

http://hlab.com.vn/index.php?option=com_content&view=article&id=202...

Viet Nam

English

HOME Trang Ch Tn ng nh p

PRODUCTS S n Ph m

R&D LABS Nghin C u

DEMO Demo S n Ph m

CONTACT Lin H

Cc hm xM t kh uTH

l nh trong matlabQU N TR VIN

B Y, 13 THNG 8 2011 17:02

2 likesGhi Nh ! ng nh p ng k ! Trong ph n ny chng ta s tm hi u v cc hm x l nh trong matlab. Nh chng ta bi t, matlab l m t ngn ng r t m nh v h tr r t t t cc thao tc lm vi c trn nh. V v y vi c s d ng matlab cho cc ng d ng x l nh g n nh l l a ch n hng trn ph n m m. u cho nh ng ai mu n th c hi n cc thu t ton x lShare

0 dislikes

Like

0

0

Qun M t kh u? ||

DANH M C S N PH M Shop Kit pht tri n (Dev Kit) Module Ngo i vi ROBOCON Equipments Programmer/Debugger Robot gio d c (Robot Kit) S n ph m ng d ng Linh ki n (Components) DC Servo Motor Ph ki n (Spare part) R&D LABS L P TRNH VERILOG/FPGA X L TN HI U S NG D NG VI (DSP) a)

Xem Ph n 1 : Gi i thi u v matlab v x l nh

Cc ki u nh trong Matlabnh c nh ch s (Indexed Images) mu map. Ma tr n d li u c th c ki u thu c l p uint8, uint16 ho c ki u double. ng n m gi a 0 v 1. M i hng c a b n ch ra cc gi tr m: mu. Mu s c c a u tin, gi tr 2 mu l m t m ng mx3 ki u double bao g m cc gi tr d u ph y M t nh ch s bao g m m t ma tr n d li u X v ma tr n b n Ma tr n b n

red, green v blue c a m t mu n. M t nh ch s s d ng nh x tr c ti p gi a gi tr c a pixel nh t i gi tr trong b n ch ra hng th hai trong b n M tb n mu ng n p cng v i nh khi s d ng hm imread mu no.

m i pixel nh c tnh ton b ng cch s d ng gi tr tng ng c a X nh x t i m t gi tr ch s c a map. Gi tr 1 ch ra hng

mu th ng c ch a cng v i nh ch s v c t mu m c

c nh. Tuy nhin, ta

khng b gi i h n khi s d ng b n b) nh c ng

nh, ta c th s d ng b t k b n

(Intensity Images) l m t ma tr n d li u nh I m gi tr c a n nh c ng i di n cho c ng trong m t s vng no c a mu nh. Matlab ch a nh m t ma tr n n, v i m i ph n t c a ma tr n tng ng v i m t pixel c a nh. Ma tr n c th thu c l p double, hi m khi c lu v i b n i di n cho cc c ng mu, Matlab s d ng b n hi n th chng. b ng 0 th ng c i

M t nh c ng m t nh c ng

I U KHI N

uint8 hay uint16. Trong khi H TH NG NHNG I U KHI N T H TR NG

Nh ng ph n t trong ma tr n c ng di n b ng mu en v c ng c)

khc nhau ho c

xm. Nh ng i m c c ng cao nh t hay mu tr ng.

1,255 ho c 65535 th ng

i di n cho c ng

nh nh phn (Binary Images)

Trong m t nh nh phn, m i pixel ch c th ch a m t trong hai gi tr nh phn 0 ho c 1. Hai gi tr ny tng ng v i b t ho c t t (on ho c off). M t nh nh phn c lu tr nh m t m ng logic c a 0 v 1. N d) M t nh RGB (RGB Images) nh RGB - th ng c g i l true-color, c lu tr trong Matlab d i d ng m t m ng d li u c kch th c 3 chi u mxnx3 nh d ng file nh nh b i s

ROBOCON LU N VN-

MCU/DSP/FPGA C B N C b n v MCU C b n v DSP C b n v FPGA C b n v i u khi n t ng

ngha cc gi tr mu red, green v blue cho m i pixel ring bi t. nh RGB khng s d ng palette. Mu c a m i pixel c quy t k t h p gi a cc gi tr R, G, B (Red, Green, Blue) c lu tr trong m t m t ph ng mu t i v tr c a pixel. nh RGB gi ng nh m t nh 24 bits trong R, G, B chi m tng ng 8 bit m t.

ho lu tr

i u ny cho php nh n c 16 tri u mu khc nhau. c hi n th v i

M t m ng RGB c th thu c l p double, uint8 ho c uint16. Trong m t m ng RGB thu c l p double, m i thnh ph n mu c gi tr gi a 0 v 1. M t pixel m thnh ph n mu c a n l (0, 0, 0) c hi n th v i mu en v m t pixel m thnh ph n mu l (1, 1, 1 ) (10, 5) c lu tr trong RGB(10, 5, 1), RGB(10, 5, 2) v RGB(10, 5, 3) tng ng. tnh ton mu s c c a pixel t i hng 2 v c t 3 ch ng h n, ta nhn vo b ba gi tr c lu tr trong (2, 3, 1:3). Gi s (2, 3, 1) ch a gi tr 0.5176; (2, 3, 2) ch a gi tr 0.1608 v (2, 3, 3) ch a gi tr 0.0627 th mu s c c a pixel t i (2, 3) s l (0.5176, 0.1608, 0.0627). mu tr ng. Ba thnh ph n mu c a m i pixel c lu tr cng v i chi u th 3 c a m ng d li u. Ch ng h n, gi tr mu R, G, B c a pixel

DOWNLOAD TI LI U COMMENT M I NH T a) ban vao phan nay de doc cac ba... ban gui lai duong dan cho m du... sorry ban,minh da fixed loi du... co tai khoan roi sao

Cc hm xc v ghi d

l nh c b n trong Matlabli u nh ho c m t nh t b t k nh d ng no c tr gip trong b t k chi u su bit no c tr gip. H u h t cc file nh s d ng 8 c vo b nh , Matlab ch a chng d i d ng uint8. V i cc file tr gip 16 bt d li u, PNG v nh ch s , imread lun lun cb n mu vo trong m t chu i thu c l p double,

c m t nh - Hm imread bit

ch a gi tr c a pixel. Khi chng c

TIFF, Matlab ch a chng d i d ng uint16. Ch : V i th m ch m ng nh t n thu c l p uint8 hay uint16

1 of 13

10/28/2011 1:03 PM

Cc hm x l nh trong matlab

http://hlab.com.vn/index.php?option=com_content&view=article&id=202...

m van k d... co the cho e xin so do mach in...

- Ch ng h n, o n m sau s

c m t nh RGB vo khng gian lm vi c c a Matlab lu trong bi n RGB.

Trong v d ny, imread s nh n ra imread. Matlab tr gip r t nhi u

nh d ng file nh d ng

s d ng t tn file. Ta cng c th ch ra

nh d ng file nh m t tham s trong hm bi t thm cc ki u g i hm v

ho thng d ng ch ng h n: BMP, GIF, JPEG, PNG, TIFF

tham s truy n vo, xem tr gip online c a Matlab. c nhi u nh t m t file ho ho ch ng h n nh: HDF v TIFF, chng ch a nhi u ch ra nh m ta mu n nh p vo. xem nh. Theo m c nh, imread ch tr gip nh

- Matlab tr gip m t s u tin trong file. V d sau y

nh d ng file

nh p thm cc nh t file, s d ng c php c tr gip b i

nh d ng file. Ch ng h n, khi c s d ng v i TIFF, ta

c th s d ng m t gi tr ch s v i imread bao nhiu nh c lu tr trong file:

c m t chu i 27 nh t m t file TIFF v lu nh ng nh ny trong m t m ng 4 chi u. Ta c th s d ng hm iminfo

- Khi file ch a nhi u

nh theo m t s ki u nh t

nh ch ng h n theo th t th i gian, ta c th lu nh trong Matlab d i d ng m ng 4

chi u. T t c cc nh ph i c cng kch th c. Ghi m t nh ho nh t i m t file ho d i m t trong cc nh d ng c tr gip. C u trc c b n nh t c a imwrite s yu nh d ng mong mu n t n.

- Hm imwrite s ghi m t

c u m t bi n nh v tn file. N u ta g p m t ph n m r ng trong tn file, Matlab s nh n ra V d sau t i m t nh ch s X t m t file Map v i b n

mu k t h p v i n map sau ghi nh xu ng m t file bitmap.

Ch ra

nh d ng ph - Tham s

c bi t nh d ng ho , ta c th ch ra cc tham s ph . Ch ng h n, v i nh c ng I v i m t file nh 4 bit PNG. nh d ng PNG ta c th ch ra su

- Khi s d ng imwrite v i m t s

bit nh m t tham s ph . V d sau s chi m t

-

bi t thm cc c u trc khc c a hm xem ph n tr gip tr c tuy n c a Matlab. c v ghi nh nh phn theo nh d ng 1 bit nh nh phn c th nh. Khi ta cm t c lu trong m t nh nh phn v i nh d ng 1 bit. N u nh d ng file tr gip n, Matlab ghi nh i di n n trong khng gian lm vi c nh nh d ng 1

- Trong m t s m t m ng lgic. H-LAB ON YOUTUBE - V d sau bit:

nh d ng file, m t

nh phn nh nh 1 bit theo m c

nh d ng 1 bit, Matlab

c m t nh nh phn v ghi n d i d ng file TIFF. B i v

nh d ng TIFF tr gip nh 1 bit, file c ghi ln a theo

ki m tra chi u su bit c a file test.tif, g i hm iminfo v ki m tra tr ng BitDepth c a n:

Ch : Khi ghi file nh phn, Matlab thi t l p tr ng ColorType thnh grayscale. Xem l p lu tr c a file quy t nh l p lu tr c s d ng trong nh k t qu : nh d ng nh ra

- Hm imwrite s d ng lu t sau y + logical: N u

nh d ng nh ra (Output Image) c ch r l tr gip nh 1 bit, hm imwrite t o m t file nh 1 bit. N u

2 of 13

10/28/2011 1:03 PM

Cc hm x l nh trong matlab

http://hlab.com.vn/index.php?option=com_content&view=article&id=202...

c ch r l khng tr gip + uint8: N u + uint16: N u

nh 1 bit (nh JPEG), hm imwrite chuy n

nh t i m t

nh thu c l p uint8.

nh d ng nh ra c ch r l tr gip nh 8 bit, hm imwrite t o m t nh 8 bit nh d ng nh ra c ch r tr gip nh 16 bit (PNG ho c TIFF), hm imwrite t o m t nh 16 bit. N u nh d ng nh ra

khng tr gip nh 16 bit, hm chuy n

i d li u nh t i l p uint8 v t o m t nh 8 bit. nh d ng 8 bit.

+ double: Matlab chuy n d li u nh t i d ng uint8 v t o m t nh 8 bit b i v h u h t cc file nh s d ng Truy v n m t file ho c thng tin v m t file nh c tr gip b i toolbox.

- Hm imfinfo cho php ta c th nh n H-LAB SHOUTBOX C php: imfinfo(filename,fmt) Cc thng tin

c cung c p b i hm imfinfo l: filename, filemodedate, filesize, format, formatversion, width, height, bitdepth, colortype

Thng tin m ta nh n c ph thu c vo ki u c a file nhng n lun bao g m nh ng thng tin sau: Kide Shoutbox v0.9.8 hoang: hello Manh.DienChau: Guest_5272: chumanhcuong: alo hoang: phi: em moi mua kit psk1 ve sd ma k duoc. anh nao giup dum em. thank. hoang: ban can than dien ap,SD Card dung 3v3.Ban nen chuyen jumper 3V3 tren PSK1 Guest_2861: bo san pham k t n i Pic GSM v i thi t b i n 220 s d ng module PIO220 khoang bnhieu tien vay cac A? Manh.DienChau: b n dng bao nhiu thi t b 220V Name: Guest_8080 Message: Ta cng c th ch nh tn c a file nh nh trong v d sau:

Tn c a file nh. nh d ng file nh. S version c a nh d ng file. Ngy s a i file g n nh t.

Kch th c file tnh theo byte. Chi u r ng nh tnh theo pixel. Chi u cao nh tnh theo pixel. S l ng bt trn m t pixel. Ki u nh: RGB, ch sb) Hi n th nh

Dng hm imview hi n th m t nh s d ng hm imview, dng hm imview, ch r nh m ta mu n hi n th . Ta c th s d ng imview nh m c nh p vo trong khng gian lm vi c c a Matlab. hi n th m t

imview('moon.tif');

- File

nh ph i c m t trong th m c hi n t i ho c trong nh. Tuy nhin, lu , khi s

ng d n c a Matlab. C u trc ny c th h u ch cho vi c li u nh khng c lu trong khng gian lm vi c

qut qua nhi u c a Matlab. AI ANG ONLINE ?

d ng c u trc ny, d

- N u ta g i hm imview m khng ch ra m t k tham s no, n s hi n th m t h p ch n file cho php ta ch ra tn file mu n hi n th .

Administrator Dao Thi Minh Phuong Hong Thu n Nguyen cng Th nh dinh phu luong trung kien Latest members: noname01 Saw Keat Total members: 555 L T KHCH XEM

Xem nhi u

nh nh u tin trong file . xem t t c cc nh g i hm imview

- N u ta ch ra m t file m ch a nhi u nh, hm imview ch hi n th trong file, s nhi u l n d ng hm imread nh p m i hi n th m i nh ring bi t.

nh vo trong khng gian lm vi c c a Matlab sau

Dng hm imshow xem nh, ta c th s d ng hm imshow thay cho imview. Ta s sau: d ng imshow hi n th m t nh c

nh p vo trong khng gian lm vi c nh v d

moon = imread('moon.tif'); imshow(moon);

Ta cng c th Khi s Hm nay Hm qua Thng ny T tc 2483 5047 179559 535939 t ng

ch ra tn c a file nh nh m t tham s truy n vo cho hm nh v d li u nh khng

sau: imshow('moon.tif'); mang nh i

d ng c u trc ny th d

c nh p vo trong khng gian lm vi c. Tuy nhin, ta c th li u nh t li u nh t moon.tif vo bi n moon.

vo trong khng gian lm vi c b ng cch s

d ng hm getimage. Hm ny s nh n d

handle c a m t

nh hi n t i. Ch ng h n: moon = getimage; S gn d i ki u nh nh s th t h u ch khi c th chuy n c lu tr d i d ng nh ch s

c) Cc hm chuy n

- V i cc thao tc nh t mu n l c m t mu s , Matlab nh

i nh t trong

d ng ny sang d ng khc. Ch ng h n, n u ta i n thnh d ng nh RGB. nh ch nh tng ng. N u ta c g ng l c

u tin ta nn chuy n

We have: 43 guests, 6 members online

Khi ta p d ng php l c t i nh RGB, Matlab s l c gi tr c ng n gi n ch p t php l c t i ma tr n Ch : Khi chuy n i m t nh t

nh ch s v k t qu s khng c ngha. khc nh ban u. Ch ng h n, n u ta

d ng ny sang d ng khc, nh k t qu c th

3 of 13

10/28/2011 1:03 PM

Cc hm x l nh trong matlab

http://hlab.com.vn/index.php?option=com_content&view=article&id=202...

Firefox 7.0.1, Windows Hm nay: Thng 10 28, 2011 H-Laboratory

chuy n

i m t nh mu ch s sang m t nh c ng y s li t k cc hm cs

, k t qu

ta s thu

c m t nh i ki u nh:

en tr ng.

- Danh sch sau

d ng trong vi c chuy n

dither: T o m t

nh nh phn t m t

nh c ng

en tr ng b ng cch tr n, t o m t nh ch s en tr ng. en tr ng b ng cch , nh ch s hay t ng ng. nh RGB trn c s

t m t

nh RGB b ng cch tr n (dither). gray2id: T o m t nh ch s grayslice: T o m t im2bw: T o m t sng. ind2gray: T o m t nh c ng mat2gray: T o m t nh c ng rgb2gray: T o m t nh c ng rgb2ind: T o m t nh ch s- Ta cng c th m t nh c ng

t m t nh c ng t m t nh c ng nh c ng

nh ch s

nh nh phn t m t

c a ng ng nh

en tr ng t m t nh ch s . en tr ng t d li u trong m t ma tr n b ng cch l y t l gi li u.

ind2rgb: T o m t nh RGB t m t nh ch s . en tr ng t m t nh RGB.

t m t nh RGB.i ki u ch s d ng c php c a Matlab. Ch ng h n, ta c th chuy n nh g c gi a 3 chi u: i

th c hi n cc php chuy n sang

nh RGB b ng cch ghp n i 3 ph n copy c a ma tr n

RGB=cat(3,I,I,I );

-

nh RGB thu

c c cc ma tr n chuy n

ng nh t cho cc m t ph ng R, G, B v v y nh hi n th gi ng nh bng xm. i chu n ni trn, cng c m t s hm m tr l i ki u nh khc nh m t

- Thm vo nh ng cng c

ph n trong thao tc m chng th c hi n. Chuy n - Toolbox x i khng gian mu l nh bi u di n mu s c nh cc gi tr RGB ( tr c ti p trong nh RGB ho c gin ti p trong c nh ch s ).

Tuy nhin, c cc phng php khc cho vi c bi u di n mu s c. Ch ng h n, m t mu c th gian mu. - Toolbox cung c p m t t p cc th chuy n i n sang RGB sau i i t c chuy n i nh i gi a cc khng gian mu. Cc hm x l m t cx nh m s l tr l i khng gian mu ban u.

i di n b i cc gi c g i l khng chng coi d

tr hue, saturation v cc gi tr thnh ph n (HSV). Cc phng php khc cho vi c bi u di n mu

l nh t

li u mu s c d i d ng RGB tuy nhin, ta c th x chuy n nh

d ng cc khng gian mu khc nhau b ng cch

d) Chuy n lu thay

nh d ng cc file nh d ng sau nh d ng tng y s nh d ng PNG

ho c a m t nh, s ng.

d ng hm imread

c m t nh v sau

lu n v i hm imwrite , hm imwrite

ng th i ch ra nh ny d i

minh ho , v d

d ng hm imread

c m t file BMP vo khng gian lm vi c.Sau

bitmap = imread('mybitmap.bmp','bmp'); imwrite(bitmap,'mybitmap.png','png');

e) S

h c - S d ng

nh h c nh s ng d ng c a cc php ton s h c chu n nh: c ng, tr , nhn, chia ln l nh trong c cc b c ban khc nhau gi a hai ho c nhi u nh s d ng cc ton t nh c a cng m t c nh ho c m t v t. s h c c a Matlab. y. nh. S h c nh cs cs

d ng nhi u trong x pht hi n s - Ta c th Toolbox x trong cng b

u l n cc thao tc ph c t p hn. Ch ng h n, tr

nh c th

th c hi n s h c

l nh bao g m m t t p h p cc hm

ng d ng cc php ton s h c trn t t c cc con s khng l p chnh xc kp trn t ng ph n t trn s c

Hm s h c c a toolbox ch p nh n b t k ki u d

li u s no bao g m uint8, uint16 hay double v tr l i nh k t qu nhng khng chuy n ng. Hm s c t i u khi n t

nh d ng. Cc hm th c hi n cc php ton v i v a v i ki u d h c nh li u.

i nh t i gi tr chnh xc kp trong khng gian lm vi c c a Matlab. S gi tr tr v

Lu t c t b - K t qu

trong s

c a s h c nguyn c th

d dng trn s dng cho lu tr . Ch ng h n, gi tr c c

i ta c th lu tr

trong

uint8 l 255. Cc php ton s h c c th tr v gi tr phn s - khng - Cc hm s h c nh s d ng nh ng lu t ny cho s h c nguyn: t i kho ng

c bi u di n b i m t chu i s nguyn.

+ Gi tr v t qu kho ng c a ki u s nguyn b c t b + Gi tr phn s Inf ) th c lm trn Ch ng h n, n u d c gn l 255. h c nh nh k t h p

li u c ki u uint8, k t qu tr v n u l n hn 255 ( bao g m

L i g i l ng nhau t i hm s - Ta c th s

d ng cc hm s h c

th c hi n m t chu i cc php ton. Ch ng h n

tnh gi tr trung

bnh c a hai nh: C=(A+B) /2 Ta c th nh p vo nh sau:

4 of 13

10/28/2011 1:03 PM

Cc hm x l nh trong matlab

http://hlab.com.vn/index.php?option=com_content&view=article&id=202...

I = imread('rice.png'); I2 = imread('cameraman.tif'); K = imdivide(imadd(I,I2), 2); % not recommended

- Khi theo. S

cs

d ng v i ki u uint8 hay uint16, m i hm s h c c t k t qu gi m

c a n tr c khi truy n n cho hm thi p th c hi n m t k t h p tuy n

c t b ny c th

ng k l ng thng tin trong nh cu i cng. M t cch lm t t hn cu i cng:

chu i cc tnh ton l s tnh c a

d ng hm imlincomb. Hm ny thi hnh t t c cc php ton s h c trong s

chnh xc kp v ch c t b k t qu

K = imlincomb(.5,I,.5,I2); % recommended

Bi n Bi n

i khng gian

nh nh ra.

i khng gian nh l th c hi n nh x gi a v tr cc pixel trong nh vo v i cc pixel trong

a) B ng thu t ng Aliasing : Rng ca - xu t hi n khi gi m kch th c nh. Khi kch th c c a m t nh b gi m, cc pixel g c b l y m u gi m thang ( t o ra t pixel hn. Aliasing x y ra nh k t qu c a vi c gi m kch th c nh th ng xu t hi n d i d ng b c c bi t trong cc nh c tng ph n cao )

Antialiasing : Cc bi n php ch ng rng ca cho nh Bicubic interpolation : Gi tr c a cc pixel ra interpolation : Ga tr c a pixel ra c tnh ton t c tnh ton t gi tr trung bnh c a 4x4 pixel ln c n Bilinear

gi tr trung bnh c a 2x2 pixel ln c n nh. Ch ng h n thay i kch

Geometric operation : M t thao tc s a th c nh, quay nh v xn Interpolation : Qu trnh nh cs d ng

i quan h hnh h c g a cc pixel trong m t

c l ng gi tr

nh

m t v tr gi a cc pixel .

Nearest-neighbor interpolation : Cc gi tr pixel ra b) N i suy N i suy l qu trnh s th c m t n i suy ho. Cc phng php n i suy - Toolbox s l nh cung c p 3 cch n i suy ho d ng c l ng m t gi tr d ng n i suy hai chi u

c gn gi tr c a pixel n m trong m t vng g n pixel

nh

m t v tr gi a cc pixel. Ch ng h n, n u ta thay d ng s n i suy

i kch d ng s

nh, n s ch a nhi u pixel hn

nh g c, toolbox s

tnh gi tr cho cc pixel thm vo.

Hm imresize v imrotate s

th c hi n thao tc c a mnh. Hm improfile cng s

+ N i suy cc pixel g n nh t ( nearest neighbor interpolation ) + N i suy song tuy n tnh ( Bilinear interpolation ) + N i suy song kh i ( Bicubic interpolation ) Cc phng php n i suy lm vi c theo m t cch gi ng nhau. Trong m i tr ng h p, c n i suy, chng tm i m trong nh ra m pixel n m t i . Sau tnh gi tr c a m t pixel i m , chng gn m t gi tr t i cc pixel ra b ng cch ang xt.

tnh ton gi tr trung bnh c tr ng s c a m t s pixel ln c n. Tr ng s d a trn c s kho ng cch t i - Cc phng php ny khc nhau t p cc pixel m chng xem xt: c gn gi tr c a cc pixel

+ V i n i suy cc pixel g n nh t: pixel ra xt.

g n n nh t. Cc pixel khc khng

c xem

+ N i suy song tuy n tnh, gi tr c a pixel ra l gi tr trung bnh theo tr ng s c a 2x2 pixel ln c n. + N i suy song kh i: gi tr c a pixel ra l trung bnh c tr ng s c a 4x4 pixel ln c n. S l ng cc pixel c xem xt nh h ng nh t v chnh xc s t t n ph c t p tnh ton. V v y, phng php song tuy n tnh m t nhi u th i gian hn phng php th hn. Ki u nh d ng tuy n tnh yu c u m t tham s ch ra phng php n i suy. V i h u h t cc hm, phng php m c d ng l nearest-neighbor interpolation. Phng php ny t o ra m t k t qu c th ch p nh n t t hn d ng n i suy song tuy n tnh nh h ng trn nh k t c cho hay RGB, tuy nhin ta th ng

phng php song kh i m t nhi u th i gian hn song tuy n tnh. Tuy nhin, s l ng pixel l n hn,

- Cc hm s nh cs

h u h t cc nh v l phng php duy nh t thch h p v i nh ch s . V i nh c ng ch ra ki u song tuy n tnh ho c song kh i b i v nh ng phng php ny cho k t qu V i nh RGB, n i suy th ng V i nh nh phn, n i suy gy ra nh ng ho c song kh i, gi tr tnh ton qu ph thu c vo l p c a nh vo: nh vo l double, nh ra l m t nh en tr ng thu c l p double. nh h ng m ta c th nh n th y c th c hi n trn m t ph ng R,B,G m t cch ring bi t c. N u s c cho pixel trong

nh ra s khng hon ton l 0 ho c 1.

+N ul p

nh ra khng l nh nh phn b i v n

bao g m cc gi tr khc 0 v 1. +N u nh vo l uint8, nh ra l m t nh nh phn thu c l p uint8. Gi tr c a cc pixel c n i suy c lm

5 of 13

10/28/2011 1:03 PM

Cc hm x l nh trong matlab

http://hlab.com.vn/index.php?option=com_content&view=article&id=202...

trn thnh 0 ho c 1. V v y , nh ra thu c l p uint8. N u s d ng phng php nearest-neighbor interpolation, nh ra lun l nh nh phn b i v nh ng gi tr c a pixel c l y tr c ti p t nh d ng hm imresize. S d ng hm ny ta c th : nh vo.

c n i suy c) Thay -

i kch th c thay

i kch th c c a m t nh, s cs

+ Ch ra kch th c c a nh k t qu . + Ch ra phng php n i suy + Ch ra b l c cs d ng d ng. ngn ng a hi n t ng rng ca.

Ch ra kch th c cho -S

nh k t qu ch ra kch th c c a cs d ng trn nh. nh k t qu theo hai cch:

d ng hm imresize, ta ch th i

+ B ng cch ch ra h s phng

+ B ng cch ch ra chi u c a nh k t qu . S d ng h m s phng i nh i l n hn 1. thu nh m t nh, ch ra h s phng i n m gi a 0 v 1.

r ng m t nh, ch ra h s phng

Ch ng h n, l nh sau tng kch th c c a nh I ln 1.25 l n:

Hnh 1

nh tr c v sau khi imresize

I = imread('circuit.tif'); J = imresize(I,1.25); imshow(I) figure, imshow(J)

Ch

nh kch th c c a

nh ra

- Ta c th ch ra kch th c c a nh ra b ng cch truy n m t vc t ch a s l ng hng v c t c a nh sau cng. Nh ng l nh sau y t o m t nh ra Y v i 100 hng v 150 c t.

Y = imresize(X,[100 150])

Ch : N u kch th c Ch

c ch ra khng c cng t l v i nh vo, nh ra s b bi n d ng cs d ng.

nh phng php n i suy nh, hm imresize s

- Theo m c

d ng phng php n i suy cc pixel g n nh t (nearest neighbor interpolation) ch nh cc phng php n i suy khc. B ng sau y li t k cc t c a ph c t p.

tnh gi tr cc pixel c a phng php n i suy

nh ra. Tuy nhin, ta c th

c tr gip theo th

Normal 0 false false false EN-US X-NONE X-NONE

Gi tr tham s nearest bilinear biculic Trong v d

Phng php n i suy N i suy cc phixel g n nh t ( m c N i suy song tuy n tnh N i suy song kh i sau, hm imresize s d ng phng php n i suy song tuy n tnh: nh )

6 of 13

10/28/2011 1:03 PM

Cc hm x l nh trong matlab

http://hlab.com.vn/index.php?option=com_content&view=article&id=202...

Y=imresize(X, [100 150],bilinear);

S

d ng b

l c

ngn ch n hi n t ng rng ca nh c th gy ra nh ng nh h ng nh t nh ln nh ch ng h n nh hi n

- Vi c gi m kch th c (hnh h c) c a m t t ng xu t hi n rng ca t i bin c a nh . ca xu t hi n nh nh ng g n sng trong - Khi gi m kch th c c a c ab nh s thng th p ln nh tr c khi n i suy. l c ny ho c ch ra m t b s Ch : Th m ch qu trnh n i suy - Hm imresize khng p ny. - Ta cng c th Hm imresize C php c a hm ny nh sau: ch ra m t b l ct d ng m t b

i u ny l do thng tin lun b m t khi ta gi m kch th c m t nh. Rng ng p tm tb l c

nh sau cng. gi m nh h ng c a rng ca trong nh ra. Ta c th ch ra kch th c nh h ng do thng tin lun b m t trong cs d ng. nh

d ng n i suy song tuy n tnh ho c song kh i, hm imresize t i u ny l c khc thay th . l c thng th p, ch t l ng c a nh v n b

t m t b l c thng th p ln nh n u phng php n i suy cc pixel g n nh t u cs d ng v i cc nh ch s l c c s n. v b

Phng php n i suy ny ban

l c thng th p khng thch h p cho ki u

t o thay cho cc b

B B B B B

= = = = =

imresize(A,m) imresize(A,m,method) imresize(A,[mrows ncols],method) imresize(...,method,n) imresize(...,method,h)

Di n gi i + B=imresize(A,m): Tr l i m t nh B l n g p m l n nh A (kch th c hnh h c) s nh (nearest - neighbor interpolcation). A c th l m t gi a 0 v 1, B s nh + B=imresize(A,m,method): Tr l i m t m t chu i ch ra phng php n i suy no kch th c cs c ch ra khng cng t l hn kch th c c a nh vo v phng php n i suy l c thng th p tr c khi tuy n tnh ho gi m tm tb nh ch s , nh nh A s hn A. N u m l n hn 1, B s l n hn A. nh l n g p m l n cs d ng phng php n i suy method. method l c ch ra b i vector [mrows ncols]. N u d ng ch ng h n: nearest,bilinear,bicubic. nh v i kch th c d ng phng php n i suy m c

en tr ng, RGB ho c nh nh phn. N u m n m

+ B=imresize(A, [mrows ncols],method): Tr l i m t

v i nh vo, nh s b bi n d ng . Khi kch th c c a nh ra nh d ng l bilinear ho c bicubic, hm imresize p nh l 11x11. l cm c nh s t khc cho b l c ring s hi n t ng rng ca. Kch th c m c Ta c th ch ra m t th l c. Ta cng c th

d ng c u trc: l c nxn. N u n=0, hm imresize b qua b c c tr v b i cc hm ftrans2, fwind1,

B=imresize(,method,n): n l m t s nguyn ch ra kch th c c a b ch ra b d ng c php: B=imresize(,method,h): Trong fwind2 ho c fsamp2 ). d) Quay + nh quay m t nh c n quay nh, s h l m t b

l c FIR hai chi u ( c th

d ng hm imrotate. Hm ny ch p nh n hai tham s chnh:

+ Gc quay - Gc quay tnh theo ng h : . N u ta ch ra m t gi tr dng, hm imrotate quay nh theo chi u ng c chi u kim ng h . V d sau quay m t nh 35 ng h . N u ch ra gi tr m, hm quay nh theo chi u kim theo chi u ng c chi u kim

J=imrotate(I,35 ) ;

- M t s tham s tu ch n ta c th truy n vo cho hm bao g m: + Phng php n i suy + Kch th c c a nh ra Ch nh phng php n i suy nh, hm imrotate s cs d ng nh t (nearest-neighbor interpolation) tnh gi tr cs d ng

- Theo m c V d

d ng phng php n i suy th ng h s

cc pixel trong

nh ra. Tuy nhin, ta c th ch ra cc phng php n i suy khc nh: bilinear ,bicubic ng c chi u kim d ng n i suy song tuy n tnh:

sau quay m t nh 35

I = imread('circuit.tif'); J = imrotate(I,35,'bilinear'); imshow(I) figure, imshow(J)

7 of 13

10/28/2011 1:03 PM

Cc hm x l nh trong matlab

http://hlab.com.vn/index.php?option=com_content&view=article&id=202...

Hnh 2 Ch nh kch th c c a nh ra

nh tr c v sau khi imrotate

Theo m c

nh, hm imrotate t o m t nh ra c gn gi tr 0 nh th

l n

c th

bao g m ton b en trong

cc pixel c a nh g c. Cc pixel n m

ngoi bin c a nh g c

n n mu

nh ra. N u ta ch ra chu i crop nh m t tham

s , hm imrotate s xn nh ra t i kch th c nh nh vo. Hm imrotate C php c a n nh sau:

B = imrotate(A,angle) B = imrotate(A,angle,method) B = imrotate(A,angle,method,bbox)

Di n gi i + B=imrotate(A,angle): Quay n i suy cc pixel g n nh t. suy c ch ra trong method. nh A m t gc angle . Tham s bbox ch ra h p bin c a nh tr v . nh A m t gc angle theo chi u ng c chi u kim theo chi u kim ng h , s s d ng phng php

quay theo chi u kim

ng h hy truy n gi tr m cho tham s angle ng h d ng phng php n i

+ B=imrotate(A,angle,method): Quay

nh A m t gc angle

+ B=imrotate(A,angle,method,bbox): Quay bbox l m t chu i c th nh n cc gi tr sau: crop:

nh ra B ch bao g m ph n trung tm c a nh nh ): nh ra B bao g m ton b nh

c quay v c cng kch th c v i nh A c quay v l n hn nh A. Hm imrotate thi t l p gi tr 0 cho

loose: ( M c V d - V d ngang. : ny

cc pixel ngoi bin c a nh g c. cm t nh quang ph nh sng m t tr i c lu trong nh d ng FITS v quay n v cn n theo chi u

I = fitsread('solarspectra.fts'); I = mat2gray(I); J = imrotate(I,-1,'bilinear','crop'); imshow(I) figure, imshow(J)

Hnh 3 e) Xn + nh (image cropping) trch m t vng ch nh c n xn nh t xc nh vng xn nh t c a m t nh, s

nh

c quay theo chi u ngang

d ng hm imcrop. Hm imcrop ch p nh n hai tham s chnh:

+ Cc gc c a hnh ch

8 of 13

10/28/2011 1:03 PM

Cc hm x l nh trong matlab

http://hlab.com.vn/index.php?option=com_content&view=article&id=202...

- N u ta g i hm imcrop m khng ch ra hnh ch s d ng tr chu t ch n vng ch i ta v vng ch xn. Khi ch n xong th nh trong m t hnh v chu t. Trong v d

nh t, ta c th

xn

nh theo cc tng tc. Trong tr ng h p ny, ta phm chu t tri v di chuy n ch n vng nh

nh t c n xn b ng cch nh n v gi sau, ta hi n th m t nh. nh t c n xn trn

nh v g i hm imcrop. Hm imcrop hi n th

imshow circuit.tif I=imcrop; Imshow(I);

Hnh 4 Hm imcrop - C php c a n nh sau:

nh tr c v sau khi imcrop

I2 = imcrop(I) X2 = imcrop(X,map) RGB2 = imcrop(RGB) I2 = imcrop(I,rect) X2 = imcrop(X,map,rect) RGB2 = imcrop(RGB,rect) [...] = imcrop(x,y,...) [A,rect] = imcrop(...) [x,y,A,rect] = imcrop(...)

Di n gi i - Hm imcrop xn m t nh theo m t hnh ch nh t c ch nh.

I2=imcrop(I) ; X2=imcrop(X,map); RGB2=imcrop(RGB);

Hm imcrop s hi n th - N u ta b ch nh m t hnh ch

nh I v

i ta ch ra hnh ch

nh t c n xn b ng chu t ni trn

qua cc tham s , hm imcrop thao tc trn nh c a tr c hi n t i. nh t ta dng tr chu t nh ch ra kch th c c a hnh ch nh t m khng thao tc tr c ti p nh cc c php sau:

- Ta cng c th

I2 = imcrop(I,rect) X2 = imcrop(X,map,rect) RGB2 = imcrop(RGB,rect)

Trong

: rect l m t vector b n ph n t ch nh cc to

d ng [xmin ymin width height], nh ng gi tr ny khng gian cho nh vo,

c ch ra trong to

khng gian. hai ph n t

khng theo to

t tr c cc tham s khc v i 2 vector

ch ra Xdata v Ydata. Ch ng h n:

[]=imcrop(x,y,)

- N u ta cung c p cc tham s ra ph , hm imcrop s tr l i thng tin v vng ch nh vo. Ch ng h n:

nh t

c ch n v h

to

c a

[A,rect] = imcrop(...) [x,y,A,rect] = imcrop(...)

A l nh ra, x v y l Xdata v Ydata c a nh vo Ch :

9 of 13

10/28/2011 1:03 PM

Cc hm x l nh trong matlab

http://hlab.com.vn/index.php?option=com_content&view=article&id=202...

- Do rect l m t t p h p cc to h n, gi s vng ch rect l [20 20 40 30], s nh t

khng gian, cc ph n t d ng h to

width v height trong rect khng lun lun tng nh. Gc

ng chnh

xc v i kch th c c a nh ra. Ch ng khng gian theo m c trn tri c a vng ch khng ph i 30x40. V d c ch n l tm c a pixel (20,20) v gc d i ph i c a nh ra l m t nh c kch th c 31x41 ch nh vo nh t trn. nh ra bao g m t t c cc pixel trong

nh t l tm c a pixel (50,60). i u ny l do

hon ton ho c m t ph n

c bao b c b i vng ch

I = imread('circuit.tif'); I2 = imcrop(I,[75 68 130 112]); imview(I), imview(I2)

Hnh 5 f) Cc bi n i nh thng d ng

nh tr c v sau khi imcrop theo 1 t a

cho tr c

th c hi n cc bi n

i khng gian

nh 2 chi u, s

d ng hm imtransform. Hm ny ch p nh n hai tham s

chnh: nh c n bi n i i c g i l TFORM ch ra ki u bi n i ta mu n th c hi n

M t c u trc bi n Ch ra ki u bi n - Ta ch ra ki u bi n S S S i

i trong c u trc TFORM. C hai cch

t o m t c u trc TFORM:

d ng hm maketform d ng hm cp2tform

d ng hm maketform d ng hm ny, ta ch ra ki u bi n i c th ng th ng, i ta mu n th c hi n. Cc ki u bi n i m maketform tr gip bao g m: ng b bi n i

- Khi s

+ affine: Bi n th ng v n l

bao g m: translation ( d ch ), rotation ( quay ), scaling, stretching v shearing. Cc ng song song v n song song nhng hnh ch c bi t c a affine khi m i chi u c d i v i c g i b i hm nh t c th cl p nh t l

+ box: M t tr ng h p + custom : Bi n imtransform + projective : Bi n i m. S d ng cp2tform d ng hm ny i a th c.

+ composite : Bao g m t h p c a hai hay nhi u php bi n i do ng i dng t i trong cc

nh ngha, n cung c p cc hm thu n ho c ngh ch ng th ng v n gi nguyn nhng cc

ng song song

ng quy l i thnh m t

- Ta s bi n

t o ra c u trc TFORM khi ta mu n thi hnh m t bi n

i c n kht v i cc

i m d

li u nh m t

Ch : Khi s

d ng v i hm imtransform, c u trc TFORM ph i nh ngha m t bi n i n chi u s

nh ngha m t bi n i 2 chi u s c p

i 2 chi u. N u m t nh ch a t t i t t c cc m t ph ng 2

nhi u hn m t chi u ch ng h n nh nh RGB, cng m t bi n chi u theo chi u cao hn. Th c hi n bi n - Khi ta h n, i

d ng hm imformarrray

nh ngha m t c u trc TFORM, ta c th thi hnh m t s d ng hm ny thi hnh m t bi n

bi n

i b ng cch g i hm imtransform. Ch ng

o n m sau s

i projective cho m t nh bn c :

I = checkerboard(20,1,1); figure; imshow(I) T = maketform('projective',[1 1; 41 1; 41 41; [5 5; 40 5; 35 30; -10 30]); R = makeresampler('cubic','circular');

1 41],...

10 of 13

10/28/2011 1:03 PM

Cc hm x l nh trong matlab

http://hlab.com.vn/index.php?option=com_content&view=article&id=202...

K = imtransform(I,T,R,'Size',[100 100],'XYScale',1); figure, imshow(K)

Hnh 6

nh tr c v sau khi imtransforms i u khi n nhi u kha c nh c a vi c bi n i u ny nh n i. Ch ng h n, ch r ng

- Cc tu ch n c a hm imtransform cho php ta nh b bi n

i xu t hi n nhi u b n copy c a nh g c.

c b i tu chon size.Xem thm Help Online

Hm imtransform - p t m t bi n i khng gian 2 chi u ln m t nh

C php

B = imtransform(A,TFORM) B = imtransform(A,TFORM,INTERP) [B,XDATA,YDATA] = imtransform(...) [B,XDATA,YDATA] = imtransform(...,param1,val1,param2,val2,...)

Di n gi i + B=imtransform(A,TFORM ): bi n i nh A theo c u trc c nh ngha trong TFORM. C u trc ny c tr v t c p

hm maketform ho c cp2tform. N u ndims(A)>2 nh cc nh RGB th cng m t bi n t t i t t c cc m t ph ng theo chi u cao hn. Khi s th . + B=imtransform(A,TFORM, INTERP): ch ra d ng c a php n i suy gi tr nearest, bicubic ho c bilinear. Tng t , INTERP c th l m t c u trc hn ln vi c l y m u l i (resampling). + [B,XDATA,YDATA]= imtransform(): tr v v tr c a hai thnh ph n. Nh ng thnh ph n c a XDATA ch ra to ch ra to ch a ton b yc ac t nh bi n i A. Tuy nhin, ta c th c tr v t cs d ng c php ny, hm imtransform t ng d ch g c c a nh ra nh ra c th

i khng gian 2 chi u

c hi n th nhi u nh t c l m t trong cc i u khi n nhi u

d ng. INTERP c th

hm makeresampler. Tu ch n ny cho php

nh ra B trong khng gian X-Y. XDATA v YDATA cc vector xc ac t u v cu i c a B. Nh ng thnh ph n c a YDATA ng v v y B ng ny xem d i ch ra. y: i u khi n nhi u kha

u v cu i c a B. Bnh th ng, hm imtransform tnh ton XDATA v YDATA t ch ng tnh ton t

+ [B,XDATA,YDATA] = imtransform(...,param1,val1,param2,val2,...): Ch ra cc tham s c nh khc nhau c a bi n i khng gian. B ng sau li t k cc tham s m ta c th

Normal 0 false false false EN-US X-NONE X-NONE

Tham sUData VData

Di n gi iC hai tham s ny l cc vector hai ph n t th c. Udata v Vdata ch ra v tr khng gian c a nh A c a Udata cho to v ( tung u (honh )c ac t u tin v ) c a hng u tin v cu i cng c a A. trong khng gian vo 2 chi u U-V. Hai ph n t cu i cng c a A. Hai ph n t Gi tr m c

c a Vdata cho to

nh cho Udata v Vdata tng ng l [1 size(A,2) ] v [1 size(A,1) ] ny l cc vector hai ph n t c a hng th c ch ra v tr khng gian c a nh ra B trong khng gian ra xc ac t u tin v cu i cng c a B. Hai ph n t c a

Xdata Ydata

C hai tham s

2 chi u X-Y. Hai ph n t Ydata ch ra tung

c a Xdata ch ra honh

u tin v cu i cng c a B. c th ch a

N u Xdata v Ydata khng c ch ra, hm imtransform c l ng gi tr cho chng ton b XYScale nh ra b bi n i

L vector v i m t ho c hai ph n t th c. Ph n t c m t ph n t , gi tr ny s N u XYScale khng c ch Ydata.

u tin c a XYScale ch ra chi u r ng c a m i pixel

vo trong khng gian X-Y. Ph n t th hai (n u t n t i) ch ra chi u cao c a m i pixel ra. N u XYScale ch c dng cho c chi u r ng v chi u cao. nh nhng Size c ch ra th XYScale c tnh ton t Size,Xdata v

Size

M t vector hai ph n t kch c Size khng c ch

nguyn khng m. Size ch ra s nh, n s c tnh t

hng v c t trong nh ra B. V i chi u cao hn,

c a B c l y tr c ti p t

A. Ni cch khc, size(B,k) tng ng v i size(A,k) v i k>2. N u Xdata,Ydata v XYScale d ng cho cc pixel trn nh ra khi

FillValues

M t m ng ch a m t ho c nhi u gi tr t (fill values). Fill values c s v tr c bi n

i tng ng trn nh vo hon ton l vi n ngoi c a nh ra. n u A l 2 chi u, Fillvalues

ph i v h ng. Tuy nhin, n u chi u c a A l n hn 2, FillValues c th l m t m ng m kch th c c a n

11 of 13

10/28/2011 1:03 PM

Cc hm x l nh trong matlab

http://hlab.com.vn/index.php?option=com_content&view=article&id=202...

tho mn rng bu c sau: size(fill_values,k) ph i b ng size(A,k+2) ho c 1. Ch ng h n, n u A l m t nh RGB unit8 c kch th c 200x200x3 th cc kh nng c a FillValues bao g m: 0: T v i mu en [0;0;0]: T v i mu en 255: T v i mu tr ng [255;255;255]: T v i mu tr ng [0;0;255]: T v i mu xanh [255;255;0]: T v i mu vng N u A l 4 chi u 200x200x3x10 th FillValues c th l 1 v h ng 1x10,3x1,3x1

V d p m t php d ch chuy n ngang t i m t nh c ng ;

I = imread('cameraman.tif'); tform = maketform('affine',[1 0 0;.5 1 0; 0 0 1]); J = imtransform(I,tform); imshow(I), figure, imshow(J)

Hnh 7 Nh v y l chng ta

nh tr c v sau khi imtransforms v i 1 c ng tr cho x l nh l nh.

nh

tm hi u xong cc hm matlab h

Ph n ti p theo chng ta s tm hi u v cc thu t ton x ___________________ Reference Lu n vn

H Cng Nghi p TP HCM HT Nhin , HQG TP HCM

Gio trnh matlab Khoa Ton -Tin,

Comments# tgg agg2011-09-14 07:02

0 Reply | Reply with quote | Quote

# nth 2011-09-14 07:03 cho file pdf i b n

0 Reply | Reply with quote | Quote

Refresh comments list RSS feed for comments to this post

Add commentName (required)

1000 symbols left

Send

12 of 13

10/28/2011 1:03 PM

Cc hm x l nh trong matlab

http://hlab.com.vn/index.php?option=com_content&view=article&id=202...

JComments

BI LIN QUAN 2011-01-31 - Gi i thi u c b n v x l nh 2011-02-01 - Thresholding v Segmentation 2011-02-01 - C b n v x l nhi u 2011-02-01 - Histogram Equalization 2011-03-11 - C b n v PIC 2011-08-11 - Gi i thi u v matlab v x l nh

COPYRIGHT 2011 H LABORATORY. MODIFIED BY HOANG NGUYEN. FEED ENTRIES

13 of 13

10/28/2011 1:03 PM