Получение встроенных функций камеры из PyRender PerspectiveVamera
С помощью PyRender я пытаюсь создать облако точек из карты глубины, которую я визуализировал с помощью PerspectiveCamera . Для этого мне понадобятся внутренние параметры камеры. Есть ли простой способ получить эти параметры? Я попробовал следующее, что явно кажется неправильным, однако других подходов я пока не нашел:
f=(image_width/2)/math.tan(camera.yfov)
s=0
y0 = image_height/2
x0 = image_width/2
intrinsics = np.array(
[[f, s, x0],
[0, f, y0],
[0, 0, 1]])
1 ответ
Достаточно близко. Ваше уравнение для f имеет правильную форму. Незначительные проблемы.
Вы
- путать x/y и ширину/высоту
- отсутствует /2 внутри tan()
- и немного -1 в cx,cy, что должно быть точно (ширина-1)/2, (высота-1)/2
И не обращайте внимания на стрижку, как и все остальные.