import torch import torch.nn as nn import torch.optim as optim from torch.utils.data import DataLoader, Dataset import torchvision.transforms as transforms from PIL import Image import numpy as np import matplotlib.pyplot as plt from pathlib import Path import os import sys # Add the project root to Python path for imports project_root = Path.cwd().parent sys.path.insert(0, str(project_root)) sys.path.insert(0, str(project_root / 'models')) # Import our custom CNN model # Note: These imports work at runtime even if IDE shows warnings from models.cnn_feature_extractor import KolamFeatureExtractor # type: ignore print("Feature extraction setup complete!")