Giới thiệu ứng dụng AI Sáng tạo chuyển hình ảnh thành giọng nói sử dụng Amazon SageMaker và Hugging Face | Dịch vụ web của Amazon

Giới thiệu ứng dụng AI Sáng tạo chuyển hình ảnh thành giọng nói sử dụng Amazon SageMaker và Hugging Face | Dịch vụ web của Amazon

Mất thị lực có nhiều hình thức khác nhau. Đối với một số người, đó là từ khi sinh ra, đối với những người khác, đó là sự giảm dần theo thời gian, đi kèm với nhiều ngày hết hạn: Ngày bạn không thể nhìn thấy hình ảnh, nhận ra chính mình, khuôn mặt của những người thân yêu hoặc thậm chí đọc thư của bạn. Trong blogpost trước đây của chúng tôi Cho phép người khiếm thị nghe tài liệu bằng Amazon Textract và Amazon Polly, chúng tôi đã giới thiệu cho bạn ứng dụng Chuyển văn bản thành giọng nói có tên là “Đọc cho tôi”. Khả năng tiếp cận đã đi một chặng đường dài, nhưng còn hình ảnh thì sao?

Tại hội nghị AWS re:Invent năm 2022 ở Las Vegas, chúng tôi đã trình diễn “Mô tả cho tôi” tại AWS Builders' Fair, một trang web giúp người khiếm thị hiểu hình ảnh thông qua chú thích hình ảnh, nhận dạng khuôn mặt và chuyển văn bản thành giọng nói, một công nghệ mà chúng tôi gọi là “Hình ảnh thành lời nói”. Thông qua việc sử dụng nhiều dịch vụ AI/ML, “Describe For Me” tạo chú thích cho hình ảnh đầu vào và sẽ đọc lại chú thích đó bằng giọng nói rõ ràng, tự nhiên bằng nhiều ngôn ngữ và phương ngữ.

Trong bài đăng trên blog này, chúng tôi sẽ hướng dẫn bạn về Kiến trúc giải pháp đằng sau “Mô tả cho tôi” và các cân nhắc thiết kế giải pháp của chúng tôi.

Tổng quan về giải pháp

Kiến trúc tham khảo sau đây hiển thị quy trình làm việc của người dùng chụp ảnh bằng điện thoại và phát MP3 có chú thích cho hình ảnh.

Kiến trúc tham khảo cho giải pháp được mô tả.

Quy trình làm việc bao gồm các bước dưới đây,

  1. Amplify AWS phân phối ứng dụng web DescriptionForMe bao gồm HTML, JavaScript và CSS cho các thiết bị di động của người dùng cuối.
  2. Sản phẩm Nhận thức về Amazon Nhóm nhận dạng cấp quyền truy cập tạm thời vào Amazon S3 Gầu múc.
  3. Người dùng tải một tệp hình ảnh lên Amazon S3 xô sử dụng SDK AWS thông qua ứng dụng web.
  4. Ứng dụng web DescriptionForMe gọi các dịch vụ AI phụ trợ bằng cách gửi Amazon S3 đối tượng Nhập trọng tải vào Cổng API Amazon
  5. Cổng API Amazon tạo ra một Chức năng bước AWS quy trình làm việc. Máy trạng thái điều phối các dịch vụ Trí tuệ nhân tạo/Học máy (AI/ML) Nhận thức lại Amazon, Amazon SageMakerVăn bản Amazon, Amazon Dịch, Amazon Polly  sử dụng lambda AWS chức năng.
  6. Sản phẩm Chức năng bước AWS quy trình làm việc tạo một tệp âm thanh dưới dạng đầu ra và lưu trữ nó trong Amazon S3 ở định dạng MP3.
  7. URL được ký trước với vị trí của tệp âm thanh được lưu trữ trong Amazon S3 được gửi trở lại trình duyệt của người dùng thông qua Cổng API Amazon. Thiết bị di động của người dùng phát tệp âm thanh bằng URL được ký trước.

Hướng dẫn giải pháp

Trong phần này, chúng tôi tập trung vào các cân nhắc thiết kế về lý do tại sao chúng tôi chọn

  1. xử lý song song trong một Chức năng bước AWS quy trình làm việc
  2. mô hình học máy được đào tạo trước theo trình tự hợp nhất OFA (Một cho tất cả) từ Ôm mặt đến Amazon SageMaker cho chú thích hình ảnh
  3. Nhận thức lại Amazon để nhận dạng khuôn mặt

Để biết tổng quan chi tiết hơn về lý do tại sao chúng tôi chọn kiến ​​trúc không có máy chủ, quy trình làm việc đồng bộ, quy trình làm việc của chức năng bước nhanh, kiến ​​trúc không đầu và những lợi ích thu được, vui lòng đọc bài đăng trên blog trước đây của chúng tôi Cho phép người khiếm thị nghe tài liệu bằng Amazon Textract và Amazon Polly

Tiến trình song song

Sử dụng xử lý song song trong quy trình làm việc của Step Functions đã giảm thời gian tính toán lên tới 48%. Sau khi người dùng tải hình ảnh lên bộ chứa S3, Amazon API Gateway sẽ khởi tạo quy trình công việc AWS Step Functions. Sau đó, ba hàm Lambda dưới đây sẽ xử lý song song hình ảnh trong quy trình làm việc của Step Functions.

  • Hàm Lambda đầu tiên được gọi là describe_image phân tích hình ảnh bằng cách sử dụng Mô hình OFA_IMAGE_CAPTION được lưu trữ trên điểm cuối thời gian thực SageMaker để cung cấp chú thích hình ảnh.
  • Hàm Lambda thứ hai được gọi là describe_faces đầu tiên kiểm tra xem có khuôn mặt nào bằng Amazon Rekognition không API phát hiện khuôn mặtvà nếu đúng, nó sẽ gọi API So sánh khuôn mặt. Lý do cho điều này là So sánh khuôn mặt sẽ đưa ra lỗi nếu không tìm thấy khuôn mặt nào trong ảnh. Ngoài ra, việc gọi Phát hiện khuôn mặt trước sẽ nhanh hơn so với việc chỉ chạy So sánh khuôn mặt và xử lý lỗi, vì vậy đối với những hình ảnh không có khuôn mặt trong đó, thời gian xử lý sẽ nhanh hơn.
  • Hàm Lambda thứ ba được gọi là extract_text xử lý chuyển văn bản thành giọng nói bằng Amazon Textract và Amazon Comprehend.

Thực thi liên tiếp các hàm Lambda là phù hợp, nhưng cách nhanh hơn, hiệu quả hơn để thực hiện việc này là thông qua xử lý song song. Bảng sau đây cho thấy thời gian điện toán được lưu cho ba hình ảnh mẫu.

Hình ảnh người Thời gian tuần tự Thời gian song song Tiết kiệm thời gian (%) Chú thích
Giới thiệu ứng dụng Generative AI chuyển từ hình ảnh sang giọng nói bằng Amazon SageMaker và Ôm mặt | Dịch vụ web của Amazon PlatoThông minh dữ liệu Blockchain. Tìm kiếm dọc. Ái. 0 1869ms 1702ms 8% Một chú mèo mướp nằm cuộn tròn trên chiếc giường êm ái trắng muốt.
Giới thiệu ứng dụng Generative AI chuyển từ hình ảnh sang giọng nói bằng Amazon SageMaker và Ôm mặt | Dịch vụ web của Amazon PlatoThông minh dữ liệu Blockchain. Tìm kiếm dọc. Ái. 1 4277ms 2197ms 48% Một người phụ nữ mặc áo cánh màu xanh lá cây và áo len đen mỉm cười trước ống kính. Tôi nhận ra một người: Kanbo.
Giới thiệu ứng dụng Generative AI chuyển từ hình ảnh sang giọng nói bằng Amazon SageMaker và Ôm mặt | Dịch vụ web của Amazon PlatoThông minh dữ liệu Blockchain. Tìm kiếm dọc. Ái. 4 6603ms 3904ms 40% Mọi người đứng trước Amazon Spheres. Tôi nhận ra 3 người: Kanbo, Jack và Ayman.

Hình ảnh Caption

Hugging Face là một cộng đồng nguồn mở và nền tảng khoa học dữ liệu cho phép người dùng chia sẻ, xây dựng, đào tạo và triển khai các mô hình máy học. Sau khi khám phá các mô hình có sẵn trong trung tâm mô hình Hugging Face, chúng tôi đã chọn sử dụng mô hình OFA bởi vì như các tác giả đã mô tả, đó là “một khuôn khổ bất khả tri về phương thức và nhiệm vụ hỗ trợ Tính toàn diện của nhiệm vụ”.

OFA là một bước hướng tới “Một cho tất cả”, vì nó là một mô hình được đào tạo trước đa phương thức thống nhất có thể chuyển sang một số nhiệm vụ hạ nguồn một cách hiệu quả. Mặc dù mô hình OFA hỗ trợ nhiều tác vụ bao gồm nền tảng trực quan, hiểu ngôn ngữ và tạo hình ảnh, chúng tôi đã sử dụng Mô hình OFA cho chú thích hình ảnh trong dự án Mô tả cho tôi để thực hiện phần hình ảnh thành văn bản của ứng dụng. Kiểm tra kho lưu trữ chính thức của OFA (ICML 2022), giấy để tìm hiểu về Kiến trúc, Nhiệm vụ và Phương thức Thống nhất của OFA Thông qua Khung Học tập từ Trình tự đến Trình tự Đơn giản.

