BESTIMMUNG DES KORNGEWICHTES EINER ÄHRE
[0001] Die Erfindung bezieht sich generell auf eine Vorhersage eines Ertrages einer Ernte und insbesondere auf ein Bestimmen eines Gewichtes aller Körner einer Ähre eines Getreidehalmes in einem Kornfeld. Die Erfindung bezieht sich weiterhin auf ein System zum Bestimmen eines Gewichtes aller Körner einer Ähre eines Getreidehalmes und auf ein diesbezügliches Computersystem.
[0002] Nachdem die Automatisierung klassischer Produktionsbereiche in der industriellen Fertigung weit vorangeschritten ist, setzt sich dieser Trend nun im klassischen landwirtschaftlichen Bereich fort. Der Einsatz von Überwachungstechnik in landwirtschaftlichen Produktionsprozessen ist zwar noch nicht überall Standard, dennoch gibt es auch hier Fortschritte. Klassische Industrie 4.0 Technologien lassen sich vielfach auch auf landwirtschaftliche Prozesse und Maschinen übertragen. Dabei ist allerdings mindestens eines zu berücksichtigen: Die ausgewählten Technologien sollten einfach zu handhaben und robust sein. Außerdem ist es erforderlich, dass die eingesetzten Technologien kostengünstig sind, da der Preisdruck auch in landwirtschaftlichen Produktionsbetrieben durch die Globalisierung immer weiter zunimmt.
[0003] Auf der anderen Seite gibt es hier und dort auch Vorbehalte gegenüber dem Einsatz von Hochtechnologie in bäuerlichen Betrieben, da der Umgang mit diesen Technologien nicht zu Standardwissen in diesen Bereichen zählt. Folglich muss Informationstechnologie, die in landwirtschaftlichen Betrieben eingesetzt werden soll, einfach und intuitiv zu bedienen sein.
[0004] Zwar gibt es länderabhängig in einigen Regionen der Welt bereits sehr ausgeklügelte Smart Farming beziehungsweise Digital Farming Initiativen, die teilweise einen hohen Automatisierungsgrad auch bei der Feldarbeit erreicht haben; dennoch lassen sich auch mit vergleichsweise geringen Aufwänden deutliche Verbesserungen erzielen, wenn Bildverarbeitungsund informationstechnologisch-unterstützte Analysetechniken in einfacher Form auf breiter Front einsetzbar gemacht werden. Am besten geschieht das in Form von Technologien, die bereits den Alltag der Bevölkerung durchdrungen haben.
[0005] Bei der Vorhersage von Erträgen in der Landwirtschaft - insbesondere bei der Vorhersage von Erträgen von Kornfeldern - werden bisher wenig quantitative Parameter genutzt. Meist sind es noch Erfahrungs werte. Dabei wären neben verlässlichen Wetterdaten weitere Analysetechniken hilfreich, die es Landwirten ermöglichen, eine nahezu präzise Vorhersage über ihre Feldausbeute zu erlangen, um zu entscheiden, wann ein guter Erntezeitpunkt ist. Auf diese Weise ließen sich auch Ankaufpreisschwankungen der Abnehmer - wie z.B. landwirtschaftliche Genossenschaften oder industrielle Großabnehmer - im Sinne der Produzenten für eine Gewinnoptimierung nutzen.
[0006] Folglich besteht ein Bedarf für eine verbesserte Ausbeutevorhersage bei Kornfeldern und anderen landwirtschaftlich genutzten Flächen. Der Gegenstand des vorliegenden Dokumentes adressiert diesen Aufgabenbereich.
[0007] Die dieser Anmeldung zugrunde liegende Aufgabe wird durch die Gegenstände der unabhängigen Ansprüche gelöst. Weitere Ausführungsbeispiele finden sich in den abhängigen Ansprüchen, der vorliegenden Beschreibung sowie in den Figuren.
[0008] Ein erster Gegenstand der vorliegenden Erfindung ist somit ein Verfahren zum Bestimmen eines Gewichtes aller Körner einer Ähre eines Getreidehalmes, wobei das Verfahren aufweist
Bereitstellen eines digitalen Bildes der Ähre in einer Spindelstufenansicht der Ähre, wobei sich die Ähre bei der Aufnahme in dem digitalen Bild vor einer Referenzkarte als Hintergrund befindet,
Bestimmen einer Länge der Ähre entlang der Längsachse der Ähre durch eine Trennung von Bildpixeln des digitalen Bildes der Ähre von dem Hintergrund und Vergleichen von Pixelkoordinaten an einem Ende der Ähre mit Pixelkoordinaten der Ähre an einem entgegengesetzten Ende der Ähre in Längsrichtung der Ähre mit Bildmarken auf der Referenzkarte,
Bestimmen einer Anzahl von Spindelstufen der Ähre durch ein Template-Matching- Verfahren,
Bestimmen einer Kornanzahl der Ähre durch eine Multiplikation der ermittelten Spindelstufen mit einem Faktor, und
- Bestimmen des Gewichtes aller Körner der Ähre durch eine Multiplikation der bestimmten
Kornanzahl mit einem Kalibrierungsfaktor.
[0009] Ein weiterer Gegenstand der vorliegenden Erfindung ist ein Computerprogrammprodukt umfassend ein computerlesbares Speichermedium, in dem Programmelemente zum Bestimmen eines Gewichtes aller Körner einer Ähre eines Getreidehalmes gespeichert sind, die, wenn sie von einem Prozessor ausgeführt werden, den Prozessor dazu veranlassen, das erfindungsgemäße Verfahren ausführen.
[0010] Ein weiterer Gegenstand der vorliegenden Erfindung ist ein System zum Bestimmen eines Gewichtes aller Körner einer Ähre eines Getreidehalmes, wobei das System aufweist
eine Empfangseinheit zum Empfangen eines digitalen Bildes der Ähre in einer Spindelstufenansicht der Ähre, wobei sich die Ähre in dem digitalen Bild vor einer
Referenzkarte als Hintergrund befindet,
eine Vermessungseinheit, die angepasst ist zur Bestimmung einer Länge der Ähre entlang der Längsachse der Ähre durch eine Trennung von Bildpixeln des digitalen Bildes der Ähre von dem Hintergrund und Vergleichen von Pixelkoordinaten an einem Ende der Ähre mit Pixelkoordinaten der Ähre an einem entgegengesetzten Ende der Ähre in
Längsrichtung der Ähre mit Bildmarken auf der Referenzkarte,
eine Spindelstufenberechnungseinheit, die angepasst ist zur Bestimmung einer Anzahl von Spindelstufen der Ähre durch ein Template-Matching- Verfahren,
eine Kornzahlbestimmungseinheit, die angepasst ist zur Bestimmung einer Kornanzahl der Ähre durch eine Multiplikation der ermittelten Spindelstufen mit einem Faktor, und eine Gewichtsermittlungseinheit, die angepasst ist zur Bestimmung des Gewichtes aller Körner der Ähre durch eine Multiplikation der bestimmten Kornanzahl mit einem Kalibrierungsfaktor.
[0011] Entsprechend einem ersten Aspekt der vorliegenden Erfindung wird ein Verfahren zum Bestimmen eines Gewichtes aller Körner einer Ähre eines Getreidehalmes angegeben. Das Verfahren umfasst das Bereitstellen eines digitalen Bildes der Ähre in einer Spindelstufenansicht der Ähre, wobei die Ähre in dem digitalen Bild vor einer Referenzkarte als Hintergrund abgebildet ist.
[0012] Das Verfahren umfasst weiterhin das Bestimmen einer Länge der Ähre entlang der Längsachse der Ähre durch eine Trennung von Bildpixeln des digitalen Bildes der Ähre von dem Hintergrund und Vergleichen von Pixelkoordinaten an einem Ende der Ähre mit Pixelkoordinaten der Ähre an einem entgegengesetzten Ende der Ähre in Längsrichtung der Ähre mit Bildmarken auf der Referenzkarte.
[0013] Darüber umfasst das Verfahren das Bestimmen einer Anzahl von Spindelstufen der Ähre durch ein Template-Matching- Verfahren, das Bestimmen einer Kornanzahl der Ähre durch eine Multiplikation der ermittelten Spindelstufen mit einem Faktor, und das Bestimmen des Gewichtes
aller Körner der Ähre durch eine Multiplikation der bestimmten Kornanzahl mit einem Kalibrierungsfaktor.
[0014] Entsprechend einem weiteren Aspekt der Erfindung wird ein System zum Bestimmen eines Gewichtes aller Körner einer Ähre eines Getreidehalmes vorgestellt. Dabei weist das System eine Empfangseinheit zum Empfangen eines digitalen Bildes der Ähre in einer Spindelstufenansicht der Ähre auf, wobei sich die Ähre in dem digitalen Bild vor einer Referenzkarte als Hintergrund befindet.
[0015] Das System weist weiterhin eine Vermessungseinheit auf, die zu einer Bestimmung einer Länge der Ähre entlang der Längsachse der Ähre durch eine Trennung von Bildpixeln des digitalen Bildes der Ähre von dem Hintergrund angepasst ist. Weiterhin ist die Vermessungseinheit zum Vergleichen von Pixelkoordinaten an einem Ende der Ähre mit Pixelkoordinaten der Ähre an einem entgegengesetzten Ende der Ähre in Längsrichtung der Ähre mit Bildmarken auf der Referenzkarte angepasst.
[0016] Ergänzend weist das System auf:
- eine Spindelstufenberechnungseinheit, die so konfiguriert ist, dass sie eine Anzahl von Spindelstufen der Ähre durch ein Template-Matching- Verfahren bestimmt,
- eine Kornzahlbestimmungseinheit, die so konfiguriert ist, dass sie eine Kornanzahl der Ähre durch eine Multiplikation der ermittelten Spindelstufen mit einem Faktor bestimmt, und
- eine Gewichtsermittlungseinheit, die so konfiguriert ist, dass sie das Gewicht aller Körner der Ähre durch eine Multiplikation der bestimmten Kornanzahl mit einem Kalibrierungsfaktor bestimmt.
[0017] Es sei darauf hingewiesen, dass das vorgestellte System als Teil eines Smartphones implementiert sein kann. Darüber hinaus kann auch das hier vorgestellte Verfahren durch eine leistungsfähige Form eines Smartphones ganz oder teilweise durch dieses Smartphone ausgeführt werden. Alternativ kann die Bestimmung der Gesamtzahl der Körner einer Ähre auch auf einem dedizierten, speziell für diesen Zweck angepassten Computer, einem Server-Computer oder jedem anderen Computersystem ausgeführt werden.
[0018] Dazu kann es erforderlich sein, dass Ausführungsbeispiele die Form eines entsprechenden Computerprogrammproduktes aufweisen. Dieses kann Instruktionen aufweisen, die, wenn sie auf einem Computersystem ausgeführt werden, Schritte des beschriebenen Verfahrens ausführen.
[0019] Das vorgestellte Verfahren zum Bestimmen eines Gewichtes aller Körner einer Ähre eines Getreidehalmes sowie das entsprechende System weist eine Reihe von Vorteilen und technischen Effekten auf:
[0020] Als Frontend können im Einsatz befindliche Alltagsgegenstände - wie Smartphones - für eine verbesserte Ausbeutevorhersage genutzt werden. Die Nutzung eines mobilen Gerätes - wie eines Mobiltelefons mit einer Kamera - reicht aus, um Landwirte in die Lage zu versetzen, eine verbesserte Ausbeutevorhersage ihres Kornfeldes zu treffen. Als Ausgangspunkt kann es dazu wichtig sein, die Ertragskraft einer Ähre eines Kornfeldes zu ermitteln. Eine oder zwei digitale Aufnahmen einer Ähre reichen bereits aus, um den Landwirt in die Lage zu versetzen, seine Vorhersage für einen Feldertrag deutlich zu verbessern. Ein weiterer einfacher alltäglicher Gegenstand in Form einer Referenzkarte verkompliziert die Handhabung und Akzeptanz des Verfahrens nicht.
[0021] Dabei kann die Ähre entweder abgepflückt oder abgeschnitten und auf die Referenzkarte gelegt werden, oder die Ähre kann am Halm bleiben und die Referenzkarte kann einfach hinter der Ähre platziert werden. Durch die Skala der Referenzkarte wird ein eindeutiger unverfälschter Maßstab mit der digitalen Aufnahme mitgeliefert.
[0022] Die erforderliche Rechenleistung zur automatisierten Vermessung der Ähre und des Korngewichtes der Ähre kann in einem Rechenzentrum zur Verfügung gestellt werden. Dieses Rechenzentrum kann an beliebiger Stelle betrieben werden. Es kann entweder ein Rechner von einem Landwirt genutzt werden, mehrere Landwirte können den Rechner gemeinsam betreiben oder ein Dienstleister übernimmt die Analysearbeit und bietet die erforderliche Rechenleistung an. Letzteres hätte den weiteren Vorteil, dass die Dienstleistung in Form eines Cloud-Computing- Dienstes für eine große Anzahl von Landwirten in unterschiedlichen Regionen oder auch länderübergreifend betrieben werden könnte. Hierbei würde es auch leichter fallen, Parallelen zwischen unterschiedlichen Regionen, globale und auch lokale Wettereinflüsse oder auch regional bekannten Schädlingsbefall, Düngemitteleinsatz bzw. Schädlingsbekämpfungsmitteleinsatz etc. zu berücksichtigen.
[0023] Dazu kann das digitale Bild über ein mobiles Netzwerk an einen Auswerterechner übermittelt werden. Die Analyse kann durchgeführt werden und das Ergebnis drahtlos zurück an den Landwirt bzw. das mobile Gerät übermittelt werden. Eine Hochrechnung, ausgehend vom Korngewicht einer Ähre auf das gesamte Feld, könnte mit herkömmlichen Verfahren vorgenommen werden.
[0024] In einer weiterentwickelten Form und zusammen mit einem leistungsfähigen Computersystem in dem mobilen Gerät könnte die Analyse auch direkt vor Ort ausgeführt werden. Die notwendigen Berechnungsalgorithmen könnten in Form einer Smartphone-App verfügbar gemacht werden. Alternativ kann ein dediziertes Rechenwerk (Spezialprozessor bzw. Spezial- Hardware) an das mobile Gerät angeschlossen werden oder in dem mobilen Gerät integriert sein.
[0025] Weiterhin ist es nicht unbedingt erforderlich - aber vorteilhaft - ein Smartphone für die digitale Aufnahme einzusetzen. Der Landwirt könnte auch eine herkömmliche digitale Kamera einsetzen und die digitale Aufnahme der Ähre in anderer Form an den Rechner zur Analyse übertragen: Zum Beispiel über drahtgebundene Kommunikationstechnologien oder Relaisstationen, die über bekannte Kommunikationswege wie WLAN, Bluetooth oder andere vergleichbare Kommunikationsmittel verfügen.
[0026] Die Ermittlung der naturgegeben, nicht konstanten Spindelstufen der Ähre und die Multiplikation der ermittelten Spindelstufen mit einem durchschnittlichen Faktor der Körner pro Spindelstufe, ermöglicht eine elegante Bestimmung der Kornanzahl je Ähre. Damit ist die Basis für eine Abschätzung der Feldausbeute gelegt.
[0027] Das zur Ermittlung der Anzahl der Spindelstufen eingesetzte Template-Matching- Verfahren liefert durch die Art der digitalen Aufnahmen der Ähre - in Form der Spindelstufenansicht - eine gute Basis für die weiteren Bildverarbeitungs- und Ermittlungsschritte.
[0028] Im Folgenden werden weitere Ausführungsformen des vorgeschlagenen Verfahrens zum Bestimmen eines Gewichtes aller Körner einer Ähre eines Getreidehalmes beschrieben.
[0029] Entsprechend einem Ausführungsbeispiel weist das Verfahren auch ein Bestimmen eines 1000-Korngewichtes der Körner der Ähre auf. Dieser Wert - auch als Tausenkorngewicht (TKG) bezeichnet - ist ein üblicher Rechenwert zur Abschätzung von Erträgen in landwirtschaftlicher Umgebung und gibt das Gewicht von 1000 Körnern einer Körnerpartie an. Er lässt sich aus dem Korngewicht einer Ähre und der ermittelten Anzahl der Körner der Ähre berechnen.
[0030] Gemäß einer vorteilhaften Ausführungsform des Verfahrens kann das Template-Matching- Verfahren ein pixelweises Verschieben eines ausgewählten Bild-Template bestehend aus einem mittleren Teilbereiches der Ähre über die gesamte Ähre in Längsrichtung der Ähre aufweisen. Zusätzlich kann das Verfahren ein jeweiliges Bestimmen eines jeweiligen Ähnlichkeitsfaktors des Bild-Templates mit einem jeweiligen überdeckten Ährenabschnitt in jeder Verschiebungsposition aufweisen. Dadurch können regelmäßige relative Maxima in Bezug auf den Ähnlichkeitsfaktor einer x-y-Darstellung entstehen. Bei der Darstellung kann die x-Richtung der Darstellung die Pixelanzahl bzw. -position sein, und in y-Richtung kann ein Ähnlichkeitswert des jeweiligen Ährenabschnittes mit dem Template aufgetragen sein.
[0031] Der ausgewählte Teilbereich der Ähre kann ca. 15-25 % der Ähre in einem mittleren Bereich der Ähre einnehmen. Zusätzlich kann diese Ausführungsform ein Bestimmen der Spindelanzahl aus der x-y-Darstellung aufweisen. Da es sich bei dem Template-Matching- Verfahren um ein bekanntes Verfahren aus dem Gebiet der Bild Verarbeitung handelt, können herkömmliche Programmbibliotheksfunktionen und -module genutzt werden. Durch den Einsatz dieses Matching- Verfahrens ist eine gute Genauigkeit und Robustheit gegen Schwankungen der Beleuchtungsgeometrie bei der Bestimmung der Spindelstufen gegeben. Dieses ist deshalb vorteilhaft, weil die Anzahl der Spindelstufen einen maßgeblichen Einfluss auf die Anzahl der Körner der Ähre hat. Eine zusätzliche Spindelstufe der Ähre kann gleichbedeutend mit 4 zusätzlichen Körnern sein, wodurch sich die Gesamtanzahl der Körner der Ehre um bis zu 10 % vergrößern kann. Folglich ist eine möglichst genaue Erfassung der Anzahl der Spindelstufen gleichbedeutend mit der Genauigkeit des vorgeschlagenen Verfahrens.
[0032] Gemäß einer ergänzenden speziellen Ausführungsform kann dabei in dem Verfahren das Bestimmen der Spindelanzahl aus der x-y-Darstellung ein Bestimmen der Anzahl der relativen Maxima eines Ähnlichkeitswertes durch einfaches Abzählen aufweisen. Dieses Vorgehen erfordert eine geringe Rechenleistung, ist aber im Vergleich zu anderen Verfahren nicht das genaueste, weil das Ähnlichkeitsmaß zu den Enden der Ähre hin abnimmt und demgemäß die Maxima nicht mehr so ausgeprägt sind wie im zentralen Ährenbereich.
[0033] Gemäß einer weiteren Ausführungsform kann in dem Verfahren das Bestimmen der Spindelanzahl aus der x-y-Darstellung ein Ermitteln einer mittleren Periodenlänge aus den Abständen der relativen Maxima eines Ähnlichkeitswertes zueinander und ein Bestimmen der Spindelanzahl durch eine Division der Ährenlänge durch die Periodenlänge aufweisen.
[0034] Im Gegensatz zur vorhergehend beschriebenen Ausführungsform kann diese nun beschriebene Ausführungsform einen höheren Genauigkeitsgrad bei der Bestimmung der Anzahl der Spindelstufen aufweisen. Das liegt daran, dass die relativen Maxima in der x-y-Darstellung schärfer ausgeprägt sein können als in der vorangehenden Ausführungsform. Somit ergibt sich eine höhere Genauigkeit bei der Bestimmung der Anzahl der Spindelstufen einer Ähre.
[0035] Gemäß einer vorteilhaften Ausführungsform kann das Verfahren vor dem Bestimmen der Länge der Ähre eine Transformation der Lage der Pixel der Ähre gegenüber der Referenzkarte aufweisen, sodass Schrägperspektiven des digitalen Bildes der Ähre ausgeglichen werden können, und sodass die Längsachse der Ähre parallel zu einer Seite der Referenzkarte liegen kann. Damit ist eine genauere Erfassung der Länge der Ähre möglich. Außerdem können durch eine derartige Transformation Verzerrungen durch Schrägaufnahmen der Ähre ganz oder teilweise ausgeglichen werden.
[0036] Gemäß einer zusätzlich vorteilhaften Ausführungsform kann das Verfahren vor dem Bestimmen der Länge der Ähre ein Aufrichten der Ähre entsprechend einer Transformation der Pixel der Ähre gegenüber der Referenzkarte aufweisen, sodass die Längsachse der Ähre parallel zu der Seite der Referenzkarte liegen kann. Unter einem Aufrichten kann ein gewisses
„Geradebiegen" der Ehre verstanden werden, sodass eine mittlere Achse der Ähre im Wesentlichen parallel zu parallel zueinander liegenden Seitenrändern ausgerichtet sein kann. Dazu kann der Bildausschnitt mit dem identifizierten Ährenobjekt genommen und einer morphologischen Bildoperation unterzogen werden. Dieses Vorgehen hat den Vorteil besserer Voraussetzungen für das Template-Matching- Verfahren, da eine Krümmung der Ähre bei dem Matching- Verfahren nicht mehr berücksichtigt werden muss.
[0037] Gemäß einer weiteren vorteilhaften Ausführungsform kann ein Entwicklungsstadium der Ähre größer oder gleich 60 entsprechend dem BBCH-Code sein. In einem früheren Entwicklungsstadium der Ähre können größere Ungenauigkeiten bei der Bestimmung des Korngewichtes einer Ähre auftreten. Ab einer Entwicklungsstufe, welche größer als 60 entsprechend dem BBCH-Code ist, lässt sich erfahrungsgemäß eine gute Genauigkeit bei der Bestimmung des Korngewichtes erzielen.
[0038] Gemäß einem ergänzenden Ausführungsbeispiel des Verfahrens kann ein Farbwert der Referenzkarte in deutlichem Kontrast zu einem mittleren Farbwert der Ähre z.B. in einem RGB- Farbmodell stehen. Der Fachmann versteht, dass auch ein anderes Farbmodell gewählt werden kann, da Farbmodelle in aller Regel durch einfache Transformation ineinander überführt werden können. Bei dem hier vorgeschlagenen, in Kontrast stehenden Farbwert kann es sich zum Beispiel um eine Komplementärfarbe eines wesentlichen Farbanteils der Ähre handeln. Ein Blau- oder Grün-Blau-Farbton hat sich als vorteilhaft erwiesen. Auf diese Weise kann eine leichte Differenzierung von Pixeln des Hintergrundes und Pixeln der sich vor dem Hintergrund befindlichen Ähre möglich sein.
[0039] Gemäß einer weiteren Ausführungsform des Verfahrens kann die Spindelstufenansicht diejenige Ansicht der Ähre sein, die die kleinste Ansichtsfläche bietet, wenn eine Längsachse der Ähre vertikal verläuft. Die Spindelstufenansicht ist also eine Ansicht der Ähre, die eine um 90° um die Längsachse der Ähre gedrehte Blütenansicht darstellt. Auf diese Weise kann eine Reproduzierbarkeit des Verfahrens erleichtert sein.
[0040] Eine weitere vorteilhafte Ausführungsform des Verfahrens kann erlauben, dass das digitale Bild der Ähre am Halm der Ähre oder getrennt vom Halm erfolgt. Somit ist es nicht erforderlich, die Ähre vor einer Aufnahme eines digitalen Abbildes der Ähre abzuschneiden oder abzureißen. Die digitale Aufnahme der Ähre zusammen mit der Referenzkarte kann in jeder Lage geschehen. Vorteilhaft wäre es, wenn eine mittlere Ebene parallel zur der Längsachse der Ähre parallel zu der Oberfläche der Referenzkarte verlaufen würde.
[0041] Gemäß einer weiteren vorteilhaften Ausführungsform des Verfahrens können die Bildmarken der Referenzkarte mindestens zwei Bild-Marker aufweisen. Darüber hinaus können die Bildmarken mindestens einen Maßstab aufweisen. Die zwei Bild-Marker können zum Beispiel durch Bild-Eck-Marker gebildet sein. Auf diese Weise lassen sich elegant die Ecken der Referenzkarte mittels Bildverarbeitungs verfahren identifizieren.
[0042] In weiteren vorteilhaften Ausführungsbeispielen kann der Kalibrierungsfaktor mindestens eine Abhängigkeit bezüglich einer der folgenden Faktoren aufweisen: Sorte der Ähre, Wachstumsstadium der Ähre, Witterung (langfristig und kurzfristig), geographischer Ort und Düngestatus. Weitere Einflussparameter können jederzeit berücksichtigt werden.
[0043] Darüber hinaus können Ausführungsbeispiele die Form eines zugeordneten Compute rogrammproduktes aufweisen, auf das von einem Computer-nutzbaren oder Computerlesbaren Medium zugegriffen werden kann. Die Instruktionen können einen Computer - wie beispielsweise ein Smartphone, einen Server oder eine Kombination von beiden - veranlassen, Verarbeitungsschritte entsprechend dem vorgestellten Verfahren auszuführen. Für den Zweck
dieser Beschreibung kann das Computer-nutzbare oder Computer-lesbare Medium jede Vorrichtung sein, welche Elemente zum Speichern, Kommunizieren, Transportieren oder Weiterleiten des Programmes zusammen mit dem Instruktionen-verarbeitenden System aufweist.
KURZE BESCHREIBUNG VERSCHIEDENER ANSICHTEN DER FIGUREN
[0044] Es sei darauf hingewiesen, dass Aspekte der Erfindung im Kontext unterschiedlicher Arten von Ausführungsbeispielen beschrieben sind. Einige Ausführungsbeispiele sind mit einem Bezug zu Verfahrensansprüchen beschrieben, während andere Ausführungsbeispiele im Kontext von Vorrichtungs- artigen Ansprüchen beschrieben sind. Trotzdem wird ein Fachmann aus der bisherigen und noch folgenden Beschreibung entnehmen können - es sei denn, dass auf eine Abweichung hingewiesen wurde - dass nicht nur Merkmale einer Anspruchsgattung untereinander kombinierbar sind, sondern auch Merkmale Anspruchsart-übergreifend eine mögliche Kombination von Merkmalen darstellen.
[0045] Die oben dargestellten Aspekte sowie weitere Aspekte der vorliegenden Erfindung ergeben sich aus den Ausführungsbeispielen und den Figuren, die nachfolgend näher beschrieben sind.
[0046] Diese Ausführungsbeispiele dienen als mögliche Implementierungsformen, ohne darauf beschränkt zu sein, und sie nehmen Bezug auf die folgenden Figuren:
Fig. 1 zeigt ein Blockdiagramm einer Ausführungsform des erfinderischen Verfahrens zum Bestimmen der Gesamtkörnerzahl einer Ähre eines Getreidehalmes.
Fig. 2 zeigt einen ersten Teil eines Blockdiagrammes einer implementierungsnäheren Ausführungsform des vorgeschlagenen Verfahrens.
Fig. 3 zeigt einen zweiten Teil des Blockdiagrammes der implementierungsnäheren Ausführungsform des vorgeschlagenen Verfahrens von Fig. 2.
Fig. 4 zeigt eine abstrakt dargestellt Ähre und ein Beispiel einer Referenzkarte zusammen mit einer darauf liegenden Ähre.
Fig. 4a zeigt eine Abbildung einer Ähre und eine Ansicht der Spindelstufen einer Ähre.
Fig. 5 zeigt ein beispielhaftes Diagramm zur Bestimmung der Ährenlänge.
Fig. 6 zeigt ein beispielhaftes Diagramm einer Kreuzkorrelationsfunktion zur Bestimmung der Anzahl der Spindelstufen.
Fig. 7 zeigt ein Blockdiagramm eines Systems zum Bestimmen der Gesamtkörnerzahl einer Ähre eines Getreidehalmes.
Fig. 8 zeigt ein Blockdiagramm eines Beispiels für ein Computersystem zusammen mit dem System entsprechend Figur 7.
[0047] Im Kontext dieser Beschreibung werden die folgenden Konventionen, Begriffe und/oder Ausdrücke genutzt:
[0048] Der Begriff „Getreidehalm" bzw. „Ähre eines Getreidehalmes" muss nicht weiter interpretiert werden. Es kann sich dabei um eine gewöhnliche Getreidepflanze handeln, die auf
einem landwirtschaftlichen Feld wächst. Typischerweise kann es sich bei dem Getreide um Weizen, Roggen oder Gerste handeln.
[0049] Der Begriff „digitales Bild" beschreibt eine digitales Abbildung einer realen Szene, die typischerweise mit einer Digitalkamera aufgenommen werden kann. Das digitale Bild oder die digitale Aufnahme kann sich aus Pixeln unterschiedlicher Farbwerte zusammensetzen und so einen bildlichen Gesamteindruck erzeugen.
[0050] Der Begriff„Blütenansicht der Ähre" beschreibt eine Ansicht der Ähre, in der die Körner gut sichtbar sind. Die Blütenansicht kann auch als Körneransicht der Ähre bezeichnet werden, da in dieser Ansicht die Körner der Ähre am besten sichtbar sind. Bei dieser Ansicht erstrecken sich die Grannen überwiegend jeweils links und rechts weg von der Ähre. In dieser Ansicht ist die Ansichtsfläche der Ähre am größten. Im Gegensatz zu Blütenansicht beschreibt der Begriff „Spindelstufenansicht" eine um 90° gedrehte Ansicht der Ähre, also eine Sicht auf die schmale Ansicht der Ähre. Hierbei schaut man also auf die schmalere Seite der Ähre bzw. auf die Grannen der Ähre, wenn die Längsachse der Ähre vertikal verläuft.
[0051] Eine „Referenzkarte" ist im Kontext dieser Beschreibung ein flacher Gegenstand - beispielsweise eine einfarbige Karte - deren Farbwert sich gut von dem der Ähre unterscheidet. Ein komplementärer Farbton - z.B. blau - gegenüber einem typischen Farbwert der Ähre hat sich als vorteilhaft erwiesen.
[0052] Der Begriff„Template-Matching- Verfahren" ist dem Fachmann als ein Verfahren, um eine Struktur eines digital dargestellten Gegenstandes zu erfassen, bekannt. Eine detaillierte Beschreibung findet sich beispielsweise in S. Kim, J. McNames, Automatic spike detection based on adaptive template matching for extracellular neural recordings" ', Journal of Neuroscience Methods 165 pp. 165-174, 2007.
[0053] Der Begriff "Entwicklungsstufe" oder„Entwicklungsstadium" beschreibt eine Stufe im natürlichen Lebenszyklus einer Pflanze - hier eines Getreides - von der Aussaat bis zur Ernte. Es hat sich gezeigt, dass die Nutzung des„BBCH-Code" zur Beschreibung der Entwicklungsstufe einer Pflanze hilfreich ist. Die Abkürzung "BBCH" steht offiziell für "Biologische Bundesanstalt, Bundessortenamt und CHemische Industrie" und beschreibt eine phänomenologische Entwicklungsstufe von Pflanzen. Der Code beginnt bei 00 und endet bei 89. Ein BBCH-Code zwischen 10 und 19 beschreibt beispielsweise ein frühes Entwicklungsstadium eines Blattes. Ab einem BBCH-Code von 60 erscheint die Blüte der Pflanze (bis 69). Mit den jeweils nächsten zehn Schritten wird die Fruchtentwicklung (70-79), die Samenreife (80-89) und das Absterben (90-99 - bei einjährigen Pflanzen) der Pflanze beschrieben.
[0054] Fig. 1 zeigt ein Blockdiagramm eines Ausführungsbeispiels des erfinderischen Verfahrens 100 zum Bestimmen der Gesamtkörnerzahl einer Ähre eines Getreidehalmes. Das Verfahren weist dabei zunächst ein Bereitstellen, 102, eines digitalen Bildes der Ähre in einer Spindelstufenansicht der Ähre auf. Dabei sollte sich die Ähre bei der Aufnahme in dem digitalen Bild vor einer Referenzkarte als Hintergrund befinden. Die Referenzkarte weist aus praktischen Gründen idealerweise die Komplementärfarbe (z.B. blau) zu einer typischen Farbe einer Kornähre (gelblich) auf.
[0055] Als weiteren Schritt weist das Verfahren ein Bestimmen, 104, einer Länge der Ähre entlang der Längsachse der Ähre durch eine Trennung von Bildpixeln des digitalen Bildes der Ähre von dem Hintergrund auf. Diese Trennung kann vorteilhafterweise mittels eines Farbhistogrammverfahrens geschehen. Auf diese Weise lässt sich eine zusammenhängende Fläche der Ähre vor dem Hintergrund der Referenzkarte unterscheiden. Zusätzlich weist das Verfahren in diesem Schritt ein Vergleichen, 106, von Pixelkoordinaten an einem Ende der Ähre mit
Pixelkoordinaten der Ähre an einem entgegengesetzten Ende der Ähre in Längsrichtung der Ähre mit Bildmarken auf der Referenzkarte auf. Durch eine auf der Referenzkarte vorhandenen Skala kann so leicht die Länge der Ähre ermittelt werden. Dazu müssen einfach nur entsprechende y- Koordinaten voneinander subtrahiert werden.
[0056] Vorteilhaft ist es, wenn die Abbildung der Ähre vor der Längenermittlung einer Transformation unterzogen wird, welche perspektivische Verzerrungen und Schräglagen ausgleicht.
[0057] Anschließend kann in dem Verfahren ein Bestimmen, 108, einer Anzahl von Spindelstufen der Ähre durch ein Template-Matching- Verfahren vorgenommen werden, auf die eine Bestimmung einer Kornanzahl der Ähre (Schritt 110) durch eine Multiplikation der ermittelten Spindelstufen mit einem Faktor, welcher die Zahl der Körner pro Spindelstufe angibt und beispielsweise einen Wert von 4 hat, folgt.
[0058] In einem letzten Schritt des Verfahrens wird ein Bestimmen, 112, des Gewichtes aller Körner der Ähre durch eine Multiplikation der bestimmten Kornanzahl mit einem Kalibrierungsfaktor erreicht. Der Kalibrierungsfaktor kann eine Vielzahl von variablen Einflussgrößen berücksichtigen. Durch ein kontinuierliches Vergleichen von durch das Verfahren ermittelten Korngewichten mit dem durch Auswiegen ermittelten Korngewichten kann ein kontinuierlicher und maschinengestützter Lernprozess innerhalb des Verfahrens verwirklicht werden.
[0059] Außerdem sei an dieser Stelle auf eine alternative Form zum Verfahren 100 zum Bestimmen der Gesamtkörnerzahl einer Ähre eines Getreidehalmes hingewiesen: Auch gemäß dieser Ausführungsform beginnt der Prozess mit einer Bereitstellung eines digitalen Bildes der Ähre. In diesem Fall wird eine Aufnahme der Ähre in der Blütenansicht - also in der Ansicht, in der die Körner der Ähre gut sichtbar sind - vor einer Referenzkarte gemacht. Es folgt ein Ermitteln einer Fläche der Blütenansicht der Ähre durch eine Trennung von Bildpixeln des digitalen Bildes der Ähre von dem Hintergrund z.B. mittels eines Farbhistogrammverfahrens, und ein Vergleichen der von einer von der Ähre eingenommenen Fläche mit Bildmarken auf der Referenzkarte. Dabei kann es sich bei den Bildmarken um die Skala der Referenzkarte handeln oder um die bekannten Abstände anderer Bildmarken auf der Referenzkarte. Anschließend erfolgt ein Bestimmen des Gewichtes aller Körner der Ähre durch eine Multiplikation der ermittelten Fläche der Ähre mit einem Kalibrierungsfaktor. Es hat sich gezeigt, dass es eine ausgeprägt direkte Korrelation zwischen der Projektionsfläche der Ähre in Blütenansicht zur Anzahl der Körner der Ähre gibt. Dieses Phänomen wir hier genutzt, um einfach und elegant das Körnergewicht der Ähre zu ermitteln. Auch dieses alternative Verfahren lässt sich besonders gut ab einem Wachstumsstadium anwenden, das größer als 60 BBHC ist. Es funktioniert allerdings auch schon bei geringeren BBHC-Werten.
[0060] Fig. 2 zeigt einen ersten Teil eines Blockdiagrammes einer implementierungsnäheren Ausführungsform des vorgeschlagenen Verfahrens. Zunächst wird eine digitale Abbildung 208 einer Ähre zusammen mit einer Referenzkarte empfangen. Eine Geometriekorrektur 202 enthält auch eine Eckende tektion 204 der Ecken einer farbigen Fläche auf der Referenzkarte. Anschließend erfolgt eine Transformation 206 von Perspektive und Bildausschnitt, sodass Flächen außerhalb des farbigen Hintergrundes mit der darauf liegenden Ähre ignoriert werden.
[0061] Der so erhaltene Bildausschnitt 210 wird an eine Ährendetektionsfunktion 212 weitergegeben. Die eigentliche Ährendetektion geschieht mittels einer Analyse 214 mittels eines Farbhistogrammverfahrens, um Pixel der Ähre und des farbigen Hintergrundes voneinander zu unterscheiden (Segmentierung Vorder-/Hintergrund 216). Anschließend wird das erkannte Ährenobjekt maskiert, 218. Bei dieser maskierten Darstellung können erkannte Bildpixel des
Hintergrundes als logische„0" dargestellt werden. Das Ergebnis 220 ist eine Darstellung der Ähre vom Hintergrund separiert.
[0062] In einem nächsten Verarbeitungsblock erfolgt eine Ährenvorverarbeitung 222. Diese kann einen Schritt einer Beleuchtung- und Kontrastoptimierung 224 aufweisen. Als nächstes können eine transformatorische Begradigung der Ähre und eine weitere Reduktion des zu verarbeitenden Bildausschnittes erfolgen (Schritt 226). Durch eine optische Grannenentfernung wird eine Erkennung der Ansicht der Ähre möglich (Schritt 227). Idealerweise handelt es sich bei der Ansicht der Ähre um eine Spindelstufenansicht. Die weitere Verarbeitung des Ergebnisses 228 der Ährenvorverarbeitung erfolgt anhand von Fig. 3.
[0063] Fig. 3 zeigt einen zweiten Teil eines Blockdiagrammes einer implementierungsnäheren Ausführungsform des vorgeschlagenen Verfahrens. Hier erfolgt die eigentliche Ährenanalyse 302. Dazu ist zunächst eine Geometrieanalyse 304 erforderlich, deren Ergebnis eine Feststellung der Ährenlänge 309 ist. Ein Vergleich der obersten Pixel der Ähre mit der abgebildeten und erkannten Skala bzw. der bekannten Größe der farbigen Fläche der Referenzkarte - ggfs. unter Zuhilfenahme von Eckmarken - ermöglicht in Verbindung mit dem Abstand zum Halmansatz am unteren Ende der Ähre eine Bestimmung der Länge der Ähre in Längsrichtung, wie es in Fig. 5 dargestellt ist.
[0064] Bei dem anschließenden Template-Matching- Verfahren 306 wird ein mittlerer ausgewählter Bereich 310 der Ähre 228 in der zu diesem Zeitpunkt dargestellten Form pixel weise in vertikaler Richtung entlang der vertikalen Längsachse der Ähre 228 über diese verschoben. Dabei wird jeweils ein Ähnlichkeitsfaktor bestimmt, der mathematisch durch die Kreuzkorrelationsfunktion 308 zwischen Template- und Bildfunktion bestimmt ist. Durch das periodische Muster der Ährenstruktur ergeben sich im Verlauf der Kreuzkorrelationsfunktion 308 ausgeprägte Maxima- Werte, die im periodischen Abstand zueinander liegen. Ein Ergebnis einer derartigen Korrelationsanalyse 308 ist in Fig. 6 dargestellt, die die Periodenlänge und damit den Abstand der Spindelstufen zueinander liefert. Das Verhältnis von Ährenlänge 309 zu Periodenlänge führt auf ein genaues Maß für die halbe Anzahl an Spindelstufen, weil die Periodizität der Spindelstufen sehr deutlich und mit gleichbleibendem Abstand ausgeprägt ist.
[0065] Anschließend erfolgt auf der so gelegten Basis die Kornanalyse 312 mit der Bestimmung der Anzahl der Körner 316 und der Bestimmung des 1000-Korngewichtes 314. Ergänzend kann sich eine Ertragsberechnung 318 des gesamten Feldes, oder eines Teilbereiches davon, über eine Ertragsformel 320 anschließen.
[0066] Fig. 4 zeigt eine abstrakt dargestellt Ähre 208 und ein Beispiel einer farbigen Fläche 402 einer Referenzkarte (die größer sein kann als die Fläche 402; Farbe nicht dargestellt) zusammen mit der darauf liegenden Ähre 208. Die farbige Fläche 402 weist Bildmarken wie eine Skala 404 sowie beispielsweise Bildeckmarken 414 auf. Die Bildeckmarken 414 können verschiedene Ausprägungen haben.
[0067] In Verlängerung der Körner 408 sind Grannen 406 symbolisch dargestellt, die je nach Sorte des Getreides unterschiedlich lang sein können. Außerdem ist noch ein Stück des Halmes 410 dargestellt, der lediglich zur Erkennung des unteren Ährenfeldes seine Bedeutung für das vorgestellte Verfahren hat. Bei der hier dargestellten Ansicht handelt es sich - aus Einfachheitsgründen - um die Blütenansicht der Ähre. Die Spindelstufenansicht, in der die eigentliche digitale Aufnahme der Ähre erfolgt, ist eine um 90° um die Längsachse der Ähre gedrehte Ansicht.
[0068] Die Ähre 208 sollte auf der farbigen Fläche 402 der Referenzkarte so ausgerichtet sein, dass die Längsachse 412 der Ähre 208 möglichst parallel zu einer Seitenlinie der farbigen Fläche 402 ausgerichtet ist. Eine typisch gekrümmte Form der Ähre 208 kann durch eine Transformation der
Darstellung der Ähre 208 so adaptiert werden, dass die Längsachse der Ähre tatsächlich parallel zu einer Seitenlinie der farbigen Fläche 402 der Referenzkarte ausgerichtet ist. Die Referenzkarte ist typischerweise ein wenig größer als die darauf enthaltene farbige Fläche 402, deren Farbe beispielsweise„blau" ist.
[0069] Eine tatsächliche Abbildung einer Ähre 208 stellt selbstverständlich einen zusammenhängenden Bereich (beispielsweise dargestellt in Figur 2, 220, 228) dar. Die hier genutzte Form der Darstellung der Ähre 208 soll nur als Darstellung der Ausrichtung der Ähre 208 bezüglich der Referenzkarte verstanden werden.
[0070] Fig. 4a zeigt eine Abbildung einer Ähre 208 (links) und eine Ansicht 426 der Spindelstufen einer Ähre (rechts). Die Abbildung der Ähre 208 zeigt deutlich die unterschiedlichen Körner 416, 418, 420, 422 im unteren Bereich der Ähre sowie den Halm 410. Entsprechend erkennt man in der abstrakteren Form der Ähre auf der rechten Seite der Fig. 4a die unterschiedlichen Spindelstufen 424 der Ähre 208.
[0071] Fig. 5 zeigt ein beispielhaftes Diagramm 500 zur Bestimmung der Ährenlänge. Hierbei erkennt man, dass pro Pixelzeile (x-Achse), die sich auf die Ähre beziehen, die Breite der Ähre (y- Achse) aufgetragen ist. Die einzelnen relativen Maxima - oder eine eng zusammen liegende Gruppe von relativen Maxima - beziehen sich auf jeweils eine Spindelstufe. Durch einfaches Abzählen der relativen Maxima bzw. der Gruppen der relativen Maxima lässt sich die Anzahl der Spindelstufen erkennen. Aus dem Beginn der Pixel der Ähre bei ca. Zeile 60 und dem Ende der Pixel der Ähre bei ca. Zeile 1710 ergibt sich unter Zuhilfenahme der Skala der Referenzkarte bzw. durch eine Kenntnis der Breite eines individuellen Pixels bzw. einer Pixelzeile die Ährenlänge 502.
[0072] Fig. 6 zeigt ein beispielhaftes Diagramm 600 einer Kreuzkorrelationsfunktion zur Bestimmung der Anzahl der Spindelstufen auf Basis des Template-Matching- Verfahrens. Auf der x-Achse ist die jeweilige Position des Templates (Muster aus der Mitte der Ähre) gegenüber einem Korrelationswert (Ähnlichkeitswert) des Templates gegenüber der vollständigen Ähre dargestellt. Man erkennt in der Mitte der Darstellung - etwa bei dem Pixel-Wert 525, vgl. 602/max. Übereinstimmung - einen Korrelationswert von praktisch 1. An dieser Stelle liegt das Template genau an seiner ursprünglichen Stelle. Aus den Abständen der relativen Maxima der Darstellung lässt sich eine Periodenlänge 604 bestimmen, die dem Abstand der einzelnen Spindelstufen zueinander entspricht. Aus der ermittelten Länge der Ähre und der mittleren ermittelten Periodenlänge 604 lässt sich auch die Anzahl der Spindelstufen durch Division und Rundung errechnen.
[0073] Fig. 7 zeigt ein Blockdiagramm eines Systems zum Bestimmen der Gesamtkörnerzahl einer Ähre eines Getreidehalmes. Das System weist eine Empfangseinheit 702 zum Empfangen eines digitalen Bildes der Ähre in einer Spindelstufenansicht der Ähre auf. Wenn das System zum Bestimmen der Gesamtkörnerzahl in einem mobilen Gerät integriert ist, handelt es sich bei der Empfangseinheit um eine digitale Kamera. In einer anderen Ausführungsform wird eine digitale Aufnahme der Ähre von einer Digitalkamera aufgenommen und an die Empfangseinheit 702 - gegebenenfalls drahtlos - übermittelt. Die Ähre in dem digitalen Bild wird dabei vor einer Referenzkarte als Hintergrund aufgenommen. Optional kann das System eine Anzeigeeinheit 704 aufweisen. Darüber hinaus weist das System eine Vermessungseinheit 706 auf. Sie ist angepasst zur Bestimmung einer Länge der Ähre entlang der Längsachse der Ähre durch eine Trennung von Bildpixeln des digitalen Bildes der Ähre von dem Hintergrund. Darüber hinaus ist die Vermessungseinheit 706 angepasst für ein Vergleichen von Pixelkoordinaten an einem Ende der Ähre mit Pixelkoordinaten der Ähre an einem entgegengesetzten Ende der Ähre in Längsrichtung der Ähre mit Bildmarken auf der Referenzkarte.
[0074] Ergänzend weist das System eine Spindelstuf enberechnungseinheit 708, die angepasst ist zur Bestimmung einer Anzahl von Spindelstufen der Ähre durch ein Template-Matching- Verfahren, und eine Kornzahlbestimmungseinheit 710 auf, die angepasst ist zur Bestimmung einer Kornanzahl der Ähre durch eine Multiplikation der ermittelten Spindelstufen mit einem Faktor.
[0075] Schließlich ist in dem System noch eine Gewichtsermittlungseinheit 712 vorgesehen, die angepasst ist zur Bestimmung des Gewichtes aller Körner der Ähre durch eine Multiplikation der bestimmten Kornanzahl mit einem Kalibrierungsfaktor.
[0076] Wie bereits oben ausgeführt kann das System Teil eines Server-Systems sein, welches das oder die digitalen Aufnahmen von einer Digitalkamera - beispielsweise einem Smartphone - empfängt. Andererseits ist es auch möglich - bei entsprechender Rechenleistung - das gesamte System in das mobile System - zum Beispiel in ein Smartphone oder in eine Digitalkamera - zu integrieren.
[0077] Ausführungsformen der Erfindung können zusammen mit praktisch jeder Art von Computer - insbesondere auch mit einem Smartphone - unabhängig von der Plattform, die zum Speichern und Ausführen von Programmcode genutzt wird, implementiert sein. Fig. 8 stellt exemplarisch ein Computersystem 800, welches zur Ausführung von Programmcode geeignet ist, der sich auf das vorgeschlagene Verfahren bezieht, dar.
[0078] Bei dem Computersystem 800 handelt es sich nur um ein Beispiel eines geeigneten Computersystems und es ist nicht beabsichtigt, hierin eine Limitation des Umfanges einer Nutzung oder Funktionalität der hier beschriebenen Erfindung darzustellen. Im Gegenteil: Das Computersystem 800 ist geeignet, um jedes Merkmal bzw. jede Funktionalität der hier beschriebenen Ausführungsbeispiele zu implementieren. In dem Computersystem 800 sind Komponenten enthalten, die mit einer Vielzahl von anderen allgemeinen oder dedizierten Computersystemumgebungen und/oder Konfigurationen zusammenarbeiten können.
[0079] Beispiele von bekannten Computersystemen, Umgebungen und/oder Konfigurationen, die geeignet sein können, um mit dem Computersystem 800 zusammenzuarbeiten, umfassen, ohne darauf beschränkt zu sein, Tablet-Computer, Notebook-Computer und/oder andere mobile Rechensysteme und/oder Smartphones sowie auch Multiprozessorsysteme, Mikroprozessorbasierende Systeme, programmierbare Consumer-Elektronik oder auch Digitalkameras oder PDAs (Personal Digital Assistent).
[0080] Das Computersystem 800 sei hier in einem allgemeinen Kontext von durch ein Computersystem ausführbaren Instruktionen beschrieben. Dabei kann es sich auch um Programmmodule handeln, die von dem Computersystem 800 ausgeführt werden. Im Allgemeinen weisen Programmmodule Programmroutinen, Teilprogramme, Objekte, Komponenten, Verarbeitungs-und/oder Entscheidungslogik, Datenstrukturen, usw. auf, die eine bestimmte Aufgabe ausführen oder einen bestimmten abstrakten Datentyp repräsentieren.
[0081] Wie bereits erwähnt, kann das Computersystem 800 in Form eines„General Purpose" Rechensystems implementiert sein. Dabei enthalten die Komponenten des Computersystems 800 - ohne darauf beschränkt zu sein - ein oder mehrere Verarbeitungseinheiten 802 (CPU), ein Speichersystem 804 und einen Systembus 818, welcher verschiedene Systemkomponenten - inklusive des Hauptspeichers 804 mit dem Prozessor 802 - verbindet.
[0082] Das Computersystem 800 weist auch verschiedene Computer-lesbare Medien auf. Derartige Medien umfassen alle von dem Computersystem 800 zugreifbare Medien. Dazu gehören sowohl flüchtige wie auch nichtflüchtige Medien, die sowohl entfernbar als auch fest verbaut sein können.
[0083] Der Hauptspeicher 804 kann auch Computer-lesbare Medien in Form eines flüchtigen Speichers aufweisen. Das kann zum Beispiel ein Random Access Memory (RAM) bzw. auch ein Cache-Speicher sein. Das Computersystem 800 kann weiterhin entfernbar und nicht entfernbare Speichermedien aufweisen. Das Speichersystem 812 kann beispielsweise die Fähigkeit zum Speichern von Daten auf einem nicht entfernbaren Speicher-Chip aufweisen. Die Speichermedien können an den Systembus 806 durch ein oder mehrere Daten-Interfaces angeschlossen sein. Wie weiter unten genauer beschrieben, kann der Speicher 804 mindestens ein Computerprogrammprodukt aufweisen, welches eine Mehrzahl von Programmmodulen (mindestens eines) aufweist, die so konfiguriert sind bzw. das Computersystem so konfigurieren, dass die Funktionen der Ausführungsformen der Erfindung ausgeführt werden können.
[0084] Ein Programm, welches eine Mehrzahl von Programmmodulen aufweist, kann beispielsweise in dem Speicher 804 gespeichert sein, genauso wie ein Betriebssystem, ein oder mehrere Anwendungsprogramme, Programmmodule und/oder Programmdaten.
[0085] Das Computersystem 800 kann weiterhin mit mehreren externen Vorrichtungen wie einer Tastatur 808, einem Zeigerinstrument („Maus") 810, einer Anzeige (nicht dargestellt), usw. kommunizieren. Diese Vorrichtungen können beispielsweise in einem berührungsempfindlichen Bildschirm 812 (Touch-Screen) kombiniert sein, um eine intuitive Interaktion mit dem Computersystem 800 zu ermöglichen. Das Computersystem 800 kann auch akustische Ein- /Ausgabevorrichtungen 816 aufweisen. Außerdem können weitere Verbindungen vorhanden sein, um mit einem oder mehreren anderen Datenverarbeitungsvorrichtungen zu kommunizieren (Modem, Netzwerkanschlüsse, usw.). Außerdem kann eine derartige Kommunikation über Eingabe/ Ausgabe-Interfaces (I/O) erfolgen. Weiterhin kann das Computersystem 800 über ein oder mehrere Netzwerke - wie einem LAN (local area network), einem WAN (wide area network) und/oder über ein öffentliches (mobiles) Netzwerk z.B. Internet) über den Adapter 814 kommunizieren. Wie dargestellt, kann der Netzwerkadapter 814 mit anderen Komponenten des Computersystems 800 über den Systembus 818 kommunizieren. Außerdem sei angemerkt, dass - obwohl es nicht dargestellt ist - auch andere Hardware- und/ oder Software-Komponenten im Zusammenhang mit dem Computersystem 800 eingesetzt werden können. Das betrifft beispielsweise Micro-Code, Device-Treiber, redundante Verarbeitungseinheiten, usw.
[0086] Darüber hinaus kann das System 700 zum Bestimmen eines Gewichtes aller Körner einer Ähre eines Getreidehalmes an das Bussystem 818 angeschlossen sein. Somit kann das Computersystem bzw. das System 700 zum Bestimmen eines Gewichtes aller Körner einer Ähre die digitale Aufnahme empfangen, die Bestimmung des Gewichtes durchführen und das Ergebnis zurück an das mobile Gerät übermitteln. In einer besonderen Ausführungsform kann das System 700 auch in ein mobiles Computersystem (z.B. Hochleistungs-Smartphone) integriert sein.
[0087] Die Beschreibung der verschiedenen Ausführungsformen der vorliegenden Erfindung wurde zu Illustrationszwecken eingesetzt. Sie sind nicht dazu bestimmt, den Umfang der erfinderischen Idee zu begrenzen. Dem Fachmann erschließen sich weitere Modifikationen und Variationen ohne von dem Kern der vorliegenden Erfindung abzuweichen.
[0088] Die vorliegende Erfindung kann als ein System, ein Verfahren und/oder ein Computerprogramm-Produkt bzw. eine Kombination davon realisiert werden. Das Computerprogramm-Produkt kann ein Computer-lesbares Speichermedium (oder einfach „Medium") aufweisen, welches Computer-lesbare Programm-Instruktionen enthält, um einen Prozessor zu veranlassen, Aspekte der vorliegenden Erfindung zu realisieren.
[0089] Das Medium kann dabei auf elektronischen, magnetischen, elektromagnetischen Wellen, Infrarotlicht oder Halbleitersystemen, die auch zur Weiterleitung geeignet sind, aufbauen. Dazu gehören Festkörperspeicher, Speicher mit wahlfreiem Zugriff (RAM) wie auch Nur-Lese-Speicher
(ROM: read-only memory). Die Computer-lesbaren Programm-Instruktionen, die hier beschrieben sind, können auf das entsprechende Computersystem von einem potenziellen Service- Anbieter über eine mobile Netzwerk- Verbindung oder ein stationäres Netzwerk heruntergeladen werden.
[0090] Die Computer-lesbaren Programm-Instruktionen zur Ausführung von Operationen der vorliegenden Erfindung kann jede Art von maschinenabhängigen oder maschinenunabhängigen Instruktionen, Micro-Code, Firmware, Status setzende Daten bzw. Source-Code oder Objekt- Code, der in einer beliebigen Kombination einer oder mehrerer Programmiersprachen geschrieben ist, aufweisen. Bei den Programmiersprachen kann es sich um C++, Java oder ähnlich moderne Programmiersprachen oder konventionelle prozedurale Programmiersprachen wie der „C"- Programmiersprache oder ähnliche Programmiersprachen handeln. Die Computer-lesbaren Programm-Instruktionen können komplett auf dem Computersystem ausgeführt werden. In anderen Ausführungsformen können elektronische Schaltkreise wie beispielsweise programmierbare Logikbausteine, feldprogrammierbare Gate-Array (PGA) oder programmierbare Logik-Arrays (PLA) die Instruktionen unter Nutzung von Statusinformationen in den Computer-lesbaren Programm-Instruktionen ausführen, um den bzw. die elektronischen Schaltkreise zu individualisieren, um Aspekte der vorliegenden Erfindung auszuführen.
[0091] Aspekte der vorliegenden Erfindungen sind in diesem Dokument unter Zuhilfenahme von Flussdiagrammen und/oder Blockdiagrammen von Methoden, Vorrichtungen (Systeme) und Computerprogramm-Produkten entsprechend den Ausführungsformen der Erfindung dargestellt. Es versteht sich, dass jeder Block der dargestellten Flussdiagramme und/oder Blockdiagramme sowie Kombinationen von Blöcken in den Flussdiagrammen und oder Blockdiagrammen durch Computer-lesbare Programm-Instruktionen implementiert sein können.
[0092] Diese Computer-lesbaren Programm-Instruktionen können einem Prozessor eines "General Purpose-Computers" oder spezieller Computer-Hardware oder anderen programmierbaren Datenverarbeitungsvorrichtungen zur Verfügung gestellt werden, um eine Maschine zu erzeugen, sodass die Instruktionen, welche durch den jeweiligen Prozessor ausgeführt werden, Mittel zur Implementierung der Funktionen/Aktionen, welche in dem entsprechenden Flussdiagramm und/oder Blockdiagramm oder Blöcken davon dargestellt sind, erzeugen. Diese Computer-lesbaren Programm-Instruktionen können auch auf einem Computer-lesbaren Speichermedium gespeichert sein, sodass sie einen Computer oder eine programmierbare Datenverarbeitungsvorrichtung veranlassen, die in dem Medium gespeicherten Instruktionen durch den jeweiligen Prozessor auszuführen, sodass Aspekte bzw. Aktionen des in diesem Dokument beschriebenen Verfahrens ausgeführt werden.