Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
Netryx-OpenSource-Next-Gen-Street-Level-Geolocation — Local-first geolocation engine that identifies precise GPS coordinates of street-level photos using CosPlace, ALIKED, and LightGlue computer vision models. Sub-50m accuracy, no landmarks needed. | Kitploit
ツール/GitHubGitHub/sparkyniner/netryx-opensource-next-gen-street-level-geolocation
OSINT (オープンソースインテリジェンス)偵察情報収集機械学習
GitHubsparkyniner/netryx-opensource-next-gen-street-level-geolocation

Netryx-OpenSource-Next-Gen-Street-Level-Geolocation

Local-first geolocation engine that identifies precise GPS coordinates of street-level photos using CosPlace, ALIKED, and LightGlue computer vision models. Sub-50m accuracy, no landmarks needed.

リポジトリを見る

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有
72164ヶ月前Kitploit レビュー済み

NETRYX

オープンソースのストリートレベル位置特定エンジン

任意のストリート写真をアップロードすれば、正確なGPS座標を取得できます。
精度50m未満。ランドマーク不要。完全にあなたのハードウェア上で動作します。

デモ · 仕組み · 始め方 · 使用方法 · FAQ


このバージョンは古いです。代わりにこちらを使用してください

新しいリポジトリ

Netryxとは?

Netryxは、あらゆるストリートレベルの写真の正確なGPS座標を特定するローカルファーストの位置特定ツールです。逆画像検索(アップロードされたウェブ画像と照合する)とは異なり、Netryxは体系的にクロールされたストリートビューパノラマと照合します。つまり、インターネット上の存在がゼロのランダムな街角でも機能します。

コアパイプラインは、3つの最先端コンピュータビジョンモデルを組み合わせています。

  • CosPlace:グローバルな視覚的位置認識(検索)
  • ALIKED/DISK:局所特徴抽出(キーポイント)
  • LightGlue:深層特徴マッチング(検証)

Google Lensはインターネットを検索します。Netryxは物理世界を検索します。


デモ

ユースケースリンク
ミサイル攻撃の位置特定 — カタール(2026年2月)YouTubeで見る
紛争監視 — パリの抗議活動YouTubeで見る
ランダムな写真からのブラインド位置特定 — パリYouTubeで見る
技術的な深掘り:パイプラインの仕組みYouTubeで見る

仕組み

Netryxは3段階のパイプラインを使用し、数百万の候補から徐々に絞り込んで単一の正確な一致を見つけます。Netryxは単なるツールであり、ソースに依存せず、mapilliaryやkartaviewなど任意のプロバイダからの画像を処理できます。

ステージ1 — グローバル検索(CosPlace)

インデックス内のすべてのストリートビューパノラマは、何百万ものジオタグ付き画像で訓練された視覚的位置認識モデルCosPlaceを使用して、512次元の「指紋」に事前処理されています。

クエリ写真をアップロードすると:

  1. システムが画像からCosPlace記述子を抽出します
  2. また、水平方向に反転したバージョンからも記述子を抽出します(逆の視点を捉えるため)
  3. 両方の記述子がコサイン類似度を使用してインデックス内のすべてのエントリと比較されます
  4. 半径フィルター(大円距離)により、指定された検索範囲内に候補を絞り込みます
  5. 視覚的に最も類似した上位500~1000のパノラマビューが候補として返されます

このステージはインデックスサイズに関係なく1秒未満で実行されます——単一の行列乗算です。

ステージ2 — 局所幾何学的検証(ALIKED/DISK + LightGlue)

CosPlaceは「似ている場所」を見つけます。ステージ2では、幾何学的検証を使用してそれらが「同じ場所」であることを証明します。

各候補について:

  1. 元のパノラマがGoogleストリートビューからダウンロードされます(8タイル、結合済み)
  2. インデックス化された方位角で矩形クロップが抽出されます
  3. クエリ写真とインデックスビュー間のズームの不一致を処理するために、3つの画角(70°、90°、110°)でマルチFOVクロップが生成されます
  4. ALIKED(CUDA上)またはDISK(MPS/CPU上)が局所キーポイントと記述子を抽出します
  5. LightGlueがクエリと候補のキーポイント間で深層特徴マッチングを実行します
  6. RANSACがマッチをフィルタリングし、幾何学的に一貫した対応のみを保持します(誤ったマッチを除去)
  7. 最も多くの検証済みインライアを持つ候補が最良の一致です

