Skip to content

masterface77/Upscale-Videos

Repository files navigation

🎬 Upscale Videos - Sistema de Restauração Facial para Vídeos

Sistema automatizado de upscale e restauração facial para vídeos usando CodeFormer e Real-ESRGAN. Otimizado para talking heads (recepcionista virtual, apresentadores, entrevistas, etc).

Made with Python PyTorch License


✨ Características

  • 🎯 Restauração Facial Avançada: Utiliza CodeFormer para restaurar rostos com alta qualidade
  • 🖼️ Upscale de Background: Real-ESRGAN para melhorar o fundo do vídeo
  • 🎵 Preservação de Áudio: Mantém o áudio original sem perda de qualidade
  • 📊 Barra de Progresso: Feedback visual detalhado do processamento
  • 🧠 Otimização de Memória: Limpeza automática de cache CUDA para vídeos longos
  • ⚙️ Configuração Flexível: Controle de fidelidade e upscale via CLI

☁️ Uso Online

Experimente o sistema diretamente no seu navegador, sem necessidade de instalação local!

Google Colab (Recomendado)

Open In Colab

Kaggle (Melhor Opção Gratuita)

Ideal para vídeos maiores ou se o Colab travar (OOM).

O novo notebook foi totalmente simplificado e usa uma interface gráfica!

  1. Acesse Kaggle Notebooks e faça login
  2. Clique em "New Notebook"
  3. Clique em "File" > "Import Notebook" > "GitHub"
  4. Cole o link:
    https://github.com/masterface77/Upscale-Videos/blob/main/Video_Upscaler_Kaggle.ipynb
    
  5. Clique em "Import"
  6. IMPORTANTE: Configure a GPU:
    • Vá em Settings (lado direito)
    • Accelerator: Selecione GPU T4 x2 (ou a melhor disponível)
  7. Clique no botão "Run All" (ou "Run All Cells")
  8. Aguarde a instalação (aprox. 5 min)
  9. Pronto! A interface gráfica aparecerá no final do notebook. Basta arrastar seu vídeo e usar.

Vantagens:

  • 🎨 Interface Visual (Gradio): Sem linha de comando, tudo visual.
  • 🚀 GPU T4 x2: Muito mais potente que o Colab grátis.
  • 💾 32 GB de RAM: Processa vídeos longos sem travar.
  • ⏱️ Sem limite curto: Sessões de até 12 horas.

💻 Instalação Local

Pré-requisitos

  • Python >= 3.8
  • FFmpeg
  • CUDA (opcional, mas recomendado para melhor performance)

Passo a Passo

# 1. Clone o repositório
git clone https://github.com/masterface77/Upscale-Videos.git
cd Upscale-Videos

# 2. Crie um ambiente virtual (recomendado)
conda create -n upscale python=3.8 -y
conda activate upscale

# 3. Instale as dependências
pip install -r requirements.txt

# 4. Instale o basicsr
python basicsr/setup.py develop

# 5. Instale o FFmpeg (se ainda não tiver)
conda install -c conda-forge ffmpeg

# 6. Download dos modelos pré-treinados
python scripts/download_pretrained_models.py facelib
python scripts/download_pretrained_models.py CodeFormer

📖 Como Usar

Uso Básico

python upscale_manager.py --input seu_video.mp4 --output video_upscaled.mp4

Parâmetros Disponíveis

Parâmetro Descrição Padrão
--input Caminho do vídeo de entrada (obrigatório) -
--output Caminho do vídeo de saída (obrigatório) -
--fidelity Peso de fidelidade (0.0-1.0)
• Menor valor = Maior qualidade da IA
• Maior valor = Mais fiel ao original
0.7
--upscale Fator de upscale (1 ou 2) 2

Exemplos

# Alta qualidade (menos fiel ao original)
python upscale_manager.py --input video.mp4 --output resultado.mp4 --fidelity 0.5

# Alta fidelidade (mais próximo do original)
python upscale_manager.py --input video.mp4 --output resultado.mp4 --fidelity 0.9

# Sem upscale, apenas restauração facial
python upscale_manager.py --input video.mp4 --output resultado.mp4 --upscale 1

🎛️ Ajustando a Fidelidade

O parâmetro --fidelity controla o balanço entre qualidade e fidelidade:

  • 0.0 - 0.4: 🎨 Máxima qualidade da IA (pode alterar ligeiramente a identidade)
  • 0.5 - 0.7: ⚖️ Balanceado (recomendado para talking heads)
  • 0.8 - 1.0: 🎯 Máxima fidelidade (preserva mais a identidade original)

🔧 Troubleshooting

Erro de memória (OOM)

# Reduza o tamanho do vídeo ou processe em partes menores
# O script já limpa o cache automaticamente a cada 30 frames

FFmpeg não encontrado

# Instale o FFmpeg
conda install -c conda-forge ffmpeg

Modelos não baixam automaticamente

# Download manual
python scripts/download_pretrained_models.py facelib
python scripts/download_pretrained_models.py CodeFormer

GPU não detectada

# Verifique instalação do PyTorch com CUDA
python -c "import torch; print(torch.cuda.is_available())"

# Se False, reinstale PyTorch com CUDA:
pip install torch torchvision --index-url https://download.pytorch.org/whl/cu118

📁 Estrutura do Projeto

Upscale-Videos/
├── upscale_manager.py          # Script principal
├── basicsr/                    # Biblioteca base para restauração
├── facelib/                    # Detecção e processamento facial
├── scripts/                    # Scripts auxiliares
├── weights/                    # Modelos pré-treinados
│   ├── CodeFormer/
│   └── facelib/
├── inputs/                     # Vídeos de entrada
├── results/                    # Vídeos processados
├── requirements.txt            # Dependências Python
└── README.md                   # Este arquivo

🙏 Créditos

Este projeto é baseado no trabalho excepcional de:

  • CodeFormer - Shangchen Zhou, Kelvin C.K. Chan, Chongyi Li, Chen Change Loy
  • BasicSR - Framework de super-resolução
  • Real-ESRGAN - Upscaling de imagens
  • FaceXLib - Utilitários de processamento facial

📜 Licença

Este projeto utiliza componentes com diferentes licenças:

📧 Contato

Para questões e sugestões, abra uma issue no GitHub.


Se este projeto foi útil, considere dar uma ⭐️!

Made with ❤️ using CodeFormer

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors