Hugin (/ˈhʊɡɪn/) is a cross-platform open source panorama photo stitching and HDR merging program developed by Pablo d'Angelo and others. It is a GUI front-end for Helmut Dersch's Panorama Tools and Andrew Mihal's Enblend and Enfuse. Stitching is accomplished by using several overlapping photos taken from the same location, and using control points to align and transform the photos so that they can be blended together to form a larger image. Hugin allows for the easy (optionally automatic) creation of control points between two images, optimization of the image transforms along with a preview window so the user can see whether the panorama is acceptable. Once the preview is correct, the panorama can be fully stitched, transformed and saved in a standard image format.

Hugin
Developer(s)Pablo d'Angelo
Initial release0.3 beta (12 October 2003; 21 years ago (2003-10-12))
Stable release
2023.0.0[1] / 11 November 2023; 11 months ago (11 November 2023)
Repository
Written inC++ (wxWidgets)[2]
Operating systemLinux, OS X, Windows, FreeBSD
Available inBrazilian Portuguese, Bulgarian, Catalan, Chinese, Czech, Danish, Dutch, English, Finnish, French, German, Hungarian, Italian, Japanese, Korean, Polish, Russian, Slovakian, Spanish, Swedish, Ukrainian
LicenseGNU GPLv2 or later
Websitehugin.sourceforge.io

Features

edit

Hugin and the associated tools can be used to

  • combine overlapping images for panoramic photography
  • correct complete panorama images, e.g. those that are "wavy" due to a badly levelled panoramic camera
  • stitch large mosaics of images and photos, e.g. of long walls or large microscopy samples
  • find control points and optimize parameters with the help of software assistants/wizards
  • output several projection types, such as equirectangular (used by many full spherical viewers), mercator, cylindrical, stereographic, and sinusoidal
  • perform advanced photometric corrections[3] and HDR stitching

With the release of 2010.4.0, which includes a built-in control point generator, the developers consider Hugin to be feature-complete.[4]

An example panorama of London using Hugin software
 
360° sphere panorama, consisting of 26 frames that were stitched in Hugin 2021.0.0
(view as a 360° interactive panorama)

Development

edit

Infrastructure

edit

The Hugin development is tracked on Launchpad[5] and the code resides in a Mercurial repository.[6]

Usual output from Hugin software
Same image after cropping and cloning
 
An image merged from multiple exposures with Enfuse, and perspective corrected with Hugin's stitch feature. Sacra Família do Tinguá, Engenheiro Paulo de Frontin, Rio de Janeiro.
 
Multiple exposure image created with Hugin.

Google Summer of Code

edit

Five projects for the development of Hugin / panotools were accepted for the 2007 Google Summer of Code. Additionally a sixth, community sponsored project has been set up. The projects were:

  • Automatic feature detection by Pedro Alonso (Spain), mentored by Herbert Bay (Switzerland)
  • New modular GUI by Ippei Ukai (Japan), mentored by Yuval Levy (Canada), who is also the lead administrator on the Summer of Code effort
  • HDR de-ghosting by Jing Jin (USA), mentored by Pablo d'Angelo (Germany) who is also the lead developer on Hugin
  • Large image processing with VIPS by Mohammad Shahiduzzaman (Bangladesh), mentored by John Cupitt (United Kingdom)
  • Interactive Panorama Viewer by Leon Moctezuma (Mexico), mentored by Aldo Hoeben (The Netherlands)
  • Community project: PTbatcher by Zoran Mesec (Slovenija), mentored by Daniel M. German (Canada)

Hugin was also accepted to Summer of Code 2008. Projects were:[7]

  • Fast, OpenGL accelerated preview by James Alastair Legg, mentored by Pablo d'Angelo[8]
  • Automated feature matching by Onur Kucuktunc, mentored by Alexandre Jenny[9]
  • User interface for masking of images by Fahim Mannan, mentored by Daniel M. German[10][11]
  • Batch processing ability by Marko Kuder, mentored by Zoran Mesec[12]
  • Automatic detection of non-static features in imagery (final application is called Celeste) by Timothy Nugent, mentored by Yuval Levy[13]

In 2009 Google Summer of Code projects were as follows:

  • Ghost removal for Enfuse by Luka Jirkovsky, mentored by Andrew Mihal[14]
  • Layout model by James Legg, mentored by Bruno Postle[15]
  • Automatic lens calibration by detecting straight lines in pictures by Timothy Nugent, mentored by Tom Sharpless[16]
  • and fourth project for porting LightTwist to Mac OS X by Yulia Kotseruba, mentored by Sébastien Roy.[17]

In 2010 the Google Summer of Code projects were:

  • implementing a patent-free image feature detector and control point generator[18] by Antoine Deleforge, mentored by Timothy Nugent.
  • creating a new interactive panorama overview, by Darko Makreshanski and mentored by James Legg[19]
  • improving the make file libraries used in panorama stitching[20] and
  • adding regression tests for libpano13[21]

In 2011 the GSoC project was centered around Enblend's seam line optimization algorithm using graph-cut algorithm.[22][23]

References

edit
  1. ^ "Hugin-2023.0.0 release notes".
  2. ^ "Debian -- Details of package hugin in jessie". Retrieved 2017-03-09.
  3. ^ "Hugin Research Corner".
  4. ^ "Hugin-2010.4.0 release notes". SourceForge.net. Retrieved 19 January 2011.
  5. ^ "Hugin in Launchpad". 30 September 2005.
  6. ^ "SourceForge: Mercurial repositories index". Archived from the original on 2012-10-10. Retrieved 2011-01-01.
  7. ^ "Google Summer of Code 2008". Google Developers.
  8. ^ Google SoC Application Information: OpenGL Hugin preview Archived 2008-05-03 at the Wayback Machine
  9. ^ Google SoC Application Information: Automatic Feature Matching for Panoramic Images Archived 2008-05-03 at the Wayback Machine
  10. ^ Google SoC Application Information: Masking in GUI Archived 2008-05-03 at the Wayback Machine
  11. ^ "SoC 2008 Masking in GUI".
  12. ^ Google SoC Application Information: Batch Processing Archived 2008-05-03 at the Wayback Machine
  13. ^ Google SoC Application Information: Support Vector Machine-based Sky Identification for Enhanced Image Alignment in Panoramic Photography Archived 2008-05-03 at the Wayback Machine
  14. ^ GSoC2009: Ghost removal for enfuse for Hugin/Panotools[permanent dead link]
  15. ^ GSoC2009: Layout Panorama Model for Hugin/Panotools [permanent dead link]
  16. ^ GSoC2009: Straight-line detection for automated lens calibration for Hugin/Panotools[permanent dead link]
  17. ^ GSoC2009: LightTwist for Hugin/Panotools[permanent dead link]
  18. ^ "GSoC 2010: Towards a full patent-free pipeline for panorama stitching: Project details". Archived from the original on 23 July 2012.
  19. ^ GSoC 2010: Interactive Panorama Overview for Hugin
  20. ^ GSoC 2010: Bulletproof Makefile Output Library
  21. ^ GSoC 2010: Regression tests for libpano13
  22. ^ hugin GSoC projects in 2011 Archived 2012-03-21 at the Wayback Machine
  23. ^ New primary seam generator in Enblend, Hugin-ptx group
edit