Projektarbeit Optische überprüfung von Äpfeln auf Faulanteil
Posted: Wed 5. Aug 2009, 12:53
Hallo,
ich versuche mich im Moment zwecks einer Projektarbeit im Rahmen eines Master-Studiengangs an Mebrain.
Die Grundlagen glaube ich ganz gut verstanden zu haben, jedoch stoße ich immer auf kleinere Probleme und bin mir noch unsicher wie man richtig an die Problemstellung herangehen sollte.
Nun kurz zu dem Projekt:
Ich habe Lebensmitteltechnologie studiert und muss im Master ein Projekt bearbeiten (Laut meinem Betreuer etwa Aufwand einer halbe Master-arbeit).
Mein Betreuer ist im Fachgebiet Agrartechnik und das Projekt in dem ich mitarbeite dreht sich um Apfel-Aussortierung. Es wird an einer Anlage geforscht, die Äpfel zerstörungsfrei und ohne optische Mittel anhand ihres Faulheitsgrads aussortieren kann. Hierfür werden Äpfel zum Faulen gebracht und mit der Anlage vermessen. Jedoch wird nach jeder Messung der Faul-anteil des Apfels zur Überprüfung aus dem Apfel ausgekratzt und somit wird der Apfel zerstört.
Nun zu meinem Teil in diesem Projekt:
Damit man den Fäulnissverlauf der Äpfel beobachten kann, darf man die Äpfel nicht zerstören, also habe ich erst einmal versucht mithilfe von optischer Analyse die Faul-stellen an der Oberfläche der Äpfel zu vermessen. Hierfür habe ich mithilfe einer Kamera und eines Drehtellers mit Stellmotor in einem einheitlich beleuchtetem Kasten den Apfel von allen Seiten fotografiert und füge die einzelnen Ausschnitte des Apfels zu einem "Gesamt-Panorama" zusammen (Die Software für Foto+Drehen+Panorama habe ich in Labview erstellt und die Messung dauert ca 1min pro Apfel).
Leider korreliert dies nur bedingt mit dem Faul-anteil des Apfels, da ich das Fortschreiten des Fäulnis-Verlaufs ins Innere des Apfels nicht sehen kann. Also habe ich noch andere Werte die ich schnell und zerstörungsfrei aufnehmen konnte gesammelt. Dies sind Lagerdauer, Anfangsgewicht, Gewichtsverlust und Apfelsorte.
Nun habe ich ein einfaches ANN mit Optischer Faul-Anteil, Lagerdauer, Anfangsgewicht, Gewichtsverlust und Apfelsorte als Inputs und wirklicher Faulanteil als Output erstellt. Ich habe Messdaten von 200 Äpfel und habe 150 zum anlernen und 50 zum überprüfen des Netzes genommen. Erste versuche mit dem ANN sehen sehr vielversprechend aus, aber ich bin mir mit meiner Herangehensweise noch nicht sicher.
Gibt es irgendeine Empfohlene Herangehensweise, die man beim erstellen eines ANN einhalten sollte (z.B. sich bei der Hidden-Layer anzahl hocharbeiten, oder verschiedenste Teacher ausprobieren) und wie stellt man das herangehen dann in der Arbeit dar. Ich habe z.B. eine Quelle gefunden in der die verschiedenen Korrelationen und Fehler (RMSE, SE etc.) für verschiedene Teacher, Transfer Funktionen und Anzahl der Neuronen angegeben wurden, aber die Verbindungsart der Neuronen und die Anzahl der hidden Layers wurde nicht verändert. Ist so eine Vorgehensweise Empfehlenswert? Gibt es noch andere Möglichkeiten die Qualität eines Netzes anzugeben?
Zudem habe ich immer mal kleinere Probleme mit dem Teacher:
Ab und zu passiert es, dass der Teacher Anfangs einen relativ kleinen Net Error erreicht (z.B. 0,13) und dann plötzlich der Net Error wieder rapide steigt (z.B. >3) und sich nicht mehr verbessert. Zudem habe ich immer mal das Problem, dass wenn ich das Netz gut angelernt habe (Net Error 0,1) und überprüfen will (Ich lade die 50 Testwerte per Lessen Editor und drücke Evaluate Net) bekomme ich einen wesentlich höheren Net Error (z.B. 0,5). Nehme ich dann wieder die Lerndaten und überprüfe das Netz ist der Net Error auch wesentlich höher obwohl ich nichts am Netz geändert habe. (Mache ich hier irgendeinen Fehler?)
Vielen Dank auch schon einmal an Thomas Jetter, dass er dieses einfach zu bedienende und tolle Programm zur Verfügung gestellt hat.
ich versuche mich im Moment zwecks einer Projektarbeit im Rahmen eines Master-Studiengangs an Mebrain.
Die Grundlagen glaube ich ganz gut verstanden zu haben, jedoch stoße ich immer auf kleinere Probleme und bin mir noch unsicher wie man richtig an die Problemstellung herangehen sollte.
Nun kurz zu dem Projekt:
Ich habe Lebensmitteltechnologie studiert und muss im Master ein Projekt bearbeiten (Laut meinem Betreuer etwa Aufwand einer halbe Master-arbeit).
Mein Betreuer ist im Fachgebiet Agrartechnik und das Projekt in dem ich mitarbeite dreht sich um Apfel-Aussortierung. Es wird an einer Anlage geforscht, die Äpfel zerstörungsfrei und ohne optische Mittel anhand ihres Faulheitsgrads aussortieren kann. Hierfür werden Äpfel zum Faulen gebracht und mit der Anlage vermessen. Jedoch wird nach jeder Messung der Faul-anteil des Apfels zur Überprüfung aus dem Apfel ausgekratzt und somit wird der Apfel zerstört.
Nun zu meinem Teil in diesem Projekt:
Damit man den Fäulnissverlauf der Äpfel beobachten kann, darf man die Äpfel nicht zerstören, also habe ich erst einmal versucht mithilfe von optischer Analyse die Faul-stellen an der Oberfläche der Äpfel zu vermessen. Hierfür habe ich mithilfe einer Kamera und eines Drehtellers mit Stellmotor in einem einheitlich beleuchtetem Kasten den Apfel von allen Seiten fotografiert und füge die einzelnen Ausschnitte des Apfels zu einem "Gesamt-Panorama" zusammen (Die Software für Foto+Drehen+Panorama habe ich in Labview erstellt und die Messung dauert ca 1min pro Apfel).
Leider korreliert dies nur bedingt mit dem Faul-anteil des Apfels, da ich das Fortschreiten des Fäulnis-Verlaufs ins Innere des Apfels nicht sehen kann. Also habe ich noch andere Werte die ich schnell und zerstörungsfrei aufnehmen konnte gesammelt. Dies sind Lagerdauer, Anfangsgewicht, Gewichtsverlust und Apfelsorte.
Nun habe ich ein einfaches ANN mit Optischer Faul-Anteil, Lagerdauer, Anfangsgewicht, Gewichtsverlust und Apfelsorte als Inputs und wirklicher Faulanteil als Output erstellt. Ich habe Messdaten von 200 Äpfel und habe 150 zum anlernen und 50 zum überprüfen des Netzes genommen. Erste versuche mit dem ANN sehen sehr vielversprechend aus, aber ich bin mir mit meiner Herangehensweise noch nicht sicher.
Gibt es irgendeine Empfohlene Herangehensweise, die man beim erstellen eines ANN einhalten sollte (z.B. sich bei der Hidden-Layer anzahl hocharbeiten, oder verschiedenste Teacher ausprobieren) und wie stellt man das herangehen dann in der Arbeit dar. Ich habe z.B. eine Quelle gefunden in der die verschiedenen Korrelationen und Fehler (RMSE, SE etc.) für verschiedene Teacher, Transfer Funktionen und Anzahl der Neuronen angegeben wurden, aber die Verbindungsart der Neuronen und die Anzahl der hidden Layers wurde nicht verändert. Ist so eine Vorgehensweise Empfehlenswert? Gibt es noch andere Möglichkeiten die Qualität eines Netzes anzugeben?
Zudem habe ich immer mal kleinere Probleme mit dem Teacher:
Ab und zu passiert es, dass der Teacher Anfangs einen relativ kleinen Net Error erreicht (z.B. 0,13) und dann plötzlich der Net Error wieder rapide steigt (z.B. >3) und sich nicht mehr verbessert. Zudem habe ich immer mal das Problem, dass wenn ich das Netz gut angelernt habe (Net Error 0,1) und überprüfen will (Ich lade die 50 Testwerte per Lessen Editor und drücke Evaluate Net) bekomme ich einen wesentlich höheren Net Error (z.B. 0,5). Nehme ich dann wieder die Lerndaten und überprüfe das Netz ist der Net Error auch wesentlich höher obwohl ich nichts am Netz geändert habe. (Mache ich hier irgendeinen Fehler?)
Vielen Dank auch schon einmal an Thomas Jetter, dass er dieses einfach zu bedienende und tolle Programm zur Verfügung gestellt hat.