{"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/monovit-self-supervised-monocular-depth","title":"MonoViT: Self-Supervised Monocular Depth Estimation with a Vision Transformer","arxiv_id":"2208.03543","date":"2022-08-06","proceeding":null,"authors":["Chaoqiang Zhao","Youmin Zhang","Matteo Poggi","Fabio Tosi","Xianda Guo","Zheng Zhu","Guan Huang","Yang Tang","Stefano Mattoccia"],"abstract":"Self-supervised monocular depth estimation is an attractive solution that does not require hard-to-source depth labels for training. Convolutional neural networks (CNNs) have recently achieved great success in this task. However, their limited receptive field constrains existing network architectures to reason only locally, dampening the effectiveness of the self-supervised paradigm. In the light of the recent successes achieved by Vision Transformers (ViTs), we propose MonoViT, a brand-new framework combining the global reasoning enabled by ViT models with the flexibility of self-supervised monocular depth estimation. By combining plain convolutions with Transformer blocks, our model can reason locally and globally, yielding depth prediction at a higher level of detail and accuracy, allowing MonoViT to achieve state-of-the-art performance on the established KITTI dataset. Moreover, MonoViT proves its superior generalization capacities on other datasets such as Make3D and DrivingStereo.","url_abs":"https://arxiv.org/abs/2208.03543v1","url_pdf":"https://arxiv.org/pdf/2208.03543v1.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":"monovit-self-supervised-monocular-depth","repo_url":"https://github.com/zxcqlf/monovit","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"depth-estimation","task_name":"Depth Estimation"},{"task_slug":"depth-prediction","task_name":"Depth Prediction"},{"task_slug":"monocular-depth-estimation","task_name":"Monocular Depth Estimation"},{"task_slug":"unsupervised-monocular-depth-estimation","task_name":"Unsupervised Monocular Depth Estimation"}],"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-2","task":"Monocular Depth Estimation","dataset":"KITTI","model":"MonoViT","rank_in_archive_order":1,"of":2,"metrics":{"absolute relative error":"0.093"},"uses_additional_data":false},{"leaderboard":"/sota/monocular-depth-estimation-on-kitti-eigen-1","task":"Monocular Depth Estimation","dataset":"KITTI Eigen split unsupervised","model":"MonoViT(MS+1024x320)","rank_in_archive_order":10,"of":55,"metrics":{"Delta < 1.25":"0.912","Delta < 1.25^2":"0.969","Delta < 1.25^3":"0.985","Mono":"X","RMSE":"4.202","RMSE log":"0.169","Resolution":"1024x320","Sq Rel":"0.671","absolute relative error":"0.093"},"uses_additional_data":false}],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2208.03543","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2208.03543"}},"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/zxcqlf/monovit","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran_fixture":2,"ran_honours":1,"ran":3},"by_repo_kind":{"official":{"samples":6,"ran":6,"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":"a8814cc5c348b987","entry":"batch_post_process_disparity","repo":"zxcqlf/monovit","repo_kind":"official","path":"evaluate_depth.py","file_url":"https://github.com/zxcqlf/monovit/blob/HEAD/evaluate_depth.py","link_basis":"plan_row","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"a8814cc5c348b987"}},{"code_sha256_prefix":"edd4f86e8f02732f","entry":"compute_errors","repo":"zxcqlf/monovit","repo_kind":"official","path":"evaluate_depth.py","file_url":"https://github.com/zxcqlf/monovit/blob/HEAD/evaluate_depth.py","link_basis":"plan_row","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"edd4f86e8f02732f"}},{"code_sha256_prefix":"572a295bc8e11e7d","entry":"depth_to_disp","repo":"zxcqlf/monovit","repo_kind":"official","path":"networks/hr_layers.py","file_url":"https://github.com/zxcqlf/monovit/blob/HEAD/networks/hr_layers.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"572a295bc8e11e7d"}},{"code_sha256_prefix":"62287188376f0ba0","entry":"disp_to_depth","repo":"zxcqlf/monovit","repo_kind":"official","path":"networks/hr_layers.py","file_url":"https://github.com/zxcqlf/monovit/blob/HEAD/networks/hr_layers.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"62287188376f0ba0"}},{"code_sha256_prefix":"50237babd07c2e3b","entry":"dpr_generator","repo":"zxcqlf/monovit","repo_kind":"official","path":"networks/mpvit.py","file_url":"https://github.com/zxcqlf/monovit/blob/HEAD/networks/mpvit.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"50237babd07c2e3b"}},{"code_sha256_prefix":"a739072b350093e7","entry":"upsample","repo":"zxcqlf/monovit","repo_kind":"official","path":"networks/hr_layers.py","file_url":"https://github.com/zxcqlf/monovit/blob/HEAD/networks/hr_layers.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":true,"mcp_get_code":{"code_sha256":"a739072b350093e7"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}