← 开源
google-research

omniglue

Code release for CVPR'24 submission 'OmniGlue'

ModelsVision modelsPython
在 GitHub 打开
增长势头
+024 小时新增 Star0.0%
711
Star
76
Fork
+0
本周
4
贡献者
创建于 2024-05-07 · 更新于 2026-09-09 · 今日第 14690 名
主要开发者
arjunkarpurEunchan24Kaminyou

google-research/omniglue 排名第 14,690,有 711 个星标。

同类别比较

google-research/omniglue 排名第 14,690,此处有 8 个同类条目;gitmylo/bark-voice-cloning-HuBERT-quantizer 排名第 14,689。

同类别比较
名称排名指标
noahzn/Lite-Mono14,615
语言:
Python
星标数:
717
分叉数:
72
简介:
[CVPR2023] Lite-Mono: A Lightweight CNN and Transformer Architecture for Self-Supervised Monocular Depth Estimation
SkyworkAI/SkyReels-A214,659
语言:
Python
星标数:
713
分叉数:
67
简介:
SkyReels-A2: Compose anything in video diffusion transformers
taokz/BiomedGPT14,668
语言:
Python
星标数:
713
分叉数:
78
简介:
BiomedGPT: A Generalist Vision-Language Foundation Model for Diverse Biomedical Tasks
gitmylo/bark-voice-cloning-HuBERT-quantizer14,689
语言:
Python
星标数:
711
分叉数:
115
简介:
The code for the bark-voicecloning model. Training and inference.
naver/biobert-pretrained14,709
星标数:
710
分叉数:
92
简介:
BioBERT: a pre-trained biomedical language representation model for biomedical text mining
microsoft/BiomedParse14,720
语言:
Python
星标数:
709
分叉数:
104
简介:
BiomedParse: A Foundation Model for Joint Segmentation, Detection, and Recognition of Biomedical Objects Across Nine Modalities
melodysdreamj/WizardVicunaLM14,733
星标数:
708
分叉数:
34
简介:
LLM that combines the principles of wizardLM and vicunaLM
salesforce/progen14,745
语言:
Python
星标数:
707
分叉数:
139
简介:
Official release of the ProGen models
关键参数与规格
关键参数与规格
参数值
语言Python
类别Models
子类别Vision models
星标数711
分叉数76
贡献者4
创建日期2024-05-07
更新日期2026-09-09
1 天星标数0
7 天星标数0
排名14,690
上次排名14,537
排名变化-153
7 天星标排名14,606
上次 7 天星标排名14,616
7 天星标排名变化10
总星标排名14,712
上次总星标排名14,685
总星标排名变化-27
国家USA
README 摘录

**Abstract:** The image matching field has been witnessing a continuous emergence of novel learnable feature matching techniques, with ever-improving performance on conventional benchmarks. However, our investigation shows that despite these gains, their potential for real-world applications is restricted by their limited generalization capabilities to novel image domains. In this paper, we introduce OmniGlue, the first learnable image matcher that is designed with generalization as a core principle. OmniGlue leverages broad knowledge from a vision foundation model to guide

the feature matching process, boosting generalization to domains not seen at training time. Additionally, we propose a novel keypoint position-guided attention mechanism which disentangles spatial and appearance information, leading to enhanced matching descriptors. We perform comprehensive experiments on a suite of 6 datasets with varied image domains, including scene-level, object-centric and aerial images. OmniGlue’s novel components lead to relative gains on unseen domains of 18. 8% with respect to a directly comparable reference model, while also

