Skip to content

Commit

Permalink
fix: dedode w steerer matching doc test (kornia#2983)
Browse files Browse the repository at this point in the history
  • Loading branch information
johnnv1 authored Aug 15, 2024
1 parent 43bf403 commit 5b18fa2
Show file tree
Hide file tree
Showing 2 changed files with 15 additions and 17 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/scheduled_test_cpu.yml
Original file line number Diff line number Diff line change
Expand Up @@ -64,4 +64,4 @@ jobs:
docs:
uses: kornia/workflows/.github/workflows/docs.yml@v1.10.1
with:
python-version: "3.11"
python-version: '["3.11"]'
30 changes: 14 additions & 16 deletions kornia/feature/matching.py
Original file line number Diff line number Diff line change
Expand Up @@ -353,26 +353,24 @@ class DescriptorMatcherWithSteerer(Module):
>>> device = K.utils.get_cuda_or_mps_device_if_available()
>>> img1 = torch.randn([1, 3, 768, 768], device=device)
>>> img2 = torch.randn([1, 3, 768, 768], device=device)
>>> dedode = KF.DeDoDe.from_pretrained(
>>> detector_weights="L-C4-v2", descriptor_weights="B-SO2"
>>> ).to(device)
>>> dedode = KF.DeDoDe.from_pretrained(detector_weights="L-C4-v2", descriptor_weights="B-SO2").to(device)
>>> steerer_order = 8 # discretisation order of rotation angles
>>> steerer = KF.steerers.DiscreteSteerer.create_dedode_default(
>>> generator_type="SO2", steerer_order=steerer_order
>>> ).to(device)
... generator_type="SO2", steerer_order=steerer_order
... )
>>> steerer = steerer.to(device)
>>> matcher = KF.matching.DescriptorMatcherWithSteerer(
>>> steerer=steerer, steerer_order=steerer_order, steer_mode="global",
>>> match_mode="smnn", th=0.98,
>>> )
... steerer=steerer, steerer_order=steerer_order, steer_mode="global", match_mode="smnn", th=0.98
... )
>>> with torch.inference_mode():
>>> kps1, scores1, descs1 = dedode(img1, n=20_000)
>>> kps2, scores2, descs2 = dedode(img2, n=20_000)
>>> kps1, kps2, descs1, descs2 = kps1[0], kps2[0], descs1[0], descs2[0]
>>> dists, idxs, num_rot = matcher(
>>> descs1, descs2, normalize=True, subset_size=1000,
>>> )
>>> print(f"{idxs.shape[0]} tentative matches with steered DeDoDe")
>>> print(f"at rotation of {num_rot * 360 / steerer_order} degrees")
... kps1, scores1, descs1 = dedode(img1, n=20_000)
... kps2, scores2, descs2 = dedode(img2, n=20_000)
... kps1, kps2, descs1, descs2 = kps1[0], kps2[0], descs1[0], descs2[0]
... dists, idxs, num_rot = matcher(
... descs1, descs2, normalize=True, subset_size=1000,
... )
>>> # print(f"{idxs.shape[0]} tentative matches with steered DeDoDe")
>>> # print(f"at rotation of {num_rot * 360 / steerer_order} degrees")
"""

def __init__(
Expand Down

0 comments on commit 5b18fa2

Please sign in to comment.