从OpenCV Mat中删除列

时间:2012-02-28 05:43:22

标签: c++ opencv

我有一个OpenCV Mat,我想删除第一列。是否有一种很好的内置方法可以从矩阵中删除特定的列?

1 个答案:

答案 0 :(得分:7)

您可以使用Mat::col(int j)方法获取第一列

    Mat m;
    Mat col1 = m.col(0)

或者,您可以使用Mat::colRange(int startCol, int endCol)获取没有第一列的原始矩阵:

    Mat noCol1 = m.colRange(1, m.cols)

请记住,实际数据不会被复制,而是与原始矩阵共享。要获取该值的副本,您可以使用Mat::clone()

更多信息:Opencv 2.3 docmentation