36 #include <QtCore/QObject> 37 #include <QtCore/QString> 38 #include <QtCore/QMap> 39 #include <QtCore/QMultiMap> 40 #include <QtCore/QPair> 41 #include <QtCore/QVector> 42 #include <QtGui/QTransform> 43 #include <QtCore/QRect> 44 #include <opencv2/opencv.hpp> 57 static void affineSkew(
float tilt,
59 const cv::Mat & image,
65 FindObject(
bool keepImagesInRAM_ =
true, QObject * parent = 0);
69 bool saveSession(
const QString & path);
72 bool saveVocabulary(
const QString & filePath)
const;
73 bool loadVocabulary(
const QString & filePath);
75 int loadObjects(
const QString & dirPath,
bool recursive =
false);
76 const ObjSignature * addObject(
const QString & filePath);
77 const ObjSignature * addObject(
const cv::Mat & image,
int id=0,
const QString & filePath = QString());
79 void removeObject(
int id);
80 void removeAllObjects();
84 void updateDetectorExtractor();
85 void updateObjects(
const QList<int> & ids = QList<int>());
86 void updateVocabulary(
const QList<int> & ids = QList<int>());
88 const QMap<int, ObjSignature*> &
objects()
const {
return objects_;}
92 void addObjectAndUpdate(
const cv::Mat & image,
int id=0,
const QString & filePath = QString());
93 void removeObjectAndUpdate(
int id);
94 void detect(
const cv::Mat & image);
101 void clearVocabulary();
QMap< int, cv::Mat > objectsDescriptors_
const QMap< int, ObjSignature * > & objects() const
QMap< int, ObjSignature * > objects_
QMap< QString, QVariant > ParametersMap
const Vocabulary * vocabulary() const
bool isSessionModified() const
QMap< int, int > dataRange_