SlideShare a Scribd company logo
1 of 99
Download to read offline
Surpassing Humans and Computers with
JELLYBEAN: Crowd-Vision Hybrid Counting
Algorithms
Akash Das Sarma (Stanford University)
Ayush Jain (University of Illinois)
Arnab Nandi (The Ohio State University)
Aditya Parameswaran (University of Illinois)
Jennifer Widom (Stanford University)
1
What is counting, and why is it important?
2
What is counting, and why is it important?
• Counting number of items of a particular type in an image
2
What is counting, and why is it important?
• Counting number of items of a particular type in an image
• Fundamental primitive for computer vision
2
• Many applications - two examples from our paper:
• Biologists: number of cell colonies over time (currently
manually counted by researchers)
What is counting, and why is it important?
• Counting number of items of a particular type in an image
• Fundamental primitive for computer vision
2
• Many applications - two examples from our paper:
• Biologists: number of cell colonies over time (currently
manually counted by researchers)
What is counting, and why is it important?
• Counting number of items of a particular type in an image
• Fundamental primitive for computer vision
(SIMCEP)
2
• Surveillance: number of people at gatherings (for
example, politicians wanting to know attendance at
rallies)
• Many applications - two examples from our paper:
• Biologists: number of cell colonies over time (currently
manually counted by researchers)
What is counting, and why is it important?
• Counting number of items of a particular type in an image
• Fundamental primitive for computer vision
(SIMCEP)
2
• Surveillance: number of people at gatherings (for
example, politicians wanting to know attendance at
rallies)
• Many applications - two examples from our paper:
• Biologists: number of cell colonies over time (currently
manually counted by researchers)
What is counting, and why is it important?
• Counting number of items of a particular type in an image
• Fundamental primitive for computer vision
(SIMCEP)
(Flickr)
2
Counting is hard for computers
3
Counting is hard for computers
Given image
3
True count = 59
Counting is hard for computers
Given image
3
True count = 59
Counting is hard for computers
Pre-trained head detector
(Zhu and Ramanan, CVPR 2012)
Given image
3
True count = 59
Counting is hard for computers
Detected count = 35
Pre-trained head detector
(Zhu and Ramanan, CVPR 2012)
Given image
3
True count = 59
Counting is hard for computers
Detected count = 35
Pre-trained head detector
(Zhu and Ramanan, CVPR 2012)
Given image
3
Not generalizable
Counting is hard for computers
(Zhu and Ramanan, CVPR 2012)
4
True = 92, Detected = 74
True = 75, Detected = 32
Counting is hard for computers
(Zhu and Ramanan, CVPR 2012)
4
True = 92, Detected = 74
True = 75, Detected = 32
True = 84, Detected = 0
True = 60, Detected = 0
True = 41, Detected = 0
Counting is hard for computers
(Zhu and Ramanan, CVPR 2012)
4
Even humans have trouble counting
5
Even humans have trouble counting
Asked workers to count images like:
5
Even humans have trouble counting
Asked workers to count images like:
5
Worker Error
0
2
4
6
8
10
12
14
16
0 10 20 30 40 50 60 70 80
AverageError
Number of Objects
6
Our Goal
6
Our Goal
•When using humans for counting, minimize cost and error
(images of people from Flickr)
6
Our Goal
•When using humans for counting, minimize cost and error
(images of people from Flickr)
•Devise computer-human hybrid solutions when both options are
available (biological images using SIMCEP)
Worker error model and basis for approach
7
Worker Error
0
2
4
6
8
10
12
14
16
0 10 20 30 40 50 60 70 80
AverageError
Number of Objects
Worker error model and basis for approach
7
Worker Error
0
2
4
6
8
10
12
14
16
0 10 20 30 40 50 60 70 80
AverageError
Number of Objects
Threshold Count
Worker error model and basis for approach
7
Worker Error
0
2
4
6
8
10
12
14
16
0 10 20 30 40 50 60 70 80
AverageError
Number of Objects
Threshold Count
Count <= 20: Correct
Worker error model and basis for approach
7
Worker Error
0
2
4
6
8
10
12
14
16
0 10 20 30 40 50 60 70 80
AverageError
Number of Objects
Threshold Count
Count <= 20: Correct
Count > 20: Incorrect
Worker error model and basis for approach
7
Worker Error
0
2
4
6
8
10
12
14
16
0 10 20 30 40 50 60 70 80
AverageError
Number of Objects
Threshold Count
Count <= 20: Correct
Count > 20: Incorrect
Worker error model and basis for approach
Split images until count < 20
7
Worker Error
0
2
4
6
8
10
12
14
16
0 10 20 30 40 50 60 70 80
AverageError
Number of Objects
Human-only Algorithm (Segmentation Tree)
8
Count = 40
Incorrect
Human-only Algorithm (Segmentation Tree)
8
Count = 40
Incorrect
Human-only Algorithm (Segmentation Tree)
8
Count = 40
Incorrect
Human-only Algorithm (Segmentation Tree)
8
Count = 40
Incorrect
Human-only Algorithm (Segmentation Tree)
8
Count = 40
Incorrect
Problem: Miscounting at boundaries
Human-only Algorithm (Segmentation Tree)
8
Heuristic: “Majority head”
Count = 40
Incorrect
Problem: Miscounting at boundaries
Human-only Algorithm (Segmentation Tree)
8
Heuristic: “Majority head”
Count = 40
Incorrect
Count = 25
Incorrect
Count = 26
Incorrect
Problem: Miscounting at boundaries
Human-only Algorithm (Segmentation Tree)
8
Count = 40
Incorrect
Count = 25
Incorrect
Count = 26
Incorrect
Human-only Algorithm (Segmentation Tree)
8
Count = 40
Incorrect
Count = 25
Incorrect
Count = 26
Incorrect
Human-only Algorithm (Segmentation Tree)
8
Count = 40
Incorrect
Count = 25
Incorrect
Count = 26
Incorrect
Human-only Algorithm (Segmentation Tree)
8
Count = 40
Incorrect
Count = 25
Incorrect
Count = 26
Incorrect
Human-only Algorithm (Segmentation Tree)
8
Count = 40
Incorrect
Count = 25
Incorrect
Count = 26
Incorrect
Human-only Algorithm (Segmentation Tree)
8
Count = 40
Incorrect
Count = 25
Incorrect
Count = 26
Incorrect
Count = 17
Human-only Algorithm (Segmentation Tree)
8
Count = 40
Incorrect
Count = 25
Incorrect
Count = 26
Incorrect
Count = 17 Count = 19
Human-only Algorithm (Segmentation Tree)
8
Count = 40
Incorrect
Count = 25
Incorrect
Count = 26
Incorrect
Count = 17
Count = 8
Count = 19
Human-only Algorithm (Segmentation Tree)
8
Count = 40
Incorrect
Count = 25
Incorrect
Count = 26
Incorrect
Count = 17
Count = 8
Count = 19
Count = 12
Human-only Algorithm (Segmentation Tree)
8
Count = 40
Incorrect
Count = 25
Incorrect
Count = 26
Incorrect
Count = 17
Count = 8
Count = 19
Count = 12
Final Count Estimate = 17 + 8 + 19 + 12 = 56
Human-only Algorithm (Segmentation Tree)
8
Count = 40
Incorrect
Count = 25
Incorrect
Count = 26
Incorrect
Count = 17
Count = 8
Count = 19
Count = 12
Final Count Estimate = 17 + 8 + 19 + 12 = 56
True Count = 59, “head detector” count = 35
Human-only Algorithm (Segmentation Tree)
8
Count = 40
Incorrect
Count = 25
Incorrect
Count = 26
Incorrect
Count = 17
Count = 8
Count = 19
Count = 12
Final Count Estimate = 17 + 8 + 19 + 12 = 56
True Count = 59, “head detector” count = 35
Provably optimal for cost
Human-only Algorithm (Segmentation Tree)
8
20
40
60
80
100
120
140
160
180
200
220
40 60 80 100 120 140 160 180 200 220
Actual Count
FS
Exact
OnlyRoot
Experimental Results
(ACCURACY)
9
FS = Our
segmentation tree
approach
EstimatedCount
20
40
60
80
100
120
140
160
180
200
220
40 60 80 100 120 140 160 180 200 220
Actual Count
FS
Exact
OnlyRoot
Correct: 59
Whole image: 40
Our method: 56
Cost: $0.70
Experimental Results
(ACCURACY)
9
FS = Our
segmentation tree
approach
EstimatedCount
20
40
60
80
100
120
140
160
180
200
220
40 60 80 100 120 140 160 180 200 220
Actual Count
FS
Exact
OnlyRoot
Experimental Results
(ACCURACY)
9
FS = Our
segmentation tree
approach
EstimatedCount
20
40
60
80
100
120
140
160
180
200
220
40 60 80 100 120 140 160 180 200 220
Actual Count
FS
Exact
OnlyRoot
Experimental Results
Correct: 75
Whole image: 45
Our method: 72
Cost: $1.10
(ACCURACY)
9
FS = Our
segmentation tree
approach
EstimatedCount
20
40
60
80
100
120
140
160
180
200
220
40 60 80 100 120 140 160 180 200 220
Actual Count
FS
Exact
OnlyRoot
Experimental Results
(ACCURACY)
9
FS = Our
segmentation tree
approach
EstimatedCount
20
40
60
80
100
120
140
160
180
200
220
40 60 80 100 120 140 160 180 200 220
Actual Count
FS
Exact
OnlyRoot
Correct: 164
Whole image: 100
Our method: 144
Cost: $1.70
Experimental Results
(ACCURACY)
9
FS = Our
segmentation tree
approach
EstimatedCount
20
40
60
80
100
120
140
160
180
200
220
40 60 80 100 120 140 160 180 200 220
Actual Count
FS
Exact
OnlyRoot
Experimental Results
(ACCURACY)
9
FS = Our
segmentation tree
approach
EstimatedCount
20
40
60
80
100
120
140
160
180
200
220
40 60 80 100 120 140 160 180 200 220
Actual Count
FS
Exact
OnlyRoot
Experimental Results
(COST)
(ACCURACY)
9
FS = Our
segmentation tree
approach
EstimatedCount
Computer-vision aided
10
Watershed
transform
Computer-vision aided
10
Computer-vision aided
10
1
3
4
Prior (computer)
count estimates
for partitions
Computer-vision aided
10
1
3
4
4
Prior (computer)
count estimates
for partitions
Computer-vision aided
10
1
3
4
4
Prior (computer)
count estimates
for partitionsIncorrect
prior
Computer-vision aided
10
1
3
4
4
Prior (computer)
count estimates
for partitionsIncorrect
prior
Computer-vision aided
• Option1: Human-only (segmentation tree) - priors unused, can do better
10
1
3
4
4
Prior (computer)
count estimates
for partitionsIncorrect
prior
Computer-vision aided
• Option1: Human-only (segmentation tree) - priors unused, can do better
• Option2: Workers count each partition - priors unused, too expensive
10
1
3
4
4
Prior (computer)
count estimates
for partitionsIncorrect
prior
Computer-vision aided
• Option1: Human-only (segmentation tree) - priors unused, can do better
• Option2: Workers count each partition - priors unused, too expensive
• Option3: Group (bin) partitions together, and workers count each bin
10
Computer-vision aided
10
(Bins)
Hybrid approach: Complexity and Algorithm
11
Hybrid approach: Complexity and Algorithm
•Problem: Find minimum number of bins such that (estimated
prior) count of each bin < threshold (20)
11
Hybrid approach: Complexity and Algorithm
•Problem: Find minimum number of bins such that (estimated
prior) count of each bin < threshold (20)
• NP-Complete (reduction from partitioning planar bipartite graphs
(Dyer and Frieze 1985))
11
Hybrid approach: Complexity and Algorithm
•Problem: Find minimum number of bins such that (estimated
prior) count of each bin < threshold (20)
• NP-Complete (reduction from partitioning planar bipartite graphs
(Dyer and Frieze 1985))
11
Hybrid approach: Complexity and Algorithm
•Problem: Find minimum number of bins such that (estimated
prior) count of each bin < threshold (20)
• NP-Complete (reduction from partitioning planar bipartite graphs
(Dyer and Frieze 1985))
•Greedy heuristic:
11
Hybrid approach: Complexity and Algorithm
•Problem: Find minimum number of bins such that (estimated
prior) count of each bin < threshold (20)
• NP-Complete (reduction from partitioning planar bipartite graphs
(Dyer and Frieze 1985))
•Greedy heuristic:
• Grow bin by adding adjacent partitions until threshold reached
11
Hybrid approach: Complexity and Algorithm
•Problem: Find minimum number of bins such that (estimated
prior) count of each bin < threshold (20)
• NP-Complete (reduction from partitioning planar bipartite graphs
(Dyer and Frieze 1985))
•Greedy heuristic:
• Grow bin by adding adjacent partitions until threshold reached
• Gets stuck in bad local optima
11
Hybrid approach: Complexity and Algorithm
•Problem: Find minimum number of bins such that (estimated
prior) count of each bin < threshold (20)
• NP-Complete (reduction from partitioning planar bipartite graphs
(Dyer and Frieze 1985))
•Greedy heuristic:
• Grow bin by adding adjacent partitions until threshold reached
• Gets stuck in bad local optima
11
Hybrid approach: Complexity and Algorithm
•Problem: Find minimum number of bins such that (estimated
prior) count of each bin < threshold (20)
• NP-Complete (reduction from partitioning planar bipartite graphs
(Dyer and Frieze 1985))
•Greedy heuristic:
• Grow bin by adding adjacent partitions until threshold reached
• Gets stuck in bad local optima
•ArticulationAvoidance algorithm:
11
Hybrid approach: Complexity and Algorithm
•Problem: Find minimum number of bins such that (estimated
prior) count of each bin < threshold (20)
• NP-Complete (reduction from partitioning planar bipartite graphs
(Dyer and Frieze 1985))
•Greedy heuristic:
• Grow bin by adding adjacent partitions until threshold reached
• Gets stuck in bad local optima
•ArticulationAvoidance algorithm:
• Grow bins by adding partitions one at a time up to threshold
11
Hybrid approach: Complexity and Algorithm
•Problem: Find minimum number of bins such that (estimated
prior) count of each bin < threshold (20)
• NP-Complete (reduction from partitioning planar bipartite graphs
(Dyer and Frieze 1985))
•Greedy heuristic:
• Grow bin by adding adjacent partitions until threshold reached
• Gets stuck in bad local optima
•ArticulationAvoidance algorithm:
• Grow bins by adding partitions one at a time up to threshold
• Order of partitions decided by priority queue
11
Hybrid approach: Complexity and Algorithm
•Problem: Find minimum number of bins such that (estimated
prior) count of each bin < threshold (20)
• NP-Complete (reduction from partitioning planar bipartite graphs
(Dyer and Frieze 1985))
•Greedy heuristic:
• Grow bin by adding adjacent partitions until threshold reached
• Gets stuck in bad local optima
•ArticulationAvoidance algorithm:
• Grow bins by adding partitions one at a time up to threshold
• Order of partitions decided by priority queue
• Articulation points have lower priority
11
Hybrid approach: Complexity and Algorithm
•Problem: Find minimum number of bins such that (estimated
prior) count of each bin < threshold (20)
• NP-Complete (reduction from partitioning planar bipartite graphs
(Dyer and Frieze 1985))
•Greedy heuristic:
• Grow bin by adding adjacent partitions until threshold reached
• Gets stuck in bad local optima
•ArticulationAvoidance algorithm:
• Grow bins by adding partitions one at a time up to threshold
• Order of partitions decided by priority queue
• Articulation points have lower priority
• Experimentally observed to achieve near minimum possible number
of bins on our dataset
11
0
5
10
15
20
<=-5 -4 -3 -2 -1 0 1 2 3 4 >=5
Deviation from Actual Count
FS
AA
ML
Experimental Results
(ACCURACY)
Numberofimages FS = Human only
AA = Vision-human hybrid
ML = Computer vision only
12
0
5
10
15
20
<=-5 -4 -3 -2 -1 0 1 2 3 4 >=5
Deviation from Actual Count
FS
AA
ML
Experimental Results
(ACCURACY)
NumberofimagesCost($)
(COST)
FS = Human only
AA = Vision-human hybrid
ML = Computer vision only
12
13
Our Contributions
•Novel formulation of counting as search problem over
segmentation tree
•Provably optimal humans-only solution
•Hybrid computer+humans algorithm when possible for lower
cost and error
•Real data experiments
•Images of people under different settings (Flickr)
•Biological images (SIMCEP)
Thank you!
Questions?
14
BONUS SLIDES
15
16
Articulation point example
20
40
60
80
100
120
140
160
180
200
220
40 60 80 100 120 140 160 180 200 220
Actual Count
FS
Exact
OnlyRoot
20
40
60
80
100
120
140
160
180
200
220
40 60 80 100 120 140 160 180 200 220
Actual Count
FS
Exact
OnlyRoot
Correct: 59
Whole image: 40
Our method: 56
Cost: $0.70
20
40
60
80
100
120
140
160
180
200
220
40 60 80 100 120 140 160 180 200 220
Actual Count
FS
Exact
OnlyRoot
Correct: 59
Whole image: 40
Our method: 56
Cost: $0.70
20
40
60
80
100
120
140
160
180
200
220
40 60 80 100 120 140 160 180 200 220
Actual Count
FS
Exact
OnlyRoot
Correct: 41
Whole image: 32
Our method: 29
Cost: $0.30
20
40
60
80
100
120
140
160
180
200
220
40 60 80 100 120 140 160 180 200 220
Actual Count
FS
Exact
OnlyRoot
Correct: 41
Whole image: 32
Our method: 29
Cost: $0.30
20
40
60
80
100
120
140
160
180
200
220
40 60 80 100 120 140 160 180 200 220
Actual Count
FS
Exact
OnlyRoot
Correct: 164
Whole image: 100
Our method: 144
Cost: $1.70
20
40
60
80
100
120
140
160
180
200
220
40 60 80 100 120 140 160 180 200 220
Actual Count
FS
Exact
OnlyRoot
Correct: 164
Whole image: 100
Our method: 144
Cost: $1.70
20
40
60
80
100
120
140
160
180
200
220
40 60 80 100 120 140 160 180 200 220
Actual Count
FS
Exact
OnlyRoot
Correct: 209
Whole image: 199
Our method: 202
Cost: $2.30
20
40
60
80
100
120
140
160
180
200
220
40 60 80 100 120 140 160 180 200 220
Actual Count
FS
Exact
OnlyRoot
18
On the crowd dataset, FS has a much higher accuracy of 97.5%
relative to 70.1% for ML on the 5/12 images ML works on; for the
remaining 7/12 images, ML detects no faces at all.
On the biological dataset, FS has an accuracy of 96.4%. In
comparison, AA increases the accuracy to 99.87%, returning exact
counts for 85% of the images (off on the rest by counts of 1 to at
most 3), while Bio-ML gets only 45% correct (off on the rest by
counts of at least 5).
Accuracy results
19
140
160
180
200
220
240
260
280
300
320
340
140 160 180 200 220 240 260 280 300 320 340
EstimatedCount
Actual Count
AA
Exact
ML
Bio - Accuracy results
20
Sample HIT
21
Binning algorithm performance

