GPSログを集めていると、どんどんファイルサイズが大きくなってしまうので、
圧縮することにしています。
適当に間引くのと、同じ
直線的に動いていて、前後のポイントから推定できるようなポイントは省く、
という操作をしています。
これにより、ポイントを約1/4に減らし、ログのファイルサイズも
約1/4にしています。
博多港周辺。左が圧縮前、右が圧縮後。わかりやすいようにポイントを○や□で
表示しています。
船で動いているところの直線的な動きの部分で大幅にポイントを削っています。
車で動いているところ、交差点部分は残して直線部分でポイントが削られています。
鳥栖ジャンクション周辺。ちょっと間引きすぎのような気もしますが、
その辺は圧縮率との兼ね合いです。
福岡方面4本、大分方面2本、長崎方面1本、熊本方面1本で、
回ってるところがどうのこうのは突っ込んじゃだめです。
同じルートを通るデータを消すようにします。
左の青いデータが元、右の赤いほうが消した後です。重なってるところが消えているのが確認できます。
ただ、実際のログを食わせてみても、1割ぐらいしかデータが減らないので、
食わせるデータを見直しすべきかも知れません。
…なんだかよくわかりませんが、よく見れば1割ぐらい線が減ってるように
見える、はずです。
スクリプトはこちら。データの間引き・古いデータを消す・ potファイルをtrkファイルに変換して、トラック名を日付に書き換える・ そのサブルーチン群、です。