1.一般的Mat定义方法:cv::Mat M(height,width,),例:
cv::Mat M(480,640,CV_8UC3); 表示定义了一个480行640列的矩阵,矩阵的每个单元的由三个(C3:3 Channel)8位无符号整形(U Unsigned U8 8位)构成。
2.将已有数组赋给Mat矩阵的方法:
cv::Mat M = cv::Mat(height,width,,data),例:
float K[][] = {fc[], , cc[], , fc[], cc[], , , }; //摄像机内参数矩阵K
cv::Mat mK = cv::Mat(,,CV_32FC1,K); //内参数K Mat类型变量
3.类似matlab:zeros(),ones(),eyes()的初始化方法:
cv::Mat M = cv::Mat::eye(height,width,)
cv::Mat M = cv::Mat::ones(height,width,)
cv::Mat M = cv::Mat::zeros(height,width,)
4.对于小矩阵给定数值的赋值方法:
cv::Mat M = (cv::Mat_(height,width) << 0,-1,0,-1,5,-1,0,-1,0)
得到以下矩阵 M=
[0 -1 0
-1 5 -1
0 -1 0]
C++ Opencv Mat类型使用的几个注意事项及自写函数实现Laplace图像锐化
为了提升自己对Opencv中Mat数据类型的熟悉和掌握程度,自己尝试着写了一下Laplace图像锐