Phần 18. Đào tạo bộ phát hiện hàng hóa trong kho

0
599

Video dưới đây giới thiệu tổng quan về dịch vụ Phát hiện Đối tượng của Azure Custom Vision – nội dung sẽ được đề cập trong bài viết này.

Trong Project trước đã sử dụng AI để đào tạo bộ phân loại hình ảnh- mô hình cho biết hình ảnh có chứa đối tượng nào đó hay không, như trái cây chín hay chưa chín. Một loại mô hình AI khác được hoạt động sử dụng hình ảnh là mô hình phát hiện đối tượng. Những mô hình này không phân loại hình ảnh theo các thẻ, mà được đào tạo để nhận ra và tìm thấy đối tượng trong hình ảnh. Nó không chỉ phát hiện thấy đối tượng mà còn xác định vị trí của đối tượng giúp đếm được đối tượng trong hình ảnh đó.

Bài viết này sẽ trình bày về mô hình phát hiện đối tượng, cả cách sử dụng chúng trong bán lẻ đồng thời phân tích cách đào tạo một bộ phát hiện đối tượng trên đám mây.

Các nội dung chính trong bài viết gồm:

1. Khái niệm phát hiện đối tượng.

2. Cách sử dụng tính năng phát hiện đối tượng trong bán lẻ.

3. Cách đào tạo bộ phát hiện đối tượng.

4. Cách kiểm tra bộ phát hiện đối tượng.

5. Cách đào tạo lại bộ phát hiện đối tượng.

1. Khái niệm phát hiện đối tượng

Phát hiện đối tượng liên quan đến việc phát hiện các đối tượng trong ảnh bằng AI. Không giống như bộ phân loại hình ảnh trong project trước, phát hiện đối tượng nhằm tìm một hoặc nhiều đối tượng trong một hình ảnh.

Phân biệt phát hiện đối tượng với phân loại hình ảnh

Phân loại hình ảnh là phân loại toàn bộ một hình ảnh – là xác suất trùng khớp giữa toàn bộ ảnh với mỗi thẻ tên. Đầu ra của phân loại hình ảnh là toàn bộ xác suất trùng khớp của ảnh với các thẻ đã được huấn luyện từ trước.

Trong ví dụ trên, hai hình ảnh được phân loại bằng cách sử dụng một mô hình đã đào tạo để phân loại hộp hạt điều hoặc lon tương cà. Hình ảnh đầu tiên là một hộp hạt điều, bộ phân loại hình ảnh cho hai kết quả:

ThẻXác suất
Hạt điều98,4%
Tương cà1,6%

Hình ảnh thứ hai là một lon tương cà, và kết quả là:

ThẻXác suất
Tương cà99,3%
Hạt điều0,7%

Có thể sử dụng giá trị xác suất theo mức ngưỡng để dự đoán đối tượng trong hình ảnh. Tuy nhiên, nếu một hình ảnh chứa nhiều lon tương cà, hoặc chứa cả hạt điều và tương cà thì kết quả sẽ không như mong đợi. Lúc này cần dùng đến phát hiện đối tượng.

Phát hiện đối tượng liên quan đến việc đào tạo một mô hình để nhận ra đối tượng. Thay vì cung cấp những hình ảnh chứa đối tượng và cho biết mỗi hình ảnh là thẻ nào, người dùng đánh dấu phần của hình ảnh có chứa đối tượng cụ thể và gắn thẻ. Bạn có thể gắn thẻ một đối tượng trong một hoặc nhiều hình ảnh. Bằng cách này, mô hình sẽ tìm hiểu đối tượng trông như thế nào, chứ không chỉ hình ảnh chứa đối tượng trông như thế nào.

Sau đó, khi bạn sử dụng mô hình để dự đoán hình ảnh, thay vì lấy lại danh sách các thẻ và tỷ lệ phần trăm, người dùng sẽ nhận lại danh sách các đối tượng được phát hiện với hộp giới hạn của chúng và xác suất đối tượng khớp với thẻ được chỉ định.

Các hộp có giới hạn là các hộp bao quanh một đối tượng.

Hình trên có cả một hộp hạt điều và ba lon tương cà. Bộ phát hiện đối tượng đã phát hiện ra hạt điều, trả về hộp bao chứa hạt điều với tỷ lệ phần trăm là 97,6% đồng thời đã phát hiện ra ba lon tương cà và cung cấp ba hộp bao riêng biệt cho mỗi lon với xác suất cho từng hộp bao chứa một lon tương cà chua.

