summaryrefslogtreecommitdiffstats
path: root/SD-VBS/common/toolbox/toolbox_basic/textons/find_textons1.m
diff options
context:
space:
mode:
Diffstat (limited to 'SD-VBS/common/toolbox/toolbox_basic/textons/find_textons1.m')
-rwxr-xr-xSD-VBS/common/toolbox/toolbox_basic/textons/find_textons1.m37
1 files changed, 37 insertions, 0 deletions
diff --git a/SD-VBS/common/toolbox/toolbox_basic/textons/find_textons1.m b/SD-VBS/common/toolbox/toolbox_basic/textons/find_textons1.m
new file mode 100755
index 0000000..b192015
--- /dev/null
+++ b/SD-VBS/common/toolbox/toolbox_basic/textons/find_textons1.m
@@ -0,0 +1,37 @@
1function [centers,label,post,d2]=find_textons(fv,ncenters,centers_in,n_iter);
2% [centers,label,post,d2]=find_textons(FIw,ncenters,centers_in,n_iter);
3%
4% find textons using kmeans for windowed portion FIw of filtered image
5%
6% to start with centers pulled randomly from image, set centers_in=[]
7
8[N1,N2] =size(fv);
9
10% take centers randomly from within image
11if isempty(centers_in)
12 rndnum=1+floor(N1*rand(1,ncenters));
13 centers_in=fv(rndnum,:);
14end
15
16options = foptions;
17options(1)=1; % Prints out error values.
18options(5) = 0;
19if nargin<4
20 n_iter=15;
21end
22options(14) = n_iter; % Number of iterations.
23
24[centers,options,d2,post]=kmeans2(centers_in,fv,options);
25
26
27% retrieve cluster number assigned to each feature vector
28[minval,label]=min(d2,[],2);
29
30
31h = hist(label(:),[1:max(label(:))]);
32a = h>0;
33a = cumsum(a);
34
35[nr,nc] = size(label);
36label = reshape(a(label(:)),nr,nc);
37