Phần 15. Kiểm tra chất lượng trái cây từ thiết bị IoT

0
722

Bài viết trước đã trình bày về bộ phân loại hình ảnh và cách huấn luyện chúng để phân biệt trái cây đảm bảo và không đảm bảo chất lượng. Để sử dụng bộ phân loại hình ảnh này trong ứng dụng IoT, người dùng cần chụp ảnh và gửi lên đám mây để được phân loại.

Trong bài viết này sẽ giới thiệu về cảm biến camera, cách sử dụng chúng để chụp ảnh và cách giao tiếp với bộ phân loại hình ảnh từ thiết bị IoT.

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

1. Cảm biến camera

2. Cách chụp ảnh bằng thiết bị IoT

3. Cách publish bộ phân loại hình ảnh

4. Cách phân loại hình ảnh từ thiết bị IoT

5. Cách cải tiến mô hình

1. Cảm biến camera

Cảm biến camera là những camera có thể kết nối với thiết bị IoT. Cảm biến này có thể chụp ảnh tĩnh hoặc quay video trực tuyến, đầu ra thu được là dữ liệu hình ảnh thô hoặc nén dữ liệu thành file ảnh định dạng JPEG hoặc PNG. Thông thường, các máy ảnh hoạt động với các thiết bị IoT có độ phân giải nhỏ hơn và thấp hơn nhiều so với camera mọi người hay dùng. Tuy nhiên người dùng cũng có thể sử dụng camera có độ phân giải cao ngang với những điện thoại đời cao nhất và các loại ống kính có thể hoán đổi cho nhau, nhiều cách set up camera, máy ảnh nhiệt hồng ngoại hoặc máy ảnh UV.

Hầu hết các cảm biến camera sử dụng cảm biến hình ảnh trong đó mỗi pixel là một diode quang. Một thấu kính hội tụ hình ảnh vào cảm biến hình ảnh, hàng nghìn hoặc hàng triệu điốt quang sẽ phát hiện ánh sáng và ghi lại dưới dạng dữ liệu pixel.

Thấu kính đảo ngược hình ảnh, sau đó cảm biến camera sẽ xoay ngược hình ảnh về đúng chiều ban đầu. Cơ chế hoạt động này tương tự như mắt người – những gì mọi người nhìn thấy sẽ được lộn ngược ở đáy mắt và bộ não sẽ điều chỉnh hình ảnh đó về đúng chiều.

Cảm biến hình ảnh được gọi là Cảm biến Active-Pixel (APS) và loại APS phổ biến nhất là cảm biến bán dẫn oxit kim loại bổ sung hoặc CMOS. Cảm biến CMOS được sử dụng khá phổ biến cho cảm biến máy ảnh.

Cảm biến camera là cảm biến kỹ thuật số, nó gửi dữ liệu hình ảnh dưới dạng dữ liệu số với sự trợ giúp của thư viện cung cấp thông tin liên lạc. Camera kết nối bằng các giao thức như  SPI cho phép gửi lượng lớn dữ liệu và hình ảnh lớn hơn đáng kể so với số lượng đơn lẻ từ một cảm biến như cảm biến nhiệt độ.

2. Cách chụp ảnh bằng thiết bị IoT

Có thể sử dụng thiết bị IoT để chụp ảnh và phân loại hình ảnh.

* Cách chụp ảnh bằng thiết bị IoT

Làm theo hướng dẫn tại các link bên dưới để chụp ảnh bằng thiết bị IoT:

Arduino – Wio Terminal

Máy tính một bo mạch – Raspberry Pi

 Máy tính một bo mạch – Virtual device

3. Cách Publish bộ phân loại hình ảnh

Bài viết trước đã hướng dẫn cách huấn luyện bộ phân loại hình ảnh. Bước tiếp theo là publish mô hình này trước khi sử dụng nó từ thiết bị IoT.

Bước lặp mô hình

Như bài viết trước có thể thấy, khi huấn luyện mô hình, tab Performance hiển thị các bước lặp ở bên cạnh. Nếu huấn luyện mô hình lần đầu tiên, sẽ thấy  Iteration 1 trong quá trình huấn luyện, khi cải tiến mô hình bằng cách sử dụng các hình ảnh dự đoán, sẽ thấy Iteration 2 trong quá trình huấn luyện.

Mỗi lần huấn luyện mô hình sẽ có bước lặp mới. Đây là cách để theo dõi các phiên bản khác nhau của mô hình được huấn luyện trên các tập dữ liệu khác nhau. Khi thực hiện Quick test, có một menu để chọn bước lặp, vì vậy có thể so sánh kết quả qua nhiều lần lặp.

