The processing occurred on Matlab using the data recorded using the cellphones. In total, more than 100 datasets have been collected from the indie-pocket app, from 12 different users, amounting to about 400 5-second bins of labelled data.
Using a KNN classifier in the 7-principal components domain, the prediction accuracy was 95.6%, as shown in the confusion matrix below.
Confusion matrix for the six pocket types {'On table' 'In Hand' 'Against Head' 'Front Pocket' 'Back Pocket' 'Front Jacket Pocket' 'Handbag' 'Backpack'};
Data from smartphone recording are stored as SQLite database. They contain the following information:
// Add sensors.db definition here
The iid
table contains a random phone id, the app version and basic information about the smartphone:
The sensor_data table contains all recording rows:
_id
variable is the row number.status_id
field corresponds to the activities (tens) and pocket locations (units).sensorName
field describes which sensor data is stored in the row.phase
variable is incremented each time the activity changes or when the recording is paused and resumed.accuracy
field is not used at this time.sensors
field contains the sensors readout formated as a character string.timestamp
field is filled by the OS upon sensor readout and represented in nanoseconds.