満足への果てしない旅
2016/11/10
IT 仕事写真の地図情報を踏まえて社内システムに具備できたので、これでほぼ写真管理システムは完成となりました。
「スマホ撮影の写真を勝手に振り分けて社内システムに保管する!」でも掲載してきたように、業務で利用する写真を何とかして、手間を掛けずに案件ごとに振り分けが出来ないかと試行錯誤してきました。
山口建設では撮影する写真は5000枚/月にものぼり、ファイルのコピーとか移動とか手間を加えないと活用できなかったり、そもそもどこかのPCのどこかにあるなどと埋没していってしまうと会社としてもったいこと限りありません。
また手動でそれぞれの作業を実施する形になると、する人、しない人、できる人、できない人で偏りが出てしまうのも事実。
というわけで、今までの記事にあるような変遷を経て、やっと写真管理について概ね満足するシステムが構築できました。
改善前
処理の流れ
- スマホ→NAS連携
- NASの会社が出しているスマホアプリで同期。
- NAS上で処理用に写真ファイルをコピーしバックアップ
- バックアップした処理用ファイルのGPS情報を元にして、合致する案件情報の各フォルダへ縮小してコピー
- 合致しない場合は不明ファイルとして特定のフォルダに保存
- 処理済みのファイルは0サイズのファイルとして保存
- 次回処理以降は0サイズは処理を実施しない。
問題点
- スマホからの連携(同期)が中々のバッテリーを消費する。
- NASのアプリによる同期が、そこそこ頑張らないといけない模様。
- 写真撮影時にGPS情報が取得できない(紐付かない)場合に救済措置がない。
- 20%程度はGPS情報が取得できずに撮影してしまう。
- 確かに、撮影時1分程度待ってもGPSを捕まえられない時がある。
- 案件情報がある前提でないと、住所のマッチングが出来ない。
- 「案件作成→撮影」ではなく、「撮影→案件作成」ということもあるので住所が拾えず、合致できない。
- 写真ファイルを全て確認するのは時間がかかってしょうがないので処理済みのファイルは再度処理しない形にしているため、救済措置がない。
処理イメージ
このように、GPSがあり、先に案件情報が作成してある場合は、各案件フォルダに縮小コピーされた写真が格納されます。
改善後
処理の流れ
- スマホ→Googleフォト→Googleドライブ→NAS連携
- NAS上の写真ファイルの、写真データと、バイナリそのものをDBに格納
- 前後の撮影時間間隔を判断し、GPS情報が無い場合は前後の写真からGPS情報を補完
- 各案件の住所情報から50m以内にある写真を列挙
処理イメージ
これで、誰が何時撮影しようと、現場の50m以内の写真は、各案件ごとに表示・活用できるようになりました。
GPSの精度がいまいちなのか、結構ぶれるので50mとしています。
KDDIのTORQUE2を利用していますが、発売出たての機種はGPSを掴みづらく、最近購入したものはGPSを掴みやすい感覚があります。
DBにGPS情報を格納したことでこれで好きに情報を活用することが可能になりました。
社内で拾えるだけ拾った7万枚にも及ぶ写真をDBに格納したんですが、同一テーブルに写真情報と、写真バイナリを格納したら、ろくに検索ができずにひどいことになりました。
サイズが大きすぎると別テーブルにした方が良いんですね…。
jpgファイルとしてのコピーや移動などがなくなることで写真ファイルに対する概念が今までと全く変わってしまいますが、そこは運用整理ということで良しとしましょう。
これで一切気にせず、「GPS情報が取得できた写真をスマホで撮影するだけ」で写真管理ができるようになりました。
アプリを介さず、スマホのカメラで撮影するだけで案件ごとに振り分けるシステム、世界で唯一じゃないでしょうか 🙂