
English | 中文
You can use it to automatically remove the mosaics in images and videos, or add mosaics to them.
This project is based on "semantic segmentation" and "Image-to-Image Translation".
Try it at this website!

| origin | auto add mosaic | auto clean mosaic |
|---|---|---|
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
| mosaic image | DeepCreamPy | ours |
|---|---|---|
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
| origin | to Van Gogh | to winter |
|---|---|---|
![]() |
![]() |
![]() |
An interesting example:Ricardo Milos to cat
You can either run DeepMosaics via a pre-built binary package, or from source.
You can simply try to remove the mosaic on the face at this website.
For Windows, we bulid a GUI version for easy testing.
Download this version, and a pre-trained model via [Google Drive] [百度云,提取码1x0a]
Video tutorial => [youtube] [bilibili]

Attentions:
Requires Windows_x86_64, Windows10 is better.
Different pre-trained models are suitable for different effects.[Introduction to pre-trained models]
Run time depends on computers performance (GPU version has better performance but requires CUDA to be installed).
If output video cannot be played, you can try with potplayer.
GUI version updates slower than source.
This code depends on opencv-python, torchvision available via pip install.
git clone https://github.com/HypoX64/DeepMosaics.git
cd DeepMosaics
You can download pre_trained models and put them into './pretrained_models'.
[Introduction to pre-trained models]
python deepmosaic.py --media_path ./imgs/ruoruo.jpg --model_path ./pretrained_models/mosaic/add_face.pth --gpu_id 0
python deepmosaic.py --media_path ./result/ruoruo_add.jpg --model_path ./pretrained_models/mosaic/clean_face_HD.pth --gpu_id 0
If you want to test other images or videos, please refer to this file.
If you want to train with your own dataset, please refer to training_with_your_own_dataset.md
This code borrows heavily from [pytorch-CycleGAN-and-pix2pix] [Pytorch-UNet] [pix2pixHD] [BiSeNet] [DFDNet] [GFRNet_pytorch_new].
$ claude mcp add DeepMosaics \
-- python -m otcore.mcp_server <graph>