Commit 33f8b845c08e062fecfaaec790e8b181f2cdd669

Authored by Josh Klontz
1 parent 50ec8418

exposed more SIFT properties

Showing 1 changed file with 21 additions and 1 deletions
openbr/plugins/keypoint.cpp
... ... @@ -159,15 +159,35 @@ class SIFTDescriptorTransform : public UntrainableTransform
159 159 {
160 160 Q_OBJECT
161 161 Q_PROPERTY(int size READ get_size WRITE set_size RESET reset_size STORED false)
  162 + Q_PROPERTY(QList<int> sizes READ get_sizes WRITE set_sizes RESET reset_sizes STORED false)
  163 + Q_PROPERTY(int nFeatures READ get_nFeatures WRITE set_nFeatures RESET reset_nFeatures STORED false)
  164 + Q_PROPERTY(int nOctaveLayers READ get_nOctaveLayers WRITE set_nOctaveLayers RESET reset_nOctaveLayers STORED false)
  165 + Q_PROPERTY(double contrastThreshold READ get_contrastThreshold WRITE set_contrastThreshold RESET reset_contrastThreshold STORED false)
  166 + Q_PROPERTY(double edgeThreshold READ get_edgeThreshold WRITE set_edgeThreshold RESET reset_edgeThreshold STORED false)
  167 + Q_PROPERTY(double sigma READ get_sigma WRITE set_sigma RESET reset_sigma STORED false)
162 168 BR_PROPERTY(int, size, 1)
  169 + BR_PROPERTY(QList<int>, sizes, QList<int>())
  170 + BR_PROPERTY(int, nFeatures, 0)
  171 + BR_PROPERTY(int, nOctaveLayers, 3)
  172 + BR_PROPERTY(double, contrastThreshold, 0.04)
  173 + BR_PROPERTY(double, edgeThreshold, 10)
  174 + BR_PROPERTY(double, sigma, 1.6)
163 175  
164 176 SIFT sift;
165 177  
  178 + void init()
  179 + {
  180 + if (sizes.empty())
  181 + sizes.append(size);
  182 + sift = SIFT(nFeatures, nOctaveLayers, contrastThreshold, edgeThreshold, sigma);
  183 + }
  184 +
166 185 void project(const Template &src, Template &dst) const
167 186 {
168 187 std::vector<KeyPoint> keyPoints;
169 188 foreach (const QPointF &val, src.file.points())
170   - keyPoints.push_back(KeyPoint(val.x(), val.y(), size));
  189 + foreach (const int r, sizes)
  190 + keyPoints.push_back(KeyPoint(val.x(), val.y(), r));
171 191  
172 192 Mat m;
173 193 sift(src, Mat(), keyPoints, m, true);
... ...