{"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/content-adaptive-non-local-convolution-for","title":"Content-Adaptive Non-Local Convolution for Remote Sensing Pansharpening","arxiv_id":"2404.07543","date":"2024-04-11","proceeding":"CVPR 2024 1","authors":["Yule Duan","Xiao Wu","Haoyu Deng","Liang-Jian Deng"],"abstract":"Currently, machine learning-based methods for remote sensing pansharpening have progressed rapidly. However, existing pansharpening methods often do not fully exploit differentiating regional information in non-local spaces, thereby limiting the effectiveness of the methods and resulting in redundant learning parameters. In this paper, we introduce a so-called content-adaptive non-local convolution (CANConv), a novel method tailored for remote sensing image pansharpening. Specifically, CANConv employs adaptive convolution, ensuring spatial adaptability, and incorporates non-local self-similarity through the similarity relationship partition (SRP) and the partition-wise adaptive convolution (PWAC) sub-modules. Furthermore, we also propose a corresponding network architecture, called CANNet, which mainly utilizes the multi-scale self-similarity. Extensive experiments demonstrate the superior performance of CANConv, compared with recent promising fusion methods. Besides, we substantiate the method's effectiveness through visualization, ablation experiments, and comparison with existing methods on multiple test sets. The source code is publicly available at https://github.com/duanyll/CANConv.","url_abs":"https://arxiv.org/abs/2404.07543v1","url_pdf":"https://arxiv.org/pdf/2404.07543v1.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":"content-adaptive-non-local-convolution-for","repo_url":"https://github.com/duanyll/canconv","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":null}],"tasks":[{"task_slug":"pansharpening","task_name":"Pansharpening"}],"methods":[{"method_slug":"convolution","method_name":"Convolution"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2404.07543","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2404.07543"}},"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/duanyll/CANConv","reach":null}],"summary":{"ran":2,"ran_fixture":1,"unverified":1},"by_repo_kind":{"official":{"samples":4,"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":4,"samples":[{"code_sha256_prefix":"4878f7d4bb696bf5","entry":"KMeans","repo":"duanyll/CANConv","repo_kind":"official","path":"canconv/layers/canconv.py","file_url":"https://github.com/duanyll/CANConv/blob/HEAD/canconv/layers/canconv.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"GPL-3.0","inline_ok":false,"mcp_get_code":{"code_sha256":"4878f7d4bb696bf5"}},{"code_sha256_prefix":"bccfaab459caf521","entry":"kmeans","repo":"duanyll/CANConv","repo_kind":"official","path":"canconv/layers/canconv.py","file_url":"https://github.com/duanyll/CANConv/blob/HEAD/canconv/layers/canconv.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"GPL-3.0","inline_ok":false,"mcp_get_code":{"code_sha256":"bccfaab459caf521"}},{"code_sha256_prefix":"af67b3c21ca8c065","entry":"kmeans_batched","repo":"duanyll/CANConv","repo_kind":"official","path":"canconv/layers/canconv.py","file_url":"https://github.com/duanyll/CANConv/blob/HEAD/canconv/layers/canconv.py","link_basis":"first_harvest_node","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"GPL-3.0","inline_ok":false,"mcp_get_code":{"code_sha256":"af67b3c21ca8c065"}},{"code_sha256_prefix":"a4f1b11c2d71a394","entry":"CANConv","repo":"duanyll/CANConv","repo_kind":"official","path":"canconv/layers/canconv.py","file_url":"https://github.com/duanyll/CANConv/blob/HEAD/canconv/layers/canconv.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"GPL-3.0","inline_ok":false,"mcp_get_code":{"code_sha256":"a4f1b11c2d71a394"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}