{"id":28276328,"url":"https://github.com/fl0wbar/advdnic.estimator","last_synced_at":"2026-04-28T23:34:30.120Z","repository":{"id":240446150,"uuid":"521560955","full_name":"fl0wbar/advDNIC.estimator","owner":"fl0wbar","description":"Research on Image Compression using Deep Neural Networks","archived":false,"fork":false,"pushed_at":"2022-08-05T08:26:36.000Z","size":6377,"stargazers_count":4,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-06-16T16:43:12.964Z","etag":null,"topics":["attention-model","autoregressive","clic2019","compression","hierarchical-models","hierarchical-prior","hyperprior","image-compression","image-compressor","non-local-network","pixelcnn","pixelsnail","tensorflow","tensorflow-estimator-api","vae"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/fl0wbar.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-08-05T08:25:10.000Z","updated_at":"2025-03-25T20:55:59.000Z","dependencies_parsed_at":"2024-05-18T23:38:50.501Z","dependency_job_id":null,"html_url":"https://github.com/fl0wbar/advDNIC.estimator","commit_stats":null,"previous_names":["fl0wbar/advdnic.estimator"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/fl0wbar/advDNIC.estimator","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fl0wbar%2FadvDNIC.estimator","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fl0wbar%2FadvDNIC.estimator/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fl0wbar%2FadvDNIC.estimator/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fl0wbar%2FadvDNIC.estimator/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/fl0wbar","download_url":"https://codeload.github.com/fl0wbar/advDNIC.estimator/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fl0wbar%2FadvDNIC.estimator/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32404340,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-28T19:38:08.556Z","status":"ssl_error","status_checked_at":"2026-04-28T19:37:55.688Z","response_time":56,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["attention-model","autoregressive","clic2019","compression","hierarchical-models","hierarchical-prior","hyperprior","image-compression","image-compressor","non-local-network","pixelcnn","pixelsnail","tensorflow","tensorflow-estimator-api","vae"],"created_at":"2025-05-21T05:10:22.603Z","updated_at":"2026-04-28T23:34:30.093Z","avatar_url":"https://github.com/fl0wbar.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# advDNIC.estimator\n\n#### Experiments done in May 2019\n\n#### Training\n\n##### Base Model\n\n- Training on CLIC 2019\n```bash\n$ python main.py --verbose --model-dir=\"experiments/base_model/generator\" train \\\n                  --train-data-dir=\"data/train\" \\\n                  --eval-data-dir=\"data/benchmark/kodak\" \\\n                  --num-parallel-calls=4 \\\n                  --batchsize=4 \\\n                  --epochs=1000 \\\n                  --save-summary-steps=10 \\\n                  --random-seed=230 \\\n                  --allow-growth=True \\\n                  --xla=False \\\n                  --save-profiling-steps=0 \\\n                  --log-verbosity=\"INFO\"\n```\n\n- Compress using model trained on CLIC 2019\n```bash\n$ python main.py --verbose --model-dir=\"experiments/base_model/generator\" compress overfit.png\n```\n\n- Decompress using model trained on CLIC 2019\n```bash\n$ python main.py --verbose --model-dir=\"experiments/base_model/generator\" decompress overfit.png.ncf\n```\n- Benchmark\n```bash\n$ python main.py --verbose --model-dir=\"experiments/base_model/generator\" benchmark --allow-growth=False\n```\n\n## Results on CLIC2019 dataset\n\n#### Base\n\n\u003e #### scale based hyperprior\n\u003e   - ##### (model training step 1136)\n\u003e \u003cimg src=\"./imagetests/only_scale/kodim19HRstep1136v1.png\"\u003e\n\n\u003e #### mean and scale based hyperprior\n\u003e - ##### (model training step 3108)\n\u003e \u003cimg src=\"./imagetests/mean_and_scale/kodim19_HRstep3108.png\"\u003e\n\n\u003e #### joint autoregressive and hierarchical prior (pixelCNN)\n\u003e - ##### (model training step 8640)\n\u003e \u003cimg src=\"./imagetests/variant3/umn3_autoregshiftedconv_res.png\"\u003e\n\n\u003e #### joint autoregressive and hierarchical prior (fast-pixelCNN++)\n\u003e - ##### (model training step 8640)\n\u003e \u003cimg src=\"./imagetests/variant3/kodim19HR_autoregshiftedconv_res.png\"\u003e\n\n\nNote that the learned model was not adapted in any way for evaluation on this image.\n\n#### Look at the results folder for running configs for below experiments\n\n## Experiments\n\n  ### Analysis and Synthesis Transform Modifications\n\n#### base\n- Contains code to replicate\n\n    \u003e J. Ballé, D. Minnen, S. Singh, S.J. Hwang, N. Johnston:\u003cbr /\u003e\n    \u003e \"Variational Image Compression with a Scale Hyperprior\"\u003cbr /\u003e\n    \u003e Int. Conf. on Learning Representations (ICLR), 2018\u003cbr /\u003e\n    \u003e https://arxiv.org/abs/1802.01436\n\n#### mod1\n- Same as the above base model\n- Modifications :\n    1. Mobile-Bottleneck Residual Convolutional Layer (EfficientNetV1)\n\n#### mod2\n- Similar to mod1\n- Modifications :\n    1. EfficientNetV1 like architecture for downsampling and its inverse for upsampling using SignalConv Blocks for down/up-sampling and GDN/IGDN for activations.\n\n#### mod3\n- Similar to mod2\n- Modifications :\n    1. EfficientNetV1 like architecture for downsampling and its inverse for upsampling using basic using basic Conv-Batch-Relu layers\n    for downsampling and ICNR_Subpixel-Batch-Relu for upsampling.\n\n#### mod4\n- same as mod3 but no EfficientNetV1 architecture.\n\n### Overall Model modifications\n\n#### variant1\n- same as mod3, but uses only scale based hyperprior, similar to\n\n  \u003e \"Variational Image Compression with a Scale Hyperprior\"\u003cbr /\u003e\n  \u003e Int. Conf. on Learning Representations (ICLR), 2018\u003cbr /\u003e\n  \u003e https://arxiv.org/abs/1802.01436\n\n#### base (this is the basic generator transform)\n- Contains the base architecture from the paper\n\n  \u003e David Minnen, Johannes Ballé, George Toderici:\u003cbr /\u003e\n  \u003e \"Joint Autoregressive and Hierarchical Priors for Learned Image Compression\"\u003cbr /\u003e\n  \u003e https://arxiv.org/abs/1809.02736v1\n\n#### variant2\n- same as base, but uses both mean and scale based hyperprior, but no autoregressive prior in hierarchy.\n\n#### variant3\n- same as base, but uses both mean and scale based hyperprior, and uses a fast variant of pixelCNN++ autoregressive prior in hierarchy.\n\n#### variant3_old\n- old version of variant3 using simple basic pixelCNN from OpenAI.\n\n#### variant4\n- same as variant3, but transforms are modified to architecture similar to\n  with added Non-Local Block, Non-Local Attention Feature Extraction Module (NLAM), Mish \u0026 GDN combo activations, Subpixel upsampling (ICNR init).\n\n  \u003e XiangJi Wu, Ziwen Zhang, Jie Feng, Lei Zhou, Junmin Wu\u003cbr /\u003e\n  \u003e \"End-to-end Optimized Video Compression with MV-Residual Prediction\"\u003cbr /\u003e\n  \u003e https://openaccess.thecvf.com/content_CVPRW_2020/papers/w7/Wu_End-to-End_Optimized_Video_Compression_With_MV-Residual_Prediction_CVPRW_2020_paper.pdf\n\n\n## Citation\n\n```\n@article{Ball2017EndtoendOI,\n  title={End-to-end Optimized Image Compression},\n  author={Johannes Ball{\\'e} and Valero Laparra and Eero P. Simoncelli},\n  journal={ArXiv},\n  year={2017},\n  volume={abs/1611.01704}\n}\n```\n```\n@article{Ball2018EfficientNT,\n  title={Efficient Nonlinear Transforms for Lossy Image Compression},\n  author={Johannes Ball{\\'e}},\n  journal={2018 Picture Coding Symposium (PCS)},\n  year={2018},\n  pages={248-252}\n}\n```\n```\n@article{Ball2018VariationalIC,\n  title={Variational image compression with a scale hyperprior},\n  author={Johannes Ball{\\'e} and David C. Minnen and Saurabh Singh and Sung Jin Hwang and Nick Johnston},\n  journal={ArXiv},\n  year={2018},\n  volume={abs/1802.01436}\n}\n```\n```\n@article{Minnen2018JointAA,\n  title={Joint Autoregressive and Hierarchical Priors for Learned Image Compression},\n  author={David C. Minnen and Johannes Ball{\\'e} and George Toderici},\n  journal={ArXiv},\n  year={2018},\n  volume={abs/1809.02736}\n}\n```\n```\n@article{Wu2020EndtoendOV,\n  title={End-to-end Optimized Video Compression with MV-Residual Prediction},\n  author={Xiangjian Wu and Ziwen Zhang and Jie Feng and Lei Zhou and Jun-min Wu},\n  journal={2020 IEEE/CVF Conference on Computer Vision and Pattern Recognition Workshops (CVPRW)},\n  year={2020},\n  pages={611-614}\n}\n```\n```\n@article{Oord2016ConditionalIG,\n  title={Conditional Image Generation with PixelCNN Decoders},\n  author={A{\\\"a}ron van den Oord and Nal Kalchbrenner and Lasse Espeholt and Koray Kavukcuoglu and Oriol Vinyals and Alex Graves},\n  journal={ArXiv},\n  year={2016},\n  volume={abs/1606.05328}\n}\n```\n\n```\n@article{Salimans2017PixelCNNIT,\n  title={PixelCNN++: Improving the PixelCNN with Discretized Logistic Mixture Likelihood and Other Modifications},\n  author={Tim Salimans and Andrej Karpathy and Xi Chen and Diederik P. Kingma},\n  journal={ArXiv},\n  year={2017},\n  volume={abs/1701.05517}\n}\n```\n\n```\n@article{Chen2018PixelSNAILAI,\n  title={PixelSNAIL: An Improved Autoregressive Generative Model},\n  author={Xi Chen and Nikhil Mishra and Mostafa Rohaninejad and P. Abbeel},\n  journal={ArXiv},\n  year={2018},\n  volume={abs/1712.09763}\n}\n```\n\n```\n@article{Wang2018NonlocalNN,\n  title={Non-local Neural Networks},\n  author={X. Wang and Ross B. Girshick and Abhinav Kumar Gupta and Kaiming He},\n  journal={2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition},\n  year={2018},\n  pages={7794-7803}\n}\n```\n\n```\n@article{Zhang2019ResidualNA,\n  title={Residual Non-local Attention Networks for Image Restoration},\n  author={Yulun Zhang and Kunpeng Li and Kai Li and Bineng Zhong and Yun Raymond Fu},\n  journal={ArXiv},\n  year={2019},\n  volume={abs/1903.10082}\n}\n```\n```\n@inproceedings{Misra2020MishAS,\n  title={Mish: A Self Regularized Non-Monotonic Activation Function},\n  author={Diganta Misra},\n  booktitle={BMVC},\n  year={2020}\n}\n```\n\n\nIf you use this library for research purposes, please cite:\n```\n@software{tfc_github,\n  author = \"Ballé, Johannes and Hwang, Sung Jin and Johnston, Nick\",\n  title = \"{T}ensor{F}low {C}ompression: Learned Data Compression\",\n  url = \"http://github.com/tensorflow/compression\",\n  version = \"1.2\",\n  year = \"2019\",\n}\n```\nIn the above BibTeX entry, names are top contributors sorted by number of\ncommits. Please adjust version number and year according to the version that was\nactually used.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffl0wbar%2Fadvdnic.estimator","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffl0wbar%2Fadvdnic.estimator","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffl0wbar%2Fadvdnic.estimator/lists"}