pamthreshold


				 pamthreshold

   Updated: 12 May 2006
   Table Of Contents

NAME

   pamthreshold - threshold grayscale image to black and white

SYNOPSIS

   pamthreshold	     [-simple]	   [-local=widthxheight]    [-du-
al=widthxheight]
   [-threshold=threshold] [-contrast=threshold] [inputpamfile]

   Minimum unique abbreviation of options is acceptable. You  may
use double
   hyphens  instead of a single hyphen to denote options. You may
use white
   space in place of the equals sign to separate an  option  name
from its value.

DESCRIPTION

   This program is part of Netpbm.

   pamthreshold	 thresholds a grayscale image. Thresholding means
dividing the
   image  into	background  and	 foreground  by	 comparing  every
pixel to a
   thresholding value.

   The	input  should be a PGM image or a PAM image of tuple type
GRAYSCALE.
   However, pamthreshold doesn’t check; it  just  thresholds  the
first channel as
   if it were grayscale samples. So if you feed it e.g. a PPM im-
age, it will
   work but produce probably useless results.

   The output is a PAM with tuple  type	 BLACKANDWHITE.	 You  can
turn this into a
   PBM	(if you need to use it with an older program that doesn’t
understand
   PAM) with pamtopnm.

   The output is to Standard Output.

   Another way to convert a grayscale image to black and white is
to dither.
   Dithering  is using clustered black and white pixels such that
if you step
   back and look at the picture, you see varying levels of  gray.
pamditherbw
   does dithering.

OPTIONS

   Without  any options, pamthreshold uses an iterative algorithm
found in the
   wikipedia   article	 Thresholding	(image	 processing)   to
compute the
   thresholding value. It uses this threshold to globally thresh-
old the image.
   This should work well for most images. The  program	issues	a
message telling
   you	what  threshold	 it used. (Netpbm messages go to Standard
Error, and you
   can turn them off with the Netpbm command option -quiet).
   -simple
	  This	selects	  simple  or  global  thresholding,  i.e.
pamthreshold
	  compares  every pixel to the threshold you specify with
-threshold.
	  This works well for black and white text pages  scanned
with a flatbed
	  scanner  and is faster than the default method that it-
eratively
	  determines the thresholding value first.
   -local=widthxheight
	  This selects local adaptive thresholding (also known as
dynamic
	  thresholding)	 using	the  neighborhood  of  width  and
height around every
	  pixel. pamthreshold computes the threshold individually
for each
	  pixel	 of  the  image.  This	can  accommodate changing
lighting conditions
	  in the image. Depending on the size of the neighborhood
this can be
	  quite slow.
   -dual=widthxheight
	  This	selects	 a  dual  thresholding	algorithm using a
global threshold
	  for low contrast neighborhoods and  local  thresholding
otherwise. This
	  can preserve larger back- respectively foreground areas
than local
	  adaptive thresholding. This algorithm was  proposed  in
the paper "An
	  Approach  To	Licence Plate Recognition" by J.R. Parker
and Pavol
	  Federl.
   -threshold=threshold
	  This sets the thresholding value for	simple	or  local
thresholding.
	  The  value  is a floating point number in the range [0,
1], where 0 is
	  black and 1 is the maxval of the image.
	  If you don’t specify this option, pamthreshold  uses	a
threshold of
	  0.5.	Without -simple or -local this option is meaning-
less.
   -contrast=threshold
	  This	sets the threshold to determine if a neighborhood
has low
	  contrast  or	not for dual thresholding. The value is a
floating point
	  number in the range [0, 1].
	  If  you don’t specify this option, pamthreshold uses	a
contrast
	  threshold  of	 0.05. Without -dual this option is mean-
ingless.

SEE ALSO

   pamditherbw, ppmtopgm, pamtopnm, pam

HISTORY

   pamthreshold was new in Netpbm 10.34 (June 2006).

AUTHOR

   pamthreshold is Copyright © 2006 by	Erik  Auerswald	 and  re-
leased under the
   GPL.
     _________________________________________________________________

Table Of Contents

     * NAME
     * SYNOPSIS
     * OPTIONS
     * DESCRIPTION
     * SEE ALSO
     * HISTORY
     * AUTHOR


















































Personal Tools