Ich kann falsch verstehen, was Sie fragen, aber wenn Sie die Sensorgröße und die Anzahl der Pixel im Objekt kennen, können Sie die Objektgröße berechnen. Eine Canon 7D verfügt beispielsweise über einen APS-C-Sensor mit 22,3 x 14,9 mm und 5184 x 3456 Pixel. Das entspricht ~ 0,0043 mm / Pixel. Wenn Sie also ein Objekt mit einer Breite von 250 Pixel haben, wäre die Projektion des Objekts auf den Sensor 250 Pixel * 0,0043 mm / Pixel = 1,075 mm breit gewesen.
EDIT:
Also nur zum Spaß habe ich es versucht. Ich nahm ein 300-mm-Lineal, stellte es 1 Meter von der Kamera entfernt auf und schoss es mit einem 50-mm-Objektiv auf einer Canon 7D. Laut dem Lineal in Photoshop war es 3734 Pixel breit. Das gibt mir die folgende Gleichung:
3734 * 0,0043 = (300 * 50) / 1000
oder
16.0562 = 15.0
Nun, es ist nah, aber nicht genau. (Über 7%.) Ich vermute, dass die Größe der Sensorstelle tatsächlich etwas kleiner als 0,0043 mm oder die Sensorgröße etwas größer als die angegebene Größe ist. In der Tat sagen die Spezifikationen für die Kamera 18MP effektive Größe, aber 19MP tatsächliche Sensorgröße. Ich bin mir also nicht sicher, was das bedeutet, aber ich vermute, es erklärt den Unterschied zwischen meinem tatsächlichen Ergebnis und dem berechneten Ergebnis. (Entweder das, oder ich habe die Länge in Photoshop falsch verstanden und sie sollte eigentlich 3488 Pixel statt 3734 sein.) Aber es hat Spaß gemacht, es zu versuchen!
2. BEARBEITUNG: Diese Frage im Photo Stack Exchange erklärt dies. Kameraobjektive sind oft etwas länger oder kürzer als behauptet, aber auf die nächste schöne Brennweite gerundet. Also (vorausgesetzt meine Berechnungen und Messungen waren korrekt) ist mein Objektiv tatsächlich ein ~ 53,5 mm Objektiv.
Ja, theoretisch für die Kugel nein für andere Dinge im Bild. Wenn es möglich ist, die Situation zu verbessern, ist es möglich, alles zu messen, was Sie viel zuverlässiger verfolgen können. Erstens ist es erforderlich, den Maßstab eines Objekts zu kennen, das Sie erfolgreich verfolgen können, um einen Maßstab für das Bild zu erhalten, da die Kameras alle Skalierungsinformationen verloren haben. Diese Anforderung allein reicht jedoch nicht aus.
In der Praxis kennen Sie die anderen Einstellungen einer Kamera nicht (es sei denn, Sie kalibrieren zuerst mit der Stereogeometrie). Bei der Verfolgung der realen Kamera treten alle möglichen Probleme auf. Zum Beispiel ist ein echtes Kameraobjektiv nicht ideal. Durch Verfolgen von mehr als 2 Funktionen in der Szene können Sie die tatsächlichen Brennweiten und Kameraverzerrungen automatisch abschätzen. Noch wichtiger ist, dass Sie eine Fehlerschätzung für Ihre Daten erhalten können.
Eine Möglichkeit besteht darin, zwei Fotos aus verschiedenen Winkeln in einer Szene mit ausreichender Tiefenvariation zu haben (für ein stationäres Objekt ist dies recht einfach). Sie können dann Stereo-Geometrie verwenden, um die Tiefe zu lösen, in der viele solcher Tracker-Apps als Teil von Spezialeffekt-Paketen existieren, und das Erstellen eigener Apps kommt nicht ganz in Frage (Fun-Link, grundlegender Matrix-Song ). Der zweite Weg besteht darin, eine bekannte Ebene zu haben. Die Ebene kann gelöst werden, indem 4 Punkte und ihre relativen Positionen bekannt sind. In der Realität ist es besser, mehr Punkte für Fehler- und Linsenkorrekturschätzungen zu verwenden. Eine dritte Möglichkeit besteht darin, strukturiertes Licht (z. B. eine Wolke aus Laserlichtpunkten oder eine Linie) zu verwenden, um die Punktabstände zu triangulieren. Oder Sie könnten eine Lichtfeldkamera verwenden.
quelle