Je veux faire quelque chose comme eigenfaces mais avec des images différentes (pas des visages). J'ai un vecteur d'images, images
. A partir de ces images, je souhaite créer un objet Mat
, data
qui contient dans chaque ligne une image écrite en tant que vecteur ligne. Voilà ce que j'ai essayé de faire:Utilisation d'Open CV Iterators segfault
// This is basically a matrix that needs to have a bunch of images as rows.
Mat data(numImages, IMAGE_SIZE * IMAGE_SIZE, CV_8UC1);
// I also replaced CV_8U by images[0].type() and CV_8U. no change
MatIterator_<unsigned short> iter = data.begin<unsigned short>(),
iter_end = data.end<unsigned short>(),
iter2;
for (i = 0; i < numImages; ++i)
{
MatIterator_<unsigned short> begin = images[i].begin<unsigned short>();
MatIterator_<unsigned short> end = images[i].end<unsigned short>();
for (iter2 = begin; iter2 != end; iter2++)
{
*iter = *iter2; // Segfault is here.
if (iter != iter_end) // safety check
iter++;
else
perror("Screwed!\n"); // This does not execute!
}
}
Aide!
Merci!
ouais qui semble l'être. Maintenant je me sens boiteux: P merci! –