Repository navigation
EdgeFirst Fusion v1.9.0
EdgeFirst Fusion v1.9.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.9.0/edgefirst-fusion-linux-aarch64
chmod +x edgefirst-fusion-linux-aarch64
sudo mv edgefirst-fusion-linux-aarch64 /usr/local/bin/edgefirst-fusionWhat's Changed
TFLite-only fusion models, aligned fusion.default quoting and stock radar
defaults, and NEON math fixes for radar angle binning (EDGEAI-733, EDGEAI-1234,
EDGEAI-1457).
Changed
fusion.defaultassignments are nowKEY="value"with no spaces around=,
matching other EdgeFirst services. systemdEnvironmentFile=does not strip
those spaces, so the previousKEY = "value"form may not have been applied
(EDGEAI-733, EDGEAI-1234)- Stock radar late-fusion defaults:
RADAR_PCD_TOPIC=radar/clusters,
BBOX3D_SRC=radar. LiDAR remains opt-in.BACKGROUND_INDEXis documented
infusion.default(EDGEAI-733, EDGEAI-1604) - CameraFrame fourcc is mapped to G2D the same way the camera service maps HAL
format strings (YUYV→G2D_YUYV). Fusion no longer routes fourcc through
G2DFormat::try_from(FourCharCode), which mis-read YUYV as VYUY
(EDGEAI-1234)
Fixed
- Fusion exits with an error (instead of exit 0) when no model and no PCD
topic is configured, so the idle case is visible in the journal. The
shipped unit still usesRestart=always; addRestartPreventExitStatus=1
in the platform unit (meta-maivin) to stop retries. Thefusion/boxes3d
publisher is declared only whenBBOX3D_SRCnames an enabled PCD topic
(EDGEAI-1234) - Fusion-model input tensors are identified by name. A camera-only model no
longer treats the RGB tensor as radar and panics oncopy_from_slice
(EDGEAI-1234) - NEON
sincos_f32returned an inverted cosine for|x| mod 2πin
[3π/4, 7π/4)on aarch64. The Cephes quadrant sign mask selected bit 1 of
~(emm2 - 2)instead of bit 2, flipping the sign over half the circle while
leaving sine correct. Cosine is now accurate to ~1 ULP in every quadrant.
sincos_f32has no callers outside its own tests, so fusion output was
unaffected (EDGEAI-1457) - NEON
atan2_f32returned NaN at the origin, where the min/max reduction
divides0/0, and treatedx = -0.0as positive soatan2(±0.0, -0.0)did
not return±π. Both now matchf32::atan2. This path is used for radar
angle binning, so origin-valued points no longer poison their lane
(EDGEAI-1457)
Removed
- DeepView RT (
.rtm) fusion-model support and thedeepviewrtCargo
feature. Fusion models are TFLite-only (EDGEAI-733, EDGEAI-1234)
Full Documentation: https://github.com/EdgeFirstAI/fusion#readme