/usr/share/octave/site/m/vlfeat/toolbox/demo/vl_demo_imdisttf.m is in octave-vlfeat 0.9.17+dfsg0-6build1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 | % VL_DEMO_IMDISTTF Demonstrates image distance transform
% load image
im = imread(fullfile(vl_root, 'data', 'roofs1.jpg')) ;
im = im(100:200,100:200,:) ;
imSize = [size(im,1) size(im,2)] ;
% creates an edge map
edges = zeros(imSize) + inf;
edges(edge(rgb2gray(im), 'canny')) = 0 ;
% compute distance transform
[distanceTransform, neighbors] = vl_imdisttf(single(edges)) ;
% plot
[u,v] = meshgrid(1:imSize(2),1:imSize(1)) ;
[v_,u_] = ind2sub(imSize, neighbors) ;
% avoid cluttering the plot too much
u = u(1:3:end,1:3:end) ;
v = v(1:3:end,1:3:end) ;
u_ = u_(1:3:end,1:3:end) ;
v_ = v_(1:3:end,1:3:end) ;
figure(1) ; clf ; imagesc(im) ; axis off image ;
figure(2) ; clf ; imagesc(edges) ; axis off image ;
figure(3) ; clf ; imagesc(edges) ; axis off image ;
hold on ; h = quiver(u,v,u_-u,v_-v,0) ; colormap gray ;
figure(4) ; clf ; imagesc(sqrt(distanceTransform)) ; axis off image ;
figure(1) ; vl_demo_print('imdisttf_src') ;
figure(2) ; vl_demo_print('imdisttf_edge') ;
figure(3) ; vl_demo_print('imdisttf_neigh') ;
figure(4) ; vl_demo_print('imdisttf_dist') ;
|