More Related Content

Viewers also liked

Computer stages of development
Computer stages of developmentComputer stages of development
Computer stages of development
Amberwasim
 
Classification and generations of computers
Classification and generations of computersClassification and generations of computers
Classification and generations of computers
Khushbu Sonegara
 
Analog and Digital Computers
Analog and Digital ComputersAnalog and Digital Computers
Analog and Digital Computers
iampencilbox
 
Early computers, history , and its types (The institute of chartered accounta...
Early computers, history , and its types (The institute of chartered accounta...Early computers, history , and its types (The institute of chartered accounta...
Early computers, history , and its types (The institute of chartered accounta...
Hemita Dua
 
History of computers and its types
History of computers and its typesHistory of computers and its types
History of computers and its types
Saeel Dabholkar
 
Classification of Computers
Classification of ComputersClassification of Computers
Classification of Computers
iampencilbox
 
Classification of computer
Classification of computerClassification of computer
Classification of computer
Vicky Maliks
 
Analog to digital conversion
Analog to digital conversionAnalog to digital conversion
Analog to digital conversion
Engr Ahmad Khan
 

Viewers also liked (19)

Types Of Computers
Types Of ComputersTypes Of Computers
Types Of Computers
 
Computer stages of development
Computer stages of developmentComputer stages of development
Computer stages of development
 
Classification of digital computers
Classification of digital computersClassification of digital computers
Classification of digital computers
 
Thank you!! :)
Thank you!! :)Thank you!! :)
Thank you!! :)
 
