У меня есть изображение с камеры и матрица гомографии.Изображение с камеры дороги.Я хотел бы преобразовать это видеоизображение в изображение вида сверху.
У меня уже есть матрица гомографии
h = np.array([ 0.859283348783, -11.6919721588, 1606.83612681, 0.648017266624, -2.70283366148, -9.14157643688, 0.000363253304864, -0.00846479846914, 1])
Что я делаю:
while (cap.isOpened()):
# Capture frame-by-frame
ret, frame = cap.read()
if ret == True:
t1 = time.time()
img = pipeline(frame, car_tracker,ped_tracker, det)
h = np.array([ 0.859283348783, -11.6919721588, 1606.83612681, 0.648017266624, -2.70283366148, -9.14157643688, 0.000363253304864, -0.00846479846914, 1])
matrix = np.reshape(h, (3, 3))
dst = cv2.warpPerspective(img, matrix,img.shape[1::-1])
# Display the resulting frame
cv2.imshow('Frame', dst)
#writer.write(img)
# Press Q on keyboard to exit
cv2.waitKey(1)
# Break the loop
, ноЯ получаю искаженное изображение, даже не вид сверху или что-то еще, просто черное изображение.
Вот входное изображение, которое можно проверить