import cv2 import numpy as np def change_image_color_format(file_path, format_type, angle=0,factor=1.5): img = cv2.imread(file_path) if format_type.lower() == 'rgb': img_rgb = cv2.cvtColor(img, cv2.COLOR_BGR2RGB) return img_rgb elif format_type.lower() == 'bgr': img_bgr = cv2.cvtColor(img, cv2.COLOR_RGB2BGR) return img_bgr elif format_type.lower() == 'grayscale': grayscale_img = cv2.cvtColor(img, cv2.IMREAD_GRAYSCALE) return grayscale_img elif format_type.lower() == 'rotate': if angle != 0: img = rotate_image(img, angle) return img elif format_type == "increase_brightness": brightened_img = increase_brightness(img, factor) return brightened_img elif format_type.lower() == "blur_image": imgBlur = cv2.GaussianBlur(img,(7,7),0) return imgBlur elif format_type.lower() == "resize_image": resized_image = resize_image(img,width=1000,height=1000) return resized_image # Function to rotate an OpenCV image (numpy.ndarray) def rotate_image(image, angle): (h, w) = image.shape[:2] center = (w // 2, h // 2) M = cv2.getRotationMatrix2D(center, angle, 1.0) rotated_image = cv2.warpAffine(image, M, (w, h)) return rotated_image # Function to increase the brightness of an image def increase_brightness(image, factor=1.2): image = np.array(image, dtype=np.float32) brightened_image = cv2.multiply(image, np.array([factor, factor, factor], dtype=np.float32)) brightened_image = np.clip(brightened_image, 0, 255).astype(np.uint8) return brightened_image def resize_image(img,width = 200,height = 200): imgResize = cv2.resize(img,(width,height)) return imgResize