Bối cảnh và vấn đề nghiên cứu

Nông nghiệp và cung ứng nông sản giữ vai trò then chốt trong nền kinh tế Việt Nam, bảo đảm nguồn cung lương thực và thực phẩm cho thị trường nội địa. Cùng với sự phát triển của hệ thống bán lẻ hiện đại, mô hình các cửa hàng chuyên doanh trái cây xuất hiện ngày càng nhiều với hai hình thức phục vụ phổ biến: đóng hộp sẵn có niêm yết trọng lượng và trưng bày tại kệ để khách hàng tự chọn rồi cân ký tính tiền. Nhằm tối ưu hóa quy trình thanh toán, giảm tải chi phí nhân công và gia tăng tính tiện lợi cho người tiêu dùng, nhu cầu ứng dụng trí tuệ nhân tạo (AI), thị giác máy tính và học sâu vào các trạm thanh toán tự động (Self-checkout) trở nên cấp thiết. Đồ án tốt nghiệp ngành Hệ thống Nhúng và IoT tại Trường Đại học Sư phạm Kỹ thuật TP. Hồ Chí Minh thực hiện đề tài "Xây dựng mô hình phân loại trái cây để ứng dụng trong hệ thống tính tiền tự động" do sinh viên Đỗ Mạnh Thắng thực hiện dưới sự hướng dẫn của PGS.TS Trương Ngọc Sơn.

Mục tiêu và nhiệm vụ nghiên cứu của đề tài được xác định cụ thể qua các nội dung sau:

  1. Nghiên cứu thuật toán mạng nơ-ron tích chập CNN MobileNetV2 để xây dựng mô hình phân loại các loại trái cây có trong dữ liệu của cửa hàng.
  2. Nghiên cứu, thiết kế và chế tạo khối cảm biến (bàn cân trọng lượng, camera ghi hình) kết nối với máy tính xử lý để thi công hệ thống thực tế.
  3. Xây dựng mô hình tính tiền tự động hoàn chỉnh dành cho cửa hàng trái cây với các chức năng: tự động nhận dạng, phân loại, kết hợp đơn giá và khối lượng để tính tiền và hiển thị hóa đơn thanh toán trên giao diện web.
  4. Xây dựng phân hệ phần mềm quản lý cho phép chủ cửa hàng cập nhật đơn giá, quản lý dữ liệu hình ảnh và tự động huấn luyện lại mô hình khi nhập thêm loại trái cây mới.

Đối tượng và phạm vi nghiên cứu:

  • Đối tượng nghiên cứu: Thuật toán phân loại ảnh mạng tích chập CNN MobileNetV2, vi điều khiển ESP8266, cảm biến cân nặng Loadcell cùng module giải mã HX711, và quy trình xây dựng hệ thống tính tiền tự động.
  • Phạm vi và giới hạn nghiên cứu: Hệ thống tập trung phân loại tối đa 20 loại trái cây thương phẩm trong điều kiện môi trường đủ ánh sáng, góc chụp camera trực diện từ trên xuống bàn cân; hệ thống chưa hỗ trợ phân loại các biến thể hoặc giống khác nhau của cùng một loại trái cây.

Cơ sở lý thuyết và phương pháp

Đề tài kết hợp giữa lý thuyết thị giác máy tính dựa trên học sâu và kỹ thuật thiết kế hệ thống nhúng thu thập dữ liệu thời gian thực.

Khung lý thuyết và mô hình mạng nơ-ron

