森林土木memoある自治体職員が、仕事で使うGIS、GPS、CADなどについてメモします。写真の位置をQGISに表示しよう(Photo2KMZプラグイン)スマートフォンやGPS付きデジカメで撮影した位置情報の付いた写真がある場合、その位置情報を使ってQGISにポイントを作成するには「Photo2Shape」プラグインがあります。写真とGPSをリンクさせてQGISで写真を表示する方法しかし、Photo2Shapeプラグインは、「Exifread」という別のファイルをQGISのインストールフォルダ(しかもかなり深い場所)にコピーしなければなりません。ExifreadのバージョンによってはPhoto2Shapeが動作しないなどの問題もあります。(2017年7月現在もExifreadのバージョンの違いでエラーが出ます。エラーが出る場合には、Exifreadを最新版に更新してください。)たまたまPhoto2Shapeを更新しようと思って、QGISの「プラグインの管理とインストール」で「Photo」と検索すると「Photo2KMZ」というプラグインを発見しました。試してみると、写真フォルダ、ファイル名を半角英数字にしなければいけないのはPhoto2Shapeと一緒ですが、Exifreadなどの別のファイルも必要ないし、GoogleEarthでも利用できるKMZファイルと、ファイル名と座標値が記録されたCSVファイルが作成されるので、Photo2Shapeよりもこちらのほうが使いやすい人という方もいると思います。位置情報が記録された写真を準備します。写真の保存フォルダ、ファイル名は、半角英数字のみにしてください。メニュー<プラグイン>→<Photo2KMZ>を選択して、Photo2KMZプラグインを起動します。Folder」ボタンをクリックして、写真が保存されているフォルダを選択します。Name〜」に作成するKMZファイルのファイル名を入力します。KMZファイルとCSVファイルは、写真と同じフォルダに作成されます。「OK」ボタンをクリックすると、KMZファイルの作成が始まります。KMZファイルが作成されると、メッセージが表示され、GoogleEarthがインストールされていれば、GoogleEarthが起動して、写真のポイントが表示されます。作成されたKMZファイルPhoto2KMZプラグインで作成されたKMZファイルのは写真も同梱されます。そのため、ファイルサイズが大きくなります。GoogleEarthで利用するのであれば、写真が同梱されたKMZファイルは便利ですが、QGISではポイントデータのみのkmlファイルがあればOKです。KMZファイルは、zip圧縮されたファイルですので、zipファイルと同様に展開して、kmlファイルのみコピーすることでkmlファイルをのみを保存できます。作成されたCSVファイルKMZファイルと一緒に作成されるCSVファイルは、QGISの「デリミティッドテキストレイヤの追加」でポイントレイヤとして地図に表示できます。北部九州地方の2017年7月5日〜6日にかけての24時間等雨量線をつくりました2017年7月6日の記事で等雨量線の作り方を紹介しました。この記事は、7月3日くらいから作っていたのですが、たまたま公開した日に北九州での大雨災害がありました。災害にあわれた方には、心よりお見舞い申し上げます。7月7日に気象庁のWebサイトで5日、6日の九州の雨量をダウンロードできるようになりましたので、2017年7月5日午前11時から6日午前10時までの24時間雨量の等雨量線を作成してみました。ここからダウンロードできます。.qgs」をQGISで開くと、等雨量線が表示されます。背景はOpenStreetMapを利用しています。24時間最大雨量は観測点によって違いますが、今回は最も雨量多かった、「朝倉」の最大24時間雨量を基準にしました。等雨量線が示す雨量は、観測所の観測雨量から推測したものですので、実際の雨量とは異なります。お役に立てるかわかりませんが、自由に利用してください。QGISで作るはじめに林地で災害が起きて、それが雨量に起因する場合、国の補助を受けて災害復旧する場合の採択基準に一定以上の雨量(80mm/24hなど)が発生している事実が必要です。その際、災害発生現場が雨量観測所から離れている場合、観測所からの距離配分で現場の雨量を推測しますが、紙の地図で自作するのは面倒なものです。簡単に作成することが可能です。HokkaidoのQGISラスタ中級編ハンズオンで行われた内容をヒントにしています。必要なデータは次のとおりです。データ(気象庁)CSVファイルでダウンロードできます。緯度経度の度と分が別のフイールドになっているので、一つのフィールドに修正します。度分秒も10進数に直しておくと後で扱いやすいと思います。雨量データのCSV(気象庁)必要な観測地点を選択して、必要な期間と必要なデータを選択します。今回は2016年8月17日の北海道十勝地方のデータを利用してみます。観測所のCSVをQGISに読み込む気象観測所のCSVデータをQGISで読み込みます。QGISでは「デリミティッドレイヤの追加」でCSVファイルを選択します。すると、次のような画面が表示されるので、「Xフィールド」に「経度」、「Yフィールド」に「緯度」を選択します。「OK」ボタンをクリックすると、マップキャンバスに観測所のポイントが表示されます。その際、「CRSが定義されていません」とエラーが表示されるので、レイヤを右クリックして「レイヤのCRSを設定する」を選択し「WGS84(EPSG:4326)」を選択します。ここまでの手順で作成した、全国の気象観測所のポイントシェープファイルをここに置いておきます。データ(気象庁)から作成しました。必要な観測所のみを保存する全国のポイントは必要ないと思うので、必要な観測所のみ保存します。自分に必要なポイントのみ選択して、レイヤを右クリックして「名前をつけて保存する」を選択します。Shapefile」を選択します。座標系は、WGS84のままでもいいですし、平面直角座標系に変更しても構いません。「選択地物のみ保存する」にチェックを付けて、「OK」ボタンをクリックすると、選択したポイントだけを新しいファイルで保存できます。レイヤを名前を付けて保存する必要な雨量データを準備する気象庁の「過去の気象データ・ダウンロード」で、必要な地点の選択、項目の選択、期間の選択、オプションの選択をして、「CSVファイルをダウンロード」すると、必要な日にちの雨量データ(CSVファイル)をダウンロードできます。ここでダウンロードできるCSVファイルは、観測地点が列になって、データが行になっています。このあとで、先程作った観測所レイヤに雨量データを結合したいのですが、これでは行列が逆になっています。Excelなどの表計算ソフトでは、行列を入れ替えてコピーすることができるので、その機能を利用して、行列を入れ替えたデータを作ります。Excelなどで雨量データの行列を入れ替え行列を入れ替えたあと、不要なデータを削除して、観測所の名前と雨量のみにして、Excel2003形式ファイル(xls)で保存します。複数シートが有る場合は、シート名をわかりやすくしておくといいです。雨量データの例ここでCSVファイルではなくExcelファイルを利用するのは、数字を数字としてQGISに読み込ませるためです。雨量データをレイヤに追加する作成した雨量のExcelファイルをQGISのレイヤに追加します。Excelファイルをドラッグして、QGISの画面にドロップすると、複数シートが有る場合には、シート選択ダイアログが表示されるので、シートを選択して「OK」ボタンをクリックするとレイヤに雨量データが追加されます。レイヤに追加されたExcelデータExcelファイルをQGISのレイヤに追加すると、文字コードが「UTF-8」でなければなりません。レイヤを右クリックして、プロパティを選択し、一般情報の「データソースエンコーディング」を「UTF-8」にします。観測所データと雨量データを結合する観測所データと雨量データを「観測所名」で結合します。観測所ポイントデータを右クリックして、プロパティを選択します。「結合」を選択して、「+」ボタンをクリックして、結合ダイアログを表示します。「レイヤの結合」に雨量データを選択します。「フィールドを結合する」で、雨量データの観測所名フィールドを選択します。「ターゲットフィールド」で観測所データの観測所名を選択します。「フィールドの接頭辞」にチェックを付けて、テキストボックスの中を空白にします。「OK」ボタンをクリックすると、結合ルールが登録されます。結合ルールはいつでも編集できます。観測所データの属性テーブルを確認すると、雨量データが追加されています。結合したフィールドは仮想的に結合しているだけなので、次のステップで選択できません。そこで、データを結合した状態の新しいレイヤを作成するために、レイヤを「名前をつけて保存」します。雨量を結合した観測所レイヤを右クリックして、「名前をつけて保存する」を選択します。ファイルの保存先を選択して、「OK」ボタンをクリックすると、新しいレイヤが作成されます。紛らわしいので、元のレイヤは削除しておきましょう。次のステップの「データ補間」を利用するには、「変換プラグイン」が有効になっている必要があります。「メニュー「プラグイン」→「プラグインの管理とインストール」で「インストール済み」を選択し、「変換プラグイン」にチェックがついているか確認します。チェックが付いていなければチェックを付けます。観測所の雨量データを使って、観測所間のデータを補間した雨量ラスタレイヤを作成します。雨量ラスタレイヤを作成することで、現場の雨量を推定できます。メニュー「ラスタ」→「データ補間」→「データ補間」を選択します。「入力」の「ベクタレイヤ」に観測所レイヤを選択し、「補完する属性」で雨量データのフィールドを選択します。「追加」ボタンをクリックすると、リストに選択したレイヤとフィールドが追加されます。リストに追加されると、その範囲の座標が自動入力されます。「出力」の「カラム数」「行数」を設定します。範囲の大きさで適切な数値を設定してください。数字を大きくすると、ラスタのメッシュが小さくなり、メッシュ数が多くなります。「出力ファイル」で、ラスタレイヤを保存するファイルを指定します。ここで指定するフォルダ名、ファイル名は半角英数字のみとして、日本語を含まないようにしてください。「OK」ボタンをクリックすると、ラスタレイヤが作成されます。作成された雨量ラスタレイヤラスタレイヤのファイルは拡張子「asc」と「prj」というファイルが作成されます。等雨量線を作成する雨量ラスタレイヤのメッシュには、観測所間のデータを補間した雨量が記録されています。雨量をスタイルで色分けすることはできますが、地図を見ただけで雨量を確認することはできません。そこで同じ雨量を結んだ線(ライン)の「等雨量線」をベクタレイヤで作成します。「入力ファイル(ラスタ)」に雨量ラスタレイヤを選択します。「等高線(ベクタ)を出力するファイル名」で保存するベクタレイヤのファイル保存先を設定します。この時、入力ファイル、出力ファイルともにフォルダ名、ファイル名は半角英数字のみとし日本語は使わないでください。「属性カラム名」にチェックを付けてください。フィールド名は変更しなくても構いません。フィールド名は半角英数字のみとしてください。「OK」ボタンをクリックすると、「処理が完了しました」とメッセージが表示され、等雨量線が作成されます。「閉じる」ボタンで終了します。等雨量線のシェープファイルは、上で指定した出力ファイルで指定したフォルダ内に「contour」という名前のシェープファイルで保存されます。レイヤの順序を設定して、見やすいようにします。等雨量線のスタイルとラベルをせっています。ラインのスタイルは見やすい色と太さを選択してください。ラベルは「ELEV」フィールドを選択して、線上に表示します。「バッファ」か「背景」を設定すると見やすいでしょう(画像は背景を楕円で設定した例)。スタイルとラベルを設定した等雨量線おわりにはじめはすこしステップが多いのでわかりづらいかもしれませんが、慣れれば簡単に等雨量線を作成できます。記事で作成したプロジェクトファイルとレイヤファイルもここに置いておきますので参考にしてください。2.0業務で使う林業QGIS徹底使いこなしガイドブログ主が書きましたQGISのマニュアル本です。2017年6月発売!「林業」とありますが、林業だけでなくQGISの基本から応用まで幅広く網羅しています。御覧ください!Amazonでも販売中!下のリンクから、本で利用できるサンプルファイルをダウンロードできます。業務で使う林業QGIS徹底使いこなしガイド本の紹介ページ(全林協)公開しているテキスト当ブログ管理人が作成したQuantumGISのテキストなどをダウンロード出来ます。北海道Shapeファイル北海道全域の基盤地図情報をShapeに変換しました。)、「道路縁」があります。(04/19)ファンメッセージを送るこのブログの読者になる更新情報をチェックするブックマークする友達に教えるカテゴリ日記(14)その他(2)CAD(1)GIMP(1)林道(1)QGIS(50)GPS(4)リンク(1)DBF編集(2)GISその他(22)魚道(0)治山ダム(1)Android(10)カシミール3D(6)vb.net(2)Web地図(5)過去ログ2019年10月(2)2019年02月(1)2018年09月(3)2018年08月(1)2018年03月(1)2017年12月(1)2017年08月(1)2017年07月(3)2017年06月(2)2017年05月(2)2017年02月(1)2017年01月(1)2016年12月(1)2016年11月(4)2016年09月(1)2016年08月(3)2016年07月(3)2016年03月(1)2015年12月(1)2015年09月(2)Seesaaブログ。