{"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/superpoint-self-supervised-interest-point","title":"SuperPoint: Self-Supervised Interest Point Detection and Description","arxiv_id":"1712.07629","date":"2017-12-20","proceeding":null,"authors":["Daniel DeTone","Tomasz Malisiewicz","Andrew Rabinovich"],"abstract":"This paper presents a self-supervised framework for training interest point\ndetectors and descriptors suitable for a large number of multiple-view geometry\nproblems in computer vision. As opposed to patch-based neural networks, our\nfully-convolutional model operates on full-sized images and jointly computes\npixel-level interest point locations and associated descriptors in one forward\npass. We introduce Homographic Adaptation, a multi-scale, multi-homography\napproach for boosting interest point detection repeatability and performing\ncross-domain adaptation (e.g., synthetic-to-real). Our model, when trained on\nthe MS-COCO generic image dataset using Homographic Adaptation, is able to\nrepeatedly detect a much richer set of interest points than the initial\npre-adapted deep model and any other traditional corner detector. The final\nsystem gives rise to state-of-the-art homography estimation results on HPatches\nwhen compared to LIFT, SIFT and ORB.","url_abs":"http://arxiv.org/abs/1712.07629v4","url_pdf":"http://arxiv.org/pdf/1712.07629v4.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":"superpoint-self-supervised-interest-point","repo_url":"https://github.com/magicleap/SuperPointPretrainedNetwork","is_official":1,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"unanswered"}},{"paper_slug":"superpoint-self-supervised-interest-point","repo_url":"https://github.com/AliYoussef97/SuperPoint-PrP","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"unanswered"}},{"paper_slug":"superpoint-self-supervised-interest-point","repo_url":"https://github.com/AwaleSajil/SuperGlue_Demo_Modified1","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"NOASSERTION"}},{"paper_slug":"superpoint-self-supervised-interest-point","repo_url":"https://github.com/ChanWoo25/SuperPoint2CPP","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"none","reach":{"status":"unanswered"}},{"paper_slug":"superpoint-self-supervised-interest-point","repo_url":"https://github.com/Hanson0910/MNNSuperGlue","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"none","reach":{"status":"unanswered"}},{"paper_slug":"superpoint-self-supervised-interest-point","repo_url":"https://github.com/JeeseongKim/SuperGlue","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"NOASSERTION"}},{"paper_slug":"superpoint-self-supervised-interest-point","repo_url":"https://github.com/KimSinjeong/SuperPoint_URP","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"unanswered"}},{"paper_slug":"superpoint-self-supervised-interest-point","repo_url":"https://github.com/Kolkir/feature-point-cnn","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"unanswered"}},{"paper_slug":"superpoint-self-supervised-interest-point","repo_url":"https://github.com/Kolkir/superpoint","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"unanswered"}},{"paper_slug":"superpoint-self-supervised-interest-point","repo_url":"https://github.com/MagicLeapResearch/SuperPointPretrainedNetwork","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"unanswered"}},{"paper_slug":"superpoint-self-supervised-interest-point","repo_url":"https://github.com/MichiganLu/SuperPoint_tensorflow_testing","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"tf","reach":{"status":"unanswered"}},{"paper_slug":"superpoint-self-supervised-interest-point","repo_url":"https://github.com/Skye-Jiang/SuperPoint-Acceleration","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"tf","reach":{"status":"unanswered"}},{"paper_slug":"superpoint-self-supervised-interest-point","repo_url":"https://github.com/Thomacdebabo/KP2Dtiny","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"tf","reach":{"status":"unanswered"}},{"paper_slug":"superpoint-self-supervised-interest-point","repo_url":"https://github.com/Zasumn/Double_Net_Distillation","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"tf","reach":null},{"paper_slug":"superpoint-self-supervised-interest-point","repo_url":"https://github.com/alekseychuiko/SuperPointMagic","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"unanswered"}},{"paper_slug":"superpoint-self-supervised-interest-point","repo_url":"https://github.com/alekseychuiko/SuperPointMmmfarrell","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"tf","reach":{"status":"unanswered"}},{"paper_slug":"superpoint-self-supervised-interest-point","repo_url":"https://github.com/alekseychuiko/Superpoint","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"tf","reach":{"status":"unanswered"}},{"paper_slug":"superpoint-self-supervised-interest-point","repo_url":"https://github.com/borglab/gtsfm","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"none","reach":{"status":"ok","spdx":"NOASSERTION"}},{"paper_slug":"superpoint-self-supervised-interest-point","repo_url":"https://github.com/eric-yyjau/pytorch-superpoint","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"unanswered"}},{"paper_slug":"superpoint-self-supervised-interest-point","repo_url":"https://github.com/fabio-sim/LightGlue-ONNX","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null},{"paper_slug":"superpoint-self-supervised-interest-point","repo_url":"https://github.com/gabriel-sgama/semantic-superpoint","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null},{"paper_slug":"superpoint-self-supervised-interest-point","repo_url":"https://github.com/huggingface/transformers","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null},{"paper_slug":"superpoint-self-supervised-interest-point","repo_url":"https://github.com/magicleap/SuperGluePretrainedNetwork","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"NOASSERTION"}},{"paper_slug":"superpoint-self-supervised-interest-point","repo_url":"https://github.com/omercohen93/superpoint-pytorch","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null},{"paper_slug":"superpoint-self-supervised-interest-point","repo_url":"https://github.com/picotank/testproject","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"unanswered"}},{"paper_slug":"superpoint-self-supervised-interest-point","repo_url":"https://github.com/rpautrat/SuperPoint","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"tf","reach":null},{"paper_slug":"superpoint-self-supervised-interest-point","repo_url":"https://github.com/saranshqm/Visual-Odometry","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"none","reach":{"status":"unanswered"}},{"paper_slug":"superpoint-self-supervised-interest-point","repo_url":"https://github.com/tzvikif/SuperGlue","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null},{"paper_slug":"superpoint-self-supervised-interest-point","repo_url":"https://github.com/ucuapps/openglue","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}},{"paper_slug":"superpoint-self-supervised-interest-point","repo_url":"https://github.com/vcowwy/SuperGlue_paddle","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"paddle","reach":{"status":"unanswered"}},{"paper_slug":"superpoint-self-supervised-interest-point","repo_url":"https://github.com/vcowwy/paddle-superpoint","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"paddle","reach":{"status":"unanswered"}},{"paper_slug":"superpoint-self-supervised-interest-point","repo_url":"https://github.com/MindCode-4/code-5/tree/main/superpoint","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":0,"framework":"mindspore","reach":{"status":"ok","spdx":"Apache-2.0"}},{"paper_slug":"superpoint-self-supervised-interest-point","repo_url":"https://github.com/bhyun-kim/superpoint-jax","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":0,"framework":"jax","reach":{"status":"unanswered"}},{"paper_slug":"superpoint-self-supervised-interest-point","repo_url":"https://github.com/pwc-1/Paper-10/tree/main/superpoint","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":0,"framework":"mindspore","reach":null},{"paper_slug":"superpoint-self-supervised-interest-point","repo_url":"https://github.com/smj007/Superpoint_Pytorch","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":0,"framework":"pytorch","reach":{"status":"unanswered"}},{"paper_slug":"superpoint-self-supervised-interest-point","repo_url":"https://github.com/yangyucheng000/University/tree/main/model-3/superpoint","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":0,"framework":"mindspore","reach":null}],"tasks":[{"task_slug":"domain-adaptation","task_name":"Domain Adaptation"},{"task_slug":"homography-estimation","task_name":"Homography Estimation"},{"task_slug":"interest-point-detection","task_name":"Interest Point Detection"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=1712.07629","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"1712.07629"}},"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/huggingface/transformers","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/tzvikif/SuperGlue","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/gabriel-sgama/semantic-superpoint","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/Kolkir/superpoint","reach":{"status":"unanswered"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/alekseychuiko/Superpoint","reach":{"status":"unanswered"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/Hanson0910/MNNSuperGlue","reach":{"status":"unanswered"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/ChanWoo25/SuperPoint2CPP","reach":{"status":"unanswered"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/Skye-Jiang/SuperPoint-Acceleration","reach":{"status":"unanswered"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/rpautrat/SuperPoint","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/JeeseongKim/SuperGlue","reach":{"status":"ok","spdx":"NOASSERTION"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/alekseychuiko/SuperPointMagic","reach":{"status":"unanswered"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/MindCode-4/code-5/tree/main/superpoint","reach":{"status":"ok","spdx":"Apache-2.0"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/magicleap/SuperPointPretrainedNetwork","reach":{"status":"unanswered"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/omercohen93/superpoint-pytorch","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/Thomacdebabo/KP2Dtiny","reach":{"status":"unanswered"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/picotank/testproject","reach":{"status":"unanswered"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/smj007/Superpoint_Pytorch","reach":{"status":"unanswered"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/AwaleSajil/SuperGlue_Demo_Modified1","reach":{"status":"ok","spdx":"NOASSERTION"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/alekseychuiko/SuperPointMmmfarrell","reach":{"status":"unanswered"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/Kolkir/feature-point-cnn","reach":{"status":"unanswered"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/Zasumn/Double_Net_Distillation","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/KimSinjeong/SuperPoint_URP","reach":{"status":"unanswered"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/MagicLeapResearch/SuperPointPretrainedNetwork","reach":{"status":"unanswered"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/vcowwy/paddle-superpoint","reach":{"status":"unanswered"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/ucuapps/openglue","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran_fixture":5,"ran_draft_wrong":5,"ran_violates":1},"by_repo_kind":{"listed":{"samples":11,"ran":11,"repositories":5}},"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":6,"samples":[{"code_sha256_prefix":"4da1c4b3908e8d71","entry":"MLP","repo":"tzvikif/SuperGlue","repo_kind":"listed","path":"models/superglue.py","file_url":"https://github.com/tzvikif/SuperGlue/blob/HEAD/models/superglue.py","link_basis":"first_harvest_node","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"4da1c4b3908e8d71"}},{"code_sha256_prefix":"70702edb93d9116a","entry":"attention","repo":"tzvikif/SuperGlue","repo_kind":"listed","path":"models/superglue.py","file_url":"https://github.com/tzvikif/SuperGlue/blob/HEAD/models/superglue.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":true,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"70702edb93d9116a"}},{"code_sha256_prefix":"0b0dedfbcb26bbcd","entry":"batched_nms","repo":"rpautrat/SuperPoint","repo_kind":"listed","path":"superpoint_pytorch.py","file_url":"https://github.com/rpautrat/SuperPoint/blob/HEAD/superpoint_pytorch.py","link_basis":"first_harvest_node","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"0b0dedfbcb26bbcd"}},{"code_sha256_prefix":"73976eb88d15405e","entry":"find_files_with_ext","repo":"gabriel-sgama/semantic-superpoint","repo_kind":"listed","path":"evaluation.py","file_url":"https://github.com/gabriel-sgama/semantic-superpoint/blob/HEAD/evaluation.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"73976eb88d15405e"}},{"code_sha256_prefix":"c35bcfabe25f6b50","entry":"get_descriptors","repo":"omercohen93/superpoint-pytorch","repo_kind":"listed","path":"models/superpoint.py","file_url":"https://github.com/omercohen93/superpoint-pytorch/blob/HEAD/models/superpoint.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"c35bcfabe25f6b50"}},{"code_sha256_prefix":"2f8e524a282482b9","entry":"isfloat","repo":"gabriel-sgama/semantic-superpoint","repo_kind":"listed","path":"evaluation.py","file_url":"https://github.com/gabriel-sgama/semantic-superpoint/blob/HEAD/evaluation.py","link_basis":"first_harvest_node","language":"python","status":"ran_violates","verification_level":1,"contract_check":"VIOLATES","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"2f8e524a282482b9"}},{"code_sha256_prefix":"46818e125ab57432","entry":"normalize_keypoints","repo":"tzvikif/SuperGlue","repo_kind":"listed","path":"models/superglue.py","file_url":"https://github.com/tzvikif/SuperGlue/blob/HEAD/models/superglue.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":"invariant","behaviour_fingerprint":false,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"46818e125ab57432"}},{"code_sha256_prefix":"ae6ed26a8e038688","entry":"proc_all_image","repo":"Zasumn/Double_Net_Distillation","repo_kind":"listed","path":"evaluation/evaluations.py","file_url":"https://github.com/Zasumn/Double_Net_Distillation/blob/HEAD/evaluation/evaluations.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"ae6ed26a8e038688"}},{"code_sha256_prefix":"5c5ec48a80d99863","entry":"sample_descriptors","repo":"rpautrat/SuperPoint","repo_kind":"listed","path":"superpoint_pytorch.py","file_url":"https://github.com/rpautrat/SuperPoint/blob/HEAD/superpoint_pytorch.py","link_basis":"first_harvest_node","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"5c5ec48a80d99863"}},{"code_sha256_prefix":"29fcca902e5d12cf","entry":"scale_H","repo":"tzvikif/SuperGlue","repo_kind":"listed","path":"demo_superglue.py","file_url":"https://github.com/tzvikif/SuperGlue/blob/HEAD/demo_superglue.py","link_basis":"first_harvest_node","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"29fcca902e5d12cf"}},{"code_sha256_prefix":"dcbf98e240d2ed6e","entry":"select_top_k_keypoints","repo":"rpautrat/SuperPoint","repo_kind":"listed","path":"superpoint_pytorch.py","file_url":"https://github.com/rpautrat/SuperPoint/blob/HEAD/superpoint_pytorch.py","link_basis":"first_harvest_node","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":"deterministic","behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"dcbf98e240d2ed6e"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}