COMP_4190 Artificial Intelligence Computer Vision. Computer Vision. Levels of Abstraction. Digital Images

Size: px
Start display at page:

Download "COMP_4190 Artificial Intelligence Computer Vision. Computer Vision. Levels of Abstraction. Digital Images"

Transcription

1 COMP_49 Artificial Intelligence Computer Vision Jacky Baltes Department of Computer Science University of Manitoba Winnipeg, Manitoba Canada, RT N jacky@cs.umanitoba.ca Introduction Digital images Edge detection Segmentation Watershed algorithm Snakes Hough transform detect lines general Hough transform Computer Vision Scene interpretation Waltz Algorithm Digital Images Levels of Abstraction Computer graphics: model -> image Computer vision: image -> model Two dimensional array of picture elements (pixels) Captured through a sensor camera, scanner structured lighting Lowest level: Pre-processing, noise removal, edge detection Middle level: Segmentation into regions High level: Object recognition, motion analysis World model

2 Optical Illusions Optical Illusions PPM File Format We will use the PPM file format in this course (easy,lossless) Colour format with three channels (red, green, blue) ASCII Header P Magic number width height # of colours per channel (depth) Followed by width * height * log(depth) * bytes P PPM File Format <><D9><D6><D7><D4><D4><D6><D7><DA ><DA><E><DB><E6><D8><E6><D6><E5>< D6>

3 Edge Detection Colours are very susceptible to lighting An important pre-processing step is edge detection How do we find an edge? Sharp contrast in the image Derivative of the image function I(i,j) Approximate derivative with I(i+,j) - I(i-,j) Edge Detection and many other image preprocessing steps can be implemented as a convolution A convolution mask is a matrix that is applied to each pixel in the image Specifies weights of the neighbors Convolution Derivative - + Convolution What is the output of [, 55,,,... ] -55? Use divisor and offset to normalize result of convolution to.. 55 How to deal with colour images? Convert to grey scale Handle each channel seperately Sobel Edge Detection To reduce noise, average over several rows Weigh rows differently Divisor = 8, Offset =

4 Sobel Edge Detection Use seperate convolution matrices for horizontal and vertial Horizontal Vertical Convolution Many other filters can be implemented efficiently as convolution One problem: what to do at the borders What does the following filter do? Blurring (Simple) Blurring is used to reduce noise in the image Template Matching Convolution Find Specific features in the image Divisor = 4

5 Image Segmentation Segmentation Full segmentation: Individual objects are separated from the background and given individual ID numbers (labels). Partial segmentation: The amount of data is reduced (usually by separating objects from background) to speed up the further processing. Segmentation is often the most difficult problem to solve in the process; there is no universal solution! The problem can be made much easier if solved in cooperation with the constructor of the imaging system (choice of sensors, illumination, background etc). Three Types of Segmentation Classification Based on some similarity measure between pixel values. The simplest form is thresholding. Edge-based Search for edges in the image. They are then used as borders between regions Region-based Region growing, merge & split Common idea: search for discontinuities or/and similitudes in the image Thresholding (Global and Local) Global: based on some kind of histogram: grey-level, edge, feature etc. Lighting conditions are extremely important, and it will only work under very controlled circumstances. Fixed thresholds: the same value is used in the whole image Local (or dynamic thresholding): depends on the position in the image. The image is divided into overlapping sections which are thresholded one by one.

6 Classical Automatic Thresholding Algorithm. Select an initial estimate for T. Segment the image using T. This produces groups: G, pixels with value >T and G, with value <T Optimal Thresholding Based on the shape of the current image histogram. Search for valleys, Gaussian distributions etc.. Compute µ and µ, average pixel value of G and G 4. New threshold: T=/(µ +µ ) 5. Repeat steps to 4 until T stabilizes. Very easy + very fast Assumptions: normal dist. + low noise Histograms Thresholding and illumination Solutions: Calibration of the imaging system Percentile filter with very large mask Morphological operators

7 MR non-uniformity More thresholding Can also be used on other kinds of histogram: grey-level, edge, feature etc. Multivariate data ( see next lectures) Problems: Only considers the graylevel pixel value, so it can leave holes in segmented objects. Solution: post-processing with morphological operators Requires strong assumptions to be efficient Local thresholding is better see region growing techniques Edge-based Segmentation Gradient based procedure Based on finding discontinuities (local variations of image intensity). Apply an edge detector ex gradient operator (Sobel) second derivative (Laplace) 4. Threshold the edge image to get a binary image 5. Depending on the type of edge detector: Link edges together to close shapes (using edge direction for example) Remove spurious edges

8 Zero-crossing based procedure Laplacian of Gaussian Edge-based Segmentation: examples Region based segmentation Work by extending some region based on local similarities between pixels region growing (bottom-up method) region splitting and merging (top-down method) Bottom-up: from data to representation Top-down: from model to data

9 Region growing: Bottom Up Method. Find starting points. Include neighbouring pixels with similar features (greylevel, texture, color). 5. Continue untill all pixels have been included with one of the starting points. Region Growing: Watershed Algorithm Think of the grey-level image as a landscape. Let water rise from the bottom of each valley (the water from each valley is given its own label). As soon as the water from two valleys meet, build a dam, or watershed. These watersheds will then define the borders between different regions. Problems: Not trivial to find good starting points, difficult to automate Need good criteria for similarity.

10 Watershed: Problems and Solutions Oversegmentation Watershed from markers Computation new algorithm for fast watershed Graylevel might not be the optimal choice as the local similarity measure bigger neighborhood when growing other local features (statistical, edge enhanced image, distance transformed image ) Region Growing: Split & Merge. ) Set up some criteria for what is a uniform area (ex mean, variance, bimodality of histogram, texture, etc ).) Start with the full image and split it in to 4 sub-images.) Check each sub-image. If not uniform, divide into 4 new sub-images 4.) After each iteration, compare touching regions with neighboring regions end merge if uniform The method is also called "quadtree" decomposition/division (and is also used for compression) Split & Merge The Hough transform A method for finding global relationships between pixels. Example: We want to find straight lines in an image. Apply edge enhancing filter (ex Laplace). Set a threshold for what filter response is considered a true edge pixel. Extract the pixels that are on a straight line using the Hough transform

