Miguel Tavares Coimbra

Slides:



Advertisements
Similar presentations
Grey Level Enhancement Contrast stretching Linear mapping Non-linear mapping Efficient implementation of mapping algorithms Design of classes to support.
Advertisements

Chapter 3 Image Enhancement in the Spatial Domain.
Chapter - 2 IMAGE ENHANCEMENT
ECE 472/572 - Digital Image Processing
1 Video Processing Lecture on the image part (8+9) Automatic Perception Volker Krüger Aalborg Media Lab Aalborg University Copenhagen
Image Segmentation Image segmentation (segmentace obrazu) –division or separation of the image into segments (connected regions) of similar properties.
DREAM PLAN IDEA IMPLEMENTATION Introduction to Image Processing Dr. Kourosh Kiani
Image Analysis Preprocessing Image Quantization Binary Image Analysis
Image Processing : Computational Photography Alexei Efros, CMU, Fall 2006 Some figures from Steve Seitz, and Gonzalez et al.
Digital Image Processing
Digital Image Processing Chapter 2: Digital Image Fundamentals.
Digital Image Fundamentals
IMAGE 1 An image is a two dimensional Function f(x,y) where x and y are spatial coordinates And f at any x,y is related to the brightness at that point.
Mestrado em Ciência de Computadores Mestrado Integrado em Engenharia de Redes e Sistemas Informáticos VC 14/15 – TP9 Region-Based Segmentation Miguel Tavares.
1 Image Processing(IP) 1. Introduction 2. Digital Image Fundamentals 3. Image Enhancement in the spatial Domain 4. Image Enhancement in the Frequency Domain.
Image Processing I : Rendering and Image Processing Alexei Efros …with most slides shamelessly stolen from Steve Seitz and Gonzalez & Woods.
Spectral contrast enhancement
Mestrado em Ciência de Computadores Mestrado Integrado em Engenharia de Redes e Sistemas Informáticos VC 14/15 – TP3 Digital Images Miguel Tavares Coimbra.
Digital Image Processing
Digital Image Fundamentals II 1.Image modeling and representations 2.Pixels and Pixel relations 3.Arithmetic operations of images 4.Image geometry operation.
Mestrado em Ciência de Computadores Mestrado Integrado em Engenharia de Redes e Sistemas Informáticos VC 14/15 – TP19 Neural Networks & SVMs Miguel Tavares.
Lecture Three Chapters Two and three Photo slides from Digital Image Processing, Gonzalez and Woods, Copyright 2002.
Digital Image Processing CCS331 Relationships of Pixel 1.
CIS 601 Image ENHANCEMENT in the SPATIAL DOMAIN Dr. Rolf Lakaemper.
Mestrado em Ciência de Computadores Mestrado Integrado em Engenharia de Redes e Sistemas Informáticos VC 14/15 – TP8 Segmentation Miguel Tavares Coimbra.
Chapter 10 Image Segmentation.
AdeptSight Image Processing Tools Lee Haney January 21, 2010.
Mestrado em Ciência de Computadores Mestrado Integrado em Engenharia de Redes e Sistemas Informáticos VC 14/15 – TP6 Frequency Space Miguel Tavares Coimbra.
Mestrado em Ciência de Computadores Mestrado Integrado em Engenharia de Redes e Sistemas Informáticos VC 15/16 – TP4 Colour and Noise Miguel Tavares Coimbra.
Digital Image Processing (DIP) Lecture # 5 Dr. Abdul Basit Siddiqui Assistant Professor-FURC 1FURC-BCSE7.
Image Processing Fundamental II Operation & Transform.
Digital image consist of very small elements called pixels.
CS482 Selected Topics in Digital Image Processing بسم الله الرحمن الرحيم Instructor: Dr. Abdullah Basuhail,CSD, FCIT, KAU, 1432H Chapter 2: Digital Image.
Miguel Tavares Coimbra
CIS 601 – 04 Image ENHANCEMENT in the SPATIAL DOMAIN Longin Jan Latecki Based on Slides by Dr. Rolf Lakaemper.
Digital Image Processing In The Name Of God Digital Image Processing Lecture2: Digital Image Fundamental M. Ghelich Oghli By: M. Ghelich Oghli
CS654: Digital Image Analysis Lecture 5: Pixels Relationships.
Mestrado em Ciência de Computadores Mestrado Integrado em Engenharia de Redes e Sistemas Informáticos VC 15/16 – TP14 Pattern Recognition Miguel Tavares.
Digital Image Processing EEE415 Lecture 3
Mestrado em Ciência de Computadores Mestrado Integrado em Engenharia de Redes e Sistemas Informáticos VC 15/16 – TP7 Spatial Filters Miguel Tavares Coimbra.
Miguel Tavares Coimbra
Digital Image Processing CSC331 Image Enhancement 1.
CDS 301 Fall, 2008 Image Visualization Chap. 9 November 11, 2008 Jie Zhang Copyright ©
Digital Image Processing
Mestrado em Ciência de Computadores Mestrado Integrado em Engenharia de Redes e Sistemas Informáticos VC 15/16 – TP10 Advanced Segmentation Miguel Tavares.
Chapter 8 Computer Vision. Artificial IntelligenceChapter 92 Contents What is Image Processing? Digital Image Processing Electromagnetic Spectrum Steps.
Some Basic Relationships Between Pixels Definitions: –f(x,y): digital image –Pixels: q, p –Subset of pixels of f(x,y): S.
Digital Image Processing Image Enhancement in Spatial Domain
Digital Image Processing, 2nd ed. © 2002 R. C. Gonzalez & R. E. Woods Chapter 3 Image Enhancement in the Spatial Domain Chapter.
Chapter 6 Skeleton & Morphological Operation. Image Processing for Pattern Recognition Feature Extraction Acquisition Preprocessing Classification Post.
Image Processing Chapter(3) Part 1:Relationships between pixels Prepared by: Hanan Hardan.
Relationship between pixels Neighbors of a pixel – 4-neighbors (N,S,W,E pixels) == N 4 (p). A pixel p at coordinates (x,y) has four horizontal and vertical.
Digital Image Processing CCS331 Relationships of Pixel 1.
Image Enhancement in the Spatial Domain.
Some Basic Relationships Between Pixels
Miguel Tavares Coimbra
Lecture Six Figures from Gonzalez and Woods, Digital Image Processing, Second Edition, Copyright 2002.
Miguel Tavares Coimbra
Miguel Tavares Coimbra
Miguel Tavares Coimbra
Miguel Tavares Coimbra
Miguel Tavares Coimbra
CIS 601 – 03 Image ENHANCEMENT SPATIAL DOMAIN Longin Jan Latecki
Miguel Tavares Coimbra
CSC 381/481 Quarter: Fall 03/04 Daniela Stan Raicu
Digital Image Processing
CIS 4350 Image ENHANCEMENT SPATIAL DOMAIN
Miguel Tavares Coimbra
Miguel Tavares Coimbra
Presentation transcript:

Miguel Tavares Coimbra VC 14/15 – TP5 Single Pixel Manipulation Mestrado em Ciência de Computadores Mestrado Integrado em Engenharia de Redes e Sistemas Informáticos Miguel Tavares Coimbra

Outline Dynamic Range Manipulation Neighborhoods and Connectivity Image Arithmetic Example: Background Subtraction VC 14/15 - TP5 - Single Pixel Manipulation

Topic: Dynamic Range Manipulation Neighborhoods and Connectivity Image Arithmetic Example: Background Subtraction VC 14/15 - TP5 - Single Pixel Manipulation

Manipulation What I see What I want to see VC 14/15 - TP5 - Single Pixel Manipulation

Digital Images To change this... I need to change this! What we see What a computer sees What we see I need to change this! VC 14/15 - TP5 - Single Pixel Manipulation

Pixel Manipulation Let’s start simple I want to change a single Pixel. Or, I can apply a transformation T to all pixels individually. VC 14/15 - TP5 - Single Pixel Manipulation

Image Domain I am directly changing values of the image matrix. So, what is the other possible ‘domain’? 3 3 VC 14/15 - TP5 - Single Pixel Manipulation

What operation T allows me to obtain this result? Image Negative What operation T allows me to obtain this result? g=T(f) What I see What I want to see VC 14/15 - TP5 - Single Pixel Manipulation

Image Negative Consider the maximum value allowed by quantization (max). For 8 bits: 255 Then: What I want to see VC 14/15 - TP5 - Single Pixel Manipulation

Dynamic Range Manipulation What am I really doing? Changing the response of my image to the received brightness. Dynamic Range Manipulation Represented by a 2D Plot. g f Normal Inverted VC 14/15 - TP5 - Single Pixel Manipulation

Why DRM? VC 14/15 - TP5 - Single Pixel Manipulation

Why DRM? VC 14/15 - TP5 - Single Pixel Manipulation

Other DRM functions By manipulating our function we can: Enhance generic image visibility. Enhance specific visual features. Use quantization space a lot better. VC 14/15 - TP5 - Single Pixel Manipulation

Contrast Stretching ‘Stretches’ the dynamic range of an image. Corrects some image capture problems: Poor illumination, aperture, poor sensor performance, etc. T(f) g f VC 14/15 - TP5 - Single Pixel Manipulation

What if I want a different histogram for my image? Histogram Processing Histograms give us an idea of how we are using our dynamic range What if I want a different histogram for my image? VC 14/15 - TP5 - Single Pixel Manipulation

Types of Image Histograms Images can be classified into types according to their histogram Dark Bright Low-contrast High-contrast VC 14/15 - TP5 - Single Pixel Manipulation

Types of Image Histograms I can manipulate this using single Pixel operations! VC 14/15 - TP5 - Single Pixel Manipulation

Histogram Equalization Objective: Obtain a ‘flat’ histogram. Enhance visual contrast. Digital histogram Result is a ‘flat-ish’ histogram. Why? VC 14/15 - TP5 - Single Pixel Manipulation

Histogram Equalization VC 14/15 - TP5 - Single Pixel Manipulation

Topic: Neighborhoods and Connectivity Dynamic Range Manipulation Neighborhoods and Connectivity Image Arithmetic Example: Background Subtraction VC 14/15 - TP5 - Single Pixel Manipulation

Neighbors Why do we care at all? VC 14/15 - TP5 - Single Pixel Manipulation

So, who exactly are my neighbors? Digital Images What a computer sees So, who exactly are my neighbors? VC 14/15 - TP5 - Single Pixel Manipulation

4-Neighbors A pixel p at (x,y) has 2 horizontal and 2 vertical neighbors: (x+1,y), (x-1,y), (x,y+1), (x,y-1) N4(p): Set of the 4-neighbors of p. Limitations? (x,y-1) (x-1,y) (x+1,y) (x,y+1) VC 14/15 - TP5 - Single Pixel Manipulation

8-Neighbors A pixel has 4 diagonal neighbors N8(p) = N4(p)+ND(p) (x+1,y+1), (x+1,y-1), (x-1,y+1), (x-1,y-1) ND(p): Diagonal set of neighbors N8(p) = N4(p)+ND(p) Limitations? (x-1, y-1) (x,y-1) (x+1, y-1) (x-1,y) (x+1,y) (x-1, y+1) (x,y+1) (x+1, y+1) VC 14/15 - TP5 - Single Pixel Manipulation

