手首に付けた加速度センサーで日常の活動を記録したデータセットが公開されています。
https://archive.ics.uci.edu/ml/datasets/Dataset+for+ADL+Recognition+with+Wrist-worn+Accelerometer 大量のデータというわけではありませんが、合計839ファイルあり、ファイル単位でラベルが付いています。 クラス数は14です。具体的には、- 歯磨き
- 階段を上る
- 髪を梳く
- 階段を下りる
- 飲み物を飲む
- 肉を食べる
- スープを飲む
- ベッドから起きる
- ベッドで横になる
- 水を注ぐ
- 椅子に座る
- 椅子から立ち上がる
- 電話する
- 歩く
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 | #!/bin/bash
DATADIR="ADL_Dataset/HMP_Dataset"
# Collect all files
find $DATADIR -iname "Accelerometer*.txt" | grep -v MODEL | sed 's#^.*/c/#/#' > all.list
# Make a category list
sed 's/.*Accelerometer-[0-9]\{4\}-[0-9]\{2\}-[0-9]\{2\}-[0-9]\{2\}-[0-9]\{2\}-[0-9]\{2\}-//' all.list | \
sed 's/-.*//' | sort | uniq | awk 'BEGIN{c=0}{print c" "$1; c+=1}' > id2cat.list
# Make a category-ID mapper
declare -A CAT2ID
exec < id2cat.list
while read id cat
do
CAT2ID[$cat]=$id
done
echo ${CAT2ID[getup_bed]}
# Add category ID into all.list and randomize it
{
while read line
do
category=${line%-*}
category=${category##*-}
echo ${CAT2ID[$category]}" "$line
done < all.list
} | sort -R > all.random.list
# Make training set and validation set
N=$(wc -l all.list | awk '{print $1}')
TRAIN=$((N*4/5))
VAL=$((N-TRAIN))
head -n $TRAIN all.random.list > train.list
tail -n $VAL all.random.list > val.list
|
Class ID | # of train files |
# of val files |
0 | 10 | 2 |
1 | 74 | 28 |
2 | 27 | 4 |
3 | 35 | 7 |
4 | 83 | 17 |
5 | 2 | 3 |
6 | 1 | 2 |
7 | 80 | 21 |
8 | 22 | 6 |
9 | 83 | 17 |
10 | 82 | 18 |
11 | 85 | 17 |
12 | 11 | 2 |
13 | 76 | 24 |
0 件のコメント :
コメントを投稿