Opencv模块学习
来源:互联网 发布:nginx配置ip端口访问 编辑:程序博客网 时间:2024/06/05 08:19
最新的opencv2.4.13版本的学习,还没有完整看完
库core
Basic Structures
基础数据结构,大型的mat,sparsemat,algorithm(半球匹配,块匹配,背景提取,混合高斯,字典集,sift),智能指针ptr
Basic CStructures and Operations
一些C API, 主要是cv1.0时代的老旧函数,感觉没什么用
DynamicStructures
Cv1.0时代的函数,现在可以用vector代替
Operations onArrays
数据处理,DCT,PCA,SVD,RNG(Randomnumber generator),常用对inputarray的函数
DrawingFunctions
画图函数,点线园,填充写字都可以
XML/YAMLPersistence
Filestorage和filenode,用于在xml文件存取
XML/YAML Persistence(C API)
cv1.0时代产物
Clustering
就两个函数Kmeans和partition
Utility andSystem Functions and Macros
一些奇怪的函数,四舍五入函数,format,计时,监视错误
OpenGLinteroperability
Opengl和opencv的结合,buffer,texture2d,arrays
库Imgproc
Image Filtering
各种滤波器,滤波器核(laplacian),基础滤波器,双边,自适应双边,模糊,边缘插值,箱(均值)滤波,高斯金字塔,生成图片边缘,高斯滤波,线性,形态学,sobel,scharr,模糊下采样,上采样模糊,可以生成箱滤波器、快速线性可分滤波器(sobel或scharr)、高斯、线性、形态学、线性可分
Geometric Image Transformations
图像map色度变换,由三点数据求affine仿射矩阵,由四点数据求视角变换,不同尺度截取目标图像矩形区域,获取旋转矩阵,反仿射变换,极坐标变换,对数极坐标变换,几何坐标插值变换,大小变化,仿射变换,透视变换,矫正视差,畸变矫正图片,畸变校正点,,
Miscellaneous Image Transformations
自适应阈值,颜色空间变换,离最近的零点的距离计算(应该用于漫水算法吧),漫水算法,图像积分(用于某些算法haar-like),阈值法,watershed分水岭算法—自适应迭代阈值,GrabCut自分割背景提取(基于GraphCut,灰度直方图-混合高斯前景背景建模迭代),
Histograms
计算直方图,直方图反响投影匹配小图块,直方图比较,EMD误差,直方图均衡化
Structural Analysis and Shape Descriptors
轮廓特征矩moment,hu不变矩,求取重心,寻找轮廓,逼近折线,用折线寻找freeman链,获取contour长度,寻找垂线,contour面积,寻找凸包,寻找轮廓凸包突出度,椭圆拟合,直线拟合,检测是否凸,最小旋转矩形检测,最小圆型检测,matchshape,点和contour的位置关系。
Motion Analysis and Object Tracking
这节没看懂啊,是要做运动分析和物体跟踪
库highgui
分为三个模块,用户界面模块,读写图片视频模块,qt模块,用户界面模块可以画控制条,建立销毁窗口,读写视频图片
库video
没有类,就是光流法(稀疏光流法,浓密特征光流法,高斯金字塔),camshift,meanshift,混合高斯模型背景提取,
库calib3d
分为相机校准和3D重建
校准可以用棋盘格圆格对称圆格,极线的匹配,欧拉空间转变到齐次方程(什么用?),棋盘格角点渲染显示,pnp四点求相机世界坐标,仿射变换,3d-2d,2d-3d,立体块匹配,深度相机的校准
库features2d
FeatureDetection and Description
Fast法提取特征点(对像素周围统计学取差异较大点),mser(最大稳定极值区域,寻找颜色稳定的区域),brisk法(对模糊图像有较好效果),freak法(光照旋转尺度视角各方面都有不错效果)
CommonInterfaces of Feature Detectors
试了一下opencv_source_code/samples/cpp/descriptor_extractor_matcher.cpp,是一个很有意思的小程序,命令行:“SURF SURF BruteForce CrossCheckFilter 1.jpg j.jpg 3”,通用特征检测接口,sift、surf、mser、"FAST","STAR","SIFT","SURF", "ORB", "BRISK", "MSER" ,"GFTT" – GoodFeaturesToTrackDetector,"HARRIS"– GoodFeaturesToTrackDetector with Harris detector enabled,"Dense"– DenseFeatureDetector,"SimpleBlob" – SimpleBlobDetector
CommonInterfaces of Descriptor Extractors
特征提取,六种,sift surfbrisk freak brief ORB
CommonInterfaces of Descriptor Matchers
提取后的特征进行匹配,普通match,knn match,radius match,可以进行图和图已经图和图列的匹配
CommonInterfaces of Generic Descriptor Matchers
面向更普遍的特征向量匹配问题,有些特征貌似不能描述为高维空间向量
Drawing Functionof Keypoints and Matches
两个函数,画关键点和匹配
ObjectCategorization
Bagofword字典集的分类,应该是用特征计算字典集,再用字典集进行聚类
库object
Haarclassifier cascade和latent SVM,在深度学习出来之前是应用较多的目标检测算法
库Ml
StatisticalModels 统计学模型
Normal BayesClassifier 朴素贝叶斯
K-NearestNeighbors KNN算法K近邻
Support VectorMachines 支持向量机SVM
Decision Trees 决策树
Boosting 弱分类器,之前看过bootstrapping、adaboost,错分类别高度加权
Gradient BoostedTrees GBT,通过集成多棵决策树来实现强分类器,梯度提升树(GBTs).
Random Trees 随机森林,据说是目前效果最好的分类器之一
Extremelyrandomized trees极端随机树,好像用的不多的样子
ExpectationMaximization EM算法,期望最大化算法,高斯混合分布?
Neural Networks 神经网络
MLData 机器学习的数据,好多用的cvmat数据格式,貌似不是cv2.0以后的发展趋势
库flann
用于在大数据集或者高维数据集中寻找最近邻,又是KNN和radiussearch法,还有KMEANS
库photo
Inpainting
图像修复,用其他图块修补
Denoising
非局部均值滤波,利用块匹配,一块区域和附近区域比对然后叠加,数学基础是高斯噪声普遍均匀。
库stitching
StitchingPipeline 这块完成了图像拼接
References
High Level Functionality
Camera
Features Findingand Images Matching
RotationEstimation
Autocalibration
Images Warping
Seam Estimation
ExposureCompensation
Image Blenders
库nonfree
就是sift和surf的实现,不知为什么另外加了一个类,不过实现了surf的gpu和opcl
库contrib
StereoCorrespondence
立体匹配
FaceRecognizerDocumentation
人脸识别
RetinaDocumentation
视网膜识别算法,id识别
OpenFABMAP
貌似是slam的一个子算法
库superres
超分辨率算法,应该是一个很大的块,但是目前只有几个函数
- 学习OpenCV,GPU模块
- Opencv模块学习
- OpenCV学习笔记:opencv_core模块
- OpenCV学习笔记:opencv_highgui模块
- OpenCV学习笔记:opencv_ml模块
- Opencv学习笔记之新版本模块结构
- OpenCV学习笔记四:ImgProc模块
- Opencv学习笔记--opencv中各个模块的作用
- OpenCV(学习笔记8)-OpenCV模块介绍
- OpenCV模块
- OpenCV模块
- OpenCV 模块
- opencv 模块
- [opencv]opencv模块介绍
- opencv学习笔记1--主要宏模块学习
- 机器学习算法一览表附opencv机器学习模块
- OpenCV学习笔记(二)——新版本模块结构
- OpenCV学习笔记(二)——新版本模块结构
- 关于Object-C中的警告 #pragma message、#warnings、#pragma clang
- Thrift使用
- php导出excel 大数据 时候需要注意的问题
- nodejs微信后台验证
- 取得uuid并且放进钥匙串
- Opencv模块学习
- DOM同时设置mouseover与mouseout事件控制元素显示时出现闪烁问题
- redhat系统下网络配置
- Apache commons codec |MD5 SHA BASE64 简单方便操作
- java--servlet输出流和请求包含的一些小细节
- HTML第一章课后四
- 禁止浏览器缓存方案
- Single address spaces: design flaw or feature? part1
- 20条linux命令面试问答