PULSE: Unlocking Practical Image Compression on Single-Thread CPU

arXiv: 2609.18602 GitHub

PULSE is an asymmetric, variable-rate neural image codec for practical compression on resource-constrained hardware. It combines ultra-low-complexity decoding, bit-exact entropy coding, and MSE or perceptual optimization.

Key Advantages

  • Single-thread CPU decoding: The base receiver requires just 5.2 kMAC/pixel.
  • Cross-platform entropy coding: Integer Linear CDF prediction and CPU rANS provide deterministic entropy transport, with a content-adaptive Meta Prior.
  • Flexible rate and quality: Four MSE/perceptual models support eight quality levels each, including face/text-aware perceptual fine-tuning.
  • Complete codec tools: Training, independent .pulse compression and decompression, and optimized CPU, H100 GPU, and mobile NPU deployment tools.

Paper | Training | Deployment

Available Models

Bundle Objective Receiver
pulse-s-mse MSE ~2.7 kMAC/pixel
pulse-mse MSE ~5.2 kMAC/pixel
pulse-perceptual Perceptual / ROI ~5.2 kMAC/pixel
pulse-l-perceptual Perceptual / ROI ~20 kMAC/pixel

Each bundle contains config.json, model.pt and entropy_control_int.pt. Eight QPs (0–7) are supported. Keep the matching files together. manifest.json and SHA256SUMS record all inference-file checksums.

Use

Install the PULSE code following its installation guide, then run from GenCodec/PULSE:

python download_models.py --repo zhaoyangjia/PULSE --models pulse-mse
python compress.py --model checkpoints/pulse-mse \
  --input image.png --output image.pulse --qp 3
python decompress.py --model checkpoints/pulse-mse \
  --input image.pulse --output reconstruction.png

Citation

@article{jia2026pulse,
    title     = {{PULSE}: Unlocking Practical Image Compression on Single-Thread {CPU}},
    author    = {Jia, Zhaoyang and Zhang, Tianyu and Zheng, Zihan and Xie, Wenxuan and Li, Jiahao and Li, Bin and Li, Houqiang and Lu, Yan},
    journal   = {arXiv preprint arXiv:2609.18602},
    year      = {2026},
    url       = {https://arxiv.org/abs/2609.18602}
}
Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model isn't deployed by any Inference Provider. πŸ™‹ Ask for provider support

Paper for zhaoyangjia/PULSE