{"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/unknown-sniffer-for-object-detection-don-t","title":"Unknown Sniffer for Object Detection: Don't Turn a Blind Eye to Unknown Objects","arxiv_id":"2303.13769","date":"2023-03-24","proceeding":"CVPR 2023 1","authors":["Wenteng Liang","Feng Xue","Yihao Liu","Guofeng Zhong","Anlong Ming"],"abstract":"The recently proposed open-world object and open-set detection have achieved a breakthrough in finding never-seen-before objects and distinguishing them from known ones. However, their studies on knowledge transfer from known classes to unknown ones are not deep enough, resulting in the scanty capability for detecting unknowns hidden in the background. In this paper, we propose the unknown sniffer (UnSniffer) to find both unknown and known objects. Firstly, the generalized object confidence (GOC) score is introduced, which only uses known samples for supervision and avoids improper suppression of unknowns in the background. Significantly, such confidence score learned from known objects can be generalized to unknown ones. Additionally, we propose a negative energy suppression loss to further suppress the non-object samples in the background. Next, the best box of each unknown is hard to obtain during inference due to lacking their semantic information in training. To solve this issue, we introduce a graph-based determination scheme to replace hand-designed non-maximum suppression (NMS) post-processing. Finally, we present the Unknown Object Detection Benchmark, the first publicly benchmark that encompasses precision evaluation for unknown detection to our knowledge. Experiments show that our method is far better than the existing state-of-the-art methods.","url_abs":"https://arxiv.org/abs/2303.13769v3","url_pdf":"https://arxiv.org/pdf/2303.13769v3.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":"unknown-sniffer-for-object-detection-don-t","repo_url":"https://github.com/went-liang/unsniffer","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"Apache-2.0"}}],"tasks":[{"task_slug":"object","task_name":"Object"},{"task_slug":"object-detection","task_name":"Object Detection"},{"task_slug":"open-world-object-detection","task_name":"Open World Object Detection"},{"task_slug":"transfer-learning","task_name":"Transfer Learning"},{"task_slug":"object-detection-1","task_name":"object-detection"}],"methods":[],"datasets_introduced":[{"slug":"coco-mix","name":"COCO-Mix","full_name":""},{"slug":"coco-ood","name":"COCO-OOD","full_name":""}],"methods_introduced":[],"results":[{"leaderboard":"/sota/open-world-object-detection-on-coco-mix","task":"Open World Object Detection","dataset":"COCO-Mix","model":"unsniffer","rank_in_archive_order":1,"of":1,"metrics":{"unknown F1 score":"0.287","unknown-AP":"0.150"},"uses_additional_data":false},{"leaderboard":"/sota/open-world-object-detection-on-coco-ood","task":"Open World Object Detection","dataset":"COCO-OOD","model":"unsniffer","rank_in_archive_order":1,"of":1,"metrics":{"unknown F1 score":"0.479","unknown-AP":"0.454"},"uses_additional_data":false}],"syntology":{"syntology_url":"https://syntology.ai/paper/2303.13769","atlas_url":"https://app.syntology.ai/?focus=2303.13769","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2303.13769"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-25T09:33:49+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/went-liang/unsniffer","reach":{"status":"ok","spdx":"Apache-2.0"}}],"summary":{"ran":3,"ran_fixture":1},"by_repo_kind":{"official":{"samples":4,"ran":4,"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":"d2ac285b09b448cb","entry":"clamp_log_variance","repo":"went-liang/unsniffer","repo_kind":"official","path":"detection/modeling/modeling_utils.py","file_url":"https://github.com/went-liang/unsniffer/blob/HEAD/detection/modeling/modeling_utils.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"d2ac285b09b448cb"}},{"code_sha256_prefix":"5f5b17f6d41bc1b0","entry":"covariance_output_to_cholesky","repo":"went-liang/unsniffer","repo_kind":"official","path":"detection/modeling/modeling_utils.py","file_url":"https://github.com/went-liang/unsniffer/blob/HEAD/detection/modeling/modeling_utils.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"5f5b17f6d41bc1b0"}},{"code_sha256_prefix":"3aa86d0a61778718","entry":"get_probabilistic_loss_weight","repo":"went-liang/unsniffer","repo_kind":"official","path":"detection/modeling/modeling_utils.py","file_url":"https://github.com/went-liang/unsniffer/blob/HEAD/detection/modeling/modeling_utils.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"3aa86d0a61778718"}},{"code_sha256_prefix":"573ab018aa3f2e6f","entry":"permute_to_N_HWA_K","repo":"went-liang/unsniffer","repo_kind":"official","path":"detection/inference/retinanet_predictor.py","file_url":"https://github.com/went-liang/unsniffer/blob/HEAD/detection/inference/retinanet_predictor.py","link_basis":"harvester_set","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"573ab018aa3f2e6f"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}