Skip to content

f0enix/hdr-plus-swift

 
 

Repository files navigation

Burst Photo

This is a macOS app written in Swift / SwiftUI / Metal that implements a simplified version of HDR+, the computational photography pipeline in Google Pixel phones. You can read more about HDR+ in Google's paper Burst photography for high dynamic range and low-light imaging on mobile cameras.

If you are a researcher or you prefer Python/PyTorch, I suggest you check out hdr-plus-pytorch.

Example

I took a burst of 35 images at ISO 12,800 on Sony RX100-V and boosted it by +2EV. Here's a comparison of a single image from the burst vs. a merge of all the images.

alt text

To test motion-robustness, I compared a raw image, output from the app using Robustness set to High, and output from the app using Robustness set to Low. You can compare my results to Google's by opening Figure 6 in their paper. Image taken from Google's HDR+ dataset licensed under CC BY-SA.

alt text

For more examples, please visit burst.photo/gallery/.

Usage

To process a burst of DNG images, simply drag-and-drop them into the app. You can read more at burst.photo/help/.

alt text

Download

You can download the app from the Mac App Store or as a GitHub release.

Features

  • DNG support
  • robust merge
  • mutli-threaded image loading
  • align+merge running in pure Metal

TODO

  • Fix progressbar getting stuck loading the first image
  • ARM support – requires recompiling Adobe DNG SDK
  • 32-bit output - how can this be achieved in Adobe DNG SDK?
  • super-resolution

Please feel free to contribute to any of these features or suggest other features.

Acknowledgements

This product includes DNG technology under license by Adobe.

About

Night mode on any camera. Based on HDR+.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C++ 66.9%
  • C 31.2%
  • Swift 1.5%
  • Other 0.4%