Skip to content

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Repository files navigation

Scene Matching from Media News Sources for Crime Scene Analysis (SMACS)

News media often captures crime scenes visually through videos or images, but matching these scenes to actual locations is challenging. Automating this process can enhance crime scene analysis by quickly identifying and verifying where events occurred. Scene matching provides law enforcement and researchers with a powerful tool for reconstructing incidents or verifying claims made in reports.

Project Organization

  • data-collection: Contains Google Street View Scraper (street_view_collector.py)
  • scraper: Contains LLM + VLM scraper to download images/videos from articles (llm_scraper.py)
  • model: Contains geolocation model (informed_random_walk) and CMC Curve evaluation (evaluate.py)
  • data: Contains scraper images (/images), Cleaned ground truth images (/ground_truth_images), Street View Images (/streetview)
    • DATASET_body_found_llm.csv: Article scraper output
    • google_body_found_websites.csv: Additional article scraper output
    • TEST_DATASET.csv: Cleaned test dataset
    • streetview.csv: Streetview dataset
    • FINAL_DATASET.csv: Final dataset with matched geolocations
  • results: Contains CMC Curve Plot files
  • utils: Contains useful helper functions (helper.py)
  • environment.yml: Dependencies

Install Dependencies

  1. Create environment
conda env create -f environment.yml
  1. Activate environment
conda activate smacs
  1. Update environment
 conda env update -f environment.yml
  1. Add a .env file to every sub-directory within the project
  • .env file contains the Google API Keys, please contact us to have access to these keys (cannot push API keys to GitHub)
  • Add .env file to the following folders: /data_collection, /model, /scraper, /utils
  1. Update environment.yml if new dependencies are introduced
  • navigate to project root directory
conda env export --no-builds > environment.yml

Run Data Pipeline

  • If you want to scraper articles, please run ollama first (Only necessary for scraping)
ollama serve
  • In new terminal
python3 main.py

Data Collection and Analysis

Data Collection Pipeline

Informed Random Walk

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages