{"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/learning-roi-transformer-for-detecting","title":"Learning RoI Transformer for Detecting Oriented Objects in Aerial Images","arxiv_id":"1812.00155","date":"2018-12-01","proceeding":null,"authors":["Jian Ding","Nan Xue","Yang Long","Gui-Song Xia","Qikai Lu"],"abstract":"Object detection in aerial images is an active yet challenging task in\ncomputer vision because of the birdview perspective, the highly complex\nbackgrounds, and the variant appearances of objects. Especially when detecting\ndensely packed objects in aerial images, methods relying on horizontal\nproposals for common object detection often introduce mismatches between the\nRegion of Interests (RoIs) and objects. This leads to the common misalignment\nbetween the final object classification confidence and localization accuracy.\nAlthough rotated anchors have been used to tackle this problem, the design of\nthem always multiplies the number of anchors and dramatically increases the\ncomputational complexity. In this paper, we propose a RoI Transformer to\naddress these problems. More precisely, to improve the quality of region\nproposals, we first designed a Rotated RoI (RRoI) learner to transform a\nHorizontal Region of Interest (HRoI) into a Rotated Region of Interest (RRoI).\nBased on the RRoIs, we then proposed a Rotated Position Sensitive RoI Align\n(RPS-RoI-Align) module to extract rotation-invariant features from them for\nboosting subsequent classification and regression. Our RoI Transformer is with\nlight weight and can be easily embedded into detectors for oriented object\ndetection. A simple implementation of the RoI Transformer has achieved\nstate-of-the-art performances on two common and challenging aerial datasets,\ni.e., DOTA and HRSC2016, with a neglectable reduction to detection speed. Our\nRoI Transformer exceeds the deformable Position Sensitive RoI pooling when\noriented bounding-box annotations are available. Extensive experiments have\nalso validated the flexibility and effectiveness of our RoI Transformer. The\nresults demonstrate that it can be easily integrated with other detector\narchitectures and significantly improve the performances.","url_abs":"http://arxiv.org/abs/1812.00155v1","url_pdf":"http://arxiv.org/pdf/1812.00155v1.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":"learning-roi-transformer-for-detecting","repo_url":"https://github.com/dingjiansw101/RoITransformer_DOTA","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"mxnet","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"classification","task_name":"General Classification"},{"task_slug":"object","task_name":"Object"},{"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":null,"task_name":"Position"},{"task_slug":"object-detection-1","task_name":"object-detection"}],"methods":[{"method_slug":"absolute-position-encodings","method_name":"Absolute Position Encodings"},{"method_slug":"adam","method_name":"Adam"},{"method_slug":"attention","method_name":"Attention"},{"method_slug":"bpe","method_name":"BPE"},{"method_slug":"dense-connections","method_name":"Dense Connections"},{"method_slug":"dropout","method_name":"Dropout"},{"method_slug":"label-smoothing","method_name":"Label Smoothing"},{"method_slug":"layer-normalization","method_name":"Layer Normalization"},{"method_slug":"linear-layer","method_name":"Linear Layer"},{"method_slug":"multi-head-attention","method_name":"Multi-Head Attention"},{"method_slug":"position-wise-feed-forward-layer","method_name":"Position-Wise Feed-Forward Layer"},{"method_slug":"relu","method_name":"ReLU"},{"method_slug":"residual-connection","method_name":"Residual Connection"},{"method_slug":"softmax","method_name":"Softmax"},{"method_slug":"transformer","method_name":"Transformer"}],"datasets_introduced":[],"methods_introduced":[],"results":[{"leaderboard":"/sota/object-detection-in-aerial-images-on-dota-1","task":"Object Detection In Aerial Images","dataset":"DOTA","model":"RoI Transformer","rank_in_archive_order":54,"of":58,"metrics":{"mAP":"69.56%"},"uses_additional_data":true}],"syntology":{"syntology_url":"https://syntology.ai/paper/1812.00155","atlas_url":"https://app.syntology.ai/?focus=1812.00155","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"1812.00155"}},"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/dingjiansw101/RoITransformer_DOTA","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran_draft_wrong":2,"ran_fixture":3,"unverified":6},"by_repo_kind":{"listed":{"samples":11,"ran":5,"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":11,"samples":[{"code_sha256_prefix":"334c71c1848e108a","entry":"cal_line_length","repo":"dingjiansw101/RoITransformer_DOTA","repo_kind":"listed","path":"dota_kit/ImgSplit.py","file_url":"https://github.com/dingjiansw101/RoITransformer_DOTA/blob/HEAD/dota_kit/ImgSplit.py","link_basis":"harvester_set","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":"well_formed","behaviour_fingerprint":true,"licence":"MIT","inline_ok":false,"mcp_get_code":{"code_sha256":"334c71c1848e108a"}},{"code_sha256_prefix":"787051d64e55a326","entry":"choose_best_pointorder_fit_another","repo":"dingjiansw101/RoITransformer_DOTA","repo_kind":"listed","path":"dota_kit/ImgSplit.py","file_url":"https://github.com/dingjiansw101/RoITransformer_DOTA/blob/HEAD/dota_kit/ImgSplit.py","link_basis":"harvester_set","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":"invariant","behaviour_fingerprint":false,"licence":"MIT","inline_ok":false,"mcp_get_code":{"code_sha256":"787051d64e55a326"}},{"code_sha256_prefix":"0f59174083876439","entry":"parse_gt","repo":"dingjiansw101/RoITransformer_DOTA","repo_kind":"listed","path":"dota_kit/dota_evaluation_task1.py","file_url":"https://github.com/dingjiansw101/RoITransformer_DOTA/blob/HEAD/dota_kit/dota_evaluation_task1.py","link_basis":"harvester_set","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"MIT","inline_ok":false,"mcp_get_code":{"code_sha256":"0f59174083876439"}},{"code_sha256_prefix":"5502a789c2da0e5e","entry":"py_cpu_nms","repo":"dingjiansw101/RoITransformer_DOTA","repo_kind":"listed","path":"dota_kit/ResultMerge.py","file_url":"https://github.com/dingjiansw101/RoITransformer_DOTA/blob/HEAD/dota_kit/ResultMerge.py","link_basis":"harvester_set","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":"invariant","behaviour_fingerprint":false,"licence":"MIT","inline_ok":false,"mcp_get_code":{"code_sha256":"5502a789c2da0e5e"}},{"code_sha256_prefix":"95c31c78be42f723","entry":"voc_ap","repo":"dingjiansw101/RoITransformer_DOTA","repo_kind":"listed","path":"dota_kit/dota_evaluation_task1.py","file_url":"https://github.com/dingjiansw101/RoITransformer_DOTA/blob/HEAD/dota_kit/dota_evaluation_task1.py","link_basis":"harvester_set","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"MIT","inline_ok":false,"mcp_get_code":{"code_sha256":"95c31c78be42f723"}},{"code_sha256_prefix":"dd71e1e52b5d28fb","entry":"GetFileFromThisRootDir","repo":"dingjiansw101/RoITransformer_DOTA","repo_kind":"listed","path":"dota_kit/dota_utils.py","file_url":"https://github.com/dingjiansw101/RoITransformer_DOTA/blob/HEAD/dota_kit/dota_utils.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":false,"mcp_get_code":{"code_sha256":"dd71e1e52b5d28fb"}},{"code_sha256_prefix":"2b316d21aea8f5d2","entry":"TuplePoly2Poly","repo":"dingjiansw101/RoITransformer_DOTA","repo_kind":"listed","path":"dota_kit/dota_utils.py","file_url":"https://github.com/dingjiansw101/RoITransformer_DOTA/blob/HEAD/dota_kit/dota_utils.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":false,"mcp_get_code":{"code_sha256":"2b316d21aea8f5d2"}},{"code_sha256_prefix":"7d7ac32f4cdc59c0","entry":"custombasename","repo":"dingjiansw101/RoITransformer_DOTA","repo_kind":"listed","path":"dota_kit/dota_utils.py","file_url":"https://github.com/dingjiansw101/RoITransformer_DOTA/blob/HEAD/dota_kit/dota_utils.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":false,"mcp_get_code":{"code_sha256":"7d7ac32f4cdc59c0"}},{"code_sha256_prefix":"187d78f33372a950","entry":"iou_poly","repo":"dingjiansw101/RoITransformer_DOTA","repo_kind":"listed","path":"dota_kit/polyiou.py","file_url":"https://github.com/dingjiansw101/RoITransformer_DOTA/blob/HEAD/dota_kit/polyiou.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":false,"mcp_get_code":{"code_sha256":"187d78f33372a950"}},{"code_sha256_prefix":"8e139e53cdf13750","entry":"parse_gt","repo":"dingjiansw101/RoITransformer_DOTA","repo_kind":"listed","path":"dota_kit/dota_evaluation_task2.py","file_url":"https://github.com/dingjiansw101/RoITransformer_DOTA/blob/HEAD/dota_kit/dota_evaluation_task2.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":false,"mcp_get_code":{"code_sha256":"8e139e53cdf13750"}},{"code_sha256_prefix":"4e5a4521cdd33b64","entry":"voc_eval","repo":"dingjiansw101/RoITransformer_DOTA","repo_kind":"listed","path":"dota_kit/dota_evaluation_task2.py","file_url":"https://github.com/dingjiansw101/RoITransformer_DOTA/blob/HEAD/dota_kit/dota_evaluation_task2.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":false,"mcp_get_code":{"code_sha256":"4e5a4521cdd33b64"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}