Program and data processing device
The program optimizes the inspection process by skipping redundant detection for previously inspected areas, reducing processing burden when resuming transport.
Patent Information
- Application Number
- JP2024002866
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-01-11
- Publication Date
- 2025-07-24
AI Technical Summary
Existing techniques for resuming conveyance after stopping an object's transport do not efficiently manage the processing burden, leading to unnecessary repetition of detection processes.
A program that executes a detection process for defects using read images, allowing the detection process to be skipped for portions of the object that have already been inspected, reducing processing burden by resuming transport without re-inspecting these areas.
Reduces processing burden by avoiding redundant detection processes when resuming transport, optimizing the inspection workflow.
Smart Images

Figure 2025109133000001_ABST
Abstract
Description
Technical Field
[0001] This specification relates to a technique for detecting defects of an object using a read image of the object.
Background Art
[0002] Various techniques for inspecting an object have been proposed. Patent Document 1 discloses a technique for inspecting the surface of a web such as an aluminum sheet or a plastic sheet. In this technique, a surface defect detector detects a defective portion existing on the surface of the web and outputs a timing signal. The stop control means stops the defective portion at a visual inspection position preset in the conveyance path of the web after decelerating the conveyance of the web based on the timing signal.
Prior Art Documents
Patent Documents
[0003]
Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0004] However, there was room for improvement in the case of resuming conveyance after stopping the conveyance of the object.
[0005] This specification discloses a new technique for resuming the conveyance of an object.
Means for Solving the Problems
[0006] The technique disclosed in this specification can be realized as the following application examples.
[0007] [Applicable Example 1] A program for sequentially executing a detection process for detecting a defect of an object by using each of the read images obtained by using a reading device configured to sequentially read different portions of the object by transporting the object in the transport direction of the object, the detection function not executing a new detection process for a portion of the object for which the detection process has already been executed when the object is returned to the upstream side in the transport direction and then the transport of the object in the transport direction is restarted, the program causing a computer to realize the detection function.
[0008] According to this configuration, in a first specific case where the transport of the object is restarted after the object is returned to the upstream side in the transport direction, a new detection process is not executed for the portion of the object for which the detection process has already been executed. Therefore, in the first specific case where the transport is restarted, the processing burden can be reduced.
[0009] Note that the technology disclosed in this specification can be realized in various forms. For example, it can be realized in the form of a data processing method and a data processing device, a computer program for realizing the functions of those methods or devices, a recording medium (e.g., a non-transitory recording medium) recording the computer program, and the like.
Brief Description of the Drawings
[0010]
Figure 1
Figure 2
Figure 3
Figure 4
Figure 5
Figure 6
Figure 7
Figure 8
Figure 9
Figure 10
Figure 11
Figure 12
Figure 13
Figure 14
Figure 15
Figure 16
Figure 17
Figure 18
Figure 19
Figure 20
Figure 21
Figure 22
Figure 23
Figure 24
Figure 25
Figure 26
Mode for Carrying Out the Invention
[0011] A. First Embodiment: A1. Device Configuration: FIG. 1 is an explanatory diagram showing a data processing device as an example. The data processing device 200 is, for example, a personal computer. The data processing device 200 performs various data processes for inspecting the appearance of an object (for example, a fabric for sewing such as a woven fabric, a knitted fabric, or a denim fabric). Hereinafter, it is assumed that the appearance of the fabric 700 is inspected.
[0012] The data processing device 200 includes a processor 210, a storage device 215, a display unit 240, an operation unit 250, a graphics processing unit 260 (referred to as GPU 260), and a communication interface 270. These elements are connected to each other via a bus. The storage device 215 includes a volatile storage device 220 and a non-volatile storage device 230.
[0013] The processor 210 is a device configured to perform data processing, for example, a Central Processing Unit (CPU) or a System on a chip (SoC). The volatile memory device 220 is, for example, a Dynamic Random Access Memory (DRAM), and the non-volatile memory device 230 is, for example, a flash memory. The non-volatile memory device 230 stores the respective data of a reading module 231, an inspection module 232, a UI module 233, and an object detection model 310. The modules 231 - 233 are each program modules. The object detection model 310 is a program module that forms a trained machine learning model. The non-volatile memory device 230 further stores flag data D1, result data D2, and merged data D3. Details of the data stored in the non-volatile memory device 230 will be described later.
[0014] The display unit 240 is a device configured to display images, such as a liquid crystal display or an organic EL display. The operation unit 250 is a device configured to receive operations by a user, such as buttons, levers, or a touch panel disposed on top of the display unit 240. The display unit 240 and the operation unit 250 may form a so-called touch screen. The user can input various requests and instructions into the data processing device 200 by operating the operation unit 250. The display unit 240 may display operation elements (for example, buttons, sliders, etc.), and the displayed elements may be operated through the operation of the operation unit 250.
[0015] The GPU 260 is an arithmetic device configured to execute various numerical operations such as image processing and machine learning. The GPU 260 executes various operations according to the instructions of the processor 210. Note that a driver program (not shown) for controlling the GPU 260 may be provided by the manufacturer of the GPU 260.
[0016] The communication interface 270 is an interface for communicating with other devices (for example, including one or more of a USB interface, a wired LAN interface, a wireless interface of IEEE802.11, an interface of an industrial camera (for example, CameraLink, CoaXPress, etc.)). In this embodiment, a transport device 900, digital cameras 111 - 114, and an encoder 120 are connected to the communication interface 270. The transport device 900 is a device for transporting the fabric 700. The digital cameras 111 - 114 are used for photographing the fabric 700. The encoder 120 is used for calculating the relative position of the fabric 700 with respect to the transport device 900 (details will be described later).
[0017] FIG. 2 is a perspective view of the digital cameras 111 - 114, the fabric 700, the transport device 900, and the light source 130. The transport device 900 is a device for transporting the fabric 700 for inspection (such a device is also called a fabric inspection machine). The transport device 900 includes a plurality of rollers (including two rollers 910, 920) and a transport motor (not shown) for driving one or more rollers to transport the fabric 700. The partial transport path Pth in the figure shows the part between the rollers 910, 920 of the transport path of the fabric 700 (the partial transport path Pth is also simply called the partial path Pth). In this embodiment, a fabric 700 longer than the partial path Pth is wound around a roller (not shown). The fabric 700 drawn from this roller is transported from the first roller 910 along the partial path Pth to the second roller 920 and wound around another roller (not shown). Between the rollers 910, 920 (that is, on the partial path Pth), the fabric 700 forms a flat part 700F which is a flat portion. The light source 130 irradiates light onto the flat part 700F. The forward direction Df in the figure indicates the transport direction on the partial path Pth (the forward direction Df is also called the transport direction Df). The reverse direction Db indicates the direction opposite to the forward direction Df, that is, the transport direction when the fabric 700 is rewound. The orthogonal direction Dt indicates a direction parallel to the flat part 700F and perpendicular to the partial path Pth.
[0018] The first end 700e1 and the second end 700e2 in the figure are the ends in a direction perpendicular to the partial path Pth of the fabric 700. The lines indicating the ends 700e1, 700e2 are approximately parallel to the partial path Pth. However, the fabric 700 is soft and easily deformable. The fabric 700 can be conveyed in a state where the lines indicating the ends 700e1, 700e2 are inclined with respect to the partial path Pth.
[0019] On the partial path Pth, two positions Pr and Pv are set. The first position Pr is the position for reading by the digital cameras 111 - 114. In the figure, the reading area Ar, which is the area read by the digital cameras 111 - 114, is hatched. The reading area Ar is a rectangular area having two sides Ar1, Ar2 parallel to the partial path Pth and two sides Ar3, Ar4 perpendicular to the partial path Pth. The range PRr from the third side Ar3 to the fourth side Ar4 of the partial path Pth is the reading range by the digital cameras 111 - 114 (the range PRr is called the reading range PRr). The first position Pr is located at the center of the reading range PRr. The reading area Ar includes the entire portion of the fabric 700 within the reading range PRr. That is, the first side Ar1 and the second side Ar2 are located outside the fabric 700.
[0020] The partial areas R11 - R14 in the figure respectively indicate the areas read by the digital cameras 111 - 114. In this embodiment, the digital cameras 111 - 114 (and thus the partial areas R11 - R14) are arranged side by side in the orthogonal direction Dt. The entire reading area Ar is represented by the entirety of the partial areas R11 - R14.
[0021] The second position Pv is the position for visual inspection. The second position Pv is arranged at a position where it is easy for the operator to observe. In this embodiment, the second position Pv is located on the downstream side of the first position Pr (that is, on the forward direction Df side of the first position Pr). Note that in this embodiment, not limited to the second position Pv, the operator can visually observe the fabric 700 throughout the range from the first position Pr to the second position Pv.
[0022] The area Av in the figure is an area located at the second position Pv and having the same shape as the reading area Ar. In this embodiment, the conveyance of the fabric 700 and the reading of the reading area Ar are repeated. The reading of the reading area Ar is performed for each constant conveyance amount in the forward direction Df so that no gap is generated between the plurality of portions of the fabric 700 to be read. The area Av indicates an area read h times (h is an integer of 1 or more) before the reading area Ar. In this embodiment, h = 3. That is, the portion of the fabric 700 from the reading area Ar to the area Av is read by four readings. An operator can easily observe the portion of the fabric 700 in the area Av (the area Av is referred to as the visual area Av).
[0023] The conveying device 900 includes a control panel 980 and a control device 990. The control panel 980 includes four operation units 981 - 984. The operation units 981 - 984 are devices configured to receive operations by an operator, such as buttons, push switches, foot switches, and touch panels. Hereinafter, it is assumed that each of the operation units 981 - 984 is a push switch. The control device 990 is an electric circuit configured to control a conveyance motor according to the operation of the control panel 980. The control device 990 includes, for example, wirings connecting the operation units 981 - 984, a conveyance motor (not shown), and a power source. In this embodiment, the control device 990 performs conveyance in the forward direction Df in a state where the first operation unit 981 is pressed, and performs conveyance in the reverse direction Db in a state where the second operation unit 982 is pressed. In a state where the operation units 981 and 982 are not pressed, the control device 990 stops the conveyance. Further, the control device 990 starts conveyance in the forward direction Df in response to the pressing of the third operation unit 983. Thereafter, the control device 990 continues conveyance in the forward direction Df until the fourth operation unit 984 is pressed, regardless of the state of the third operation unit 983. The conveyance by the operation of the third operation unit 983 is also referred to as automatic conveyance. Note that the control device 990 may be configured using a computer or dedicated hardware (such as an Application Specific Integrated Circuit (ASIC)).
[0024] An encoder 120 for detecting the direction and amount of position change due to conveyance is connected to the conveyance device 900. In this embodiment, the encoder 120 is connected to a roller (for example, the first roller 910). The configuration of the encoder 120 may be various configurations for detecting the direction and amount of position change due to conveyance. For example, the encoder 120 may be an incremental encoder. From an incremental encoder, A pulses and B pulses are alternately output according to the change in position. The number of pulses output indicates the amount of movement. The phase difference (positive or negative) between the A pulse and the B pulse indicates the direction of movement. The data processing device 200 (FIG. 1) can calculate the current conveyance position of the fabric 700 conveyed by the conveyance device 900 (that is, the relative position of the fabric 700 with respect to the conveyance device 900) by counting the number of pulses output from the encoder 120 according to the phase difference (that is, the direction). Note that a counter for counting the number of pulses according to the direction may be connected to the encoder 120. The data processing device 200 may acquire the current relative position of the fabric 700 using the information from the counter.
[0025] A2. Inspection process: For inspection, the fabric 700 (Figure 2) is attached to the conveying device 900. In this embodiment, an operator attaches the fabric 700 to the conveying device 900. Alternatively, a machine (e.g., a robotic arm) may attach the fabric 700 to the conveying device 900. After the attachment of the fabric 700, an instruction to start the inspection process is input to the data processing device 200 (Figure 1). In this embodiment, the operator inputs the instruction to start the inspection by operating the operation unit 250. The processor 210 starts the processing for inspection in response to the start instruction. In this embodiment, the processor 210 proceeds with the processing of each of the modules 231, 232, 233 by parallel processing or concurrent processing. The processor 210 uses the storage device 215 (e.g., the volatile storage device 220) to share various information (e.g., the inspection mode, the current relative position described later, etc.) during the processing of each of the modules 231, 232, 233. Hereinafter, the processing of each of the modules 231, 232, 233 will be described in order. Note that the start instruction may be input to the data processing device 200 via the communication interface 270 by another device different from the data processing device 200.
[0026] A2-1. Reading process: Figure 3 is a flowchart showing an example of the reading process executed according to the reading module 231. In S105, the processor 210 initializes the flag data D1. Figure 4 is a diagram showing an example of the flag data D1. The flag data D1 represents the correspondence between the reading relative position Ps and the read flag F1.
[0027] The reading relative position Ps indicates the relative position of the fabric 700 to be read by the digital cameras 111-114 (Fig. 2). The relative position of the fabric 700 is the position of the fabric 700 with respect to the conveying device 900 that changes by conveyance. In the present embodiment, the relative position of the fabric 700 is represented by a count value that is the number of pulses obtained from the encoder 120. The count value is calculated in consideration of the conveyance direction. Here, the count value increases by conveyance in the forward direction Df and decreases by conveyance in the reverse direction Db. The relative position of the fabric 700 is a position on the fabric 700 and can be used as an index value indicating the position of the portion located at the first position Pr (Fig. 2). The relative position of the fabric 700 corresponds to the position in the direction parallel to the forward direction Df on the fabric 700.
[0028] A plurality of reading relative positions Ps are arranged in advance at regular intervals (here, at intervals of 100). As will be described later, when the current relative position calculated using the encoder 120 is the reading relative position Ps, the portion of the fabric 700 located at the first position Pr (here, the portion included in the reading area Ar (Fig. 2)) is read. The interval of the reading relative positions Ps may be set to a value corresponding to the width Wr in the forward direction Df of the reading area Ar (referred to as the reading width). Thereby, the possibility of a gap occurring between the plurality of read portions read at the plurality of reading relative positions Ps is reduced. Also, the interval of the reading relative positions Ps may be set to a value smaller than the reading width. In this case, two adjacent read portions include a common portion.
[0029] The read flag F1 indicates the reading state of the fabric 700. A read flag F1 of YES indicates that the fabric 700 has been read at the corresponding reading relative position Ps. A read flag F1 of NO indicates that the fabric 700 has not been read at the corresponding reading relative position Ps.
[0030] In S105, the processor 210 sets the read flag F1 for all the read relative positions Ps to NO. The processor 210 may further initialize the current relative position to a predetermined value (for example, zero). Note that the relationship between the zero relative position and the position on the fabric 700 may be determined by various other methods. Also, the relationship between the change amount of the count value and the change amount of the actual position may be various relationships. For example, a change of 100 in the count value may indicate a length of 5 cm or more and 50 cm or less.
[0031] In S110, the processor 210 acquires the current relative position. In this embodiment, the processor 210 calculates the current relative position by measuring the pulses from the encoder 120.
[0032] In S120, the processor 210 determines whether the current relative position is the read relative position Ps. If the current relative position is different from any of the plurality of read relative positions Ps (S120: No), the processor 210 proceeds to S110. The processor 210 repeats S110 and S120 until the current relative position becomes the same as any of the read relative positions Ps.
[0033] If the current relative position is the same as any of the plurality of read relative positions Ps (S120: Yes), in S130, the processor 210 determines whether the fabric 700 is unread at the current relative position. The processor 210 determines that the fabric 700 is unread when the read flag F1 associated with the current relative position by the flag data D1 (FIG. 4) is NO.
[0034] If the fabric 700 is unread (S130: Yes), in S140, the fabric 700 is photographed by the digital cameras 111 - 114. The processor 210 supplies a read instruction to each of the digital cameras 111 - 114. The digital cameras 111 - 114 read the fabric 700 in response to the read instruction. The processor 210 acquires the data of the read image representing the image read from each of the digital cameras 111 - 114.
[0035] Figs. 5(A) to 5(F) are diagrams showing examples of images to be processed. Fig. 5(A) shows examples of read images IMr1 to IMr4 respectively obtained from digital cameras 111 to 114 (Fig. 2). The read images IMr1 to IMr4 are each rectangular images having two sides parallel to the first direction Dx and two sides parallel to the second direction Dy perpendicular to the first direction Dx. The second direction Dy indicates a direction approximately parallel to the partial path Pth (Fig. 2). The data of each of the read images IMr1 to IMr4 is bitmap data representing the respective color values of a plurality of pixels arranged in a matrix along the first direction Dx and the second direction Dy. The color value is represented by, for example, the respective gradation values of red R, green G, and blue B (for example, values of 0 or more and 255 or less).
[0036] As described with reference to Fig. 2, the partial regions R11 to R14 corresponding to the read images IMr1 to IMr4 (Fig. 5(A)) are arranged side by side in the orthogonal direction Dt. The first read image IMr1 represents a portion including the first end 700e1 and the first ear 700L of the fabric 700 and the background BG. In the present embodiment, the fabric 700 has ears 700L and 700R. The ears of the fabric are the ends in the width direction of the fabric (the direction perpendicular to the partial path Pth in Fig. 2). The ears may have a configuration different from that of the inside of the fabric. For example, in order to reduce the possibility of fraying of the fabric, the thread density in the ears can be increased (for example, the ears can be formed using additional threads). The second read image IMr2 and the third read image IMr3 each represent a portion inside the fabric 700 rather than the ears 700L and 700R. The fourth read image IMr4 represents a portion including the second end 700e2 and the second ear 700R of the fabric 700 and the background BG. The entire read region Ar is represented by the entirety of these read images IMr1 to IMr4. Although not shown, the background BG can represent various objects located outside the fabric 700, such as a part of the conveying device 900.
[0037] In the example of FIG. 5(A), the portion represented by the third read image IMr3 of the fabric 700 has a linear defect FD. The linear defect can be formed by various causes. For example, a defect in the yarn forming the fabric 700 can form a linear defect. Also, a linear defect (e.g., a scratch, a linear drawing) can be formed by contact between the fabric 700 and other members (e.g., a device for transporting the fabric 700, a writing instrument, etc.).
[0038] In S150 (FIG. 3), the processor 210 sets the read flag F1 associated with the current relative position of the flag data D1 (FIG. 4) to YES.
[0039] In S160, the processor 210 associates the data of the read images obtained from the digital cameras 111 - 114 (FIG. 2) (in this embodiment, the four image data of the four read images) with the data of the current relative position and transmits them to the inspection module 232. The method of transmitting the data to the inspection module 232 may be any method. In this embodiment, a first buffer area BF1 for temporarily storing the data addressed to the inspection module 232 is provided in the non-volatile memory device 230 (FIG. 1). The processor 210 stores the data addressed to the inspection module 232 in the first buffer area BF1. As will be described later, the processor 210 that performs processing according to the inspection module 232 acquires the data from the first buffer area BF1. After S160, the processor 210 proceeds to S110.
[0040] When the fabric 700 has been read at the current relative position (S130: No), the processor 210 proceeds to S110.
[0041] The processor 210 repeats the above processing according to the reading module 231. The conveying device 900 (Fig. 2) conveys the fabric 700 according to the operation of the control panel 980. In this embodiment, the operator causes the conveying device 900 to continuously convey in the forward direction Df for the automatic inspection by the data processing device 200. Each time the current relative position reaches the reading relative position Ps associated with the read flag F1 of NO, the processor 210 causes the digital cameras 111 - 114 to capture the fabric 700 and transmits the data of the captured image to the inspection module 232. The operator can also visually inspect the fabric 700 instead of the automatic inspection. The operator may manually convey the fabric 700 in the forward direction Df or the reverse direction Db. When the conveyance in the reverse direction Db is performed, the current relative position may reach the reading relative position Ps associated with the read flag F1 of YES. In this case, the photographing of the fabric 700 is omitted (S130: No).
[0042] A2 - 2. Inspection processing and UI control processing: Figs. 6 and 7 are flowcharts showing examples of the inspection processing executed according to the inspection module 232. In S210, the processor 210 initializes the parameters. In this embodiment, the processor 210 sets the window size N to 1, sets the inspection mode to the second mode, and initializes the result data D2 (for example, the data representing the content in the result data D2 is deleted). The window indicates the range of the relative position of the image for display. The processor 210 generates the image for display by combining a plurality of captured images obtained by N times of reading (Fig. 3: S140). The window size N is represented by the number of times of reading (details will be described later). The inspection mode is selected from the first mode and the second mode. The first mode is a mode that does not use the inspection result by the data processing device 200. In this embodiment, in the first mode, the operator visually inspects the fabric 700. The second mode is a mode that uses the inspection result by the data processing device 200. Details of each mode will be described later. Details of the result data D2 will be described later.
[0043] In S215, the processor 210 receives data on the reading image and the relative position transmitted by the reading module 231 (Figure 3: S160). In this embodiment, the processor 210 monitors the first buffer area BF1 (Figure 1). In S160 of Figure 3, when the respective data on the four reading images IMr1 - IMr4 (Figure 5(A)) and the relative position are stored in the first buffer area BF1, the processor 210 acquires that data from the first buffer area BF1. The processor 210 executes the processing following S215 in response to the acquisition of new data. The processing of S215 and the processing following S215 are executed for each relative position. For example, when the conveyance in the forward direction Df continues for automatic inspection, the provision of new data at a new relative position is repeated. Each time the processor 210 acquires new data at a new relative position, it executes the processing following S215.
[0044] In S220, the processor 210 generates data on one reading image by combining the four reading images IMr1 - IMr4. Figure 5(B) shows an example of an image generated from the reading images IMr1 - IMr4. The image IMrc is a strip-shaped image representing the reading area Ar (Figure 2). Hereinafter, the image IMrc is referred to as the belt fabric image IMrc.
[0045] The method for generating the belt base fabric image IMrc may be various methods. For example, the partial regions R11-R14 (FIG. 2) may be arranged side by side in the orthogonal direction Dt so as not to overlap each other without gaps within the reading region Ar. In this case, the processor 210 may generate the data of the belt base fabric image IMrc by connecting the respective ends of the reading images IMr1-IMr4 (FIG. 5(A)) arranged in the first direction Dx. Alternatively, the partial regions R11-R14 may be arranged such that two adjacent partial regions partially overlap. In this case, the processor 210 may generate the data of the belt base fabric image IMrc by combining the reading images IMr1-IMr4 in the same arrangement as the arrangement of the partial regions R11-R14. As the image of the overlapping portion of the two reading images, the corresponding portion of one reading image may be used. In any case, the arrangement of the partial regions R11-R14 can be adjusted by adjusting the arrangement of the digital cameras 111-114.
[0046] The processor 210 stores the generated data of the belt base fabric image IMrc in the storage device 215 (for example, the non-volatile storage device 230). In this embodiment, the data of the belt base fabric image IMrc is registered in the result data D2. FIG. 8 is a diagram showing an example of the result data D2. In this embodiment, the result data D2 represents the correspondence relationship between the reading relative position Ps, the belt base fabric image IMrc, the belt mask image IMmc, the box information BB, the width Wf, the inspection mode MD, and the defect flag F2. In S220, the processor 210 associates the data of the belt base fabric image IMrc with the reading relative position Ps indicating the relative position acquired in S215 and adds it to the result data D2. Other information of the result data D2 will be described later.
[0047] In S225 (Fig. 6), the processor 210 determines whether the inspection mode is the second mode for automatic inspection. If the inspection mode is the second mode (S225: Yes), in S235, the processor 210 detects, from the belt fabric image IMrc, a defective part representing a defect (e.g., a hole, a linear defect FD (Fig. 5(B)), etc.) and an ear part representing the ear of the fabric 700. The method for detecting these parts may be various methods. In this embodiment, the processor 210 uses the trained object detection model 310 to detect the defective part and the ear part. The object detection model 310 may be various models capable of detecting the defective part and the ear part. In this embodiment, the object detection model 310 is a model called "RTMDet" disclosed in the following paper. Chengqi Lyu, Wenwei Zhang, Haian Huang, Yue Zhou, Yudong Wang, Yanyi Liu, Shilong Zhang and Kai Chen. "Rtmdet: An Empirical Study of Designing Real-Time Object Detectors", arXiv.2212.07784, December 16, 2022, https: / / doi.org / 10.48550 / arXiv.2212.07784.
[0048] RTMDet is a model that detects the bounding box and category (i.e., the type of object) of an object and performs region segmentation called instance segmentation. In this embodiment, the object detection model 310 is pre-trained to detect the bounding box, type, and region of a plurality of types of detection objects including defects representing holes, linear defects, and ears of the fabric 700. As the bounding box, a rectangle composed of two sides parallel to the first direction Dx and two sides parallel to the second direction Dy is to be detected. The type of the detection object is associated with the bounding box. Region segmentation detects the region (called a mask) of the detection object for each detection object. An identifier of the detection object is associated with the mask. This region segmentation determines for each pixel which mask the pixel is included in. The training method of the object detection model 310 may be various methods, for example, the training method described in the above-mentioned paper of RTMDet. The bounding box and mask of the defect are examples of the defective part detected using the image of the fabric 700. The defective part is the part of the fabric 700 that represents the defect.
[0049] In this embodiment, the specified size, which is the size of the image that can be input to the object detection model 310, is smaller than the size of the strip fabric image IMrc (Fig. 5(B)). Therefore, the processor 210 performs object detection using the object detection model 310 for each of a plurality of partial images representing different parts of the strip fabric image IMrc. Each partial image has the specified size. The whole of the strip fabric image IMrc is represented by the whole of the plurality of partial images.
[0050] Fig. 5(C) is a diagram showing an example of a plurality of partial images. In this embodiment, a plurality of partial images IMa1 - IMak are extracted from the strip fabric image IMrc (Fig. 5(B)). The arrangement of the plurality of partial images IMa1 - IMak on the strip fabric image IMrc is determined in advance. The partial image IMa2 represents the first ear 700L, the partial image IMai represents the defect FD, and the partial image IMak represents the second ear 700R.
[0051] FIG. 5(B) shows the ranges of the partial images IMa1 - IMak on the belt fabric image IMrc. In this embodiment, the plurality of partial images IMa1 - IMak are arranged in the first direction Dx on the belt fabric image IMrc. The range of the first direction Dx is different among the partial images IMa1 - IMak. The size of the partial images IMa1 - IMak in the second direction Dy is the same as the size of the belt fabric image IMrc in the second direction Dy. Also, in this embodiment, two adjacent partial images partially overlap. This is to reduce the possibility of non - detection of a defect when the defect is located at the boundary between two adjacent partial images. Note that the size of the partial image in the second direction Dy may be smaller than the size of the belt fabric image IMrc in the second direction Dy. In this case, a plurality of partial images arranged along the first direction Dx and the second direction Dy may be used.
[0052] FIG. 5(D) is a diagram showing an example of a mask and a bounding box detected from the partial images IMa1 - IMak (FIG. 5(C)). The partial mask images IMm1 - IMmk respectively represent the mask images corresponding to the partial images IMa1 - IMak. The mask ME1 and the bounding box BBE1 on the partial mask image IMm2 indicate the first ear 700L. The mask MD1 and the bounding box BBD1 on the partial mask image IMmi indicate the defect FD. The mask ME2 and the bounding box BBE2 on the partial mask image IMmk indicate the second ear 700R.
[0053] In S240 (FIG. 6), the processor 210 generates data of the band mask image by combining a plurality of partial mask images. FIG. 5(E) shows an example of the band mask image generated from the partial mask images IMm1-IMmk (FIG. 5(D)). The processor 210 generates data of the band mask image IMmc by combining the partial mask images IMm1-IMmk in the same arrangement as the arrangement of the partial images IMa1-IMak on the band fabric image IMrc (FIG. 5(B)). As the mask image of the overlapping portion of the two partial mask images, a mask image represented by the logical sum of the two partial mask images may be used. The band mask image IMmc represents a mask image corresponding to the band fabric image IMrc (FIG. 5(B)).
[0054] In S245 (FIG. 6), the processor 210 calculates the width of the fabric 700. FIG. 5(F) is a diagram showing an example of the width of the fabric 700. The band mask image IMmc is shown in the figure. In this embodiment, as the width Wf, the distance in the first direction Dx between both ears 700L and 700R is used. The processor 210 counts the number of pixels between the masks ME1 and ME2 representing the ears 700L and 700R, and calculates the width using the number of pixels and the pixel density of the band mask image IMmc (the unit is, for example, pixels per inch). In this embodiment, the pixel density is predetermined.
[0055] Note that since the fabric 700 is easily deformed, the distance between the ears 700L and 700R may vary depending on the position in the second direction Dy. The processor 210 may use the distance at a predetermined position in the second direction Dy within the band mask image IMmc (for example, the position of the center in the second direction Dy of the band mask image IMmc). Alternatively, the processor 210 may adopt various summary statistics (average value, median value, maximum value, etc.) of a plurality of distances at a plurality of positions in the second direction Dy.
[0056] In S250 (Fig. 6), the processor 210 associates the data of the detection information, which is the information acquired in S235 - S245, with the reading relative position Ps indicating the relative position acquired in S215, and adds it to the result data D2 (Fig. 8). The detection information includes the band mask image IMmc (S240), the box information BB (S235), the width Wf (S245), the inspection mode MD (here, the second mode), and the defect flag F2. The box information BB indicates the bounding box and the type of the object. The defect flag F2 indicates whether the portion represented by the belt fabric image IMrc of the fabric 700 has a defect. In this embodiment, when one or both of the following defect conditions C1 and C2 are satisfied, the processor 210 sets the defect flag F2 to YES. When both of the defect conditions C1 and C2 are not satisfied, the processor 210 sets the defect flag F2 to NO. (C1) One or more defective portions are detected in the process of S235. (C2) The width Wf is outside the allowable width range.
[0057] When the flat portion 700F of the fabric 700 (Fig. 2) has uneven portions such as wrinkles and folds, in S235 (Fig. 6), normal portions may be erroneously detected as defective portions. Also, there may be cases where defects are not detected. The allowable width range indicates an appropriate range of the width Wf of the fabric 700 without uneven portions. When the width Wf is outside the allowable width range, it is highly likely that the fabric 700 has uneven portions, and thus the error in object detection by S235 is large. Therefore, in this embodiment, even when the first defect condition C1 is not satisfied, if the second defect condition C2 is satisfied, the processor 210 sets the defect flag F2 to YES.
[0058] In S255 (Fig. 6), the processor 210 generates data of a combined fabric image for display by combining N strip fabric images included in the window. The total number N of the strip fabric images to be combined is determined by the window size N described in S210 (Fig. 6). The window size N is initialized to 1 in S210. As will be described later, as the reading of the fabric 700 (Fig. 3: S140) is repeated, the window size N increases by 1 each time. In this embodiment, the window size N can increase up to a standard size Nstd (Fig. 7(A): S270) described later. The standard size Nstd is the same as the number of reading times for reading the range from the reading area Ar (Fig. 2) to the visual area Av (in this embodiment, Nstd = 4). The window shows N strip fabric images composed of the current strip fabric image corresponding to the current relative position, or the current strip fabric image and the strip fabric image preceding it (here, the newest N strip fabric images).
[0059] Fig. 9(A) is a diagram showing an example of the shape of the fabric 700 with respect to the reading area Ar (Fig. 2). As shown in the figure, the fabric 700 can be conveyed in a slanting state with respect to the reading area Ar.
[0060] Fig. 9(B) is a diagram showing an example of the combined fabric image. The combined fabric image IMrNa is an image obtained by arranging four strip fabric images IMrc1 - IMrc4 in a direction parallel to the second direction Dy and joining the ends of adjacent strip fabric images. The positions in the first direction Dx are not adjusted among the strip fabric images IMrc1 - IMrc4.
[0061] When the fabric 700 slopes within each strip fabric image IMrc1 - IMrc4, at the joint of the strip fabric images IMrc1 - IMrc4, the position of the fabric 700 in the first direction Dx can deviate. That is, the fabric 700 can be discontinuous. For example, at the first image end ie1 on the side opposite to the second direction Dy (also called the -Dy direction) of the first strip fabric image IMrc1, the second image end ie2 on the second direction Dy (also called the +Dy direction) side of the second strip fabric image IMrc2 is connected (the image ends ie1, ie2 are ends parallel to the first direction Dx). The black dots in the figure indicate the ends of the fabric 700 at the ends of the strip fabric images IMrc1 - IMrc4 (referred to as fabric ends fe). For example, the first fabric end fe1 is the end of the fabric 700 on the first image end ie1. The second fabric end fe2 is the end of the fabric 700 on the second image end ie2. These fabric ends fe1, fe2 indicate the same part of the fabric 700. However, on the combined image ends ie1, ie2, the fabric ends fe1, fe2 are arranged at different positions in the first direction Dx from each other. The same applies to other fabric ends fe.
[0062] Although illustration is omitted, when a single linear defect intersects the connection part of two adjacent strip fabric images, on the combined fabric image IMrNa, a single defect can be represented as two separated defects. Such an image can lead to an incorrect interpretation of the inspection result (for example, an error in the total number of defects). Therefore, in this embodiment, the processor 210 combines N strip fabric images so that the positional deviation of the fabric 700 among the N strip fabric images becomes small.
[0063] Figures 9(C) - 9(F), Figures 10(A) - 10(F) are diagrams showing examples of the combination process. These figures represent four types of combination processes. The processor 210 executes one combination process pre - selected from these combination processes. Hereinafter, each combination process will be described.
[0064] FIG. 9(C) is a flowchart of the first type of bonding process. In S410b, the processor 210 detects the edge of the fabric 700 at the edge of the belt fabric image. The fabric edge fe described in FIG. 9(B) is detected as the edge of the fabric 700. The method for detecting the fabric edge fe may be any method. For example, the processor 210 separates the belt fabric image into the region of the fabric 700 and the region of the background BG by binarization (e.g., Otsu's binarization). The processor 210 detects the boundary point between the fabric 700 and the background BG at the edge of the belt fabric image as the fabric edge fe. In S420b, the processor 210 combines N belt fabric images in an arrangement where the fabric edges fe of two adjacent belt fabric images are connected. In this embodiment, the processor 210 determines the positions of the N belt fabric images in the first direction Dx such that the fabric edges fe of two adjacent belt fabric images are connected. FIG. 9(D) shows an example of the combined fabric image. On the combined fabric image IMrNb, the fabric edges fe of two adjacent belt fabric images are connected. For example, the first fabric edge fe1 of the first belt fabric image IMrc1 and the second fabric edge fe2 of the second belt fabric image IMrc2 are connected. Thus, on the combined fabric image IMrNb, the fabric 700 is continuous.
[0065] FIG. 9(E) is a flowchart of the second type of bonding process. In S410c, the processor 210 corrects the skew of each strip fabric image. The skew correction method may be any method. For example, the processor 210 detects four fabric edges fe indicating four corners of the fabric 700 from the strip fabric image by the same process as the process of S410b (FIG. 9(C)). The processor 210 corrects the skew of the strip fabric image so that the four fabric edges fe form a rectangle (for example, affine transformation). The images IMrcc1 - IMrcc4 in FIG. 9(F) respectively represent the corrected strip fabric images obtained from the strip fabric images IMrc1 - IMrc4. In each image IMrcc1 - IMrcc4, the skew of the fabric 700 is corrected. In S420c, the processor 210 combines N corrected strip fabric images in an arrangement where the fabric edges fe of two adjacent corrected strip fabric images are connected. The process of S420c is performed in the same manner as the process of S420b (FIG. 9(C)). FIG. 9(F) shows an example of the combined fabric image. On the combined fabric image IMrNc, the fabric edges fe of two adjacent corrected strip fabric images are connected. On the combined fabric image IMrNc, the fabric 700 is continuous.
[0066] FIG. 10(A) is a flowchart of the third type of bonding process. In S410d, the processor 210 calculates the center of the fabric 700 at the edge of the belt fabric image IMrc. FIG. 10(B) is a diagram showing the belt fabric images IMrc1 - IMrc4 and the fabric center fc. The first fabric center fc1 is the center of the fabric 700 at the image edge ie1 of the belt fabric image IMrc1. The midpoint of the line segment connecting the two fabric edges fe1 on the image edge ie1 is adopted as the first fabric center fc1. Similarly, the other fabric centers fc are also set at the midpoint between the two fabric edges on the image edge. In S420d (FIG. 10(A)), the processor 210 combines N belt fabric images in an arrangement that connects the fabric centers fc of two adjacent belt fabric images. In this embodiment, the processor 210 determines the positions of the N belt fabric images in the first direction Dx such that the fabric centers fc of two adjacent belt fabric images are connected. FIG. 10(C) shows an example of the combined fabric image. On the combined fabric image IMrNd, the fabric centers fc of two adjacent belt fabric images are connected. For example, the first fabric center fc1 of the first belt fabric image IMrc1 and the second fabric center fc2 of the second belt fabric image IMrc2 are connected. On the combined fabric image IMrNd, the fabric 700 is continuous.
[0067] Figure 10(D) is a flowchart of the fourth type of bonding process. The fourth type of bonding process bonds N belt fabric images on the premise that two adjacent belt fabric images include a common image portion. Figure 10(E) is a diagram showing an example of the belt fabric images IMrc1 - IMrc4. The common portion pc with hatching is the portion common to two adjacent belt fabric images among the portions representing the fabric 700. Each of the belt fabric images IMrc1 - IMrc4 has the common portion pc. Such belt fabric images IMrc1 - IMrc4 are generated by making the interval between a plurality of reading relative positions Ps (Figure 4) smaller than a value corresponding to the width Wr in the forward direction Df of the reading area Ar (Figure 2). In S410e (Figure 10(D)), the processor 210 calculates an arrangement in which the common portions pc of two adjacent belt fabric images overlap. In this embodiment, the length in the second direction Dy of the common portion pc, that is, the length in the second direction Dy of the overlapping portion of two adjacent belt fabric images, is predetermined. The processor 210 determines the position in the first direction Dx of each of the N belt fabric images so that the positional deviation between the two common portions pc of two adjacent belt fabric images becomes small. As a method for determining the position where the positional deviation between the two common portions pc becomes small, various methods similar to template matching can be adopted. For example, the position where the total value of the differences in color values (for example, the difference in luminance values) at the same position between the two common portions pc is the smallest may be adopted. Note that the processor 210 may determine the position in the first direction Dx and the position in the second direction Dy of each of the N belt fabric images so that the positional deviation in the first direction Dx and the positional deviation in the second direction Dy between the two common portions pc become small. In S420e, the processor 210 bonds the N belt fabric images in the arrangement calculated in S410e. As the image of the overlapping portion of two belt fabric images, the corresponding portion of one belt fabric image may be used. Figure 10(F) shows an example of the bonded fabric image. On the bonded fabric image IMrNe, the two common portions pc of two adjacent belt fabric images overlap at the same position. For example, the first common portion pc1 of the first belt fabric image IMrc1 and the second common portion pc2 of the second belt fabric image IMrc2 overlap at the same position. On the bonded fabric image IMrNe, the fabric 700 is continuous.
[0068] After generating the combined raw material image (Figure 6: S255), at S260, the processor 210 determines whether the oldest raw material image within the window has a defect. Figure 11(A) shows an example of the change in the window size N and the window WN. The processor 210 repeatedly executes the process SR (referred to as the acquisition inspection process SR) starting from S215 in Figures 6, 7(A)-7(C). The window size N and the window WN are updated each time the acquisition inspection process SR is executed (details will be described later).
[0069] The process number NP (Figure 11(A)) is a number indicating the order of the process starting from S215 (here, the acquisition inspection process SR). The last number of the symbols of the windows WN1-WN6 indicates the corresponding process number NP. As shown in the figure, each time the acquisition inspection process SR is executed, the window size N increases by 1. In this embodiment, the window size N can increase up to the standard size Nstd (in this embodiment, Nstd = 4). As will be described later, when the raw material 700 has a defect, the conveyance stops and the operator investigates the defect. Thereafter, the window size N is reset to 1.
[0070] In the figure, an example of the correspondence relationship among the strip raw material image IMrc, the reading relative position Ps, and the defect flag F2 is shown. The last number of the symbols of the strip raw material images IMrc1-IMrc6 indicates the process number NP at which the generation (S220) of the strip raw material images IMrc1-IMrc6 is performed. For example, the second strip raw material image IMrc2 is generated using the reading image obtained at the reading relative position Ps of 200 at the second (NP = 2) S220.
[0071] Each window WN1-WN6 indicates the range of the reading relative position Ps (i.e., the range of the belt fabric image IMrc). The symbol Pr attached near each window WN1-WN6 indicates the reading relative position Ps corresponding to the first position Pr (Fig. 2). For example, the first position Pr of the third window WN3 indicates the reading relative position Ps of 300. In the third (NP = 3) S220, the third belt fabric image IMrc3 is generated using the reading image obtained at the reading relative position Ps of 300.
[0072] Fig. 11(B) is a diagram showing an example of the change in the combined fabric image generated in S255 (Fig. 6). In the figure, the combined fabric images IMrN1-IMrN6 corresponding to the processing numbers NP from 1 to 6 are shown. In this example, when the processing number NP increases from 1 to 4, the window size N increases from 1 to 4. The combined fabric images IMrN1-IMrN4 are generated by sequentially combining the newly generated belt fabric images IMrc1-IMrc4. When the processing number NP increases from 4 to 5, the window size N is maintained at 4. In this case, the fifth combined fabric image IMrN5 is generated by deleting the oldest first belt fabric image IMrc1 among the fourth combined fabric image IMrN4 and combining the newly generated fifth belt fabric image IMrc5. Thus, the combined fabric image, i.e., the window WN, has the latest N belt fabric images IMrc.
[0073] In S260 (FIG. 6), the processor 210 determines whether the oldest strip fabric image IMrc in the window WN has a defect. When the window size N is the same as the standard size Nstd, the oldest strip fabric image IMrc is the Nstd-th strip fabric image IMrc counted from the latest strip fabric image IMrc corresponding to the first position Pr. That is, the portion represented by the oldest strip fabric image IMrc among the fabrics 700 is located at the second position Pv (FIG. 2). Thus, when N = Nstd, in S260, the processor 210 determines whether the portion located at the second position Pv among the fabrics 700 has a defect. Note that the processor 210 makes the determination in S260 by referring to the defect flag F2 in the result data D2 (FIG. 8).
[0074] When the oldest strip fabric image IMrc in the window WN does not have a defect (S260: No), in S265 (FIG. 7(A)), the processor 210 transmits the data of the combined fabric image to the UI module 233. The process of S265 is performed via the storage device 215 in the same manner as the process of S160 (FIG. 3). In this embodiment, a second buffer area BF2 for temporarily storing data addressed to the UI module 233 is provided in the non-volatile storage device 230 (FIG. 1). The processor 210 stores the data addressed to the UI module 233 in the second buffer area BF2. As will be described later, the processor 210 that performs processing according to the UI module 233 acquires the data from the second buffer area BF2.
[0075] In S270, the processor 210 updates the window size N. The window size N is set to the smaller value between the standard size Nstd and the value obtained by adding 1 to the current window size N. After S270, the processor 210 proceeds to S215 (FIG. 6). If the oldest strip fabric image IMrc within the window WN has no defect (FIG. 6: S260: No), the processing of S215 - S270 (FIGS. 6 and 7(A)) is repeated. The window size N increases by 1 with this repetition (S270). After the window size N increases to the standard size Nstd, the window size N is maintained at the standard size Nstd (S270). In the examples of FIGS. 11(A) and 11(B), the result of each S260 repeated until the processing number NP changes from 1 to 5 is No. The window size N increases from 1 to 4, and then the window size N is maintained at 4.
[0076] FIG. 12 is a flowchart showing an example of UI control processing executed according to the UI module 233. In S810, when an event occurs, the processor 210 determines the type of the event. In this embodiment, the processor 210 processes four events: reception of a combined fabric image including the oldest strip fabric image without a defect (referred to as a normal reception event), reception of a combined fabric image including the oldest strip fabric image with a defect (referred to as a defect reception event), reception of an instruction to change the inspection mode from the second mode to the first mode (referred to as a first instruction reception event), and reception of an instruction to change the inspection mode from the first mode to the second mode (referred to as a second instruction reception event). The processor 210 monitors the second buffer area BF2 (FIG. 1). When the data of the combined fabric image is stored in the second buffer area BF2 in S265 of FIG. 7, the processor 210 acquires the data from the second buffer area BF2. Since the acquired data does not include the data of the defect information described later, the processor 210 determines that a normal reception event has occurred.
[0077] When a normal reception event occurs, in S825, the processor 210 displays the combined fabric image on the display unit 240 (FIG. 1). FIGS. 13(A)-13(D) are diagrams showing examples of the screens displayed on the display unit 240. FIG. 13(A) shows an example of the screen displayed in S825. The screen DP1 is a screen displayed when the inspection mode is the second mode for automatic inspection. The screen DP1 represents an image area AWs for the combined fabric image IMrNs and a button Bt1 for switching the inspection mode to the first mode. After S825, the processor 210 proceeds to S810.
[0078] When the fabric 700 has a defect, by repeating the acquisition inspection process SR (FIG. 6), the belt fabric image representing the defect becomes the oldest belt fabric image within the window. For example, in the example of FIG. 11(B), the second belt fabric image IMrc2 represents the defect FD1. When the process number NP becomes 5 by repeating the acquisition inspection process SR, the second belt fabric image IMrc2 is the oldest belt fabric image within the window. When the oldest belt fabric image IMrc within the window WN has a defect (FIG. 6: S260: Yes), in S350 (FIG. 7(B)), the processor 210 executes a stop process for stopping the conveyance of the fabric 700. In this embodiment, the stop process includes a process of transmitting a conveyance stop instruction to the conveyance device 900. The control device 990 of the conveyance device 900 stops the conveyance of the fabric 700 according to the instruction.
[0079] In S355, the processor 210 generates the data of the combined mask image by combining the N strip mask images included in the window. The N strip mask images to be combined correspond to the N strip fabric images used in S255 (FIG. 6). The arrangement for combining the N strip mask images is the same as the arrangement for combining the N strip fabric images. When the skew-corrected strip fabric images are combined (FIG. 9(F)), the processor 210 may perform the same skew correction on the strip mask images as the skew correction of the corresponding strip fabric images, and combine the skew-corrected strip mask images. When two adjacent strip mask images overlap, as the mask image of the overlapping part, a mask image represented by the logical sum of the two strip mask images may be used.
[0080] In S360, the processor 210 obtains the bounding box of each defect included in the combined mask image by referring to the result data D2 (FIG. 8). The processor 210 obtains the arrangement of each bounding box on the combined mask image according to the arrangement for combining the N strip mask images.
[0081] In S370, the processor 210 performs a merging process of the defective parts. The merging process of the defective parts merges a plurality of defective parts in order to process the whole of the plurality of defective parts as one defective part when a plurality of parts of one defect on the fabric 700 are detected as a plurality of defective parts.
[0082] FIG. 14 is a flowchart showing an example of the merging process of defective parts. In S510, the processor 210 acquires an image of the target range. FIGS. 15(A)-15(D) are diagrams showing an example of the merging process. FIG. 15(A) shows an example of the target range image. In this embodiment, the processor 210 acquires, as the target range image, a 3-row 3-column partial mask image IMmn-IMmv centered on the target part mask image IMmr. As the partial mask image, the partial mask image generated in S235 (FIG. 6) may be used. As described with reference to FIGS. 5(D) and 5(E), the band mask image is represented by a plurality of partial mask images arranged in the first direction Dx. The combined mask image (S355 (FIG. 7(B))) is represented by N band mask images arranged in the second direction Dy. The combined mask image is represented by a plurality of partial mask images arranged along the first direction Dx and the second direction Dy. In S510 (FIG. 14), the processor 210 selects, as the target part mask image, an unprocessed partial mask image from the plurality of partial mask images of the combined mask image. The processor 210 selects the target part mask image and eight partial mask images surrounding the target part mask image as the target range image.
[0083] Note that when the target part mask image is located at the edge of the combined mask image, the positions of one or more of the surrounding eight partial mask images are outside the combined mask image. Acquisition of the partial mask image from outside the combined mask image is omitted. Further, when a band mask image corrected for skew is used in the generation of the combined mask image (FIG. 7(B): S355), a partial mask image corrected for skew may be used in the same manner.
[0084] In S515 (FIG. 14), the processor 210 selects a pair of defective parts of interest. In this embodiment, a pair of bounding boxes is selected as the pair of interest. When the attention range image IMi (FIG. 15(A)) includes a plurality of bounding boxes of a plurality of defective parts, the processor 210 selects, as the pair of interest, an unprocessed pair from all pairs of bounding boxes formed by the plurality of bounding boxes of the plurality of defective parts. The condition for two bounding boxes to be selected as the pair of interest may include that the two bounding boxes represent the same type of defect.
[0085] The attention range image IMi in FIG. 15(A) includes two masks MDa and MDb indicating two linear defects FDa and FDb and two bounding boxes BBa and BBb. The first defect FDa and the first bounding box BBa are included in the partial mask image IMmr, and the second defect FDb and the second bounding box BBb are included in the adjacent partial mask image IMmu. Assume that the defects FDa and FDb represent one long linear defect extending from the partial mask image IMmr to the partial mask image IMmu. When one defect is long, since the defect is represented by a plurality of partial mask images, a plurality of parts of the defect can be detected as a plurality of defective parts. Hereinafter, the description will be made assuming that the bounding boxes BBa and BBb are the pair of interest. Although not shown, when the total number of bounding boxes included in the attention range image IMi is 1 or less, the processor 210 cannot select a pair of bounding boxes and thus proceeds to S575.
[0086] In S530, the processor 210 calculates the distance between the two bounding boxes forming the pair of interest. FIG. 15(B) is a diagram showing the distance DBb between the bounding boxes BBa and BBb. As the distance DBb, the shortest distance is adopted.
[0087] In the S550, the processor 210 determines whether the distance DBb is less than or equal to the first threshold Th1. The first threshold Th1 is experimentally determined in advance such that when the two bounding boxes are respectively associated with two different defects on the fabric 700, the distance DBb is greater than the first threshold Th1.
[0088] When the distance DBb is less than or equal to the first threshold Th1 (S550: Yes), in S555, the processor 210 calculates the extending direction of the defect. FIG. 15(C) is a diagram showing an example of the extending direction of the defect. The calculation methods of the extending directions DDa and DDb of the defects FDa and FDb may be various methods. For example, the processor 210 may calculate a regression line using the positions of the respective pixels of the first mask MDa, and adopt the extending direction of the regression line as the extending direction DDa of the first defect FDa. Alternatively, the processor 210 may adopt the extending direction of the diagonal line of the first bounding box BBa as the extending direction DDa of the first defect FDa. The extending direction DDb of the second defect FDb is also determined in the same way. Each direction DDa and DDb may be represented by angles AGa and AGb with respect to a reference direction (for example, the first direction Dx).
[0089] In S560, the processor 210 determines whether the angle Ad formed by the two directions is less than or equal to the angle threshold Adth. The angle Ad is represented by the absolute value of the difference between the angles AGa and AGb of the two directions DDa and DDb, as shown in FIG. 15(C). The angle threshold Adth is experimentally determined in advance such that when the two defective parts respectively indicate two different defects on the fabric 700, the angle Ad is greater than the angle threshold Adth.
[0090] When the angle Ad is less than or equal to the angle threshold Adth (S560: Yes), in S565, the processor 210 merges the target pair. FIG. 15(D) is a diagram showing an example of the merging of the target pair. In this embodiment, the processor 210 generates a minimum rectangle including the two bounding boxes BBa and BBb as a new bounding box BBab.
[0091] The processor 210 may add a connection mask MDab that connects two masks MDa and NDb to a mask image (for example, a combined mask image). The connection mask MDab may be, for example, a line segment that connects two masks MDa and NDb at the shortest distance. Note that the addition of the connection mask MDab may be omitted.
[0092] In S570, the processor 210 stores the data of the merged defective portion in a storage device 215 (for example, a non-volatile storage device 230). In this embodiment, the processor 210 stores merged data D3 representing information on the merged defective portion (for example, including two bounding boxes before merging, a bounding box generated by the merging, and information associating them) in the non-volatile storage device 230. Then, the processor 210 proceeds to S575.
[0093] When the determination result in S550 is No and when the determination result in S560 is No, the processor 210 proceeds to S575.
[0094] In S575, the processor 210 determines whether all pairs have been processed. If unprocessed pairs remain (S575: No), the processor 210 proceeds to S515 to process a new pair of interest. If all pairs have been processed (S575: Yes), in S580, the processor 210 determines whether all ranges of the combined mask image have been processed. In this embodiment, if a partial mask image that has not been selected as the target partial mask image remains in the combined mask image, the determination result is No. If all partial mask images of the combined mask image have been processed as the target partial mask image, the determination result is Yes. If the determination result is No, the processor 210 proceeds to S510 to process a new target range. If the determination result is Yes, the processor 210 ends the process of FIG. 14, that is, the process of S370 (FIG. 7(B)).
[0095] Note that after the two defective parts are merged in S565, the processor 210 selects a target pair using the merged defective part instead of the defective parts before merging in S515. A defective part that is at least partially included in the target range image (S510) is used as a defective part that forms a target pair. Therefore, three or more defective parts representing a long defect can be merged into one defective part. For example, in the example of FIG. 11(B), within the fifth combined raw image IMrN5 associated with NP = 5, the defect FD1 is represented by three strip raw images IMrc2-IMrc4 (that is, three or more bounding boxes can represent the defect FD1). In the merging process of FIG. 14, the processor 210 can merge a plurality of bounding boxes representing the defect FD1 to form one bounding box BB1.
[0096] Also, although not shown, one partial mask image (for example, the partial mask image IMmr) may include a plurality of defective parts. In this embodiment, two defective parts included in one partial mask image can be merged.
[0097] In this way, the processor 210 can merge a plurality of defective parts representing one defect into one defective part. Therefore, the possibility of an incorrect interpretation of the inspection result (for example, an error in the total number of defects) is reduced.
[0098] In S375, the processor 210 generates defect information. In this embodiment, the defect information includes the type, bounding box, and length of each defective part included in the combined mask image. The method of calculating the length of the defective part may be various methods. For example, the diameter of the smallest circle circumscribing the mask representing the defect may be used as the length of the defective part. Alternatively, the length of the diagonal of the smallest rectangle circumscribing the mask representing the defect may be used as the length of the defective part. When a plurality of defective parts are merged in S370, the defect information includes information on the merged defective part.
[0099] In S380, the processor 210 transmits the data of the processing information to the UI module 233. The processing information includes the combined fabric image, the combined mask image, the bounding box, the width of the fabric 700, and the defect information. The data transmission method is the same as the transmission method in S265 (Fig. 7(A)). After S380, the processor 210 proceeds to S215 (Fig. 6).
[0100] When the data of the processing information including the combined fabric image and the defect information is stored in the second buffer area BF2 in S380, in S810 of Fig. 12, the processor 210 acquires the data of the processing information from the second buffer area BF2. Then, the processor 210 determines that a defect reception event has occurred.
[0101] When a defect reception event occurs, in S835, the processor 210 displays the processing information including the defect information on the display unit 240 (Fig. 1). Fig. 13(B) shows an example of the screen displayed in S835. The screen DP2 represents an image area AWt representing the combined fabric image IMrNt, a progress button Bt21 for proceeding with the process, a button Bt22 for editing the information representing the defect, a change button Bt23 for switching the inspection mode to the first mode, and a character string TW representing the width Wf. The combined fabric image IMrNt represents a linear defect FDp and a hole defect FDq. The image area AWt represents information regarding the defect in addition to the combined fabric image IMrNt (here, defect information DFDp, DFDq indicating the defects FDp, FDq). The defect information DFDp, DFDq represents the entire bounding box surrounding the defect, a character string representing the type of the defect, and a character string representing the length of the defect. The display of the length of the defect is omitted from the defect information DFDq indicating the hole defect FDq.
[0102] By observing the screen DP2, the operator can recognize the detected defect. Subsequently, the operator can examine the state of the defect by visually observing the fabric 700 (Figure 2). In the example of Figure 11(B), the fifth combined fabric image IMrN5 associated with NP = 5 is displayed in the image area AWt. As shown in the figure, a part of the defect FD1 is included in the second belt fabric image IMrc2 at the second position Pv. That is, a part of the defect FD1 is located in the visual area Av (Figure 2). Therefore, the operator can easily examine the state of the defect FD1.
[0103] If an error in the detection result is found through the defect investigation, the operator can edit the detection result by operating the button Bt22 on the screen DP2 (Figure 13(B)). For example, the processor 210 edits the result data D2 and the merged data D3 according to the instruction input to the operation unit 250. When the defect investigation is completed, the operator can input an instruction to proceed with the process by operating the proceed button Bt21. Also, the operator can input an instruction to change the inspection mode by operating the change button Bt23.
[0104] After S835 (Figure 12), at S838, the processor 210 determines whether it has received an instruction to change the inspection mode. After the conveyance stops, the operator may change the inspection mode to the first mode for visual inspection in order to visually inspect the fabric 700 (that is, the operator may operate the change button Bt23). If the change button Bt23 is operated (S838: Yes), the processor 210 proceeds to S810. Then, the processor 210 determines that the first instruction reception event has occurred. The processing in this case will be described later.
[0105] When the change button Bt23 is not operated (S838: No), at S840, the processor 210 determines whether or not to receive a progress instruction. When the progress button Bt21 (Fig. 13(B)) is operated (S840: Yes), at S845, the processor 210 sets the window size N to 1. Then, the processor 210 shifts to S810. When the progress button Bt21 is not operated (S840: No), the processor 210 shifts to S838. Hereinafter, the description will be made assuming that the progress button Bt21 is operated.
[0106] After the input of the progress instruction, the operator controls the conveyance by operating the control panel 980 of the conveyance device 900 (Fig. 2). For example, the operator starts the automatic conveyance by operating the third operation unit 983. The processor 210 repeats the above-described processing. In the example of Fig. 11(B), after the fifth combined base fabric image IMrN5, a sixth combined base fabric image IMrN6 composed of one belt base fabric image IMrc6 is generated.
[0107] In addition, when the screen DP1 (FIG. 13(A)) is displayed, the operator may operate the button Bt1 to change the inspection mode to the first mode for visual inspection. When the button Bt1 is operated, in S810 of FIG. 12, the processor 210 determines that the first instruction reception event has occurred. In this case, in S852, the processor 210 sets the inspection mode to the first mode. Then, the processor 210 proceeds to S810. The operator may manually convey the fabric 700 by operating the control panel 980 of the conveying device 900 (FIG. 2). In the reading process of FIG. 3, regardless of the inspection mode, every time the current relative position reaches the reading relative position Ps associated with the read flag F1 with NO, the processor 210 acquires the data of the read image. In the inspection process of FIG. 6, the determination result of S225 is No. In this case, the processor 210 executes the processes of S390, S393, S395, and S398 (FIG. 7(C)). The process of S390 is the same as the process of S255 (FIG. 6) (data of the combined fabric image for display is generated). The processes of S393 and S395 are the same as the processes of S265 and S270 (FIG. 7(A)), respectively (the data of the combined fabric image is transmitted to the UI module 233 and the window size N is updated). In S398, the processor 210 stores the data of the inspection record in the storage device 215. In this embodiment, in S398, the processor 210 sets the inspection mode MD corresponding to the reading relative position Ps that is the same as the current relative position of the result data D2 (FIG. 8) to the first mode. After S398, the processor 210 proceeds to S215 (FIG. 6).
[0108] When the data of the combined fabric image is stored in the second buffer area BF2 in S393, in S810 of FIG. 12, the processor 210 acquires the data of the combined fabric image from the second buffer area BF2. Since the acquired data does not include the data of defect information, the processor 210 determines that the normal reception event has occurred.
[0109] When a normal reception event occurs, in S825, the processor 210 displays the combined fabric image on the display unit 240 (FIG. 1). FIG. 13(C) shows an example of the screen displayed in S825. The screen DP3 is a screen displayed when the inspection mode is the first mode for visual inspection. The screen DP3 represents an image area AWu that represents the combined fabric image IMrNu, a button Bt31 for editing information representing defects, a change button Bt32 for switching the inspection mode to the second mode, and a button Bt33 for ending the process. Although not shown, when the button Bt31 is operated, the processor 210 edits the result data D2 and the merged data D3 according to the instruction input to the operation unit 250. When the change button Bt32 is operated, the processor 210 sets the inspection mode to the first mode (details will be described later). When the button Bt33 is operated, the processor 210 ends the process for inspection.
[0110] In addition, after the conveyance is stopped due to the detection of a defect, the operator may convey the fabric 700 in the reverse direction Db in order to investigate the detected defect. For example, like the defect FD1 in the fifth combined fabric image IMrN5 in FIG. 11(B), the fabric 700 may have a long defect FD1. In this case, the operator can easily investigate the entire defect FD1 by conveying the fabric 700 in the reverse direction Db.
[0111] A2-3. Another example of conveyance: FIG. 16 is a diagram showing another example of the conveyance of the fabric 700. As described above, by conveying the fabric 700 in the forward direction Df, the reading process in FIG. 3 and the acquisition inspection process SR starting from S215 in FIGS. 6 and 7(A)-7(C) are executed. FIG. 16 shows the relationship between the reading inspection processes SGa and SGb, which are processes including the reading process and the acquisition inspection process SR, and the reading relative position Ps at the time of execution of the reading inspection processes SGa and SGb, which indicates the current relative position.
[0112] In the figure, an upstream direction PD1 and a downstream direction PD2 with respect to the fabric 700 are shown. The upstream direction PD1 is the direction from the current relative position toward the untreated portion of the fabric 700. The upstream direction PD1 is the direction in which the current relative position changes due to the conveyance in the conveyance direction Df. In the present embodiment, the upstream direction PD1 is the direction in which the value of the relative position increases. The downstream direction PD2 is the direction from the current relative position toward the processed portion of the fabric 700. The downstream direction PD2 is the direction in which the current relative position changes due to the conveyance in the reverse direction Db. In the present embodiment, the downstream direction PD2 is the direction in which the value of the relative position decreases.
[0113] In the figure, dotted lines respectively corresponding to a plurality of reading relative positions Ps (here, 200 - 600) are shown. Boxes indicating the reading inspection processes SGa and SGb are arranged on the dotted lines of the corresponding reading relative positions Ps. For example, the reading inspection process SGa is associated with the reading relative position Ps of 500. In S220 (FIG. 6) of the reading inspection process SGa, a strip fabric image IMrc5 (FIG. 11(B)) is generated using the reading image obtained at the reading relative position Ps of 500.
[0114] The reading inspection process SGa is a reading inspection process for generating a fifth combined fabric image IMrN5 (FIG. 11(B)). Similar to the example of FIG. 11(B), in S835 (FIG. 12), a screen DP2 (FIG. 13(B)) is displayed on the display unit 240. In the example of FIG. 16, in Sua thereafter, before operating the progress button Bt21, the operator manually performs conveyance in the reverse direction Db. In the example of FIG. 16, the current relative position moves from 500 to a position between 300 and 200. Thereby, the operator can easily inspect the entire defect FD1. In response to the completion of the inspection, the operator operates the progress button Bt21 (FIG. 13(B)). The determination result in S840 of FIG. 12 becomes Yes, and the window size N is set to 1 in S845. The operator starts automatic conveyance by operating the third operation unit 983 (FIG. 2). The processor 210 proceeds with the process in the second mode which is the current inspection mode.
[0115] In the example of FIG. 16, due to the conveyance in the forward direction Df, the current relative position changes in the order of 300, 400, 500, and 600. The read flags F1 (FIG. 4) of the read relative positions Ps of 300, 400, and 500 have been set to YES. That is, at these read relative positions Ps, the fabric 700 has been read (FIG. 3: 130: No). Therefore, generation of a new read image is not executed, and the read inspection process is not executed. At the read relative position Ps of 600, the read flag F1 is NO. Therefore, using the new read image, the read inspection process SGb is executed. Here, the determination result of S130 (FIG. 3) is Yes, the fabric 700 is read at S140, and the determination result of S225 (FIG. 6) is Yes.
[0116] Note that the operator may change the inspection mode in various situations. FIG. 17 is a flowchart showing an example of a process including a change in the inspection mode. At S710, the inspection process proceeds in the second mode, and at S715, conveyance stops due to detection of a defect. For example, the processes corresponding to the process numbers NP from 1 to 5 in FIGS. 11(A) and 11(B) proceed. At the fifth (NP = 3) S835 (FIG. 12), the screen DP2 (FIG. 13(B)) is displayed on the display unit 240.
[0117] After a defect is detected, the operator may perform a visual inspection considering the possibility of detecting a new defect. At S720 (FIG. 17), the inspection mode is changed from the second mode to the first mode for visual inspection. The operator operates the change button Bt23 on the screen DP2 (FIG. 13(B)). In this case, the determination result of S838 (FIG. 12) is Yes. The processor 210 shifts to S810 and determines that the first instruction reception event has occurred. At S852, the processor 210 changes the inspection mode to the first mode for visual inspection. Then, the processor 210 shifts to S810. Note that when changing the inspection mode to the first mode, the processor 210 may set the window size N to 1 or the standard size Nstd.
[0118] In S725 (FIG. 17), the inspection process in the first mode proceeds. Here, the operator manually conveys the fabric 700. FIG. 18(A) is a diagram showing an example of the conveyance of the fabric 700. FIG. 18(A) shows the relationship between the reading inspection processes SG1 - SG4 and the reading relative position Ps indicating the current relative position at the time of execution of the reading inspection processes SG1 - SG4. The reading inspection processes SG1 - SG4 are executed in this order.
[0119] In S725 (FIG. 17), the operator manually performs conveyance in the forward direction Df and visually inspects the fabric 700. As a result, the reading inspection processes SG1 - SG3 (FIG. 18(A)) are performed. In each of the reading inspection processes SG1 - SG3, the determination result of S130 (FIG. 3) is Yes, the fabric 700 is read in S140, and the determination result of S225 (FIG. 6) is No. Also, in each of the reading inspection processes SG1 - SG3, by the processes of S393 (FIG. 7(C)) and S825 (FIG. 12), the screen DP3 in FIG. 13(C) is displayed on the display unit 240. If a defect is detected visually, the operator operates the button Bt31 to input information representing the detected defect into the data processing device 200. The processor 210 adds the input information to the result data D2 (FIG. 8).
[0120] After the visual inspection, the operator can change the inspection mode to the second mode for automatic inspection. Here, the operator can change the inspection mode after conveying the fabric 700 in the reverse direction Db. For example, the operator can convey the fabric 700 in the reverse direction Db to review the defect detected visually. Also, even if no defect is detected, the operator can convey the fabric 700 in the reverse direction Db so that no gap occurs between the portion of the fabric 700 that has been inspected visually and the portion that will be inspected automatically.
[0121] In S730 (FIG. 17), the operator manually conveys in the reverse direction Db. In the example of FIG. 18(A), the current relative position has moved from 800 to before 600. In S735, the operator operates the change button Bt32 (FIG. 13(C)). When the change button Bt32 is operated, the processor 210 determines in S810 (FIG. 12) that a second instruction reception event has occurred. In S862, the processor 210 sets the inspection mode to the second mode. In S890, the processor 210 displays an input screen on the display unit 240 and receives an instruction on how to process the inspected part.
[0122] FIG. 13(D) is a diagram showing an example of the input screen. The input screen DP4 represents a message Msg4, a first button Bt41, and a second button Bt42. The message Msg4 prompts the input of an instruction on whether to re-inspect the inspected part by automatic inspection. The first button Bt41 is a button for performing re-inspection, and the second button Bt42 is a button for not performing re-inspection.
[0123] In S892 (Fig. 12), the processor 210 determines whether the input instruction indicates the execution of a re-inspection. When the second button Bt42 is operated (S892: No), in S960, the processor 210 sets the window size N to 1. Then, the processor 210 proceeds to S810. The operator starts the automatic conveyance by operating the third operation unit 983 (Fig. 2). In S740 (Fig. 17), the processor 210 proceeds with the process in the second mode for the automatic inspection. In the example of Fig. 18(A), due to the conveyance in the forward direction Df, the current relative positions change in the order of 600, 700, 800, 900. Here, by the reading inspection processes SG1 - SG3, the read flags F1 (Fig. 4) of the read relative positions Ps of 600, 700, 800 are set to YES. That is, at these read relative positions Ps, the fabric 700 has been read (Fig. 3: S130: No). Therefore, the generation of a new read image is not executed, and the reading inspection process is not executed. At the read relative position Ps of 900, the read flag F1 is NO. Therefore, the reading inspection process SG4 is executed using a new read image. Here, the determination result of S130 is Yes, the fabric 700 is read in S140, and the determination result of S225 (Fig. 6) is Yes.
[0124] In S890 (Fig. 12), the operator may operate the first button Bt41 (Fig. 13(D)). Fig. 18(B) is a diagram showing an example of the conveyance of the fabric 700 when the first button Bt41 is operated. The processes of S710 - S725 in Fig. 17 are the same as the processes in the example of Fig. 18(A). The reading inspection processes SG1 - SG3 in Fig. 18(B) are the same as the reading inspection processes SG1 - SG3 in Fig. 18(A), respectively. In S730 (Fig. 17) after the reading inspection process SG3, the current relative position moves from 800 to a position between 700 and 600. In S735 (Fig. 17), the operator operates the change button Bt32 (Fig. 13(C)). In S810 (Fig. 12), the processor 210 determines that the second instruction reception event has occurred. As a result, S862 and S890 are executed, and the input screen DP4 (Fig. 13(D)) is displayed on the display unit 240.
[0125] When the first button Bt41 (Fig. 13(D)) is operated (Fig. 12: S892: Yes), at S950, the processor 210 deletes the set data after the current relative position from the flag data D1 (Fig. 4), the result data D2 (Fig. 8), and the merged data D3 (Fig. 1). In this embodiment, the processor 210 sets the read flag F1 of all the read relative positions Ps after the current relative position of the flag data D1 to NO. The processor 210 deletes the data associated with the read relative position Ps after the current relative position in the result data D2. The processor 210 deletes the data associated with the read relative position Ps after the current relative position in the merged data D3. Then, at S960, the processor 210 sets the window size N to 1 and proceeds to S810.
[0126] The operator starts the automatic conveyance by operating the third operation unit 983 (Fig. 2). At S740 (Fig. 17), the processor 210 proceeds with the process in the second mode for automatic inspection. In the example of Fig. 18(B), by the conveyance in the forward direction Df, the current relative position changes in the order of 700, 800, and 900. The read relative positions Ps of 700 and 800 have been processed in the first mode (read inspection processes SG2 and SG3). However, the read flags F1 (Fig. 4) of the read relative positions Ps of 700 and 800 are set to NO at S950 (Fig. 12). As a result, the read inspection processes SG4b, SG5b, and SG6b corresponding to the read relative positions Ps of 700, 800, and 900 are performed. Here, the determination result of S130 is Yes, the fabric 700 is read at S140, and the determination result of S225 (Fig. 6) is Yes.
[0127] As described above, in this embodiment, the digital cameras 111-114 (FIG. 2) are examples of reading devices configured to sequentially read different portions of the fabric 700 by transporting the fabric 700, which is an example of an object, in the transport direction Df. The processor 210 executes the following processes according to a program (modules 231-233). In S235, S245, and S250 (FIG. 6), the processor 210 executes a detection process (also referred to as detection process SS) that is a process of detecting defects in the fabric 700. The processor 210 sequentially executes the detection process SS using each of a plurality of read images (here, a plurality of strip fabric images IMrc) acquired using the digital cameras 111-114. In the example of FIG. 16, in Sua, the fabric 700 is returned to the upstream side (i.e., the reverse direction Db side) of the transport direction Df (FIG. 17: S730). After the fabric 700 is returned, the transport of the fabric 700 in the transport direction Df is resumed (FIG. 17: S740). Thus, in a specific case (referred to as the first specific case) where the transport of the fabric 700 in the transport direction Df is resumed after the fabric 700 is returned to the upstream side of the transport direction Df, the processor 210 does not execute a new detection process SS on the portion of the fabric 700 for which the detection process SS has already been executed (here, the portions corresponding to the reading relative positions Ps of 300, 400, and 500). According to this configuration, since the execution of a new detection process SS for the portion of the fabric 700 for which the detection process SS has already been executed is omitted, the processing burden when the transport is resumed can be reduced.
[0128] The method for determining whether the detection process SS has been executed may be various methods. In this embodiment, as described in S215 (FIG. 6), when the processor 210 is provided with a read image by the reading module 231, the processor 210 executes the detection process SS using the provided read image. When the reading module 231 does not provide a read image, the processor 210 waits for the provision of the read image in S215 without executing the detection process SS. That is, when the reading module 231 provides a read image, the processor 210 determines that the detection process SS using the provided read image has not been executed. As described in FIG. 16, when a read image is not provided from the reading module 231 during the conveyance in the conveyance direction Df, the processor 210 determines that the detection process SS using the read image at the read relative position Ps is already executed even if the current relative position is the read relative position Ps.
[0129] Also, in this embodiment, in S150 of FIG. 3, the processor 210 sets the read flag F1 (FIG. 4) at the read relative position Ps where the fabric 700 has been read to YES. As described in S130, when the read flag F1 associated with the read relative position Ps indicating the current relative position is YES (S130: No), the processor 210 does not execute the reading of the fabric 700 (S140) and the transmission of the data of the read image (S160). As described above, when the data of the read image is not transmitted, in the process of FIG. 6, the processor 210 does not execute a new detection process SS on the assumption that the detection process SS using the read image at the read relative position Ps is already executed even if the current relative position is the read relative position Ps (for example, the read relative positions Ps of 300, 400, and 500 in FIG. 16). And the read relative position Ps (and thus the relative position of the fabric 700) corresponds to a position in a direction parallel to the conveyance direction Df on the fabric 700. In this way, the flag data D1 is an example of data representing the processed position associated with the position in the conveyance direction Df on the fabric 700 of the portion of the fabric 700 for which the detection process SS has been executed. S150 (FIG. 3) is an example of a process for storing such flag data D1 in the storage device 215 (here, the non-volatile storage device 230).
[0130] As shown in FIG. 16, in a first specific case where, after the fabric 700 is returned to the reverse direction Db side of the conveyance direction Df, the conveyance of the fabric 700 in the conveyance direction Df is restarted, at the reading relative positions Ps of 300, 400, and 500, no reading image is provided, and at the reading relative position Ps of 600, a reading image is provided. Thus, the processor 210 does not execute the detection process SS at the reading relative positions Ps of 300, 400, and 500, and restarts the detection process SS at the reading relative position Ps of 600. The reading relative position Ps of 600 is the next reading relative position Ps of the processed position (the reading relative position Ps of 500) on the most upstream side (i.e., the upstream direction PD1 side) of the conveyance direction Df as seen from the relative position (here, between 300 and 200) where the conveyance is restarted. The reading image associated with the reading relative position Ps (the reading relative position Ps of 600) at which the detection process SS is restarted represents a portion of the fabric 700 upstream of the most upstream processed position (the reading relative position Ps of 500). Therefore, the processor 210 can appropriately execute the detection process SS while reducing the processing burden in the first specific case.
[0131] Also, in this embodiment, the detection process SS (FIG. 6) includes the process of S235. The process of S235 detects a defective part, which is a part representing a defect (e.g., the defect FD in FIG. 5(D)) in the fabric 700, as a defect (hereinafter, the process of S235 is referred to as the defect detection process S235). The bounding box and the mask (e.g., the bounding box BBD1 and the mask MD1 in FIG. 5(D)) are examples of the defective part. In S370 (FIG. 7(B)), the processor 210 executes a merging process of the defective parts (the process of S370 is also referred to as the merging process S370). As shown in FIG. 14, the processor 210 merges the first defective part and the second defective part as one defective part (e.g., the first bounding box BBa and the second bounding box BBb in FIG. 15(D) are merged to form a bounding box BBab). The condition for merging is that a continuity condition CC indicating that the first defective part and the second defective part are in a predetermined continuous relationship is satisfied. In this embodiment, the continuity condition CC includes that the determination results of both S550 and S560 are Yes. As shown in FIGS. 15(A)-15(D), under such conditions, the processor 210 can merge two defective parts representing different parts of the same linear defect. Note that the processor 210 may determine whether two defective parts are in a continuous relationship regardless of whether the two defective parts are actually continuous. In other words, the processor 210 may determine that two defective parts are in a continuous relationship when the two defective parts can represent different parts of the same defect. The continuity condition CC may be various conditions for such determination. For example, when two defective parts are actually continuous, it may be determined that the two defective parts are in a continuous relationship regardless of the angle Ad.
[0132] Also, in this embodiment, the defect detection process S235 (FIG. 6) includes a process of detecting a linear defect portion representing a linear defect as a defect portion (for example, the bounding box BBD1 and the mask MD1 representing the defect FD in FIG. 5(D)). The merging process S370 (FIG. 7(B)) includes a process of merging two linear defect portions into one defect portion (for example, the bounding boxes BBa and BBb representing the defects FDa and FDb in FIG. 15(A) are merged as one bounding box BBab). As described with reference to FIG. 14, in this embodiment, the continuous condition CC includes that the determination results of both S550 and S560 are Yes. The condition of S560 is that, as described with reference to FIG. 15(C), the angle Ad formed by the extending directions of the two linear defects represented by the two linear defect portions is equal to or less than the angle threshold Adth (the angle Ad formed by the extending directions DDa and DDb of the two linear defects FDa and FDb represented by the two linear defect portions BBa and BBb is an example of the angle Ad). The condition of S550 is that, as described with reference to FIG. 15(B), the distance DBb between the two linear defect portions is equal to or less than the first threshold Th1 (the distance DBb between the bounding boxes BBa and BBb is an example of the distance DBb). By using such a continuous condition CC, the processor 210 can merge the two defect portions representing the two defects FDa and FDb included in one linear defect.
[0133] Also, in this embodiment, in S852 and S862 of FIG. 12, the processor 210 selects a mode according to a user's instruction from a plurality of modes including a first mode and a second mode. As shown in S225 of FIG. 6 and FIG. 7(C), when the inspection mode is the first mode (S225: No), the processor 210 does not execute the detection process SS. As shown in S225, S235, S245, and S250 of FIG. 6, when the inspection mode is the second mode (S225: Yes), the processor 210 executes the detection process SS. As shown in FIG. 12, when the inspection mode is changed from the first mode to the second mode (862) and the determination result of S892 is Yes, the processor 210 executes S950. In S950, the processor 210 sets the read flag F1 of all read relative positions Ps after the current relative position of the flag data D1 to NO. In the example of FIG. 18(B), the read flag F1 corresponding to the read relative positions Ps (700, 800) processed by the first mode (inspected visually in this embodiment) is set to NO. The read relative positions Ps processed by the first mode indicate the uninspected read relative positions Ps by the detection process SS. The processor 210 executes the read inspection processes SG4b and SG5b corresponding to the uninspected read relative positions Ps by the detection process SS. The read inspection processes SG4b and SG5b include the detection process SS using a read image representing an uninspected portion of the fabric 700 by the detection process SS. In this way, the processor 210 can provide the user with a plurality of modes including a first mode in which the detection process SS is not executed and a second mode in which the detection process SS is executed. Further, in a specific case where the inspection mode is changed from the first mode to the second mode (in this embodiment, when the determination result of S892 is Yes), the processor 210 can inspect, by the detection process SS, an uninspected portion of the fabric 700 that has been processed by the first mode.
[0134] B. Second Embodiment: After the process proceeds in the first mode, the inspection mode can be changed from the first mode to the second mode. In this embodiment, when the inspection mode is changed in this way, the inspection process and the UI control process are configured so that the result of the automatic inspection can be used without re-inspecting the parts inspected in the first mode by automatic inspection.
[0135] FIG. 19 is a flowchart showing another embodiment of the inspection process. The difference from the inspection processes of FIGS. 6 and 7(A)-7(C) is only that S225 is deleted and, instead, S257 is added between S255 and S260. In this embodiment, the processor 210 migrates from S220 to S235 and executes the processes of S235-S255 regardless of the inspection mode. After S255, at S257, the processor 210 determines whether the inspection mode is the second mode. If the inspection mode is the second mode (S257: Yes), the processor 210 migrates to S260. The processes after S260 are the same as the corresponding processes of FIGS. 6 and 7(A)-7(C). If the inspection mode is the first mode (S257: No), the processor 210 executes the process of FIG. 7(C) in the same manner as when the determination result of S225 in FIG. 6 is No.
[0136] When the inspection mode is the first mode, in addition to visual inspection by an operator, automatic inspection by the data processing device 200 is performed in S235 - S255. However, in S250, the processor 210 sets the inspection mode MD to the first mode, not the second mode. Also, the operator can edit the result data D2 and the merged data D3 according to the visual inspection result by operating the button Bt31 in FIG. 13(C). The processor 210 records both the result of the inspection by the operator (i.e., the result of the first mode) and the result by S235 - S255 (i.e., the result of the second mode) in the data D2 and D3. For example, the box information BB can represent the bounding box added by the operator and the bounding box detected in S235. The result of the automatic inspection can be used when the inspection mode is changed from the first mode to the second mode. In this embodiment, among the UI control processes (FIG. 12), the process when the second instruction reception event occurs is different from the process in FIG. 12 (details will be described later).
[0137] FIG. 20 is a flowchart showing an example of a process including a change in the inspection mode. The difference from the process example in FIG. 17 is only that S725 is replaced by S725c and S730 is omitted. FIG. 21 is a diagram showing an example of the conveyance of the fabric 700. The reading inspection processes SG1c - SG3c show the reading inspection processes in the first mode at the reading relative positions Ps of 600, 700, and 800, similar to the reading inspection processes SG1 - SG3 in FIG. 18(A). Different from the example in FIG. 18(A), in the reading inspection processes SG1c - SG3c, the automatic inspection processes of S235 - S255 are also performed. The reading inspection process SG4 is the same as the reading inspection process SG4 in FIG. 18(A). The process between the reading inspection process SG3c and the reading inspection process SG4 is different from the process between the reading inspection process SG3 and the reading inspection process SG4 in FIG. 18(A).
[0138] The processing of S710 - S720 in FIG. 20 is the same as the processing of S710 - S720 in FIG. 17 respectively. In S725c, reading inspection processes SG1c - SG3c (FIG. 21) are performed. The difference from S725 in FIG. 17 is that the automatic inspection processes of S235 - S255 (FIG. 19) are also performed.
[0139] In the processing example of FIG. 20, after the visual inspection (S725c), the operator changes the inspection mode to the second mode for automatic inspection (S735) without transporting the fabric 700 in the reverse direction Db. In the example of FIG. 21, on the screen DP3 (FIG. 13(C)), the screen is displayed at S825 of the reading inspection process SG3 (FIG. 12). The operator operates the change button Bt32 (S735 (FIGS. 20 and 21)). The processor 210 determines at S810 (FIG. 12) that the second instruction reception event has occurred.
[0140] FIG. 22 is a flowchart showing an example of the processing when the second instruction reception event occurs in the UI control process. In this embodiment, the processing of FIG. 22 (S863 - S883) is added between S862 and S890 of the UI control process in FIG. 12. The processing of other parts of the UI control process is the same as the corresponding parts in FIG. 12.
[0141] After S862, in S863, the processor 210 refers to the result data D2 (FIG. 8) and determines whether the inspection mode MD of the first mode is recorded in the first downstream range (including the current relative position), which is the range of the reading relative position Ps on the downstream side (i.e., the downstream direction PD2 side) from the current relative position. In this embodiment, the processor 210 determines whether the K inspection modes MD corresponding to K consecutive reading relative positions Ps (K is an integer of 1 or more) including the reading relative position Ps closest to the current relative position within the first downstream range are set to the first mode. The plurality of consecutive reading relative positions Ps indicate a plurality of reading relative positions Ps arranged in the order of conveyance without any missing intermediate reading relative positions Ps. The processor 210 determines that the condition of S863 is satisfied when the maximum number K is 1 or more. For example, the processor 210 may determine that the condition of S863 is satisfied when the inspection mode MD of the closest reading relative position Ps is the first mode. If the determination result of S863 is No, the processor 210 proceeds to S890 (FIG. 21). The processing after S890 is the same as the processing of the embodiment in FIG. 12.
[0142] In the example of FIG. 21, the current relative position is 800. In this case, the first downstream range is the range of 800 or less. The reading relative position Ps closest to the current relative position within the first downstream range is 800. The processor 210 refers to the inspection mode MD associated with the reading relative position Ps in the order of 800, 700, and 600. At the reading relative positions Ps of 800, 700, and 600, the reading inspection processes SG3c - SG1c in the first mode have been executed, and the inspection mode MD is the first mode. The inspection mode MD of the reading relative position Ps closest to the current relative position (here, 800) is the first mode, and the determination result of S863 (FIG. 22) is Yes. In this case, in S867, the processor 210 displays a warning.
[0143] FIG. 23 is a diagram showing an example of a warning screen displayed on S867. The warning screen DP5 represents a message Msg5, a first button Bt51, and a second button Bt52. The message Msg5 indicates that data in the first mode (visual inspection) is recorded on the downstream side (i.e., on the downstream direction PD2 side), and prompts to input an instruction indicating whether to replace the data in the first mode on the downstream side with the data in the second mode (automatic inspection). The first button Bt51 is a button for performing replacement, and the second button Bt52 is a button for not performing replacement.
[0144] In S870 (FIG. 22), the processor 210 receives an instruction on a processing method. In S873, the processor 210 determines whether the input instruction indicates execution of replacement. When the second button Bt52 is operated (S873: No), the processor 210 proceeds to S890.
[0145] When the first button Bt51 is operated (S873: Yes), in S877, the processor 210 deletes the data in the first mode on the downstream side (i.e., on the downstream direction PD2 side) from the current relative position. In this embodiment, the processor 210 selects, as a processing target range, the range of the reading relative position Ps of the first mode that is continuous from the currently detected relative position in S863. That is, the processing target range is the range of the reading relative position Ps that has been processed in the first mode. In the example of FIG. 21, the processing target range is in the range of 800 - 600. The processor 210 deletes the data associated with the first mode within the processing target range from the result data D2 (FIG. 8) and the merged data D3. For example, the processor 210 deletes the data (e.g., data of the box information BB) associated with the first mode within the processing target range from the result data D2. The processor 210 deletes the data associated with the first mode within the processing target range from the merged data D3.
[0146] In S880 (Fig. 22), the processor 210 switches the data within the processing target range between the result data D2 and the merged data D3 to the data associated with the second mode. For example, the band mask image IMmc, the box information BB, the width Wf, the inspection mode MD, and the defect flag F2 within the processing target range of the result data D2 (Fig. 8) are set to the data already recorded in S235 - S250 (Fig. 19). The inspection mode MD is set to the second mode. The data within the processing target range of the merged data D3 is set to the data already recorded in S255 (Fig. 19). After S880, the processor 210 proceeds to S890.
[0147] In the example of Fig. 21, the operator operates the first button Bt51 in Fig. 23 (S873: Yes). The processor 210 switches the data associated with the reading relative positions Ps of 800, 700, and 600 between the result data D2 and the merged data D3 to the data in the second mode in S877 and S880. After this, the processor 210 proceeds to S890 (Fig. 12). The processing from S890 to S960 is the same as the processing in the above embodiment. The processor 210 sets the window size N to 1 in S960 and proceeds to S810.
[0148] The operator starts the automatic conveyance by operating the third operation unit 983 (Fig. 2). In S740 (Fig. 20), the processor 210 proceeds with the processing in the second mode for the automatic inspection. In the example of Fig. 21, due to the conveyance in the forward direction Df, the current relative position changes from 800 to 900. At the reading relative position Ps of 900, the read flag F1 is NO. Therefore, the reading inspection process SG4 is executed using a new read image. Here, the determination result in S130 is Yes, the fabric 700 is read in S140, and the determination result in S225 (Fig. 6) is Yes.
[0149] As described above, in this embodiment, in S852 and S862 of FIG. 12, the processor 210 selects a mode according to a user's instruction from a plurality of modes including a first mode and a second mode. In the first mode of this embodiment, the result of the detection process SS is not used in the inspection process (FIG. 19: S257: No, FIG. 7(C)). The first mode of this embodiment is an example of a first mode that does not require the result of the detection process SS. In the second mode of this embodiment, the result of the detection process SS is used in the inspection process (FIG. 19: S257: Yes, S260, FIG. 7(A), FIG. 7(B)). The second mode of this embodiment is an example of a second mode that requires the result of the detection process.
[0150] Also, in S235 - S255 of FIG. 19, the processor 210 executes the detection process SS (S235, S245, S250) and the process of storing the data representing the result of the detection process SS in the storage device 215 (S250) in each of the cases where the inspection mode is the first mode and the second mode. In this embodiment, the result of the detection process SS is represented by the result data D2 stored in the non - volatile storage device 230.
[0151] When the inspection mode is changed from the first mode to the second mode (S862 (FIG. 12), S735 (FIG. 20)), the processor 210 executes the process of FIG. 22 following S862 of FIG. 12. In S877, the processor 210 deletes the data associated with the first mode within the processing target range from the result data D2. The processing target range is the range of the read relative position Ps processed by the first mode. In this embodiment, the processing target range is a range continuous downstream (i.e., on the downstream direction PD2 side) from the current relative position. The read relative positions Ps of 600, 700, and 800 in FIG. 21 are examples of the processing target range. In S880, the processor 210 switches the data within the processing target range in the result data D2 to the data associated with the second mode. That is, the processor 210 uses the result of the detection process SS that has been executed in the first mode as the result of the detection process SS for the portion of the fabric 700 that has been processed in the first mode.
[0152] Thus, in a specific case where the inspection mode is changed from the first mode to the second mode (here, when S863: Yes and S873: Yes in FIG. 22), the processor 210 uses the result of the detection process SS executed in the first mode as the result of the detection process SS for the portion of the fabric 700 processed by the first mode. According to this configuration, the processor 210 can use the result of the detection process SS for the portion processed by the first mode without transporting the fabric 700 in the reverse direction Db.
[0153] Also, in this embodiment, the reading process (FIG. 3) is the same as the reading process of the first embodiment. The inspection process (FIGS. 19, 7(A)-7(C)) is the same as the inspection process (FIGS. 6, 7(A)-7(C)) of the first embodiment, except for the deletion of S225 and the addition of S257. The UI control process is the UI control process (FIG. 12) of the first embodiment with the process of FIG. 22 added thereto. Thus, in this embodiment, the processor 210 executes various processes similar to those of the first embodiment. For example, the processor 210 can execute processes similar to FIGS. 11(A), 11(B), 16, 18(A), and 18(B) on the portion of the fabric 700 from the current relative position upstream (i.e., the upstream direction PD1). Thus, this embodiment can provide the same various advantages as those provided by the first embodiment.
[0154] C. Third Embodiment: FIG. 24 is a flowchart showing another embodiment of the process when the second instruction reception event occurs in the UI control process. In this embodiment, the process of FIG. 23 (S910 - S935) is added between S892 and S950 of the UI control process of FIG. 12. The processes of the other parts of the UI control process are the same as the processes of the corresponding parts of FIG. 12.
[0155] In this embodiment, when the inspection mode is changed from the first mode to the second mode, the processor 210 determines, in the same manner as S863 in FIG. 22, whether the inspection mode MD of the first mode is recorded on the downstream side (i.e., on the downstream direction PD2 side) from the current relative position. If the inspection mode MD of the first mode is recorded, the processor 210 outputs a warning. For example, in the example of FIG. 18(B), at S735, the inspection mode is changed from the first mode to the second mode. The current relative position is between 700 and 600. At the reading relative position Ps of 600 on the downstream side of the current relative position, the reading inspection process SG1 in the first mode has been executed, and the inspection mode MD is the first mode. Such a reading relative position Ps in the first mode on the downstream side may be a position where the detection process in the second mode is desired. For example, the conveyance (S730) in the reverse direction Db before the change (S735) of the inspection mode may be performed to re-inspect the portion of the fabric 700 that has been processed in the first mode in the second mode. If the conveyance amount of the conveyance in the reverse direction Db is insufficient, the inspection mode MD at the reading relative position Ps on the downstream side may be the first mode.
[0156] In the example of FIG. 18(B), at S735, a second instruction reception event occurs. When the second instruction reception event occurs, the processor 210 executes S862 - S892 in FIG. 12. If the instruction input at S890 does not indicate the execution of a re-inspection (S892: No), the processor 210 sets the window size N to 1 at S960 and shifts to S810. The processing in this case is the same as the processing in the embodiment of FIG. 12. For example, at the reading relative positions Ps such as 600, 700, and 800 in the example of FIG. 18(A), the reading inspection process is omitted at the reading relative positions Ps that have been processed in the first mode.
[0157] When the instruction input at S890 (FIG. 12) indicates the execution of a recheck (S892: Yes), at S910 (FIG. 24), the processor 210 determines whether the inspection mode MD of the first mode is recorded on the downstream side of the current relative position (i.e., on the downstream direction PD2 side). At S910, the processor 210 determines whether the inspection mode MD of the first mode is recorded in a second downstream range (excluding the current relative position), which is a range of the read relative position Ps on the downstream side of the current relative position. The difference from the determination method of S863 (FIG. 22) is that the second downstream range does not include the current relative position, unlike the first downstream range referred to in S863. The processor 210 determines whether the L inspection modes MD corresponding to L consecutive read relative positions Ps including the read relative position Ps closest to the current relative position within the second downstream range are set to the first mode. The processor 210 determines that the determination result of S910 is Yes when the maximum number L is 1 or more. For example, the processor 210 may determine that the condition of S910 is satisfied when the inspection mode MD of the closest read relative position Ps described above is the first mode. When the determination result of S910 is No, the processor 210 proceeds to S950 (FIG. 12). The processing subsequent to S950 is the same as the processing of the embodiment in FIG. 12.
[0158] In the example of FIG. 18(B), the current relative position at the time of the change of the inspection mode (S735) is between 700 and 600. The read relative position Ps closest to the current relative position within the second downstream range on the downstream side of the current relative position (i.e., on the downstream direction PD2 side) is 600. At the read relative position Ps of 600, the read inspection process SG1 in the first mode has been executed, and the inspection mode MD is the first mode. Therefore, the determination result of S910 is Yes. In this case, at S915, the processor 210 displays a warning.
[0159] FIG. 25 is a diagram showing an example of a warning screen displayed on S915. The warning screen DP6 represents a message Msg6, a first button Bt61, and a second button Bt62. The message Msg6 indicates that data in the first mode (visual inspection) is recorded on the downstream side (i.e., the downstream direction PD2 side), and prompts the input of an instruction indicating whether to perform conveyance in the reverse direction Db. The first button Bt61 is a button for performing conveyance in the reverse direction Db, and the second button Bt62 is a button for not performing conveyance in the reverse direction Db.
[0160] In S920 (FIG. 24), the processor 210 receives an instruction on the processing method. In S925, the processor 210 determines whether the input instruction indicates the execution of conveyance in the reverse direction Db. When the second button Bt62 is operated (S925: No), the processor 210 proceeds to S950.
[0161] When the first button Bt61 is operated (S925: Yes), the operator conveys the fabric 700 in the reverse direction Db (Su1) by operating the control panel 980 (FIG. 2). In this embodiment, the operator conveys the fabric 700 until the current relative position reaches the start position (i.e., the first reading relative position Ps) among the L consecutive reading relative positions Ps (inspection mode MD = first mode) described in S910. For example, when the inspection mode is changed at S735 in FIG. 18(B), the L consecutive reading relative positions Ps are one reading relative position Ps (600). The start position, that is, the first reading relative position Ps is 600. The operator conveys the fabric 700 in the reverse direction Db until the current relative position reaches 600.
[0162] In S935 (Fig. 24), the processor 210 determines whether the inspection mode MD of the first mode is recorded on the downstream side (i.e., on the downstream direction PD2 side) of the current relative position. The determination method in S935 is the same as the determination method in S910. If the determination result in S910 is Yes, the processor 210 repeats S935 until the determination result changes to No. As described above, due to the progress of the conveyance (Su1) in the reverse direction Db, the current relative position moves to the start position among the L consecutive read relative positions Ps (inspection mode MD = first mode). As a result, the determination result of S935 becomes No. Then, the processor 210 proceeds to S950.
[0163] The processing after S950 is the same as the processing of the embodiment in Fig. 12. The operator starts the automatic conveyance by operating the third operation unit 983 (Fig. 2). The processor 210 executes the inspection process in the second mode at each read relative position Ps, like the read inspection processes SG4b - SG6b in Fig. 18(B).
[0164] As described above, in this embodiment, similar to the first embodiment, the processor 210 can provide the user with a plurality of modes including a first mode in which the detection process SS is not executed and a second mode in which the detection process SS is executed. In this embodiment, the process of Fig. 24 is executed between S892 and S950 in Fig. 12. When the inspection mode is changed from the first mode to the second mode (Fig. 12: S862), the determination result of S892 (Fig. 12) is Yes, and the determination results of S910 and S925 (Fig. 24) are Yes, the operator conveys the fabric 700 in the reverse direction Db (Fig. 24: Su1). Also, the processor 210 executes S950 in Fig. 12. As described above, the processor 210, similar to the first embodiment, executes the detection process SS that uses a read image representing an uninspected portion by the detection process SS in the portion of the fabric 700 that has been processed in the first mode. Thus, in a specific case where the inspection mode is changed from the first mode to the second mode (in this embodiment, when S892: Yes, S910: Yes, and S925: Yes), the processor 210 can inspect the uninspected portion by the detection process SS in the portion of the fabric 700 that has been processed in the first mode.
[0165] Also, in this embodiment, as described with reference to FIG. 2, a first position Pr is set on the conveyance path of the fabric 700 (here, the partial path Pth). The first position Pr is the position for reading by the digital cameras 111-114. Further, in this embodiment, when the inspection mode is changed from the first mode to the second mode (FIG. 12: S862), the determination result of S892 is Yes, and the determination result of S910 (FIG. 24) is Yes, at S915, the processor 210 displays a warning. The condition for S910 is that, on the downstream side (i.e., the downstream direction PD2 side) from the current relative position, L consecutive reading relative positions Ps (where L is an integer of 1 or more) including the reading relative position Ps closest to the current relative position correspond to the L inspection modes MD set to the first mode. When the inspection mode is changed at S735 in FIG. 18(B), the L consecutive reading relative positions Ps are one reading relative position Ps (600). The reading relative position Ps, and thus the relative position of the fabric 700, indicates a position on the fabric 700 and indicates a position showing the portion located at the first position Pr (FIG. 2). Therefore, the condition for S910 indicates that the uninspected portion by the detection process SS in the processed portion of the fabric 700 in the first mode is located on the downstream side (i.e., the conveyance direction Df side) from the first position Pr. Thus, in the specific case where the inspection mode is changed from the first mode to the second mode and the above uninspected portion is located on the downstream side from the first position Pr (in this embodiment, when S892: Yes, S910: Yes), the processor 210 outputs a warning at S915 (in this embodiment, the warning screen DP6 (FIG. 25) is displayed on the display unit 240). By outputting such a warning, the processor 210 can notify the operator that the conveyance amount of the fabric 700 in the reverse direction Db is insufficient.
[0166] Also, in this embodiment, the reading process (FIG. 3) and the inspection process (FIGS. 6, 7(A)-7(C)) are the same as the reading process of the first embodiment. The UI control process is the same as the process of FIG. 12, except that the process of FIG. 23 (S910-S935) is added between S892 and S950 of FIG. 12. Thus, in this embodiment, the processor 210 executes various processes similar to those of the first embodiment. For example, the processor 210 can execute processes similar to FIGS. 11(A), 11(B), 16, 18(A), and 18(B) on the portion of the fabric 700 upstream (i.e., on the upstream direction PD1 side) from the current relative position. Thus, this embodiment can provide the same various advantages as those provided by the first embodiment. Note that this embodiment may be applied to the above-described second embodiment.
[0167] D. Fourth Embodiment: FIG. 26 is a flowchart showing another embodiment of the process when the second instruction reception event in the UI control process occurs. The difference from the UI control process of FIG. 24 is only that when the determination result of S925 is Yes, instead of Su1 and S935 (FIG. 24), S930d (FIG. 26) is executed. Different from the embodiment of FIG. 24, in S930d, the fabric 700 is conveyed in the reverse direction Db by the processor 210. In this embodiment, the processor 210 conveys the fabric 700 in the reverse direction Db until the conditions described in S910 of FIG. 24 are no longer satisfied. As a result, the current relative position moves to the start position (i.e., the first read relative position Ps) among the L consecutive read relative positions Ps (inspection mode MD = first mode) described in S910. For example, when S930d is executed instead of S730 in FIG. 18(B), the current relative position is 800. The L consecutive read relative positions Ps are three read relative positions Ps (800, 700, 600). The start position, i.e., the first read relative position Ps, is 600. Therefore, the processor 210 conveys the fabric 700 in the reverse direction Db so that the current relative position becomes 600. By such conveyance, the portions corresponding to the read relative positions Ps of 800, 700, and 600 in the fabric 700 move to the first position Pr (FIG. 2) or a position upstream of the first position Pr in the conveyance direction Df. The portions corresponding to the read relative positions Ps of 800, 700, and 600 are the processed portions of the fabric 700 in the first mode and the uninspected portions by the detection process SS. After S930d, the processor 210 proceeds to S950 (FIG. 12).
[0168] The process after S950 is the same as the process of the embodiment in FIG. 12. The operator starts the automatic conveyance by operating the third operation unit 983 (FIG. 2). The processor 210 executes the inspection process in the second mode at each read relative position Ps, like the read inspection processes SG4b - SG6b in FIG. 18(B).
[0169] As described above, in this embodiment, Su1 and S935 of the embodiment of FIG. 24 are replaced with S930d. When the inspection mode is changed from the first mode to the second mode (FIG. 12: S862), the determination result of S892 (FIG. 12) is Yes, and the determination results of S910 and S925 (FIG. 24) are Yes, at S930d (FIG. 26), the processor 210 conveys the fabric 700 in the reverse direction Db. As described above, the condition of S910 indicates that the uninspected portion by the detection process SS in the processed portion by the first mode of the fabric 700 is located downstream (i.e., on the conveyance direction Df side) of the first position Pr. Thus, in a specific case where the inspection mode is changed from the first mode to the second mode and the above uninspected portion is located downstream of the first position Pr (in this embodiment, when S892: Yes, S910: Yes, S925: Yes), the processor 210 conveys the fabric 700 upstream (i.e., in the reverse direction Db) of the conveyance direction Df at S930d. The processor 210 moves the above uninspected portion to the first position Pr or a position upstream of the first position Pr in the conveyance direction Df. As a result, the processor 210 can omit the conveyance in the reverse direction Db by the operator. Further, the processor 210 can inspect the uninspected portion by the detection process SS in the processed portion by the first mode of the fabric 700 by the detection process SS.
[0170] E. Modification example: (1) In each of the above embodiments, the processor 210 (FIG. 1) executes the following processes according to a program (inspection module 232). As shown in FIG. 6, the processor 210 executes a detection process SS, which is a process of detecting defects in the fabric 700, using a read image of the fabric 700 (here, the belt fabric image IMrc (FIG. 5(B)) (including S235, S245, and S250). When a defect is detected by the detection process SS, the processor 210 executes a stop process of stopping the conveyance of the fabric 700 at S350 in FIG. 7(B) in response to the condition of S260 being satisfied (the process of S350 is referred to as the stop process S350). The conditions for executing the stop process S350 may be various conditions including that a defect is detected by the detection process. For example, the condition of S260 may be that the latest belt fabric image has a defect, that is, a defect is detected by the detection process SS from the belt fabric image newly acquired at S220. Thus, in various specific cases where a defect is detected by the detection process, the processor 210 may execute the stop process S350.
[0171] Here, S130 and S150 in FIG. 3, and the flag data D1 (FIG. 4) may be omitted. That is, when the determination result of S120 is Yes, the processor 210 may execute S140 and S160. In this way, when the current relative position passes the reading relative position Ps, the processor 210 may execute the reading of the fabric 700 (FIG. 3: S140) regardless of whether the fabric 700 has been read at the same reading relative position Ps as the current relative position. And when the inspection mode is the second mode (FIG. 6: S225: Yes), the processor 210 may execute the detection process SS using the read image newly read at the reading relative position Ps regardless of whether the detection process SS associated with the reading relative position Ps has been executed. In S250 and S255, the processor 210 may update the result data D2 (FIG. 8) and the merged data D3 (FIG. 1) to the latest information using the result of the new detection process SS. When the detection process SS is executed multiple times at the same reading relative position Ps, the processor 210 may record the history of the information obtained from the multiple results of the multiple detection processes SS in the result data D2 and the merged data D3.
[0172] Note that, as described with reference to FIGS. 16, 18(A), and 18(B), the fabric 700 may be returned to the upstream side in the conveyance direction Df (i.e., the reverse direction Db side), and then the conveyance of the fabric 700 in the conveyance direction Df may be restarted. For example, when the conveyance stops in response to the detection of a defect by the detection process SS, the operator may convey the fabric 700 in the reverse direction Db. Thereafter, the operator may restart the conveyance of the fabric 700 in the conveyance direction Df. In this case, the portion of the fabric 700 having a defect passes through the first position Pr for reading by the digital cameras 111-114 (FIG. 2) again. And the same defect may be detected by a new detection process SS. The repeated stoppage of the conveyance due to the detection of the same defect may be troublesome for the operator. Therefore, when the portion of the fabric 700 having a defect passes through the first position Pr again, even if a defect is detected by a new detection process SS, the processor 210 may not execute the stop process S350. For example, the conditions for executing the stop process S350 may include that a defect is detected by the detection process and that this detection process is the first detection process for the portion of the fabric 700 having a defect.
[0173] (2) In the example of FIG. 16, after the fabric 700 is returned to the upstream side in the conveyance direction Df at Sua, when the determination result of S838 is No and the determination result of S840 is Yes, a new detection process SS for the processed portion of the detection process SS is omitted. The conditions for omitting the new detection process SS for the processed portion are not limited to the conditions of FIG. 16, and may be various conditions including that the conveyance of the fabric 700 in the conveyance direction Df is restarted after the fabric 700 is returned to the upstream side in the conveyance direction Df. For example, S838 (FIG. 12) may be omitted. That is, after S835, the processor 210 may shift to S840. Thus, the first specific case where a new detection process SS is not executed for the portion of the fabric 700 for which the detection process SS has already been executed may be various specific cases where the conveyance of the fabric 700 in the conveyance direction Df is restarted after the fabric 700 is returned to the upstream side in the conveyance direction Df.
[0174] (3) In the embodiment of FIG. 12, when the determination result of S892 is Yes, the processor 210 can set the read flag F1 corresponding to the unexamined read relative position Ps by the detection process SS to NO in S950 (for example, the read relative positions Ps of 700 and 800 in FIG. 18(B)). Then, the processor 210 executes the detection process SS using the read image representing the unexamined portion of the fabric 700 by the detection process SS at these read relative positions Ps (for example, the read inspection processes SG4b and SG5b in FIG. 18(B)). The conditions for executing such a detection process SS may be various conditions including that the inspection mode is changed from the first mode to the second mode. For example, as in the embodiment of FIG. 24, S910:Yes and S925:Yes may be added to the conditions. Also, S890 and S892 in FIG. 12 may be omitted. That is, after S862, the processor 210 may shift to S950 or S910 in FIG. 24. Thus, in various specific cases (referred to as the third specific case) where the inspection mode is changed from the first mode to the second mode, the processor 210 may execute the detection process SS using the read image representing the unexamined portion of the fabric 700 by the detection process SS.
[0175] (4) In the embodiment of FIG. 24, when the inspection mode is changed from the first mode to the second mode (FIG. 12: S862), the determination result of S892 is Yes, and the determination result of S910 (FIG. 24) is Yes, in S915, the processor 210 displays a warning. The conditions for outputting such a warning may be various conditions including that the inspection mode is changed from the first mode to the second mode, and that the unexamined portion by the detection process SS in the processed portion of the fabric 700 in the first mode is located downstream of the first position. For example, S890 and S892 in FIG. 12 may be omitted. That is, after S862, the processor 210 may shift to S910 (FIG. 24). Thus, in various specific cases (referred to as the fourth specific case) where the inspection mode is changed from the first mode to the second mode, and the unexamined portion by the detection process SS in the processed portion of the fabric 700 in the first mode is located downstream of the first position, the processor 210 may output a warning.
[0176] Here, the processor 210 may search for the above unexamined portion from a search range on the downstream side (i.e., the forward direction Df side) of the first position Pr in order to determine the condition for outputting a warning. The search range may be various ranges on the downstream side of the first position. For example, as in the embodiment of FIG. 24, the search range may be one or more consecutive relative positions for reading including the relative position for reading closest to the first position Pr (e.g., the reading relative position Ps). Alternatively, the search range may be a predetermined consecutive range starting from the first position Pr.
[0177] (5) In the embodiment of FIG. 26, when the inspection mode is changed from the first mode to the second mode (FIG. 12: S862), the determination result of S892 is Yes, and the determination results of S910 and S925 (FIG. 24) are Yes, at S930d (FIG. 26), the processor 210 conveys the fabric 700 upstream in the conveyance direction Df (i.e., the reverse direction Db side). Conditions for performing such conveyance in the reverse direction Db may be various conditions including that the inspection mode is changed from the first mode to the second mode, and that an unexamined portion by the detection process SS in the portion of the fabric 700 processed in the first mode is located on the downstream side of the first position Pr. For example, S890 and S892 in FIG. 12 may be omitted. That is, after S862, the processor 210 may shift to S910 (FIG. 24). Also, S920 and S925 in FIG. 24 may be omitted. That is, after S915, the processor 210 may shift to S930d in FIG. 26. Also, the display of a warning (FIG. 24: S915) may be omitted. Thus, in various specific cases (referred to as the fifth specific case) where the inspection mode is changed from the first mode to the second mode, and an unexamined portion by the detection process SS in the portion of the fabric 700 processed in the first mode is located on the downstream side of the first position Pr, the processor 210 may execute conveyance in the reverse direction Db (e.g., S930d).
[0178] (6) In the embodiment of FIG. 22, when the inspection mode is changed from the first mode to the second mode, following S862 in FIG. 12, the process of FIG. 22 is executed. Then, when S863: Yes and S873: Yes, the processor 210 uses, at S877 and S880, the result of the detection process SS of the portion of the fabric 700 that has been processed in the first mode as the result of the detection process SS executed in the first mode. The conditions for using the result of the detection process SS executed in the first mode may be various conditions including that the inspection mode is changed from the first mode to the second mode. For example, S870 and S873 in FIG. 22 may be omitted. That is, after S867, the processor 210 may shift to S877. Thus, in various specific cases (referred to as the sixth specific case) where the inspection mode is changed from the first mode to the second mode, the processor 210 may use the result of the detection process SS executed in the first mode as the result of the detection process SS of the portion of the fabric 700 that has been processed in the first mode.
[0179] (7) The method for obtaining the relative position of the fabric 700 with respect to the conveying device 900 may be various other methods instead of the method using the information from the encoder 120 (FIG. 2). For example, alignment markers may be provided on the fabric 700. The attributes of the markers (color, shape, size, etc.) may vary according to the position in the direction parallel to the forward direction Df on the fabric 700. The processor 210 may analyze the read image (e.g., the strip fabric image IMrc (FIG. 5(B))) to obtain the attributes of the markers included in the read image, and obtain the relative position associated with the read image according to the attributes. The read relative position Ps (FIGS. 4 and 8) may be represented by the relative position thus obtained.
[0180] As in the example of FIG. 16, when the conveyance of the fabric 700 is restarted in the conveyance direction Df after the fabric 700 is returned to the upstream side in the conveyance direction Df, it is preferable that the processor 210 does not execute a new detection process SS for the portion of the fabric 700 for which the detection process SS has already been executed (for example, the reading relative positions Ps of 300, 400, and 500). Then, it is preferable that the processor 210 resumes the detection process SS at the position for reading next to the processed position on the most upstream side in the conveyance direction Df (for example, the reading relative position Ps of 600). Here, the method of determining whether the portion of the fabric 700 represented by the read image is the portion for which the detection process SS has already been executed may be various other methods instead of the method using the flag data D1 (FIG. 4). For example, the processor 210 may refer to the inspection mode MD (FIG. 8). When the inspection mode MD associated with the read image is set to the second mode, the processor 210 may determine that the detection process SS for the read image has been executed. When the inspection mode MD is set to the first mode or is not set, the processor 210 may determine that the detection process SS for the read image has not been executed. The processor 210 may use the inspection mode MD to determine the position for reading next to the processed position on the most upstream side in the conveyance direction Df.
[0181] Also, the processor 210 may store the processed read image by the detection process SS in the storage device 215 (for example, the nonvolatile storage device 230). When the new read image includes an image portion not included in the processed read image by the detection process SS, the processor 210 may determine that the detection process SS for the new read image has not been executed. Then, the processor 210 may determine the position for reading next to the processed position on the most upstream side in the conveyance direction Df according to the result of such determination. For example, S130 and S150 in FIG. 3 and the flag data D1 (FIG. 4) may be omitted. Then, by resuming the conveyance in the conveyance direction Df, the read images may be sequentially acquired. Here, when the newly acquired read image includes an image portion not included in the processed read image by the detection process SS, the processor 210 may resume the detection process SS.
[0182] (9) The first mode may be various modes in which the process can proceed even without the result of the detection process SS, instead of the mode for visual inspection. For example, the first mode may be a mode for displaying a read image (e.g., the screen DP3 (FIG. 13(C))) on the display unit 240. The second mode may be various modes that use the result of the detection process SS. For example, the second mode may be a mode in which the acquisition inspection process (e.g., the acquisition inspection process SR in FIGS. 6 and 7(A)-7(C)) is repeated without displaying the read image on the display unit 240.
[0183] (10) The object detection model 310 used in the defect detection process S235 (FIG. 6) may be various other object detection models instead of RTMDet (e.g., YOLO (You only look once), Mask R-CNN, etc.). Also, the defect detection process may be a process of detecting defects without using a machine learning model. For example, the defect detection process may be a process of detecting a defective part by template matching using a template image representing a defect. The defective part detected by the defect detection process is not limited to holes and linear defects, and may include parts representing various defects such as a soiled part. The defective part detected by the defect detection process may include, for example, one or more defective parts including a defective part representing a linear defect. In any case, the conditions for executing the defect detection process may be various conditions. For example, when "an unprocessed read image (e.g., the belt fabric image IMrc (FIG. 5(B))) by the defect detection process is acquired", or when "an unprocessed read image is acquired and the width Wf is within the allowable width range value", the processor 210 may execute the defect detection process. Thus, the processor 210 may execute the defect detection process in various specific cases (referred to as the second specific case). Also, the malfunction detected by the detection process (e.g., the detection process SS (FIG. 6)) is not limited to the malfunction of the width Wf and the defective part, and may include various malfunctions such as a color error. The malfunction detected by the detection process may include, for example, one or more malfunctions including a defective part.
[0184] (11) The merging process S370 of the defective parts (FIG. 7(B)) may be various processes for merging two defective parts instead of the process of FIG. 14. The merging conditions for merging two defective parts are not limited to the continuous condition CC of FIG. 14, and may be various conditions satisfied when the two defective parts can represent different parts of the same defect. For example, regardless of the angle Ad (FIG. 15(C)), when the mask distance condition that the distance between two masks (for example, masks MDa, MDb (FIG. 15(A))) of two defective parts is equal to or less than a second threshold value is satisfied, the merging condition may be satisfied. Also, regardless of the angle Ad (FIG. 15(C)), when the box distance condition that the distance DBb between two bounding boxes (for example, bounding boxes BBa, BBb (FIG. 15(A))) of two defective parts is equal to or less than a third threshold value is satisfied, the merging condition may be satisfied. The processor 210 may determine whether the merging condition is satisfied in the order of the box distance condition, the mask distance condition, and the continuous condition CC. In any case, the merging condition may include that the types of the two defective parts are the same.
[0185] Note that the merging process S370 may be various processes for generating merging information for treating a plurality of different defective parts as one defective part. The merging information is not limited to a new bounding box, and may be various information indicating that the whole of a plurality of defective parts should be treated as one defective part. The merging information may be, for example, information for associating a plurality of defective parts to be merged. By referring to such merging information, the processor 210 can determine a defective part representing the whole of a plurality of defective parts (for example, the smallest rectangle including a plurality of defective parts). The defective part representing the whole of a plurality of defective parts is not limited to display, and may be used for various processes (for example, calculation of the length of a defect). Also, in addition to the process of generating merging information, the merging process may include an image correction process for filling gaps between a plurality of defects in the read image to form continuous defects. The corrected image may be used for various processes such as display. However, the image correction process may be omitted. Also, the merging process S370 may be omitted.
[0186] (12) In S930d of FIG. 26, the uninspected portion of the processed portion of the fabric 700 by the first mode and subjected to the detection process SS may be conveyed to the first position Pr for reading or various positions upstream of the first position Pr. For example, the uninspected portion may be conveyed to a position upstream of the first position Pr by a predetermined distance.
[0187] (13) In the process of FIG. 24, the process of outputting a warning may be various processes instead of the display (S915) of the warning screen DP6 (FIG. 25). For example, the processor 210 may output a warning sound. Also, the condition of S935 may be that a progress instruction is input by the operator. The processor 210 may shift to S950 in response to the input of the progress instruction.
[0188] (14) The total number of digital cameras used for reading the fabric 700 is not limited to 4 and may be various numbers of 1 or more. Also, the reading device used for reading the fabric 700 may include a line sensor instead of an area sensor such as a digital camera. In this case, the processor 210 may acquire the data of the read image by causing the conveyance device 900 to convey the fabric 700 while causing the reading device to read the fabric 700. In any case, the processor 210 may detect a defect using the read image acquired using the reading device. For example, when the reading device includes one sensor, the read image acquired from the one sensor may be used as it is. Also, a plurality of sensors may be arranged to read different portions of the fabric 700. In this case, one read image may be generated by combining a plurality of read images obtained from the plurality of sensors. The combination of the read images may be performed by a device different from the data processing device 200 (for example, the reading device).
[0189] (15) The object to be processed, which is the object for the defect detection process, may be various fabrics for sewing (such as woven fabrics, knitted fabrics, denim fabrics, etc.). The fabric may be a fabric without ears. In this case, as the width Wf of the fabric (Fig. 5(F)), the distance from one end of the fabric to the other end may be adopted. The object to be processed is not limited to fabrics, and may be various sheet-like objects (such as paper, resin films, etc.). The object to be processed is not limited to sheet-like objects, and may be various objects such as an automobile body. The configuration of the conveying device for conveying the object to be processed may be various configurations suitable for conveying the object to be processed. The configuration of the reading device may be various configurations suitable for the object to be processed and the conveying device.
[0190] (16) The configuration of the program for inspection is not limited to a configuration divided into three programs such as modules 231, 232, and 233, and may be various configurations. For example, one program that realizes all the functions of modules 231, 232, and 233 may be used. Also, the process for inspection may be various other processes instead of the above-described embodiments and the above-described modified examples. For example, the processor 210 may sequentially proceed with the entire reading process (Fig. 3), inspection process (Figs. 6, 7(A)-7(C)), and UI control process (Fig. 12).
[0191] (17) In the above-described embodiments and the above-described modified examples, the processor 210 may cause the GPU 260 to execute various operations. For example, the processor 210 may cause the GPU 260 to execute part or all of the operations by the object detection model 310. Note that the GPU 260 may be omitted.
[0192] (18) The data processing device 200 in Fig. 1 may be a different type of device from a personal computer (such as a digital camera, scanner, smartphone). Also, a plurality of devices (such as computers) that can communicate with each other via a network may share part of the data processing function by the data processing device and provide the data processing function as a whole (a system including these devices corresponds to the data processing device).
[0193] (19) In each of the above embodiments, a part of the configuration realized by hardware may be replaced with software, and conversely, a part or all of the configuration realized by software may be replaced with hardware. For example, the processing by the object detection model 310 (FIG. 1) may be executed by a dedicated hardware circuit such as an Application Specific Integrated Circuit (ASIC).
[0194] Also, when a part or all of the functions of the present disclosure are realized by a computer program, the program can be provided in a form stored in a computer-readable recording medium (for example, a non-transitory recording medium). The program can be used in a state stored in the same or a different recording medium (computer-readable recording medium) at the time of provision. The "computer-readable recording medium" includes not only portable recording media such as memory cards and CD-ROMs, but also internal storage devices in a computer such as various ROMs and external storage devices connected to a computer such as a hard disk drive.
[0195] The above embodiments and modifications can be combined as appropriate. Also, the above embodiments and modifications are for facilitating the understanding of the present disclosure and do not limit the present invention. The present invention can be changed and improved without departing from its gist, and equivalents thereof are included in the present invention.
Explanation of Reference Numerals
[0196] 111… Digital camera, 120… Encoder, 130… Light source, 200… Data processing device, 210… Processor, 215… Memory device, 220… Volatile memory device, 230… Non-volatile memory device, 231… Reading module, 232… Inspection module, 233… UI module, 240… Display unit, 250… Operation unit, 260… Graphics processing unit (GPU), 270… Communication interface, 310… Object detection model, 700… Fabric, 900… Conveyor, 910… First roller, 920… Second roller, 980… Control panel, 981… First operation unit, 982… Second operation unit, 983… Third operation unit, 984… Fourth operation unit, 990… Control device, Db… Reverse direction, Df… Forward direction (conveying direction), S235… Defect detection process, S350… Stop process, S370… Merging process, SS… Detection process
Claims
1. A program, using each of the captured images obtained by using a capturing device configured to sequentially read different portions of the object by transporting the object in the transport direction of the object, and sequentially executing a detection process for detecting a defect of the object, wherein in a first specific case where the transport of the object in the transport direction is resumed after the object is returned to the upstream side in the transport direction, the detection function does not execute a new detection process on the portion of the object on which the detection process has already been executed, A program for causing a computer to implement the above.
2. The program according to claim 1, further comprising: causing a computer to implement a function of storing, in a storage device, data representing a processed position associated with a position in the transport direction on the object of a portion of the object on which the detection process has been executed; in the first specific case, the detection function resumes the detection process from a captured image representing a portion of the object upstream of the most upstream processed position in the transport direction; A program.
3. The program according to claim 1 or 2, wherein the detection process is a defect detection process executed in a second specific case, and the defect detection process includes detecting a defective portion, which is a portion representing a defect in the object, as the defect, and the program further comprises: causing a computer to implement a function of executing a merging process of merging two defective portions detected by the defect detection process into one defective portion when a continuous condition indicating that the two defective portions have a predetermined continuous relationship is satisfied.
4. The program according to claim 3, wherein the defect detection process includes a process of detecting a linear defect portion representing a linear defect as the defective portion, the merging process includes a process of merging two linear defect portions into one defective portion, and the continuous condition includes: an angle formed by the extending directions of the two linear defects represented by the two linear defect portions is equal to or less than an angle threshold; and a distance between the two linear defect portions is equal to or less than a distance threshold. Including, A program.
5. The program according to claim 1 or 2, further comprising: causing a computer to implement a function of selecting a mode according to a user's instruction from a plurality of modes including a first mode and a second mode; The detection function is When the mode is the first mode, the detection process is not executed, When the mode is the second mode, the detection process is executed, In a third specific case where the mode is changed from the first mode to the second mode, the detection process is executed using a reading image that represents an unexamined portion of the processed portion of the object by the first mode among the objects, Program.
6. The program according to claim 5, On the path of conveying the object, a first position which is the position of reading by the reading device is set, The program further, In a fourth specific case where the mode is changed from the first mode to the second mode and the unexamined portion is located downstream of the first position in the conveying direction, a function of outputting a warning is realized by a computer, Program.
7. The program according to claim 5, On the path of conveying the object, a first position which is the position of reading by the reading device is set, The program further, In a fifth specific case where the mode is changed from the first mode to the second mode and the unexamined portion is located downstream of the first position in the conveying direction, a function of moving the unexamined portion to the first position or a position upstream of the first position in the conveying direction by conveying the object upstream in the conveying direction is realized by a computer, Program.
8. The program according to claim 1 or 2, further, A function of selecting a mode according to a user's instruction from a plurality of modes including a first mode that does not require the result of the detection process and a second mode that requires the result of the detection process is realized by a computer, The detection function is, In each of the case where the mode is the first mode and the case where the mode is the second mode, the detection process and a process of storing data representing the result of the detection process in a storage device are executed, In a sixth specific case where the mode is changed from the first mode to the second mode, as the result of the detection process of the processed portion of the object by the first mode, the result of the detection process already executed in the first mode is used, Program.
9. A data processing device, A detection unit that sequentially executes a detection process for detecting a defect of an object by using each of the captured images obtained by using a capturing device configured to sequentially read different portions of the object as the object is conveyed in the conveyance direction of the object, wherein in a first specific case where the conveyance of the object in the conveyance direction is restarted after the object is returned to the upstream side in the conveyance direction, the detection unit does not execute a new detection process on a portion of the object on which the detection process has already been executed. A data processing apparatus comprising the same. **Claim 10** A program, comprising: A detection function that sequentially executes a detection process for detecting a defect of an object by using each of the captured images obtained by using a capturing device configured to sequentially read different portions of the object as the object is conveyed in the conveyance direction of the object; and A stop function that, in a specific case where a defect is detected by the detection process, executes a stop process for stopping the conveyance of the object, realized by a computer, wherein the stop function does not execute the stop process when the conveyance of the object in the conveyance direction is restarted after the object is returned to the upstream side in the conveyance direction and the portion of the object having the defect passes through the reading position by the reading device again. A program.
Citation Information
Patent Citations
Stop controller for web conveyance line
JP1990038958A