{"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/arbitrary-oriented-object-detection-with","title":"On the Arbitrary-Oriented Object Detection: Classification based Approaches Revisited","arxiv_id":"2003.05597","date":"2020-03-12","proceeding":"ECCV 2020 8","authors":["Xue Yang","Junchi Yan"],"abstract":"Arbitrary-oriented object detection has been a building block for rotation sensitive tasks. We first show that the boundary problem suffered in existing dominant regression-based rotation detectors, is caused by angular periodicity or corner ordering, according to the parameterization protocol. We also show that the root cause is that the ideal predictions can be out of the defined range. Accordingly, we transform the angular prediction task from a regression problem to a classification one. For the resulting circularly distributed angle classification problem, we first devise a Circular Smooth Label technique to handle the periodicity of angle and increase the error tolerance to adjacent angles. To reduce the excessive model parameters by Circular Smooth Label, we further design a Densely Coded Labels, which greatly reduces the length of the encoding. Finally, we further develop an object heading detection module, which can be useful when the exact heading orientation information is needed e.g. for ship and plane heading detection. We release our OHD-SJTU dataset and OHDet detector for heading detection. Extensive experimental results on three large-scale public datasets for aerial images i.e. DOTA, HRSC2016, OHD-SJTU, and face dataset FDDB, as well as scene text dataset ICDAR2015 and MLT, show the effectiveness of our approach.","url_abs":"https://arxiv.org/abs/2003.05597v4","url_pdf":"https://arxiv.org/pdf/2003.05597v4.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":"arbitrary-oriented-object-detection-with","repo_url":"https://github.com/SJTU-Thinklab-Det/OHDet_Tensorflow","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"tf","reach":null},{"paper_slug":"arbitrary-oriented-object-detection-with","repo_url":"https://github.com/Thinklab-SJTU/CSL_RetinaNet_Tensorflow","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"tf","reach":null},{"paper_slug":"arbitrary-oriented-object-detection-with","repo_url":"https://github.com/yangxue0827/RotationDetection","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"tf","reach":null},{"paper_slug":"arbitrary-oriented-object-detection-with","repo_url":"https://github.com/hukaixuan19970627/yolov5_obb","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"GPL-3.0"}}],"tasks":[{"task_slug":"classification-1","task_name":"Classification"},{"task_slug":"classification","task_name":"General Classification"},{"task_slug":"object-detection","task_name":"Object Detection"},{"task_slug":"object-detection-in-aerial-images","task_name":"Object Detection In Aerial Images"},{"task_slug":"oriented-object-detection","task_name":"Oriented Object Detection"},{"task_slug":"object-detection-1","task_name":"object-detection"},{"task_slug":"regression-1","task_name":"regression"}],"methods":[{"method_slug":"csl","method_name":"CSL"}],"datasets_introduced":[],"methods_introduced":[{"slug":"csl","name":"CSL","full_name":"Circular Smooth Label"}],"results":[{"leaderboard":"/sota/object-detection-in-aerial-images-on-dota-1","task":"Object Detection In Aerial Images","dataset":"DOTA","model":"CSL","rank_in_archive_order":43,"of":58,"metrics":{"mAP":"76.17%"},"uses_additional_data":true}],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2003.05597","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2003.05597"}},"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/yangxue0827/RotationDetection","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/SJTU-Thinklab-Det/OHDet_Tensorflow","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/hukaixuan19970627/yolov5_obb","reach":{"status":"ok","spdx":"GPL-3.0"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/Thinklab-SJTU/CSL_RetinaNet_Tensorflow","reach":null}],"summary":{"ran_draft_wrong":3,"ran_fixture":1},"by_repo_kind":{"official":{"samples":3,"ran":3,"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":"b07dc7faf9668206","entry":"get_gtboxes_and_label","repo":null,"repo_kind":null,"path":null,"file_url":null,"link_basis":"identical_code_first_harvested_elsewhere","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":null,"inline_ok":false,"mcp_get_code":{"code_sha256":"b07dc7faf9668206"}},{"code_sha256_prefix":"60d367be4e8c78e6","entry":"get_gtboxes_head_and_label","repo":"SJTU-Thinklab-Det/OHDet_Tensorflow","repo_kind":"official","path":"tools/multi_gpu_train_r3det_csl_ohdet.py","file_url":"https://github.com/SJTU-Thinklab-Det/OHDet_Tensorflow/blob/HEAD/tools/multi_gpu_train_r3det_csl_ohdet.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"60d367be4e8c78e6"}},{"code_sha256_prefix":"d397be7581873353","entry":"parse_gt","repo":"SJTU-Thinklab-Det/OHDet_Tensorflow","repo_kind":"official","path":"eval_devkit/OHD_SJTU_evaluation_OHD.py","file_url":"https://github.com/SJTU-Thinklab-Det/OHDet_Tensorflow/blob/HEAD/eval_devkit/OHD_SJTU_evaluation_OHD.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"d397be7581873353"}},{"code_sha256_prefix":"1c679c88d3cb7b6e","entry":"voc_ap","repo":"SJTU-Thinklab-Det/OHDet_Tensorflow","repo_kind":"official","path":"eval_devkit/OHD_SJTU_evaluation_OHD.py","file_url":"https://github.com/SJTU-Thinklab-Det/OHDet_Tensorflow/blob/HEAD/eval_devkit/OHD_SJTU_evaluation_OHD.py","link_basis":"first_harvest_node","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":"invariant","behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"1c679c88d3cb7b6e"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}