Đề tài dựa trên nền tảng mạng nơ-ron tích chập (Convolutional Neural Network - CNN) với các lớp cơ bản:

  • Lớp tích chập 2D (Conv2D): Thực hiện phép nhân chập giữa ma trận điểm ảnh đầu vào $f$ và ma trận bộ lọc (kernel) $g$ theo công thức tương quan chéo: $$(f * g)[x, y] = \sum_{i, j} f[i, j] g[x - i, y - j]$$ Các tham số điều khiển gồm kích thước kernel (Kernel size), bước nhảy (Stride), phần bù biên (Padding) và hệ số giãn nở (Dilation).
  • Hàm kích hoạt phi tuyến: Sử dụng ReLU và ReLU6 để tăng tính phi tuyến và mô phỏng phản ứng truyền xung thần kinh.
  • Lớp rút gọn (Pooling layer): Giảm kích thước không gian bản đồ đặc trưng (feature map), giảm số lượng tham số tính toán.
  • Lớp liên kết đầy đủ (Fully Connected Layer - FC): Tổng hợp các đặc trưng bậc cao để thực hiện phân lớp đầu ra thông qua hàm kích hoạt Softmax.

Để giải quyết bài toán chạy mô hình trên thiết bị có tài nguyên phần cứng giới hạn nhưng cần thời gian đáp ứng nhanh và khả năng huấn luyện lại linh hoạt, tác giả sử dụng kiến trúc MobileNetV2. Kiến trúc này cải tiến dựa trên hai cơ chế chính:

  1. Phép tích chập phân tách theo chiều sâu (Depthwise Separable Convolution): Tách phép tích chập tiêu chuẩn thành hai bước:

    • Depthwise Convolution: Thực hiện tích chập không gian $D_k \times D_k$ riêng biệt trên từng kênh đầu vào ($M$ kênh). Chi phí tính toán là $D_k \times D_k \times M \times D_f \times D_f$.
    • Pointwise Convolution: Sử dụng tích chập kích thước $1 \times 1$ để kết hợp tuyến tính các kênh đặc trưng và tạo ra $N$ kênh đầu ra. Chi phí tính toán là $M \times N \times D_f \times D_f$.

    Tổng chi phí tính toán của Depthwise Separable Convolution so với tích chập tiêu chuẩn đạt tỷ lệ: $$\frac{D_k \times D_k \times M \times D_f \times D_f + M \times N \times D_f \times D_f}{D_k \times D_k \times M \times N \times D_f \times D_f} = \frac{1}{N} + \frac{1}{D_k^2}$$ Với kernel kích thước $3 \times 3$, khối lượng tính toán giảm từ 8 đến 9 lần so với tích chập thông thường trong khi độ chính xác suy giảm không đáng kể.

  2. Khối Residual đảo ngược và Nút cổ chai tuyến tính (Inverted Residuals & Linear Bottlenecks):

    • Không gian kênh được mở rộng ở các lớp trung gian bằng hệ số mở rộng $t$ ($t=6$) trước khi thực hiện Depthwise Convolution.
    • Kết nối tắt (Skip connection) được nối trực tiếp giữa các nút cổ chai (Bottlenecks) có số chiều thấp.
    • Lớp tích chập $1 \times 1$ cuối cùng trong mỗi khối không sử dụng hàm kích hoạt phi tuyến (Linear activation) nhằm tránh phá hủy các thông tin đặc trưng hữu ích khi nén chiều.

Nền tảng phần cứng và cảm biến

  • Vi điều khiển ESP8266 (Espressif Systems): Trang bị vi xử lý Tensilica Xtensa LX106 32-bit xung nhịp 80 MHz, bộ nhớ Flash 32 MB, SRAM 80 KB, tích hợp Wi-Fi chuẩn 802.11 b/g/n, 17 chân GPIO và hỗ trợ các chuẩn giao tiếp UART, SPI, I2C.
  • Cảm biến lực Loadcell 20kg kết hợp Module ADC HX711: Cảm biến lực làm từ hợp kim nhôm hoạt động theo nguyên lý cầu điện trở. Module chuyển đổi tương tự - số (ADC) 24-bit HX711 nhận tín hiệu điện áp từ các chân $E+$, $E-$ của Loadcell và truyền dữ liệu số về vi điều khiển qua hai chân $DT$ (Data) và $SCK$ (Clock), dải điện áp làm việc 3–5 VDC trong dải nhiệt độ từ -20°C đến 85°C.

Phương pháp nghiên cứu và tập dữ liệu

