manga-translator / utils /process_contour.py
DenisT's picture
refactor based on changes on the github project
efddbeb
raw
history blame contribute delete
700 Bytes
"""
This module contains the function to process the contour in the image.
"""
from typing import Tuple
import cv2
import numpy as np
def process_contour(image: np.ndarray) -> Tuple[np.ndarray, np.ndarray]:
"""
Process the contour in the image.
"""
gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
_, thresh = cv2.threshold(gray, 240, 255, cv2.THRESH_BINARY)
contours, _ = cv2.findContours(thresh, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)
largest_contour = max(contours, key=cv2.contourArea)
mask = np.zeros_like(gray)
cv2.drawContours(mask, [largest_contour], -1, 255, cv2.FILLED)
image[mask == 255] = (255, 255, 255)
return image, largest_contour