Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Image processing using Core Image and Metal

Swift India
February 29, 2020

Image processing using Core Image and Metal

Presented at Swift Mumbai Meetup at Servify
https://www.meetup.com/SwiftMumbai/events/268167460/

Presentation Video: https://youtu.be/-hfaf9BMadk

This talk will go in deep about implementing exposure fusion algorithm for creating HDR images from a sequence of bracketed images, will also look at the best practises and available resources to create an image processing app.

Speaker: Sarvesh Sharma, iOS Developer at Servify
An iOS developer working at Servify since the last year, mainly on creating pipelines for different processes.
Linkedin: https://in.linkedin.com/in/sarvesh-sharma-06a927108

Swift India

February 29, 2020
Tweet

More Decks by Swift India

Other Decks in Programming

Transcript

  1. What is HDR, why HDR and what is exposure fusion?

    • What? At the crux of it, High-dynamic-range imaging (HDR) is a technique which uses a wider range of exposure to get details which would otherwise be lost. • Why? In images which have a wide range of exposure (camera's measure of brightness), some objects become overexposed, others underexposed, HDR helps us avoid that. • Exposure fusion? This nerdy guy called Tom Mertens devised a technique to implement HDR from 3 images taken at different exposure values, let's see how.
  2. Exposure bracketing • Camera takes multiple images (you probably still

    look horrible. Don't blame the camera, blame your mama) at varying exposure values to capture the underexposed and overexposed parts. • iOS developers are enabled to do so using AVFoundation's photosettings property ( because we don't have multiple useless camera APIs. But customizability, right? )
  3. Align, combine and resign. • The next step is to

    make sure your images are aligned properly for them to overlap each other at every position. This makes sure that pixels at the same index are being computed for all the images, avoiding halos and blurs. • Combination is the part that kills the processor and your will to live. Let's look at the research paper because mai ghanta usse better samjha paunga, lol.
  4. Image Pyramids • Daunting and confusing as it was, lets

    simplify things a little. Hold your horses because we're going to digital Egypt.
  5. And then there were 2. Gaussian pyramids: Made by applying

    gaussian blur to the original image and resizing it at every level. Laplacian pyramids: Made by taking the difference at each Gaussian level. Yes, it’s a random meme, not related to the topic, Selena's a QT though.