לקוחות רבים, כולל אלו העוסקים בפרסום יצירתי, במדיה ובידור, במסחר אלקטרוני ואופנה, צריכים לעתים קרובות לשנות את הרקע במספר רב של תמונות. בדרך כלל, זה כולל עריכה ידנית של כל תמונה עם תוכנת צילום. זה יכול לקחת הרבה מאמץ, במיוחד עבור קבוצות גדולות של תמונות. למרות זאת, סלע אמזון ו פונקציות שלב AWS להפוך את התהליך הזה לאוטומטי בקנה מידה פשוט.
Amazon Bedrock מציעה את מודל הבסיס ה-AI הגנרטיבי Amazon Titan Image Generator G1, שיכול לשנות אוטומטית את הרקע של תמונה באמצעות טכניקה שנקראת ציור חוץ. Step Functions מאפשר לך ליצור זרימת עבודה אוטומטית שמתחברת בצורה חלקה עם Amazon Bedrock ושירותי AWS אחרים. יחד, Amazon Bedrock ו-Step Functions מייעלים את כל התהליך של שינוי אוטומטי של רקעים על פני מספר תמונות.
פוסט זה מציג פתרון המפשט את תהליך שינוי הרקע במספר תמונות. על ידי רתימת היכולות של AI ייצור עם Amazon Bedrock ודגם Titan Image Generator G1, בשילוב עם Step Functions, פתרון זה יוצר ביעילות תמונות עם הרקע הרצוי. פוסט זה מספק תובנה לגבי פעולתו הפנימית של הפתרון ועוזר לך להבין את בחירות העיצוב שנעשו כדי לבנות פתרון מותאם אישית זה.
ראה מאגר GitHub להנחיות מפורטות על פריסת פתרון זה.
סקירת פתרונות
בואו נסתכל על איך הפתרון עובד ברמה גבוהה לפני שנצלול עמוק יותר לתוך אלמנטים ספציפיים ושירותי ה-AWS שבהם נעשה שימוש. התרשים הבא מספק תצוגה פשוטה של ארכיטקטורת הפתרון ומדגיש את מרכיבי המפתח.
זרימת העבודה מורכבת מהשלבים הבאים:
- משתמש מעלה תמונות מרובות לתוך שירות אחסון פשוט של אמזון (Amazon S3) דלי באמצעות אפליקציית אינטרנט של Streamlit.
- אפליקציית האינטרנט Streamlit קוראת an שער API של אמזון נקודת קצה REST API משולבת עם אמזון DetectLabels API, שמזהה תוויות עבור כל תמונה.
- עם ההגשה, אפליקציית האינטרנט Streamlit מעדכנת אמזון דינמו טבלה עם פרטי תמונה.
- עדכון DynamoDB מפעיל an AWS למבדה פונקציה, שמתחילה זרימת עבודה של Step Functions.
- זרימת העבודה של Step Functions מפעילה את השלבים הבאים עבור כל תמונה:
5.1 בונה מטען בקשה עבור אמזון יסודInvokeModel
ה-API.
5.2 מעורר את סלע אמזוןInvokeModel
פעולת API.
5.3 מנתח תמונה מהתגובה ושומר אותה במיקום S3.
5.4 עדכון מצב התמונה בטבלת DynamoDB. - זרימת העבודה של Step Functions מפעילה פונקציית Lambda כדי ליצור דוח מצב.
- זרימת העבודה שולחת אימייל באמצעות שירות התראה פשוט של אמזון (Amazon SNS).
כפי שמוצג בצילום המסך הבא, אפליקציית האינטרנט Streamlit מאפשרת לך להעלות תמונות ולהזין הודעות טקסט כדי לציין רקעים רצויים, הנחיות שליליות ומצב צביעה מחוץ ליצירת תמונה. אתה יכול גם להציג ולהסיר תוויות לא רצויות המשויכות לכל תמונה שהועלתה שאינך רוצה לשמור בתמונות הסופיות שנוצרו.
בדוגמה זו, ההנחיה עבור הרקע היא "רקע עיר לונדון". תהליך האוטומציה מייצר תמונות חדשות המבוססות על התמונות המקוריות שהועלו עם לונדון כרקע.
העלאת אפליקציות אינטרנט ותמונות יעילה
אפליקציית אינטרנט Streamlit משמשת כקצה הקצה לפתרון זה. כדי להגן על האפליקציה מפני גישה לא מורשית, היא משתלבת עם אמזון קוגניטו מאגר משתמשים. API Gateway משתמש ב-an אישור אמזון קוגניטו לאימות בקשות. אפליקציית האינטרנט משלימה את השלבים הבאים:
- עבור כל תמונה שנבחרה, היא מאחזרת תוויות באמצעות Amazon Rekognition באמצעות נקודת קצה API Gateway REST API.
- עם ההגשה, האפליקציה מעלה תמונות לדלי S3.
- האפליקציה מעדכנת טבלת DynamoDB עם פרמטרים רלוונטיים, שמות תמונות ותוויות משויכות לכל תמונה באמצעות נקודת קצה אחרת של API Gateway REST API.
זרימת עבודה של עיבוד תמונה
כאשר טבלת DynamoDB מתעדכנת, זרמי DynamoDB מפעיל פונקציית Lambda כדי להתחיל זרימת עבודה חדשה של Step Functions. להלן בקשה לדוגמה עבור זרימת העבודה:
זרימת העבודה של Step Functions מבצעת לאחר מכן את שלושת השלבים הבאים:
- החלף את הרקע עבור כל התמונות.
- הפק דוח מצב.
- שלח אימייל דרך Amazon SNS.
צילום המסך הבא ממחיש את זרימת העבודה של Step Functions.
בואו נסתכל על כל שלב ביתר פירוט.
החלף רקע עבור כל התמונות
Step Functions משתמש ב-a מפה מבוזרת לעבד כל תמונה בזרימות עבודה מקבילות של ילדים. המפה המבוזרת מאפשרת עיבוד בו-זמנית גבוהה. לכל זרימת עבודה צאצא יש היסטוריית ריצה נפרדת משלה מזו של זרימת העבודה האב.
Step Functions משתמש ב-an פעולת API מותאמת של InvokeModel עבור Amazon Bedrock. ה-API מקבל בקשות ותגובות בגודל של עד 25 MB. עם זאת, ל-Step Functions יש מגבלה של 256 קילו-בייט על הקלט והפלט של מטען המדינה. כדי לתמוך בתמונות גדולות יותר, הפתרון משתמש בדלי S3 שבו InvokeModel
API קורא נתונים וכותב אליהם את התוצאה. להלן התצורה עבור InvokeModel
ממשק API עבור אינטגרציה של Amazon Bedrock:
השמיים Input S3Uri
פרמטר מציין את מיקום המקור לאחזור נתוני הקלט. ה Output S3Uri
פרמטר מציין את היעד לכתיבת תגובת ה-API.
פונקציית Lambda שומרת את מטען הבקשה כקובץ JSON במפרט שצוין Input S3Uri
מקום. ה InvokeModel
API משתמש במטען קלט זה כדי ליצור תמונות עם הרקע שצוין:
דגם ה-Titan Image Generator G1 תומך בפרמטרים הבאים ליצירת תמונה:
- סוג משימה - מציין את שיטת הציור על מנת להחליף רקע של התמונה.
- טֶקסט - הנחית טקסט להגדרת הרקע.
- טקסט שלילי - הנחית טקסט כדי להגדיר מה לא לכלול בתמונה.
- maskPrompt – הנחית טקסט המגדירה את המסכה. זה מתאים לתוויות שברצונך לשמור בתמונות הסופיות שנוצרו.
- maskImage – תמונת JPEG או PNG מקודדת ב-base64.
- outPaintingMode – מציין אם לאפשר שינוי של הפיקסלים בתוך המסכה או לא. DEFAULT מאפשרת שינוי של התמונה בתוך המסכה על מנת לשמור אותה עקבית עם הרקע המשוחזר. PRECISE מונע שינוי של התמונה בתוך המסכה.
- numberOfImages - מספר התמונות שיש ליצור.
- איכות - איכות התמונות שנוצרו:
standard
orpremium
. - cfgScale – מציין באיזו חזקה התמונה שנוצרת צריכה להיצמד להנחיה.
- גובה – גובה התמונה בפיקסלים.
- רוחב - רוחב התמונה בפיקסלים.
סלע האמזונס InvokeModel
API יוצר תגובה עם תמונה מקודדת ב- Output S3Uri
מקום. פונקציית Lambda נוספת מנתחת את התמונה מהתגובה, מפענחת אותה מ-base64 ושומרת את קובץ התמונה במיקום הבא: s3://<Image Bucket>/generated-image-file/<year>/<month>/<day>/<timestamp>/
.
לבסוף, זרימת עבודה צאצאית מעדכנת טבלת DynamoDB עם סטטוס יצירת תמונה, ומסמנת אותה כאחת הצלחתי or נכשל, וכולל פרטים כגון ImageName
, Cause
, Error
, ו Status
.
הפק דוח מצב
לאחר תהליך יצירת התמונה, פונקציית Lambda מאחזרת את פרטי הסטטוס מ-DynamoDB. הוא אוסף באופן דינמי את הפרטים הללו לדוח מצב מקיף בפורמט JSON. לאחר מכן, הוא שומר את דוח המצב שנוצר קובץ JSON במיקום הבא: s3://<Image Bucket>/status-report-files/<year>/<month>/<day>/<timestamp>/
. צוות ITOps יכול לשלב דוח זה עם מערכת ההתראות הקיימת שלו כדי לעקוב אחר אם עיבוד התמונה הושלם בהצלחה. עבור משתמשים עסקיים, אתה יכול להרחיב את זה עוד יותר כדי ליצור דוח בפורמט CSV.
שלח אימייל דרך Amazon SNS
Step Functions מעורר פעולת Amazon SNS API לשליחת אימייל. המייל מכיל פרטים כולל מיקום S3 עבור דוח המצב וקובצי התמונות הסופיות. להלן הודעת האימייל לדוגמה.
סיכום
בפוסט זה, סיפקנו סקירה כללית של פתרון לדוגמה המדגים את האוטומציה של שינוי רקע תמונה בקנה מידה באמצעות Amazon Bedrock ו-Step Functions. כמו כן, הסברנו כל מרכיב בפתרון בפירוט. על ידי שימוש באינטגרציה האופטימלית של Step Functions עם Amazon Bedrock, Distributed Map ודגם ה-Titan Image Generator G1, הפתרון מחליף ביעילות את הרקע של התמונות במקביל, ומשפר את הפרודוקטיביות והמדרגיות.
כדי לפרוס את הפתרון, עיין בהוראות ב- מאגר GitHub.
משאבים
למידע נוסף על Amazon Bedrock, עיין במשאבים הבאים:
למידע נוסף על דגם Titan Image Generator G1, עיין במשאבים הבאים:
למידע נוסף על השימוש ב- Amazon Bedrock עם Step Functions, עיין במשאבים הבאים:
על המחבר
צ'טן מקוואנה הוא ארכיטקט פתרונות בכיר עם שירותי האינטרנט של אמזון. הוא עובד עם שותפים ולקוחות של AWS כדי לספק להם הדרכה ארכיטקטונית לבניית ארכיטקטורה ניתנת להרחבה ויישום אסטרטגיות להנעת אימוץ שירותי AWS. הוא חובב טכנולוגיה ובונה עם תחום ליבה של עניין ב-AI גנרטיבי, ללא שרתים ו-DevOps. מחוץ לעבודה, הוא נהנה לצפות בתוכניות, לטייל ולמוזיקה.
- הפצת תוכן ויחסי ציבור מופעל על ידי SEO. קבל הגברה היום.
- PlatoData.Network Vertical Generative Ai. העצים את עצמך. גישה כאן.
- PlatoAiStream. Web3 Intelligence. הידע מוגבר. גישה כאן.
- PlatoESG. פחמן, קלינטק, אנרגיה, סביבה, שמש, ניהול פסולת. גישה כאן.
- PlatoHealth. מודיעין ביוטכנולוגיה וניסויים קליניים. גישה כאן.
- מקור: https://aws.amazon.com/blogs/machine-learning/automate-the-process-to-change-image-backgrounds-using-amazon-bedrock-and-aws-step-functions/
- :יש ל
- :הוא
- :לֹא
- :איפה
- $ למעלה
- 1
- 130
- 14
- 22
- 25
- 32
- 7
- 8
- a
- אודות
- מקבל
- גישה
- לרוחב
- פעולה
- לדבוק
- אימוץ
- מְבוּגָר
- פרסום
- AI
- תעשיות
- להתיר
- מאפשר
- גם
- אמזון בעברית
- אמזון
- אמזון שירותי אינטרנט
- an
- ו
- אחר
- API
- בקשה
- אדריכלי
- ארכיטקטורה
- ARE
- AREA
- AS
- המשויך
- At
- לאמת
- אוטומטי
- אוטומטי
- באופן אוטומטי
- אוטומציה
- AWS
- פונקציות שלב AWS
- רקע
- רקע
- מבוסס
- לפני
- לִבנוֹת
- בונה
- בִּניָן
- אוטובוס
- עסקים
- by
- נקרא
- שיחות
- CAN
- יכולות
- שינוי
- משתנה
- ילד
- בחירות
- עִיר
- משולב
- השלמת
- הושלם
- מַקִיף
- תְצוּרָה
- מתחבר
- עִקבִי
- מורכב
- בונה
- מכיל
- ליבה
- מתכתב
- לִיצוֹר
- יְצִירָתִי
- מנהג
- לקוחות
- נתונים
- עמוק יותר
- בְּרִירַת מֶחדָל
- לְהַגדִיר
- מגדיר
- הפגנה
- לפרוס
- פריסה
- עיצוב
- רצוי
- יעד
- פרט
- מְפוֹרָט
- פרטים
- תרשים
- מופץ
- צלילה
- כֶּלֶב
- לא
- נהיגה
- באופן דינמי
- כל אחד
- מסחר אלקטרוני
- יעילות
- מאמץ
- או
- אלמנט
- אלמנטים
- אמייל
- מוצפן
- נקודת קצה
- שיפור
- זן
- בידור
- נלהב
- שלם
- במיוחד
- דוגמה
- קיימים
- לְהַרְחִיב
- מוסבר
- אופנה
- שלח
- קבצים
- סופי
- הבא
- בעד
- פוּרמָט
- קרן
- החל מ-
- ממשק
- פונקציה
- פונקציות
- נוסף
- g1
- שער כניסה
- ליצור
- נוצר
- מייצר
- דור
- גנרטטיבית
- AI Generative
- גנרטור
- הדרכה
- רתימה
- he
- גובה
- עוזר
- גָבוֹהַ
- פסים
- היסטוריה
- איך
- אולם
- HTML
- HTTPS
- ID
- if
- מדגים
- תמונה
- תמונות
- יישום
- in
- לכלול
- כולל
- פְּנִימִי
- קלט
- בתוך
- תובנה
- הוראות
- לשלב
- משולב
- משלב
- השתלבות
- אינטרס
- אל תוך
- מציג
- מעורר
- כרוך
- IT
- שֶׁלָה
- jpg
- ג'סון
- שמור
- מפתח
- תוויות
- גָדוֹל
- גדול יותר
- לִלמוֹד
- רמה
- להגביל
- מיקום
- לונדון
- נראה
- מגרש
- נמוך
- עשוי
- לעשות
- זכר
- איש
- באופן ידני
- מַפָּה
- סימון
- מסכה
- מדיה
- שיטה
- מצב
- מודל
- יותר
- מספר
- כלי נגינה
- שמות
- צורך
- שלילי
- חדש
- הודעה
- מספר
- of
- המיוחדות שלנו
- לעתים קרובות
- on
- אופטימיזציה
- or
- להזמין
- מְקוֹרִי
- אחר
- תפוקה
- בחוץ
- סקירה
- שֶׁלוֹ
- מקביל
- פרמטר
- פרמטרים
- שותפים
- מבצע
- אדם
- צילום
- אפלטון
- מודיעין אפלטון
- אפלטון נתונים
- בריכה
- הודעה
- צורך
- פּרֶמיָה
- מונע
- תהליך
- תהליך
- פִּריוֹן
- הנחיות
- להגן
- לספק
- ובלבד
- מספק
- איכות
- להתייחס
- רלוונטי
- להסיר
- להחליף
- לדווח
- לבקש
- בקשות
- החלטה
- משאבים
- תגובה
- תגובות
- REST
- תוצאה
- לִשְׁמוֹר
- הפעלה
- פועל
- לִטעוֹם
- בקרת מערכות ותקשורת
- להרחבה
- סולם
- בצורה חלקה
- לִרְאוֹת
- נבחר
- לשלוח
- שולח
- לחצני מצוקה לפנסיונרים
- נפרד
- ללא שרת
- משמש
- שירותים
- צריך
- הראה
- הופעות
- פָּשׁוּט
- פשוט
- מפשט
- תוכנה
- פִּתָרוֹן
- פתרונות
- מָקוֹר
- ספציפי
- מפורט
- התחלה
- התחלות
- מדינה
- מצב
- שלב
- צעדים
- אחסון
- פשוט
- אסטרטגיות
- לייעל
- מחרוזת
- בְּתוֹקֶף
- כְּנִיעָה
- כתוצאה מכך
- בהצלחה
- כזה
- תמיכה
- תומך
- מערכת
- שולחן
- לקחת
- נבחרת
- טכניקה
- טכנולוגיה
- טֶקסט
- זֶה
- השמיים
- המקור
- שֶׁלָהֶם
- אותם
- אז
- אלה
- זֶה
- אלה
- שְׁלוֹשָׁה
- עֲנָק
- ל
- יַחַד
- לעקוב
- נסיעה
- בדרך כלל
- לא מורשה
- להבין
- לא רצוי
- עדכון
- מְעוּדכָּן
- עדכונים
- נטען
- מְשׁוּמָשׁ
- משתמש
- משתמשים
- שימושים
- באמצעות
- באמצעות
- לצפיה
- רוצה
- צופה
- we
- אינטרנט
- אפליקציית רשת
- שירותי אינטרנט
- מה
- אם
- אשר
- רוחב
- עם
- תיק עבודות
- זרימת עבודה
- זרימות עבודה
- עובד
- עובד
- לכתוב
- אתה
- זפירנט