Tác giả kết hợp phương pháp nghiên cứu lý thuyết, thực nghiệm mô hình hóa trên máy tính và chế tạo phần cứng. Framework sử dụng là TensorFlow 2 với phiên bản MobileNetV2 $v2_1$. Tập dữ liệu thử nghiệm ban đầu gồm 2.000 ảnh trích xuất từ bộ dữ liệu "Fruits and Vegetables Image Recognition Dataset", kết hợp với tập dữ liệu chụp ảnh thực tế các loại trái cây đặt trực tiếp trên bàn cân tại cửa hàng.


Thiết kế và triển khai

Hệ thống được thiết kế theo cấu trúc module hóa phân tán, kết nối phần cứng cơ sở với các ứng dụng máy tính và dịch vụ đám mây.

Thành phần khối Thiết bị / Công nghệ sử dụng Chức năng kỹ thuật chính
Khối cảm biến Loadcell 20kg, Module HX711, Vi điều khiển ESP8266, Webcam, Đèn LED Thu thập trọng lượng vật lý, ghi nhận hình ảnh trực tiếp, truyền dữ liệu về bộ xử lý qua giao tiếp Serial.
Khối máy tính xử lý CPU/GPU PC, Framework TensorFlow 2, Flask API (Python) Tiền xử lý dữ liệu ảnh, thực thi mô hình suy luận MobileNetV2, tính toán tiền hàng dựa trên đơn giá và khối lượng.
Khối cơ sở dữ liệu Firebase Database & API Lưu trữ bảng đơn giá trái cây, hỗ trợ đồng bộ dữ liệu thời gian thực và quản lý truy xuất phân quyền.
Khối giao diện người dùng React.js Web Application Cung cấp giao diện thanh toán tự động cho khách hàng và phân hệ quản lý hệ thống cho nhân viên.

Thiết kế phần cứng và kết nối

Phần cứng được bố trí thành một trạm cân - quét đồng bộ:

  • Cảm biến Loadcell gắn cố định dưới khung bàn cân nhôm, 4 dây tín hiệu kết nối vào module HX711 ($E+, E-, A+, A-$).
  • Module HX711 cấp nguồn $VCC$ 5V, chân $GND$, chân $DT$ nối chân GPIO và $SCK$ nối chân Clock của ESP8266.
  • ESP8266 truyền dữ liệu đo cân nặng về máy tính xử lý qua cáp giao tiếp Serial (UART).
  • Webcam gắn cố định phía trên bàn cân hướng góc chụp thẳng đứng, kết hợp dàn đèn LED trợ sáng để bảo đảm độ rọi ổn định khi chụp ảnh nhận diện.

Thiết kế phần mềm và luồng xử lý dữ liệu

Phần mềm hệ thống chia thành hai phân hệ độc lập:

  1. Phần mềm tính tiền (Dành cho khách hàng):
    • Khách hàng đặt trái cây lên bàn cân và kích hoạt thao tác trên giao diện web React.js.
    • Trình duyệt gửi yêu cầu đến Flask API; khối xử lý kích hoạt ESP8266 đọc khối lượng từ Loadcell và camera ghi lại khung hình hiện tại.
    • Hình ảnh được đưa vào mô hình học sâu MobileNetV2 để nhận dạng tên loại trái cây.
    • Hệ thống truy vấn đơn giá tương ứng từ Firebase API, thực hiện phép nhân giữa khối lượng và đơn giá, sau đó trả về tên sản phẩm, trọng lượng, thành tiền và in hóa đơn thanh toán lên màn hình.
  2. Phần mềm quản lý (Dành cho quản trị viên):
    • Cung cấp giao diện trực quan cho phép thêm, xóa, sửa đơn giá sản phẩm trên Firebase.
    • Tích hợp công cụ thu thập mẫu dữ liệu mới: điều khiển camera chụp tự động nhiều góc độ của loại trái cây mới được bổ sung vào cửa hàng.
    • Kích hoạt quy trình huấn luyện lại (Retrain) mô hình MobileNetV2 trực tiếp từ giao diện quản lý, sau đó tự động lưu và cập nhật trọng số mới (Deploy) cho phân hệ tính tiền mà không cần can thiệp thủ công vào mã nguồn hệ thống.

