feat: custom background, add translation matrix

This commit is contained in:
2026-01-10 17:48:37 +03:00
parent 57f11685a0
commit 02981ca660

View File

@@ -67,26 +67,6 @@ class CameraTransformApp(App):
def create_test_image(self): def create_test_image(self):
"""Создает тестовое изображение с сеткой и текстом""" """Создает тестовое изображение с сеткой и текстом"""
img = cv2.imread(Path('images') / 'photo_610.png') img = cv2.imread(Path('images') / 'photo_610.png')
# img = np.ones((400, 600, 3), dtype=np.uint8) * 255
# # Рисуем сетку
# for i in range(0, 600, 50):
# cv2.line(img, (i, 0), (i, 400), (200, 200, 200), 1)
# for i in range(0, 400, 50):
# cv2.line(img, (0, i), (600, i), (200, 200, 200), 1)
# # Рисуем оси координат
# cv2.line(img, (300, 200), (450, 200), (255, 0, 0), 3) # X - красная
# cv2.line(img, (300, 200), (300, 50), (0, 255, 0), 3) # Y - зеленая
# # Добавляем текст
# cv2.putText(img, 'X', (460, 210), cv2.FONT_HERSHEY_SIMPLEX, 1, (255, 0, 0), 2)
# cv2.putText(img, 'Y', (310, 40), cv2.FONT_HERSHEY_SIMPLEX, 1, (0, 255, 0), 2)
# cv2.putText(img, 'Perspective Transform', (150, 30),
# cv2.FONT_HERSHEY_SIMPLEX, 1, (0, 0, 255), 2)
# # Рисуем прямоугольник
# cv2.rectangle(img, (200, 150), (400, 250), (255, 0, 255), 2)
return img return img
@@ -139,11 +119,15 @@ class CameraTransformApp(App):
# Получаем матрицу поворота # Получаем матрицу поворота
R = self.get_rotation_matrix(yaw, pitch, roll) R = self.get_rotation_matrix(yaw, pitch, roll)
Z = np.eye(3)
Z[2, 2] = 2 T = np.array([
[1, 0, 0.2],
[0, 1, 0.1],
[0, 0, 2],
])
# Создаем матрицу трансформации # Создаем матрицу трансформации
H = camera_matrix @ Z @ R @ np.linalg.inv(camera_matrix) H = camera_matrix @ R @ T @ np.linalg.inv(camera_matrix)
# Применяем преобразование # Применяем преобразование
try: try: