Ước tính tư thế là một kỹ thuật thị giác máy tính giúp phát hiện một tập hợp các điểm trên vật thể (chẳng hạn như người hoặc phương tiện) trong hình ảnh hoặc video. Ước tính tư thế có các ứng dụng trong thế giới thực trong thể thao, robot, bảo mật, thực tế tăng cường, truyền thông và giải trí, ứng dụng y tế, v.v. Các mô hình ước tính tư thế được đào tạo trên hình ảnh hoặc video được chú thích bằng một tập hợp các điểm (tọa độ) nhất quán được xác định bởi một giàn khoan. Để đào tạo các mô hình ước tính tư thế chính xác, trước tiên bạn cần có được một tập dữ liệu lớn về các hình ảnh có chú thích; nhiều bộ dữ liệu có hàng chục hoặc hàng trăm nghìn hình ảnh được chú thích và cần nhiều tài nguyên để xây dựng. Lỗi ghi nhãn rất quan trọng để xác định và ngăn chặn vì hiệu suất của mô hình cho các mô hình ước tính tư thế bị ảnh hưởng nặng nề bởi chất lượng dữ liệu được gắn nhãn và khối lượng dữ liệu.
Trong bài đăng này, chúng tôi trình bày cách bạn có thể sử dụng quy trình ghi nhãn tùy chỉnh trong Sự thật về mặt đất của Amazon SageMaker được thiết kế đặc biệt để ghi nhãn điểm chính. Quy trình làm việc tùy chỉnh này giúp hợp lý hóa quy trình ghi nhãn và giảm thiểu lỗi ghi nhãn, từ đó giảm chi phí để có được nhãn tư thế chất lượng cao.
Tầm quan trọng của dữ liệu chất lượng cao và giảm lỗi ghi nhãn
Dữ liệu chất lượng cao là nền tảng để đào tạo các mô hình ước tính tư thế mạnh mẽ và đáng tin cậy. Độ chính xác của các mô hình này gắn liền với tính chính xác và chính xác của các nhãn được gán cho từng điểm chính của tư thế, do đó, phụ thuộc vào hiệu quả của quá trình chú thích. Ngoài ra, việc có một lượng lớn dữ liệu đa dạng và được chú thích rõ ràng sẽ đảm bảo rằng mô hình có thể học được nhiều tư thế, biến thể và kịch bản khác nhau, từ đó cải thiện khả năng khái quát hóa và hiệu suất trên các ứng dụng trong thế giới thực khác nhau. Việc thu thập các bộ dữ liệu lớn, có chú thích này liên quan đến người chú thích con người, những người cẩn thận gắn nhãn cho hình ảnh với thông tin tư thế. Trong khi gắn nhãn các điểm quan tâm trong hình ảnh, việc xem cấu trúc khung xương của đối tượng trong khi gắn nhãn là rất hữu ích để cung cấp hướng dẫn trực quan cho người chú thích. Điều này rất hữu ích để xác định các lỗi ghi nhãn trước khi chúng được đưa vào tập dữ liệu như hoán đổi trái-phải hoặc gắn nhãn sai (chẳng hạn như đánh dấu một bàn chân là vai). Ví dụ: có thể dễ dàng xác định lỗi ghi nhãn như hoán đổi trái-phải được thực hiện trong ví dụ sau bằng cách giao nhau giữa các đường khung khung và sự không khớp của màu sắc. Những tín hiệu trực quan này giúp người dán nhãn nhận ra lỗi và sẽ tạo ra một bộ nhãn rõ ràng hơn.
Do tính chất thủ công của việc ghi nhãn, việc thu thập các bộ dữ liệu được dán nhãn lớn và chính xác có thể rất tốn kém và thậm chí còn tốn kém hơn nữa nếu hệ thống ghi nhãn không hiệu quả. Do đó, hiệu quả và độ chính xác ghi nhãn là rất quan trọng khi thiết kế quy trình ghi nhãn của bạn. Trong bài đăng này, chúng tôi trình bày cách sử dụng quy trình gắn nhãn SageMaker Ground Truth tùy chỉnh để chú thích hình ảnh một cách nhanh chóng và chính xác, giảm gánh nặng phát triển các bộ dữ liệu lớn cho quy trình ước tính tư thế.
Tổng quan về giải pháp
Giải pháp này cung cấp một cổng web trực tuyến nơi lực lượng ghi nhãn có thể sử dụng trình duyệt web để đăng nhập, truy cập công việc ghi nhãn và chú thích hình ảnh bằng giao diện người dùng (UI) của đám đông-2d-skeleton, một giao diện người dùng tùy chỉnh được thiết kế để ghi nhãn điểm chính và tư thế bằng cách sử dụng Sự thật cơ bản của SageMaker. Sau đó, các chú thích hoặc nhãn được tạo bởi lực lượng dán nhãn sẽ được xuất sang định dạng Dịch vụ lưu trữ đơn giản của Amazon (Amazon S3), nơi chúng có thể được sử dụng cho các quy trình tiếp theo như đào tạo các mô hình thị giác máy tính học sâu. Giải pháp này hướng dẫn bạn cách thiết lập và triển khai các thành phần cần thiết để tạo cổng web cũng như cách tạo công việc ghi nhãn cho quy trình ghi nhãn này.
Sau đây là sơ đồ của kiến trúc tổng thể.
Kiến trúc này bao gồm một số thành phần chính, mỗi thành phần chúng tôi sẽ giải thích chi tiết hơn trong các phần sau. Kiến trúc này cung cấp cho lực lượng lao động ghi nhãn một cổng web trực tuyến do SageMaker Ground Truth lưu trữ. Cổng thông tin này cho phép mỗi người dán nhãn đăng nhập và xem công việc ghi nhãn của họ. Sau khi đăng nhập, người gắn nhãn có thể chọn công việc dán nhãn và bắt đầu chú thích hình ảnh bằng giao diện người dùng tùy chỉnh được lưu trữ bởi Amazon CloudFront. Chúng tôi sử dụng AWS Lambda các chức năng xử lý dữ liệu trước chú thích và sau chú thích.
Ảnh chụp màn hình sau đây là một ví dụ về giao diện người dùng.
Người gắn nhãn có thể đánh dấu các điểm chính cụ thể trên hình ảnh bằng giao diện người dùng. Các đường giữa các điểm chính sẽ được tự động vẽ cho người dùng dựa trên định nghĩa khung xương mà giao diện người dùng sử dụng. Giao diện người dùng cho phép nhiều tùy chỉnh, chẳng hạn như sau:
- Tên điểm khóa tùy chỉnh
- Màu sắc điểm chính có thể định cấu hình
- Màu sắc dòng giàn khoan có thể cấu hình
- Cấu trúc khung và giàn khoan có thể cấu hình
Mỗi tính năng này đều là những tính năng được nhắm mục tiêu để cải thiện sự dễ dàng và linh hoạt của việc ghi nhãn. Chi tiết tùy chỉnh giao diện người dùng cụ thể có thể được tìm thấy trong Repo GitHub và được tóm tắt sau trong bài viết này. Lưu ý rằng trong bài đăng này, chúng tôi sử dụng ước tính tư thế của con người làm nhiệm vụ cơ bản, nhưng bạn có thể mở rộng nó sang việc gắn nhãn tư thế đối tượng bằng một thiết bị được xác định trước cho các đối tượng khác, chẳng hạn như động vật hoặc xe cộ. Trong ví dụ sau, chúng tôi chỉ ra cách áp dụng điều này để gắn nhãn các điểm của xe chở hàng.
Sự thật cơ bản của SageMaker
Trong giải pháp này, chúng tôi sử dụng SageMaker Ground Truth để cung cấp cho lực lượng lao động ghi nhãn một cổng thông tin trực tuyến và cách quản lý công việc ghi nhãn. Bài đăng này giả định rằng bạn đã quen thuộc với SageMaker Ground Truth. Để biết thêm thông tin, hãy tham khảo Sự thật về mặt đất của Amazon SageMaker.
Phân phối CloudFront
Đối với giải pháp này, giao diện người dùng ghi nhãn yêu cầu thành phần JavaScript được xây dựng tùy chỉnh được gọi là thành phần bộ xương đám đông 2d. Thành phần này có thể được tìm thấy trên GitHub như một phần của sáng kiến nguồn mở của Amazon. Bản phân phối CloudFront sẽ được sử dụng để lưu trữ đám đông-2d-skeleton.js, điều này cần thiết cho giao diện người dùng SageMaker Ground Truth. Bản phân phối CloudFront sẽ được chỉ định một danh tính truy cập gốc, điều này sẽ cho phép bản phân phối CloudFront truy cập vào đám đông-2d-skeleton.js nằm trong nhóm S3. Vùng lưu trữ S3 sẽ vẫn ở chế độ riêng tư và sẽ không có đối tượng nào khác trong vùng lưu trữ này thông qua phân phối CloudFront do những hạn chế mà chúng tôi đặt ra đối với danh tính truy cập nguồn gốc thông qua chính sách vùng lưu trữ. Đây là phương pháp được khuyến nghị để tuân theo nguyên tắc ít đặc quyền nhất.
Nhóm Amazon S3
Chúng tôi sử dụng nhóm S3 để lưu trữ tệp kê khai đầu vào và đầu ra SageMaker Ground Truth, mẫu giao diện người dùng tùy chỉnh, hình ảnh cho công việc gắn nhãn và mã JavaScript cần thiết cho giao diện người dùng tùy chỉnh. Nhóm này sẽ ở chế độ riêng tư và không thể truy cập công khai. Nhóm cũng sẽ có chính sách nhóm hạn chế phân phối CloudFront ở mức chỉ có thể truy cập mã JavaScript cần thiết cho giao diện người dùng. Điều này ngăn bản phân phối CloudFront lưu trữ bất kỳ đối tượng nào khác trong nhóm S3.
Hàm Lambda chú thích trước
Các công việc gắn nhãn SageMaker Ground Truth thường sử dụng tệp kê khai đầu vào ở định dạng Dòng JSON. Tệp kê khai đầu vào này chứa siêu dữ liệu cho công việc gắn nhãn, hoạt động như một tham chiếu đến dữ liệu cần được gắn nhãn và giúp định cấu hình cách trình bày dữ liệu cho người chú thích. Hàm Lambda chú thích trước xử lý các mục từ tệp kê khai đầu vào trước khi dữ liệu tệp kê khai được nhập vào mẫu giao diện người dùng tùy chỉnh. Đây là nơi có thể thực hiện mọi định dạng hoặc sửa đổi đặc biệt đối với các mục trước khi trình bày dữ liệu cho người chú thích trong giao diện người dùng. Để biết thêm thông tin về các hàm Lambda có chú thích trước, hãy xem Chú thích trước Lambda.
Hàm Lambda sau chú thích
Tương tự như hàm Lambda trước chú thích, hàm sau chú thích xử lý việc xử lý dữ liệu bổ sung mà bạn có thể muốn thực hiện sau khi tất cả các trình gắn nhãn đã gắn nhãn xong nhưng trước khi ghi kết quả đầu ra chú thích cuối cùng. Quá trình xử lý này được thực hiện bởi hàm Lambda, hàm này chịu trách nhiệm định dạng dữ liệu cho kết quả đầu ra của công việc gắn nhãn. Trong giải pháp này, chúng tôi chỉ sử dụng nó để trả về dữ liệu ở định dạng đầu ra mong muốn. Để biết thêm thông tin về các hàm Lambda sau chú thích, hãy xem Lambda chú thích sau.
Vai trò của hàm Lambda sau chú thích
Chúng tôi sử dụng một Quản lý truy cập và nhận dạng AWS (IAM) để cấp cho hàm Lambda sau chú thích quyền truy cập vào bộ chứa S3. Điều này là cần thiết để đọc kết quả chú thích và thực hiện bất kỳ sửa đổi nào trước khi ghi kết quả cuối cùng vào tệp kê khai đầu ra.
Vai trò của SageMaker Ground Truth
Chúng tôi sử dụng vai trò IAM này để cung cấp cho công việc gắn nhãn SageMaker Ground Truth khả năng gọi các hàm Lambda và đọc hình ảnh, tệp kê khai cũng như mẫu giao diện người dùng tùy chỉnh trong bộ chứa S3.
Điều kiện tiên quyết
Đối với hướng dẫn này, bạn nên có các điều kiện tiên quyết sau:
Đối với giải pháp này, chúng tôi sử dụng AWS CDK để triển khai kiến trúc. Sau đó, chúng tôi tạo một công việc ghi nhãn mẫu, sử dụng cổng chú thích để gắn nhãn cho các hình ảnh trong công việc ghi nhãn và kiểm tra kết quả ghi nhãn.
Tạo ngăn xếp CDK AWS
Sau khi bạn hoàn thành tất cả các điều kiện tiên quyết, bạn đã sẵn sàng triển khai giải pháp.
Thiết lập tài nguyên của bạn
Hoàn thành các bước sau để thiết lập tài nguyên của bạn:
- Tải xuống ngăn xếp ví dụ từ Repo GitHub.
- Sử dụng lệnh cd để thay đổi vào kho lưu trữ.
- Tạo môi trường Python của bạn và cài đặt các gói cần thiết (xem kho README.md để biết thêm chi tiết).
- Khi môi trường Python của bạn được kích hoạt, hãy chạy lệnh sau:
- Chạy lệnh sau để triển khai AWS CDK:
- Chạy lệnh sau để chạy tập lệnh sau triển khai:
Tạo công việc ghi nhãn
Sau khi thiết lập tài nguyên, bạn đã sẵn sàng tạo công việc ghi nhãn. Với mục đích của bài đăng này, chúng tôi tạo công việc gắn nhãn bằng cách sử dụng các tập lệnh mẫu và hình ảnh được cung cấp trong kho lưu trữ.
- đĩa CD vào
scripts
thư mục trong kho lưu trữ. - Tải xuống các hình ảnh ví dụ từ internet bằng cách chạy đoạn mã sau:
Tập lệnh này tải xuống một bộ gồm 10 hình ảnh mà chúng tôi sử dụng trong công việc gắn nhãn ví dụ của mình. Chúng tôi sẽ xem xét cách sử dụng dữ liệu đầu vào tùy chỉnh của riêng bạn ở phần sau của bài đăng này.
- Tạo một công việc ghi nhãn bằng cách chạy tới đoạn mã sau:
Tập lệnh này lấy ARN lực lượng lao động riêng của SageMaker Ground Truth làm đối số. Đây phải là ARN cho lực lượng lao động mà bạn có trong cùng tài khoản mà bạn đã triển khai kiến trúc này vào. Tập lệnh sẽ tạo tệp kê khai đầu vào cho công việc gắn nhãn của chúng ta, tải tệp đó lên Amazon S3 và tạo công việc gắn nhãn tùy chỉnh SageMaker Ground Truth. Chúng ta sẽ đi sâu hơn vào chi tiết của tập lệnh này ở phần sau của bài đăng này.
Dán nhãn tập dữ liệu
Sau khi bạn khởi chạy công việc gắn nhãn mẫu, nó sẽ xuất hiện trên bảng điều khiển SageMaker cũng như cổng thông tin lực lượng lao động.
Trong cổng thông tin lực lượng lao động, hãy chọn công việc ghi nhãn và chọn Bắt đầu làm việc.
Bạn sẽ thấy một hình ảnh từ tập dữ liệu mẫu. Tại thời điểm này, bạn có thể sử dụng giao diện người dùng bộ xương đám đông 2d tùy chỉnh để chú thích hình ảnh. Bạn có thể làm quen với giao diện người dùng bộ xương đám đông 2d bằng cách tham khảo Tổng quan về giao diện người dùng. Chúng tôi sử dụng định nghĩa giàn khoan từ Thử thách tập dữ liệu phát hiện điểm quan trọng COCO như giàn tạo dáng con người. Xin nhắc lại, bạn có thể tùy chỉnh điều này mà không cần thành phần giao diện người dùng tùy chỉnh của chúng tôi để xóa hoặc thêm điểm dựa trên yêu cầu của bạn.
Khi bạn hoàn tất chú thích cho hình ảnh, hãy chọn Gửi. Thao tác này sẽ đưa bạn đến hình ảnh tiếp theo trong tập dữ liệu cho đến khi tất cả hình ảnh được gắn nhãn.
Truy cập kết quả ghi nhãn
Khi bạn hoàn tất việc gắn nhãn cho tất cả các hình ảnh trong công việc gắn nhãn, SageMaker Ground Truth sẽ gọi hàm Lambda sau chú thích và tạo ra tệp out.manifest chứa tất cả các chú thích. Cái này output.manifest
sẽ được lưu trữ trong nhóm S3. Trong trường hợp của chúng tôi, vị trí của tệp kê khai đầu ra phải tuân theo đường dẫn URI S3 s3://<bucket name> /labeling_jobs/output/<labeling job name>/manifests/output/output.manifest
. Tệp đầu ra.manifest là tệp Dòng JSON, trong đó mỗi dòng tương ứng với một hình ảnh duy nhất và các chú thích của nó từ lực lượng gắn nhãn. Mỗi mục Dòng JSON là một đối tượng JSON có nhiều trường. Lĩnh vực chúng tôi quan tâm có tên là label-results
. Giá trị của trường này là một đối tượng chứa các trường sau:
- tập dữ liệu_object_id – ID hoặc chỉ mục của mục kê khai đầu vào
- dữ liệu_object_s3_uri – URI Amazon S3 của hình ảnh
- tên_file_hình ảnh – Tên file của hình ảnh
- image_s3_location – URL Amazon S3 của hình ảnh
- chú thích gốc – Các chú thích ban đầu (chỉ được đặt và sử dụng nếu bạn đang sử dụng quy trình làm việc có chú thích trước)
- đã cập nhật_annotations – Chú thích cho hình ảnh
- id công nhân – Nhân viên lực lượng lao động đã thực hiện các chú thích
- không_thay đổi_cần thiết – Hộp kiểm không cần thay đổi đã được chọn hay chưa
- đã được sửa đổi – Liệu dữ liệu chú thích có khác với dữ liệu đầu vào ban đầu hay không
- tổng_thời gian_in_giây – Thời gian mà người lao động cần để chú thích hình ảnh
Với các trường này, bạn có thể truy cập kết quả chú thích của mình cho từng hình ảnh và thực hiện các phép tính như thời gian trung bình để gắn nhãn cho hình ảnh.
Tạo công việc ghi nhãn của riêng bạn
Bây giờ, chúng tôi đã tạo một công việc ghi nhãn mẫu và bạn đã hiểu quy trình tổng thể, chúng tôi sẽ hướng dẫn bạn mã chịu trách nhiệm tạo tệp kê khai và khởi chạy công việc ghi nhãn. Chúng tôi tập trung vào các phần chính của tập lệnh mà bạn có thể muốn sửa đổi để thực hiện công việc ghi nhãn của riêng mình.
Chúng tôi bao gồm các đoạn mã từ create_example_labeling_job.py
kịch bản nằm trong Kho GitHub. Tập lệnh bắt đầu bằng cách thiết lập các biến được sử dụng sau này trong tập lệnh. Một số biến được mã hóa cứng để đơn giản, trong khi những biến khác phụ thuộc vào ngăn xếp sẽ được nhập động trong thời gian chạy bằng cách tìm nạp các giá trị được tạo từ ngăn xếp AWS CDK của chúng tôi.
Phần quan trọng đầu tiên trong tập lệnh này là tạo tệp kê khai. Hãy nhớ lại rằng tệp kê khai là tệp dòng JSON chứa thông tin chi tiết về công việc gắn nhãn SageMaker Ground Truth. Mỗi đối tượng Dòng JSON đại diện cho một mục (ví dụ: hình ảnh) cần được gắn nhãn. Đối với quy trình công việc này, đối tượng phải chứa các trường sau:
- nguồn-ref – URI Amazon S3 cho hình ảnh bạn muốn gắn nhãn.
- chú thích – Danh sách các đối tượng chú thích, được sử dụng cho quy trình công việc chú thích trước. Xem tài liệu về bộ xương đám đông 2d để biết thêm chi tiết về các giá trị dự kiến.
Tập lệnh tạo một dòng kê khai cho mỗi hình ảnh trong thư mục hình ảnh bằng cách sử dụng đoạn mã sau:
Nếu bạn muốn sử dụng các hình ảnh khác nhau hoặc trỏ đến một thư mục hình ảnh khác, bạn có thể sửa đổi phần mã đó. Ngoài ra, nếu đang sử dụng quy trình làm việc có chú thích trước, bạn có thể cập nhật mảng chú thích bằng chuỗi JSON bao gồm mảng và tất cả các đối tượng chú thích của nó. Chi tiết về định dạng của mảng này được ghi lại trong tài liệu về bộ xương đám đông 2d.
Với các mục hàng kê khai hiện đã được tạo, bạn có thể tạo và tải tệp kê khai lên vùng lưu trữ S3 mà bạn đã tạo trước đó:
Bây giờ bạn đã tạo một tệp kê khai chứa các hình ảnh bạn muốn gắn nhãn, bạn có thể tạo công việc gắn nhãn. Bạn có thể tạo công việc ghi nhãn theo chương trình bằng cách sử dụng AWS SDK cho Python (Boto3). Mã để tạo một công việc ghi nhãn như sau:
Các khía cạnh của mã này bạn có thể muốn sửa đổi là LabelingJobName
, TaskTitle
và TaskDescription
. Các LabelingJobName
là tên duy nhất của tác vụ gắn nhãn mà SageMaker sẽ sử dụng để tham chiếu tác vụ của bạn. Đây cũng là tên sẽ xuất hiện trên bảng điều khiển SageMaker. TaskTitle
phục vụ mục đích tương tự nhưng không cần phải là duy nhất và sẽ là tên của công việc xuất hiện trong cổng thông tin lực lượng lao động. Bạn có thể muốn làm cho những thông tin này cụ thể hơn về mục đích bạn đang dán nhãn hoặc mục đích của công việc ghi nhãn. Cuối cùng, chúng tôi có TaskDescription
cánh đồng. Trường này xuất hiện trong cổng thông tin lực lượng lao động để cung cấp thêm ngữ cảnh cho người gắn nhãn về nhiệm vụ là gì, chẳng hạn như hướng dẫn và hướng dẫn cho nhiệm vụ. Để biết thêm thông tin về các trường này cũng như các trường khác, hãy tham khảo tài liệu create_labeling_job.
Thực hiện điều chỉnh cho giao diện người dùng
Trong phần này, chúng tôi sẽ giới thiệu một số cách bạn có thể tùy chỉnh giao diện người dùng. Sau đây là danh sách các tùy chỉnh tiềm năng phổ biến nhất đối với giao diện người dùng để điều chỉnh nó phù hợp với nhiệm vụ lập mô hình của bạn:
- Bạn có thể xác định những điểm chính nào có thể được gắn nhãn. Điều này bao gồm tên của điểm chính và màu sắc của nó.
- Bạn có thể thay đổi cấu trúc của khung (các điểm chính được kết nối).
- Bạn có thể thay đổi màu đường cho các dòng cụ thể giữa các điểm chính cụ thể.
Tất cả các tùy chỉnh giao diện người dùng này đều có thể định cấu hình thông qua các đối số được chuyển vào thành phần Crow-2d-Skeleton, đây là thành phần JavaScript được sử dụng trong phần này. mẫu quy trình làm việc tùy chỉnh. Trong mẫu này, bạn sẽ tìm thấy cách sử dụng thành phần Crowd-2d-Skeleton. Một phiên bản đơn giản hóa được hiển thị trong đoạn mã sau:
Trong ví dụ mã trước, bạn có thể thấy các thuộc tính sau trên thành phần: imgSrc
, keypointClasses
, skeletonRig
, skeletonBoundingBox
và intialValues
. Chúng tôi mô tả mục đích của từng thuộc tính trong các phần sau, nhưng việc tùy chỉnh giao diện người dùng cũng đơn giản như thay đổi giá trị cho các thuộc tính này, lưu mẫu và chạy lại chương trình. post_deployment_script.py
chúng tôi đã sử dụng trước đây.
thuộc tính imgSrc
Sản phẩm imgSrc
thuộc tính kiểm soát hình ảnh nào sẽ hiển thị trong giao diện người dùng khi gắn nhãn. Thông thường, một hình ảnh khác nhau được sử dụng cho mỗi mục hàng tệp kê khai, do đó thuộc tính này thường được điền động bằng cách sử dụng tính năng tích hợp sẵn Chất lỏng ngôn ngữ tạo khuôn mẫu. Bạn có thể thấy trong ví dụ mã trước đó giá trị thuộc tính được đặt thành {{ task.input.image_s3_uri | grant_read_access }}
, là biến mẫu Liquid sẽ được thay thế bằng biến thực tế image_s3_uri
value khi mẫu đang được hiển thị. Quá trình kết xuất bắt đầu khi người dùng mở một hình ảnh để chú thích. Quá trình này lấy một mục hàng từ tệp kê khai đầu vào và gửi nó đến hàm Lambda chú thích trước dưới dạng event.dataObject
. Hàm chú thích trước lấy thông tin cần thiết từ chi tiết đơn hàng và trả về taskInput
từ điển, sau đó được chuyển đến công cụ kết xuất Liquid, công cụ này sẽ thay thế bất kỳ biến Liquid nào trong mẫu của bạn. Ví dụ: giả sử bạn có tệp kê khai có dòng sau:
Dữ liệu này sẽ được chuyển đến chức năng chú thích trước. Đoạn mã sau cho biết cách hàm trích xuất các giá trị từ đối tượng sự kiện:
Đối tượng được hàm trả về trong trường hợp này sẽ trông giống như đoạn mã sau:
Sau đó, dữ liệu được trả về từ hàm sẽ có sẵn cho công cụ mẫu Liquid, công cụ này sẽ thay thế các giá trị mẫu trong mẫu bằng các giá trị dữ liệu do hàm trả về. Kết quả sẽ giống như đoạn mã sau:
thuộc tính keypointClass
Sản phẩm keypointClasses
thuộc tính xác định những điểm chính nào sẽ xuất hiện trong giao diện người dùng và được người chú thích sử dụng. Thuộc tính này lấy một chuỗi JSON chứa danh sách các đối tượng. Mỗi đối tượng đại diện cho một điểm chính. Mỗi đối tượng keypoint phải chứa các trường sau:
- id – Một giá trị duy nhất để xác định điểm chính đó.
- màu sắc – Màu của điểm chính được biểu thị dưới dạng màu hex HTML.
- nhãn – Tên hoặc lớp keypoint.
- x – Thuộc tính tùy chọn này chỉ cần thiết nếu bạn muốn sử dụng chức năng khung vẽ trong giao diện người dùng. Giá trị của thuộc tính này là vị trí x của điểm khóa so với hộp giới hạn của bộ xương. Giá trị này thường thu được bằng Công cụ Skeleton Rig Creator. Nếu bạn đang thực hiện chú thích điểm chính và không cần vẽ toàn bộ khung cùng một lúc, bạn có thể đặt giá trị này thành 0.
- y – Thuộc tính tùy chọn này tương tự như x nhưng dành cho chiều dọc.
Để biết thêm thông tin trên keypointClasses
thuộc tính, xem tài liệu về keypointClasses.
thuộc tính khung xương
Sản phẩm skeletonRig
thuộc tính kiểm soát những điểm chính nào sẽ có các đường kẻ giữa chúng. Thuộc tính này lấy một chuỗi JSON chứa danh sách các cặp nhãn điểm chính. Mỗi cặp thông báo cho giao diện người dùng những điểm chính cần vẽ đường giữa. Ví dụ, '[["left_ankle","left_knee"],["left_knee","left_hip"]]'
thông báo cho UI để vẽ đường giữa "left_ankle"
và "left_knee"
và vẽ đường giữa "left_knee"
và "left_hip"
. Điều này có thể được tạo ra bởi Công cụ Skeleton Rig Creator.
Thuộc tính khung xươngBoundingBox
Sản phẩm skeletonBoundingBox
thuộc tính là tùy chọn và chỉ cần thiết nếu bạn muốn sử dụng chức năng khung vẽ trong giao diện người dùng. Chức năng vẽ khung là khả năng chú thích toàn bộ khung bằng một hành động chú thích duy nhất. Chúng tôi không đề cập đến tính năng này trong bài viết này. Giá trị của thuộc tính này là kích thước hộp giới hạn của bộ xương. Giá trị này thường thu được bằng Công cụ Skeleton Rig Creator. Nếu bạn đang thực hiện chú thích điểm chính và không cần vẽ toàn bộ khung cùng một lúc, bạn có thể đặt giá trị này thành null. Nên sử dụng công cụ Skeleton Rig Creator để có được giá trị này.
thuộc tính intialValues
Sản phẩm initialValues
thuộc tính được sử dụng để điền trước giao diện người dùng các chú thích thu được từ một quy trình khác (chẳng hạn như một công việc gắn nhãn khác hoặc mô hình học máy). Điều này rất hữu ích khi thực hiện công việc điều chỉnh hoặc xem xét. Dữ liệu cho trường này thường được điền động trong cùng một mô tả cho imgSrc
thuộc tính. Thông tin chi tiết có thể được tìm thấy trong tài liệu về bộ xương đám đông 2d.
Làm sạch
Để tránh phát sinh phí trong tương lai, bạn nên xóa các đối tượng trong bộ chứa S3 và xóa ngăn xếp CDK AWS của mình. Bạn có thể xóa các đối tượng S3 của mình thông qua bảng điều khiển Amazon SageMaker hoặc Giao diện dòng lệnh AWS (AWS CLI). Sau khi xóa tất cả đối tượng S3 trong nhóm, bạn có thể hủy AWS CDK bằng cách chạy mã sau:
Thao tác này sẽ xóa các tài nguyên bạn đã tạo trước đó.
Những cân nhắc
Các bước bổ sung có thể cần thiết để tạo ra quy trình làm việc của bạn. Dưới đây là một số cân nhắc tùy thuộc vào hồ sơ rủi ro của tổ chức bạn:
- Thêm quyền truy cập và ghi nhật ký ứng dụng
- Thêm tường lửa ứng dụng web (WAF)
- Điều chỉnh quyền IAM để tuân theo đặc quyền tối thiểu
Kết luận
Trong bài đăng này, chúng tôi đã chia sẻ tầm quan trọng của việc ghi nhãn hiệu quả và độ chính xác trong việc xây dựng bộ dữ liệu ước tính tư thế. Để trợ giúp cả hai mục, chúng tôi đã chỉ ra cách bạn có thể sử dụng SageMaker Ground Truth để xây dựng quy trình gắn nhãn tùy chỉnh nhằm hỗ trợ các tác vụ gắn nhãn tư thế dựa trên bộ xương, nhằm nâng cao hiệu quả và độ chính xác trong quá trình gắn nhãn. Chúng tôi đã chỉ ra cách bạn có thể mở rộng thêm mã và ví dụ cho các yêu cầu ghi nhãn ước tính tư thế tùy chỉnh khác nhau.
Chúng tôi khuyến khích bạn sử dụng giải pháp này cho các nhiệm vụ ghi nhãn của mình và liên hệ với AWS để được hỗ trợ hoặc giải đáp thắc mắc liên quan đến quy trình ghi nhãn tùy chỉnh.
Về các tác giả
Arthur Putnam là Nhà khoa học dữ liệu toàn diện trong Dịch vụ chuyên nghiệp của AWS. Chuyên môn của Arthur tập trung vào việc phát triển và tích hợp các công nghệ front-end và back-end vào hệ thống AI. Ngoài công việc, Arthur thích khám phá những tiến bộ mới nhất trong công nghệ, dành thời gian cho gia đình và tận hưởng hoạt động ngoài trời.
Ben Fenker là Nhà khoa học dữ liệu cấp cao trong Dịch vụ chuyên nghiệp của AWS và đã giúp khách hàng xây dựng và triển khai các giải pháp ML trong các ngành từ thể thao đến chăm sóc sức khỏe đến sản xuất. Anh ấy có bằng tiến sĩ. bằng vật lý của Đại học Texas A&M và 6 năm kinh nghiệm trong ngành. Ben thích bóng chày, đọc sách và nuôi dạy con cái.
Jarvis Lee là Nhà khoa học dữ liệu cấp cao với Dịch vụ chuyên nghiệp của AWS. Anh đã làm việc tại AWS hơn sáu năm, làm việc với khách hàng về các vấn đề về học máy và thị giác máy tính. Ngoài giờ làm việc, anh ấy thích đi xe đạp.
- Phân phối nội dung và PR được hỗ trợ bởi SEO. Được khuếch đại ngay hôm nay.
- PlatoData.Network Vertical Generative Ai. Trao quyền cho chính mình. Truy cập Tại đây.
- PlatoAiStream. Thông minh Web3. Kiến thức khuếch đại. Truy cập Tại đây.
- Trung tâmESG. Than đá, công nghệ sạch, Năng lượng, Môi trường Hệ mặt trời, Quản lý chất thải. Truy cập Tại đây.
- PlatoSức khỏe. Tình báo thử nghiệm lâm sàng và công nghệ sinh học. Truy cập Tại đây.
- nguồn: https://aws.amazon.com/blogs/machine-learning/skeleton-based-pose-annotation-labeling-using-amazon-sagemaker-ground-truth/
- : có
- :là
- :không phải
- :Ở đâu
- $ LÊN
- 1
- 10
- 100
- 13
- 15%
- 17
- 2D
- 31
- 320
- 7
- 8
- 9
- a
- có khả năng
- Có khả năng
- truy cập
- có thể truy cập
- Tài khoản
- chính xác
- chính xác
- chính xác
- có được
- mua lại
- ngang qua
- Hoạt động
- hành vi
- thực tế
- thêm vào
- thêm vào
- Ngoài ra
- Điều chỉnh
- điều chỉnh
- tiến bộ
- Sau
- AI
- Hệ thống AI
- Định hướng
- Tất cả
- cho phép
- cho phép
- Ngoài ra
- đàn bà gan dạ
- Amazon SageMaker
- Sự thật về mặt đất của Amazon SageMaker
- Amazon Web Services
- an
- và
- động vật
- Một
- bất kì
- xuất hiện
- xuất hiện
- Các Ứng Dụng
- các ứng dụng
- áp dụng
- kiến trúc
- LÀ
- đối số
- đối số
- xung quanh
- Mảng
- Arthur
- AS
- các khía cạnh
- giao
- Hỗ trợ
- giả định
- At
- thuộc tính
- tăng cường
- Augmented Reality
- tự động
- có sẵn
- Trung bình cộng
- tránh
- AWS
- Dịch vụ chuyên nghiệp của AWS
- Back-end
- Bóng chày
- dựa
- Baseline
- BE
- bởi vì
- được
- trước
- bắt đầu
- được
- ben
- giữa
- cả hai
- Hộp
- rộng
- trình duyệt
- xây dựng
- Xây dựng
- được xây dựng trong
- gánh nặng
- nhưng
- by
- tính toán
- gọi là
- CAN
- cẩn thận
- trường hợp
- CD
- trung tâm
- thay đổi
- Những thay đổi
- thay đổi
- tải
- kiểm tra
- Chọn
- tốt nghiệp lớp XNUMX
- sạch hơn
- cli
- khách hàng
- mã
- màu sắc
- đến
- Chung
- hoàn thành
- thành phần
- các thành phần
- Bao gồm
- máy tính
- Tầm nhìn máy tính
- kết nối
- sự cân nhắc
- thích hợp
- Bao gồm
- An ủi
- chứa
- chứa
- bối cảnh
- điều khiển
- tương ứng
- Phí Tổn
- che
- tạo
- tạo ra
- tạo ra
- Tạo
- tạo
- yaratıcı
- quan trọng
- băng qua
- đám đông
- khách hàng
- Custom-xây dựng
- khách hàng
- tùy biến
- tùy chỉnh
- dữ liệu
- xử lý dữ liệu
- nhà khoa học dữ liệu
- bộ dữ liệu
- ngày giờ
- sâu
- học kĩ càng
- sâu sắc hơn
- định nghĩa
- xác định
- Xác định
- định nghĩa
- chứng minh
- phụ thuộc
- Tùy
- phụ thuộc
- triển khai
- triển khai
- mô tả
- Mô tả
- thiết kế
- thiết kế
- mong muốn
- phá hủy
- chi tiết
- chi tiết
- Phát hiện
- phát triển
- sơ đồ
- khác nhau
- kích thước
- kích thước
- trực tiếp
- thư mục
- phân phối
- bổ nhào
- khác nhau
- do
- Không
- làm
- thực hiện
- dont
- Tải xuống
- vẽ tranh
- rút ra
- hai
- suốt trong
- năng động
- mỗi
- Sớm hơn
- dễ dàng
- dễ dàng
- hiệu quả
- hiệu quả
- khuyến khích
- thuê
- Động cơ
- nâng cao
- thưởng thức
- đảm bảo
- Giải trí
- Toàn bộ
- Môi trường
- lôi
- lỗi
- Ngay cả
- Sự kiện
- kiểm tra
- ví dụ
- ví dụ
- Mở rộng
- dự kiến
- kinh nghiệm
- chuyên môn
- Giải thích
- Khám phá
- thêm
- thêm
- Chất chiết xuất
- quen
- làm quen
- gia đình
- Đặc tính
- Tính năng
- lĩnh vực
- Lĩnh vực
- Tập tin
- Các tập tin
- cuối cùng
- Tìm kiếm
- tường lửa
- Tên
- Linh hoạt
- Tập trung
- theo
- tiếp theo
- sau
- Chân
- Trong
- định dạng
- tìm thấy
- từ
- chức năng
- chức năng
- chức năng
- cơ bản
- xa hơn
- tương lai
- tạo ra
- được
- gif
- GitHub
- Cho
- Go
- Mặt đất
- hướng dẫn
- Xử lý
- Có
- có
- he
- chăm sóc sức khỏe
- nặng nề
- giúp đỡ
- đã giúp
- hữu ích
- giúp
- tại đây
- HEX
- chất lượng cao
- của mình
- chủ nhà
- tổ chức
- lưu trữ
- Độ đáng tin của
- Hướng dẫn
- HTML
- http
- HTTPS
- Nhân loại
- Hàng trăm
- ID
- xác định
- xác định
- xác định
- Bản sắc
- if
- hình ảnh
- hình ảnh
- tầm quan trọng
- quan trọng
- nâng cao
- cải thiện
- in
- bao gồm
- Hợp nhất
- chỉ số
- các ngành công nghiệp
- ngành công nghiệp
- không hiệu quả
- bị ảnh hưởng
- thông tin
- thông báo
- khả năng phán đoán
- đầu vào
- Yêu cầu
- cài đặt, dựng lên
- hướng dẫn
- Tích hợp
- quan tâm
- quan tâm
- Giao thức
- Internet
- trong
- liên quan đến
- IT
- mặt hàng
- ITS
- JavaScript
- Việc làm
- việc làm
- jpg
- json
- Key
- Phát hiện điểm chính
- trẻ em
- nhãn
- ghi nhãn
- Nhãn
- Ngôn ngữ
- lớn
- cuối cùng
- một lát sau
- mới nhất
- phóng
- phát động
- ra mắt
- hàng đầu
- LEARN
- học tập
- ít nhất
- cho phép
- Lượt thích
- Dòng
- dòng
- Chất lỏng
- Danh sách
- nằm
- địa điểm thư viện nào
- đăng nhập
- đăng nhập
- Xem
- giống như
- máy
- học máy
- thực hiện
- làm cho
- quản lý
- nhãn hiệu
- sản xuất
- nhiều
- dấu
- đánh dấu
- Có thể..
- có lẽ
- Phương tiện truyền thông
- y khoa
- Ứng dụng y tế
- Siêu dữ liệu
- giảm thiểu
- sai lầm
- ML
- kiểu mẫu
- người mẫu
- mô hình
- Sửa đổi
- sửa đổi
- chi tiết
- hầu hết
- tên
- Thiên nhiên
- cần thiết
- Cần
- cần thiết
- nhu cầu
- tiếp theo
- Không
- ghi
- tại
- vật
- đối tượng
- thu được
- có được
- of
- thường
- on
- hàng loạt
- ONE
- Trực tuyến
- có thể
- mở
- mã nguồn mở
- mở ra
- or
- gọi món
- tổ chức
- nguồn gốc
- nguyên
- OS
- Nền tảng khác
- Khác
- vfoXNUMXfipXNUMXhfpiXNUMXufhpiXNUMXuf
- ra
- ngoài trời
- đầu ra
- bên ngoài
- kết thúc
- tổng thể
- riêng
- gói
- đôi
- cặp
- một phần
- các bộ phận
- thông qua
- con đường
- người
- hiệu suất
- quyền
- Vật lý
- Nơi
- plato
- Thông tin dữ liệu Plato
- PlatoDữ liệu
- Điểm
- điểm
- điều luật
- đông dân cư
- Portal
- đặt ra
- Ước tính tư thế
- đặt ra
- vị trí
- Bài đăng
- tiềm năng
- thực hành
- trước
- Độ chính xác
- điều kiện tiên quyết
- trình bày
- trình bày
- ngăn chặn
- ngăn chặn
- trước
- trước đây
- nguyên tắc
- riêng
- vấn đề
- quá trình
- Quy trình
- xử lý
- sản xuất
- chuyên nghiệp
- Hồ sơ
- cho
- cung cấp
- cung cấp
- công khai
- mục đích
- mục đích
- Python
- chất lượng
- Mau
- nâng cao
- phạm vi
- khác nhau,
- Đọc
- Reading
- sẵn sàng
- thế giới thực
- Thực tế
- công nhận
- đề nghị
- giảm
- xem
- tài liệu tham khảo
- liên quan
- tương đối
- đáng tin cậy
- vẫn
- tẩy
- trả lại
- vẽ
- thay thế
- thay thế
- kho
- đại diện
- đại diện cho
- cần phải
- Yêu cầu
- đòi hỏi
- Thông tin
- phản ứng
- chịu trách nhiệm
- hạn chế
- kết quả
- Kết quả
- trở lại
- Trả về
- xem xét
- đi
- giàn khoan
- Nguy cơ
- robotics
- mạnh mẽ
- Vai trò
- chạy
- chạy
- thời gian chạy
- nhà làm hiền triết
- tương tự
- mẫu
- tiết kiệm
- nói
- kịch bản
- Nhà khoa học
- kịch bản
- kịch bản
- sdk
- Phần
- phần
- an ninh
- xem
- chọn
- gửi
- cao cấp
- phục vụ
- DỊCH VỤ
- định
- thiết lập
- một số
- chia sẻ
- nên
- hiển thị
- cho thấy
- thể hiện
- Chương trình
- có ý nghĩa
- tương tự
- Đơn giản
- đơn giản
- đơn giản hóa
- đơn giản
- duy nhất
- Six
- So
- giải pháp
- Giải pháp
- một số
- một cái gì đó
- nguồn
- đặc biệt
- riêng
- đặc biệt
- Chi
- Thể thao
- ngăn xếp
- bắt đầu
- Các bước
- là gắn
- hàng
- lưu trữ
- đơn giản
- hợp lý hóa
- Chuỗi
- cấu trúc
- đáng kể
- như vậy
- hỗ trợ
- trao đổi
- Hoán đổi
- hệ thống
- hệ thống
- Hãy
- mất
- nhắm mục tiêu
- Nhiệm vụ
- nhiệm vụ
- kỹ thuật
- Công nghệ
- Công nghệ
- mẫu
- hàng chục
- texas
- việc này
- Sản phẩm
- thông tin
- Dòng
- cung cấp their dịch
- Them
- sau đó
- bằng cách ấy
- vì thế
- Kia là
- họ
- điều này
- hàng ngàn
- Thông qua
- Bị ràng buộc
- thời gian
- đến
- mất
- công cụ
- Train
- đào tạo
- Hội thảo
- được kích hoạt
- xe tải
- đúng
- Sự thật
- XOAY
- thường
- ui
- hiểu
- độc đáo
- trường đại học
- cho đến khi
- Cập nhật
- Sử dụng
- sử dụng
- đã sử dụng
- hữu ích
- người sử dang
- Giao diện người dùng
- sử dụng
- sử dụng
- thường
- giá trị
- Các giá trị
- biến
- biến thể
- khác nhau
- Xe cộ
- phiên bản
- thẳng đứng
- thông qua
- Video
- tầm nhìn
- trực quan
- khối lượng
- W
- đi bộ
- đi bộ
- hương
- muốn
- là
- Đường..
- cách
- we
- web
- Ứng dụng web
- trình duyệt web
- các dịch vụ web
- TỐT
- Điều gì
- khi nào
- trong khi
- liệu
- cái nào
- trong khi
- CHÚNG TÔI LÀ
- sẽ
- muốn
- với
- ở trong
- không có
- Công việc
- công nhân
- quy trình làm việc
- Luồng công việc
- Lực lượng lao động
- đang làm việc
- sẽ
- viết
- X
- năm
- Bạn
- trên màn hình
- mình
- zephyrnet