Hole recognition system and circuit board processing system
The hole recognition system uses a trained neural network model to enhance hole recognition accuracy in substrates by distinguishing holes from background variations, addressing the need for precise tuning in existing systems and ensuring consistent performance across devices.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- VIA MECHANICS LTD
- Filing Date
- 2024-11-29
- Publication Date
- 2026-06-10
AI Technical Summary
Existing hole recognition systems require elaborate tuning for threshold values and lighting settings due to variations in printed circuit board types and surface treatments, leading to misrecognition of dirt, scratches, or shadows as holes, and lack accuracy in identifying hole regions.
A hole recognition system utilizing a trained multi-layer neural network model to infer and identify hole regions in substrate images, capable of accurately distinguishing holes from background despite variations in surface treatment or substrate conditions, eliminating the need for precise device-specific settings.
Improves the recognition accuracy of holes in substrates by accurately identifying hole regions and calculating feature quantities, even with surface treatments or substrate imperfections, and allows for consistent performance across different devices.
Smart Images

Figure 2026094960000001_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to a hole recognition system and a substrate processing system.
Background Art
[0002] Conventionally, there has been proposed a printed circuit board hole position and hole diameter inspection machine that images a drilled printed circuit board loaded on a loading table, binarizes the image of the imaged printed circuit board, and calculates the center position and hole diameter of the hole from the position and shape of the hole area (see Patent Document 1).
Prior Art Documents
Patent Documents
[0003]
Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0004] In the hole recognition device described in Patent Document 1 above, the holes in the image are extracted by binarization processing. However, due to differences in the type, surface treatment, hole processing method, etc. of the printed circuit board, the appearance of the processed hole image captured by the camera varies widely. Therefore, elaborate tuning corresponding to individual processing conditions was required for setting the threshold value, which is a key parameter for binarization, and for setting the lighting, for each object and for each device. In addition, there were cases where dirt, scratches on the substrate surface, or sputtering and its shadows were misrecognized as holes.
[0005] Therefore, an object of the present invention is to improve the recognition accuracy of holes drilled in a substrate.
Means for Solving the Problems
[0006] One aspect of the present invention is a hole recognition system characterized by comprising: a trained model trained to infer hole regions in an image of a substrate that has been drilled; an identification means that outputs hole region information that identifies hole regions in an input image of a substrate using the trained model; and a feature quantity calculation means that calculates feature quantities of holes processed in the substrate based on the hole region information output by the identification means. [Effects of the Invention]
[0007] According to the present invention, the recognition accuracy of holes drilled in a substrate can be improved. [Brief explanation of the drawing]
[0008] [Figure 1] This is an overall configuration diagram of a hole recognition system according to the first embodiment of the present invention. [Figure 2] These are image data from each stage of creating the correct answer data. [Figure 3] This is a flowchart for training a model on hole images using training data. [Figure 4] This flowchart shows the details of the inference process performed by the hole recognition device. [Figure 5] This flowchart shows the details of the feature extraction process performed by the hole recognition device. [Figure 6] This is an overall configuration diagram of a laser processing system according to a second embodiment of the present invention. [Figure 7] This is an explanatory diagram of the trepanning process according to a second embodiment of the present invention. [Figure 8] This is a schematic diagram showing the shape of a hole created by trepanning. [Figure 9] This flowchart shows the correction process for trepanning processing control. [Figure 10] This is a network configuration diagram showing the configuration of a hole recognition system according to a fourth embodiment of the present invention. [Modes for carrying out the invention]
[0009] <First Embodiment> Hereinafter, a hole recognition system 10 according to a first embodiment of the present invention will be described with reference to the drawings. As shown in Figure 1, the hole recognition system 10 for recognizing holes in a perforated substrate comprises a learning device 11 and a hole recognition device 12. The learning device 11 is a learning means for training a learning model for inferring the location of holes in an image from an image of a perforated substrate, and comprises an image accumulation unit 20, a training data creation unit 1, and a learning processing unit 2.
[0010] The image accumulating unit 20 stores a large number of digital hole images taken under the same or similar conditions as the images used by the hole recognition device 12 to recognize (identify) holes. The training data creation unit 1 creates training data for the learning model in the learning processing unit 2 based on each image accumulated in the image accumulating unit 20.
[0011] Specifically, the training data creation unit 1 comprises a ground truth data creation unit 101, a training data conversion processing unit 102, and a data splitting processing unit 103. The ground truth data creation unit 101 is configured to perform a ground truth data creation process for images sequentially acquired from the image accumulation unit 20, creating ground truth data that defines the regions (e.g., location and shape) of holes present in the images. In this embodiment, this ground truth data creation process is performed automatically using a program called an annotation tool or based on human operation.
[0012] For example, the correct answer data creation unit 101 acquires images from the image integration unit 20 of laser-processed holes on a printed circuit board, as shown in Figure 2(a), captured by a camera. In Figure 2(a), the circular area in the center of the image is the hole, and the dark-colored substrate surface has been surface-treated to increase the laser energy absorption efficiency, with molten copper foil and burnt residue from the insulating resin layer adhering around the hole. The bottom of the hole is at the back of the screen and has a height difference from the substrate surface, so it appears blurred and out of focus.
[0013] Figure 2(b) shows the result of defining the hole using an annotation tool on the image of Figure 2(a). In the figure, the black circles connected in a chain are the boundaries of the hole defined by polygon approximation, and the inside of this is the hole. In other words, in Figure 2(b), the boundary of the hole is defined by a point cloud.
[0014] Also, Figure 2(c) is an image display of the correct data generated by the annotation tool. In Figure 2(c), the black area has a pixel value of 0 and represents the background. The gray area is the area of the hole, which is the object to be recognized. Thus, in the correct image, the hole, which is the object to be recognized, is distinguished from the background.
[0015] The teacher data creation processing unit 102 creates teacher data by associating the correct data created by the above correct data creation unit 101 with the corresponding image data (digital hole image). For example, taking the image in Figure 2 above as an example, the teacher data creation processing unit 102 takes a pair of the original image of Figure 2(a) and the correct data of Figure 2(c) as one set. And a large number (a plurality) of such pairs of original image data and correct data are grouped together as teacher data. That is, in other words, it can be said that the teacher data includes a plurality of data sets of image data obtained by imaging a substrate with processed holes and correct data defining the hole region of the image data obtained by imaging the substrate with processed holes.
[0016] The data division processing unit 103 divides the teacher data generated by the above teacher data creation processing unit 102 into learning data (hereinafter also referred to as learning teacher data) used for learning the learning model and verification data (hereinafter also referred to as verification teacher data) for verifying the learning effect in the "learning with teacher" described later. For example, 70% of the image pairs in the teacher data are divided for learning and 30% for verification.
[0017] The teacher data creation unit 1 and the learning processing unit 2 are communicably connected, and the teacher data (learning teacher data and verification teacher data) created by the teacher data creation unit 1 is communicated to the learning processing unit 2. The learning processing unit 2 includes a multi-layer neural network model 201, which is an example of the learning model in the present embodiment. The learning teacher data acquired by the learning processing unit 2 is input into the multi-layer neural network model 201. When the learning teacher data is input, the multi-layer neural network model 201 performs a forward process 202 to calculate an output.
[0018] The calculated output is compared with the correct data of the learning teacher data, and the parameters of the multi-layer neural network model 201 are adjusted in the direction of reducing the error in the comparison by the backpropagation process 203 using the intermediate variables in the calculation process. Then, the learning processing unit 2 updates the input learning data and repeats the above process to optimize the parameters of the multi-layer neural network model 201, and completes the learning when the evaluation function value of the error sufficiently decreases.
[0019] More specifically, in the present embodiment, learning of the hole image is performed using a multi-layer neural network model 201 that performs semantic segmentation. Hereinafter, the learning process of the multi-layer neural network model 201 will be described in detail based on FIG. 3. As shown in FIG. 3, when the learning processing unit 2 acquires teacher data from the teacher data creation unit 1, it performs a dataset creation process for transforming the teacher data into a form in which the multi-layer neural network model 201 can efficiently learn and verify the learning effect (step S301).
[0020] In this dataset creation process, the learning processing unit 2 performs the following operations on the training data: assigning directory paths to each training image, assigning directory paths to the corresponding ground truth images, augmentation processing to improve learning efficiency, sizing and data format alignment processing to match the input size and data format accepted by the multilayer neural network model 201, and standardization of the data for each channel of the three primary colors. Similarly, for the validation training data, it performs the following operations: assigning directory paths to each validation image, assigning directory paths to the corresponding ground truth images, sizing and data format alignment processing to match the input size accepted by the multilayer neural network model 201, and standardization of the data for each channel of the three primary colors. Augmentation processing here refers to the process of randomly stretching, flipping vertically and horizontally, and shifting the values of RGB components to images, thereby increasing the apparent number of images and diversifying the learning materials, thereby improving learning efficiency.
[0021] Once the dataset creation process is executed, the learning processing unit 2 executes the data loader creation process (step S302). This data loader creation process specifies how data will be supplied for the subsequent calculation of the multilayer neural network model 201. Specifically, the learning data loader specifies the prepared training training dataset, the number of images contained in minibatches (units into which data is input all at once during training), and the application of a process to randomly rearrange the order of the training training data each time the entire training training dataset is trained. The validation data loader specifies the prepared validation dataset, the number of images contained in minibatches (units into which data is input all at once during validation), and whether or not to apply the process to randomly rearrange the order of the validation data. Then, with these preparations complete, the learning process is executed using the data supplied by the data loaders.
[0022] When the training process is executed, first, training data consisting of a predetermined number of image data of a predetermined size bundled in a predetermined data format is supplied as a minibatch from the training data loader (step S303). This minibatch is input to the multilayer neural network model 201, and each process constituting the multilayer neural network model 201 is executed on it, so that the confidence level of each pixel belonging to each recognition target is calculated for each image. Then, the recognition target with the highest probability for each pixel is selected and output as the estimation result (step S304).
[0023] Next, the learning processing unit 2 calculates a loss function value in a predetermined format by comparing the mini-batch's ground truth data, which is a predetermined number of ground truth image data of a predetermined size corresponding to the images constituting this mini-batch, in a predetermined data format, with the estimation result corresponding to each pixel of each image (step S305).
[0024] Then, using backpropagation, the partial derivatives of the loss function with respect to each parameter are obtained for the parameters of the multilayer neural network model 201 involved in determining the loss function value, namely the connection weights and the convolution filter coefficients. Based on these derivatives and the learning rate, the amount of correction for each parameter is determined and corrected (step S306).
[0025] This completes the training process for one mini-batch, and the training unit 2 determines whether the training process has completed for the entire training data (step S307). If it has not yet completed (No. in step S307), it returns to step S303 and repeats the training process with a new mini-batch (steps S303-S307).
[0026] By the way, completing the training of all training images is called one epoch. During the training process, the training status is checked at predetermined epoch intervals using validation data different from the training data. Then, in the training cycle completion determination process in step S307, if the training cycle is completed (Yes in step S307), the training processing unit 2 determines whether the number of epochs for verification has been reached (step S308).
[0027] If verification is not required (No in step S308), a new mini-batch is formed and the learning process described above is repeated (steps S303-S307). On the other hand, if verification is required (Yes in step S308), the following verification process is executed.
[0028] Specifically, when the learning processing unit 2 has completed the prescribed number of epochs of learning, it switches the data loader to the verification data loader and inputs the verification data, which consists of a predetermined number of predetermined size image data supplied as a mini-batch and compiled in a predetermined data format, into the multilayer neural network model 201 with modified parameters (step S309). Then, it performs each process that constitutes this model and outputs the probability that each pixel belongs to each recognition target in each image, and selects the recognition target with the highest probability for each pixel and uses this as the estimation result (step S310).
[0029] Next, the loss function value is calculated in a predetermined format by comparing the mini-batch's ground truth data, which is a predetermined number of ground truth data of a predetermined size corresponding to the data constituting this mini-batch, with the estimation result corresponding to each pixel of each image (step S311).
[0030] The learning processing unit 2 repeatedly executes the above learning and verification processes for a predetermined number of repeating epochs (step S312) to complete the learning of the multilayer neural network model 201, thereby determining the trained multilayer neural network model 201.
[0031] Next, the hole recognition device 12 will be explained in detail. As shown in Figure 1, the hole recognition device 12 is configured to communicate with the learning processing unit 2 and includes an inference processing unit 3 that includes a trained multilayer neural network model 201 learned by the learning processing unit 2, and a feature calculation unit 4. A camera 13 equipped with a focusing mechanism (not shown) is also connected to the hole recognition device 12. The camera 13 is positioned opposite an XY table (not shown) which serves as a mounting unit on which the perforated substrate 14 is placed, and is capable of capturing a photograph of the substrate 14 placed on the XY table.
[0032] The image of the substrate 14 captured by the camera 13 is an image containing holes, and is input to the hole recognition device 12 as digital data. The inference processing unit 3 is configured to apply this image to a multilayer neural network model 201 and perform an inference process to infer the hole regions in the image. In other words, in this embodiment, the inference processing unit 3 is an identification means that outputs hole region information that identifies the hole regions in the input image of the substrate using a trained model.
[0033] The feature calculation unit 4 is configured to perform a feature calculation process that calculates feature quantities such as hole location, hole diameter, and hole area based on the information about the hole region which is the output result of the inference process described above. The hole feature quantities calculated by this feature calculation unit 4 are displayed on the display device 5 connected to the hole recognition device 12.
[0034] Next, the inference process for the hole region using the multilayer neural network model 201 described above will be explained in detail based on the flowchart in Figure 4. As shown in Figure 4, when performing the inference process for the hole region, the inference processing unit 3 first performs the process of setting the trained model (step S401). In this embodiment, the trained multilayer neural network model 201 obtained by the training process of the training processing unit 2 is set as the trained model used for inference.
[0035] Next, the inference processing unit 3 acquires an image of the perforated substrate 14 captured by the camera 13 (step S402, camera image input processing), and performs preprocessing on the acquired image (step S403, image preprocessing). Specifically, in this image preprocessing, the acquired image data is converted to a predetermined size, color distribution, and format accepted by the multilayer neural network model 201.
[0036] Then, the captured image that has undergone image preprocessing is input to the trained multilayer neural network model 201 set up in step S401, and the model output is calculated (step S404). Specifically, when the transformed image data is input to the trained multilayer neural network model 201, the output is an estimation result of the image format in which an index value corresponding to the object to be recognized is assigned to the pixel value, depending on whether each pixel corresponds to a hole or hole bottom, which is the object to be recognized, or is simply background, and 0 is assigned if it is background. In other words, as hole region information, image information is obtained in which an index value indicating whether or not each pixel corresponds to a hole region is assigned to the pixel value.
[0037] Once the above inference result is obtained, the inference processing unit 3 performs image post-processing on this inference result (step S405). Specifically, the hole recognition device 12 resizes the output image, which had been resized due to the constraints of the input image of the multilayer neural network model 201, back to its original image size. As a result, as hole region information regarding the region where a hole exists, image data of the same size as the original image is obtained, in which the region where the object to be recognized exists is demarcated, that is, the hole shape is drawn.
[0038] Next, the feature calculation process performed by the feature calculation unit 4 will be explained in detail with reference to Figure 5. As shown in Figure 5, when the feature calculation unit 4 acquires image data in which the hole shape is drawn, it performs hole region class determination (step S501). This hole region class determination automatically determines whether it is the top (opening) or bottom of the hole, based on the recognition result of the image of the hole region, and is determined according to the index value of the recognized object obtained as a result of the inference process in Figure 4.
[0039] Once hole region class determination is performed, the feature calculation unit 4 extracts the contour, which is the boundary between the hole region and the background obtained as a result of the inference process, as a sequence of polygon vertex coordinates (Step S502, Hole Region Contour Extraction Process). Once the contour of the hole region is extracted, the feature calculation unit 4 finds the maximum and minimum coordinates in the x and y directions from the extracted sequence of polygon vertex coordinates, finds a bounding rectangle that includes these points, and obtains the coordinates of the four vertices of this rectangle (Step S503, Hole Region Bounding Rectangle Creation Process).
[0040] Then, the feature calculation unit 4 obtains the center coordinates of the rectangle from the coordinates of the four vertices of the obtained bounding rectangle, and uses these as the hole center coordinates. It also calculates the hole area from the width and height of the bounding rectangle, the aspect ratio as the ratio of width to height, the hole diameter as the average of the width and height, and the number of pixels included in the hole region (step S504, hole feature extraction process). Note that in these calculations, a conversion coefficient is needed to change the unit from the number of pixels on the image to actual dimensions (such as μm), which can be determined by measuring how many pixels on the image correspond to a length of known actual dimensions.
[0041] After extracting the features of the hole, the feature calculation unit 4 then selects whether or not to calculate the slope of the hole by approximating the contour with an ellipse (step S505). If the slope of the hole is not calculated (No. in step S505), the feature calculation unit 4 performs a bounding rectangle drawing process and displays an image with a bounding rectangle drawn over the hole image on the display means of the hole recognition device (step S506).
[0042] On the other hand, when calculating the slope of the hole (Yes in step S505), the feature calculation unit 4 executes the slope rectangle drawing process 507 (step S507). Specifically, the feature calculation unit 4 first uses the coordinate values of each point constituting the contour of the hole region to find the equation of the approximate ellipse of the contour of the hole region using an algorithm such as the least squares method. Next, it rotates the contour around the centroid of the contour of the contour of the hole region by the angle of inclination of the obtained ellipse axis, and finds the circumscribing rectangle of the rotated contour so that the axis of the approximate ellipse matches the coordinate axis of the image. Furthermore, by applying a rotation in the opposite direction to the rotation around the centroid of the contour of the contour of the hole region by the angle of inclination of the ellipse axis to this circumscribing rectangle, it obtains a rectangle that is tangent to the original contour of the hole region and has the same slope as the approximate ellipse. The feature calculation unit 4 then displays the image of this slope rectangle drawn on the hole image on the display means of the hole recognition device.
[0043] Furthermore, in the feature calculation unit 4, during the feature display processing, displays the previously obtained hole center coordinates, the width and height of the circumscribing rectangle, the aspect ratio, the hole diameter, and the hole area on the display means of the hole recognition device. If drawing an inclined rectangle is selected, in addition to these, the lengths of the long side and short side of the inclined rectangle, and the inclination angle of the long side (principal axis) are also displayed (step S508).
[0044] Thus, in this embodiment, a pre-trained multilayer neural network model 201 is used to identify hole regions in the image. Therefore, even if the surface treatment of the substrate or the hole processing method differs, or if there is dirt, scratches, sputtering, or shadows on the substrate surface, the hole regions in the image can be identified with high accuracy by sufficiently training the multilayer neural network model 201 in the learning device 11. Furthermore, a sufficiently trained model can be used for different hole recognition devices, eliminating the need for precise settings for each device.
[0045] In this embodiment, a multilayer neural network model 201 was used as a trained model that was trained to infer hole regions from an image of a circuit board that had been drilled. However, any trained model can be used as long as it can identify hole regions in the input image of the circuit board. Furthermore, since hole regions within an image area can be accurately identified, the characteristic quantities of holes in captured images can be measured with high accuracy.
[0046] <Second Embodiment> Next, a second embodiment of this embodiment will be described. Note that the second embodiment differs from the first embodiment in that the hole recognition system constitutes part of the hole machining system. Therefore, in the following description, only the differences from the first embodiment will be explained, and similar components will be omitted from the description by using the same reference numerals.
[0047] As shown in Figure 6, the laser processing system 1000 as a substrate processing system (hole processing system) according to this embodiment comprises a laser processing device 600 as a laser processing means and a hole recognition system 10. The laser processing device 600 is a device that uses a laser to process holes in a printed circuit board 14 mounted on a positioning table 615 in the XY direction. In other words, in this embodiment, the laser processing device 600 is a processing means that performs hole drilling on a substrate placed on a positioning table 615 as a mounting part. Specifically, the laser processing device 600 performs hole processing by deflecting a laser beam emitted from a laser source 621 in the XY2 direction with galvanometer scanners 631 and 632, and irradiating and imaging it onto the surface of the printed circuit board 14 with an Fθ lens 633.
[0048] The galvanoscanners 631 and 632 are devices that deflect the direction of a laser beam incident on the mirror to a desired angle by attaching a mirror to one end of an axis that oscillates using an electromagnetic actuator and controlling the oscillation angle through feedback. The pair of galvanoscanners are equipped with an oscillation angle detector, and the detected oscillation angle is fed back to the galvanoscanner control device 630, which controls the oscillation angle to match the angle command value. The Fθ lens deflects the incident light ray passing through the front focal point to a ray parallel to the optical axis and at a distance proportional to the incident angle.
[0049] Furthermore, a camera 613 is provided at a position opposite the printed circuit board, enabling it to capture images of the holes processed on the printed circuit board. This camera 613 is a fixed-focus camera and is movable in the Z direction perpendicular to the upper surface, which is the loading surface of the positioning table 615, by a focusing mechanism (not shown). In addition, this camera 613 is capable of communicating with the hole recognition device 12, and the image of the drilled circuit board captured by the camera 613 is input to the hole recognition device 12 as digital image data.
[0050] When an image is input from the camera 613, the hole recognition device 12 uses this image as input data and, similar to the first embodiment, the inference processing unit 3 identifies the hole region in the image. The hole region image obtained by the inference processing unit 3 is passed to the feature quantity calculation unit 4, where feature quantities such as hole position, hole diameter, and hole area are calculated. These calculated feature quantities are input to the laser processing control device 640 connected to the hole recognition device 12. The laser processing control device 640 controls the XY table control device 610, laser source control device 620, galvanometer scanner control device 630, and hole recognition device 12 according to predetermined processing conditions and processing programs to perform hole processing on the printed circuit board.
[0051] In this embodiment, the hole recognition device 12 is configured as an independent device connected to the laser processing device 600 for data transmission and reception, but it may also be configured as part of the laser processing device 600.
[0052] As described above, in this embodiment, the laser processing apparatus 600 is configured to capture images of the substrate by the camera 613 while the substrate is placed on the positioning table 615, and the hole recognition device 12 is configured to calculate the characteristic quantities of the holes from the images captured by the camera and to feed this back to the laser processing control device 640 of the laser processing apparatus 600. Therefore, the laser processing control device 640 can correct the processing conditions when drilling holes in the substrate based on the characteristic quantities of the holes calculated by the hole recognition device 12.
[0053] For example, since the hole positions can be measured on the processing device without removing the printed circuit board for hole measurement, the actual position during processing can be detected, and based on this, the processing position can be accurately corrected.
[0054] Furthermore, during test processing to adjust processing conditions, the processing results can be evaluated solely by the laser processing system 1000 using the above-mentioned feature quantities. This eliminates the need for procedures such as removing the substrate, placing it under a microscope, and observing the processed holes under a microscope to determine their shape, thus enabling rapid condition setting. In this embodiment, the correspondence between the laser beam irradiation position and the position on the camera's captured image can be determined, for example, by measuring the results of processing a test substrate with the camera.
[0055] <Third Embodiment> Next, a third embodiment of this embodiment will be described. In this embodiment, only the control method during trepanning differs from the second embodiment described above. Therefore, in the following description, components similar to those in the second embodiment will be referred to by the same reference numerals, and their descriptions will be omitted.
[0056] As shown in Figure 7(a), in trepanning, to process a hole 710 larger than the laser beam diameter, the beam spot position is moved along a circular orbit 711 to 712-1, 712-2, ..., 712-12, and laser irradiation is performed at these positions. Figure 7(b) shows the x-component x_ref and y-component y_ref of the irradiation target position and the laser irradiation shot as a graph against the time axis when performing this processing. The x-component is a cosine function of time and the y-component is a sine function of time, and by using cosine and sine functions with the same amplitude (phase difference of 90°), the orbit becomes circular, and therefore the shape of the processed hole is also circular.
[0057] Conversely, if there is an error in the galvanoscanner 631, galvanoscanner 632, and galvanoscanner control device 630 that perform beam scanning, the processed hole shape will become elliptical, as shown in Figure 8(a). In the figure, 850 is an approximate ellipse of the hole contour obtained by the hole recognition device 12, and 855 is a circle with a diameter that shares its center with this approximate ellipse. If the ratio of the major axis to the minor axis of the elliptical approximation of the hole contour obtained by the hole recognition device 12 exceeds a certain standard (for example, 1 ± 0.05) for all holes used for processing verification, the laser processing control device 640 starts a correction task program, and the galvanoscanner control device 630 performs the following correction process. In other words, the laser processing control device 640 corrects the galvanoscanner control device that controls the pair of galvanoscanners that perform laser deflection, which are elements of the positioning means, according to the spindle tilt angle when the hole region is approximated as an ellipse.
[0058] Figure 9 is a flowchart showing the correction process procedure. In Figure 9, in the process of reading the feature quantities of the machined hole (step S801), the galvanometer scanner control device 630 reads the values of the hole width W (corresponding to the x-axis) and height H (corresponding to the y-axis) measured by the hole recognition device 12. Next, in the x-axis correction and y-axis correction process (step S802), the galvanometer scanner control device 630 compares the specified hole diameter D with the measured hole width W and height H and performs corrections.
[0059] For example, assuming the beam spot diameter is d, the amplitude of the x-axis command trajectory x_ref shown in Figure 7 is multiplied by (Dd) / (Wd), and the amplitude of the y-axis command trajectory y_ref is multiplied by (Dd) / (Hd). The beam spot diameter d and shot period may also be added as adjustment variables.
[0060] In test machining A (step S803), the galvanometer scanner control device 630 performs machining according to the corrected target trajectory and confirms that the width and height of the machined hole match the specified hole diameter D, as shown in Figure 8(b). Next, in phase correction 804, the galvanometer scanner control device 630 calculates cos when the x-coordinate value at which the hole contour 850 takes its maximum value in the y-axis direction is xp in the first quadrant of Figure 8(b), -1 The command value is corrected to generate a command value that delays the phase of the y-axis command trajectory y_ref by (2xp / D) (step S804). In test machining B, the corrected command value causes the shape of the machined hole 850 to match the circle 855 with diameter D, as shown in Figure 8(c) (step S805).
[0061] In this embodiment, the feature calculation unit 4 corrects the amplitude and phase difference of the target trajectory during trepanning based on the hole feature quantities obtained by approximating the hole region as an ellipse. Therefore, trepanning can be performed with high precision.
[0062] <Fourth Embodiment> Next, a fourth embodiment of this embodiment will be described. In the following description, components similar to those in the second embodiment will be referred to by the same reference numerals, and their descriptions will be omitted.
[0063] Figure 10 is a network configuration diagram showing the configuration of the hole recognition system according to the fourth embodiment. In Figure 10, a learning device 11 is installed at the learning processing site 901, and hole images obtained when drilling holes in various printed circuit boards using various processing methods are accumulated there.
[0064] Meanwhile, laser processing machines 600-1 to 600-N are installed at processing sites 902-1 to 902-N, respectively, and are actually performing hole drilling on printed circuit boards. Each of these laser processing machines 600-1 to 600-N is equipped with a hole recognition device 12, and a camera 13 is connected to each hole recognition device 12 to capture images of the holes on the printed circuit board.
[0065] The learning device 11 is connected to the laser processing machines 600-1 to 600-N and the hole recognition devices 12, 12 built into them via a network 910 such as a LAN or the internet, enabling data exchange.
[0066] The inference processing unit 3 of each hole recognition device 12 performs hole recognition using a trained model of the multilayer neural network model 201 provided via the network from the learning device 11. When processing a new printed circuit board, the processed hole image is sent to the learning device 11 via the network, and the learning device 11 uses this to train the multilayer neural network model 201. The trained data is then sent to the hole recognition device 12 for use in subsequent processing.
[0067] In other words, the hole recognition system 10 according to this embodiment comprises a plurality of different hole recognition devices 12 (two in this embodiment), and these plurality of hole recognition devices 12 are connected to a single learning device (learning server, information processing device) 11. This learning device 11 learns a learning model using images of the circuit board transmitted from the plurality of hole recognition devices 12, and the learning model learned by this learning device 11 is used as the learned model for each hole recognition device 12.
[0068] For example, if the inference processing unit 3 of the hole recognition device 12 at machining site 902-1 is designated as the first identification means, and the inference processing unit 3 of the hole recognition device 12 at machining site 902-N is designated as the second identification means, and the trained models of these first and second identification means are designated as the first and second trained models, then the learning device 11, as a learning means, is configured to communicate with the first and second identification means via the network 910, and the trained models learned by the learning device 11 are used as the first and second trained models.
[0069] This configuration allows for centralized support at a single learning site, eliminating the need to individually deploy learning devices, training data, and model learning instructors at numerous processing sites, thus enabling efficient operation. In this embodiment, a configuration in which the multilayer neural network model 201 is distributed via network 910 has been described, but it is also possible to upload processing hole images and recognition results to the learning device 11 via network 910 and utilize them as training data.
[0070] In the embodiments described above, an example was shown in which a laser processing device was used as the processing device for drilling holes in the substrate. However, the present invention is not limited to this, and can also be applied to a device that drills holes using a drill. Furthermore, the contents described in the embodiments described above may be combined in any way. [Explanation of symbols]
[0071] 3: Identification means (inference processing unit) / 4: Feature calculation unit (feature calculation means) / 10: Hole recognition system / 201: Trained model (multilayer neural network model)
Claims
1. The system includes a trained model that has been trained to infer hole regions from an image of a circuit board that has been drilled, and an identification means that outputs hole region information that identifies hole regions in the input image of the circuit board using the trained model. The system includes a feature quantity calculation means that calculates the feature quantities of holes processed in the substrate based on the hole region information output by the specified means, A hole recognition system characterized by the following features.
2. The system includes a learning method that trains a learning model to infer the hole regions in an image of a drilled substrate using training data comprising multiple sets of training data consisting of image data of a substrate with processed holes and ground truth data defining the hole regions in the image data of the substrate with processed holes. The learning model learned by the learning means is used as the trained model in the specific means. The hole recognition system according to claim 1, characterized in that it is the same as described in claim 1.
3. The hole region information includes image information in which each pixel is assigned an index value indicating whether or not it corresponds to the hole region. The hole recognition system according to claim 1, characterized in that it is the same as described in claim 1.
4. The characteristic quantity of the hole includes at least one of the hole's position, dimensions, area, and shape. The hole recognition system according to claim 1, characterized in that it is the same as described in claim 1.
5. The pre-trained model is the first pre-trained model, and the identifying means is the first identifying means. The system comprises a second identification means, different from the first identification means, which includes a second trained model that has been trained to infer hole regions in an image of a substrate that has been drilled, The learning means is configured to communicate with the first and second identification means via a network. The trained models learned by the learning means are used as the first trained model and the second trained model. The hole recognition system according to claim 2, characterized in that it is as described above.
6. A processing means for drilling holes in a substrate placed on a mounting section, A camera for imaging a substrate that has been drilled by the aforementioned processing means, A hole recognition system according to any one of claims 1 to 5, wherein an image captured by the camera is input, A substrate processing system characterized by the following features.
7. The camera is arranged to capture images of the substrate in the state in which it is placed on the aforementioned mounting section. The processing means corrects the processing conditions when drilling holes in the substrate based on the hole feature quantities calculated by the feature quantity calculation means. The substrate processing system according to claim 6, characterized in that it is as described above.
8. The processing means is a laser processing means capable of performing trepanning on the substrate, The feature calculation means calculates the feature quantity of the hole by approximating the hole region with an ellipse, The processing means corrects the amplitude and phase difference of the target trajectory when performing the trepanning process based on the characteristic quantities of the hole obtained by approximating it by an ellipse. The substrate processing system according to claim 6, characterized in that it is as described above.