HASC Tutorial 2011
http://hasc.jp/
スライドコンテンツ• HASC Loggerの設定• HASC Tool（ダウンロード版）の使い方• HASC Tool（開発版）のセットアップ

Part 2

名古屋大学 河口研究室
修士２年 小川延宏

1

HASC Loggerの設定• HASCChallenge2011＞
HASC Loggerを参照• http://hasc.jp/hc2011/hasclogger.html• HASC Toolの説明>利用画面を参照• 設定アプリ内のHASCLoggerを選択• 収集データ• サンプリングレート• データ収集時間• 行動データのリアル
タイム転送先• HASC LoggerServerへのデータ転送先2

行動データ収集設定• Data to record• Location：位置情報• Heading：地磁気情報• Acceleration：加速度情報• Acceleration S.Rate(Hz)：加速度計測周波数• Gyro：角速度情報• Gyro S.Rate(Hz)：角速度計測周波数• Logging Option• Logging Duration(sec)：データ計測時間• 0の場合：制限なし

3

行動データの送信• Send Logs as UDP Packet• HASCToolへ行動データをリアルタイム送信• Send to Network• IP:Port• HASC Toolを動かしているPCのIPアドレス+ポート番号6666• Ex)192.168.100.10:6666• Upload Logs
• 収集した行動データをHASCToolにアップロード• Server URL• "http://" + HASC Toolを動かしているPCのIPアドレス+":"+ポート番号+"/“• Ex)http://192.168.100.10:80/

4

HASC Logger起動画面• HASC Loggerの起動• Log List
• New

• データ収集の設定• Start Sensing After Delay• Start Sensing Immediately• Metadata• Upload• Delete• Log Viewers: Raw, Acc, Gyro5

メタ情報の設定• データ収集環境情報を入力• Comment• 直接打ち込み• 自由にコメントをかけます• Tags• リストから選択・追加• 直接打ち込みも可能• カンマ“,”で区切る

6

データ収集画面• データ収集中• 現在のセンサ値を表示• データ収集の終了• 手動：Stop Sensingボタンを押す• 自動：事前にデータ収集時間を指定• 収集データの形式• 日時

センサの種類• 時間(sec),センサ値１,センサ値２，・・• 収集データの閲覧• HASC Logger起動画面• Log Viewers項目で、Raw, Acc, Gyro
ボタンを選択7

HASC Logger [更新情報]• 録音機能の追加• 音情報の取得
• 環境音
• 音声

• 音情報の再生“Audio”ボタン• 設定方法• 設定＞HascLogger＞AudioをON

8

HASC Tool(ダウンロード版)• http://hasc.jp/hc2011/download.html• HASC Tool(ダウンロード版)の入手• HASC Tool
• Mac版• Windows版• Sample Data Project• RealWorldActivityData• HASC Toolの起動• それぞれのファイルを解凍• HASC Toolディレクトリを開く• HASC Toolの起動

9

HASC Toolの起動• ワークスペースの選択• 任意に設定可• デフォルトでもOK！

• 新規プロジェクトの作成• プロジェクト・エクスプローラ内で右クリック• 新規＞プロジェクト• 一般＞プロジェクト＞次へ• プロジェクト名
HASCtestPrj

10Sample Data Projectのインポート
SampleDataProject：サンプル行動データセット＋処理スクリプト• 作成したプロジェクト• 右クリック＞インポート＞一般＞
ファイルシステム• 参照元の選択（SampleDataProjectを選択）• 出てきたすべての項目にチェック• 終了を選択• インポート完了
11

行動データ(.csv)の閲覧• データ構成• 加速度データ• [時間(sec)],[x軸],[y軸],[z軸]• データフォーマットについては、
http://hasc.jp/hc2011/dataFormat.htmlに記載されてます。

12

行動データのViewer• 波形の表示• 縦軸：加速度(G), 横軸：時間(sec)• センサX軸：青色, センサY軸：赤色, センサZ軸：緑色• 波形ビューの操作• 表示する範囲の変更：“+t”,“-t”,“+v”,“-v”• 時刻の左端を0とする:“rt”• 選択した時間範囲をテキストエディタ上に表示:“?t”
13