Thiết kế mô hình phân loại ảnh

  • Tiền xử lý dữ liệu: Ảnh đầu vào từ webcam được giải mã thành tensor 3 kênh màu (R, G, B), chuẩn hóa dải giá trị điểm ảnh từ $[0, 255]$ về dạng số thực $[0, 1]$, sau đó thay đổi kích thước (resize) về chuẩn $(224 \times 224 \times 3)$.
  • Kiến trúc mạng: Sử dụng mạng gốc MobileNetV2 làm bộ trích xuất đặc trưng (Feature Extractor), đầu ra tạo thành vector đặc trưng kích thước 1024 chiều ($num_features = 1024$). Phía sau mạng gốc, tác giả bổ sung lớp gộp trung bình toàn cục (Global Average Pooling), một lớp Batch Normalization để ổn định phân phối dữ liệu, và lớp Dense cuối cùng sử dụng hàm kích hoạt Softmax để phân loại các lớp trái cây. Toàn bộ mô hình có khoảng 6,2 triệu tham số.

Nội dung chính theo từng chương

Chương 1. Giới thiệu

Chương này tổng quan về thực trạng cung ứng và tiêu thụ nông sản tại Việt Nam, sự hình thành các chuỗi cửa hàng trái cây và nhu cầu ứng dụng công nghệ tự động hóa. Tác giả nêu rõ mục tiêu nghiên cứu là xây dựng mô hình phân loại trái cây kết hợp tính tiền tự động dựa trên mạng CNN MobileNetV2, xác định phạm vi 20 loại trái cây và trình bày cấu trúc 5 chương của cuốn đồ án.

Chương 2. Cơ sở lý thuyết

Chương 2 trình bày chi tiết cơ sở toán học và cấu trúc của mạng nơ-ron tích chập (CNN), so sánh sự khác biệt giữa tích chập tiêu chuẩn và Depthwise Separable Convolution. Tác giả phân tích các đặc tính kỹ thuật của kiến trúc MobileNetV2 như Linear Bottlenecks, Inverted Residuals và các siêu tham số $\alpha$, $\rho$. Đồng thời, chương này cung cấp thông số phần cứng của vi điều khiển ESP8266 (vi xử lý 32-bit Tensilica Xtensa LX106, chuẩn Wi-Fi, tập lệnh kết nối) và nguyên lý đo lường của cảm biến Loadcell kết hợp mạch khuếch đại chuyển đổi ADC HX711.

Chương 3. Thiết kế hệ thống tự động tính tiền và phân loại trái cây

Chương 3 mô tả toàn bộ quy trình thiết kế phần cứng và phần mềm của đồ án. Phần cứng được phân chia thành 4 khối chức năng (cảm biến, xử lý, server, nguồn) kèm sơ đồ nguyên lý nối dây chi tiết giữa ESP8266, HX711, Loadcell và Webcam. Phần mềm gồm kiến trúc 2 phân hệ React.js kết nối Flask API và Firebase. Chương này cũng trình bày chi tiết quy trình tiền xử lý ảnh đầu vào $(224 \times 224 \times 3)$, cấu hình vector đặc trưng 1024 chiều và cấu trúc lớp mạng Dense Softmax phục vụ nhận diện trái cây.

Chương 4. Kết quả mô hình

Chương 4 công bố các kết quả thực nghiệm đạt được trên cả mô hình AI và phần cứng thực tế. Tác giả trình bày đồ thị đường cong đào tạo (Training curves) với tham số 10 epochs, ma trận nhầm lẫn (Confusion Matrix cho các trường hợp kiểm thử) và đánh giá độ chính xác phân loại trên tập dữ liệu mẫu "Fruits and Vegetables Image Recognition Dataset" cũng như tập dữ liệu chụp thực tế. Chương này cũng minh họa hình ảnh giao diện web bán hàng, giao diện quản trị cập nhật đơn giá, kết quả thi công bàn cân vật lý và bảng số liệu kiểm định sai số của cảm biến cân nặng Loadcell.