このステージはハードウェアに応じて300~500の候補を2~5分で処理します。

ステージ3 — 精密化

初期の一致は良好ですが、常に最適とは限りません。精密化により改善します:

  • 方位角の精密化:上位15候補について、システムは3つのFOVにわたって±45°の方位角オフセットを15°刻みでテストします。これにより、インデックス化された方位角がクエリの視野方向と正確に一致しない場合を捕捉します。
  • 空間的コンセンサス:マッチは50mのセルにクラスタリングされます。複数の候補が1つのエリアにクラスタリングされた場合、単一の高インライア外れ値よりもそのクラスターが優先されます——偽陽性を低減します。
  • 信頼度スコアリング:システムは上位マッチの地理的クラスタリングとユニークネス比(最良のマッチが異なる場所の次点よりもどれだけ優れているか)を評価します。

ウルトラモード(オプション)

困難な画像(夜間、ぼやけ、低テクスチャ)向けに、ウルトラモードでは以下を追加します:

  • LoFTR:検出器不要の高密度マッチャーで、キーポイント検出に依存せずに対応関係を見つけます。ALIKED/DISKが苦手とするぼやけや低コントラストのシーンを処理します。
  • 記述子ホッピング:初期の一致が弱い場合(<50インライア)、システムはマッチしたパノラマ(クリーンで高品質)からCosPlace記述子を抽出し、インデックスを再検索します。これにより、劣化したクエリが見逃した正確なパノラマを発見できることがよくあります。
  • 近傍拡張:最良の一致から100m以内のすべてのパノラマを検索します。正しい場所は、CosPlaceのトップマッチから1ストリートノード離れていることがよくあります。

アーキテクチャ

root@kitploit:~
クエリ画像
    │
    ├── CosPlace記述子抽出(512次元指紋)
    ├── 反転画像記述子抽出
    │
    ▼
インデックス検索(コサイン類似度、半径フィルタリング)
    │
    ├── 視覚的類似度でランク付けされた上位500候補
    │
    ▼
パノラマダウンロード → 3つのFOVで切り抜き → ALIKED/DISKキーポイント抽出
    │
    ├── LightGlueによるクエリキーポイントとのマッチング
    ├── RANSAC幾何学的検証
    │
    ▼
方位角調整(±45°、3つのFOV、上位15候補)
    │
    ├── 空間的コンセンサスクラスタリング
    ├── 信頼度スコアリング
    │
    ▼
📍 GPS座標 + 信頼度スコア

始め方

必要条件

GPUサポート:

  • Mac:MPS(Metal Performance Shaders) — M1/M2/M3/M4
  • NVIDIA:CUDA — 4GB以上のVRAMを搭載した任意のGPU
  • CPU:動作しますが、大幅に遅くなります

インストール

root@kitploit:~
# Clone the repository
git clone https://github.com/sparkyniner/Netryx-OpenSource-Next-Gen-Street-Level-Geolocation.git

cd .\Netryx-OpenSource-Next-Gen-Street-Level-Geolocation\

# Create virtual environment
python3 -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate

# Install dependencies
pip install -r requirements.txt

# Install LightGlue explicitly (required for matching)
pip install git+https://github.com/cvg/LightGlue.git

# Optional: Install kornia for Ultra Mode (LoFTR)
pip install kornia

注:lightglueはPythonモジュールとしてアプリにインポートされますが、上記のGitHubリポジトリからインストールされます。

Gemini APIキー(オプション — AI粗探しモード用)[使用は推奨しません。手動で十分です]

AI支援によるブラインド位置特定機能を使用する場合:

  1. Google AI Studioから無料のAPIキーを取得します
  2. 環境変数として設定します:
root@kitploit:~
export GEMINI_API_KEY="your_key_here"

使用方法

