Logo Zephyrnet

Sử dụng thị giác máy tính để đo lường năng suất nông nghiệp với Nhãn tùy chỉnh Rekognition của Amazon

Ngày:

Trong lĩnh vực nông nghiệp, vấn đề xác định và đếm số lượng quả trên cây đóng vai trò quan trọng trong dự tính mùa vụ. Khái niệm thuê và cho thuê cây đang trở nên phổ biến, trong đó chủ sở hữu cây cho thuê cây hàng năm trước khi thu hoạch dựa trên số quả ước tính. Thực hành phổ biến của việc đếm trái cây thủ công là một quá trình tốn nhiều thời gian và công sức. Đây là một trong những nhiệm vụ khó nhất nhưng quan trọng nhất để đạt được kết quả tốt hơn trong hệ thống quản lý cây trồng của bạn. Việc ước tính số lượng hoa và trái này giúp nông dân đưa ra quyết định tốt hơn — không chỉ về giá cho thuê mà còn về phương pháp canh tác và phòng trừ bệnh hại cây trồng.

Đây là nơi giải pháp máy học tự động (ML) cho thị giác máy tính (CV) có thể giúp ích cho nông dân. Nhãn tùy chỉnh Rekognition của Amazon là một dịch vụ thị giác máy tính được quản lý hoàn toàn cho phép các nhà phát triển xây dựng các mô hình tùy chỉnh để phân loại và xác định các đối tượng trong hình ảnh cụ thể và duy nhất cho doanh nghiệp của bạn.

Nhãn tùy chỉnh Rekognition không yêu cầu bạn phải có bất kỳ kiến ​​thức chuyên môn về thị giác máy tính nào trước đó. Bạn có thể bắt đầu bằng cách tải lên hàng chục hình ảnh thay vì hàng nghìn hình ảnh. Nếu hình ảnh đã được gắn nhãn, bạn có thể bắt đầu đào tạo người mẫu chỉ trong vài cú nhấp chuột. Nếu không, bạn có thể gắn nhãn chúng trực tiếp trong bảng điều khiển Nhãn tùy chỉnh Rekognition hoặc sử dụng Sự thật về mặt đất của Amazon SageMaker để dán nhãn cho chúng. Rekognition Custom Labels sử dụng tính năng học chuyển để tự động kiểm tra dữ liệu đào tạo, chọn khung mô hình và thuật toán phù hợp, tối ưu hóa siêu tham số và đào tạo mô hình. Khi bạn hài lòng với độ chính xác của mô hình, bạn có thể bắt đầu lưu trữ mô hình được đào tạo chỉ với một cú nhấp chuột.

Trong bài đăng này, chúng tôi giới thiệu cách bạn có thể xây dựng giải pháp đầu cuối bằng cách sử dụng Nhãn tùy chỉnh nhận lại để phát hiện và đếm trái cây để đo năng suất nông nghiệp.

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

Chúng tôi tạo một mô hình tùy chỉnh để phát hiện trái cây bằng cách sử dụng các bước sau:

  1. Gắn nhãn tập dữ liệu bằng các hình ảnh có chứa trái cây bằng cách sử dụng Sự thật về mặt đất của Amazon SageMaker.
  2. Tạo một dự án trong Nhãn tùy chỉnh Rekognition.
  3. Nhập tập dữ liệu được gắn nhãn của bạn.
  4. Huấn luyện người mẫu.
  5. Kiểm tra mô hình tùy chỉnh mới bằng cách sử dụng điểm cuối API được tạo tự động.

Nhãn tùy chỉnh Rekognition cho phép bạn quản lý quy trình đào tạo mô hình ML trên bảng điều khiển Amazon Rekognition, giúp đơn giản hóa quá trình suy luận và phát triển mô hình end-to-end.

Điều kiện tiên quyết

Để tạo mô hình đo lường năng suất nông nghiệp, trước tiên bạn cần chuẩn bị một tập dữ liệu để đào tạo mô hình. Đối với bài đăng này, tập dữ liệu của chúng tôi bao gồm các hình ảnh về trái cây. Các hình ảnh sau đây cho thấy một số ví dụ.

Chúng tôi lấy nguồn hình ảnh của chúng tôi từ khu vườn của chúng tôi. Bạn có thể tải xuống các tệp hình ảnh từ Repo GitHub.