Chương 5. Kết luận và hướng phát triển

Chương cuối cùng tổng kết các hạng mục đã hoàn thành theo mục tiêu đề ra, bao gồm việc hoàn thiện hệ thống tính tiền tự động có độ trễ thấp và khả năng vận hành ổn định. Tác giả nêu rõ các mặt hạn chế về điều kiện ánh sáng, số lượng loại trái cây hỗ trợ và đề xuất các giải pháp nâng cấp mô hình trong tương lai.


Kết quả và đóng góp

Kết quả đo kiểm và số liệu thực nghiệm

Quá trình thử nghiệm và triển khai thực tế của đề tài ghi nhận các chỉ số kỹ thuật cụ thể:

  • Thông số mô hình AI: Mô hình MobileNetV2 tùy chỉnh có dung lượng nhẹ với khoảng 6,2 triệu tham số (params). Khi huấn luyện với số lượng 10 epochs, mô hình hội tụ ổn định và đạt kết quả nhận diện chính xác trên tập dữ liệu kiểm tra.
  • Khối phần cứng: Bàn cân Loadcell 20kg kết hợp module HX711 và ESP8266 đo lường ổn định khối lượng trái cây với sai số nhỏ, đáp ứng thời gian thực và truyền dữ liệu liên tục về máy tính qua giao tiếp nối tiếp Serial.
  • Hệ thống phần mềm: Hoàn thiện hai giao diện ứng dụng web bằng React.js tương tác trực tiếp với Flask API và Firebase, hỗ trợ đầy đủ các thao tác quét ảnh, tính toán hóa đơn theo thời gian thực và huấn luyện lại dữ liệu mới từ giao diện quản trị.
Hạng mục kiểm tra Thông số / Kết quả ghi nhận Trạng thái vận hành
Kích thước tensor đầu vào $224 \times 224 \times 3$ (Chuẩn hóa dải $[0, 1]$) Hoạt động chính xác
Kích thước vector đặc trưng 1024 chiều ($num_features$) Trích xuất đặc trưng đầy đủ
Tổng số tham số mô hình Khoảng 6,2 triệu tham số Nhẹ, tối ưu cho máy tính nhúng
Chu kỳ huấn luyện (Epochs) 10 epochs Đạt độ hội tụ ổn định
Tải trọng cảm biến Loadcell Tối đa 20 kg Đáp ứng cân nặng bán lẻ
Phân loại danh mục trái cây Tối đa 20 loại Thực hiện theo thiết kế

Giải pháp và kiến nghị của tác giả

  • Tích hợp quy trình lấy mẫu tại chỗ: Thay vì phụ thuộc hoàn toàn vào tập dữ liệu ảnh trực tuyến vốn có sự sai khác về ánh sáng và mẫu mã thực tế tại cửa hàng, tác giả đề xuất giải pháp chụp ảnh trực tiếp các mẫu trái cây đặt trên bàn cân để tạo tập dữ liệu huấn luyện cục bộ.
  • Tự động hóa tái huấn luyện: Xây dựng quy trình khép kín cho phép người quản lý không cần chuyên môn sâu về AI vẫn có thể thêm dữ liệu, nhấn nút huấn luyện lại và cập nhật mô hình trực tiếp trên máy bán hàng.

Đóng góp của đề tài

  1. Đồ án xây dựng thành công một mô hình hoàn chỉnh kết hợp giữa xử lý ảnh học sâu và đo lường trọng lượng vật lý trong một thiết bị tính tiền tự động khép kín phục vụ ngành bán lẻ nông sản.
  2. Ứng dụng hiệu quả kiến trúc MobileNetV2 nhằm cắt giảm tối đa chi phí tính toán thông qua phép tích chập phân tách theo chiều sâu (Depthwise Separable Convolution), giúp hệ thống hoạt động ổn định trên cấu hình máy tính thông thường mà không đòi hỏi phần cứng GPU chuyên dụng đắt tiền.