11 Finding straight lines: The Hough transform The Hough transform. consider a pixel in position (xi,yi). equation of a straight line yi=axi+b. set b=-axi+ yi and draw this (single) line in ab-space 4. consider the next pixel with position (xj,yj) and draw the line b=axj+ yj ab-space (also called parameter space). The points (a,b ) where the two lines intersect represent the line y=a x+b in xy-space which will go through both (xi,yi) and (xj,yj). 5. draw the line in ab-space corresponding to each pixel in xy-space. 6. divide ab-space into accumulator cells and find most common (a, b ) which will give the line connecting the largest number of pixels The Hough transform In reality we have a problem with y=ax+b because a reaches infinity for vertical lines. Use instead. The Hough transform It is common to use filters for finding the intersection: butterfly filters Different variations of the Hough transform can also be used for finding other shapes of the form g(v,c)=, v is a vector of coordinates, c is a vector of coefficients. Possible to find any kind of simple shape ex. circle: (D parameter space) xc yc c

12 Conclusions The segmentation procedure Pre-processing Segmentation Snakes Example: segmentation of the brain in MRI Post-processing Like any IP procedure There exists NO universal segmentation method Evaluation of segmentation performance is important User interaction Snake after initialization Snake at equilibrium 46 Snakes (active contours) Internal Energy A snake is an active contour parametrically represented by its position v(s)=(x(s), y(s)). s ranges from to Each position is associated to an energy: E snake E int v sds E ext v sds The final position corresponds to the minimum of the energy The internal energy of the snake is due to bending and it is associated with a priori constraints: (s) controls the tension of the contour (s) controls its rigidity

13 External Energy Applications The external energy depends on the image and accounts for a posteriori information Several energy forms have been proposed based on features of interest in the image An energy commonly used to attract snakes towards edges is: Applications Considerations The number of nodes is an important factor for the behavior of the snake. Ability to resample the contour may be necessary. If we want a closed contour, we set the first and the last point equal. Anchor points are necessary to keep the snake in position if the image forces are not enough. It may be necessary to allow a snake contour to divide into two contours, or two contours to merge into one contour. Different applications may need different potential functions and different settings of the control parameters (damping, tension and rigidity). 5

14 Applications More segmentation Tracking of a moving object An initial estimate for the contour (e.g. interactively defined) is used in the first frame. The contour at equilibrium is used as the starting contour for the next frame. The snake locks on to the object. Reconstruction from serial sections The user draws an approximate contour in the first slice. The contour at equilibrium is used as the starting contour in the next slice. The D object is reconstructed from the contours using triangulation... 5 Important in Image Processing in general: If you can use expert knowledge (user interaction, modelling, ) at relatively low cost (development, computational, ) JUST DO IT!! Based on contours: chain codes poligonal approximation signature Fourier descriptors, Based on regions: area, PA, topology moments, Shape descriptions Representation schemes based on boundary or region? reconstruction? stable under scaling, rotation, and translation? recognition by incomplete representation? Goal: description of im age inform ation suitable to use for classification, recognition, interpretation

15 Chain coding Example of chain coding boundary as a sequence of straight lines 4- or 8-connectedness 4-connectedness 8-connectedness 4-code: 8-code: Problems with chain coding More stable Long code Dependent on Scale Starting point Rotation Small change in the boundary (noise or bad segmentation) can generate a chain code that does not reflect the shape of the object Rescale Starting point treat as a circular sequence define as starting point, the point giving the least magnitude Rotation use difference code

16 Codes from different starting points A B B x B o B A x A o A Shape number Object descriptor by chain coded edge Difference code Starting point giving least magnitude Number of digits gives the order rotation independent & unique but dependent on orientation of grid Shape numbers of order 8 order 4 shape no. difference chain code order 6 order 8 Basic rectangle diameter for a boundary B is defined as diam(b)=max(d(p i,p j )), p i,p j B length orientation diameter defines major axis minor axis perpendicular to major axis basic rectangle minimal enclosing rectangle using minor & major

17 Shape number using basic rectangle Shape order n Choose rectangle of order n best approximating the basic rectangle Rectangle gives gridsize n=: 4,, 5 a unique shape number Polygonal approximation Minimum perimeter polygon represent the boundary with a polygon reduction of discretization effects idea: find a simple polygon that reflects the shape of the boundary fit straight lines to boundary often not trivial and time consuming original minimum perimeter

18 Polygon: merge, split Signature D functional representation of the boundary simplest approach: distance from centroid as function of angle D boundary D function problems with rotation and scaling select centroid select start point, e.g., as furthest for centroid rescale function, e.g., so values[,] Signatures for two boundaries Boundary Segments decomposition of boundary into segments reduce complexity simplify description often of interest in case of concavities use decomposition based on convex hull

19 Curvature Using Curvature Information rate of change of slope Bending energy for boundary of length L s(t)/ t difficult in the discrete case (= images) due to uneven boundary use boundary segments n n energy necessary to bend a rod to desired shape... sum of squared curvature c(k) L BE c k L k fit straight line define as change of slope for n Decomposition based on points of extreme curvature Fourier descriptors represent boundary (of K pixels) by a sequence of coordinates s(k)=(x(k),y(k)), k=,,,...,k- complex number s(k)=x(k)+iy(k) D D discrete Fourier Transform (DFT) Fourier descriptors reconstruction reconstruction of boundary using inverse DFT approximation of boundary using only P first Fourier coefficients gives the same number of points in boundary remember: high-frequency for fine details low-frequency for global shape a(u) Fourier descriptors of the boundary

20 Properties of Fourier descriptors Measures length of boundary perimeter transformation identity boundary s(k) fourier descriptor a(u) count pixels ROUGH approximation chain code simple representation a x # edge steps + b x # point steps b a rotation translation scaling starting point s r (k)=s(k)e j s t (k)=s(k)+ xy s s (k)=s(u) s p (k)=s(k-k ) a r (u)=a(u)e j a t (u)=a(u)+ xy (u) a s (k)=a(u) a p (u)=a(u)e -jk u/k diameter: largest distance between two pixels on the boundary length direction xy =x+ jy Area Compactness Num ber of pixels P /A: perimeter x perimeter / area dimensionless minimal for disc rotation invariant blue = green = 4 compact not compact

