Image and Video Processing

Similar documents
Digital Image Processing. Lecture # 3 Image Enhancement

Introduction to DSP ECE-S352 Fall Quarter 2000 Matlab Project 1

ECC419 IMAGE PROCESSING

Image Processing. Michael Kazhdan ( /657) HB Ch FvDFH Ch. 13.1

DIGITAL IMAGE PROCESSING (COM-3371) Week 2 - January 14, 2002

What is an image? Images and Displays. Representative display technologies. An image is:

Lecture 2 Digital Image Fundamentals. Lin ZHANG, PhD School of Software Engineering Tongji University Fall 2016

Image Processing for Mechatronics Engineering For senior undergraduate students Academic Year 2017/2018, Winter Semester

Human Vision, Color and Basic Image Processing

Computer Graphics. Si Lu. Fall er_graphics.htm 10/02/2015

Images and Displays. Lecture Steve Marschner 1

BBM 413! Fundamentals of! Image Processing!

BBM 413 Fundamentals of Image Processing. Erkut Erdem Dept. of Computer Engineering Hacettepe University. Point Operations Histogram Processing

Digital Image Processing

Image Processing (EA C443)

Digital Image Processing

BBM 413 Fundamentals of Image Processing. Erkut Erdem Dept. of Computer Engineering Hacettepe University. Point Operations Histogram Processing

Digital Image Fundamentals. Digital Image Processing. Human Visual System. Contents. Structure Of The Human Eye (cont.) Structure Of The Human Eye

Digital Image Fundamentals. Digital Image Processing. Human Visual System. Contents. Structure Of The Human Eye (cont.) Structure Of The Human Eye

Digital Image Processing

Chapter 2: Digitization of Sound

Computer Assisted Image Analysis 1 GW 1, Filip Malmberg Centre for Image Analysis Deptartment of Information Technology Uppsala University

Non Linear Image Enhancement

SECTION I - CHAPTER 2 DIGITAL IMAGING PROCESSING CONCEPTS

Fig 1: Error Diffusion halftoning method

Cvision 2. António J. R. Neves João Paulo Silva Cunha. Bernardo Cunha. IEETA / Universidade de Aveiro

Filters. Materials from Prof. Klaus Mueller

Chapter 9 Image Compression Standards

CS 548: Computer Vision REVIEW: Digital Image Basics. Spring 2016 Dr. Michael J. Reale

Chapter 2: Digital Image Fundamentals. Digital image processing is based on. Mathematical and probabilistic models Human intuition and analysis

Graphics and Image Processing Basics

What is an image? Bernd Girod: EE368 Digital Image Processing Pixel Operations no. 1. A digital image can be written as a matrix

Digital Image Processing Introduction

Lecture 2: Digital Image Fundamentals -- Sampling & Quantization

Image Processing: An Overview

Image Processing for feature extraction

Chapter 8. Representing Multimedia Digitally

Fundamentals of Multimedia

Monochrome Image Reproduction

Images and Displays. CS4620 Lecture 15

The Scientist and Engineer's Guide to Digital Signal Processing By Steven W. Smith, Ph.D.

Image Processing. Image Processing. What is an Image? Image Resolution. Overview. Sources of Error. Filtering Blur Detect edges

Digital Image Processing

CS 465 Prelim 1. Tuesday 4 October hours. Problem 1: Image formats (18 pts)

Computers and Imaging

SAMPLING THEORY. Representing continuous signals with discrete numbers

Digitizing Color. Place Value in a Decimal Number. Place Value in a Binary Number. Chapter 11: Light, Sound, Magic: Representing Multimedia Digitally

Introduction. Prof. Lina Karam School of Electrical, Computer, & Energy Engineering Arizona State University

ECE 556 BASICS OF DIGITAL SPEECH PROCESSING. Assıst.Prof.Dr. Selma ÖZAYDIN Spring Term-2017 Lecture 2

image Scanner, digital camera, media, brushes,

The BIOS in many personal computers stores the date and time in BCD. M-Mushtaq Hussain

5/17/2009. Digitizing Color. Place Value in a Binary Number. Place Value in a Decimal Number. Place Value in a Binary Number

Prof. Feng Liu. Fall /02/2018

