Ich versuche Tensorflow faster_rcnn_resnet101-Modell, um mehrere Objekte in einem 642 * 481 Bild zu erkennen. Ich habe zwei Möglichkeiten ausprobiert, aber keine hat zufriedenstellende Ergebnisse erzielt.Tensorflow-Objekterkennung Problem
1) Auf diese Weise habe ich die Objekte (50 * 160 Rechteck) von Trainingsbildern abgeschnitten (Trainingsbilder könnten eine andere Größe als 642 * 481 Testbild haben). Ich verwende diese beschnittenen Bilder, um faster_rcnn_resnet101 zu trainieren. Sieht so aus, als hätte es ein gutes Ergebnis, wenn das Testset auch ein zugeschnittenes Bild derselben Größe ist. Aber für das 642 * 481-Testbild konnte es dort mehrere Objekte mit guten Ergebnissen nicht erkennen.
Dann denke ich, vielleicht das Modell skaliert das Testbild um die 50 * 160 so abgestimmt, so dass die Details verloren gingen. In diesem Gedanken versuchte ich einen anderen Weg
2) Ich kopierte jede zugeschnittene Bilder in einen 642 * 481 weißen Hintergrund jeweils (im Grunde Padding). Daher hat jedes Trainingsbild dieselbe Größe wie das Testbild. Die Position der zugeschnittenen Bilder, die auf den Hintergrund kopiert werden, wird absichtlich als zufällig festgelegt. Es hat jedoch immer noch keine gute Erkennung auf dem Testbild. Um seine Leistung zu testen, verwende ich GIMP, um Fenster, die Objekte enthalten und andere Teile außerhalb der Fenster mit weißen Pixeln zu ersetzen. Das Ergebnis ist viel besser. Wenn wir nur ein Objektfenster im Bild behalten und andere Teile weiß machen, ist das Ergebnis super.
Also meine Frage ist, was passiert hinter denen? Wie kann ich es erreichen, dass mehrere Objekte in den Testbildern erfolgreich erkannt werden? Vielen Dank.