究極の道迷い防止ツールの作成方法
ハイキング・ならクル・山の辺の道地図はいろいろの事情により中止していましたが、やっと復旧のめどが立ちました。
究極の道迷い防止ツールを中止に追い込まれた理由。
●山行での 道迷いの防止対策の地図作りの検討
弥周の部屋
等で紹介していた、道迷いの防止対策の地図がどういうわけか動作しなくなって、ほったらかしていました。
●最近、自宅近くの鉄塔巡りに勤しむようになり、地図作りに再挑戦していた処、原因らしきものが分かりました。
●不具合内容:自作のアイコンとポップアップの写真が表示されない。
●原因はプロバイダーの問題でした
私の契約しているプロバイダーKCNで無料のホームページはhttpでしか作成出来ず、httpsは出来ない事が原因でした。
KCNは他にもサーバー容量が50MBと小さく写真などのデータはもう置けなくなっていました。
プロバイダーを変えようとは思いましたが、使用しているメールアドレスの変更の対応や、値段の問題(変更一年目は良いが二年目以降は高くなる)で踏み切れません
●原因はhttpの問題だろうと推測して、自作のアイコンを中止して、地理院地図やカシミールのアイコンを直接指定することで解決しました。
ただ疑問なのはカシミールのアイコンアドレスはhttpでも動作するが、KCNのHTTPでは動作しません。何故でしょう
あとポップアップ写真はヤマレコの山行写真のアドレスを指定することで表示されました。(なおYAMAPの写真も指定するとOKです)
●写真は山行の写真のアドレスをKMLファイルに設定すればいいことが分かりました。
問題はアイコンです。これも公開しない山行を作成して、その写真にアイコンのPNGファイルを読ませて、アイコン一覧を山行で作成します。
このアイコンのアドレスを使用することで解決しました。なおYAMAPでも作成しましたがこちらは動作しませんでした。
ヤマレコでもたまたま動作したのかもしれずに、動作不可になる可能性も有ります。
私が作成していた山行での道迷いの防止対策の地図の写真のほとんどはヤマレコの山行写真に有りますので、指定するのが面倒ですが何とか出来ます。
アイコンも面倒ですが、ヤマレコ経由で可能になりました。
今後の究極の道迷い防止ツール作成の方向性について。
今迄道迷い防止の地図に鉄塔巡り地図を作り始めていろいろのことが分かりました。
作成方法
①まずカシミール3Dで地図を作る。
②GPS経路と③場所のタイトルと緯度経度の指定です。
山行後のGPSや写真をカシミール3Dで処理します。
一番面倒なのは緯度経度の決定です。鉄塔の場合はgoogleMapより鉄塔の緯度経度を得てカシミールにウェイポイントとして設定します。この説明は日記及びモーメントで説明していますので省略します。
鉄塔以外の場合、現在馬見丘陵公園でテストしています。馬見丘陵公園の場合道がありますので、楽に位置決めが楽です。山の場合は大変だと思います。
色々プロットする時はカシミールにウェイポイントを作成します。この時重要なのがアイコンの設定です。カシミールで表示するアイコンを決めると同時に「GPSでの備考」にアイコンのスタイル名を設定します
④アイコン設定(KMLファイルを生成も踏まえて)
別項目で説明しますが、カシミールのアイコン設定は、道迷いの防止対策の地図を作るに当たっての一つの重要なポイントです。
カシミールのアイコンが無い場合、まず32bitのアイコン.pngを自作します。その後24*24のBMPファイルを作ります。
KMLファイル用32bitアイコンとカシミールへの24bitアイコンの登録と行います。
⑤もう1つ重要なのはKMLファイルのアイコンのスタイルシートを作って置きます。もしアイコンが追加で必要であれば、カシミールとKMLファイルで同時に作成します。
ここで作成したウェイポイントは二つのツールを使い、有益なものになります。
⑥スーパー地形用出力 ウェイポイントのフォルダーごとGDBファイルに出力します
スーパー地形で従来のフォルダーを消し、読み込むとポイントが生成されます。音声案内をオンにすると近くに来たら知らせてくれます。
⑦もう一つはKMLファイルを生成する為にCSVファイルに出力して、エクセル上で数式を生成してKMLファイルを生成します。
このKMLファイルは地理院地図で地名やアイコン・軌跡などを作成した時に生成されるファイルで、次の4種類の要素から構成されます
1.スタイルシート1 線分の色を設定します
2.スタイルシート2 アイコンを設定します。ID名などはカシミールで作成する時と同じ名前にします。
新たにアイコンを作成する場合はまずKMLファイル用に32*32のpngファイルを作成して、その後に24*24のBMPファイルを作成します。
この時KMLファイル用のアイコンの設定とカシミールでの自作アイコンの設定をあらかじめ作成します。
本当はカシミールには自作アイコンように百万番のアイコンIDが生成される為に、このアイコンIDを使えばKMLファイルのID名と共通化出来ます。
3.地名のPlacemarkの設定で緯度経度を一つのみ設定して、名前や説明にアイコンの指定と写真のアドレスの設定が可能です。一応写真のアドレス以外はカシミールのデータから自動生成可能です。
4.線分のPlacemarkの設定で緯度経度を二つ以上設定して、線の色を設定します。このデータは山行のGPSデータを編集して設定します。
一応KMLファイルの簡単説明をしました。
ただ百万番のアイコンIDでは識別不可能な為にGPSの備考にアイコンIDを設定してKMLファイル設定時に活用するようにします。
問題はどの写真を使用するかで、緯度経度に見合った写真を選択して、写真のアドレスをKMLファイルに設定するだけで、道迷いの防止対策の地図が出来上がります。
⑧出来上がったKMLファイルを地理院地図に読ませて地図が表示されるかを確認します
⑨確認した地図をgeoJSON形式で出力して、サーバーへアップロードします
⑩あらかじめこのgeoJSON形式のファイルをJavaScriptで読ませる(LeafLet)HTMLファイルを準備しているので、ファイルを開くと地図が表示されます。
⑪同様にGoogleMapの地図と航空写真のマップにKMLファイルを読ませてGoogleMapの地図と航空写真のマップを生成しています。(説明は後述)
今迄未完成ですが、この方法で鉄塔巡りマップと馬見丘陵マップを作成しました。
馬見丘陵マップ
馬見丘陵マップGoogleMap
馬見丘陵マップGoogleMap航空写真
鉄塔巡りマップ
鉄塔巡りマップGoogleMap
鉄塔巡りマップGoogleMap航空写真
代替案としてカシミール3Dとスーパー地形を使用して、より山行中に道迷いを防止する為に、分岐地点で案内音声で知らせるツールの作成の仕方が分かりましたので、紹介します。
今回やりたかったのは、パソコンのカシミール上に関電の鉄塔を地図に配置してスマホのスーパー地形で表示させられないかということでした。
今迄カシミール上に地名を追加していたんですが、これだとスーパー地形へ持って行けない、ところがウェイポイントだとスーパー地形のポイントになると分かりました。
カシミール3Dのウェイポイントの作成方法
①カシミール3Dで、マウスで直接地点を右クリックしてウェイポイントを作成します。なおこの方法は地図に建物・道など明確に分かる場合に設定します。
建物であれば、玄関側の道沿い。分岐の道であればその中心地点です。
②既存の地名ファイルが有る場合は地名を作成済みなら地名ウェイポイント変換
方法は編集の「地名の編集(E)」を選び、変換する地名を複数個選びウェイポイントへ変換を選ぶ
その後適当にフォルダーを作成して入れます
なおExcelなどで一覧テーブルが作成できないものか?→CSVファイルツールが使える
③地理院地図用に作成したKMLファイルファイル加工したいです。要するに緯度経度とポイント名が得られないかの検討です
多分無いと思いますので、直接見比べてデータをセットします。
④またスーパー地形を見ると予め地名が有るものも有ります。これはどのような条件の時なのかが知りたいです。
⑤スーパー地形の「ポイントの記録」の機能が有ったのでテストしてみたら、どうも場所によるのか全然位置が違っていた。GPSの状況が悪いとこうなるのか?地図の+マークを確認して実行すべきだったのかな?
それにしてもこのポイントの画面から撮影したら写真のGPS情報が無いし、今回のテストでは使い物のならないことが確認されました。次回は地図の+マークを確認して実行してみます
ただ「ポイントの記録」から「写真を撮る」で撮影した写真にGPS情報が入らなかったら、この「写真を撮る」は使えないです。
カシミール3Dウェイポイントをスーパー地形のポイントに読ませて、山行中に到着お知らせをアナウンスする方法
①カシミールで関電鉄塔等のウェイポイントを複数作成します
②①のままだとウェイポイントの中に入るので関電鉄塔のフォルダーを作成して移動
③複数のウェイポイントを選択してGPXへ出力します(二番目の図です)
④出力したGPXをスーパー地形に読ませます(三番目の図です)
⑤あとスーパー地形でもある程度フォルダー管理が出来るようなので適当に整理しようと思います。
なおこの出力したGPXをジオグラフィカに読ませたところ、同様に表示しました。ジオグラフィカでもスーパー地形と同様にGPS軌跡やウェイポイントが移せます。
あと二上山の消防署の目標位置や葛城山の櫛羅コースや北尾根コースの目標位置、ダイトレの石柱や石板の位置管理など色々範囲を道迷いの防止対策の地図で行ったことが可能です。なお一番やりたいのは分岐です。これも何とかやりたいです。特に今迄に間違えが多い分岐を追加したいです。問題は文字をどこまで押し込めるかです。
カシミール3Dとスーパー地形を上手く使いこなすにはフォルダー機能を上手く使うべし
主に使用するのはトラックとやっとウェイポイントを使うことを始めました。出来ればルートも使うことが出来ればいいのですが?
カシミール3Dを上手く使いこなすにCSVツールに精通した方が良いようです
緯度経度の情報をXML形式のファイルで使用しますが、このデータの加工が大変です。道迷う防止の地図を作成した時KMLファイルの編集は大変でした
カシミール3DにはGPSファイルツールプラグインが有り、このツールを上手く活用すると、ウェイポイントの管理が楽になります
①ウェイポイントをフォルダーの下に作成する
②フォルダーの下の複数のウェイポイントを選択して右クリックでGPSファイルツールのCSV書き出し(ddd.mmss形式(M))を選択して名前を付けて保存する
③エクセルでCSVファイルを選び編集する。主に編集対象はGPS名前でこの項目は名前は同じだがスーパー地形では読みとなる為に読み方が異なる場合はここで指定すれば良い
なお説明はカシミールではGPS備考、スーパー地形では備考となり、
スーパー地形の音声案内文の項目はカシミール・CSV共にない為に、GPS備考に設定しておき、面倒だがスーパー地形でコピーすれば良い。
なおセーブでは警告がでるが、そのままセーブします。
④エクセルで修正したCSVファイルは「ツール」「GPSファイルツールのCSV読み込み(ddd.mmss形式(M))」で選択して読み込む。
⑤生成されたウェイポイントは直下にコピーされるので。フォルダー毎に振り分けの作業を行う。
カシミール3D・CSV・スーパー地形の項目名
カシミール3D | CSV | スーパー地形 |
ポイント名 | 名称 | 名称 |
アイコン | アイコン | アイコン |
GPS名前 | GPS名前 | よみ |
GPS備考 | 説明 | 備考 |
なし | なし | 音声案内文 |
スーパー地形の到着お知らせは①名称のみの時は「名称に到着します」で、②音声案内文が有る時は「名称+音声案内文」となる。
その為にGPS備考に音声案内文を設定して置き、スーパー地形上でコピーアンドペーストして追加する。ただこれはややこしい分岐のみに限定だ。
アイコンの互換性ない
カシミール3Dで最後の不明なルートの解明
カシミール3Dは山行の後のGPSデータを単にロードして、復習で使用するのみだった。ただ単に追加するのみなので線が沢山出来て収集が付かなくなって来ている
ただ最近は「スーパー地形」でデータを活用したい為にウェイポイントを学び、スーパー地形に読ませて、到着お知らせに使っている。
またナビにも使えることが分かったが、その前に現在のトラックの重複した部分をすっきりさせたい。
そのためにはルートを活用したらいいっていうことがわかった。そのために今ルートをどうやって使うか調査中です。
カシミール3Dの関東甲信300.GDBのデータのサンプルで調べている。
ルート1の003伊予ヶ岳の ウェイポイント1を見てみる。ポイント名の連番が続くが、地名が有る所は番号の替わりに地名が入っている。
そうです。山行のトラックより、間引きして(50%)ルートにコピーして、アイコンを変更している。
私の山行も同様にルートとして、途中の地名を設定すると、かなりごちゃごちゃが減ります。しかも分岐点が分かります。
ただこのトラックからルートを作る方法も、アイコンはデフォルトを点に変えたけど、符号が表示されてしまい煩雑だ。
どうせトラックは今から分割し始めたが、そこまでで置いて置き、ここで地名の追加やトラックの名前の変更をすればかなり使えることが分かる。
pre表示
ルートの意味は分かったが使いずらい。但し進めないと行けないので、ルートのトラックを作成して、コースを作成することとした。
この時今迄使用していたKMLファイルを作成する。
ここでカシミールのKML変換を使う。トラックは複数個指定してもOKだ。
ただデータがポイント毎に改行されるので、Rubyスクリプトのように改行を秀丸で外す。
その為には変換する範囲を選択して正規表現の置換で「\n」を「sp」に一気に変換する。と改行が外れる。
ウェイ・ポイントを決定する最適な方法の解明
建物の時:道沿いの玄関の真ん中 案外やりやすい
分岐:分岐の中心点。ビデオを撮っている時はここだと音声を入れる。行き先でない方向にも足を延ばして、中心点を見つける。
案内板:道標のある地点で、ここだと音声を入れる
なお分岐や案内板の位置は分からないので、カシミールのGPSの時刻とビデオを撮っていたら、ビデオの時刻と突き合わせて場所を決定しても良い。
なおそれ以外は適当で模様
鉄塔の位置の決定
pre表示
1番目のチェックポイントは地図に引かれた電線の線です。
電線の線を拡大しても消えないようにトラックで引きます。その為には線がごちゃごちゃしていますので、GPSの「関東甲信300GDB」を他のデータへ一旦切り替えます。
問題は拡大すると消えますので、消えない処でチェックする必要が有ります。
あと航空写真に鉄塔と電線の線が表示されていますので比較しました。
○は可能だが、●不可です。なお#17,18や100m,50m L17,L18は拡大した時の判定です
地図: 航空写真
等高線 電線 鉄塔 電線の線
①GoogleMap ● ● ◎鮮明 ○
②地理院地図 ○ ○#17 ●#18 ●不鮮明 ●
③ヤマレコ地図 ○ ○100m●50m ●不鮮明
④カシミール3D ○ ○L17 ●L18 ○不鮮明
拡大可能な航空写真のGoogleMapとカシミール3Dを比較しますと、明らかにGoogleMapの方が鮮明です。
やりたいことは鉄塔の位置の緯度経度を求めることです。
最終的にはカシミール3Dのウェイポイントをスーパー地形のポイントに変換して、ナビでアナウンスすることです。
問題はGoogleMapの鉄塔の銘板が付いた柱の位置をカシミール3Dにもっていくことです。
方法
①GoogleMapで銘板が付いた柱の位置を得ます。
四つの柱の銘板が付いた柱をクリックしてクリップボードへコピーします
②カシミール3Dの表示(V)から検索バー(B)をクリックして検索バーを表示させます
③検索バーにコピーしたクリップボードをペーストして検索ボタンをクリックすると、+←ここですと位置を表示するので、ウェイポイントで登録します
多分位置に誤差は有ると思います。もし銘板の柱の位置が分からなければ、後から実際に確認して設定し直します。
④ウェイポイントで登録する時にアイコンや説明を追加してスーパー地形のポイントに変換し易くします。
アイコンの使い方
基本的にはカシミール3Dで最初に地図を作成します。その為にカシミール3Dでのアイコンを最優先で適切なアイコンを探します。
ただ無い場合が多く、その次が地理院地図のアイコンを探します。
それでも無い場合はYAMAPのアイコンを探します。
それでも無い場合は自作します。自作の方法は次の項目で説明します。
この方法でアイコンを決定しますが、重要なのは最終結果です。
最終結果は地理院地図をLeafLetで表示する為に種々の作業が伴います。特に自作の場合です。
決定したアイコンの種類で説明します
決定アイコン 追加作業
カシミール 追加作業はほぼ生じません。地理院地図に表示するスタイルシートを作成するのみです。
地理院地図・YAMAP カシミールで表示する為にアイコンを作成するべきです。つまり地理院地図・YAMAPからカシミールで表示可能なようにカシミール上で表示可能な自作アイコンを作成します
地理院地図に表示するスタイルシートを作成する。
自作アイコン カシミール上で表示可能な自作アイコン(24*24 bmp)と地理院地図に表示可能な自作アイコン(32*32 png)を作成します。
カシミールでウェイポイントを作成時に、アイコンを設定しますが、この時備考欄にアイコンのスタイルシート名を設定します。
これを設定しておけば地理院地図に表示するKMLファイルの生成が楽になります。あと写真の張り付けのみです
ウェイポイント
ウェイポイント名 | カシミール | BMP | 備考欄 | 地理院地図 | YAMAP | 自作アイコン | KMLスタイルシート |
登山口 | K登山口 | 不要 | 登山口 | ー | ー | カシミールアイコン使用 | CSVより自動生成 |
公園 | T公園 | 変換自作 | 公園 | 公園 | ー | 地理院アイコン使用 | CSVより自動生成 |
展望 | T展望 | 変換自作 | 展望 | ー | Y展望 | YAMAPアイコン使用 | よみ |
梅花 | GPS備考 | GPS備考 | GPS備考 | 説明 | 備考 | 自作アイコン使用 | 備考 |
なし | なし | なし | なし | なし | 音声案内文 | 音声案内文 | 音声案内文 |
アイコンを追加したいがやり方が分からない
従来の地理院地図上に道迷い防止の地図を作成していたが、カシミール3D上に書き換えている。その時地理院地図上に独自の地図記号を作成して表示させていたのをカシミール3D上でも実現させる為に色々検討した。
参考にしたのは書籍「カシミール3Dパーフェクトマスター編」のアイコンを追加すると、Dr.kobaの「森林情報管理学」講座のアイコン作成手順とアイコンの接合手順です
使用したソフトは
Greenfish Icon Editor Pro WEB上にあるサンプルアイコンの図形を読ませて24x24のデータを作成。ほとんどこのソフトを使用してアイコンデザインをする。
但しGreenfish Icon Editorでbmp作成でカシミール3Dに読ませるとエラーや背景透明がおかしい為に、一旦pngでセーブしてペイントで読ませてbmpファイルへセーブすれば良いことが分かった。
Jointogether個々のアイコンをまとめるのに使用
YAMAPの双眼鏡アイコンをWIN10付属のペイントで読み、必要範囲を選択して、トリミングして、24x24にサイズ変更してbmpでセーブしてOK。
なお複数アイコン指定のテキストは名前のテキストをSHIFT-JISで作成して、名前を付けてセーブでOKだった。(UTF-8NG)
何か条件が有るみたい。背景透明など色々やってみる必要がある。
追加自作アイコンはベンチ・展望台・大岩・分岐・階段・猪柵・古墳・案内板・丸数字・矩形文字等です
カシミール3Dで使うアイコンはちょっと作成方法が分かった・
次は今迄自作で作成したアイコンをカシミール3Dで使えるように4x24にリサイズ変更すべきです。
今後の課題は複数の矩形数字、丸文字、矩形文字の連続アイコンを作成して指定出来るかや?
透明の設定や色違いの方法だ
HDR-AS300で撮影の動画から抽出した写真をヤマレコの小さい地図に正確に貼り付ける
SONYのHDR-AS300で撮影し、PlayMemoriesHomeでその動画から抽出した写真は残念ながら緯度経度のデータが動画の開始位置しか設定されないバグがあります。ちゃんと世界のSONYさんならバグは出して欲しくないものです。
この写真を山行に設定すると、ヤマレコはPlayMemoriesHomeのバグをそのまま反映するが、YAMAPは時刻で修正する為にほぼ正確な緯度経度で地図上に設定します。なおカシミール3Dで貼り付けた時もヤマレコと同じで正確でないです。YAMAPのソフトはさすがです。なお色々山関係のアプリを使用しましたが、YAMAPのように時刻で修正するソフトもありました。
ヤマレコで正確な地図上に反映させるには、二通り有ります。
一つはPlayMemoriesHomeが間違えて設定した緯度経度をカシミール3Dを使用して写真のEXIFデータを修復させることです。この作業はこの写真をカシミール3Dや地理院地図に貼り付ける為にタイトルやコメントも追加する作業と同時に必ずやらなければならない作業です。
もう一つはYAMAPの地図に貼り付けられたGPSの位置を見ながら、ヤマレコの「写真登録」画面の「地図配置」画面を開き、下の写真配置のタイトルの下の写真をドラッグして地図上に配置します。この作業はやったとしても、小さな地図上でしか反映されないが、一応地図のどこに有るかの目あすにはなります。
どちらも写真の枚数が多いとかなり時間が掛かります。
結局色々やった挙句にやはりカシミール3Dでやるしか方法は無いようです。
●写真のEXIFにカシミール3Dで緯度経度の数値を入力せずに設定する方法を説明します。
カシミール3Dを起動してデジカメプラグインを起動させて、念の為に、山アプリで得たGPS軌跡(細かい秒単位設定にするにはスーパー地形)を読ませて、GPSの編集(トラックエディター)を開きます。
これから本題です。まず修正する写真を選択します。フロッピーディスクアイコンの左の「GPSデータから位置を指定」をクリックし、「1個の画像の撮影位置を推定しました。」画面でOKボタンを押します。これで写真のプレビュー画面が時刻のGPS位置に移動します。その後フロッピーディスクアイコンの「アイコンの位置をExifとして書き込む」をクリックし、「位置が変更された1個の画像に位置情報を書き込みます。」画面で「はい」ボタンを押し、「1個の画像を書き込みました」画面の「OK」ボタンを押します。この作業で一々緯度経度の数値を入力せずに設定出来ますが、写真の数だけこの作業をすることになり大変です。
なお今迄上の作業の前に。「間違ってトラックエディターの時刻を写真の時刻に合わせていました」が不要でした。このおかげで緯度経度の設定作業が非常に簡単になりました。
カシミール3Dは賢い機能を持ったアプリです。SONYの画像編集時のバグの尻ぬぐいをやってくれました。SONYのバグが治ることを祈ります。またUNIX関連のソフトRubyやPythonなどでSONYのバッチ処理が出来ればいいのだが?