Skip to main content

BRAILS++: Building Regional Asset Inventories for Large Scale Simulation

Tests DOI PyPi version PyPI download month

What is it?

BRAILS++ is an object-oriented framework for building applications that focus on generating asset inventories for large geographic regions.

BRAILS++ provides modular workflows for generating inventories by integrating diverse data sources, including public datasets, features extracted from imagery, and ruleset-based inference models.

Brails Workflow

In BRAILS++, an asset inventory consists of geographically referenced points, line-strings, or polygons, each annotated with key attributes. To build these inventories, the data scrapers in BRAILS++ interact with web servers to create an inventory blueprint suitable as a starting point for regional-scale analysis. Example datasets accessed through BRAILS++ include FEMA’s USA Structures (FEMA, 2022), Microsoft Footprints (Microsoft, 2022), Overture Maps (Overture Maps Foundation, 2023), OpenStreetMap (OpenStreetMap contributors, 2017), the U.S. Army Corps of Engineer’s NSI, TIGER/Line roadway data (U.S. Census Bureau, 2024), FHWA’s National Bridge and Tunnel Inventories (FHWA, 2023; FHWA, 2024), ASCE REST services for design loads (ASCE, 2025), and HIFLD infrastructure data (U.S. Department of Homeland Security, 2024).

Despite their value, these datasets often contain incomplete or inconsistent information, requiring further enhancement to address the corresponding uncertainties. BRAILS++ incorporates methods for handling missing data and enhancing the available datasets through modules that enable: 1) feature extraction from publicly available images, e.g. Google Street View; 2) inventory merging to integrate metadata from various sources and resolve inconsisties, such as differening metadata values or spatial issues e.g. misaligned footprints ; 3) statistical imputation to generate pluasable inventories with all features defined for all assets given some assets will have missing features and finally 4) data inference to add asset attributes for which no information exists in the inventory, e.g. building codes applicable at the time of construction can be used to infer typical connection details (Kijewski-Correa et al., 2022) such as roof-to-wall connections for wind vulnerability assessments.

How is the repo laid out?

  • brails: A directory containing the classes
    • brails/types: directory containing useful datatypes, e.g., ImageSet and AssetInventory
    • brails/processors: directory containing classes that do image_processing to make predictions, e.g. RoofShape
    • brails/scrapers: directory containing classes that do internet downloads, e.g., footprint and image scrapers.
    • brails/filters: directory containing image filters, e.g., classes that take images and revise or filter out unnecessary portions of images.
    • brails/aggregators: directory containing classes for doing merge, join and allocation operations, e.g., combining data from different datasets (inventories or other) to create a single inventory.
    • brails/imputers: directory containing classes that fill in missing AssetInventory datasets, i.e., filling in features that are missing in certain Assets of the AssetInventory.
    • brails/inferers: directory containing classes that infer new asset features based on existing features in the Assets of AssetInventory.
    • brails/utils: directory containing misc classes that do useful things, e.g. geometric conversions
  • examples: A directory containing example scripts and Jupyter notebooks
  • tests: A directory containing unit tests. The directory structure follows that of brails

Installation

pip install brails

Note
To install the package from GitHub, run:

pip install git+https://github.com/NHERI-SimCenter/BrailsPlusPlus

If it's already installed and you want to update:

pip install --upgrade git+https://github.com/NHERI-SimCenter/BrailsPlusPlus

Acknowledgments

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

Contributors

Want to see who made this possible? Check out the full list of contributors here.

Contact

NHERI-SimCenter nheri-simcenter@berkeley.edu

Metadata

Release files for brails 4.3.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for brails 4.3.1
File Size Uploaded
brails-4.3.1.tar.gz 2.1 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for brails 4.3.1
File Interpreter ABI Platform
brails-4.3.1-py3-none-any.whl Python 3 none any Details

Total release size: 4.5 MB

Release files / brails-4.3.1.tar.gz

Download URL brails-4.3.1.tar.gz
Size 2.1 MB
Tags Source
SHA-256 checksum
How to use checksums
5eddf3ca0dc03b2e0b2e5aef7fbe961e837987824dbbdb79ecaafc5f2b02013c
BLAKE2b-256 checksum
How to use checksums
cc9fa930f2adf2521744f8a75e87713577cd23cdab532a3a181ce6326fea1e91
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.11.7

Release files / brails-4.3.1-py3-none-any.whl

Download URL brails-4.3.1-py3-none-any.whl
Size 2.4 MB
Tags Python 3
SHA-256 checksum
How to use checksums
061ba318ac9db506d9e2b77b712dc3f5c8f78cd95cda4e9a8f87d1e62d92cb20
BLAKE2b-256 checksum
How to use checksums
b576b774675aec3c869b6e745277ed7426fb8d4d10146e69d002d18a7f97d18e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.11.7

Release history Release notifications | RSS feed

This release

4.3.1 This release

2 release files

4.3.0

2 release files

4.2.0

2 release files

4.1.4

2 release files

4.1.3

2 release files

4.1.2

2 release files

4.1.1

2 release files

4.1.0

2 release files

3.1.3

2 release files

3.1.2

2 release files

3.1.1

2 release files

3.1.0

2 release files

3.0.1

1 release file

2.0.5

1 release file

2.0.4

1 release file

2.0.3

1 release file

2.0.2

1 release file

2.0.1

1 release file

2.0.0

1 release file

1.9.9

1 release file

1.9.6.8

1 release file

1.9.6.7

1 release file

1.9.6.6

1 release file

1.9.6.5

1 release file

1.9.6.3

1 release file

1.9.6.2

1 release file

1.9.6.1

1 release file

1.9.6

1 release file

1.9.5.3

1 release file

1.9.5.2

1 release file

1.9.5.1

1 release file

1.9.5

1 release file

1.9.4

1 release file

1.9.3.7

1 release file

1.9.3.6

1 release file

1.9.3.5

1 release file

1.9.3.4

1 release file

1.9.3.3

1 release file

1.9.3.2

1 release file

1.9.3.1

1 release file

1.9.3.0

1 release file

1.9.2.9

1 release file

1.9.2.8

1 release file

1.9.2.7

1 release file

1.9.2.6

1 release file

1.9.2.5

1 release file

1.9.2.4

1 release file

1.9.2.3

1 release file

1.9.2.2

1 release file

1.9.2.1

1 release file

1.9.2

1 release file

1.9.1

1 release file

1.9

1 release file

0.1.6

1 release file

0.1.5.6

1 release file

0.1.5.5

1 release file

0.1.5.4

1 release file

0.1.5.3

1 release file

0.1.5.2

1 release file

0.1.5.1

1 release file

0.1.5

1 release file

0.1.4

1 release file

0.1.3

1 release file

0.1.2

1 release file

0.1.1

1 release file

0.1

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page