irgendwie Erkennung Charuco Diamanten funktioniert nicht mit größeren Bildern für mich. Mit meinen Originalbildern von 1920x1080 erkennt es die Ids nicht zuverlässig (die Diamond-Ids-Elemente wechseln jedes Mal). Im ersten Bild sehen Sie, dass es erkennt (7, 9, 45, 2).OpenCV: Charuco (Diamanten) funktioniert nicht auf größeren Bildern. Welche Parameter müssen eingestellt werden?
Dann habe ich versucht, die Bilder zu 960x540 Abwärtsabtastens und Dividieren der Kalibrierung params, f, c, auf die Hälfte, und es funktioniert! Die ID wird korrekt als (2,7,45,9) erkannt und die Pose-Schätzung ist korrekt.
Wie es für größere Bilder funktioniert? Ich habe versucht, die Erkennungsparameter abhängig von absoluten Pixeleinheiten zu ändern (nicht relativ zur Bildgröße). Hier ist eine Liste meiner aktuellen Parameter. Ich erkannte, dass die Vergrößerung der Fenstergröße für das Threasholding hilft, die Quadrate zu erkennen, aber nicht für die ID- oder Pose-Schätzung.
nmarkers: 1024 adaptiveThreshWinSizeMin: 13 adaptiveThreshWinSizeMax: 113 adaptiveThreshWinSizeStep: 10 adaptiveThreshWinSize: 42 adaptiveThreshConstant: 7 minMarkerPerimeterRate: 0.1 maxMarkerPerimeterRate: 4.0 polygonalApproxAccuracyRate: 0.05 minCornerDistance: 10.0 minDistanceToBorder: 10 minMarkerDistance: 10.0 minMarkerDistanceRate: 0.05 doCornerRefinement: false cornerRefinementWinSize: 5 cornerRefinementMaxIterations: 30 cornerRefinementMinAccuracy: 0.1 markerBorderBits: 1 perspectiveRemovePixelPerCell: 8 perspectiveRemoveIgnoredMarginPerCell: 0.13 maxErroneousBitsInBorderRate: 0.04 minOtsuStdDev: 5.0 errorCorrectionRate: 0.6
Irgendwelche Hinweise?
danke!