ANTI-COUNTERFEITING FEATURES OF ARTISTIC SCREENING 1

Image Processing COS 426

קורס גרפיקה ממוחשבת 2008 סמסטר ב' Image Processing 1 חלק מהשקפים מעובדים משקפים של פרדו דוראנד, טומס פנקהאוסר ודניאל כהן-אור

Images and Graphics. 4. Images and Graphics - Copyright Denis Hamelin - Ryerson University

OFFSET AND NOISE COMPENSATION

CHAPTER 8 Digital images and image formats

IMAGE PROCESSING Vedat Tavşanoğlu

Antialiasing and Related Issues

Lecture Notes 11 Introduction to Color Imaging

MULTIMEDIA SYSTEMS

Colors in Images & Video

Sampling and pixels. CS 178, Spring Marc Levoy Computer Science Department Stanford University. Begun 4/23, finished 4/25.

Image and video processing (EBU723U) Colour Images. Dr. Yi-Zhe Song

Image acquisition. In both cases, the digital sensing element is one of the following: Line array Area array. Single sensor

Demosaicing Algorithms

LECTURE 07 COLORS IN IMAGES & VIDEO

Acquisition and representation of images

Color images C1 C2 C3

Unit 8: Color Image Processing

Image Processing. What is an image? קורס גרפיקה ממוחשבת 2008 סמסטר ב' Converting to digital form. Sampling and Reconstruction.

Image processing. Image formation. Brightness images. Pre-digitization image. Subhransu Maji. CMPSCI 670: Computer Vision. September 22, 2016

Color & Compression. Robin Strand Centre for Image analysis Swedish University of Agricultural Sciences Uppsala University

Prof. Feng Liu. Fall /04/2018

Assistant Lecturer Sama S. Samaan

Acquisition and representation of images

MATLAB Image Processing Toolbox

LAB 2: Sampling & aliasing; quantization & false contouring

Color Image Processing

Images. CS 4620 Lecture Kavita Bala w/ prior instructor Steve Marschner. Cornell CS4620 Fall 2015 Lecture 38

Camera Image Processing Pipeline

Solution Set #2

DIGITAL IMAGE PROCESSING Quiz exercises preparation for the midterm exam

Lecture 1: image display and representation

Image Processing Computer Graphics I Lecture 20. Display Color Models Filters Dithering Image Compression

IMAGE ENHANCEMENT - POINT PROCESSING

Vision, Color, and Illusions. Vision: How we see

2.1. General Purpose Run Length Encoding Relative Encoding Tokanization or Pattern Substitution

Lecture 3: Grey and Color Image Processing

DSP First Lab 06: Digital Images: A/D and D/A

Course Objectives & Structure

Digital Image Processing. Lecture # 6 Corner Detection & Color Processing

Introduction to Color Theory

IMAGE PROCESSING >COLOR SPACES UTRECHT UNIVERSITY RONALD POPPE

INSTITUTIONEN FÖR SYSTEMTEKNIK LULEÅ TEKNISKA UNIVERSITET

Announcements. Image Processing. What s an image? Images as functions. Image processing. What s a digital image?

For a long time I limited myself to one color as a form of discipline. Pablo Picasso. Color Image Processing

Fig Color spectrum seen by passing white light through a prism.

Transcription:

Image and Video Processing () Image Representation Dr. Miles Hansard miles.hansard@qmul.ac.uk

Segmentation 2

Today s agenda Digital image representation Sampling Quantization Sub-sampling Pixel interpolation 3

Today s agenda Digital image representation Sampling Quantization Sub-sampling Pixel interpolation 4

Image and video processing Relationship between image & video processing and signal processing Signal processing Image and video processing Analysis Compression 5

Image and video processing Relationship between image & video processing and signal processing Capture Signal Processing Image and video processing Human Visual System Display 6

Introduction Complete image & video processing flow diagram real world (4D) capture processing display human visual system 7

Analogue to digital Colour in the real world and how humans perceive it Input of colour images to PC via scanner or camera Conversion to digital rep. for storage, transmission, display & printing 8

Continuous image representation An image can be represented f ( x, y) with a function defined on a support D the variables x and y represent the coordinates of an image point in the space, with the value of the function (real number) that defines the grey level associated to the point (x,y) Y y 0,0 x X 9

