UniMib SHAR Dataset Loader
UniMib
UniMib SHARデータセットに記録されているセンサデータとメタデータを読み込む.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
path |
Path |
UniMib SHARデータセットのパス(path/to/dataset/data). |
required |
load(self, data_type, window_size=None, stride=None, ftrim_sec=3, btrim_sec=3, subjects=None)
UniMib SHARデータセットを読み込み,sliding-window処理を行ったデータを返す.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
data_type |
str |
ロードするデータの種類(adl, fall, full, raw)を選択する(full = adl + fall). rawは前処理済みデータではない生のデータを扱う. |
required |
window_size |
Optional[int] |
フレーム分けするサンプルサイズ data_type != 'raw'の場合は強制的に151となるが, data_type == 'raw'の場合は必ず指定する必要がある. |
None |
stride |
Optional[int] |
ウィンドウの移動幅 data_type != 'raw'の場合は指定する必要はないが, data_type == 'raw'の場合は必ず指定する必要がある. |
None |
ftrim_sec |
int |
セグメント先頭のトリミングサイズ(単位は秒) |
3 |
btrim_sec |
int |
セグメント末尾のトリミングサイズ(単位は秒) |
3 |
subjects |
Optional[list] |
ロードする被験者を指定する.指定されない場合はすべての被験者のデータを返す. 被験者は計9名おり,それぞれに整数のIDが割り当てられている. 被験者ID: [1, 2, ..., 30] |
None |
Examples:
>>> unimib_path = Path('path/to/dataset')
>>> unimib = UniMib(unimib_path)
>>>
>>> subjects = [1, 2, 3]
>>>
>>> x, y = unimib.load(data_type='full', subjects=subjects)
>>> print('full - x: {}, y: {}'.format(x.shape, y.shape))
>>> # > full - x: (?, 3, 151), y: (?, 2)
>>>
>>> x, y = unimib.load(data_type='raw', window_size=64, stride=64, ftrim_sec=0, btrim_sec=0, subjects=subjects)
>>> print('raw - x: {}, y: {}'.format(x.shape, y.shape))
>>> # > raw - x: (?, 3, 64), y: (?, 2)
Returns:
Type | Description |
---|---|
Tuple[numpy.ndarray, numpy.ndarray] |
sliding-windowで切り出した入力とターゲットのフレームリスト x_framesは3次元配列で構造は大まかに(Batch, Channels, Frame)のようになっている. Channelsは加速度センサの軸を表しており,先頭からx, y, zである. また,このローダはdata_typeによってwindow_sizeの挙動が変わり, data_type != 'raw'の場合はwindow_sizeは強制的に151となる. y_framesは2次元配列で構造は大まかに(Batch, Labels)のようになっている. Labelsは先頭からactivity,subjectを表している. y_framesはデータセット内の値をそのまま返すため,分類で用いる際はラベルの再割り当てが必要となることに注意する. |
load(path, data_type='full')
Function for loading UniMib SHAR dataset
Parameters:
Name | Type | Description | Default |
---|---|---|---|
path |
Union[pathlib.Path, str] |
Directory path of UniMib SHAR dataset('data' directory). |
required |
data_type |
str |
Data type
|
'full' |
Returns:
Type | Description |
---|---|
Tuple[List[pandas.core.frame.DataFrame], pandas.core.frame.DataFrame] |
Sensor data segmented by activity and subject. |
load_raw(path, data_type='full')
Function for loading raw data of UniMib SHAR dataset
Parameters:
Name | Type | Description | Default |
---|---|---|---|
path |
Path |
Directory path of UniMib SHAR dataset('data' directory). |
required |
data_type |
str |
Data type
|
'full' |
Returns:
Type | Description |
---|---|
Union[Tuple[numpy.ndarray, pandas.core.frame.DataFrame], Tuple[List[pandas.core.frame.DataFrame], pandas.core.frame.DataFrame]] |
|