Błąd kompilacji w CV_MAT_ELEM

W wyniku wywołania metody estimateRigidTransform () otrzymuję obiekt cv :: Mat o nazwie „trans”. Aby odzyskać zawartą w nim macierz, próbuję uzyskać dostęp do jego elementów w ten sposób:

for (i=0; i<2; i++) for (j=0; j<3; j++)
{
   mtx[j][i]=CV_MAT_ELEM(trans,double,i,j);
}

Niestety z VS2010 otrzymuję błąd kompilatora

error C2228: left of '.ptr' must have class/struct/union

dla linii z CV_MAT_ELEM. Kiedy rozwijam to makro, znajduję coś takiego

(mat).data.ptr + (size_t)(mat).step*(row) + (pix_size)*(col))

Kiedy usuwam „.ptr” za (mat) .dane, kompiluje się. Ale nie wyobrażam sobie, że to rozwiązanie (lub nie wyobrażam sobie, że jest to błąd i tylko ja to zauważyłem). Więc co tu może być nie tak?

Dzięki!

questionAnswers(2)

yourAnswerToTheQuestion