Mat指针(Mat * arr)初始化

时间:2016-01-22 11:29:34

标签: c++ opencv pointers mat

我正在学习opencv,mat结构。

但是,在源代码中,它使用了mat指针。 (图像)

但是,它发生了错误。 因为,Mat * costVol没有初始化。 我不知道如何初始化costVol,变量。

代码:

Mat lGray, rGray;   Mat tmp; Mat *costVol;

    for (int y = 0;y < m_h;y++) {
        int index = y * m_w;
        for (int x = 0;x < (m_w);x++) {
            lB = *pLCode;

            double costCensus = 0.0;

            for (int dd = 0; dd < m_nr_plane; dd++) {
                double* costt = (double*)costVol[dd].ptr<double>(y);
                costt[x] = CENCUS_BIT;
                if (x - dd >= 0) {
                    rB = rCode[index + x - dd];
                    costt[x] = (lB ^ rB).count();
                }
                costCensus = 1 - exp(-255 * costt[x] / 15);
            }
            pLCode++;
            m_cost_vol[y][x][i] = costAd + costCensus;
        }
    }

1 个答案:

答案 0 :(得分:0)

嗯,Mat是一个数组类。

使用其create()方法。