Upload
bongkotporn-jachernram
View
121
Download
0
Embed Size (px)
Citation preview
คมอโปรแกรม MATLAB
วชา 876131 หลกการเขยนโปรแกรม
จดท าโดย
นายกนกพนธ วรรณศร
รหสนสต 55670150 กลม 3301
เสนอ
อาจารย กฤษณะ อมสวาสด
ภาคการศกษาท 2/2558
คณะภมสารสนเทศศาสตร มหาวทยาลยบรพา
โปรแกรม MATLAB
แมตแลบ (องกฤษ : MATLAB : Matrix Laboratory) เปนซอฟตแวรในการค านวณและ
การเขยนโปรแกรมโปรแกรมหนงทมความสามารถครอบคลมตงแตการพฒนาอลกอรธม การ
สรางแบบจ าลองทางคณตศาสตร และการท าซมเลชนของระบบ การสรางระบบควบคม และ
โดยเฉพาะเรอง image processing และ wavelet การสรางเมตรกซ แมตแลบไดเรมตนขนเพอ
ตองการใหเราสามารถแกปญหาตวแปรทมลกษณะเปนเมทรกซไดงายขน แมตแลบเรมพฒนา
ครงแรกโดย Dr. Cleve Molor ซงเขยนโปรแกรมนขนมาดวยภาษาฟอรแทรน โดยโปรแกรมน
ไดพฒนาภายใตโครงการ LINPACK และ EISPACK แมตแลบสามารถท างานไดทงในลกษณะ
ของการตดตอโดยตรง คอการเขยนค าสงเขาไปทละค าสง เพอใหแมตแลบประมวลผลไปเรอย ๆ
หรอสามารถทจะรวบรวมชดค าสงเรานนเปนโปรแกรมกได ขอส าคญอยางหนงของแมตแลบก
คอ ขอมลทกตวจะถกเกบในลกษณะของแถวล าดบ คอในแตละตวแปรจะไดรบการแบงเปน
สวนยอยเลก ๆ ขน ซงการใชตวแปรเปนแถวล าดบในแมตแลบเราไมจ าเปนทจะตองจองมต
เหมอนกบการเขยนโปรแกรมในภาษาขนต าทวไป ซงท าใหเราสามารถทจะแกปญหาของตว
แปรทอยในลกษณะของเมทรกซและเวกเตอรไดโดยงาย ซงท าใหเราลดเวลาการท างานลงได
อยางมากเมอเทยบกบการเขยนโปรแกรมโดยภาษาซหรอภาษาฟอรแทรน
ความรเบองตนใน MATLAB
เปนการเรยนรเบองตนใน Matlab
เปนการท ากราฟ plot
เปนกราฟแบบ shading interp
เปนการท ากราฟแบบ colourbar
mesh(xx,yy,zz)
กด new script
จะไดตามภาพ
เขยนโคดขนมา
เลอกทเกบ
เสรจแลวกด run
กด change folder
จะไดลกโลกตามภาพ
plot
เปนการ plot กราฟ (x,y) จะไดออกมาดงภาพ
เปนการตงชอกราฟ โดยพมพวา title (‘…’)
เปนการตงชอแกน x โดยพมพวา xlabel (‘…’)
เปนการตงชอแกน y เชนเดยวกบแกน x แคเปลยนจาก xlabel (‘…’) เปน ylabel (‘…’)
เปนการเปลยนสเสนของกราฟ โดยพมพวา plot(x,y,'red') จะไดเปนเสนสแดงออกมา
เปนการเปลยนเสนของกราฟเปนเสนปะ plot(x,y,'--r')
เปนการเปลยนเสนของกราฟเชนกน plot(x,y,'-.r')
เชนเดยวกบเสนปะ
เชนเดยวกบเสนปะ
เชนเดยวกบเสนปะ
เปนการ plot กราฟแบบรวมๆ plot(x,t,'--r',y,t,'-.b',z,t,'-^k')
เปนการแทนสญลกษณ โดยใชค าวา legend('airplane','train','ship')
เปนการยายต าแหนงของสญลกษณ โดยพมพวา legend('location','northwest')
เปนการแยกกราฟในแตละประเภท ใชค าวา subplot
ไปท new script
ใสโคดทมลงไป จากนนกด run
กด data cursor เปนการบอกคาความสง
DEM & topotoolbox
เปนการก าหนดโฟลเดอรของ topotoolbox
จะไดออกมาดงภาพ
เลอกไฟลทตองการ
จากนนกด save แลว close ไดเลย
เปนการเลอกไฟลเพอไวใชท างาน
จากนนเลอกไฟลทตองการ
พมพโคดตามน
จะไดออกมาดงภาพ
เปนการพมพโคดเพอเรยกภาพออกมา
จะไดออกมาดงภาพ
เปนการใหภาพทชดเจนและละเอยดมากขน
จะไดออกมาดงภาพ
เปนการตดภาพทก าหนดขนาดได
เปนการก าหนดตวแปรของภาพ
เปนการท าใหภาพภเขามความสมจรงแบบ 3D
จะไดภาพของภเขาออกมาดงภาพ
เปนการ export แบบ ascii
เปนการ export แบบ geotiff
เปนการท า fillsinks
FD = FLOWobj(DEMf);
A = flowacc(FD);
imageschs(DEM,dilate(sqrt(A),ones(5)),'colormap',flipud(copper));
เปนการผานการ fillsinks มาแลว
จะไดออกมาดงภาพ
DB = drainagebasins(FD);
DB = shufflelabel(DB);
nrDB = numel(unique(DB.Z(:)))-1; % nr of drainage basins
STATS = regionprops(DB.Z,'PixelIdxList','Area','Centroid');
imageschs(DEM,DB);
hold on
for run = 1:nrDB;
if STATS(run).Area*DB.cellsize^2 > 10e6;
[x,y] = ind2coord(DB,...
sub2ind(DB.size,...
round(STATS(run).Centroid(2)),...
round(STATS(run).Centroid(1))));
text(x,y,...
num2str(round(STATS(run).Area * DB.cellsize^2/1e6)),...
'BackgroundColor',[1 1 1]);
end
end
hold off
title('drainage basins (numbers refer to drainage basin area in km^2)')
เปนการแบงลกษณะของลมน า
จะไดออกมาดงภาพ
Image Processing
เปนการก าหนดโฟลเดอรเพอน ามาใชท างาน
เลอกภาพทเราตองการจากท save ไวในโฟลเดอรของเรา
เปนการก าหนดตวแปรของภาพท 1
กด enter แลวจะไดดงภาพ
เปนค าสงในการเปดภาพขนมา
จะไดดงภาพ
เปนค าสงประกาศตวแปร
กด enter แลวจะไดดงภาพ
เปนค าสงทท าใหภาพเปนสเทา
จะไดดงภาพ
เปนค าสงทใชเปดกราฟของภาพขนมา
จะไดดงภาพ
เปนการบอกขนาดลกษณะของภาพ
กด enter แลวจะไดดงภาพ
เปนค าสงแปลงจากภาพสเปนขาวด า
กด enter แลวจะไดดงภาพ
เปนค าสงโชวภาพขาวด าขนมา
จะไดดงภาพ
เปดภาพท 2 ขนมา
โชวภาพท 2 ขนมา
จะไดดงภาพ
เปนการเปดกราฟของภาพท 2
จะไดดงภาพ
เปนค าสงการปรบแกภาพใหมความชดเจนมากยงขน
เปนค าสงโชวภาพขนมา
จะไดดงภาพ
เปดกราฟขนมา
จะไดดงภาพ
พมพค าสงดงภาพ
จะไดดงภาพ
เปนค าสงเปดกลองขนมา
จะไดดงภาพ
เลอกขนาดของภาพ
จากนนกด start
จะไดดงภาพ
เปนค าสงเรยกไฟลภาพขนมา
เปนค าสงการแสดงผลลพธออกมา
เปนค าสงแสดงการถายภาพ
3D Stereo Pair
เลอกภาพทไดจากการคนหา stereo pair
จากนนเลอก select แลวคลมภาพครงดานซาย แลวกด crop
เลอกท save ดงภาพ และท าภาพครงดานขวาเชนเดยวกบครงดานซาย
ไปท matlab กดดงภาพ เพอเลอกภาพทเราตองการ
กด Ctrl+N แลวใสโคดทเราเตรยมไว
เลอกทเกบ
จากนนกด run
จะไดภาพ 3D ดงภาพ
Guide
พมพ guide แลวกด enter
จะไดออกมาดงภาพ
จากนนกด ok
จะไดออกมาดงภาพ
เลอกตามภาพเพอใหแสดงชอของเครองมอขนมา
จะไดออกมาดงภาพ
ท าการขยายโดยดงจากมมขวาลาง
เลอกดงภาพ
สรางขนมา 5 ปม
จากนนเลอกดงภาพ
สรางดงภาพ
Double click ทปมแรก
จะไดออกมาดงภาพ
ปรบตามทเราตองการ
ท าแบบนนจนครบจ านวนปม
เลอกดงภาพ
ใสโคดทเราเตรยมไว ท าแบบนทง 5 ปม
จากนนกด run
จะไดออกมาดงภาพ
กดท load image แลวเลอกภาพขนมา จะไดออกมาดงภาพ
การผสมสภาพ
ใสโคดทมลงไป
จะไดออกมาดงภาพ