Để tích hợp OFA trong ứng dụng của mình, chúng tôi đã sao chép repo từ Hugging Face và đóng gói mô hình để triển khai nó đến điểm cuối SageMaker. Các máy tính xách tay trong repo này là một hướng dẫn tuyệt vời để triển khai mô hình lớn OFA trong sổ ghi chép Jupyter trong SageMaker. Sau khi chứa tập lệnh suy luận của bạn, mô hình đã sẵn sàng để triển khai phía sau điểm cuối SageMaker như được mô tả trong SageMaker tài liệu hướng dẫn. Sau khi mô hình được triển khai, hãy tạo một điểm cuối HTTPS có thể được tích hợp với hàm lambda “describe_image” để phân tích hình ảnh để tạo chú thích hình ảnh. Chúng tôi đã triển khai mô hình tí hon OFA vì đây là mô hình nhỏ hơn và có thể được triển khai trong khoảng thời gian ngắn hơn mà vẫn đạt được hiệu suất tương tự.

Ví dụ về nội dung hình ảnh thành giọng nói do “Describe For Me” tạo ra được hiển thị bên dưới:

Bắc cực quang, hay bắc cực quang, lấp đầy bầu trời đêm phía trên hình bóng của một ngôi nhà..

Bắc cực quang, hay bắc cực quang, lấp đầy bầu trời đêm phía trên hình bóng của một ngôi nhà..

Một chú chó ngủ trên tấm chăn màu đỏ trên sàn gỗ cứng, bên cạnh một chiếc vali mở chứa đầy đồ chơi.

Một chú chó ngủ trên tấm chăn màu đỏ trên sàn gỗ cứng, bên cạnh một chiếc vali mở chứa đầy đồ chơi.

Một chú mèo mướp nằm cuộn tròn trên chiếc giường êm ái trắng muốt.

Một chú mèo mướp nằm cuộn tròn trên chiếc giường êm ái trắng muốt.

nhận dạng khuôn mặt

Amazon Rekognition Image cung cấp Phát hiện không gian hoạt động tìm kiếm các đặc điểm chính trên khuôn mặt như mắt, mũi và miệng để phát hiện khuôn mặt trong hình ảnh đầu vào. Trong giải pháp của mình, chúng tôi tận dụng chức năng này để phát hiện bất kỳ người nào trong hình ảnh đầu vào. Nếu một người được phát hiện, thì chúng tôi sẽ sử dụng So sánh khuôn mặt hoạt động để so sánh khuôn mặt trong hình ảnh đầu vào với khuôn mặt mà “Describe For Me“ đã được đào tạo và mô tả người đó theo tên. Chúng tôi đã chọn sử dụng Rekognition để nhận diện khuôn mặt vì độ chính xác cao và mức độ đơn giản của việc tích hợp vào ứng dụng của chúng tôi với các khả năng vượt trội.

Một nhóm người tạo dáng chụp ảnh trong phòng. Tôi nhận ra 4 người: Jack, Kanbo, Alak và Trac. Có văn bản được tìm thấy trong hình ảnh là tốt. Nó viết: AWS re: Invent

Một nhóm người tạo dáng chụp ảnh trong phòng. Tôi nhận ra 4 người: Jack, Kanbo, Alak và Trac. Có văn bản được tìm thấy trong hình ảnh là tốt. Nó viết: AWS re: Invent

Các trường hợp sử dụng tiềm năng

Tạo văn bản thay thế cho hình ảnh web

Tất cả các hình ảnh trên một trang web được yêu cầu phải có một văn bản thay thế để trình đọc màn hình có thể nói chúng với người khiếm thị. Nó cũng tốt cho việc tối ưu hóa công cụ tìm kiếm (SEO). Tạo chú thích thay thế có thể tốn thời gian vì người viết quảng cáo được giao nhiệm vụ cung cấp chúng trong tài liệu thiết kế. API Mô tả cho tôi có thể tự động tạo văn bản thay thế cho hình ảnh. Nó cũng có thể được sử dụng như một plugin trình duyệt để tự động thêm chú thích hình ảnh vào hình ảnh thiếu văn bản thay thế trên bất kỳ trang web nào.

Mô tả âm thanh cho video

Mô tả âm thanh cung cấp rãnh tường thuật cho nội dung video để giúp người khiếm thị theo dõi phim. Khi chú thích hình ảnh trở nên mạnh mẽ và chính xác hơn, có thể thực hiện được quy trình làm việc liên quan đến việc tạo rãnh âm thanh dựa trên mô tả cho các phần chính của cảnh. Amazon Rekognition đã có thể phát hiện các thay đổi về cảnh, logo và chuỗi tín dụng cũng như phát hiện người nổi tiếng. Phiên bản mô tả trong tương lai sẽ cho phép tự động hóa tính năng chính này cho phim và video.

