Open Source Robotics

Eine kuratierte Sammlung hochwertiger Open-Source-Robotikprojekte, Werkzeuge und Software für die Robotik-Community.

FruitNeRF++: A Generalized Multi-Fruit Counting Method Utilizing Contrastive Learning and Neural Radiance Fields

Autoren: Lukas Meyer, Andrei-Timotei Ardelean, Tim Weyrich, Marc Stamminger · IROS 2025

Lizenzen

  • Open Access
  • Paper: CC BY 4.0

Alles Folgende stützt sich auf das vollständige Paper unter seiner Lizenz CC BY 4.0; die Abbildung wird mit Nennung der Autoren gezeigt.

Kurz gesagt

Ergänzt ein Frucht-NeRF um ein kontrastiv trainiertes Instanzfeld, sodass Früchte jeder Art durch Clustering einer 3D-Punktwolke gezählt werden können, ohne fruchtspezifische Formvorlagen.

Warum es wichtig ist

Eine Pipeline bewältigt sechs Fruchtarten ohne Vorlagen pro Frucht und nutzt ungeordnete Fotos sowie handelsübliche Foundation Models für die Masken. Für die Ertragsschätzung im Obstbau entfällt damit die Abstimmung pro Frucht und Wachstumsstadium, die vorlagenbasiertes Clustering erforderte.

Problem

Fruchtzählung unterstützt die Personalplanung für die Ernte sowie Verpackung, Lagerung und Verarbeitung, doch die meisten bestehenden Methoden sind für eine Fruchtart gebaut. Der Vorgänger FruitNeRF hebt RGB- und semantische Masken in ein neuronales Feld, doch sein kaskadiertes Clustering stützt sich auf fruchtspezifische Vorlagen und mehrere empfindliche Hyperparameter, die sich mit Fruchtart und Wachstumsstadium ändern müssen.

Lösungsansatz

FruitNeRF++ ergänzt das NeRF um ein neuronales Instanzfeld und trainiert es mit einem kontrastiven Verlust im Stil von InfoNCE auf 2D-Instanzmasken von Grounded-SAM oder Detic, wobei das mittlere Merkmal jeder Frucht als Positivbeispiel und benachbarte Früchte als schwierige Negativbeispiele dienen. Zuerst werden das Dichte- und das Farbfeld trainiert, dann das semantische Feld, dann allein das Instanzfeld, während die anderen eingefroren sind. Die Szene wird zu einer Fruchtpunktwolke mit 32-dimensionalen Instanzmerkmalen abgetastet, mit k-means in Partitionen aufgeteilt, und jede Partition wird mit HDBSCAN unter Verwendung einer gewichteten Summe aus Kosinus-Merkmalsdistanz und euklidischer Distanz geclustert.

Wichtigste Erkenntnisse

  • Ein Prototyp-Merkmal (Mittelwert) pro Frucht als Positivbeispiel zu verwenden, statt jedes Pixelpaar zu kontrastieren, lieferte ein besseres Trainingssignal für das Instanzfeld.
  • Gleichmäßiges Pixel-Sampling eignet sich für das NeRF-Farbtraining, nicht aber für das Instanzlernen, weil Hintergrundpixel dominieren; das Sampeln von Gruppen benachbarter Früchte liefert schwierige lokale Negativbeispiele.
  • Clustering auf Basis von Kosinus-Merkmalsdistanz plus euklidischer Positionsdistanz funktionierte besser als jede der beiden allein; auf synthetischen Daten kam die meiste Trennung von der Position, da sich berührende Früchte selten sind. Section IV-E nennt λe = 5 als euklidisches Gewicht, während Section V λe = 1 für die synthetischen Experimente und λe = 5 für FUJI angibt.
  • Eine kontrastive Temperatur τ zwischen 0,1 und 0,3 mit Optimum bei 0,2 funktionierte auf synthetischen Daten; außerhalb dieses Bereichs konnte das Clustering die Instanzen nicht trennen.
  • Die Maskenqualität begrenzt die Zählung: Auf synthetischen Daten erreichten Grounded-SAM-Masken eine mittlere IoU von 0,561 und Detic 0,49, und ein Blatt oder Zweig quer über einer Frucht kann sie in zwei Instanzen aufteilen.