Cách hoạt động của bộ phát hiện đối tượng

Phát hiện đối tượng sử dụng các mô hình ML phức tạp. Các mô hình này hoạt động bằng cách chia hình ảnh thành nhiều ô, sau đó kiểm tra xem tâm của hộp giới hạn có phải là tâm của hình ảnh khớp với một trong những hình ảnh được sử dụng để huấn luyện mô hình hay không. Điều này tương tự chạy một bộ phân loại hình ảnh trên các phần khác nhau của hình ảnh để tìm kiếm các kết quả phù hợp.

Có một số mô hình khác nhau có thể phát hiện đối tượng. Một mô hình đặc biệt nổi tiếng là YOLO (Chỉ nhìn một lần), nó hoạt động cực kỳ nhanh và có thể phát hiện 20 loại vật thể khác nhau, như người, chó, chai lọ và ô tô. Tìm hiểu thêm về mô hình YOLO tại pjreddie.com/darknet/yolo/

Đào tạo lại các mô hình phát hiện đối tượng bằng cách sử dụng học chuyển giao (transfer learning) để phát hiện các đối tượng tùy chỉnh.

2. Cách sử dụng tính năng phát hiện đối tượng trong bán lẻ

Phát hiện đối tượng có nhiều công dụng trong bán lẻ như:

Kiểm tra và đếm kho: giúp nhận biết khi hàng trên kệ gần hết. Nếu lượng hàng còn quá ít, mô hình sẽ gửi thông báo đến nhân viên hoặc robot để xếp thêm hàng lên kệ.

Phát hiện khẩu trang: trong các cửa hàng có chính sách đeo khẩu trang trong các sự kiện sức khỏe cộng đồng, tính năng phát hiện đối tượng có thể nhận ra những người đeo và không đeo khẩu trang.

Thanh toán tự động: giúp phát hiện các mặt hàng được lấy ra khỏi kệ trong các cửa hàng tự động và lập hóa đơn cho khách hàng một cách thích hợp.

Phát hiện nguy cơ: giúp nhận biết các vật dụng bị vỡ trên sàn hoặc chất lỏng bị đổ và cảnh báo cho đội vệ sinh.

3. Cách đào tạo bộ phát hiện đối tượng

Có thể đào tạo một bộ phát hiện đối tượng sử dụng Custom Vision, theo cách tương tự như cách đào tạo một bộ phân loại hình ảnh.

* Cách tạo một bộ phát hiện đối tượng

1. Tạo Resource Group cho project này với tên stock- detector

2. Tạo tài nguyên đào tạo Custom Vision miễn phí và tài nguyên dự đoán Custom Vision miễn phí trong nhóm tài nguyên stock- detector với tên là stock-detector-training và stock-detector-prediction.

Lưu ý: Do chỉ có thể có một tài nguyên dự đoán và đào tạo miễn phí, vì vậy cần dọn dẹp project của các bài viết trước.

3. Khởi chạy cổng Custom Vision tại CustomVision.ai và đăng nhập bằng tài khoản Microsoft đã sử dụng cho tài khoản Azure.

4. Thực hiện theo phần tạo project mới của quá trình xây dựng bộ phát hiện đối tượng khởi động nhanh trên tài liệu của Microsoft để tạo project Custom Vision mới. Những tài liệu này luôn được cập nhật mới nhất mặc dù giao diện người dùng thay đổi.

Gọi project stock- detector.

Khi tạo project, đảm bảo dùng tài nguyên stock-detector-training đã tạo trước đó. Sử dụng loại dự án Object Detection và miền Products on Shelves.

Miền sản phẩm trên kệ với mục tiêu cụ thể là phát hiện còn hàng trên kệ. Đọc thêm về các miền khác nhau trong tài liệu Select a domian documentation on Microsoft Docs

* Cách đào tạo bộ phát hiện đối tượng

Để đào tạo mô hình, cần một tập hợp các hình ảnh chứa các đối tượng cần phát hiện.