21 P /A Examples of P /A measurements perim eter x perim eter / area norm alization: area = 58, perim eter = 798 P /A= 6.4, P /A norm = 4.8 area = 59, perim eter = P /A=.6, P /A norm =.8 Eccentricity longest chord/max perpendicular chord Elongatedness. high/width of the minimal bounding rectangle there are different definitions! 7. area/(d ) d is maximum width 8. longest possible path OK not OK

22 area of region/ area of bounding rectangle Rectangularity Euler number Topology E=C-H C number of connected components H number of holes Invariant under rubber sheet transformation Convex hull Projections convex region R for any x,x R, straight line between x and x is in R convex hull H of a region R smallest convex set containing R convex deficiency D p h i j f i, j R=green H=green +brown D=brown p v j i f i, j

23 Principle component analysis (PCA) points as D vectors (a,b) a x-coordinate b y-coordinate mean vector and covariance matrix find eigenvectors e and e rotate Moments Given a D discrete function f(x,y) moment of order p+ q central moment of order p+ q centre of mass Hotelling transform Measurements with moments Example: Cell Classification µ horizontal centralness µ vertical centralness µ diagonality indicates with respect to centroid where R has more mass µ horizontal divergence indicates the relative extent of the left of R compared to the right µ vertical divergence indicates the relative extent of the right of R compared to the left µ horizontal imbalance location of center of gravity with respect to half horizontal extent µ vertical imbalance location of center of gravity with respect to half vertical extent n,,n6 = normal Shapes differing in size, orientation, border irregularity d,,d6 = diabetic

24 Waltz Algorithm One of the earliest examples of a constraint satisfaction problem Interpret line drawings from solid polyhedra Look at all intersections Waltz's Algorithm What type of intersection is this? Concave intersection of three planes Externel convex intersection Adjacent intersections impose constraints on each other CSP to find a unique set of labels First step in image understanding Waltz Algorithm Waltz Algorithm Assumptions No shadows, no cracks Three-faced vertices General position: no junctions that move with small movement of the eye Then each line in the images is Boundary line of the object (right hand = solid, left hand = outside) Convex edge (+) Concave edge (-) Labeling of the edges

25 8 legal types of junctions Waltz Algorithm Types of Junctions Label each junction as one of those 8 Both ends of a line must be consistent (same label) Reformulate as a CSP. Constraint propagation always works perfectly Waltz Examples References Les Kitchen (Lecture Slides) Lucia Ballerini (Lecture slides) Andrew Moore's lecture slides (CMU) pdf

Digital Image Processing