Hạn chế và hướng nghiên cứu tiếp

Dựa trên nội dung báo cáo và biên bản đánh giá của hội đồng chuyên môn, đề tài ghi nhận các hạn chế và hướng mở rộng sau:

Hạn chế

  • Hệ thống chỉ hỗ trợ phân loại tối đa 20 loại trái cây trong danh mục được huấn luyện trước.
  • Khả năng nhận dạng phụ thuộc nhiều vào môi trường ngoại cảnh: yêu cầu điều kiện ánh sáng ổn định và camera chụp ở góc thẳng đứng trực diện; chưa nhận diện tốt khi trái cây bị che khuất hoặc thay đổi góc nhìn lớn.
  • Mô hình chưa có khả năng phân biệt các giống trái cây khác nhau thuộc cùng một loài (ví dụ: các giống táo khác nhau hoặc các giống xoài khác nhau).
  • Cần bổ sung phân tích sâu hơn về sai số tích lũy của toàn hệ thống, bao gồm sai số cơ học của thiết bị cân Loadcell và sai số dự đoán xác suất của mô hình thị giác máy tính.

Hướng nghiên cứu tiếp

  • Mở rộng tập dữ liệu để nâng cao khả năng phân loại trên 20 loại trái cây và phát triển thuật toán phân biệt các giống trái cây chi tiết trong cùng một họ.
  • Tối ưu hóa thuật toán nhận diện đối tượng để hệ thống có thể nhận diện và tính toán cùng lúc nhiều loại trái cây khác nhau đặt chung trên một khay cân.
  • Cải tiến phần cứng với hệ thống chiếu sáng chuẩn hóa và bổ sung các giải pháp lọc nhiễu tín hiệu cân nặng nhằm nâng cao độ chính xác khi vận hành trong môi trường thương mại thực tế.

Giá trị tham khảo

Đồ án là tài liệu tham khảo chuyên ngành hữu ích cho các nhóm đối tượng:

  • Sinh viên và học viên ngành Hệ thống Nhúng, IoT, Kỹ thuật Máy tính và Điện tử - Viễn thông: Tham khảo phương pháp tích hợp phần cứng cảm biến (Loadcell, HX711, vi điều khiển ESP8266) với các ứng dụng máy tính xử lý trung tâm qua giao tiếp nối tiếp Serial.
  • Người nghiên cứu ứng dụng AI trong thị giác máy tính: Nắm bắt kỹ thuật triển khai mạng nơ-ron tích chập nhẹ MobileNetV2, quy trình tinh chỉnh (fine-tuning), cấu hình vector đặc trưng 1024 chiều và cách thức đóng gói mô hình học sâu vào dịch vụ Flask API.
  • Kỹ sư phát triển phần mềm và hệ thống bán lẻ (POS/Self-checkout): Tham khảo kiến trúc kết hợp full-stack giữa React.js, Flask API và Firebase Database để xây dựng các trạm thanh toán tự động và phân hệ quản lý dữ liệu sản phẩm theo thời gian thực.

Câu hỏi thường gặp

1. Tại sao đề tài lại lựa chọn kiến trúc MobileNetV2 thay vì các mạng CNN truyền thống để phân loại trái cây?

Kiến trúc MobileNetV2 sử dụng phép tích chập phân tách theo chiều sâu (Depthwise Separable Convolution) kết hợp các khối Inverted Residuals và Linear Bottlenecks. Cấu trúc này giúp giảm khối lượng tính toán từ 8 đến 9 lần so với phép tích chập thông thường, giữ tổng số tham số mô hình ở mức khoảng 6,2 triệu. Nhờ đó, mô hình hoạt động nhanh, tiêu tốn ít tài nguyên và cho phép huấn luyện lại trực tiếp trên máy tính thông thường mà vẫn bảo đảm độ chính xác phục vụ thanh toán.

