CSE 803: image compression Why? How much? How? Related benefits and liabilities.

Slides:



Advertisements
Similar presentations
15 Data Compression Foundations of Computer Science ã Cengage Learning.
Advertisements

Data Compression CS 147 Minh Nguyen.
Image Compression. Data and information Data is not the same thing as information. Data is the means with which information is expressed. The amount of.
CS Spring 2009 CS 414 – Multimedia Systems Design Lecture 4 – Digital Image Representation Klara Nahrstedt Spring 2009.
COLORCOLOR A SET OF CODES GENERATED BY THE BRAİN How do you quantify? How do you use?
Computer Vision: CSE 803 A brief intro MSU/CSE Fall 2014.
1 Motion in 2D image sequences Definitely used in human vision Object detection and tracking Navigation and obstacle avoidance Analysis of actions or.
Video Compression Bee Fong. Lossy Compression  Inter Frame Compression Compression among frames Compression among frames  Intra Frame Compression Compression.
Color: Readings: Ch 6: color spaces color histograms color segmentation.
CS 376b Introduction to Computer Vision 04 / 01 / 2008 Instructor: Michael Eckmann.
Stockman MSU Fall Computing Motion from Images Chapter 9 of S&S plus otherwork.
1 Motion in 2D image sequences Definitely used in human vision Object detection and tracking Navigation and obstacle avoidance Analysis of actions or.
T.Sharon-A.Frank 1 Multimedia Image Compression 2 T.Sharon-A.Frank Coding Techniques – Hybrid.
CS430 © 2006 Ray S. Babcock Lossy Compression Examples JPEG MPEG JPEG MPEG.
Lecture 6: Feature matching and alignment CS4670: Computer Vision Noah Snavely.
MSU Fall Computing Motion from Images Chapter 9 of S&S plus otherwork.
Data starts with width and height of image Then an array of pixel values (colors) The number of elements in this array is width times height Colors can.
Image Compression - JPEG. Video Compression MPEG –Audio compression Lossy / perceptually lossless / lossless 3 layers Models based on speech generation.
CS559-Computer Graphics Copyright Stephen Chenney Image File Formats How big is the image? –All files in some way store width and height How is the image.
CIS 601 Fall 2004 Introduction to Computer Vision and Intelligent Systems Longin Jan Latecki Parts are based on lectures of Rolf Lakaemper and David Young.
CS 1308 Computer Literacy and the Internet. Creating Digital Pictures  A traditional photograph is an analog representation of an image.  Digitizing.
1 Ethics of Computing MONT 113G, Spring 2012 Session 11 Graphics on the Web Limits of Computer Science.
CS Spring 2012 CS 414 – Multimedia Systems Design Lecture 8 – JPEG Compression (Part 3) Klara Nahrstedt Spring 2012.
ECE472/572 - Lecture 12 Image Compression – Lossy Compression Techniques 11/10/11.
Video Basics. Agenda Digital Video Compressing Video Audio Video Encoding in tools.
: Chapter 12: Image Compression 1 Montri Karnjanadecha ac.th/~montri Image Processing.
Klara Nahrstedt Spring 2011
Chapter 11 Fluency with Information Technology 4 th edition by Lawrence Snyder (slides by Deborah Woodall : 1.
1 Perception, Illusion and VR HNRS 299, Spring 2008 Lecture 14 Introduction to Computer Graphics.
CIS 601 Fall 2003 Introduction to Computer Vision Longin Jan Latecki Based on the lectures of Rolf Lakaemper and David Young.
1 Ethics of Computing MONT 113G, Spring 2012 Session 10 HTML Tables Graphics on the Web.
1 Imaging Techniques for Flow and Motion Measurement Lecture 2 Lichuan Gui University of Mississippi 2011 Digital Image & Image Processing.
Image Processing and Computer Vision: 91. Image and Video Coding Compressing data to a smaller volume without losing (too much) information.
1 Lecture 1 1 Image Processing Eng. Ahmed H. Abo absa
Data Compression. Compression? Compression refers to the ways in which the amount of data needed to store an image or other file can be reduced. This.
Still-image compression Moving-image compression and File types.
Chapter 7 – End-to-End Data Two main topics Presentation formatting Compression We will go over the main issues in presentation formatting, but not much.
CS 111 – Sept. 10 Quiz Data compression –text –images –sounds Commitment: –Please read rest of chapter 1. –Department picnic next Wednesday.
Chapter 2 : Imaging and Image Representation Computer Vision Lab. Chonbuk National University.
Addressing Image Compression Techniques on current Internet Technologies By: Eduardo J. Moreira & Onyeka Ezenwoye CIS-6931 Term Paper.
Quiz # 1 Chapters 1,2, & 3.
Data compression. lossless – looking for unicolor areas or repeating patterns –Run length encoding –Dictionary compressions Lossy – reduction of colors.
Digital Images are represented by manipulating this…
POWERPOINT PLUS 11/17/07 Class Notes. WHAT IS A PIXEL A pixel is a number that represents the intensity of light at a square spot in the picture. Pixels.
Digital Graphics for Computer Games Pixels Types of Digital Graphics (Raster and Vector) Compression.
Page 11/28/2016 CSE 40373/60373: Multimedia Systems Quantization  F(u, v) represents a DCT coefficient, Q(u, v) is a “quantization matrix” entry, and.
1 Perception and VR MONT 104S, Fall 2008 Lecture 20 Computer Graphics and VR.
Image File Formats By Dr. Rajeev Srivastava 1. Image File Formats Header and Image data. A typical image file format contains two fields namely Dr. Rajeev.
CS 376b Introduction to Computer Vision 03 / 31 / 2008 Instructor: Michael Eckmann.
CS Spring 2010 CS 414 – Multimedia Systems Design Lecture 4 – Audio and Digital Image Representation Klara Nahrstedt Spring 2010.
Motion Estimation Multimedia Systems and Standards S2 IF Telkom University.
Software Design and Development Storing Data Part 2 Text, sound and video Computing Science.
8th Lecture – Intro to Bitmap or Raster Images
Binary Representation in Audio and Images
Computer Science Higher
Data Compression.
JPG vs GIF vs PNG What is the difference?
Data Compression.
Color: Readings: Ch 6: color spaces color histograms
Notes on the color table and indexed color concept
Representing Images 2.6 – Data Representation.
Topic 3: Data Compression.
COMS 161 Introduction to Computing
GRAPHICAL DATA EXCHANGE FORMATS .jpg .gif .tif.
Image Coding and Compression
15 Data Compression Foundations of Computer Science ã Cengage Learning.
Coupled Horn-Schunck and Lukas-Kanade for image processing
Chapter 8 – Compression Aims: Outline the objectives of compression.
15 Data Compression Foundations of Computer Science ã Cengage Learning.
Presentation transcript:

CSE 803: image compression Why? How much? How? Related benefits and liabilities.

topics  color table concept:.gif files  brief notes on.jpg / wavelets, etc.  motion-JPG concept  metric for matching image regions  motion compensation in MPG

Color table: cheaper graphics  image has 8- bit pixels  each 8-bit number is an index into a color look up table  can change colors without changing image 512 x 512 RGB image with 3x8-bit color values requires 750K Bytes. 512 x bit codes = 256K Bytes x 3x8-bit color table =257K Bytes

GIF image format = image+table (plus other stuff)  header information  color table  image pixels (up to 8 bits each) LZW compressed  RGB data is stored in the color table and NOT in the image pixels themselves  get good compression and ability to quickly change the colors  there are only 256 different colors for any single image, but table RGB triples can be changed  gif files are very good for line drawings

Types of compression  Lossless: no information is lost; every bit of the original image can be recovered.  if an image has no more than 256 different color triples in it, then color table can exactly recreate it.  Lossy: information is approximated; the original image cannot be recovered exactly.  Suppose there are 1000 color triples in the original image but we replace each by the closest one of a set of 256 triples in color table; e.g. (218, 58, 150)  (220, 60, 150)

JPG primarily lossy  approximate 8 x 8 image blocks by sums of cosine waves  replace 64 intensities by coefficients  suppose 1.3 cos ( f(x,y) ) cos (g(x,y)) is a good approximation to the 8 x 8 intensity surface; then we only store 1.3 and 2.5.  2 coefficients replace 64 intensities

Interesting sidebar  can find 15 faces F1, F2, …, F15  such that your face looks like a1F1+a2F2+ …+a15F15.  therefore, your face is compressed to 15 numbers (weights)  example below uses an average of only 4 faces  how to find the “basis” F1, F2, …, F15 requires complex math and computing

“Eigenfaces” concept

Blackboard work on block matching  sum of squared pixel differences  mean-squared difference  sum of absolute values of pixel differences  all of the above are 0 when blocks are the same  all of the above get large as more pixels are different between the images

MPEG motion compression Video frame N and N+1 shows slight movement: most pixels are same, just in different locations.

Can code frame N+d with displacments relative to frame N  for each 16 x 16 block in the 2 nd image  find a closely matching block in the 1 st image  replace the 16x16 intensities by the location in the 1 st image (dX, dY)  256 bytes replaced by 2 bytes!

Frame approximation Left is original video frame N+1. Right is set of best image blocks taken from frame N. (Work of Dina Eldin)

Best matching blocks between video frames N+1 to N (motion vectors) The bulk of the vectors show the true motion of the airplane taking the pictures. The long vectors are incorrect motion vectors, but they do work well for image compression! Best matches from 2 nd to first image shown as vectors overlaid on the 2 nd image. (Work by Dina Eldin.)

Motion vectors clustered to show 3 coherent regions All motion vectors are clustered into 3 groups of similar vectors showing motion of 3 independent objects. (Dina Eldin)

Flow vectors resulting from camera motion Zooming a camera gives results similar to those we see when we move forward or backward in a scene. Panning effects are similar to what we see when we turn.

The Decathlete game (Left) Man makes running movements with arms. (Right) Display shows his avatar running. Camera controls speed and jumping according to his movements.

Program interprets motion (a)Opposite flow vectors means RUN; speed determined by vector magnitude. (b)Upward flow means JUMP. (c) Downward flow means COME DOWN.

Program analysis display (Top left) Video frame of the player. (Middle left) Flow from several frames. (Center) Jumping of the hurdles over time.

Requirements for interest points  Have unique multidirectional energy  Detected and located with confidence  Edge detector not good (1D energy only)  Corner detector is better (2D constraint)  Autocorrelation can be used for matching neighborhood from frame k to one from frame k+1  NHBD should have high energy

Matching interest point Can use normalized cross correlation or image difference.

Moving robot sensor 2 views and edges. Bottom right shows overlaid edge images.

MPEG motion compression  Some frames are encoded in terms of others.  Independent frame encoded as a still image using JPEG  Predicted frame encoded via flow vectors relative to the independent frame and difference image.  Between frame encoded using flow vectors and independent and predicted frame.

MPEG compression method I=F1 is an independent frame encoded via JPEG. P=F4 is a predicted frame. Each 16x16 block is matched to its closest match in P and represented by a motion vector and a difference image. Frames B1 and B2 between I and P are represented by two motion vectors per each 16 x 16 block.

Another idea  detect change in scene by histogram change – easier to do than match blocks  segment video automatically: Seinfeld restaurant vs Seinfeld apartment  can use motion vectors to dismiss changes due just to panning or zooming

Scene change: news TV

Detect via histogram change (Top) gray level histogram of intensities from frame 1 in newsroom. (Middle) histogram of intensities from frame 2 in newsroom. (Bottom) histogram of intensities from street scene. Histograms change less with pan and zoom of same scene.

Motion analysis on current frontier of computer vision  Surveillance and security  Video segmentation and indexing (check into Alex Jaimes IBM work, if time)  Robotics and autonomous navigation  Biometric diagnostics  Training/teaching