{"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/segmenting-transparent-objects-in-the-wild","title":"Segmenting Transparent Objects in the Wild","arxiv_id":"2003.13948","date":"2020-03-31","proceeding":"ECCV 2020 8","authors":["Enze Xie","Wenjia Wang","Wenhai Wang","Mingyu Ding","Chunhua Shen","Ping Luo"],"abstract":"Transparent objects such as windows and bottles made by glass widely exist in the real world. Segmenting transparent objects is challenging because these objects have diverse appearance inherited from the image background, making them had similar appearance with their surroundings. Besides the technical difficulty of this task, only a few previous datasets were specially designed and collected to explore this task and most of the existing datasets have major drawbacks. They either possess limited sample size such as merely a thousand of images without manual annotations, or they generate all images by using computer graphics method (i.e. not real image). To address this important problem, this work proposes a large-scale dataset for transparent object segmentation, named Trans10K, consisting of 10,428 images of real scenarios with carefully manual annotations, which are 10 times larger than the existing datasets. The transparent objects in Trans10K are extremely challenging due to high diversity in scale, viewpoint and occlusion as shown in Fig. 1. To evaluate the effectiveness of Trans10K, we propose a novel boundary-aware segmentation method, termed TransLab, which exploits boundary as the clue to improve segmentation of transparent objects. Extensive experiments and ablation studies demonstrate the effectiveness of Trans10K and validate the practicality of learning object boundary in TransLab. For example, TransLab significantly outperforms 20 recent object segmentation methods based on deep learning, showing that this task is largely unsolved. We believe that both Trans10K and TransLab have important contributions to both the academia and industry, facilitating future researches and applications.","url_abs":"https://arxiv.org/abs/2003.13948v3","url_pdf":"https://arxiv.org/pdf/2003.13948v3.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":"segmenting-transparent-objects-in-the-wild","repo_url":"https://github.com/xieenze/Segment_Transparent_Objects","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":"transparent-objects","task_name":"Transparent objects"}],"methods":[],"datasets_introduced":[{"slug":"trans10k","name":"Trans10K","full_name":""}],"methods_introduced":[],"results":[{"leaderboard":"/sota/semantic-segmentation-on-trans10k","task":"Semantic Segmentation","dataset":"Trans10K","model":"Trans2Lab","rank_in_archive_order":4,"of":15,"metrics":{"GFLOPs":"61.31","mIoU":"69.00%"},"uses_additional_data":false}],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2003.13948","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2003.13948"}},"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/xieenze/Segment_Transparent_Objects","reach":{"status":"ok","spdx":"Apache-2.0"}}],"summary":{"ran_fixture":2,"ran_violates":1,"unverified":6},"by_repo_kind":{"official":{"samples":9,"ran":3,"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":"d94639b28b2134ff","entry":"iou","repo":"xieenze/Segment_Transparent_Objects","repo_kind":"official","path":"segmentron/solver/lovasz_losses.py","file_url":"https://github.com/xieenze/Segment_Transparent_Objects/blob/HEAD/segmentron/solver/lovasz_losses.py","link_basis":"harvester_set","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"d94639b28b2134ff"}},{"code_sha256_prefix":"1211530cd527bd0b","entry":"iou_binary","repo":"xieenze/Segment_Transparent_Objects","repo_kind":"official","path":"segmentron/solver/lovasz_losses.py","file_url":"https://github.com/xieenze/Segment_Transparent_Objects/blob/HEAD/segmentron/solver/lovasz_losses.py","link_basis":"harvester_set","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"1211530cd527bd0b"}},{"code_sha256_prefix":"e85b5d21dc5b8382","entry":"lovasz_grad","repo":"xieenze/Segment_Transparent_Objects","repo_kind":"official","path":"segmentron/solver/lovasz_losses.py","file_url":"https://github.com/xieenze/Segment_Transparent_Objects/blob/HEAD/segmentron/solver/lovasz_losses.py","link_basis":"harvester_set","language":"python","status":"ran_violates","verification_level":1,"contract_check":"VIOLATES","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"e85b5d21dc5b8382"}},{"code_sha256_prefix":"33276fb60e28dceb","entry":"batch_ber","repo":"xieenze/Segment_Transparent_Objects","repo_kind":"official","path":"segmentron/utils/score.py","file_url":"https://github.com/xieenze/Segment_Transparent_Objects/blob/HEAD/segmentron/utils/score.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":"33276fb60e28dceb"}},{"code_sha256_prefix":"8eae673295914188","entry":"batch_mae","repo":"xieenze/Segment_Transparent_Objects","repo_kind":"official","path":"segmentron/utils/score.py","file_url":"https://github.com/xieenze/Segment_Transparent_Objects/blob/HEAD/segmentron/utils/score.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":"8eae673295914188"}},{"code_sha256_prefix":"a08d84c1264ca07e","entry":"batch_pix_accuracy","repo":"xieenze/Segment_Transparent_Objects","repo_kind":"official","path":"segmentron/utils/score.py","file_url":"https://github.com/xieenze/Segment_Transparent_Objects/blob/HEAD/segmentron/utils/score.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":"a08d84c1264ca07e"}},{"code_sha256_prefix":"7d6250302cdb769d","entry":"get_norm","repo":"xieenze/Segment_Transparent_Objects","repo_kind":"official","path":"segmentron/modules/batch_norm.py","file_url":"https://github.com/xieenze/Segment_Transparent_Objects/blob/HEAD/segmentron/modules/batch_norm.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":"7d6250302cdb769d"}},{"code_sha256_prefix":"267edfcf2795234f","entry":"get_segmentation_loss","repo":"xieenze/Segment_Transparent_Objects","repo_kind":"official","path":"segmentron/solver/loss.py","file_url":"https://github.com/xieenze/Segment_Transparent_Objects/blob/HEAD/segmentron/solver/loss.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":"267edfcf2795234f"}},{"code_sha256_prefix":"644effb1fd52ef7d","entry":"groupNorm","repo":"xieenze/Segment_Transparent_Objects","repo_kind":"official","path":"segmentron/modules/batch_norm.py","file_url":"https://github.com/xieenze/Segment_Transparent_Objects/blob/HEAD/segmentron/modules/batch_norm.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":"644effb1fd52ef7d"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}