2 * Image Library -- Comparitions of image signatures
4 * (c) 2006 Pavel Charvat <pchar@ucw.cz>
6 * This software may be freely distributed and used according to the terms
7 * of the GNU Lesser General Public License.
14 #include "images/math.h"
15 #include "images/images.h"
16 #include "images/signature.h"
20 #define ASORT_PREFIX(x) image_signatures_dist_integrated_##x
21 #define ASORT_KEY_TYPE uns
22 #define ASORT_ELT(i) items[i]
23 #define ASORT_EXTRA_ARGS , uns *items
24 #include "lib/arraysort.h"
27 #include "images/sig-cmp-gen.h"
28 #include "images/sig-cmp-gen.h"
31 image_signatures_dist(struct image_signature *sig1, struct image_signature *sig2)
33 switch (image_sig_compare_method)
36 return image_signatures_dist_integrated(sig1, sig2);
38 return image_signatures_dist_fuzzy(sig1, sig2);
40 return image_signatures_dist_average(sig1, sig2);
47 image_signatures_dist_explain(struct image_signature *sig1, struct image_signature *sig2, void (*msg)(byte *text, void *param), void *param)
49 switch (image_sig_compare_method)
52 return image_signatures_dist_integrated_explain(sig1, sig2, msg, param);
54 return image_signatures_dist_fuzzy_explain(sig1, sig2, msg, param);
56 return image_signatures_dist_average_explain(sig1, sig2, msg, param);