Approximate Query Service on Autonomous IoT Cameras
Mengwei Xu1, Xiwen Zhang2, Yunxin Liu3 Gang Huang1, Xuanzhe Liu1, Felix Xiaozhu Lin2
1Peking University, 2Purdue University, 3Microsoft Research,
1
Approximate Query Service on Autonomous IoT Cameras Mengwei Xu 1 , - - PowerPoint PPT Presentation
Approximate Query Service on Autonomous IoT Cameras Mengwei Xu 1 , Xiwen Zhang 2 , Yunxin Liu 3 Gang Huang 1 , Xuanzhe Liu 1 , Felix Xiaozhu Lin 2 1 Peking University, 2 Purdue University, 3 Microsoft Research, 1 Video Analytics is a Killer App
1Peking University, 2Purdue University, 3Microsoft Research,
1
2
3
4
5
Commodity SoCs, RPI-like, chargeable battery
6
Commodity SoCs, RPI-like, chargeable battery Small-sized energy harvester
e.g., “10Wh today”
7
Commodity SoCs, RPI-like, chargeable battery Small-sized energy harvester LPWAN like LoRaWAN, At most a few Kbps
e.g., “10Wh today”
8
Commodity SoCs, RPI-like, chargeable battery Small-sized energy harvester LPWAN like LoRaWAN, At most a few Kbps Concise, numerical video summaries
e.g., “10Wh today”
9
Object Counts
10
Query: (car, 30 mins) Install
11
Query: (car, 30 mins) Install Sample & capture
12
Query: (car, 30 mins) Install
7:00AM-7:30AM [500 + 100] Cars 7:30AM-8:00AM [700 + 140] Cars 8:00AM-8:30AM [800 + 180] Cars 8:30AM-9:00AM [400 + 100] Cars 9:30AM-10:00AM [200 + 80] Cars
Sample & capture
13
Query: (car, 30 mins) Install
7:00AM-7:30AM [500 + 100] Cars 7:30AM-8:00AM [700 + 140] Cars 8:00AM-8:30AM [800 + 180] Cars 8:30AM-9:00AM [400 + 100] Cars 9:30AM-10:00AM [200 + 80] Cars
Sample & capture 200
+80
14
15
Camera Operating System Reinforcement Learning Planner
Sampled frames
Aggregator with error Integration
Selected Neural Net
Object counts with CIs
16
Check our paper for details Focus of the talk
100 150 200 250 300 350
2 4
YOLOv3
17
CI width (smaller, better) Energy Consumption (kJ)
Energy Consumption = E(NN) * frame_num
100 150 200 250 300 350
2 4
YOLOv3 YOLOv2 ssd-inception-v2 ssd-mobilenet-v2
18
CI width (smaller, better) Energy Consumption (kJ)
Energy Consumption = E(NN) * frame_num
100 150 200 250 300 350
2 4
YOLOv3 YOLOv2 ssd-inception-v2 ssd-mobilenet-v2
CI width (smaller, better) Energy Consumption (kJ)
When energy is low: cheaper NNs win
19
When energy is low: cheaper NNs win
When energy is low: more accurate NNs win
20
100 150 200 250 300 350
2 4
YOLOv3 YOLOv2 ssd-inception-v2 ssd-mobilenet-v2
CI width (smaller, better) Energy Consumption (kJ)
When energy is low: cheaper NNs win
When energy is low: more accurate NNs win
21
100 150 200 250 300 350
2 4
YOLOv3 YOLOv2 ssd-inception-v2 ssd-mobilenet-v2
CI width (smaller, better) Energy Consumption (kJ)
Energy/CI front: the combination of all “optimal” count actions with varied energy
22
100 150 200 250 300 350
2 4
YOLOv3 YOLOv2 ssd-inception-v2 ssd-mobilenet-v2
CI width (smaller, better) Energy Consumption (kJ)
When energy is low: cheaper NNs win When energy is low: more accurate NNs win
Energy/CI front: the combination of all “optimal” count actions with varied energy
23
100 150 200 250 300 350
2 4
YOLOv3 YOLOv2 ssd-inception-v2 ssd-mobilenet-v2
CI width (smaller, better) Energy Consumption (kJ)
When energy is low: cheaper NNs win When energy is low: more accurate NNs win
Energy/CI front: the combination of all “optimal” count actions with varied energy
24
Different windows have different energy/CI fronts
100 150 200 250 300 350
2 4
YOLOv3 YOLOv2 ssd-inception-v2 ssd-mobilenet-v2
100 150 200 250 300 350
2 4
9:00AM-9:30AM 7:00PM-7:30PM
When energy is low: cheaper NNs win When energy is low: more accurate NNs win
25
26
A greedy approach: giving energy to the window with the most benefit (i.e., CI width reduction).
[50080] [45070] [60095] [5055] An oracle planner
Energy: 100% Allocate 10%
[58075]
[58075]
27
[50080] [45070] [5055] An oracle planner
Energy: 90% Allocate 10%
[51060]
A greedy approach: giving energy to the window with the most benefit (CI width reduction)
[58075]
28
[50060] [45070] [5055] An oracle planner
Energy: 80% Allocate 10%
[40055]
A greedy approach: giving energy to the window with the most benefit (CI width reduction)
[58075]
29
[50060] [40055] [5055] An oracle planner
Energy: 80%
A greedy approach: giving energy to the window with the most benefit (CI width reduction) unknown
30
Classification Agent Regression Agent Counter # Frames Reward Oracle Planner
𝜈𝑢 𝜏𝑢 …… ……
Observations
(M + N windows) Compared with
for 𝑿𝒖 and run reward function 𝜈𝑢−4 𝜏𝑢−4 𝜈𝑢−3 𝜏𝑢−3 𝜈𝑢−2 𝜏𝑢−2 𝜈𝑢−1 𝜏𝑢−1
Recent N days Recent M windows
31
Classification Agent Regression Agent Counter # Frames Reward Oracle Planner
𝜈𝑢 𝜏𝑢 …… ……
Observations
(M + N windows) Compared with
for 𝑿𝒖 and run reward function 𝜈𝑢−4 𝜏𝑢−4 𝜈𝑢−3 𝜏𝑢−3 𝜈𝑢−2 𝜏𝑢−2 𝜈𝑢−1 𝜏𝑢−1
Recent N days Recent M windows
32
33
Auburn, AL Hampton, NY Jackson, WY Taipei Taipei
34
Ground Truth Error: 11% CI width: 17%
GoOGen11 8ni11 2UacOe 2uUs GoOGen11 8ni11 2UacOe 2uUs GoOGen11 8ni11 2UacOe 2uUs GoOGen11 8ni11 2UacOe 2uUs GoOGen11 8ni11 2UacOe 2uUs 20 40 60 80 95 100 CI CoveUage 3UobabiOity (%)
92 91 92 92 93 95 96 95 94 94 96 97 96 95 95 95 96 95 94 95
Jackson Hampton Cross TaipHi Auburn
Cis cover ground truth with 95% probability (specified)
35
10Wh per day 20Wh per day 30Wh per day
36
37
Oracle planner Elf’s learning- based planner
5 10 15 20 25 30 RPI 4 Intel NCS2 Jetson Nano Edge TPU Mean CI Width (%)
higher E_cap lower E_cap
38
39