- What is computer vision?
- Image interpretation
- Feature detection
- Motion & tracking
- Machine learning
April 28, 2017
"Computer vision is the science of endowing computers or other machines with vision, or the ability to see."
An image is a function \(f(x,y): \mathbb{R}^2 \rightarrow \mathbb{R}\), giving an intensity value. \(f: [a,b]x[c,d] \rightarrow [min,max]\), where \(a, b,c,d \in \mathbb{R}\)
Color images: \(f: \mathbb{R}^2 \rightarrow \mathbb{R}^3\), \(f(x,y) = [r(x,y),g(x,y),b(x,y)]\)
Images are made up of pixels, or picture elements.
"Computer vision is about taking these functions and computing something from them." (statistics!)
Smoothing an image function is equivalent to blurring the image
How do we measure change in function values? Derivatives!
We have a 2D function, so we get a 2D gradient vector. The gradient points in the direction of most rapid increase in intensity.
How do we take an edge image?
Step 1. Smooth derivatives to suppress noise and compute gradient.
Step 2. Threshold to find regions of "significant" gradient.
Step 3. "Thin" to get localized edge pixels.
Step 4. Link/connect edge pixels
Goal: use relationship between multiple views to recover depth
We need to consider
We want to know which points correspond between two images. Let's assume that
The geometry constrains where the corresponding pixel for a point in the first view can occur in the second view.
For each pixel/window in the left image,
We would like to know the relationship between coordinates in the image and coordinates in the real world.
This involves 2 types of transformations:
Different transformations need different #'s of points to solve.
Our goal is to find points in an image that can be