%!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 (Pnmpsnr) 2293 1230 w (User) 2797 1230 w (Manual) 3066 1230 w 10 /Times-Bold f (pnmpsnr) 720 1920 w 10 /Times-Roman f (Updated: 04 March 2001) 720 2076 w (Table Of Contents) 720 2196 w 10 /Times-Bold f (NAME) 720 2436 w 10 /Times-Roman f (pnmpsnr \255 compute the difference between two images \(the PSNR\)) 720 2592 w 10 /Times-Bold f (SYNOPSIS) 720 2832 w (pnmpsnr) 720 2988 w 10 /Times-Roman f ([) 1135 2988 w 10 /Times-Italic f (pnmfile1) 1168 2988 w 10 /Times-Roman f (] [) 1518 2988 w 10 /Times-Italic f (pnmfile2) 1609 2988 w 10 /Times-Roman f (]) 1959 2988 w 10 /Times-Bold f (DESCRIPTION) 720 3228 w 10 /Times-Roman f (This program is part of Netpbm.) 720 3420 w 10 /Times-Bold f (pnmpsnr) 720 3576 w 10 /Times-Roman f (reads) 1138 3576 w (two) 1376 3576 w (PBM,) 1554 3576 w (PGM,) 1819 3576 w (or) 2089 3576 w (PPM) 2200 3576 w (files,) 2429 3576 w (or) 2654 3576 w (PAM) 2765 3576 w (equivalents,) 3010 3576 w (as) 3518 3576 w (input) 3629 3576 w (and) 3863 3576 w (prints) 4035 3576 w (the) 4291 3576 w (peak) 4441 3576 w (signal\255to\255) 4657 3576 w (noise) 720 3696 w (ratio) 959 3696 w (\(PSNR\)) 1170 3696 w (difference) 1515 3696 w (between) 1946 3696 w (the) 2305 3696 w (two) 2454 3696 w (images.) 2631 3696 w (This) 2991 3696 w (metric) 3196 3696 w (is) 3478 3696 w (typically) 3572 3696 w (used) 3949 3696 w (in) 4159 3696 w (image) 4264 3696 w (compression) 4535 3696 w (papers to rate the distortion between original and decoded image.) 720 3816 w (If) 720 3972 w (the) 816 3972 w (inputs) 968 3972 w (are) 1243 3972 w (PBM) 1394 3972 w (or) 1636 3972 w (PGM,) 1749 3972 w 10 /Times-Bold f (pnmpsnr) 2021 3972 w 10 /Times-Roman f (prints) 2441 3972 w (the) 2699 3972 w (PSNR) 2851 3972 w (of) 3133 3972 w (the) 3247 3972 w (luminance) 3400 3972 w (only.) 3847 3972 w (Otherwise,) 4106 3972 w (it) 4572 3972 w (prints) 4659 3972 w (the) 4918 3972 w (separate PSNRs of the luminance, and chrominance \(Cb and Cr\) components of the colors.) 720 4092 w (The) 720 4248 w (PSNR) 908 4248 w (of) 1192 4248 w (a) 1308 4248 w (given) 1385 4248 w (component) 1640 4248 w (is) 2117 4248 w (the) 2217 4248 w (ratio) 2372 4248 w (of) 2588 4248 w (the) 2704 4248 w (mean) 2859 4248 w (square) 3108 4248 w (difference) 3401 4248 w (of) 3837 4248 w (the) 3953 4248 w (component) 4108 4248 w (for) 4585 4248 w (the) 4734 4248 w (two) 4890 4248 w (images) 720 4368 w (to) 1029 4368 w (the) 1133 4368 w (maximum) 1281 4368 w (mean) 1713 4368 w (square) 1955 4368 w (difference) 2241 4368 w (that) 2670 4368 w (can) 2846 4368 w (exist) 3010 4368 w (between) 3225 4368 w (any) 3583 4368 w (two) 3753 4368 w (images.) 3929 4368 w (It) 4288 4368 w (is) 4375 4368 w (expressed) 4468 4368 w (as) 4887 4368 w (a) 4996 4368 w (decibel value.) 720 4488 w (The) 720 4644 w (mean) 901 4644 w (square) 1143 4644 w (difference) 1429 4644 w (of) 1858 4644 w (a) 1967 4644 w (component) 2037 4644 w (for) 2507 4644 w (two) 2649 4644 w (images) 2825 4644 w (is) 3134 4644 w (the) 3228 4644 w (mean) 3377 4644 w (square) 3620 4644 w (difference) 3907 4644 w (of) 4337 4644 w (the) 4447 4644 w (component) 4596 4644 w (value,) 720 4764 w (comparing) 987 4764 w (each) 1440 4764 w (pixel) 1648 4764 w (with) 1874 4764 w (the) 2078 4764 w (pixel) 2226 4764 w (in) 2452 4764 w (the) 2556 4764 w (same) 2704 4764 w (position) 2935 4764 w (of) 3284 4764 w (the) 3393 4764 w (other) 3541 4764 w (image.) 3772 4764 w (For) 4092 4764 w (the) 4257 4764 w (purposes) 4405 4764 w (of) 4786 4764 w (this) 4895 4764 w (computation, components are normalized to the scale [0..1].) 720 4884 w (The maximum mean square difference is identically 1.) 720 5040 w (So) 720 5196 w (the) 856 5196 w (higher) 1008 5196 w (the) 1293 5196 w (PSNR,) 1445 5196 w (the) 1751 5196 w (closer) 1904 5196 w (the) 2173 5196 w (images) 2326 5196 w (are.) 2640 5196 w (A) 2842 5196 w (luminance) 2945 5196 w (PSNR) 3392 5196 w (of) 3674 5196 w (20) 3788 5196 w (means) 3919 5196 w (the) 4205 5196 w (mean) 4358 5196 w (square) 4605 5196 w (dif\255) 4896 5196 w (ference of the luminances of the pixels is 100 times less than the maximum possible difference, i.e. 0.01.) 720 5316 w 10 /Times-Bold f (SEE ALSO) 720 5556 w (pnm) 720 5712 w 10 /S1 f (________________________________________________________________________) 720 5832 w 10 /Times-Bold f (Table Of Contents) 720 6072 w 10 /LucidaSansUnicode22 f (\031) 720 6264 w 10 /Times-Roman f (NAME) 970 6264 w 10 /LucidaSansUnicode22 f (\031) 720 6420 w 10 /Times-Roman f (SYNOPSIS) 970 6420 w 10 /LucidaSansUnicode22 f (\031) 720 6576 w 10 /Times-Roman f (DESCRIPTION) 970 6576 w 10 /LucidaSansUnicode22 f (\031) 720 6732 w 10 /Times-Roman f (SEE ALSO) 970 6732 w cleartomark showpage saveobj restore %%EndPage: 1 1 %%Trailer done %%DocumentFonts: Times-Roman LucidaSansUnicode22 Times-Italic Times-Bold S1 %%Pages: 1