小编use*_*060的帖子

opencv stereobm,它真的基于SAD成本函数

我正在尝试增强stereobm(Opencv立体声块匹配).他们声称该算法使用SAD cost_function方法.(Abos不同的SAD总和).

但是在代码中他们以这种方式计算了SAD:

        for( y = -dy0; y < height + dy1; y++, cbuf += ndisp, cbuf_sub += ndisp,
         hsad += ndisp, lptr += sstep, lptr_sub += sstep, rptr += sstep )
    {
        int lval = lptr[0];
        for( d = 0; d < ndisp; d++ )
        {
            int diff = std::abs(lval - rptr[d]);
            cbuf[d] = (uchar)diff;
            hsad[d] = hsad[d] + diff - cbuf_sub[d];
        }
        htext[y] += tab[lval] - tab[lptr_sub[0]];
    }
......
sad[d] = (int)(hsad0[d-ndisp*dy0]*(wsz2 + 2 - dy0));

//   ******************************* …
Run Code Online (Sandbox Code Playgroud)

c++ opencv

3
推荐指数
1
解决办法
836
查看次数

标签 统计

c++ ×1

opencv ×1