นาย ภานุวัฒน์ สอนพงษ์-58170118-กลุ่ม01-matlab

24
นายภานุวัฒน์ สอนพงษ์ 58170118 กลุ่ม01 (หน้า 1) MATLAB

Upload: wasan-larreng

Post on 12-Apr-2017

89 views

Category:

Software


0 download

TRANSCRIPT

นายภานวฒน สอนพงษ 58170118 กลม01 (หนา 1)

MATLAB

นายภานวฒน สอนพงษ 58170118 กลม01 (หนา 2)

MATLAB คอ ?

Matlab เปน ภาษาคอมพวเตอรระดบสงทมาพรอมดวยสภาพแวดลอมการทางานเชงโตตอบ(คลายเครองคด

เลข) ซงสามารถคานวณคณตศาสตรทซบซอนไดอยางรวดเรวมากกวาภาษาคอมพวเตอรสมยกอน เชน ภาษา C, C++

หรอ Fortran

Matlab เปนภาษาคอมพวเตอรระดบสงทใชสาหรบคานวณเชงตวเลข (Numerical Computing: อธบาย

ดานลาง) แสดงผลกราฟฟก และเขยนแอพพลเคชน ทาใหเราสามารถคานวณผลลพธ พฒนาอลกลทม สรางแบบจาลอง

และแอพพลเคชนไดงายและรวดเรวมาก ภายในตว Matlab ประกอบ ดวยภาษาคอมพวเตอร ทลบอกซ(Toolbox: กลม

ฟงกชนสาเรจรปในแตละสาขาวชา) และฟงกชนพนฐานจานวนมาก ทาใหการวเคราะหทาไดหลากหลายวธ พรอมกบ

คาตอบทรวดเรวกวาโปรแกรมตารางคานวณ(Spreadsheet) หรอภาษาคอมพวเตอรสมยกอน เชน C, C++, Fortran, Java

และอนๆ

คณสามารถนา Matlab ไปประยกตใชงานไดหลายสาขามาก ทง การประมวลผลสญญาณ(Signal Processing)

การสอสาร(Communication) การประมวลผลภาพและวดโอ(Image and Video Processing) ระบบควมคม(Control

System) การวดและควบคม(Instruments and Control) การคานวณทางเศรษฐศาสตร(Economic) การคานวณทาง

ชววทยา(Biology) และอนๆ มนกวทยาศาสตรและวศวกรหลายลานคนทงในแวดวงการศกษาและอตสาหกรรมทใช

Matlab ในการคานวณเชงตวเลข

นายภานวฒน สอนพงษ 58170118 กลม01 (หนา 3)

แนะนาสวนตางๆของ โปรแกรม MATLAB

ภาพหนาตาง ของโปรแกรม MATLAB ทแสดงสวนตางๆของโปรแกรม

สวนท 1 สวนของ Menu Bar เปนสวนทเกยวกบคาสงในการจดการหนาตางของโปรแกรม

สวนท 2 สวนของ Current Folder เปนสวนทแสดง ไฟล ทเลอกขนมาใชงาน

สวนท 3 สวนของ Command Window เปนสวนทคาสงหรอ commands จะถกใสในหนาตางนหลง

เครองหมาย >> (the command prompt) ผลลพธถกแสดงหลงจากผใชใส commands ทงหมดแลวกดปม Enter ท

คยบอรด

สวนท 4 สวนของ Workspace เปนสวนทแสดงหนาตางของตวแปรทใชงาน พนทหนวยความจา และขนาด

ตวแปร

สวนท 5 สวนของ Command History เปนสวนทแสดงหนาตางทใชเกบคาสงทใชงานยอนหลงสามารถใช

โดยการดบเบลคลก

2 3

4

5

1

นายภานวฒน สอนพงษ 58170118 กลม01 (หนา 4)

แนะนาการใชงาน โปรแกรม MATLAB

1.การใชงานเบองตน MATLAB

1

2

6

3

4

5

7

8

9

นายภานวฒน สอนพงษ 58170118 กลม01 (หนา 5)

สวนท 1 เปนการ ใส ตวแปร A โดยใหตวแปร A มคาเทากบ Hallo GI โดยเมอกดปม Enter ลงมา ผลลพธท

