Bỏ qua tới nội dung
0968864140 Đặt lịch demo
  1. Trang chủ
  2. Bài viết
  3. Thị Giác Máy
  4. Học sâu kiểm tra lỗi bề mặt: dữ liệu ảnh, gán…
Thị Giác Máy

Học sâu kiểm tra lỗi bề mặt: dữ liệu ảnh, gán nhãn và máy tính GPU

Đội kỹ thuật Quyết Thắng 9 phút đọc

Một nhà máy dập kim loại thuê làm hệ kiểm tra vết xước bằng học sâu. Bản demo trên 200 ảnh chụp ở văn phòng đạt độ chính xác rất cao. Lắp ra dây chuyền, hệ thống báo lỗi liên tục vào buổi chiều. Nguyên nhân: ánh nắng qua cửa sổ tạo vệt sáng trên bề mặt kim loại, thứ mà bộ ảnh huấn luyện chưa từng có.

Học sâu (deep learning) giải được những lỗi bề mặt mà thuật toán truyền thống bó tay: vết xước mờ trên kim loại xước sẵn, vết nhăn trên vải, vết lõm trên nhựa có vân. Nhưng học sâu kiểm tra lỗi bề mặt không phải là "mua phần mềm AI rồi cho chạy". Thành bại nằm ở ba chỗ: chọn đúng phương pháp, có bộ ảnh đại diện cho điều kiện thật, và đặt đúng máy tính cho từng khâu.

Bài này đi qua cả ba, dùng tài liệu của MVTec (hãng phần mềm thị giác máy HALCON) cho phần phương pháp và datasheet Advantech cho phần máy tính.

Khi nào cần học sâu, khi nào không?

Nếu lỗi định nghĩa được bằng luật đo đạc, như "lỗ đường kính nhỏ hơn 5 mm", "nhãn lệch quá 2 mm", "thiếu linh kiện ở vị trí X", thuật toán truyền thống nhanh hơn, rẻ hơn, dễ giải thích hơn. Học sâu đáng dùng khi lỗi khó mô tả bằng luật: hình dạng lỗi thay đổi, nền có vân tự nhiên, lỗi và vân nền trông gần giống nhau. Nhiều hệ tốt dùng cả hai: thuật toán truyền thống định vị và đo, học sâu phán lỗi bề mặt. Nền tảng về hai hướng này có trong bài sự khác biệt giữa thị giác máy và học máy.

Chọn phương pháp: không phải lúc nào cũng cần ảnh lỗi

MVTec liệt kê nhiều phương pháp học sâu trong thị giác máy: phân loại ảnh, phân vùng ngữ nghĩa, phát hiện đối tượng, phân vùng đối tượng, trích biên, đếm, OCR, và phát hiện bất thường. Với lỗi bề mặt, ba phương pháp hay dùng nhất:

Phương phápKết quảDữ liệu huấn luyệnHợp khi
Phát hiện bất thường (anomaly detection)Ảnh có bất thường không, vùng nàoChỉ cần ảnh sản phẩm tốt, không gán nhãnLỗi hiếm, đa dạng, khó gom đủ mẫu lỗi
Phân loại (classification)Ảnh thuộc loại nào (tốt, xước, lõm…)Ảnh của từng loại, gán nhãn cả ảnhCần biết loại lỗi để thống kê, phân hạng
Phân vùng ngữ nghĩa (semantic segmentation)Từng điểm ảnh thuộc lỗi nàoẢnh lỗi được tô vùng lỗi từng điểm ảnhCần đo kích thước, diện tích lỗi

Theo MVTec, phát hiện bất thường không cần gán nhãn thủ công: mô hình học đặc điểm của ảnh không lỗi rồi báo những vùng khác thường, và chỉ cần số lượng nhỏ ảnh tốt để huấn luyện. Hãng còn giới thiệu biến thể "global context anomaly detection" xét nội dung logic của cả ảnh, phát hiện được cả lỗi kiểu thiếu linh kiện, chi tiết biến dạng, đặt sai vị trí, cũng chỉ huấn luyện bằng ảnh tốt.

Đây là điểm xuất phát thực tế cho nhà máy: sản phẩm tốt thì có nhiều, sản phẩm lỗi thì hiếm và mỗi lỗi một kiểu. Bắt đầu bằng phát hiện bất thường để sàng lọc, gom ảnh lỗi thật trong quá trình chạy, rồi mới huấn luyện phân loại hay phân vùng khi đã có đủ mẫu.

