feat: custom background, add translation matrix
This commit is contained in:
@@ -67,26 +67,6 @@ class CameraTransformApp(App):
|
||||
def create_test_image(self):
|
||||
"""Создает тестовое изображение с сеткой и текстом"""
|
||||
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
|
||||
|
||||
@@ -139,11 +119,15 @@ class CameraTransformApp(App):
|
||||
|
||||
# Получаем матрицу поворота
|
||||
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:
|
||||
|
||||
Reference in New Issue
Block a user