--- license: mit language: en library_name: pytorch tags: - image-inpainting - computer-vision - pytorch - unet - cifar-10 datasets: - cifar10 --- # U-Net for Image Inpainting on CIFAR-10 This repository contains a PyTorch implementation of a deep U-Net with Residual Blocks, trained to perform image inpainting on the **CIFAR-10** dataset. The model takes a 32x32 image with a masked (blacked-out) region and reconstructs the missing part. | Original | Masked Input | Reconstructed Output | | :------: | :----------: | :------------------: | | | | | > **Note**: The images above are illustrative examples. You can generate your own by running the code below. --- ## Model Architecture The model is a `ComplexUNet`, a variant of the standard U-Net architecture, designed to be deeper and wider for improved performance. * **Framework**: PyTorch * **Architecture**: U-Net with 4 downsampling and 4 upsampling stages. * **Backbone**: Each stage uses **Residual Blocks** instead of simple convolutional layers. * **Model Width**: The number of base channels is increased to `96` for higher capacity. * **Total Parameters**: 73,148,259 --- ## How to Use The following code snippet provides a complete example of how to load the model, process an image from the CIFAR-10 test set, and visualize the inpainting result. First, ensure you have the necessary libraries installed: ```bash pip install torch torchvision numpy matplotlib Pillow