資源簡介
MATLAB自己實現的分水嶺算法,細節都是自己實現的,嚴格按照原本步驟實現,沒有任何加速算法,帶一張圖片,可與MATLAB自帶分水嶺算法比較,看不出區別,中科大數字圖像分析作業,自己做的,慎重下載

代碼片段和文件信息
%%%?獲取分水嶺,運行時間較長
clear;clc;close?all;
img=imread(‘gecko.bmp‘);
img_gray=myrgb2gray(img);
img_gray__=img_gray;
%%?求梯度
img_gray_=double(img_gray);
[GXGY]=mygradient(img_gray_);??
img_grad=sqrt(GX.*GX+GY.*GY);????????????????
%?img_grad=uint8(img_grad);
%?imshow(img_grad)
%%?數據預處理??平滑??腐蝕膨脹
img_blur=myblur(img_grad);
img_blur=uint8(img_blur);
%%?腐蝕膨脹
se?=?strel(‘disk‘2);
Ie?=?imerode(img_gray?se);
Iobr?=?imreconstruct(Ie?img_gray);
Iobrd?=?imdilate(Iobr?se);
Iobrcbr?=?imreconstruct(imcomplement(Iobrd)?imcomplement(Iobr));
Iobrcbr?=?imcomplement(Iobrcbr);
bw?=?im2bw(Iobrcbr?graythresh(Iobrcbr));
D?=?bwdist(bw);
D=uint8(D);
%?imshow(D[])
%%?獲取分水嶺?并保存??運行時間較長
water_line=mywatershed(D);
water_line=(water_line~=0);
save(‘water_line.mat‘‘water_line‘)
%?water_line__=watershed(D);???????????%與系統函數對比
%?water_line_=(water_line__==0)
%?imshow(water_line_[])
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????1425??2017-12-22?20:35??matlab分水嶺\fenshuiling.asv
?????文件?????234054??2008-05-27?22:57??matlab分水嶺\gecko.bmp
?????文件????????969??2017-12-30?23:37??matlab分水嶺\get_waterline.m
?????文件????????333??2017-12-27?22:54??matlab分水嶺\img_kmeans.m
?????文件????????638??2017-12-27?13:10??matlab分水嶺\myblur.m
?????文件????????614??2017-12-22?22:15??matlab分水嶺\mygradient.m
?????文件????????169??2017-12-23?12:54??matlab分水嶺\myrgb2gray.m
?????文件???????1643??2017-12-22?21:13??matlab分水嶺\mywatershed.m
?????文件????????409??2018-01-03?14:55??matlab分水嶺\readme.txt
?????文件???????1568??2018-01-03?14:31??matlab分水嶺\regrow.m
?????文件???????1692??2017-12-22?21:17??matlab分水嶺\sepcor.m
?????文件????????364??2017-12-30?23:36??matlab分水嶺\show_waterline.m
?????文件???????5987??2017-12-30?23:33??matlab分水嶺\water_line.mat
?????目錄??????????0??2018-03-03?12:01??matlab分水嶺
-----------?---------??----------?-----??----
???????????????249865????????????????????14
- 上一篇:核主成分分析法matlab源代碼
- 下一篇:奇異譜分析
評論
共有 條評論