Hauptergebnisse

  • Durchschnittlicher F1 über sechs synthetische Fruchtarten: 0,925 mit Ground-Truth-Masken, 0,832 mit Grounded-SAM-Masken und 0,776 mit Detic-Masken.
  • Mit Ground-Truth-Masken, F1 pro Frucht für FruitNeRF++ vs. FruitNeRF (Table II, FruitNeRF-Werte aus dessen eigenem Paper übernommen): Apfel 0,996 vs. 1, Pflaume 0,859 vs. 0,885, Zitrone 0,978 vs. 0,978, Birne 0,996 vs. 0,971, Pfirsich 0,996 vs. 0,987, Mango 0,713 vs. 0,873.
  • Mango war der schwierigste Fall (649 von 1150 mit Ground-Truth-Masken gezählt), was die Autoren auf die große Zahl an Früchten und starke Verdeckung zurückführen.
  • Realer FUJI-Apfeldatensatz (582 Bilder, 12 Bäume): F1 0,765 mit Grounded-SAM-Masken gegenüber 0,881 für die fruchtspezifische Methode von Gené-Mola et al.
  • Auf dem Messy-Rooms-Datensatz mit 100 Haushaltsgegenständen wurden 99 Objekte erkannt.
  • Bei Äpfeln erreicht F1 bei einer Embedding-Größe von D = 16 den Wert 1; Pflaumen und Mangos benötigen größere Embeddings.

Einschränkungen

  • Das Training auf einer größeren Szene wie FUJI dauert etwa 8 Stunden auf einer Nvidia A5000 (24 GB), sodass die Methode nicht echtzeitfähig ist; die langsame Konvergenz des Instanzfelds macht mehr als die Hälfte dieser Zeit aus.
  • Die Ergebnisse hängen von einer guten Abdeckung des Baums ab; verrauschte Daten, vor allem ungenaue Kameraposen, lassen die Embeddings einer Frucht ihre Nachbarn verunreinigen.
  • Die Instanzsegmentierung neigt dazu, zwei Instanzen vorherzusagen, wenn ein Blatt oder Zweig eine Frucht optisch teilt, wodurch die Embeddings der beiden Hälften auseinandergezogen werden.
  • Früchte, die in Büscheln wachsen, etwa Bananen, Beeren oder Datteln, erfordern weitere Forschung, um Büschelgrößen und Anzahlen zu schätzen.
  • Die Evaluierung in der realen Welt umfasst einen einzigen Apfeldatensatz, dessen Kameraposen COLMAP plus manuelle Registrierung beider Baumseiten erforderten; die Autoren führen den Abstand zu Gené-Mola et al. auf diese verrauschten Posen zurück.

Wirkung auf das Fachgebiet

FruitNeRF++ war Finalist für einen IROS 2025 Award und hat 5 Zitierungen. Die Autoren nennen ein Code-Repository, github.com/meyerls/FruitNeRFpp, dessen Code bei Annahme veröffentlicht werden soll, und erweitern den FruitNeRF-Datensatz mit mehreren Fruchtarten um Instanzmasken.

Zusammenfassung

Wir stellen FruitNeRF++ vor, einen neuartigen Ansatz zur Fruchtzählung, der kontrastives Lernen mit Neural Radiance Fields kombiniert, um Früchte aus unstrukturierten Eingabefotos von Obstgärten zu zählen. Unsere Arbeit basiert auf FruitNeRF, das ein neuronales semantisches Feld in Kombination mit einem fruchtspezifischen Clustering-Ansatz verwendet. Die Notwendigkeit der Anpassung an jede Fruchtart schränkt die Anwendbarkeit der Methode ein und erschwert ihren praktischen Einsatz. Um diese Einschränkung aufzuheben, entwerfen wir ein formunabhängiges Framework zur Zählung mehrerer Fruchtarten, das die RGB- und semantischen Daten um Instanzmasken ergänzt, die von einem Vision-Foundation-Model vorhergesagt werden. Die Masken werden verwendet, um die Identität jeder Frucht als Instanz-Embeddings in ein neuronales Instanzfeld zu kodieren. Durch volumetrisches Abtasten der neuronalen Felder extrahieren wir eine mit den Instanzmerkmalen versehene Punktwolke, die fruchtunabhängig geclustert werden kann, um die Fruchtanzahl zu erhalten. Wir evaluieren unseren Ansatz mit einem synthetischen Datensatz mit Äpfeln, Pflaumen, Zitronen, Birnen, Pfirsichen und Mangos sowie mit einem realen Benchmark-Datensatz für Äpfel. Unsere Ergebnisse zeigen, dass FruitNeRF++ leichter zu steuern ist und im Vergleich mit anderen hochmodernen Methoden gut abschneidet.

Links

  • arXiv 2505.19863: https://arxiv.org/abs/2505.19863
  • DOI 10.1109/IROS60139.2025.11247341: https://doi.org/10.1109/IROS60139.2025.11247341
  • PDF: https://arxiv.org/pdf/2505.19863v1
  • Code: https://github.com/meyerls/FruitNeRFpp
  • Projektseite: https://meyerls.github.io/fruit_nerfpp

Diese Website benötigt JavaScript. Bitte aktivieren Sie JavaScript, um unsere Open-Source-Robotikprojekte zu erkunden.