ไดกจะเปน คาวา Hallo GI

สวนท 2 เปนการแทนคา แตละตวแปร เพอหาผลบวกของตวแปร โดยในทนเปนการหาผลบวกของ ตวแปร a

และ b โดย ใชคาสง sum = a+b เมอกดปม Enter ลงมา ผลลพธทไดกเปนผลรวมของตวแปร a และ b

สวนท 3 เปนการสราง row vector ทมสมาชกประกอบดวย 1,2,3,4,5 โดยตวแปรในทนเปน a โดยใชชดคาสง

a = [1 2 3 4 5] เมอกดปม Enter ลงมา ผลลพธทไดกเปน row vector ทมสมาชก 1 2 3 4 5

สวนท 4 เปนการสราง Column vector ทมสมาชกประกอบดวย 1,2,3,4,5 โดยตวแปรในทนเปน b โดยใช

ชดคาสง b = [1;2;3;4;5] เมอกดปม Enter ลงมา ผลลพธทไดกเปน Column vector ทมสมาชก 1 2 3 4 5

สวนท 5 เปนการสราง row vector วธลดโดยการไมตองพมพสมาชกลงไป โดยในทนตองการ ตองการ row

vector ทมสมาชก ตงแต 1 ไปจนถง 20 โดยใชตวแปร a ผานชดคาสง a = [1 : 20] ผลลพธทไดกเปน row vector ทม

สมาชก 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

สวนท 6 เปนการสราง row vector ทมสมาชกเปนเลขจานวนคทงหมดโดยตวแปรในทนเปน a โดยเรมจาก

เลข 1 ไปจนถง 20 ผานชดคาสง a = [1:2:20] ผลลพธทไดกเปนเลขจานวนคทงหมด แตถาเปนเลขจานวนคกสามารถทา

ไดโดยผานชดคาสง b = [2:2:20] ผลลพธทไดกเปนเลขจานวนคทงหมด

สวนท 7 เปนการทราบถงคาทตองการทราบในตาแหนงของ row vector จากสวนท6 โดยในทนตองการทราบ

ถงตาแหนงท 7 วามคาเปนเทาไหร โดยใชตวแปร a ผานชดคาสง a(7) ผลลพธทไดกเปนคาในตาแหนงทตองการ

สวนท 8 เปนการเมตรกซทมสมาชกเปน1ไปจนถง 9 โดยตวแปรในทนเปน a ผานชดคาสง a = [1 2 3; 4 5 6;7

8 9]ผลลพธทไดกเปนเมตรกซทมสมาชกเปน1ไปจนถง 9

สวนท 9 เปนการทราบถงคาทตองการทราบในตาแหนงของเมตรกซ จากสวนท8 โดยในทนตองการทราบถง

ตาแหนง row ท 2 colum ท 3 โดยใชตวแปร a ผานชดคาสง a(2,3) ผลลพธทไดกเปนคาในตาแหนงทตองการ

นายภานวฒน สอนพงษ 58170118 กลม01 (หนา 6)

2.การทดลองใชคาสง plot (เพอสรางกราฟทมมต)

สวนท 1 เปนการสรางกราฟทมลกษณะทมมต โดยผานคาสง plot และกาหนดคาตวแปร โดยตวแปรในทน

เปน a และ b

สวนท 2 ผลลพธทไดกจะเปนลกษณะกราฟทมมตทแสดงใหเหนสวนตางๆไดอยางชดเจน

สวนท 3 เปนการเปลยนลกษณะกราฟทแสดงคาเปนเสนส โดยใสคาสงดงภาพ

สวนท 4 ผลลพธทไดกจะเปนลกษณะกราฟทตางไปจากกราฟในสวนท2 ทมลกษณะเพยงเสนสเทานน

1

2

3 4

นายภานวฒน สอนพงษ 58170118 กลม01 (หนา 7)

3.plot.

1

3

2

4

นายภานวฒน สอนพงษ 58170118 กลม01 (หนา 8)

สวนท 1 การ plot เรมจากการกาหนดคาของตวแปร โดยตวแปรทใชในทนกาหนดเปน x = [4 7 16] และ y =

