DisPose: генерирование видео с точным контролем человеческих поз, создание танцующих дам

Общее введение

DisPose - это инновационный проект искусственного интеллекта с открытым исходным кодом, направленный на создание управляемой анимации изображений персонажей. Разработанный группой исследователей и размещенный на GitHub, проект использует передовые методы глубокого обучения для достижения точного управления анимацией персонажей путем декомпозиции информации о скелетной позе. Основная инновация DisPose заключается в декомпозиции разреженной информации о скелетной позе на два ключевых компонента, а именно, наведение поля движения и соответствие ключевым точкам. Этот уникальный подход делает генерируемую анимацию более естественной и плавной, а также более управляемой. Проект не только предоставляет полную реализацию кода, но и включает предварительно обученные модели, чтобы исследователи и разработчики могли быстро внедрить и использовать эту технологию.

Похожие товары:StableAnimator: генерирует высококачественную видеоанимацию, сохраняющую черты персонажа.

DisPose:生成人体姿态精准控制的视频,创作跳舞的小姐姐

 

Список функций

  • Определение позы человека и извлечение ключевых точек
  • Генерация и управление спортивными площадками
  • Композитинг изображений персонажей
  • Точное управление несколькими суставами
  • Детализация лица и рук
  • Возможность пакетной обработки видео
  • Постуральная миграция и перенаправление движений
  • Оценка и отслеживание ориентации в реальном времени
  • Настройка параметров управления пользовательской анимацией
  • Высокое качество анимации

 

Использование помощи

1. конфигурация окружающей среды

Для работы DisPose требуется следующая базовая конфигурация среды:

  • Python 3.10 или более поздняя версия
  • PyTorch 2.0.1 и выше
  • TorchVision 0.15.2 и выше
  • CUDA 12.4 (для ускорения GPU)

Этапы установки:

# 创建conda环境
conda create -n dispose python==3.10
conda activate dispose
# 安装依赖
pip install -r requirements.txt

2. Подготовка модели

  1. Загрузите файл весов предварительно обученной модели из Hugging Face:
    • Посетите https://huggingface.co/lihxxx/DisPose
    • Загрузите файл DisPose.pth
    • Поместите файл в каталог . /pretrained_weights/ каталог

3. Потоки использования основной функциональности

3.1 Обнаружение высоты

Система использует детектор DWPose для определения позы человека, который выявляет следующие ключевые моменты:

  • Суставные точки скелета тела (18)
  • Черты лица (68)
  • Ключевые моменты руки (21/рука)

3.2 Предварительная обработка изображений

# 处理参考图像
ref_image = load_image(image_path)
pose_img, ref_pose = get_image_pose(ref_image)

3.3 Обработка видео

# 处理视频序列
video_pose, body_points, face_points = get_video_pose(
video_path=video_path,
ref_image=ref_image,
sample_stride=1
)

3.4 Управление генерацией анимации

Система предоставляет несколько параметров для управления генерацией анимации:

  • Регулирование интенсивности на стадионах
  • Ключевые точки соответствуют весам
  • Степень постуральной миграции
  • Плавность хода времени

4. Описание дополнительных функций

  1. Миграция позы:
    • Поддержка миграции жестов с исходного видео на целевой персонаж
    • Сохраняя идентичность персонажа
    • Автоматически адаптируется к различным размерам тела
  2. Редактор действий:
    • Поддержка модификации местных действий
    • Предоставьте функцию редактирования ключевых кадров
    • Регулируемая скорость и амплитуда движения
  3. Возможность пакетной обработки:
    • Поддержка пакетной обработки видео
    • Обеспечивает возможности параллельной обработки
    • Автоматическая оптимизация планирования ресурсов

5. предостережения

  • Убедитесь, что качество входного изображения четкое, а поза человека полностью видна
  • Видеопамять GPU рекомендуется не менее 8 ГБ или более
  • Настройте параметр sample_stride при обработке видео высокого разрешения.
  • Регулярно проверяйте и обновляйте версии пакетов зависимостей
  • Перед обработкой больших объемов данных рекомендуется проводить небольшие испытания

6. решение общих проблем

  1. Проблемы с памятью:
    • Освободите неиспользуемые ресурсы с помощью функции release_memory().
    • Изменение размера партий соответствующим образом
    • Тестирование с низким разрешением
  2. Оптимизация производительности:
    • Включите ускорение графического процессора
    • Используйте соответствующий размер шага выборки
    • Оптимизированное разрешение входного изображения
  3. Улучшение качества:
    • Использование высококачественных референсных изображений
    • Настройка параметров модели
    • Выполните оптимизацию постобработки
© заявление об авторских правах

Похожие посты

Нет комментариев

Вы должны войти в систему, чтобы участвовать в комментариях!
Войти сейчас
нет
Нет комментариев...