File size: 1,481 Bytes
ad8cacf
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
"""

Core functionality for grid image processing.

"""

import os
from .splitter import split_animal_illustrations, create_output_directory
from .refiner import refine_animal_illustrations
from .overview import create_overview_image

def process_grid_image(image_path, output_base_dir='output', rows=3, cols=6):
    """

    Process a grid image by splitting, refining, and creating an overview.

    

    Args:

        image_path (str): Path to the input grid image

        output_base_dir (str): Base directory for all output

        rows (int): Number of rows in the grid

        cols (int): Number of columns in the grid

    

    Returns:

        dict: Dictionary containing paths to split images, refined images, and overview

    """
    # Create base output directory
    output_base_dir = create_output_directory(output_base_dir)
    
    # Create subdirectories
    split_dir = os.path.join(output_base_dir, 'split_animals')
    refined_dir = os.path.join(output_base_dir, 'refined_animals')
    
    # Process the image
    split_paths = split_animal_illustrations(image_path, split_dir, rows, cols)
    refined_paths = refine_animal_illustrations(split_dir, refined_dir)
    overview_path = create_overview_image(refined_dir)
    
    return {
        'split_paths': split_paths,
        'refined_paths': refined_paths,
        'overview_path': overview_path,
        'split_dir': split_dir,
        'refined_dir': refined_dir
    }