[1 2 3] จากนนใชคาสง plot เพอนาคาของ ตวแปร x และ y มาลงยงกราฟ จากนนใสปายชอใหกบแกนทปรากฎใน plot

เพอใหสามารถอธบายความหมายของแกนแตละแกน โดยใชคาสง title('ชอกราฟ') เพอกาหนดชอของกราฟในทน

กาหนดเปน Score of classroom จากใชคาสง xlabel (' ชอแกน x ') ปายชอแสดงในแกน x ในทนเปน Classroom

จากนนใชคาสง ylabel('ชอแกน y') ปายชอแสดงในแกน y ในทนเปน Score หลงจากนนกด ปม Enter เพอแสดงผล

สวนท 2 ผลลพธจาก สวนท1 โดยผลลพธทไดเปนลกษณะของกราฟทมเสนของกราฟลากจากจดหนงไปยง

อกจดหนง และมการแสดงชอของกราฟไวยงดานบนของกราฟ ดานซายแสดงชอแกน y และแสดงชอแกน x ไวยง

ดานขวาลาง

สวนท 3 เปนการเปลยนลกษณะของเสนกราฟและสของเสนกราฟ โดยใชคาสง plot(‘rad’) หรอ plot(‘-^r’)

หรอคาสงทปรากฎในภาพ

สวนท 4 ผลลพธทแสดงลกษณะของเสนกราฟทเปลยนไปหลงจากใชคาสง ดงสวนท3

สวนท 5 เปนการ plot กราฟทมลกษณะ มากกวา 1 เสนขนไป พรอมทงอธบายถงลกษณะของกราฟแตละเสน

โดยเรมจากกาหนดคาตวแปร ในทนใชตวแปร 4 ตว เพอ plot เสนกราฟ 3 เสน โดยเรมจาก ตวแปร x = [2 5 9 10 21]

5

6

นายภานวฒน สอนพงษ 58170118 กลม01 (หนา 9)

y = [3 9 5 11 13] z = [4 6 9 3 21] t = [3 4 5 6 7] ตามลาดบ จากนนใชคาสง plot(t,x,'--r',y,t,'-.b',z,t,'-^k') เพอ plot ลง

ในกราฟ จากใชคาสง legend('airplane', 'train', 'ship') เพอกาหนดและอธบายความหมายของกราฟแตละเสน จากนนใช

คาสง legend('Location','NorthWest') เพอวางตาแหนงของคาอธบายเสนกราฟ หลงจากนนกด ปม Enter เพอแสดงผล

สวนท 6 ผลลพธทไดกเปนลกษณะของเสนกราฟ 3 เสน ทมลกษณะแตกตางกน พรอมคาอธบายความหมาย

ของเสนกราฟทง 3 เสน

4.Subplot

สวนท 1 Subplot การ plot ยอยลงมาจากการ plot ในกราฟเพยงกราฟเดยวในทนกาหนดลงมาเปน 4 กราฟ

โดยในทนใชขอมลของเรอง plot ในสวนท5 จากนนใชคาสง subplot เพอทาเปน plot ยอย โดยเรมจาก subplot(2,2,1)

ตามดวยplot(x,t,‘--r’) จากนนทาเชนเดยวกนเพอสรางอก 3 กราฟดงภาพ

สวนท 2 ผลลพธทได แสดงกราฟทง 4 ทมลกษณะทแตกตางกนออกไปตามทไดกาหนดไว

1

2

นายภานวฒน สอนพงษ 58170118 กลม01 (หนา 10)

5.Plotting in 3-D

สวนท 1 เรมโดย สรางหนาตางใหมขนมาโดยหนาตางนใชสาหรบคาสงทมจานวนมากโดยสรางโดย กดปม

Ctrl+N

สวนท 2 พมพคาสงลงยงหนาตางทสรางใหม โดยคาสงทใชนน เรมจาก [x,y] = meshgrid([-2:.2:2]); เพอ

กาหนดคาตวแปร ตามดวย Z = x.*exp(-x.^2-y.^2); และ figure surf(x,y,Z,gradient(Z)) จากนน gradient(Z) และ

