น.ส.รัชฎาภรณ์ จอมจันทร์ 58670372 กลุ่ม 3304

16
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 ในการคํานวณเชิงตัวเลข การสร้างกราฟ

Upload: nawarat-sornchai

Post on 14-Apr-2017

165 views

Category:

Education


1 download

TRANSCRIPT

Page 1: น.ส.รัชฎาภรณ์ จอมจันทร์ 58670372 กลุ่ม 3304

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 ในการคานวณเชงตวเลข

การสรางกราฟ

Page 2: น.ส.รัชฎาภรณ์ จอมจันทร์ 58670372 กลุ่ม 3304

0 5 10 15 20 25 301

1.2

1.4

1.6

1.8

2

2.2

2.4

2.6

2.8

3

ถาตองการ plot vector x = [3 9 27] ซงคาตอไปกตองมขนาดทเทากน y = [1 2 3]

x = [3 9 27];

Y = [1 2 3];

plot(x,y)

การเขยนชอกราฟ

พมพคาสง title ('ชอทตองการ') >> xlabelปายชอจะแสดงในแกน x >> ylabelปายชอจะแสดงในแกน y

Page 3: น.ส.รัชฎาภรณ์ จอมจันทร์ 58670372 กลุ่ม 3304

การเตมสในเสนกราฟ

มสทงหมด สแดง(r) นาเงน (b) สเขยว(g )สเหลอง(y )สดา(k)

การทาใหเสนกราฟใหเปนเสนปะ เตม plot(x,y,'--r') ลงไป

หรอ ใชเปนเสนปะและจดกได เตม -.

การใสสญลกษณ (Legends) ถาเราตองการแยกแยะออกมาในแตละเสน เราสามารถทจะดไดจากสญลกษณทเรากาหนด

สรางเสนขนมา 3 เสน โดยกาหนดตวแปร x,y,z และt ใชคาสง legend('ชอ1', 'ชอ 2', 'ชอ 3')

Page 4: น.ส.รัชฎาภรณ์ จอมจันทร์ 58670372 กลุ่ม 3304

การplot กราฟแบบยอย

ถาตองการแสดง plot ยอยๆ สามารถทาไดโดยการใชคาสง subplot( rowของplotทแสดง, column ของ plot ทแสดง,จานวน

plot) เชน subplot(2,2,1) plot(x,y1)

subplot(2,2,2) plot(x,y2)

subplot(2,2,3) plot(x,y3)

subplot(2,2,4)plot(x,y4)

การทาภาพ3D

ใชคาสง [x,y] = meshgrid([-

2:.2:2]);

Z = x.*exp(-x.^2-y.^2);

figure

surf(x,y,Z,gradient(Z))

gradient(Z)

colorbar

Page 5: น.ส.รัชฎาภรณ์ จอมจันทร์ 58670372 กลุ่ม 3304

TopoToolbox

TopoToolbox คอเครองมอทถกเขยนขนเพอใชในการจดการเชงพนทของภมประเทศ ในโปรแกรม

MATLAB ถกพฒนาโดย Schwanghart, Scherler เชน การดคาความสงจากขอมลเชงเลข Digital elevation

Model (DEM) การแบงเสนทางนาจากคาความสง การวเคราะหพนทดนถลม (Landslide) เปนตน

อยางแรกทาการดาวนโหลด topotoolbox กอน หลงจากนนไปท matlab เปดโฟรเดอร topotoolbox

พมพคาสง DEM = GRIDobj(‘kidchakood.tif’) ลงไป

กด enter แลวจะไดตามรป

หลงจากนน ใชคาสง

imagesc(DEM)

Page 6: น.ส.รัชฎาภรณ์ จอมจันทร์ 58670372 กลุ่ม 3304

ถาตองการความลาดชนมากขน ใชคาสง

imageschs(DEM,min(gradient8(DEM),1))

การแสดงพนทในรปแบบ plot in 3D

ใชคาสง DEMc = crop(DEM,sub2ind(DEM.size,[150 350],[150 350]));

[Z,x,y] = GRIDobj2mat(DEMc);

surf(x,y,double(Z))

Page 7: น.ส.รัชฎาภรณ์ จอมจันทร์ 58670372 กลุ่ม 3304

Fill sinks เปนคาสงทใชในการศกษาการไหลของนาตามสภาพภมประเทศ การใชฟงกชน FLOWobj

FD = FLOWobj(DEMf);

A = flowacc(FD);

imageschs(DEM,dilate(sqrt(A),ones(5)),'colormap',flipud(copper));

การระบายของลมนา Drainagebasins

ใชคาสง

Page 8: น.ส.รัชฎาภรณ์ จอมจันทร์ 58670372 กลุ่ม 3304

Image Processing Basic

พนฐานของการประมวลผลของภาพ โดยวธการดานตางๆ เชน การปรบส, การปรบเชงรงส, การปรบแกการ

บดเบยวของภาพ

การปรบภาพสเปนภาพขาวดา

1.Browse for folder เลอกโฟลเดอรทตองการ Enter ตงชอตวแปร ตามดวยชอภาพทเลอก Enter

2.ใช whos picture เพอตรวจสอบขนาดของภาพ

Page 9: น.ส.รัชฎาภรณ์ จอมจันทร์ 58670372 กลุ่ม 3304

3. เรยกไฟลภาพมาดดวยคาสง figure , imshow(picture)

4. เปลยนสภาพเปนส โทน เกวสเกล ดวยคาสง grey1=rgb2greyแสดงผล figure , imshow(grey1)

Page 10: น.ส.รัชฎาภรณ์ จอมจันทร์ 58670372 กลุ่ม 3304

5. เรยกดคาการสะทอนดวยคาสง figure , imshist(grey1)

6. ทาภาพเปนขาวดา

Page 11: น.ส.รัชฎาภรณ์ จอมจันทร์ 58670372 กลุ่ม 3304

Image Function การสรางเมทตรกใหเปนส

Image(ชอตวแปร) เชน >> C = [0 2 4 6; 8 10 12 14; 16 18 20 22];

image C

colorbar

การตรวจสอบ webcam

ใชฟงกชน imaqtool เพอตรวจสอบ driver ของกลองWebcam

Imaqtool >>vid = videoinput('winvideo', 1,'MJPG_1280x720');

Page 12: น.ส.รัชฎาภรณ์ จอมจันทร์ 58670372 กลุ่ม 3304

การทาภาพ 3 มต

1.คนหารป stereo pair ใน Google และนามาตดเปน 2 ภาพ ใน paint

2.เปดโปรแกรม matlab และเปดโฟรเดอรทเกบรปไว

Page 13: น.ส.รัชฎาภรณ์ จอมจันทร์ 58670372 กลุ่ม 3304

3.พมพโคดลงไปใน matlab

Page 14: น.ส.รัชฎาภรณ์ จอมจันทร์ 58670372 กลุ่ม 3304

พมพเสรจแลวกด enter ภาพ3มตกจะขนมา

Page 15: น.ส.รัชฎาภรณ์ จอมจันทร์ 58670372 กลุ่ม 3304

Guide for Matlab

ใชคาสง layout editor เพอเปดตาราง

Page 16: น.ส.รัชฎาภรณ์ จอมจันทร์ 58670372 กลุ่ม 3304

กด push button เพอสรางปม

เปด axes

กดตกแตงปม

หลงจากนน เรยกโปรแกรมแลวแทรกโคดลงไป