1. Trang chủ
  2. » Luận Văn - Báo Cáo

Luận văn thạc sĩ Kỹ thuật điều khiển và tự động hóa: Ứng dụng học sâu và xử lý ảnh phát hiện lỗi trong sản xuất chip SOC

80 0 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Nội dung

Trang 2

Cán bộ hướng dẫn khoa học :

PGS.TS Huỳnh Thái Hoàng – TS Phạm Việt Cường Cán bộ chấm nhận xét 1 :

TS Nguyễn Vĩnh Hảo Cán bộ chấm nhận xét 2 :

3 Phản biện 2: PGS TS Lê Mỹ Hà 4 Ủy viên: TS Nguyễn Ngọc Sơn 5 Thư ký: TS Nguyễn Trọng Tài

Xác nhận của Chủ tịch Hội đồng đánh giá LV và Trưởng Khoa quản lý chuyên ngành sau khi luận văn đã được sửa chữa (nếu có)

CHỦ TỊCH HỘI ĐỒNG TRƯỞNG KHOA ĐIỆN – ĐIỆN TỬ

Trang 3

TRƯỜNG ĐẠI HỌC BÁCH KHOA Độc lập - Tự do - Hạnh phúc NHIỆM VỤ LUẬN VĂN THẠC SĨ

Ngày, tháng, năm sinh: 26/11/1995 Nơi sinh: Thái Bình

Chuyên ngành: Kỹ thuật Điều khiển và Tự động hóa Mã số : 8520216

I TÊN ĐỀ TÀI: Ứng dụng học sâu và xử lý ảnh phát hiện lỗi trong sản xuất chip SOC –

Vision based defect detection for SOC chip manufacturing

NHIỆM VỤ VÀ NỘI DUNG:

- Giải quyết bài toán phát hiện sản phẩm lỗi trong dây chuyền sản xuất chip bán dẫn Xây dựng một ứng dụng bổ sung cho hệ thống đã có sẵn nhằm tăng cường khả năng

phát hiện và giảm thiểu lỗi

- Khảo sát độ chính xác của phương pháp Patch Distribution Modeling (PaDiM), Template Matching kết hợp với các kỹ thuật xử lý ảnh trong những điều kiện khác

nhau

II NGÀY GIAO NHIỆM VỤ : 5/9/2022

III NGÀY HOÀN THÀNH NHIỆM VỤ: 28/12/2022

IV.CÁN BỘ HƯỚNG DẪN: PGS.TS Huỳnh Thái Hoàng – TS Phạm Việt Cường

Tp HCM, ngày 28 tháng 12 năm 2022

Trang 5

Với truyền thống sáng tạo và ham học hỏi từ những thế hệ đi trước của khoa Điện – Điện Tử nói chung và của Bộ Môn Tự Động Hóa nói riêng, luận văn tốt nghiệp như là một bản tổng kết hành trình nghiên cứu học tập của mỗi sinh viên và phần nào đó thể hiện ước mơ cống hiến của mình dù là nhỏ bé để xây dựng đất nước

May mắn nhận được sự hướng dẫn và giúp đỡ của các thầy cô, anh chị khóa trên và bạn bè nên em có được điều kiện để thực hiện đề tài luận văn này Hi vọng rằng, với nhiệt huyết của tuổi trẻ và niềm đam mê nghiên cứu không ngừng nghỉ của các thế hệ sinh viên, những đề tài luận văn sẽ đóng góp thêm nhiều kiến thức hữu ích cho ngành Tự Động Hóa Việt Nam

Em xin cảm ơn quý thầy cô trong khoa Điện – Điện Tử đã đồng hành cùng em trong những năm tháng trên giảng đường để em có được những kiến thức bổ ích, đó không chỉ là những tri thức khoa học mà còn là những kinh nghiệm thực tế giúp em giải quyết nhiều vấn đề khác trong cuộc sống Em xin gửi lời cảm ơn chân thành đến thầy PGS TS Huỳnh Thái Hoàng và thầy TS Phạm Việt Cường đã giúp đỡ em rất nhiều để em có thể hoàn thành luận văn này từ việc chọn đề tài, hướng dẫn đến giám sát, kiểm tra Sau cùng em xin gửi lời cảm ơn đến gia đình, bạn bè đã luôn đồng hành, chia sẻ cùng em Dù thành công hay thất bại, em sẽ luôn mãi ghi nhớ và trân quý những giá trị này

Tp Hồ Chí Minh, ngày 12 tháng 12 năm 2022

Trang 6

Trong sản xuất chip bán dẫn, chất lượng và độ tin cậy là một trong những ưu tiên hàng đầu Do đó, hệ thống giám sát kiểm tra lỗi chính xác là điều kiện tiên quyết đảm bảo sản phẩm tốt nhất đến tay khách hàng Một hệ thống kiểm tra kém kết hợp với những sai lệch trong quy trình sản xuất và những hạn chế về phần cứng dẫn tới các sản phẩm lỗi bị bỏ sót Trong hầu hết các công đoạn, các sản phẩm lỗi được giám sát bằng camera có độ phân giải cao Tuy nhiên, một vài lỗi có thể vượt quá khả năng của hệ thống giám sát và đôi khi gây ra hậu quả nghiêm trọng về chất lượng

Luận văn tập trung tăng cường khả năng phát hiện lỗi của hệ thống kiểm tra sẵn có bằng cách xây dựng một ứng dụng xử lý, phân tích hình ảnh có khả năng phát hiện những lỗi mà hệ thống hiện tại chưa phát hiện được Ứng dụng tận dụng hình ảnh được tạo ra bởi hệ thống đó Các phương pháp Patch Distribution Modeling (PaDiM), Template Matching và một số kỹ thuật trong xử lý ảnh được sử dụng kết hợp để phát hiện ra sản phẩm lỗi Kết quả nhận dạng được gửi đến người vận hành bằng một hệ thống tự động khác Các thí nghiệm và kết quả sẽ được trình bày ở các phần sau của luận văn

Trang 7

