{"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/sketch-and-refine-towards-fast-and-accurate","title":"Sketch and Refine: Towards Fast and Accurate Lane Detection","arxiv_id":"2401.14729","date":"2024-01-26","proceeding":null,"authors":["Chao Chen","Jie Liu","Chang Zhou","Jie Tang","Gangshan Wu"],"abstract":"Lane detection is to determine the precise location and shape of lanes on the road. Despite efforts made by current methods, it remains a challenging task due to the complexity of real-world scenarios. Existing approaches, whether proposal-based or keypoint-based, suffer from depicting lanes effectively and efficiently. Proposal-based methods detect lanes by distinguishing and regressing a collection of proposals in a streamlined top-down way, yet lack sufficient flexibility in lane representation. Keypoint-based methods, on the other hand, construct lanes flexibly from local descriptors, which typically entail complicated post-processing. In this paper, we present a \"Sketch-and-Refine\" paradigm that utilizes the merits of both keypoint-based and proposal-based methods. The motivation is that local directions of lanes are semantically simple and clear. At the \"Sketch\" stage, local directions of keypoints can be easily estimated by fast convolutional layers. Then we can build a set of lane proposals accordingly with moderate accuracy. At the \"Refine\" stage, we further optimize these proposals via a novel Lane Segment Association Module (LSAM), which allows adaptive lane segment adjustment. Last but not least, we propose multi-level feature integration to enrich lane feature representations more efficiently. Based on the proposed \"Sketch and Refine\" paradigm, we propose a fast yet effective lane detector dubbed \"SRLane\". Experiments show that our SRLane can run at a fast speed (i.e., 278 FPS) while yielding an F1 score of 78.9\\%. The source code is available at: https://github.com/passerer/SRLane.","url_abs":"https://arxiv.org/abs/2401.14729v1","url_pdf":"https://arxiv.org/pdf/2401.14729v1.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":"sketch-and-refine-towards-fast-and-accurate","repo_url":"https://github.com/passerer/srlane","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":0,"framework":"pytorch","reach":{"status":"ok"}}],"tasks":[{"task_slug":"lane-detection","task_name":"Lane Detection"}],"methods":[{"method_slug":"set","method_name":"SET"},{"method_slug":"speed","method_name":"SPEED"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2401.14729","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2401.14729"}},"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":"deterministic:regex_extraction","url":"https://github.com/passerer/SRLane","reach":{"status":"ok"}}],"summary":{"ran":4},"by_repo_kind":{"official":{"samples":4,"ran":4,"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":4,"samples":[{"code_sha256_prefix":"eb6c9e7e0571124f","entry":"build_from_cfg","repo":"passerer/SRLane","repo_kind":"official","path":"srlane/registry.py","file_url":"https://github.com/passerer/SRLane/blob/HEAD/srlane/registry.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"eb6c9e7e0571124f"}},{"code_sha256_prefix":"a5f31abcde26e816","entry":"build_optimizer","repo":"passerer/SRLane","repo_kind":"official","path":"srlane/engine/optimizer.py","file_url":"https://github.com/passerer/SRLane/blob/HEAD/srlane/engine/optimizer.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"a5f31abcde26e816"}},{"code_sha256_prefix":"8e2e236b88d7654e","entry":"build_scheduler","repo":"passerer/SRLane","repo_kind":"official","path":"srlane/engine/scheduler.py","file_url":"https://github.com/passerer/SRLane/blob/HEAD/srlane/engine/scheduler.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"8e2e236b88d7654e"}},{"code_sha256_prefix":"75afc34b3e43b886","entry":"is_str","repo":"passerer/SRLane","repo_kind":"official","path":"srlane/registry.py","file_url":"https://github.com/passerer/SRLane/blob/HEAD/srlane/registry.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"75afc34b3e43b886"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}