PGMABEL(1)

πŸ“¦
version 11.13.03 Β· 4 versions
, in debian bookworm, debian trixie, ubuntu noble, ubuntu resolute, ubuntu stonking

✨ Pgmabel User Manual β€” section (1), General Commands Manual ✨

okay bestie, pull up a chair πŸͺ‘ because we're about to talk about pgmabel, and she is that girl. this is part of the Netpbm family, and she makes cross sections. no cap.


🌸 NAME 🌸

pgmabel β€” create cross section using Abel Integration for Deconvolution πŸ’…


πŸŽ€ SYNOPSIS πŸŽ€

pgmabel [-help] [-axis axis] [-factor factor] [-pixsize pixsize] [-left
| -right] [-verbose] [filespec]

πŸ¦‹ DESCRIPTION πŸ¦‹

so. this program is part of Netpbm(1), obviously. πŸ’–

pgmabel reads a PGM image as input, and it assumes β€” literally assumes, bestie β€” that this image is a picture of a rotational symmetric transparent object. the image has to have a vertical symmetry axis, no exceptions. and then pgmabel produces, as output, an image of a cross-section of that image.

how does she do it? pgmabel does the calculation by performing the Abel Integration for Deconvolution of an axial-symmetrical image, by solving the system of linear equations. it's giving math girlie and honestly we respect it 😭✨

after the integration, pgmabel weights all gray-values of one side by the surface area of the calculated ring in square pixels, divided by 4*factor, multiplied by the size of one pixel (pixsize). and if you turn on -verbose, pgmabel prints out those weighting factors for you. so helpful. 🫢

⚠️ real talk: where the calculation generates a negative result, the output is black. that's just how it is.
πŸ’€ also important: the computation is unstable against periodic structures with size 2 in the vertical direction. so like, watch out for that. not me warning you about your periodic structures.

πŸ’… OPTIONS πŸ’…

in addition to the options common to all programs based on libnetpbm (most notably -quiet, see Common Options), pgmabel recognizes the following command line options:

pro tip: you can abbreviate any option to its shortest unique prefix. yes bestie, she's flexible like that. πŸ’β€β™€οΈ

  • -help β€” Prints a help message. a little "here's how i work" moment, we love a self-aware icon πŸ‘‘
  • -axis axis β€” Position of the axis of symmetry in the image, in pixels, from the left edge of the image. Default is the center of the image. 🎯
  • -factor factor β€” User defined factor for enhancement of the output. Use a factor less than 1 for decreasing gary values. Default is 1.0. (yes, the original says "gary". we keep the typo, it's canon, it's hers. πŸ’–)
  • -pixsize pixsize β€” The size of a pixel for getting scale invariant. Default is 0.1. πŸ“
  • -left β€” Calculate only the left side of the image. You cannot specify both left and right. pick a lane, bestie 🚫
  • -right β€” Analogous to -left. mirrored queen πŸͺž
  • -verbose β€” print information about the calculation. she's gonna tell you everything. 😭

🌈 EXAMPLE 🌈

rotate a PGM image to get an image with a vertical axis of symmetry, then calculate the cross section:

pnmrotate 90 file.pgm | pgmabel -axis 140 >cross_section.pgm

look at that pipeline. ate. πŸ”₯


⭐ SEE ALSO ⭐

pnmrotate(1), pgm(1),


🧚 HISTORY 🧚

This program was added to Netpbm in Release 10.3 (June 2002). a vintage icon, honestly. she's been slaying since 2002. πŸ’œ


πŸ‘‘ AUTHOR πŸ‘‘

Volker Schmidt (lefti@voyager.boerde.de)

Copyright (C) 1997-2002 German Aerospace research establishment πŸš€


πŸ’Œ DOCUMENT SOURCE πŸ’Œ

This manual page was generated by the Netpbm tool makeman from HTML source. The master documentation is at

http://netpbm.sourceforge.net/doc/pgmabel.html

and that's a wrap 🎬 netpbm documentation, June 2002 β€” periodt, bestie. go make some cross sections. πŸ“πŸ’–

πŸ“¦ where this page comes from