Quality and reliability are the principles of semiconductor manufacturing Thus, precise visual inspection and defect containment are prerequisites to ensure flawless final products delivering to customers and organizational image sustainability Poor inspection systems, process deviation and hardware limitations could translate into defect escapees The defects are mostly segregated by high-resolution camera inspection However, some cosmetic footprints are beyond their capability and sometimes cause severe quality excursion The thesis focuses on improving the inspection capability of existing system with a complementary application which has the ability to scan the defects that are out of the region of interest (ROI) of current system The application is making use of the images produced by the inline inspection machine The combination of Patch Distribution Modeling (PaDiM), Template Matching and other computer vision techniques is used to recognize the defects The results are then sent to users by an automated system All the design of experiments as well as the inspection result will be given in the following sections

Trang 8

Tôi xin cam đoan đây là công trình nghiên cứu của riêng tôi và được hướng dẫn khoa học của PSG.TS.Huỳnh Thái Hoàng và TS Phạm Việt Cường, các nội dung nghiên cứu, kết quả trong đề tài này trung thực và chưa công bố bất kỳ hình thức nào trước đây Những số liệu trong các bảng biểu phục vụ cho việc phân tích, nhận xét, đánh giá được chính tác giả thu thập từ mô phỏng và thực nghiệm do chính bản thân thực hiện

Ngoài ra, trong luận văn này, tác giả có tham khảo một số tài liệu trong và ngoài nước, tất cả đều có ghi chú cụ thể

Nếu phát hiện có bất kỳ gian lận nào tôi xin chịu hoàn toàn trách nhiệm về nội dung luận văn của mình Trường Đại học Bách khoa thành phố Hồ Chí Minh không liên

quan đến những vi phạm tác quyền, bản quyền do tôi gây ra và trong quá trình thực hiện (nếu có)

TP Hồ Chí Minh, ngày 12 tháng 12 năm 2022

Phạm Minh Hải

Trang 9

Chương 1 GIỚI THIỆU 1

1.1 Tổng quan 1

1.2 Tình hình nghiên cứu trong và ngoài nước 2

1.3 Mục tiêu và nhiệm vụ của luận văn 3

1.4 Nội dung luận văn 3

Chương 2 CƠ SỞ LÝ THUYẾT 5

2.1 Đặc điểm các lỗi ngoại quan trong thường gặp trong sản xuất chip bán dẫn 5

2.2 Một số phương pháp xử lý ảnh phát hiện lỗi trong công nghiệp 8

2.3 Phương pháp Template Matching 11

2.4 Kiến trúc Residual Neural Network (ResNet) cho bài toán nhận dạng vật thể 13

2.5 Phương pháp mô hình hóa phân phối các đặc trưng (Patch Distribution Modeling - PaDiM) 14

2.6 Ứng dụng xử lý ảnh trong phát hiện lỗi lệch/thiếu linh kiện 18

2.7 Một số phương pháp tiền xử lý ảnh áp dụng cho bài toán CNN 19

Chương 3 QUÁ TRÌNH THỰC HIỆN 21

3.1 Cấu trúc của hệ thống 21

3.2 Phân loại bài toán 23

3.2.1 Lỗi vết bẩn hoặc trầy xước trên bề mặt 23

3.2.2 Lỗi lệch và mất linh kiện 24

3.3 Tiền xử lý ảnh 24

3.4 Thu thập dữ liệu huấn luyện và đánh giá 24

3.5 Phát hiện sản phẩm bị lệch sử dụng OpenCV 27

3.6 Phát hiện các vết bẩn hoặc trầy xước trên bề mặt sử dụng CNN 30

3.7 Thiết kế giao diện phục vụ cho việc huấn luyện 33

Chương 4 KẾT QUẢ THỰC HIỆN VÀ ĐÁNH GIÁ 36

4.1 Kết quả nhận dạng khi huấn luyện mô hình CNN với số lượng hình ảnh đầu vào thay đổi 36 4.2 Kết quả nhận dạng khi huấn luyện mô hình CNN với các phương pháp tiền xử lý ảnh khác nhau

39

Trang 11

Hình 1.1 Dự báo tăng trưởng của ngành công nghiệp bán dẫn châu Á theo Business Insights 1

Hình 1.2 Mô hình Auto Encoder 3

Hình 2.1 Linh kiện đúng vị trí (bên trên) và linh kiện lệch vị trí (bên dưới) 5

Hình 2.2 Một đường nứt/trầy xuất hiện trên bề mặt sản phẩm 6

Hình 2.3 Một vết bẩn dính trên bề mặt sản phẩm 7

Hình 2.4 Quy trình lắp ráp và kiểm tra trong sản xuất chip bán dẫn 8

Hình 2.5 Phương pháp Template Matching trong bài toán đếm số lượng linh kiện 9

Hình 2.6 Một vết bẩn nhỏ và mờ trên bề mặt sản phẩm 10

Hình 2.7 Hình ảnh thô ban đầu chưa được căn chỉnh 12

Hình 2.8 Từ trái qua phải, ảnh gốc đầu vào và ảnh mẫu (template) 12

Hình 2.9 Khối Residual Block 13

Hình 2.10 So sánh Error Rate của ResNet và các mô hình phân loại khác 14

Hình 2.11 Mô hình hóa phân phối đặc trưng (Patch Distribution Modeling) 15

Hình 2.12 a) Các biến không có sự tương quan b) Các biến có sự tương quan 16

Hình 2.13 Hình ảnh mẫu sản phẩm trước và sau khi thực hiện giảm kích thước 18

Hình 2.14 Sử dụng ROI xung quanh các nhóm linh kiện có cùng đặc trưng 19

Hình 2.15 Sử dụng gamma correction để tăng giảm độ tương phản 20

Hình 3.1 Hệ thống kiểm tra và cảnh báo đến người vận hành 21

Hình 3.2 Sơ đồ khối hoạt động của hệ thống 22

Hình 3.3 Hai loại lỗi sản phẩm trong một quy trình 23

Hình 3.4 Từ trái qua phải, kích thước linh kiện bình thường so với lúc bị lệch và mất 27

