danopdev / MergePhotos

Android application for marge multiple photos: panoramas, HDR, ...
MIT License
30 stars 0 forks source link
android-application kotlin-android opencv panorama-stitching photo-editing photography stitching

MergePhotos

Android application for merging photos. Internaly it uses OpenCL.

Ideas:

Panorama

Needs minimum 2 photos.

Input Image 1 Input Image 2
Panorama: Plane Panorama: Cylindrical Panorama: Spherical

Aligned

Images are aligned based on the first image. Aligned images will fill with black missing pixels.

Input Image 1 Input Image 2 Input Image 3
Output Image 1 (same as Input Image 1) Output Image 2 Output Image 3

HDR

Images are aligned before merging.

Input Image 1 Input Image 2 Input Image 3

Output

Long Exposure

Images are aligned before merging. Modes:

Input Image 1 Input Image 2 Input Image 3
Average Nearest to Average

Interpolation

Linear (default) Cubic Area Lanczos4

Lanczos4 looks to be the sharpest so I will switch from default to this one.

Ideas

Inpaint

When creating panoramas the result images have black borders.

Panorama Mask

I tested opencv / opencv_contrib to fill this areas (the time it took is on my laptop not on adroid device):

NS TELEA SHIFTMAP FSR FAST FSR BEST
4.57 seconds 4.04 seconds 22.68 seconds 190.09 seconds 3086.39 seconds

From my point of view:

Long exposure improuvements

If you capture 2-3 images of a waterfall the water don't look blurry enought. Try to add some blur / motion blur on areas that are different. (I need so take some interesting shots first.)