Serverloses S3-Objekt-Lambda

Foto von Bryan Garces auf Unsplash

Ein praktisches Beispiel für die Verwendung von AWS S3 Object Lambda, um ein Bild mithilfe von Amazon Rekognition, KI und maschinellem Lernen im Handumdrehen mit Wasserzeichen mit Metadaten zu versehen, einschließlich Code-Repository, das in TypeScript und dem Serverless Framework geschrieben ist, und Visuals.

Einführung

Der folgende Artikel zeigt einen beispielhaften Anwendungsfall für Amazon S3 Object Lambda , das spontane Versehen von Bildern mit Wasserzeichen mit KI/ML-erzeugten Metadaten von Amazon Rekognition .

Sie können hier auf das Code-Repository zugreifen, das ausführliche Kommentare zur Verdeutlichung enthält.

Bitte beachten Sie, dass dies der minimale Code und die minimale Architektur sind, um die Verwendung von Wasserzeichenbildern im laufenden Betrieb zu demonstrieren. Dies ist also nicht produktionsbereit und entspricht nicht den bewährten Verfahren für die Codierung .

Was bauen wir? ️

Das folgende Diagramm zeigt die Architektur, die wir im Repo bauen:

Die Architekturschritte sind:

  1. Der Benutzer fordert das Bild über die API Gateway - API nach ID ( 1,2 oder 3 ) an.
  2. API Gateway ruft das Get Image Lambda auf .
  3. Das Lambda greift über den S3 Object Lambda Access Point auf das relevante Bild zu.
  4. Das Generate Image Lambda wird aufgerufen, wenn das Image automatisch angefordert wird.
  5. Das Lambda ruft das vorhandene Bild unter Verwendung der internen vorsignierten URL im Falle des Lambda-Generierens von Bildern ab, ruft Amazon Rekognition mit dem Bild auf und generiert dann ein Wasserzeichen auf dem Bild basierend auf den von Amazon Rekognition zurückgegebenen Labels.
  6. Die Base64 des aktualisierten Abbilds wird dem Benutzer über das API-Gateway in der Antwort zurückgegeben.

Wie sehen die Bilder vorher und nachher aus? ‍

Unten sehen Sie ein Beispiel für die Bilder, wie sie sich im S3-Bucket befinden, sowie wie sie aussehen, nachdem sie mit dem Befehl Get Object über den S3 Object Lambda Access Point angefordert wurden:

Wie Sie den obigen Bildern entnehmen können, führen wir das Bild mit Amazon Rekognition durch AI/ML aus, um die relevanten Bildetiketten herauszuziehen und sie auf das Bild zu legen, wenn das Bild angefordert wird.

„Sie können sie gerne durch Ihre eigenen Testbilder mit den Namen 1.png, 2.png und 3.png im Ordner „Assets“ ersetzen, um zu sehen, wie sie generiert werden.“

Welche Dienste nutzen wir?

Während des Tutorials werden wir die folgenden Dienste verwenden, die weiter unten detailliert beschrieben werden:

AWS S3-Objekt-Lambda

Mit S3 Object Lambda können wir eine Kopie des Bildes manipulieren, wenn es vom Bucket angefordert wird. In unserem Szenario wird das Bild mit Metadaten mit einem Wasserzeichen versehen, aber wir könnten auch andere Dinge für Objekte tun, z. B. PII schwärzen oder ein Bild mit einer anderen Größe zurückgeben.

„Sie können benutzerdefinierten Code verwenden, um die von Standard-S3-GET-Anfragen zurückgegebenen Daten zu ändern, um Zeilen zu filtern, die Größe von Bildern dynamisch zu ändern, vertrauliche Daten zu schwärzen und vieles mehr.“

