Benutzer-Werkzeuge

Webseiten-Werkzeuge


Seitenleiste

ss16:mathekamera

HINWEISE ZUR VERBESSERUNG

  • Die Darstellung der Projektbestandteile, bzw. des Programms ist etwas kurz. Es wäre gut, einen Abschnitt zu den Bestandteilen zu haben mit Unterabschnitten: Zeichenerkennung, Bildsegementierung, Auswertung.
    • Bei der Zeichenerkennung lässt sich zwar auf den verlinkten knn-Artikel verweisen. es sollte aber trotzdem die Idee des Algorithmus kurz erläutert werden, eventuell auch alternative Algorithmen wenigstens erwähnt. Die MNIST-Daten und anderen Daten sollten erklärt werden (welches Format die Daten haben, wo man sie her kriegt), die Notwendigkeit von Zentrierung und Normierung erklärt werden, gern in Unter-unter-Abschnitten, auch an dieser Stelle können schon erläuternde Programmschnipsel vorkommen. Wichtig ist, an dieser Stelle auch mögliche Fehlerquellen und Probleme zu diskutieren. Möglichst viel von dem, was ihr verstanden hab, sollte in der Darstellung vorkommen, um von jemand anderem, der sich neu mit so etwas beschäftigt, nachvollzogen werden zu können.
    • Bei der Bildsegmentierung wäre ebenfalls eine Beschreibung des Algorithmus gut.
  • Den ganzen Code zu verlinken, finde ich gut. Er sollte aber stärker kommentiert sein. Auch hier ist das Ziel Lesbarkeit durch Fremde.
  • Der Bericht über die Projektarbeit sollte in einer kleinen „Erzählung“ die Protokolle zusammenfassen und auf die Protokolle für die Details verlinken. Auch hier ist wieder die Lesbarkeit das eigentliche Ziel. Wer die strukturierte Dokumentation liest, soll sich nicht zu viel zusammensuchen müssen.

Mathekamera

Programm das abfotografierte Gleichungen selbstständig lösen kann.

Teilnehmer:

  • Henrik
  • Victor

Hilfsmittel:

Einführung:

Ziel ist es ein Programm zu schreiben welches als Eingabe eine abfotografierte Gleichung einlesen, erkennen und anschließend lösen kann. Das erste Ziel und das Hauptproblem bei diesem Programm ist zu erreichen, dass das Programm das Geschriebene richtig einliest und die aufgenommene Gleichung erkennt. Dazu wird als Hilfsmittel eine foto-/videobasierte Handschriftenerkennung benötigt. Außerdem wird dazu eine Bibliothek mit vielen Schriftproben zu den einzelnen Zeichen benötigt, da Schriften sehr unterschiedlich sein können und je mehr Schriftproben zu Verfügung stehen, umso größer ist die Wahrscheinlichkeit das die Schrift erkannt wird. Wenn das Programm die Gleichungen richtig einliest, ist das nächste Ziel zu erreichen, dass das Programm die Art der Gleichung erkennt und diese dann anschließend nach den dafür geltenden Vorschriften löst. Das Programm soll außerdem die fotografierte Gleichung ausgeben, sodass man erkennen kann ob es die Gleichung richtig erkannt hat.

Programm:

Das Programm besteht aus den Bestandteilen Handschrifterkennung, Segmentierung und Auswertung, welche im endgültigem Programm zusammengeführt werden.
Die vorläufige Endversion besteht aus einem main, einem predict, einem center_image und einem einteilen Teil. In center_image wird das… Dafür wird bildeinlesen importiert. Die einzelnen Teile (predict, center_image, einteilen) werden in der main importiert

Verlauf:

Als erstes haben wir uns mit der Handschrifterkennung befasst.
Den Algorithmus dafür haben wir zuerst selbst programmiert und anschließend aufgrund der Geschwindigkeit aus der sklearn-Bibliothek übernommen.
Anschließend haben wir uns mit der Segmentierung beschäftigt und zum Schluss haben wir das Programm zusammen gefügt.
Der genaue Verlauf der Arbeit kann aus den Protokollen entnommen und nachvollzogen werden.

Zwischenziel:

  • Ziffernerkennung mit k-nearest-Neighbor-Algorithmus ✔
  • Symbolerkennung mit k-nearest-Neighbor-Algorithmus ✔
  • Partitionierung der Aufgabe ✔
  • Einlesen von handgeschriebenen Aufgaben
  • Lösung von eingelesenen Aufgaben

Fazit und Ausblick:

Die Partitionierung der Gleichung funktioniert. Aus dem Datensatz haben wir alle Zeichen die wir erstmal nicht benötigen herausgenommen. Das Programm kann leichte Aufgaben (z.B 1+2) einlesen, lösen und das Ergebnis ausgeben.
Das Programm ist auf jeden Fall erweiterbar, d.h. die entfernten Zeichnen könnten wieder integriert werden, um auch komplexere Aufgaben zu lösen. Außerdem könnte das Programm um ein graphical user interface (GUI) erweitert werden.

ss16/mathekamera.txt · Zuletzt geändert: 2016/09/22 22:00 von stefanborn