メタデータ(.meta)• データの要素• TerminalType, Frequency(Hz), Activity,Gender, Height(cm) など• key: value

14メタデータ [更新情報]• データの要素を変更• 必須要素• TerminalType, Frequency(Hz), Gender, Generation,Height(cm), Weight(kg), Shoes,TerminalMount,TerminalPosition, AttachmentDirection• 6種類の行動データで必要• Activity, Floor, Place• 実環境データで必要• Weather, Start, Goal

• 参考URL• HASC Challenge 2011
• http://hasc.jp/hc2011/dataFormat.html#DF215

ラベルデータ(.label)• データ構成• 1行目：対象とするcsvデータの絶対パス• 2行目以降• [開始時刻(sec)][終了時刻(sec)][Activity]

16

行動データセット [更新情報]• 行動データ• 拡張子：csv• 加速度情報，角速度情報，地磁気情報など• メタデータ• 拡張子：meta• 計測環境の情報• ラベルデータ• 拡張子：label• 音データ• 拡張子：caf,wav

17ラベルデータ [更新情報]• 音声データの絶対パス• 下図２行目を参考• #audiofile:“ファイルパス”• イベント情報

音声データを再生する
場合の遅延オフセット• 下図４行目を参考• Ex)6071.934,,move;floor;B1F

18

ラベルデータ [更新情報]• データの要素• 必須• 対象としている行動データの絶対パス• 行動ラベル情報• 任意• 音声データの絶対パス• イベント情報• 参考URL• http://hasc.jp/hc2011/dataFormat.html#DF3

19ラベルデータのViewer• ラベル付き波形表示• Wave&Labelsをクリック• ラベル付け:“+L”

20

ラベルデータのViewer[更新情報]• 音声情報と行動波形が同期• 音の再生：“Au”

21

行動信号のセグメンテーション[更新情報]• 行動情報を利用した情報システム開発• 要素技術• １．自動ラベリング• ２．自動セグメンテーション• ３．自動経路推定• 実環境データ• ランドマーク間を移動• ランドマーク間には経路がある

実環境データを収集！

RealWorldActivityDataのインポート[更新情報]• プロジェクトを新規作成• プロジェクト名：HASCrwPrj• 作成したプロジェクト• 右クリック＞インポート＞一般＞
ファイルシステム• 参照元の選択（HASCrwdataを選択）• 出てきたすべての項目にチェック• アラームがでたら“OK”を押してください• 終了を選択• インポート完了23

実環境サンプルデータセット[更新情報]• rwActData• 2人分の実環境データ• -a,-bはラベル情報を変更• rwImage• イメージ画像セット• xbd• 処理スクリプト

24

実環境データ（-aの場合）

25

処理スクリプト[更新情報]• segment• label• xbdExe_SegmentLabel.hascxbd• ラベルファイルをイベント情報で区切る• signal• xbdExe_SegmentCSV.hascxbd• 行動データファイル(csvファイル)をイベント情報で区切る• image• xbdExe_imageLabelFile• 区切ったデータのイメージを作成

26

HASC Toolの機能説明• HASC Loggerとの連携機能• HASCLoggerServerへデータ送信• ラベル付与機能• ラベルファイルの編集• ラベル付の手順紹介• 行動データ処理機能• HASCXBDディレクトリの内部構成• HASCXBDファイルの説明

27

HASCLoggerServerへデータ送信• HASC Tool側• ログの保存先ディレクトリを選択• ツールバーの(H)ボタン• 起動，終了• bindするTCPポートの設定• 任意選択（デフォルトのままでも可）• HASC Logger側• Uploadボタン• 確認画面（右図）• アップロード内容• 各種センサデータ，メタデータ

28

ラベル付与機能• ラベル付手順• ラベルファイルを用意する• 拡張子：.label• ターゲットファイルのPathを入力• ラベルファイルのフォーマットは以下に記載
http://www.hasc.jp/hc2011/dataFormat.html• ラベルファイルを編集• ラベル付を実行
29

ラベルファイルの編集• 編集ボタンは右側に配置• 表示する範囲の変更：“+t”,“-t”,“+v”,“-v”• 時刻の左端を0とする:“rt”• 選択した時間範囲をテキストエディタ上に表示:“?t”• ラベル付ボタン：“+L”

