Code covered by the BSD License
-
[BH,mean_dist]=sc_compute(Bsa...
[BH,mean_dist]=sc_compute(Bsamp,Tsamp,mean_dist,nbins_theta,nbins_r,r_inner,r_outer,out_vec);
-
[C,T]=hungarian(A)
% HUNGARIAN Solve the Assignment problem using the Hungarian method.
-
aco_matching(Y1, Y2, Dist1, D...
% Compute a matching between two shapes using the ACO algorithm
-
area_normalize(old_c)
% This function normalizes the area enclosed by a closed 2D contour
-
bipartite_matching(Y1, Y2, S)
% Compute the bipartite matching between two shapes according to the
-
construct_matching(G, S, Dist...
% This function constructs a matching for the ACO algorithm
-
contour_area(c)
% This function computes the area enclosed by a closed 2D contour.
-
contour_length(X)
% This function computes the length of a contour
-
dist2(x, c)
DIST2 Calculates squared distance between two sets of points.
-
distance_matrix(Y)
% Compute the pairwise distances between vertices/points of a 2D shape
-
evaluate_matching(G, S, Dist1...
% This function computes the cost for a given matching
-
extract_descriptor(Y, descrip...
% Compute a shape descriptor for a given shape
-
extract_shape_context(Y)
% Compute shape context descriptor
-
order_preserving_matching(Y1,...
% Compute an order preserving matching between two shapes according to
-
pairwise_geodesic_dist(Y, ope...
% Compute pairwise geodesic distances for an open or closed 2D contour
-
shape_matching(Y1, Y2, vararg...
% Compute the matching between two 2D shapes (contours or general sets
-
show_contour(c, varargin)
% This function plots a contour specified by a list of 2D points
-
signed_triangle_area(A, B, C)
% This function returns the *signed* area of a triangle
-
simmat_chisquare(g1, g2)
% This function returns a similarity matrix for two sets of
-
simmat_euclidean(g1, g2)
% This function returns a similarity matrix for two sets of
-
update_pheromones(G, matching...
% This function updates the pheromone matrix according to a set of
-
valid_range(vertex, matching,...
% This function computes the range of valid assignments for a vertex,
-
viz_matching(Y1, Y2, K, varar...
% This function uses numerical labelling to show the correspondence
-
set_global.m
-
View all files
from
Contour Correspondence via Ant Colony Optimization
by Oliver van Kaick
Computes a correspondence between two shapes based on ant colony optimization (ACO).
|
| distance_matrix(Y) |
%
% Compute the pairwise distances between vertices/points of a 2D shape
%
% D = distance_matrix(Y)
%
% Input -
% - Y: input shape (contour or general point set). Y is a matrix of
% dimensions <n x d>, where 'n' is the number of vertices/points in
% the shape and d = 2 is the dimension of the points
%
% Output -
% - D: structure containing the pairwise distances for the shape. The
% structure has two fields: 'value' and 'max_value'. 'value' is a
% matrix of dimensions <n x n>, where value(i, j) is the distance
% between vertices/points 'i' and 'j' of the shape. 'max_value'
% stores the maximum distance. If the global option 'contours' is set
% to 1, pairwise geodesic distances (distances along the contour) are
% computed. Otherwise, pairwise Euclidean distances are computed,
% assuming that we have an arbitrary set of 2D points without
% connectivity. The global variable 'open_contour' specifies whether
% the contour is open or closed (connected from vertex 1 to vertex
% 'n' or not).
%
function D = distance_matrix(Y)
%
% Copyright (c) 2007 Oliver van Kaick <ovankaic@cs.sfu.ca>
%
% Get global variables
global contours;
global open_contour;
% Compute geodesic distance along the shape for contours, or Euclidean
% distance for general point sets
if contours
% Compute geodesic distance
M = pairwise_geodesic_dist(Y, open_contour);
% Create distance structure
D = struct;
D.max_value = max(max(M));
D.value = M;
else
% Compute pairwise Euclidean distances
M = zeros(size(Y, 1), size(Y, 1));
for i = 1:size(Y, 1)
for j = 1:size(Y, 2)
M(i, j) = sqrt(sum((Y(i,:) - Y(j,:)).^2));
end
end
% Create distance structure
D = struct;
D.max_value = max(max(M));
D.value = M;
end
|
|
Contact us at files@mathworks.com