1
|
- CS accounts
- Project 1 is out today
- help session at the end of class
|
2
|
- Today’s Readings
- Intelligent Scissors
- http://www.cs.washington.edu/education/courses/576/03sp/readings/mort-sigg95.pdf
|
3
|
- What Defines an Object?
- Subjective problem, but has been well-studied
- Gestalt Laws seek to formalize this
- proximity, similarity, continuation, closure, common fate
- see notes by Steve Joordens, U. Toronto
|
4
|
|
5
|
- Many approaches proposed
- color cues
- region cues
- contour cues
- We will consider a few of these
- Today:
- Intelligent Scissors (contour-based)
- E. N. Mortensen and W. A. Barrett, Intelligent Scissors for Image
Composition, in ACM Computer Graphics (SIGGRAPH `95), pp. 191-198,
1995
|
6
|
|
7
|
- Approach answers a basic question
- Q: how to find a path from seed
to mouse that follows object boundary as closely as possible?
- A: define a path that stays as
close as possible to edges
|
8
|
- Basic Idea
- Define edge score for each pixel
- edge pixels have low cost
- Find lowest cost path from seed to mouse
|
9
|
- Graph Search Algorithm
- Computes minimum cost path from seed to all other pixels
|
10
|
- Treat the image as a graph
|
11
|
- Treat the image as a graph
|
12
|
- c can be computed using a cross-correlation filter
- assume it is centered at p
- Also typically scale c by it’s length
- set c = (max-|filter response|) * length(c)
- where max = maximum |filter response| over all pixels in the image
|
13
|
- c can be computed using a cross-correlation filter
- assume it is centered at p
- Also typically scale c by it’s length
- set c = (max-|filter response|) * length(c)
- where max = maximum |filter response| over all pixels in the image
|
14
|
|
15
|
|
16
|
|
17
|
|
18
|
|
19
|
- Properties
- It computes the minimum cost path from the seed to every node in the
graph. This set of minimum paths
is represented as a tree
- Running time, with N pixels:
- O(N2) time if you use an active list
- O(N log N) if you use an active priority queue (heap)
- takes < second for a typical (640x480) image
- Once this tree is computed once, we can extract the optimal path from
any point to the seed in O(N/2) time.
- it runs in real time as the mouse moves
- What happens when the user specifies a new seed?
|
20
|
|