Hình 3.5 Từ trái sang phải, linh kiện bình thường nằm trên copper pad, linh kiện bị lệch và linh kiện mất 28

Hình 3.6 Điểm tham chiếu trong ô chữ nhật màu đỏ 29

Hình 3.7 Từ trái sang phải, ba loại sản phẩm dùng để đánh giá linh kiện lệch 30

Hình 3.8 Từ trái sang phải, ba loại sản phẩm được dùng để đánh giá mô hình CNN 31

Hình 3.9 Kiến trúc của ResNet18 32

Hình 3.10 Giao diện hỗ trợ vẽ ROI 34

Hình 3.11 Giao diện hỗ trợ huấn luyện mô hình học sâu và tạo template 35

Hình 4.3 Kết quả nhận dạng accuracy khi training dataset thay đổi sản phẩm 1 37

Hình 4.4 Precision của sản phẩm 1 khi training data set thay đổi 38

Hình 4.5 Recall của sản phẩm 1 khi training dataset thay đổi 39

Hình 4.6 Kết quả accuracy khi phương pháp tiền xử lý ảnh thay đổi sản phẩm 1 40

Hình 4.7 Kết quả precision khi thay đổi phương pháp tiền xử lý ảnh sản phẩm 1 41

Hình 4.8 Kết quả recall khi thay đổi phương pháp tiền xử lý ảnh sản phẩm 1 41

Trang 12

Hình 4.12 Kết quả nhận dạng recall khi kích thước vector đặc trưng thay đổi sản phẩm 1 44

Hình 4.13 Từ trái sang phải, kết quả phát hiện lệch và thiếu linh kiện 47

Hình 4.14 Kết quả nhận dạng accuracy của linh kiện bị lỗi 47

Hình 4.15 Kết quả nhận dạng precision của linh kiện bị lỗi 48

Hình 4.16 Kết quả nhận dạng recall của linh kiện bị lỗi 49

Hình 4.17 Một vết bụi nằm gần khu vực tụ 51

Trang 13

AP Average Precision

FPN Feature Pyramid Network IoU Intersection over Union FC Fully Conntected RoI Region of Interest

RCNN Region Convolutional Neural Network RPN Region Proposal Network

SVM Support Vector Machine YOLO You Only Look Once

Trang 14

Chương 1 GIỚI THIỆU 1.1 Tổng quan

Ngành công nghiệp điện tử nói chung và ngành bán dẫn nói riêng đang có bước phát triển nhanh và nổi bật trong nhiều thập kỷ qua Trong đó, không thể không kể tới sự cạnh tranh gay gắt trong việc sản xuất chip bán dẫn do nhu cầu tăng cao trong thời kỳ công nghệ và chuyển đổi số Theo thống kê, giá trị thị trường của ngành công nghiệp bán dẫn đạt 452.25 tỉ đô vào năm 2021 dự báo tăng lên 483 tỉ đô la Mỹ trong năm 2022 và còn tiếp tục tăng nhanh trong những năm tiếp theo [1]

Hình 1.1 Dự báo tăng trưởng của ngành công nghiệp bán dẫn châu Á theo Business Insights

Do nhu cầu tăng cao, cuộc chạy đua công nghệ nhằm giành lấy thị phần từ các công ty là rất mạnh mẽ Để có thể thu hút được khách hàng, ngoài việc cung cấp các tính năng vượt trội, các nhà sản xuất chip còn phải tập trung kiểm soát chất lượng sản phẩm nhằm đảm bảo đầu ra uy tín và duy trì hình ảnh của doanh nghiệp Để làm được điều đó, các quy trình kiểm tra chất lượng sản phẩm phải rất nghiêm ngặt và đạt độ chính xác cao, một trong số đó là các quy trình kiểm tra ngoại quan sản phẩm (visual inspection) Trong các nhà máy sản xuất, hầu hết ở mỗi quy trình đều có công đoạn kiểm tra ngoại quan Các công đoạn này đảm bảo sản phẩm lỗi sẽ bị loại bỏ ra trước khi lô sản phẩm được xử

Trang 15

sản xuất lớn là việc một số công đoạn kiểm tra không có đủ khả năng để phát hiện các lỗi lạ so với thiết kế ban đầu của nhà sản xuất, và do đó tiêu tốn rất nhiều chi phí để nâng cấp hoặc thay đổi quy trình Trong phạm vi đề tài, chúng ta tập trung tìm hiểu các lỗi thường xảy ra ở một công đoạn sản xuất, các phương pháp đã và đang được áp dụng để giải quyết vấn đề và đề xuất các phương pháp thích hợp để xử lý bài toán một cách hiệu quả hơn

1.2 Tình hình nghiên cứu trong và ngoài nước

Có rất nhiều nghiên cứu liên quan trong và ngoài nước về chủ đề phát hiện và phân loại lỗi sản phẩm trong sản xuất linh kiện và vi mạch điện tử

Một trong các cách có thể kể đến như việc ứng dụng công nghệ học sâu (Deep Learning) với kiến trúc CNN (Convolutional Neural Network) Trong [2], tác giả sử dụng kiến trúc Darknet-53, một mạng tích chập với 53 lớp dùng để định vị trí và phân loại đối tượng tương tự như cách làm việc của kiến trúc YOLO (You Only Look Once) Ưu điểm của phương pháp này là thời gian tính toán nhanh, phù hợp với nhu cầu trong sản xuất Tuy nhiên, nhược điểm của phương pháp là cần nhiều thời gian cho giai đoạn huấn luyện (training) và có thể ở tại thời điểm huấn luyện, mô hình cũng không tổng quát hóa được toàn bộ các lỗi có thể xảy ra

Ở nghiên cứu [3], tác giả đề xuất sử dụng kiến trúc Two-Stage object detection, phương pháp này tương tự như các mô hình RCNN (Region-proposed Convolution Neural Network) [4] Ưu điểm của phương pháp này là cho độ chính xác cao, tuy nhiên thời gian và tài nguyên cho quá trình training là rất lớn Các phương pháp tương tự sử dụng FPN (Feature Pyramid Network) [5], [6] [Multi-scale defect detection of printed circuit board based on feature pyramid network] cũng dựa trên cơ sở là họ RCNN

