1
Я делаю стежки на два изображений, и имею эту ошибку во время отладки (компиляция успешно, но при запуске он ломает):OpenCV Assertion Ошибка в Строчке
Assertion не удался == CV_8Uc3> в неизвестной функции.
А вот код:
int main(int argc, char ** argv)
{
Mat im1=imread("panorama_image1.jpg", CV_LOAD_IMAGE_GRAYSCALE);
Mat im2=imread("panorama_image2.jpg", CV_LOAD_IMAGE_GRAYSCALE);
Mat result;
vector<Mat> imgs;
imgs.push_back(im1);
imgs.push_back(im2);
cv::Stitcher stitcher=cv::Stitcher::createDefault(false);
stitcher.stitch(imgs,result);
namedWindow("Mosaic", CV_WINDOW_AUTOSIZE);
imshow("Mosaic",result);
waitKey(0);
return 0;
}
Я не смог найти ошибку в этом коде. А библиотеки компоновщика правильно (использование D версии, такие как opencv_core244d.lib
, opencv_stitching244d.lib
и т.д.
Может быть функция 'stitcher.stitch (imgs, result); 'ожидает входные изображения типа ** 8 бит, 3 канала **. Попробуйте загрузить изображения как цветные. – sgarizvi
Я не уверен, но ввод в строчку должен быть полутоновой вправо? Обычно проще сшить полутоновых изображений, и код отлично работает на Ubuntu. У меня проблема с Windows и Visual Studio 2010. –