1dcmcjpls(1)                       OFFIS DCMTK                      dcmcjpls(1)
2
3
4

NAME

6       dcmcjpls - Encode DICOM file to JPEG-LS transfer syntax
7
8

SYNOPSIS

10       dcmcjpls [options] dcmfile-in dcmfile-out
11

DESCRIPTION

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

PARAMETERS

19       dcmfile-in   DICOM input filename to be converted
20
21       dcmfile-out  DICOM output filename
22

OPTIONS

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

NOTES

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

TRANSFER SYNTAXES

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

LOGGING

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

COMMAND LINE

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

ENVIRONMENT

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

SEE ALSO

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)
Impressum