2014/02/03

Stravaのセグメントに残らなかったログを修正して残す方法

昨日のサイクリングで白石峠に行ったログを Strava で確認したら、自己ベスト2位のはずが、自己ベスト扱いになっていた。

Stravaという自転車系のサービスは、バーチャル競走ができる機能があり、セグメントと呼ばれる区間を、他人や過去の自分と競うことが出来る。

登り以外の平坦のセグメントもあるが、風向きや複数人でのローテーションでもタイムが出てしまうし、登りであっても、知らない人のタイムはあまり興味が無い。

興味があるのは、過去の自分の記録との比較と、一緒に走った人のタイムだ。

自己ベストにならなかった記録

過去の白石峠の記憶に残っているログを探したら、途中からGPSデータの位置情報がずれてしまっていて、セグメントとして認識されなかったみたいだ。

これはMacのAscentというアプリで、白石峠の区間だけログを切り出したもの。

これをtcx形式でエクスポートし、位置情報の修正をしてあげたデータがこちら。

この部分のみを Strava にアップロードして無事記録が残りました。

ログの修正方法

目視で確認したところ、後半の位置がずれてしまっているだけなので、ずらしてあげることにします。

tcxを見やすくする

tcx形式の中身は独自形式のxmlです。

Ascentでエクスポートしたファイルは、改行が含まれていないので、処理しやすいようにします。Macのターミナルアプリで以下を実行。

xmllint --format FILE_NAME.tcx --output FILE_NAME.tcx

修正するズレ幅を調べる

tcxファイルの最後の方を確認して、Google Mapsで本来の位置との差を調べます。

          <Trackpoint>
            <Time>2013-08-31T04:50:31Z</Time>
            <Position>
              <LatitudeDegrees>35.998108</LatitudeDegrees>
              <LongitudeDegrees>139.180954</LongitudeDegrees>
            </Position>
            <AltitudeMeters>783.800049</AltitudeMeters>
            <DistanceMeters>-3218611000.000000</DistanceMeters>
            <HeartRateBpm xsi:type="HeartRateInBeatsPerMinute_t">
              <Value>185</Value>
            </HeartRateBpm>
            <Cadence>82</Cadence>
            <Extensions>
              <TPX xmlns="http://www.garmin.com/xmlschemas/ActivityExtension/v2">
                <Watts>227</Watts>
              </TPX>
              <TPX xmlns="http://www.garmin.com/xmlschemas/ActivityExtension/v2" CadenceSensor="Bike">
                <Speed>5.4910003</Speed>
              </TPX>
            </Extensions>
          </Trackpoint>

元の位置

本当の位置はクリックして調べる

差分

139.180954 - 139.179513 = 0.0014410000000282253
35.998108 - 35.997895 = 0.00021300000000223918

データ修正をする

同じような方法で修正する点を調べて簡単なスクリプト組んで修正。
今回は、 139.194693 の地点以降を修正しました。

<?php
$file_name = 'FILE_NAME';

$buf = file_get_contents("$file_name.tcx");
$lines = split("\n", $buf);

$flg = false;
$ret = '';
foreach ($lines as $line) {
    if (preg_match('/<LongitudeDegrees>([\.\d]+)<\/LongitudeDegrees>/', $line, $m)) {
        if ($flg) {
            $line = str_replace($m[1], ($m[1] - 0.0014410000000282253), $line);
        } elseif ($m[1] < 139.194693) {
            $flg = true;
        }
    } elseif ($flg && preg_match('/<LatitudeDegrees>([\.\d]+)<\/LatitudeDegrees>/', $line, $m)) {
            $line = str_replace($m[1], ($m[1] - 0.00021300000000223918), $line);
    }
    $ret.= "$line\n";
}
file_put_contents("${file_name}_2.tcx", $ret);

使い捨てなのでphpで。

Stravaにprivateでアップロード

作成したログをStravaにアップロードして、無事に My Results に記録が残りました。
まだまだ遅いけど、このタイムを目標に次に行った時はがんばろうというモチベーションアップの糧にします。

2014/02/02

サイクリングで白石峠へ - 登りで意識した点

チームメンバーとサイクリングへ。
起きた瞬間から昨日の疲れがたっぷり残っていて筋肉痛。

