Я использую OpenCV с Python для тестов с отображением глубины.Я нашел этот учебник и использую фрагмент этого видео для тестов.
Это мой код для одного кадра:
cap = cv2.VideoCapture('test1.mp4')
ret, frame = cap.read()
plt.imshow(cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY))
plt.show()
left = cv2.cvtColor(frame[0:720, 0:640], cv2.COLOR_BGR2GRAY)
right = cv2.cvtColor(frame[0:720, 640:1280], cv2.COLOR_BGR2GRAY)
stereo = cv2.StereoBM_create(numDisparities=16, blockSize=15)
disparity = stereo.compute(left,right)
norm_image = cv2.normalize(disparity, None, alpha = 0, beta = 1, norm_type=cv2.NORM_MINMAX, dtype=cv2.CV_32F)
plt.grid(False)
plt.imshow(norm_image)
plt.show()
cap.release()
И результаты очень плохие.Что я делаю не так?