outperforming the recent LightGlue method by 10. Installation First, use pip to install : Then, download the following models to Direct download links: [[SuperPoint weights]]( from github. com/rpautrat/SuperPoint [[DINOv2 weights]]( from github. com/facebookresearch/dinov2 (ViT-B/14 distilled backbone without register). [[OmniGlue weights]]( Usage The code snippet below outlines how you can perform OmniGlue inference in your own python codebase. Demo contains example usage of the module. To try with your own images, replace and with your own

filepaths. Expected output: Repo TODOs ~~Provide example usage script. ~~ ~~Add to image matching webui~~ (credit: @Vincentqyw) Support matching for pre-extracted features. Release eval pipelines for in-domain (MegaDepth). Release eval pipelines for all out-of-domain datasets.

常见问题

记录了多少星标和分叉?

google-research/omniglue 有 711 个星标和 76 个分叉。

仓库排名是多少?

google-research/omniglue 排名第 14,690。

记录的语言和类别是什么?

google-research/omniglue 有 711 个星标,语言为 Python,类别为 Models。

哪个仓库排名最接近?

google-research/omniglue 与 gitmylo/bark-voice-cloning-HuBERT-quantizer 比较,后者排名第 14,689,有 711 个星标。

README

[CVPR'24] Code release for OmniGlue

[Hanwen Jiang](https://hwjiang1510.github.io/),
[Arjun Karpur](https://scholar.google.com/citations?user=jgSItF4AAAAJ),
[Bingyi Cao](https://scholar.google.com/citations?user=7EeSOcgAAAAJ),
[Qixing Huang](https://www.cs.utexas.edu/~huangqx/),
[Andre Araujo](https://andrefaraujo.github.io/)

[Project Page](https://hwjiang1510.github.io/OmniGlue/) |
[Paper](https://arxiv.org/abs/2405.12979) |
[Usage](#installation) |
[Demo](https://huggingface.co/spaces/qubvel-hf/omniglue)

Official code release for the CVPR 2024 paper: OmniGlue: Generalizable Feature Matching with Foundation Model Guidance.

Abstract: The image matching field has been witnessing a continuous emergence of novel learnable feature matching techniques, with ever-improving performance on conventional benchmarks. However, our investigation shows that despite these gains, their potential for real-world applications is restricted by their limited generalization capabilities to novel image domains. In this paper, we introduce OmniGlue, the first learnable image matcher that is designed with generalization as a core principle. OmniGlue leverages broad knowledge from a vision foundation model to guide the feature matching process, boosting generalization to domains not seen at training time. Additionally, we propose a novel keypoint position-guided attention mechanism which disentangles spatial and appearance information, leading to enhanced matching descriptors. We perform comprehensive experiments on a suite of 6 datasets with varied image domains, including scene-level, object-centric and aerial images. OmniGlue’s novel components lead to relative gains on unseen domains of 18.8% with respect to a directly comparable reference model, while also outperforming the recent LightGlue method by 10.1% relatively.

Installation

First, use pip to install omniglue:

conda create -n omniglue pip
conda activate omniglue

git clone https://github.com/google-research/omniglue.git
cd omniglue
pip install -e .

Then, download the following models to ./models/

# Download to ./models/ dir.
mkdir models
cd models

# SuperPoint.
git clone https://github.com/rpautrat/SuperPoint.git
mv SuperPoint/pretrained_models/sp_v6.tgz . && rm -rf SuperPoint
tar zxvf sp_v6.tgz && rm sp_v6.tgz

# DINOv2 - vit-b14.
wget https://dl.fbaipublicfiles.com/dinov2/dinov2_vitb14/dinov2_vitb14_pretrain.pth

# OmniGlue.
wget https://storage.googleapis.com/omniglue/og_export.zip
unzip og_export.zip && rm og_export.zip

Direct download links:

Usage

The code snippet below outlines how you can perform OmniGlue inference in your own python codebase.


import omniglue

image0 = ... # load images from file into np.array
image1 = ...

og = omniglue.OmniGlue(
  og_export='./models/og_export',
  sp_export='./models/sp_v6',
  dino_export='./models/dinov2_vitb14_pretrain.pth',
)

match_kp0s, match_kp1s, match_confidences = og.FindMatches(image0, image1)
# Output:
#   match_kp0: (N, 2) array of (x,y) coordinates in image0.
#   match_kp1: (N, 2) array of (x,y) coordinates in image1.
#   match_confidences: N-dim array of each of the N match confidence scores.

Demo

demo.py contains example usage of the omniglue module. To try with your own images, replace ./res/demo1.jpg and ./res/demo2.jpg with your own filepaths.

conda activate omniglue
python demo.py ./res/demo1.jpg ./res/demo2.jpg
# 

Expected output:

Repo TODOs

  • Provide demo.py example usage script.
  • Add to image matching webui (credit: @Vincentqyw)
  • Support matching for pre-extracted features.
  • Release eval pipelines for in-domain (MegaDepth).
  • Release eval pipelines for all out-of-domain datasets.

BibTex

@inproceedings{jiang2024Omniglue,
   title={OmniGlue: Generalizable Feature Matching with Foundation Model Guidance},
   author={Jiang, Hanwen and Karpur, Arjun and Cao, Bingyi and Huang, Qixing and Araujo, Andre},
   booktitle={Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR)},
   year={2024},
}

This is not an officially supported Google product.

排名相邻
同类项目