Kết luận

Trong bài đăng này, chúng ta đã thảo luận về cách sử dụng các dịch vụ AWS, bao gồm AI và dịch vụ serverless, để hỗ trợ người khiếm thị nhìn thấy hình ảnh. Bạn có thể tìm hiểu thêm về dự án Mô tả cho tôi và sử dụng nó bằng cách truy cập descriptionforme.com. Tìm hiểu thêm về các tính năng độc đáo của Amazon SageMakerCông nhận Amazon và AWS hợp tác với Hugging Face.

Tuyên bố miễn trừ trách nhiệm đối với mô hình ML của bên thứ ba để hướng dẫn

Hướng dẫn này chỉ dành cho mục đích thông tin. Bạn vẫn nên thực hiện đánh giá độc lập của riêng mình và thực hiện các biện pháp để đảm bảo rằng bạn tuân thủ các tiêu chuẩn và thực tiễn kiểm soát chất lượng cụ thể của riêng mình cũng như các quy tắc, luật, quy định, giấy phép và điều khoản sử dụng của địa phương áp dụng cho bạn, nội dung của bạn và mô hình Machine Learning của bên thứ ba được tham chiếu trong hướng dẫn này. AWS không có quyền kiểm soát hoặc quyền đối với mô hình Machine Learning của bên thứ ba được tham chiếu trong hướng dẫn này và không đưa ra bất kỳ tuyên bố hay bảo đảm nào rằng mô hình Machine Learning của bên thứ ba là an toàn, không có vi-rút, hoạt động hoặc tương thích với môi trường sản xuất của bạn và tiêu chuẩn. AWS không đưa ra bất kỳ tuyên bố, bảo đảm hoặc bảo đảm nào rằng bất kỳ thông tin nào trong hướng dẫn này sẽ dẫn đến một kết quả hoặc kết quả cụ thể.


Về các tác giả

Jack MarchettiJack Marchetti là một kiến ​​trúc sư Giải pháp cấp cao tại AWS, tập trung vào việc giúp khách hàng hiện đại hóa và triển khai các kiến ​​trúc hướng sự kiện, không cần máy chủ. Jack bị mù hợp pháp và cư trú tại Chicago cùng với vợ là Erin và con mèo Minou. Anh ấy cũng là một nhà biên kịch và đạo diễn tập trung chủ yếu vào các bộ phim kinh dị và Giáng sinh. Xem phim của Jack tại Trang IMDb.

Alak EswaradassAlak Eswaradass là Kiến trúc sư giải pháp cấp cao tại AWS có trụ sở tại Chicago, Illinois. Cô đam mê giúp khách hàng thiết kế kiến ​​trúc đám mây sử dụng dịch vụ AWS để giải quyết các thách thức kinh doanh. Alak rất hào hứng với việc sử dụng SageMaker để giải quyết nhiều trường hợp sử dụng ML cho khách hàng AWS. Khi cô ấy không làm việc, Alak thích dành thời gian cho các con gái và khám phá ngoài trời với những chú chó của cô ấy.

Kandyce BohannonKandyce Bohannon là Kiến trúc sư Giải pháp Cấp cao có trụ sở tại Minneapolis, MN. Với vai trò này, Kandyce làm cố vấn kỹ thuật cho khách hàng AWS khi họ hiện đại hóa các chiến lược công nghệ, đặc biệt liên quan đến dữ liệu và DevOps để triển khai các phương pháp hay nhất trong AWS. Ngoài ra, Kandyce đam mê cố vấn cho các thế hệ kỹ thuật viên tương lai và giới thiệu phụ nữ trong lĩnh vực công nghệ thông qua chương trình AWS She Builds Tech Skills.

Trác ĐộTrác Độ là Kiến trúc sư giải pháp tại AWS. Trong vai trò của mình, Trac làm việc với các khách hàng doanh nghiệp để hỗ trợ các sáng kiến ​​hiện đại hóa ứng dụng và di chuyển sang đám mây của họ. Anh đam mê tìm hiểu các thách thức của khách hàng và giải quyết chúng bằng các giải pháp mạnh mẽ và có thể mở rộng bằng các dịch vụ AWS. Trac hiện sống ở Chicago cùng vợ và 3 cậu con trai. Anh ấy là một người rất đam mê hàng không và đang trong quá trình hoàn thiện Giấy phép Phi công Riêng.

Dấu thời gian:

Thêm từ Học máy AWS