2. Thành phần phần cứng thu thập dữ liệu cân nặng gồm những thiết bị nào và kết nối ra sao?

Khối cân nặng sử dụng cảm biến lực Loadcell 20kg làm bằng hợp kim nhôm, kết nối với module giải mã ADC 24-bit HX711 qua 4 chân ($E+, E-, A+, A-$). Module HX711 giao tiếp với vi điều khiển ESP8266 qua hai chân tín hiệu số $DT$ (Data) và $SCK$ (Clock). ESP8266 sau đó gửi dữ liệu trọng lượng về máy tính xử lý trung tâm thông qua giao tiếp nối tiếp Serial (UART).

3. Quy trình tính tiền tự động cho một lần cân trái cây diễn ra theo các bước nào?

Khi khách hàng đặt trái cây lên bàn cân và thao tác trên giao diện React.js:

  1. Flask API yêu cầu ESP8266 đọc dữ liệu khối lượng từ cảm biến Loadcell và kích hoạt Webcam chụp ảnh sản phẩm.
  2. Ảnh được chuẩn hóa về kích thước $224 \times 224 \times 3$ và đưa qua mô hình MobileNetV2 để xác định tên loại trái cây.
  3. Hệ thống gửi yêu cầu đến Firebase API để lấy đơn giá của loại trái cây đó.
  4. Hệ thống nhân khối lượng với đơn giá, tính ra tổng số tiền và hiển thị chi tiết hóa đơn thanh toán lên màn hình cho khách hàng.

4. Phần mềm quản lý hỗ trợ người dùng cập nhật dữ liệu và huấn luyện lại mô hình như thế nào?

Phần mềm quản lý cho phép quản trị viên thay đổi trực tiếp đơn giá trên Firebase, chụp ảnh bổ sung các loại trái cây mới thông qua Webcam của hệ thống và xóa các dữ liệu cũ. Khi có sản phẩm mới, quản trị viên chỉ cần nhấn lệnh huấn luyện trên giao diện; hệ thống sẽ tự động chạy lại quá trình đào tạo mô hình MobileNetV2 với tập dữ liệu mới, sau đó lưu lại và triển khai (deploy) ngay cho phần mềm tính tiền sử dụng.

5. Dữ liệu hình ảnh đầu vào được tiền xử lý như thế nào trước khi đưa vào mô hình học sâu?

Hình ảnh chụp từ Webcam được giải mã thành tensor với 3 kênh màu (R, G, B). Các giá trị điểm ảnh được chuyển đổi từ thang độ xám nguyên $[0, 255]$ về dạng số thực nằm trong khoảng $[0, 1]$. Sau đó, ảnh được thực hiện hàm thay đổi kích thước (resize) để đưa về kích thước cố định $(None, 224, 224, 3)$ trước khi truyền vào mạng nơ-ron MobileNetV2.


Kết luận

Đồ án tốt nghiệp "Xây dựng mô hình phân loại trái cây để ứng dụng trong hệ thống tính tiền tự động" của tác giả Đỗ Mạnh Thắng đã hoàn thành trọn vẹn các mục tiêu thiết kế và thi công hệ thống tính tiền tự động ứng dụng AI. Bằng việc tích hợp kiến trúc mạng tích chập nhẹ MobileNetV2 cùng cảm biến lực Loadcell 20kg, vi điều khiển ESP8266 và giao diện web React.js kết nối Flask API/Firebase, đề tài đã tạo ra một sản phẩm thực nghiệm có khả năng tự động nhận diện, cân trọng lượng và xuất hóa đơn chính xác cho tối đa 20 loại trái cây. Công trình mang tính ứng dụng thực tiễn cao cho mô hình bán lẻ hiện đại và cung cấp tài liệu kỹ thuật hoàn chỉnh cho các nghiên cứu phát triển hệ thống nhúng thông minh.