Title: Video Compression for Medical Imaging
1Video Compression for Medical Imaging
2Contents
- Part 1 Compression Background
- Fundamentals of Compression
- Video Motion Compensation
- Part 2 Medical Imaging
- Example of the data JPEG /Wavelet encoding
- Motion compensation
- Region of interest (ROI) coding
3Part 1
4Foundations of Compression
- The Foundations of Compression involves looking
at the data.
5Foundations of Compression
6Foundations of Compression
DCT
7Video Compression
8Main Classification of Video Compression Methods
- Intra-frame methods
- Uses single frames
- e.g. MJPEG - JPEG applied to video
- Inter-frame methods
- Uses temporal information
- e.g. MPEG-1/2, H.263
- Usual approach to video compression
9Inter-frame methods
10Motion Compensation
- Exploitation of temporal redundancy.
Frame 30
Frame 31
Motion Compensation
11How Do We Motion Compensate?
- Compensate each pixel separately with its own
motion vector?
Motion Data
Error Data
- Huge amount of motion data - More data than the
original image! - Cant afford to motion compensate each individual
pixel.
12Solution
- One motion vector for a group of pixels.
- Based on looking at the data.
13Block Matching
- Foundation of most current video coders (MPEG
1/2, H.261/3).
14Conclusions (part 1)
- Presented a brief summary of video compression
methods
15Part 2
- Video Compression of Medical Images
16Medical Imaging
- Angiogram Video
- Pictures taken of the heart at 30 frames/second
- 512x512 images - 8 bits/pixel
- Typical procedure - 5 minutes
- Resulting in 2.5GBytes of data per patient.
- _at_64Kbits/sec - 80 hours.
- _at_10Mb/sec - 30 minutes.
17Summary
- Going to look at 3 aspects of the research weve
been doing - Example of the data JPEG/Wavelet encoding
- Motion compensation
- Region of interest (ROI) coding
18Example Angiogram Sequence
19Example JPEG Coding
20Still Frame Coding Methods Wavelet
- Similar frequency approach to DCT.
- But considered to give better results.
- Operation on the whole image.
21JPEG/Wavelet Comparison
22Use an off the shelf video coder?
- Typical results for an angiogram image _at_0.8bpp.
- Comparison of intra- and inter-frame methods
using DCT.
- Motion compensation performs badly for this type
of data. - Key Point Compression effectiveness depends upon
the data
23Motion Compensation - Failure?
- Conventional motion compensation assumptions
- Distinct, opaque objects moving simply.
- Also, angiogram images contain high frequency
uncorrelated texture.
24Motion Compensation - Failure?
- Objects in angiograms are partially transparent.
- Image is made up of several layers of bones and
tissue, all moving differently. - Conventional motion compensation model doesnt
apply well.
25Region of Interest (ROI) Coder
- Aim is to shift the allocation of bits from
uninteresting areas of the image to more
interesting ones. - Makes more efficient use of the available bits.
26ROI Example Simple Case
ROI
non-ROI
27Example ROI coder
- Example of transferring bits from non-ROI to ROI
28ROI Simple Case - Results
RD Graph with ROI - DFD Data (Global MC - M.Black)
8
No ROI (baseline comparison)
ROI Distortion
7
Non-ROI Distortion
6
5
Distortion (RMS error)
4
3
2
1
0
0
0.5
1
1.5
2
2.5
3
3.5
4
Rate (bits/pixel)
- Much lower error in the ROI at the expense of the
non-ROI.
29Key Aim
- Reallocate bits from diagnostically unimportant
areas into diagnostically interesting ones
30Eye Tracking (proof of concept)
- Experiment to identify key areas of an angiogram
image.
31Example Results (Expert)
32Example Results (Sandra)
33Eye Tracking
- Significant areas of the image are not directly
examined.
34Quality Measure and Results
- Methods of measuring image quality
- Classical RMS - Measure of intensity level
difference for each pixel. - Perceptual measure - Takes in to account the
observer.
35Quality Measure and Results
- Perceptual measurement of image quality.
Poor
Perfect
1
2
3
4
5
Original
Compressed
36Whats next for video compression research?
- More efficient compression methods - to better
take advantage of data (e.g. object based) - Perceptual coding - introducing the viewer into
the equation
37Questions?