A Simple Automated Void Defect Detection for Poor Contrast X-ray Images of BGA

Similar documents
An Automated Image-based Method for Multi-Leaf Collimator Positioning Verification in Intensity Modulated Radiation Therapy

EE368 Project Report CD Cover Recognition Using Modified SIFT Algorithm

IRIS SEGMENTATION OF NON-IDEAL IMAGES

Journal of Industrial Engineering Research

A Fast and Accurate Eyelids and Eyelashes Detection Approach for Iris Segmentation

A Constrained Delaunay Triangle Mesh Method for Three-Dimensional Unstructured Boundary Point Cloud

A Keypoint Descriptor Inspired by Retinal Computation

CS443: Digital Imaging and Multimedia Binary Image Analysis. Spring 2008 Ahmed Elgammal Dept. of Computer Science Rutgers University

Filtering Images. Contents

Comparison between Various Edge Detection Methods on Satellite Image

Robust Automated Void Detection in Solder Balls and Joints

Object Shape Recognition in Image for Machine Vision Application

SUMMARY: DISTINCTIVE IMAGE FEATURES FROM SCALE- INVARIANT KEYPOINTS

Time Stamp Detection and Recognition in Video Frames

Chapter 11 Representation & Description

Coarse-to-fine image registration

Reducing Points In a Handwritten Curve (Improvement in a Note-taking Tool)

Robust Lip Contour Extraction using Separability of Multi-Dimensional Distributions

Digital Image Processing. Prof. P.K. Biswas. Department of Electronics & Electrical Communication Engineering

Keywords: Thresholding, Morphological operations, Image filtering, Adaptive histogram equalization, Ceramic tile.

OBJECT detection in general has many applications

C E N T E R A T H O U S T O N S C H O O L of H E A L T H I N F O R M A T I O N S C I E N C E S. Image Operations II

Cover Page. Abstract ID Paper Title. Automated extraction of linear features from vehicle-borne laser data

OCR For Handwritten Marathi Script

Image processing. Reading. What is an image? Brian Curless CSE 457 Spring 2017

Iterative Removing Salt and Pepper Noise based on Neighbourhood Information

EECS150 - Digital Design Lecture 14 FIFO 2 and SIFT. Recap and Outline

Robust and Accurate Detection of Object Orientation and ID without Color Segmentation

Comparative Study of ROI Extraction of Palmprint

EE368 Project: Visual Code Marker Detection

Performance Evaluation of Different Techniques of Differential Time Lapse Video Generation

CHAPTER 4 DETECTION OF DISEASES IN PLANT LEAF USING IMAGE SEGMENTATION

Image Processing Fundamentals. Nicolas Vazquez Principal Software Engineer National Instruments

HOUGH TRANSFORM CS 6350 C V

UMASIS, AN ANALYSIS AND VISUALIZATION TOOL FOR DEVELOPING AND OPTIMIZING ULTRASONIC INSPECTION TECHNIQUES

A Method for Identifying Irregular Lattices of Hexagonal Tiles in Real-time

Multi-pass approach to adaptive thresholding based image segmentation

GENERAL AUTOMATED FLAW DETECTION SCHEME FOR NDE X-RAY IMAGES

Eyes extraction from facial images using edge density

Surface Reconstruction. Gianpaolo Palma

DEVELOPMENT OF POSITION MEASUREMENT SYSTEM FOR CONSTRUCTION PILE USING LASER RANGE FINDER

Towards the completion of assignment 1

Chapter 4. Clustering Core Atoms by Location

Accurate 3D Face and Body Modeling from a Single Fixed Kinect

Binary Image Processing. Introduction to Computer Vision CSE 152 Lecture 5

Measurements using three-dimensional product imaging

Motion Detection Algorithm

Image-Based Competitive Printed Circuit Board Analysis

Fast and accurate automated cell boundary determination for fluorescence microscopy

Fabric Defect Detection Based on Computer Vision

A New Algorithm for Shape Detection

Segmentation algorithm for monochrome images generally are based on one of two basic properties of gray level values: discontinuity and similarity.

Application Note AN Power QFN Technology Inspection Application Note

