6
0
Pārlūkot izejas kodu

removed unused module

Dimitri Korsch 3 gadi atpakaļ
vecāks
revīzija
9cb12b1905
1 mainītis faili ar 0 papildinājumiem un 144 dzēšanām
  1. 0 144
      pycs/util/file_ops.py

+ 0 - 144
pycs/util/file_ops.py

@@ -1,144 +0,0 @@
-import os
-import typing as T
-
-import cv2
-
-from PIL import Image
-
-from pycs.database.File import File
-
-# pylint: disable=too-many-arguments, too-many-locals
-def crop_file(file: File, project_root: str, x: float, y: float, w: float, h: float) -> str:
-    """
-    gets a file for the given file_id, crops the according image to the
-    bounding box and saves the crops in the temp folder of the project.
-
-    :param file: file object
-    :param x: relative x-coordinate of the top left corner
-    :param y: relative y-coordinate of the top left corner
-    :param w: relative width of the bounding box
-    :param h: relative height of the bounding box
-
-    :return: directory and file name of the cropped patch
-    """
-
-    image = Image.open(file.absolute_path)
-    width, height = image.size
-
-    crop_width = int(width * w)
-    crop_height = int(height * h)
-
-    x0 = int(width * x)
-    y0 = int(height * y)
-    x1 = x0 + crop_width
-    y1 = y0 + crop_height
-
-    target_path = os.path.join(
-        os.getcwd(),
-        project_root,
-        'temp',
-        f'{file.uuid}_{x0}-{y0}_{x1}-{y1}.jpg',
-    )
-
-    if not os.path.exists(target_path):
-        crop = image.crop((x0, y0, x0+crop_width, y0+crop_height))
-        crop.save(target_path, quality=80)
-
-    return os.path.split(target_path)
-
-
-def resize_file(file: File,
-                project_root: str,
-                max_width: int,
-                max_height: int) -> T.Tuple[str, str]:
-    """
-    If file type equals video this function extracts a thumbnail first. It calls resize_image
-    to resize and returns the resized files directory and name.
-
-    :param file: file object
-    :param max_width: maximum image or thumbnail width
-    :param max_height: maximum image or thumbnail height
-    :return: resized file directory, resized file name
-    """
-
-    abs_file_path = file.absolute_path
-
-    # extract video thumbnail
-    if file.type == 'video':
-        abs_target_path = os.path.join(os.getcwd(), project_root, 'temp', f'{file.uuid}.jpg')
-        create_thumbnail(abs_file_path, abs_target_path)
-
-        abs_file_path = abs_target_path
-
-    # resize image file
-    abs_target_path = os.path.join(os.getcwd(), project_root,
-                                'temp', f'{file.uuid}_{max_width}_{max_height}.jpg')
-    result = resize_image(abs_file_path, abs_target_path, max_width, max_height)
-
-    # return path
-    if result is not None:
-        return os.path.split(abs_target_path)
-
-    return os.path.split(abs_file_path)
-
-def resize_image(file_path: str,
-                 target_path: str,
-                 max_width: int,
-                 max_height: int) -> T.Optional[bool]:
-    """
-    resize an image so width < max_width and height < max_height
-
-    :param file_path: path to source file
-    :param target_path: path to target file
-    :param max_width: maximum image width
-    :param max_height: maximum image height
-    :return:
-    """
-    # return if file exists
-    if os.path.exists(target_path):
-        return True
-
-    # load full size image
-    image = Image.open(file_path)
-    img_width, img_height = image.size
-
-    # abort if file is smaller than desired
-    if img_width < max_width and img_height < max_height:
-        return None
-
-    # calculate target size
-    target_width = int(max_width)
-    target_height = int(max_width * img_height / img_width)
-
-    if target_height > max_height:
-        target_height = int(max_height)
-        target_width = int(max_height * img_width / img_height)
-
-    # resize image
-    resized_image = image.resize((target_width, target_height))
-
-    # save to file
-    resized_image.save(target_path, quality=80)
-    return True
-
-def create_thumbnail(file_path: str, target_path: str) -> None:
-    """
-    extract a thumbnail from a video
-
-    :param file_path: path to source file
-    :param target_path: path to target file
-    :return:
-    """
-    # return if file exists
-    if os.path.exists(target_path):
-        return
-
-    # load video
-    video = cv2.VideoCapture(file_path)
-
-    # create thumbnail
-    _, image = video.read()
-    cv2.imwrite(target_path, image)
-
-    # close video file
-    video.release()