{"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/quartdepth-post-training-quantization-for-1","title":"QuartDepth: Post-Training Quantization for Real-Time Depth Estimation on the Edge","arxiv_id":"2503.16709","date":"2025-03-20","proceeding":"CVPR 2025 1","authors":["Xuan Shen","Weize Ma","Jing Liu","Changdi Yang","Rui Ding","Quanyi Wang","Henghui Ding","Wei Niu","Yanzhi Wang","Pu Zhao","Jun Lin","Jiuxiang Gu"],"abstract":"Monocular Depth Estimation (MDE) has emerged as a pivotal task in computer vision, supporting numerous real-world applications. However, deploying accurate depth estimation models on resource-limited edge devices, especially Application-Specific Integrated Circuits (ASICs), is challenging due to the high computational and memory demands. Recent advancements in foundational depth estimation deliver impressive results but further amplify the difficulty of deployment on ASICs. To address this, we propose QuartDepth which adopts post-training quantization to quantize MDE models with hardware accelerations for ASICs. Our approach involves quantizing both weights and activations to 4-bit precision, reducing the model size and computation cost. To mitigate the performance degradation, we introduce activation polishing and compensation algorithm applied before and after activation quantization, as well as a weight reconstruction method for minimizing errors in weight quantization. Furthermore, we design a flexible and programmable hardware accelerator by supporting kernel fusion and customized instruction programmability, enhancing throughput and efficiency. Experimental results demonstrate that our framework achieves competitive accuracy while enabling fast inference and higher energy efficiency on ASICs, bridging the gap between high-performance depth estimation and practical edge-device applicability. Code: https://github.com/shawnricecake/quart-depth","url_abs":"https://arxiv.org/abs/2503.16709v1","url_pdf":"https://arxiv.org/pdf/2503.16709v1.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":"quartdepth-post-training-quantization-for-1","repo_url":"https://github.com/shawnricecake/quart-depth","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":null}],"tasks":[{"task_slug":"depth-estimation","task_name":"Depth Estimation"},{"task_slug":"monocular-depth-estimation","task_name":"Monocular Depth Estimation"},{"task_slug":"quantization","task_name":"Quantization"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2503.16709","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2503.16709"}},"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/shawnricecake/quart-depth","reach":null}],"summary":{"ran":3,"ran_draft_wrong":3,"ran_honours":1,"ran_fixture":1,"unverified":12},"by_repo_kind":{"official":{"samples":20,"ran":8,"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":20,"samples":[{"code_sha256_prefix":"20c34221b37d6e5a","entry":"Conv2dLoRA","repo":"shawnricecake/quart-depth","repo_kind":"official","path":"metric3d/mono/model/decode_heads/RAFTDepthNormalDPTDecoder5_quant.py","file_url":"https://github.com/shawnricecake/quart-depth/blob/HEAD/metric3d/mono/model/decode_heads/RAFTDepthNormalDPTDecoder5_quant.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"20c34221b37d6e5a"}},{"code_sha256_prefix":"49d1c4292adc4fa0","entry":"ConvLoRA","repo":"shawnricecake/quart-depth","repo_kind":"official","path":"metric3d/mono/model/decode_heads/RAFTDepthNormalDPTDecoder5_quant.py","file_url":"https://github.com/shawnricecake/quart-depth/blob/HEAD/metric3d/mono/model/decode_heads/RAFTDepthNormalDPTDecoder5_quant.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"49d1c4292adc4fa0"}},{"code_sha256_prefix":"1a6b2908a95d686d","entry":"LayerNorm2d","repo":"shawnricecake/quart-depth","repo_kind":"official","path":"metric3d/mono/model/decode_heads/RAFTDepthNormalDPTDecoder5_quant.py","file_url":"https://github.com/shawnricecake/quart-depth/blob/HEAD/metric3d/mono/model/decode_heads/RAFTDepthNormalDPTDecoder5_quant.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":"invariant","behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"1a6b2908a95d686d"}},{"code_sha256_prefix":"5d5d6423c18aaa27","entry":"compute_depth_expectation","repo":"shawnricecake/quart-depth","repo_kind":"official","path":"metric3d/mono/model/decode_heads/RAFTDepthNormalDPTDecoder5_quant.py","file_url":"https://github.com/shawnricecake/quart-depth/blob/HEAD/metric3d/mono/model/decode_heads/RAFTDepthNormalDPTDecoder5_quant.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"5d5d6423c18aaa27"}},{"code_sha256_prefix":"bd06769ee467a01c","entry":"coords_grid","repo":"shawnricecake/quart-depth","repo_kind":"official","path":"metric3d/mono/model/decode_heads/RAFTDepthNormalDPTDecoder5_quant.py","file_url":"https://github.com/shawnricecake/quart-depth/blob/HEAD/metric3d/mono/model/decode_heads/RAFTDepthNormalDPTDecoder5_quant.py","link_basis":"first_harvest_node","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"bd06769ee467a01c"}},{"code_sha256_prefix":"01dbab41e1e09abf","entry":"interp","repo":"shawnricecake/quart-depth","repo_kind":"official","path":"metric3d/mono/model/decode_heads/RAFTDepthNormalDPTDecoder5_quant.py","file_url":"https://github.com/shawnricecake/quart-depth/blob/HEAD/metric3d/mono/model/decode_heads/RAFTDepthNormalDPTDecoder5_quant.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"01dbab41e1e09abf"}},{"code_sha256_prefix":"b16ff203c09cec37","entry":"interpolate_float32","repo":"shawnricecake/quart-depth","repo_kind":"official","path":"metric3d/mono/model/decode_heads/RAFTDepthNormalDPTDecoder5_quant.py","file_url":"https://github.com/shawnricecake/quart-depth/blob/HEAD/metric3d/mono/model/decode_heads/RAFTDepthNormalDPTDecoder5_quant.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"b16ff203c09cec37"}},{"code_sha256_prefix":"d7471be3ef7422f3","entry":"upflow4","repo":"shawnricecake/quart-depth","repo_kind":"official","path":"metric3d/mono/model/decode_heads/RAFTDepthNormalDPTDecoder5_quant.py","file_url":"https://github.com/shawnricecake/quart-depth/blob/HEAD/metric3d/mono/model/decode_heads/RAFTDepthNormalDPTDecoder5_quant.py","link_basis":"first_harvest_node","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"d7471be3ef7422f3"}},{"code_sha256_prefix":"97ef81770d5725a5","entry":"BasicMultiUpdateBlock","repo":"shawnricecake/quart-depth","repo_kind":"official","path":"metric3d/mono/model/decode_heads/RAFTDepthNormalDPTDecoder5_quant.py","file_url":"https://github.com/shawnricecake/quart-depth/blob/HEAD/metric3d/mono/model/decode_heads/RAFTDepthNormalDPTDecoder5_quant.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"97ef81770d5725a5"}},{"code_sha256_prefix":"59e47872dbb9fbb0","entry":"ContextFeatureEncoder","repo":"shawnricecake/quart-depth","repo_kind":"official","path":"metric3d/mono/model/decode_heads/RAFTDepthNormalDPTDecoder5_quant.py","file_url":"https://github.com/shawnricecake/quart-depth/blob/HEAD/metric3d/mono/model/decode_heads/RAFTDepthNormalDPTDecoder5_quant.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"59e47872dbb9fbb0"}},{"code_sha256_prefix":"e5eb7617d20f9cf2","entry":"ConvBlock","repo":"shawnricecake/quart-depth","repo_kind":"official","path":"metric3d/mono/model/decode_heads/RAFTDepthNormalDPTDecoder5_quant.py","file_url":"https://github.com/shawnricecake/quart-depth/blob/HEAD/metric3d/mono/model/decode_heads/RAFTDepthNormalDPTDecoder5_quant.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"e5eb7617d20f9cf2"}},{"code_sha256_prefix":"ac0c4a21d0fec5a5","entry":"ConvGRU","repo":"shawnricecake/quart-depth","repo_kind":"official","path":"metric3d/mono/model/decode_heads/RAFTDepthNormalDPTDecoder5_quant.py","file_url":"https://github.com/shawnricecake/quart-depth/blob/HEAD/metric3d/mono/model/decode_heads/RAFTDepthNormalDPTDecoder5_quant.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"ac0c4a21d0fec5a5"}},{"code_sha256_prefix":"2f3363af00cd2b17","entry":"DecoderFeature","repo":"shawnricecake/quart-depth","repo_kind":"official","path":"metric3d/mono/model/decode_heads/RAFTDepthNormalDPTDecoder5_quant.py","file_url":"https://github.com/shawnricecake/quart-depth/blob/HEAD/metric3d/mono/model/decode_heads/RAFTDepthNormalDPTDecoder5_quant.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"2f3363af00cd2b17"}},{"code_sha256_prefix":"d59aec780269a9da","entry":"EncoderFeature","repo":"shawnricecake/quart-depth","repo_kind":"official","path":"metric3d/mono/model/decode_heads/RAFTDepthNormalDPTDecoder5_quant.py","file_url":"https://github.com/shawnricecake/quart-depth/blob/HEAD/metric3d/mono/model/decode_heads/RAFTDepthNormalDPTDecoder5_quant.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"d59aec780269a9da"}},{"code_sha256_prefix":"ae321a434f934a35","entry":"FlowHead","repo":"shawnricecake/quart-depth","repo_kind":"official","path":"metric3d/mono/model/decode_heads/RAFTDepthNormalDPTDecoder5_quant.py","file_url":"https://github.com/shawnricecake/quart-depth/blob/HEAD/metric3d/mono/model/decode_heads/RAFTDepthNormalDPTDecoder5_quant.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"ae321a434f934a35"}},{"code_sha256_prefix":"b4cd659ea28ba555","entry":"FuseBlock","repo":"shawnricecake/quart-depth","repo_kind":"official","path":"metric3d/mono/model/decode_heads/RAFTDepthNormalDPTDecoder5_quant.py","file_url":"https://github.com/shawnricecake/quart-depth/blob/HEAD/metric3d/mono/model/decode_heads/RAFTDepthNormalDPTDecoder5_quant.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"b4cd659ea28ba555"}},{"code_sha256_prefix":"f74546d1b74d3d4e","entry":"RAFTDepthNormalDPT5","repo":"shawnricecake/quart-depth","repo_kind":"official","path":"metric3d/mono/model/decode_heads/RAFTDepthNormalDPTDecoder5_quant.py","file_url":"https://github.com/shawnricecake/quart-depth/blob/HEAD/metric3d/mono/model/decode_heads/RAFTDepthNormalDPTDecoder5_quant.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"f74546d1b74d3d4e"}},{"code_sha256_prefix":"0c6e843e898fb7dd","entry":"Readout","repo":"shawnricecake/quart-depth","repo_kind":"official","path":"metric3d/mono/model/decode_heads/RAFTDepthNormalDPTDecoder5_quant.py","file_url":"https://github.com/shawnricecake/quart-depth/blob/HEAD/metric3d/mono/model/decode_heads/RAFTDepthNormalDPTDecoder5_quant.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"0c6e843e898fb7dd"}},{"code_sha256_prefix":"bc5d266138ef30e4","entry":"ResidualBlock","repo":"shawnricecake/quart-depth","repo_kind":"official","path":"metric3d/mono/model/decode_heads/RAFTDepthNormalDPTDecoder5_quant.py","file_url":"https://github.com/shawnricecake/quart-depth/blob/HEAD/metric3d/mono/model/decode_heads/RAFTDepthNormalDPTDecoder5_quant.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"bc5d266138ef30e4"}},{"code_sha256_prefix":"4c305e858ce9013c","entry":"Token2Feature","repo":"shawnricecake/quart-depth","repo_kind":"official","path":"metric3d/mono/model/decode_heads/RAFTDepthNormalDPTDecoder5_quant.py","file_url":"https://github.com/shawnricecake/quart-depth/blob/HEAD/metric3d/mono/model/decode_heads/RAFTDepthNormalDPTDecoder5_quant.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"4c305e858ce9013c"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}