Đối với bài đăng này, chúng tôi chỉ sử dụng một số ít hình ảnh để giới thiệu trường hợp sử dụng năng suất trái cây. Bạn có thể thử nghiệm thêm với nhiều hình ảnh hơn.

Để chuẩn bị tập dữ liệu của bạn, hãy hoàn thành các bước sau:

  1. tạo một Dịch vụ lưu trữ đơn giản của Amazon (Amazon S3) xô.
  2. Tạo hai thư mục bên trong nhóm này, được gọi là raw_datatest_data, để lưu trữ hình ảnh để ghi nhãn và thử nghiệm mô hình.
  3. Chọn Tải lên để tải hình ảnh lên các thư mục tương ứng từ repo GitHub.

Các hình ảnh đã tải lên không được gắn nhãn. Bạn gắn nhãn các hình ảnh trong bước sau.

Gắn nhãn tập dữ liệu của bạn bằng cách sử dụng Ground Truth

Để đào tạo mô hình ML, bạn cần các hình ảnh có nhãn. Ground Truth cung cấp một quy trình dễ dàng để gắn nhãn các hình ảnh. Nhiệm vụ ghi nhãn được thực hiện bởi một lực lượng lao động; trong bài đăng này, bạn tạo ra một lực lượng lao động tư nhân. Bạn có thể dùng Amazon Mechanical Turk để ghi nhãn ở quy mô.

Tạo lực lượng lao động dán nhãn

Trước tiên, hãy tạo lực lượng lao động dán nhãn của chúng tôi. Hoàn thành các bước sau:

  1. Trên bảng điều khiển SageMaker, dưới Thực địa trong ngăn điều hướng, chọn Ghi nhãn lực lượng lao động.
  2. trên Riêng tab, chọn Tạo nhóm riêng.
  3. Trong Tên nhóm, hãy nhập tên cho lực lượng lao động của bạn (cho bài đăng này, labeling-team).
  4. Chọn Tạo nhóm riêng.
  5. Chọn Mời công nhân mới.

  6. Trong tạp chí Thêm công nhân bằng địa chỉ email , nhập địa chỉ email của công nhân của bạn. Đối với bài đăng này, hãy nhập địa chỉ email của riêng bạn.
  7. Chọn Mời công nhân mới.

Bạn đã tạo một lực lượng lao động gắn nhãn, mà bạn sẽ sử dụng trong bước tiếp theo trong khi tạo công việc gắn nhãn.

Tạo công việc gắn nhãn Sự thật trên mặt đất

