Trong kiểm tra PCBs, AOI thường sử dụng camera quét qua bề mặt các thành phần có trên bảng mạch cần được kiểm tra Device Under Test - DUT để phát hiện các lỗi như vết trầy xước, vết bẩn,
Trang 1BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT
THÀNH PHỐ HỒ CHÍ MINH
LUẬN VĂN THẠC SĨ NGUYỄN QUỐC BÌNH
ỨNG DỤNG MẠNG NƠRON KIỂM TRA BẢNG MẠCH ĐIỆN TỬ
NGÀNH: KỸ THUẬT ĐIỆN TỬ - 605270
S K C0 0 4 3 9 0
Trang 2BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT
Trang 3BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT
THÀNH PHỐ HỒ CHÍ MINH
LUẬN VĂN THẠC SĨ NGUYỄN QUỐC BÌNH
ỨNG DỤNG MẠNG NƠRON KIỂM TRA
Trang 4LÝ LỊCH KHOA HỌC
I LÝ LỊCH SƠ LƯỢC:
Họ & tên: Nguyễn Quốc Bình Giới tính: Nam
Ngày, tháng, năm sinh: 19/11/1976 Nơi sinh: Tây Ninh
Quê quán: Châu thành, Tây Ninh Dân tộc: Kinh
Chỗ ở riêng hoặc địa chỉ liên lạc:390/18/16 Phan huy ích, Phường 12, Quận Gò Vấp Tp.HCM
Điện thoại cơ quan: 08.38521063 Điện thoại nhà riêng:
08.39470553
binh.nguyenquoc@stu.edu.vn
II QUÁ TRÌNH ĐÀO TẠO:
1 Trung học chuyên nghiệp:
Hệ đào tạo: Thời gian đào tạo từ ……/…… đến ……/
Nơi học:Đại học Kỹ thuật Công nghệ Tp.HCM
Ngành học:Điện tử Viễn thông
Tên đồ án, luận án hoặc môn thi tốt nghiệp: Tổng đài PABX 3-8
Ngày & nơi bảo vệ đồ án, luận án hoặc thi tốt nghiệp: Tháng 3 năm 2000 tại Đại học Kỹ thuật Công nghệ Tp.HCM
Người hướng dẫn: Ths Tạ Công Đức
Trang 5III QUÁ TRÌNH CÔNG TÁC CHUYÊN MÔN KỂ TỪ KHI TỐT NGHIỆP ĐẠI HỌC:
Từ năm 2000 – 2002 Viện Công nghệ viễn thông
Trang 6LỜI CAM ĐOAN
Tôi cam đoan đây là công trình nghiên cứu của tôi
Các số liệu, kết quả nêu trong luận văn là trung thực và chưa từng được ai công bố trong bất kỳ công trình nào khác
Tp Hồ Chí Minh, ngày … tháng … năm 201…
(Ký tên và ghi rõ họ tên)
Nguyễn Quốc Bình
Trang 7LỜI CAM TẠ
Em xin chân thành gởi tới thầy Tiến sĩ Hoàng Minh Trí lòng biết ơn sâu sắc Xin cảm ơn Thầy đã hướng dẫn tận tình trong suốt quá trình em thực hiện và hoàn thành Luận văn tốt nghiệp này
Em xin gởi lời cảm ơn tới tất cả Thầy, Cô trong Khoa Điện-Điện tử đã trang
bị cho em có được các kiến thức quí báu trong hai năm học vừa qua
Xin cảm ơn sự giúp đỡ, động viên nhiệt tình của tất cả bạn bè trong suốt quá trình học tập và trong thời gian thực hiện Luận văn
Học viên
Nguyễn Quốc Bình
Trang 8Abstract
Surface mounted technology (SMT) is one of the mostcommon technologies used in producing printed circuitsboards (PCBs).By employing SMT, the production process speeds up, butthe risk of defects increases.The defect detection
on manufactures is extremelyimportant in the optimization of industrial processes This thesisintroduces a defect detectingmethod of printed circuits boardsbased on Neural Networks
Trang 9MỤC LỤC
Quyết định giao đề tài
Lý lịch cá nhân ……… i
Lời cam đoan ……… iii
Cảm tạ ……… iv
Tóm tắt ……… v
Mục lục ……… vi
Danh sách các chữ viết tắt……… ix
Danh sách các hình ……… x
Chương 1TỔNG QUAN ĐỀ TÀI 1
1.1 Tổng quan chung về lĩnh vực nghiên cứu 1
1.2 Mục tiêu của đề tài 7
1.3 Nhiệm vụ và giới hạn của đề tài 7
1.4 Phương pháp nghiên cứu 8
1.5 Ý nghĩa thực tiễn và tính cấp thiết của đề tài 8
Chương 2CƠ SỞ LÝ THUYẾT 10
2.1 Xử lý ảnh 10
2.1.1 Một số khái niệm cơ bản 10
2.1.2 Biểu diễn ảnh dưới dạng ma trận 11
2.1.3 Độ phân giải ảnh 12
2.1.4 Sơ lược nhận dạng mẫu 12
2.2 Một số biến đổi ảnh 13
Trang 102.2.1 Biến đổi đơn nhất 13
2.2.2 Biến đổi Fourier rời rạc hai chiều (DFT-2D) 14
2.2.3 Biến đổi cosine rời rạc hai chiều 16
2.2.4 Biến đổi wavelet 17
2.3 Một số phương pháp tăng cường ảnh 21
2.3.1 Phép phân tích thành phần chính 22
2.3.2 Phương pháp loại nhiễu 24
2.4 Sơ lược về đặc trưng của ảnh 25
2.4.1 Đặc trưng màu sắc 25
2.4.2 Đặc trưng kết cấu 26
2.4.3 Đặc trưng hình dạng 26
2.4.4 Đặc trưng cục bố bất biến 27
2.5 Mạng nơron 27
2.5.1 Mạng perceptron một lớp (single layer perceptron networks) 28
2.5.2 Mạng perceptron nhiều lớp (multilayer layer perceptron networks) 30
2.5.3 Các yếu tố ảnh hưởng đến tốc độ hội tụ trong luật học lan truyền 33
Chương 3THIẾT KẾ HỆ THỐNG VÀ THỰC NGHIỆM 37
3.1 Tổng quan 37
3.2 Một số lỗi thường thấy trong quá trình sản xuất bảng mạch điện tử 37
3.3 Phương pháp giải quyết của đề tài 39
3.3.1 Trích đặc trưng 43
3.3.2 Xây dựng mạng nơron nhận dạng lỗi 45
3.4 Kết quả mô phỏng 49
3.4.1 Quá trình học mẫu 51
Trang 113.4.2 Quá trình huấn luyện 51
3.4.3 Kết quả kiểm tra 54
3.4.4 Một số kết quả sau khi thay đổi thống số của mạng 56
3.5 Kết quả trên mô hình thực 59
3.5.1 Mô tả mô hình 59
3.5.2 Tiến trình hoạt động hệ thống kiểm tra 63
Chương 4KẾT LUẬN 80
4.1 Những kết quả đạt được 80
4.2 Đánh giá kết quả 80
4.3 Những hạn chế của đề tài 81
4.4 Dự kiến và hướng phát triển của đề tài 81
TÀI LIỆU THAM KHẢO 82
PHỤ LỤC 84
Trang 12DANH SÁCH CÁC CHỮ VIẾT TẮT
AOI - Automated Optical Inspection
SMT - Surface Mounted Technology
IC - integrated circuit
PCBs - Printed Circuits Boards
DUT - Device Under Test
DFT - Discrete Fourier Transform
DCT - Discrete Cosine Transform
FFT - Fast Fourier Transform
DWT - Discrete Wavelet Transform
CWT - Continuous Wavelet Transform
1D - One Dimensions
2D - Two Dimensions
SIFT - Scale Invariant Feature Transform
MSE - Mean Squared Error
Trang 13DANH SÁCH CÁC HÌNH
Hình 1.1: Hệ thống AOI trong thực tế 2
Hình 1.2: Kết quả kiểm tra mất linh kiện 4
Hình 1.3: Kết quả phát hiện mất linh kiện của K Sundaraj 5
Hình 1.4: Kết quả phát hiện mất linh kiện của Xibing Li and Jianjia Wang 6
Hình 2.1: Khái niệm biến đổi wavelet rời rạc 1D 19
Hình 2.2: Khái niệm biến đổi wavelet rời rạc 2D 21
Hình 2.3: Mô hình mạng perceptron một lớp 28
Hình 2.4: Mô hình mạng truyền thẳng ba lớp 30
Hình 3.1: Vết hàn chuẩn và bị ngắn mạch 38
Hình 3.2: Vết hàn chuẩn, thiếu và quá nhiều 38
Hình 3.3: Ảnh IC chuẩn 38
Hình 3.4: Ảnh IC ngược 38
Hình 3.5: Ảnh đầy đủ linh kiện 39
Hình 3.6: Ảnh thiếu linh kiện 39
Hình 3.7: Dịch vị trí linh kiện 39
Hình 3.8: Linh kiện bị xoay đi một góc 39
Hình 3.9: Hệ thống sử dụng nhiều camera 40
Hình 3.10: Sơ đồ khối quá trình kiểm tra 42
Hình 3.11: Mô hình mạng nơron 47
Hình 3.12: Giao diện chương trình mô phỏng 49
Hình 3.13: Thiết bị thu thập ảnh 49
Hình 3.14: Tập ảnh huấn luyện 50
Hình 3.15: Tạo dữ liệu cho tập ảnh mẫu 51
Hình 3.16: Kết quả trích đặc trưng của tập ảnh mẫu 51
Hình 3.17: Mô hình, thuật toán và quá trính huấn luyện 52
Hình 3.18: Đặc tuyến sai số bình phương trung bình 52
Hình 3.19: Kết quả phân loại trong quá trình huấn luyện 53
Trang 14Hình 3.20: Tiến trình thực hiện kiểm tra 54
Hình 3.21: Kết quả kiểm tra mẫu b1.jpg 55
Hình 3.22: Kết quả kiểm tra mẫu b10.jpg 55
Hình 3.23: Kết quả kiểm tra mẫu b14.jpg 56
Hình 3.24: Kết quả kiểm tra mẫu b14.jpg sau khi được học 56
Hình 3.25: Hệ số học = 0,1, Epochs = 9000, MSE = 0,00002 và 12 nơron lớp ẩn 56
Hình 3.26: Hệ số học = 0,3, Epochs = 9000, MSE = 0,00002 và 12 nơron lớp ẩn 57
Hình 3.27: Hệ số học = 1, Epochs = 9000, MSE = 0,00002 và 12 nơron lớp ẩn 57 Hình 3.28: Hệ số học = 0.5, Epochs = 9000, MSE = 0,00002 và 8 nơron lớp ẩn 58
Hình 3.29: Mô hình hệ thống thực 59
Hình 3.30: Động cơ bước 60
Hình 3.31: Hệ trục di chuyển 60
Hình 3.32: Thiết bị thu nhận ảnh 60
Hình 3.33: Mạch điều khiển 61
Hình 3.34: Giản đồ xung điều khiển motor bước ở chế độ nửa bước 61
Hình 3.35: Giản đồ xung điều khiển motor bước ở chế độ một bước 61
Hình 3.36: Kích thước giá đỡ bảng mạch 62
Hình 3.37: Giao diện chương trình ứng dụng 62
Hình 3.38: Chọn camera cho ứng dụng 65
Hình 3.39: Chọn tập cơ sở dữ liệu cho ứng dụng 65
Hình 3.40: Thiết lập cổng kết nối 66
Hình 3.41: Chọn nguồn sáng và kích thước vùng cần quan sát 66
Hình 3.42: Điều khiển trục di chuyển camera 66
Hình 3.43: Chọn chụp ảnh 66
Hình 3.44: Ảnh và các đặc trưng được trích chọn 67
Hình 3.45: Thiết lập các thông số học và huấn luyện cho ứng dụng 67
Trang 15Hình 3.46: Tập ảnh mẫu DQ 68
Hình 3.47: Trọng số giữa các nơron lớp vào và lớp ẩn của tập dữ liệu DQ 68
Hình 3.48: Trọng số giữa các nơron lớp ẩn và lớp ra của tập dữ liệu DQ 69
Hình 3.49: Kết quả ngõ ra của tập dữ liệu DQ 69
Hình 3.50: Đánh giá sai số của tập dữ liệu DQ 69
Hình 3.51: Kết quả kiểm tra vết chì của tập dữ liệu DQ 70
Hình 3.52: Kết quả kiểm tra mất linh kiện của tập dữ liệu DQ 70
Hình 3.53: Kết quả kiểm tra vết chì bị dính của tập dữ liệu DQ 70
Hình 3.54: Kết quả kiểm tra vết chì bị dính của tập dữ liệu DQ 71
Hình 3.55: Kết quả kiểm tra ảnh tốt của tập dữ liệu DQ 71
Hình 3.56: Kết quả kiểm tra vết chì ảnh b20.jpg của tập dữ liệu DQ 71
Hình 3.57: Kết quả kiểm tra lại vết chì ảnh b20.jpg của tập dữ liệu DQ 72
Hình 3.58: Tập ảnh mẫu DTMF 72
Hình 3.59: Trọng số giữa các nơron lớp vào và lớp ẩn của tập dữ liệu DTMF 73
Hình 3.60 Trọng số giữa các nơron lớp ẩn và lớp ra của tập dữ liệu DTMF 73
Hình 3.61: Kết quả ngõ ra của tập dữ liệu DTMF 73
Hình 3.62: Đánh giá sai số của tập dữ liệu DTMF 74
Hình 3.63: Kết quả kiểm tra ảnh tốt của tập dữ liệu DTMF 74
Hình 3.64: Kết quả kiểm tra mất linh kiện của tập dữ liệu DTMF 74
Hình 3.65: Kết quả kiểm tra mất linh kiện của tập dữ liệu DTMF 75
Hình 3.66: Tập ảnh mẫu RF 75
Hình 3.67: Trọng số giữa các nơron lớp vào và lớp ẩn của tập dữ liệu RF 76
Hình 3.68: Trọng số giữa các nơron lớp ẩn và lớp ra của tập dữ liệu RF 76
Hình 3.69: Kết quả ngõ ra của tập dữ liệu RF 76
Hình 3.70: Đánh giá sai số của tập dữ liệu RF 77
Hình 3.71: Kết quả kiểm tra ảnh tốt của tập dữ liệu RF 77
Hình 3.72: Kết quả kiểm tra mất linh kiện của tập dữ liệu RF 77
Hình 3.73: Kết quả kiểm tra mất linh kiện của tập dữ liệu RF 78
Trang 16Chương 1
TỔNG QUAN ĐỀ TÀI
1.1 Tổng quan chung về lĩnh vực nghiên cứu
Công nghệ bán dẫn dán bề mặt (Surface Mounted Technology – SMT) hiện đang là công nghệ phổ biến và được sử dụng nhiều nhất trong các nhà máy sản xuất các sản phẩm về điện tử Quá trình sản xuất thường bao gồm ba giai đoạn chính: trước tiên một lớp chì dán được phủ lên bề mặt của bảng mạch (solder printing), kế đến là quá trình lấy và đặt linh kiện vào đúng vị trí trên bảng mạch (pick and place)
và cuối cùng là các mối hàn được hình thành bởi giai đoạn gia nhiệt (reflow)
Với giải pháp sử dụng linh kiện dán, quá trình sản xuất sẽ được cải thiện rõ ràng về tốc độ nhưng nguy cơ về các lỗi cũng tăng lên Tại mỗi bước của quá trình sản xuất các lỗi khác nhau có thể xảy ra, ví dụ như mất chì dán (paste missing), chì dán bị dính giữa hai chân linh kiện (paste bridges) trong bước phủ chì, linh kiện bị dịch chuyển (components position shift), mất linh kiện (components missing) trong bước lấy và đặt linh kiện, lỗi mỗi hàn trong bước gia nhiệt Việc các linh kiện giảm đáng kể về kích thước, mật độ linh kiện dày đặc trên bảng mạch và thiết bị thực hiện lắp ráp với mức độ tự động cao làm cho nhiệm vụ phát hiện lỗi càng trở nên quan trọng và khó khắn hơn nhiều
Phát hiện lỗi trong quá trình sản xuất là cực kỳ quan trọng trong quá trình tối
ưu hóa các quy trình công nghiệp, đặc biệt kiểm tra trực quan đóng một vai trò cơ bản, các hình ảnh thường được kiểm tra bởi con người Tuy nhiên, với công nghệ mới việc kiểm tra này không còn được tin cậy Đây là lý do khiến nhiều nhà nghiên cứu đã tích cực tham gia phân tích, phát triển quá trình tự động hóa dây chuyền sản xuất và kiểm tra lỗi trên bảng mạch điện tử Tự động kiểm tra bằng quang học (automated optical inspection - AOI) là công cụ đã được nhiều nhà nghiên cứu phát triển thành công
Trang 17Trong kiểm tra PCBs, AOI thường sử dụng camera quét qua bề mặt các thành phần có trên bảng mạch cần được kiểm tra (Device Under Test - DUT) để phát hiện các lỗi như vết trầy xước, vết bẩn, hở mạch, ngắn mạch, độ mỏng hoặc dày của chì hàn cũng như các thành phần còn thiếu, không chính xác hoặc các thành phần đặt không đúng vị trí
Trong hệ thống AOI có thể có các kỹ thuật chiếu sáng và các thuật toán kiểm tra khác nhau để xử lý tùy thuộc vào thành phần mà nó cần kiểm tra Thông thường,
hệ thống AOI sẽ thu nhận ảnh ban đầu qua camera, phân tích, xử lý và lưu trữ để tạo tập dữ liệu mẫu Sau đó hệ thống sẽ tự động phát hiện những khác biệt từ những ảnh thu nhận sau đó so với ảnh ban đầu và đưa ra những cảnh báo cần thiết
Với chi phí thấp và những ứng dụng của nó làm AOI là một công cụ thiết thực
có thể được ứng dụng cho các dây chuyền sản xuất đại trà hoặc các dây chuyền sản xuất công nghệ cao
Hình 1.1: Hệ thống AOI trong thực tế
Trang 18Một số kết quả nghiên cứu trong và ngoài nước đã công bố
Các kết quả nghiên cứu trong nước:
Không tìm thấy kết quả giống với nội dung cần nghiên cứu trên internet
Hướng nghiên cứu gần:
Ngô Văn Sỹ,Nhận dạng ký tự quang học bằng mạng nơron, Tạp chí khoa học
Như được trình bày trong tạp chí khoa học và công nghệ, Đại Học Đà Nẵng số 4(27), 2008 [6] Tác giả sử dụng mạng nơron lan truyền thẳng có 3 lớp: lớp vào có
150 nút tương ứng với 150 phần tử của vectơ ma trận pixel, lớp ẩn có 250 nơron và lớp ra có 16 nơron để nhận dạng ký tự viết tay Theo Huỳnh Ngọc Lộc, Luận văn thạc sĩ Đại Học Đà Nẵng, 2013 [8] Tác giả cũng sử dụng mạng nơron lan truyền thẳng với số nơron trong lớp ẩn được thực nghiệm từ 10 đến 100 nơron để nhận dạng các biển báo giao thông
Khác với các đề án đã nghiên cứu [6, 7, 8] trong luận văn này đối tượng cần nghiên cứu là các bảng mạch điện tử với các thành phần linh kiện dán
Trang 19Các kết quả nghiên cứu ngoài nước:
Có rất nhiều giải pháp cũng như thuật toán khác nhau cho vấn đề kiểm tra lỗi trên bảng mạch điện tử của các tác giả nước ngoài Tuy nhiên mỗi giải pháp, thuật toán cũng thường cho phép nhận dạng một vài lỗi riêng biệt
Chẳng hạn như trên bài báo IEEE, 2005 [10] tác giả đã cho biết có nhiều hướng đề xuất phương pháp tiếp cận AOI khác nhau chẳng hạn như hệ thống mờ (Fuzzy Systems), mạng nơron (Neural Networks) Một vài hệ thống AOI hoặc mất nhiều thời gian hoặc cần phải có hệ thống chiếu sáng phức tạp chẳng hạn như ánh sáng laser hoặc cần nhiều camera làm cho việc thu nhận ảnh cực kỳ phức tạp
Trong bài báo này tác giả đã đưa ra phương pháp chỉ sử dụng một camera để thu nhận ảnh, sử dụng biến đổi wavelet để trích đặc trưng ảnh và mạng nơron lan truyền thẳng để nhận dạng lỗi
Hình 1.2: Kết quả kiểm tra mất linh kiện
Ahmed Nabil BELBACHIR, Mario LERA, Alessandra FANNI, Augusto
MONTISCI, An Automatic Optical Inspection System for the Diagnosis of Printed Circuits Based on Neural Networks, IEEE, 2005
Trang 20Theo Wseas Transactions on Information Science and Applications tháng
5-2009, tác giả K Sundaraj cũng đã đưa ra giải pháp trừ màu nền để phát hiện linh kiện bị mất hoặc sắp xếp không thẳng hàng (dịch chân IC)
Trong kết quả thực nghiệm, đầu tiên bảng mạch không bị lỗi được thu nhận
để sử dụng làm ảnh tham khảo Sau quá trình học ảnh tham khảo, một bảng mạch tương tự nhưng có chứa các lỗi như mất linh kiện hoặc linh kiện sắp xếp không thẳng hàng được chụp, có một điều chú ý ở đây là hai bảng mạch phải có kích thước chuẩn và được đặt đúng hướng với độ chính xác cao Ảnh mới chụp được trừ từ ảnh tham khảo kết quả thu được sẽ là ảnh nhị phân chứa kết quả mong muốn
Hình 1.3: Kết quả phát hiện mất linh kiện của K Sundaraj
K Sundaraj, PCB Inspection for Missing or Misaligned Components using Background Subtraction, May 2009
Trang 21Theo Xibing Liand Jianjia Wang, tháng 3-2013, tác giả đã sử dụng phương pháp trích đặc trưng theo hình dạng và đường viền của từng linh kiện trên bảng mạch kết hợp với việc phối hợp mẫu để phát hiện lỗi Tác giả cũng đã tối ưu hóa giải thuật tìm kiếm để phát hiện nhanh những nét giống nhau cơ bản của linh kiện
Hình 1.4: Kết quả phát hiện mất linh kiện của Xibing Liand Jianjia Wang
Xibing Liand Jianjia Wang,Defect Detection of SMT Electronic Modules,
Natural Sciences Publishing Cor,1 Mar 2013
Và một số tác giả khác:
Giuseppe Acciani, Gioacchino Brunetti and Girolamo Fornarelli, Application
of Neural Networks in Optical Inspection and Classification of Solder Joints in Surface Mount Technology, IEEE, August 2006
Trang 22Zhou Zeng, LiZhuang Ma and ZuoYong Zheng, Extracting PCB components based on color distribution of highlight areas, February 2010
Mar, Nang Seng Siri and Fookes, Clinton and Prasad, Automatic Solder Joint Defect Classification using the Log-Gabor Filter, K.D.V Yarlagadda 2010
Sanveer Singh, Manu Bharti, Image Processing Based Automatic Visual Inspection System for PCBs, June 2012
Sharat Chandra Bhardwaj, Machine Vision algorithm for PCB Parameters Inspection, NCFAAIIA, 2012
Hệ thống kiểm tra lỗi trên bảng mạch điện tử được đề xuất trong đề tài này hoạt động như một hệ thống nhận dạng mẫu, ở đây mẫu là các bảng mạch điện tử có chứa các thành phần linh kiện dán (SMT) Thông thường một hệ thống nhận dạng mẫu được tạo thành từ ba giai đoạn chính: đầu tiên quá trình chuyển đổi dữ liệu với mục đích thu nhận dữ liệu từ một thiết bị vật lý, xử lý và lưu trữ Kế tiếp là quá trình trích các đặc trưng với mục đích giảm tối đa thời gian tính toán và dữ liệu ngõ vào cần thiết Cuối cùng là quá trình phân loại sẽ đưa ra kết quả cuối cùng về tình trạng của mẫu cần kiểm tra Trong đề án này thiết bị thu thập dữ liệu là PC Camera A4TECH và quá trình nhận dạng lỗi là mạng nơron lan truyền thẳng nhiều lớp (chi tiết phương pháp trích đặc trưng và nhận dạng lỗi sẽ được trình bày trong chương 3)
1.2 Mục tiêu của đề tài
Xây dựng mô hình hệ thống tự động kiểm tra lỗi bảng mạch điện tửtrong công nghệ linh kiện dán
Viết chương trình mô phỏng và chương trình ứng dụng trên máy tính
1.3 Nhiệm vụ và giới hạn của đề tài
Nhiệm vụ của đề tài:
Trang 23 Nghiên cứu các phương pháp trích đặc trưng ảnh dựa vào các thành phần
có trên bảng mạch điện tử
Nghiên cứu và xây dựng cơ sở dữ liệu cho mạng nơron lan truyền thẳng nhằm ứng dụng cho quá trình nhận dạng mẫu
Thực hiện mô phỏng các kết quả bằng phần mềm Matlab R2012b
Thiết kế và thi công mô hình hệ thống kiểm tra bảng mạch điện tử, chạy thử nghiệm và ghi nhận các kết quả
Giới hạn của đề tài:
Ứng dụng mạng nơron kiểm tra các khuyết điểm như: vết chì hàn, linh kiện bị mất và linh kiện bị đặt lệch trong công nghệ linh kiện dán
1.4 Phương pháp nghiên cứu
Để thực hiện đề tài này cần kết hợp thực hiện các phương pháp nghiên cứu sau:
Phương pháp nghiên cứu lý thuyết: nghiên cứu các vấn đề trích đặc trưng ảnh, mạng nơron và các phương pháp đã được nghiên cứu trước đây
Phương pháp mô phỏng: sử dụng phần mềm Matlab R2012b thực hiện mô phỏng và lập trình *m file để nhận dạng lỗi
Phương pháp kiểm tra thực nghiệm: thiết kế và thi công mô hình hệ thống kiểm tra bảng mạch điện tử, viết chương trình ứng dụng trên máy tính để điều khiển và ghi nhận các kết quả
1.5 Ý nghĩa thực tiễn và tính cấp thiết của đề tài
Kiểm tra trực quan là một bổ sung hữu ích cho quá trình kiểm tra sản phẩm Trong quá trình kiểm tra bảng mạch điện tử, con người vẫn thực hiện hầu hết các công đoạn kiểm tra nhưng với việc kích thước của linh kiện ngày càng nhỏ và được
bố trí dày đặc trên bảng mạch làm cho mức độ tin cậy khi con người kiểm tra không còn cao, đặc biệt là khi thay đổi bảng mạch kiểm tra và sự mỏi mệt về thị giác chắc
Trang 24chắn sẽ dẫn đến việc bỏ qua một số lỗi, đó chính là lý do AOI đang dần thay thế con người trong các dây chuyền lắp ráp bảng mạch điện tử
Hệ thống tự động kiểm tra bảng mạch điện tử bằng phương pháp quang học (Automated Optical Inspection - AOI) đã được nghiên cứu từ rất lâu trên thế giới nhưng ở cấp độ nghiên cứu trong nước thì đề tài còn tương đối mới mẻ, cần được nghiên cứu và phát triển thành những sản phẩm thiết thực thay thế các sản phẩm nước ngoài với chi phí rất cao
Kết quả đề tài nếu được đầu tư tốt hơn (thời gian – kinh phí) sẽ tạo ra một công
cụ có thể ứng dụng tốt trong các dây chuyền sản xuất bảng mạch điện tử trong nước với giá thành phù hợp
Trang 25Chương 2
CƠ SỞ LÝ THUYẾT
2.1.1 Một số khái niệm cơ bản
Một ảnh màu được định nghĩa như một hàm độ sáng 2 chiều (2-D) f(x,y), trong đó x, y là hai biến số không gian Giá trị của hàm f tại điểm f(x,y) tỉ lệ với độ sáng của ảnh tại điểm đó hay còn được gọi là cường độ của ảnh, nó chính là mức
xám của ảnh tại điểm đó Nếu ta có ảnh nhiều mầu thì hàm f là một véctơ, mỗi thành phần của véctơ biểu thị độ sáng của ảnh tại điểm f(x,y) tương ứng với một dải
màu xác định
Ảnh số là ảnh f(x,y) được số hóa cả về tọa độ không gian lẫn độ sáng Nó
được biểu thị bằng mảng số nguyên hai chiều Giá trị của độ sáng đã được số hóa được gọi là giá trị của mức xám Như vậy, một ảnh số có thể được biểu thị bằng một mảng dữ liệu với một số lượng hữu hạn các phần tử, mỗi phần tử có một vị trí
và giá trị riêng biệt Mỗi phần tử này được gọi là một pixel hay pel cho một phần tử của một ảnh
Một ảnh f(x,y) có thể là liên tục về cả biến số không gian x và y cũng như về
biên độ của nó Việc chuyển một ảnh liên tục thành một ảnh số cần phải thực hiện quá trình số hóa cả biến số không gian lẫn biên độ Số hóa các giá trị tọa độ được gọi là sự lấy mẫu, số hóa các giá trị biên độ được gọi là lưỡng tử hóa Khi đó x, y và
các giá trị biện độ của f là những đại lượng rời rạc và hữu hạn những ảnh như vậy
được gọi là ảnh số
Nhờ sự lấy mẫu và lượng tử hóa ảnh f(x,y) ta sẽ thu được một ma trận tạo
thành từ những số thực Ma trận với các phần tử số thực đó còn được gọi là mảng
dữ liệucủa ảnh
Trang 26Ảnh nhị phân là ảnh mà các giá trị mức xám của nó chỉ nhận giá trị 1(trắng) hoặc 0 (đen), như vậy mỗi điểm ảnh trong ảnh nhị phân được biểu diễn bởi 1 bit
Ảnh trắng đen (grayscale) là ảnh được biểu diễn bởi một ma trận hai chiều, trong đó giá trị của mỗi phần tử cho biết độ sang hay mức xám của điểm ảnh tại đó
Ảnh màu RGB là ảnh mà một điểm ảnh được biểu diễn bằng 3 giá trị (R, G, B) trong đó R, G, B là các giá trị mức xám và được biểu biểu diễn bằng 1 byte
2.1.2 Biểu diễn ảnh dưới dạng ma trận
Một ảnh số có thể được biểu diễn bởi 1 ma trận ảnh 2 chiều, với ảnh màu là một chuỗi của những dãy 2 chiều và mỗi dãy tương ứng với 1 dải màu
Mỗi phần tử trong dãy ảnh tương ứng với 1 điểm ảnh (pixel) Một pixel tương ứng với 1 phần tử vật thể theo vật lý trong không gian 3D, vật thể này bị chiếu sáng bởi ánh sáng
Mỗi dãy ảnh có thể có hàng trăm pixel và có thể có rất nhiều giá trị mức xám khác nhau
Với ảnh trắng đen được xem như hàm cường độ sáng 2 chiều f(x,y)
Giá trị của hàm tại một vị trí (x, y) đại diện cho cường độ của ảnh tại vị trí đó.Giả sử ta có ảnh được biểu diễn dưới dạng ma trận như sau:
)1,1()0,1(
)1,1()
0,1(
)1,0(
)1,0()
0,0(
),(
N M f M
f M
f
N f f
f
N f f
f
y x f
Với 0 ≤ f(x,y) ≤ G - 1
Trong đó: + MxN tổng số pixel
+ G giá trị mức xám là những lũy thừa nguyên của 2 (N = 2n , G = 2m) Với ảnh màu 8 bit, một mức grey của 1 pixel sẽ có giá trị từ 0 đến 255
Trang 272.1.3 Độ phân giải ảnh
Độ phân giải (Resolution) của ảnh là mật độ điểm ảnh được ấn định trên một ảnh số được hiển thị Theo định nghĩa, khoảng cách giữa các điểm ảnh phải được chọn sao cho mắt người vẫn thấy được sự liên tục của ảnh Việc lựa chọn khoảng cách thích hợp tạo nên một mật độ phân bổ, đó chính là độ phân giải và được phân
bố theo trục x và y trong không gian hai chiều
2.1.4 Sơ lƣợc nhận dạng mẫu
Nhận dạng tự động (automatic recognition), mô tả đối tượng, phân loại và phân nhóm các mẫu là những vấn đề quan trọng trong thị giác máy, được ứng dụng trong nhiều ngành khoa học khác nhau Tuy nhiên, một câu hỏi đặt ra là: mẫu (pattern) là gì? Watanabe, một trong những người đi đầu trong lĩnh vực này đã định nghĩa: “Ngược lại với hỗn loạn (chaos), mẫu là một thực thể (entity) được xác định một cách ang áng (vaguely defined) và có thể gán cho nó một tên gọi nào đó” Ví dụ mẫu có thể là ảnh của vân tay, ảnh của một vật nào đó được chụp, một chữ viết, khuôn mặt người hoặc một ký đồ tín hiệu tiếng nói Khi biết một mẫu nào đó, để nhận dạng hoặc phân loại mẫu đó có thể:
Hoặc sự phân loại có giám sát (supervised classification), chẳng hạn phân tích phân biệt (discriminant analyis), trong đó mẫu đầu vào được định danh như một thành phần của một lớp đã xác định
Hoặc sự phân loại không có giám sát (unsupervised classification hay clustering) trong đó các mẫu được gán vào các lớp khác nhau dựa trên một tiêu chuẩn đồng dạng nào đó Các lớp này cho đến thời điểm phân loại vẫn chưa biết hay chưa được định danh
Hệ thống nhận dạng tự động thường bao gồm ba khâu tương ứng với ba giai đoạn chủ yếu sau đây:
Thu nhận dữ liệu và tiền xử lý
Biểu diễn dữ liệu
Trang 28 Nhận dạng và đưa ra quyết định
Có nhiều cách tiếp cận khác nhau trong lý thuyết nhận dạng như:
So sánh mẫu dựa trên các đặc trưng được trích chọn
Phân loại thống kê
So sánh cấu trúc
Phân loại dựa trên mạng nơron nhân tạo
Trong các ứng dụng rõ ràng là không thể chỉ dùng có một cách tiếp cận đơn
lẻ để phân loại “tối ưu” do vậy cần sử dụng cùng một lúc nhiều phương pháp và cách tiếp cận khác nhau Do vậy, các phương thức phân loại tổ hợp hay được sử dụng khi nhận dạng và nay đã có những kết quả có triển vọng dựa trên thiết kế các
hệ thống lai (hybrid system) bao gồm nhiều mô hình kết hợp
Việc giải quyết bài toán nhận dạng trong những ứng dụng mới, nảy sinh trong cuộc sống không chỉ tạo ra những thách thức về thuật giải, mà còn đặt ra những yêu cầu về tốc độ tính toán Đặc điểm chung của tất cả những ứng dụng đó là những đặc điểm đặc trưng cần thiết thường là nhiều, không thể do đề xuất, mà phải được trích chọn dựa trên các thủ tục phân tích dữ liệu
Xử lý ảnh là quá trình thực hiện một loạt các phép toán lên tín hiệu ảnh nhằm thu được tín hiệu phù hợp nhất phục vụ cho mục đích thực tế Một ảnh lại được biểu
diễn bởi một hàm với hai biến số không gian f(x,y) Giá trị của hàm tại mỗi ví trí
không gian (x,y) biểu thị cường độ của ảnh tại điểm đó nên về phương diện toán học có thể nói các phép biến đổi chỉ là một cách biểu diễn khác của một ảnh
2.2.1 Biến đổi đơn nhất
Một ảnh có thể được biểu diễn với dạng tích của hai vector
Biến đổi của một ảnh f được viết như sau:
Trang 29g = hcT f hr (2.1) Nếu hc và hr được chọn là đơn nhất thì biểu thức trên được gọi là biến đổi đơn nhất
Ma trận được gọi là đơn nhất khi
Trong đó: UT*
được gọi là ma trận chuyển vị và I là ma trận đơn vị
Thay hc bởi U và hr bởi V trong (2.1) ta được:
Lựa chọn U, V sao cho ảnh biến đổi g là một ma trận chéo
Quá trình này gọi là phân giải (phân rả) ma trận Nó đơn giản là cách biểu diễn ảnh bởi các vector, trong đó các vector là các vector riêng của ggT và gTg và hệ
số là trị riêng của các thành phần này
Ma trận g có thể được biểu diễn dưới dạng:
2.2.2 Biến đổi Fourier rời rạc hai chiều (DFT-2D)
Phép biến đổi Fourier rời rạc hai chiều là phép biểu đổi một ảnh thành tổng các tín hiệu sin phức hai chiều có biên độ, pha và tần số thay đổi Biến đổi Fourier
Trang 30đóng vai trò rất quan trọng trong phân tích các đặc trưng của ảnh, trong nén ảnh và trong việc cải thiện chất lượng của một ảnh khi khôi phục lại
Biến đổi Fourier thuận:
Nếu f(m, n) là một hàm rời rạc với biến m và n với 0 ≤ m, n ≤ M-1, N-1 thì biến đổi Fourier rời rạc hai chiều MxN DFT 2D của nó có dạng:
Hai hệ thức trên tạo thành cặp biến đổi Fourier rời rạc hai chiều F(p,q) là các
hệ số Fourier của tín hiệu hai chiều f(m,n) Thành phần F(0,0) được gọi là thành phần một chiều Công thức biến đổi Fourier ngược cho thấy ảnh f(m,n) có thể được biểu thị bằng tổng các tín hiệu sin phức với các thành phần tần số và biên độ khác nhau
Các công thức trên cũng có thể được biểu diễn dưới dạng ma trận Thật vậy,
nếu ta định nghĩa ma trận W M với các phần tử:
Trang 31f = WM−1 F WN−1 (2.11) DFT 2 chiều có thể thực hiện qua hai biến đổi DFT một chiều:
2.2.3 Biến đổi cosine rời rạc hai chiều
Biến đổi cosin rời rạc hai chiều (DCT-2D) là phép biểu đổi một ảnh thành tổng các tín hiệu sin hai chiều có biên độ, pha và tần số thay đổi Trái với biến đổi FFT-2D, biến đổi DCT-2D là phép biến đổi thực và tất cả các thông tin của ảnh tập trung trong một vùng rất nhỏ các hệ số của DCT
Biến đổi thuận:
Nếu ma trận ảnh MxN là f(m,n) thì biến đổi DCT-2D của nó được định nghĩa bằng hệ thức:
𝐹 𝑝, 𝑞 = 4
𝑀𝑁 𝛾𝑝𝛾𝑞 𝑓 𝑚, 𝑛 𝑐𝑜𝑠
𝜋 2𝑚 + 1 𝑝2𝑀𝑁−1
Trang 32f m, n = γpγq F p, q cosπ 2m + 1 p
2MN−1
(2.15) Trong đó p = 0, 1…, M-1 và q = 0, 1… , N-1
2.2.4 Biến đổi wavelet
Biến đổi wavelet liên tục (CWT) 1D
Gọi f(x) là tín hiệu 1D, biến đổi wavelet liên tục (CWT) của f(x) được định
nghĩa như sau:
W(s,b) = 1
s f x 0∗ +∞
−∞
x − s
Trong đó:
W(s,b) là hệ số biến đổi wavelet liên tục của f(x), với s là biến số tỉ lệ
(nghịch đảo của tần số) và b là biến số dịch chuyển đặt trưng cho vị trí
ψ0 là hàm wavelet được lấy tỉ lệ bởi tham số s và được dịch chuyển bởi tham số b từ hàm wavelet mẹ
ψ0* là liên hợp phức của ψ0
Phương trình trên cho thấy, phép biến đổi wavelet là một ánh xạ chuyển hàm
một biến f(x) thành hàm W(s,b) phụ thuộc hai biến số là biến tỉ lệ s và biến dịch
chuyển b
Trang 33Biến đổi wavelet 1D ngƣợc:
−∞
(2.17)
Trong đó:
cg là hằng số phụ thuộc vào hàm wavelet được sử dụng
Hàm wavelet ψ0 được sử dụng thay cho hàm liên hiệp phức của nó
Biến đổi wavelet liên tục (CWT) 2D
Phép biến đổi wavelet 2-D được cho bởi phương trình:
W(s,B) =1
s f R 0∗ +∞
Tín hiệu f(R) là hàm theo hai biến không gian x1 và x2
Biến đổi wavelet 2-D ngƣợc:
f R = 1
cg dB+∞
−∞
1
s3 W(s,B).+∞
0
0 R − B
s ds (2.21)
Trang 34Biến đổi wavelet rời rạc (DWT) 1D
Để tính các hệ số của phép biến đổi wavelet liên tục trên máy tính, hai tham
số tỉ lệ và dịch chuyển không thể nhận các giá trị liên tục mà nó phải là các giá trị rời rạc Khái niệm của biến đổi wavelet rời rạc được minh họa như hình 2.1
Trong đó:
S(n) là tín hiệu vào
h[n] đáp ứng bộ lọc thông thấp và g[n] là đáp ứng bộ lọc thông cao
2 tín hiệu được lấy mẫu giảm xuống 2
S1,H[n] ngõ ra của bộ lọc thông cao
S1,L[n] ngõ ra của bộ lọc thông thấp
Ở đây g[n] giống như hàm wavelet mẹ (mother wavelet) và h[n] giống như hàm tỉ lệ (scaling function) trong biến đổi wavelet liên tục
Hình 2.1: Khái niệm biến đổi wavelet rời rạc 1D
Mối quan hệ giữa hàm tỉ lệ và hàm wavelet được cho bởi:
S1,H[n]
2
Trang 35Các phép lọc được tiến hành với nhiều tầng (level) khác nhau và để khối lượng tính toán không tăng, khi qua mỗi bộ lọc, tín hiệu được lấy mẫu xuống 2
Tại mỗi tầng lọc, biểu thức của phép lọc được cho bởi công thức:
h N − 1 − n = −1 ng(n) (2.26) Trong đó, N là số mẫu trong tín hiệu
Tín hiệu S(n) có thể được tái tạo theo các bước ngược lại gọi là phép biến đổi wavelet rời rạc ngược (Inverse Discrete Wavelet Transform -IDWT) được cho bởi:
S n = yH k g 2k − n + yL k h 2k − n
k
(2.27)
Trong đó, y H (k) và y L (k) lần lượt là tín hiệu ngõ ra sau khi đi qua các bộ lọc
thông cao và bộ lọc thông thấp đã đề cập ở trên
Biến đổi wavelet rời rạc (DWT) 2D
Biến đổi wavelet rời rạc 2D được minh họa như hình 2.2 Nó được xem như
là sự kết hợp của 2 biến đổi wavelet 1D Trước tiên chúng ta thực hiện biến đổi wavelet 1D theo hàng (n) và sau đó thực hiện biến đổi wavelet 1D theo cột (m)
Như vậy, với phép khai triển này thì một tín hiệu ảnh 2D sẽ được phân tích thành 4 tín hiệu ảnh 2D con
Tín hiệu S1L giống với ảnh gốc, S2 , S3 và S4 tương ứng với khía cạnh ngang, đứng và chéo
Trang 36Hình 2.2: Khái niệm biến đổi wavelet rời rạc 2D
Gọi x và y là hai trục tọa độ của tín hiệu 2-D, L là phép lọc thông thấp (h[n]),
H là phép lọc thông cao (g[n]), phép biến đổi wavelet 2-D được tính cụ thể như sau:
cột
S2,H1(m,n)
2 g[m]
h[m]
hàng g[n] 2
v1,L(m,n)
g[m] 2
S4,H3(m,n)
Trang 372.3.1 Phép phân tích thành phần chính
Là phép biến đổi tuyến tính hệ trục tọa độ này sang hệ trục tọa độ khác sao cho các trục của hệ tọa độ mới nằm trùng với các hướng có phân bố giá trị mức xám dàn trải nhiều nhất của các pixel ảnh Mỗi pixel mang 3 giá trị mức xám
Ảnh màu chứa nhiều dải phổ màu, mỗi dải tương ứng với một thành phần phổ màu Mỗi dải phổ màu là một ảnh với cường độ sáng tương ứng với một thành phần phổ màu cụ thể nào đó tại mỗi pixel
Ba dải phổ màu chính RGB, trong đó đỏ (Red), xanh lá cây (Green) và xanh dương (Blue)
Các giá trị mức xám cực đại của ảnh có thể không phân bố dọc theo bất kỳ một trục tọa độ nào mà theo một trục khác
Trang 38b6 Lập ma trận chuyển đổi A với giá trị hàng là các vector riêng
Trang 39b7 Tìm các giá trị pixel trong hệ trục tọa độ mới
Bằng tích của từng giá trị các pixel trong hệ trục tọa độ ban đầu với ma trận
b8 Lập ma trận giá trị các pixel trong hệ trục tọa độ thành phần chính P1, P2, P3
2.3.2 Phương pháp loại nhiễu
Ảnh có thể xuất hiện rất nhiều nhiễu vì thế ta nên có một số kỹ thuật để giảm nhiễu
Lọc theo thứ bậc: là lọc giá trị ngõ ra phụ thuộc vào dãy pixel theo giá trị chói bên trong cửa sổ lọc
Lọc theo thứ tự bậc là lọc trung vị (median): là giá trị mức xám với pixel trung tâm của cửa sổ được thay thế bằng giá trị trung vị của tất cả pixel trong cửa
Nhiễu cộng: thường có hai loại chính là nhiễu xung (impulse) và nhiễu Gauss
Sử dụng lọc theo thứ tự bậc (rank order filtering) để loại bỏ nhiễu xung
Dùng lọc nhẵn (smoothing) hoặc lọc thông thấp để loại bỏ nhiễu Gauss
Nhiễu nhân: thường do sự thay đổi của ánh sáng
Trang 40Chúng ta thấy rằng mỗi hàm ảnh f(x,y) là sự kết hợp của 2 yếu tố: hàm ánh sáng i(x,y) và hàm tương phản r(x,y)
𝑓 𝑥, 𝑦 = 𝑖 𝑥, 𝑦 𝑟(𝑥, 𝑦) (2.47) Nếu lấy logarit 2 vế của phương trình trên ta được:
𝑙𝑛𝑓 𝑥, 𝑦 = 𝑙𝑛𝑖 𝑥, 𝑦 + 𝑙𝑛𝑟(𝑥, 𝑦) (2.48) Sau đó chúng ta lọc ảnh logarit bằng cách lọc đồng hình (homomorphic filter)
Lọc đồng hình sẽ tăng cường tần số cao và khữ tần số thấp vì thế sự thay đổi ánh sáng sẽ được giảm trong khi những cạnh và chi tiết sẽ rõ ràng hơn
Về nội dung đặc trưng ảnh có thể được xem xét dưới 4 dạng hình thức sau: màu sắc, kết cấu, hình dạng và đặc trưng cục bộ SIFT (Scale-InvariantFeature Transform)
2.4.1 Đặc trƣng màu sắc
Không gian màu RGB
Sử dụng phổ biến trong ảnh kỹ thuật số, mỗi điểm ảnh thì được biểu diễn bằng 3 kênh màu Red [0, 255], Green [0, 255] và Blue [0, 255]
Không gian màu HSV
Thường được sử dụng trong các kỹ thuật sử lý ảnh, nó cho biết sắc độ, cường
độ của màu và độ sáng
Mỗi điểm ảnh được biểu diễn bởi 3 giá trị: Hue (sắc độ) cho biết tần số xuất hiện tương đối của màu (có tính đỏ, có tính xanh, ), Value (giá trị) cho biết độ tối của màu trong ảnh (cảm nhận độ chiếu sáng), Saturation (độ bão hòa) biểu diễn độ mạnh của màu
Lƣợc đồ ảnh