GUIを起動

root@kitploit:~
python test_super.py

macOSユーザー:GUIが空白で表示される場合、tkinterをアップグレードしてください:brew install [email protected](またはあなたのPythonバージョン)。システムPythonにバンドルされているtkinterは、最近のmacOSバージョンで既知のレンダリング問題があります。

ステップ1:インデックスを作成

検索する前に、エリアをインデックス化する必要があります。これにより、ストリートビューパノラマをクロールし、CosPlace指紋を抽出します。

  1. 作成モードを選択
  2. インデックス化したいエリアの中心座標(緯度、経度)を入力
  3. 検索半径を設定(テストでは0.5~1kmから開始、本番では5~10km)
  4. グリッド解像度を設定(300が適切なデフォルト — 高いほど高密度)※これは変更しないでください
  5. インデックス作成をクリック

インデックス作成時間の目安:

インデックスは増分的に保存されます——中断された場合、次回実行時に中断した場所から再開されます。

ステップ2:検索

  1. 検索モードを選択
  2. ストリートレベルの写真をアップロード
  3. 検索方法を選択:
    • 手動:写真のおおよその位置がわかっている場合は、座標+半径を入力
    • AI粗探し:Geminiに視覚的手がかり(標識、建築、植生)を分析させ、地域を推測——事前知識不要
  4. 実行をクリックし、次にフル検索開始をクリック
  5. リアルタイムのスキャン可視化で候補が評価されるのを確認
  6. 結果が信頼度スコアとともにマップ上に表示されます

ウルトラモード

難しい画像にはウルトラモードチェックボックスを有効にします。これにより、LoFTR高密度マッチング、記述子ホッピング、近傍拡張が追加されます。大幅に遅くなりますが、標準パイプラインでは見逃されるマッチを捕捉します。


インデックスの仕組み

すべての埋め込みは単一の統合インデックスに保存されます。検索時、半径フィルターが自動的に結果を指定されたエリアに制限します。つまり:

  • パリ、次にテルアビブ、次にロンドンをすべて同じインデックスに追加できます
  • 中心=パリ、半径=5kmで検索すると、パリの結果のみが返されます
  • 中心=ロンドン、半径=10kmで検索すると、ロンドンの結果のみが返されます
  • 都市を選択する必要はありません——座標+半径ですべて処理されます

データフロー:

