{"about":{"site":"https://codewithpapers.app","non_affiliation":"Code with Papers and Syntology are not affiliated with, endorsed by, or sponsored by Papers with Code, Meta, or the pwc-archive mirror.","licence":"CC BY-SA 4.0","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","attribution":"https://codewithpapers.app/attribution","modified":"archive material modified by Syntology; see the attribution page"},"url":"/paper/condition-aware-multimodal-fusion-for-robust","title":"CAFuser: Condition-Aware Multimodal Fusion for Robust Semantic Perception of Driving Scenes","arxiv_id":"2410.10791","date":"2024-10-14","proceeding":null,"authors":["Tim Broedermann","Christos Sakaridis","Yuqian Fu","Luc van Gool"],"abstract":"Leveraging multiple sensors is crucial for robust semantic perception in autonomous driving, as each sensor type has complementary strengths and weaknesses. However, existing sensor fusion methods often treat sensors uniformly across all conditions, leading to suboptimal performance. By contrast, we propose a novel, condition-aware multimodal fusion approach for robust semantic perception of driving scenes. Our method, CAFuser, uses an RGB camera input to classify environmental conditions and generate a Condition Token that guides the fusion of multiple sensor modalities. We further newly introduce modality-specific feature adapters to align diverse sensor inputs into a shared latent space, enabling efficient integration with a single and shared pre-trained backbone. By dynamically adapting sensor fusion based on the actual condition, our model significantly improves robustness and accuracy, especially in adverse-condition scenarios. CAFuser ranks first on the public MUSES benchmarks, achieving 59.7 PQ for multimodal panoptic and 78.2 mIoU for semantic segmentation, and also sets the new state of the art on DeLiVER. The source code is publicly available at: https://github.com/timbroed/CAFuser.","url_abs":"https://arxiv.org/abs/2410.10791v2","url_pdf":"https://arxiv.org/pdf/2410.10791v2.pdf","source":{"archive":"pwc-archive (Hugging Face), CC BY-SA 4.0","snapshot":"2025-07-28","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","row_kind":"abstracts"},"code_links":[{"paper_slug":"condition-aware-multimodal-fusion-for-robust","repo_url":"https://github.com/timbroed/cafuser","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"autonomous-driving","task_name":"Autonomous Driving"},{"task_slug":"panoptic-segmentation","task_name":"Panoptic Segmentation"},{"task_slug":"semantic-segmentation","task_name":"Semantic Segmentation"},{"task_slug":"sensor-fusion","task_name":"Sensor Fusion"}],"methods":[{"method_slug":"align","method_name":"ALIGN"},{"method_slug":"set","method_name":"SET"}],"datasets_introduced":[],"methods_introduced":[],"results":[{"leaderboard":"/sota/panoptic-segmentation-on-muses-multi-sensor-1","task":"Panoptic Segmentation","dataset":"MUSES: MUlti-SEnsor Semantic perception dataset","model":"CAFuser (Swin-T)","rank_in_archive_order":1,"of":2,"metrics":{"PQ":"59.7"},"uses_additional_data":false},{"leaderboard":"/sota/semantic-segmentation-on-deliver-1","task":"Semantic Segmentation","dataset":"DELIVER","model":"CAFuser","rank_in_archive_order":1,"of":9,"metrics":{"mIoU":"67.8","test mIoU":"55.6"},"uses_additional_data":false},{"leaderboard":"/sota/semantic-segmentation-on-deliver","task":"Semantic Segmentation","dataset":"DeLiVER","model":"CAFuser-CAA","rank_in_archive_order":1,"of":26,"metrics":{"mIoU":"68.6"},"uses_additional_data":false},{"leaderboard":"/sota/semantic-segmentation-on-deliver-test","task":"Semantic Segmentation","dataset":"DeLiVER test","model":"CAFuser","rank_in_archive_order":1,"of":1,"metrics":{"mIoU":"55.6"},"uses_additional_data":false},{"leaderboard":"/sota/semantic-segmentation-on-muses-multi-sensor","task":"Semantic Segmentation","dataset":"MUSES: MUlti-SEnsor Semantic perception dataset","model":"CAFuser (Swin-T)","rank_in_archive_order":1,"of":2,"metrics":{"mIoU":"78.2"},"uses_additional_data":false}],"syntology":{"syntology_url":"https://syntology.ai/paper/2410.10791","atlas_url":"https://app.syntology.ai/?focus=2410.10791","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2410.10791"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-25T09:33:49+00:00","read_at_is":"when the build read Syntology's graph, not when any sample ran","claim":"Per-sample execution status on synthesized fixtures; not a correctness claim about the paper. Samples come from repositories linked to the paper, official or community; repo_kind says which.","repos":[{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/timbroed/cafuser","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran":1},"by_repo_kind":{"official":{"samples":1,"ran":1,"repositories":1}},"repo_kind_vocabulary":{"official":"The archive marks this repository official for the paper","named_in_paper":"The archive records that the paper mentions this repository; it is not marked official","listed":"In the archive's code links for this paper, not marked official and not recorded as mentioned in the paper","found_in_text":"Syntology found this repository in the paper's own text; whether it is the authors' implementation is not asserted","community":"Not in the archive's code links for this paper; a community repository Syntology harvested"},"n_pointer_only_for_licence":0,"samples":[{"code_sha256_prefix":"efc14f938a363004","entry":"logit","repo":"timbroed/cafuser","repo_kind":"official","path":"cafuser/modeling/feature_adapter/mlp_learnable_ratio.py","file_url":"https://github.com/timbroed/cafuser/blob/HEAD/cafuser/modeling/feature_adapter/mlp_learnable_ratio.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"efc14f938a363004"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}