Wie wir gelernt haben, Check-Scans schnell zu verarbeiten

In diesem Artikel werde ich Ihnen erzählen, wie wir gelernt haben, Schecks (oder eher Ausrutscher) zu erkennen, auf welche Art von Rechen sie getreten sind und welche Effizienz wir erreicht haben.

Ich werde mit einem kurzen Intro beginnen. Wir verdienen durch die Durchführung von Werbeaktionen für Hersteller und Verkäufer einer Vielzahl von Konsumgütern. Dies ist in der Regel etwas aus der Kategorie „Waren kaufen - Code finden - an uns senden - Preis gewinnen“. Unser Hauptprodukt ist eine Plattform, die diese Codes generiert, akzeptiert, verarbeitet, zur Kommunikation mit den Teilnehmern beiträgt, Boni zahlt und vieles mehr.

In letzter Zeit sahen wir immer häufiger Werbeaktionen von Kollegen im Geschäft, bei denen die Kaufbestätigung kein Werbecode wie im obigen Beispiel war, sondern ein Foto eines Schecks. Und jetzt ist das Phänomen weit verbreitet. Es war nicht erlaubt, fern zu bleiben.

Zunächst habe ich mich in allen Aktien mit Schecks registriert, von denen ich erfahren habe (um ehrlich zu sein, nicht in allen, irgendwo im Bereich der zweiten zehn wurde ich müde). Ich denke, Sie hatten keine Schecks und ich habe beschlossen, ein Katzenfoto auf einem abstrakten Hintergrund anstelle eines Schecks zu verwenden. Stellen Sie sich meine Überraschung vor, als bei allen Aktionen bis auf eine meine Katze vor der Verlosung angenommen und zu mir zugelassen wurde. Und an einigen Stellen haben sie sogar einen Sofortpreis in Form eines Aktionscodes an die Online-Bibliothek ausgegeben. Ehrlich gesagt, in dieser einen Aktion wurde die Katze ebenfalls akzeptiert, versprach jedoch, ihn zur Moderation und innerhalb von 8 (!) Stunden zu schicken, um das Problem meiner Teilnahme an der Aktion zu lösen.

Diese Option passte offensichtlich nicht zu uns. Erstens ist es nicht gut, einer Person zu erlauben, auf einem Foto zu spielen. Er kann, solange die Plattform es erlaubt, einmal ein Foto desselben Schecks hochzuladen, wodurch sich seine Gewinnchancen wiederholt erhöhen. Wenn eine dieser Bewerbungen gewinnt, wird das Original dieses einzelnen Schecks vorgelegt und der Preis entgegengenommen. Natürlich gibt es eine Chance, zweimal zu gewinnen und sich selbst zu verraten, aber das hat uns schon mitgerissen. Zweitens wirken 8 Stunden, in denen Menschen kein Feedback geben, in einer Welt, in der ein Besucher, der mehr als 15 Sekunden auf einer Website verbracht hat, als Zielgruppe angesehen wird, spöttisch. Drittens bedeutet ein Preis für ein Foto einer Katze, sich als nicht sehr kompetenter Organisator zu zeigen. Hier ist er übrigens.



Die Schlussfolgerung war offensichtlich: Wir müssen lernen, Schecks zu erkennen. Die Aufgabe ist schwierig, deshalb gingen wir zu den Fachleuten - einem bekannten Unternehmen. Glücklicherweise hatten sie eine Lösung zur Erkennung von Schecks, die leider nicht auf dem russischen Markt lokalisiert war. Zu Ehren dessen gaben sie uns 1000 kostenlose Versuche, den Scheck zu erkennen, ein Versprechen, mit Ratschlägen zu helfen, und wünschten ihnen viel Glück.

Zu diesem Zeitpunkt erschien eine Anfrage des Kunden. Unsere Aufgabe war es, eine Aktion für ein großes Netzwerk von Einzelhandelsgeschäften durchzuführen. Mit Blick auf die Zukunft werde ich sagen, dass bis zu 1000 Anmeldungen pro Tag akzeptiert wurden. Um sich für Sonderangebote zu qualifizieren, musste man ab einem bestimmten Zeitraum etwas zum Preis von N Rub kaufen. und bezahlen Sie Ihren Einkauf unbedingt mit einer VISA-Karte. Das beim Kauf eines Belegs erhaltene Foto sollte auf unsere Werbeseite hochgeladen werden. Wenn Sie als Gewinner anerkannt wurden, mussten Sie an der Abendkasse einen Zettel und eine VISA-Karte vorlegen und den Preis abholen. Ein Foto - eine Gewinnchance. Der Gewinner wird unter allen Teilnehmern berechnet, die die richtigen Belege nach einer speziellen Formel geladen haben. Unsere Aufgabe in dieser Phase ist es, den Beleg zu akzeptieren und einer Person die Teilnahme an der Zeichnung zu erlauben / nicht zu erlauben. Gleichzeitig ist es wünschenswert, auf die maximalen Tricks zu verzichten, mit denen versucht werden kann, uns zweimal einen Zettel zu geben, den vor Beginn der Aktion gedruckten Zettel und viele weitere interessante Dinge, einschließlich, aber nicht beschränkt auf das Foto der Katze.

Mehrere Tests eines Produkts eines großen Unternehmens ergaben, dass es den Kaufbetrag, den Kartentyp, die Kartennummer, die Uhrzeit und das Datum des Belegdrucks bestimmt. Und es scheint so: Wir duplizieren es (dazu berechnen wir die Hashes der erkannten Parameter und das Bild selbst), wir erkennen den Betrag, das Datum, das Zahlungssystem und die Kartennummer. Es stimmt, es wird mit Fehlern erkannt ... und nicht mit allen.

