我看到一些使用<<
和Mat_
进行矩阵运算的代码。
示例#A:
cv::Mat_<double> myMat_ = ( cv::Mat_<double>(3, 3) <<
1.0, 2.0, 3.0,
4.0, 5.0, 6.0,
7.0, 8.0, 9.0);
示例#B:
cv::Mat myMat = (Mat_<float>(2,3)<<1,skew,-0.5*SZ*skew,0,1,0)
cv::Mat sampleMat = (Mat_<float>(1,2) << j,i);
<<
在此代码中是什么意思?有人可以教育我一点吗?
答案 0 :(得分:1)
这是以下操作的快捷方式:
cv::Mat_<double> myMat_(3, 3);
myMat_.at(0, 0) = 1.0;
myMat_.at(0, 1) = 2.0;
myMat_.at(0, 2) = 3.0;
myMat_.at(1, 0) = 4.0;
myMat_.at(1, 1) = 5.0;
myMat_.at(1, 2) = 6.0;
myMat_.at(2, 0) = 7.0;
myMat_.at(2, 1) = 8.0;
myMat_.at(2, 2) = 9.0;
<<
和,
运算符被重载以实现该行为。