Discrete image representation Consider a digital image g(i,j) of size M N. Array representation in C, C++ or Java: g( i, j) g(0,0) g(1,0) g( M 2,0) g( M 1,0) g(0,1) g(1,1) g( M 2,1) g( M 1,0) s(0, N 2) s(1, N 2) g( M 2, N 2) g( M 1, N 2) g(0, N 1) g(1, N 1) g( M 2, N 1) g( M 1, N 1) 10

Be careful! 0,Y X,Y Cartesian: x,y 0,0 X,0 0,0 0,N-1 1,1 1,N C/C++/Java: i,j Matlab: i,j M-1,0 M-1,N-1 M,1 M,N 11

Pictorial intensity representation For simplicity, a grey-level image can be represented as a table, with each cell representing a pixel of the image 12

Pictorial colour representation A colour image can be represented with its components Each component is then represented as a grey-level image R G B 13

What is a pixel? It is not a little square! It is a sample from a continuous 2D function Where does the word come from? When was the word invented? 14

What is an image? This 1D function (time series) is not an image What about if we chop it up, and stack into a 2D table? Then it is a 2D function (month,year) temperature But is that an image?

Are these images? Violin sound Speech: nineteenth century These are audio spectrograms They are 2D functions (time,frequency) energy. But are they images?

An intuitive definition Recall the definition as a mapping (x,y) F(x,y) Intuitively, x and y should be spatial coordinates So they should have the same units Could be pixels or degrees of visual angle 2D rotation and translation should make sense No special coordinates, like time or temperature Think of looking down and photographing objects on a table-top (no horizon!) There would be no preferred direction

An exception White-noise time series f(t) Chop and stack into a 2D table This 2D table is an image (in my opinion) Rotation and translation make sense, because there is no structure in F(x,y) by definition

Today s agenda Digital image representation Sampling Quantization Sub-sampling Pixel interpolation 19

Digitization 1D Why do we need to digitize? Microphones, video cameras produce analogue signals (continuous-valued voltages) To get audio or video into a computer, we must digitize it by converting it into a stream of bits Amplitude Time One Period 20

Digitization Sampling Divide the time axis into discrete pieces Quantization Divide the vertical axis (signal strength - voltage) into pieces 8-bit quantization divides the vertical axis into 256 levels 16 bit 65536 levels. The lower the quantization the lower the quality of the signal 21

Sample Sampling Sampling rate number of samples per second (measured in Hz) Time Sampling 22

Sample Example Quantization 3-bit quantization 8 possible sample values Digitization is the reason to do quantization 3-bit quantization Time 23

For lossless digitization Nyquist theorem the sampling rate should be at least twice the maximum frequency responses Sampling once a cycle coded as constant signal Sampling 1.5 times each cycle coded as low freq. signal 24

2D Domain Image representation - pixels A single sampling position and its function value Sampling Positions 25

What does this mean? Function values at discrete grid points 0 200 128 60 128 60 128 60 26

Digital images A digital image is a array of pixel values E.g., in the 2D case the image data contains information of the graylevel at each position in the image Magnified pixels at few sampling positions 27

Digital images 94 100 104 119 125 136 143 153 157 158 103 104 106 98 103 119 141 155 159 160 109 136 136 123 95 78 117 149 155 160 110 130 144 149 129 78 97 151 161 158 109 137 178 167 119 78 101 185 188 161 100 143 167 134 87 85 134 216 209 172 104 123 166 161 155 160 205 229 218 181 125 131 172 179 180 208 238 237 228 200 131 148 172 175 188 228 239 238 228 206 161 169 162 163 193 228 230 237 220 199 Pixels Corresponding array 28

A digital image 134 135 132 12 15... 133 134 133 133 11... 130 133 132 16 12... 137 135 13 14 13... 140 135 134 14 12... 29

Image digitization digitizer (e.g.,scanner) Scene g(i,j) 30

Image digitization The continuous image domain is scanned - the brightness values are measured or sampled at discrete locations to form an array of intensity values sampler Continuous domain g(i,j) array of sampling positions 31

