OpenCV各个detector/descriptor/matcher的创建和使用
来源:互联网 发布:淮海工学院网络公选课 编辑:程序博客网 时间:2024/06/05 03:17
OpenCV里有很多的feature,建立和使用方法也比较杂,现在整理一下避免以后用到。
newDynamicAdaptedFeatureDetector( AdjusterAdapter::create("SURF"), 100, 500, 5);
SurfDescriptorExtractor extractor; BRISKD.create("BRISK"); BRISKD.detect(object,kp_object); BRISKD.compute(object,kp_object,des_object);
1、detector
统一的定义方式:
Ptr detector= FeatureDetector::create("STAR");
"FAST" – FastFeatureDetector
"STAR" – StarFeatureDetector
"SIFT" – SIFT (nonfree module)
"SURF" – SURF (nonfree module)
"ORB" – ORB
"BRISK" – BRISK
"MSER" – MSER
"GFTT" – GoodFeaturesToTrackDetector
"HARRIS" – GoodFeaturesToTrackDetector with Harris detectorenabled
"Dense" – DenseFeatureDetector
"SimpleBlob" – SimpleBlobDetector
除了统一定义方式之外,有的可以用它自己的feature名字定义,比如
SurfFeatureDetector detector;
SiftFeatureDetector detector;
FastFeatureDetector detector;
STARFeatureDetector detector;
还有一种统一定义方式:
cv::Ptr detector2= cv::Algorithm::create("BRISK");
其中cv::可以去掉。
动态的特征点定义方式:
Ptr detector =
2、Descriptorextractor
统一定义方式: Ptrextractor=DescriptorExtractor::create("SURF");
"SIFT" – SIFT
"SURF" – SURF
"BRIEF" – BriefDescriptorExtractor
"BRISK" – BRISK
"ORB" – ORB
"FREAK" – FREAK
个别定义方式:Ptr extractor=new SiftDescriptorExtractor;
Ptrextractor =newSurfDescriptorExtractor;
Ptrextractor =newBriefDescriptorExtractor;
其他定义方式:
SiftDescriptorExtractor extractor;
BriefDescriptorExtractor extractor;
其他的一些特征可以直接定义对象并用来detect和extract特征
http://docs.opencv.org/modules/features2d/doc/feature_detection_and_description.html?highlight=brisk#BRISK: public Feature2D
比方说 BRISK BRISKD(60,4,1.0f);
3、matcher
统一定义方式 Ptr matcher =DescriptorMatcher::create("FlannBased");
BruteForce (it uses L2 )
BruteForce-L1
BruteForce-Hamming
BruteForce-Hamming(2)
FlannBased
其他定义方式:
BFMatcher matcher(type);
normType – One of NORM_L1, NORM_L2, NORM_HAMMING,NORM_HAMMING2. L1 and L2 norms are preferable choices for SIFT andSURF descriptors, NORM_HAMMING should be used with ORB, BRISK andBRIEF, NORM_HAMMING2 should be used with ORB when WTA_K==3 or 4(see ORB::ORB constructor description).
FlannBasedMatcher matcher;
阅读全文
0 0
- OpenCV各个detector/descriptor/matcher的创建和使用
- OpenCV之特征检测器(Feature Detector),描述子提取器(Descriptor Extractor)和描述子匹配器(Descriptor Matcher)
- Pattern和Matcher的结合使用
- java中Matcher和pattern的使用
- Opencv滑动条的创建和使用
- OpenCV - 滚动条的创建和使用
- Java matcher的使用
- java的pattern类和matcher类的使用详解
- Pattern和Matcher结合使用
- java 正则表达式的使用Pattern和Matcher
- Java中Pattern和Matcher的理解以及简单使用
- java正则表达式Patter和Matcher的使用
- java应用中Pattern和Matcher的使用
- VS2012下Visual Leak Detector(vld)的配置和使用
- 使用Matcher.appendReplacement的注意事项
- Pattern和Matcher的用法
- Pattern和Matcher 的用法
- opencv学习(2)滑动条的创建和使用
- win8环境编译微软在github上公开的caffe
- fansi
- centos 安装docker
- Android快速集成框架:MVP+Dagger+主流框架
- 数据库SQL优化
- OpenCV各个detector/descriptor/matcher的创建和使用
- Dropwizard使用错误汇总
- 搬寝室 HDU1241
- android greendao3 介绍 配置 加密 支持kotliln
- wc命令
- 实验楼_Linux基础入门_挑战1_寻找文件
- Linux day work 1
- PAT甲级解题报告汇总
- CSS层叠样式表的层叠和特殊性