Khi người dùng hài lòng với một bước lặp thì có thể publish nó để sử dụng từ các ứng dụng bên ngoài. Bằng cách này, các thiết bị có thể sử dụng một phiên bản đã publish, sau đó làm việc trên phiên bản mới qua nhiều bước lặp và publish phiên bản đó khi đã hài lòng.

* Cách publish một bước lặp

Các bước lặp được publish từ cổng Custom Vision.

1. Khởi động cổng Custom Vision tại CustomVision.ai và đăng nhập, sau đó mở project fruit-quality-detector.

2. Chọn tab Performance từ ​​các tùy chọn ở trên cùng

3. Chọn bước lặp gần nhất từ ​​danh sách Iteration ở bên cạnh

4. Chọn nút Publish để lặp lại

5. Trong hộp thoại Publish Model, đặt  Prediction resource thành fruit-quality-detector-prediction đã tạo trong bài trước. Để tên là Iteration 2 và chọn nút Publish.

6. Sau khi publish, chọn nút Prediction URL để hiển thị chi tiết của API dự đoán giúp gọi mô hình từ thiết bị IoT. Phần dưới có nhãn If you have an image file (đây là nhãn mà người dùng mong muốn). Copy địa chỉ URL tương tự như bên dưới:

Trong đó <location> là vị trí đã sử dụng khi tạo tài nguyên custom vision và <id> là một ID dài bao gồm các chữ cái và con số.

Cũng có một bản sao của giá trị Prediction-Key. Đây là khóa an toàn để truy cập mô hình. Khi biết được khóa này thì ứng dụng mới được phép sử dụng mô hình, mọi ứng dụng khác đều bị từ chối.

Khi một bước lặp mới được publish, nó sẽ có một tên khác.

4. Cách phân loại hình ảnh từ thiết bị IoT

Người dùng có thể sử dụng các chi tiết kết nối này để truy cập bộ phân loại hình ảnh từ thiết bị IoT.

* Cách phân loại hình ảnh từ thiết bị IoT

Làm theo các hướng dẫn dưới đây để phân loại hình ảnh bằng thiết bị IoT:

Arduino – Wio Terminal

Máy tính một bo mạch – Raspberry Pi/Virtual IoT device

5. Cách cải tiến mô hình

Có thể thấy rằng kết quả nhận được khi sử dụng camera kết nối với thiết bị IoT không phù hợp với những gì người dùng mong đợi. Các dự đoán sử dụng hình ảnh được tải lên từ máy tính không phải lúc nào cũng chính xác do mô hình được huấn luyện dựa trên dữ liệu khác với hình ảnh đang được sử dụng để dự đoán.

Để có được kết quả tốt nhất cho bộ phân loại hình ảnh, cần huấn luyện mô hình bằng các hình ảnh giống với hình ảnh được sử dụng để dự đoán nhất có thể. Ví dụ: nếu sử dụng camera của điện thoại để chụp ảnh phục vụ huấn luyện thì chất lượng, độ sắc nét và màu sắc của hình ảnh sẽ khác với máy ảnh được kết nối với thiết bị IoT.

Hai hình ảnh trên được chụp từ cùng một quả chuối với cùng vị trí, trong đó ảnh quả chuối bên trái được chụp bằng camera Raspberry Pi, ảnh bên phải được chụp bằng iPhone. Chất lượng của hai hình ảnh rất khác biệt: hình ảnh iPhone sắc nét hơn, màu sắc tươi sáng hơn và độ tương phản cao hơn.

Để cải tiến mô hình, có thể huấn luyện lại mô hình bằng cách sử dụng các hình ảnh được chụp từ thiết bị IoT.

* Cách cải tiến mô hình

1. Phân loại nhiều hình ảnh của cả trái cây chín và chưa chín bằng thiết bị IoT

2. Trong cổng Custom Vision, huấn luyện lại mô hình bằng cách sử dụng các hình ảnh trên tab Predictions.

Nếu hình ảnh thu được khác nhiều so với hình ảnh gốc dùng để đào tạo thì xóa tất cả hình ảnh gốc bằng cách chọn trong tab Training Images và chọn nút Delete. Chọn một ảnh bằng cách di chuyển con trỏ qua nó, sau đó chọn dấu tích để chọn hoặc bỏ chọn hình ảnh.

Huấn luyện một phiên bản mới của mô hình và publish mô hình đó bằng cách áp dụng các bước trên.

Cập nhật URL điểm cuối trong code và chạy lại ứng dụng.

Lặp lại các bước này cho đến khi hài lòng với kết quả dự đoán.

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