feat: add perspective transform

This commit is contained in:
2026-01-10 17:47:32 +03:00
parent 155bf17847
commit 17594bc8fc
6 changed files with 150 additions and 254 deletions

View File

@@ -407,7 +407,6 @@ class VisualizationManager:
# Получаем размеры изображения и центр
height, width = current_frame.shape[:2]
center_x, center_y = width // 2, height // 2
# Создаем сетку точек с заданным шагом
grid_points = []
@@ -424,8 +423,8 @@ class VisualizationManager:
grid_points_centered = []
for pt in grid_points:
# Отцентрируем координаты точно так же, как в detect_and_match_keypoints
centered_x = pt[0] - center_x
centered_y = center_y - pt[1] # Инвертируем Y (изображение Y направлен вниз)
centered_x = pt[0]
centered_y = pt[1]
grid_points_centered.append([centered_x, centered_y])
grid_points_centered = np.array(grid_points_centered, dtype=np.float32)
@@ -442,8 +441,8 @@ class VisualizationManager:
transformed_points = []
for pt in transformed_points_centered:
# Обратное преобразование от центрированных координат к координатам изображения
img_x = pt[0] + center_x
img_y = center_y - pt[1] # Инвертируем Y обратно
img_x = pt[0]
img_y = pt[1] # Инвертируем Y обратно
transformed_points.append([img_x, img_y])
transformed_points = np.array(transformed_points, dtype=np.float32)