| Literature DB >> 31316743 |
Romi Fadillah Rahmat1, T S M Andreas1, Fahmi Fahmi2, Muhammad Fermi Pasha3, Mohammed Yahya Alzahrani4, Rahmat Budiarto4.
Abstract
Compression, in general, aims to reduce file size, with or without decreasing data quality of the original file. Digital Imaging and Communication in Medicine (DICOM) is a medical imaging file standard used to store multiple information such as patient data, imaging procedures, and the image itself. With the rising usage of medical imaging in clinical diagnosis, there is a need for a fast and secure method to share large number of medical images between healthcare practitioners, and compression has always been an option. This work analyses the Huffman coding compression method, one of the lossless compression techniques, as an alternative method to compress a DICOM file in open PACS settings. The idea of the Huffman coding compression method is to provide codeword with less number of bits for the symbol that has a higher value of byte frequency distribution. Experiments using different type of DICOM images are conducted, and the analysis on the performances in terms of compression ratio and compression/decompression time, as well as security, is provided. The experimental results showed that the Huffman coding technique has the capability to compress the DICOM file up to 1 : 3.7010 ratio and up to 72.98% space savings.Entities:
Mesh:
Year: 2019 PMID: 31316743 PMCID: PMC6604420 DOI: 10.1155/2019/5810540
Source DB: PubMed Journal: J Healthc Eng ISSN: 2040-2295 Impact factor: 2.682
Figure 1General architecture.
BFD for CT0011.dcm file.
| Byte (hexadecimal) | Byte (decimal) | Frequency |
|---|---|---|
| 00 | 0 | 2661671 |
| 01 | 1 | 613 |
| 02 | 2 | 724 |
| 03 | 3 | 49653 |
| 04 | 4 | 702819 |
| … | … | … |
| FD | 253 | 2 |
| FE | 254 | 49043 |
| FF | 255 | 887 |
Codeword for byte distribution of CT0011.dcm file.
| Byte (hexadecimal) | Byte (decimal) | Codeword |
|---|---|---|
| 00 | 0 | 1 |
| 01 | 1 | 010000011110 |
| 02 | 2 | 010100111001 |
| 03 | 3 | 010111 |
| 04 | 4 | 00 |
| … | … | … |
| FD | 253 | 011111011100100011010 |
| FE | 254 | 010101 |
| FF | 255 | 011011001001 |
Lookup table for CT0011.HUF file.
| Symbol | Codeword |
|---|---|
| 0 | 1 |
| 1 | 010000011110 |
| 2 | 010100111001 |
| 3 | 010111 |
| 4 | 00 |
| … | … |
| 253 | 011111011100100011010 |
| 254 | 010101 |
| 255 | 011011001001 |
DICOM file specification used in the experiments.
| File name | Number of frames | Size (byte) |
|---|---|---|
| CT0011.dcm | 8 | 4.202.378 |
| CT0012.dcm | 2 | 1.052.902 |
| CT0013.dcm | 2 | 1.052.750 |
| CT0014.dcm | 2 | 1.053.770 |
| CT0031.dcm | 15 | 7.871.216 |
| CT0032.dcm | 1 | 527.992 |
| CT0033.dcm | 7 | 3.675.976 |
| CT0034.dcm | 1 | 528.012 |
| CT0035.dcm | 6 | 3.149.976 |
| CT0051.dcm | 1 | 208.402 |
| CT0052.dcm | 1 | 259.602 |
| CT0055.dcm | 1 | 208.416 |
| CT0056.dcm | 1 | 259.616 |
| CT0059.dcm | 1 | 362.378 |
| CT0081.dcm | 2 | 2.607.730 |
| CT0110.dcm | 9 | 4.725.954 |
| CT-MONO2-8-abdo.dcm | 1 | 262.940 |
| CT-MONO2-16-ankle.dcm | 1 | 525.436 |
| CT-MONO2-16-brain.dcm | 1 | 525.968 |
| CT-MONO2-16-chest.dcm | 1 | 145.136 |
Compression results.
| File name | Original size (byte) | No. of symbol/node | Compression time (s) | Compressed size (byte) |
|---|---|---|---|---|
| CT0011.dcm | 4.202.378 | 254 | 2.75 | 1.371.932 |
| CT0012.dcm | 1.052.902 | 223 | 0.67 | 346.880 |
| CT0013.dcm | 1.052.750 | 209 | 0.60 | 328.241 |
| CT0014.dcm | 1.053.770 | 254 | 0.65 | 284.727 |
| CT0031.dcm | 7.871.216 | 256 | 17.25 | 5.057.232 |
| CT0032.dcm | 527.992 | 256 | 0.65 | 322.986 |
| CT0033.dcm | 3.675.976 | 256 | 6.50 | 2.592.421 |
| CT0034.dcm | 528.012 | 256 | 0.78 | 380.848 |
| CT0035.dcm | 3.149.976 | 256 | 3.02 | 1.395.825 |
| CT0051.dcm | 208.402 | 256 | 0.24 | 118.713 |
| CT0052.dcm | 259.602 | 256 | 0.29 | 145.620 |
| CT0055.dcm | 208.416 | 256 | 0.26 | 127.395 |
| CT0056.dcm | 259.616 | 256 | 0.31 | 164.952 |
| CT0059.dcm | 362.378 | 256 | 0.36 | 193.416 |
| CT0081.dcm | 2.607.730 | 256 | 4.30 | 1.882.801 |
| CT0110.dcm | 4.725.954 | 256 | 8.87 | 3.196.659 |
| CT-MONO2-8-abdo.dcm | 262.940 | 217 | 0.23 | 124.563 |
| CT-MONO2-16-ankle.dcm | 525.436 | 89 | 0.29 | 175.696 |
| CT-MONO2-16-brain.dcm | 525.968 | 256 | 0.61 | 360.802 |
| CT-MONO2-16-chest.dcm | 145.136 | 256 | 0.28 | 145.248 |
Compression ratio value and space savings.
| File name | Compression ratio | Space savings (%) |
|---|---|---|
| CT0011.dcm | 3.0631 | 67.35 |
| CT0012.dcm | 3.0353 | 67.05 |
| CT0013.dcm | 3.2072 | 68.82 |
| CT0014.dcm | 3.7010 | 72.98 |
| CT0031.dcm | 1.5564 | 35.75 |
| CT0032.dcm | 1.6347 | 38.83 |
| CT0033.dcm | 1.4180 | 29.48 |
| CT0034.dcm | 1.3864 | 27.87 |
| CT0035.dcm | 2.2567 | 55.69 |
| CT0051.dcm | 1.7555 | 43.04 |
| CT0052.dcm | 1.7827 | 43.91 |
| CT0055.dcm | 1.6360 | 38.87 |
| CT0056.dcm | 1.5739 | 36.46 |
| CT0059.dcm | 1.8736 | 46.63 |
| CT0081.dcm | 1.3850 | 27.80 |
| CT0110.dcm | 1.4784 | 32.36 |
| CT-MONO2-8-abdo.dcm | 2.1109 | 52.63 |
| CT-MONO2-16-ankle.dcm | 2.9906 | 66.56 |
| CT-MONO2-16-brain.dcm | 1.4578 | 31.40 |
| CT-MONO2-16-chest.dcm | 0.9992 | −0.08 |
BFD for CT0013.dcm and CT0014.dcm file.
| Byte (hexadecimal) | CT0013.dcm | CT0014.dcm |
|---|---|---|
| 00 | 663477 | 698830 |
| 01 | 103 | 175 |
| 02 | 237 | 59 |
| 03 | 24806 | 14 |
| … | … | … |
| 11 | 5178 | 45 |
| 12 | 4703 | 18 |
| 13 | 4719 | 13 |
| 14 | 6152 | 6 |
| … | … | … |
| FC | 3 | 6 |
| FD | 2 | 5 |
| FE | 24489 | 91 |
| FF | 413 | 682 |
BFD and codeword for CT-MONO2-16-chest.dcm file.
| Byte (hexadecimal) | BFD | Codeword |
|---|---|---|
| 00 | 938 | 0010110 |
| 01 | 495 | 01001000 |
| 02 | 532 | 01100111 |
| 03 | 495 | 01001001 |
| … | … | … |
| 7D | 381 | 111111110 |
| 7E | 472 | 00110011 |
| 7F | 398 | 00000011 |
| 80 | 222 | 001001110 |
| … | … | … |
| FC | 266 | 100000000 |
| FD | 307 | 101001010 |
| FE | 210 | 1011100011 |
| FF | 117 | 1011100010 |
Figure 2Prefix tree for symbol with the same appearance frequency.
Codeword for symbol with the same occurrence frequency.
| Symbol | Codeword |
|---|---|
| A | 111 |
| B | 110 |
| C | 101 |
| D | 100 |
| E | 011 |
| F | 010 |
| G | 001 |
| H | 000 |
Figure 3CT0011.dcm file hex content.
Figure 4CT0011.HUF file hex content.
Decompression results.
| File name | Original size (byte) | Time (s) | Decompressed size (byte) |
|---|---|---|---|
| CT0011.dcm | 1.371.932 | 21.04 | 4.202.378 |
| CT0012.dcm | 346.880 | 5.92 | 1.052.902 |
| CT0013.dcm | 328.241 | 5.66 | 1.052.750 |
| CT0014.dcm | 284.727 | 4.08 | 1.053.770 |
| CT0031.dcm | 5.057.232 | 101.93 | 7.871.216 |
| CT0032.dcm | 322.986 | 6.06 | 527.992 |
| CT0033.dcm | 2.592.421 | 48.05 | 3.675.976 |
| CT0034.dcm | 380.848 | 7.18 | 528.012 |
| CT0035.dcm | 1.395.825 | 23.91 | 3.149.976 |
| CT0051.dcm | 118.713 | 2.41 | 208.402 |
| CT0052.dcm | 145.620 | 2.93 | 259.602 |
| CT0055.dcm | 127.395 | 2.62 | 208.416 |
| CT0056.dcm | 164.952 | 3.38 | 259.616 |
| CT0059.dcm | 193.416 | 3.83 | 362.378 |
| CT0081.dcm | 1.882.801 | 37.82 | 2.607.730 |
| CT0110.dcm | 3.196.659 | 65.76 | 4.725.954 |
| CT-MONO2-8-abdo.dcm | 124.563 | 2.28 | 262.940 |
| CT-MONO2-16-ankle.dcm | 175.696 | 2.34 | 525.436 |
| CT-MONO2-16-brain.dcm | 360.802 | 7.04 | 525.968 |
| CT-MONO2-16-chest.dcm | 145.248 | 3.01 | 145.136 |
Figure 5File size effect on duration of compression.
Figure 6File size effect on duration of decompression.
Figure 7Performance comparison with JPEG2000.