Home
Login

FaceSwap es una herramienta de intercambio de rostros basada en aprendizaje profundo que puede identificar e intercambiar rostros en imágenes y videos.

GPL-3.0Python 54.2kdeepfakesfaceswap Last Updated: 2025-05-21

FaceSwap - Herramienta de Intercambio de Rostros con Aprendizaje Profundo

Resumen del Proyecto

FaceSwap es una herramienta que utiliza técnicas de aprendizaje profundo para identificar e intercambiar rostros en imágenes y videos. El proyecto es de código abierto y puede ejecutarse en múltiples sistemas operativos como Windows, Linux y MacOS.

Propósito del Proyecto

El proyecto FaceSwap tiene estándares éticos y un propósito de uso claros:

Usos Positivos

  • Utilizado para experimentar y descubrir la tecnología de IA
  • Comentario social o político
  • Producción de películas
  • Otros usos éticos y razonables
  • Proporcionar educación y experiencia para cualquiera que quiera aprender IA de primera mano

Usos Prohibidos

  • No debe utilizarse para crear contenido inapropiado
  • No debe intercambiar rostros sin consentimiento o con la intención de ocultar su uso
  • No debe utilizarse para ningún propósito ilegal, inmoral o cuestionable

Características Técnicas

Requisitos del Sistema

  • Programa Python
  • Soporte para múltiples sistemas operativos (Windows, Linux, MacOS)
  • Requiere una GPU moderna y soporte CUDA para un rendimiento óptimo
  • Soporte para muchas GPU AMD a través de DirectML (Windows) y ROCm (Linux)

Módulos de Funciones Principales

  1. Extracción de Rostros: Extrae rostros de las fotos originales
  2. Entrenamiento del Modelo: Entrena un modelo basado en los rostros extraídos
  3. Transformación de Rostros: Utiliza el modelo entrenado para el intercambio de rostros
  4. Interfaz GUI: Proporciona una interfaz gráfica de usuario

Flujo de Uso

Pasos Básicos

  1. Recopilación de Material: Prepara fotos y/o videos
  2. Extracción de Rostros: Extrae rostros de las fotos originales
  3. Entrenamiento del Modelo: Entrena un modelo en los rostros extraídos
  4. Aplicación de la Transformación: Utiliza el modelo para transformar el material de origen

Operaciones de Línea de Comandos

Extracción de Rostros

python faceswap.py extract

Este comando extraerá fotos de la carpeta src y extraerá los rostros a la carpeta extract.

Entrenamiento del Modelo

python faceswap.py train

Este comando utilizará carpetas que contengan dos imágenes de rostros para el entrenamiento, y el modelo entrenado se guardará en la carpeta models.

Transformación de Rostros

python faceswap.py convert

Este comando obtendrá fotos de la carpeta original y aplicará el nuevo rostro a la carpeta modified.

Interfaz GUI

python faceswap.py gui

Procesamiento de Video

Los videos se pueden procesar de las siguientes maneras:

python tools.py effmpeg -h

O use ffmpeg para convertir el video en fotos, procesar las imágenes y luego convertir las imágenes nuevamente en video.

Arquitectura del Proyecto

Modelos Principales

  • Modelo Phaze-A
  • Modelo Villain
  • Modelo Unbalanced
  • Modelo OHR
  • Modelo DFL-H128
  • Modelo DFaker

Componentes Centrales

  • Alineador FAN
  • Detector MTCNN
  • Interfaz GUI

Obtener Ayuda

Recursos de Documentación

  • INSTALL.md: Instrucciones completas de instalación
  • USAGE.md: Instrucciones detalladas de uso
  • Todos los scripts tienen la opción -h/--help

Principios de Aprendizaje Automático

FaceSwap funciona basándose en el aprendizaje profundo y las tecnologías de redes neuronales. En pocas palabras, funciona de la siguiente manera:

  • Datos de entrenamiento + Prueba y error = Proceso de aprendizaje

La computadora aprende a reconocer y dar forma a los rostros a través de grandes cantidades de datos de entrenamiento, que es un complejo proceso de aprendizaje automático que involucra el entrenamiento profundo de redes neuronales.

Contexto Técnico

Cuando la tecnología de intercambio de rostros se desarrolló y publicó por primera vez, fue innovadora y un gran paso en el desarrollo de la IA. Antes de los "deepfakes", estas tecnologías eran como magia negra, que solo podían practicar aquellos que podían entender todos los entresijos. La aparición de FaceSwap cambió todo esto, permitiendo que cualquiera participe en el desarrollo de la IA sin necesidad de un doctorado en matemáticas, teoría de la computación, psicología, etc.

Precauciones

  • Reutilizar los modelos existentes es mucho más rápido que entrenar desde cero
  • Si no hay suficientes datos de entrenamiento, puede comenzar con personas similares y luego cambiar los datos
  • El proyecto sigue estrictamente los estándares éticos y adopta una política de tolerancia cero hacia cualquier uso inapropiado
  • Todos los problemas relacionados con el código en ejecución deben plantearse en el foro de FaceSwap

Star History Chart