I have a 3D array
auto m3 = Mat_<float>({2, 2, 2}, {1, 2, 3, 4, 5, 6, 7, 8});
and I would like to slice it into 2D subarrays:
auto m20 = Mat_<float>({2, 2}, {1, 2, 3, 4});
auto m21 = Mat_<float>({2, 2}, {5, 6, 7, 8});
This snippet extracts required elements, but doesn’t reduce dimensionality:
auto m20 = Mat(m3, {Range(0, 1), Range(0, 2), Range(0, 2)});
auto m21 = Mat(m3, {Range(1, 2), Range(0, 2), Range(0, 2)});
What is a concise way to do it?