Freitag, Fabian and di Benedetto, Josip (2024) Einkaufshelfer Android App. Other thesis, OST Ostschweizer Fachhochschule.
FS 2024-BA-EP-Freitag-di Benedetto-Einkaufshelfer Android App.pdf - Supplemental Material
Download (6MB)
Abstract
Das Ziel dieser Bachelorarbeit ist die
Entwicklung einer Android-App, die Verbrauchern hilft, Ihre Einkaufserlebnisse durch effiziente
Preisvergleiche und die Verfolgung von Preisentwicklungen zu optimieren. Im Kontext der
steigenden Inflation und Preisvolatilität steht die Notwendigkeit für einkommensschwache
Bevölkerungsschichten, Preise von Produkten aus verschiedenen Geschäften zu vergleichen, im
Vordergrund. Dies wird durch die Erstellung einer App ermöglicht, die mittels Optical Character Recognition
(OCR) Technologie die Produktnamen und Preise aus Kassenbelegen extrahiert und vergleicht.
Wesentliche Aspekte dieser Arbeit umfassen die Evaluation geeigneter Technologien für die
automatische und manuelle Erkennung der relevanten Bereiche auf dem Kassenbeleg und die
Textzeichenerkennung mittels einer OCR-Bibliothek. Die App soll es den Nutzern ermöglichen, ohne
Vorkenntnisse Kassenbelege scannen zu können, damit die App automatisch Preisänderungen ermitteln
kann.
Folgende Probleme wurden gelöst: die Erkennung von Textzeichen, relevanten
Textbereichen auf Kassenbelegen und Preisdifferenzen gleichnamiger Produkte aus dem
gleichen Laden. Der entwickelte Prototyp ermöglicht es Nutzern, Belege in der App zu erfassen und
Preisschwankungen seit dem letzten Einkauf zu sehen. Dabei werden nur selbst erfasste Daten
genutzt, ohne Berücksichtigung von Rabattaktionen. Anfangs wurde für die Texterkennung die OCRLibrary des Google ML Kits verwendet, wobei der
Benutzer den relevanten Textbereich zuschneiden musste. Mit einer Regex wurden die Informationen
strukturiert ausgelesen. Um die Texterkennung zu verbessern, wurde experimentell festgestellt, dass
homogene Beleuchtung wichtig ist, um einen effizienten Binarisierungsalgorithmus anzuwenden,
der den Text vom Rest des Bildes löst. Da der Ansatz mit OCR und Regex ein bestimmtes Format der
Kassenbelege erfordert, wurde später die Google Gemini API verwendet. Gemini führt Texterkennung
und automatische Bereichserkennung durch, sodass verschiedene Belegstrukturen besser ausgelesen
werden können. Der Benutzer muss den relevanten Bereich nicht mehr manuell zuschneiden.
Experimentell wurde festgestellt, dass Gemini besser mit Bildern bei schlechter Beleuchtung umgehen
kann, wahrscheinlich durch eigene Bildverarbeitungsschritte wie Binarisierung. Der
Nachteil von Gemini ist die erforderliche Internetverbindung und die längere Verarbeitungszeit.
In einer Weiterentwicklung könnten die erfassten Daten anonymisiert gesammelt und an alle Benutzer
zur Verfügung gestellt werden, um aktuellere Preisänderungen anzuzeigen. Dies eröffnet
Möglichkeiten für ein Empfehlungssystem, z.B. ob ein Produkt an einem anderen Standort günstiger ist oder
ob ein Rabatt wirklich ein Rabatt ist, oder ob zuvor der Preis erhöht wurde.
Die Entwicklung einer App, die Kassenbelege scannen und relevante Informationen daraus
extrahieren kann, ist eine grosse Herausforderung, da Kassenbelege sehr unterschiedliche Formate haben
und die Daten beliebig strukturiert sein können. Modelle, die maschinelles Lernen verwenden, sind
besonders vielversprechend, um mit den verschiedenen Kassenbeleg Formaten umgehen zu
können. In der Arbeit wurde eine Grundlage erarbeitet, auf der ein schnelles und robustes System
zur Lösung der genannten Probleme entwickelt werden kann.
Item Type: | Thesis (Other) |
---|---|
Subjects: | Area of Application > Mobile > Mobile App Technologies > Frameworks and Libraries Technologies > Operating Systems > Android Metatags > IFS (Institute for Software) |
Divisions: | Bachelor of Science FHO in Informatik > Bachelor Thesis |
Depositing User: | OST Deposit User |
Contributors: | Contribution Name Email Thesis advisor Stolze, Markus UNSPECIFIED |
Date Deposited: | 04 Oct 2024 05:47 |
Last Modified: | 04 Oct 2024 05:47 |
URI: | https://eprints.ost.ch/id/eprint/1210 |