The Behavior of the cv2.ORB algorithm changes from version 4.1.2.30 to 4.2.0.32
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức phù hợp với người mới
- 35/100
- Loại issue
- Lỗi
- Độ rõ ràng
- Khá rõ ràng
- Mức độ hoạt động
- Đình trệ
- Công nghệ
- opencv, python
- Lĩnh vực
- computer-vision
Hướng nghiên cứu
Bắt đầu với trình tái hiện inline của alignImages và chạy nó với các phiên bản OpenCV-Python được liệt kê trên Windows 10 bằng các ảnh đầu vào giống hệt nhau. So sánh các keypoint ORB, các match, homography và thời gian chạy để xác định liệu hồi quy nằm trong package Python hay phần lõi OpenCV. Công việc được xem là hoàn tất khi hồi quy được giải thích và khắc phục, hoặc issue được chuyển đến dự án phù hợp kèm một trường hợp tái hiện tối thiểu.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Expected behaviour
I use the ORB image registration algorithm and it worked until 4.1.2.30. Same solution on same data!
Actual behaviour
From Version 4.1.2.32 to newest (4.5.1.48) it has a different (wrong) solution on the same data AND it needs about 3 times more time.
Steps to reproduce
def alignImages(im, imRef):
MAX_FEATURES = 1000
GOOD_MATCH_PERCENT = 0.5
# Detect ORB features and compute descriptors.
orb = cv2.ORB_create(MAX_FEATURES, scaleFactor=2, WTA_K=4, scoreType=cv2.ORB_HARRIS_SCORE, patchSize=61)
keypoints1, descriptors1 = orb.detectAndCompute(im, None)
keypoints2, descriptors2 = orb.detectAndCompute(imRef, None)
#print('after kp2: ', time.time() - t)
print('len keypoints:', len(keypoints1), ' ',len(keypoints2))
# Match features.
matcher = cv2.DescriptorMatcher_create(cv2.DESCRIPTOR_MATCHER_BRUTEFORCE_HAMMING)
matches = matcher.match(descriptors1, descriptors2, None)
#print('after matcher: ', time.time() - t)
# Sort matches by score
matches.sort(key=lambda x: x.distance, reverse=False)
# Remove not so good matches
numGoodMatches = int(len(matches) * GOOD_MATCH_PERCENT)
matches = matches[:numGoodMatches]
# Extract location of good matches
points1 = np.zeros((len(matches), 2), dtype=np.float32)
points2 = np.zeros((len(matches), 2), dtype=np.float32)
for i, match in enumerate(matches):
points1[i, :] = keypoints1[match.queryIdx].pt
points2[i, :] = keypoints2[match.trainIdx].pt
# Find homography
h, mask = cv2.findHomography(points1, points2, cv2.RANSAC)
return h
- operating system: WIN 10 64-bit
Issue submission checklist
sorry, i don't know if it is a opencv-python issue or a opencv issue.
- Ngôn ngữ chính
- Python
- Star
- 5.4k
- Fork
- 1k
- Merge trung bình
- 22 giờ 17 phút
- Pull request đã merge (30 ngày)
- 3
Hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của opencv/opencv-python
-
[DOC] README file Đang mở
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 85/100
opencv/opencv-python#1217 · 3 bình luận ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
opencv/opencv-python#1165 · 2 bình luận · 1 reaction ·
-
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 25/100
opencv/opencv-python#1273 · 1 bình luận ·
-
FFMPEG v8.1.1 vulnerabilities Đang mở
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 45/100
opencv/opencv-python#1272 · 1 bình luận ·
-
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 70/100
opencv/opencv-python#1268 · 1 bình luận ·
Tất cả issue của opencv/opencv-python
Issue tương tự
-
essnmx good first issue
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 95/100
-
[Feature] 奇物选择添加优先级 Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 65/100
syfoud/Simulated_Scepter#174 ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
Giskard-AI/giskard-oss#2840 · 1 bình luận ·
-
A claim comment carrying the issue number is silently declined while the workflow reports success Đang mởarea: repo bug perceived difficulty: 2
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 70/100
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
yeti-platform/yeti#1380 ·