Программа для сшивания OpenCV не может сшить неискаженные изображенияssdsaC++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Программа для сшивания OpenCV не может сшить неискаженные изображенияssdsa

Сообщение Anonymous »

Я пытаюсь сшить панораму с помощью камеры мобильного телефона с подключаемым широкоугольным объективом с углом обзора 170 градусов. Полученная фотография искажена («рыбий глаз»). Я понимаю, что для сшивания этих фотографий с помощью Stitcher::stitch(InputArrayOfArrays images, OutputArray pano) они должны быть сначала неискажены.
Сначала я сделал undistort(InputArray src, OutputArray dst, InputArray cameraMatrix, InputArray distCoeffs, InputArray newCameraMatrix=noArray() ) и сохранить результаты в файлы jpg. Затем я прочитал изображения в формате jpg и сшил их в панорамное изображение, и это сработало хорошо.
Далее я объединил процессы в один процесс. Поэтому я не сохранил неискаженное изображение, а сохранил его в cv::Mat и использовал его в качестве входных данных для сшивки. Это происходит с кодом ошибки ERR_NEED_MORE_IMGS.
Мой вопрос: почему это работает, если вход сшивателя (

Код: Выделить всё

ImgArray
) поступает из imread, но происходит сбой, если входные данные поступают непосредственно из неискаженного вывода? Как мне заставить второй случай работать?

Подробнее здесь: https://stackoverflow.com/questions/797 ... imagessdsa
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»