Để có thể giải quyết được bài toán phát hiện lỗi, trong khi chưa có đủ bộ dữ liệu đại diện cho tất cả các trường hợp, giải pháp lúc này có thể sử dụng phương pháp học không giám

Trang 16

một mạng tích chập được sử dụng để trích xuất đặc trưng của bộ dữ liệu mẫu (bao gồm các sản phẩm không bị lỗi) gọi là Encoder và một mạng tích chập được sử dụng để tái cấu trúc lại vật thể [Automated Surface Defect Inspection Based on Autoencoders] Với hầu hết các sản phẩm bình thường, sai số từ việc tái cấu trúc sẽ nhỏ so với các sản phẩm bị lỗi

Hình 1.2 Mô hình Auto Encoder

Tuy nhiên, thực nghiệm cho thấy các mô hình Auto Encoder hoạt động hiệu quả với các sản phẩm bị lỗi lớn và nhảy cảm với các lỗi có kích thước nhỏ Do đó, ta cần sử dụng một mô hình Unsupervised Learning hiệu quả hơn

1.3 Mục tiêu và nhiệm vụ của luận văn

- Hiểu được đặc tính và các lỗi ngoại quan thường gặp trong sản xuất chip bán dẫn - Tiền xử lý ảnh thô được tạo ra trong quá trình sản xuất

- Vận dụng các phương pháp xử lý ảnh và học sâu để giải quyết bài toán phát hiện lỗi

sản phẩm

- Thiết kế hệ thống thu nhận dữ liệu và cảnh báo

1.4 Nội dung luận văn

Chương 1 của luận văn trình bày tổng quan về đề tài, tình hình nghiên cứu trong và ngoài nước

Chương 2 trình bày các phương pháp, cơ sở lý thuyết và thuật toán sử dụng để

Trang 17

Chương 3 trình bày các thí nghiệm, lý do và kết quả mong muốn đạt được Chương 4 trình bày các kết quả thí nghiệm, các thông số đánh giá và nhận xét Chương 5 kết luận các kết quả đạt được, những vấn đề chưa được giải quyết và hướng phát triển

Trang 18

Chương 2 CƠ SỞ LÝ THUYẾT

2.1 Đặc điểm các lỗi ngoại quan trong thường gặp trong sản xuất chip bán dẫn

Trong các dây chuyền sản xuất chip bán dẫn, có rất nhiều lỗi ngoại quan có thể bắt gặp và được nhìn thấy dưới kính hiển vi (có độ phóng đại 30 lần trở lên) hoặc thậm chí bằng mắt thường Trong đó có thể kể đến các lỗi điển hình như: mất linh kiện, linh kiện bị lệch, vỡ hoặc chất bẩn dính trên bề mặt linh kiện hoặc tấm nền (substrates) Có rất nhiều nguyên nhân dẫn đến các linh kiện gắn trên bề mặt chip gặp phải các vấn đề nêu trên có thể kể đến như:

- Các sai số trong quá trình gắp và đặt các linh kiện dẫn tới việc linh kiện đó không được kết dính đầy đủ với kem hàn (solder paste) và sau khi qua quá trình nung (soldering) thì các linh kiện này bị lệch và không còn được kết nối chắc chắn với vùng đệm bằng đồng (copper pad) dẫn tới việc các kết nối giữa linh kiện tới bề mặt substrate bị yếu và có thể rơi ra ngoài trong các công đoạn tiếp theo

Hình 2.1 Linh kiện đúng vị trí (bên trên) và linh kiện lệch vị trí (bên dưới)

- Dưới tác động của các kết cấu cơ khí bị lỗi sau khi một quá trình dài vận hành, bề

Trang 19

này có thể nhìn thấy bằng mắt thường và ảnh hưởng trực tiếp đến các công đoạn lắp ráp phía sau Trong trường hợp vết nứt hoặc trầy xước nhỏ, khó nhìn thấy bằng mắt thường thì công đoạn kiểm tra ngoại quan bằng mắt thường có thể bỏ sót sản phẩm lỗi gây ra tiêu tốn thời gian và nguồn lực cho các công đoạn kiểm tra phía sau

Hình 2.2 Một đường nứt/trầy xuất hiện trên bề mặt sản phẩm

- Môi trường vận hành bị nhiễm bẩn, máy móc trong quá trình sản xuất tạo ra các chất có thể dính lên bề mặt của sản phẩm Loại lỗi này có thể dễ dàng phát hiện được bằng mắt thường nhưng chúng cần được phát hiện sớm để các vết bẩn không bị dính lên các bộ phận cơ khí của các công đoạn phía sau

Trang 20

Hình 2.3 Một vết bẩn dính trên bề mặt sản phẩm

Hầu hết các nhà máy sản xuất chip bán dẫn đều có rất nhiều công đoạn kiểm tra tự động bằng máy (automated optical inspection) Các công đoạn kiểm tra này giúp sớm phát hiện và loại bỏ những sản phẩm lỗi (có thể gây ra bởi quy trình hiện tại hoặc trước đó), tránh ảnh hưởng đến việc lắp ráp của các công đoạn tiếp theo Tuy nhiên, không phải bộ phận kiểm tra chất lượng nào của một quy trình (quality control) đều được tối ưu, đặc biệt là với các quy trình lớn, việc thay đổi và tối ưu chất lượng kiểm tra ngoại quan cần nhiều thời gian và công sức Hơn nữa, nếu các lỗi liên quan không được phát hiện sớm để dừng quy trình thì sẽ gây ra hàng loạt sản phẩm bị thải bỏ gây ra thiệt hại lớn cho nhà máy sản xuất

