У меня есть простая программа, которая преобразует евклидово в однородное пространство, добавляя 1 к кортежу точечных координат. Моя исходная матрица размером 2х3, и после преобразования она должна быть размером 3х3. Вот мой код http://pastebin.com/HWhj7Fcd но я не знаю, почему у меня есть эта ошибка:
OpenCV Error: Assertion failed (npoints >= 0 && (src.depth() == CV_32F || src.depth() == CV_32S)) in convertPointsToHomogeneous
Кто-нибудь может сказать, что мне нужно изменить?
это была простая ошибка и двойная ошибка !!! фактически код, который я разместил, является частью другого кода. Итак, в некоторых местах я использовал двойной вектор, а затем определил матрицу Mat как float Mat matrix_l (2,3, CV_32F). Я просто должен был положить все поплавок, и это сработало.
Других решений пока нет …