Code Monkey home page Code Monkey logo

hdr-plus-swift's Introduction

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 51 images at ISO 51,200 on Sony A7S III and boosted it by +1.35EV. 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 build โ€“ 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.

hdr-plus-swift's People

Contributors

martin-marek avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.