{"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/arxiv-2609-00666","title":"DGNet: Dual-knowledge Guided Network for Infrared Small Target Detection","arxiv_id":"2609.00666","date":"2026-09-01","proceeding":null,"authors":["Chenglong Yu","Mingzhu Xu","Jing Wang","Tongtong Wang","Pingping Miao","Liqiang Nie"],"abstract":"InfRared Small Target Detection (IRSTD) is a prominent and challenging task in computer vision. In recent years, text-guided methods have significantly improved detection performance. However, they still suffer from two key limitations. First, a single text description simultaneously modeling both background and target leads to semantic entanglement, which contradicts the objective of background suppression and target enhancement. Second, reliance on image-specific textual prompts (requiring additional external models such as CLIP during inference) results in deployment constraints. To address these issues, we propose a novel Dual-knowledge Guided Network (DGNet) based on multiple generalizable texts. Specifically, we design a Prior-knowledge Wavelet Modulation (PWM) module, which leverages dual textual priors that separately characterize large-scale backgrounds and sparse targets to effectively disentangle and modulate entangled semantics in the frequency domain. Furthermore, we introduce a Consensus-knowledge Directional Alignment (CDA) loss, which models the initial state and the ideal target across samples as `complex background' and `bright target', respectively, thereby constructing a clear and unified directional optimization trajectory for the model. Extensive experiments on three public datasets demonstrate the superior performance of DGNet and the effectiveness of each component. The source code is available at https://github.com/iLearn-Lab/MM26-DGNet.","url_abs":"https://arxiv.org/abs/2609.00666","url_pdf":"https://arxiv.org/pdf/2609.00666","source":{"archive":null,"snapshot":"2025-07-28","note":"not in the Papers with Code archive (frozen at the snapshot)","row_kind":"graph","title_abstract_authors_date":"arXiv metadata, CC0 1.0 (https://info.arxiv.org/help/license)"},"code_links":[],"tasks":[],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2609.00666","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2609.00666"}},"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":[{"mentioned_in_github":null,"is_official":null,"provenance":"deterministic:regex_extraction","mentioned_in_paper":null,"url":"https://github.com/iLearn-Lab/MM26-DGNet","reach":{"status":"ok","spdx":"Apache-2.0"}}],"summary":{"unverified":13},"by_repo_kind":{"found_in_text":{"samples":13,"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":"6237fa9642219064","entry":"batch_intersection_union","repo":"iLearn-Lab/MM26-DGNet","repo_kind":"found_in_text","path":"metrics.py","file_url":"https://github.com/iLearn-Lab/MM26-DGNet/blob/HEAD/metrics.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":"6237fa9642219064"}},{"code_sha256_prefix":"4dfe8308e4ca4fc5","entry":"batch_pix_accuracy","repo":"iLearn-Lab/MM26-DGNet","repo_kind":"found_in_text","path":"metrics.py","file_url":"https://github.com/iLearn-Lab/MM26-DGNet/blob/HEAD/metrics.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":"4dfe8308e4ca4fc5"}},{"code_sha256_prefix":"b872a23720f7279b","entry":"controlled_background_statistics_augmentation","repo":"iLearn-Lab/MM26-DGNet","repo_kind":"found_in_text","path":"dataset.py","file_url":"https://github.com/iLearn-Lab/MM26-DGNet/blob/HEAD/dataset.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":"b872a23720f7279b"}},{"code_sha256_prefix":"699b51ce9a741830","entry":"create_wavelet_filter","repo":"iLearn-Lab/MM26-DGNet","repo_kind":"found_in_text","path":"model/dgnet/wavelet.py","file_url":"https://github.com/iLearn-Lab/MM26-DGNet/blob/HEAD/model/dgnet/wavelet.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":"699b51ce9a741830"}},{"code_sha256_prefix":"107a6ad0d5281629","entry":"encode_prompt","repo":"iLearn-Lab/MM26-DGNet","repo_kind":"found_in_text","path":"prepare_text_features.py","file_url":"https://github.com/iLearn-Lab/MM26-DGNet/blob/HEAD/prepare_text_features.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":"107a6ad0d5281629"}},{"code_sha256_prefix":"8576f9714d54d349","entry":"evaluate_roc","repo":"iLearn-Lab/MM26-DGNet","repo_kind":"found_in_text","path":"roc.py","file_url":"https://github.com/iLearn-Lab/MM26-DGNet/blob/HEAD/roc.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":"8576f9714d54d349"}},{"code_sha256_prefix":"6fa906eafe8a0dda","entry":"get_img_norm_cfg","repo":"iLearn-Lab/MM26-DGNet","repo_kind":"found_in_text","path":"utils.py","file_url":"https://github.com/iLearn-Lab/MM26-DGNet/blob/HEAD/utils.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":"6fa906eafe8a0dda"}},{"code_sha256_prefix":"6ced86018b4b4470","entry":"get_optimizer","repo":"iLearn-Lab/MM26-DGNet","repo_kind":"found_in_text","path":"utils.py","file_url":"https://github.com/iLearn-Lab/MM26-DGNet/blob/HEAD/utils.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":"6ced86018b4b4470"}},{"code_sha256_prefix":"218af4467355692b","entry":"inverse_wavelet_transform","repo":"iLearn-Lab/MM26-DGNet","repo_kind":"found_in_text","path":"model/dgnet/wavelet.py","file_url":"https://github.com/iLearn-Lab/MM26-DGNet/blob/HEAD/model/dgnet/wavelet.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":"218af4467355692b"}},{"code_sha256_prefix":"adad3af0273d069f","entry":"maximum_component_retention","repo":"iLearn-Lab/MM26-DGNet","repo_kind":"found_in_text","path":"dataset.py","file_url":"https://github.com/iLearn-Lab/MM26-DGNet/blob/HEAD/dataset.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":"adad3af0273d069f"}},{"code_sha256_prefix":"95b3a763a93f5c20","entry":"normalize_image","repo":"iLearn-Lab/MM26-DGNet","repo_kind":"found_in_text","path":"utils.py","file_url":"https://github.com/iLearn-Lab/MM26-DGNet/blob/HEAD/utils.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":"95b3a763a93f5c20"}},{"code_sha256_prefix":"511019bc0e495448","entry":"target_protected_gaussian_blur","repo":"iLearn-Lab/MM26-DGNet","repo_kind":"found_in_text","path":"dataset.py","file_url":"https://github.com/iLearn-Lab/MM26-DGNet/blob/HEAD/dataset.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":"511019bc0e495448"}},{"code_sha256_prefix":"4b18272254b9dc36","entry":"wavelet_transform","repo":"iLearn-Lab/MM26-DGNet","repo_kind":"found_in_text","path":"model/dgnet/wavelet.py","file_url":"https://github.com/iLearn-Lab/MM26-DGNet/blob/HEAD/model/dgnet/wavelet.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":"4b18272254b9dc36"}}]},"arxiv_metadata":{"licence":"arXiv metadata, CC0 1.0 (https://info.arxiv.org/help/license)","fields":["title","abstract","authors","date"],"primary_category":"cs.CV","source":"arxiv_daily_20260902.json"},"syntology_extracted_results":null}