際際滷

際際滷Share a Scribd company logo
People Identification
via sensor on wearable device
?? Arthur Pikman
?? Brian Chen
Intel-NTU Connected Context Computing Center
Intel-NTU Connected Context Computing Center 2
Agenda
?? Previous Work
?? Problem Statement
?? Progression
?? Methodology
?? Data Analyzing
?? Conclusion
Intel-NTU Connected Context Computing Center
Intel-NTU Connected Context Computing Center 3
Previous Work
?? Edison Environment Setting
?? Including Wi-Fi, Bluetooth and GPIO setting
?? Data Collecting
?? Using mobile as a gateway to transport data from
ECOMINI( MPU9250 ) via BLE and manually controlling
start and end.
?? Smart Things Environment Setting
?? Tried to receive event-notifying on phone app
Intel-NTU Connected Context Computing Center
Intel-NTU Connected Context Computing Center 4
Problem Statement
?? Using SmartThings sensors
?? To trigger movement¨s start and end
?? To receive data from SmartThings Hub to Arduino with
ST_Shield
?? Communicating Arduino and Edison via usb serial port
?? Building a BLE communication for transporting data
?? BLE GATT service
?? Data analyze
?? To recognize people identity
Intel-NTU Connected Context Computing Center
Intel-NTU Connected Context Computing Center 5
Progression
What we got last time´
BLE WiFi
Intel-NTU Connected Context Computing Center
Intel-NTU Connected Context Computing Center 6
Progression
What we got now´
?? Automatic progress of data
processing
Infrared Sensor (Start)
Magnet Sensor (Finish)
Intel-NTU Connected Context Computing Center
Intel-NTU Connected Context Computing Center 7
Progression
What we got now´
?? New data collection
process
The data from the ST
sensors transferred to
Arduino Uno ST shield,
which send ^on ̄ or ^off ̄
command to the Edison
board.
We add a button
sensor to Arduino Uno
in order to start collect
the data from the
each iteration from
the same spot.
Intel-NTU Connected Context Computing Center
Intel-NTU Connected Context Computing Center 8
Progression
What we got now´
The last part is
BLE connection
between two
Edison boards.
Python code
commands will
start ^reading ̄
the data from the
accelerometer
that attached to
the second
Edison board
Second Edison board
MPU6050
accelerometer
Intel-NTU Connected Context Computing Center
Intel-NTU Connected Context Computing Center 9
Progression
Video Demo
Intel-NTU Connected Context Computing Center
Intel-NTU Connected Context Computing Center 10
Methodology
Using SmartThings sensors to trigger movement¨s start
and end
	
′? Using infra-red motion detector and magnet sensor
′? Configure both sensor by using groovy programing
language
′? Firstly I was thinking that groovy is just a simple and small
programing language for SmartThings only. But´
Intel-NTU Connected Context Computing Center
Intel-NTU Connected Context Computing Center 11
Methodology
Groovy code example
Intel-NTU Connected Context Computing Center
Intel-NTU Connected Context Computing Center 12
Methodology
To receive data from SmartThings Hub to Arduino with
ST_Shield	
?? Looking for a way to send ST sensor data to Edison board.
?? No ST packages for Edison board
?? Arduino Uno ST shield C configured like ST hub
?? Why not all on Arduino?
Intel-NTU Connected Context Computing Center
Intel-NTU Connected Context Computing Center 13
Methodology
Communicating Arduino and Edison via usb serial port
?? Arduino Uno got no WIFI and no Bluetooth connections
( without adding new shields)
?? We decided to use USB cable to read serial port data from
the Arduino and use it on the Edison.
?? After a long unsuccessful period´
Just moved
the switch to
the right
Intel-NTU Connected Context Computing Center
Intel-NTU Connected Context Computing Center 14
What I learned
?? Basic Groovy, JavaScript and Python programing languages
?? Work with Linux environment
?? Configure Edison board and Arduino Uno
?? Write Arduino code
?? Soldering
?? Working in research environment
?? A little Chinese
Intel-NTU Connected Context Computing Center
Intel-NTU Connected Context Computing Center 15
Methodology
Building a BLE communication for transporting data
?? Bluetooth Low Energy
?? Low energy cost
?? Low transfer rate
?? Good coexistence with Wi-Fi
?? Server side
?? To provide read-offset for accessing
?? Client side
?? Storing Data and uploading to cloud server
Intel-NTU Connected Context Computing Center
Intel-NTU Connected Context Computing Center 16
Methodology
Server side
?? Bleno library
?? Provide read-offset
?? Solving delay of read request
?? Creating uint8 array[6] offset for accessing once only
Type
 Properties
 Data Type
 Description
