jamichss/Stream-DiffVSR

[ECCV 2026 Spotlight] The official repository of paper "Stream-DiffVSR: Low-Latency Streamable Video Super-Resolution via Auto-Regressive Diffusion"

Stream‑DiffVSR – 저지연, 스트리밍 가능한 비디오 초해상도

기능 – Stream‑DiffVSR은 온라인으로 작동하는 확산 기반 비디오 초해상도(VSR) 시스템입니다. 과거 프레임만 참조하므로 라이브 비디오 스트림에서 사용할 수 있습니다. 모델은 증류된 4단계 노이즈 제거기, 모션 단서를 정렬하는 자기회귀 시간 안내(ARTG) 블록, 시간 처리 모듈(TPM)이 있는 경량 시간 디코더를 실행하여 세부 사항과 시간적 일관성을 유지합니다.

중요성 – 기존 확산 VSR은 미래 프레임과 많은 노이즈 제거 단계가 필요하여 지연 시간이 수 초에서 수 분에 이릅니다. Stream‑DiffVSR은 RTX 4090에서 약 0.33초 만에 720p 프레임을 처리하며, 이전 온라인 최첨단(TMP)보다 >130배 빠릅니다. 이를 통해 확산 품질의 VSR이 화상 통화, 스트리밍, 라이브 방송과 같은 실시간 또는 저지연 애플리케이션에서 실현 가능해집니다.

주요 구성 요소

  • 4단계 증류 노이즈 제거기 – 일반적인 20‑30 확산 단계를 단 4개로 줄여 추론 시간을 단축합니다.
  • 자기회귀 시간 안내(ARTG) – 현재 잠재 변수를 노이즈 제거하는 동안 이전 프레임에서 모션 정렬 정보를 주입합니다.
  • 시간 처리 모듈(TPM) – 공간 세부 사항을 정제하고 프레임 간 일관성을 강제하는 시간 인식 디코더의 일부입니다.

시작하기

  1. 클론 및 설정 – git clone https://github.com/jamichss/Stream-DiffVSR.git 실행 후 requirements.yml(또는 RTX 전용 requirements-cu12.txt)에서 conda 환경을 생성합니다.
  2. 추론 실행 – CLI inference.py는 Hugging Face에서 사전 훈련된 모델을 자동으로 가져옵니다:
    python inference.py \
        --model_id Jamichsu/Stream-DiffVSR \
        --in_path  /path/to/low‑res/frames \
        --out_path /path/to/high‑res/output \
        --num_inference_steps 4
    
    입력은 각 하위 디렉터리에 순서가 지정된 PNG 프레임 목록이 포함된 폴더여야 합니다.
  3. 선택적 속도 향상 – --enable_tensorrt(출력 높이/너비 지정 필요)를 추가하여 TensorRT 엔진을 컴파일합니다. 이는 약간의 품질 손실을 감수하고 처리량을 높입니다.
  4. Gradio UI – requirements-app.txt를 설치하고 python app.py를 실행하여 비디오에서 프레임을 추출하고, 모델을 실행하고, 원본 오디오와 함께 업스케일된 비디오를 재조립하는 웹 UI를 얻습니다.
  5. Docker – 바로 실행 가능한 이미지가 제공됩니다. docker build -t stream-diffvsr-gradio .로 빌드하고 GPU 액세스로 실행합니다.

훈련 – 저장소에는 저자의 훈련 파이프라인을 재현하는 스크립트도 포함되어 있습니다:

  • 1단계: 롤아웃 증류를 사용한 UNet 훈련.
  • 2단계: 시간 디코더 내에서 TPM 훈련.
  • 3단계: UNet과 TPM을 고정한 상태에서 ARTG 훈련.

훈련은 REDS 및 Vimeo‑90K 데이터셋을 사용합니다(경로는 dataset/config_*.yaml에서 설정). UNet은 StableVSR 가중치에서 초기화되고, 시간 디코더 가중치는 TAESD‑X4에서 가져오며, 둘 다 자동으로 다운로드됩니다.

모델 위치 – 사전 훈련된 가중치는 Hugging Face의 Jamichsu/Stream-DiffVSR에서 호스팅됩니다. 추론 스크립트는 즉시 가져오므로 수동 다운로드가 필요 없습니다.

인용 – 코드나 모델을 사용하는 경우 arXiv 논문(arXiv:2512.23709)을 인용하세요.


위의 모든 정보는 저장소의 README에서 직접 가져온 것입니다.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트