{"id":19073236,"url":"https://github.com/anshap1719/image-hdr","last_synced_at":"2025-04-28T18:55:49.444Z","repository":{"id":63963306,"uuid":"569497449","full_name":"anshap1719/image-hdr","owner":"anshap1719","description":"An implementation of HDR Radiance Estimation using Poisson Photon Noise Estimator for creating HDR image from a set of images","archived":false,"fork":false,"pushed_at":"2024-09-15T13:27:08.000Z","size":44,"stargazers_count":19,"open_issues_count":2,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-26T03:13:31.501Z","etag":null,"topics":["hdr","hdr-image","histogram","image","image-processing"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/anshap1719.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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,"zenodo":null}},"created_at":"2022-11-23T00:45:07.000Z","updated_at":"2025-01-22T01:15:39.000Z","dependencies_parsed_at":"2024-07-23T11:26:22.243Z","dependency_job_id":"3543b98d-cf45-4e4c-92b1-53056edfa463","html_url":"https://github.com/anshap1719/image-hdr","commit_stats":{"total_commits":14,"total_committers":2,"mean_commits":7.0,"dds":0.0714285714285714,"last_synced_commit":"606204afcec06c2d82ce363436b294f58dbed106"},"previous_names":[],"tags_count":8,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/anshap1719%2Fimage-hdr","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/anshap1719%2Fimage-hdr/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/anshap1719%2Fimage-hdr/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/anshap1719%2Fimage-hdr/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/anshap1719","download_url":"https://codeload.github.com/anshap1719/image-hdr/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250926213,"owners_count":21508917,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["hdr","hdr-image","histogram","image","image-processing"],"created_at":"2024-11-09T01:46:01.819Z","updated_at":"2025-04-28T18:55:49.421Z","avatar_url":"https://github.com/anshap1719.png","language":"Rust","funding_links":[],"categories":["Libraries"],"sub_categories":["Image processing"],"readme":"# image-hdr ![](https://github.com/anshap1719/image-hdr/actions/workflows/rust.yml/badge.svg)\n\nThis is a rust library which implements the HDR merging algorithm for camera images taken with different exposure\ntimes (or with bracketing). It uses the algorithms described\nin https://www.cl.cam.ac.uk/research/rainbow/projects/noise-aware-merging/2020-ppne-mle.pdf, and uses \"Poisson Photon\nNoise Estimator\" equations to estimate final radiances at each pixel position.\n\n## Current State\n\nThe library is still in early stages of development, but aims to provide a crate that can handle all HDR merging needs.\nTowards that end, the following todos are the top priority:\n\n- Tone mapping algorithm implementations.\n- Improve performance.\n\n## Dependencies\n\n- image-rs: Uses DynamicImage as the output format and storage format between calculations.\n- rawloader: For supporting RAW image formats.\n- rayon: For doing point calculations in parallel.\n- kamadak-exif: For getting image's metadata, specifically exposure time and gain (ISO).\n\n## Usage\n\n```\nlet paths = vec![\"src/image1.tif\", \"src/image2.tif\", \"src/image3.tif\"];\nlet hdr_merge = image_hdr::hdr_merge_images(paths);\nlet stretched = apply_histogram_stretch(\u0026fusion);\n\nstretched\n    .to_rgba16()\n    .save(format!(\"src/hdr_merged.tiff\"))\n    .unwrap();\n```\n\n## Samples\n\n### Given the following 3 exposures:\n\n![alt \"1/640s\"](https://image-hdr-assets.s3.ap-south-1.amazonaws.com/DSC00001+Large.jpeg)\n![alt \"1/4000s\"](https://image-hdr-assets.s3.ap-south-1.amazonaws.com/DSC00002+Large.jpeg)\n![alt \"1/80s\"](https://image-hdr-assets.s3.ap-south-1.amazonaws.com/DSC00003+Large.jpeg)\n\n### Resulting unprocessed image:\n\n![alt \"Merged image\"](https://image-hdr-assets.s3.ap-south-1.amazonaws.com/hdr_merged+Large.jpeg)\n\n### After basic processing (Levels and Contrast):\n\n![alt \"Processed image\"](https://image-hdr-assets.s3.ap-south-1.amazonaws.com/Processed+Large.jpeg)\n\n## Contributing\n\nBug reports and pull requests welcome at https://github.com/anshap1719/image-hdr\n\n## Citations\n\n- Noise-Aware Merging of High Dynamic Range Image Stacks without Camera Calibration by Param Hanji, Fangcheng Zhong, and\n  Rafa l K. Mantiuk (https://www.cl.cam.ac.uk/~rkm38/pdfs/hanji2020_noise_aware_HDR_merging.pdf)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fanshap1719%2Fimage-hdr","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fanshap1719%2Fimage-hdr","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fanshap1719%2Fimage-hdr/lists"}