Open Source Photography
A list of awesome free open source software & libraries for photography. Also tools for video. For more awesomeness, check out awesome.
- 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.
- LibGphoto2 - C APi for Digital camera access and remote control. Java,python,C#, and much more bindings.
- 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.
- SonyPy - Python module for Sony Camera Remote API.
- 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.
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.
- 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.
- 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.A
- ExifTool - A program for reading, writing, and manipulating image, audio, and video metadata.
- Rapid Photo Downloader - A photo and video downloader for the Linux Desktop.
- Entangle - Entangle provides a GUI for taking photographs with a digital camera completely controlled from the computer.
Monitor Color Correction¶
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.
- 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
- 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.
- FFmpeg - A complete, cross-platform solution to record, convert and stream audio and video.
- Virtualdub - A free video tool for basic editing and encoding.
- 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.
- 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.
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