Digital Image Processing Digital Image Processing Part 9: Representation and Description AASS Learning Systems Lab, Dep. Teknik Room T1209 (Fr, 11-12 o'clock) achim.lilienthal@oru.se Course Book Chapter 11 2011-05-17 Contents

More information

Lecture 8 Object Descriptors

Lecture 8 Object Descriptors Lecture 8 Object Descriptors Azadeh Fakhrzadeh Centre for Image Analysis Swedish University of Agricultural Sciences Uppsala University 2 Reading instructions Chapter 11.1 11.4 in G-W Azadeh Fakhrzadeh

More information

Lecture 18 Representation and description I. 2. Boundary descriptors

Lecture 18 Representation and description I. 2. Boundary descriptors Lecture 18 Representation and description I 1. Boundary representation 2. Boundary descriptors What is representation What is representation After segmentation, we obtain binary image with interested regions

More information

Boundary descriptors. Representation REPRESENTATION & DESCRIPTION. Descriptors. Moore boundary tracking

Boundary descriptors. Representation REPRESENTATION & DESCRIPTION. Descriptors. Moore boundary tracking Representation REPRESENTATION & DESCRIPTION After image segmentation the resulting collection of regions is usually represented and described in a form suitable for higher level processing. Most important

More information

Digital Image Processing Chapter 11: Image Description and Representation

Digital Image Processing Chapter 11: Image Description and Representation Digital Image Processing Chapter 11: Image Description and Representation Image Representation and Description? Objective: To represent and describe information embedded in an image in other forms that

More information

EECS490: Digital Image Processing. Lecture #23

EECS490: Digital Image Processing. Lecture #23 Lecture #23 Motion segmentation & motion tracking Boundary tracking Chain codes Minimum perimeter polygons Signatures Motion Segmentation P k Accumulative Difference Image Positive ADI Negative ADI (ADI)

More information

Chapter 11 Representation & Description

Chapter 11 Representation & Description Chain Codes Chain codes are used to represent a boundary by a connected sequence of straight-line segments of specified length and direction. The direction of each segment is coded by using a numbering

More information

Lecture 10: Image Descriptors and Representation

Lecture 10: Image Descriptors and Representation I2200: Digital Image processing Lecture 10: Image Descriptors and Representation Prof. YingLi Tian Nov. 15, 2017 Department of Electrical Engineering The City College of New York The City University of

More information

Machine vision. Summary # 6: Shape descriptors

Machine vision. Summary # 6: Shape descriptors Machine vision Summary # : Shape descriptors SHAPE DESCRIPTORS Objects in an image are a collection of pixels. In order to describe an object or distinguish between objects, we need to understand the properties

More information

Ulrik Söderström 21 Feb Representation and description

Ulrik Söderström 21 Feb Representation and description Ulrik Söderström ulrik.soderstrom@tfe.umu.se 2 Feb 207 Representation and description Representation and description Representation involves making object definitions more suitable for computer interpretations

More information

Digital Image Processing Fundamentals

Digital Image Processing Fundamentals Ioannis Pitas Digital Image Processing Fundamentals Chapter 7 Shape Description Answers to the Chapter Questions Thessaloniki 1998 Chapter 7: Shape description 7.1 Introduction 1. Why is invariance to

More information

CoE4TN4 Image Processing

CoE4TN4 Image Processing CoE4TN4 Image Processing Chapter 11 Image Representation & Description Image Representation & Description After an image is segmented into regions, the regions are represented and described in a form suitable

More information

Segmentation

Segmentation Lecture 6: Segmentation 215-13-11 Filip Malmberg Centre for Image Analysis Uppsala University 2 Today What is image segmentation? A smörgåsbord of methods for image segmentation: Thresholding Edge-based

More information

ECEN 447 Digital Image Processing

ECEN 447 Digital Image Processing ECEN 447 Digital Image Processing Lecture 8: Segmentation and Description Ulisses Braga-Neto ECE Department Texas A&M University Image Segmentation and Description Image segmentation and description are

More information

Segmentation

Segmentation Lecture 6: Segmentation 24--4 Robin Strand Centre for Image Analysis Dept. of IT Uppsala University Today What is image segmentation? A smörgåsbord of methods for image segmentation: Thresholding Edge-based

More information

Topic 6 Representation and Description

Topic 6 Representation and Description Topic 6 Representation and Description Background Segmentation divides the image into regions Each region should be represented and described in a form suitable for further processing/decision-making Representation

More information

- Low-level image processing Image enhancement, restoration, transformation

- Low-level image processing Image enhancement, restoration, transformation () Representation and Description - Low-level image processing enhancement, restoration, transformation Enhancement Enhanced Restoration/ Transformation Restored/ Transformed - Mid-level image processing

More information

Practical Image and Video Processing Using MATLAB

Practical Image and Video Processing Using MATLAB Practical Image and Video Processing Using MATLAB Chapter 18 Feature extraction and representation What will we learn? What is feature extraction and why is it a critical step in most computer vision and

More information

9 length of contour = no. of horizontal and vertical components + ( 2 no. of diagonal components) diameter of boundary B

9 length of contour = no. of horizontal and vertical components + ( 2 no. of diagonal components) diameter of boundary B 8. Boundary Descriptor 8.. Some Simple Descriptors length of contour : simplest descriptor - chain-coded curve 9 length of contour no. of horiontal and vertical components ( no. of diagonal components

More information

Ulrik Söderström 16 Feb Image Processing. Segmentation

Ulrik Söderström 16 Feb Image Processing. Segmentation Ulrik Söderström ulrik.soderstrom@tfe.umu.se 16 Feb 2011 Image Processing Segmentation What is Image Segmentation? To be able to extract information from an image it is common to subdivide it into background

More information

Computer Vision. Image Segmentation. 10. Segmentation. Computer Engineering, Sejong University. Dongil Han

Computer Vision. Image Segmentation. 10. Segmentation. Computer Engineering, Sejong University. Dongil Han Computer Vision 10. Segmentation Computer Engineering, Sejong University Dongil Han Image Segmentation Image segmentation Subdivides an image into its constituent regions or objects - After an image has

More information

CS4733 Class Notes, Computer Vision

CS4733 Class Notes, Computer Vision CS4733 Class Notes, Computer Vision Sources for online computer vision tutorials and demos - http://www.dai.ed.ac.uk/hipr and Computer Vision resources online - http://www.dai.ed.ac.uk/cvonline Vision

More information

Review for the Final

Review for the Final Review for the Final CS 635 Review (Topics Covered) Image Compression Lossless Coding Compression Huffman Interpixel RLE Lossy Quantization Discrete Cosine Transform JPEG CS 635 Review (Topics Covered)

More information

DEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGINEERING DS7201 ADVANCED DIGITAL IMAGE PROCESSING II M.E (C.S) QUESTION BANK UNIT I 1. Write the differences between photopic and scotopic vision? 2. What

More information

Chapter 11 Representation & Description

Chapter 11 Representation & Description Chapter 11 Representation & Description The results of segmentation is a set of regions. Regions have then to be represented and described. Two main ways of representing a region: - external characteristics

More information

EXAM SOLUTIONS. Image Processing and Computer Vision Course 2D1421 Monday, 13 th of March 2006,

EXAM SOLUTIONS. Image Processing and Computer Vision Course 2D1421 Monday, 13 th of March 2006, School of Computer Science and Communication, KTH Danica Kragic EXAM SOLUTIONS Image Processing and Computer Vision Course 2D1421 Monday, 13 th of March 2006, 14.00 19.00 Grade table 0-25 U 26-35 3 36-45

More information

Digital Image Processing

Digital Image Processing Digital Image Processing Third Edition Rafael C. Gonzalez University of Tennessee Richard E. Woods MedData Interactive PEARSON Prentice Hall Pearson Education International Contents Preface xv Acknowledgments

More information

C E N T E R A T H O U S T O N S C H O O L of H E A L T H I N F O R M A T I O N S C I E N C E S. Image Operations II

C E N T E R A T H O U S T O N S C H O O L of H E A L T H I N F O R M A T I O N S C I E N C E S. Image Operations II T H E U N I V E R S I T Y of T E X A S H E A L T H S C I E N C E C E N T E R A T H O U S T O N S C H O O L of H E A L T H I N F O R M A T I O N S C I E N C E S Image Operations II For students of HI 5323

More information

Types of Edges. Why Edge Detection? Types of Edges. Edge Detection. Gradient. Edge Detection

Types of Edges. Why Edge Detection? Types of Edges. Edge Detection. Gradient. Edge Detection Why Edge Detection? How can an algorithm extract relevant information from an image that is enables the algorithm to recognize objects? The most important information for the interpretation of an image

More information

Feature description. IE PŁ M. Strzelecki, P. Strumiłło

Feature description. IE PŁ M. Strzelecki, P. Strumiłło Feature description After an image has been segmented the detected region needs to be described (represented) in a form more suitable for further processing. Representation of an image region can be carried

More information

EE 584 MACHINE VISION

EE 584 MACHINE VISION EE 584 MACHINE VISION Binary Images Analysis Geometrical & Topological Properties Connectedness Binary Algorithms Morphology Binary Images Binary (two-valued; black/white) images gives better efficiency

More information

Image representation. 1. Introduction

Image representation. 1. Introduction Image representation Introduction Representation schemes Chain codes Polygonal approximations The skeleton of a region Boundary descriptors Some simple descriptors Shape numbers Fourier descriptors Moments

More information

EE795: Computer Vision and Intelligent Systems

EE795: Computer Vision and Intelligent Systems EE795: Computer Vision and Intelligent Systems Spring 2012 TTh 17:30-18:45 WRI C225 Lecture 04 130131 http://www.ee.unlv.edu/~b1morris/ecg795/ 2 Outline Review Histogram Equalization Image Filtering Linear

More information

Anno accademico 2006/2007. Davide Migliore

Anno accademico 2006/2007. Davide Migliore Robotica Anno accademico 6/7 Davide Migliore migliore@elet.polimi.it Today What is a feature? Some useful information The world of features: Detectors Edges detection Corners/Points detection Descriptors?!?!?

More information

Feature Extraction and Image Processing, 2 nd Edition. Contents. Preface

Feature Extraction and Image Processing, 2 nd Edition. Contents. Preface , 2 nd Edition Preface ix 1 Introduction 1 1.1 Overview 1 1.2 Human and Computer Vision 1 1.3 The Human Vision System 3 1.3.1 The Eye 4 1.3.2 The Neural System 7 1.3.3 Processing 7 1.4 Computer Vision

More information

Basic Algorithms for Digital Image Analysis: a course

Basic Algorithms for Digital Image Analysis: a course Institute of Informatics Eötvös Loránd University Budapest, Hungary Basic Algorithms for Digital Image Analysis: a course Dmitrij Csetverikov with help of Attila Lerch, Judit Verestóy, Zoltán Megyesi,

More information

Lecture 6: Edge Detection

Lecture 6: Edge Detection #1 Lecture 6: Edge Detection Saad J Bedros sbedros@umn.edu Review From Last Lecture Options for Image Representation Introduced the concept of different representation or transformation Fourier Transform

More information

Digital Image Processing COSC 6380/4393

Digital Image Processing COSC 6380/4393 Digital Image Processing COSC 6380/4393 Lecture 21 Nov 16 th, 2017 Pranav Mantini Ack: Shah. M Image Processing Geometric Transformation Point Operations Filtering (spatial, Frequency) Input Restoration/

More information

Image Processing Fundamentals. Nicolas Vazquez Principal Software Engineer National Instruments

Image Processing Fundamentals. Nicolas Vazquez Principal Software Engineer National Instruments Image Processing Fundamentals Nicolas Vazquez Principal Software Engineer National Instruments Agenda Objectives and Motivations Enhancing Images Checking for Presence Locating Parts Measuring Features

More information

CS443: Digital Imaging and Multimedia Binary Image Analysis. Spring 2008 Ahmed Elgammal Dept. of Computer Science Rutgers University

CS443: Digital Imaging and Multimedia Binary Image Analysis. Spring 2008 Ahmed Elgammal Dept. of Computer Science Rutgers University CS443: Digital Imaging and Multimedia Binary Image Analysis Spring 2008 Ahmed Elgammal Dept. of Computer Science Rutgers University Outlines A Simple Machine Vision System Image segmentation by thresholding

More information

Practice Exam Sample Solutions

Practice Exam Sample Solutions CS 675 Computer Vision Instructor: Marc Pomplun Practice Exam Sample Solutions Note that in the actual exam, no calculators, no books, and no notes allowed. Question 1: out of points Question 2: out of

More information

Lecture 9: Hough Transform and Thresholding base Segmentation

Lecture 9: Hough Transform and Thresholding base Segmentation #1 Lecture 9: Hough Transform and Thresholding base Segmentation Saad Bedros sbedros@umn.edu Hough Transform Robust method to find a shape in an image Shape can be described in parametric form A voting

More information

Chapter 10: Image Segmentation. Office room : 841

Chapter 10: Image Segmentation.   Office room : 841 Chapter 10: Image Segmentation Lecturer: Jianbing Shen Email : shenjianbing@bit.edu.cn Office room : 841 http://cs.bit.edu.cn/shenjianbing cn/shenjianbing Contents Definition and methods classification

More information

EE 701 ROBOT VISION. Segmentation

EE 701 ROBOT VISION. Segmentation EE 701 ROBOT VISION Regions and Image Segmentation Histogram-based Segmentation Automatic Thresholding K-means Clustering Spatial Coherence Merging and Splitting Graph Theoretic Segmentation Region Growing

More information

ECG782: Multidimensional Digital Signal Processing

ECG782: Multidimensional Digital Signal Processing Professor Brendan Morris, SEB 3216, brendan.morris@unlv.edu ECG782: Multidimensional Digital Signal Processing Spring 2014 TTh 14:30-15:45 CBC C313 Lecture 10 Segmentation 14/02/27 http://www.ee.unlv.edu/~b1morris/ecg782/

More information

UNIVERSITY OF OSLO. Faculty of Mathematics and Natural Sciences

UNIVERSITY OF OSLO. Faculty of Mathematics and Natural Sciences UNIVERSITY OF OSLO Faculty of Mathematics and Natural Sciences Exam: INF 4300 / INF 9305 Digital image analysis Date: Thursday December 21, 2017 Exam hours: 09.00-13.00 (4 hours) Number of pages: 8 pages

More information

Image Processing, Analysis and Machine Vision

Image Processing, Analysis and Machine Vision Image Processing, Analysis and Machine Vision Milan Sonka PhD University of Iowa Iowa City, USA Vaclav Hlavac PhD Czech Technical University Prague, Czech Republic and Roger Boyle DPhil, MBCS, CEng University

More information

Edge and local feature detection - 2. Importance of edge detection in computer vision

Edge and local feature detection - 2. Importance of edge detection in computer vision Edge and local feature detection Gradient based edge detection Edge detection by function fitting Second derivative edge detectors Edge linking and the construction of the chain graph Edge and local feature

More information

Feature Detectors and Descriptors: Corners, Lines, etc.

Feature Detectors and Descriptors: Corners, Lines, etc. Feature Detectors and Descriptors: Corners, Lines, etc. Edges vs. Corners Edges = maxima in intensity gradient Edges vs. Corners Corners = lots of variation in direction of gradient in a small neighborhood

More information

Segmentation and Grouping

Segmentation and Grouping Segmentation and Grouping How and what do we see? Fundamental Problems ' Focus of attention, or grouping ' What subsets of pixels do we consider as possible objects? ' All connected subsets? ' Representation

More information

Multimedia Computing: Algorithms, Systems, and Applications: Edge Detection

Multimedia Computing: Algorithms, Systems, and Applications: Edge Detection Multimedia Computing: Algorithms, Systems, and Applications: Edge Detection By Dr. Yu Cao Department of Computer Science The University of Massachusetts Lowell Lowell, MA 01854, USA Part of the slides

More information

Lecture 14 Shape. ch. 9, sec. 1-8, of Machine Vision by Wesley E. Snyder & Hairong Qi. Spring (CMU RI) : BioE 2630 (Pitt)

Lecture 14 Shape. ch. 9, sec. 1-8, of Machine Vision by Wesley E. Snyder & Hairong Qi. Spring (CMU RI) : BioE 2630 (Pitt) Lecture 14 Shape ch. 9, sec. 1-8, 12-14 of Machine Vision by Wesley E. Snyder & Hairong Qi Spring 2018 16-725 (CMU RI) : BioE 2630 (Pitt) Dr. John Galeotti The content of these slides by John Galeotti,

More information

Edge detection. Convert a 2D image into a set of curves. Extracts salient features of the scene More compact than pixels

Edge detection. Convert a 2D image into a set of curves. Extracts salient features of the scene More compact than pixels Edge Detection Edge detection Convert a 2D image into a set of curves Extracts salient features of the scene More compact than pixels Origin of Edges surface normal discontinuity depth discontinuity surface

More information

6. Applications - Text recognition in videos - Semantic video analysis

6. Applications - Text recognition in videos - Semantic video analysis 6. Applications - Text recognition in videos - Semantic video analysis Stephan Kopf 1 Motivation Goal: Segmentation and classification of characters Only few significant features are visible in these simple

More information

ELEC Dr Reji Mathew Electrical Engineering UNSW

ELEC Dr Reji Mathew Electrical Engineering UNSW ELEC 4622 Dr Reji Mathew Electrical Engineering UNSW Review of Motion Modelling and Estimation Introduction to Motion Modelling & Estimation Forward Motion Backward Motion Block Motion Estimation Motion

More information

Problem definition Image acquisition Image segmentation Connected component analysis. Machine vision systems - 1

Problem definition Image acquisition Image segmentation Connected component analysis. Machine vision systems - 1 Machine vision systems Problem definition Image acquisition Image segmentation Connected component analysis Machine vision systems - 1 Problem definition Design a vision system to see a flat world Page

More information

Edge Detection. Announcements. Edge detection. Origin of Edges. Mailing list: you should have received messages

Edge Detection. Announcements. Edge detection. Origin of Edges. Mailing list: you should have received messages Announcements Mailing list: csep576@cs.washington.edu you should have received messages Project 1 out today (due in two weeks) Carpools Edge Detection From Sandlot Science Today s reading Forsyth, chapters

More information

Chapter 3: Intensity Transformations and Spatial Filtering

Chapter 3: Intensity Transformations and Spatial Filtering Chapter 3: Intensity Transformations and Spatial Filtering 3.1 Background 3.2 Some basic intensity transformation functions 3.3 Histogram processing 3.4 Fundamentals of spatial filtering 3.5 Smoothing

More information

Lecture 7: Most Common Edge Detectors

Lecture 7: Most Common Edge Detectors #1 Lecture 7: Most Common Edge Detectors Saad Bedros sbedros@umn.edu Edge Detection Goal: Identify sudden changes (discontinuities) in an image Intuitively, most semantic and shape information from the

More information

Binary Image Processing. Introduction to Computer Vision CSE 152 Lecture 5

Binary Image Processing. Introduction to Computer Vision CSE 152 Lecture 5 Binary Image Processing CSE 152 Lecture 5 Announcements Homework 2 is due Apr 25, 11:59 PM Reading: Szeliski, Chapter 3 Image processing, Section 3.3 More neighborhood operators Binary System Summary 1.

More information

Fundamentals of Digital Image Processing

Fundamentals of Digital Image Processing \L\.6 Gw.i Fundamentals of Digital Image Processing A Practical Approach with Examples in Matlab Chris Solomon School of Physical Sciences, University of Kent, Canterbury, UK Toby Breckon School of Engineering,

More information

Broad field that includes low-level operations as well as complex high-level algorithms

Broad field that includes low-level operations as well as complex high-level algorithms Image processing About Broad field that includes low-level operations as well as complex high-level algorithms Low-level image processing Computer vision Computational photography Several procedures and

More information

Other Linear Filters CS 211A

Other Linear Filters CS 211A Other Linear Filters CS 211A Slides from Cornelia Fermüller and Marc Pollefeys Edge detection Convert a 2D image into a set of curves Extracts salient features of the scene More compact than pixels Origin

More information

Lecture 6: Multimedia Information Retrieval Dr. Jian Zhang

Lecture 6: Multimedia Information Retrieval Dr. Jian Zhang Lecture 6: Multimedia Information Retrieval Dr. Jian Zhang NICTA & CSE UNSW COMP9314 Advanced Database S1 2007 jzhang@cse.unsw.edu.au Reference Papers and Resources Papers: Colour spaces-perceptual, historical

More information

SUMMARY PART I. What is texture? Uses for texture analysis. Computing texture images. Using variance estimates. INF 4300 Digital Image Analysis

SUMMARY PART I. What is texture? Uses for texture analysis. Computing texture images. Using variance estimates. INF 4300 Digital Image Analysis INF 4 Digital Image Analysis SUMMARY PART I Fritz Albregtsen 4.. F 4.. INF 4 What is texture? Intuitively obvious, but no precise definition exists fine, coarse, grained, smooth etc Texture consists of

More information

Image Processing. Bilkent University. CS554 Computer Vision Pinar Duygulu

Image Processing. Bilkent University. CS554 Computer Vision Pinar Duygulu Image Processing CS 554 Computer Vision Pinar Duygulu Bilkent University Today Image Formation Point and Blob Processing Binary Image Processing Readings: Gonzalez & Woods, Ch. 3 Slides are adapted from

More information

COMPUTER VISION > OPTICAL FLOW UTRECHT UNIVERSITY RONALD POPPE

COMPUTER VISION > OPTICAL FLOW UTRECHT UNIVERSITY RONALD POPPE COMPUTER VISION 2017-2018 > OPTICAL FLOW UTRECHT UNIVERSITY RONALD POPPE OUTLINE Optical flow Lucas-Kanade Horn-Schunck Applications of optical flow Optical flow tracking Histograms of oriented flow Assignment

More information

Contents Edge Linking and Boundary Detection

Contents Edge Linking and Boundary Detection Contents Edge Linking and Boundar Detection 3 Edge Linking z Local processing link all points in a local neighbourhood (33, 55, etc.) that are considered to be similar similar response strength of a gradient

More information

Perception. Autonomous Mobile Robots. Sensors Vision Uncertainties, Line extraction from laser scans. Autonomous Systems Lab. Zürich.

Perception. Autonomous Mobile Robots. Sensors Vision Uncertainties, Line extraction from laser scans. Autonomous Systems Lab. Zürich. Autonomous Mobile Robots Localization "Position" Global Map Cognition Environment Model Local Map Path Perception Real World Environment Motion Control Perception Sensors Vision Uncertainties, Line extraction

More information

CHAPTER 1 Introduction 1. CHAPTER 2 Images, Sampling and Frequency Domain Processing 37

CHAPTER 1 Introduction 1. CHAPTER 2 Images, Sampling and Frequency Domain Processing 37 Extended Contents List Preface... xi About the authors... xvii CHAPTER 1 Introduction 1 1.1 Overview... 1 1.2 Human and Computer Vision... 2 1.3 The Human Vision System... 4 1.3.1 The Eye... 5 1.3.2 The

More information

IN5520 Digital Image Analysis. Two old exams. Practical information for any written exam Exam 4300/9305, Fritz Albregtsen

IN5520 Digital Image Analysis. Two old exams. Practical information for any written exam Exam 4300/9305, Fritz Albregtsen IN5520 Digital Image Analysis Two old exams Practical information for any written exam Exam 4300/9305, 2016 Exam 4300/9305, 2017 Fritz Albregtsen 27.11.2018 F13 27.11.18 IN 5520 1 Practical information

More information

Edge Detection. CSE 576 Ali Farhadi. Many slides from Steve Seitz and Larry Zitnick

Edge Detection. CSE 576 Ali Farhadi. Many slides from Steve Seitz and Larry Zitnick Edge Detection CSE 576 Ali Farhadi Many slides from Steve Seitz and Larry Zitnick Edge Attneave's Cat (1954) Origin of edges surface normal discontinuity depth discontinuity surface color discontinuity

More information

Counting Particles or Cells Using IMAQ Vision

Counting Particles or Cells Using IMAQ Vision Application Note 107 Counting Particles or Cells Using IMAQ Vision John Hanks Introduction To count objects, you use a common image processing technique called particle analysis, often referred to as blob

More information

Biometrics Technology: Image Processing & Pattern Recognition (by Dr. Dickson Tong)

Biometrics Technology: Image Processing & Pattern Recognition (by Dr. Dickson Tong) Biometrics Technology: Image Processing & Pattern Recognition (by Dr. Dickson Tong) References: [1] http://homepages.inf.ed.ac.uk/rbf/hipr2/index.htm [2] http://www.cs.wisc.edu/~dyer/cs540/notes/vision.html

More information

Segmentation algorithm for monochrome images generally are based on one of two basic properties of gray level values: discontinuity and similarity.

Segmentation algorithm for monochrome images generally are based on one of two basic properties of gray level values: discontinuity and similarity. Chapter - 3 : IMAGE SEGMENTATION Segmentation subdivides an image into its constituent s parts or objects. The level to which this subdivision is carried depends on the problem being solved. That means

More information

Computer Vision 2. SS 18 Dr. Benjamin Guthier Professur für Bildverarbeitung. Computer Vision 2 Dr. Benjamin Guthier

Computer Vision 2. SS 18 Dr. Benjamin Guthier Professur für Bildverarbeitung. Computer Vision 2 Dr. Benjamin Guthier Computer Vision 2 SS 18 Dr. Benjamin Guthier Professur für Bildverarbeitung Computer Vision 2 Dr. Benjamin Guthier 1. IMAGE PROCESSING Computer Vision 2 Dr. Benjamin Guthier Content of this Chapter Non-linear

More information

1 Background and Introduction 2. 2 Assessment 2

1 Background and Introduction 2. 2 Assessment 2 Luleå University of Technology Matthew Thurley Last revision: October 27, 2011 Industrial Image Analysis E0005E Product Development Phase 4 Binary Morphological Image Processing Contents 1 Background and

More information

Computer Vision. Recap: Smoothing with a Gaussian. Recap: Effect of σ on derivatives. Computer Science Tripos Part II. Dr Christopher Town

Computer Vision. Recap: Smoothing with a Gaussian. Recap: Effect of σ on derivatives. Computer Science Tripos Part II. Dr Christopher Town Recap: Smoothing with a Gaussian Computer Vision Computer Science Tripos Part II Dr Christopher Town Recall: parameter σ is the scale / width / spread of the Gaussian kernel, and controls the amount of

More information

IT Digital Image ProcessingVII Semester - Question Bank

IT Digital Image ProcessingVII Semester - Question Bank UNIT I DIGITAL IMAGE FUNDAMENTALS PART A Elements of Digital Image processing (DIP) systems 1. What is a pixel? 2. Define Digital Image 3. What are the steps involved in DIP? 4. List the categories of

More information

Image and Multidimensional Signal Processing

Image and Multidimensional Signal Processing Image and Multidimensional Signal Processing Professor William Hoff Dept of Electrical Engineering &Computer Science http://inside.mines.edu/~whoff/ Representation and Description 2 Representation and

More information

Digital Image Processing. Prof. P.K. Biswas. Department of Electronics & Electrical Communication Engineering

Digital Image Processing. Prof. P.K. Biswas. Department of Electronics & Electrical Communication Engineering Digital Image Processing Prof. P.K. Biswas Department of Electronics & Electrical Communication Engineering Indian Institute of Technology, Kharagpur Image Segmentation - III Lecture - 31 Hello, welcome

More information

Topic 4 Image Segmentation

Topic 4 Image Segmentation Topic 4 Image Segmentation What is Segmentation? Why? Segmentation important contributing factor to the success of an automated image analysis process What is Image Analysis: Processing images to derive

More information

REGION & EDGE BASED SEGMENTATION

REGION & EDGE BASED SEGMENTATION INF 4300 Digital Image Analysis REGION & EDGE BASED SEGMENTATION Today We go through sections 10.1, 10.2.7 (briefly), 10.4, 10.5, 10.6.1 We cover the following segmentation approaches: 1. Edge-based segmentation

More information

Image Processing

Image Processing Image Processing 159.731 Canny Edge Detection Report Syed Irfanullah, Azeezullah 00297844 Danh Anh Huynh 02136047 1 Canny Edge Detection INTRODUCTION Edges Edges characterize boundaries and are therefore

More information

Region-based Segmentation

Region-based Segmentation Region-based Segmentation Image Segmentation Group similar components (such as, pixels in an image, image frames in a video) to obtain a compact representation. Applications: Finding tumors, veins, etc.

More information

Image segmentation. Stefano Ferrari. Università degli Studi di Milano Methods for Image Processing. academic year

Image segmentation. Stefano Ferrari. Università degli Studi di Milano Methods for Image Processing. academic year Image segmentation Stefano Ferrari Università degli Studi di Milano stefano.ferrari@unimi.it Methods for Image Processing academic year 2017 2018 Segmentation by thresholding Thresholding is the simplest

More information

Advanced Video Content Analysis and Video Compression (5LSH0), Module 4

Advanced Video Content Analysis and Video Compression (5LSH0), Module 4 Advanced Video Content Analysis and Video Compression (5LSH0), Module 4 Visual feature extraction Part I: Color and texture analysis Sveta Zinger Video Coding and Architectures Research group, TU/e ( s.zinger@tue.nl

More information

Lecture 16: Computer Vision

Lecture 16: Computer Vision CS4442/9542b: Artificial Intelligence II Prof. Olga Veksler Lecture 16: Computer Vision Motion Slides are from Steve Seitz (UW), David Jacobs (UMD) Outline Motion Estimation Motion Field Optical Flow Field

More information

CITS 4402 Computer Vision

CITS 4402 Computer Vision CITS 4402 Computer Vision A/Prof Ajmal Mian Adj/A/Prof Mehdi Ravanbakhsh, CEO at Mapizy (www.mapizy.com) and InFarm (www.infarm.io) Lecture 02 Binary Image Analysis Objectives Revision of image formation

More information

CS534 Introduction to Computer Vision Binary Image Analysis. Ahmed Elgammal Dept. of Computer Science Rutgers University

CS534 Introduction to Computer Vision Binary Image Analysis. Ahmed Elgammal Dept. of Computer Science Rutgers University CS534 Introduction to Computer Vision Binary Image Analysis Ahmed Elgammal Dept. of Computer Science Rutgers University Outlines A Simple Machine Vision System Image segmentation by thresholding Digital

More information

Part 3: Image Processing

Part 3: Image Processing Part 3: Image Processing Image Filtering and Segmentation Georgy Gimel farb COMPSCI 373 Computer Graphics and Image Processing 1 / 60 1 Image filtering 2 Median filtering 3 Mean filtering 4 Image segmentation

More information

EE368 Project Report CD Cover Recognition Using Modified SIFT Algorithm

EE368 Project Report CD Cover Recognition Using Modified SIFT Algorithm EE368 Project Report CD Cover Recognition Using Modified SIFT Algorithm Group 1: Mina A. Makar Stanford University mamakar@stanford.edu Abstract In this report, we investigate the application of the Scale-Invariant

More information

EXAM SOLUTIONS. Computer Vision Course 2D1420 Thursday, 11 th of march 2003,

EXAM SOLUTIONS. Computer Vision Course 2D1420 Thursday, 11 th of march 2003, Numerical Analysis and Computer Science, KTH Danica Kragic EXAM SOLUTIONS Computer Vision Course 2D1420 Thursday, 11 th of march 2003, 8.00 13.00 Exercise 1 (5*2=10 credits) Answer at most 5 of the following

More information

COMPUTER AND ROBOT VISION

COMPUTER AND ROBOT VISION VOLUME COMPUTER AND ROBOT VISION Robert M. Haralick University of Washington Linda G. Shapiro University of Washington A^ ADDISON-WESLEY PUBLISHING COMPANY Reading, Massachusetts Menlo Park, California

More information

2: Image Display and Digital Images. EE547 Computer Vision: Lecture Slides. 2: Digital Images. 1. Introduction: EE547 Computer Vision

2: Image Display and Digital Images. EE547 Computer Vision: Lecture Slides. 2: Digital Images. 1. Introduction: EE547 Computer Vision EE547 Computer Vision: Lecture Slides Anthony P. Reeves November 24, 1998 Lecture 2: Image Display and Digital Images 2: Image Display and Digital Images Image Display: - True Color, Grey, Pseudo Color,

More information

EECS490: Digital Image Processing. Lecture #22

EECS490: Digital Image Processing. Lecture #22 Lecture #22 Gold Standard project images Otsu thresholding Local thresholding Region segmentation Watershed segmentation Frequency-domain techniques Project Images 1 Project Images 2 Project Images 3 Project

More information

Image Analysis Image Segmentation (Basic Methods)

Image Analysis Image Segmentation (Basic Methods) Image Analysis Image Segmentation (Basic Methods) Christophoros Nikou cnikou@cs.uoi.gr Images taken from: R. Gonzalez and R. Woods. Digital Image Processing, Prentice Hall, 2008. Computer Vision course

More information

Chapter 3 Image Registration. Chapter 3 Image Registration

Chapter 3 Image Registration. Chapter 3 Image Registration Chapter 3 Image Registration Distributed Algorithms for Introduction (1) Definition: Image Registration Input: 2 images of the same scene but taken from different perspectives Goal: Identify transformation

More information

2D rendering takes a photo of the 2D scene with a virtual camera that selects an axis aligned rectangle from the scene. The photograph is placed into

2D rendering takes a photo of the 2D scene with a virtual camera that selects an axis aligned rectangle from the scene. The photograph is placed into 2D rendering takes a photo of the 2D scene with a virtual camera that selects an axis aligned rectangle from the scene. The photograph is placed into the viewport of the current application window. A pixel

More information

Feature extraction. Bi-Histogram Binarization Entropy. What is texture Texture primitives. Filter banks 2D Fourier Transform Wavlet maxima points

Feature extraction. Bi-Histogram Binarization Entropy. What is texture Texture primitives. Filter banks 2D Fourier Transform Wavlet maxima points Feature extraction Bi-Histogram Binarization Entropy What is texture Texture primitives Filter banks 2D Fourier Transform Wavlet maxima points Edge detection Image gradient Mask operators Feature space

More information