The Mathematics of Star Trek Workshop

Slides:



Advertisements
Similar presentations
Time-Frequency Analysis Analyzing sounds as a sequence of frames
Advertisements

Information Representation
Wavelets and Data Compression
The Binary Numbering Systems
What is a Wavelet? Haar Wavelet A wavelet is a function that has finite energy and has an average of zero. Here are some examples of mother wavelets:
School of Computing Science Simon Fraser University
Multimedia for the Web: Creating Digital Excitement Multimedia Element -- Graphics.
Multimedia Data The DCT and JPEG Image Compression Dr Mike Spann Electronic, Electrical and Computer.
Boyce/DiPrima 10th ed, Ch 10.2: Fourier Series Elementary Differential Equations and Boundary Value Problems, 10th edition, by William E. Boyce and Richard.
An Introduction to Scanning and Storing Photographs and Graphics Bryn Jones Aug 2002
Prepared by George Holt Digital Photography BITMAP GRAPHIC ESSENTIALS.
1 Ethics of Computing MONT 113G, Spring 2012 Session 11 Graphics on the Web Limits of Computer Science.
File Formats COM 366 Web Design & Layout. Native file format –Format native to software program –.psd > PhotoShop default Preserves layers –Use “Save.
1 Perception, Illusion and VR HNRS 299, Spring 2008 Lecture 14 Introduction to Computer Graphics.
ECE 8443 – Pattern Recognition ECE 3163 – Signals and Systems Objectives: Useful Building Blocks Time-Shifting of Signals Derivatives Sampling (Introduction)
Graphs of Functions. Text Example SolutionThe graph of f (x) = x is, by definition, the graph of y = x We begin by setting up a partial table.
WAVELET (Article Presentation) by : Tilottama Goswami Sources:
JPEG. The JPEG Standard JPEG is an image compression standard which was accepted as an international standard in  Developed by the Joint Photographic.
1 Ethics of Computing MONT 113G, Spring 2012 Session 10 HTML Tables Graphics on the Web.
JPEG CIS 658 Fall 2005.
10 | Graphics COM 366 Web Design & Production. Native file format –Format native to software program –psd > PhotoShop default Preserves layers –Use “Save.
Web Graphics. Colours and Display Graphics and Modems 28.8kbps = 3.6 KB per second 36 KB takes 10 seconds to load. Pixels and color.
Graphics An image is made up of tiny dots called pixels (“picture elements”) The resolution determines the.
Multimedia Data Introduction to Image Data Dr Sandra I. Woolley Electronic, Electrical and Computer.
Data Representation The storage of Text Numbers Graphics.
Digital Images are represented by manipulating this…
Image File Formats. What is an Image File Format? Image file formats are standard way of organizing and storing of image files. Image files are composed.
STATISTIC & INFORMATION THEORY (CSNB134) MODULE 11 COMPRESSION.
Software Design and Development Storing Data Part 2 Text, sound and video Computing Science.
Section 8.1 Section 8.2 Create a custom theme Design a color scheme
Ch 10.2: Fourier Series We will see that many important problems involving partial differential equations can be solved, provided a given function can.
How Has This Course Changed Your Perception of Digital Media
JPEG Compression What is JPEG? Motivation
Introduction to Programming
Microsoft Excel.
IMAGE COMPRESSION.
Binary Representation in Audio and Images
Statistical Analysis with Excel
Introduction to Programming
Presenter Name: Mahmood A.Moneim Supervised By: Prof. Hesham A.Hefny
JPEG.
Vocabulary byte - The technical term for 8 bits of data.
Vocabulary byte - The technical term for 8 bits of data.
Chapter III, Desktop Imaging Systems and Issues: Lesson IV Working With Images
Image quantization By Student Manar naji. quantization The values obtained by sampling a continuous function usually comprise of an infinite set or.
Look at Me Mod 4 Lesson 3 Graphics Module 4- Build a Game.
An Introduction to Scanning and Storing Photographs and Graphics
Windows Internet Explorer 7-Illustrated Essentials
Given f(x)= x4 –22x3 +39x2 +14x+120 , answer the following questions:
Microsoft Excel All editions of Microsoft office.
Data Representation.
Introduction to Programming
Representing Images 2.6 – Data Representation.
Web Design and Development
Computer Vision Lecture 16: Texture II
Computer Systems – Unit 1
Review of Fourier Series and Its Applications
Introduction to Programming
Fourier Analysis Lecture-8 Additional chapters of mathematics
Image Coding and Compression
Ch 6.1: Definition of Laplace Transform
Unit #1 Transformations
Digital Fluoroscopy PPT created by: Jed Miles, BSRS, RT(R), CRT-CA
Multimedia System Image
Introduction to Fourier Series
Licensed Electrical & Mechanical Engineer
Introduction to Programming
LECTURE 02: BASIC PROPERTIES OF SIGNALS
Wavelet Analysis Objectives: To Review Fourier Transform and Analysis
Presentation transcript:

