資源簡介
這個程序可以識別出圖片中的特定水果,是基于matlab 換一個原圖的話也一樣可以識別途中的某些物體 試過很好用
代碼片段和文件信息
close?all
%%??讀入圖像
picture=imread(‘原圖.jpg‘);??????%讀入原圖
figureimshow(picture);
%%???轉換色彩空間;利用彩色空間轉換函數把圖像從RGB色彩空間轉換到L*a*b色彩空間。??
cform=makecform(‘srgb2lab‘);??????%色彩空間轉換,rgb空間轉換成L*a*b*空間結構
L_AB=applycform(picturecform);???%將i中的顏色值轉換到顏色變換結構cform指定的顏色空間,692*1024*3
%%??進行K-mean聚類
ab=double(L_AB(::2:3));?????????%取出lab空間的a分量和b分量。。二維(692*1024)*2
hang=size(ab1);??????????????????%獲取ab的行數1為行
lie=size(ab2);???????????????????%獲取矩陣的列數,2為列
ab=reshape(abhang*lie[]);???????%轉化為nrows行ncols列的矩陣到ab
ncolors=4;????????????????????????%分割的區域個數為8?
[cluster_idx??cluster_center]=kmeans(abncolors‘distance‘‘sqEuclidean‘‘Replicates‘3);%重復類聚三次,避免局部最小值
%%??用k均值聚類算法對圖像像素標記
pixel_labels=reshape(cluster_idxhanglie);???%矩形形狀改變
figureimshow(pixel_labels[]);????
%%??生成圖像的色彩分割圖,既是顯示分割后的各個區域
??%???把生成的圖片保存下來,以從中間尋找合適的圖片給finial_2.m使用。
segmented_images=cell(13);???????????????????%細胞形數組
rgb_label=repmat(pixel_labels[1?1?3]);???????%矩陣平鋪
for?k=1:ncolors?????????????????????????????
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????1444??2014-12-29?20:38??基于matlab的圖像識別代碼\final_1.m
?????文件????????939??2014-12-29?21:35??基于matlab的圖像識別代碼\final_2.m
?????文件??????50617??2014-12-29?19:49??基于matlab的圖像識別代碼\kmeans.jpg
?????文件?????293961??2014-12-28?18:09??基于matlab的圖像識別代碼\原圖.jpg
?????目錄??????????0??2015-01-05?10:44??基于matlab的圖像識別代碼
-----------?---------??----------?-----??----
???????????????346961????????????????????5
- 上一篇:人工蜂群算法matlab程序
- 下一篇:航跡融合算法MATLAB仿真程序
評論
共有 條評論