Sơ đồ hệ thống trong một nhà máy lắp ráp sản xuất chip bán dẫn có thể được tóm gọn như hình bên dưới Trong đó, phần kiểm tra bổ sung sẽ được thiết kế và vận hành ở cuối công đoạn lắp ráp trước khi đưa vào kiểm tra tính năng (test) vì các lỗi sản phẩm nếu có và chưa được phát hiện sẽ nằm ở công đoạn này, hơn nữa nếu để các sản phẩm lỗi đến công đoạn test, rất có thể chúng sẽ gây ra hư hại cho các bảng mạch test và gây ra thiệt hại lớn (các thiết bị test thường có giá thành đắt hơn rất nhiều so với các thiết bị lắp ráp)

Trang 21

Hình 2.4 Quy trình lắp ráp và kiểm tra trong sản xuất chip bán dẫn

Hệ thống kiểm tra ngoại quan và những ứng dụng, phần mềm đi kèm thường được thiết kế, đóng gói sẵn từ nhà sản xuất nên không thể chỉnh sửa, thay đổi từ phía người dùng Với hệ thống hiện tại đang được đề cập, một số vùng trên sản phẩm nằm ngoài ROI của hệ thống chính nên hệ thống không có khả năng phát hiện các lỗi ở những khu vực này Do đó, ứng dụng sẽ được xây dựng là một ứng dụng bổ sung, hỗ trợ cho hệ thống chính và sử dụng hình ảnh có sẵn từ hệ thống chính để xử lý như đã đề cập ở chương 1

2.2 Một số phương pháp xử lý ảnh phát hiện lỗi trong công nghiệp

Hiện nay, việc áp dụng các phương pháp xử lý ảnh truyền thống để xử lý và phát hiện lỗi trong các dây chuyển sản xuất là rất phổ biến, trong đó có thể kể đến như: template matching, ROI, Deep Learning,

Cụ thể với phương pháp template matching, người ta sẽ lựa chọn ra một hoặc một vài mẫu (template) cho mỗi loại linh kiện cần kiểm tra Sau đó, các template này sẽ trượt trên hình cần kiểm tra và so sánh độ tương đồng Phương pháp này thường được áp dụng để đếm số lượng linh kiện

Trang 22

Hình 2.5 Phương pháp Template Matching trong bài toán đếm số lượng linh kiện

Nhược điểm của Template Matching là số lượng template sẽ tăng theo số loại linh kiện và do đó thời gian xử lý sẽ tăng lên Phương pháp này chỉ thích hợp cho bài toán phát hiện linh kiện bị mất hoặc kiểm tra trùng khớp các đặc trưng của sản phẩm (ví dụ như chuỗi ký tự)[8]

Với phương pháp sử dụng ROI, người ta sẽ định nghĩa các ROI ở những vùng cần phát hiện lỗi, sau đó bằng các phương pháp xử lý lọc nhiễu và phân ngưỡng (thresholding), ta xác định được kích thước tương đối của vật thể Các thông số này sau đó được lưu lại như là công thức (recipe) để sử dụng cho hình thật Một nhước điểm của phương pháp này là nhạy cảm với nhiễu và độ sáng Trong trường hợp độ sáng tăng hoặc giảm (vấn đề xảy ra khi máy vận hành trong thời gian dài), thì các thông số threshold cần phải được điều chỉnh cho phù hợp Hơn nữa các lỗi không phải lúc nào cũng có mức threshold rõ ràng so với thông số được định nghĩa trước và do đó việc phát hiện các lỗi này là rất khó khăn

Trang 23

Hình 2.6 Một vết bẩn nhỏ và mờ trên bề mặt sản phẩm

Ở phương pháp sử dụng các mô hình học sâu, phổ biến hiện nay là các mô hình YOLO và các họ RCNN sử dụng các mẫu sản phẩm bị lỗi để huấn luyện mô hình Tuy nhiên, phương pháp này gặp phải một vấn đề khó khăn là các lỗi sản phẩm thường chiếm tỉ lệ rất ít và chúng cũng không cố định một loại, do đó rất khó để có thể thu thập đủ dữ liệu phục vụ cho việc huấn luyện

Hiện nay, xu hướng sử dụng mạng CNN (Convolutional Neural Network) để trích xuất đặc trưng và sau đó sự dụng các phép toán trong thống kê để tổng hợp và phân tích bộ dữ liệu, phương pháp này có ưu điểm là chỉ cần huấn luyện trên tập dữ liệu sản phẩm bình thường không bị lỗi và cũng không cần quá nhiều tài nguyên phục vụ cho việc huấn luyện Do đó, nó đang dần trở thành xu hướng được áp dụng trong công nghiệp

Một đặc điểm quan trong trọng bài toán này là các hình ảnh được tạo ra có độ phân giải cao, tuy nhiên để áp dụng mô hình Deep Learning, ta thường phải giảm kích thước của ảnh cho phù hợp với đầu vào của một mạng CNN nào đó Do đó, các linh kiện trở nên rất nhỏ và khó phát hiện được trong trường hợp bị lệch Vì vậy, ta sẽ kết hợp hai phương pháp để có thể giải quyết được bài toán trên Cụ thể như sau:

- Đối với bài toán phát hiện vết bẩn, trầy xước: sử dụng mô hình phân phối các

đặc trưng sẽ đề cập ở mục 4

Trang 24

- Đối với bài toán phát hiện linh kiện bị lệch hoặc mất: sử dụng phương pháp

xử lý ảnh truyền thống (Template Matching, ROI, )

2.3 Phương pháp Template Matching

Template Matching là một kỹ thuật thị giác máy được sử dụng để tìm kiếm vật thể trong ảnh đầu vào dựa trên ảnh mẫu có sẵn Ứng dụng nâng cao hơn của Template Matching là tìm kiếm các vật thể có trong ảnh ở nhiều vị trí, kích thước và hướng khác nhau Thuật toán ứng dụng trong Template Matching được mô tả như sau:

- Trượt ảnh mẫu trên ảnh đầu vào

- Ảnh mẫu sẽ được dùng để đánh giá độ tương đồng so với cửa sổ trượt bằng các công thức tính độ tương đồng (similarity) Một trong những biểu thức tính độ tương đồng được sử dụng trong thư viện openCV là:

Trong đó:

• I là hình ảnh đầu vào

