Skip to content

Documentation for evaluate ​

Path: image_classification/evaluate.py

Functions ​

get_model ​

Get the specified model with the correct number of output classes

load_model ​

Load a trained model with weights.

Args: model_name (str): Name of the model architecture weights_path (str): Path to the weights file num_classes (int): Number of classes device (torch.device): Device to load the model on

Returns: tuple: (model, class_to_idx) - Loaded model and class mapping

get_all_images ​

Get all images from the input folder structure. Each subfolder name represents a class.

Args: input_folder (str): Path to the input folder containing class subfolders class_to_idx (dict, optional): Pre-defined class to index mapping from training

Returns: tuple: (image_files, class_to_idx) - List of image tuples and class mapping

load_class_mapping_from_file ​

Load class mapping from a JSON file.

Args: mapping_file (str): Path to JSON file containing class mapping

Returns: dict: Class name to index mapping

save_class_mapping_to_file ​

Save class mapping to a JSON file.

Args: class_to_idx (dict): Class name to index mapping output_file (str): Path to output JSON file

main ​

Main evaluation function.

Args: input_folder (str): Path to the input folder containing images to evaluate output_csv (str): Path to the output CSV file for results model (str): Model name/type to use for evaluation weights_path (str): Path to the model weights file num_classes (int): Number of classes for classification device (str): Device to use ('auto', 'cpu', 'cuda') class_mapping_file (str): Path to JSON file containing class mapping