colorbar หลงจากนนทาการ save เพอให สามารถ คาสง run ได

1

2

นายภานวฒน สอนพงษ 58170118 กลม01 (หนา 11)

สวนท 3 หลงจาก save เรยบรอยแลว ใหกด ปม run จากนนจะขนหนาตาง ขนมาให กด ปมดงภาพ

สวนท 4 ผลลพธทไดแสดงกราฟทมลกษณะเปน 3 มต

6.TopoToolbox

1 2

3

4

นายภานวฒน สอนพงษ 58170118 กลม01 (หนา 12)

สวนท 1 set path เปนการตงคาเพอนา folder เครองมอมาใชงานในทนตอง add folder ของเครองมอทชอวา

TopoToolbox โดยไปยงท folder TopoToolbox อยพอไปยงทท TopoToolbox อยใหคลกท folder แตไมตองเขาไปยง

folder จากนนใหกด save เพอยนยนการตงคา TopoToolbox โดยสามารถ Download เครองมอ TopoToolbox ไดจาก

https://topotoolbox.wordpress.com/ หลงจาก Download แลวใหนา folder ไปเกบไวททสามารถคนหาไดไมยากนกเพอ

สะดวกตอการเรยกใชงาน

สวนท 2 การแสดงสวนของหนาตาง set path

สวนท 3 Browse for folder การเลอก folder ทตองการใชงานในทนเปน folder DEM โดยไปยงท folder DEM

อย คลกท folder DEM แตไมตองเขาไปยง folder จากนนใหกด save เพอยนยน

สวนท 4 การแสดง folder ทเลอกมาจาก Browse for folder

สวนท 5 พมพคาสง DEM โดยในทนเปนไฟล kidchakood กจะไดออกมาเปน DEM = GRIDobj(‘kidchakood.rif’)

จากนนกด ปม Enter เพอแสดงผล กจะปรากฏตวของมลตางๆของไฟลทเรยกขนมาดงภาพ

3

4 5

7 6

นายภานวฒน สอนพงษ 58170118 กลม01 (หนา 13)

สวนท 6 พมพคาสง imagesc(DEM) เพอ check ขอมล DEM วาใชไดหรอไม จากนนกด ปม Enter เพอแสดงผล

สวนท 7 ผลลพธจากการ check ขอมล DEM ลกษณะกจะเปนดงภาพ

สวนท 8 พมพคาสง imageschs(DEM,min(gradient8(DEM),1)) เพอปรบเชงคลนหรอ Histogram ของภาพ DEM เพอเปน

การด Hillshade แสดงความลาดชนทชดเจนมากยงขนโดยมการใช ฟงกชน gradient เปนการไล shade ส จากนนกด ปม

Enter เพอแสดงผล

สวนท 9 ผลลพธจาก เพอปรบเชงคลนหรอ Histogram ของภาพ DEM ลกษณะกจะเปนดงภาพ

สวนท 10 พมพคาสงดงภาพ เพอแสดงพนทในรปแบบ plot in 3 จากนนกด ปม Enter เพอแสดงผล

สวนท 11 ผลลพธจากการแสดงพนทในรปแบบ plot in 3 ลกษณะกจะเปนดงภาพ

8

9

10

11

นายภานวฒน สอนพงษ 58170118 กลม01 (หนา 14)

สวนท 13 Fill sinks เปนคาสงทใชในการศกษาการไหลของนาตามสภาพภมประเทศ โดยจะใชขอมล DEM และ

นาไปใชควบคกบ FLOWobj โดยการพมพคาสงกจะเปนดงภาพ จากนนกด ปม Enter เพอแสดงผล

สวนท 11 ผลลพธการใชคาสง Fill sinks ลกษณะทไดกจะแสดงออกมาดงภาพ

สวนท 14 การวเคราะหการระบายนาของลมนา ในพนท 10 ตร.กม. โดยผานคาสงดงภาพ

สวนท 15 ผลลพธการใชคาสงการวเคราะหการระบายนาของลมนา ลกษณะทไดกจะแสดงออกมาดงภาพ

12

13

14

15

นายภานวฒน สอนพงษ 58170118 กลม01 (หนา 15)

7.Image Processing Basic