S3 Object Lambda funktioniert mit Ihren bestehenden Anwendungen und verwendet AWS Lambda -Funktionen, um Ihre Daten automatisch zu verarbeiten und umzuwandeln, während sie von S3 abgerufen werden. Die Lambda-Funktion wird inline mit einer Standard- S3-GET-Anforderung aufgerufen , sodass Sie Ihren Anwendungscode nicht ändern müssen.

Auf diese Weise können Sie problemlos mehrere Ansichten aus demselben Datensatz präsentieren und die Lambda-Funktionen aktualisieren, um diese Ansichten jederzeit zu ändern.

Amazon-Erkennung

Wir verwenden Amazon Rekognition, um automatisch Metadaten ( Labels ) über die Bilder zu erkennen, die wir an sie weitergeben, die AI/ML verwenden. In unseren obigen Beispielbildern übergeben wir ein Bild einer Bulldogge und erhalten die Metadaten „ Französische Bulldogge, Bulldogge, Hund, Haustier, Hund “.

„Mit Amazon Rekognition können Sie Objekte, Personen, Texte, Szenen und Aktivitäten in Bildern und Videos identifizieren und unangemessene Inhalte erkennen.“

Amazon Rekognition erleichtert das Hinzufügen von Bild- und Videoanalysen zu Ihren Anwendungen mithilfe der bewährten, hochskalierbaren Deep-Learning-Technologie, für deren Verwendung kein Fachwissen im Bereich maschinelles Lernen erforderlich ist. Mit Amazon Rekognition können Sie Objekte, Personen, Texte, Szenen und Aktivitäten in Bildern und Videos identifizieren sowie unangemessene Inhalte erkennen. Amazon Rekognition bietet auch hochpräzise Gesichtsanalyse- und Gesichtssuchfunktionen, mit denen Sie Gesichter für eine Vielzahl von Anwendungsfällen zur Benutzerüberprüfung, Personenzählung und öffentlichen Sicherheit erkennen, analysieren und vergleichen können.

Bereitstellung der Lösung! ‍

Hinweis : Durch die Ausführung der folgenden Befehle werden Gebühren für Ihr AWS-Konto erhoben, also ändern Sie die Konfiguration entsprechend .

Führen Sie im Stammverzeichnis des Ordners npm iand then npm run deploy:developaus, wodurch alle Abhängigkeiten installiert und dann in AWS bereitgestellt werden.

Testen der API!

Sie können den Endpunkt jetzt testen, indem Sie die Postman-Datei in der verwenden ./postman folderund auf die Anforderung „ Get Image “ mit entweder 1, 2 oder 3 für die Bild-ID klicken ( wie im folgenden Screenshot gezeigt ):

Dadurch wird die base64-Zeichenfolge des verarbeiteten Bilds zurückgegeben, die Sie anzeigen können, indem Sie den zurückgegebenen Eigenschaftswert " image " in die folgende Website kopieren:https://codebeautify.org/base64-to-image-converter

Beispiel für die Verwendung der Website https://codebeautify.org/base64-to-image-converter mit der Bildausgabe

Abschluss

Ich hoffe, Sie fanden das als leichtes Beispiel für die Bildbearbeitung im Handumdrehen mit Ihren eigenen serverlosen Lösungen nützlich! Sie können jetzt Ihrer Fantasie freien Lauf lassen und alle Objekte manipulieren, die von S3 zurückgegeben werden!

Ich würde gerne mit Ihnen in folgenden Fällen in Kontakt treten:

https://www.linkedin.com/in/lee-james-gilmore/
https://twitter.com/LeeJamesGilmore

Wenn Sie die Artikel inspirierend oder nützlich fanden, können Sie mich gerne mit einem virtuellen Kaffee unterstützenhttps://www.buymeacoffee.com/leegilmoreund so oder so können wir uns verbinden und chatten! ☕️

Wenn dir die Beiträge gefallen haben, folge bitte meinem Profil Lee James Gilmore für weitere Beiträge/Serien, und vergiss nicht, dich zu verbinden und Hallo zu sagen

