int sizes[3] = {49, 49, 5};
cv::Mat matX(3, sizes, CV_32F);
如何在matX中的所有2d切片(2D矩阵)中获得具有相同行col参数的像素。与MATLAB中的matX(row,col,:)
类似。
我已尝试在循环中使用此功能
cv::Range ranges[3];
ranges[0] = Range(r, r + 1); // Row
ranges[1] = Range(c, c + 1); // Column
ranges[2] = Range::all(); // Depth I suppose
cv::Mat depth = matX(ranges);
但深度是一个3d矩阵。另外,有没有办法查看3d矩阵或必须循环和打印?
编辑:这是我以前获得的深度。不确定它是否是最佳方式。
cv::Range ranges[3];
ranges[0] = Range(r, r + 1); // Row
ranges[1] = Range(c, c + 1); // Column
ranges[2] = Range::all(); // Depth I suppose
cv::Mat depth(matX(ranges).clone()); // This has the data I need but it's still 3d.
cv::Mat depth1D(1, &matX.size[2], depth.type(), depth.data);