• T là ảnh mẫu có kích thước là 𝑤 × ℎ • R là thông số độ tương đồng

Một trong những nguyên nhân khiến nhiều mô hình học sâu hoạt động chưa hiệu quả là do hình ảnh chưa được xử lý trước khi đưa vào huấn luyện Vấn đề tương tự gặp phải khi sử dụng hình ảnh sản phẩm chip đầu vào chưa được căn chỉnh ở vị trí giữa như hình 2.7 Vì vị trí của sản phẩm trong hình nằm lệch nhưng không cố định nên không thể áp

Trang 25

dụng phương pháp cắt ảnh theo một thông số cố định, giải pháp cần sử dụng ở đây là Template Matching

Hình 2.7 Hình ảnh thô ban đầu chưa được căn chỉnh

Vì mục tiêu của bài toán chỉ quan tâm đến những lỗi xuất hiện trên bề mặt sản phẩm mà không cần xử lý những vùng khác trong ảnh, do đó Template Matching được sử dụng để tách vùng quan tâm (ROI) ra khỏi ảnh gốc

Hình 2.8 Từ trái qua phải, ảnh gốc đầu vào và ảnh mẫu (template)

Trang 26

2.4 Kiến trúc Residual Neural Network (ResNet) cho bài toán nhận dạng vật thể

Được tạo ra vào năm 2015, mô hình học sâu ResNet [9] ra đời với mục đích là để có thể xây dựng được mạng với hàng trăm lớp tích chập và tránh được hiện tượng Vanishing Gradient [10], một hiện tượng phổ biến khi cập nhật thông số bằng Gradient Descent trong các mô hình Deep Learning trước đó

Trong ResNet, người ta thêm vào các kết nối tắt (Residual Block) giữa những khối tích chập Theo hình bên dưới, khối đầu vào sẽ được bổ sung vào kết quả đầu ra của các lớp tích chập, việc này làm cho tránh được trường hợp đạo hàm bằng 0, do kết quả đã được cộng thêm giá trị của đầu vào

Hình 2.9 Khối Residual Block

ResNet đã được phát triển với rất nhiều phiên bản khác nhau như: ResNet18, ResNet34, ResNet101, các số sau mỗi tên ResNet thể hiện số lớp tích chập được sử dụng Khi so sánh hiệu quả của ResNet với các mô hình khác trong tập dữ liệu ImageNet, người ta nhận thấy ResNet cho độ chính xác rất cao

Trang 27

Hình 2.10 So sánh Error Rate của ResNet và các mô hình phân loại khác

Do đó, ta sẽ sử dụng ResNet là mô hình để trích xuất các đặc trưng, cụ thể là ResNet18 vì mô hình này sử dụng ít lớp tích chập nhất nhưng vẫn mang lại độ chính xác cao và vì thế thời gian huấn luyện cũng như kiểm tra sẽ nhanh hơn và phụ hợp với các ứng dụng trong công nghiệp

2.5 Phương pháp mô hình hóa phân phối các đặc trưng (Patch Distribution Modeling - PaDiM)

Với những đặc điểm như đã nêu ở mục 2, bài toán phát hiện lỗi sản phẩm là bài toán phân loại nhị phân (binary classification) giữa sản phẩm bình thường và sản phẩm bị lỗi Mô hình học có giám sát sẽ không phù hợp với bài toán này do không đủ dữ liệu huấn luyện (training)

Phương pháp PaDiM [11], [12] có đặc điểm như sau:

- Mỗi điểm trên một ảnh đầu vào sẽ được thể hiện bằng phân phối Gauss nhiều chiều

- Các feature map được tạo ra từ mỗi ảnh sẽ được kết nối với nhau theo từng điểm trên ảnh đầu vào

Trang 28

- Với mỗi điểm tương ứng trên hình và với N hình ảnh đầu vào, ta sẽ tính được trung bình (mean) và hiệp phương sai (covariance) của cả tập dữ liệu

- Giá trị trung bình và hiệp phương sai này sau đó được sử dụng để so sánh với dữ liệu mới

Hình 2.11 Mô hình hóa phân phối đặc trưng (Patch Distribution Modeling)

Theo mô hình phân phối đặc trưng, 3 layer đầu của mô hình Deep Learning được sử dụng để trích xuất thông tin, cụ thể trong trường hợp này sử dụng ResNet18 mỗi điểm trên tấm ảnh giả sử có tọa độ (𝑖, 𝑗), sau khi qua 3 layer đầu và liên kết với nhau, ta được vector 𝑋𝑖𝑗 = {𝑥𝑖𝑗𝑘, 𝑘 ∈ [1, 𝑁]} với N là tổng số mẫu trong tập dữ liệu huấn luyện Do đó phân phối Gauss nhiều chiều trên tập dữ liệu này sẽ là 𝑁(𝜇𝑖𝑗, ∑ )𝑖𝑗 Trong đó 𝜇𝑖𝑗 là trung bình của 𝑋𝑖𝑗 và ma trận hiệp phương sai ∑𝑖𝑗 Ma trận hiệp phương sai được tính như sau:

Sau khi có được giá trị làm đại diện cho tập dữ liệu huấn luyện (𝜇𝑖𝑗, ∑ )𝑖𝑗 , với mỗi điểm

Trang 29

kiểm tra sự khác biệt Trong bộ dữ liệu đa biến, khoảng cách Euclid thường không chính xác nếu các biến có sự tương quan

Hình 2.12 a) Các biến không có sự tương quan b) Các biến có sự tương quan

Như hình trên, ta nhận thấy trong trường hợp b, mặc dù khoảng cách của 2 điểm đến tâm của bộ dữ liệu là bằng nhau, tuy nhiên chỉ có điểm thứ 1 là thuộc về bộ dữ liệu Do đó, công thức tính khoảng cách Euclid là không chính xác Bằng cách áp dụng khoảng cách Mahalanobis [13] với công thức như sau:

𝑀(𝑖, 𝑗) = √(𝑥𝑖𝑗 − 𝜇𝑖𝑗)𝑇∑ (

𝑥𝑖𝑗 − 𝜇𝑖𝑗)

