Home
Login

Herramienta de deepfake de reemplazo de rostros con un solo clic, reemplaza rostros en videos con solo una imagen

GPL-3.0Python 30.0ks0md3vroop Last Updated: 2024-08-19

Roop - Herramienta de Reemplazo de Caras con un Clic

Resumen del Proyecto

Roop es una herramienta de "deepfake" (falsificación profunda) de código abierto, desarrollada por el usuario de GitHub s0md3v. La función principal del proyecto es reemplazar caras en videos con una sola imagen, sin necesidad de conjuntos de datos ni entrenamiento. El proyecto actualmente ha dejado de actualizarse, pero aún se puede usar normalmente.

Dirección de GitHub: https://github.com/s0md3v/roop

Características Principales

Funcionalidad Central

  • Operación con un Clic: Función de reemplazo de caras simple y fácil de usar.
  • Entrada de Imagen Única: Solo se necesita una imagen de la cara objetivo.
  • Procesamiento de Video: Soporta el reemplazo de caras en todo el video.
  • Sin Necesidad de Entrenamiento: No requiere entrenamiento previo del modelo ni preparación de grandes conjuntos de datos.

Características Técnicas

  • Basado en tecnología de aprendizaje profundo.
  • Soporta aceleración por CPU y GPU.
  • Utiliza modelos pre-entrenados.
  • Soporta múltiples formatos de salida.

Requisitos de Instalación

La instalación del proyecto requiere ciertas habilidades técnicas, no es adecuada para principiantes. Principalmente incluye dos métodos de instalación:

Instalación Básica

  • Mejor compatibilidad, pero velocidad de procesamiento más lenta.
  • Adecuada para entornos con recursos computacionales limitados.

Instalación Acelerada

  • Aprovecha al máximo el rendimiento de la CPU y la GPU.
  • Velocidad de procesamiento más rápida, adecuada para usuarios con tarjetas gráficas dedicadas.

Modo de Uso

Parámetros de Línea de Comandos

El programa se ejecuta a través de la línea de comandos, la sintaxis básica es:

python run.py [options]

Descripción de los Parámetros Principales

Parámetros Básicos

  • -h, --help: Muestra la información de ayuda.
  • -s SOURCE_PATH, --source SOURCE_PATH: Selecciona la imagen de origen.
  • -t TARGET_PATH, --target TARGET_PATH: Selecciona la imagen o video de destino.
  • -o OUTPUT_PATH, --output OUTPUT_PATH: Selecciona el archivo o directorio de salida.

Parámetros de Procesamiento

  • --frame-processor: Selección del procesador de fotogramas (face_swapper, face_enhancer, etc.).
  • --keep-fps: Mantiene la velocidad de fotogramas de destino.
  • --keep-frames: Conserva los fotogramas temporales.
  • --skip-audio: Omite el audio de destino.
  • --many-faces: Procesa cada cara.

Parámetros de Reconocimiento Facial

  • --reference-face-position: Posición de la cara de referencia.
  • --reference-frame-number: Número de fotograma de referencia.
  • --similar-face-distance: Distancia de la cara utilizada para el reconocimiento.

Configuración de Salida

  • --temp-frame-format {jpg,png}: Formato de imagen para la extracción de fotogramas.
  • --temp-frame-quality [0-100]: Calidad de imagen para la extracción de fotogramas.
  • --output-video-encoder: Selección del codificador de video de salida.
    • libx264, libx265, libvpx-vp9, h264_nvenc, hevc_nvenc
  • --output-video-quality [0-100]: Calidad del video de salida.

Parámetros de Rendimiento

  • --max-memory MAX_MEMORY: Cantidad máxima de RAM utilizada (GB).
  • --execution-provider {cpu}: Proveedor de ejecución disponible.
  • --execution-threads: Número de hilos de ejecución.

Ejecución en Modo Sin Interfaz Gráfica (Headless)

Usando los parámetros -s/--source, -t/--target y -o/--output se puede ejecutar el programa en modo sin interfaz gráfica, adecuado para el procesamiento automatizado.

Arquitectura Técnica

Dependencias Centrales

  • InsightFace: El proyecto utiliza la biblioteca insightface desarrollada por el equipo deepinsight.
  • Bibliotecas de Terceros: Utiliza ampliamente modelos pre-entrenados y bibliotecas de terceros.
  • Framework de Aprendizaje Profundo: Basado en tecnología moderna de aprendizaje profundo.

Flujo de Procesamiento

  1. Ingresa la imagen de la cara de origen y el video de destino.
  2. Detecta y analiza las características faciales.
  3. Realiza el procesamiento de reemplazo de caras.
  4. Genera el archivo de video procesado.

Escenarios de Uso

Usos Legítimos

  • Creación Artística: Asiste a los artistas en la creación de animación de personajes.
  • Modelado de Ropa: Proporciona diferentes rostros para modelos de ropa.
  • Contenido de Entretenimiento: Crea contenido de video divertido.
  • Demostración Educativa: Utilizado para demostraciones técnicas y enseñanza.

Consideraciones Éticas y Declaración de Responsabilidad

Código de Conducta Ética

Este software está diseñado para contribuir positivamente a la industria de medios generados por IA, ayudando a los artistas a completar tareas como la animación de personajes y modelos de ropa.

Medidas de Seguridad

  • Se han implementado medidas para evitar que el software se utilice para contenido inapropiado (como desnudez).
  • Se espera que los usuarios cumplan con las leyes locales y utilicen el software de manera responsable.

Responsabilidad del Usuario

  • Si se utilizan rostros reales, se requiere obtener el consentimiento y etiquetar claramente el contenido como "deepfake" al compartirlo.
  • Los desarrolladores no son responsables del comportamiento del usuario.
  • Los usuarios deben cumplir con las leyes y regulaciones locales pertinentes.

Estado del Proyecto

Recordatorio Importante: Este proyecto aún se puede usar, pero ha dejado de recibir actualizaciones. El desarrollador ha expresado que no tiene interés ni tiempo para supervisar el desarrollo posterior del software.

El desarrollador agradece a todos los que contribuyeron al proyecto, permitiéndole alcanzar su forma final.

Documentación y Soporte

  • Documentación detallada: https://github.com/s0md3v/roop/wiki
  • Ya no se aceptan preguntas relacionadas con la plataforma y la instalación en GitHub.
  • Los usuarios deben buscar soluciones por sí mismos cuando encuentren errores.

Resumen

Roop es una herramienta de IA poderosa pero que requiere un uso cuidadoso. Demuestra el potencial de la tecnología moderna de aprendizaje profundo en el campo del procesamiento de video, al tiempo que nos recuerda que debemos asumir las responsabilidades éticas y legales correspondientes al utilizar este tipo de tecnología. Los usuarios deben comprender completamente los riesgos relacionados antes de usarlo y asegurarse de que su uso cumpla con las leyes y los estándares éticos.

Star History Chart