The SIFT (Scale Invariant Feature

A Nondestructive Bump Inspection in Flip Chip Component using Fuzzy Filtering and Image Processing

An Edge Based Adaptive Interpolation Algorithm for Image Scaling

CoE4TN4 Image Processing. Chapter 5 Image Restoration and Reconstruction

A reversible data hiding based on adaptive prediction technique and histogram shifting

Inspection of Rubber Cap Using ISEF (Infinite Symmetric Exponential Filter): An Optimal Edge Detection Method

[10] Industrial DataMatrix barcodes recognition with a random tilt and rotating the camera

CHAPTER 3 DISPARITY AND DEPTH MAP COMPUTATION

CIRCULAR MOIRÉ PATTERNS IN 3D COMPUTER VISION APPLICATIONS

Computer Vision. Image Segmentation. 10. Segmentation. Computer Engineering, Sejong University. Dongil Han

Analysis of Image and Video Using Color, Texture and Shape Features for Object Identification

MULTI ORIENTATION PERFORMANCE OF FEATURE EXTRACTION FOR HUMAN HEAD RECOGNITION

Using Edge Detection in Machine Vision Gauging Applications

Development of an automated bond verification system for advanced electronic packages

Sinhala Handwriting Recognition Mechanism Using Zone Based Feature Extraction

Adaptive Local Thresholding for Fluorescence Cell Micrographs

Alignment and Other Challenges in Reconstructing Cryotomograms with IMOD

A New Technique of Extraction of Edge Detection Using Digital Image Processing

SIMULATIVE ANALYSIS OF EDGE DETECTION OPERATORS AS APPLIED FOR ROAD IMAGES

UMASIS, an analysis and visualization tool for developing and optimizing ultrasonic inspection techniques

Practical Image and Video Processing Using MATLAB

Lecture 7: Most Common Edge Detectors

Auto-focusing Technique in a Projector-Camera System

82 REGISTRATION OF RETINOGRAPHIES

An Approach for Real Time Moving Object Extraction based on Edge Region Determination

A Real Time GIS Approximation Approach for Multiphase Spatial Query Processing Using Hierarchical-Partitioned-Indexing Technique

An adaptive container code character segmentation algorithm Yajie Zhu1, a, Chenglong Liang2, b

COLOR AND SHAPE BASED IMAGE RETRIEVAL

Operators-Based on Second Derivative double derivative Laplacian operator Laplacian Operator Laplacian Of Gaussian (LOG) Operator LOG

Edge and local feature detection - 2. Importance of edge detection in computer vision

K-Means Clustering Using Localized Histogram Analysis

Report: Reducing the error rate of a Cat classifier

A Visual Programming Environment for Machine Vision Engineers. Paul F Whelan

Fast Noise Level Estimation from a Single Image Degraded with Gaussian Noise

Hybrid filters for medical image reconstruction

Lightcuts. Jeff Hui. Advanced Computer Graphics Rensselaer Polytechnic Institute

Biomedical Image Analysis. Point, Edge and Line Detection

RESTORATION OF DEGRADED DOCUMENTS USING IMAGE BINARIZATION TECHNIQUE

Vivekananda. Collegee of Engineering & Technology. Question and Answers on 10CS762 /10IS762 UNIT- 5 : IMAGE ENHANCEMENT.

Detection of Narrow Gaps Using Hessian Eigenvalues for Shape Segmentation of a CT Volume of Assembled Parts

Salient Point SUSAN 3D operator for triangles meshes

Image Processing: Final Exam November 10, :30 10:30

CT Reconstruction with Good-Orientation and Layer Separation for Multilayer Objects

Motion Detection. Final project by. Neta Sokolovsky

Historical Handwritten Document Image Segmentation Using Background Light Intensity Normalization

Image Segmentation for Image Object Extraction

CIS UDEL Working Notes on ImageCLEF 2015: Compound figure detection task

Transcription:

Proceedings of the 3rd International Conference on Industrial Application Engineering 2015 A Simple Automated Void Defect Detection for Poor Contrast X-ray Images of BGA Somchai Nuanprasert a,*, Sueki Baba b, Takashi Suzuki a a Department of Systems Innovation, Osaka University, 1-3 Machikaneyama-cho, Toyonaka 560-8531, Japan b BEAMSENSE Co.Ltd., 2-19-16 Izumi-cho, Suita 564-0041, Japan *Corresponding Author: somchai@sigmath.es.osaka-u.ac.jp Abstract For surface mount technology, the occurrence of void defects inside solder balls during the ball grid array (BGA) reflow is an important problem. In this paper, we design a simple automated system for void detection. First, it can analyze the X-ray images obtained from arbitrary rotating angles and it is robust against occluded balls caused by some interference. Second, we apply the new method, which is to average multiple outputs of local contrast enhancement over different block sizes, for treating poor contrast images in order to reduce some false voids while the accuracy of void location and void area is reasonably preserved. These conclusions were confirmed by our experiments. Keywords: Solder ball segmentation, void detection, local contrast enhancement, BGA (a) Rotating angle and solder ball arrangement pattern (b) Identify center of occluded solder balls (yellow) for both modes 1. Introduction A ball grid array (BGA) is a type of surface-mount that is being used widely for integrated circuits and applied increasingly in the manufacture of electronic circuits. The BGA offers many advantages; however, the process of BGA assembly itself is one of the key concerns. Void defect can be defined as holes formed inside a solder ball due to the amount of outgassing flux that gets entrapped in the solder ball during the reflow process. Based on the inspection techniques (1-5), the void can be visualized as a brighter area inside the solder ball on a 2D X-ray image. Because the manual inspection causes high variability and time consuming, then the manufacturer has changed from using human-based analysis to the intelligent software instead. Therefore, the research of automated void detection (c) A typical image (1-4) (left) versus a poor contrast image (right) Fig.1. Overview of X-ray system and practical problems algorithms has been actively developed (2-5) in order to obtain the better accuracy, speed and robustness when dealing with different types of practical factors, e.g., noise, interference, and various quality of images acquired from different setting in X-ray machines, especially the case of low contrast images. In this paper, we present a simple framework; however, DOI: 10.12792/iciae2015.054 300 2015 The Institute of Industrial Applications Engineers, Japan.

Fig. 2. Block diagram of the proposed methods for void detection inside solder balls. it is capable to: 1) analyze image acquired from different rotating angles (both flat and oblique modes) producing different patterns of ball arrangement (see Fig. 1a), 2) identify the center of solder ball occluded by some interfering components effectively using the techniques based on the Delaunay triangulation and the unit lattice verification (see Fig. 1b), and 3) be robust against the case of poor contrast image (see Fig. 1c) in the sense of giving a good estimate of void location and a fair estimation of void area. The first parameter, void location inside ball, is emphasized as the primary root cause for the loss of solder joint integrity (1) and the second parameter, void area, is required as 25% or less cumulative voiding percentage in solder balls based on the IPCA610D standard (1-3). We claim that the new ideas mentioned in 2) and 3) are different to previous existing methods (2-5). 2. Proposed methods 2.1 Individual solder ball segmentation from the background of image In typical 2D X-ray images (gray scale image, 0-255 levels), the solder balls are often interfered by other board components (2-3), for example some joints normally create some occluded solder balls. Then, the robust segmentation algorithms that are able to deal with different kinds of interfering backgrounds are essentially preferred. 301

