公式iOSアプリをApp Storeで公開しました無料でダウンロード

動画の撮影場所を特定する7つのステップ

· 約1分で読めます

結論

動画の撮影場所を特定するには、元のファイルを確認します。スマホの動画はGPS座標を残していることが多く、ExifToolで読めます。TikTokやYouTube、Instagramのコピーでは失われているため、FFmpegでフレームを取り出して画像検索し、候補を地図で照合します。

1秒30フレームで撮影した10秒のスマホ動画は、同じ場所を写した300枚の写真と、サウンドトラックのようなものです。どの1枚の写真よりも豊かな情報源になります。ただし、目の前にあるコピーが元のファイルであることはまれだという点を乗り越えてからの話です。

以下の方法は、ファイルから外側へ向かって進みます。元のファイルがあればそのメタデータから、次にプラットフォームが表示している情報、フレーム、検索、手がかり、最後に検証という順です。どのステップも後ろのステップより手間がかからず、どこかで検索を終わらせられます。

  1. 元のファイルのGPSタグを確認します。 手元にある場合に限ります。
  2. プラットフォームが表示している内容を読みます。 位置情報タグ、キャプション、コメント。
  3. FFmpegや一時停止したスクリーンショットで、鮮明なフレームを取り出します。
  4. 最もよいフレームを画像検索して、以前のアップロードを探します。
  5. 複数のフレームにわたって手がかりを読み、音声も聞きます。
  6. 最も鮮明なフレームをAIによる位置推定にかけ、可能性の高い都市を得ます。
  7. 結論を出す前に、地図の画像と照合して検証します。

ステップ1:元のファイルに位置情報が保存されていますか?

多くの場合はい。カメラに位置情報のアクセス権があったスマホで直接撮った場合です。iPhoneはQuickTimeの位置タグに、Androidスマホはファイルのuser-dataボックスに位置を書き込み、ExifToolは両方を読めます。これは軌跡ではなく、クリップ全体の一つの位置です。

カメラには、まず権限が必要です。iPhoneでは、設定 → プライバシーとセキュリティ → 位置情報サービス → カメラです。Androidのカメラアプリには、独自の位置情報またはジオタグのスイッチがあります。Appleのタグは、ISO 6709の座標文字列を保持します。Androidの開発者向けドキュメントによると、そのレコーダーは地理データをudtaボックスに、同じISO 6709形式で保存します。

ExifToolで読み取る

ExifToolは、Windows、macOS、Linuxで無料です。これら3つのコマンドは、バージョン13.59でテストしました。

  • exiftool -G1 -s "-*gps*" "-*location*" clip.mov は、スマートフォンがどのボックスを使ったかにかかわらず、すべての位置タグを一覧にします。出力の[Keys]はiPhone形式のタグを、[UserData]はAndroid形式のタグを示します。iPhoneはLocationAccuracyHorizontalも保存します。これは、スマートフォン自身が推定した位置の誤差(メートル単位)です。
  • exiftool -n -GPSPosition clip.mov は、48.8584 2.2945 のような、そのまま地図に貼り付けられる10進数の座標を表示します。
  • exiftool -CreationDate clip.mov は、iPhoneの撮影時刻を、クロックのUTCオフセットと一緒に表示します(例:+02:00)。

そのUTCオフセットは、GPSがなくても見る価値があります。これは場所ではなく時間帯ですが、ホームの時間帯に設定されたままのスマートフォンは誤解を招きます。それでも、数秒で世界の大部分を候補から外せます。

FFmpegを手順3のためにすでに入れていますか?その兄弟ツールのffprobeで、生の値を確認できます:ffprobe -v error -show_entries format_tags clip.mov。+48.8584+002.2945+035.000/のような文字列を探してください。緯度、経度、そして高度(メートル)の順です。プラス記号は北と東を意味します。

ドラレコ、ドローン、アクションカメラ

これらは多くの場合、1点ではなく、軌跡を記録します。1秒ごと、またはそれより速い間隔で新しい位置が記録されます。ExifToolは、現在124種類のこの時系列GPSを読み取れますが、指定したときだけです。ExtractEmbeddedオプションでより多くのタグが見つかるかもしれないという警告が出たら、exiftool -p gpx.fmt -ee3 clip.mp4 > track.gpx を実行すると、経路をGPXファイルとして保存できます。多くの地図ツールが開けるファイルです。gpx.fmtファイルは、ExifToolの完全版ダウンロードのfmt_filesフォルダに入っており、コマンドを実行するフォルダに置いておく必要があります。

