Repository navigation
EdgeFirst Fusion v1.5.0
EdgeFirst Fusion v1.5.0
Installation
Download Binaries
| Platform | Binary |
|---|---|
| Linux x86_64 | edgefirst-fusion-linux-x86_64 |
| Linux ARM64 | edgefirst-fusion-linux-aarch64 |
# Download and install (ARM64 example)
wget https://github.com/EdgeFirstAI/fusion/releases/download/v1.5.0/edgefirst-fusion-linux-aarch64
chmod +x edgefirst-fusion-linux-aarch64
sudo mv edgefirst-fusion-linux-aarch64 /usr/local/bin/edgefirst-fusionWhat's Changed
Added
- Initial open source release
- Complete GitHub Actions CI/CD workflows (test, build, SBOM, release)
- GitHub issue templates (bug report, feature request, hardware compatibility)
- Pull request template with comprehensive checklist
- TESTING.md with unit test and integration testing guidance
- Occupancy grid section in ARCHITECTURE.md
rust-version = "1.82"in Cargo.toml- Named constants for magic numbers (
MAX_CLASSIFICATION_DISTANCE,UNINITIALIZED_COORD) - Convergence assertions in Kalman filter tests
Fixed
- Critical:
draw_pointwas overwriting computed x-coordinate with 0.0 - Critical:
munmaperror check using> 0instead of!= 0 - Critical: Missing
MAP_FAILEDvalidation aftermmapcalls - Critical:
min_dist2/min_point_indnot reset per-box ingrid_nearest_point_no_clusterandgrid_nearest_cluster - Critical: PCD deserialization panicking on malformed input instead of returning error
- Critical: Production
assert_eq!inget_3d_bboxreplaced withdebug_assert_eq! - Critical: Dropped
JoinHandlefor TF static publisher task now logs errors - Numerically unstable sigmoid in fusion model post-processing
- Unsafe
libc::memcpyreplaced with safecopy_from_slicein TFLite and DeepView RT model code - Flood fill row boundary checks preventing horizontal neighbor wrap-around
- Box2D width/height calculation had erroneous
/ 2.0 clear_binsresettingfirst_markedto 0 instead ofu128::MAX- Missing
j >= 1andj >= 2guards inmark_grid_one_columnandmark_cell_three_column - Blocking
thread::sleepin async context replaced withtokio::time::sleep - Release workflow silently skipping missing build artifacts; now fails on missing artifacts
- Typos:
centriods->centroids,represetns->represents,indicies->indices
Changed
- Feature-gated DeepView RT support behind
deepviewrtCargo feature; default builds are TFLite-only and no longer requirelibdeepview-rt.so - Migrated repository from Bitbucket to GitHub
- Updated license to Apache-2.0
- Renamed project from Maivin Fusion to EdgeFirst Fusion
- Switched g2d-sys to crates.io v1.2.0 (removed local crate)
- Updated tflitec-sys metadata for open source compliance
- Updated edgefirst-schemas to v1.5.3 with CDR serialization migration
- Updated NOTICE file format for SBOM validation
- Rust version badge updated from 1.70 to 1.82 in README
- Documentation links updated from
/maivin/to/perception - RadarCube type corrected in ARCHITECTURE.md
- Idiomatic
entry().or_default().push()inget_cluster_ids - Return
&[Tracklet]instead of&Vec<Tracklet>from tracker - Gated test-only types behind
#[cfg(test)]in Kalman filter - Removed
workflow_calltrigger from build.yml to prevent redundant builds on tag push
Removed
- Dead
_process_dmabufferfunctions and unused imports from model code - ~100 lines of commented-out test code in fusion_model.rs
- Commented-out debug println statements
BoolDefaultTruetype alias from args
Security
- Added security policy and vulnerability reporting process
Full Documentation: https://github.com/EdgeFirstAI/fusion#readme