Yolinux.com

pbmmask manpage

Search topic Section


Pbmmask User Manual(0)					Pbmmask User Manual(0)



NAME
       pbmmask - create a mask bitmap from a regular bitmap


SYNOPSIS
       pbmmask [-expand] [pbmfile]


DESCRIPTION
       This program is part of Netpbm(1).

       pbmmask	reads  a PBM image as input and Generates a corresponding mask
       of the foreground areas as another PBM image.

       The color to be interpreted as  'background'  is	 determined  automati-
       cally.  Regardless of which color is background, the mask will be white
       where the background is and black where the figure is.

       This lets you do a masked paste like this, for  objects	with  a	 black
       background:

	   pbmmask obj > objmask
	   pnmpaste < dest -and objmask <x> <y> | pnmpaste -or obj <x> <y>

       For  objects with a white background, you can either invert them or add
       a step:
	   pbmmask obj > objmask
	   pnminvert objmask | pnmpaste -and obj 0 0 > blackback
	   pnmpaste < dest -and objmask <x> <y> | pnmpaste -or blackback <x> <y>

       Note that this three-step version works for objects  with  black	 back-
       grounds too, if you don't care about the wasted time.

       You  can	 also  use  masks  with	 grayscale and color images, using the
       pnmarith tool.  For instance:

	   ppmtopgm obj.ppm | pamditherbw -threshold | pbmmask > objmask.pbm
	   pnmarith -multiply dest.ppm objmask.pbm > t1.ppm
	   pnminvert objmask.pbm | pnmarith -multiply obj.ppm - > t2.ppm
	   pnmarith -add t1.ppm t2.ppm

       An interesting variation on this is to pipe the mask through  pnmsmooth
       before  using  it.  This makes the boundary between the two images less
       sharp.


OPTIONS
       -expand
	      Expands the mask by one pixel out from the image.	 This is  use-
	      ful  if  you  want  a little white border around your image.  (A
	      better solution might be to turn the pbmlife program into a gen-
	      eral cellular automaton tool...)




SEE ALSO
       ppmcolormask(1),	 pnmpaste(1),  pnminvert(1), pnmarith(1), pnmsmooth(1)
       pbm(1),


AUTHOR
       Copyright (C) 1988 by Jef Poskanzer.



netpbm documentation		08 August 1989		Pbmmask User Manual(0)