Để thấy quy mô một bộ dữ liệu chuẩn: bộ MVTec AD mà giới nghiên cứu dùng để so sánh các phương pháp có hơn 5.000 ảnh độ phân giải cao chia thành 15 loại vật thể và bề mặt, mỗi loại có ảnh không lỗi để huấn luyện và bộ ảnh kiểm tra có lỗi với chú thích chính xác từng điểm ảnh. Lưu ý giấy phép của bộ này là CC BY-NC-SA 4.0, không được dùng cho mục đích thương mại; dự án nhà máy phải dùng ảnh của chính mình.

Dữ liệu: phần tốn công nhất

Ảnh phải đại diện cho điều kiện thật

Bộ ảnh huấn luyện phải chụp trên chính trạm kiểm tra, với chính camera, ống kính, đèn sẽ dùng khi chạy, và trải qua mọi điều kiện: các ca làm việc, các lô nguyên liệu, lúc máy mới vệ sinh và lúc bụi bám, sáng và chiều nếu có ánh sáng môi trường lọt vào. Trường hợp ở đầu bài là thiếu đúng điều kiện "buổi chiều có nắng".

Cố định ánh sáng trước khi gom ảnh

Mô hình học sâu học cả những gì không nên học: độ sáng, bóng đổ, vệt phản xạ. Đổi đèn hay đổi góc chiếu sau khi đã huấn luyện thường phải gom ảnh và huấn luyện lại. Vì vậy phần chiếu sáng và che chắn ánh sáng ngoài phải làm xong và khoá lại trước.

Gán nhãn nhất quán

Với phân loại và phân vùng, người gán nhãn phải thống nhất định nghĩa: vết xước dài bao nhiêu thì tính là lỗi, vết bẩn lau được có tính không. Hai người gán nhãn khác nhau cho cùng một ảnh là mô hình học mâu thuẫn. Nên viết một tài liệu định nghĩa lỗi có ảnh mẫu, do bộ phận chất lượng duyệt, trước khi gán nhãn.

Tách bộ ảnh kiểm tra

Giữ riêng một phần ảnh không dùng để huấn luyện, chụp ở thời điểm khác, để đánh giá mô hình. Đánh giá trên chính ảnh đã huấn luyện cho kết quả đẹp nhưng vô nghĩa.

Máy tính: tách máy huấn luyện khỏi máy chạy tại dây chuyền

Huấn luyện và chạy mô hình (suy luận, inference) là hai tải việc khác nhau, nên thường dùng hai loại máy.

Máy huấn luyện: GPU lớn, đặt ở phòng kỹ thuật

Máy tính AI Advantech AIR-510 vỏ đen dạng nằm ngang, mặt trước có nút nguồn và hai cổng USB
Advantech AIR-510: hệ thống 4U, lắp được một card đồ hoạ 350 W, được NVIDIA chứng nhận với RTX 6000 Ada (ảnh: Advantech)

Datasheet Advantech AIR-510 ghi: CPU Intel Core thế hệ 12 tới 14, bộ nhớ DDR5 tới 192 GB, lắp được 1 card đồ hoạ 350 W cộng 2 card PCIe khác, được NVIDIA chứng nhận với RTX 6000 Ada, nguồn ATX 3.0 850 W tích hợp, 2 khoang ổ chống sốc chứa tới 8 SSD 2,5", mạng 1 GbE và 2.5 GbE.

Máy tính Advantech AIR-510 đặt dựng đứng, vỏ đen, nút nguồn và cổng USB ở phía trên mặt trước
AIR-510 đặt dựng đứng trong phòng kỹ thuật, nơi có điều hoà (ảnh: Advantech)

Dòng nhiệt độ của máy này là điểm cần đọc: 0 đến 40 °C khi chưa lắp card PCIe. Lắp card GPU 350 W vào thì nhiệt độ môi trường cho phép còn phụ thuộc card. Đây là máy cho phòng kỹ thuật có điều hoà, không phải máy đặt cạnh dây chuyền. Vai trò của nó: huấn luyện, thử mô hình mới, lưu toàn bộ kho ảnh.

Máy chạy tại dây chuyền: nhỏ, không quạt, chịu môi trường xưởng

Máy tính AI Advantech MIC-713-ON vỏ đen, mặt trước có 4 cổng USB, khe iDoor và cổng CAN
Advantech MIC-713-ON: mô-đun NVIDIA Jetson Orin Nano, tới 67 TOPS ở chế độ Super, không quạt (ảnh: Advantech)

