plastimatch
Loading...
Searching...
No Matches
sift.h
Go to the documentation of this file.
1/* -----------------------------------------------------------------------
2 See COPYRIGHT.TXT and LICENSE.TXT for copyright and license information
3 ----------------------------------------------------------------------- */
4#ifndef _sift_h_
5#define _sift_h_
6
7#include "plmutil_config.h"
8#include <string>
9#include <itkScaleInvariantFeatureImageFilter.h>
10#include "plm_macros.h"
11#include "itk_image_type.h"
12
13class Sift_private;
14class Plm_image;
15
20public:
21 Sift ();
22 ~Sift ();
23public:
24 Sift_private *d_ptr;
25public:
26
29
31 void set_image (const char* image_fn);
34 void set_image (const std::string& image_fn);
36 void set_image (Plm_image* image);
38 void set_image (const FloatImageType::Pointer image);
39
41 void set_contrast_threshold (float contrast_threshold);
43 void set_curvature_threshold (float curvature_threshold);
45
48
49 void run ();
52 static void match_features (Sift& sift1, Sift& sift2,
53 const char* filename1, const char* filename2,
54 float match_ratio);
56
59
62 itk::ScaleInvariantFeatureImageFilter<FloatImageType,3>::PointSetTypePointer
63 get_keypoints ();
65 void save_pointset (const char* filename);
67};
68
69#endif
The Plm_image class represents a three-dimensional volume. The volume is an abstraction that can co...
Definition plm_image.h:27
The Sift class implements a SIFT feature detector.
Definition sift.h:19
void set_image(const FloatImageType::Pointer image)
Set the input image as an ITK image.
void set_image(Plm_image *image)
Set the input image as a Plm image.
Sift_private * d_ptr
Definition sift.h:24
#define PLMUTIL_API
Definition plmutil_config.h:26