Trong đó, khoảng cách giữa hai điểm sẽ được nhân với nghịch đảo của ma trận hiệp phương sai, điều đó có nghĩa là nếu các chiều của bộ dữ liệu có liên kết mật thiết với nhau (ở đây là mỗi điểm ảnh trong toàn bộ tập dữ liệu) thì hiệp phương sai sẽ có giá trị lớn Do đó, khi nhân với nghịch đảo của ma trận hiệp phương sai thì khoảng cách sẽ giảm đi đáng kể và ngược lại Nói cách khác, vì ma trận hiệp phương sai chứa mối tương quan giữa các biến trong toàn bộ vector liên kết và của các điểm trong tập dữ liệu nên khoảng cách từ một điểm bất kỳ (có cùng số chiều với số chiều của dữ liệu) sẽ thể hiện

Trang 30

Giả sử mỗi điểm có tọa độ M i j( , )trên ảnh sau khi trích xuất đặc trưng ở 3 layer đầu của mô hình ResNet18 với độ dài n và với N hình ảnh trong tập huấn luyện ta được một bộ vector ngõ ra như sau:

Do đó, vector trung bình uijcó giá trị: uij = + + +z1 z2 zn

ne

Trang 31

var cov cov cov covcov var cov cov covcov cov cov covcov cov cov var covcov cov cov cov var

   

   

2.6 Ứng dụng xử lý ảnh trong phát hiện lỗi lệch/thiếu linh kiện

Một khó khăn khi sử dụng mô hình Deep Learning cho bài toán phát hiện vật thể là hình ảnh đầu vào phải được giảm kích thước cho đúng với kích thước đầu vào của mô hình đó

Hình 2.13 Hình ảnh mẫu sản phẩm trước và sau khi thực hiện giảm kích thước

Trang 32

Như hình trên, các linh kiện trong ảnh sau khi được xử lý giảm kích thước (224 x 224), thì hình dạng của linh kiện không còn như ban đầu và hiện tượng vỡ ảnh xảy ra Khi đó, việc trích xuất đặc trưng của các loại linh kiện sử dụng Deep Learning là không hiệu quả Vì vậy, ta cần sử dụng kết hợp với phương pháp xử lý ảnh truyền thống để giải quyết bài toán Cụ thể hơn, ta sẽ vẽ các đường bao xung quanh các loại linh kiện có cùng kích thước, sau đó sử dụng các phương pháp xử lý ảnh để lấy được thông tin của linh kiện

Hình 2.14 Sử dụng ROI xung quanh các nhóm linh kiện có cùng đặc trưng

2.7 Một số phương pháp tiền xử lý ảnh áp dụng cho bài toán CNN

Tiền xử lý ảnh là một trong những khâu quan trọng khi trước khi huấn luyện dữ liệu với các mô hình CNN Ví dụ như khi hình ảnh đầu vào quá tối làm cho các lỗi trên bề mặt sản phẩm không được rõ ràng hoặc hình ảnh quá mờ khiến mô hình CNN hoạt động kém hiệu quả Do đó, một vài phương pháp tiền xử lý nhằm tăng chất lượng ảnh trước khi huấn luyện được sử dụng:

- Bộ lọc Gauss: bộ lọc được sử dụng để xấp xỉ nhiễu trong nhiều ứng dụng Mật độ phân bố xác suất của nhiễu là hàm Gauss

- Enhance Image: là phương pháp tăng sáng đi kèm với tăng độ sắc nét hình ảnh

Trang 33

- Adjust Gamma: dùng để tăng giảm độ tương phản bằng biến đổi sử dụng hàm mũ

Hình 2.15 Sử dụng gamma correction để tăng giảm độ tương phản

Trang 34

Chương 3 QUÁ TRÌNH THỰC HIỆN 3.1 Cấu trúc của hệ thống

Vì yêu cầu trong nhà máy sản xuất là cần phát hiện lỗi càng sớm càng tốt nên một hệ thống đáp ứng được cần phải có thời gian xử lý nhanh, chính xác, tiêu tốn ít tài nguyên máy tính Như đã đề cập ở chương II, chúng ta sử dụng hình ảnh sản phẩm được tạo ra sau khi dây chuyền kết thúc một lô sản phẩm Vì vậy, tất cả các dây chuyền sẽ được chạy ứng dụng bổ sung ngay sau khi có tín hiệu kết thúc Các kết quả sau khi xử lý sẽ được chuyển đến một máy chủ để có thể truy xuất và gửi thông tin cảnh báo

Hình 3.1 Hệ thống kiểm tra và cảnh báo đến người vận hành

Trình tự các bước được xử lý như sau:

Trang 35

Hình 3.2 Sơ đồ khối hoạt động của hệ thống

Trang 36

3.2 Phân loại bài toán

3.2.1 Lỗi vết bẩn hoặc trầy xước trên bề mặt

Ở trên bề mặt substrates, các vết bẩn và trầy xước có thể xuất hiện đa dạng với nhiều kích thước và màu sắc khác nhau Trong đó có thể phân thành 2 loại chính là:

- Loại 1: Các vết bẩn hoặc trầy xước xuất hiện cố định tại một vị trí với hình dáng và kích thước tương đồng và xảy ra với một loạt sản phẩm do các kết cấu cơ khí hoặc một lỗi nào đó trong một quy trình cụ thể

- Loại 2: Xuất hiện ngẫu nhiên trong quá trình sản xuất và không gây ra lỗi hàng loạt tại một vị trí xác định, các lỗi này thường không gây ảnh hưởng quá nhiều đến quy trình và cũng khó để xác định nguyên nhân đến từ một quy trình cụ thể nào

Hình 3.3 Hai loại lỗi sản phẩm trong một quy trình

Từ định nghĩa ở trên, có thể thấy việc phát hiện lỗi sản phẩm loại 1 là rất cần thiết, giúp sớm phát hiện và dừng một công đoạn bị lỗi để sửa chữa, tránh việc dừng hàng loạt quy trình không cần thiết Các sản phẩm loại là loại 1 sẽ được cảnh báo đến người vận hành, các sản phẩm loại 2 sẽ được lưu lại cho mục đích phân tích sau này

