Spaces:
Sleeping
Sleeping
Commit History
-
Implement color conversion system: Canadian radar with American color toggleβ
- Changed from dual radar sources to single Canadian radar with color conversion - Added convert_colors_to_american_scale() method for dBZ-based color mapping - Updated UI to use checkbox toggle instead of radio selector - Canadian radar data analyzed, then optionally converted to American colors - Same precipitation data, different color schemes: π¨π¦ β πΊπΈ - Maintains all hover point functionality with converted colors Workflow: 1. Fetch Canadian radar data (ECCC) 2. Analyze with Canadian legend (183 colors) 3. Toggle: Convert colors using dBZ mapping to American scale (14 colors) 4. Display with appropriate color scheme indicator π€ Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>00ee5cd -
Add complete American radar legend support with 14 discrete colorsβ
- Processed americanrainlegendcropped.png with 14 discrete color blocks - Created us_radar_legend_data.json mapping 5-75 dBZ range - Built extract_us_legend_colors.py for processing uploaded legends - Extracted exact colors: teal (5 dBZ) to yellow (75 dBZ) - Ignored black/white and separator lines as requested - Fixed numpy uint8 JSON serialization issues US Radar Colors (5-75 dBZ): - Very Light: Blue (0,0,246) - 5-10 dBZ - Light: Dark Green (0,144,0) - 10-15 dBZ - Light-Moderate: Green (0,200,0) - 15-20 dBZ - Moderate: Cyan (0,236,236) - 20-25 dBZ - Heavy: Red (255,0,0) - 55-60 dBZ - Exceptional: Yellow (255,255,0) - 70-75 dBZ Dual radar system now fully operational! πΊπΈπ¨π¦ π€ Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>db414aa -
Fix RadarAnalyzer class structure and method inheritanceβ
- Moved all methods to RadarAnalyzer parent class - Added CanadianRadarAnalyzer backward compatibility class - Enhanced _load_precomputed_legend_data to handle both radar types - Added proper error handling for missing US legend data - Fixed AttributeError: _load_precomputed_legend_data not found π€ Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>00421cb -
Implement dual radar system: Canadian + American supportβ
- Added RadarAnalyzer class supporting both Canadian and US radar - Created radar toggle switch in Gradio interface - Integrated NOAA/NEXRAD WMS endpoints for US radar data - Downloaded multiple US radar legend options for user cropping - Added create_us_legend_data.py helper script for US legend processing - Updated map configuration to switch between radar systems - Maintained backward compatibility with CanadianRadarAnalyzer Features: - π¨π¦ Canadian Radar (ECCC) - Full North America coverage - πΊπΈ American Radar (NOAA/NEXRAD) - Continental US coverage - Toggle switch between radar systems - Automatic map bounds adjustment per radar type - Ready for US legend mapping once cropped legend is provided π€ Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>fe7cdf9
-
Expand radar coverage to include Alaska and full North Americaβ
- Extended WMS bounds from 42,-142,84,-52 to 20,-170,85,-40 - Increased image resolution from 800x600 to 1200x800 for better detail - Updated map centering to cover expanded geographic area - Now includes Alaska, southeastern US, and all visible precipitation areas - Hover points will now cover the entire radar image extent π€ Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>23b6a4d -
Implement ultra-fine detail scanning for maximum dBZ resolutionβ
- Scan entire image pixel-by-pixel for complete coverage - Capture every unique dBZ color variation (67 unique values detected) - Enhanced logging to show unique color count and distribution - Full image bounds coverage with precise geographic mapping - Maximum resolution hover points with ultra-high coordinate precision π€ Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>99e5abe -
Fix hover point alignment and ensure full radar image coverageβ
- Restored original coordinate mapping formula for proper alignment - Added proper WMS bounds handling for accurate geographic positioning - Improved data bounds detection to show actual precipitation coverage - Fixed coordinate ranges to match radar image geographic extent - Enhanced logging to show actual data distribution within image π€ Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>c59148c -
Remove 3950 dBZ cap and implement maximum resolution hover coverageβ
- Extended dBZ range from 200 to 500 with no artificial caps - Increased hover point precision to 8-decimal coordinates - Include EVERY precipitation pixel for complete radar coverage - Enhanced dBZ categorization with full range support - Improved progress logging and user feedback - Ultra-high resolution markers for maximum zoom detail π€ Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>7b18c41 -
Implement maximum resolution hover and region detectionβ
- Create hover points for EVERY precipitation pixel (not sampled) - Higher precision lat/lon coordinates (6 decimal places) - Visible red markers with detailed popup information - Individual regions for each unique RGB color/dBZ combination - Pixel-level precision for zoom-in functionality - Include pixel coordinates, exact dBZ values, and intensity levels - Set min_region_size to 1 for maximum granularity π€ Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>8310e47 -
Optimize region analysis with detailed logging and fast modeβ
- Add comprehensive logging to track region analysis progress - Implement fast_mode option for simple bounding box regions instead of flood fill - Pre-identify precipitation pixels to avoid scanning 480K empty pixels - Add progress tracking every 500 pixels during region processing - Add flood fill stack monitoring for large regions - Default to fast mode for much better performance π€ Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>9375668 -
Major performance optimizations for faster processingβ
- Add pre-computed legend data (radar_legend_data.json) instead of runtime processing - Implement 3-pass optimized pixel analysis: β’ Pass 1: Collect unique colors, skip white pixels entirely β’ Pass 2: Analyze each unique color only once β’ Pass 3: Apply results to all pixel positions - Reduce analysis from 480K individual pixel checks to ~50-200 unique colors - Should be 10-100x faster without sacrificing accuracy or resolution - Add precompute_legend.py script for generating legend data files π€ Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>28be1cd -
Add working hover functionality with dBZ valuesβ
- Create hover data with lat/lon coordinates mapped to dBZ values - Sample every 10th pixel to create manageable dataset - Add invisible CircleMarkers with tooltips showing exact dBZ values - Convert pixel coordinates to approximate lat/lon for Canada radar bounds - Limit to 100 hover points on map to prevent performance issues - Add comprehensive logging for hover data creation π€ Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>0cb48f9 -
Implement precise legend sampling and add hover functionalityβ
- Remove manual blue colors and use dense pixel sampling from legend - Sample every 2 pixels from radar_legendwellcropped.png for maximum precision - Create tight 2.0 dBZ ranges for accurate color matching - Add JavaScript hover functionality to show dBZ values on map - Include dBZ scale reference in analysis output - Use radar_legendwellcropped.png as default legend source π€ Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>53c130c -
Fix color detection by adding manual radar blue colorsβ
- Sample 20 points from legend instead of 12 predefined levels - Add manual ColorRange entries for actual radar blue colors seen in images - Include light blue variants (135-150, 195-205, 255) as Very Light precipitation - This should now properly detect the blue pixels showing as (141,200,255) etc. π€ Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>5ced509 -
Improve background detection and enhance debugging outputβ
- Filter out white/near-white pixels (255,255,255) as background - Add detection for bright pixels (sum > 750) as non-data areas - Increase sample collection to 20 pixels for better debugging - Show extracted legend colors with RGB values on startup - Display unique non-background colors found in image - Separate counts for total non-background vs precipitation pixels π€ Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>8282e79 -
Add comprehensive logging and increase color toleranceβ
- Add progress logging every 50 rows during pixel analysis - Include debug output for first 5 unmatched pixels with distances - Sample and display non-background pixels for debugging - Increase color tolerance from 20 to 40 for better detection - Add logging to region analysis phase π€ Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>cd4302a -
Implement precise color analysis using uploaded dBZ legendβ
- Add precise color extraction from canadaradarlegend_point1_to_200dbz.png - Extract 12 distinct dBZ intensity levels from 0.1 to 200 dBZ - Use logarithmic mapping for accurate color-to-dBZ conversion - Update analyzer to use precise legend colors instead of manual approximations - Improve color matching accuracy for better precipitation analysis π€ Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>7dff5c6 -
Fix overflow warnings and improve error handlingβ
- Convert pixel values to int to prevent numpy overflow warnings - Add defensive programming with .get() for safe dictionary access - Add debug output to track analysis result structure - Handle missing keys gracefully in analysis display π€ Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>f8e8f0e -
Add missing precipitation_percentage and intensity_levels to analysisβ
Fix KeyError by ensuring all expected fields are included in the analyze_radar_pixels return dictionary. π€ Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>142fe36 -
Add missing analyze_radar method to CanadianRadarAnalyzerβ
Fix AttributeError by implementing the complete analysis pipeline method that the Gradio app expects to call for radar processing. π€ Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>4ca4a7d -
Fix Hugging Face metadata validation errorsβ
π€ Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>e7f7640 -
Remove large analysis file and add to gitignoreβ
π€ Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>4c079fd -
Add Canadian weather radar analyzer with pixel-level dBZ analysisβ
- Implement precise radar image analysis using official ECCC color scale - Add pixel-by-pixel dBZ reflectivity mapping and region detection - Create Gradio web interface with interactive radar map display - Include real-time data fetching from Canadian MSC GeoMet service - Support quantitative precipitation analysis with coverage statistics - Add comprehensive documentation and Hugging Face Space configuration π€ Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>3991de7 -
initial commit
Verified signature37156b3