{"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/mutual-graph-learning-for-camouflaged-object","title":"Mutual Graph Learning for Camouflaged Object Detection","arxiv_id":"2104.02613","date":"2021-04-03","proceeding":"CVPR 2021 1","authors":["Qiang Zhai","Xin Li","Fan Yang","Chenglizhao Chen","Hong Cheng","Deng-Ping Fan"],"abstract":"Automatically detecting/segmenting object(s) that blend in with their surroundings is difficult for current models. A major challenge is that the intrinsic similarities between such foreground objects and background surroundings make the features extracted by deep model indistinguishable. To overcome this challenge, an ideal model should be able to seek valuable, extra clues from the given scene and incorporate them into a joint learning framework for representation co-enhancement. With this inspiration, we design a novel Mutual Graph Learning (MGL) model, which generalizes the idea of conventional mutual learning from regular grids to the graph domain. Specifically, MGL decouples an image into two task-specific feature maps -- one for roughly locating the target and the other for accurately capturing its boundary details -- and fully exploits the mutual benefits by recurrently reasoning their high-order relations through graphs. Importantly, in contrast to most mutual learning approaches that use a shared function to model all between-task interactions, MGL is equipped with typed functions for handling different complementary relations to maximize information interactions. Experiments on challenging datasets, including CHAMELEON, CAMO and COD10K, demonstrate the effectiveness of our MGL with superior performance to existing state-of-the-art methods.","url_abs":"https://arxiv.org/abs/2104.02613v1","url_pdf":"https://arxiv.org/pdf/2104.02613v1.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":"mutual-graph-learning-for-camouflaged-object","repo_url":"https://github.com/fanyang587/MGL","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":0,"framework":"pytorch","reach":null}],"tasks":[{"task_slug":"graph-learning","task_name":"Graph Learning"},{"task_slug":"object","task_name":"Object"},{"task_slug":"object-detection","task_name":"Object Detection"},{"task_slug":"object-detection-1","task_name":"object-detection"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2104.02613","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2104.02613"}},"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/fanyang587/MGL","reach":null}],"summary":{"ran":4,"ran_draft_wrong":3,"unverified":6},"by_repo_kind":{"official":{"samples":13,"ran":7,"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":13,"samples":[{"code_sha256_prefix":"ae55b0db34eeec32","entry":"BasicConv2d","repo":"fanyang587/MGL","repo_kind":"official","path":"model/mglnet.py","file_url":"https://github.com/fanyang587/MGL/blob/HEAD/model/mglnet.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":"ae55b0db34eeec32"}},{"code_sha256_prefix":"694a2e5e0e0c8dab","entry":"CascadeGCNet","repo":"fanyang587/MGL","repo_kind":"official","path":"model/mglnet.py","file_url":"https://github.com/fanyang587/MGL/blob/HEAD/model/mglnet.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":"694a2e5e0e0c8dab"}},{"code_sha256_prefix":"8b6720b5d5cbe2b1","entry":"ConcatNet","repo":"fanyang587/MGL","repo_kind":"official","path":"model/mglnet.py","file_url":"https://github.com/fanyang587/MGL/blob/HEAD/model/mglnet.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":"8b6720b5d5cbe2b1"}},{"code_sha256_prefix":"9ec88a6253083689","entry":"GraphNet","repo":"fanyang587/MGL","repo_kind":"official","path":"model/mglnet.py","file_url":"https://github.com/fanyang587/MGL/blob/HEAD/model/mglnet.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"9ec88a6253083689"}},{"code_sha256_prefix":"4b24d57ee9d24676","entry":"resnet101","repo":"fanyang587/MGL","repo_kind":"official","path":"model/mglnet.py","file_url":"https://github.com/fanyang587/MGL/blob/HEAD/model/mglnet.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"4b24d57ee9d24676"}},{"code_sha256_prefix":"c0c2308e15a77337","entry":"resnet152","repo":"fanyang587/MGL","repo_kind":"official","path":"model/mglnet.py","file_url":"https://github.com/fanyang587/MGL/blob/HEAD/model/mglnet.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"c0c2308e15a77337"}},{"code_sha256_prefix":"655a2624ee43521c","entry":"resnet50","repo":"fanyang587/MGL","repo_kind":"official","path":"model/mglnet.py","file_url":"https://github.com/fanyang587/MGL/blob/HEAD/model/mglnet.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"655a2624ee43521c"}},{"code_sha256_prefix":"d68a75ff9e28b611","entry":"ECGraphNet","repo":"fanyang587/MGL","repo_kind":"official","path":"model/mglnet.py","file_url":"https://github.com/fanyang587/MGL/blob/HEAD/model/mglnet.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":"d68a75ff9e28b611"}},{"code_sha256_prefix":"c8af1528c69cbfdc","entry":"GraphConvNet","repo":"fanyang587/MGL","repo_kind":"official","path":"model/mglnet.py","file_url":"https://github.com/fanyang587/MGL/blob/HEAD/model/mglnet.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":"c8af1528c69cbfdc"}},{"code_sha256_prefix":"bb227665cac14a09","entry":"MGLNet","repo":"fanyang587/MGL","repo_kind":"official","path":"model/mglnet.py","file_url":"https://github.com/fanyang587/MGL/blob/HEAD/model/mglnet.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":"bb227665cac14a09"}},{"code_sha256_prefix":"ab93a9ede6674afa","entry":"MutualModule0","repo":"fanyang587/MGL","repo_kind":"official","path":"model/mglnet.py","file_url":"https://github.com/fanyang587/MGL/blob/HEAD/model/mglnet.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":"ab93a9ede6674afa"}},{"code_sha256_prefix":"cbf275ea495f3bfc","entry":"MutualModule1","repo":"fanyang587/MGL","repo_kind":"official","path":"model/mglnet.py","file_url":"https://github.com/fanyang587/MGL/blob/HEAD/model/mglnet.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":"cbf275ea495f3bfc"}},{"code_sha256_prefix":"e51323d67f031599","entry":"MutualNet","repo":"fanyang587/MGL","repo_kind":"official","path":"model/mglnet.py","file_url":"https://github.com/fanyang587/MGL/blob/HEAD/model/mglnet.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":"e51323d67f031599"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}