0xAAAF (Service)
 N/A
 N/A
 N/A
0xAAA1
 Read only
 uint16
 accX
´
 ´
 ´
 ´
0xAAA6
 Read only
 uint16
 gyroZ
0xAAA7
 Read only
 Uint16 array[6]
 mix
Intel-NTU Connected Context Computing Center
Intel-NTU Connected Context Computing Center 17
Methodology
Client side and csv file format
?? BluePy library
?? Storing data as a csv file for analyzing
?? ID, AccX, AccY, AccZ, GyroX, GyroY, GyroZ, TimeStamp
Intel-NTU Connected Context Computing Center
Intel-NTU Connected Context Computing Center 18
Data Analyzing
Gait Recognition
?? Gait recognition is a behavioral biometric modality that
identifies people based on their unique walking pattern.
Intel-NTU Connected Context Computing Center
Intel-NTU Connected Context Computing Center 19
Data Analyzing
?? How to use linear svm to separate different identity by
classifier when length of each data are time-dependent?
How to select the features?
?? Last time we simply choose the longest time period and let
others fill zero behind.
?? Dynamic Time Warping
Crouse, Michael B., Kevin Chen, and H. T. Kung. ^Gait Recognition Using Encodings With Flexible Similarity Measures. ̄ (2014).
Intel-NTU Connected Context Computing Center
Intel-NTU Connected Context Computing Center 20
Data Analyzing
?? In time series analysis, dynamic time warping (DTW) is
an algorithm for measuring similarity between two temporal
sequences which may vary in time or speed.
?? Longest Common Subsequence
Dynamic Time Warping
Intel-NTU Connected Context Computing Center
Intel-NTU Connected Context Computing Center 21
Data Analyzing
?? DTW Minimum Accumulation Distance
Dynamic Time Warping
)}1,(),1,1(),,1(min{),(),( ????+= jiAjiAjiAjiDjiA
5
 4
 8
 3
 4
 6
 1
-1
 2
 2
 3
 10
 0
 5
4
 3
 7
 2
 5
 5
 0
2
 1
 5
 0
 7
 3
 2
1
 -3
 2
 9
 -1
 4
5
 10
 14
 9
 13
 17
 12
-1
 6
 6
 9
 18
 11
 16
4
 4
 8
 8
 11
 16
 16
2
 1
 6
 6
 13
 16
 18
1
 -3
 2
 9
 -1
 4
Distance
Minimum
Accumulation
Distance
Intel-NTU Connected Context Computing Center
Intel-NTU Connected Context Computing Center 22
Data Analyzing
?? Compute the scalar signal
?? Feature Encoding
?? Random patch dictionary
?? Distance encoding
?? Independent dictionaries
Feature Selection
Intel-NTU Connected Context Computing Center
Intel-NTU Connected Context Computing Center 23
Data Analyzing
?? Demo
Experiment
Intel-NTU Connected Context Computing Center
Intel-NTU Connected Context Computing Center 24
Data Analyzing
Result
Intel-NTU Connected Context Computing Center
Intel-NTU Connected Context Computing Center 25
What I learned
?? How to build a BLE GATT server and how to access it
?? Javascript, Edison Board
?? A little Hebrew
Intel-NTU Connected Context Computing Center
Intel-NTU Connected Context Computing Center 26
Conclusion
?? SmartThings system is unreliable for research
?? Even a simple movement is enough to recognize the
difference between one person to another.
?? Intel Edison is good
Intel-NTU Connected Context Computing Center
Intel-NTU Connected Context Computing Center 27
27
Thanks
Q&A

More Related Content

People Identification

  • 1. People Identification via sensor on wearable device ?? Arthur Pikman ?? Brian Chen
  • 2. Intel-NTU Connected Context Computing Center Intel-NTU Connected Context Computing Center 2 Agenda ?? Previous Work ?? Problem Statement ?? Progression ?? Methodology ?? Data Analyzing ?? Conclusion
  • 3. Intel-NTU Connected Context Computing Center Intel-NTU Connected Context Computing Center 3 Previous Work ?? Edison Environment Setting ?? Including Wi-Fi, Bluetooth and GPIO setting ?? Data Collecting ?? Using mobile as a gateway to transport data from ECOMINI( MPU9250 ) via BLE and manually controlling start and end. ?? Smart Things Environment Setting ?? Tried to receive event-notifying on phone app
  • 4. Intel-NTU Connected Context Computing Center Intel-NTU Connected Context Computing Center 4 Problem Statement ?? Using SmartThings sensors ?? To trigger movement¨s start and end ?? To receive data from SmartThings Hub to Arduino with ST_Shield ?? Communicating Arduino and Edison via usb serial port ?? Building a BLE communication for transporting data ?? BLE GATT service ?? Data analyze ?? To recognize people identity
  • 5. Intel-NTU Connected Context Computing Center Intel-NTU Connected Context Computing Center 5 Progression What we got last time´ BLE WiFi
  • 6. Intel-NTU Connected Context Computing Center Intel-NTU Connected Context Computing Center 6 Progression What we got now´ ?? Automatic progress of data processing Infrared Sensor (Start) Magnet Sensor (Finish)
  • 7. Intel-NTU Connected Context Computing Center Intel-NTU Connected Context Computing Center 7 Progression What we got now´ ?? New data collection process The data from the ST sensors transferred to Arduino Uno ST shield, which send ^on ̄ or ^off ̄ command to the Edison board. We add a button sensor to Arduino Uno in order to start collect the data from the each iteration from the same spot.
  • 8. Intel-NTU Connected Context Computing Center Intel-NTU Connected Context Computing Center 8 Progression What we got now´ The last part is BLE connection between two Edison boards. Python code commands will start ^reading ̄ the data from the accelerometer that attached to the second Edison board Second Edison board MPU6050 accelerometer
  • 9. Intel-NTU Connected Context Computing Center Intel-NTU Connected Context Computing Center 9 Progression Video Demo
  • 10. Intel-NTU Connected Context Computing Center Intel-NTU Connected Context Computing Center 10 Methodology Using SmartThings sensors to trigger movement¨s start and end ′? Using infra-red motion detector and magnet sensor ′? Configure both sensor by using groovy programing language ′? Firstly I was thinking that groovy is just a simple and small programing language for SmartThings only. But´
  • 11. Intel-NTU Connected Context Computing Center Intel-NTU Connected Context Computing Center 11 Methodology Groovy code example
  • 12. Intel-NTU Connected Context Computing Center Intel-NTU Connected Context Computing Center 12 Methodology To receive data from SmartThings Hub to Arduino with ST_Shield ?? Looking for a way to send ST sensor data to Edison board. ?? No ST packages for Edison board ?? Arduino Uno ST shield C configured like ST hub ?? Why not all on Arduino?
  • 13. Intel-NTU Connected Context Computing Center Intel-NTU Connected Context Computing Center 13 Methodology Communicating Arduino and Edison via usb serial port ?? Arduino Uno got no WIFI and no Bluetooth connections ( without adding new shields) ?? We decided to use USB cable to read serial port data from the Arduino and use it on the Edison. ?? After a long unsuccessful period´ Just moved the switch to the right
  • 14. Intel-NTU Connected Context Computing Center Intel-NTU Connected Context Computing Center 14 What I learned ?? Basic Groovy, JavaScript and Python programing languages ?? Work with Linux environment ?? Configure Edison board and Arduino Uno ?? Write Arduino code ?? Soldering ?? Working in research environment ?? A little Chinese
  • 15. Intel-NTU Connected Context Computing Center Intel-NTU Connected Context Computing Center 15 Methodology Building a BLE communication for transporting data ?? Bluetooth Low Energy ?? Low energy cost ?? Low transfer rate ?? Good coexistence with Wi-Fi ?? Server side ?? To provide read-offset for accessing ?? Client side ?? Storing Data and uploading to cloud server
  • 16. Intel-NTU Connected Context Computing Center Intel-NTU Connected Context Computing Center 16 Methodology Server side ?? Bleno library ?? Provide read-offset ?? Solving delay of read request ?? Creating uint8 array[6] offset for accessing once only Type Properties Data Type Description 0xAAAF (Service) N/A N/A N/A 0xAAA1 Read only uint16 accX ´ ´ ´ ´ 0xAAA6 Read only uint16 gyroZ 0xAAA7 Read only Uint16 array[6] mix
  • 17. Intel-NTU Connected Context Computing Center Intel-NTU Connected Context Computing Center 17 Methodology Client side and csv file format ?? BluePy library ?? Storing data as a csv file for analyzing ?? ID, AccX, AccY, AccZ, GyroX, GyroY, GyroZ, TimeStamp
  • 18. Intel-NTU Connected Context Computing Center Intel-NTU Connected Context Computing Center 18 Data Analyzing Gait Recognition ?? Gait recognition is a behavioral biometric modality that identifies people based on their unique walking pattern.
  • 19. Intel-NTU Connected Context Computing Center Intel-NTU Connected Context Computing Center 19 Data Analyzing ?? How to use linear svm to separate different identity by classifier when length of each data are time-dependent? How to select the features? ?? Last time we simply choose the longest time period and let others fill zero behind. ?? Dynamic Time Warping Crouse, Michael B., Kevin Chen, and H. T. Kung. ^Gait Recognition Using Encodings With Flexible Similarity Measures. ̄ (2014).
  • 20. Intel-NTU Connected Context Computing Center Intel-NTU Connected Context Computing Center 20 Data Analyzing ?? In time series analysis, dynamic time warping (DTW) is an algorithm for measuring similarity between two temporal sequences which may vary in time or speed. ?? Longest Common Subsequence Dynamic Time Warping
  • 21. Intel-NTU Connected Context Computing Center Intel-NTU Connected Context Computing Center 21 Data Analyzing ?? DTW Minimum Accumulation Distance Dynamic Time Warping )}1,(),1,1(),,1(min{),(),( ????+= jiAjiAjiAjiDjiA 5 4 8 3 4 6 1 -1 2 2 3 10 0 5 4 3 7 2 5 5 0 2 1 5 0 7 3 2 1 -3 2 9 -1 4 5 10 14 9 13 17 12 -1 6 6 9 18 11 16 4 4 8 8 11 16 16 2 1 6 6 13 16 18 1 -3 2 9 -1 4 Distance Minimum Accumulation Distance
  • 22. Intel-NTU Connected Context Computing Center Intel-NTU Connected Context Computing Center 22 Data Analyzing ?? Compute the scalar signal ?? Feature Encoding ?? Random patch dictionary ?? Distance encoding ?? Independent dictionaries Feature Selection
  • 23. Intel-NTU Connected Context Computing Center Intel-NTU Connected Context Computing Center 23 Data Analyzing ?? Demo Experiment
  • 24. Intel-NTU Connected Context Computing Center Intel-NTU Connected Context Computing Center 24 Data Analyzing Result
  • 25. Intel-NTU Connected Context Computing Center Intel-NTU Connected Context Computing Center 25 What I learned ?? How to build a BLE GATT server and how to access it ?? Javascript, Edison Board ?? A little Hebrew
  • 26. Intel-NTU Connected Context Computing Center Intel-NTU Connected Context Computing Center 26 Conclusion ?? SmartThings system is unreliable for research ?? Even a simple movement is enough to recognize the difference between one person to another. ?? Intel Edison is good
  • 27. Intel-NTU Connected Context Computing Center Intel-NTU Connected Context Computing Center 27 27 Thanks Q&A