The Mathematics of Star Trek Workshop Lecture 3: Wavelets and Data Compression

Topics Fourier Series Wavelets FBI Fingerprint Compression A Wavelet-Based Data Compression Scheme An Image Compression Example Averaging and Differencing

Fourier Series A function f(x) is said to be periodic with period a if f(x+a)=f(x) for all x in the domain of f. For a function f with period 2, the Fourier series of f is a sum of the form: a0 + n=11 (an cos nx + bn sin nx), where a0 = 1/(2) - f(x) dx, an = 1/  - f(x) cos nx dx, bn = 1/  - f(x) sin nx dx. Applications of Fourier series include solving partial differential equations and signal processing. Joseph Fourier (1768-1830) used this idea of writing a function as a sum of trigonometric functions in his study of the mathematical theory of heat conduction.

Fourier Series (cont.) For functions that are piecewise smooth, i.e. continuous and differentiable, except for a finite number of holes, jumps, or corners on any interval in the domain of f, the Fourier series of f will converge to f. For example, to the right is a graph of the step function: f(x) = 0 for -<x<0, f(x) = 1 for 0<x<. The first few terms of the step function’s Fourier series are shown to the right.

Wavelets Similar to Fourier series, Wavelets are mathematical functions that are used to represent data or other functions, by analyzing the data according to scale. Wavelets were developed independently in the fields of mathematics, quantum physics, electrical engineering, and seismic geology. Applications of wavelets include: Astronomy Acoustics Nuclear engineering More applications of wavelets: Signal and image processing Neurophysiology Music Magnetic resonance imaging Speech discrimination Optics Earthquake-prediction, Radar Human vision Solving partial differential equations

A Use of Wavelets: FBI Fingerprint Compression Since 1924, the US Federal Bureau of Investigation has collected over 200 million sets of fingerprints. Most fingerprint files are inked impressions on paper cards. Low-quality faxes of the impressions are sent out to law enforcement agencies. Various jurisdictions have been experimenting with digital storage of the prints, causing incompatibilities between data storage formats. To address this problem, the FBI's Criminal Justice Information Services Division, along with the National Institute of Standards and Technology (NIST), Los Alamos National Laboratory, commercial vendors, and criminal justice communities have developed standards for fingerprint digitization and compression.

A Use of Wavelets: FBI Fingerprint Compression (cont.) Here’s an image of a fingerprint which is made up of an array of size 768 x 768 = 589,824 numbers known as pixels. Each pixel is a number that represents a gray level ranging from black (minimum number) to white (maximum number). This image uses 256 = 28 levels of gray for each pixel. Thus, each pixel uses one byte of storage space on a computer and 589,824 bytes (~0.6 MB) are required to store the entire fingerprint. A pair of hands would require about 6 MB of storage!

A Use of Wavelets: FBI Fingerprint Compression (cont.) Since large amounts of data are needed to represent fingerprints in this way, it would be useful to find a way to use less data to describe the fingerprint. In the mid 1990’s, digitizing the FBI's archive would have resulted in about 2000 terabytes of data! Recall that 1 terabyte is 210 = 1024 gigabytes. Thus, at a cost of about $900 per gigabyte, the cost of storing these uncompressed images would be about 200 million dollars! Note that this cost estimate is based on data storage capacities and costs in the mid 1990’s – how would this compare to data storage capacities and costs today?

A Use of Wavelets: FBI Fingerprint Compression (cont.) Clearly, data compression would help with reducing the cost of data storage. Common compression standards such as JPEG (Joint Photographic Experts Group) format reduce the amount of data required, but do not provide enough detail upon recovery of the image after compression. (See the next slide - notice the blocking that occurs in the recovered image.) One way to compress data and be able to recover sufficient detail to be useful is via wavelets. (See the slide after the next slide.)

A Use of Wavelets: FBI Fingerprint Compression (cont.) Original Image 12.9:1 JPEG Compression

A Use of Wavelets: FBI Fingerprint Compression (cont.) Original Image 12.9:1 Wavelet Compression

A Wavelet-Based Data Compression Scheme We now illustrate one way to compress data that is essentially what is being done with wavelet compression! Consider the following string of eight pieces of data, which could be data from a function or data from an 8 x 8 pixel image: 64 48 16 32 56 56 48 24. By performing a process known as averaging and differencing (we’ll see how this is done later), this data is transformed into a new set of data made up of one average (in italics) and seven detail coefficients (in bold): 43 -3 16 10 8 -8 0 12. This process can be reversed to recover the original data! Note that for this example there are six non-zero detail coefficients. A transformation of data of this type is known as lossless compression, since no information is lost.

