1Pnmtofiasco User Manual(0) Pnmtofiasco User Manual(0)
2
3
4
6 pnmtofiasco - Convert PNM file to FIASCO compressed file
7
8
10 pnmtofiasco [option]... [filename]...
11
12
14 This program is part of Netpbm(1).
15
16 pnmtofiasco compresses the named pbm, pgm, or ppm image files, or Stan‐
17 dard Input if no file is named, and produces a FIASCO file on Standard
18 Output.
19
20
22 In addition to the options common to all programs based on libnetpbm
23 (most notably -quiet, see
24 Common Options ⟨index.html#commonoptions⟩ ), pnmtofiasco recognizes
25 the following command line options:
26
27 All option names may be abbreviated; for example, --optimize may be
28 written --optim or --opt. For most options a one letter short option is
29 provided. Mandatory or optional arguments to long options are manda‐
30 tory or optional for short options, too. Both short and long options
31 are case sensitive.
32
33
34 Basic Options
35 -i name, --input-name=name
36 Compress the named images, not Standard Input. If name is -,
37 read Standard Input. name has to be either an image filename or
38 a template of the form:
39
40 prefix[start-end{+,-}step]suffix
41
42
43 Templates are useful when compressing video streams: e.g., if
44 you specify the template img0[12-01-2].pgm, then pnmtofiasco
45 compresses the images img012.pgm, img010.pgm, ..., img002.pgm.
46
47 If name is a relative path, pnmtofiasco searches for the image
48 files in the current directory and in the (colon-separated) list
49 of directories given by the environment variable FIASCO_IMAGES.
50
51
52 -o output-file, --output-name=name
53 Write FIASCO output to the named file, not to Standard Output.
54
55 If name is a relative path and the environment variable FI‐
56 ASCO_DATA is a (colon-separated) list of directories, then pn‐
57 mtofiasco writes the output file to the first (writable) direc‐
58 tory of this list. Otherwise, pnmtofiasco write it to the cur‐
59 rent directory.
60
61
62 -q N, --quality=N
63 Set quality of compression to N. Quality is 1 (worst) to 100
64 (best); default is 20.
65
66
67 -v, --version
68 Print pnmtofiasco version number, then exit.
69
70
71 -V N, --verbose N
72 Set level of verbosity to N. Level is 0 (no output at all), 1
73 (show progress meter), or 2 (show detailed compression statis‐
74 tics); default is 1.
75
76
77 -B N, --progress-meter N
78 Set type of progress-meter to N. The following types are avail‐
79 able; default is 1:
80
81
82
83 0 no progress meter
84
85
86 1 RPM style progress bar using 50 hash marks
87
88
89 2 percentage meter
90
91
92
93
94 -f name, --config=name
95 Load parameter file name to initialize the options of pnmtofi‐
96 asco. See file system.fiascorc for an example of the syntax.
97 Options of pnmtofiasco are set by any of the following methods
98 (in the specified order):
99
100
101
102 • Global resource file /etc/system.fiascorc
103
104 • $HOME/.fiascorc
105
106 • command line
107
108 • --config=name
109
110
111
112 -h, --info
113 Print brief help, then exit.
114
115
116 -H, --help
117 Print detailed help, then exit.
118
119
120
121
122 Options for Advanced Users
123 -b name, --basis-name=name
124 Preload compression basis name into FIASCO. The basis name pro‐
125 vides the initial compression dictionary. Either use one of the
126 files "small.fco", "medium.fco", or "large.fco" that come with
127 pnmtofiasco or create a new ASCII basis file.
128
129
130 -z N, --optimize=N
131 Set optimization level to N. Level is 0 (fastest) to 3 (slow‐
132 est); default is 1. Be warned, the encoding time dramatically
133 increased when N=2 or N=3 while the compression performance only
134 slightly improves.
135
136
137 -P, --prediction
138 Use additional predictive coding. If this optimization is en‐
139 abled then the image is compressed in two steps. In the first
140 step, a coarse approximation of the image is computed using
141 large unichrome blocks. Finally, the delta image is computed
142 and the prediction error is approximated using the standard FI‐
143 ASCO algorithm.
144
145
146 -D N, --dictionary-size=N
147 Set size of dictionary that is used when coding the luminance
148 band to N; default is 10000, i.e., the dictionary is not re‐
149 stricted.
150
151
152 -C N, --chroma-dictionary=N
153 Set size of dictionary that is used when coding chroma bands to
154 N; default is 40.
155
156
157 -Q N, --chroma-qfactor=N
158 Reduce the quality of chroma band compression N-times with re‐
159 spect to the user defined quality q of the luminance band com‐
160 pression (--quality=q); default is 2.
161
162
163 -t N, --tiling-exponent=N
164 Subdivide the image into 2^N tiles prior coding; default is 4,
165 i.e. the image is subdivided into 16 tiles. The processing order
166 of the individual tiles is defined by the option --tiling-
167 method=name.
168
169
170 -T name, --tiling-method=name
171 Order the individual image tiles (the image is subdivided into;
172 see option --tiling-exponent=N) by method name; default is desc-
173 variance.
174
175
176
177 desc-variance
178 Tiles with small variances are processed first.
179
180
181 asc-variance
182 Tiles with large variances are processed first.
183
184
185 desc-spiral
186 Tiles are process in spiral order starting in the middle.
187
188
189 asc-spiral
190 Tiles are process in spiral order starting at the border.
191
192
193
194
195 --rpf-mantissa=N
196 Use N mantissa bits for quantized coefficients.
197
198
199 --dc-rpf-mantissa=N
200 Use N mantissa bits for quantized DC coefficients.
201
202
203 --rpf-range=N
204 Coefficients outside the quantization interval [-N,+N] are set
205 to zero.
206
207
208 --dc-rpf-range=N
209 DC coefficients outside the quantization interval [-N,+N] are
210 set to zero.
211
212
213
214
215 Additional Options for Video Compression
216 -s N, --smooth=N
217 Smooth decompressed reference frames along the partitioning bor‐
218 ders by the given amount N. N is 0 (no smoothing) to 100; de‐
219 fault is 70. This factor is stored in the FIASCO file.
220
221
222 -m N, --min-level=N
223 Start prediction (motion compensated prediction or additional
224 prediction) on block level N; default is level 6. I.e., motion
225 compensation is applied to all image blocks of at least 8x8 pix‐
226 els (binary tree level N=6), 16x8 (N=7), 16x16 (N=8), etc.
227
228
229 -M N, --max-level=N
230 Stop prediction (motion compensated prediction or additional
231 prediction) on block level N; default is level 10. I.e., motion
232 compensation is applied to all image blocks of at most 16x16
233 pixels (N=8), 32x16 (N=9), 32x32 (N=10), etc.
234
235
236 -2, --half-pixel
237 Use half pixel precise motion compensation.
238
239
240 -F N, --fps=N
241 Set number of frames per second to N. This value is stored in
242 the FIASCO output file and is used in the decoder fiascotopnm(1)
243 to control the framerate.
244
245
246 -p type, --pattern=type
247 Defines the type of inter frame compression which should be ap‐
248 plied to individual frames of a video stream. type is a se‐
249 quence of characters; default is "IPPPPPPPPP". Element N de‐
250 fines the type of predicting which should be used for frame N;
251 the frame type pattern is periodically extended. Valid charac‐
252 ters are:
253
254
255
256 I intra frame, i.e., no motion compensated prediction is used at
257 all.
258
259
260 P predicted frame, i.e., a previously encoded frame is used for
261 prediction (forward prediction).
262
263
264 B bidirectional predicted frame, i.e., not only a previously shown
265 frame but also a frame of the future is used for prediction
266 (forward, backward or interpolated prediction).
267
268
269
270
271 --cross-B-search
272 Instead of using exhaustive search the "Cross-B-Search" algo‐
273 rithm is used to find the best interpolated prediction of B-
274 frames.
275
276
277 --B-as-past-ref
278 Also use previously encoded B-frames when prediction the current
279 frame. If this option is not set, only I- and P-frames are used
280 to predict the current frame.
281
282
283
284
285
287 Compress the still image "foo.ppm" to the FIASCO file "foo.wfa" using
288 the default options:
289
290 pnmtofiasco < foo.ppm >foo.wfa
291
292
293 Compress the video frames "foo0*.ppm" to the FIASCO file "video.wfa"
294 using half pixel precise motion compensation at a frame rate of 15
295 frames per second. Intra frame 1 is used to predict P-frame 4, frames
296 1 and 4 are used to predict B-frames 2 and 3, and so on. Frame 10 is
297 again an intra-frame.
298
299 pnmtofiasco -2 -p "IBBPBBPBB" -fps 15 -o video.wfa foo0*.ppm
300
301
302
304 /etc/system.fiascorc
305 The systemwide initialization file.
306
307
308 $HOME/.fiascorc
309 The personal initialization file.
310
311
312
313
315 FIASCO_IMAGES
316 Search path for image files. Default is "./".
317
318
319 FIASCO_DATA
320 Search and save path for FIASCO files. Default is "./".
321
322
323
324
326 fiascotopnm(1), pnmtojpeg(1), pnmtojbig(1), pamtogif(1), pnm(1)
327
328 Ullrich Hafner, Juergen Albert, Stefan Frank, and Michael Unger.
329 Weighted Finite Automata for Video Compression, IEEE Journal on Se‐
330 lected Areas In Communications, January 1998
331
332 Ullrich Hafner. Low Bit-Rate Image and Video Coding with Weighted Fi‐
333 nite Automata, Ph.D. thesis, Mensch & Buch Verlag, ISBN 3-89820-002-7,
334 October 1999.
335
336 FIASCO: An Open-Source Fractal Image and Sequence Codec, Linux Journal,
337 January 2001.
338
339
341 Ullrich Hafner <hafner@bigfoot.de>
342
344 This manual page was generated by the Netpbm tool 'makeman' from HTML
345 source. The master documentation is at
346
347 http://netpbm.sourceforge.net/doc/pnmtofiasco.html
348
349netpbm documentation 12 July 2000 Pnmtofiasco User Manual(0)