(a) Disadvantage of conventional method (2-4) (c) Advantage of proposed method (circle detection) (b) Disadvantage of conventional method (2-4) (d) Robustness of the simple circle detection against occluded balls. (e) Eight missing balls are simulated at random (f) Two types of missing ball locations (on long edge or inside large triangle) (g) Verify each candidate and keep the balls passing criteria (h) Flow chart of missing ball correction method Fig. 3. Solder balls segmentation and the proposed method (Delaunay triangulation) to correct occluded/missing balls. Traditionally, a proper threshold of intensity (2-4) has to be chosen to separate between the group of interfering backgrounds and the group of solder balls. Specifically, the method applied in Said et al. s works (2-3) is relied on the 302

(a) 0,0,0 (b),, 0 (c) 0,0, is the local minimizer of,, Fig. 4. Determine the center of missing ball candidate in searching windows by minimizing the objective function,, over,, where is obtained from the Hough transform and is denoted as a true solder ball radius assumption of two separated clusters of intensity, which is not true in general. To calculate this threshold, it is better to use the conventional OTSU method instead (4). These earlier works (2-4) used this threshold for binary image conversion and selected the solder ball region based on area, shape, and the arrangement pattern of each labeled region. By contrast, we here applied this global threshold to reject some artifacts only (their intensity values assigned to 255 as white pixels in the new gray scale image) before cooperating to our next proposal when dealing with the presence of complicated backgrounds (see Fig. 2a-2b). For ball segmentation, we propose to use the Hough transform, which is the conventional circle detection algorithm (including circular shapes) to locate the possible centers of solder balls. Typically, this algorithm is quite slow when calculating on a large or intense image then in our method; the Hough transform is calculated particularly on the resized image instead of its original size. The final center and radius values are recovered by just scaling them back. Moreover, to be user friendly, the default input of radius range applied in the Hough transform is intentionally widen; consequently some false circles are detected but the wanted balls can be simply selected based on checking the intensity distribution inside each circle (see Fig. 2c-2d). We use the results depicted in Fig. 3a-3d to show that the circle detection simply outperforms the previous conventional method (2-3) in term of estimating the correct centers of occluded solder balls (inside blue rectangles) while Said et al. s works (2-3) have to do more correction to interpolate the centers of occluded balls using the knowledge of nearby balls with respect to the specific arrangement pattern focusing on 0,45,90 directions. Furthermore, since we have not provided the specific parameter set of inputs in Hough transform for different images. Then, in general case, it is possible to have some missing (undetected) balls; see Fig. 3d (yellow circle). To solve this problem, firstly, we calculated the Delaunay triangulation from the centers of all detected balls, for illustration in Fig. 3e-3f using eight randomly simulated missing balls, and then there are two types of missing ball found, such as locating on the long edge or inside the large triangle, where at least one ball can be inscribed inside. In the next step, we check all these candidates locations and the searching space mostly becomes simpler due to the symmetric geometry of ball arrangement, which suggests searching near the center of edge or triangle at first. Although the false balls can be rejected by verifying their distribution of intensity inside each searching window, but here we developed one necessary condition of being a true circle with the radius at the center, by minimizing the objective function in the equation (1) where, is the binary image. From Fig. 4a, it is obvious that,, is the global minimizer of,,. In practice, the robust circle detection as described earlier can give us the approximation of so that the center of ball can be then estimated by minimizing,, over, as demonstrated in Fig. 4b-4c. The last step, the unit lattice can be derived to check the correctness of all ball centers by translating this unit structure at each vertex and verifying the fitting. (_ and _ in (1) mean the regions inside red and blue rectangles in Fig. 4, respectively.),,, $ % & '4 &,!_"# $,,!_()* (1) 303

