290 likes | 513 Views
Medical Image Compression EECE 541 Multimedia Systems . Harjot Pooni Ashish Uthama Victor Sanchez. What are medical images ?. Some examples MRI / FMRI (Function Magnetic Resonance). Medical Images. Dynamic 3D Ultrasound PET (Positron emission Tomography)
E N D
Medical Image Compression EECE 541 Multimedia Systems Harjot Pooni Ashish Uthama Victor Sanchez
What are medical images ? Some examples • MRI / FMRI (Function Magnetic Resonance) Department of Electrical Engineering and Computer Engineering
Medical Images • Dynamic 3D Ultrasound • PET (Positron emission Tomography) • CT (computerized Tomograhpy) Department of Electrical Engineering and Computer Engineering
Why compress medical images? • Growing need for storage • Efficient data transmission • Telemedicine • Tele-radiology applications • Real time Tele-consultation. • PACS (Picture archiving and communication systems) Department of Electrical Engineering and Computer Engineering
Challenges unique to medical images. • Compression Algorithms • Lossy / Lossless • Medical Images should always be stored in lossless format. • Erroneous Diagnostics and its legal implications. Department of Electrical Engineering and Computer Engineering
Compressed image e.g. WinZIP Compressed image e.g. JPEG, JPEG2000 Transform to frequency domain Techniques used Compression techniques may be classified into: • Lossy • Lossless Moreover, compression algorithms may be applied in the spatial domain or frequency domain Department of Electrical Engineering and Computer Engineering
JPEG 2000 and JPEG-LS • High compression efficiency • Lossless color transformations • Progressive by resolution and quality • Multiple component images • ROI coding (static and dynamic) • Error resilience capabilities • Object oriented functionalities (coding, information, embedding) Department of Electrical Engineering and Computer Engineering
3D medical image Drawbacks of JPEG 2000 and JPEG-LS • Only looks for redundancy in the frame. • Does not exploit 3D and 4D redundancy 3DRedundancy Department of Electrical Engineering and Computer Engineering
4D medical image . . . . . . . . Time 1 Time 2 Time 3 Time n 4D Redundancy • Exploits temporal redundancy Department of Electrical Engineering and Computer Engineering
Slice 1 Slice 1 Slice 1 . . . . . Slice s Slice s Slice s Volume n Volume 1 Volume 2 . . . . . . . . . . Slice 1 Slice 1 Slice 1 . . . . . Slice s Slice s Slice s Volume n Volume 1 Volume 2 Ordering the data to exploit redundancies Transform the problem domain: Convert 4D data to a sequence of 2D data • Volume • Time Department of Electrical Engineering and Computer Engineering
3D-JPEG 2000 • Part 10 – JP3D “Part 10 is still at the Working Draft stage. It is concerned with the coding of three-dimensional data, the extension of JPEG 2000 from planar to volumetric images” -http://www.jpeg.org/jpeg2000/j2kpart10.html • Some commercial vendors have already come out with 3D extensions of JPEG 2000http://www.aware.com/products/compression/J2K3D.html • Provides guidelines for the use of JPEG 2000 for 3D data Department of Electrical Engineering and Computer Engineering
3D-JPEG 2000 The basic approach • Wavelet transforms Department of Electrical Engineering and Computer Engineering
H1 H2 L2 LL2 HL2 HL1 LH2 HH2 HH1 LH1 1D wavelet transform + JPEG 2000 coding = 3D-JPEG 2000 3D-JPEG 2000 The basic approach • Reorder the 4D data by time or volume • For each set, apply a 1D wavelet transform along the z axis • Apply JPEG 2000 on each transformed slice Department of Electrical Engineering and Computer Engineering
Drawbacks • Does not effectively use the redundancy in the 4th dimension (Temporal redundancy) • Movement of object between two slices would adversely effect performance • Object motion is significant in medical imaging • Patient movement • Organ movement (Heart, Lung) Department of Electrical Engineering and Computer Engineering
H.264/AVC Latest video coding standard uses motion compensation and estimation. Source: www.vcodex.com Department of Electrical Engineering and Computer Engineering
Why use H.264? • Better Intra frame compression • Medical images have comparatively more uniform areas • Motion estimation and compensation • Address temporal redundancies • Multiple frames may be used to predict a single frame. • Better performance • Different block sizes for motion estimation (16x16, 16x8, 8x8) • Better performance! • Improved entropy encoder • Better performance!! Department of Electrical Engineering and Computer Engineering
Slice 1 Slice 1 Slice 1 . . . . . Slice s Slice s Slice s Volume n Volume 1 Volume 2 Approach One: H.264-VOL Apply H.264/AVC on slices arranged as shown above Results: Department of Electrical Engineering and Computer Engineering
. . . . . . . . . . Slice 1 Slice 1 Slice 1 . . . . . Slice s Slice s Slice s Volume n Volume 1 Volume 2 Approach Two: H.264-TIME Apply H.264/AVC on slices arranged as shown above Results: Department of Electrical Engineering and Computer Engineering
. . . . . . . . . . Slice 1 Slice 1 Slice 1 . . . . . Slice s Slice s Slice s Volume n Volume 1 Volume 2 Best compression performance H.264 applied across time H.264-TIME Department of Electrical Engineering and Computer Engineering
How to improve compression efficiency? Two ideas: • Get the difference between consecutive image slices, then use H.264 • Calculate the residual frames, then use H.264 Main objective: reduce the energy content of each image slice. Department of Electrical Engineering and Computer Engineering
Volume 1 Volume 2 Volume n H.264 MC + entropy coder (CABAC) Reference slice Reference slice Reference slice Slice 1 Slice 1 Slice 1 Slice s Slice s Slice s Difference Difference Difference Difference 2 Difference 2 Difference 2 . . . Difference s Difference s Difference s . . . . . . . . . . . . . . . Difference between slices s coded bit-streams Slice 1 Slice 2 Difference Department of Electrical Engineering and Computer Engineering
+ + + MVs MVs MVs . . . . . . . . . . . . . . . Residual frames Volume 1 Volume 2 Volume n H.264 MC + entropy coder (CABAC) Reference slice Reference slice Reference slice Slice 1 Slice 1 Slice 1 Slice s Slice s Slice s s coded bit-streams H.264 MC H.264 MC H.264 MC Residual 2 Residual 2 Residual s Residual s Original slice Predicted Residual Department of Electrical Engineering and Computer Engineering
Results Department of Electrical Engineering and Computer Engineering
Future improvements • Contextual encoding take into account characteristics of image High motion Low motion Department of Electrical Engineering and Computer Engineering
Future improvements Low motion areas lossy High motion areas lossless Lossless Lossy Department of Electrical Engineering and Computer Engineering
Future improvements Encoding using “slices” (group of macroblocks): • First slice for high motion areas • Second slice for low motion areas Slices may be encoded at different rates First slice Second slice Department of Electrical Engineering and Computer Engineering
Questions? Department of Electrical Engineering and Computer Engineering