Upload
melanie-warner
View
219
Download
2
Tags:
Embed Size (px)
Citation preview
Lecture 1Lecture 133
Shape from Shading
2
Shape from ShadingShape from Shading
Looking at finding normal, not distanceNormal: Describe the shape
Assuming point light source is far awayp,q are unknowns
22
222 1 kkbqkapqpI
Ellipse
3
SFS: Data ConstraintSFS: Data Constraint
Given an intensity value I, (p,q) are constrained to be an ellipse
q
p
22
222 1 kkbqkapqpI
4
Self OccludingSelf Occluding
If know self occluding, we can estimate normal.
Normal for self occluding edges are perpendicular to the edge in 2D
5
SFSSFS
In human : tends to assume that light is above
6
SFS: SFS: Classical Work
Horn and Schunk Use (p,q)
Problem: Self Occluding p,q undefinedAt occluding edge
dz/dx p ∞, q∞
To rectified this,sphere coordinates (,) are used
7
Photometric StereoPhotometric Stereo
2/3 lights
-Given L1, Observe I1-Given L2, Observe I2-Given L3, Observe I3
Have 3 lights at different directions with distance ∞-Turn on L1, take pictures-Turn on L2, take pictures-Turn on L3, take pictures
8
Photometric StereoPhotometric Stereo
I(x,y) = kdId(N.L)= N.L
= Albedo = whiteness
9
Photometric StereoPhotometric Stereo
)( izziyyixxi lllI
z
y
x
zyx
zyx
zyx
III
III
III
I
I
I
333
222
111
3
2
1
4 unknowns : albedo and normal
known known unknown
10
Photometric StereoPhotometric Stereo
I = L.N
3
2
11
I
I
I
L
z
y
x
)(,, 2222222222zyxzyxzyx NNNNNNNNN
2 1
11
Photometric StereoPhotometric Stereo
4
3
2
291694
294
293
292
N
12
Remaining TopicRemaining Topic
•Genetic Algorithm•Neural Network•Motion Processing
•Structure•Tracking (Fovea – Center Of Vision)
•Camera Calibration•Object Recognition Models
13
Genetic AlgorithmGenetic Algorithm
Optimization Technique Based on “Survival of Fittest”
1. Population Size – FixedEach solution is an individual
2. Fitness of Individual – Fitness of “Chromosome” (small part) “Goodness”
3. Crossover – Combining Parts of 2 or more individualsNew child is put into population. May die.
4. Mutation – “Random change done to Part of an Individual”
14
Genetic AlgorithmGenetic Algorithm
Charls Darwin – “Survival of Fitness”proposed how species develop
Moth - Industrial Revolution
Yellow Black99% 1%70% 30%20% 80%
15
Genetic AlgorithmGenetic Algorithm
Algorithm:1. Create a random solution of 20 individuals
Sort by fitness { (1,__), (2, __), (3, __), …. }
2. R = Random(0,1)
if (R<0.9) /* Cross Over */
Use 2 or more solutions to create new one
else
Create a new random Individual
Insert new individual in to population if it is fitter than the worst one
Repeat Until the top 20 does not change
16
Problem Statement: InputProblem Statement: Input
• The Order Book consists of Many Instances of a Set of Patterns
• Each Piece of garment can be placed at 0 degrees or 180 degrees
17
Problem Statement: OutputProblem Statement: Output
W
L• Place all the pieces in the order book to use minimum fabric
length on a fixed width roll• Method: Genetic Algorithm
18
About Genetic AlgorithmsAbout Genetic Algorithms
An optimization method that mimics the evolution of life using concepts of survival of the fittest within a fixed population.
Parts of Genetic Algorithm: Individual – a solution with known fitness Population – set of individuals forming the genetic pool Fitness Function – a measure of the goodness of an individual Creating a New Individual through Reproduction:
1. Self Replication 2. Crossover 3. Mutation
Output, result reported as the most fit individual in population.
19
Related Work: Related Work: Pargas and Jain 1993 [8] Pargas and Jain 1993 [8]
R. P. Pargas and R. Jain. A Parallel Stochastic Optimization Algorithm for Solving 2D Bin Packing
Problems. IEEE Int. Conf. on A.I. for Applications. 1993.
A stochastic approach to bin packing 2-D figures Similar to genetic algorithms and simulated annealing Has 80% efficiency on regular shapes Tested on objects that can be packed to 100% efficiency For garments, efficiency cannot be 100% We compare to human expert for benchmark
20
G. Roussel and S. Maouche, “Improvements About Automatic Lay-Planning For Irregular Shapes on Plain
Fabric” IEEE Proc. Systems Man and Cybernetics, System Engineering, 1993.
Shape layout problem for garment pieces Use a heuristic tree search algorithm called -admissible
algorithm Reasonable results Too much time spent back-tracking Tends to have a local minimum problem
Related Work: Related Work: Roussel and Mouche 1993 Roussel and Mouche 1993 [9][9]
21
Related Work: Related Work: Ismail and Hon [11] Ismail and Hon [11]
H.S. Ismail and K.B. Hon. The Nesting of two-dimensional Shapes Using Genetic Algorithms.
Proceedings of The Institution of Mechanical Engineers Part B, Journal of Engineering Manufacture. 1995.
Minimize Raw Mat for cutting 2-D pieces Uses Genetic Algorithms and Heuristics
Simple shapes used Raw Material width not fixed, unrealistic
22
Related Work: Related Work: Bounsaythip Bounsaythip et alet al [10] [10]
C. Bounsaythip, S. Maouche and M. Neus. Evolutionary Search Techniques Application in Automated Lay-Planning Optimization Problem. IEEE Int. Conf. on
Intelligent Systems for the 21st Century, 1995.
Minimize unoccupied space by Evolutionary Algorithm Shape representation by Comb Code Efficiency Measure: Length of Raw Mat (Fabric). Used pant garment pieces, regular shapes Good Results due to regular shapes used.
23
Related Work: Related Work: Bounsaythip and Maouche [12] Bounsaythip and Maouche [12]
C. Bounsaythip and S. Maouche. Irregular Shape Nesting And Placing With Evolutionary Approach”. IEEE Int.
Conf. On Systems Man and Cybernetics. 1997.
Use the comb code representation for each garment piece Shape placement represented as hierarchical tree Allow orientations of 0, 90, 180, and 270 degrees Crossover: combine parts of tree, removing redundancy Results presented on relatively simple shapes, making it
difficult to assess the efficiency achieved
24
Placing Items from Order BookPlacing Items from Order Book
• The Order Book consists of Many Instances of a Set of Patterns
• Each Piece of garment can be placed at 0 degrees or 180 degrees
• Each garment piece is polygonal
• Smooth contours (splines) approximated by convex hull first
1 2 3
4 5 6 7
8 9 10
11 12 13 14
25
Placement Method: Check for Placement Method: Check for OverlapsOverlaps
Upon placing a new polygon, must check that:
1. NO vertex is INSIDE other polygons2. NO other polygon’s vertex is INSIDE
Convex Polygons Assumed
26
Our Genetic AlgorithmOur Genetic Algorithm
1. Set and Randomly Initialize the Population of size P = 15
2. Divide Individual into chromosome strips. Compute strip efficiency.
3. Crossover, Mutation, and Selection:
Repeat
If random (0, 1) < crossover probability
Create a New Individual by Crossover:
Repeat
Sample for a chromosome from the solution biased by efficiency
Recompute chromosome efficiency based on Order Book balance
Until No Efficient Chromosome Available
Fill Remaining Solution Randomly by Order Book balance
Else
Create New Individual by Mutation: Fill Randomly from Order Book
Insert the solution into the new population
Check for Survival of Fittest P = 15
Until(Population has converged)or(No improvement in Best Solution)
27
Step 1: Step 1: Initial Random Population Initial Random Population
S1 = [(5, 1), (3, 0), (4, 1), (1, 1), (2, 0), 15]
S2 = [(1, 0), (3, 0), (2, 1), (3, 0), (4, 0), 17]
S3 = [(5, 1), (3, 0), (7, 1), (1, 1), (2, 0), 20]
S4 = [(1, 0), (5, 0), (4, 0), (3, 1), (2, 0), 21]
S5 = [(1, 0), (3, 0), (5, 0), (2, 1), (4, 0), 23]
S6 = [(4, 0), (5, 0), (1, 1), (2, 0), (3, 0), 25]
S7 = [(3, 1), (4, 0), (5, 1), (2, 0), (1, 0), 27]
S8 = [(5, 1), (4, 0), (3, 1), (2, 1), (1, 0), 29]
S9 = [(3, 0), (2, 0), (1, 0), (5, 1), (4, 1), 32]
S10 = [(4, 1), (3, 0), (1, 1), (2, 1), (5, 1), 34]
An Individual Solution: S = [(F1, O1), (F2, O2),…,(Fn, On), L)]
where S - completed order book Fi - garment piece number
Oi - orientation at 0 or 180 degrees L - Length of Fabric used
5 3
4
1 2
7
28
Step 2: Determine StripsStep 2: Determine Strips
W
Lstr1 Lstr2
L
Lstr3 Each Strip is determined bylargest piece along column.
Efficiency of each strip is Computed, used for crossover
29
Crossover: Crossover: Sampling Within Population Sampling Within Population
11minmax
max
LLLL
BLB P = LB
LB
30
Crossover: Crossover: Sampling for Efficient Sampling for Efficient StripsStrips
11minmax
min
EEEE
BEB P = EB
EB
• After sampling from population for 4 best solutions, Crossover takes place using efficient strips first
31
Crossover: Crossover: Efficiency Decreases over Efficiency Decreases over Time Time
• Efficiency decreases as Order Book fills up• Once Efficiency too low, fill remaining items randomly
high lowered
32
Mutation:Mutation: New Random Individual New Random Individual
• When Efficiency low, fill randomly is partly like mutation
• Mutation by generating a new random solution
• This new individual usually does not survive
• Our results are compared with layout by human expert
33
Experimental Result 1: Experimental Result 1: RectanglesRectangles
6 Sets in Order Book
G.A.: 1:15 Hrs.
34
Rectangles by Human ExpertRectangles by Human Expert
Manually: 0:25 Hrs.
35
Experimental Result 2: Experimental Result 2: Shirt Pieces Shirt Pieces
10 Sets in Order Book
36
Shirt Pcs. (10 orders) by G.A.Shirt Pcs. (10 orders) by G.A.
G.A.: 51:08 Hrs.
37
Shirt Pcs. (10 orders) by HumanShirt Pcs. (10 orders) by Human
Manually: 1:25 Hrs.
38
Experimental Result 3: Experimental Result 3: Multi-Edged Shapes by G.A. Multi-Edged Shapes by G.A.
3 Sets in Order Book
39
Multi-Edged G.A. vs. HumanMulti-Edged G.A. vs. HumanG.A.: 0:57 Hrs.
40
52
54
56
58
60
62
0 5 10 15 20 25 30 35 40 45 50 55 60 65 70 75
Iterations
E %1
2
3
5
4
Finding Crossover NumberFinding Crossover Number
41
Finding Good Population SizeFinding Good Population Size
50
52
54
56
58
60
62
0 5 10 15 20 25 30 35 40 45 50 55 60 65 70 75
E %
Iterations
10
15
20
25 30
42
Discussion and ConclusionDiscussion and Conclusion
Main Problem: successive crossover reduces efficiency of good strips.
Efficiency 3-5% lower than human expert, while taking more time. Efficiency depends on the complexity of the piece, making it hard to
compare results among researchers.
high lowered