transferring functionalities from main.py to src

This commit is contained in:
vb
2025-10-20 14:37:49 +02:00
parent 8f8f4b11ce
commit 2e168f408e
18 changed files with 767 additions and 187 deletions

View File

@@ -0,0 +1,26 @@
from .ImageManipulation import ImageManipulation
from ImageContainer import ImageContainer
from typing import Any, List
from utils.image_utils import pil_to_cv2, cv2_to_pil
import cv2
class FlipImage(ImageManipulation):
def getManipulationName(self) -> str:
return "Flip"
def getParameters(self) -> List[str]:
return ["mode"] # horizontal|vertical
def manipulateImage(self, image: ImageContainer, parameters: Any) -> None:
if image is None or image.getImage() is None:
return
pil_img = image.getImage()
mode = "horizontal"
if isinstance(parameters, dict) and parameters.get("mode") in ("horizontal", "vertical"):
mode = parameters.get("mode")
cv_img = pil_to_cv2(pil_img)
flip_code = 1 if mode == "horizontal" else 0
flipped = cv2.flip(cv_img, flip_code)
image._imageData = cv2_to_pil(flipped)