資源簡介
利用svm完成圖像的目標分割,里面包含測試圖片,效果還不錯,值得用戶去學習

代碼片段和文件信息
%%?
tic;
close?all;
%?clear;
clc;
format?compact;
%%
%pic?=?imread(‘f3.jpg‘);
[filenamepathnameflag]=uigetfile(‘*.jpg‘‘請導入圖像文件‘);
pic=imread([pathnamefilename]);
figure;
imshow(pic);
%%?確定訓練集
TrainData_background?=?zeros(203‘double‘);
TrainData_foreground?=?zeros(203‘double‘);
%?背景采樣
msgbox(‘Please?get?20?background?samples‘‘Background?Samples‘‘help‘);
pause;
for?run?=?1:20
????[xy]?=?ginput(1);
????hold?on;
????plot(xy‘r*‘);
????x?=?uint8(x);
????y?=?uint8(y);
????TrainData_background(run1)?=?pic(xy1);
????TrainData_background(run2)?=?pic(xy2);
????TrainData_background(run3)?=?pic(xy3);
end?
%?待分割出來的前景采樣
msgbox(‘Please?get?20?foreground?samples?which?is?the?part?to?be?segmented‘‘Foreground?Samples‘‘help‘);
pause;
for?run?=?1:20
????[xy]?=?ginput(1);
????hold?on;
????plot(xy‘ro‘);
????x?=?uint8(x);
????y?=?uint8(y);
????TrainData_foreground(run1)?=?pic(xy1);
????TrainData_foreground(run2)?=?pic(xy2);
????TrainData_foreground(run3)?=?pic(xy3);
end?
%?let?background?be?0?&?foreground?1
TrainLabel?=?[zeros(length(TrainData_background)1);?...
????ones(length(TrainData_foreground)1)];
%%?建立支持向量機?基于libsvm
TrainData?=?[TrainData_background;TrainData_foreground];
model?=?svmtrain(TrainLabel?TrainData?‘-t?1?-d?1‘);
%%?進行預測?i.e.進行圖像分割?基于libsvm
preTrainLabel?=?svmpredict(TrainLabel?TrainData?model);
[mnk]?=?size(pic);
TestData?=?double(reshape(picm*nk));
TestLabal?=?svmpredict(zeros(length(TestData)1)?TestData?model);
%%?
ind?=?reshape([TestLabalTestLabalTestLabal]mnk);
ind?=?logical(ind);
pic_seg?=?pic;
pic_seg(~ind)?=?0;
figure;
imshow(pic_seg);
figure;
subplot(121);
imshow(pic);
subplot(122);
imshow(pic_seg);
%%
toc;
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件????2539047??2017-02-04?15:59??RedMaple_3.jpg
?????文件???????6386??2015-11-25?18:26??112502\f1.jpg
?????文件??????11618??2015-11-25?18:26??112502\f2.jpg
?????文件???????9972??2015-11-25?18:24??112502\f3.jpg
?????文件??????12822??2015-11-25?18:27??112502\f4.jpg
?????文件??????11100??2015-11-25?18:25??112502\f5.jpg
?????文件??????17122??2015-11-25?18:27??112502\f6.jpg
?????文件???????1747??2017-02-04?16:29??112502\seg2.asv
?????文件???????1747??2015-11-26?00:38??112502\seg2.m
?????文件?????483264??2015-11-25?21:21??112502\SVM演示效果.docx
?????文件????????385??2009-04-21?16:05??kmeans后的圖像分割\classtrain.mat
?????文件????????384??2009-04-21?16:21??kmeans后的圖像分割\classtrain_car_4.mat
?????文件????????339??2009-04-21?16:23??kmeans后的圖像分割\classtrain_figure_1.mat
?????文件????????338??2009-04-21?16:25??kmeans后的圖像分割\classtrain_ob
?????文件???????5272??2008-09-19?16:22??kmeans后的圖像分割\determine_alpha1amended.m
?????文件???????3493??2008-08-26?16:40??kmeans后的圖像分割\determine_alpha2.m
?????文件???????7330??2009-04-21?11:58??kmeans后的圖像分割\free?sample.fig
?????文件????????808??2009-04-21?14:33??kmeans后的圖像分割\free_sample_090421.asv
?????文件????????955??2009-04-21?15:48??kmeans后的圖像分割\free_sample_090421.m
?????文件???????1073??2005-07-26?16:24??kmeans后的圖像分割\Kernel.m
?????文件???????1500??2009-02-17?17:32??kmeans后的圖像分割\kmeans.m
?????文件????????347??2017-02-04?16:12??kmeans后的圖像分割\readme.txt
?????文件???????3245??2009-04-21?10:48??kmeans后的圖像分割\seglab_SMO_algorithm_090421.m
?????文件???????1917??2009-04-21?13:23??kmeans后的圖像分割\seg_lab_090421.asv
?????文件???????1990??2009-04-22?10:03??kmeans后的圖像分割\seg_lab_090421.m
?????文件????2333199??2017-02-04?15:59??RedMaple_1.jpg
?????文件????1691757??2017-02-04?15:59??RedMaple_2.JPG
?????目錄??????????0??2017-02-04?16:37??112502
?????目錄??????????0??2017-02-04?16:37??kmeans后的圖像分割
-----------?---------??----------?-----??----
............此處省略2個文件信息
- 上一篇:車牌識別畢業設計,不錯的參考
- 下一篇:算法與數據結構 經典與優秀解答源碼
評論
共有 條評論