{"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/shapeconv-shape-aware-convolutional-layer-for","title":"ShapeConv: Shape-aware Convolutional Layer for Indoor RGB-D Semantic Segmentation","arxiv_id":"2108.10528","date":"2021-08-24","proceeding":"ICCV 2021 10","authors":["Jinming Cao","Hanchao Leng","Dani Lischinski","Danny Cohen-Or","Changhe Tu","Yangyan Li"],"abstract":"RGB-D semantic segmentation has attracted increasing attention over the past few years. Existing methods mostly employ homogeneous convolution operators to consume the RGB and depth features, ignoring their intrinsic differences. In fact, the RGB values capture the photometric appearance properties in the projected image space, while the depth feature encodes both the shape of a local geometry as well as the base (whereabout) of it in a larger context. Compared with the base, the shape probably is more inherent and has a stronger connection to the semantics, and thus is more critical for segmentation accuracy. Inspired by this observation, we introduce a Shape-aware Convolutional layer (ShapeConv) for processing the depth feature, where the depth feature is firstly decomposed into a shape-component and a base-component, next two learnable weights are introduced to cooperate with them independently, and finally a convolution is applied on the re-weighted combination of these two components. ShapeConv is model-agnostic and can be easily integrated into most CNNs to replace vanilla convolutional layers for semantic segmentation. Extensive experiments on three challenging indoor RGB-D semantic segmentation benchmarks, i.e., NYU-Dv2(-13,-40), SUN RGB-D, and SID, demonstrate the effectiveness of our ShapeConv when employing it over five popular architectures. Moreover, the performance of CNNs with ShapeConv is boosted without introducing any computation and memory increase in the inference phase. The reason is that the learnt weights for balancing the importance between the shape and base components in ShapeConv become constants in the inference phase, and thus can be fused into the following convolution, resulting in a network that is identical to one with vanilla convolutional layers.","url_abs":"https://arxiv.org/abs/2108.10528v1","url_pdf":"https://arxiv.org/pdf/2108.10528v1.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":"shapeconv-shape-aware-convolutional-layer-for","repo_url":"https://github.com/hanchaoleng/shapeconv","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"Apache-2.0"}}],"tasks":[{"task_slug":"segmentation","task_name":"Segmentation"},{"task_slug":"semantic-segmentation","task_name":"Semantic Segmentation"},{"task_slug":"thermal-image-segmentation","task_name":"Thermal Image Segmentation"}],"methods":[{"method_slug":"convolution","method_name":"Convolution"},{"method_slug":"shapeconv","method_name":"ShapeConv"}],"datasets_introduced":[],"methods_introduced":[{"slug":"shapeconv","name":"ShapeConv","full_name":"ShapeConv"}],"results":[{"leaderboard":"/sota/semantic-segmentation-on-gamus","task":"Semantic Segmentation","dataset":"GAMUS","model":"ShapeConv","rank_in_archive_order":5,"of":6,"metrics":{"mIoU":"55.86"},"uses_additional_data":false},{"leaderboard":"/sota/semantic-segmentation-on-llrgbd-synthetic","task":"Semantic Segmentation","dataset":"LLRGBD-synthetic","model":"ShapeConv (ResNeXt-101)","rank_in_archive_order":6,"of":8,"metrics":{"mIoU":"63.26"},"uses_additional_data":false},{"leaderboard":"/sota/semantic-segmentation-on-nyu-depth-v2","task":"Semantic Segmentation","dataset":"NYU Depth v2","model":"ShapeConv (ResNext-101)","rank_in_archive_order":51,"of":121,"metrics":{"Mean IoU":"51.3%"},"uses_additional_data":false},{"leaderboard":"/sota/semantic-segmentation-on-nyu-depth-v2","task":"Semantic Segmentation","dataset":"NYU Depth v2","model":"ShapeConv (ResNet-101)","rank_in_archive_order":74,"of":121,"metrics":{"Mean IoU":"49.0%"},"uses_additional_data":false},{"leaderboard":"/sota/semantic-segmentation-on-nyu-depth-v2","task":"Semantic Segmentation","dataset":"NYU Depth v2","model":"ShapeConv (ResNet-50)","rank_in_archive_order":76,"of":121,"metrics":{"Mean IoU":"48.8%"},"uses_additional_data":false},{"leaderboard":"/sota/semantic-segmentation-on-sun-rgbd","task":"Semantic Segmentation","dataset":"SUN-RGBD","model":"PSD-ResNet50","rank_in_archive_order":28,"of":44,"metrics":{"Mean IoU":"48.6%"},"uses_additional_data":true},{"leaderboard":"/sota/semantic-segmentation-on-stanford2d3d-rgbd","task":"Semantic Segmentation","dataset":"Stanford2D3D - RGBD","model":"ShapeConv-101","rank_in_archive_order":3,"of":6,"metrics":{"Pixel Accuracy":"82.7","mAcc":"70.0","mIoU":"60.6"},"uses_additional_data":false},{"leaderboard":"/sota/thermal-image-segmentation-on-rgb-t-glass","task":"Thermal Image Segmentation","dataset":"RGB-T-Glass-Segmentation","model":"ShapeConv","rank_in_archive_order":12,"of":22,"metrics":{"MAE":"0.054"},"uses_additional_data":false}],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2108.10528","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2108.10528"}},"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/hanchaoleng/shapeconv","reach":{"status":"ok","spdx":"Apache-2.0"}}],"summary":{"unverified":4},"by_repo_kind":{"official":{"samples":4,"ran":0,"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":"77c65c7d1af59cce","entry":"get_names","repo":"hanchaoleng/shapeconv","repo_kind":"official","path":"data_preparation/gen_sid.py","file_url":"https://github.com/hanchaoleng/shapeconv/blob/HEAD/data_preparation/gen_sid.py","link_basis":"first_harvest_node","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":"77c65c7d1af59cce"}},{"code_sha256_prefix":"b046cfe2bfad70e5","entry":"get_nyu_cam_mats","repo":"hanchaoleng/shapeconv","repo_kind":"official","path":"data_preparation/gen_nyu.py","file_url":"https://github.com/hanchaoleng/shapeconv/blob/HEAD/data_preparation/gen_nyu.py","link_basis":"first_harvest_node","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":"b046cfe2bfad70e5"}},{"code_sha256_prefix":"250eeac5dd1759bc","entry":"read_label_map","repo":"hanchaoleng/shapeconv","repo_kind":"official","path":"data_preparation/gen_nyu.py","file_url":"https://github.com/hanchaoleng/shapeconv/blob/HEAD/data_preparation/gen_nyu.py","link_basis":"first_harvest_node","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":"250eeac5dd1759bc"}},{"code_sha256_prefix":"d83873f97d8b3da7","entry":"save_list","repo":"hanchaoleng/shapeconv","repo_kind":"official","path":"data_preparation/gen_sid.py","file_url":"https://github.com/hanchaoleng/shapeconv/blob/HEAD/data_preparation/gen_sid.py","link_basis":"first_harvest_node","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":"d83873f97d8b3da7"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}