参考书籍:《学习OpenCV3》
1. 头文件概览
1.1 汇总型头文件 <opencv2/opencv.hpp>
1.2 opencv.hpp包含OpenCV各个模块的头文件
#include "opencv2/core.hpp"//结构和数学运算 #include "opencv2/calib3d.hpp"//校准以及双目视觉相关 #include "opencv2/features2d.hpp"//用于追踪的二维特征 #include "opencv2/dnn.hpp"//深度学习函数 #include "opencv2/flann.hpp"//最近邻搜索匹配函数 #include "opencv2/highgui.hpp"//显示、滑动条、鼠标操作以及输入输出相关 #include "opencv2/imgcodecs.hpp"//图像输入输出函数 #include "opencv2/imgproc.hpp"//图像处理函数 #include "opencv2/ml.hpp"//机器学习、聚类以及模式识别相关 #include "opencv2/objdetect.hpp"//级联人脸分类器、latent SVM分类器、HoG特征和平面片检测器 #include "opencv2/photo.hpp"//操作和恢复照片相关算法 #include "opencv2/stitching.hpp"//图像拼接函数 #include "opencv2/video.hpp"//视觉追踪以及背景分割 #include "opencv2/videoio.hpp"//视频输入输出函数
2. 读取avi视频简单范例
#include <opencv2/highgui.hpp> #include <opencv2/opencv.hpp> using namespace std; using namespace cv; int main() { namedWindow("example", cv::WINDOW_AUTOSIZE); VideoCapture cap; cap.open("/Users/xxx/data/Megamind.avi"); cv::Mat frame; for(;;){ cap >> frame; if( frame.empty()) break; //Ran Out of film cv::imshow("example",frame); if(cv::waitKey(33) >= 0) break; } return 0; }
3. 矩阵等价和相似
3.1 等价矩阵的定义
两个m*n阶矩阵,如果这两个矩阵满足B=QAP(Q为m*m阶可逆矩阵,P为n*n阶可逆矩阵),则A和B等价。也就是说,存在可逆矩阵(P、Q),使得A经过有限次的初等变换得到B。
3.2 等价矩阵的特性
反身、对称、传递;r(A)=r(B) ; |A|=k|B| ;
3.3 相似矩阵的定义
A、B都是n阶矩阵,若存在可逆矩阵P,,则B是A的相似矩阵,记为A~B。A到B的变换称为相似变换,可逆矩阵称为相似变换矩阵。
3.4 相似矩阵的性质
反身、对称、传递;r(A)=r(B);|A|=|B|;tr(A)=tr(B);
若A与对角矩阵相似,则称A为可对角化矩阵。
3.5 定理1
n阶矩阵A与对角阵相似的充分必要条件是矩阵A有n个线性无关的特征向量。