%!PS-Adobe-2.0 %%Version: 0.1 %%DocumentFonts: (atend) %%Pages: (atend) %%EndComments % % Version 3.3.2 prologue for troff files. % /#copies 1 store /aspectratio 1 def /formsperpage 1 def /landscape false def /linewidth .3 def /magnification 1 def /margin 0 def /orientation 0 def /resolution 720 def /rotation 1 def /xoffset 0 def /yoffset 0 def /roundpage true def /useclippath true def /pagebbox [0 0 612 792] def /R /Times-Roman def /I /Times-Italic def /B /Times-Bold def /BI /Times-BoldItalic def /H /Helvetica def /HI /Helvetica-Oblique def /HB /Helvetica-Bold def /HX /Helvetica-BoldOblique def /CW /Courier def /CO /Courier def /CI /Courier-Oblique def /CB /Courier-Bold def /CX /Courier-BoldOblique def /PA /Palatino-Roman def /PI /Palatino-Italic def /PB /Palatino-Bold def /PX /Palatino-BoldItalic def /Hr /Helvetica-Narrow def /Hi /Helvetica-Narrow-Oblique def /Hb /Helvetica-Narrow-Bold def /Hx /Helvetica-Narrow-BoldOblique def /KR /Bookman-Light def /KI /Bookman-LightItalic def /KB /Bookman-Demi def /KX /Bookman-DemiItalic def /AR /AvantGarde-Book def /AI /AvantGarde-BookOblique def /AB /AvantGarde-Demi def /AX /AvantGarde-DemiOblique def /NR /NewCenturySchlbk-Roman def /NI /NewCenturySchlbk-Italic def /NB /NewCenturySchlbk-Bold def /NX /NewCenturySchlbk-BoldItalic def /ZD /ZapfDingbats def /ZI /ZapfChancery-MediumItalic def /S /S def /S1 /S1 def /GR /Symbol def /inch {72 mul} bind def /min {2 copy gt {exch} if pop} bind def /setup { counttomark 2 idiv {def} repeat pop landscape {/orientation 90 orientation add def} if /scaling 72 resolution div def linewidth setlinewidth 1 setlinecap pagedimensions xcenter ycenter translate orientation rotation mul rotate width 2 div neg height 2 div translate xoffset inch yoffset inch neg translate margin 2 div dup neg translate magnification dup aspectratio mul scale scaling scaling scale addmetrics 0 0 moveto } def /pagedimensions { useclippath userdict /gotpagebbox known not and { /pagebbox [clippath pathbbox newpath] def roundpage currentdict /roundpagebbox known and {roundpagebbox} if } if pagebbox aload pop 4 -1 roll exch 4 1 roll 4 copy landscape {4 2 roll} if sub /width exch def sub /height exch def add 2 div /xcenter exch def add 2 div /ycenter exch def userdict /gotpagebbox true put } def /addmetrics { /Symbol /S null Sdefs cf /Times-Roman /S1 StandardEncoding dup length array copy S1defs cf } def /pagesetup { /page exch def currentdict /pagedict known currentdict page known and { page load pagedict exch get cvx exec } if } def /decodingdefs [ {counttomark 2 idiv {y moveto show} repeat} {neg /y exch def counttomark 2 idiv {y moveto show} repeat} {neg moveto {2 index stringwidth pop sub exch div 0 32 4 -1 roll widthshow} repeat} {neg moveto {spacewidth sub 0.0 32 4 -1 roll widthshow} repeat} {counttomark 2 idiv {y moveto show} repeat} {neg setfunnytext} ] def /setdecoding {/t decodingdefs 3 -1 roll get bind def} bind def /w {neg moveto show} bind def /m {neg dup /y exch def moveto} bind def /done {/lastpage where {pop lastpage} if} def /f { dup /font exch def findfont exch dup /ptsize exch def scaling div dup /size exch def scalefont setfont linewidth ptsize mul scaling 10 mul div setlinewidth /spacewidth ( ) stringwidth pop def } bind def /changefont { /fontheight exch def /fontslant exch def currentfont [ 1 0 fontheight ptsize div fontslant sin mul fontslant cos div fontheight ptsize div 0 0 ] makefont setfont } bind def /sf {f} bind def /cf { dup length 2 idiv /entries exch def /chtab exch def /newencoding exch def /newfont exch def findfont dup length 1 add dict /newdict exch def {1 index /FID ne {newdict 3 1 roll put}{pop pop} ifelse} forall newencoding type /arraytype eq {newdict /Encoding newencoding put} if newdict /Metrics entries dict put newdict /Metrics get begin chtab aload pop 1 1 entries {pop def} for newfont newdict definefont pop end } bind def % % A few arrays used to adjust reference points and character widths in some % of the printer resident fonts. If square roots are too high try changing % the lines describing /radical and /radicalex to, % % /radical [0 -75 550 0] % /radicalex [-50 -75 500 0] % % Move braceleftbt a bit - default PostScript character is off a bit. % /Sdefs [ /bracketlefttp [201 500] /bracketleftbt [201 500] /bracketrighttp [-81 380] /bracketrightbt [-83 380] /braceleftbt [203 490] /bracketrightex [220 -125 500 0] /radical [0 0 550 0] /radicalex [-50 0 500 0] /parenleftex [-20 -170 0 0] /integral [100 -50 500 0] /infinity [10 -75 730 0] ] def /S1defs [ /underscore [0 80 500 0] /endash [7 90 650 0] ] def % % Tries to round clipping path dimensions, as stored in array pagebbox, so they % match one of the known sizes in the papersizes array. Lower left coordinates % are always set to 0. % /roundpagebbox { 7 dict begin /papersizes [8.5 inch 11 inch 14 inch 17 inch] def /mappapersize { /val exch def /slop .5 inch def /diff slop def /j 0 def 0 1 papersizes length 1 sub { /i exch def papersizes i get val sub abs dup diff le {/diff exch def /j i def} {pop} ifelse } for diff slop lt {papersizes j get} {val} ifelse } def pagebbox 0 0 put pagebbox 1 0 put pagebbox dup 2 get mappapersize 2 exch put pagebbox dup 3 get mappapersize 3 exch put end } bind def %%EndProlog %%BeginSetup mark % % Encoding vector and redefinition of findfont for the ISO Latin1 standard. % The 18 characters missing from ROM based fonts on older printers are noted % below. % /ISOLatin1Encoding [ /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /space /exclam /quotedbl /numbersign /dollar /percent /ampersand /quoteright /parenleft /parenright /asterisk /plus /comma /minus /period /slash /zero /one /two /three /four /five /six /seven /eight /nine /colon /semicolon /less /equal /greater /question /at /A /B /C /D /E /F /G /H /I /J /K /L /M /N /O /P /Q /R /S /T /U /V /W /X /Y /Z /bracketleft /backslash /bracketright /asciicircum /underscore /quoteleft /a /b /c /d /e /f /g /h /i /j /k /l /m /n /o /p /q /r /s /t /u /v /w /x /y /z /braceleft /bar /braceright /asciitilde /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /dotlessi /grave /acute /circumflex /tilde /macron /breve /dotaccent /dieresis /.notdef /ring /cedilla /.notdef /hungarumlaut /ogonek /caron /space /exclamdown /cent /sterling /currency /yen /brokenbar % missing /section /dieresis /copyright /ordfeminine /guillemotleft /logicalnot /hyphen /registered /macron /degree % missing /plusminus % missing /twosuperior % missing /threesuperior % missing /acute /mu % missing /paragraph /periodcentered /cedilla /onesuperior % missing /ordmasculine /guillemotright /onequarter % missing /onehalf % missing /threequarters % missing /questiondown /Agrave /Aacute /Acircumflex /Atilde /Adieresis /Aring /AE /Ccedilla /Egrave /Eacute /Ecircumflex /Edieresis /Igrave /Iacute /Icircumflex /Idieresis /Eth % missing /Ntilde /Ograve /Oacute /Ocircumflex /Otilde /Odieresis /multiply % missing /Oslash /Ugrave /Uacute /Ucircumflex /Udieresis /Yacute % missing /Thorn % missing /germandbls /agrave /aacute /acircumflex /atilde /adieresis /aring /ae /ccedilla /egrave /eacute /ecircumflex /edieresis /igrave /iacute /icircumflex /idieresis /eth % missing /ntilde /ograve /oacute /ocircumflex /otilde /odieresis /divide % missing /oslash /ugrave /uacute /ucircumflex /udieresis /yacute % missing /thorn % missing /ydieresis ] def /NewFontDirectory FontDirectory maxlength dict def % % Apparently no guarantee findfont is defined in systemdict so the obvious % % systemdict /findfont get exec % % can generate an error. So far the only exception is a VT600 (version 48.0). % userdict /@RealFindfont known not { userdict begin /@RealFindfont systemdict begin /findfont load end def end } if /findfont { dup NewFontDirectory exch known not { dup %dup systemdict /findfont get exec % not always in systemdict dup userdict /@RealFindfont get exec dup /Encoding get StandardEncoding eq { dup length dict begin {1 index /FID ne {def}{pop pop} ifelse} forall /Encoding ISOLatin1Encoding def currentdict end /DummyFontName exch definefont } if NewFontDirectory 3 1 roll put } if NewFontDirectory exch get } bind def setup %%EndSetup %%Page: 1 1 /saveobj save def mark 1 pagesetup 12 /Times-Bold f (Pnmconvol) 2243 1230 w (User) 2847 1230 w (Manual) 3116 1230 w 10 /Times-Bold f (pnmconvol) 720 1920 w 10 /Times-Roman f (Updated: 29 June 2005) 720 2076 w (Table Of Contents) 720 2196 w 10 /Times-Bold f (NAME) 720 2436 w 10 /Times-Roman f (pnmconvol \255 general MxN convolution on a PNM image) 720 2592 w 10 /Times-Bold f (SYNOPSIS) 720 2832 w (pnmconvol) 720 2988 w 10 /Times-Italic f (convolution) 1218 2988 w 10 /S f (_) 1690 2988 w 10 /Times-Italic f (matrix) 1740 2988 w 10 /S f (_) 2001 2988 w 10 /Times-Italic f (file) 2051 2988 w 10 /Times-Roman f ([\255nooffset] [) 2204 2988 w 10 /Times-Italic f (pnmfile) 2688 2988 w 10 /Times-Roman f (]) 2988 2988 w (Minimum) 720 3144 w (unique) 1162 3144 w (abbreviation) 1475 3144 w (of) 2015 3144 w (option) 2140 3144 w (is) 2438 3144 w (acceptable.) 2547 3144 w (You) 3059 3144 w (may) 3273 3144 w (use) 3487 3144 w (double) 3662 3144 w (hyphens) 3976 3144 w (instead) 4351 3144 w (of) 4676 3144 w (single) 4801 3144 w (hyphen) 720 3264 w (to) 1042 3264 w (denote) 1148 3264 w (options.) 1442 3264 w (You) 1815 3264 w (may) 2015 3264 w (use) 2215 3264 w (white) 2376 3264 w (space) 2626 3264 w (in) 2875 3264 w (place) 2981 3264 w (of) 3219 3264 w (the) 3330 3264 w (equals) 3480 3264 w (sign) 3763 3264 w (to) 3958 3264 w (separate) 4064 3264 w (an) 4418 3264 w (option) 4540 3264 w (name) 4824 3264 w (from its value.) 720 3384 w 10 /Times-Bold f (DESCRIPTION) 720 3624 w 10 /Times-Roman f (This program is part of Netpbm.) 720 3816 w 10 /Times-Bold f (pnmconvol) 720 3972 w 10 /Times-Roman f (reads) 1219 3972 w (two) 1455 3972 w (PNM) 1631 3972 w (images) 1874 3972 w (as) 2183 3972 w (input,) 2292 3972 w (convolves) 2549 3972 w (the) 2980 3972 w (second) 3129 3972 w (using) 3433 3972 w (the) 3677 3972 w (first,) 3826 3972 w (and) 4039 3972 w (writes) 4210 3972 w (a) 4481 3972 w (PNM) 4552 3972 w (image) 4796 3972 w (as output.) 720 4092 w (Convolution) 720 4248 w (means) 1247 4248 w (replacing) 1528 4248 w (each) 1925 4248 w (pixel) 2133 4248 w (with) 2359 4248 w (a) 2563 4248 w (weighted) 2633 4248 w (average) 3025 4248 w (of) 3360 4248 w (the) 3469 4248 w (nearby) 3617 4248 w (pixels.) 3914 4248 w (The) 4229 4248 w (weights) 4410 4248 w (and) 4747 4248 w (the) 4918 4248 w (area) 720 4368 w (to) 919 4368 w (average) 1031 4368 w (are) 1374 4368 w (determined) 1528 4368 w (by) 2010 4368 w (the) 2143 4368 w (convolution) 2298 4368 w (matrix) 2809 4368 w (\(sometimes) 3103 4368 w (called) 3597 4368 w (a) 3868 4368 w (convolution) 3945 4368 w (kernel\),) 4456 4368 w (which) 4796 4368 w (you) 720 4488 w (supply) 902 4488 w (by) 1201 4488 w (way) 1333 4488 w (of) 1531 4488 w (the) 1646 4488 w (PNM) 1800 4488 w (image) 2049 4488 w (in) 2325 4488 w (the) 2435 4488 w (file) 2589 4488 w (you) 2754 4488 w (identify) 2936 4488 w (with) 3279 4488 w (the) 3489 4488 w 10 /Times-Italic f (convolution) 3644 4488 w 10 /S f (_) 4116 4488 w 10 /Times-Italic f (matrix) 4166 4488 w 10 /S f (_) 4427 4488 w 10 /Times-Italic f (file) 4477 4488 w 10 /Times-Roman f (argument.) 4638 4488 w (There) 720 4608 w (are) 983 4608 w (two) 1135 4608 w (ways) 1315 4608 w 10 /Times-Bold f (pnmconvol) 1550 4608 w 10 /Times-Roman f (interprets) 2053 4608 w (the) 2460 4608 w (PNM) 2612 4608 w (convolution) 2859 4608 w (matrix) 3367 4608 w (image) 3658 4608 w (pixels) 3932 4608 w (as) 4201 4608 w (weights:) 4314 4608 w (with) 4683 4608 w (off\255) 4891 4608 w (sets, and without offsets.) 720 4728 w (The) 720 4884 w (simpler) 903 4884 w (of) 1231 4884 w (the) 1342 4884 w (two) 1492 4884 w (is) 1670 4884 w (without) 1765 4884 w (offsets.) 2099 4884 w (That) 2443 4884 w (is) 2655 4884 w (what) 2751 4884 w (happens) 2974 4884 w (when) 3330 4884 w (you) 3575 4884 w (specify) 3754 4884 w (the) 4071 4884 w 10 /Times-Bold f (\255nooffset) 4222 4884 w 10 /Times-Roman f (option.) 4622 4884 w (In) 4957 4884 w (that case,) 720 5004 w 10 /Times-Bold f (pnmconvol) 1116 5004 w 10 /Times-Roman f (simply normalizes the sample values in the PNM image by dividing by the maxval.) 1614 5004 w (For) 720 5160 w (example,) 886 5160 w (here) 1276 5160 w (is) 1474 5160 w (a) 1568 5160 w (sample) 1639 5160 w (convolution) 1949 5160 w (file) 2454 5160 w (that) 2614 5160 w (causes) 2792 5160 w (an) 3080 5160 w (output) 3202 5160 w (pixel) 3486 5160 w (to) 3714 5160 w (be) 3820 5160 w (a) 3942 5160 w (simple) 4014 5160 w (average) 4309 5160 w (of) 4646 5160 w (its) 4757 5160 w (cor\255) 4880 5160 w (responding input pixel and its 8 neighbors, resulting in a smoothed image:) 720 5280 w (P2) 820 5460 w (3 3) 820 5580 w (18) 820 5700 w (2 2 2) 820 5820 w (2 2 2) 820 5940 w (2 2 2) 820 6060 w (\(Note) 720 6276 w (that) 978 6276 w (the) 1159 6276 w (above) 1312 6276 w (text) 1581 6276 w (is) 1762 6276 w (an) 1860 6276 w (actual) 1985 6276 w (PGM) 2254 6276 w (file) 2502 6276 w (\255\255) 2666 6276 w (you) 2763 6276 w (can) 2944 6276 w (cut) 3113 6276 w (and) 3266 6276 w (paste) 3441 6276 w (it.) 3677 6276 w (If) 3814 6276 w (you're) 3911 6276 w (not) 4202 6276 w (familiar) 4361 6276 w (with) 4708 6276 w (the) 4918 6276 w (plain PGM format, see the PGM format specification\).) 720 6396 w 10 /Times-Bold f (pnmconvol) 720 6552 w 10 /Times-Roman f (divides) 1224 6552 w (each) 1544 6552 w (of) 1757 6552 w (the) 1871 6552 w (sample) 2024 6552 w (values) 2338 6552 w (\(2\)) 2624 6552 w (by) 2771 6552 w (the) 2902 6552 w (maxval) 3055 6552 w (\(18\)) 3380 6552 w (so) 3577 6552 w (the) 3697 6552 w (weight) 3850 6552 w (of) 4154 6552 w (each) 4269 6552 w (of) 4483 6552 w (the) 4598 6552 w (9) 4752 6552 w (input) 4834 6552 w (pixels) 720 6672 w (gets) 996 6672 w (is) 1194 6672 w (1/9,) 1297 6672 w (which) 1486 6672 w (is) 1766 6672 w (exactly) 1869 6672 w (what) 2193 6672 w (you) 2423 6672 w (want) 2609 6672 w (to) 2839 6672 w (keep) 2953 6672 w (the) 3177 6672 w (overall) 3335 6672 w (brightness) 3648 6672 w (of) 4095 6672 w (the) 4214 6672 w (image) 4372 6672 w (the) 4652 6672 w (same.) 4810 6672 w 10 /Times-Bold f (pnmconvol) 720 6792 w 10 /Times-Roman f (creates an output pixel by multiplying the values of each of 9 pixels by 1/9 and adding.) 1218 6792 w (Note that with maxval 18, the range of possible values is 0 to 18.) 720 6948 w (After scaling, the range is 0 to 1.) 3365 6948 w (For) 720 7104 w (a) 900 7104 w (normal) 985 7104 w (convolution,) 1309 7104 w (where) 1853 7104 w (you're) 2137 7104 w (neither) 2438 7104 w (adding) 2756 7104 w (nor) 3069 7104 w (subtracting) 3243 7104 w (total) 3728 7104 w (value) 3947 7104 w (from) 4204 7104 w (the) 4439 7104 w (image,) 4602 7104 w (but) 4912 7104 w (merely) 720 7224 w (moving) 1042 7224 w (it) 1393 7224 w (around,) 1494 7224 w (you'll) 1841 7224 w (want) 2125 7224 w (to) 2364 7224 w (make) 2487 7224 w (sure) 2748 7224 w (that) 2959 7224 w (all) 3154 7224 w (the) 3298 7224 w (scaled) 3464 7224 w (values) 3757 7224 w (in) 4056 7224 w (\(each) 4178 7224 w (plane) 4437 7224 w (of\)) 4697 7224 w (your) 4857 7224 w cleartomark showpage saveobj restore %%EndPage: 1 1 %%Page: 2 2 /saveobj save def mark 2 pagesetup 10 /Times-Roman f (\255 2 \255) 2797 480 w (convolution PNM add up to 1, which means all the actual sample values add up to the maxval.) 720 840 w (When) 720 996 w (you) 991 996 w (don't) 1174 996 w (specify) 1418 996 w 10 /Times-Bold f (\255nooffset) 1740 996 w 10 /Times-Roman f (,) 2111 996 w 10 /Times-Bold f (pnmconvol) 2170 996 w 10 /Times-Roman f (applies) 2677 996 w (an) 2994 996 w (offset,) 3122 996 w (the) 3408 996 w (purpose) 3564 996 w (of) 3914 996 w (which) 4031 996 w (is) 4309 996 w (to) 4410 996 w (allow) 4522 996 w (you) 4778 996 w (to) 4962 996 w (indicate) 720 1116 w (negative) 1073 1116 w (weights) 1448 1116 w (even) 1796 1116 w (though) 2020 1116 w (PNM) 2334 1116 w (sample) 2587 1116 w (values) 2906 1116 w (are) 3197 1116 w (never) 3354 1116 w (negative.) 3611 1116 w (In) 4035 1116 w (this) 4154 1116 w (case,) 4335 1116 w 10 /Times-Bold f (pnmconvol) 4567 1116 w 10 /Times-Roman f (subtracts) 720 1236 w (half) 1103 1236 w (the) 1286 1236 w (maxval) 1437 1236 w (from) 1760 1236 w (each) 1983 1236 w (sample) 2194 1236 w (and) 2506 1236 w (then) 2679 1236 w (normalizes) 2880 1236 w (by) 3347 1236 w (dividing) 3476 1236 w (by) 3839 1236 w (half) 3968 1236 w (the) 4152 1236 w (maxval.) 4303 1236 w (So) 4676 1236 w (to) 4811 1236 w (get) 4918 1236 w (the) 720 1356 w (same) 868 1356 w (result) 1099 1356 w (as) 1347 1356 w (we) 1456 1356 w (did) 1598 1356 w (above) 1752 1356 w (with) 2016 1356 w 10 /Times-Bold f (\255nooffset) 2220 1356 w 10 /Times-Roman f (,) 2591 1356 w (the) 2642 1356 w (convolution) 2790 1356 w (matrix) 3294 1356 w (PNM) 3581 1356 w (image) 3824 1356 w (would) 4094 1356 w (have) 4370 1356 w (to look like) 4584 1356 w (this:) 720 1476 w (P2) 820 1656 w (3 3) 820 1776 w (18) 820 1896 w (10 10 10) 820 2016 w (10 10 10) 820 2136 w (10 10 10) 820 2256 w (To) 720 2472 w (see) 863 2472 w (how) 1022 2472 w (this) 1226 2472 w (works,) 1403 2472 w (do) 1704 2472 w (the) 1836 2472 w (above\255mentioned) 1990 2472 w (offset:) 2715 2472 w (10) 3002 2472 w (\255) 3134 2472 w (18/2) 3199 2472 w (gives) 3409 2472 w (1.) 3652 2472 w (The) 3784 2472 w (normalization) 3971 2472 w (step) 4558 2472 w (divides) 4751 2472 w (by) 720 2592 w (18/2) 849 2592 w (=) 1056 2592 w (9,) 1141 2592 w (which) 1245 2592 w (makes) 1518 2592 w (it) 1802 2592 w (1/9) 1887 2592 w (\255) 2044 2592 w (exactly) 2106 2592 w (what) 2423 2592 w (you) 2646 2592 w (want.) 2825 2592 w (The) 3098 2592 w (equivalent) 3282 2592 w (matrix) 3727 2592 w (for) 4017 2592 w (5x5) 4161 2592 w (smoothing) 4339 2592 w (would) 4790 2592 w (have maxval 50 and be filled with 26.) 720 2712 w (Note) 720 2868 w (that) 941 2868 w (with) 1118 2868 w (maxval) 1323 2868 w (18,) 1645 2868 w (the) 1798 2868 w (range) 1948 2868 w (of) 2197 2868 w (possible) 2308 2868 w (values) 2664 2868 w (is) 2947 2868 w (0) 3042 2868 w (to) 3120 2868 w (18.) 3226 2868 w (After) 3404 2868 w (offset,) 3642 2868 w (that's) 3922 2868 w (\2559) 4172 2868 w (to) 4283 2868 w (9,) 4389 2868 w (and) 4492 2868 w (after) 4664 2868 w (nor\255) 4874 2868 w (malizing, the range is \2551 to 1.) 720 2988 w (For) 720 3144 w (a) 900 3144 w (normal) 985 3144 w (convolution,) 1309 3144 w (where) 1853 3144 w (you're) 2137 3144 w (neither) 2438 3144 w (adding) 2756 3144 w (nor) 3069 3144 w (subtracting) 3243 3144 w (total) 3728 3144 w (value) 3947 3144 w (from) 4204 3144 w (the) 4439 3144 w (image,) 4602 3144 w (but) 4912 3144 w (merely) 720 3264 w (moving) 1026 3264 w (it) 1361 3264 w (around,) 1446 3264 w (you'll) 1777 3264 w (want) 2045 3264 w (to) 2268 3264 w (make) 2375 3264 w (sure) 2620 3264 w (that) 2815 3264 w (all) 2994 3264 w (the) 3123 3264 w (offset,) 3274 3264 w (scaled) 3555 3264 w (values) 3833 3264 w (in) 4117 3264 w (\(each) 4224 3264 w (plane) 4468 3264 w (of\)) 4713 3264 w (your) 4857 3264 w (convolution) 720 3384 w (PNM) 1230 3384 w (add) 1479 3384 w (up) 1655 3384 w (to) 1787 3384 w (1.) 1897 3384 w (That) 2029 3384 w (means) 2244 3384 w (the) 2531 3384 w (actual) 2686 3384 w (sample) 2957 3384 w (values,) 3273 3384 w (less) 3586 3384 w (half) 3769 3384 w (the) 3957 3384 w (maxval,) 4112 3384 w (add) 4464 3384 w (up) 4641 3384 w (to) 4774 3384 w (half) 4885 3384 w (the maxval as in the example above.) 720 3504 w (The convolution file will usually be a PGM, so) 720 3660 w (that) 2626 3660 w (the) 2802 3660 w (same) 2950 3660 w (convolution) 3181 3660 w (gets) 3685 3660 w (applied) 3872 3660 w (to) 4192 3660 w (each) 4296 3660 w (color) 4504 3660 w (compo\255) 4735 3660 w (nent.) 720 3780 w (However,) 974 3780 w (if) 1396 3780 w (you) 1489 3780 w (want) 1671 3780 w (to) 1897 3780 w (use) 2007 3780 w (a) 2172 3780 w (PPM) 2248 3780 w (and) 2481 3780 w (do) 2657 3780 w (a) 2789 3780 w (different) 2865 3780 w (convolution) 3240 3780 w (to) 3750 3780 w (different) 3860 3780 w (colors,) 4235 3780 w (you) 4536 3780 w (can) 4717 3780 w (cer\255) 4886 3780 w (tainly do that.) 720 3900 w (At) 720 4056 w (the) 859 4056 w (edges) 1020 4056 w (of) 1286 4056 w (the) 1408 4056 w (convolved) 1569 4056 w (image,) 2024 4056 w (where) 2332 4056 w (the) 2614 4056 w (convolution) 2775 4056 w (matrix) 3292 4056 w (would) 3592 4056 w (extend) 3882 4056 w (over) 4188 4056 w (the) 4405 4056 w (edge) 4567 4056 w (of) 4795 4056 w (the) 4918 4056 w (image,) 720 4176 w 10 /Times-Bold f (pnmconvol) 1014 4176 w 10 /Times-Roman f (just copies the input pixels directly to the output.) 1512 4176 w (The) 720 4332 w (convolution) 908 4332 w (computation) 1419 4332 w (can) 1952 4332 w (result) 2123 4332 w (in) 2378 4332 w (a) 2489 4332 w (value) 2566 4332 w (which) 2815 4332 w (is) 3092 4332 w (outside) 3192 4332 w (the) 3515 4332 w (range) 3671 4332 w (representable) 3926 4332 w (in) 4491 4332 w (the) 4603 4332 w (output.) 4759 4332 w (When that happens,) 720 4452 w 10 /Times-Bold f (pnmconvol) 1535 4452 w 10 /Times-Roman f (just clips the output, which means brightness is not conserved.) 2033 4452 w 10 /Times-Bold f (HISTORY) 720 4692 w 10 /Times-Roman f (The) 720 4884 w 10 /Times-Bold f (\255nooffset) 900 4884 w 10 /Times-Roman f (option was new in Netpbm 10.23 \(July 2004\).) 1296 4884 w 10 /Times-Bold f (SEE ALSO) 720 5124 w (pnmsmooth) 720 5280 w 10 /Times-Roman f (,) 1226 5280 w 10 /Times-Bold f (pgmmorphconv) 1276 5280 w 10 /Times-Roman f (,) 1954 5280 w 10 /Times-Bold f (pnmnlfilt) 2004 5280 w 10 /Times-Roman f (,) 2405 5280 w 10 /Times-Bold f (pgmkernel) 2455 5280 w 10 /Times-Roman f (,) 2916 5280 w 10 /Times-Bold f (pamgauss) 2966 5280 w 10 /Times-Roman f (,) 3389 5280 w 10 /Times-Bold f (pnm) 3439 5280 w (AUTHORS) 720 5520 w 10 /Times-Roman f (Copyright \(C\) 1989, 1991 by Jef Poskanzer.) 720 5676 w (Modified 26 November 1994 by Mike Burns, burns@chem.psu.edu) 720 5796 w 10 /S1 f (________________________________________________________________________) 720 5916 w 10 /Times-Bold f (Table Of Contents) 720 6156 w 10 /LucidaSansUnicode22 f (\031) 720 6348 w 10 /Times-Roman f (NAME) 970 6348 w 10 /LucidaSansUnicode22 f (\031) 720 6504 w 10 /Times-Roman f (SYNOPSIS) 970 6504 w 10 /LucidaSansUnicode22 f (\031) 720 6660 w 10 /Times-Roman f (DESCRIPTION) 970 6660 w 10 /LucidaSansUnicode22 f (\031) 720 6816 w 10 /Times-Roman f (SEE ALSO) 970 6816 w 10 /LucidaSansUnicode22 f (\031) 720 6972 w 10 /Times-Roman f (HISTORY) 970 6972 w 10 /LucidaSansUnicode22 f (\031) 720 7128 w 10 /Times-Roman f (AUTHORS) 970 7128 w cleartomark showpage saveobj restore %%EndPage: 2 2 %%Trailer done %%DocumentFonts: Times-Roman LucidaSansUnicode22 Times-Italic Times-Bold S1 S %%Pages: 2