我在OpenCV中有一个多维矩阵,例如
Mat matrix(1,1,CV_64FC(100), Scalar(0));
我知道在Matlab的多维矩阵中访问二维矩阵非常容易,例如matrix(:,:,1),matrix(:,:,100)。但是我们应该如何在OpenCV中做到这一点?的确,OpenCV可以使用at来访问矩阵中的一个元素,但是如何在固定通道的同时访问2d矩阵呢?谢谢!
最佳答案
一种简单的方法如下
Mat matrix(1,1,CV_64FC(100), Scalar(0));
cv::vector<cv::Mat> channels;
cv::split(matrix,channels);
int i = 0;
cv::Mat channel_i = channels[i];
请参阅docs split,也许还有更多高级操作mixChannels。 (本人未使用过mixChannels)
关于c++ - 如何在OpenCV中访问多维矩阵中的2D矩阵,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25333486/