Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
Netryx-OpenSource-Next-Gen-Street-Level-Geolocation — CosPlace, ALIKED 및 LightGlue 컴퓨터 비전 모델을 사용하여 거리 사진의 정확한 GPS 좌표를 식별하는 로컬 우선 지리 위치 엔진입니다. 50m 미만의 정확도, 랜드마크 불필요. | Kitploit
도구/GitHubGitHub/sparkyniner/netryx-opensource-next-gen-street-level-geolocation
OSINT (Open Source Intelligence)ReconnaissanceInformation GatheringMachine Learning
GitHubsparkyniner/netryx-opensource-next-gen-street-level-geolocation

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

CosPlace, ALIKED 및 LightGlue 컴퓨터 비전 모델을 사용하여 거리 사진의 정확한 GPS 좌표를 식별하는 로컬 우선 지리 위치 엔진입니다. 50m 미만의 정확도, 랜드마크 불필요.

저장소 보기

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유
72164개월 전Kitploit 검토 완료

NETRYX

오픈소스 거리 수준 지리 위치 엔진

거리 사진을 업로드하세요. 정확한 GPS 좌표를 얻으세요.
50m 미만 정확도. 랜드마크 불필요. 전적으로 하드웨어에서 실행됩니다.

데모 · 작동 방식 · 시작하기 · 사용법 · FAQ


이 버전은 구버전입니다. 대신 이 링크를 사용하세요

새 저장소

Netryx란 무엇인가요?

Netryx는 모든 거리 수준 사진의 정확한 GPS 좌표를 식별하는 로컬 우선 지리 위치 도구입니다. 역 이미지 검색(업로드된 웹 이미지와 매칭)과 달리, Netryx는 체계적으로 크롤링된 스트리트 뷰 파노라마와 매칭합니다. 즉, 인터넷에 전혀 존재하지 않는 임의의 길 모퉁이에서도 작동합니다.

핵심 파이프라인은 세 가지 최첨단 컴퓨터 비전 모델을 결합합니다:

  • 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. 쿼리 사진과 인덱싱된 뷰 간의 줌 차이를 처리하기 위해 세 가지 시야각(70°, 90°, 110°)에서 멀티-FOV 크롭이 생성됩니다.
  4. ALIKED (CUDA에서) 또는 DISK (MPS/CPU에서)가 로컬 키포인트와 설명자를 추출합니다.
  5. LightGlue가 쿼리와 후보 키포인트 간의 심층 특징 매칭을 수행합니다.
  6. RANSAC가 일치점을 필터링하여 기하학적으로 일관된 대응만 유지합니다 (거짓 일치 제거).
  7. 가장 많은 검증된 인라이어가 있는 후보가 최적의 일치입니다.

이 단계는 하드웨어에 따라 300500개의 후보를 **25분** 안에 처리합니다.

3단계 — 정제

초기 일치는 좋지만 항상 최적은 아닙니다. 정제를 통해 개선합니다:

  • 방위각 정제: 상위 15개 후보에 대해 시스템이 3개의 FOV에서 15° 간격으로 ±45° 방위각 오프셋을 테스트합니다. 이는 인덱싱된 방위각이 쿼리의 시야 방향과 정확히 일치하지 않는 경우를 잡아냅니다.
  • 공간 합의: 일치점이 50m 셀로 클러스터링됩니다. 여러 후보가 한 영역에 모이면 단일 고인라이어 이상값보다 해당 클러스터가 선호되어 거짓 양성을 줄입니다.
  • 신뢰도 점수 계산: 시스템이 상위 일치의 지리적 클러스터링과 고유성 비율(최고 일치가 다른 위치의 2위보다 얼마나 나은지)을 평가합니다.

울트라 모드 (선택 사항)

어려운 이미지(야간, 흐림, 낮은 텍스처)의 경우 울트라 모드가 다음을 추가합니다:

  • LoFTR: 키포인트 감지에 의존하지 않고 대응 관계를 찾는 검출기 없는 조밀 매처. ALIKED/DISK가 어려워하는 흐림 및 저대비 장면을 처리합니다.
  • 설명자 호핑: 초기 일치가 약한 경우(<50 인라이어), 시스템이 일치된 파노라마(깨끗하고 고품질)에서 CosPlace 설명자를 추출하여 인덱스를 다시 검색합니다. 이는 종종 저하된 쿼리가 놓친 정확한 올바른 파노라마를 찾습니다.
  • 이웃 확장: 최적 일치의 100m 이내에 있는 모든 파노라마를 검색합니다. 올바른 위치는 종종 CosPlace 상위 일치에서 한 거리 노드 떨어져 있습니다.

아키텍처

root@kitploit:~
Query Image
    │
    ├── CosPlace descriptor extraction (512-dim fingerprint)
    ├── Flipped descriptor extraction
    │
    ▼