Trang 37

3.2.2 Lỗi lệch và mất linh kiện

Khác với các lỗi bẩn và trầy xước trên bề mặt substrates, lỗi lệch và mất linh kiện lại không được gây ra bởi một nguyên nhân cố định nào mà là kết quả của một quá trình tương tác với các quy trình khác nhau của linh kiện [14] Do đó, mục tiêu của bài toán là phát hiện và loại bỏ những sản phẩm bị lỗi để tránh gây ra ảnh hướng đến các sản phẩm bình thường khác khi đi đến quy trình kiểm tra (test) như đã đề cập ở chương 2

3.3 Tiền xử lý ảnh

Như đã đề cập ở chương 2, tiền xử lý ảnh là một khâu rất quan trọng trong bài toán học sâu Do đó 3 phương pháp tiền xử lý ảnh được dùng để thử nghiệm là: Gamma Correction, Enhance Image và Sharpeness

Trong đó Gamma Correction sử dụng thông số gamma để điều chỉnh tương phản trong ảnh, Enhance Image sử dụng tăng sáng và làm sắc nét, còn Sharpeness sử dụng bộ lọc Gauss và sử dụng một mặt nạ tích chập 2D để tăng độ sắc nét cho ảnh

3.4 Thu thập dữ liệu huấn luyện và đánh giá

Đối với bài toán sử dụng CNN, ta cần thu thập một bộ dữ liệu phục vụ cho việc huấn luyện và đánh giá chất lượng mô hình Cụ thể như sau:

- Dữ liệu huấn luyện (training set): Như đã đề cập ở chương 2, các dữ liệu huấn luyện là các sản phẩm hoàn chỉnh, không bị lỗi về mặt ngoại quan Do đó, các dữ liệu này sẽ được lấy bằng cách kiểm tra các sản phẩm ở công đoạn cuối cùng và truy ngược lại công đoạn hiện tại (công đoạn cần xử lý hình ảnh) để lấy ra bộ dữ liệu bình thường (normal)

- Dữ liệu kiểm định (validation set): Là một bộ dữ liệu trộn lẫn giữa hình bình thường và hình bị lỗi (các hình bị lỗi được trích xuất ra từ các công đoạn phía sau)

Trang 38

- Dữ liệu kiểm tra (test set): Là một loạt các lô sản phẩm bất kỳ được xử lý qua công đoạn hiện tại

Cụ thể tập dữ liệu như bảng sau:

Sản phẩm Training Data Validation Data Test Data

Bài toán phân loại ở đây là bài toán phân loại nhị phân (binary classification), có nghĩa là mô hình sẽ nhận dạng sản phẩm là có bị lỗi hoặc không

Do đó, để đánh giá chất lượng của mô hình CNN và phương pháp xử lý ảnh, ngoài việc sử dụng các thông số quan trọng như Precision, Recall đối với tập dữ liệu kiểm định ta cũng cần kiểm định lại kết quả trong tập dữ liệu kiểm tra Công việc này được thực hiện bằng cách kiểm định các kết quả đã được phát hiện bằng mắt thường với các tiêu chuẩn đã được định sẵn và so sánh với kết quả nhận dạng

Trong đánh giá mô hình phân loại, các chỉ số TP, FP, TN, FN được sử dụng trong đó:

Trang 39

- TN (True Nagative) là tổng số trường hợp được dự báo đúng không phải sản phẩm lỗi

- FP (False Positive) là tổng số trường hợp dự báo các sản phẩm bình thường là sản phẩm lỗi

- FN (False Nagative) là tổng số trường hợp dự báo sản phẩm bị lỗi là sản phẩm bình thường

Khi đó độ chính xác của mô hình (accuracy) sẽ là:

𝐴𝑐𝑐𝑢𝑟𝑎𝑐𝑦 = 𝑇𝑃 + 𝑇𝑁𝑇ổ𝑛𝑔 𝑐á𝑐 𝑚ẫ𝑢

Độ chính xác càng cao thể hiện một mô hình nhận dạng càng chuẩn xác Tuy nhiên, hạn chế của accuracy là nó được đo trên tất cả các nhãn mà không quan tâm đến độ chính xác của từng nhãn cụ thể Trong trường hợp nhận dạng sản phẩm lỗi, thì nhãn là sản phẩm lỗi sẽ được ưu tiên hơn Nói cách khác, việc phân loại chính xác một sản phẩm là lỗi quan trọng hơn việc phân loại một sản phẩm không phải là lỗi

Trong trường hợp này, người ta sẽ sử dụng Precision để đo độ chính xác của mô hình Precision sẽ cho biết trong số các trường hợp được dự báo là positive thì có bao nhiêu trường hợp là đúng Do đó, Precision càng cao thì mô hình phân loại càng tốt Công thức tính Precision như sau:

𝑃𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛 = 𝑇𝑃𝑇𝑃 + 𝐹𝑃

Một thông số khác được dùng để đánh giá mô hình là Recall Nó là tỉ lệ số mẫu được phát hiện là True Positive trong số toàn bộ mẫu thực sự là True Positive (True Positive + False Nagative), hay nói cách khác Recall càng cao đồng nghĩa với việc bỏ sót các sản phẩm bị lỗi càng thấp Công thức tính Recall như sau [15]:

Trang 40

𝑅𝑒𝑐𝑎𝑙𝑙 = 𝑇𝑃𝑇𝑃 + 𝐹𝑁

- Trong mỗi ROI, ta sẽ tính được độ dài và rộng tối thiểu cũng như tối đa của một linh kiện

Nhận xét: Với chiều dài và rộng của linh kiện được tính như trên, trong trường hợp một linh kiện bị lệch hoặc hoặc mất thì kích thước của nó sẽ tăng lên hoặc giảm đi Từ đó ta xác định được linh kiện bị lỗi Hình bên dưới thể hiện chi tiết về phương pháp này

Ngày đăng: 31/07/2024, 09:22

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w