裏道を通ってシロクマパンの横を通り抜けてゴルフ場を抜けて松村坂を下って慈光寺麓へ。
そこでちょっと早めのお昼をやすらぎの家で食べた。

食べ終わってから、どこ行こうか〜?ということで白石峠へ。
食べたばかりのカレーうどんがお腹の中で暴れます。。順番を間違えてる!

白石峠はシッティングメインで、昨日の反省を活かして回すペダリングを意識。
斜度があるところは回すのに少し踏み要素を入れると失速せずにうまく登れました。
疲れが残りまくり&カレーうどんなお腹のよくないコンディションにしては自己ベスト2位。

少し、いい感触を持って登れたのでよかったです。
が、右膝が少し痛くなってしまった。。


登りで意識した点

  • 上半身の位置
    • 上ハンを持つと起き上がってしまうので、ブラケットを持って上半身を被せることを意識した
  • 引き足というか脚を持ち上げる動き
    • 5時ぐらいまで下ろした時点で12時まで持ってくるイメージ

基本は、脚を持ち上げるだけで重心位置で脚が降ろされることを考えてみた。斜度が上がった場合は、そこに上半身の体重を少し乗せてあげる感じ。
いままでも考えてきたことなので、いまさらな感じだけどペダリングを戻すために強く意識した。

昨日のひるサイの疲れが残っていたわりには、最後まで大ダレせずに走り切れたよかった。

帰宅後に、右膝の軽い違和感だったのが痛みに変わっていたので不安だったが、一晩たったらだいぶ抜けていた。
今までも、しっかり体重かけて回すような場合に膝が痛くなることが何度かあった。今までだと、故障が怖くて練習強度を下げてしまっていたが、アイシングとかをしつつ続行してみようと思う。

この判断がどうなるか。。。

2014/02/01

ひるサイ参加 - 踏み踏みなペダリングになってしまってる

ひるサイに参加。
今回も結構な大人数で20人越えしていたと思います。

荒サイ区間はまったり進行。TT区間もおだやか。一般道に入ってから人数多いので2グループにわかれる。
前のグループに入ったけど、速くて徐々につらくなってくる。。。ローテをうまく回せなくなって崩壊気味なところで戸守のローソン。信号待ちで後ろ組と一旦合流。後ろ組へ下がりました。

清澄手前で再度合流して、登り始める前に後ろから真ん中辺りまでポジション上げてから登り始め。
本日の目標その1、メイン集団からこぼれずに登り切る。
結果は Avg328W の自己ベストタイでクリア。ちょっと伸びた集団のけつにしがみついて下り以降の一人旅を回避。前が見えないのでメイン集団かグルペット集団かわかりませんw

明覚デイリーで休憩後に横松へ。途中離脱の人がいるのでこの時点で半分ぐらい。
ペダリングが踏み脚になってしまっていて、清澄で使った脚がぴくぴくしてまったくのだめだめ。
最後尾で待たせてしまいつつ合流して下って定峰峠へ。

すでに脚がすっからかん。。
落合橋までも速くて、曲がってからもそのままずんずん進む。もうちょっと付いていけるかと思ったが、早々にちぎれて一人旅。
帰ってからログを見たら、落合橋までのアプローチも、落合橋-定峰峠間もベスト更新。定峰峠自体は遅かったのでアプローチがどんだけ速かったことか。。

もう1本定峰おかわりというので、そこで離脱して2人で白石峠側に抜けて三段坂越えて帰ってきました。

行きのローテーションの負荷に耐えるために前踏みになってしまっているっぽいので、距離を乗るとダメになってしまうみたい。
せっかくうまく登れるようになってきていたフォームも、おはサイに必死に付いて行っているうちに崩れてしまったみたいだ。


ローラーでパワーばかり見て練習してると、簡単にパワーが出るけど変な乗り方になってしまうことが過去にもあった。
最近、おはサイで自分にとってレベル高めなローテーションに加わるために、前乗りになっていることが多い。いわゆるサドルにケツを指したポジションだ。

短い時間にパワー出すなら、いまのところそうなってしまう。
悪い乗り方ではないと思うんだけど、引き出しの1つとしてなら。という前提条件が付くと思う。
この乗り方では長く走れないし、山も登れない。。