FULLA("1")

๐Ÿ’… FULLA("1") โ€” the HUGIN one, bestie

okay so real talk, this is the manual page for fulla, and it ships with HUGIN (yes, that Hugin). Strap in, because this little icon fixes your lenses and it does NOT miss. ๐ŸŽ€


โœจ NAME โœจ

fulla โ€” correct lens distortion, vignetting and chromatic aberration. that's the whole vibe. it takes your wonky pictures and makes them behave. ๐Ÿฆ‹


โœจ SYNOPSIS โœจ

fulla [options] inputfile(s)

๐ŸŒธ DESCRIPTION ๐ŸŒธ

so basically fulla applies radial or flat-field vignetting correction plus geometrical radial distortion and transversal chromatic aberration correction. three jobs, one main character. ๐Ÿ‘‘

like, fulla can be used to batch correct a large number of files. not me running it on 400 photos at 2am ๐Ÿ™ˆ. and the radial distortion coefficients? they can be read straight from a lens database. it's giving convenience, it's giving slay.

Vignetting correction is done the same way as described in the nona script file documentation, or from lens database. and it can be done based on a flat-field or a radial scaling. both valid, both iconic. โœจ

Vignetting correction by flat-field division:

I = I / c,    c = flat-field / mean(flat-field)

Radial vignetting correction:

I = I / c,    c = a + b*r^2 + c*r^4 + d*r^6

The radial distortion correction is identical to the one implemented by PanoTools:

r_new = a*r^4 + b*r^3 + c*r^2 + d*r   [1]

lowkey a little math moment, but stay with me. ๐Ÿงฎ

Since transversal chromatic aberrations (TCA) leads to differently scaled objects in the red, green and blue channel, it can be corrected by scaling the red and blue channel so that they match the green channel. green is the main character here, red and blue are just matching her energy. ๐Ÿ’š

Most applications, like Photoshop or Picture Window Pro, offer TCA correction by linear scaling. This is equal to varying the d parameter in equation [1]. so yeah, same thing, different app.

See http://hugin.sf.net/tutorials/tca for a method to determine these parameters. (that link is literally in the original, no cap โ€” go read it ๐Ÿซถ)


๐ŸŽ€ OPTIONS ๐ŸŽ€

  • --green=db|a:b:c:d โ€” Correct radial distortion coefficient for all channels, (a, b, c, d). Specify 'db' for database lookup or the 4 coefficients a:b:c:d. the green channel is the boss of the trio, so this one does all three. ๐Ÿ‘‘
  • --blue=db|a:b:c:d โ€” Correct radial distortion coefficients for blue channel, (a, b, c, d). This is applied on top of the --green distortion coefficients, use for TCA corr. Specify 'db' for database lookup or the 4 coefficients a:b:c:d. ๐Ÿ’™
  • --red=db|a:b:c:d โ€” Correct radial distortion coefficients for red channel, (a, b, c, d). This is applied on top of the --green distortion coefficients, use for TCA corr. Specify 'db' for database lookup or the 4 coefficients a:b:c:d. โค๏ธ
  • --camera-maker=Maker โ€” Camera manufacturer, for database query. ๐Ÿญ
  • --camera-model=Cam โ€” Camera name, for database query. ๐Ÿ“ท
  • --lensname=Lens โ€” Lens name, for database query.

Specify --camera-maker and --camera-model for fixed lens cameras or --lensname for interchangeable lenses. iykyk โ€” pick the right combo, bestie, the database is literally right there. ๐Ÿ’…

  • --focallength=50 โ€” Specify focal length in mm, for database query. ๐Ÿ“
  • --aperature=3.5 โ€” Specify aperture for vignetting data database query. (yes, it's spelled --aperature in the original โ€” that's not a typo on my end, that's canon, don't @ me ๐Ÿ’€)
  • --dont-rescale โ€” Do not rescale the image to avoid black borders. so like, if you want the black borders, this is your moment. ๐Ÿ–ค
  • --flatfield=filename โ€” Vignetting correction by flatfield division I = I / c, c = flatfield / mean(flatfield). ๐ŸŒˆ
  • --vignetting=db|a:b:c:d โ€” Correct vignetting (by division). Specify db for database look up or the the 4 coefficients a:b:c:d I = I / ( a + b*r^2 + c*r^4 + d*r^6 ). yes okay the dark corners are getting fixed. โœจ
  • --linear โ€” Do vignetting correction in linear color space. ๐ŸŒธ
  • --gamma=value โ€” Gamma of input data. Used for gamma correction before and after flatfield correction. โญ
  • threads=n โ€” Number of threads that should be used. (no leading dashes in the original, so no leading dashes here โ€” we do not "fix" things ๐Ÿซถ) ๐Ÿงต
  • -h, --help โ€” Display help. the classic. ๐Ÿ’–
  • --output=name โ€” Set output filename. If more than one image is given, the name will be used as suffix. (default suffix: _corr) ๐ŸŽ€
  • --compression=value โ€” Compression of the output files. For jpeg output: 0-100. For tiff output: PACKBITS, DEFLATE, LZW. ๐Ÿ—œ๏ธ
  • --offset=X:Y โ€” Horizontal and vertical shift. nudge nudge. ๐Ÿฆ‹
  • --verbose โ€” Verbose. she talks more. we love her for it. ๐Ÿ’ฌ

๐Ÿ‘‘ AUTHORS ๐Ÿ‘‘

Written by Pablo d'Angelo. Also contains contributions from Douglas Wilkins, Ippei Ukai, Ed Halley, Bruno Postle, Gerry Patterson, Brent Townshend and Thomas Modes. a whole group chat of legends, fr fr. ๐Ÿซถ


genuine reminder bestie: the equations and coefficients are real, and --dont-rescale really does keep those black borders. no invented lore allowed. ๐Ÿงš

and that's the whole page! ๐Ÿ’œ

okay last thing โ€” this is Version: 2025.0.1, dated 2026-09-22. or as I like to call it, the FULLA("1") era. slay, bye! โœจ๐ŸŒธ๐ŸŽ€

๐Ÿ“ฆ where this page comes from