2.2 Void detection inside each solder ball The traditional procedure of image processing of void detection (here, called the single CLAHE method ) can be described as follows (see Fig. 2e-2n): From the raw image shown in Fig. 2a; although the physical fact suggests the void regions are brighter than neighborhood inside the solder ball, however, in reality these voids are quite difficult to be detected because of poor image contrast, irregular shapes, different void sizes and positions (2-4), and high noise level (5). These issues are what we have to overcome in practice. A quality of image contrast is varied in general due to different setting of data acquisition, therefore the global image contrast of each segmented solder ball can be firstly enhanced by transforming the input image so that the histogram of the output intensity image approximately matching to the desired target histogram extracted from reference images (see Fig. 2f) In particular, some images show very poor contrast and the global contrast enhancement alone is not sufficient. Therefore, after smoothing an image for denoising, the Contrast Limited Adaptive Histogram Equalization (CLAHE) is needed to improve the local contrast in smaller regions (see Fig. 2g); the two key input parameters of CLAHE function are block size and clip limit (6) and the local maxima (peaks) of intensity in Fig. 2h indicate the candidates of void locations (brighter regions); beside of typical gradient techniques, the multi-scale blob filter (4) was studied to identify the accurate peak regions and the results showed much better than the others (2-3). In the next step, the boundary of each void is effectively determined by applying the simple edge detection algorithm (Laplacian of Gaussian filter) with a proper size of filter but sometimes; consecutive voids are wrongly detected as a single connected void, then the water shedding algorithm is essentially applied to find the separating boundary between them as depicted in Fig. 2i-2j To obtain the correct number and area of voids, the connected voids must be separated completely by using some morphological operations to remove the connected region (see Fig. 2k-2l) Fig. 2m-2n illustrates using some 2D shape criteria such as a roundness value (2-4) to reject some false voids. Finally, the number of voids, the ratio between void area and solder ball area (1-4) and the height of peak (5) are normally used as the indicators of severity levels. 2.3 Averaged multiple CLAHE method The CLAHE method itself is quite powerful; however, the contrast level should also be well controlled to avoid amplifying noise or the side effect of creating artificial fluctuations (falsely small peaks) possibly detected as false voids which are normally found in the results obtained from the single CLAHE method. These false voids then have to be screened out intensively later using some heuristic criteria, such as various 2D shape parameters. Our novel idea is from the fundamental assumption that the true void regions are more consistent in locations than the false voids region; we then propose to average the multiple outputs of CLAHE methods over different block sizes and apply the rest of same procedures afterwards. 3. Experimental Results The prototype of software was developed by using the simple image processing functions provided in MATLAB (MathWorks, Natick, MA, U.S.A.), for examples the Hough transform, OTSU method, Delaunay triangulation, smooth filtering, edge detection and CLAHE method but all equivalent functions are also provided openly and freely in Python code. In Fig. 5; the results show the comparison of void detection compared between the single CLAHE method and the averaged multiple CLAHE method; the void features screening were not applied on both of them. The number reported in parentheses indicates the void area to solder ball area percentage ratio. These three images confirmed that the averaged multiple CLAHE method is better than the single CLAHE method with the reduction of false voids while the accuracy of void location and area is reasonably preserved. 4. Conclusions We design the simple system that is able to automatically identify void locations and void areas inside each individual solder ball although these images have very poor contrast. The key proposal is to average the multiple outputs of local contrast enhancement over different block sizes helping to eliminate the false voids while true voids are not significantly affected. To be user friendly, this system is developed to fix several drawbacks caused by the occluded solder balls, such as the missing balls problem, under various possibilities of ball arrangement pattern due 304

