VideoAnalysis/imageWorking.py

34 lines
1.2 KiB
Python
Raw Normal View History

2023-05-20 13:23:06 +04:00
import cv2 as cv
import numpy as np
2023-07-06 07:32:59 +04:00
img_size = (1280, 720) # Размер изображения для нормализации.
2023-05-20 13:23:06 +04:00
def image_transform(image: np.ndarray) -> np.ndarray:
'''
Трансформирует изображение нужным образом.
@param image: Исходная матрица с представлением изображения.
'''
2023-07-06 07:32:59 +04:00
image = cv.resize(image, (img_size[0], img_size[1]))
2023-05-20 13:23:06 +04:00
return image[:, :, ::-1]
2023-07-06 07:32:59 +04:00
def get_image_file_as_array(image_name: str) -> np.ndarray:
'''
Получает изображение из файла и нормализует его.
@param image_name: Путь до изображения.
'''
2023-05-20 13:23:06 +04:00
image = cv.imread(image_name)
image: np.ndarray # приведение типов
image = image_transform(image)
return image
2023-07-06 07:32:59 +04:00
def get_image_buf_as_array(buf) -> np.ndarray:
'''
Получает изображение из буфера и нормализует его.
@param image_name: Путь до изображения.
'''
image = cv.imdecode(buf, cv.IMREAD_COLOR)
image: np.ndarray # приведение типов
image = image_transform(image)
return image