梶研 06/21 - 06/27

端末座標系を世界座標系に 出席率 3年セミナー:??% スケジュール 短期的な予定 端末座標系を世界座標系に データをとる 重力に対する各軸の傾きを出す 2次元ベクトルを回転させる 3次元ベクトルを回転させる 端末座標系を世界座標系に変換する 長期的な予定 8/5 技育CAMP ハッカソン 8/12 技育展 8/26 OpenHackU 9/2 技育CAMP アドバンス 10/7,8 工科展 進捗報告 3次元ベクトルを回転させる 元の加速度 端末の傾き 元の加速度 を 端末の傾き だけ回転させる 回転後のベクトル 理想は y は常に9.8, x,z は常に0 になるはず => roll, pitch, yaw の回転のさせ方の問題? roll だけ掛けたグラフ y(橙) が理想に近づいた pitch だけ掛けたグラフ yaw だけ掛けたグラフ 上下が合えばいいから roll, pitch, yaw 全て使う必要はないかも? 考え直す 計算した roll, pitch, yaw が入れ替わってしまっている可能性がある 端末の座標系 端末の傾き 0s - 4s 端末の状態は z軸正が上向き...

2023-6-27 · 2 min · 370 words · SatooRu

梶研 06/14 - 06/20

技育CAMPに参加した 出席率 3年セミナー:??% スケジュール 短期的な予定 端末座標系を世界座標系に データをとる 重力に対する各軸の傾きを出す 2次元ベクトルを回転させる 3次元ベクトルを回転させる 端末座標系を世界座標系に変換する 技育CAMP ハッカソン テーマ決め 開発練習 7/9 キックオフ 7/16 発表 長期的な予定 9/2 OpenHackU 発表 10/7,8 工科展 進捗報告 3次元ベクトルを回転させる 先週までの問題点 [2, 0, 0] をx軸で90度回転 回転 → [2, 0, 0] 回転できてない? 計算式を(なんとなく)理解してみる $$ Vec_x^{\prime} = \begin{bmatrix} 1 & 0 & 0 \\ 0 & \cos \theta & -\sin \theta \\ 0 & \sin \theta & \cos \theta \\ \end{bmatrix} \begin{bmatrix} x \\ y \\ z \\ \end{bmatrix} $$...

2023-6-20 · 1 min · 184 words · SatooRu

梶研 06/07 - 06/13

スケジュール 短期的なスケジュール 端末座標系を世界座標系に データをとる 重力に対する各軸の傾きを出す 2次元ベクトルを回転させる 3次元ベクトルを回転させる 技育CAMP ハッカソン テーマ決め 開発練習 7/9 キックオフ 7/16 発表 端末座標系を世界座標系に 方法 各軸の加速度データから3次元ベクトルにする 回転行列を掛けて回転させる 3次元ベクトルから各軸の加速度にする データをとる pixel5 (android) phyphox 加速度センサー 角速度センサー z軸正が上(約4秒) y軸正が上(約4秒) x軸正が上(約4秒) グラフ 加速度 移動平均フィルター(前後40サンプル)をかけている 角速度 移動平均フィルター(前後40サンプル)をかけている 角度 移動平均フィルターをかけたものを積分したもの 重力に対する各軸の傾きを出す gravity = math.sqrt(x ** 2 + y ** 2 + z ** 2) tilt_angle_x = math.degrees(math.acos(x / gravity)) tilt_angle_y = math.degrees(math.acos(y / gravity)) tilt_angle_z = math.degrees(math.acos(z / gravity)) 重力に対するそれぞれの軸の傾き ベクトルを回転させる方法 回転行列 外積の性質を利用 クォータニオン 回転行列 回転行列はベクトルに対し始点を基準に回転させる...

2023-6-13 · 2 min · 287 words · SatooRu

梶研 05/31 - 06/06

スケジュール 短期的なスケジュール エレベーターと歩きを判別する データをとる 歩いているかを判別する 上り下りしているかを判別する エレベーターと歩きを判別する 正解データと比較 追加でデータとる 技育CAMP ハッカソン テーマ決め 開発練習 7/9 キックオフ 7/16 本番 エレベーターと歩きを判別する(続き) 変更点 上り下りしているかの判別方法 1秒ごとに区切り, 回帰直線を求める. 参考: スマートフォンを用いた階段利用判定 傾きの絶対値が 0.012以上 の場合は上り下りしているとみなす(青色) 0.012未満 の場合は止まっているとみなす(黄色) 傾きの絶対値のグラフ 平滑化フィルター 移動平均フィルター ではなく メディアンフィルター を使用した. 実際とのズレが縮まった 気圧と判別結果 灰: 元データ 青: 移動平均フィルター(前後120サンプル) 黒: メディアンフィルター(前後120 + 1サンプル) 結果 青: 歩いている || 上り下りしている 黄: 止まっている 赤: 階段 青: エレベーター 黄: 歩行 緑: 待機 気圧と正解データを見比べると, エレベータを降りた後も 上り下りしている判定になっている => 傾いているから, プログラムではなくデータが悪い(?) => エレベータを降りた時など, 一度止まるとよい より多くのデータ データ2 青: 歩いている || 上り下りしている 黄: 止まっている 赤: 階段 青: エレベーター 黄: 歩行 緑: 待機 データ3 青: 歩いている || 上り下りしている 黄: 止まっている 赤: 階段 青: エレベーター 黄: 歩行 緑: 待機 データ3 青: 歩いている || 上り下りしている 黄: 止まっている 赤: 階段 青: エレベーター 黄: 歩行 緑: 待機 メモ 気圧センサーとステップ 気圧値と回帰直線 梶克彦,河口信夫,安定センシング区間検出に基づく3次元歩行軌跡推定手法, 情報処理学会論文誌,Vol....

2023-6-6 · 1 min · 126 words · SatooRu

梶研 05/24 - 05/30

スケジュール 短期的なスケジュール エレベーターと歩きを判別する データをとる 歩いているかを判別する 上り下りしているかを判別する エレベーターと歩きを判別する 正解データと比較 改善 技育CAMP ハッカソン 7/9 キックオフ 7/16 本番 エレベーターと歩きを判別する データをとる 場所 1号館 5階-7階 取り方 腰にポーチをつける Pixel5 (Android) Pyphox 気圧センサー 加速度センサー 角速度センサー 歩いているかを判別する 加速度(ノルム)のグラフ 重力加速度を除いている df[“x”] = df[“x”] - df[“x”].mean() df[“y”] = df[“y”] - df[“y”].mean() df[“z”] = df[“z”] - df[“z”].mean() 方法 1秒ごとに区切り、それぞれの分散を計算する 判別基準 分散が 0.1以上 の場合は歩いているとみなす(青色) 0.1未満 の場合は止まっているとみなす(黄色) 色分けしたグラフ 上り下りしているかを判別する 気圧のグラフ 青 : 元のデータ 黒 : 移動平均フィルター(前後20サンプル) 方法 1秒ごとに区切り、それぞれの平均を出して、一秒後との差を出す 判別基準 分散が 0.015以上 の場合は歩いているとみなす(青色) 0.015未満 の場合は止まっているとみなす(黄色)...

2023-5-30 · 1 min · 156 words · SatooRu