Connectivity Two pixels are connected if: They are neighbors (i.e. adjacent in some sense -- e.g. N4(p), N8(p), …) Their gray levels satisfy a specified criterion of similarity (e.g. equality, …) (x-1, y-1) (x,y-1) (x+1, y-1) (x-1,y) (x,y-1) (x+1,y) (x-1, y+1) (x,y+1) (x+1, y+1) VC 14/15 - TP5 - Single Pixel Manipulation

4 and 8-Connectivity (x,y-1) (x,y+1) (x+1,y) (x-1,y) (x-1, y-1) VC 14/15 - TP5 - Single Pixel Manipulation

Distances How far is that point? Distance VC 14/15 - TP5 - Single Pixel Manipulation

D4 Distance D4 distance (city-block distance): D4(p,q) = |x-s| + |y-t| forms a diamond centered at (x,y) e.g. pixels with D4≤2 from p D4 = 1 are the 4-neighbors of p VC 14/15 - TP5 - Single Pixel Manipulation

D8 Distance D8 distance (chessboard distance): D8(p,q) = max(|x-s|,|y-t|) Forms a square centered at p e.g. pixels with D8≤2 from p D8 = 1 are the 8-neighbors of p VC 14/15 - TP5 - Single Pixel Manipulation

Euclidean Distance Euclidean distance: De(p,q) = [(x-s)2 + (y-t)2]1/2 Points (pixels) having a distance less than or equal to r from (x,y) are contained in a disk of radius r centered at (x,y). VC 14/15 - TP5 - Single Pixel Manipulation

Topic: Image Arithmetic Dynamic Range Manipulation Neighborhoods and Connectivity Image Arithmetic Example: Background Subtraction VC 14/15 - TP5 - Single Pixel Manipulation

Arithmetic operations between images Why do I want to add these images? VC 14/15 - TP5 - Single Pixel Manipulation

Arithmetic operations between images Why do I want to add these images? VC 14/15 - TP5 - Single Pixel Manipulation

Arithmetic operations between images Slightly better... What if I add a lot of similar noisy images together? VC 14/15 - TP5 - Single Pixel Manipulation

What problems can happen? Image Arithmetic Image 1: a(x,y) Image 2: b(x,y) Result: c(x,y) = a(x,y) OPERATION b(x,y) Possibilities: Addition Subtraction Multiplication Division Etc.. Why is this useful? What problems can happen? VC 14/15 - TP5 - Single Pixel Manipulation

Example Image Addition VC 14/15 - TP5 - Single Pixel Manipulation

More on this when we study mathematical morphology. Logic Operations Binary Images We can use Boolean Logic Operations: AND OR NOT More on this when we study mathematical morphology. VC 14/15 - TP5 - Single Pixel Manipulation

Topic: Example: Background Subtraction Dynamic Range Manipulation Neighborhoods and Connectivity Image Arithmetic Example: Background Subtraction VC 14/15 - TP5 - Single Pixel Manipulation

Example: Background Subtraction Image arithmetic is simple and powerful. Is there a person here? Where? VC 14/15 - TP5 - Single Pixel Manipulation

Background Subtraction Remember: We can only see numbers! Is there a person here? Where? VC 14/15 - TP5 - Single Pixel Manipulation

Background Subtraction What if I know this? VC 14/15 - TP5 - Single Pixel Manipulation

Background Subtraction Limitations? VC 14/15 - TP5 - Single Pixel Manipulation

Background Subtraction Objective: Separate the foreground objects from a static background. Large variety of methods: Mean & Threshold [CD04] Normalized Block Correlation [Mats00] Temporal Derivative [Hari98] Single Gaussian [Wren97] Mixture of Gaussians [Grim98] Segmentation!! More on this later. VC 14/15 - TP5 - Single Pixel Manipulation

Resources R. Gonzalez, and R. Woods – Chapter 2 K. Toyama, J. Krumm, B. Brumitt, and B. Meyers, “Wallflower: Principles and practice of background maintenance”, in Proc. of IEEE ICCV, Corfu, Greece, 1999. VC 14/15 - TP5 - Single Pixel Manipulation