สวนท 1 Browse for folder การเลอก folder ทตองการใชงานในทนใชเปนไฟล ภาพ จากนนๆไฟลทเลอกกจะ

ปรากฏอยท ดานซาย จากนนพมพคาสง a = imread('1.jpg') โดยเปนคาสงอานไฟลรปจะเหนไดวาภาพจะจดเกบใน

รปแบบเชงเลข

สวนท 2 ชดตวเลขของภาพทจดเกบในรปแบบเชงเลข ดงภาพ

สวนท 3 พมพคาสงดงภาพ เพอเรยกดภาพ

สวนท 4 ภาพทไดจากคาสงของสวนท 3 จะเปนการเรยกไฟลภาพทตองการขนมา

สวนท 5 พมพคาสงดงภาพ เพอเรยกดภาพแตภาพจะถกแปลงเปนภาพทเปนสเทา

1

2

3

4

5

นายภานวฒน สอนพงษ 58170118 กลม01 (หนา 16)

สวนท 6 ชดตวเลขของภาพทจดเกบในรปแบบเชงเลข ดงภาพ หลงจากใชคาสงในสวนท 5

สวนท 7 พมพคาสงดงภาพ เพอเรยกดภาพ

สวนท 8 ภาพทไดจากคาสงของสวนท 7 จะเปนการเรยกไฟลภาพทตองการขนมาโดยลกษณะภาพเปนสเทา

สวนท 9 พมพคาสงดงภาพ เพอเรยกดคาการรงสเชงคลน ของภาพ

สวนท 10 ภาพทไดจากคาสงของสวนท 9 จะเปนการเรยกดคาการรงสเชงคลนดงภาพ

6

7

8

9

10

นายภานวฒน สอนพงษ 58170118 กลม01 (หนา 17)

สวนท 11 พมพคาสงดงภาพ เพอเชครายละเอยดของภาพหรอขอมลตางๆ

สวนท 12 พมพคาสงดงภาพ เพอแปลงภาพใหเปนขาว – ดา

สวนท 13 ชดตวเลขของภาพทจดเกบในรปแบบเชงเลข ดงภาพ หลงจากใชคาสงในสวนท 12

สวนท 14 พมพคาสงดงภาพ เพอเรยกภาพทผานการแปลงใหเปนขาว – ดา

สวนท 15 ภาพทไดจากคาสงของสวนท 14 จะเปนการเรยกไฟลภาพทขนมาโดยลกษณะภาพเปนขาว – ดา

สวนท 16 พมพคาสงดงภาพ เพอไฟลภาพทตองการขนมา

สวนท 17 ชดตวเลขของภาพทจดเกบในรปแบบเชงเลข ดงภาพ หลงจากใชคาสงในสวนท 16

11

12

13

14

15

16

17

นายภานวฒน สอนพงษ 58170118 กลม01 (หนา 18)

สวนท 18 พมพคาสงดงภาพ เพอดสในแตละระดบ

สวนท 19 ภาพทไดจากคาสงของสวนท 18 จะเปนการเรยกไฟลระดบสดงภาพ

8.การตรวจสอบ webcam

สวนท 1 คาสง imaqtool เพอตรวจสอบ driver ของกลองWebcam โดยพมพคาสงดงกลาวลงไป แลวกด Enter กจะม

ไฟลตางๆขนมา ดงภาพ

สวนท 2 คลกทหนาตางดงภาพ โดยคลกท คาสง Allow access เพอใหกลองWebcam ทางาน

18

18

19

1

2

นายภานวฒน สอนพงษ 58170118 กลม01 (หนา 19)

สวนท 3 คลกทหนาตางดงภาพโดยเลอกคาสง ดงภาพ

สวนท 4 คลกท คาสง show preview เพอ เปดกลอง

สวนท 6 กลองทผานการ เปดแลว จะมลกษณะดงภาพ และพรอมใชงาน

สวนท 7 นาโคด คาสงดงภาพมาพมพลงบน MATLAB โดยเรมจากสรางหนาตางใหมขนมา โดยกด Ctrl+N

จากนน พมพโคดจากภาพ ลงบนหนาตางทสรางใหม จากนน save ถดมากกดปม run เพอเรยกใชงา กลอง