Classification and generations of computers
Classification and generations of computersClassification and generations of computers
Classification and generations of computers
 
Analog and Digital Computers
Analog and Digital ComputersAnalog and Digital Computers
Analog and Digital Computers
 
Early computers, history , and its types (The institute of chartered accounta...
Early computers, history , and its types (The institute of chartered accounta...Early computers, history , and its types (The institute of chartered accounta...
Early computers, history , and its types (The institute of chartered accounta...
 
History of computers and its types
History of computers and its typesHistory of computers and its types
History of computers and its types
 
Classification of Computers
Classification of ComputersClassification of Computers
Classification of Computers
 
Types of computer
Types of computerTypes of computer
Types of computer
 
Classification of computers
Classification of computers Classification of computers
Classification of computers
 
Types of Computer
Types of ComputerTypes of Computer
Types of Computer
 
Types-of-computer-ppt
Types-of-computer-pptTypes-of-computer-ppt
Types-of-computer-ppt
 
Different Types of Computers
Different Types of ComputersDifferent Types of Computers
Different Types of Computers
 
Classification of computer
Classification of computerClassification of computer
Classification of computer
 
Classification of computers
Classification of computersClassification of computers
Classification of computers
 
Types of computers
Types of computersTypes of computers
Types of computers
 
Analog to digital conversion
Analog to digital conversionAnalog to digital conversion
Analog to digital conversion
 
GENERATIONS OF COMPUTER
GENERATIONS OF COMPUTERGENERATIONS OF COMPUTER
GENERATIONS OF COMPUTER
 

Similar to Surpassing Humans and Computers with JELLYBEAN: Crowd-Vision Hybrid Counting Algorithms

Ubiquitious Computing system : Integrating RFID with Face Recognition systems
Ubiquitious Computing system : Integrating RFID with Face Recognition systemsUbiquitious Computing system : Integrating RFID with Face Recognition systems
Ubiquitious Computing system : Integrating RFID with Face Recognition systems
Shahryar Ali
 
Visual diagnostics for more effective machine learning
Visual diagnostics for more effective machine learningVisual diagnostics for more effective machine learning
Visual diagnostics for more effective machine learning
Benjamin Bengfort
 
Machine Learning Tutorial Part - 1 | Machine Learning Tutorial For Beginners ...
Machine Learning Tutorial Part - 1 | Machine Learning Tutorial For Beginners ...Machine Learning Tutorial Part - 1 | Machine Learning Tutorial For Beginners ...
Machine Learning Tutorial Part - 1 | Machine Learning Tutorial For Beginners ...
Simplilearn
 
Polymer Brush Data Processor
Polymer Brush Data ProcessorPolymer Brush Data Processor
Polymer Brush Data Processor
Cory Bethrant
 
2014-mo444-practical-assignment-04-paulo_faria
2014-mo444-practical-assignment-04-paulo_faria2014-mo444-practical-assignment-04-paulo_faria
2014-mo444-practical-assignment-04-paulo_faria
Paulo Faria
 

Similar to Surpassing Humans and Computers with JELLYBEAN: Crowd-Vision Hybrid Counting Algorithms (20)

Introduction to machine learning
Introduction to machine learningIntroduction to machine learning
Introduction to machine learning
 
Database Research Principles Revealed
Database Research Principles RevealedDatabase Research Principles Revealed
Database Research Principles Revealed
 
06FPBasic02.pdf
06FPBasic02.pdf06FPBasic02.pdf
06FPBasic02.pdf
 
Chapter 6. Mining Frequent Patterns, Associations and Correlations Basic Conc...
Chapter 6. Mining Frequent Patterns, Associations and Correlations Basic Conc...Chapter 6. Mining Frequent Patterns, Associations and Correlations Basic Conc...
Chapter 6. Mining Frequent Patterns, Associations and Correlations Basic Conc...
 
Ubiquitious Computing system : Integrating RFID with Face Recognition systems
Ubiquitious Computing system : Integrating RFID with Face Recognition systemsUbiquitious Computing system : Integrating RFID with Face Recognition systems
Ubiquitious Computing system : Integrating RFID with Face Recognition systems
 
Introduction to R Short course Fall 2016
Introduction to R Short course Fall 2016Introduction to R Short course Fall 2016
Introduction to R Short course Fall 2016
 
Software testing
Software testingSoftware testing
Software testing
 
Cs854 lecturenotes01
Cs854 lecturenotes01Cs854 lecturenotes01
Cs854 lecturenotes01
 
⭐⭐⭐⭐⭐ Finding a Dynamical Model of a Social Norm Physical Activity Intervention
⭐⭐⭐⭐⭐ Finding a Dynamical Model of a Social Norm Physical Activity Intervention⭐⭐⭐⭐⭐ Finding a Dynamical Model of a Social Norm Physical Activity Intervention
⭐⭐⭐⭐⭐ Finding a Dynamical Model of a Social Norm Physical Activity Intervention
 
Towards the Characterization of Realistic Models: Evaluation of Multidiscipli...
Towards the Characterization of Realistic Models: Evaluation of Multidiscipli...Towards the Characterization of Realistic Models: Evaluation of Multidiscipli...
Towards the Characterization of Realistic Models: Evaluation of Multidiscipli...
 
Wearable Accelerometer Optimal Positions for Human Motion Recognition(LifeTec...
Wearable Accelerometer Optimal Positions for Human Motion Recognition(LifeTec...Wearable Accelerometer Optimal Positions for Human Motion Recognition(LifeTec...
Wearable Accelerometer Optimal Positions for Human Motion Recognition(LifeTec...
 
Visual diagnostics for more effective machine learning
Visual diagnostics for more effective machine learningVisual diagnostics for more effective machine learning
Visual diagnostics for more effective machine learning
 
Depth-Based Real Time Head Motion Tracking Using 3D Template Matching
Depth-Based Real Time Head Motion Tracking Using 3D Template MatchingDepth-Based Real Time Head Motion Tracking Using 3D Template Matching
Depth-Based Real Time Head Motion Tracking Using 3D Template Matching
 
Machine Learning Tutorial Part - 1 | Machine Learning Tutorial For Beginners ...
Machine Learning Tutorial Part - 1 | Machine Learning Tutorial For Beginners ...Machine Learning Tutorial Part - 1 | Machine Learning Tutorial For Beginners ...
Machine Learning Tutorial Part - 1 | Machine Learning Tutorial For Beginners ...
 
Polymer Brush Data Processor
Polymer Brush Data ProcessorPolymer Brush Data Processor
Polymer Brush Data Processor
 
Health Tests of Entropy Sources on Arduino
Health Tests of Entropy Sources on ArduinoHealth Tests of Entropy Sources on Arduino
Health Tests of Entropy Sources on Arduino
 
ML基本からResNetまで
ML基本からResNetまでML基本からResNetまで
ML基本からResNetまで
 
Sean Kandel - Data profiling: Assessing the overall content and quality of a ...
Sean Kandel - Data profiling: Assessing the overall content and quality of a ...Sean Kandel - Data profiling: Assessing the overall content and quality of a ...
Sean Kandel - Data profiling: Assessing the overall content and quality of a ...
 
2014-mo444-practical-assignment-04-paulo_faria
2014-mo444-practical-assignment-04-paulo_faria2014-mo444-practical-assignment-04-paulo_faria
2014-mo444-practical-assignment-04-paulo_faria
 
07 learning
07 learning07 learning
07 learning
 

Recently uploaded

FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
dollysharma2066
 
Call Now ≽ 9953056974 ≼🔝 Call Girls In New Ashok Nagar ≼🔝 Delhi door step de...
Call Now ≽ 9953056974 ≼🔝 Call Girls In New Ashok Nagar  ≼🔝 Delhi door step de...Call Now ≽ 9953056974 ≼🔝 Call Girls In New Ashok Nagar  ≼🔝 Delhi door step de...
Call Now ≽ 9953056974 ≼🔝 Call Girls In New Ashok Nagar ≼🔝 Delhi door step de...
9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 BookingVIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Booking
dharasingh5698
 
Call Girls in Ramesh Nagar Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
Call Girls in Ramesh Nagar Delhi 💯 Call Us 🔝9953056974 🔝 Escort ServiceCall Girls in Ramesh Nagar Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
Call Girls in Ramesh Nagar Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
9953056974 Low Rate Call Girls In Saket, Delhi NCR
 

Recently uploaded (20)

Water Industry Process Automation & Control Monthly - April 2024
Water Industry Process Automation & Control Monthly - April 2024Water Industry Process Automation & Control Monthly - April 2024
Water Industry Process Automation & Control Monthly - April 2024
 
University management System project report..pdf
University management System project report..pdfUniversity management System project report..pdf
University management System project report..pdf
 
UNIT-II FMM-Flow Through Circular Conduits
UNIT-II FMM-Flow Through Circular ConduitsUNIT-II FMM-Flow Through Circular Conduits
UNIT-II FMM-Flow Through Circular Conduits
 
(INDIRA) Call Girl Aurangabad Call Now 8617697112 Aurangabad Escorts 24x7
(INDIRA) Call Girl Aurangabad Call Now 8617697112 Aurangabad Escorts 24x7(INDIRA) Call Girl Aurangabad Call Now 8617697112 Aurangabad Escorts 24x7
(INDIRA) Call Girl Aurangabad Call Now 8617697112 Aurangabad Escorts 24x7
 
NFPA 5000 2024 standard .
NFPA 5000 2024 standard                                  .NFPA 5000 2024 standard                                  .
NFPA 5000 2024 standard .
 
PVC VS. FIBERGLASS (FRP) GRAVITY SEWER - UNI BELL
PVC VS. FIBERGLASS (FRP) GRAVITY SEWER - UNI BELLPVC VS. FIBERGLASS (FRP) GRAVITY SEWER - UNI BELL
PVC VS. FIBERGLASS (FRP) GRAVITY SEWER - UNI BELL
 
The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...
The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...
The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...
 
Thermal Engineering-R & A / C - unit - V
Thermal Engineering-R & A / C - unit - VThermal Engineering-R & A / C - unit - V
Thermal Engineering-R & A / C - unit - V
 
Coefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptxCoefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptx
 
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
 
Call Now ≽ 9953056974 ≼🔝 Call Girls In New Ashok Nagar ≼🔝 Delhi door step de...
Call Now ≽ 9953056974 ≼🔝 Call Girls In New Ashok Nagar  ≼🔝 Delhi door step de...Call Now ≽ 9953056974 ≼🔝 Call Girls In New Ashok Nagar  ≼🔝 Delhi door step de...
Call Now ≽ 9953056974 ≼🔝 Call Girls In New Ashok Nagar ≼🔝 Delhi door step de...
 
(INDIRA) Call Girl Meerut Call Now 8617697112 Meerut Escorts 24x7
(INDIRA) Call Girl Meerut Call Now 8617697112 Meerut Escorts 24x7(INDIRA) Call Girl Meerut Call Now 8617697112 Meerut Escorts 24x7
(INDIRA) Call Girl Meerut Call Now 8617697112 Meerut Escorts 24x7
 
Double rodded leveling 1 pdf activity 01
Double rodded leveling 1 pdf activity 01Double rodded leveling 1 pdf activity 01
Double rodded leveling 1 pdf activity 01
 
Thermal Engineering -unit - III & IV.ppt
Thermal Engineering -unit - III & IV.pptThermal Engineering -unit - III & IV.ppt
Thermal Engineering -unit - III & IV.ppt
 
VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 BookingVIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Booking
 
Call Girls in Ramesh Nagar Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
Call Girls in Ramesh Nagar Delhi 💯 Call Us 🔝9953056974 🔝 Escort ServiceCall Girls in Ramesh Nagar Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
Call Girls in Ramesh Nagar Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
 
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
 
Roadmap to Membership of RICS - Pathways and Routes
Roadmap to Membership of RICS - Pathways and RoutesRoadmap to Membership of RICS - Pathways and Routes
Roadmap to Membership of RICS - Pathways and Routes
 
UNIT - IV - Air Compressors and its Performance
UNIT - IV - Air Compressors and its PerformanceUNIT - IV - Air Compressors and its Performance
UNIT - IV - Air Compressors and its Performance
 
VIP Model Call Girls Kothrud ( Pune ) Call ON 8005736733 Starting From 5K to ...
VIP Model Call Girls Kothrud ( Pune ) Call ON 8005736733 Starting From 5K to ...VIP Model Call Girls Kothrud ( Pune ) Call ON 8005736733 Starting From 5K to ...
VIP Model Call Girls Kothrud ( Pune ) Call ON 8005736733 Starting From 5K to ...
 

Surpassing Humans and Computers with JELLYBEAN: Crowd-Vision Hybrid Counting Algorithms

  • 1. Surpassing Humans and Computers with JELLYBEAN: Crowd-Vision Hybrid Counting Algorithms Akash Das Sarma (Stanford University) Ayush Jain (University of Illinois) Arnab Nandi (The Ohio State University) Aditya Parameswaran (University of Illinois) Jennifer Widom (Stanford University) 1
  • 2. What is counting, and why is it important? 2
  • 3. What is counting, and why is it important? • Counting number of items of a particular type in an image 2
  • 4. What is counting, and why is it important? • Counting number of items of a particular type in an image • Fundamental primitive for computer vision 2
  • 5. • Many applications - two examples from our paper: • Biologists: number of cell colonies over time (currently manually counted by researchers) What is counting, and why is it important? • Counting number of items of a particular type in an image • Fundamental primitive for computer vision 2
  • 6. • Many applications - two examples from our paper: • Biologists: number of cell colonies over time (currently manually counted by researchers) What is counting, and why is it important? • Counting number of items of a particular type in an image • Fundamental primitive for computer vision (SIMCEP) 2
  • 7. • Surveillance: number of people at gatherings (for example, politicians wanting to know attendance at rallies) • Many applications - two examples from our paper: • Biologists: number of cell colonies over time (currently manually counted by researchers) What is counting, and why is it important? • Counting number of items of a particular type in an image • Fundamental primitive for computer vision (SIMCEP) 2
  • 8. • Surveillance: number of people at gatherings (for example, politicians wanting to know attendance at rallies) • Many applications - two examples from our paper: • Biologists: number of cell colonies over time (currently manually counted by researchers) What is counting, and why is it important? • Counting number of items of a particular type in an image • Fundamental primitive for computer vision (SIMCEP) (Flickr) 2
  • 9. Counting is hard for computers 3
  • 10. Counting is hard for computers Given image 3
  • 11. True count = 59 Counting is hard for computers Given image 3
  • 12. True count = 59 Counting is hard for computers Pre-trained head detector (Zhu and Ramanan, CVPR 2012) Given image 3
  • 13. True count = 59 Counting is hard for computers Detected count = 35 Pre-trained head detector (Zhu and Ramanan, CVPR 2012) Given image 3
  • 14. True count = 59 Counting is hard for computers Detected count = 35 Pre-trained head detector (Zhu and Ramanan, CVPR 2012) Given image 3 Not generalizable
  • 15. Counting is hard for computers (Zhu and Ramanan, CVPR 2012) 4
  • 16. True = 92, Detected = 74 True = 75, Detected = 32 Counting is hard for computers (Zhu and Ramanan, CVPR 2012) 4
  • 17. True = 92, Detected = 74 True = 75, Detected = 32 True = 84, Detected = 0 True = 60, Detected = 0 True = 41, Detected = 0 Counting is hard for computers (Zhu and Ramanan, CVPR 2012) 4
  • 18. Even humans have trouble counting 5
  • 19. Even humans have trouble counting Asked workers to count images like: 5
  • 20. Even humans have trouble counting Asked workers to count images like: 5 Worker Error 0 2 4 6 8 10 12 14 16 0 10 20 30 40 50 60 70 80 AverageError Number of Objects
  • 22. 6 Our Goal •When using humans for counting, minimize cost and error (images of people from Flickr)
  • 23. 6 Our Goal •When using humans for counting, minimize cost and error (images of people from Flickr) •Devise computer-human hybrid solutions when both options are available (biological images using SIMCEP)
  • 24. Worker error model and basis for approach 7 Worker Error 0 2 4 6 8 10 12 14 16 0 10 20 30 40 50 60 70 80 AverageError Number of Objects
  • 25. Worker error model and basis for approach 7 Worker Error 0 2 4 6 8 10 12 14 16 0 10 20 30 40 50 60 70 80 AverageError Number of Objects
  • 26. Threshold Count Worker error model and basis for approach 7 Worker Error 0 2 4 6 8 10 12 14 16 0 10 20 30 40 50 60 70 80 AverageError Number of Objects
  • 27. Threshold Count Count <= 20: Correct Worker error model and basis for approach 7 Worker Error 0 2 4 6 8 10 12 14 16 0 10 20 30 40 50 60 70 80 AverageError Number of Objects
  • 28. Threshold Count Count <= 20: Correct Count > 20: Incorrect Worker error model and basis for approach 7 Worker Error 0 2 4 6 8 10 12 14 16 0 10 20 30 40 50 60 70 80 AverageError Number of Objects
  • 29. Threshold Count Count <= 20: Correct Count > 20: Incorrect Worker error model and basis for approach Split images until count < 20 7 Worker Error 0 2 4 6 8 10 12 14 16 0 10 20 30 40 50 60 70 80 AverageError Number of Objects
  • 31. Count = 40 Incorrect Human-only Algorithm (Segmentation Tree) 8
  • 32. Count = 40 Incorrect Human-only Algorithm (Segmentation Tree) 8
  • 33. Count = 40 Incorrect Human-only Algorithm (Segmentation Tree) 8
  • 34. Count = 40 Incorrect Human-only Algorithm (Segmentation Tree) 8
  • 35. Count = 40 Incorrect Problem: Miscounting at boundaries Human-only Algorithm (Segmentation Tree) 8
  • 36. Heuristic: “Majority head” Count = 40 Incorrect Problem: Miscounting at boundaries Human-only Algorithm (Segmentation Tree) 8
  • 37. Heuristic: “Majority head” Count = 40 Incorrect Count = 25 Incorrect Count = 26 Incorrect Problem: Miscounting at boundaries Human-only Algorithm (Segmentation Tree) 8
  • 38. Count = 40 Incorrect Count = 25 Incorrect Count = 26 Incorrect Human-only Algorithm (Segmentation Tree) 8
  • 39. Count = 40 Incorrect Count = 25 Incorrect Count = 26 Incorrect Human-only Algorithm (Segmentation Tree) 8
  • 40. Count = 40 Incorrect Count = 25 Incorrect Count = 26 Incorrect Human-only Algorithm (Segmentation Tree) 8
  • 41. Count = 40 Incorrect Count = 25 Incorrect Count = 26 Incorrect Human-only Algorithm (Segmentation Tree) 8
  • 42. Count = 40 Incorrect Count = 25 Incorrect Count = 26 Incorrect Human-only Algorithm (Segmentation Tree) 8
  • 43. Count = 40 Incorrect Count = 25 Incorrect Count = 26 Incorrect Count = 17 Human-only Algorithm (Segmentation Tree) 8
  • 44. Count = 40 Incorrect Count = 25 Incorrect Count = 26 Incorrect Count = 17 Count = 19 Human-only Algorithm (Segmentation Tree) 8
  • 45. Count = 40 Incorrect Count = 25 Incorrect Count = 26 Incorrect Count = 17 Count = 8 Count = 19 Human-only Algorithm (Segmentation Tree) 8
  • 46. Count = 40 Incorrect Count = 25 Incorrect Count = 26 Incorrect Count = 17 Count = 8 Count = 19 Count = 12 Human-only Algorithm (Segmentation Tree) 8
  • 47. Count = 40 Incorrect Count = 25 Incorrect Count = 26 Incorrect Count = 17 Count = 8 Count = 19 Count = 12 Final Count Estimate = 17 + 8 + 19 + 12 = 56 Human-only Algorithm (Segmentation Tree) 8
  • 48. Count = 40 Incorrect Count = 25 Incorrect Count = 26 Incorrect Count = 17 Count = 8 Count = 19 Count = 12 Final Count Estimate = 17 + 8 + 19 + 12 = 56 True Count = 59, “head detector” count = 35 Human-only Algorithm (Segmentation Tree) 8
  • 49. Count = 40 Incorrect Count = 25 Incorrect Count = 26 Incorrect Count = 17 Count = 8 Count = 19 Count = 12 Final Count Estimate = 17 + 8 + 19 + 12 = 56 True Count = 59, “head detector” count = 35 Provably optimal for cost Human-only Algorithm (Segmentation Tree) 8
  • 50. 20 40 60 80 100 120 140 160 180 200 220 40 60 80 100 120 140 160 180 200 220 Actual Count FS Exact OnlyRoot Experimental Results (ACCURACY) 9 FS = Our segmentation tree approach EstimatedCount
  • 51. 20 40 60 80 100 120 140 160 180 200 220 40 60 80 100 120 140 160 180 200 220 Actual Count FS Exact OnlyRoot Correct: 59 Whole image: 40 Our method: 56 Cost: $0.70 Experimental Results (ACCURACY) 9 FS = Our segmentation tree approach EstimatedCount
  • 52. 20 40 60 80 100 120 140 160 180 200 220 40 60 80 100 120 140 160 180 200 220 Actual Count FS Exact OnlyRoot Experimental Results (ACCURACY) 9 FS = Our segmentation tree approach EstimatedCount
  • 53. 20 40 60 80 100 120 140 160 180 200 220 40 60 80 100 120 140 160 180 200 220 Actual Count FS Exact OnlyRoot Experimental Results Correct: 75 Whole image: 45 Our method: 72 Cost: $1.10 (ACCURACY) 9 FS = Our segmentation tree approach EstimatedCount
  • 54. 20 40 60 80 100 120 140 160 180 200 220 40 60 80 100 120 140 160 180 200 220 Actual Count FS Exact OnlyRoot Experimental Results (ACCURACY) 9 FS = Our segmentation tree approach EstimatedCount
  • 55. 20 40 60 80 100 120 140 160 180 200 220 40 60 80 100 120 140 160 180 200 220 Actual Count FS Exact OnlyRoot Correct: 164 Whole image: 100 Our method: 144 Cost: $1.70 Experimental Results (ACCURACY) 9 FS = Our segmentation tree approach EstimatedCount
  • 56. 20 40 60 80 100 120 140 160 180 200 220 40 60 80 100 120 140 160 180 200 220 Actual Count FS Exact OnlyRoot Experimental Results (ACCURACY) 9 FS = Our segmentation tree approach EstimatedCount
  • 57. 20 40 60 80 100 120 140 160 180 200 220 40 60 80 100 120 140 160 180 200 220 Actual Count FS Exact OnlyRoot Experimental Results (COST) (ACCURACY) 9 FS = Our segmentation tree approach EstimatedCount
  • 61. 1 3 4 Prior (computer) count estimates for partitions Computer-vision aided 10
  • 62. 1 3 4 4 Prior (computer) count estimates for partitions Computer-vision aided 10
  • 63. 1 3 4 4 Prior (computer) count estimates for partitionsIncorrect prior Computer-vision aided 10
  • 64. 1 3 4 4 Prior (computer) count estimates for partitionsIncorrect prior Computer-vision aided • Option1: Human-only (segmentation tree) - priors unused, can do better 10
  • 65. 1 3 4 4 Prior (computer) count estimates for partitionsIncorrect prior Computer-vision aided • Option1: Human-only (segmentation tree) - priors unused, can do better • Option2: Workers count each partition - priors unused, too expensive 10
  • 66. 1 3 4 4 Prior (computer) count estimates for partitionsIncorrect prior Computer-vision aided • Option1: Human-only (segmentation tree) - priors unused, can do better • Option2: Workers count each partition - priors unused, too expensive • Option3: Group (bin) partitions together, and workers count each bin 10
  • 68. Hybrid approach: Complexity and Algorithm 11
  • 69. Hybrid approach: Complexity and Algorithm •Problem: Find minimum number of bins such that (estimated prior) count of each bin < threshold (20) 11
  • 70. Hybrid approach: Complexity and Algorithm •Problem: Find minimum number of bins such that (estimated prior) count of each bin < threshold (20) • NP-Complete (reduction from partitioning planar bipartite graphs (Dyer and Frieze 1985)) 11
  • 71. Hybrid approach: Complexity and Algorithm •Problem: Find minimum number of bins such that (estimated prior) count of each bin < threshold (20) • NP-Complete (reduction from partitioning planar bipartite graphs (Dyer and Frieze 1985)) 11
  • 72. Hybrid approach: Complexity and Algorithm •Problem: Find minimum number of bins such that (estimated prior) count of each bin < threshold (20) • NP-Complete (reduction from partitioning planar bipartite graphs (Dyer and Frieze 1985)) •Greedy heuristic: 11
  • 73. Hybrid approach: Complexity and Algorithm •Problem: Find minimum number of bins such that (estimated prior) count of each bin < threshold (20) • NP-Complete (reduction from partitioning planar bipartite graphs (Dyer and Frieze 1985)) •Greedy heuristic: • Grow bin by adding adjacent partitions until threshold reached 11
  • 74. Hybrid approach: Complexity and Algorithm •Problem: Find minimum number of bins such that (estimated prior) count of each bin < threshold (20) • NP-Complete (reduction from partitioning planar bipartite graphs (Dyer and Frieze 1985)) •Greedy heuristic: • Grow bin by adding adjacent partitions until threshold reached • Gets stuck in bad local optima 11
  • 75. Hybrid approach: Complexity and Algorithm •Problem: Find minimum number of bins such that (estimated prior) count of each bin < threshold (20) • NP-Complete (reduction from partitioning planar bipartite graphs (Dyer and Frieze 1985)) •Greedy heuristic: • Grow bin by adding adjacent partitions until threshold reached • Gets stuck in bad local optima 11
  • 76. Hybrid approach: Complexity and Algorithm •Problem: Find minimum number of bins such that (estimated prior) count of each bin < threshold (20) • NP-Complete (reduction from partitioning planar bipartite graphs (Dyer and Frieze 1985)) •Greedy heuristic: • Grow bin by adding adjacent partitions until threshold reached • Gets stuck in bad local optima •ArticulationAvoidance algorithm: 11
  • 77. Hybrid approach: Complexity and Algorithm •Problem: Find minimum number of bins such that (estimated prior) count of each bin < threshold (20) • NP-Complete (reduction from partitioning planar bipartite graphs (Dyer and Frieze 1985)) •Greedy heuristic: • Grow bin by adding adjacent partitions until threshold reached • Gets stuck in bad local optima •ArticulationAvoidance algorithm: • Grow bins by adding partitions one at a time up to threshold 11
  • 78. Hybrid approach: Complexity and Algorithm •Problem: Find minimum number of bins such that (estimated prior) count of each bin < threshold (20) • NP-Complete (reduction from partitioning planar bipartite graphs (Dyer and Frieze 1985)) •Greedy heuristic: • Grow bin by adding adjacent partitions until threshold reached • Gets stuck in bad local optima •ArticulationAvoidance algorithm: • Grow bins by adding partitions one at a time up to threshold • Order of partitions decided by priority queue 11
  • 79. Hybrid approach: Complexity and Algorithm •Problem: Find minimum number of bins such that (estimated prior) count of each bin < threshold (20) • NP-Complete (reduction from partitioning planar bipartite graphs (Dyer and Frieze 1985)) •Greedy heuristic: • Grow bin by adding adjacent partitions until threshold reached • Gets stuck in bad local optima •ArticulationAvoidance algorithm: • Grow bins by adding partitions one at a time up to threshold • Order of partitions decided by priority queue • Articulation points have lower priority 11
  • 80. Hybrid approach: Complexity and Algorithm •Problem: Find minimum number of bins such that (estimated prior) count of each bin < threshold (20) • NP-Complete (reduction from partitioning planar bipartite graphs (Dyer and Frieze 1985)) •Greedy heuristic: • Grow bin by adding adjacent partitions until threshold reached • Gets stuck in bad local optima •ArticulationAvoidance algorithm: • Grow bins by adding partitions one at a time up to threshold • Order of partitions decided by priority queue • Articulation points have lower priority • Experimentally observed to achieve near minimum possible number of bins on our dataset 11
  • 81. 0 5 10 15 20 <=-5 -4 -3 -2 -1 0 1 2 3 4 >=5 Deviation from Actual Count FS AA ML Experimental Results (ACCURACY) Numberofimages FS = Human only AA = Vision-human hybrid ML = Computer vision only 12
  • 82. 0 5 10 15 20 <=-5 -4 -3 -2 -1 0 1 2 3 4 >=5 Deviation from Actual Count FS AA ML Experimental Results (ACCURACY) NumberofimagesCost($) (COST) FS = Human only AA = Vision-human hybrid ML = Computer vision only 12
  • 83. 13 Our Contributions •Novel formulation of counting as search problem over segmentation tree •Provably optimal humans-only solution •Hybrid computer+humans algorithm when possible for lower cost and error •Real data experiments •Images of people under different settings (Flickr) •Biological images (SIMCEP)
  • 87. 20 40 60 80 100 120 140 160 180 200 220 40 60 80 100 120 140 160 180 200 220 Actual Count FS Exact OnlyRoot
  • 88. 20 40 60 80 100 120 140 160 180 200 220 40 60 80 100 120 140 160 180 200 220 Actual Count FS Exact OnlyRoot Correct: 59 Whole image: 40 Our method: 56 Cost: $0.70
  • 89. 20 40 60 80 100 120 140 160 180 200 220 40 60 80 100 120 140 160 180 200 220 Actual Count FS Exact OnlyRoot Correct: 59 Whole image: 40 Our method: 56 Cost: $0.70
  • 90. 20 40 60 80 100 120 140 160 180 200 220 40 60 80 100 120 140 160 180 200 220 Actual Count FS Exact OnlyRoot Correct: 41 Whole image: 32 Our method: 29 Cost: $0.30
  • 91. 20 40 60 80 100 120 140 160 180 200 220 40 60 80 100 120 140 160 180 200 220 Actual Count FS Exact OnlyRoot Correct: 41 Whole image: 32 Our method: 29 Cost: $0.30
  • 92. 20 40 60 80 100 120 140 160 180 200 220 40 60 80 100 120 140 160 180 200 220 Actual Count FS Exact OnlyRoot Correct: 164 Whole image: 100 Our method: 144 Cost: $1.70
  • 93. 20 40 60 80 100 120 140 160 180 200 220 40 60 80 100 120 140 160 180 200 220 Actual Count FS Exact OnlyRoot Correct: 164 Whole image: 100 Our method: 144 Cost: $1.70
  • 94. 20 40 60 80 100 120 140 160 180 200 220 40 60 80 100 120 140 160 180 200 220 Actual Count FS Exact OnlyRoot Correct: 209 Whole image: 199 Our method: 202 Cost: $2.30
  • 95. 20 40 60 80 100 120 140 160 180 200 220 40 60 80 100 120 140 160 180 200 220 Actual Count FS Exact OnlyRoot
  • 96. 18 On the crowd dataset, FS has a much higher accuracy of 97.5% relative to 70.1% for ML on the 5/12 images ML works on; for the remaining 7/12 images, ML detects no faces at all. On the biological dataset, FS has an accuracy of 96.4%. In comparison, AA increases the accuracy to 99.87%, returning exact counts for 85% of the images (off on the rest by counts of 1 to at most 3), while Bio-ML gets only 45% correct (off on the rest by counts of at least 5). Accuracy results
  • 97. 19 140 160 180 200 220 240 260 280 300 320 340 140 160 180 200 220 240 260 280 300 320 340 EstimatedCount Actual Count AA Exact ML Bio - Accuracy results