Kmeans: 总体而言,速度(单线程): yael_kmeans > litekmeans ~ vl_kmeans
1.vl_kemans (win10 + matlab 15 + vs13编译有问题,但win7 + matlab13 +vs12可以)
2.litekmeans (直接使用,single form更快)
http://www.cad.zju.edu.cn/home/dengcai/Data/code/litekmeans.m
3.yael_kmeans (multithreading) 编译时选择useopenmp=yes, matlab的Make文件要加上-fopenmp,否则无法多线程(会出现 ignoring #pragma omp parallel )。 yael_kmeans加上nt的设置,否则无法调整nt值。例如:
mex mex_sum_openmp.c CFLAGS="$CFLAGS -fopenmp" LDFLAGS="$LDFLAGS -fopenmp"
流程:./configure.sh配置 -> make -> 编译通用文件 -> 修改matlab中的Make,然后在matlab中运行make文件
https://gforge.inria.fr/frs/?group_id=2151&release_id=6405
openmp编程:http://www.ibm.com/developerworks/cn/aix/library/au-aix-openmp-framework/
ANN:
1.Flann (按照教程编译)
http://www.cs.ubc.ca/research/flann/
特别的,针对python版本编译:把src/python的pyflann拷贝刀./build/src/python下,然后再运行sudo python setup.py install