如何使用Opencv按列对矩阵进行二次采样

时间:2018-10-10 10:04:05

标签: c++ opencv

使用OpenCV和C ++,我想在每第0、3、6、9 ....列处采样一个矩阵。最快(或最优雅)的方法是什么?

例如,在Matlab中,它将是:

bit_str = ""
for i in range(n+1):
    if i == 0: 
        full_b_tree = "1"
        print(full_b_tree)
    else:
        inc_one = "1"
        full_b_tree = full_b_tree+inc_one
        inc_zero = "0"
        full_b_tree = inc_zero + full_b_tree
        print(full_b_tree)

在C ++中,我可以按以下方式进行操作(但想知道是否有更好的方法):

 sample = frame(:, 1:3:end);

谢谢

1 个答案:

答案 0 :(得分:1)

for(int i = 0; i < frame.cols/3;  i++)
    frame.col(3*i).copyTo(sample.col(i));

那也可以做。