What about cameras? Each CCD-element measures scalar intensity So we need to filter the light, and measure each spectral band How can this be done on a rectangular array? Bayer filter (standard) Fuji EXR 32

Retinal cone mosaic What about eyes? Very few blue cones (none in fovea) 33

Scanline Converting the continuous 2D signal in a digital image by sampling per scanlines 34

Example 35

Image sampling 36

Image sampling 512 37

Image sampling 256 38

Image sampling 128 39

Image sampling 64 40

Image sampling 32 41

Image resolution Full resolution 1/4 resolution 42

Image resolution Full resolution 1/8 resolution 43

Low resolution The image appears blocky To accurately represent the original continuous scene, the sampling rate must be sufficiently high 1/8 resolution 44

Image sampling methods Uniform - same sampling frequency everywhere Adaptive - higher sampling frequency in areas with greater detail - compression strategy 45

Sampling effects How to represent this line with discrete pixel values? 46

Sampling effects Standard midpoint line on a binary representation Representing a line with discrete pixel values can lead to sampling error and loss of information 47

Sampling effects Sampling Effects Same line with twice the linear resolution 48

Sampling effects Sampling errors in representing a line Doubling resolution does not solve the problem It costs 4 times memory, bandwidth and scan conversion time! The problem can be alleviated using more grey-levels 49

Relationship between pixels Depending on the neighbourhood definition, a pixel has 4 or 8 neighbours 4-neighbourhood: each neighbour shares a single edge with the pixel 8-neighbourhood: each neighbour shares an edge or a corner with the pixel 50

Shape representation 51

Shape representation internal external inter-pixel 4-neighbourhood 8-neighbourhood 52

Alternative sampling schemes Cartesian sampling pattern is convenient Is it optimal in any formal sense? Hexagonal lattice is more isotropic. Less important for high-resolution images. 53

Quantization g(i, j) Quantizer Each element in the matrix is quantized, i.e, replaced by an integer Quantized values are called gray levels 54

Digital image visualization Each pixel in the image is usually shown by a single pixel on the screen Example for L = 256 gray levels 0 maps into black 255 into white values in between map linearly into various levels of gray Image Screen 0 0 0 0 0 127 255 0 255 127 0 0 0 0 0 0 55

Gray level of image Intensity resolution Intensity resolution - refers to how accurately a pixel s gray level represents the brightness of the corresponding point in the original scene - during quantization, the brightness sampled at each point in the continuous-tone image is replaced by an integer value 7 B = 3 bits 0 Scene brightness f max 56

Quantization formula First round the signal f to the nearest number of steps Then multiply the count by the step-size Δ g = sign(f) floor f + 1 2 floor(x) is the largest integer that is smaller than x 57

Intensity resolution Intensity resolution depends on the number of bits available Digital image quantized with 8 bits (256 gray levels) Note that the image appears continuous 58

Intensity resolution The same image quantized with only 4 bits (16 gray levels) Now the image brightness appears discontinuous 59

Intensity resolution Intensity resolution -with fewer bits, we cannot accurately represent the gradual intensity variations in the original scene because a wider range of intensities in the original scene is mapped into a single gray level - generally: more bits better brightness resolution 60

Dithering and halftoning Dithering and halftoning used to render images and graphics with more apparent colours than are actually displayable when the HVS is confronted with large regions of high-frequency colour changes they tend to blend the individual colours into uniform colour field use this property of perception to represent colours that cannot be directly represented 61

Artistic halftoning 62

Classical halftoning Classical halftoning uses dots of various sizes to represent intensity used in newspapers and magazines 63

Example 64

Halftoning examples 65

Halftoning with pixel patterns 66

Dithering HVS can discern ~100 brightness levels depends on hue and ambient lighting (e.g., we can see more distinct shades of green than blue) True-colour displays 256 colours available for each primary usually adequate under normal indoor lighting (when the nonlinearities of the display are properly compensated for) usually no need to dither a true-colour display High-colour displays only 32 shades of each primary HVS sees contours between two colours that vary by only one level HVS even amplifies the variation! This apparent amplification of contours is called Mach-banding need dithering 67

Dithering Dithering process of juxtaposing pixels of two colours to create the illusion that a third colour is present largely used in printed media (newsprint, laser printers) 68