Để hoàn thành công việc gắn nhãn của bạn, hãy hoàn thành các bước sau:

  1. Trên bảng điều khiển SageMaker, dưới Thực địa, chọn Công việc gắn nhãn.
  2. Chọn Tạo công việc dán nhãn.
  3. Trong Tên công việc, đi vào fruits-detection.
  4. Chọn Tôi muốn chỉ định tên thuộc tính nhãn khác với tên công việc gắn nhãn.
  5. Trong Tên thuộc tính nhãnđi vào Labels.
  6. Trong Thiết lập dữ liệu đầu vào, lựa chọn Thiết lập dữ liệu tự động.
  7. Trong Vị trí S3 cho các tập dữ liệu đầu vào, nhập vị trí S3 của hình ảnh, sử dụng nhóm bạn đã tạo trước đó (s3://{your-bucket-name}/raw-data/images/).
  8. Trong Vị trí S3 cho tập dữ liệu đầu ra, lựa chọn Chỉ định một vị trí mới và nhập vị trí đầu ra cho dữ liệu được chú thích (s3://{your-bucket-name}/annotated-data/).
  9. Trong Loại dữ liệu, chọn Hình ảnh.
  10. Chọn Hoàn thành thiết lập dữ liệu.
    Thao tác này tạo tệp kê khai hình ảnh và cập nhật đường dẫn vị trí đầu vào S3. Chờ thông báo “Kết nối dữ liệu đầu vào thành công”.
  11. Mở rộng Cấu hình bổ sung.
  12. Xác nhận rằng Tập dữ liệu đầy đủ được chọn.
    Điều này được sử dụng để chỉ định xem bạn muốn cung cấp tất cả các hình ảnh cho công việc gắn nhãn hay một tập hợp con các hình ảnh dựa trên bộ lọc hoặc lấy mẫu ngẫu nhiên.
  13. Trong Nhiệm vụ, chọn Hình ảnh bởi vì đây là một nhiệm vụ cho chú thích hình ảnh.
  14. Bởi vì đây là một trường hợp sử dụng phát hiện đối tượng, cho Lựa chọn công việc, lựa chọn Hộp giới hạn.
  15. Để các tùy chọn khác làm mặc định và chọn Sau.
  16. Chọn Sau.

    Bây giờ bạn chỉ định công nhân của mình và định cấu hình công cụ ghi nhãn.
  17. Trong Các loại công nhân, lựa chọn Riêng.Đối với bài đăng này, bạn sử dụng lực lượng lao động nội bộ để chú thích hình ảnh. Bạn cũng có tùy chọn để chọn lực lượng lao động hợp đồng công (Amazon Cơ khí Thổ Nhĩ Kỳ) hoặc một lực lượng lao động đối tác (Nhà cung cấp được quản lý) tùy thuộc vào trường hợp sử dụng của bạn.
  18. Đối với đội tư nhân¸ chọn đội bạn đã tạo trước đó.
  19. Để các tùy chọn khác làm mặc định và cuộn xuống Công cụ ghi nhãn hộp ranh giới. Điều cần thiết là cung cấp hướng dẫn rõ ràng tại đây trong công cụ ghi nhãn cho nhóm ghi nhãn tư nhân. Các hướng dẫn này hoạt động như một hướng dẫn cho người chú thích trong khi dán nhãn. Hướng dẫn tốt là ngắn gọn, vì vậy chúng tôi khuyên bạn nên giới hạn hướng dẫn bằng lời nói hoặc văn bản trong hai câu và tập trung vào hướng dẫn bằng hình ảnh. Trong trường hợp phân loại hình ảnh, chúng tôi khuyên bạn nên cung cấp một hình ảnh được gắn nhãn trong mỗi lớp như một phần của hướng dẫn.
  20. Thêm hai nhãn: fruitno_fruit.
  21. Nhập hướng dẫn chi tiết trong Trường mô tả cần cung cấp hướng dẫn cho người lao động. Ví dụ: You need to label fruits in the provided image. Please ensure that you select label 'fruit' and draw the box around the fruit just to fit the fruit for better quality of label data. You also need to label other areas which look similar to fruit but are not fruit with label 'no_fruit'.Bạn cũng có thể tùy chọn cung cấp các ví dụ về hình ảnh dán nhãn tốt và xấu. Bạn cần đảm bảo rằng những hình ảnh này có thể truy cập công khai.
  22. Chọn Tạo để tạo công việc ghi nhãn.

Sau khi lệnh được tạo thành công, bước tiếp theo là gắn nhãn cho các ảnh đầu vào.

Bắt đầu công việc gắn nhãn

Khi bạn đã tạo thành công công việc, trạng thái của công việc là InProgress. Điều này có nghĩa là công việc được tạo ra và lực lượng lao động tư nhân được thông báo qua email về nhiệm vụ được giao cho họ. Bởi vì bạn đã giao nhiệm vụ cho mình, bạn sẽ nhận được một email hướng dẫn đăng nhập vào dự án Ghi nhãn sự thật trên mặt đất.

  1. Mở email và chọn liên kết được cung cấp.
  2. Nhập tên người dùng và mật khẩu được cung cấp trong email.
    Bạn có thể phải thay đổi mật khẩu tạm thời được cung cấp trong email thành mật khẩu mới sau khi đăng nhập.
  3. Sau khi bạn đăng nhập, hãy chọn công việc của bạn và chọn Bắt đầu làm việc.

    Bạn có thể sử dụng các công cụ được cung cấp để phóng to, thu nhỏ, di chuyển và vẽ các hộp giới hạn trong hình ảnh.
  4. Chọn nhãn của bạn (fruit or no_fruit) và sau đó vẽ một hộp giới hạn trong hình ảnh để chú thích nó.
  5. Khi bạn hoàn thành, hãy chọn Gửi.

Bây giờ bạn có các hình ảnh được gắn nhãn chính xác sẽ được sử dụng bởi mô hình ML để đào tạo.

Tạo dự án Amazon Rekognition của bạn

Để tạo dự án đo lường năng suất nông nghiệp của bạn, hãy hoàn thành các bước sau:

  1. Trên bảng điều khiển Amazon Rekognition, chọn Nhãn tùy chỉnh.
  2. Chọn Bắt Đầu.
  3. Trong Tên dự án, đi vào fruits_yield.
  4. Chọn Tạo dự án.

Bạn cũng có thể tạo một dự án trên Dự án trang. Bạn có thể truy cập vào Dự án trang thông qua ngăn điều hướng. Bước tiếp theo là cung cấp hình ảnh làm đầu vào.

Nhập tập dữ liệu của bạn

Để tạo mô hình đo lường năng suất nông nghiệp của bạn, trước tiên bạn cần nhập một tập dữ liệu để đào tạo mô hình. Đối với bài đăng này, tập dữ liệu của chúng tôi đã được gắn nhãn bằng cách sử dụng Ground Truth.

  1. Trong Nhập hình ảnh, lựa chọn Nhập hình ảnh được gắn nhãn bởi SageMaker Ground Truth.
  2. Trong Vị trí tệp kê khai, nhập vị trí nhóm S3 của tệp kê khai của bạn (s3://{your-bucket-name}/fruits_image/annotated_data/fruits-labels/manifests/output/output.manifest).
  3. Chọn Tạo tập dữ liệu.

Bạn có thể thấy tập dữ liệu được gắn nhãn của mình.

Bây giờ bạn có tập dữ liệu đầu vào cho mô hình ML để bắt đầu đào tạo về chúng.

Đào tạo mô hình của bạn

Sau khi bạn gắn nhãn hình ảnh của mình, bạn đã sẵn sàng đào tạo mô hình của mình.

  1. Chọn Mô hình tàu hỏa.
  2. Trong Chọn dự án, chọn dự án của bạn fruits_yield.
  3. Chọn Mô hình xe lửa.

Chờ cho quá trình đào tạo hoàn thành. Bây giờ bạn có thể bắt đầu kiểm tra hiệu suất cho mô hình được đào tạo này.

Kiểm tra mô hình của bạn

Mô hình đo năng suất nông nghiệp của bạn hiện đã sẵn sàng để sử dụng và sẽ ở trong Running tiểu bang. Để kiểm tra mô hình, hãy hoàn thành các bước sau:

Bước 1: Khởi động mô hình

Trên trang chi tiết mô hình của bạn, trên Sử dụng mô hình tab, chọn Bắt đầu.

Rekognition Custom Labels cũng cung cấp các lệnh gọi API để bắt đầu, sử dụng và dừng mô hình của bạn.

Bước 2: Kiểm tra mô hình

Khi mô hình ở trong Running trạng thái, bạn có thể sử dụng tập lệnh thử nghiệm mẫu analyzeImage.py để đếm số lượng trái cây trong một hình ảnh.

  1. Tải xuống tập lệnh này từ Repo GitHub.
  2. Chỉnh sửa tệp này để thay thế thông số bucket với tên nhóm của bạn và model với ARN mô hình Amazon Rekognition của bạn.

Chúng tôi sử dụng các thông số photomin_confidence làm đầu vào cho tập lệnh Python này.

Bạn có thể chạy tập lệnh này cục bộ bằng cách sử dụng Giao diện dòng lệnh AWS (AWS CLI) hoặc sử dụng Đám mây AWS. Trong ví dụ của chúng tôi, chúng tôi đã chạy tập lệnh qua bảng điều khiển CloudShell. Lưu ý rằng CloudShell là dùng miễn phí.

Đảm bảo cài đặt các phụ thuộc bắt buộc bằng lệnh pip3 install boto3 PILLOW nếu chưa được cài đặt.

  1. Tải tệp lên analyzeImage.py tới CloudShell bằng cách sử dụng Hoạt động đơn.

Ảnh chụp màn hình sau đây cho thấy kết quả đầu ra, đã phát hiện ra hai quả trong hình ảnh đầu vào. Chúng tôi cung cấp 15.jpeg làm đối số ảnh và 85 là min_confidence giá trị.

Ví dụ sau đây cho thấy hình ảnh 15.jpeg với hai hộp giới hạn.

Bạn có thể chạy cùng một tập lệnh với các hình ảnh khác và thử nghiệm bằng cách thay đổi thêm điểm tin cậy.

Bước 3: Dừng mô hình

Khi bạn hoàn tất, hãy nhớ dừng mô hình để tránh phát sinh các khoản phí không cần thiết. Trên trang chi tiết mô hình của bạn, trên tab Sử dụng mô hình, hãy chọn Dừng.

Làm sạch

Để tránh phát sinh các khoản phí không cần thiết, hãy xóa các tài nguyên được sử dụng trong hướng dẫn này khi không sử dụng. Chúng tôi cần xóa dự án Amazon Rekognition và nhóm S3.

Xóa dự án Amazon Rekognition

Để xóa dự án Amazon Rekognition, hãy hoàn thành các bước sau:

  1. Trên bảng điều khiển Amazon Rekognition, chọn Sử dụng Nhãn tùy chỉnh.
  2. Chọn Bắt đầu.
  3. Trong ngăn dẫn hướng, chọn Dự án.
  4. trên Dự án , chọn dự án mà bạn muốn xóa.
    1. Chọn Xóa bỏ.
      Sản phẩm Xóa dự án hộp thoại xuất hiện.
  5. Nếu dự án không có mô hình liên quan:
    1. đăng ký hạng mục thi xóa để xóa dự án.
    2. Chọn Xóa bỏ để xóa dự án.
  6. Nếu dự án có các mô hình hoặc bộ dữ liệu được liên kết:
    1. đăng ký hạng mục thi xóa để xác nhận rằng bạn muốn xóa mô hình và bộ dữ liệu.
    2. Chọn một trong hai Xóa các mô hình được liên kết, Xóa tập dữ liệu được liên kết, hoặc là Xóa tập dữ liệu và mô hình được liên kết, tùy thuộc vào việc mô hình có bộ dữ liệu, mô hình hoặc cả hai.

    Quá trình xóa mô hình có thể mất một lúc để hoàn thành. Lưu ý rằng bảng điều khiển Amazon Rekognition không thể xóa các mô hình đang được đào tạo hoặc đang chạy. Hãy thử lại sau khi dừng bất kỳ mô hình đang chạy nào được liệt kê và đợi cho đến khi các mô hình được liệt kê là đào tạo hoàn tất. Nếu bạn đóng hộp thoại trong khi xóa mô hình, các mô hình vẫn bị xóa. Sau đó, bạn có thể xóa dự án bằng cách lặp lại quy trình này.

  7. đăng ký hạng mục thi xóa để xác nhận rằng bạn muốn xóa dự án.
  8. Chọn Xóa bỏ để xóa dự án.

Xóa nhóm S3 của bạn

Trước tiên, bạn cần làm trống thùng và sau đó xóa nó.

  1. trên Amazon S3 bảng điều khiển, chọn .
  2. Chọn nhóm mà bạn muốn làm trống, sau đó chọn Trống.
  3. Xác nhận rằng bạn muốn làm trống nhóm bằng cách nhập tên nhóm vào trường văn bản, sau đó chọn Trống.
  4. Chọn Xóa bỏ.
  5. Xác nhận rằng bạn muốn xóa nhóm bằng cách nhập tên nhóm vào trường văn bản, sau đó chọn Xóa nhóm.

Kết luận

Trong bài đăng này, chúng tôi đã hướng dẫn bạn cách tạo mô hình phát hiện đối tượng với Nhãn tùy chỉnh Rekognition. Tính năng này giúp dễ dàng đào tạo một mô hình tùy chỉnh có thể phát hiện một lớp đối tượng mà không cần chỉ định các đối tượng khác hoặc làm mất độ chính xác trong kết quả của nó.

Để biết thêm thông tin về cách sử dụng nhãn tùy chỉnh, hãy xem Nhãn tùy chỉnh Rekognition của Amazon là gì?


Giới thiệu về tác giả

Dhiraj Thakur là Kiến trúc sư Giải pháp với Dịch vụ Web của Amazon. Anh làm việc với các khách hàng và đối tác của AWS để cung cấp hướng dẫn về chiến lược, di chuyển và áp dụng đám mây dành cho doanh nghiệp. Anh ấy đam mê công nghệ và thích xây dựng và thử nghiệm trong không gian phân tích và AI / ML.

Goel Sameer là một Kiến trúc sư Giải pháp Sr. ở Hà Lan, người thúc đẩy thành công của khách hàng bằng cách xây dựng các nguyên mẫu dựa trên các sáng kiến ​​tiên tiến. Trước khi gia nhập AWS, Sameer đã tốt nghiệp thạc sĩ tại Boston, chuyên ngành khoa học dữ liệu. Anh ấy thích xây dựng và thử nghiệm các dự án AI / ML trên Raspberry Pi. Bạn có thể tìm thấy anh ấy trên LinkedIn.

tại chỗ_img

Tin tức mới nhất

tại chỗ_img

Trò chuyện trực tiếp với chúng tôi (chat)

Chào bạn! Làm thế nào để tôi giúp bạn?