TikTok、YouTube、Instagramのコピーに位置情報がないのはなぜですか?

アップロードされたファイルそのものではないからです。プラットフォームは、すべてのアップロードを自社のストリーミング版に再エンコードし、その新しいファイルには、GPSを含め元のメタデータが書き込まれません。投稿を保存またはダウンロードすると、そのコピーが手に入ります。画面録画は、コピーのコピーです。

YouTubeのヘルプページでは、その過程が説明されています。新しいアップロードはまず低画質で処理され、高解像度はあとから用意されます。視聴者は新しく作られたエンコードをストリーミングし、投稿者のファイルに入っていた位置タグは、そこには含まれていません。TikTokとInstagramもアップロードを再エンコードしており、これは共有すると写真の位置情報が消える理由でもあります。

そのため「動画の位置情報チェッカー」は、目の前のコピーからGPSを復元することはできません。せいぜい、投稿についてプラットフォームが公開している内容を繰り返すだけです。送られてきたクリップを検証するなら、元のファイルを頼んでください。通常の動画メッセージではなく、書類として、またはクラウドのリンクで送ってもらうのがよいでしょう。メタデータが残るかどうかを決めるのは、公開か転送かというルールです。写真と同じく動画にも当てはまります。

ステップ2:プラットフォーム自体は何を示していますか?

投稿者が追加したもの、そして視聴者が書いたことだけです。TikTokやInstagramは、タグ付けされた場所を表示でき、YouTubeは視聴ページに動画の場所を表示できます。キャプション、コメント、話された言葉は、場所の名前をはっきり示していることがよくあります。タグは主張であって、測定値ではありません。

  • 位置タグ。 TikTokとInstagramでは、投稿者が公開時に場所を付けられ、そのタグをタップすると、同じ場所にタグ付けされた他の公開投稿が一覧で表示されます。YouTubeでは、クリエイターがYouTube Studioで動画の場所を設定します。それは視聴ページに表示され、クリックすると同じ場所の公開動画が検索されます。
  • キャプション、説明文、ハッシュタグ。 旅行や街の動画には、撮影した人がラベルを付けていることがよくあります。
  • コメント。 視聴者は「駅の近くの角だ」などと、すぐに書き込みます。間違っていることもありますが、確かめるべき仮説になります。
  • 話された言葉。 YouTubeでは、説明を展開して「文字起こしを表示」を選び、キャプションには入っていない地名を検索します。
  • 透かし。 転載された動画には、元の投稿者の透かしやアカウント名がよく残っており、最初にアップロードされた動画には、転載で削られたキャプションやタグがまだ残っていることがあります。

これらすべてを証言として扱ってください。人々は、最寄りのランドマーク、通りではなく都市名、あるいは一度も行ったことのない場所をタグ付けします。タグをどこまで信頼できるかは、Instagramガイドで説明しています。

ステップ3:動画から鮮明なフレームを取り出すには?

ファイルを入手します。元のファイル、プラットフォーム自身の保存オプション、または最高画質での画面録画のいずれかです。そのあとFFmpegで1秒ごとにフレームを取り出し、キーフレームやカット点を選んで、最も鮮明な瞬間をPNGとして書き出します。全画面で一時停止したスクリーンショットでも構いません。

画面録画でも問題ありません。ここから先のすべての方法は、メタデータではなくピクセルを読むからです。まず再生画質を最高にし、可能であれば字幕やコントロールを隠してください。それらは、あなたが読み取りたいピクセルの上に重なってしまいます。

