mirror of
https://github.com/opencv/opencv.git
synced 2024-11-25 19:50:38 +08:00
Java API: added wrapper for GenericDescriptorMatcher
This commit is contained in:
parent
c44cdef24c
commit
cc6b7edf95
@ -201,7 +201,6 @@ public:
|
||||
default:
|
||||
CV_Error( CV_StsBadArg, "Specified descriptor matcher type is not supported." );
|
||||
break;
|
||||
|
||||
}
|
||||
|
||||
Ptr<DescriptorMatcher> matcher = DescriptorMatcher::create(name);
|
||||
@ -303,6 +302,94 @@ public:
|
||||
}
|
||||
};
|
||||
|
||||
class CV_EXPORTS_AS(GenericDescriptorMatcher) javaGenericDescriptorMatcher : public GenericDescriptorMatcher
|
||||
{
|
||||
public:
|
||||
#if 0
|
||||
CV_WRAP virtual void add( const vector<Mat>& images,
|
||||
vector<vector<KeyPoint> >& keypoints );
|
||||
CV_WRAP const vector<Mat>& getTrainImages() const;
|
||||
CV_WRAP const vector<vector<KeyPoint> >& getTrainKeypoints() const;
|
||||
CV_WRAP virtual void clear();
|
||||
CV_WRAP virtual bool isMaskSupported();
|
||||
CV_WRAP virtual void train();
|
||||
CV_WRAP void classify( const Mat& queryImage, vector<KeyPoint>& queryKeypoints,
|
||||
const Mat& trainImage, vector<KeyPoint>& trainKeypoints ) const;
|
||||
CV_WRAP void classify( const Mat& queryImage, vector<KeyPoint>& queryKeypoints );
|
||||
CV_WRAP void match( const Mat& queryImage, vector<KeyPoint>& queryKeypoints,
|
||||
const Mat& trainImage, vector<KeyPoint>& trainKeypoints,
|
||||
vector<DMatch>& matches, const Mat& mask=Mat() ) const;
|
||||
CV_WRAP void knnMatch( const Mat& queryImage, vector<KeyPoint>& queryKeypoints,
|
||||
const Mat& trainImage, vector<KeyPoint>& trainKeypoints,
|
||||
vector<vector<DMatch> >& matches, int k,
|
||||
const Mat& mask=Mat(), bool compactResult=false ) const;
|
||||
CV_WRAP void radiusMatch( const Mat& queryImage, vector<KeyPoint>& queryKeypoints,
|
||||
const Mat& trainImage, vector<KeyPoint>& trainKeypoints,
|
||||
vector<vector<DMatch> >& matches, float maxDistance,
|
||||
const Mat& mask=Mat(), bool compactResult=false ) const;
|
||||
CV_WRAP void match( const Mat& queryImage, vector<KeyPoint>& queryKeypoints,
|
||||
vector<DMatch>& matches, const vector<Mat>& masks=vector<Mat>() );
|
||||
CV_WRAP void knnMatch( const Mat& queryImage, vector<KeyPoint>& queryKeypoints,
|
||||
vector<vector<DMatch> >& matches, int k,
|
||||
const vector<Mat>& masks=vector<Mat>(), bool compactResult=false );
|
||||
CV_WRAP void radiusMatch( const Mat& queryImage, vector<KeyPoint>& queryKeypoints,
|
||||
vector<vector<DMatch> >& matches, float maxDistance,
|
||||
const vector<Mat>& masks=vector<Mat>(), bool compactResult=false );
|
||||
CV_WRAP virtual bool empty() const;
|
||||
#endif
|
||||
|
||||
enum
|
||||
{
|
||||
ONEWAY = 1,
|
||||
FERN = 2
|
||||
};
|
||||
|
||||
CV_WRAP_AS(clone) javaGenericDescriptorMatcher* jclone( bool emptyTrainData=false ) const
|
||||
{
|
||||
Ptr<GenericDescriptorMatcher> matcher = this->clone(emptyTrainData);
|
||||
matcher.addref();
|
||||
return (javaGenericDescriptorMatcher*)((GenericDescriptorMatcher*) matcher);
|
||||
}
|
||||
|
||||
//supported: OneWay, Fern
|
||||
//unsupported: Vector
|
||||
CV_WRAP static javaGenericDescriptorMatcher* create( int matcherType )
|
||||
{
|
||||
string name;
|
||||
|
||||
switch(matcherType)
|
||||
{
|
||||
case ONEWAY:
|
||||
name = "ONEWAY";
|
||||
break;
|
||||
case FERN:
|
||||
name = "FERN";
|
||||
break;
|
||||
default:
|
||||
CV_Error( CV_StsBadArg, "Specified generic descriptor matcher type is not supported." );
|
||||
break;
|
||||
}
|
||||
|
||||
Ptr<GenericDescriptorMatcher> matcher = GenericDescriptorMatcher::create(name);
|
||||
matcher.addref();
|
||||
return (javaGenericDescriptorMatcher*)((GenericDescriptorMatcher*) matcher);
|
||||
}
|
||||
|
||||
CV_WRAP void write( const string& fileName ) const
|
||||
{
|
||||
FileStorage fs(fileName, FileStorage::WRITE);
|
||||
((GenericDescriptorMatcher*)this)->write(fs);
|
||||
fs.release();
|
||||
}
|
||||
|
||||
CV_WRAP void read( const string& fileName )
|
||||
{
|
||||
FileStorage fs(fileName, FileStorage::READ);
|
||||
((GenericDescriptorMatcher*)this)->read(fs.root());
|
||||
fs.release();
|
||||
}
|
||||
};
|
||||
|
||||
#if 0
|
||||
enum
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user