{"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/binsformer-revisiting-adaptive-bins-for","title":"BinsFormer: Revisiting Adaptive Bins for Monocular Depth Estimation","arxiv_id":"2204.00987","date":"2022-04-03","proceeding":null,"authors":["Zhenyu Li","Xuyang Wang","Xianming Liu","Junjun Jiang"],"abstract":"Monocular depth estimation is a fundamental task in computer vision and has drawn increasing attention. Recently, some methods reformulate it as a classification-regression task to boost the model performance, where continuous depth is estimated via a linear combination of predicted probability distributions and discrete bins. In this paper, we present a novel framework called BinsFormer, tailored for the classification-regression-based depth estimation. It mainly focuses on two crucial components in the specific task: 1) proper generation of adaptive bins and 2) sufficient interaction between probability distribution and bins predictions. To specify, we employ the Transformer decoder to generate bins, novelly viewing it as a direct set-to-set prediction problem. We further integrate a multi-scale decoder structure to achieve a comprehensive understanding of spatial geometry information and estimate depth maps in a coarse-to-fine manner. Moreover, an extra scene understanding query is proposed to improve the estimation accuracy, which turns out that models can implicitly learn useful information from an auxiliary environment classification task. Extensive experiments on the KITTI, NYU, and SUN RGB-D datasets demonstrate that BinsFormer surpasses state-of-the-art monocular depth estimation methods with prominent margins. Code and pretrained models will be made publicly available at \\url{https://github.com/zhyever/Monocular-Depth-Estimation-Toolbox}.","url_abs":"https://arxiv.org/abs/2204.00987v1","url_pdf":"https://arxiv.org/pdf/2204.00987v1.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":"binsformer-revisiting-adaptive-bins-for","repo_url":"https://github.com/zhyever/monocular-depth-estimation-toolbox","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":0,"framework":"pytorch","reach":{"status":"ok","spdx":"Apache-2.0"}},{"paper_slug":"binsformer-revisiting-adaptive-bins-for","repo_url":"https://github.com/RuijieZhu94/mmdepth","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"Apache-2.0"}}],"tasks":[{"task_slug":"decoder","task_name":"Decoder"},{"task_slug":"depth-estimation","task_name":"Depth Estimation"},{"task_slug":"monocular-depth-estimation","task_name":"Monocular Depth Estimation"},{"task_slug":"scene-understanding","task_name":"Scene Understanding"},{"task_slug":"regression-1","task_name":"regression"}],"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":"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/monocular-depth-estimation-on-kitti-eigen","task":"Monocular Depth Estimation","dataset":"KITTI Eigen split","model":"BinsFormer","rank_in_archive_order":26,"of":79,"metrics":{"Delta < 1.25":"0.974","Delta < 1.25^2":"0.997","Delta < 1.25^3":"0.999","RMSE":"2.098","RMSE log":"0.079","Sq Rel":"0.151","absolute relative error":"0.052"},"uses_additional_data":true},{"leaderboard":"/sota/monocular-depth-estimation-on-nyu-depth-v2","task":"Monocular Depth Estimation","dataset":"NYU-Depth V2","model":"BinsFormer","rank_in_archive_order":42,"of":85,"metrics":{"Delta < 1.25":"0.925","Delta < 1.25^2":"0.989","Delta < 1.25^3":"0.997","RMSE":"0.330","absolute relative error":"0.094","log 10":"0.040"},"uses_additional_data":false}],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2204.00987","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2204.00987"}},"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/zhyever/monocular-depth-estimation-toolbox","reach":{"status":"ok","spdx":"Apache-2.0"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/RuijieZhu94/mmdepth","reach":{"status":"ok","spdx":"Apache-2.0"}}],"summary":{"ran":1,"unverified":4},"by_repo_kind":{"official":{"samples":5,"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":"faac9130cc118fec","entry":"remove_leading_slash","repo":"zhyever/monocular-depth-estimation-toolbox","repo_kind":"official","path":"depth/datasets/nyu.py","file_url":"https://github.com/zhyever/monocular-depth-estimation-toolbox/blob/HEAD/depth/datasets/nyu.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"faac9130cc118fec"}},{"code_sha256_prefix":"3fdd113170a0555f","entry":"add_prefix","repo":"zhyever/monocular-depth-estimation-toolbox","repo_kind":"official","path":"depth/core/utils/misc.py","file_url":"https://github.com/zhyever/monocular-depth-estimation-toolbox/blob/HEAD/depth/core/utils/misc.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":"3fdd113170a0555f"}},{"code_sha256_prefix":"0d757a05c5b90822","entry":"calculate","repo":"zhyever/monocular-depth-estimation-toolbox","repo_kind":"official","path":"depth/core/evaluation/metrics.py","file_url":"https://github.com/zhyever/monocular-depth-estimation-toolbox/blob/HEAD/depth/core/evaluation/metrics.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":"0d757a05c5b90822"}},{"code_sha256_prefix":"568cbdbe2a7718a3","entry":"eval_metrics","repo":"zhyever/monocular-depth-estimation-toolbox","repo_kind":"official","path":"depth/core/evaluation/metrics.py","file_url":"https://github.com/zhyever/monocular-depth-estimation-toolbox/blob/HEAD/depth/core/evaluation/metrics.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":"568cbdbe2a7718a3"}},{"code_sha256_prefix":"8b0bbdc40ef410ff","entry":"metrics","repo":"zhyever/monocular-depth-estimation-toolbox","repo_kind":"official","path":"depth/core/evaluation/metrics.py","file_url":"https://github.com/zhyever/monocular-depth-estimation-toolbox/blob/HEAD/depth/core/evaluation/metrics.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":"8b0bbdc40ef410ff"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}