(a) Test image 1 (two voids are partially visible in the raw image) (b) Test image 2 (voids are invisible in the raw image) (c) Test image 3 (voids are invisible in the raw image) Fig. 5. Results of the raw images (left), using single CLAHE method (middle; with higher false voids) and averaged multiple CLAHE method (right)) and the number reported in parentheses indicates the void area to solder ball area percentage ratio. to rotating sample board (both flat and oblique modes). Because of this simplicity our methods can be easily extended to different programming codes fitting to individual users, especially free and open platform for the commercial extensions. References (1) Hillman, Dave, et al.: The Last Will and Testament of the BGA Void. Proceedings of SMTA International Conference, 2011. (2) Said, Asaad F., et al.: Robust automatic void detection in solder balls. Speech and Signal Processing (ICASSP), IEEE International Conference on. IEEE, 2010. (3) Said, Asaad F., et al.: Automated void detection in solder balls in the presence of vias and other artifacts. Components, Packaging and Manufacturing Technology, IEEE Transactions on, 2012. (4) Peng, Shao-hu, and Hyun Do Nam. : Void defect detection in ball grid array X-ray images using a new blob filter. Journal of Zhejiang University Science, 2012. (5) Mouri, Motoaki, et al.: A study of using nonnegative matrix factorization to detect solder-voids from radiographic images of solder. Industrial Electronics (ISIE), IEEE 23rd International Symposium on. IEEE, 2014. (6) Min, Byong Seok, et al.: A Novel Method of Determining Parameters of CLAHE Based on Image Entropy. International Journal of Software Engineering & Its Applications, 2013. 305