Open Source Photography
Awesome-OpenSourcePhotography¶
A list of awesome free open source software & libraries for photography. Also tools for video. For more awesomeness, check out awesome.
General¶
- GIMP - A swiss knife for image manipulation.
- PhotoFlow - A non-destructive photo retouching program including RAW image development.
- ImageMagick - A suite of command-line utilities for modifying and working with images.
- GraphicsMagick - GraphicsMagick is usually faster than ImageMagick.
Camera Firmware Mods¶
- CHDK - Canon Hack Development Kit, for Canon cameras.
- Magic Lantern - A software enhancement that offers increased functionality to Canon DSLR cameras.
- Autoexec Hack - Compilation of hacks for GoPro Cameras.
- PTool Firmware Manipulation Tool - Change the video recording parameters of Panasonic's cameras.
- Nikon Hacker - Nikon Patch and Nikon Emulator, 2 softwares for Nikon cameras.
- Xiaomi Yi Autoexec - Compilation of autoexec scripts and mods for Xiaomi Yi camera.
Libraries¶
- LibGphoto2 - C APi for Digital camera access and remote control. Java,python,C#, and much more bindings.
Canon¶
GoPro¶
- GoPro - API for controlling GoPro Hero 3 Camera from Node.js.
- GoPro - GoPro Hero 4 - Python API.
- GoPro - A Python library and a CLI that can interface with GoPro HERO3, HERO3+, and HERO4 cameras over http.
- GoPro.Hero - A lightweight c# library to access and control GoPro HERO.
Sony¶
- SonyPy - Python module for Sony Camera Remote API.
Utilities¶
- Timelapse-sony - Android app for creating timelapse via "Ctrl with Smartphone" mode or connected by NFC.
- Remoteyourcam-usb - Control your Canon or Nikon DSLR camera from your Android device through USB.
- digiCamControl - DSLR camera remote control open source software.
Analogue photography¶
- Digitaltruth - Film development chart.
RAW image developers¶
- Darktable - An open source photography workflow application and RAW developer.
- RawTherapee - A cross-platform raw image processing program.
- Photivo - A multi platform photo processor for RAW and bitmap images with 16 bit precision.
- Raw Studio - Read and manipulate RAW images from digital cameras.
- UFRaw - A utility to read and manipulate raw images from digital cameras.
- DCRaw - Decoding raw digital photos in Linux.
- Lightzone - Open-source digital darkroom software for Windows/Mac/Linux.
- Fotoxx - A Linux program for editing photos and other images.
HDR Specific Software¶
- Luminance - A complete workflow for HDR imaging.
- QPSFTMO - HDR Tone Mapping GUI for Linux.
- PFS Tools - A set of command line programs for reading, writing and manipulating HDR images and video frames.
Panorama Stitching¶
- Hugin - An easy to use cross-platform panoramic imaging toolchain.
- Panorama Tools - A framework for re-projecting and blending multiple source images into immersive panoramics of many types.
Photo Organizers¶
- Shotwell - A photo manager for GNOME 3.
- DigiKam/ShowFoto - Open Source Photo manager for KDE/Gnome desktop.
- GPhoto - A program and library framework that lets users download pictures from their digital cameras.
- Lychee - A great looking and easy-to-use photo-management-system you can run on your server, to manage and share photos.
- Simple Gallery - A Android gallery app for viewing photos and videos similar to android stock gallery with support for file copy/move/rename/delete/share.
- Leaf Pic - Material-designed android gallery alternative.
- A Photo Manager - Manage local photos on Android: gallery, geotag with photomap, tags, find, sort, view, copy, delete, send,...
- PhotoPrism - PhotoPrism™ is a server-based application for browsing, organizing and sharing your personal photo collection.
EXIF Editors¶
- ExifTool - A program for reading, writing, and manipulating image, audio, and video metadata.
- Exiv2 - Exiv2 is a C++ library and a command-line utility to read, write, delete and modify Exif, IPTC, XMP and ICC image metadata.
Photo Downloaders¶
- Rapid Photo Downloader - A photo and video downloader for the Linux Desktop.
Camera Tetherers¶
- Entangle - Entangle provides a GUI for taking photographs with a digital camera completely controlled from the computer.
Monitor Color Correction¶
- Hughski
- DisplayCal - Open source display calibration and characterization.
360° Images¶
- Open360viewer - Open source 360° media viewer.
Alternative Image Viewers¶
- Geeqie - An image viewer and image organiser program for Unix-like operating systems.
- FEH - An X11 image viewer.
Useful GIMP Mods or Scripts¶
- GIMP Plugin Registry
- Cinepaint - A program for painting and retouching bitmap frames of films based on GIMP.
Communities¶
- Flickr Open Source Photography Group
- /r/FOSSPhotography - Community about Free open source software for Photography on reddit.
- Open Source Photography Community on Google+
- Open Source Photography Group on Facebook
- Open Source Photography Sub on Reddit
- Open Source Photography Group on 500px
- PIXLS.US - Community dedicated to tutorials, workflows, and showcases of high-quality photography using Free Software tools
Resources¶
- Unsplash.com - Free (do whatever you want) high-resolution photos, licensed under the Unsplash License (changed from CC0)
- Pexels.com - Royalty free high-resolution stock photos, licensed under Creative Commons Zero (CC0)
- Pixabay.com - Royalty free stock photos and videos, licensed under Creative Commons Zero (CC0).
- Shutterography.com - Free Photos.
Video¶
General tools¶
- FFmpeg - A complete, cross-platform solution to record, convert and stream audio and video.
- Virtualdub - A free video tool for basic editing and encoding.
Compositing software¶
- Natron - A node-based compositor based on the same principles as state-of-the art tools used in film and television post-production.
- ButtleOFX - A simple, user-friendly and open source compositing software.
- Blender - This open source 3D graphics has tools for video editing.
- Shotcut - A free, open source, cross-platform video editor.
Video Libraries¶
- OpenFX - An Open Plug-in API for 2D Visual Effects.
- TuttleOFX - An image processing framework based on OpenFX plugin format.
- Vid.stab - A video stabilization library which can be plugged-in with Ffmpeg and Transcode.
- Frei0r - A large collection of free and portable video plugins.
Scripts¶
Video to Panorama¶
#!/bin/bash
mkdir -p /tmp/images
ffmpeg -i video.avi -r 5 -qscale 3 tmp/images/image-%3d.jpg
pto_gen -o tmp/hugin.pto tmp/images/*.jpg
cpfind --multirow -o tmp/hugin.pto tmp/hugin.pto
cpclean -o tmp/hugin.pto tmp/hugin.pto
linefind -o tmp/hugin.pto tmp/hugin.pto
autooptimiser -a -l -s -m -o tmp/hugin.pto tmp/hugin.pto
pano_modify -o tmp/hugin.pto --center --fov=AUTO --canvas=70% tmp/hugin.pto
pto2mk -o tmp/hugin.mk -p tmp/output tmp/hugin.pto
make -f tmp/hugin.mk all