{"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/pseudo-q-generating-pseudo-language-queries","title":"Pseudo-Q: Generating Pseudo Language Queries for Visual Grounding","arxiv_id":"2203.08481","date":"2022-03-16","proceeding":"CVPR 2022 1","authors":["Haojun Jiang","Yuanze Lin","Dongchen Han","Shiji Song","Gao Huang"],"abstract":"Visual grounding, i.e., localizing objects in images according to natural language queries, is an important topic in visual language understanding. The most effective approaches for this task are based on deep learning, which generally require expensive manually labeled image-query or patch-query pairs. To eliminate the heavy dependence on human annotations, we present a novel method, named Pseudo-Q, to automatically generate pseudo language queries for supervised training. Our method leverages an off-the-shelf object detector to identify visual objects from unlabeled images, and then language queries for these objects are obtained in an unsupervised fashion with a pseudo-query generation module. Then, we design a task-related query prompt module to specifically tailor generated pseudo language queries for visual grounding tasks. Further, in order to fully capture the contextual relationships between images and language queries, we develop a visual-language model equipped with multi-level cross-modality attention mechanism. Extensive experimental results demonstrate that our method has two notable benefits: (1) it can reduce human annotation costs significantly, e.g., 31% on RefCOCO without degrading original model's performance under the fully supervised setting, and (2) without bells and whistles, it achieves superior or comparable performance compared to state-of-the-art weakly-supervised visual grounding methods on all the five datasets we have experimented. Code is available at https://github.com/LeapLabTHU/Pseudo-Q.","url_abs":"https://arxiv.org/abs/2203.08481v2","url_pdf":"https://arxiv.org/pdf/2203.08481v2.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":"pseudo-q-generating-pseudo-language-queries","repo_url":"https://github.com/leaplabthu/pseudo-q","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"Apache-2.0"}}],"tasks":[{"task_slug":"language-modelling","task_name":"Language Modelling"},{"task_slug":"natural-language-queries","task_name":"Natural Language Queries"},{"task_slug":"visual-grounding","task_name":"Visual Grounding"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2203.08481","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2203.08481"}},"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/leaplabthu/pseudo-q","reach":{"status":"ok","spdx":"Apache-2.0"}},{"provenance":"deterministic:regex_extraction","url":"https://github.com/LeapLabTHU/Pseudo-Q","reach":{"status":"ok","spdx":"Apache-2.0"}}],"summary":{"ran":2,"unverified":11},"by_repo_kind":{"official":{"samples":13,"ran":2,"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":"e0451d070cb0b43e","entry":"build_vl_transformer","repo":"LeapLabTHU/Pseudo-Q","repo_kind":"official","path":"models/vl_transformer.py","file_url":"https://github.com/LeapLabTHU/Pseudo-Q/blob/HEAD/models/vl_transformer.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"e0451d070cb0b43e"}},{"code_sha256_prefix":"f4ac915e5456c67f","entry":"crop","repo":"LeapLabTHU/Pseudo-Q","repo_kind":"official","path":"datasets/transforms.py","file_url":"https://github.com/LeapLabTHU/Pseudo-Q/blob/HEAD/datasets/transforms.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"f4ac915e5456c67f"}},{"code_sha256_prefix":"694e413f977737ba","entry":"convert_examples_to_features","repo":"LeapLabTHU/Pseudo-Q","repo_kind":"official","path":"datasets/data_loader.py","file_url":"https://github.com/LeapLabTHU/Pseudo-Q/blob/HEAD/datasets/data_loader.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":"694e413f977737ba"}},{"code_sha256_prefix":"8aec679ea5e75af5","entry":"filter_detect_cls","repo":"LeapLabTHU/Pseudo-Q","repo_kind":"official","path":"pseudo_sample_generation/get_detection_results.py","file_url":"https://github.com/LeapLabTHU/Pseudo-Q/blob/HEAD/pseudo_sample_generation/get_detection_results.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":"8aec679ea5e75af5"}},{"code_sha256_prefix":"2e6c5c28154620d6","entry":"filter_detect_cls","repo":"LeapLabTHU/Pseudo-Q","repo_kind":"official","path":"pseudo_sample_generation/pseudo_query_generation.py","file_url":"https://github.com/LeapLabTHU/Pseudo-Q/blob/HEAD/pseudo_sample_generation/pseudo_query_generation.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":"2e6c5c28154620d6"}},{"code_sha256_prefix":"63fc3fd8a7bfffff","entry":"get_image_blob","repo":"LeapLabTHU/Pseudo-Q","repo_kind":"official","path":"pseudo_sample_generation/utils/extract_utils.py","file_url":"https://github.com/LeapLabTHU/Pseudo-Q/blob/HEAD/pseudo_sample_generation/utils/extract_utils.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":"63fc3fd8a7bfffff"}},{"code_sha256_prefix":"d614ca29b05d68ec","entry":"im_list_to_blob","repo":"LeapLabTHU/Pseudo-Q","repo_kind":"official","path":"pseudo_sample_generation/utils/extract_utils.py","file_url":"https://github.com/LeapLabTHU/Pseudo-Q/blob/HEAD/pseudo_sample_generation/utils/extract_utils.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":"d614ca29b05d68ec"}},{"code_sha256_prefix":"ba7829b0ee31bd57","entry":"is_cls_a_cloth","repo":"LeapLabTHU/Pseudo-Q","repo_kind":"official","path":"pseudo_sample_generation/pseudo_query_generation.py","file_url":"https://github.com/LeapLabTHU/Pseudo-Q/blob/HEAD/pseudo_sample_generation/pseudo_query_generation.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":"ba7829b0ee31bd57"}},{"code_sha256_prefix":"fd6435078cf70aa8","entry":"is_cls_a_people","repo":"LeapLabTHU/Pseudo-Q","repo_kind":"official","path":"pseudo_sample_generation/pseudo_query_generation.py","file_url":"https://github.com/LeapLabTHU/Pseudo-Q/blob/HEAD/pseudo_sample_generation/pseudo_query_generation.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":"fd6435078cf70aa8"}},{"code_sha256_prefix":"e4f50d4eeb6144e9","entry":"read_examples","repo":"LeapLabTHU/Pseudo-Q","repo_kind":"official","path":"datasets/data_loader.py","file_url":"https://github.com/LeapLabTHU/Pseudo-Q/blob/HEAD/datasets/data_loader.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":"e4f50d4eeb6144e9"}},{"code_sha256_prefix":"22d10e2294025703","entry":"resize_according_to_long_side","repo":"LeapLabTHU/Pseudo-Q","repo_kind":"official","path":"datasets/transforms.py","file_url":"https://github.com/LeapLabTHU/Pseudo-Q/blob/HEAD/datasets/transforms.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":"22d10e2294025703"}},{"code_sha256_prefix":"553ec6dfb15ff83b","entry":"resize_according_to_short_side","repo":"LeapLabTHU/Pseudo-Q","repo_kind":"official","path":"datasets/transforms.py","file_url":"https://github.com/LeapLabTHU/Pseudo-Q/blob/HEAD/datasets/transforms.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":"553ec6dfb15ff83b"}},{"code_sha256_prefix":"105ac2dc1417db62","entry":"yolo_loss","repo":"LeapLabTHU/Pseudo-Q","repo_kind":"official","path":"utils/loss_utils.py","file_url":"https://github.com/LeapLabTHU/Pseudo-Q/blob/HEAD/utils/loss_utils.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":"105ac2dc1417db62"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}