README.md 3.11 KB

Deep Video Compression

Our Test Sequence

The Common Test Conditions(CTC) of the test sequence(6 sequences) we used are as follows.

  • Chroma Format: RGB 4:4:4
  • Input bit-depth: 8
  • Resolution: 768x768
  • HEVC & VVC QP: 22, 27, 32, 37
  • Compress AI Quality: 1, 2, 3, 4, 5, 6

Sensor-generated Sequence

Input bit-depth Frame rate Test sequence name frame count
8 50 CrowdRun 100
8 50 DucksTakeOff 100
8 50 OldTownCross 100
8 50 Parkjoy 100

Computer-generated Sequence

Input bit-depth Frame rate Test sequence name frame count
8 60 ArenaOfValor 120
8 24 GlassHalf 48

Reference Software

HEVC (HM 16.8): Download HM

VVC (VTM 12.1): Download VTM, Download Documents

Compress AI (bmshj2018-hyperprior, mbt2018, cheng2020-anchor): compressAI github

Our Proposed Codec

Performance Test

PSNR

Alt text

BPP

(#압축에 사용된 전체 Bit 수) / (#전체 화소수)

Code explanation

The Directory Structure

.
├── README.md
├── Our Encoder
|   ├── codec-Copy1.py
|   ├── codec-Copy2.py
|   └── codec-Copy3.py
├── PostProcessing
|   ├── get_BPP.m
|   ├── get_PSNR_and_BPP manual.docx
|   ├── png_to_rgb.m
|   └── PostProcessing.m
├── PreProcessing
|   ├── frame_to_png.m
|   ├── MakeBat.m
|   ├── RGB Crop(ffmpeg) manual.docx
|   ├── rgb_to_frame.m
|   └── rgb_to_png.m
├── 영상 주관적 화질평가
|   └── pYUV manual.docx
├── 기초조사서.docx
└── 중간보고서.hwp

PreProcessing

frame_to_png: 하나의 frame(.rgb)를 이미지(.png) 파일로 변환 MakeBat: HEVC 또는 VVC batch 파일내용 생성 코드 rgb_to_frame: 여러 frame의 영상(.rgb)을 하나의 frame(.rgb) 단위로 변환 rgb_to_png: 여러 frame의 영상(.rgb)을 하나의 이미지(.png) 단위로 변환

PostProcessing

png_to_rgb: 여러 이미지(.png)를 여러 frame의 영상(.rgb)으로 변환 PostProcessing: HEVC 또는 VVC에서 Decoding된 영상(10bit, BGR)을 8it, RGB영상으로 변환 및 PSNR, SSIM, BPP계산

Our Codec

codec-Copy1: ALL Intra Compression Codec codec-Copy2: First Frame Intra Compression + Other Frame Residual(clip(recon-ref, -0.5, 0.5)+0.5) Compression Codec codec-Copy3: First Frame Intra + Other Frame Residual1(clip(recon-ref, 0, 1)), Residual2(-clip(recon-ref, -1, 0)) Codec

명령어: python [codec name] [encode or decode mode] --model [model name] -m [mse] -fr [frame rate] -f [frame count] -q [quality] [sequence name] 명령어 예시: python examples/codec-Copy2.py encode --model cheng2020-anchor -m mse -q 6 CrowdRun