Vincentqyw
add: superglue and dedode
6ba5875
raw
history blame
616 Bytes
import torch
import cv2
import numpy as np
from PIL import Image
from DeDoDe import dedode_detector_L
def draw_kpts(im, kpts):
kpts = [cv2.KeyPoint(x,y,1.) for x,y in kpts.cpu().numpy()]
im = np.array(im)
ret = cv2.drawKeypoints(im, kpts, None)
return ret
detector = dedode_detector_L(weights = torch.load("dedode_detector_l.pth"))
im_path = "assets/im_A.jpg"
im = Image.open(im_path)
out = detector.detect_from_path(im_path, num_keypoints = 10_000)
W,H = im.size
kps = out["keypoints"]
kps = detector.to_pixel_coords(kps, H, W)
Image.fromarray(draw_kpts(im, kps[0])).save("demo/keypoints.png")