Projetamos uma nova estrutura de reconstrução baseada em DL para resolver o problema de recuperação rápida e de alta qualidade de imagens em imagens de pixel único
Bem-vindo a assistir ? este repositório para as atualizações mais recentes.
✅ [2023.12.18] : Lançamos nosso código!
✅ [2021.07.21] : Lançamos nosso artigo, SPI-GAN no arXiv.
Nossa estrutura SPI-GAN proposta consiste principalmente em um gerador que pega a solução ruidosa da norma l2 (xˆ_noisy) e produz uma reconstrução clara (xˆ) que é comparável a x. Por outro lado, um discriminador aprende a diferenciar entre x e xˆ na tentativa de não ser enganado pelo gerador.
Instale o Anaconda e crie um ambiente
conda create -n spi_gan python=3.10
conda activate spi_gan
Depois de criar um ambiente virtual, execute
pip install -r requirements.txt
Primeiro baixe os conjuntos de dados STL10 e UCF101. Você pode encontrar esses dois conjuntos de dados com muita facilidade.
Se você deseja criar as imagens que serão alimentadas no GAN, execute o código Matlab "L2Norm_Solution.m" para gerar a solução l2-norm. Crie as pastas necessárias antes de executar. Também farei upload da versão python disso no futuro.
Execute isto para criar o arquivo .npy com configurações diferentes
python save_numpy.py
Para treinamento-
python Main_Reconstruction.py
Baixe vídeos e divisões de treinamento/teste aqui.
Converta de arquivos avi para jpg usando util_scripts/generate_video_jpgs.py
python -m util_scripts.generate_video_jpgs avi_video_dir_path jpg_video_dir_path ucf101
Gere arquivo de anotação em formato json semelhante ao ActivityNet usando util_scripts/ucf101_json.py
annotation_dir_path
inclui classInd.txt, trainlist0{1, 2, 3}.txt, testlist0{1, 2, 3}.txt
python -m util_scripts.ucf101_json annotation_dir_path jpg_video_dir_path dst_json_path
Se você achar nosso artigo e código úteis em sua pesquisa, considere dar uma estrela e uma citação.
@misc { karim2021spigan ,
title = { SPI-GAN: Towards Single-Pixel Imaging through Generative Adversarial Network } ,
author = { Nazmul Karim and Nazanin Rahnavard } ,
year = { 2021 } ,
eprint = { 2107.01330 } ,
archivePrefix = { arXiv } ,
primaryClass = { cs.CV }
}