Computer Vision Chapter 1 Introduction.  The goal of computer vision is to make useful decisions about real physical objects and scenes based on sensed.

Slides:



Advertisements
Similar presentations
SHREYAS PARNERKAR. Motivation Texture analysis is important in many applications of computer image analysis for classification or segmentation of images.
Advertisements

5/13/2015CAM Talk G.Kamberova Computer Vision Introduction Gerda Kamberova Department of Computer Science Hofstra University.
Machine Vision Basics 1.What is machine vision? 2.Some examples of machine vision applications 3.What can be learned from biological vision? 4.The curse.
Processing Digital Images. Filtering Analysis –Recognition Transmission.
1 Computer Vision: Week 1 Intro. What are its goals? What are the applications What are some ways of using images (Later: methods and programming) MSU/CSE.
Stockman MSU/CSE Fall Computer Vision: Week 1 Intro. What are its goals? What are the applications What are some ways of using images (Later: methods.
Chapter 2 Computer Imaging Systems. Content Computer Imaging Systems.
2007Theo Schouten1 Introduction. 2007Theo Schouten2 Human Eye Cones, Rods Reaction time: 0.1 sec (enough for transferring 100 nerve.
Highlights Lecture on the image part (10) Automatic Perception 16
Computer Vision Basics Image Terminology Binary Operations Filtering Edge Operators.
Computer Vision Lecture 3: Digital Images
Digtial Image Processing, Spring ECES 682 Digital Image Processing Oleh Tretiak ECE Department Drexel University.
Stockman MSU/CSE Fall Computer Vision: Week 1 Intro. What are its goals? What are the applications What are some ways of using images (Later: methods.
Object Detection Procedure CAMERA SOFTWARE LABVIEW IMAGE PROCESSING ALGORITHMS MOTOR CONTROLLERS TCP/IP
LAPPEENRANTA UNIVERSITY OF TECHNOLOGY THE DEPARTMENT OF INFORMATION TECHNOLOGY 1 Computer Vision: Fundamentals & Applications Heikki Kälviäinen Professor.
1 Image Processing(IP) 1. Introduction 2. Digital Image Fundamentals 3. Image Enhancement in the spatial Domain 4. Image Enhancement in the Frequency Domain.
ImageJ Tutorial.
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.
Goals of Computer Vision To make useful decisions based on sensed images To construct 3D structure from 2D images.
A Brief Overview of Computer Vision Jinxiang Chai.
SCCS 4761 Introduction What is Image Processing? Fundamental of Image Processing.
Chapter 3 Binary Image Analysis. Types of images ► Digital image = I[r][c] is discrete for I, r, and c.  B[r][c] = binary image - range of I is in {0,1}
Unit 30 P1 – Hardware & Software Required For Use In Digital Graphics
An Introduction to Computer Vision George J. Grevera, Ph.D.
Digital Image Processing Lecture notes – fall 2010 Lecturer: Conf. dr. ing. Mihaela GORDAN Communications Department
Digital Image Processing & Analysis Spring Definitions Image Processing Image Analysis (Image Understanding) Computer Vision Low Level Processes:
Addison Wesley is an imprint of © 2010 Pearson Addison-Wesley. All rights reserved. Chapter 5 Working with Images Starting Out with Games & Graphics in.
A brief introduction to javadoc and doxygen Cont’d.
Seeram Chapter #3: Digital Imaging
Digital Image Processing Lecture notes – fall 2008 Lecturer: Conf. dr. ing. Mihaela GORDAN Communications Department
Intro and Review Welcome to Java. Introduction Java application programming Use tools from the JDK to compile and run programs. Videos at
Computer Vision Chapter 1 Introduction.  The goal of computer vision is to make useful decisions about real physical objects and scenes based on sensed.
Using the JImageViewer classes. JImageViewer classes JImageViewer class JImageViewer class ImagePanel class ImagePanel class Image class Image class.
September 5, 2013Computer Vision Lecture 2: Digital Images 1 Computer Vision A simple two-stage model of computer vision: Image processing Scene analysis.
1 Digital Image Processing Dr. Saad M. Saad Darwish Associate Prof. of computer science.
Introduction to Computer Vision Sebastian van Delden USC Upstate
Digital Image Processing & Analysis Fall Outline Sampling and Quantization Image Transforms Discrete Cosine Transforms Image Operations Image Restoration.
MACHINE VISION Machine Vision System Components ENT 273 Ms. HEMA C.R. Lecture 1.
Computer Vision Introduction to Digital Images.
Levels of Image Data Representation 4.2. Traditional Image Data Structures 4.3. Hierarchical Data Structures Chapter 4 – Data structures for.
Digital Image Processing In The Name Of God Digital Image Processing Lecture2: Digital Image Fundamental M. Ghelich Oghli By: M. Ghelich Oghli
1-1 Chapter 1: Introduction 1.1. Images An image is worth thousands of words.
Machine Vision Introduction to Using Cognex DVT Intellect.
A brief introduction to doxygen. What does a compiler do?  A compiler ignores comments and processes the code.  What does doxygen do? –It ignores the.
A brief introduction to javadoc and doxygen. What’s in a program file? 1. Comments 2. Code.
1 Computer Science 631 Multimedia Systems Prof. Ramin Zabih Computer Science Department CORNELL UNIVERSITY.
1 ENGI 2420 Structured Programming (Lab Tutorial 8) Memorial University of Newfoundland.
Visual Computing Computer Vision 2 INFO410 & INFO350 S2 2015
Data Representation. What is data? Data is information that has been translated into a form that is more convenient to process As information take different.
1 Machine Vision. 2 VISION the most powerful sense.
Low level Computer Vision 1. Thresholding 2. Convolution 3. Morphological Operations 4. Connected Component Extraction 5. Feature Extraction 1.
An Introduction to Computer Vision George J. Grevera, Ph.D.
Planar® DirectLight™ LED Video Wall System
Identify internal hardware devices (e. g
Portable Camera-Based Assistive Text and Product Label Reading From Hand-Held Objects for Blind Persons.
1. 2 What is Digital Image Processing? The term image refers to a two-dimensional light intensity function f(x,y), where x and y denote spatial(plane)
Visual Information Processing. Human Perception V.S. Machine Perception  Human perception: pictorial information improvement for human interpretation.
Image Processing Digital image Fundamentals. Introduction to the course Grading – Project: 30% – Midterm Exam: 30% – Final Exam : 40% – Total: 100% –
A brief introduction to doxygen
Chapter 5 Working with Images
Introduction to javadoc
Machine Vision Acquisition of image data, followed by the processing and interpretation of these data by computer for some useful application like inspection,
Computer Vision Lecture 3: Digital Images
Introduction Computer vision is the analysis of digital images
Lecture 5 Image Characterization ch. 4 of Machine Vision by Wesley E
Introduction to javadoc
Magnetic Resonance Imaging
Introduction Computer vision is the analysis of digital images
Presentation transcript:

Computer Vision Chapter 1 Introduction

 The goal of computer vision is to make useful decisions about real physical objects and scenes based on sensed images.

Applications areas  Industrial inspection  Medical imaging  Image database and query  Satellite & surveillance imagery  Entertainment  Handwriting and printed character recognition

Image dimensionality  1D – audio (sound)  2D – digital camera picture, chest x-ray, ultrasound  3D –Video sequence of 2D images –Multispectral 2D images –Volumetric medical imagery (CT, MRI)  4D –PET-CT –MRI

Image types  Binary  Grayscale  Color  Multispectral

Operations on images  Neighborhood (local) operations  Enhancing the entire image  Combining multiple images –Ex. Differences, noise reduction, blending  Feature extraction –Ex. Area, centroid (center of mass), orientation, lines –invariants

Extracting features

Example features

General hardware discussion  General purpose vs. special purpose (DSP, GPU)  Uniprocessors vs. parallel processors (COWs, multiprocessors)  Sensors (discussed later)

General software discussion  Java vs. C++ –use JBuilder, Visual C++, or other professional IDE (not Ready) –JImageViewer and ImageViewer starter apps  doxygen or JavaDoc for code documentation  Code format  Java audio (1D mono and stereo) start app

Getting started with doxygen  Download from doxy  Download from doxygen.org   Do this only once in directory (folder) containing your source code: doxygen –g   This creates a doxygen configuration file called Doxyfile which you may edit to change default options.   Edit Doxyfile and make sure all EXTRACTs are YES   Then whenever you change your code and wish to update the documentation: doxygen   which updates all documentation in html subdirectory

Getting started with doxygen // /** \brief JImageViewer class. * * Longer description goes here. */ public class JImageViewer extends JFrame implements ActionListener {.

Getting started with doxygen // /** \brief Main application entry point. * * \param args Each image file name in args will cause that image * to be displayed in a window. */ public static void main ( String[] args ) { if (args.length==0) { new JImageViewer(); } else { for (int i = 0; i < args.length; i++) new JImageViewer(args[i]); }

doxygen // int mW; ///< image width int mH; ///< image height int mMin; ///< min image value int mMax; ///< max image value int[] mImage; ///< actual image data //

The good, the bad, and the ugly.  Success is usually hard won!  Problems: –Matching models to reality –Lighting variation –Sensor noise –Occlusion & rotation/translation/scale –Limited resolution  An image is a discrete model of an underlying continuous function  Spatial discretization  Sensed values quantization –Levels of detail (LOD)

Example application: counting bolt holes  Missing bolt hole is a very costly defect during assembly.

Counting bolt holes  Pixel = ?  Dark = 1 = no light = no hole  Light = 0 = light = part of hole  Hole = (ext - int) / 4  External corner = 2x2 neighborhood of exactly 3-1’s (and 1-0)  Internal corner = exactly 3-0’s

Counting bolt holes  External corner = 2x2 neighborhood of exactly 3-1’s (and 1-0)  Internal corner = exactly 3-0’s  How many possible combinations?

Counting bolt holes  Ex. 3 objects row 0 (y’s) column 5 (x’s) (x,y)=(c,r)=(0,0) [r][c]=[0][0] (x,y)=(c,r)=(Cols-1,Rows-1) [r][c]=[Rows-1][Cols-1] adjacent in memory (in C++)

Algorithm for counting holes in a binary image Input: a binary image, M, of R rows and C cols (indexed as M[r][c]) Output: number of holes M contains int external=0, internal=0; for (int r=0; r<R-1; r++) { for (int c=0; c<C-1; c++) { if (isExternal(M,r,c)) external++; else if (isInternal(M,r,c)) internal++; }} return (external-internal)/4;

Hole counting assumptions  All image border pixels must be 1s.  Each region of 0s (holes) must be 4- connected.  Holes must also be simply connected (not contain any object).

Counting bolt holes  Ex. 3 objects –External –Internal

Problems for discussion  Ex. 1.5  First part of 1.6  1.9, 1.11, 1.12, 1.14