1. Thu thập hình ảnh chứa đối tượng cần phát hiện. Càng nhiều hình ảnh càng tốt trong đó cần ít nhất 15 hình ảnh chứa mỗi đối tượng để phát hiện từ nhiều góc độ khác nhau và trong các điều kiện ánh sáng khác nhau. Bộ phát hiện đối tượng này sử dụng miền Products on shelves, vì vậy cố gắng thiết lập các đối tượng giống điều kiện thực tế như trên giá trong cửa hàng. Bên cạnh đó, chuẩn bị một vài hình ảnh để kiểm tra mô hình. Nếu đang phát hiện nhiều đối tượng thì nên có một số hình ảnh thử nghiệm chứa tất cả các đối tượng. Hình ảnh này được tính vào 15 ảnh tối thiểu cho tất cả các đối tượng.

Hình ảnh sử dụng có định dạng png hoặc jpegs, nhỏ hơn 6MB. Với ảnh chụp bằng iPhone thì định dạng ảnh có thể là HEIC với độ phân giải cao, do đó trước khi sử dụng, cần chuyển đổi ảnh nên ảnh sẽ bị thu nhỏ. Số lượng ảnh của quả chín và chưa chín nên tương đương nhau. Cố gắng chụp ảnh các đối tượng gần với điều kiện thực tế, ở đây mô hình được thiết kế cho các sản phẩm trên kệ.

Thực hiện theo phần Upload và gắn thẻ hình ảnh của quá trình xây dựng bộ phát hiện đối tượng khởi động nhanh trên tài liệu của Microsoft để upload hình ảnh đào tạo. Tạo các thẻ liên quan tùy thuộc vào loại đối tượng muốn phát hiện.

Khi vẽ các hộp giới hạn cho các đối tượng, giữ hộp đẹp và sát xung quanh đối tượng. Sử dụng công cụ để phát hiện các hộp giới hạn giúp giảm thời gian phác thảo các hình ảnh.

Nếu mỗi đối tượng có hơn 15 hình ảnh thì lấy 15 hình ảnh để đào tạo, sau đó dùng tính năng Suggested tags, đó là sử dụng mô hình được đào tạo để phát hiện các đối tượng trong hình ảnh chưa gắn thẻ. Sau đó, có thể xác nhận các đối tượng đã phát hiện hoặc từ chối và vẽ lại các hộp giới hạn. Tính năng này giúp thể tiết kiệm rất nhiều thời gian.

Thực hiện theo phần Huấn luyện bộ phát hiện trong quá trình xây dựng bộ phát hiện đối tượng khởi động nhanh trên tài liệu của Microsoft để đào tạo trình phát hiện đối tượng trên các hình ảnh được gắn thẻ.

Chọn loại hình đào tạo Quick Training.

Cần vài phút để hoàn tất quá trình đào tạo bộ phát hiện đối tượng.

4. Cách kiểm tra bộ phát hiện đối tượng

Sau khi đào tạo bộ phát hiện đối tượng, có thể kiểm tra bằng cách cung cấp những hình ảnh mới để phát hiện đối tượng trong đó.

* Cách kiểm tra bộ phát hiện đối tượng

1. Chọn nút Quick test để tải lên hình ảnh kiểm tra và xác minh các đối tượng được phát hiện. Sử dụng hình ảnh thử nghiệm đã tạo trước đó, không dùng hình ảnh đã sử dụng để đào tạo.

Thử lần lượt tất cả hình ảnh thử nghiệm mà bạn có quyền truy cập và quan sát xác suất.

5. Cách đào tạo lại bộ phát hiện đối tượng

Bộ phát hiện đối tượng đã đào tạo không phải luôn cho kết quả như mong đợi. Tuy nhiên, cải thiện bằng cách đào tạo lại bằng những hình ảnh mà bộ phát hiện đã phát hiện sai.

Mỗi lần đưa ra dự đoán bằng tùy chọn kiểm tra nhanh, bộ phát hiện sẽ tự động lưu lại hình ảnh và kết quả, do đó có thể sử dụng những hình ảnh này để đào tạo lại mô hình.

1. Sử dụng tab Predictions để tìm các hình ảnh đã sử dụng để thử nghiệm

2. Xác nhận những phát hiện chính xác, xóa những phát hiện không chính xác và thêm bất kỳ đối tượng nào bị thiếu.

3. Đào tạo lại và kiểm tra lại mô hình.

Biên dịch: Bắc Đặng

Để cập nhật tin tức công nghệ mới nhất và các sản phẩm của công ty AIoT JSC, vui lòng truy cập link: http://aiots.vn hoặc linhkienaiot.com

0 0 Phiếu bầu
Article Rating
Subscribe
Notify of
guest
0 Comments
Phản hồi nội tuyến
Xem tất cả các bình luận