root / rgbdslam / external / siftgpu / README.txt @ 9240aaa3
History | View | Annotate | Download (2.41 KB)
1 | 9240aaa3 | Alex | A GPU implementation of David Lowe's Scale Invariant Feature Transform |
---|---|---|---|
2 | |||
3 | Changchang wu |
||
4 | |||
5 | http://cs.unc.edu/~ccwu |
||
6 | |||
7 | University of North Carolina at Chapel Hill |
||
8 | |||
9 | |||
10 | |||
11 | |||
12 | 1. SIFT |
||
13 | |||
14 | SIFTGPU is an implementation of SIFT for GPU. SiftGPU uses GPU to process pixels and features |
||
15 | parallely in Gaussian pyramid construction, DoG keypoint detection and descriptor generation |
||
16 | for SIFT. Compact feature list is efficiently build through a GPU/CPU mixed reduction. |
||
17 | |||
18 | SIFTGPU is inspired by Andrea Vedaldi's sift++ and Sudipta N Sinha et al's GPU-SIFT. Many |
||
19 | parameters of sift++ ( for example, number of octaves,number of DOG levels, edge threshold, |
||
20 | etc) are available in SiftGPU. |
||
21 | |||
22 | |||
23 | SIFTGPU also includes a GPU exhaustive/guided sift matcher SiftMatchGPU. It basically multiplies |
||
24 | the descriptor matrix on GPU and find closest feature matches on GPU. GLSL/CUDA/CG implementations |
||
25 | are all provided. |
||
26 | |||
27 | NEW: The latest SIFTGPU also enables you to use Multi-GPUs and GPUS on different computers. |
||
28 | Check doc/manual.pdf for more information. You can modify some marcros definition in |
||
29 | SimpleSIFT.cpp and speed.cpp to enable the testing of the new functions. |
||
30 | |||
31 | |||
32 | 2. Requirements |
||
33 | |||
34 | The default implemntation uses GLSL, and it requires a GPU that has large memory and supports |
||
35 | dynamic branching. For nVidia graphic cards, you can optionally use CG(require fp40) or |
||
36 | CUDA implementation. You can try different implementations and to find out the fastest one |
||
37 | for different image sizes and parameters. |
||
38 | |||
39 | The GLSL version may not work on ATI now. They did compile sucessfully with ATI Catalyst 8.9, |
||
40 | but not any more with 9.x versions. |
||
41 | |||
42 | SiftGPU uses DevIl Image library, GLEW and GLUT. You'll need to make sure your system has |
||
43 | all the dependening libraries. SiftGPU should be able to run on any operation system that supports |
||
44 | the above libraries |
||
45 | |||
46 | For windows system visual studio solution are provided as VC/SiftGPU.dsw, VC/SiftGPU.sln and |
||
47 | VC/SiftGPU_CUDA_Enabled.sln. Linux/Mac makefile is in folder Linux of the package. |
||
48 | |||
49 | |||
50 | 3. Helps |
||
51 | |||
52 | Use -help to get parameter information. Check /doc/manual.pdf for samples and explanations. |
||
53 | In the vc workspace, there is a project called SimpleSIF that gives an example of simple |
||
54 | SiftGPU usage. There are more examples of different ways of using SiftGPU in manual.pdf |
||
55 | |||
56 | |||
57 | Check /doc/manual.pdf for help on the viewer. |
||
58 |