Bitte benutzt auch die „Klatsch“-Funktion am Ende des Beitrags, wenn es euch gefallen hat! ( Du kannst mehr als einmal klatschen!! )

Dieser Artikel wird von Sedai.io gesponsert

Wenn Ihnen dieser Artikel gefallen hat, können Sie auch Folgendes genießen:

Über mich

„ Hallo, ich bin Lee, ein AWS-zertifizierter technischer Architekt und Lead Software Engineer mit Sitz in Großbritannien, der derzeit als Technical Cloud Architect und Principal Serverless Developer arbeitet und in den letzten 5 Jahren hauptsächlich mit Full-Stack-JavaScript auf AWS gearbeitet hat.

Ich betrachte mich als Serverless-Evangelist mit einer Vorliebe für AWS, Innovation, Softwarearchitektur und Technologie. ”

** Die bereitgestellten Informationen sind meine persönlichen Ansichten und ich übernehme keine Verantwortung für die Verwendung der Informationen. ***

Suggested posts

Was Sie in Ihrer Wartezeit tun können (Warten auf Ihren ersten Job in der Technikbranche)

Was Sie in Ihrer Wartezeit tun können (Warten auf Ihren ersten Job in der Technikbranche)

Der Wechsel in eine neue Karriere kann eine große Herausforderung sein, wenn man es alleine versucht. Es ist wichtig, Verantwortungspartner zu finden, die sich auf dem gleichen Lernniveau wie Sie befinden und ähnliche Ziele, Hartnäckigkeit und Tatendrang haben.

Medien neu denken: McChesneys fünf Wahrheiten und die Zukunft der Kommunikation

In der heutigen hypervernetzten Welt spielen Mediensysteme eine entscheidende Rolle bei der Bildung der öffentlichen Meinung und damit bei der demokratischen Entscheidungsfindung. In seiner tiefgreifenden Analyse der politischen Ökonomie der Kommunikation stellt der Wissenschaftler Robert McChesney die herkömmliche Meinung in Frage und präsentiert die „fünf Wahrheiten“ über die Medien, wie er sie nennt.

Related posts

Informationen zu Domänennamen finden

Ein Auszug aus Small, Sharp Software Tools von Brian P. Hogan

Informationen zu Domänennamen finden

Wenn Sie eine Anfrage an facebook.com stellen, sucht Ihr Computer nach dem Domänennamen, um diesen in eine IP-Adresse zu übersetzen, damit Ihr Computer diese Verbindung herstellen kann.

Die „Learning at Work Week“ ist wichtiger als Sie denken

Die „Learning at Work Week“ ist wichtiger als Sie denken

Es fällt uns oft schwer, das umzusetzen, von dem wir wissen, dass es gut für uns ist. Von der Aussage, dass wir einen Lebensgefährten lieben, bis hin zur Erinnerung daran, wie ein Pirat zu reden – es wird immer diejenigen geben, die behaupten, dass ein Tag, eine Woche oder ein Monat voller Ereignisse nicht nötig sei, weil sie diese Dinge bereits tun.

Netzwerk-TV Twitter

Netzwerk-TV Twitter

Was alt ist, ist jetzt wieder neu und was früher das glitzernde, glänzende Ding war, fühlt sich jetzt langweilig an. Ich spreche nicht davon, dass JNCO-Jeans zusammen mit anderen Modetrends der späten 1990er Jahre unter den coolen Kids in der Innenstadt ein Comeback erleben.

Verfolgen Sie jeden mit nur einer Telefonnummer | OSINT-Untersuchung

Verfolgen Sie jeden mit nur einer Telefonnummer | OSINT-Untersuchung

Sie können ein OSINT-Ermittler, ein CTF-Spieler oder einfach jemand sein, der Spam-Anrufe erhält. Jemand, der versucht, die Nummer zu bestätigen, die Sie in einer Anzeige gesehen haben.