1dcmcjpls(1) OFFIS DCMTK dcmcjpls(1)
2
3
4
6 dcmcjpls - Encode DICOM file to JPEG-LS transfer syntax
7
8
10 dcmcjpls [options] dcmfile-in dcmfile-out
11
13 The dcmcjpls utility reads an uncompressed DICOM image (dcmfile-in),
14 performs a JPEG-LS compression (i. e. conversion to an encapsulated
15 DICOM transfer syntax) and writes the converted image to an output file
16 (dcmfile-out).
17
19 dcmfile-in DICOM input filename to be converted
20
21 dcmfile-out DICOM output filename
22
24 general options
25 -h --help
26 print this help text and exit
27
28 --version
29 print version information and exit
30
31 --arguments
32 print expanded command line arguments
33
34 -q --quiet
35 quiet mode, print no warnings and errors
36
37 -v --verbose
38 verbose mode, print processing details
39
40 -d --debug
41 debug mode, print debug information
42
43 -ll --log-level [l]evel: string constant
44 (fatal, error, warn, info, debug, trace)
45 use level l for the logger
46
47 -lc --log-config [f]ilename: string
48 use config file f for the logger
49
50 input options
51 input file format:
52
53 +f --read-file
54 read file format or data set (default)
55
56 +fo --read-file-only
57 read file format only
58
59 -f --read-dataset
60 read data set without file meta information
61
62 input transfer syntax:
63
64 -t= --read-xfer-auto
65 use TS recognition (default)
66
67 -td --read-xfer-detect
68 ignore TS specified in the file meta header
69
70 -te --read-xfer-little
71 read with explicit VR little endian TS
72
73 -tb --read-xfer-big
74 read with explicit VR big endian TS
75
76 -ti --read-xfer-implicit
77 read with implicit VR little endian TS
78
79 JPEG-LS encoding options
80 JPEG-LS process:
81
82 +el --encode-lossless
83 encode JPEG-LS lossless only TS (default)
84
85 # This options selects the JPEG-LS lossless only transfer syntax
86 # and performs a lossless compression.
87
88 +en --encode-nearlossless
89 encode JPEG-LS near-lossless TS (NEAR: 2)
90
91 # This options selects the JPEG-LS lossy transfer syntax
92 # and performs a near-lossless compression.
93
94 JPEG-LS bit rate (near-lossless only):
95
96 +md --max-deviation [d]eviation: integer (default: 2)
97 defines maximum deviation for an encoded pixel
98
99 # This option specifies the maximum deviation for a single pixel from
100 # the original pixel value.
101
102 lossless compression:
103
104 +pr --prefer-raw
105 prefer raw encoder mode (default)
106
107 # This option enables the raw encoder. The raw encoder encodes the
108 # complete pixel cell as it was read from the source image without
109 # performing any modifications.
110
111 +pc --prefer-cooked
112 prefer cooked encoder mode
113
114 # This option enables the cooked encoder. The cooked encoder moves
115 # overlay data to separate tags (60xx,3000) and only encodes the
116 # stored bits in each pixel.
117
118 JPEG-LS compression:
119
120 +t1 --threshold1 [t]hreshhold: integer
121 set JPEG-LS encoding parameter threshold 1
122
123 +t2 --threshold2 [t]hreshhold: integer
124 set JPEG-LS encoding parameter threshold 2
125
126 +t3 --threshold3 [t]hreshhold: integer
127 set JPEG-LS encoding parameter threshold 3
128
129 # By default, the values for T1, T2, T3 are computed based on
130 # the number of bits per sample.
131
132 +rs --reset [r]eset: integer (default: 64)
133 set JPEG-LS encoding parameter reset
134
135 JPEG-LS interleave:
136
137 +il --interleave-line
138 force line-interleaved JPEG-LS images (default)
139
140 # This flag forces line-interleaved mode for the resulting image.
141 # In line-interleave mode each line from the source image is
142 # compressed separately for each component and then the next line
143 # is encoded.
144
145 +is --interleave-sample
146 force sample-interleaved JPEG-LS images
147
148 # This flag forces sample-interleaved mode for the resulting image.
149 # In sample-interleave mode each pixel's components are encoded before
150 # the next pixel is encoded.
151
152 +iv --interleave-default
153 use the fastest possible interleave mode
154
155 # This flag selects an interleave mode based on the source image's mode.
156 # If possible, the image is not converted to a different interleave mode.
157
158 JPEG-LS padding of odd-length bitstreams:
159
160 +ps --padding-standard
161 pad with extended EOI marker (default)
162
163 # Pad odd-length JPEG-LS bitstreams by writing an extended end of image
164 # segment marker FF FF D9, as required by the DICOM standard.
165
166 +pz --padding-zero
167 pad with zero byte (non-standard)
168
169 # Pad odd-length JPEG-LS bitstreams by writing a zero byte after the
170 # end of image segment marker, i.e. FF D9 00. This is not DICOM conformant
171 # but required for interoperability with the HP LOCO reference implementation,
172 # which does not support extended JPEG-LS bitstreams.
173
174 encapsulated pixel data encoding options
175 encapsulated pixel data fragmentation:
176
177 +ff --fragment-per-frame
178 encode each frame as one fragment (default)
179
180 # This option causes the creation of one compressed fragment for each
181 # frame (recommended).
182
183 +fs --fragment-size [s]ize: integer
184 limit fragment size to s kbytes
185
186 # This option limits the fragment size which may cause the creation of
187 # multiple fragments per frame.
188
189 basic offset table encoding:
190
191 +ot --offset-table-create
192 create offset table (default)
193
194 # This option causes the creation of a valid offset table for the
195 # compressed JPEG fragments.
196
197 -ot --offset-table-empty
198 leave offset table empty
199
200 # This option causes the creation of an empty offset table
201 # for the compressed JPEG fragments.
202
203 SOP Class UID:
204
205 +cd --class-default
206 keep SOP Class UID (default)
207
208 # Keep the SOP Class UID of the source image.
209
210 +cs --class-sc
211 convert to Secondary Capture Image (implies --uid-always)
212
213 # Convert the image to Secondary Capture. In addition to the SOP Class
214 # UID, all attributes required for a valid secondary capture image are
215 # added. A new SOP instance UID is always assigned.
216
217 SOP Instance UID:
218
219 +ud --uid-default
220 assign new UID if lossy compression (default)
221
222 # Assigns a new SOP instance UID if the compression is lossy JPEG-LS.
223
224 +ua --uid-always
225 always assign new UID
226
227 # Unconditionally assigns a new SOP instance UID.
228
229 +un --uid-never
230 never assign new UID
231
232 # Never assigns a new SOP instance UID.
233
234 output options
235 post-1993 value representations:
236
237 +u --enable-new-vr
238 enable support for new VRs (UN/UT) (default)
239
240 -u --disable-new-vr
241 disable support for new VRs, convert to OB
242
243 group length encoding:
244
245 +g= --group-length-recalc
246 recalculate group lengths if present (default)
247
248 +g --group-length-create
249 always write with group length elements
250
251 -g --group-length-remove
252 always write without group length elements
253
254 length encoding in sequences and items:
255
256 +e --length-explicit
257 write with explicit lengths (default)
258
259 -e --length-undefined
260 write with undefined lengths
261
262 data set trailing padding:
263
264 -p= --padding-retain
265 do not change padding (default)
266
267 -p --padding-off
268 no padding
269
270 +p --padding-create [f]ile-pad [i]tem-pad: integer
271 align file on multiple of f bytes
272 and items on multiple of i bytes
273
275 The dcmcjpls utility compresses DICOM images of all SOP classes. It
276 processes all Pixel Data (7fe0,0010) elements in the dataset, i.e.
277 compression is also performed on an icon image. However, dcmcjpls does
278 not attempt to ensure that the compressed image still complies with all
279 restrictions of the object's IOD.
280
281 The user is responsible for making sure that the compressed images he
282 creates are compliant with the DICOM standard. If in question, the
283 dcmcjpls utility allows one to convert an image to secondary capture -
284 this SOP class does not pose restrictions as the ones mentioned above.
285
287 dcmcjpls supports the following transfer syntaxes for input (dcmfile-
288 in):
289
290 LittleEndianImplicitTransferSyntax 1.2.840.10008.1.2
291 LittleEndianExplicitTransferSyntax 1.2.840.10008.1.2.1
292 DeflatedExplicitVRLittleEndianTransferSyntax 1.2.840.10008.1.2.1.99 (*)
293 BigEndianExplicitTransferSyntax 1.2.840.10008.1.2.2
294
295 (*) if compiled with zlib support enabled
296
297 dcmcjpls supports the following transfer syntaxes for output (dcmfile-
298 out):
299
300 JPEGLSLosslessTransferSyntax 1.2.840.10008.1.2.4.80
301 JPEGLSLossyTransferSyntax 1.2.840.10008.1.2.4.81
302
304 The level of logging output of the various command line tools and
305 underlying libraries can be specified by the user. By default, only
306 errors and warnings are written to the standard error stream. Using
307 option --verbose also informational messages like processing details
308 are reported. Option --debug can be used to get more details on the
309 internal activity, e.g. for debugging purposes. Other logging levels
310 can be selected using option --log-level. In --quiet mode only fatal
311 errors are reported. In such very severe error events, the application
312 will usually terminate. For more details on the different logging
313 levels, see documentation of module 'oflog'.
314
315 In case the logging output should be written to file (optionally with
316 logfile rotation), to syslog (Unix) or the event log (Windows) option
317 --log-config can be used. This configuration file also allows for
318 directing only certain messages to a particular output stream and for
319 filtering certain messages based on the module or application where
320 they are generated. An example configuration file is provided in
321 <etcdir>/logger.cfg.
322
324 All command line tools use the following notation for parameters:
325 square brackets enclose optional values (0-1), three trailing dots
326 indicate that multiple values are allowed (1-n), a combination of both
327 means 0 to n values.
328
329 Command line options are distinguished from parameters by a leading '+'
330 or '-' sign, respectively. Usually, order and position of command line
331 options are arbitrary (i.e. they can appear anywhere). However, if
332 options are mutually exclusive the rightmost appearance is used. This
333 behavior conforms to the standard evaluation rules of common Unix
334 shells.
335
336 In addition, one or more command files can be specified using an '@'
337 sign as a prefix to the filename (e.g. @command.txt). Such a command
338 argument is replaced by the content of the corresponding text file
339 (multiple whitespaces are treated as a single separator unless they
340 appear between two quotation marks) prior to any further evaluation.
341 Please note that a command file cannot contain another command file.
342 This simple but effective approach allows one to summarize common
343 combinations of options/parameters and avoids longish and confusing
344 command lines (an example is provided in file <datadir>/dumppat.txt).
345
347 The dcmcjpls utility will attempt to load DICOM data dictionaries
348 specified in the DCMDICTPATH environment variable. By default, i.e. if
349 the DCMDICTPATH environment variable is not set, the file
350 <datadir>/dicom.dic will be loaded unless the dictionary is built into
351 the application (default for Windows).
352
353 The default behavior should be preferred and the DCMDICTPATH
354 environment variable only used when alternative data dictionaries are
355 required. The DCMDICTPATH environment variable has the same format as
356 the Unix shell PATH variable in that a colon (':') separates entries.
357 On Windows systems, a semicolon (';') is used as a separator. The data
358 dictionary code will attempt to load each file specified in the
359 DCMDICTPATH environment variable. It is an error if no data dictionary
360 can be loaded.
361
363 dcmdjpls(1)
364
366 Copyright (C) 2009-2022 by OFFIS e.V., Escherweg 2, 26121 Oldenburg,
367 Germany.
368
369
370
371Version 3.6.7 Fri Apr 22 2022 dcmcjpls(1)