A Wavelet-Based Data Compression Scheme (cont.) If we replace the -3 detail coefficient with 0 and reverse the averaging and differencing process, we will get an approximation to our original data, using five non-zero detail coefficients (instead of six): 67 51 19 35 53 53 45 21. If we also replace the -8 and 8 detail coefficients with 0, we will get an approximation to our original data, using only three non-zero detail coefficients: 59 59 27 27 53 53 45 21.

A Wavelet-Based Data Compression Scheme (cont.) When detail coefficients are replaced with zeros, we are performing lossy compression at a threshold level , where any coefficient whose magnitude is less than  is set to zero. Thus, replacing –3, -8, and 8 with a zero corresponds to lossy compression at a threshold level of 8.

A Wavelet-Based Data Compression Scheme (cont.) Here are graphs of the original data (black curves) and the approximations (red curves) to the original data:

A Wavelet-Based Data Compression Scheme (cont.) Since picture data is just a string of numbers describing gray levels, the idea of lossy compression can be used to reduce the amount of information needed to be stored for a picture! Below, from left to right, are the original picture of Emmy Noether, along with pictures that have been compressed using 4% and 1% of the detail coefficients!

Compressing an Image! Using the software Wavcomp, we can actually compress images! Try this with Albert Einstein's picture! Directions follow on how to do this from any lab computer on campus.

An Image Compression Example (cont.) On the web page http://faculty.gvsu.edu/aboufade/web/wavelets/software.htm, click on the Wavcomp link to download the file wavcomp.zip. Extract the contents of this folder to the Windows Desktop. Click on the File menu and choose Open Picture. Double click on one of the *.isc files. For example, choosing fprintx1.isc will select a picture of a fingerprint. Click on the Compress menu and choose Start Compression. A new window will appear. Choose OK. A new window will appear with a number (often it will be 1.125) in a box labeled Threshold Level. Type in a number greater than or equal to zero. Then choose OK. A new box will appear that tells how many data coefficients have been discarded and the total number of data in the original image. Click OK. Expand the compression window and compare the original image to the new image! Note: This software is for 32-bit Windows machines.

Averaging and Differencing We now look at how to apply the averaging and differencing scheme for data compression! Given a row of 2n values of data, such as 64 48 16 32 56 56 48 24 (in this case n = 3), create n new rows of data as follows: First, find the average of successive pairs: (64+48)/2 = 112/2 = 56, (16+32)/2 = 48/2 = 24, (56+56)/2 = 112/2 = 56, (48+24)/2 = 72/2 = 36. Write these four averages in a second row below the first row of data, in order:

Averaging and Differencing (cont.) Row 1: 64 48 16 32 56 56 48 24 Row 2: 56 24 56 36 Next compute the difference between the first element of a pair in Row 1 and the corresponding average in Row 2. 64 - 56 = 8, 16 - 24 = -8, 56 - 56 = 0, 48 - 36 = 12.

Averaging and Differencing (cont.) These differences fill out the remaining four entries of Row 2, in order. Thus we have: Row 1: 64 48 16 32 56 56 48 24 Row 2: 56 24 56 36 8 -8 0 12

Averaging and Differencing (cont.) For the next row, Row 3, apply averaging and differencing to the first four entries of Row 2. The last four entries are the same as the last four entries of Row 2: Row 1: 64 48 16 32 56 56 48 24 Row 2: 56 24 56 36 8 -8 0 12 Row 3: 40 46 16 10 8 -8 0 12

Averaging and Differencing (cont.) Row 4 is obtained by applying averaging and differencing to the first pair of numbers in Row 3 and reproducing the remaining entries from Row 3: Row 1: 64 48 16 32 56 56 48 24 Row 2: 56 24 56 36 8 -8 0 12 Row 3: 40 46 16 10 8 -8 0 12 Row 4: 43 -3 16 10 8 -8 0 12 Note that the first entry in Row 4, namely 43, is the average of all eight numbers in Row 1! (HW - check why this is true.)

References The wavelet introduction and FBI example come from the paper “An Introduction to Wavelets” by Amara Graps (IEEE Computational Science and Engineering, Summer 1995, vol. 2, no. 2, http://web.archive.org/web/20121226011210/http://www.amara.com/IEEEwave/IEEEwavelet.html and Chris Brislawn’s paper: http://www.ams.org/notices/199511/brislawn.pdf. The examples of data compression and the pictures of Emmy Noether are from the paper “Plotting & Scheming With Wavelets” by Colm Mulcahy (Mathematics Magazine, Vol 69, No 5, December 1996, 323-343, which can be found here: http://www5.spelman.edu/~colm/wav.html. “Wavcomp”, written by Mochan Shrestha a student at Grand Valley State University can be downloaded from: http://faculty.gvsu.edu/aboufade/web/wavelets/software.htm. The brief introduction to Fourier series is from Boundary Value Problems, 5th edition, by David Powers, 2006.