สวนท 8 กลองทผานการ เปดแลว จะมลกษณะดงภาพ และพรอมใชงาน

3 4

7

6

8

นายภานวฒน สอนพงษ 58170118 กลม01 (หนา 20)

9. Uncalibrated Stereo Image Rectification

สวนท 1 Download ภาพ ทมลกษณะเปนภาพเหมอนสองดาน เพอนามา ทาภาพ 3 มต หลงจากไดภาพแลว นา

ภาพมาตดเปน 2 ภาพ เพอใชงาน โดยใชโปรแกรม paint

สวนท 2 เปดโปรแกรม MATLAB ขนมาจากนน เรยกไฟล ภาพขนมาโดย ใชคาสง Browse for folder ไฟลภาพกจะ

ปรากฏขนมาทางดานซาย

สวนท 3 Ctrl+N เพอสรางหนาใหมขนมา สาหรบพมพคาสง จากนนพมพคาสงดงภาพ จากนน save และจากนน

กด run เพอเปดการทางานของ คาสง

1

3 2

นายภานวฒน สอนพงษ 58170118 กลม01 (หนา 21)

สวนท 4 ผลลพธจากสวนท 3 จะไดเปนลกษณะภาพท ภาพมาซอนกน โดยผานการหาจดแหมอนของภาพทง

สองและวธตางๆเพอทาเปนภาพ 3 มต

10.Guide

สวนท 1 พมพ Guide ลงบน Command Window จากนนกด Enter กจะขนหนาตางขนมาดงภาพ จากนนเลอก

กดทกอยางดงภาพ จากนนกด OK เพอยนยนการทางาน

สวนท 2 หนาตาง Layout Editor สาหรบการทางานขนมาดงภาพ

4

1

2

นายภานวฒน สอนพงษ 58170118 กลม01 (หนา 22)

สวนท 3 กดปม select ทแถบเครองมอดงภาพ เพอสรางปมตางๆ

สวนท 4 กดปม axes ทแถบเครองมอดงภาพ เพอสรางพนทแสดงสวนของภาพทเรยกมา

สวนท 5 ดบเบลคลกปมทสราง จากนนกาหนดคาตามภาพ เพอกาหนดคาของแตละปม

3

4

ป มทสราง

พนทแสดงภาพ

5

นายภานวฒน สอนพงษ 58170118 กลม01 (หนา 23)

สวนท 6 ภาพการแสดงหลงจากตงคาแตละปมแลว มลกษณะเปนดงภาพ

สวนท 7 คลกขวาทปมทสราง จากนนไปตวเลอกดงภาพ เพอ save การทางานของแตปม ทาเหมอนกนทกปม

สวนท 8 Ctrl+N เพอสรางหนาใหมขนมา สาหรบพมพคาสง จากนนพมพคาสงดงภาพ จากนน save และจากนน

กด run เพอเปดการทางานของ คาสง

สวนท 9 หนาตางการทางาน ทสรางไว โดยมลกษณะมปมดวยกน 5 ปม

6

7

8

9

นายภานวฒน สอนพงษ 58170118 กลม01 (หนา 24)

สวนท 10 เมอทดสอบการทางานโดยกดปมตางๆ ของหนาตาง โดยปมแรกทาหนาท เรยกไฟลภาพ ปมถดมา

เปนการปรบภาพใหเปนสเทา ถดมาเปนปมดเสนรงสของภาพ ถดมาเปนปมปรบภาพใหเปนขาวดา และปมสดทายเปน

เหมอนเดม

11การอานและปรบแกเชงรงสของภาพถายจากดาวเทยม

สวนท 1 Ctrl+N เพอสรางหนาใหมขนมา สาหรบพมพคาสงเพอปรบแกเชงรงสของภาพถายจากดาวเทยม

จากนนพมพคาสงดงภาพ จากนน save และจากนนกด run เพอเปดการทางานของ คาสง

สวนท 2 ผลลพธจากสวนท 1 จะไดเปนลกษณะภาพเปนภาพถายจากดาวเทยมทผานการผสมมมาแลว ดงภาพ

10

1

2