Index Search (cosine similarity, radius-filtered)
    │
    ├── Top 500 candidates ranked by visual similarity
    │
    ▼
Download Panoramas → Crop at 3 FOVs → Extract ALIKED/DISK keypoints
    │
    ├── LightGlue matching against query keypoints
    ├── RANSAC geometric verification
    │
    ▼
Heading Refinement (±45°, 3 FOVs, top 15 candidates)
    │
    ├── Spatial consensus clustering
    ├── Confidence scoring
    │
    ▼
📍 GPS Coordinates + Confidence Score

시작하기

요구 사항

GPU 지원:

  • Mac: MPS (Metal Performance Shaders) — M1/M2/M3/M4
  • NVIDIA: CUDA — 4GB+ VRAM GPU
  • CPU: 작동하지만 현저히 느림

설치

root@kitploit:~
# 저장소 복제
git clone https://github.com/sparkyniner/Netryx-OpenSource-Next-Gen-Street-Level-Geolocation.git

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

# 가상 환경 생성
python3 -m venv venv
source venv/bin/activate  # Windows: venv\Scripts\activate

# 의존성 설치
pip install -r requirements.txt

# LightGlue 명시적으로 설치 (매칭에 필요)
pip install git+https://github.com/cvg/LightGlue.git

# 선택 사항: 울트라 모드(LoFTR)를 위해 kornia 설치
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.51km, 실제 사용 시 510km)
  4. 그리드 해상도 설정 (300이 좋은 기본값 — 높을수록 더 조밀한 커버리지, 건드리지 마세요)
  5. 인덱스 생성 클릭

인덱싱 시간 예상:

인덱스는 점진적으로 저장됩니다. 프로세스가 중단되면 다음 실행 시 중단된 지점부터 재개됩니다.

2단계: 검색

  1. 검색 모드 선택
  2. 거리 수준 사진 업로드
  3. 검색 방법 선택:
    • 수동: 사진이 대략 어디에서 찍혔는지 알면 좌표 + 반경 입력
    • AI 대략: Gemini가 시각적 단서(표지판, 건축물, 식생)를 분석하여 지역을 추측하게 함 — 사전 지식 불필요
  4. 검색 실행 클릭, 전체 검색 시작 클릭
  5. 후보 평가 과정의 실시간 스캔 시각화 확인
  6. 신뢰도 점수와 함께 지도에 결과 표시

울트라 모드

어려운 이미지의 경우 울트라 모드 체크박스를 활성화하세요. 이 모드는 LoFTR 조밀 매칭, 설명자 호핑, 이웃 확장을 추가합니다. 현저히 느리지만 표준 파이프라인이 놓치는 일치를 잡아냅니다.


인덱스 작동 방식

모든 임베딩은 단일 통합 인덱스에 저장됩니다. 검색 시 반경 필터가 결과를 사용자가 지정한 영역으로 자동 제한합니다. 즉:

  • 파리, 텔아비브, 런던을 모두 동일한 인덱스에 인덱싱할 수 있습니다.
  • center=Paris, radius=5km로 검색하면 파리 결과만 반환됩니다.
  • center=London, radius=10km로 검색하면 런던 결과만 반환됩니다.
  • 도시 선택이 필요 없습니다. 좌표 + 반경이 모든 것을 처리합니다.

데이터 흐름:

root@kitploit:~
Create Mode:
  Grid points → Google Street View API → Panoramas → Crops → CosPlace → cosplace_parts/*.npz

Auto-build:
  cosplace_parts/*.npz → cosplace_descriptors.npy + metadata.npz (searchable index)

Search Mode:
  Query image → CosPlace → Index search (radius-filtered) → Download candidates → ALIKED/DISK + LightGlue → Result

프로젝트 구조

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에서 25분, NVIDIA GPU에서 13분입니다. 병목 현상은 매칭 자체가 아니라 Google에서 파노라마 타일을 다운로드하는 네트워크 제한입니다.

전국을 인덱싱할 수 있나요?

현실적이지 않습니다. 반경 10km는 약 10만 개의 파노라마와 7GB 인덱스를 생성합니다. 전국을 인덱싱하려면 페타바이트가 필요합니다. 특정 도시나 관심 지역(5~20km)을 인덱싱하세요.

검색 결과 후보가 0개입니다.

검색 좌표가 인덱싱된 영역과 겹치지 않습니다. 먼저 영역을 인덱싱하거나 검색 중심/반경을 기존 인덱싱된 데이터와 겹치도록 조정하세요. "커버리지 지도 표시"를 사용하여 인덱싱된 내용을 시각화하세요.

일치가 약간 잘못되었습니다 (한 블록 정도 차이).

울트라 모드를 활성화하세요. 이웃 확장은 초기 일치의 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
인덱싱 속도가장 빠름양호느림