50. SMART FAST FORWARD
•20x average speedup
•Compressed domain
processing
•30x faster processing
compared to competition
•3 seconds for every 10
minutes
52. SMART DAILY
•Intelligent video summary
•Daily email on your past day’s activity
- Compressed domain
analysis
- Very fast - totally I/O
bound
- Detect events based
on activity / sensible
motion
55. SMART CAPTION
•Accuracy not critical for application (?!)
•Deep learning classification
•Berkley Caffe
•ImageNet / Microsoft COCO
• Stanford NeuralTalk
•GPU / CUDA powered
•1 second per image
58. FEATURE MATRIX
TrainingCost
Runtime Cost
Face
Detect
Loitering
Trip wire
Area Alert
Left object
Motion
License
Plate
People
Detection
Face
Recognition
Object
Classification
Age
Gender
People
Count
Heat
Map
Smart
Caption
Smart
Fast
Forward
Smart
Daily
Skywatch
Regular
IVA
63. CLOUDVS LOCAL
Cloud Local
How?
Cheap camera
Cloud computer
Special camera
Local computer
Best for
Search classify
Big data
Real-time alerts
Advantages
Easy to deploy manage
Cheap camera
Rental model
Lower bandwidth
Real-time applications
Disadvantages
Higher bandwidth
Maybe not for alerts
Difficult to deploy manage
Expensive camera
Higher upfront cost
65. WE HAVE BUILT STUFFS
•Chief shader architect for Playstation 3 (RSX)
•75% of the GPU chip
•Expensive bugs ( $100K USD each)
•Targeted test, random test, monkey test
•From architecture to driver to hardware
•Shipped over 100M systems
66. WE HAVE INVENTED STUFFS
•OpenCV
•MPEG4 Source / OpenLF
•Fancy publications
•US Patents
67. HOW HARD CAN IT BE?
Get the plumbing done, then add smartness
69. SOFTWARE ENGINEERING
Aspects What do we do?
Development Scrum / continuous integration
Testing Unit / regression testing
Review
Design review / Design patterns
Code review
Operation
Push-button code deployment
Server monitors / camera diagnostic tools
What about
the cameras?
78. #1: BOB SAW ALICE
(AND MAYBE CHARLES)
Alice
Bob
Bob
Alice
Charles
Very early mistake — this won’t happen again
79. •How did this happen?
•Not thread-safe / process-safe
•Unique IDs are not unique (after a certain scale)
•Loose DB network synchronisation
•Old tunnels hijacked by new cameras
•Camera bug — HTTP authentication off in a firmware version
#1: BOB SAW ALICE
(AND MAYBE CHARLES)
80. Alice
•Why it won’t happen again?
#1: BOB SAW ALICE
(AND MAYBE CHARLES)
Alice
Bob
HTTP
Password
authenticated
Charles
Individually signed
CRC’ed files
Scanner to make
sure camera
authentication is on
Channel scanner to
clean up dangling
connections
RESTful API check
for signature
81. #2: FIRMWARE UPGRADE
EQUALS ANGRY CUSTOMERS
•Auto upgrade?
•Bad idea — people unplug and brick the camera
•User-triggered OTA upgrade
•Camera restore to default WiFi settings gone
•Continuous upgrade testing is needed
•Monitor customer upgrade events / failures
82. #3: JAVA - WRITE ONCE,
DEBUG EVERYWHERE
•Browser H.264 decoder / multi-channel player
•Originally JAVA-based. Why?
•Because a big company is using it
•Because Flash was killed by Jobs
•Because we can save money (P2P)
•Tons of support issue (!)
Browser Player
Flash / HTML5
player
83. #3: JAVA - WRITE ONCE,
DEBUG EVERYWHERE
•Browser H.264 decoder / multi-channel player
•Originally JAVA-based. Why?
•Because a big company is using it
•Because Flash was killed by Jobs
•Because we can save money (P2P)
Browser Player
Flash / HTML5
player
Believe in yourself, not the competitor
Choose a popular weapon
Worry about money saving when it
becomes a real issue