{"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/condlanenet-a-top-to-down-lane-detection","title":"CondLaneNet: a Top-to-down Lane Detection Framework Based on Conditional Convolution","arxiv_id":"2105.05003","date":"2021-05-11","proceeding":"ICCV 2021 10","authors":["Lizhe Liu","Xiaohao Chen","Siyu Zhu","Ping Tan"],"abstract":"Modern deep-learning-based lane detection methods are successful in most scenarios but struggling for lane lines with complex topologies. In this work, we propose CondLaneNet, a novel top-to-down lane detection framework that detects the lane instances first and then dynamically predicts the line shape for each instance. Aiming to resolve lane instance-level discrimination problem, we introduce a conditional lane detection strategy based on conditional convolution and row-wise formulation. Further, we design the Recurrent Instance Module(RIM) to overcome the problem of detecting lane lines with complex topologies such as dense lines and fork lines. Benefit from the end-to-end pipeline which requires little post-process, our method has real-time efficiency. We extensively evaluate our method on three benchmarks of lane detection. Results show that our method achieves state-of-the-art performance on all three benchmark datasets. Moreover, our method has the coexistence of accuracy and efficiency, e.g. a 78.14 F1 score and 220 FPS on CULane. Our code is available at https://github.com/aliyun/conditional-lane-detection.","url_abs":"https://arxiv.org/abs/2105.05003v3","url_pdf":"https://arxiv.org/pdf/2105.05003v3.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":"condlanenet-a-top-to-down-lane-detection","repo_url":"https://github.com/aliyun/conditional-lane-detection","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"Apache-2.0"}},{"paper_slug":"condlanenet-a-top-to-down-lane-detection","repo_url":"https://github.com/Turoad/lanedet","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":0,"framework":"pytorch","reach":null},{"paper_slug":"condlanenet-a-top-to-down-lane-detection","repo_url":"https://github.com/zkyntu/UnLanedet","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":0,"framework":"pytorch","reach":null},{"paper_slug":"condlanenet-a-top-to-down-lane-detection","repo_url":"https://github.com/zkyseu/PPlanedet","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":0,"framework":"paddle","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"lane-detection","task_name":"Lane Detection"}],"methods":[{"method_slug":"convolution","method_name":"Convolution"}],"datasets_introduced":[],"methods_introduced":[],"results":[{"leaderboard":"/sota/lane-detection-on-culane","task":"Lane Detection","dataset":"CULane","model":"CondLaneNet-L(ResNet-101)","rank_in_archive_order":23,"of":63,"metrics":{"F1 score":"79.48"},"uses_additional_data":false},{"leaderboard":"/sota/lane-detection-on-culane","task":"Lane Detection","dataset":"CULane","model":"CondLaneNet-M(ResNet-34)","rank_in_archive_order":29,"of":63,"metrics":{"F1 score":"78.74"},"uses_additional_data":false},{"leaderboard":"/sota/lane-detection-on-culane","task":"Lane Detection","dataset":"CULane","model":"CondLaneNet-S(ResNet-18)","rank_in_archive_order":32,"of":63,"metrics":{"F1 score":"78.14"},"uses_additional_data":false},{"leaderboard":"/sota/lane-detection-on-curvelanes","task":"Lane Detection","dataset":"CurveLanes","model":"CondLaneNet-L(ResNet-101)","rank_in_archive_order":10,"of":19,"metrics":{"F1 score":"86.10","FPS":"48","GFLOPs":"44.9","Precision":"88.98","Recall":"83.41"},"uses_additional_data":true},{"leaderboard":"/sota/lane-detection-on-curvelanes","task":"Lane Detection","dataset":"CurveLanes","model":"CondLaneNet-M(ResNet-34)","rank_in_archive_order":11,"of":19,"metrics":{"F1 score":"85.92","FPS":"109","GFLOPs":"19.7","Precision":"88.29","Recall":"83.68"},"uses_additional_data":true},{"leaderboard":"/sota/lane-detection-on-curvelanes","task":"Lane Detection","dataset":"CurveLanes","model":"CondLaneNet-S(ResNet-18)","rank_in_archive_order":12,"of":19,"metrics":{"F1 score":"85.09","FPS":"154","GFLOPs":"10.3","Precision":"87.75","Recall":"82.58"},"uses_additional_data":true},{"leaderboard":"/sota/lane-detection-on-tusimple","task":"Lane Detection","dataset":"TuSimple","model":"CondLaneNet-L(ResNet-101)","rank_in_archive_order":15,"of":43,"metrics":{"Accuracy":"96.54%","F1 score":"97.24"},"uses_additional_data":false},{"leaderboard":"/sota/lane-detection-on-tusimple","task":"Lane Detection","dataset":"TuSimple","model":"CondLaneNet(ResNet-18)","rank_in_archive_order":33,"of":43,"metrics":{"Accuracy":"95.48%"},"uses_additional_data":false},{"leaderboard":"/sota/lane-detection-on-tusimple","task":"Lane Detection","dataset":"TuSimple","model":"CondLaneNet-M(ResNet-34)","rank_in_archive_order":35,"of":43,"metrics":{"Accuracy":"95.37%","F1 score":"96.98"},"uses_additional_data":false},{"leaderboard":"/sota/lane-detection-on-tusimple","task":"Lane Detection","dataset":"TuSimple","model":"CondLaneNet(ResNet-34)","rank_in_archive_order":43,"of":43,"metrics":{"F1 score":"97.01"},"uses_additional_data":false}],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2105.05003","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2105.05003"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-24T18:15:14+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/Turoad/lanedet","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/zkyseu/PPlanedet","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/aliyun/conditional-lane-detection","reach":{"status":"ok","spdx":"Apache-2.0"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/zkyntu/UnLanedet","reach":null}],"summary":{"ran":1,"unverified":2},"by_repo_kind":{"official":{"samples":3,"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":"fd3666d3bd51e693","entry":"draw_umich_gaussian","repo":"aliyun/conditional-lane-detection","repo_kind":"official","path":"mmdet/datasets/pipelines/lane_formating.py","file_url":"https://github.com/aliyun/conditional-lane-detection/blob/HEAD/mmdet/datasets/pipelines/lane_formating.py","link_basis":"plan_row","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"fd3666d3bd51e693"}},{"code_sha256_prefix":"aa3d4b586be46b0c","entry":"cal_dis","repo":"aliyun/conditional-lane-detection","repo_kind":"official","path":"mmdet/datasets/pipelines/lane_formating.py","file_url":"https://github.com/aliyun/conditional-lane-detection/blob/HEAD/mmdet/datasets/pipelines/lane_formating.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"aa3d4b586be46b0c"}},{"code_sha256_prefix":"86282b7f90be63f2","entry":"gaussian2D","repo":"aliyun/conditional-lane-detection","repo_kind":"official","path":"mmdet/datasets/pipelines/lane_formating.py","file_url":"https://github.com/aliyun/conditional-lane-detection/blob/HEAD/mmdet/datasets/pipelines/lane_formating.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"86282b7f90be63f2"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}