Another example Original image and four-colour version: 69

Zoomed 70

Dithering Dithering requires the addition of spatial offsets to the original pixels can be summarized as a quantization process where noise has been introduced to the input The character of the dither is determined entirely by the structure of the noise This noise can be regular (a repeated signal that is independent of either the input or output) correlated (a signal that is related to the input) random or some combination Note: Dithering decreases the SNR yet improves the perceived quality of the output 71

image intensity image intensity Quantization methods Uniform or linear - intensity of object is lineary mapped to gray-levels of image Logarithmic - higher intensity resolution in darker areas (the human eye is logarithmic) object intensity object intensity 72

Gamma transformation Transform the intensity by power, gamma f = f γ Emphasize dark regions if γ < 1, or emphasise bright regions if γ > 1 Models human perception 73

Common quantization levels g(i,j) is given by integer values [0-max], max=2 n -1 n=1 ------------------------- binary image n=8 ------------------------- 1 byte, very common n=16 ------------------------- common in research n=24 ------------------------- common in color images (i.e. 3*8 for RGB) 74

Gray-level quantization 256 75

Gray-level quantization 32 76

8 Gray-level quantization 77

2 Gray-level quantization 78

quantization index Non-uniform quantization Non-uniform quantization Better choice when probability density of a signal is not uniform Allow to take into account the characteristics of the HVS output black white input 79

Quantizing colour images Each component can be quantized separately Easy, but not very satisfactory (see next slide) Some colour compontents can be Quantized with different steps Sampled with different steps Quantization of a colour image with a Look-Up Table (LUT) 80

original Colour Quantization quantized Algorithm chooses a number of colours (sites) in the Red/Green plane Central plot shows Voronoi regions: all points closer to this site than any other 81

B G R Look-up table (LUT) Valeur value R G B 0 10 10 10 1 10 20 30 2 30 100 20............ True colours Look-up table 82

False colour images A special look-up table... Colour Grey 83

Example original image false colour image 84

Choice of sampling and quantization What will the image be used for? What are the limitations in memory and speed? Will the image be used for visual interpretation only or for any image analysis/processing? What information is relevant for the analysis (i.e. color, spatial and/or gray-level resolution)? 85

Old BBC TV test-card Note the grey-level steps, straight lines, and fine-stripes. 86

Zooming and shrinking Zooming Can be seen as over sampling Creation of new pixel locations Assignment of grey level to those locations Pixel replication (NN) Bilinear interpolation Shrinking Can be seen as under sampling 87

Today s agenda Digital image representation Sampling Quantization Sub-sampling Pixel interpolation 88

Sub-sampling Pixels are removed according to a given pattern original sampling 2:1 subsampling 89

Sub-sampling 4:1 subsampling 8:1 subsampling 90

Image sub-sampling original sampling 512x512 128x128 64x64 32x32 91

Objective to increase the resolution Procedure Up-sampling requires generation of additional pixels from available ones usually geometric transforms require interpolation Example the simplest form is approximation by the nearest available pixel 92

Nearest neighbour interpolation Pixels are generated by copying the nearest available pixel?? 93

General interpolation Forward mapping map the input grid to non-integer-located positions in the output image interpolate to obtain pixels on the output image problem redundant conversions (adjacent output pixels may use same data) Backward interpolation estimate integer output grid inverse map integer output grid estimate pixels at input (continuous image by interpolation) preferred method it only converts data required for generating output pixels 94

Bilinear interpolation Assumes 4 pixels on a regular grid are known Pixels inside can be interpolated?? 95

Bilinear interpolation 96

Bilinear interpolation Mathematical solution is over-determined using a plane (only 3 points needed) Bilinear use the simplest second order form f x, y ax by cxy d interpolate linear on each horizontal edge interpolate linear in the vertical direction using obtained results 97

Fourier information Fourier transform splits the image into Amplitude and Phase spectra Interesting experiment, using two images Compute (A1,P1) and (A2,P2) Reconstruct from (A1,P2) and (A2,P1) Phase is perceptually more important than amplitude. Example from Skarbnik et al. 98

What did we learn today? Digital image representation Sampling Quantization Sub-sampling Pixel interpolation 99