30

ラベル付の手順• ラベル範囲を選択• ドラッグドロップ• +L ボタンを押す• テキスト編集• ラベル情報の入力• 画像ではwalk• ラベル付け完成
上記作業を繰り返す

31

行動データ処理機能• HASCXBDディレクトリ
• 特徴量抽出を実行• feature• 機械学習＆評価を実行• experiment_~• weka(機械学習)• evaluation(評価)• 閾値処理• Threshold• HASC Loggerからリアルタイムデータ送信• Udp• ファイルのカウント＆メタデータテーブルの作成• file32

HASCXBDファイル• HASC Tool上で様々なデータ処理を実行• ダイアグラムの階層化• ブロック（フィルタ） 実行／停止• コネクタ33

ブロック（フィルタ）• 実際にデータ処理を行います• ブロックの新規作成ボタン:“+B”• クラスファイルの場所を入力• プロパティに値をセット

参考

http://hasc.jp/hc2011/hasctool.html“HASC Toolの説明”

34

コネクタ
• ブロック間のデータ送信• コネクタの新規作成ボタン:“+C”• 事前に２つのブロックを選択• “ctrl”を押しながら選択• 複数入力ブロック• コネクタのプロパティを設定

参考

http://hasc.jp/hc2011/hasctool.html“HASC Toolの説明”

35

ダイアグラムの階層化

36

行動データの読込• HASCXBD>view>waveView>
CSVToWaveView.hascxbd• csvファイルを読み込む• 行動データ⇒時系列波形

37

フィルタの追加• 追加するフィルタの決定• Block Class Listから選択• 右図ではMeanFilterを選択• 平均を計算するフィルタ• 場所：jp.hasc.hasctool.core.runtime.filter• 選択したらブロックダイアグラム内にできます• 出てきたブロックを選択• プロパティを設定
名前も編集できます

38
対象データの数を設定

ブロックダイアグラムの編集• csvToVectorとwaveViewの間にMeanFilterをつなげる• 編集手順• “Ctrl”キーを押しながら連結するブロックを選択• “+C”ボタンを押す• 右図の状態で+Cボタンを押すとエラーがでるが、OKボタンを押す• 余分なコネクトを消去

39

波形の変換• 作成したブロックダイアグラムを保存• HASCXBDファイルの実行
波形変換前

波形変換後
40

スペクトログラムの表示• HASCXBD>frequency>
CSVtoSpectrogram.hascxbd• csvファイルを読み込む• 行動データ⇒スペクトログラム

Hanning：ハニング窓
FFT：フーリエ変換
CompToVec：複素数⇒絶対値

41

SampleDataテーブルの作成• HASCXBD>table>
createTable.hascxbd• 行動データファイル毎の計測
環境が一覧できるwriterのプロパティで設定されたpathにテーブルファイルが作成される

42

データファイル数のカウント• HASCXBD>file>count>filecounter.hascxbd• コーパス内に含まれる行動データファイル数をカウント• 設定したメタ情報の分布も閲覧可能

TerminalTypeに関するメタ情報のファイル数
分布が閲覧できるwriterのプロパティで設定されたpathにテーブルファイルが作成される

43

画像ファイルの取得• HASCXBD>view>image>
imageCSVFile.hascxbd• csvファイルを読み込む• 行動データ⇒時系列波形⇒画像ファイル

44

HASCToolへリアルタイム送信～HASC Logger側～• 設定アプリ＞HASCLogger＞Send Logs as UDP Packet＞IP:Port• HASC Toolを動かしているPCのIPアドレス+ポート番号6666• Ex)192.168.100.10:6666• HASC Loggerを起動• Start Sensing ~~45

HASCToolへリアルタイム送信～HASC Tool側～• HASCXBD>udp>
simpleUdp.hascxbd• UDPでHASCLoggerから行動データを受信• リアルタイムに波形を表示

46

HASC Toolのセットアップ• 1.Eclipse RCPのインストール• 2.プラグインの入手• Zest plugin• Subversive• 3.Sourceforgeにアクセス• HASC Tool
• HASCLoggerServerPlugin• HASC Weka
• SampleData• 4.HASC Toolの起動設定