root@kitploit:~
作成モード:
  グリッドポイント → GoogleストリートビューAPI → パノラマ → クロップ → CosPlace → cosplace_parts/*.npz

自動ビルド:
  cosplace_parts/*.npz → cosplace_descriptors.npy + metadata.npz(検索可能なインデックス)

検索モード:
  クエリ画像 → CosPlace → インデックス検索(半径フィルタリング) → 候補ダウンロード → ALIKED/DISK + LightGlue → 結果

プロジェクト構成

root@kitploit:~
netryx/
├── test_super.py          # メインアプリケーション(GUI + インデックス作成 + 検索)
├── cosplace_utils.py      # CosPlaceモデルの読み込みと記述子抽出
├── build_index.py         # スタンドアロンの高性能インデックスビルダー(大規模データセット用)
├── requirements.txt       # Python依存関係
├── cosplace_parts/        # 生の埋め込みチャンク(インデックス作成時に生成)
├── index/                 # コンパイルされた検索可能インデックス
│   ├── cosplace_descriptors.npy   # すべての512次元記述子
│   └── metadata.npz               # 座標、方位角、パノラマID
└── README.md

技術詳細

使用モデル

プラットフォーム固有の動作


FAQ

検索半径が大きくなると精度は低下しますか?

いいえ。CosPlaceはインデックス全体で視覚的類似度に基づいて順位付けます。インデックスが1kmをカバーしていようと50kmをカバーしていようと、上位候補は常に最も視覚的に類似したものです。半径フィルターは、順位付けの前に地理的に関係のないエントリを単に除外します。

検索にはどのくらい時間がかかりますか?

Apple Siliconでは通常2~5分、NVIDIA GPUでは1~3分です。ボトルネックはGoogleからのパノラマタイルのダウンロード(ネットワーク依存)であり、マッチング自体ではありません。

国全体をインデックス化できますか?

現実的ではありません。半径10kmでは約10万のパノラマと約7GBのインデックスが生成されます。国全体ではペタバイトが必要になります。特定の都市や関心地域(5~20km)をインデックス化してください。

検索で候補が0件でした。

検索座標がインデックス化されたエリアと重なっていません。まずそのエリアをインデックス化するか、既存のインデックスデータと重なるように検索中心または半径を調整してください。「カバレッジマップを表示」を使用して、何がインデックス化されているかを可視化できます。

一致が少しずれています(1ブロックずれている)。

ウルトラモードを有効にしてください。近傍拡張により、初期の一致から100m以内のすべてのパノラマが検索され、多くの場合、正確なストリートノードが見つかります。

屋内の写真でも動作しますか?

いいえ。Netryxは屋外のストリートビューパノラマとのみ照合します。屋内写真、航空写真/衛星画像、近接物体写真では意味のある結果は得られません。

お金はかかりますか?

Netryxは無料でオープンソースです。オプションのAI粗探し機能にはGemini APIキーが必要です(Googleから無料ティアあり)。計算コストはあなた自身のハードウェア——クラウドサービスは不要です。

ホスト版はありますか?

はい。netryx.liveではフルパイプラインがクラウド上で動作するため、ローカルで何もセットアップする必要はありません。自分でインデックスを構築せずに素早く結果を得たい場合に便利です。ただし、計算リソースの制約により、オープンソース版よりも約30%精度が低くなります。


フルパイプラインをセットアップしたくない?

netryx.liveは同じエンジンをクラウド上で実行します——写真をアップロードすれば座標を取得できます。インストール不要、インデックス作成不要、GPU不要。ただし、計算リソースの制約により、オープンソース版よりも約30%精度が低くなります。


作成者

Sairaj Balaji — AI研究者、PrismXの作成者。Microsoft for StartupsおよびElevenLabsからの助成金。Fast CompanyおよびDeutsche Welleで紹介されました。

  • LinkedIn

ライセンス

MITライセンス。詳細についてはLICENSEを参照してください。


法的免責事項

Netryxは、正当なOSINT研究、調査ジャーナリズム、人権監視、災害対応、学術研究のために設計されています。

ユーザーの責任:適用される法律(Googleマップ/ストリートビュー利用規約および現地のプライバシー規制を含む)への準拠を確保する責任はすべてユーザーにあります。

以下の目的では使用しないでください:ストーキング、嫌がらせ、許可のない監視、または個人のプライバシーや安全を侵害するあらゆる活動。

Netryxの開発者は、誤用に対する一切の責任を否認します。

ツールをダウンロード
コンポーネント最小推奨
OSmacOS / Linux / WindowsmacOS (M1+) または NVIDIA GPU搭載Linux
GPU VRAM4GB8GB以上
RAM8GB16GB以上
ストレージ10GB50GB以上(インデックスエリアのサイズに依存)
インターネットインデックス作成と検索に必要ブロードバンド推奨
Python3.9+3.10+
半径おおよそのパノラマ数時間(M2 Max)インデックスサイズ
0.5 km~50030分~60 MB
1 km~2,0001~2時間~250 MB
5 km~30,0008~12時間~3 GB
10 km~100,00024~48時間~7 GB
モデル目的論文
CosPlace視覚的位置認識(グローバル記述子)CVPR 2022
ALIKED局所特徴抽出(CUDAで使用)IEEE TIP 2023
DISK局所特徴抽出(MPS/CPUで使用)NeurIPS 2020
LightGlue深層特徴マッチングICCV 2023
LoFTR検出器不要の高密度マッチング(ウルトラモード)CVPR 2021
特徴CUDA (NVIDIA)MPS (Mac)CPU
特徴抽出器ALIKED (1024 kp)DISK (768 kp)DISK (768 kp)
LightGlueフラッシュアテンション有効無効無効
LoFTR(ウルトラモード)フル速度一部の演算でCPUフォールバックフルCPU
インデックス作成速度最速良好低速