FFmpegは無料で、残りの作業をすべてこなせます。以下の各コマンドは、実際の路上の映像でFFmpeg 8.0.1を使ってテストしました:

  1. Step 11秒に1フレーム取り出すffmpeg -i clip.mp4 -vf fps=1 frame_%03d.png は、frame_001.png、frame_002.pngなどを書き出します。長い動画なら、fps=1/5 で5秒ごとに1フレームを取り出せます。
  2. Step 2キーフレームを取り出すffmpeg -i clip.mp4 -vf "select='eq(pict_type,I)'" -fps_mode vfr key_%03d.png は、完全な画像として保存されたフレームだけを残します。H.264とVP9のどちらのファイルでもうまくいきました。一方、よく紹介される-skip_frame nokeyという近道は、60fpsのVP9動画の全フレームを黙って書き出してしまいました。30秒の動画から1,800枚の画像になったのです。
  3. Step 3編集された動画のカットを捉えるffmpeg -i clip.mp4 -vf "select='gt(scene,0.3)',showinfo" -fps_mode vfr cut_%03d.png は、各カットの後の最初のフレームを保存し、その時刻をpts_timeとして表示します。FFmpegのドキュメントでは、0.3から0.5の間のしきい値が妥当な選択とされています。連続した65秒の歩行映像では何も見つからなかったため、モンタージュのための方法として使ってください。
  4. Step 4最もよい瞬間を書き出すffmpeg -ss 00:00:12.4 -i clip.mp4 -frames:v 1 best.png は、12.4秒のフレームを保存します。動きのぶれを避けるため、時刻を0.数秒ほど前後にずらしてみてください。
  5. Step 5コンタクトシートを作るffmpeg -i clip.mp4 -vf "fps=1/3,scale=480:-1,tile=5x4" -frames:v 1 sheet.png は、最初の1分間の3秒ごとに1フレームを、1枚の画像にまとめます。どの瞬間をよく見る価値があるかを、最も速く見つけられる方法です。

PNGなら、二度目の圧縮を避けられます。ダウンロードした路上の映像で行ったテストでは、PNGフレームは1080pで1.5〜2.6MB、4Kで3.9〜5.1MBでした。同じフレームを-q:v 2付きで.jpgとして保存すると、1MB未満に収まりました。カメラの元の映像から出力されたPNGが分析ツールの10MBの上限を超えた場合の代替策です。

コマンドラインがない場合は、YouTubeで一時停止してピリオドキーかカンマキーを押すと、1フレームずつ進んだり戻ったりできます。そのあと全画面でスクリーンショットを撮ります。無料のInVID-WeVerifyプラグインは、ChromeとFirefoxで、リンクされた、またはアップロードされた動画をキーフレームに分割し、そのどれでも画像検索に送れます。

ステップ4:どのフレームを画像検索すべきですか?

目立つ被写体のあるフレームを選び、ランドマーク、店先、看板などを切り抜いて、2つ以上のエンジンで検索します。TinEyeを古い順に並べると、同じ映像の以前のアップロードが見つかり、元のキャプションや場所が含まれることが多いです。

画像検索は場所ではなく画像を照合するため、より狭い問いに答えます。この場面、あるいはまさにこの映像が、以前に公開されたことがあるかどうかです。話題になった動画では、答えが「はい」であることがよくあります。別のキャプションが付いた以前のアップロードは、場所の手がかりであると同時に、今のキャプションが間違っている可能性への警告でもあります。

写真では一度しか試せないところを、動画では何度も試せます。広い冒頭のショット、最も鮮明な看板、最も奇妙な建物など、異なる瞬間を3〜4つ検索してください。それぞれが一致の機会になるからです。YouTubeのサムネイルも検索する価値がありますが、カスタムのサムネイルは動画のフレームではないこともあります。

どのエンジンがどの被写体に向いているかは重要で、Google LensとYandexは、異なる場面で失敗しやすい傾向があります。スマートフォンでは、モバイル向けの方法ならアプリは不要です。

ステップ5:動画だからこそ得られる手がかりは何ですか?

動き、複数の角度、そして音です。走行中の双方向の交通から、どちら側通行かが分かります。パンすると、1コマでは切れてしまうスカイラインが見えます。あるフレームでぼやけた看板が、次のフレームでは鮮明なことがよくあります。サウンドトラックには、言語や地名が含まれていることがあります。

