Können Sie in diesem Beispiel von CV.Match Werte von Imgidx und Trainidx erklären?
Posted: 15 May 2025, 22:12
Dieses OpenCV -Python -Skript: < /p>
Versucht, SRC Deskriptoren eines Bildes zu entsprechen, die für Klarheit stark vereinfacht wurden, mit Deskriptoren von Bild 0 und 1 zum Training von Cv.bfMatcher . Hier ist das Ergebnis: < /p>
Warum M.TrainIdx immer Null ist, trotz zwei Zugbildern, die mit bf.add hinzugefügt wurden? Gibt es eine Möglichkeit, Deskriptoren in bfMatcher in Gruppen, die zu individuellen Trainingsbildern gehören, unterteilt zu haben? Wenn ja, können Sie das Ergebnis nicht überschreiten Gruppengrenzen, d. H. Alle Übereinstimmungen entstehen Deskriptoren aus einem einzigen Trainingsbild? https://docs.opencv.org/4.10.0/dc/dc3/t ... tcher.html:
[*]DMatch.Trainidx - Index des Deskriptors in den Deskriptors
in Queryli> [*]
DMatch.imgidx-Index des Zugbildes. Der Versuch, etwas Traktion zu bekommen und wird den anderen Beitrag löschen, sobald die Antwort irgendwo erscheint.
Code: Select all
import numpy as np, cv2 as cv
bf = cv.BFMatcher(cv.NORM_L1, crossCheck=False)
bf.add(np.array([[0], [1], [2]], dtype='f4')) # train image 0
bf.add(np.array([[0.1], [1.1], [2.1]], dtype='f4')) # train image 1
bf.train()
src = np.array([[0], [1.1], [2.1]], dtype='f4')
matches = bf.match(src)
for m in matches:
print(m.distance, m.queryIdx, m.imgIdx, m.trainIdx)
Code: Select all
0.0 0 0 0
0.0 1 4 0
0.0 2 5 0
[*]DMatch.Trainidx - Index des Deskriptors in den Deskriptors
in Queryli> [*]
DMatch.imgidx-Index des Zugbildes. Der Versuch, etwas Traktion zu bekommen und wird den anderen Beitrag löschen, sobald die Antwort irgendwo erscheint.