我正在尝试增强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)