Skip to content

Releases: NHERI-SimCenter/BrailsPlusPlus

Version 4.2.0

03 Dec 04:51

Choose a tag to compare

Major New Features

  1. Housing Unit Allocation (brails.aggregators.housing_units): PyncodaHousingUnitAllocator: New housing allocation model to assign households to building inventories. Pyncoda an open-source package maintained and developed by Nathanael Rosenheim (Texas A&M) https://github.com/npr99/intersect-community-data. Python and Jupyter Notebooks available in the examples/housing_units/ directories.
  2. Methods for merging AssetInventories and Spatial aggregation of Point based features to AssetInventories. (brails.aggregators.points_to_polygons)
  3. Methods to read AssetInventory from existing geoJSON file

Other Changes

  1. Miscellaneous Improvements to GeoTools, AssetInventory, and ImageSet/Fixes to NBI and NTI Scrapers. Example notebooks for the two scrapers.
  2. Inventory: Added get_all_asset_features method to AssetInventory to simplify data retrieval.
  3. Robustness: Improved error handling in the NSI scraper and added multi-geometry support to get_geojson.
  4. Python 3.9+: Updated type hinting across types, scrapers, and aggregators to use modern Python 3.9 syntax (e.g., built-in collection types).
  5. Formatting: Applied ruff format to selected files to improve code style consistency.
  6. CI/CD: Deprecated the legacy runTests workflow in favor of the modern tests workflow and modernized project imports.

Specific Pull Requests

  • Correcting minor typos by @bacetiner in #135
  • Miscellaneous Improvements to GeoTools, AssetInventory, and ImageSet/Fixes to NBI and NTI Scrapers by @bacetiner in #136
  • Fix: GeoJSON Attribute extraction in read_from_geojson and MultiPolygon handling in extract_aerial_imagery by @bacetiner in #137
  • Introduce Household Inventory module and conflict-resolving merge architecture by @zsarnoczay in #138
  • Introduce Household Assignment Test Suite & Enhance Project Configuration by @zsarnoczay in #139
  • feat: Housing Unit Allocation, Spatial Aggregation updates, and Modernization by @zsarnoczay in #140

This work is based on material supported by the National Science Foundation under grants CMMI 1612843 and 2131111

v4.1.4

25 Sep 18:10
d0432f0

Choose a tag to compare

New Features

  • Added scrapers for Land Cover, Land Use, and FIRM datasets.
  • Included BRAILS++ Examples and API documentation in the public-facing documentation.

Improvements

  • Updated the supported Python versions for BRAILS++.

v4.1.3

20 Aug 10:00
9ed0c57

Choose a tag to compare

This release introduces significant improvements to USGS elevation data integration, Overture Maps scraping, RAPID-UW data processing, geometry handling, and visualization tools, along with substantial improvements to documentation, testing, and overall code stability. Alongside these feature additions, the release improves code stability, utilities, and the overall developer experience through refined documentation, examples, and testing. Below is a summary of the specific enhancements included in this release.

Core Features & Enhancements

  • USGS Elevation Service added to scrapers with improved data handling
  • RAPIDTools functionality integrated into BRAILS++
  • Overture Maps enhancements, including footprint scrapers and server fixes
  • New ImageSet plotting method and Jupyter notebook examples for image downloads
  • Orthomosaic data support: examples for extracting aerial imagery
  • Added centroid calculation for Asset objects
  • Added bbox2poly method and Shapely-to-BRAILS++ geometry conversion utilities
  • Power network inventory support with new sample data

Utilities & Stability Improvements

  • Corrected NTI API endpoint
  • Utility class improvements for computer vision models
  • Added rasterio to setup requirements
  • Refactored constants & unit defaults, with added precision options
  • Improved stability of ImageSet.set_directory
  • Updates to remove_features methods for better flexibility
  • Debugging and improvements in geometry validators and plan area unit conversion

Documentation & Developer Experience

  • Extensive docstring improvements for Sphinx compatibility
  • Added doctest examples and improved example organization
  • Added import instructions for several modules, including AssetInventory
  • Updated Sphinx settings, RST files, and Autosummary references
  • Improved commentary and examples across footprint workflows
  • Updated Colab and Lightning links

v4.1.1

16 Jul 19:27
2180d09

Choose a tag to compare

Bug fixes for Inferers

v4.1.0

06 Jun 17:31
6307def

Choose a tag to compare

This release introduces expanded functionality across scraping and inference modules, along with performance improvements, better typing support, and updated examples. In brief these enhancements are:

  1. New Scrapers:
    • ASCE Hazard Data Scraper
    • OSM Power Network Inventory Scraper
    • Overture Maps Footprint Scraper
  2. Multi-Hazard Inference:
    • Enhanced support for hurricane wind, flood, and earthquake feature inference
  3. Street-Level Damage Detection:
    • Introduced an image-based module for assessing structural damage from panoramic imagery
  4. Flexible Spatial Join Methods:
    • Added new join strategies to support inventory creation from diverse geospatial sources
  5. Updated & New Example Notebooks:
    • Image classifiers: roof shape, year built, foundation elevation
    • GPT and VLM-based classifiers
    • ChimneyDetector and FacadeParser
    • Street-level damage detection workflows
    • Inventory creation pipelines
  6. Typing and Code Quality:
    • Added PEP 561 compliance for enhanced static type checking
    • Improved consistency of internal data structures

v4.0.0

01 Oct 05:46
fe3285c

Choose a tag to compare

This new release of BRAILS brings

  1. A new modular architecture
  2. Various attribute prediction modules created using CLIP, GroundingDino, SAM, and GPT-4 vision language models
  3. Imputers designed to fill data gaps in the inventories generated by BRAILS.