Ich möchte Sie daran erinnern, dass der Gewinner bei der Ausgabe eines Preises den Belegbetrag und die Karte bzw. die letzten 4 Ziffern der Kartennummer überprüft hat. Die Daten wurden mit der Registrierung überprüft, die gemäß den Ergebnissen der Ziehung von unserem System automatisch an das Geschäft gesendet wurde. Das heißt, diese Daten müssen einfach korrekt sein.

Wir mussten den ersten Kompromiss eingehen: Wir bitten den Teilnehmer, den Kaufbetrag und die letzten 4 Ziffern der Kartennummer von Hand einzugeben. Wenn das, was die Person eingegeben hat und was die Maschine erkannt hat, übereinstimmt und das Zahlungssystem und das Belegdruckdatum korrekt sind, können die Teilnehmer zeichnen.
Wir dachten, es stellte sich heraus, dass wir nur 71% der Ausrutscher zulassen. Die restlichen 29% sind falsche oder qualitativ schlechte Bilder und korrekte, aber falsch erkannte Bilder in einem ungefähren Verhältnis von 50/50.

Was ist mit diesen 14,5% der versehentlich abgelehnten Schecks? Die Lösung kam ziemlich schnell, sie begannen, eine manuelle App an ein freundliches Contact Center zu senden. Von den Minuspunkten: teuer und lang. Wenn 71% der Glücklichen innerhalb einer Minute das Ergebnis erzielten, mussten diese Personen bis zu 8 Stunden warten. Es wurde beschlossen, die Erkennungsergebnisse in unserem System zu normalisieren.

Wir aktivieren die Analyse: Wir überprüfen die Daten auf dem Foto und das Erkennungsergebnis manuell. Das Erkennungsergebnis kommt wie folgt an: getrennt die Felder "Datum", "Betrag" usw. und separat den vollständigen Text, dh im Allgemeinen alles, was im Bild gefunden wurde. Oft konnten Daten, die nicht in einem der ersten Felder enthalten waren, im Volltext durch die Augen gefunden werden. Basierend auf der Analyse von mehreren hundert Ausrutschern haben wir uns für Folgendes entschieden:

1) Wir unterscheiden den Scheck vom Beleg: Unter allen akzeptierten Belegen suchen wir einen Beleg mit der maximalen Anzahl von Zeilen. Für jedes abgelehnte (aus irgendeinem Grund) Dokument berücksichtigen wir die Anzahl der Zeilen. Wenn es das zuvor berechnete Maximum überschreitet, sagen wir der Person: „Vielleicht versuchen Sie, einen Scheck herunterzuladen, keinen Beleg. Machen Sie ein Foto des Belegs getrennt vom Scheck und versuchen Sie es erneut. " So verstand eine Person besser, was mit ihrem Foto nicht stimmte.

2) Wenn das Datum nicht erkannt wird: Wir versuchen, im Volltext nach dem Fragment mit der Maske „XX / XX / XU“ zu suchen, wobei X eine beliebige Zahl und Y ein beliebiges Zeichen ist. Wenn Sie das Fragment Y finden, ändern Sie es in 6 (oder 7, abhängig vom Verifizierungsjahr). Betrachten Sie das gefundene Fragment als das Datum, an dem der Beleg gedruckt wurde. Ja, ja, das System hat hauptsächlich auf der letzten Ziffer des Datums gemäht. 2% gewonnen.

3) Wenn der Betrag nicht erkannt wird: Suchen Sie im Volltext nach der Maske "ZXXXX.XX RU", wobei X eine beliebige Zahl und Z ein beliebiges Zeichen ist, einschließlich eines Leerzeichens oder des Fehlens eines Zeichens. Das gefundene Fragment wird mit dem verglichen, was der Teilnehmer eingegeben hat. Wenn es eine Diskrepanz gibt, ersetzen Sie alle 6 durch 8 Zeichen im gefundenen Fragment nacheinander und vergleichen Sie sie mit den eingegebenen Zeichen. Aus irgendeinem Grund verwechselte die Maschine oft genau 6 und 8 und nicht 8 und 6, nämlich 6 und 8. Die Verstärkung beträgt etwa 3%.

4) Kartennummer: Suchen Sie im Volltext nach der Maske „** XXXX“, wobei X eine beliebige Nummer ist. Zwischen den X-Zeichen können Leerzeichen oder Satzzeichen stehen. Wir verwerfen sie. Die resultierende Nummer wird mit der manuell eingegebenen Kartennummer verglichen. + 1%.

5) Zahlungskarte: Suchen Sie im Volltext nach einem der Fragmente: "Karte: V", "Karte: V", "Card'V", "VISH". Wenn gefunden, betrachten Sie die Karte als VISA-Karte. + 3%.

Daher haben wir die Anzahl der innerhalb einer Minute angenommenen Bewerbungen auf 80% erhöht. Leider waren die Möglichkeiten der Normalisierung in dieser Hinsicht praktisch ausgeschöpft, und wir haben auf die Steigerung der Effizienz der manuellen Erkennung umgestellt (aber dies ist eine andere Geschichte).

Im Allgemeinen haben wir uns meines Wissens als die erste Kampagne des Landes mit einer echten maschinellen Erkennung von Schecks herausgestellt. Das Ergebnis scheint mir zum ersten Mal nicht schlecht zu sein, aber bis zum Sommer versprach unser Partner, die Qualität der Anerkennung durch die offizielle Einreichung der russischen Version seines Dienstes erheblich zu verbessern.

Source: https://habr.com/ru/post/de401391/


All Articles