47

Eclipse RCPのインストール• Java SE を事前にインストール• Eclipse RCPをダウンロード• http://www.eclipse.org/downloads/packages/eclipse-rcp-and-rapdevelopers/heliossr1• 64bit版と32bit版があるので気を付けて選択してください• Eclipse RCPをインストール• ダウンロードしたファイルを解凍
ワークスペースを作成する！
ex）C:¥works¥eclipse

48

Eclipse プラグイン• HASCChallenge2011>HASC Toolページ• 開発環境のセットアップを参照• 各種プラグインを入手• Zest plugin• Subversive• プラグインの入手方法• メニューバー＞Help＞
Install New Software...

49

Zest pluginのインストール• メニューバー＞Help＞
Install New Software...
• Work with タブ• Helios http://download.eclipse.org/releases/helios• Group items by category• チェックをはずす• 検索ボックスに“zest”と入力• 見つかった３つのpluginを全てinstall• Next⇒Next⇒acceptにチェックを入れてFinish

50

Subversiveのインストール• メニューバー＞Help＞
Install New Software...
• Work with タブ• Helios http://download.eclipse.org/releases/helios• Collabration > Subversive SVN TeamProvider (Incubaion)• チェックを入れる• Nextをクリックしてインストールを完了します• Eclipseを再起動

51

Subversiveのインストール• 右上のパースペクティブボタンを押す• Other＞
SVN Repository Exploring• OKボタンを押す• SVNKit 1.*.* Implementation を選択• 指示に従ってインストールを完了• Eclipseを再起動
52

各種プラグインの入手• 紹介した上記２つのプラグインは以下の方法で簡単に入手できます。（推奨）• Zest plugin• Subversive• http://bit.ly/n3xoZDから入手• Eclipseのdropinsディレクトリ
• 解凍したデータからdropinsディレクトリをdrag＆drop• Mac版とWin版があるので注意してください！
• データ上書き（データ統合）を選択

53

Sourceforgeにアクセス• 右上に生成されたSVN Repository~~をクリック• SVN Repository Exploring• リポジトリロケーションの追加• File＞New＞Repository Location• New Repository Locationダイアログ• URL : http://svn.sourceforge.jp/svnroot/hasc/• リポジトリを登録（Finishを押す）• もし何かメッセージがでた場合OK(trust)を選択• 登録したリポジトリの閲覧• trunk＞pcの中を見る

54

各種プロジェクトの入手• HASCリポジトリにアクセス• 追加したロケーションを開く• 以下の４つのProjectをチェックアウト• HascTool• HascLoggerServerPlugin• HascToolDataPrj• HascWekaPrj• チェックアウトの方法• プロジェクトを右クリック• Check Outを選択

55

HASC Toolの起動設定• “HASC Tool”プロジェクトを右クリック＞
Run As＞Run Configurationsを選択• Eclipse Applicationを
右クリック＞New• Nameを設定• HASC Tool

• 実行の構成を設定• Mainタブ• Argumentsタブ• Plug-insタブ

56

Mainタブ• Locationを任意設定• デフォルトのままでもOK！

• Program to Run• jp.hasc.hasctool.ui.product を設定

57

Argumentsタブ• Program arguments• -consoleLog –clean を追加• 直前に空白文字も必要

58

Plug-insタブ• Launch with• Plug-ins selected below only

• Deselect Allを選択• Workspace内のPluginをチェック• jp.hasc.hasctool.ui• jp.hasc.loggerserver• jp.hasc.hasctool.wekaPrj• Add Required Plug-insを選択• Applyを選択• Runで実行

59

HASC Toolの更新• Sourceforge版の場合• Eclipse側で・・・• 入手した各プロジェクトを右クリック• Team＞Updateを選択• ダウンロード版の場合• HASC Tool上で・・・• Help＞更新の検査

最新のバージョンに更新されます！

60

HASCToolDataPrjのImport• Project Explore（左上のウィンドウ）• ウィンドウ内を右クリック＞Import• General>Existing Pro~~を選択• Next• Browse• HascToolDataPrjの場所を選択• Finishを選択
61