Python 3.8 и conda. Получите Conda CUDA, если хотите использовать среду графического процессора.
conda create -n $YOUR_PY38_ENV_NAME python=3.8
conda activate $YOUR_PY38_ENV_NAME
pip install -r requirements.txt
Для нашего проекта входные данные имеют форму массива (B, T, C, H, W), где каждый кадр в массиве имеет фиксированный размер 128x128. Количество кадров в каждом видео равно 30, что дает форму (B, 30, 3128, 128). Прежде чем использовать этот проект, вам может потребоваться соответствующим образом предварительно обработать ваши видеоданные. В коде мы предоставляем пример массива «city_bonn.npy» формы (46, 30, 3, 128, 128). Этот массив содержит 46 видео из города Бонн в наборе данных Cityscape. Ниже приведен пример команды.
Вы можете контролировать, какие видео обрабатывать, выбирая значения start_idx и end_idx. Убедитесь, что выбранный диапазон не превышает значения B (количества видео в вашем наборе данных).
python city_sender.py --data_npy "data_npy/city_bonn.npy" --output_path "your path" --start_idx 0 --end_idx 1
В разделе «Бенчмарк» мы предоставляем код для расчета показателей сжатия для H.264 и H.265. Входными данными для этого кода должны быть 30 кадров изображения размером 128x128, желательно с именем в формате «frame%d».
структура папок набора данных похожа
/your path/
- frame0.png
- frame1.png
- ...
- frame29.png
Для project_str это просто строка, используемая для различения ваших данных. Здесь мы используем «uvg».
python bench.py --dataset "your path" --output_path "your path" --project_str uvg
Что касается контрольно-пропускных пунктов, мы используем два их набора. Один набор включает «checkpoint_900000.pt», который используется для создания видео. Другой набор содержит шесть групп контрольных точек, и эти контрольные точки будут использоваться для части сжатия изображения, соответствующей шести различным качествам сжатия.
Шесть весов необходимо переместить в папку «Контрольные точки/нейронная сеть».
лямбда | качество |
---|---|
0,45 | q5 |
0,15 | Q4 |
0,032 | Q3 |
0,015 | кв2 |
0,008 | q1 |
0,004 | q0 |
Этот индивидуальный вес необходимо переместить в папку «checkpoints/sender».
контрольная точка диффузионной модели |
---|
контрольная точка диффузионной модели |
На следующих изображениях сравнивается производительность сжатия нашей модели с традиционными стандартами сжатия видео H.264 и H.265. Можно заметить, что наша модель превосходит их по производительности при низких битрейтах (bpp). Эти данные были рассчитаны по первым 24 видео с сайта city_bonn.npy.