各フレームを写真と同じように読んでください。文字と看板、道路標示、ナンバープレート、建築、植生、そして光です。国を示す手がかりのガイドでは、道路標示などの規制されたものが、景観よりも優先される理由を説明しています。動画が加えるのは、動きと繰り返しです。

  • 進行方向。 静止画では、駐車中の車は、どちら向きでも止まっているかもしれません。動画では、動いている双方向の交通が、ぼやけていても、運転する側を疑いなく示します。ただし、一方通行の道路は除いてください。
  • 同じ看板が何度も出る。 反射、ぼやけ、通過するバスによって、あるフレームでは文字が隠れても、次のフレームでは見えることがあります。諦める前に、フレームを1枚ずつ進めて確かめてください。
  • パンとターン。 周りを回るカメラは、1フレームでは切れてしまう丘、海岸線、スカイラインを見せます。
  • 映像全体での太陽。 カメラが回るにつれて、通りのどちら側に影が落ちるかが分かります。影は、植生が使えないときに半球とおおよその時刻を示します。

サウンドトラックを聞く

まず、音声が現場から録音されたものかを確認してください。TikTokとInstagramでは、音声のラベルに「original sound」または「Original audio」と投稿者自身の名前が表示されるはずです。曲名や他のアカウントの名前であれば、その音は借りものです。とはいえ、オリジナルの音声でも、アップロード前に吹き替えられていることがあるため、音楽やナレーションは疑ってかかってください。

  • 言語とアクセント。 言語によって候補の国が一度に絞れ、方言なら地域まで絞れることがあります。
  • アナウンス。 駅、ホーム、空港のアナウンスは、設計上、場所の名前を出します。停車駅を書き起こして、その名前を検索してください。
  • 特徴的な音。 緊急車両のサイレンは国によって異なり、礼拝の呼びかけ、路面電車のベル、教会の鐘も、それぞれ地域を絞り込みます。
  • 電気のハム音。 電源周波数は、世界の大部分では50Hz、北米やブラジル、韓国などの一部の国では60Hzです。スペクトログラムで、どちらかの周波数の安定した音が見えれば、候補を二つに分けられます。ただし、そのハム音が残っている場合に限ります。スマートフォンのノイズ低減は、それをよく取り除くためです。

ステップ6:AIによる位置推定で、動画の撮影場所を特定できますか?

動画ファイルそのものではなく、そのフレームなら可能です。GeoSpyは静止画を分析するため、最も鮮明なフレームをJPGまたはPNGで、10MBまでアップロードしてください。都市と国の推定値を返し、住所は返しません。FFmpegのフレームにはGPSが含まれないため、推定は見えているものに基づきます。

道路、建物、看板、植生が一緒に写っているフレームのように、同時に多くの種類の証拠が入っているフレームを選んでください。どれか1つの接写より、それらが合わさったほうが強いのです。まず字幕、サブタイトル、プラットフォームのボタンを切り取ってください。それらは証拠を覆い隠すだけで、何も加えません。

次に、別の瞬間から2枚目と3枚目のフレームでも試してください。同じ都市を指せば、確信度は上がります。ばらけるなら、場面は曖昧で、誠実な結果は地域です。モデルが場面をどう読むかでは、あるフレームがうまくいき、別のフレームがうまくいかない理由を説明しています。

ステップ7:結論を出す前に、場所をどう検証しますか?

ストリートビューや衛星画像で候補の場所を探し、その場所を見つけるのに使わなかった細部、たとえば縁石、排水管、屋根の線などを確認します。そのうえで時期も確認します。季節、光、最も古いアップロードは、すべてクリップに付随する話と合っているはずです。

場所を見つけるのに使った手がかりが一致しても、何も証明しません。そもそも一致していることを知っていたからです。試金石は、使っていない細部も一致するかどうかです。動画は、写真よりもこれを容易にします。10秒後のフレームを取り、隣の建物が正しいものかを確かめてください。

時期も、もう一方の半分です。古い出来事の映像を再利用することはよくあるため、ステップ4で見つけた最も古いコピー、木々の状態、光の向きは、すべて主張と合っているはずです。OSINTのワークフローでは、記録すべきものを含めて、検証の全体像を示しています。検証ガイドでは、フレームごとに機能する確認方法を扱っています。

画像が乏しい場所(ストリートビューの対応範囲にはむらがあります)での妥当な結論は、通りではなく、信頼度を示した地域です。

それぞれの証拠は、何を教えてくれますか?

元のファイルにあるGPSだけが、単独で座標を与えます。それ以外は、検索を絞り込みます。タグとキャプションは主張であり、画像検索は以前のコピーを見つけ、視覚と音声の手がかりは国や地域を、AIによる位置推定は都市を示します。

