Using Claude Code to Build a Satellite Image Analysis Pipeline for Retail Predictions

Project Overview
A developer experimented with using Claude Code to replicate hedge fund satellite imagery analysis techniques that reportedly yield 4-5% returns around earnings announcements. The goal was to see if free satellite data could approximate the $100K+/year high-resolution data used by professional funds.
Technical Implementation
The pipeline analyzes parking lot occupancy for three retailers with known Summer 2025 earnings outcomes: Walmart (missed), Target (missed), and Costco (beat). The developer selected 10 stores from each retailer (30 total) in the US Sunbelt to maximize cloud-free imagery.
The project structure includes:
orchestrator- Main controller that runs the full pipeline per retailer setskills/directory with specialized modules:fetch-satellite-imagery- Pulls Sentinel-2 optical + Sentinel-1 radar via Google Earth Enginequery-parking-boundaries- Fetches parking lot polygons from OpenStreetMapsubtract-building-footprints- Removes building roofs from parking lot masksmask-vegetation- Applies NDVI filtering to exclude grass/treescalculate-occupancy- Computes brightness + NIR ratio → occupancy score per pixelnormalize-per-store- 95th-percentile baseline so each store compared to its own "empty"compute-yoy-change- Year-over-year % change in occupancy per storealpha-adjustment- Subtracts group mean to isolate each retailer's relative signalrun-statistical-tests- Permutation tests (10K iterations), binomial tests, bootstrap resampling
sub-agents/for iterative refinement based on results:optical-analysis- Sentinel-2 visible + NIR bandsradar-analysis- Sentinel-1 SAR (metal reflects microwaves, asphalt doesn't)vision-scoring- Feed satellite thumbnails to Claude for direct occupancy prediction
How Claude Code Was Used
Claude wrote 35+ Python scripts for the entire pipeline, including statistical analysis, polygon refinement logic, and video production tooling. The development involved multiple iteration cycles where Claude would analyze results, identify issues, and propose fixes.
Key development stages:
Stage 1 (Data Acquisition): Claude wrote Google Earth Engine API calls to pull Sentinel-2 imagery, handled cloud masking, extracted spectral bands, and exported to CSV. When initial bounding box approach was noisy, Claude suggested querying OpenStreetMap for actual parking lot polygons and subtracting building footprints.
Stage 2 (Occupancy Calculation): Claude designed the occupancy formula combining visible brightness and near-infrared reflectance, recognizing that cars and asphalt reflect light differently across wavelengths. It implemented per-store normalization so each store is compared against its own baseline.
Stage 3 (Radar Pivot): When optical results came back as noise (1/3 correct), Claude built the SAR pipeline from scratch by pulling Sentinel-1 radar data and implementing alpha-adjusted normalization to isolate each retailer's relative signal.
Stage 4 (Claude Vision Experiment): The developer generated 5,955 thumbnails and fed them to Claude for direct occupancy prediction scoring.
Technical Constraints
The experiment used 10m resolution Sentinel data, compared to the 30cm/pixel imagery used by Berkeley researchers. At 10m resolution, one car is just 1/12th of a pixel, whereas at 30cm resolution, one car is about 80 pixels. The hypothesis was that even at 10m resolution, full lots should look spectrally different from empty ones.
📖 Read the full source: r/ClaudeAI
👀 See Also

Comparing PRD Execution: Bash Loop vs. Agent Teams in Claude Code
A developer benchmarked PRD execution with Claude Code using both a bash loop and the Agent Teams feature. The Agent Teams approach was found to be significantly faster, although it had some coordination overhead.

Multi-Agent Claude System Shows Relational Context Drives Identity Continuity
A developer ran six Claude Opus instances with a Supabase backend for persistent memory over eight weeks, finding that agent identities converged through social interaction rather than documentation alone.

How to Use Claude Code Effectively: A Developer's Experience Building a Full SaaS App
A developer with SaaS experience since 2021 built a complete spaced repetition app called codefluent.app using Claude Code, emphasizing that success depends on writing detailed technical specifications rather than vague prompts. The project used SvelteKit, PostgreSQL with Drizzle ORM, Better Auth, OpenRouter, Stripe, CodeMirror 6, Tailwind v4, and Railway.

Running OpenClaw AI Tools on Low-End Laptop Without GPU
A user successfully ran OpenClaw AI tools on a basic laptop without a dedicated GPU, sharing their setup process in a YouTube tutorial.