Systems and methods for image processing
Patent Information
- Application Number
- EP2023739858
- Authority / Receiving Office
- EP · EP
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2022-08-08
- Filing Date
- 2023-01-04
- Publication Date
- 2025-01-01
Smart Images

Figure 1.1
Abstract
Description
SYSTEMS AND METHODS FOR IMAGE PROCESSING
[0001] CROSS-REFERENCE TO RELATED APPLICATIONS
[0002] This application claims priority to Chinese Patent Application No. 202210625277.8, filed on June 2, 2022, Chinese Patent Application No. 202210944595.0, filed on August 8, 2022, and Chinese Patent Application No. 202210034883.2, filed on January 13, 2022, the contents of each of which are incorporated herein by reference in their entirety.TECHNICAL FIELD
[0003] The present disclosure relates to the field of image processing, in particular, to systems and methods for image processing associated with a laser camera.BACKGROUND
[0004] With the development of manufacturing, object detection or object test is important in various scenarios, such as glass chamfer detection, tire bulge detection, etc. However, it is difficult to achieve a relatively high object detection accuracy or object test accuracy by using a charge-coupled device (CCD) camera under which the image of the object is greatly affected by ambient light or by using a detector (e.g., a metal probe) which has a low detection accuracy. Therefore, it is desirable to provide systems and methods for image processing associated with object detection with improved detection accuracy.
[0005] SUMMARY
[0006] An aspect of the present disclosure relates to a system for image processing. The system may include at least one storage device including a set of instructions and at least one processor in communication with the at least one storage device. When executing the set of instructions, the at least one processor may be directed to cause the system to implement operations. The operations may include obtaining an image captured by a laser camera; determining a brightness of the image and an exposure parameter of the laser camera corresponding to the brightness of the image; and determining a target exposure parameter of the laser camera by adjusting the exposure parameter of the laser camera based on the brightness of the image and a reference brightness.
[0007] In some embodiments, the determining the brightness of the image may include determining a plurality of target pixels in the image with a brightness value larger than a brightness threshold and determining the brightness of the image based on the brightness values of the plurality of target pixels.
[0008] In some embodiments, the determining the target exposure parameter of the laser camera by adjusting the exposure parameter of the laser camera based on the brightness of the image and the reference brightness may include determining whether the brightness of the image is within a reference brightness range associated with the reference brightness; in response to that the brightness of the image is within the reference brightness range, determining whether the brightness of the image is larger than the reference brightness; in response to that the brightness of the image is larger than the reference brightness, determining the target exposure parameter of the laser camera by decreasing the exposure parameter of the laser camera; and in response to that the brightness of the image is less than the reference brightness, determining the target exposure parameter of the laser camera by increasing the exposure parameter of the laser camera.
[0009] In some embodiments, the image captured by the laser camera is an image of a glass with a chamfer, and the operations may further include determining initial endpoints of the chamfer in the image; determining target endpoints of the chamfer by correcting the initial endpoints; and determining a size of the chamfer based on the target endpoints of the chamfer.
[0010] In some embodiments, the determining initial endpoints of the chamfer in the image may include determining contour pixels of the glass in the image and determining the initial endpoints of the chamfer based on the contour pixels.
[0011] In some embodiments, the determining contour pixels of the glass in the image may include determining first pixels in the image with a grayscale larger than a grayscale threshold; determining second pixels by performing a Gaussian column convolution on the first pixels; determining third pixels by filtering the second pixels based on neighboring pixels of the second pixels; for each of the third pixels, determining a sub-pixel corresponding to the third pixel based on a centroid algorithm; and designating sub-pixels corresponding to the third pixels as the contour pixels of the glass.
[0012] In some embodiments, the determining target endpoints of the chamfer by correcting the initial endpoints may include for each initial endpoint, determining a fitting region based on the contour pixels of the glass; determining a fitting line by fitting contour pixels in the fitting region; determining at least one calibration region based on the fitting line; determining at least one reference line corresponding to the at least one calibration region respectively; and determining a corresponding target endpoint based on the at least one reference line.
[0013] In some embodiments, the determining at least one reference line corresponding to the at least one calibration region respectively may include for each of the at least one calibration region, determining a plurality of candidate lines by dividing the calibration region along a predetermined direction; for each of the plurality of candidate lines, determining a score of the candidate line based on at least one of grayscale information or gradient information of the candidate line; and determining a corresponding reference line based on scores of the plurality of candidate lines.
[0014] In some embodiments, the determining a corresponding target endpoint based on the at least one reference line may include for each of the at least one reference line, determining an intersection of the fitting line and the reference line; and determining the corresponding target endpoint based on at least one intersection corresponding to the at least one reference line respectively.
[0015] In some embodiments, the image captured by the laser camera is a three-dimensional (3D) image of a tire, and the operations may further include obtaining a reference image of the tire; and determining whether there is a bulge on the tire by comparing the image and the reference image.
[0016] In some embodiments, the operations may further include in response to that there is no bulge on the tire, designating the image as a normal image and storing the normal image in a storage device; and in response to that a count of stored normal images in the storage device exceeds a count threshold, updating the reference image based on the stored normal images.
[0017] In some embodiments, the determining whether there is a bulge on the tire by comparing the image and the reference image may include dividing the image into a plurality of regions, each of the plurality of regions including at least one point cloud each of which includes a plurality of pixels; for each of the plurality of regions, selecting a point cloud from the at least one point cloud in the region as a target point cloud; determining whether a difference between a height of the target point cloud and a point cloud height of the reference image exceeds a height threshold; and in response to that the difference exceeds the height threshold, determining the region as an abnormal region where a bulge may be located.
[0018] In some embodiments, the operations may further include determining whether a total width of multiple directly adjacent abnormal regions is larger than a width threshold; and in response to that the total width of the multiple directly adjacent abnormal regions is larger than the width threshold, determining that there is a bulge on the tire.
[0019] A further aspect of the present disclosure relates to a method for image processing. The method may be implemented on a computing device including at least one processor, at least one storage medium, and a communication platform connected to a network. The method may include obtaining an image captured by a laser camera; determining a brightness of the image and an exposure parameter of the laser camera corresponding to the brightness of the image; and determining a target exposure parameter of the laser camera by adjusting the exposure parameter of the laser camera based on the brightness of the image and a reference brightness.
[0020] A still further aspect of the present disclosure relates to a system for image processing. The system may include an acquisition module, a determination module, and an adjustment module. The acquisition module may be configured to obtain an image captured by a laser camera. The determination module may be configured to determine a brightness of the image and an exposure parameter of the laser camera corresponding to the brightness of the image. The adjustment module may be configured to determine a target exposure parameter of the laser camera by adjusting the exposure parameter of the laser camera based on the brightness of the image and a reference brightness.
[0021] A still further aspect of the present disclosure relates to a non-transitory computer readable medium, comprising executable instructions that, when executed by at least one processor, direct the at least one processor to perform a method. The method may include obtaining an image captured by a laser camera; determining a brightness of the image and an exposure parameter of the laser camera corresponding to the brightness of the image; and determining a target exposure parameter of the laser camera by adjusting the exposure parameter of the laser camera based on the brightness of the image and a reference brightness.
[0022] Additional features will be set forth in part in the description which follows, and in part will become apparent to those skilled in the art upon examination of the following and the accompanying drawings or may be learned by production or operation of the examples. The features of the present disclosure may be realized and attained by practice or use of various aspects of the methodologies, instrumentalities, and combinations set forth in the detailed examples discussed below.BRIEF DESCRIPTION OF THE DRAWINGS
[0023] The present disclosure is further described in terms of exemplary embodiments. These exemplary embodiments are described in detail with reference to the drawings. These embodiments are non-limiting exemplary embodiments, in which like reference numerals represent similar structures throughout the several views of the drawings, and wherein:
[0024] FIG. 1 is a schematic diagram illustrating an exemplary image processing system according to some embodiments of the present disclosure;
[0025] FIG. 2A is a schematic diagram illustrating an exemplary imaging device according to some embodiments of the present disclosure;
[0026] FIG. 2B is a schematic diagram illustrating an exemplary glass with chamfers according to some embodiments of the present disclosure;
[0027] FIG. 3 is a schematic diagram illustrating an exemplary imaging device according to some embodiments of the present disclosure;
[0028] FIG. 4 is a schematic diagram illustrating exemplary hardware and / or software components of an exemplary computing device according to some embodiments of the present disclosure;
[0029] FIG. 5 is a block diagram illustrating an exemplary processing device according to some embodiments of the present disclosure;
[0030] FIG. 6 is a flowchart illustrating an exemplary process for determining an exposure parameter of a laser camera according to some embodiments of the present disclosure;
[0031] FIG. 7 is a flowchart illustrating an exemplary process for adjusting an exposure parameter of a laser camera according to some embodiments of the present disclosure;
[0032] FIG. 8 is a flowchart illustrating an exemplary process for glass chamfer detection according to some embodiments of the present disclosure;
[0033] FIG. 9 is a schematic diagram illustrating an exemplary continuous fusion and an exemplary discontinuous fusion of a plurality of image frames of a glass with a chamfer according to some embodiments of the present disclosure;
[0034] FIG. 10A is a schematic diagram illustrating exemplary initial endpoints of a chamfer of a glass in an image according to some embodiments of the present disclosure;
[0035] FIG. 10B is schematic diagrams each of which illustrates an exemplary chamfer of a glass in an image according to some embodiments of the present disclosure;
[0036] FIG. 10C is a schematic diagram illustrating exemplary target endpoints according to some embodiments of the present disclosure;
[0037] FIG. 11A is a schematic diagram illustrating exemplary sizes of two chamfers according to some embodiments of the present disclosure;
[0038] FIG. 11B is a schematic diagram illustrating exemplary locations of a glass on which a chamfer detection is performed according to some embodiments of the present disclosure;
[0039] FIG. 12 is a flowchart illustrating an exemplary process for determining contour pixels of a glass in an image according to some embodiments of the present disclosure;
[0040] FIG. 13 is a flowchart illustrating an exemplary process for determining target endpoints of a chamfer in an image according to some embodiments of the present disclosure;
[0041] FIG. 14 is a schematic diagram illustrating an exemplary process for correcting the initial endpoints to determine target endpoints according to some embodiments of the present disclosure;
[0042] FIG. 15 is a flowchart illustrating an exemplary process for tire bulge detection according to some embodiments of the present disclosure;
[0043] FIG. 16A is a schematic diagram illustrating an exemplary image frame of a tire according to some embodiments of the present disclosure;
[0044] FIG. 16B is a schematic diagram illustrating an exemplary coordinate system of a 3D image of a tire according to some embodiments of the present disclosure;
[0045] FIG. 17 is a schematic diagram illustrating an exemplary bulge image according to some embodiments of the present disclosure;
[0046] FIG. 18 is a flowchart illustrating an exemplary process for determining whether there is a bulge on a tire by comparing an image and a reference image of the tire according to some embodiments of the present disclosure; and
[0047] FIG. 19 is a flowchart illustrating an exemplary process for tire bulge detection according to some embodiments of the present disclosure.DETAILED DESCRIPTION
[0048] In the following detailed description, numerous specific details are set forth by way of examples in order to provide a thorough understanding of the relevant disclosure. However, it should be apparent to those skilled in the art that the present disclosure may be practiced without such details. In other instances, well-known methods, procedures, systems, components, and / or circuitry have been described at a relatively high-level, without detail, in order to avoid unnecessarily obscuring aspects of the present disclosure. Various modifications to the disclosed embodiments will be readily apparent to those skilled in the art, and the general principles defined herein may be applied to other embodiments and applications without departing from the spirit and scope of the present disclosure. Thus, the present disclosure is not limited to the embodiments shown, but to be accorded the widest scope consistent with the claims.
[0049] It will be understood that the terms “system, ” “engine, ” “unit, ” “module, ” and / or “block” used herein are one method to distinguish different components, elements, parts, sections, or assemblies of different levels in ascending order. However, the terms may be displaced by other expression if they may achieve the same purpose.
[0050] It will be understood that when a unit, an engine, a module, or a block is referred to as being “on, ” “connected to, ” or “coupled to” another unit, engine, module, or block, it may be directly on, connected or coupled to, or communicate with the other unit, engine, module, or block, or an intervening unit, engine, module, or block may be present, unless the context clearly indicates otherwise. As used herein, the term “and / or” includes any and all combinations of one or more of the associated listed items.
[0051] The terminology used herein is for the purposes of describing particular examples and embodiments only and is not intended to be limiting. As used herein, the singular forms “a, ” “an, ” and “the” may be intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms “include” and / or “comprise, ” when used in this disclosure, specify the presence of integers, devices, behaviors, stated features, steps, elements, operations, and / or components, but do not exclude the presence or addition of one or more other integers, devices, behaviors, features, steps, elements, operations, components, and / or groups thereof.
[0052] In addition, it should be understood that in the description of the present disclosure, the terms “first” , “second” , or the like, are only used for the purpose of differentiation, and cannot be interpreted as indicating or implying relative importance, nor can be understood as indicating or implying the order.
[0053] The flowcharts used in the present disclosure illustrate operations that systems implement according to some embodiments of the present disclosure. It is to be expressly understood, the operations of the flowcharts may be implemented not in order. Conversely, the operations may be implemented in an inverted order, or simultaneously. Moreover, one or more other operations may be added to the flowcharts. One or more operations may be removed from the flowcharts.
[0054] Generally, an exposure parameter of a camera (e.g., a CCD camera) is determined based on an average brightness of an entire image captured by the camera. However, for a laser camera, there are one or more lines in an image captured by the laser camera and other parts of the image are black. Accordingly, an average brightness of the entire image captured by the laser camera can’t reflect actual brightness information of the image. If the exposure parameter of the laser camera is determined based on the average brightness of the entire image, next images captured by the laser camera would be too dark. Therefore, an aspect of the present disclosure provides systems and methods for determining an exposure parameter of a laser camera. In some embodiments, the systems may obtain an image captured by a laser camera and determine a brightness of the image based on brightness values of a plurality of target pixels (e.g., pixels in the lines) in the image with a brightness value larger than a brightness threshold. The systems may determine an exposure parameter of the laser camera corresponding to the brightness of the image. Further, the systems may determine a target exposure parameter of the laser camera by adjusting the exposure parameter of the laser camera based on the brightness of the image and a reference brightness.
[0055] According to the embodiments of the present disclosure, the brightness of the image is determined by extracting, from the image, the plurality of target pixels (e.g., the pixels in the lines) with a brightness value larger than the brightness threshold, and the brightness values of the plurality of target pixels can reflect the actual brightness information of the lines in the image captured by the laser camera. Therefore, the target exposure parameter of the laser camera determined based on the brightness of the image can avoid over-dark exposure.
[0056] For glass chamfer detection, images captured by a CCD camera may be greatly affected by ambient light, and the transparent material of the glass introduces a lot of stray light, which results in poor image quality and low detection accuracy of the glass chamfer. Therefore, an aspect of the present disclosure provides systems and methods for glass chamfer detection by using a laser camera. In some embodiments, the systems may obtain an image of a glass with a chamfer captured by a laser camera and determine initial endpoints of the chamfer in the image. Further, the systems may determine target endpoints of the chamfer by correcting the initial endpoints and determine a size of the chamfer based on the target endpoints of the chamfer.
[0057] According to the embodiments of the present disclosure, the glass chamfer detection is implemented based on the image of the glass with a chamfer captured by the laser camera, which avoids the effects of the ambient light and the stray light introduced by the transparent material of the glass, thereby improving the detection accuracy of the glass chamfer.
[0058] For tire bulge detection, a detection accuracy of a detection manner by using a detector (e.g., a metal probe) in contact with the tire is relatively low and a detection risk is relatively high. Therefore, an aspect of the present disclosure provides systems and methods for tire bulge detection by using a laser camera. In some embodiments, the systems may obtain a three-dimensional (3D) image of a tire captured by a laser camera and a reference image of the tire. Further, the systems may determine whether there is a bulge on the tire by comparing the image and the reference image.
[0059] According to the embodiments of the present disclosure, the tire bulge detection is implemented by comparing the image of the tire captured by the laser camera and the reference image of the tire, thereby improving the detection accuracy and avoiding or reducing the risk during the detection.
[0060] FIG. 1 is a schematic diagram illustrating an exemplary image processing system according to some embodiments of the present disclosure. As shown in FIG. 1, the image processing system 100 may include a server 110, a network 120, an imaging device 130, a user device 140, and a storage device 150.
[0061] The server 110 may be a single server or a server group. The server group may be centralized or distributed (e.g., the server 110 may be a distributed system) . In some embodiments, the server 110 may be local or remote. For example, the server 110 may access information and / or data stored in the imaging device 130, the user device 140, and / or the storage device 150 via the network 120. As another example, the server 110 may be directly connected to the imaging device 130, the user device 140, and / or the storage device 150 to access stored information and / or data. In some embodiments, the server 110 may be implemented on a cloud platform. Merely by way of example, the cloud platform may include a private cloud, a public cloud, a hybrid cloud, a community cloud, a distributed cloud, an inter-cloud, a multi-cloud, or the like, or any combination thereof. In some embodiments, the server 110 may be implemented on a computing device 400 including one or more components illustrated in FIG. 4 of the present disclosure.
[0062] In some embodiments, the server 110 may include a processing device 112. The processing device 112 may process information and / or data relating to image processing to perform one or more functions described in the present disclosure. For example, the processing device 112 may obtain an image captured by the imaging device 130. The processing device 112 may determine a brightness of the image and an exposure parameter of the imaging device 130 corresponding to the brightness of the image. Further, the processing device 112 may determine a target exposure parameter of the imaging device 130 by adjusting the exposure parameter of the imaging device 130 based on the brightness of the image and a reference brightness. As another example, the processing device 112 may be configured to perform an object detection operation, for example, a glass chamfer detection, a tire bulge detection, based on the image captured by the imaging device 130. Specifically, for the glass chamfer detection, the processing device 112 may obtain an image of a glass with a chamfer captured by the imaging device 130 and determine initial endpoints of the chamfer in the image. Further, the processing device 112 may determine target endpoints of the chamfer by correcting the initial endpoints and determine a size of the chamfer based on the target endpoints of the endpoints. For the tire bulge detection, the processing device 112 may obtain a three-dimensional (3D) image of a tire captured by the imaging device 130 and a reference image of the tire. Further, the processing device 112 may determine whether there is a bulge on the tire by comparing the 3D image and the reference image.
[0063] In some embodiments, the server 110 may be unnecessary and all or part of the functions of the server 110 may be implemented by other components (e.g., the imaging device 130, the user device 140) of the image processing system 100. For example, the processing device 112 may be integrated into the imaging device 130, or the user device 140, and the functions (e.g., adjusting the exposure parameter of the imaging device 130, performing the object detection based on the image captured by the imaging device 130) of the processing device 112 may be implemented by the imaging device 130 or the user device 140.
[0064] The network 120 may facilitate exchange of information and / or data for the image processing system 100. In some embodiments, one or more components (e.g., the server 110, the imaging device 130, the user device 140, the storage device 150) of the image processing system 100 may transmit information and / or data to other component (s) of the image processing system 100 via the network 120. For example, the server 110 may obtain an image captured by the imaging device 130 via the network 120. As another example, the server 110 may transmit the size of the chamfer of the glass to the user device 140 via the network 120. As a further example, the server110 may transmit a determination result of whether there is a bulge on the tire to the user device 140 via the network 120. In some embodiments, the network 120 may be any type of wired or wireless network, or any combination thereof.
[0065] The imaging device 130 may be configured to acquire an image. The image acquired by the imaging device 130 may be a two-dimensional (2D) image, a three-dimensional (3D) image, a four-dimensional (4D) image, etc. In some embodiments, the imaging device 130 may include a laser camera 131. In some embodiments, the laser camera 131 may be configured to capture an image of an object 132 or a portion thereof. The object 132 may include a biological object and / or a non-biological object. The biological object may include a person, an animal, a plant, or the like, or any combination thereof. The non-biological object may include a natural product (e.g., a stone) , an artifact (e.g., an industrial component) , or the like, or any combination thereof. Merely by way of example, the object 132 may include a glass with a chamfer, a tire, etc. In some embodiments, the imaging device 130 may transmit the captured image to one or more components (e.g., the server 110, the user device 140, the storage device 150) of the image processing system 100 via the network 120. More descriptions regarding the imaging device 130 may be found elsewhere in the present disclosure, for example, FIG. 2A, FIG. 3, and the descriptions thereof.
[0066] The user device 140 may be configured to receive information and / or data from the server 110, the imaging device 130, and / or the storage device 150 via the network 120. For example, the user device 140 may receive the target exposure parameter of the imaging device 130, the size of the chamfer of the glass, or a determination result of whether there is a bulge on the tire from the server 110. In some embodiments, the user device 140 may provide a user interface via which a user may view information and / or input data and / or instructions to the image processing system 100. For example, the user may view the exposure parameter of the imaging device 130, the size of the chamfer of the glass, or a determination result of whether there is a bulge on the tire via the user interface. As another example, the user may input an instruction associated with image processing via the user interface. In some embodiments, the user device 140 may include a mobile phone 140-1, a computer 140-2, a wearable device 140-3, or the like, or any combination thereof. In some embodiments, the user device 140 may include a display that can display information in a human-readable form, such as text, image, audio, video, graph, animation, or the like, or any combination thereof. The display of the user device 140 may include a cathode ray tube (CRT) display, a liquid crystal display (LCD) , a light emitting diode (LED) display, a plasma display panel (PDP) , a three-dimensional (3D) display, or the like, or a combination thereof. In some embodiments, the user device 140 may be connected to one or more components (e.g., the server 110, the imaging device 130, the storage device 150) of the image processing system 100 via the network 120.
[0067] The storage device 150 may be configured to store data and / or instructions. The data and / or instructions may be obtained from, for example, the server 110, the imaging device 130, and / or any other component of the image processing system 100. In some embodiments, the storage device 150 may store data and / or instructions that the server 110 may execute or use to perform exemplary methods described in the present disclosure. In some embodiments, the storage device 150 may include a mass storage, a removable storage, a volatile read-and-write memory, a read-only memory (ROM) , or the like, or any combination thereof. In some embodiments, the storage device 150 may be implemented on the cloud platform described elsewhere in the present disclosure.
[0068] In some embodiments, the storage device 150 may be connected to the network 120 to communicate with one or more components (e.g., the server 110, the imaging device 130, the user device 140) of the image processing system 100. One or more components of the image processing system 100 may access the data or instructions stored in the storage device 150 via the network 120. In some embodiments, the storage device 150 may be directly connected to or communicate with one or more components (e.g., the server 110, the imaging device 130, the user device 140) of the image processing system 100. In some embodiments, the storage device 150 may be part of other components of the image processing system 100, such as the server 110, the imaging device 130, or the user device 140.
[0069] It should be noted that the above description of the image processing system 100 is merely provided for the purposes of illustration, and not intended to limit the scope of the present disclosure. For persons having ordinary skills in the art, multiple variations and modifications may be made under the teachings of the present disclosure. For example, the image processing system 100 may include one or more additional components and / or one or more components of the image processing system 100 described above may be omitted. Additionally or alternatively, two or more components of the image processing system 100 may be integrated into a single component. A component of the image processing system 100 may be implemented on two or more sub-components. However, those variations and modifications do not depart from the scope of the present disclosure.
[0070] FIG. 2A is a schematic diagram illustrating an exemplary imaging device according to some embodiments of the present disclosure. As shown in FIG. 2A, the imaging device 200 may include a motion platform 210, a laser camera 220, a limiter 240, and a gantry 250. In some embodiments, the imaging device 130 may be implemented on the imaging device 200 or the imaging device 200 may be a specific embodiment of the imaging device 130.
[0071] The motion platform 210 may include a conveyer belt and a motor configured to drive the conveyer belt to move. An object 230 may be placed on the motion platform 210 and move with the conveyer belt. In some embodiments, the object 230 may include a glass with a chamfer. FIG. 2B is a schematic diagram illustrating an exemplary glass with chamfers according to some embodiments of the present disclosure. As illustrated in FIG. 2B, the glass 260 includes two chamfers 261.
[0072] The laser camera 220 may be configured to capture an image of the object 230 when the object 230 enters an imaging range of the laser camera 220.
[0073] The limiter 240 may be arranged on the motion platform 210. The limiter 240 may be configured to adjust a placement state of the object 230 so that the object 230 enters the imaging range of the laser camera 220 in a certain placement state (e.g., a length direction of the object 230 being parallel to a motion direction of the conveyer belt) .
[0074] The gantry 250 may be configured to support the laser camera 220 and / or the motion platform 210.
[0075] In some embodiments, the laser camera 220 may transmit the image of the object 230 to one or more components (e.g., the server 110, the user device 140, the storage device 150) of the image processing system 100 for processing, display, or storage. In some embodiments, the server 110 (e.g., the processing device 112) may perform a glass chamfer detection based on an image of the glass 230 to determine a size of a chamfer of the glass 230. More descriptions regarding the glass chamfer detection may be found elsewhere in the present disclosure, for example, FIG. 8 and the descriptions thereof.
[0076] In some embodiments, with the movement of the conveyer belt, the laser camera 220 may capture a plurality of image frames of the object 230. Further, the image of the object 230 may be generated based on the plurality of image frames of the object 230.
[0077] Since when the laser camera 220 is installed, it is not guaranteed that the laser camera 220 is completely perpendicular to the motion platform 210, there may be a certain angle between the motion platform 210 and a standard plane, which may cause errors in the glass chamfer detection. Therefore, in some embodiments, the laser camera 220 may be calibrated using standard objects. For example, two standard objects with a height of 1mm and a height of 0.9mm are placed on the motion platform 210, and the laser camera 220 captures images of the two standard objects. Further, measured sizes of the two standard objects may be determined based on the captured images of the two standard objects. According to the measured sizes and actual sizes of the two standard objects, an installation tilt angle of the laser camera 220 may be determined and used as an external parameter of the laser camera 220, thereby eliminating or reducing the errors in the glass chamfer detection.
[0078] FIG. 3 is a schematic diagram illustrating an exemplary imaging device according to some embodiments of the present disclosure. As shown in FIG. 3, the imaging device 300 may include a laser camera 310, a drum 320, a hub 330, a motor 340, and a bearing 350. In some embodiments, the imaging device 130 may be implemented on the imaging device 300 or the imaging device 300 may be a specific embodiment of the imaging device 130.
[0079] An object 360 may be mounted on the hub 330. In some embodiments, the object 360 may include a tire. The hub 330 may be mounted on the bearing 350. The drum 320 may be configured to simulate a road surface. The bearing 350 may exert a certain pressure on the object 360 to make the object 360 stick to the drum 320, so as to simulate a load-bearing state of the object 360. The motor 340 may drive the object 360 to rotate at a high speed, thereby simulating a high-speed moving state of the object 360. The laser camera 310 may be arranged above the object 360 and configured to capture a 3D image of the object 360.
[0080] In some embodiments, the laser camera 310 may transmit the 3D image of the object 360 to one or more components (e.g., the server 110, the user device 140, the storage device 150) of the image processing system 100 for processing, display, or storage.
[0081] In some embodiments, the imaging device 300 may be used in a durability test of the tire. In the durability test, the imaging device 300 may simulate a load-bearing state and a high-speed moving state of the tire. After the durability test lasts for a period of time, the tire may have a bulge due to its own defects and / or a high temperature produced in rotating with a high speed and pressure on the tire. If the bulge can’t be detected in time, the bulge may become larger and larger, thereby resulting in a tire blowout and even damage to the imaging device 300. Therefore, in some embodiments, the server 110 (e.g., the processing device 112) may perform a tire bulge detection based on a 3D image of the tire to determine whether there is a bulge on the tire. More descriptions regarding the tire bulge detection may be found elsewhere in the present disclosure, for example, FIG. 15 and the descriptions thereof.
[0082] FIG. 4 is a schematic diagram illustrating exemplary hardware and / or software components of an exemplary computing device according to some embodiments of the present disclosure. In some embodiments, the server 110 may be implemented on the computing device 400. For example, the processing device 112 may be implemented on the computing device 400 and configured to perform functions of the processing device 112 disclosed in this disclosure.
[0083] The computing device 400 may be used to implement any component of the image processing system 100 as described herein. For example, the processing device 112 may be implemented on the computing device 400, via its hardware, software program, firmware, or a combination thereof. Although only one such computer is shown, for convenience, the computer functions relating to object detection as described herein may be implemented in a distributed fashion on a number of similar platforms to distribute the processing load.
[0084] The computing device 400, for example, may include COM ports 450 connected to and from a network connected thereto to facilitate data communications. The computing device 400 may also include a processor (e.g., a processor 420) , in the form of one or more processors (e.g., logic circuits) , for executing program instructions. For example, the processor 420 may include interface circuits and processing circuits therein. The interface circuits may be configured to receive electronic signals from a bus 410, wherein the electronic signals encode structured data and / or instructions for the processing circuits to process. The processing circuits may conduct logic calculations, and then determine a conclusion, a result, and / or an instruction encoded as electronic signals. Then the interface circuits may send out the electronic signals from the processing circuits via the bus 410.
[0085] The computing device 400 may further include program storage and data storage of different forms including, for example, a disk 470, a read-only memory (ROM) 430, or a random-access memory (RAM) 440, for storing various data files to be processed and / or transmitted by the computing device 400. The computing device 400 may also include program instructions stored in the ROM 430, RAM 440, and / or another type of non-transitory storage medium to be executed by the processor 420. The methods and / or processes of the present disclosure may be implemented as the program instructions. The computing device 400 may also include an I / O component 460, supporting input / output between the computing device 400 and other components. The computing device 400 may also receive programming and data via network communications.
[0086] Merely for illustration, only one processor is illustrated in FIG. 4. Multiple processors 420 are also contemplated; thus, operations and / or method steps performed by one processor 420 as described in the present disclosure may also be jointly or separately performed by the multiple processors. For example, if in the present disclosure the processor 420 of the computing device 400 executes both step A and step B, it should be understood that step A and step B may also be performed by two different processors 420 jointly or separately in the computing device 400 (e.g., a first processor executes step A and a second processor executes step B, or the first and second processors jointly execute steps A and B) .
[0087] FIG. 5 is a block diagram illustrating an exemplary processing device according to some embodiments of the present disclosure. As illustrated in FIG. 5, the processing device 112 may include an acquisition module 510, a determination module 520, an adjustment module 530, and a detection module 540.
[0088] The acquisition module 510 may be configured to obtain an image captured by a laser camera. More descriptions regarding the obtaining of the image may be found elsewhere in the present disclosure, for example, operation 610 and the descriptions thereof.
[0089] The determination module 520 may be configured to determine a brightness of the image and an exposure parameter of the laser camera corresponding to the brightness of the image. More descriptions regarding the determining of the brightness of the image and the exposure parameter of the laser camera corresponding to the brightness of the image may be found elsewhere in the present disclosure, for example, operation 620 and the descriptions thereof.
[0090] The adjustment module 530 may be configured to determine a target exposure parameter of the laser camera by adjusting the exposure parameter of the laser camera based on the brightness of the image and a reference brightness. More descriptions regarding the determining of the target exposure parameter of the laser camera may be found elsewhere in the present disclosure, for example, operation 630 and the descriptions thereof.
[0091] The detection module 540 may be configured to perform glass chamfer detection and / or tire bulge detection. More descriptions regarding the glass chamfer detection may be found elsewhere in the present disclosure, for example, FIGs. 8-14 and the descriptions thereof. More descriptions regarding the tire bulge detection may be found elsewhere in the present disclosure, for example, FIGs. 15-19 and the descriptions thereof.
[0092] It should be noted that the above description is merely provided for the purposes of illustration, and not intended to limit the scope of the present disclosure. For persons having ordinary skills in the art, multiple variations and modifications may be made under the teachings of the present disclosure. However, those variations and modifications do not depart from the scope of the present disclosure. In some embodiments, the modules in the processing device 112 may be connected to or communicate with each other via a wired connection or a wireless connection. In some embodiments, two or more of the modules may be combined as a single module, and any one of the modules may be divided into two or more units.
[0093] FIG. 6 is a flowchart illustrating an exemplary process for determining an exposure parameter of a laser camera according to some embodiments of the present disclosure. In some embodiments, process 600 may be executed by the image processing system 100. For example, the process 600 may be implemented as a set of instructions (e.g., an application) stored in a storage device (e.g., the storage device150, the ROM 430, the RAM 440) . In some embodiments, the processing device 112 (e.g., the processor 420 of the computing device 400 and / or one or more modules illustrated in FIG. 5) may execute the set of instructions and may accordingly be directed to perform the process 600. The operations of the illustrated process presented below are intended to be illustrative. In some embodiments, the process 600 may be accomplished with one or more additional operations not described and / or without one or more of the operations discussed. Additionally, the order of the operations of process 600 illustrated in FIG. 6 and described below is not intended to be limiting.
[0094] In 610, the processing device 112 (e.g., the acquisition module 510 illustrated in FIG. 5, the processor 420 illustrated in FIG. 4) may obtain an image captured by a laser camera.
[0095] In some embodiments, the processing device 112 may direct a laser camera of an imaging device (e.g., the imaging device 130 illustrated in FIG. 1, the imaging device 200 illustrated in FIG. 2A, the imaging device 300 illustrated in FIG. 3) to capture the image. Specifically, the laser camera may include a laser generator. The processing device 112 may direct the laser generator of the laser camera to irradiate laser beams on an object or a portion thereof and acquire the image of the object or a portion thereof by capturing laser beams reflected by the object or a portion thereof. As described in connection with FIG. 1, the object may include a biological object (e.g., a person, an animal, a plant) and / or a non-biological object (e.g., a glass with a chamfer, a tire) . In some embodiments, the image may be previously obtained and stored in a storage device (e.g., the storage device 150, the ROM 430, the RAM 440, an external storage device) . The processing device 112 may retrieve the image from the storage device via a network (e.g., the network 130) .
[0096] In 620, the processing device 112 (e.g., the determination module 520 illustrated in FIG. 5, the processor 420 illustrated in FIG. 4) may determine a brightness of the image and an exposure parameter of the laser camera corresponding to the brightness of the image.
[0097] As described elsewhere in the present disclosure, there are one or more lines in the image captured by the laser camera and other parts of the image are black, therefore, a global brightness (e.g., an average brightness) of the entire image can’t reflect brightness values of the lines in the image. Accordingly, in some embodiments, the processing device 112 may determine a plurality of target pixels in the image with a brightness value larger than a brightness threshold. The brightness threshold may be greater than brightness values of pixels in the black parts of the image and less than brightness values of pixels in the lines. Further, the processing device 112 may determine the brightness of the image based on brightness values (which can reflect the brightness values of the lines in the image) of the plurality of target pixels.
[0098] In some embodiments, the processing device 112 may determine an average value of the brightness values of the plurality of target pixels as the brightness of the image. For example, the processing device 112 may determine the average value of the brightness values of the plurality of target pixels according to an equation (1) below:
[0099]
[0100] where L refers to the average value of the brightness values of the plurality of target pixels, i refers to a brightness value of a pixel in the image, k refers to the brightness threshold, max refers to a maximum brightness value of brightness values of pixels in the image, and count (i) refers to a count of the plurality of target pixels. According to equation (1) , when the brightness value i of a pixel in the image is within a range of the brightness threshold k and the maximum brightness max, the pixel may be determined as a target pixel and be counted in count (i) .
[0101] In some embodiments, the processing device 112 may determine a weighted average value of the brightness values of the plurality of target pixels as the brightness of the image. The way of weighting the brightness values of the plurality of target pixels may include but be not limited to Fully weighting, partial weighting, statistical weighting, etc. It should be understood that the way of weighting the brightness values of the plurality of target pixels disclosed in the embodiments is merely for illustration, and not intended to limit the scope of the present disclosure.
[0102] The exposure parameter of the laser camera may indicate a brightness of an image. For example, the larger the exposure parameter of the laser camera is, the brighter the image captured by the laser camera may be. Therefore, according to the brightness of the image, the processing device 112 may determine the exposure parameter of the laser camera.
[0103] In 630, the processing device 112 (e.g., the adjustment module 530 illustrated in FIG. 5, the processor 420 illustrated in FIG. 4) may determine a target exposure parameter of the laser camera by adjusting the exposure parameter of the laser camera based on the brightness of the image and a reference brightness.
[0104] In some embodiments, the reference brightness may refer to a brightness of an image with a required visual effect. For example, the reference brightness may be a brightness of an image captured in a moderately lit environment. In some embodiments, the reference brightness may be determined by a user according to actual imaging requirements. In some embodiments, the reference brightness may be determined based on performance of the laser camera, for example, a shutter speed of the laser camera. In some embodiments, the reference brightness may be previously determined and stored in a storage device (e.g., the storage device 150, the ROM 430, the RAM 440, an external storage device) . The processing device 112 may retrieve the reference brightness from the storage device via a network (e.g., the network 130) .
[0105] In some embodiments, the processing device 112 may determine whether the brightness of the image is within a reference brightness range associated with the reference brightness. In some embodiments, the reference brightness range may be determined by slightly adjusting the reference brightness. In other words, the brightness of the image is within the reference brightness range, which indicates that the brightness of the image is not much different from the reference brightness. In some embodiments, maximum and minimum values of the reference brightness range may be proportional to the reference brightness respectively. For example, the maximum value of the reference brightness range may be determined by multiplying the reference brightness by a first preset value, and the minimum value of the reference brightness range may be determined by multiplying the reference brightness by a second preset value. The first preset value and / or the second preset value may be determined according to actual imaging requirements or default values of the image processing system 100. Merely by way of example, the first preset value may be 1.2 and the second preset value may be 0.8. Accordingly, the reference brightness range may be [ (0.8*Lr) , (1.2*Lr) ] , wherein Lr is the reference brightness.
[0106] In response to that the brightness of the image is within the reference brightness range (indicating that the brightness of the image is not much different from the reference brightness) , the processing device 112 may determine the target exposure parameter of the laser camera by slightly adjusting the exposure parameter of the laser camera based on a minimum exposure parameter of the laser camera.
[0107] Specifically, the processing device 112 may determine whether the brightness of the image is larger than the reference brightness. In response to that the brightness of the image is larger than the reference brightness, the processing device 112 may determine the target exposure parameter of the laser camera by decreasing the exposure parameter of the laser camera. For example, the processing device 112 may determine the target exposure parameter of the laser camera by decreasing the exposure parameter of the laser camera according to an equation (2) below:
[0108] ET=|E1-Emin*ln E1|, (2)
[0109] where ET refers to the target exposure parameter of the laser camera, E1 refers to the exposure parameter of the laser camera corresponding to the brightness of the image, and Emin refers to the minimum exposure parameter of the laser camera.
[0110] In response to that the brightness of the image is less than the reference brightness, the processing device 112 may determine the target exposure parameter of the laser camera by increasing the exposure parameter of the laser camera. For example, the processing device 112 may determine the target exposure parameter of the laser camera by increasing the exposure parameter of the laser camera according to an equation (3) below:
[0111] ET=E1+Emin*ln E1. (3)
[0112] In response to that the brightness of the image is equal to the reference brightness, the processing device 112 may designate an exposure parameter of the laser camera corresponding to the reference brightness as the target exposure parameter of the laser camera.
[0113] In the embodiments of the present disclosure, when the brightness of the image is not much different from the reference brightness, the processing device 112 determines the target exposure parameter of the laser camera by slightly adjusting the exposure parameter of the laser camera, so that a brightness of an image captured by the laser camera under the target exposure parameter can be closer to the reference brightness, thereby improving the image quality.
[0114] In response to that the brightness of the image is not within the reference brightness range (indicating that the brightness of the image is much different from the reference brightness) , the processing device 112 may determine the target exposure parameter of the laser camera by adjusting the exposure parameter of the laser camera based on the brightness of the image and the reference brightness.
[0115] Specifically, the processing device 112 may determine whether the brightness of the image is larger than the reference brightness range. In response to that the brightness of the image is larger than the reference brightness range, the processing device 112 may determine the target exposure parameter of the laser camera according to an equation (4) below:
[0116]
[0117] where L1 refers to the brightness of the image, and Lr refers to the reference brightness.
[0118] In response to that the brightness of the image is less than the reference brightness range, the processing device 112 may determine the target exposure parameter of the laser camera according to an equation (5) below:
[0119] ET=E1*ln (Lr-L1) . (5)
[0120] In the embodiments of the present disclosure, when the brightness of the image is much different from the reference brightness, the processing device 112 determines the target exposure parameter of the laser camera by adjusting the exposure parameter of the laser camera based on the brightness of the image and the reference brightness, so that the target exposure parameter of the laser camera can be close to an exposure parameter of the laser camera corresponding to the reference brightness.
[0121] In some embodiments, the processing device 112 may determine whether the exposure parameter of the laser camera corresponding to the brightness of the image is less than the minimum exposure parameter of the laser camera. In response to that the exposure parameter of the laser camera corresponding to the brightness of the image is less than the minimum exposure parameter of the laser camera, the processing device 112 may designate the minimum exposure parameter of the laser camera as the target exposure parameter of the laser camera.
[0122] It should be noted that the above description of the process 600 is merely provided for the purposes of illustration, and not intended to limit the scope of the present disclosure. For persons having ordinary skills in the art, multiple variations or modifications may be made under the teachings of the present disclosure. However, those variations and modifications do not depart from the scope of the present disclosure.
[0123] FIG. 7 is a flowchart illustrating an exemplary process for adjusting an exposure parameter of a laser camera according to some embodiments of the present disclosure. In some embodiments, process 700 may be executed by the image processing system 100. For example, the process 700 may be implemented as a set of instructions (e.g., an application) stored in a storage device (e.g., the storage device150, the ROM 430, the RAM 440) . In some embodiments, the processing device 112 (e.g., the processor 420 of the computing device 400 and / or one or more modules illustrated in FIG. 5) may execute the set of instructions and may accordingly be directed to perform the process 700. The operations of the illustrated process presented below are intended to be illustrative. In some embodiments, the process 700 may be accomplished with one or more additional operations not described and / or without one or more of the operations discussed. Additionally, the order of the operations of process 700 illustrated in FIG. 7 and described below is not intended to be limiting.
[0124] In 710, the processing device 112 (e.g., the acquisition module 510 illustrated in FIG. 5, the processor 420 illustrated in FIG. 4) may obtain an image captured by a laser camera. The obtaining of the image may be performed in a similar manner as described in connection with operation 610, and the descriptions thereof are not repeated here.
[0125] In 720, the processing device 112 (e.g., the determination module 520 illustrated in FIG. 5, the processor 420 illustrated in FIG. 4) may determine a brightness L1 of the image and an exposure parameter E1 of the laser camera corresponding to the brightness of the image. The determining of the brightness L1 and the exposure parameter E1 may be performed in a similar manner as described in connection with operation 620, and the descriptions thereof are not repeated here.
[0126] In 730, the processing device 112 (e.g., the adjustment module 530 illustrated in FIG. 5, the processor 420 illustrated in FIG. 4) may determine whether the brightness L1 is within a reference brightness range [Lrmin, Lrmax] associated with a reference brightness Lr. As described in connection with operation 630, a maximum value Lrmax of the reference brightness range may be determined by multiplying the reference brightness Lr by a first preset value (e.g., 1.2) , and the minimum value Lrmin of the reference brightness range may be determined by multiplying the reference brightness Lr by a second preset value (e.g., 0.8) .
[0127] In 740, in response to that the brightness L1 is within the reference brightness range [Lrmin, Lrmax] , the processing device 112 (e.g., the adjustment module 530 illustrated in FIG. 5, the processor 420 illustrated in FIG. 4) may determine whether the brightness L1 is larger than the reference brightness Lr.
[0128] In 750, in response to that the brightness L1 is larger than the reference brightness Lr, the processing device 112 (e.g., the adjustment module 530 illustrated in FIG. 5, the processor 420 illustrated in FIG. 4) may determine a target exposure parameter ET of the laser camera according to the equation (2) as described in connection with operation 630.
[0129] In 760, in response to that the brightness L1 is less than the reference brightness Lr, the processing device 112 (e.g., the adjustment module 530 illustrated in FIG. 5, the processor 420 illustrated in FIG. 4) may determine the target exposure parameter ET of the laser camera according to the equation (3) as described in connection with operation 630.
[0130] In 770, in response to that the brightness L1 is not within the reference brightness range [Lrmin, Lrmax] , the processing device 112 (e.g., the adjustment module 530 illustrated in FIG. 5, the processor 420 illustrated in FIG. 4) may determine whether the brightness L1 is larger than the reference brightness range [Lrmin, Lrmax] .
[0131] In 780, in response to that the brightness L1 is larger than the reference brightness range [Lrmin, Lrmax] , the processing device 112 (e.g., the adjustment module 530 illustrated in FIG. 5, the processor 420 illustrated in FIG. 4) may determine the target exposure parameter ET of the laser camera according to the equation (4) as described in connection with operation 630.
[0132] In 790, in response to that the brightness L1 is less than the reference brightness range [Lrmin, Lrmax] , the processing device 112 (e.g., the adjustment module 530 illustrated in FIG. 5, the processor 420 illustrated in FIG. 4) may determine the target exposure parameter ET of the laser camera according to the equation (5) as described in connection with operation 630.
[0133] In some embodiments, after determining the target exposure parameter ET of the laser camera, the processing device 112 may direct the laser camera to capture a next image based on the target exposure parameter ET.
[0134] It should be noted that the above description of the process 700 is merely provided for the purposes of illustration, and not intended to limit the scope of the present disclosure. For persons having ordinary skills in the art, multiple variations or modifications may be made under the teachings of the present disclosure. However, those variations and modifications do not depart from the scope of the present disclosure.
[0135] FIG. 8 is a flowchart illustrating an exemplary process for glass chamfer detection according to some embodiments of the present disclosure. In some embodiments, process 800 may be executed by the image processing system 100. For example, the process 800 may be implemented as a set of instructions (e.g., an application) stored in a storage device (e.g., the storage device150, the ROM 430, the RAM 440) . In some embodiments, the processing device 112 (e.g., the processor 420 of the computing device 400 and / or one or more modules illustrated in FIG. 5) may execute the set of instructions and may accordingly be directed to perform the process 800. The operations of the illustrated process presented below are intended to be illustrative. In some embodiments, the process 800 may be accomplished with one or more additional operations not described and / or without one or more of the operations discussed. Additionally, the order of the operations of process 800 illustrated in FIG. 8 and described below is not intended to be limiting.
[0136] In 810, the processing device 112 (e.g., the acquisition module 510 illustrated in FIG. 5, the processor 420 illustrated in FIG. 4) may obtain an image of a glass with a chamfer or a portion thereof.
[0137] In some embodiments, the processing device 112 may determine the image based on a plurality of image frames of the glass with a chamfer or a portion thereof captured by a laser camera. For example, the processing device 112 may designate any one of the plurality of image frames as the image. As another example, the processing device 112 may determine the image by fusing the plurality of image frames. Specifically, the processing device 112 may fuse the plurality of image frames by averaging gray values of pixels at the same position in the plurality of image frames. In some embodiments, the fusion of the plurality of image frames may include a continuous fusion, a discontinuous fusion, or the like, or any combination thereof. More descriptions regarding the continuous fusion and the discontinuous fusion may be found elsewhere in the present disclosure, for example, FIG. 9 and the descriptions thereof.
[0138] As described in connection with FIG. 2A, the plurality of image frames may be captured when the glass moves with a motion platform (e.g., the motion platform 210) on which the glass is placed. The fusion of the plurality of image frames may reduce the error caused by the jitter of the motion platform in the imaging, thereby improving image stability and accuracy.
[0139] In 820, the processing device 112 (e.g., the detection module 540 illustrated in FIG. 5, the processor 420 illustrated in FIG. 4) may determine initial endpoints of the chamfer in the image.
[0140] In some embodiments, the processing device 112 may determine contour pixels of the glass in the image. Since the glass is transparent, in the image of the glass with a chamfer captured by the laser camera, there are only multiple lines representing a contour of the glass. The contour pixels of the glass refer to pixels on the multiple lines representing the contour of the glass. Specifically, the processing device 112 may determine first pixels in the image with a grayscale larger than a grayscale threshold and determine second pixels by performing a Gaussian column convolution on the first pixels. The processing device 112 may determine third pixels by filtering the second pixels based on neighboring pixels of the second pixels. For each of the third pixels, the processing device 112 may determine a sub-pixel corresponding to the third pixel based on a centroid algorithm. Further, the processing device 112 may designate sub-pixels corresponding to the third pixels as the contour pixels of the glass. More descriptions regarding the determining of the contour pixels of the glass may be found elsewhere in the present disclosure, for example, FIG. 12 and the descriptions thereof.
[0141] Further, the processing device 112 may determine the initial endpoints of the chamfer based on the contour pixels. In some embodiments, the processing device 112 may determine, from the contour pixels, the initial endpoints of the chamfer based on coordinate information of the contour pixels. Specifically, according to the coordinate information of the contour pixels, the processing device 112 may select, from the contour pixels, pixels each of which has a relatively large coordinate difference (e.g., a difference larger than a preset threshold which may be a default value or set by a user) with at least one of its two immediately adjacent pixels as candidate initial endpoints of the chamfer. For example, FIG. 10A is a schematic diagram illustrating exemplary initial endpoints of chamfers of a glass in an image according to some embodiments of the present disclosure. As illustrated in FIG. 10, in the image 1000 of the glass, white lines may indicate contour pixels of the glass, and pixels 1001-1008 may be candidate initial endpoints of the chamfers 1020 and 1030. Further, according to the coordinate information of the candidate initial endpoints of the chamfer, the processing device 112 may select, from the candidate initial endpoints of the chamfer, pixels with relatively large target coordinate values (e.g., y coordinate value larger than a preset threshold which may be a default value or set by a user) as the initial endpoints of the chamfer. For example, as illustrated in FIG. 10, in the image 1000 of the glass, pixels 1005 and 1006 may be initial endpoints of the chamfer 1020, and pixels 1007 and 1008 may be initial endpoints of the chamfer 1030.
[0142] A laser camera captures an image of an object by reflecting laser lines into a lens of the laser camera. A chamfer of a glass is transparent and inclined. The transparency of the chamfer may cause that there are double-layered contour pixels on the chamfer in the image, which increases the difficulty and error of determining initial endpoints of the chamfer. The inclination of the chamfer may cause laser lines at an edge of the chamfer to not be effectively reflected into the lens of the laser camera, so that grayscales of contour pixels in the image corresponding to the edge of the chamfer are small (i.e., relatively dark edge) , accordingly, the contour pixels in the image corresponding to the edge of the chamfer cannot be accurately extracted, thereby increasing the error of determining the initial endpoints of the chamfer. FIG. 10B is schematic diagrams each of which illustrates an exemplary chamfer of a glass in an image according to some embodiments of the present disclosure. As illustrated in the image 1040 in FIG. 10B, there are double-layered contour pixels on a chamfer 1041, accordingly, initial endpoints 1042 of the chamfer 1041 have low accuracy. As illustrated in the image 1050 in FIG. 10B, an edge of the chamfer 1051 is relatively dark, accordingly, initial endpoints 1052 of the chamfer 1051 have low accuracy. In order to accurately determine a size of the chamfer (e.g., the chamfer 1041, the chamfer 1051) , the initial endpoints of the chamfer may be corrected.
[0143] In 830, the processing device 112 (e.g., the detection module 540 illustrated in FIG. 5, the processor 420 illustrated in FIG. 4) may determine target endpoints of the chamfer by correcting the initial endpoints.
[0144] In some embodiments, for each initial endpoint, the processing device 112 may determine a fitting region based on the contour pixels of the glass and a fitting line by fitting contour pixels in the fitting region. The processing device 112 may determine at least one calibration region based on the fitting line and at least one reference line corresponding to the at least one calibration region respectively. Further, the processing device 112 may determine a corresponding target endpoint based on the at least one reference line. The correction of the initial endpoints may improve the accuracy of the determination of the endpoints of the chamfer, thereby improving the accuracy of the glass chamfer detection. More descriptions regarding the determining of the target endpoints of the chamfer may be found elsewhere in the present disclosure, for example, FIG. 13 and the descriptions thereof.
[0145] FIG. 10C is a schematic diagram illustrating exemplary target endpoints according to some embodiments of the present disclosure. As illustrated in FIG. 10C, the target endpoints 1043 of the chamfer 1041 and the target endpoints 1053 of chamfer 1421 are determined by respectively correcting the initial endpoints 1412 of the chamfer 1051 and the initial endpoints 1042 of the chamfer 1041 illustrated in FIG. 10B. Compared with the initial endpoints 1042 and 1052 before the correction, the target endpoints 1043 and 1053 are more accurate.
[0146] In 840, the processing device 112 (e.g., the detection module 540 illustrated in FIG. 5, the processor 420 illustrated in FIG. 4) may determine a size of the chamfer based on the target endpoints of the chamfer.
[0147] The size of the chamfer may include a width, a height, a tilt angle of the chamfer, or the like, or a combination thereof. For example, FIG. 11A is a schematic diagram illustrating exemplary sizes of two chamfers according to some embodiments of the present disclosure. As illustrated in FIG. 11A, the size of a chamfer 1110 of a glass 1100 may include a width w1, a height h1, and a tilt angle θ1; the size of a chamfer 1120 of the glass 1100 may include a width w2, a height h2, and a tilt angle θ2.
[0148] In some embodiments, for each of the target endpoints of the chamfer, the processing device 112 may determine three-dimensional coordinates of the target endpoint in a world coordinate system. Specifically, the processing device 112 may determine the three-dimensional coordinates of the target endpoint in the world coordinate system by converting coordinates of the target endpoint from an image coordinate system corresponding to the image to the world coordinate system. Merely by way of example, the converting may be performed by a pixel distortion manner or a pixel point triangulation manner. Further, the processing device 112 may determine the size of the chamfer based on three-dimensional coordinates of the target endpoints in the world coordinate system. Specifically, take a specific chamfer as an example, the processing device 112 may determine a difference of x-coordinates of two target endpoints of the specific chamfer as the width of the chamfer; determine a difference of z-coordinates of the two target endpoints of the specific chamfer as the height of the chamfer; determine the tilt angle of the chamfer by dividing the height of the chamfer by the width of the chamfer.
[0149] In some embodiments, for each of the plurality of image frames of the glass with a chamfer captured by a laser camera, the processing device 112 may determine a candidate size of the chamfer corresponding to the image frame and determine the size of the chamfer by averaging candidate sizes of the chamfer corresponding to the plurality of image frames, which can improve the accuracy of the determination of the size of the chamfer.
[0150] In some embodiments, the chamfer detection may be performed at multiple locations on a glass to determine multiple sizes of the chamfer, and then an average value of the multiple sizes of the chamfer may be determined as the size of the chamfer. FIG. 11B is a schematic diagram illustrating exemplary locations of a glass on which a chamfer detection is performed according to some embodiments of the present disclosure. As illustrated in FIG. 11B, the chamfer detection may be performed respectively at locations A, B, C, and D of the glass 1100 to determine sizes of the chamfer 1110; similarly, the chamfer detection may be performed respectively at locations A, B, C, and D of the glass 1100 to determine sizes of the chamfer 1120. For example, the height, the width, and the tilt angle of the chamfer 1110 at the location A of the glass 1100 may be respectively 0.655 mm, 1.150 mm, and 29.678°; the height, the width, and the tilt angle of the chamfer 1110 at the location B of the glass 1100 may be respectively 0.742 mm, 1.337 mm, and 29.020°; the height, the width, and the tilt angle of the chamfer 1110 at the location C of the glass 1100 may be respectively 0.744 mm, 1.345 mm, and 28.945°; the height, the width, and the tilt angle of the chamfer 1110 at the location D of the glass 1100 may be respectively 0.726 mm, 1.294 mm, and 29.311°; the height, the width, and the tilt angle of the chamfer 1120 at the location A of the glass 1100 may be respectively 0.854 mm, 1.276 mm, and 33.796°; the height, the width, and the tilt angle of the chamfer 1120 at the location B of the glass 1100 may be respectively 0.830 mm, 1.224 mm, and 34.131°; the height, the width, and the tilt angle of the chamfer 1120 at the location C of the glass 1100 may be respectively 0.801 mm, 1.190 mm, and 33.957°; the height, the width, and the tilt angle of the chamfer 1120 at the location D of the glass 1100 may be respectively 0.748 mm, 1.118 mm, and 33.785°.
[0151] It should be noted that the above description of the process 800 is merely provided for the purposes of illustration, and not intended to limit the scope of the present disclosure. For persons having ordinary skills in the art, multiple variations or modifications may be made under the teachings of the present disclosure. However, those variations and modifications do not depart from the scope of the present disclosure.
[0152] FIG. 9 is a schematic diagram illustrating an exemplary continuous fusion and an exemplary discontinuous fusion of a plurality of image frames of a glass with a chamfer according to some embodiments of the present disclosure. As illustrated in FIG. 9, the processing device 112 may obtain image frames 1-9 of a glass with a chamfer captured by a laser camera.
[0153] In the continuous fusion, the processing device 112 may fuse image frames 1-4 to determine a first fusion image, fuse image frames 2-5 to determine a second fusion image, fuse image frames 3-6 to determine a third fusion image, fuse image frames 4-7 to determine a fourth fusion image, fuse image frames 5-8 to determine a fifth fusion image, and fuse image frames 6-9 to determine a sixth fusion image. Further, the processing device 112 may fuse the first fusion image, the second fusion image, the third fusion image, the fourth fusion image, the fifth fusion image, and the sixth fusion image to determine an image of the glass with a chamfer. In some embodiments, in addition to reducing the error caused by the jitter of the motion platform in the imaging of the glass with a chamfer, the continuous fusion does not affect a frame rate of the laser camera and obtains more sufficient imaging data.
[0154] In the discontinuous fusion, the processing device 112 may fuse image frames 1-3 to determine a first fusion image, fuse image frames 4-6 to determine a second fusion image, and fuse image frames 7-9 to determine a third fusion image. Further, the processing device 112 may fuse the first fusion image, the second fusion image, and the third fusion image to determine an image of the glass with a chamfer.
[0155] FIG. 12 is a flowchart illustrating an exemplary process for determining contour pixels of a glass in an image according to some embodiments of the present disclosure. In some embodiments, process 1200 may be executed by the image processing system 100. For example, the process 1200 may be implemented as a set of instructions (e.g., an application) stored in a storage device (e.g., the storage device150, the ROM 430, the RAM 440) . In some embodiments, the processing device 112 (e.g., the processor 420 of the computing device 400 and / or one or more modules illustrated in FIG. 5) may execute the set of instructions and may accordingly be directed to perform the process 1200. The operations of the illustrated process presented below are intended to be illustrative. In some embodiments, the process 1200 may be accomplished with one or more additional operations not described and / or without one or more of the operations discussed. Additionally, the order of the operations of process 1200 illustrated in FIG. 12 and described below is not intended to be limiting.
[0156] In 1210, the processing device 112 (e.g., the detection module 540 illustrated in FIG. 5, the processor 420 illustrated in FIG. 4) may determine first pixels in the image with a grayscale larger than a grayscale threshold (also referred to as a first grayscale threshold) .
[0157] The first grayscale threshold may be a default setting of the image processing system 100 or may be adjustable under different situations. In some embodiments, the first grayscale threshold may be an empirical value (e.g., 10, 15, 20, 25, 30, etc. ) .
[0158] In 1220, the processing device 112 (e.g., the detection module 540 illustrated in FIG. 5, the processor 420 illustrated in FIG. 4) may determine second pixels by performing a Gaussian column convolution on the first pixels.
[0159] The Gaussian column convolution is performed on the first pixels in the image with a grayscale larger than the grayscale threshold instead of all pixels in the image, which can reduce the time-consuming of the Gaussian column convolution. Merely by way of example, a convolution kernel radius of the Gaussian column convolution may be 5. In such cases, for each of the first pixels, the processing device 112 may respectively select 5 pixels up and down in a column where the first pixel is located, convolve grayscale values of the selected 10 pixels using a convolution kernel of the Gaussian column convolution, and determine a pixel with a largest convolved grayscale value from the selected 10 pixels as a second pixel.
[0160] In 1230, the processing device 112 (e.g., the detection module 540 illustrated in FIG. 5, the processor 420 illustrated in FIG. 4) may determine third pixels by filtering the second pixels based on neighboring pixels of the second pixels.
[0161] Generally, the glass is made of a transparent material which may introduce a lot of stray light. The stray light may generate stray pixels (also referred to as isolated pixels) in the image and a portion of the stray pixels may be included in the second pixels. In some embodiments, the processing device 112 may filter the second pixels based on neighboring pixels of the second pixels to cull the stray pixels included in the second pixels. Specifically, for each of the second pixels, the processing device 112 may determine, within a certain distance (e.g., 0.003mm, 0.005 mm, 0.007mm) from the second pixel, neighboring pixels with a grayscale larger than a grayscale threshold (also referred to as a second grayscale threshold) . The second grayscale threshold may be a default setting of the image processing system 100 or may be adjustable under different situations. In some embodiments, the second grayscale threshold may be the same as or different from the first grayscale threshold. Further, the processing device 112 may determine whether a count of the neighboring pixels of the second pixel exceeds a threshold. If the count of the neighboring pixels of the second pixel exceeds the threshold, the processing device 112 may designate the second pixel as a third pixel. If the count of the neighboring pixels of the second pixel does not exceed the threshold, the processing device 112 may determine the second pixel as a stray pixel and cull the stray pixel from the second pixels.
[0162] In 1240, for each of the third pixels, the processing device 112 (e.g., the detection module 540 illustrated in FIG. 5, the processor 420 illustrated in FIG. 4) may determine a sub-pixel corresponding to the third pixel based on a centroid algorithm.
[0163] The centroid algorithm may be configured to enhance brightness of pixels, so that the pixels may be more prominent and easier to be detected. In some embodiments, for each of the third pixels, the processing device 112 may determine the sub-pixel corresponding to the third pixel based on grayscale of the third pixel and coordinates of the third pixel in an image coordinate system corresponding to the image using the centroid algorithm. Specifically, the processing device 112 may input the grayscale of the third pixel and the coordinates of the third pixel into a model based on the centroid algorithm and determine the sub-pixel corresponding to the third pixel based on an output of the model.
[0164] In 1250, for each of the third pixels, the processing device 112 (e.g., the detection module 540 illustrated in FIG. 5, the processor 420 illustrated in FIG. 4) may designate sub-pixels corresponding to the third pixels as the contour pixels of the glass.
[0165] It should be noted that the above description of the process 1200 is merely provided for the purposes of illustration, and not intended to limit the scope of the present disclosure. For persons having ordinary skills in the art, multiple variations or modifications may be made under the teachings of the present disclosure. However, those variations and modifications do not depart from the scope of the present disclosure.
[0166] FIG. 13 is a flowchart illustrating an exemplary process for determining target endpoints of a chamfer in an image according to some embodiments of the present disclosure. In some embodiments, process 1300 may be executed by the image processing system 100. For example, the process 1300 may be implemented as a set of instructions (e.g., an application) stored in a storage device (e.g., the storage device150, the ROM 430, the RAM 440) . In some embodiments, the processing device 112 (e.g., the processor 420 of the computing device 400 and / or one or more modules illustrated in FIG. 5) may execute the set of instructions and may accordingly be directed to perform the process 1300. The operations of the illustrated process presented below are intended to be illustrative. In some embodiments, the process 1300 may be accomplished with one or more additional operations not described and / or without one or more of the operations discussed. Additionally, the order of the operations of process 1300 illustrated in FIG. 13 and described below is not intended to be limiting.
[0167] In 1310, for each of initial endpoints, the processing device 112 (e.g., the detection module 540 illustrated in FIG. 5, the processor 420 illustrated in FIG. 4) may determine a fitting region based on contour pixels of a glass.
[0168] In some embodiments, the initial endpoints may correspond to two or more chamfers. For example, as illustrated in FIG. 10A, the initial endpoints 1005 and 1006 correspond to the chamfer 1020; the initial endpoints 1007 and 1008 correspond to the chamfer 1030. In this situation, the processing device 112 may firstly identify endpoints corresponding to a same chamfer. In some embodiments, for any two of the initial endpoints, the processing device 112 may determine whether a count of contour pixels on a line (e.g., a line connecting the two initial endpoints) between the two initial endpoints exceeds a threshold (e.g., 100, 300, 500) . If the count of the contour pixels on the line between the two initial endpoints exceeds the threshold, the processing device 112 may determine that the two initial endpoints correspond to a same contour of the glass and designate the two initial endpoints as an initial endpoint pair. For example, as illustrated in FIG. 10A, for initial endpoints 1005, 1006, and 1007, a count of contour pixels on a line between initial endpoints 1005 and 1006 is larger than the threshold, whereas, a count of contour pixels on a line between initial endpoints 1005 and 1007 is clearly smaller than the threshold; accordingly, the processing device 112 may determine that the initial endpoints 1005 and 1006 correspond to the chamfer 1020.
[0169] Further, in some embodiments, the processing device 112 may divide, at a certain ratio (e.g., 1: 1: 1, 1: 2: 1, 1: 3: 1) , contour pixels of the glass between the initial endpoint pair into three parts, and determine a region including a middle part of the three parts as the fitting region. In some embodiments, the processing device 112 may directly determine a portion (e.g., 30%, 40%) of contour pixels between the initial endpoint pair and near a center (e.g., with the center of the initial endpoint pair as a center of the fitting region) of the initial endpoint pair, and determine a region including the portion of the contour pixels as the fitting region. For example, FIG. 14 is a schematic diagram illustrating an exemplary process for correcting the initial endpoints to determine target endpoints according to some embodiments of the present disclosure. As illustrated in FIG. 14, the processing device 112 may divide, at a ratio of 1: 2: 1, contour pixels of glass between initial endpoint pair A and B into three parts, and determine a region including a middle part of the three parts as a fitting region 1430 of the initial endpoint pair A and B.
[0170] In 1320, the processing device 112 (e.g., the detection module 540 illustrated in FIG. 5, the processor 420 illustrated in FIG. 4) may determine a fitting line by fitting contour pixels in the fitting region of the initial endpoint pair.
[0171] In some embodiments, the fitting line may refer to a smooth line (e.g., a straight line, a curve) that is used to connect discrete contour pixel points in the fitting region. In some embodiments, the processing device 112 may fit the contour pixels in the fitting region of the initial endpoint pair based on a fit function, for example, a linear function, a nonlinear function, etc. For example, as illustrated in FIG. 14, the processing device 112 may fit, using a linear function, contour pixels between the initial endpoint pair A and B in the fitting region 1430 to determine a fitting line 1440.
[0172] In 1330, the processing device 112 (e.g., the detection module 540 illustrated in FIG. 5, the processor 420 illustrated in FIG. 4) may determine at least one calibration region based on the fitting line.
[0173] In some embodiments, for each initial endpoint in the initial endpoint pair, the processing device 112 may determine a line (e.g., an extended line of the fitting line) connecting the initial endpoint and the fitting line, and determine the at least one calibration region based on the line, for example, determine a square region (e.g., region B1 or B2 illustrated in FIG. 14) with the initial endpoint as a center and with a centerline perpendicular to the line. In some embodiments, the processing device 112 may directly determine the at least one calibration region (e.g., region A1 or A2 illustrated in FIG. 14) with the initial endpoint as a center along a longitudinal direction.
[0174] In some embodiments, an exemplary shape of the at least one calibration region may include a regular shape, such as a circle, a square, etc. In some embodiments, the at least one calibration region may include a first calibration region (also referred to as a “longitudinal calibration region” ) and a second calibration region (also referred to as a “normal calibration region” ) .
[0175] In some embodiments, sizes of the first calibration region and the second calibration region may be the same or different. For example, when a shape of the at least one calibration region is a circle, the first calibration region and the second calibration region may be two regions with different sizes, and diameters of the two regions are along the fitting line. As another example, when a shape of the at least one calibration region is a square, the first calibration region may be a region with a diagonal line along the fitting line, and the second calibration region may be a region with a side perpendicular to the fitting line.
[0176] In some embodiments, as illustrated in FIG. 14, for the initial endpoint A, the processing device 112 may determine a first square A1 along the longitudinal direction with the initial endpoint A as a center and designate the first square A1 as a first calibration region of the initial endpoint A; the processing device 112 may also determine a second square B1 perpendicular to the fitting line 1440 (or the extended line of the fitting line 1440) with the initial endpoint A as a center and designate the second square B1 as a second calibration region of the initial endpoint A. In some embodiments, side lengths of the first square A1 and the second square B1 may be the same or different, which may be a default setting of the image processing system 100 or may be adjustable under different situations.
[0177] Similarly, for the initial endpoint B, the processing device 112 may determine a first square A2 along the longitudinal direction with the initial endpoint B as a center and designate the first square A2 as a first calibration region of the initial endpoint B; the processing device 112 may also determine a second square B2 perpendicular to the fitting line 1440 (or the extended line of the fitting line 1440) with the initial endpoint B as a center and designate the second square B2 as a second calibration region of the initial endpoint B. In some embodiments, side lengths of the first square A2 and the second square B2 may be the same or different, which may be a default setting of the image processing system 100 or may be adjustable under different situations.
[0178] In 1340, the processing device 112 (e.g., the detection module 540 illustrated in FIG. 5, the processor 420 illustrated in FIG. 4) may determine at least one reference line corresponding to the at least one calibration region respectively.
[0179] In some embodiments, for each of the at least one calibration region, the processing device 112 may determine a plurality of candidate lines by dividing the calibration region along a predetermined direction. For example, the processing device 112 may divide the calibration region along the predetermined direction and designate the division lines as the candidate lines. Merely by way of example, the predetermined direction may include a vertical direction, a horizontal direction, a direction perpendicular to any side of the calibration region, a direction perpendicular to the fitting line (also referred to as a normal direction of the fitting line) , or the like, or any combination thereof; the division of the calibration region may include an equal division, an unequal division, or the like, or any combination thereof.
[0180] In some embodiments, as illustrated in FIG. 14, the processing device 112 may equally divide each first calibration region (e.g., A1 or A2) along a vertical direction Y and designate division lines as candidate lines of the first calibration region; equally divide each second calibration region (e.g., B1 or B2) along a direction X perpendicular to the fitting line 1440 and designate division lines as candidate lines of the second calibration region.
[0181] In some embodiments, the processing device 112 may process the division lines of the calibration region by performing a Gaussian convolution on the division lines. A direction of the Gaussian convolution may be a normal vector direction of the division lines. Further, the processing device 112 may designate the processed division lines as the candidate lines.
[0182] In some embodiments, for each of the plurality of candidate lines, the processing device 112 may determine a score of the candidate line based on at least one of grayscale information or gradient information of the candidate line. In some embodiments, the processing device 112 may determine an average grayscale of contour pixels on the candidate line and designate the average grayscale as the score of the candidate line. In some embodiments, the processing device 112 may determine an average gradient of the contour pixels on the candidate line and designate the average gradient as the score of the candidate line. In some embodiments, the processing device 112 may determine the score of the candidate line by weighting the average grayscale and the average gradient. Weights of the average gray value and the average gray gradient value may be set according to actual needs and a sum of the weights may be equal to 1. In some embodiments, as illustrated in FIG. 14, for each of the candidate lines of a calibration region (e.g., A1, A2, B1, or B2) , the processing device 112 may determine a score of the candidate line based on at least one of grayscale information and / or gradient information of the candidate line.
[0183] Further, the processing device 112 may determine a corresponding reference line based on scores of the plurality of candidate lines. For example, the processing device 112 may select, from the plurality of candidate lines, a candidate line with a highest score as the reference line corresponding to the calibration region. In some embodiments, as illustrated in FIG. 14, for each of the calibration regions (e.g., A1, A2, B1, or B2) , the processing device 112 may select, from the candidate lines of the calibration region, a candidate line with a highest score as a reference line (e.g., 1451, 1452, 1453, or 1454) corresponding to the calibration region.
[0184] In 1350, the processing device 112 (e.g., the detection module 540 illustrated in FIG. 5, the processor 420 illustrated in FIG. 4) may determine a corresponding target endpoint based on the at least one reference line.
[0185] In some embodiments, for each of the at least one reference line, the processing device 112 may determine an intersection of an extension direction of the fitting line and the reference line and determine the corresponding target endpoint based on at least one intersection corresponding to the at least one reference line respectively. For example, the processing device 112 may determine a first intersection of the extension direction of the fitting line and a reference line corresponding to the first calibration region and a second intersection of the extension direction of the fitting line and a reference line corresponding to the second calibration region. Further, the processing device 112 may determine a midpoint of the first intersection and the second intersection as the corresponding target endpoint.
[0186] In some embodiments, as illustrated in FIG. 14, for the initial endpoint A, the processing device 112 may determine a first intersection 1461 of the fitting line 1440 (or the extended line of the fitting line 1440) and the reference line 1451 corresponding to the first calibration region A1 and a second intersection 1463 of the fitting line 1440 (or the extended line of the fitting line 1440) and the reference line 1453 corresponding to the second calibration region B1. Further, the processing device 112 may determine a midpoint of the first intersection 1461 and the second intersection 1463 as a corresponding target endpoint.
[0187] Similarly, for the initial endpoint B, the processing device 112 may determine a first intersection 1462 of the fitting line 1440 (or the extended line of the fitting line 1440) and the reference line 1452 corresponding to the first calibration region A2 and a second intersection 1464 of the fitting line 1440 (or the extended line of the fitting line 1440) and the reference line 1454 corresponding to the second calibration region B2. Further, the processing device 112 may determine a midpoint of the first intersection 1462 and the second intersection 1464) as a corresponding target endpoint.
[0188] It should be noted that the above description of the process 1300 is merely provided for the purposes of illustration, and not intended to limit the scope of the present disclosure. For persons having ordinary skills in the art, multiple variations or modifications may be made under the teachings of the present disclosure. However, those variations and modifications do not depart from the scope of the present disclosure.
[0189] FIG. 15 is a flowchart illustrating an exemplary process for tire bulge detection according to some embodiments of the present disclosure. In some embodiments, process 1500 may be executed by the image processing system 100. For example, the process 1500 may be implemented as a set of instructions (e.g., an application) stored in a storage device (e.g., the storage device150, the ROM 430, the RAM 440) . In some embodiments, the processing device 112 (e.g., the processor 420 of the computing device 400 and / or one or more modules illustrated in FIG. 5) may execute the set of instructions and may accordingly be directed to perform the process 1500. The operations of the illustrated process presented below are intended to be illustrative. In some embodiments, the process 1500 may be accomplished with one or more additional operations not described and / or without one or more of the operations discussed. Additionally, the order of the operations of process 1500 illustrated in FIG. 15 and described below is not intended to be limiting.
[0190] In 1510, the processing device 112 (e.g., the acquisition module 510 illustrated in FIG. 5, the processor 420 illustrated in FIG. 4) may obtain an image of a tire or a portion thereof.
[0191] In some embodiments, the image may be a 3D image. The processing device 112 may determine the 3D image based on a plurality of image frames of the tire or a portion thereof captured by a laser camera. For example, the processing device 112 may determine the 3D image by fusing the plurality of image frames. As described in connection with operation FIG. 3, the image frames may be captured when the tire is under a load-bearing state and a high-speed (e.g., 120 km / h) moving state. Merely by way of example, the processing device 112 may obtain the plurality of image frames by directing a laser camera of an imaging device (e.g., the imaging device 300 illustrated in FIG. 3) to continuously capture image frames of the tire until the tire rotates one circle. FIG. 16A is a schematic diagram illustrating an exemplary image frame of a tire according to some embodiments of the present disclosure. As illustrated in FIG. 16A, each of white line segments in the image frame 1610 may indicate a point cloud of the tire. The point cloud may include a plurality of points each of which may be a pixel and correspond to a laser line reflected by the tire or a portion thereof.
[0192] In some embodiments, the processing device 112 may determine a coordinate system of the 3D image and coordinates of points in point clouds of the tire in the 3D image may be represented based on the coordinate system. FIG. 16B is a schematic diagram illustrating an exemplary coordinate system of a 3D image of a tire according to some embodiments of the present disclosure. As illustrated in FIG. 16B, 1621 refers to the tire and 1620 refers to the 3D image of the tire. An X-axis direction of a coordinate system of the 3D image 1620 may be along a width direction of the tire 1621, a Z-axis direction may be along a thickness direction of the tire 1621, and Y-axis direction may be perpendicular to a plane of the X-axis direction and Z-axis direction.
[0193] In 1520, the processing device 112 (e.g., the detection module 540 illustrated in FIG. 5, the processor 420 illustrated in FIG. 4) may obtain a reference image of the tire.
[0194] The reference image may be a 3D image of a tire with no bulge. In some embodiments, the processing device 112 may obtain a plurality of 3D images of the tire in a non-bulging state and determine the reference image of the tire based on the plurality of 3D images. For example, for each position on the tire, the processing device 112 may determine corresponding points (e.g., points in point clouds) in the plurality of 3D images respectively and determine a global point height by averaging heights (e.g., Z-axis coordinates) of the points in the plurality of 3D images. Further, the processing device 112 may determine the reference image of the tire based on the global point heights corresponding to all the positions of the tire.
[0195] Take a specific position on the tire as an example, the processing device 112 may average heights (e.g., Z-axis coordinates) of the corresponding points in the plurality of 3D images according to an equation (6) below:
[0196]
[0197] where refers to an average value of Z-axis coordinates of the points, k refers to a count of the points (i.e., a count of the plurality of 3D images) , and refers to a Z-axis coordinate of a specific point in one of the plurality of 3D images.
[0198] In some embodiments, the reference image may be previously determined and stored in a storage device (e.g., the storage device 150, the ROM 430, the RAM 440, an external storage device) . The processing device 112 may retrieve the reference image from the storage device via a network (e.g., the network 130) .
[0199] In 1530, the processing device 112 (e.g., the detection module 540 illustrated in FIG. 5, the processor 420 illustrated in FIG. 4) may determine whether there is a bulge on the tire by comparing the image and the reference image.
[0200] In some embodiments, for each point cloud of the tire in the image, the processing device 112 may determine a difference between a height of the point cloud and a height of a corresponding point cloud in the reference image (or an average height of point clouds in the reference image, which can be referred to as a “point cloud height of the reference image” ) . As used herein, a height of a point cloud may refer to an average Z-axis coordinate of points in the point cloud. Further, the processing device 112 may determine whether there is a bulge on the tire by comparing multiple differences corresponding to multiple point clouds of the tire in the image with a threshold. If one of the multiple differences exceeds the threshold, the processing device 112 may determine that there is a bulge on the tire.
[0201] Generally, an area of a bulge on a tire is relatively large, where there may be multiple point clouds. If all the multiple point clouds are processed to determine the differences and further are compared with the threshold, the speed of the tire bulge detection may be relatively low. Accordingly, in some embodiments, the processing device 112 may divide the image into a plurality of regions each of which includes at least one point cloud and determine whether there is a bulge on the tire based on the plurality of regions. That is, the “region” instead of the “point cloud” is used as a unit of the tire bulge detection, which can significantly improve the speed of the tire bulge detection. More descriptions regarding the determining of whether there is a bulge on the tire based on the plurality of regions may be found elsewhere in the present disclosure, for example, FIG. 18 and the descriptions thereof.
[0202] In some embodiments, in response to that there is a bulge on the tire, the processing device 112 may designate the image as a bulge image and store the bulge image in the storage device. FIG. 17 is a schematic diagram illustrating an exemplary bulge image according to some embodiments of the present disclosure. As illustrated in FIG. 17, there is a bulge in a bulge image 1710 of a tire 1711.
[0203] In some embodiments, in response to that there is a bulge on the tire, the processing device 112 may send alarm information to a user device (e.g., the user device 140 illustrated in FIG. 1) . The alarm information may indicate that there is a bulge on the tire. The alarm information may include the bulge image, a size of the bulge in the bulge image, or the like, or any combination thereof. In some embodiments, the alarm information may include voice information, image information, text information, or the like, or any combination thereof. After noticing the alarm information via the user device, a user may stop a power supply of the imaging device (e.g., the imaging device 300 illustrated in FIG. 3) to stop the rotation of the tire, thereby avoiding the bulged tire from blowing out.
[0204] In some embodiment, in response to that there is a bulge on the tire, the processing device 112 may send a stop instruction to the imaging device to stop the rotation of the tire.
[0205] In some embodiments, in response to that there is no bulge on the tire, the processing device 112 may designate the image as a normal image and store the normal image in a storage device (e.g., e.g., the storage device 150, the ROM 430, the RAM 440, an external storage device) .
[0206] In some embodiments, in response to that a count of stored normal images in the storage device exceeds a count threshold, the processing device 112 may update the reference image based on the stored normal images, and perform the tire bulge detection based on the updated reference image, which can reduce or avoid a detection error caused by a self-expansion of the tire due high temperature. For example, for each position on the tire, the processing device 112 may determine corresponding points (e.g., points in point clouds) in the stored normal images respectively and determine a global point height by averaging heights (e.g., Z-axis coordinates) of the points in the stored normal images. Further, the processing device 112 may determine the updated reference image of the tire based on the global point heights corresponding to all the positions of the tire.
[0207] It should be noted that the above description of the process 1500 is merely provided for the purposes of illustration, and not intended to limit the scope of the present disclosure. For persons having ordinary skills in the art, multiple variations or modifications may be made under the teachings of the present disclosure. However, those variations and modifications do not depart from the scope of the present disclosure.
[0208] FIG. 18 is a flowchart illustrating an exemplary process for determining whether there is a bulge on a tire by comparing an image and a reference image of the tire according to some embodiments of the present disclosure. In some embodiments, process 1800 may be executed by the image processing system 100. For example, the process 1800 may be implemented as a set of instructions (e.g., an application) stored in a storage device (e.g., the storage device150, the ROM 430, the RAM 440) . In some embodiments, the processing device 112 (e.g., the processor 420 of the computing device 400 and / or one or more modules illustrated in FIG. 5) may execute the set of instructions and may accordingly be directed to perform the process 1800. The operations of the illustrated process presented below are intended to be illustrative. In some embodiments, the process 1800 may be accomplished with one or more additional operations not described and / or without one or more of the operations discussed. Additionally, the order of the operations of process 1800 illustrated in FIG. 18 and described below is not intended to be limiting.
[0209] In 1810, the processing device 112 (e.g., the detection module 540 illustrated in FIG. 5, the processor 420 illustrated in FIG. 4) may divide the image into a plurality of regions.
[0210] In some embodiments, sizes of the plurality of regions may be the same or different. In some embodiments, in order to ensure that a size of each of the plurality of regions is smaller than a size of a possible bulge on the tire, the size of each of the plurality of regions may be less than a preset size. In some embodiments, the preset size may be a default setting of the image processing system 100 or may be adjustable under different situations. In some embodiments, the preset size may be determined based on extensive historical data associated with bulges on multiple tires. The historical data may at least include a size of each bulge on each of the multiple tires. For example, the preset size may be equal to a minimum size of a bulge in the historical data. In some embodiments, each of the plurality of regions may include at least one point cloud each of which includes a plurality of pixels (or points) .
[0211] In 1820, for each of the plurality of regions, the processing device 112 (e.g., e.g., the detection module 540 illustrated in FIG. 5, the processor 420 illustrated in FIG. 4) may select a point cloud from the at least one point cloud in the region as a target point cloud. In some embodiments, the processing device 112 may randomly select a point cloud from the at least one point cloud as the target point cloud. In some embodiments, the processing device 112 may select a point cloud from the at least one point cloud based on a size of the at least one point cloud. For example, the processing device 112 may select a point cloud with a largest size from the at least one point cloud.
[0212] In 1830, the processing device 112 (e.g., e.g., the detection module 540 illustrated in FIG. 5, the processor 420 illustrated in FIG. 4) may determine whether a difference between a height of the target point cloud and a point cloud height of the reference image (or a height of a corresponding point cloud in the reference image) exceeds a height threshold.
[0213] In some embodiments, the height threshold may be a default setting of the image processing system 100 or may be adjustable under different situations. For example, heights of patterns or texts on a tire are usually less than 1 mm, and a height of a bulge on the tire is usually greater than 2 mm, accordingly, the height threshold may be set as 1 mm, thereby ensuring that the patterns and texts on the tire will not affect the detection of the bulge.
[0214] In 1840, in response to that the difference exceeds the height threshold, the processing device 112 (e.g., the detection module 540 illustrated in FIG. 5, the processor 420 illustrated in FIG. 4) may determine the region as an abnormal region where a bulge may be located.
[0215] In some embodiments, the processing device 112 may mark the abnormal region as “NG. ” In some embodiments, in response to that the difference does not exceed the height threshold, the processing device 112 may determine the region as a normal region where no bulge is located. In some embodiments, the processing device 112 may mark the normal region as “OK. ”
[0216] Merely by way of example, the processing device 112 may perform operations 1830 and 1840 according to an equation (7) below:
[0217]
[0218] where refers to the height of the target point cloud, refers to the point cloud height of the reference image, value refers to the difference between the height of the target point cloud and the point cloud height of the reference image, “NG” refers to a determination result that the difference exceeds the height threshold, and “OK” refers to a determination result that the difference does not exceed the height threshold.
[0219] In 1850, the processing device 112 (e.g., the detection module 540 illustrated in FIG. 5, the processor 420 illustrated in FIG. 4) may determine whether a total width of multiple directly adjacent abnormal regions is larger than a width threshold.
[0220] In some embodiments, the width threshold may be a default setting of the image processing system 100 or may be adjustable under different situations. In some embodiments, the width threshold may be an experience value determined by a user. In some embodiments, the width threshold may be determined based on extensive historical data associated with bulges on multiple tires. For example, the width threshold may be equal to a minimum width of a bulge in the historical data.
[0221] In some embodiments, the processing device 112 may determine the total width of the multiple directly adjacent abnormal regions based on coordinates of multiple point clouds of the multiple directly adjacent abnormal regions. For example, the processing device 112 may determine, in the multiple point clouds of the multiple directly adjacent abnormal regions, points with a same Y-axis coordinate as a group, so that a plurality of groups may be determined. For each of the plurality of groups, the processing device 112 may determine a sum of X-axis coordinates corresponding to the group as a candidate width of the multiple directly adjacent abnormal regions. Further, the processing device 112 may determine a maximum value of sums corresponding to the plurality of groups as the total width of the multiple directly adjacent abnormal regions.
[0222] In 1860, in response to that the total width of the multiple directly adjacent abnormal regions is larger than the width threshold, the processing device 112 (e.g., the detection module 540 illustrated in FIG. 5, the processor 420 illustrated in FIG. 4) may determine that there is a bulge on the tire.
[0223] In response to determining that the total width of the multiple directly adjacent abnormal regions is not larger than the width threshold, the processing device 112 (e.g., the detection module 540 illustrated in FIG. 5, the processor 420 illustrated in FIG. 4) may determine that there is no bulge on the tire.
[0224] It should be noted that the above description of the process 1800 is merely provided for the purposes of illustration, and not intended to limit the scope of the present disclosure. For persons having ordinary skills in the art, multiple variations or modifications may be made under the teachings of the present disclosure. However, those variations and modifications do not depart from the scope of the present disclosure.
[0225] FIG. 19 is a flowchart illustrating an exemplary process for tire bulge detection according to some embodiments of the present disclosure. In some embodiments, process 1900 may be executed by the image processing system 100. For example, the process 1900 may be implemented as a set of instructions (e.g., an application) stored in a storage device (e.g., the storage device150, the ROM 430, the RAM 440) . In some embodiments, the processing device 112 (e.g., the processor 420 of the computing device 400 and / or one or more modules illustrated in FIG. 5) may execute the set of instructions and may accordingly be directed to perform the process 1900. The operations of the illustrated process presented below are intended to be illustrative. In some embodiments, the process 1900 may be accomplished with one or more additional operations not described and / or without one or more of the operations discussed. Additionally, the order of the operations of process 1900 illustrated in FIG. 19 and described below is not intended to be limiting.
[0226] In 1910, the processing device 112 (e.g., the acquisition module 510 illustrated in FIG. 5, the processor 420 illustrated in FIG. 4) may obtain an image of a tire or a portion thereof. The obtaining of the image may be performed in a similar manner as described in connection with operation 1510, and the descriptions thereof are not repeated here.
[0227] In 1920, the processing device 112 (e.g., the acquisition module 510 illustrated in FIG. 5, the processor 420 illustrated in FIG. 4) may obtain a reference image of the tire. The obtaining of the reference image may be performed in a similar manner as described in connection with operation 1520, and the descriptions thereof are not repeated here.
[0228] In 1930, the processing device 112 (e.g., the detection module 540 illustrated in FIG. 5, the processor 420 illustrated in FIG. 4) may determine whether there is a bulge on the tire in the image. The determination of whether there is a bulge on the tire may be performed in a similar manner as described in connection with operation 1530, and the descriptions thereof are not repeated here.
[0229] In 1940, in response to that there is no bulge on the tire, the processing device 112 (e.g., the detection module 540 illustrated in FIG. 5, the processor 420 illustrated in FIG. 4) may add a value of 1 to a count of normal images.
[0230] In 1950, the processing device 112 (e.g., the detection module 540 illustrated in FIG. 5, the processor 420 illustrated in FIG. 4) may determine whether the count of the normal images exceeds a count threshold T1.
[0231] In 1960, in response to that the count of the normal images exceeds the count threshold T1, the processing device 112 (e.g., the detection module 540 illustrated in FIG. 5, the processor 420 illustrated in FIG. 4) may update the reference image and update the count of normal images as 0.
[0232] Further, the processing device 112 may proceed to operation 1910 to perform the tire bulge detection based on the updated reference image and the updated count of normal images. In some embodiments, in response to that the count of the normal images does not exceed the count threshold T1, the processing device 112 may proceed to operation 1910 to perform the tire bulge detection again.
[0233] In 1970, in response to that there is a bulge on the tire, the processing device 112 (e.g., the detection module 540 illustrated in FIG. 5, the processor 420 illustrated in FIG. 4) may add a value of 1 to a count of bulge images.
[0234] In 1980, the processing device 112 (e.g., the detection module 540 illustrated in FIG. 5, the processor 420 illustrated in FIG. 4) may determine whether the count of the bulge images exceeds a count threshold T2.
[0235] In 1990, in response to that the count of the bulge images exceeds the count threshold T2, the processing device 112 (the detection module 540 illustrated in FIG. 5, the processor 420 illustrated in FIG. 4) may send alarm information to a user device (e.g., the user device 140 illustrated in FIG. 1) and send a stop instruction to stop the rotation of the tire.
[0236] In some embodiments, in response to that the count of the bulge images does not exceed the count threshold T2, the processing device 112 may proceed to operation 1910 to perform the tire bulge detection again.
[0237] It should be noted that the above description of the process 1900 is merely provided for the purposes of illustration, and not intended to limit the scope of the present disclosure. For persons having ordinary skills in the art, multiple variations or modifications may be made under the teachings of the present disclosure. However, those variations and modifications do not depart from the scope of the present disclosure.
[0238] Having thus described the basic concepts, it may be rather apparent to those skilled in the art after reading this detailed disclosure that the foregoing detailed disclosure is intended to be presented by way of example only and is not limiting. Various alterations, improvements, and modifications may occur and are intended to those skilled in the art, though not expressly stated herein. These alterations, improvements, and modifications are intended to be suggested by this disclosure, and are within the spirit and scope of the exemplary embodiments of this disclosure.
[0239] Moreover, certain terminology has been used to describe embodiments of the present disclosure. For example, the terms “one embodiment, ” “an embodiment, ” and / or “some embodiments” mean that a particular feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment of the present disclosure. Therefore, it is emphasized and should be appreciated that two or more references to “an embodiment” or “one embodiment” or “an alternative embodiment” in various portions of this disclosure are not necessarily all referring to the same embodiment. Furthermore, the particular features, structures, or characteristics may be combined as suitable in one or more embodiments of the present disclosure.
[0240] Further, it will be appreciated by one skilled in the art, aspects of the present disclosure may be illustrated and described herein in any of a number of patentable classes or contexts including any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof. Accordingly, aspects of the present disclosure may be implemented entirely hardware, entirely software (including firmware, resident software, micro-code, etc. ) , or combining software and hardware implementation that may all generally be referred to herein as a “unit, ” “module, ” or “system. ” Furthermore, aspects of the present disclosure may take the form of a computer program product embodied in one or more computer-readable media having computer-readable program code embodied thereon.
[0241] A computer readable signal medium may include a propagated data signal with computer readable program code embodied therein, for example, in a baseband or as part of a carrier wave. Such a propagated signal may take any of a variety of forms, including electromagnetic, optical, or the like, or any suitable combination thereof. A computer readable signal medium may be any computer-readable medium that is not a computer-readable storage medium and that may communicate, propagate, or transport a program for use by or in connection with an instruction-performing system, apparatus, or device. Program code embodied on a computer readable signal medium may be transmitted using any appropriate medium, including wireless, wireline, optical fiber cable, RF, or the like, or any suitable combination of the foregoing.
[0242] Computer program code for carrying out operations for aspects of the present disclosure may be written in any combination of one or more programming languages, including an object-oriented programming language such as Java, Scala, Smalltalk, Eiffel, JADE, Emerald, C++, C#, VB. NET, Python or the like, conventional procedural programming languages, such as the “C” programming language, Visual Basic, Fortran 2103, Perl, COBOL 2102, PHP, ABAP, dynamic programming languages such as Python, Ruby, and Groovy, or other programming languages. The program code may execute entirely on the user’s computer, partly on the user’s computer, as a stand-alone software package, partly on the user’s computer, and partly on a remote computer or entirely on the remote computer or server. In the latter scenario, the remote computer may be connected to the user’s computer through any type of network, including a local area network (LAN) or a wide area network (WAN) , or the connection may be made to an external computer (for example, through the Internet using an Internet Service Provider) or in a cloud computing environment or offered as a service such as a Software as a Service (SaaS) .
[0243] Furthermore, the recited order of processing elements or sequences, or the use of numbers, letters, or other designations therefore, is not intended to limit the claimed processes and methods to any order except as may be specified in the claims. Although the above disclosure discusses through various examples what is currently considered to be a variety of useful embodiments of the disclosure, it is to be understood that such detail is solely for that purpose, and that the appended claims are not limited to the disclosed embodiments, but, on the contrary, are intended to cover modifications and equivalent arrangements that are within the spirit and scope of the disclosed embodiments. For example, although the implementation of various components described above may be embodied in a hardware device, it may also be implemented as a software-only solution, e.g., an installation on an existing server or mobile device.
[0244] Similarly, it should be appreciated that in the foregoing description of embodiments of the present disclosure, various features are sometimes grouped together in a single embodiment, figure, or description thereof for the purpose of streamlining the disclosure aiding in the understanding of one or more of the various inventive embodiments. This method of disclosure, however, is not to be interpreted as reflecting an intention that the claimed subject matter requires more features than are expressly recited in each claim. Rather, inventive embodiments lie in less than all features of a single foregoing disclosed embodiment.
[0245] In some embodiments, the numbers expressing quantities or properties used to describe and claim certain embodiments of the application are to be understood as being modified in some instances by the term “about, ” “approximate, ” or “substantially. ” For example, “about, ” “approximate, ” or “substantially” may indicate ±20%variation of the value it describes, unless otherwise stated. Accordingly, in some embodiments, the numerical parameters set forth in the written description and attached claims are approximations that may vary depending upon the desired properties sought to be obtained by a particular embodiment. In some embodiments, the numerical parameters should be construed in light of the number of reported significant digits and by applying ordinary rounding techniques. Notwithstanding that the numerical ranges and parameters setting forth the broad scope of some embodiments of the application are approximations, the numerical values set forth in the specific examples are reported as precisely as practicable.
[0246] Each of the patents, patent applications, publications of patent applications, and other material, such as articles, books, specifications, publications, documents, things, and / or the like, referenced herein is hereby incorporated herein by this reference in its entirety for all purposes, excepting any prosecution file history associated with same, any of same that is inconsistent with or in conflict with the present document, or any of same that may have a limiting effect as to the broadest scope of the claims now or later associated with the present document. By way of example, should there be any inconsistency or conflict between the description, definition, and / or the use of a term associated with any of the incorporated material and that associated with the present document, the description, definition, and / or the use of the term in the present document shall prevail.
[0247] In closing, it is to be understood that the embodiments of the application disclosed herein are illustrative of the principles of the embodiments of the application. Other modifications that may be employed may be within the scope of the application. Thus, by way of example, but not of limitation, alternative configurations of the embodiments of the application may be utilized in accordance with the teachings herein. Accordingly, embodiments of the present application are not limited to that precisely as shown and described.
Claims
1.A system, comprising:at least one storage device including a set of instructions; andat least one processor in communication with the at least one storage device, wherein when executing the set of instructions, the at least one processor causes the system to perform operations including:obtaining an image captured by a laser camera;determining a brightness of the image and an exposure parameter of the laser camera corresponding to the brightness of the image; anddetermining a target exposure parameter of the laser camera by adjusting the exposure parameter of the laser camera based on the brightness of the image and a reference brightness.2.The system of claim 1, wherein the determining the brightness of the image includes:determining a plurality of target pixels in the image with a brightness value larger than a brightness threshold; anddetermining the brightness of the image based on the brightness values of the plurality of target pixels.3.The system of claim 1, wherein the determining the target exposure parameter of the laser camera by adjusting the exposure parameter of the laser camera based on the brightness of the image and the reference brightness includes:determining whether the brightness of the image is within a reference brightness range associated with the reference brightness;in response to that the brightness of the image is within the reference brightness range, determining whether the brightness of the image is larger than the reference brightness;in response to that the brightness of the image is larger than the reference brightness, determining the target exposure parameter of the laser camera by decreasing the exposure parameter of the laser camera; andin response to that the brightness of the image is less than the reference brightness, determining the target exposure parameter of the laser camera by increasing the exposure parameter of the laser camera.4.The system of claim 1, wherein the image captured by the laser camera is an image of a glass with a chamfer, and the operations further include:determining initial endpoints of the chamfer in the image;determining target endpoints of the chamfer by correcting the initial endpoints; anddetermining a size of the chamfer based on the target endpoints of the chamfer.5.The system of claim 4, wherein the determining initial endpoints of the chamfer in the image includes:determining contour pixels of the glass in the image; anddetermining the initial endpoints of the chamfer based on the contour pixels.6.The system of claim 5, wherein the determining contour pixels of the glass in the image includes:determining first pixels in the image with a grayscale larger than a grayscale threshold;determining second pixels by performing a Gaussian column convolution on the first pixels;determining third pixels by filtering the second pixels based on neighboring pixels of the second pixels;for each of the third pixels, determining a sub-pixel corresponding to the third pixel based on a centroid algorithm; anddesignating sub-pixels corresponding to the third pixels as the contour pixels of the glass.7.The system of claim 5, wherein the determining target endpoints of the chamfer by correcting the initial endpoints includes:for each initial endpoint,determining a fitting region based on the contour pixels of the glass;determining a fitting line by fitting contour pixels in the fitting region;determining at least one calibration region based on the fitting line;determining at least one reference line corresponding to the at least one calibration region respectively; anddetermining a corresponding target endpoint based on the at least one reference line.8.The system of claim 7, wherein the determining at least one reference line corresponding to the at least one calibration region respectively includes:for each of the at least one calibration region,determining a plurality of candidate lines by dividing the calibration region along a predetermined direction;for each of the plurality of candidate lines, determining a score of the candidate line based on at least one of grayscale information or gradient information of the candidate line; anddetermining a corresponding reference line based on scores of the plurality of candidate lines.9.The system of claim 8, wherein the determining a corresponding target endpoint based on the at least one reference line includes:for each of the at least one reference line, determining an intersection of the fitting line and the reference line; anddetermining the corresponding target endpoint based on at least one intersection corresponding to the at least one reference line respectively.10.The system of claim 1, wherein the image captured by the laser camera is a three-dimensional (3D) image of a tire, and the operations further include:obtaining a reference image of the tire; anddetermining whether there is a bulge on the tire by comparing the image and the reference image.11.The system of claim 10, wherein the operations further include:in response to that there is no bulge on the tire, designating the image as a normal image and storing the normal image in a storage device;in response to that a count of stored normal images in the storage device exceeds a count threshold, updating the reference image based on the stored normal images.12.The system of claim 10, wherein the determining whether there is a bulge on the tire by comparing the image and the reference image includes:dividing the image into a plurality of regions, each of the plurality of regions including at least one point cloud each of which includes a plurality of pixels;for each of the plurality of regions,selecting a point cloud from the at least one point cloud in the region as a target point cloud;determining whether a difference between a height of the target point cloud and a point cloud height of the reference image exceeds a height threshold; andin response to that the difference exceeds the height threshold, determining the region as an abnormal region where a bulge may be located.13.The system of claim 12, wherein the operations further include:determining whether a total width of multiple directly adjacent abnormal regions is larger than a width threshold; andin response to that the total width of the multiple directly adjacent abnormal regions is larger than the width threshold, determining that there is a bulge on the tire.14.A method implemented on a computing device including at least one processor, at least one storage medium, and a communication platform connected to a network, the method comprising:obtaining an image captured by a laser camera;determining a brightness of the image and an exposure parameter of the laser camera corresponding to the brightness of the image; anddetermining a target exposure parameter of the laser camera by adjusting the exposure parameter of the laser camera based on the brightness of the image and a reference brightness.15.The method of claim 14, wherein the determining the brightness of the image includes:determining a plurality of target pixels in the image with a brightness value larger than a brightness threshold; anddetermining the brightness of the image based on the brightness values of the plurality of target pixels.16.The method of claim 14, wherein the determining the target exposure parameter of the laser camera by adjusting the exposure parameter of the laser camera based on the brightness of the image and the reference brightness includes:determining whether the brightness of the image is within a reference brightness range associated with the reference brightness;in response to that the brightness of the image is within the reference brightness range, determining whether the brightness of the image is larger than the reference brightness;in response to that the brightness of the image is larger than the reference brightness, determining the target exposure parameter of the laser camera by decreasing the exposure parameter of the laser camera; andin response to that the brightness of the image is less than the reference brightness, determining the target exposure parameter of the laser camera by increasing the exposure parameter of the laser camera.17.The method of claim 14, wherein the image captured by the laser camera is an image of a glass with a chamfer, and the method further includes:determining initial endpoints of the chamfer in the image;determining target endpoints of the chamfer by correcting the initial endpoints; anddetermining a size of the chamfer based on the target endpoints of the chamfer.18.The method of claim 17, wherein the determining initial endpoints of the chamfer in the image includes:determining contour pixels of the glass in the image; anddetermining the initial endpoints of the chamfer based on the contour pixels.19.The method of claim 18, wherein the determining contour pixels of the glass in the image includes:determining first pixels in the image with a grayscale larger than a grayscale threshold;determining second pixels by performing a Gaussian column convolution on the first pixels;determining third pixels by filtering the second pixels based on neighboring pixels of the second pixels;for each of the third pixels, determining a sub-pixel corresponding to the third pixel based on a centroid algorithm; anddesignating sub-pixels corresponding to the third pixels as the contour pixels of the glass.20.The method of claim 18, wherein the determining target endpoints of the chamfer by correcting the initial endpoints includes:for each initial endpoint,determining a fitting region based on the contour pixels of the glass;determining a fitting line by fitting contour pixels in the fitting region;determining at least one calibration region based on the fitting line;determining at least one reference line corresponding to the at least one calibration region respectively; anddetermining a corresponding target endpoint based on the at least one reference line.21.The method of claim 20, wherein the determining at least one reference line corresponding to the at least one calibration region respectively includes:for each of the at least one calibration region,determining a plurality of candidate lines by dividing the calibration region along a predetermined direction;for each of the plurality of candidate lines, determining a score of the candidate line based on at least one of grayscale information or gradient information of the candidate line; anddetermining a corresponding reference line based on scores of the plurality of candidate lines.22.The method of claim 21, wherein the determining a corresponding target endpoint based on the at least one reference line includes:for each of the at least one reference line, determining an intersection of the fitting line and the reference line; anddetermining the corresponding target endpoint based on at least one intersection corresponding to the at least one reference line respectively.23.The method of claim 14, wherein the image captured by the laser camera is a three-dimensional (3D) image of a tire, and the method further includes:obtaining a reference image of the tire; anddetermining whether there is a bulge on the tire by comparing the image and the reference image.24.The method of claim 23, wherein the method further includes:in response to that there is no bulge on the tire, designating the image as a normal image and storing the normal image in a storage device;in response to that a count of stored normal images in the storage device exceeds a count threshold, updating the reference image based on the stored normal images.25.The method of claim 23, wherein the determining whether there is a bulge on the tire by comparing the image and the reference image includes:dividing the image into a plurality of regions, each of the plurality of regions including at least one point cloud each of which includes a plurality of pixels;for each of the plurality of regions,selecting a point cloud from the at least one point cloud in the region as a target point cloud;determining whether a difference between a height of the target point cloud and a point cloud height of the reference image exceeds a height threshold; andin response to that the difference exceeds the height threshold, determining the region as an abnormal region where a bulge may be located.26.The method of claim 25, wherein the method further includes:determining whether a total width of multiple directly adjacent abnormal regions is larger than a width threshold; andin response to that the total width of the multiple directly adjacent abnormal regions is larger than the width threshold, determining that there is a bulge on the tire.27.A system, comprising:an acquisition module configured to obtain an image captured by a laser camera;a determination module configured to determine a brightness of the image and an exposure parameter of the laser camera corresponding to the brightness of the image; andan adjustment module configured to determine a target exposure parameter of the laser camera by adjusting the exposure parameter of the laser camera based on the brightness of the image and a reference brightness.28.The system of claim 27, wherein to determine the brightness of the image, the determination module is further configured to:determine a plurality of target pixels in the image with a brightness value larger than a brightness threshold; anddetermine the brightness of the image based on the brightness values of the plurality of target pixels.29.The system of claim 27, wherein to determining the target exposure parameter of the laser camera by adjusting the exposure parameter of the laser camera based on the brightness of the image and the reference brightness, the adjustment module is further configured to:determine whether the brightness of the image is within a reference brightness range associated with the reference brightness;in response to that the brightness of the image is within the reference brightness range, determine whether the brightness of the image is larger than the reference brightness;in response to that the brightness of the image is larger than the reference brightness, determine the target exposure parameter of the laser camera by decreasing the exposure parameter of the laser camera; andin response to that the brightness of the image is less than the reference brightness, determine the target exposure parameter of the laser camera by increasing the exposure parameter of the laser camera.30.The system of claim 27, wherein the image captured by the laser camera is an image of a glass with a chamfer, and the system further includes a detection module configured to:determine initial endpoints of the chamfer in the image;determine target endpoints of the chamfer by correcting the initial endpoints; anddetermine a size of the chamfer based on the target endpoints of the chamfer.31.The system of claim 30, wherein to determine the initial endpoints of the chamfer in the image, the detection module is further configured to:determine contour pixels of the glass in the image; anddetermine the initial endpoints of the chamfer based on the contour pixels.32.The system of claim 31, wherein to determine contour pixels of the glass in the image, the detection module is further configured to:determine first pixels in the image with a grayscale larger than a grayscale threshold;determine second pixels by performing a Gaussian column convolution on the first pixels;determine third pixels by filtering the second pixels based on neighboring pixels of the second pixels;for each of the third pixels, determine a sub-pixel corresponding to the third pixel based on a centroid algorithm; anddesignate sub-pixels corresponding to the third pixels as the contour pixels of the glass.33.The system of claim 31, wherein to determine the target endpoints of the chamfer by correcting the initial endpoints, the detection module is further configured to:for each initial endpoint,determine a fitting region based on the contour pixels of the glass;determine a fitting line by fitting contour pixels in the fitting region;determine at least one calibration region based on the fitting line;determine at least one reference line corresponding to the at least one calibration region respectively; anddetermine a corresponding target endpoint based on the at least one reference line.34.The system of claim 33, wherein to determine at least one reference line corresponding to the at least one calibration region respectively, the detection module is further configured to:for each of the at least one calibration region,determine a plurality of candidate lines by dividing the calibration region along a predetermined direction;for each of the plurality of candidate lines, determine a score of the candidate line based on at least one of grayscale information or gradient information of the candidate line; anddetermine a corresponding reference line based on scores of the plurality of candidate lines.35.The system of claim 34, wherein to determine the corresponding target endpoint based on the at least one reference line, the detection module is further configured to:for each of the at least one reference line, determine an intersection of the fitting line and the reference line; anddetermine the corresponding target endpoint based on at least one intersection corresponding to the at least one reference line respectively.36.The system of claim 27, wherein the image captured by the laser camera is a three-dimensional (3D) image of a tire, and the detection module is further configured to:obtain a reference image of the tire; anddetermine whether there is a bulge on the tire by comparing the image and the reference image.37.The system of claim 36, wherein the detection module is further configured to:in response to that there is no bulge on the tire, designate the image as a normal image and storing the normal image in a storage device;in response to that a count of stored normal images in the storage device exceeds a count threshold, update the reference image based on the stored normal images.38.The system of claim 36, wherein to determine whether there is a bulge on the tire by comparing the image and the reference image, the detection module is further configured to:divide the image into a plurality of regions, each of the plurality of regions including at least one point cloud each of which includes a plurality of pixels;for each of the plurality of regions,select a point cloud from the at least one point cloud in the region as a target point cloud;determine whether a difference between a height of the target point cloud and a point cloud height of the reference image exceeds a height threshold; andin response to that the difference exceeds the height threshold, determine the region as an abnormal region where a bulge may be located.39.The system of claim 38, wherein the detection module is further configured to:determine whether a total width of multiple directly adjacent abnormal regions is larger than a width threshold; andin response to that the total width of the multiple directly adjacent abnormal regions is larger than the width threshold, determine that there is a bulge on the tire.40.A non-transitory computer readable medium, comprising executable instructions that, when executed by at least one processor, direct the at least one processor to perform a method, the method comprising:obtaining an image captured by a laser camera;determining a brightness of the image and an exposure parameter of the laser camera corresponding to the brightness of the image; anddetermining a target exposure parameter of the laser camera by adjusting the exposure parameter of the laser camera based on the brightness of the image and a reference brightness.
Citation Information
Patent Citations
Three-dimensional data obtaining apparatus and method based on linear laser
CN105571513A
An image brightness adjustment method, apparatus, electronic device, and storage medium
CN113301264B
Chamfer size measurement method and device, electronic equipment and storage medium
CN115060162A
Tire bulge detection method, device, equipment and medium
CN115239774A
Systems and methods for determining exposure parameter of an image capture device
WO2020258808A1