証拠分かること分からないこと
元のファイルのGPSタグ撮影された場所。通常は数メートル以内編集されたかどうか、プラットフォームのコピーについて
時系列のGPS軌跡(ドラレコ、ドローン)経路全体を、1点ずつファイルが再エンコードされたあとのこと全般
プラットフォームの位置タグ投稿者が名前を付けることを選んだ場所カメラが実際にどこにあったか
キャプション、コメント、文字起こし人々が入力、または話した地名それらが正しいかどうか
フレームの画像検索以前のアップロードや、場面の名前を書いたページまだ公開されていない場面について全般
フレームの視覚的な手がかり国、地域、場合によっては通り単独では住所
音声言語、地域、場合によっては名前の付いた停留所後から音が追加されていた場合のこと全般
フレームのAIによる位置推定可能性の高い都市と国住所、または証明
太陽と影半球とおおよその時刻それだけでは国
各証拠で分かること、分からないこと

二つの独立した情報源が一致すれば(たとえばタグとストリートビューの一致)、それは発見になります。一方だけなら、手がかりにすぎません。静止画については、写真のメインガイドが、同じ方法を並べて比較しています。

よくある質問

TikTokの動画がどこで撮られたか分かりますか?
投稿者が場所をタグ付けしたか、キャプションで名前を書いた場合に限ります。TikTokはアップロードを再エンコードするため、保存したコピーにはスマートフォンからのGPSが残っていません。その先は、フレームと音声があるだけで、上の方法がそれを基に進みます。
YouTubeの動画には位置情報がありますか?
見られる、または保存できるバージョンには含まれていません。YouTubeは元のファイルのメタデータを含まない処理済みのコピーを配信します。クリエイターはYouTube Studioで動画の場所を追加でき、それは視聴ページに表示されますが、GPSの読み取り値ではなく、クリエイターの主張です。
GeoSpyは動画ファイルを分析できますか?
いいえ。GeoSpyは静止画を分析します。JPGまたはPNGで10MBまでです。そのため、まずフレームを取り出して、それをアップロードしてください。住所ではなく都市レベルの推定を返し、アップロードされた写真は保存されません。
画面録画は、元の動画の位置を保持しますか?
いいえ。画面録画は、自分の端末が作った新しいファイルで、元のメタデータは含まれていません。それでも、ピクセルを読むため、すべての視覚的な方法には使えます。
動画がどこで撮られたかを突き止めるのは合法ですか?
公開された映像がどこで記録されたかを割り出すこと自体は、一般的に合法です。ただし、その答えを使って人を見つけ出したり、追跡したり、連絡を取ったりすると、場所をどのように入手したかにかかわらず、ストーカー行為やハラスメントになりえます。法的なガイドが、線引きの場所を説明しています。

参考文献

  1. QuickTime Tags — ExifTool (Phil Harvey)iPhone(Keys location.ISO6709)とAndroid(UserData ©xyz)の動画のGPSCoordinates、そしてExtractEmbeddedで読み取れる124種類の時系列GPS。
  2. Geotagging with ExifTool — ExifTool (Phil Harvey)元のファイルから完全な軌跡を取り出すための、gpx.fmtの軌跡ログコマンドと-ee3オプション。
  3. MediaRecorder.setLocation() — Android DevelopersAndroidは、ISO 6709に従って動画の地理データをudtaボックスに保存します。
  4. FFmpeg Filters Documentation: select, aselect — FFmpegI-フレームとシーン変化の式、および0.3〜0.5のシーン変化しきい値の範囲。
  5. Tag your location on videos and live streams — YouTube Helpクリエイターが設定した動画の場所が、視聴者に表示される場所。
  6. Low video quality after upload — YouTube Helpアップロードは、低画質から始まる新しいバージョンに処理されます。
  7. Mains electricity by country — Wikipedia世界の大部分は50Hz。北米は60Hzの最大の例外です。

続きを読む

Cookieに関するお知らせ

このサイトでは、ログイン、言語設定、セキュリティに必要なCookieのほか、アクセス状況と広告効果を測定するためにGoogle AnalyticsとMeta PixelのCookieを使用しています。これらはブラウザの設定でブロックできます。詳しくはCookieポリシーをご覧ください。