Mô hình đã huấn luyện được xuất ra và chạy trên máy nhỏ đặt cạnh trạm kiểm tra. Advantech MIC-713-ON là ví dụ: mô-đun NVIDIA Jetson Orin Nano tới 67 TOPS (chế độ Super), 2 cổng Gigabit Ethernet, 6 USB 3.2, 4 DI/4 DO để nhận trigger và trả kết quả đạt/không đạt, nguồn 9–36 VDC, rung 3 Grms. Nhiệt độ −10 đến 60 °C với gió 0,7 m/s, và −10 đến 50 °C ở chế độ hiệu năng cao nhất.

Nếu trạm có nhiều camera độ phân giải cao hoặc mô hình nặng, máy chạy tại dây chuyền cần GPU rời trong máy công nghiệp có khe PCIe, như trình bày trong bài máy tính cho hệ thống thị giác máy: PoE, băng thông và GPU. Nguyên tắc chung: đo thời gian suy luận thật của mô hình trên máy dự kiến, với độ phân giải thật, so với nhịp dây chuyền, trước khi mua số lượng.

Vận hành sau khi chạy: mô hình cũng cần bảo trì

  • Lưu ảnh bị báo lỗi và ảnh sát ngưỡng, cho bộ phận chất lượng xem lại hằng tuần. Đây là nguồn ảnh để huấn luyện lại.
  • Theo dõi tỷ lệ báo lỗi theo ca, theo lô. Tỷ lệ tăng đột ngột thường do điều kiện thay đổi (đèn yếu đi, ống kính bẩn, nguyên liệu mới), không phải do sản phẩm xấu đi.
  • Quản lý phiên bản mô hình: mỗi lần huấn luyện lại ghi rõ bộ dữ liệu, kết quả đánh giá, ngày đưa vào dây chuyền, và giữ được bản cũ để quay lại.

Các ví dụ ứng dụng học sâu trong sản xuất có trong bài những ứng dụng của deep learning trong thực tiễn sản xuất; vai trò của thị giác máy trong kiểm tra chất lượng nói chung ở bài thị giác máy trong kiểm tra chất lượng.

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

Cần bao nhiêu ảnh để bắt đầu?

MVTec không công bố con số cố định, chỉ nói phát hiện bất thường cần số lượng nhỏ ảnh tốt. Thực tế phụ thuộc độ biến thiên của sản phẩm tốt: bề mặt đồng đều cần ít, bề mặt có vân tự nhiên cần nhiều hơn. Cách làm an toàn là gom ảnh qua nhiều ca, nhiều lô, rồi thử huấn luyện và đánh giá trên bộ kiểm tra riêng.

Có huấn luyện trên máy tính tại dây chuyền được không?

Một số phần mềm cho phép huấn luyện mô hình nhỏ ngay trên máy tại chỗ. Nhưng tách hai máy giúp dây chuyền không bị ảnh hưởng khi thử nghiệm, và kho ảnh lớn nằm ở nơi an toàn, có sao lưu.

Mô hình báo lỗi nhầm nhiều thì sao?

Kiểm tra trước ánh sáng và độ sạch ống kính, sau đó xem ảnh báo nhầm có điểm chung gì (thời điểm, lô, vị trí). Thường là bộ ảnh huấn luyện thiếu một điều kiện có thật, cần bổ sung ảnh tốt của điều kiện đó.

IPC247 hỗ trợ gì

IPC247 phân phối máy tính GPU, máy tính AI nhúng và máy tính công nghiệp Advantech cho hệ thống thị giác máy. Chúng tôi tư vấn cấu hình máy huấn luyện và máy chạy tại dây chuyền theo mô hình, số camera và nhịp sản xuất, cho mượn máy để đo thời gian suy luận thật, giao hàng và hỗ trợ kỹ thuật khi triển khai. Gửi cho chúng tôi mô tả sản phẩm và lỗi cần kiểm để nhận đề xuất.

Nguồn tham khảo

Đội kỹ thuật Quyết ThắngBiên tập bởi kỹ sư triển khai của Quyết Thắng — 10 năm làm máy tính công nghiệp và thị giác máy tại Việt Nam.
Áp dụng cho nhà máy của bạn

Mang mẫu sản phẩm đến, chúng tôi chụp thử

Kỹ sư Quyết Thắng dựng bộ camera – đèn – máy tính công nghiệp ngay tại dây chuyền, chạy thử trên mẫu lỗi thật của bạn rồi mới báo giá.

Nhận tư vấn giải pháp

Kỹ sư gọi lại trong giờ làm việc. Không spam.

Thông tin chỉ dùng để liên hệ tư vấn, gửi về CRM nội bộ.