Laser array generation method and device and electronic equipment

By obtaining the small-size initial seed matrix and performing parameter assignment processing to generate the target seed matrix, the problems of large-size laser array generation are solved, and multiple laser arrays of different sizes are efficiently generated.

CN120237524APending Publication Date: 2025-07-01BEIJING ZITIAO NETWORK TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202311847330.X
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-12-28
Publication Date
2025-07-01

AI Technical Summary

Technical Problem

When generating large-size laser arrays, the calculation amount is large, making it difficult to efficiently optimize the non-correlation of the laser array, resulting in low generation efficiency.

Method used

By obtaining the small-size initial seed matrix, performing parameter assignment processing to generate a target seed matrix that meets the preset non-correlation conditions, and combining the production process parameters of the laser array, the target seed matrix is ​​expanded into a laser array.

Benefits of technology

The calculation amount is effectively reduced, the optimization efficiency of the laser array is improved, and multiple laser arrays of different sizes can be generated, improving the generation efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120237524A_ABST
    Figure CN120237524A_ABST
Patent Text Reader

Abstract

Embodiments of the invention disclose a laser array generation method and apparatus, and an electronic device. The method comprises the steps of obtaining an initial seed matrix; performing assignment processing on parameters of the initial seed matrix to generate a target seed matrix; and based on the manufacturing process parameters of the laser array, expanding the target seed matrix into the laser array. According to the mode, the mode of performing non-correlation optimization on the small-size seed matrix is adopted to expand and generate the large-size laser array, and through the mode, the operand can be effectively reduced, and the optimization efficiency of the laser array is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the technical field of lasers, and particularly to a method, an apparatus, and an electronic device for generating a laser array. Background Art

[0002] A depth camera can be used to collect distance information of a target object, overcoming the defect that a traditional image camera can only obtain two-dimensional information of an object, and has a wide application prospect in the fields of human-computer interaction, three-dimensional reconstruction, security monitoring, machine vision, etc.

[0003] In a depth camera, a projector is a core component of the depth camera. Usually, the projector is implemented by a laser. Summary of the Invention

[0004] This disclosure content part is provided to introduce concepts in a brief form, and these concepts will be described in detail in the following detailed implementation part. This disclosure content part is not intended to identify the key features or essential features of the claimed technical solution, nor is it intended to limit the scope of the claimed technical solution.

[0005] Embodiments of the present disclosure provide a method, an apparatus, and an electronic device for generating a laser array, which can effectively reduce the amount of computation and improve the optimization efficiency of the laser array.

[0006] In a first aspect, embodiments of the present disclosure provide a method for generating a laser array, including: obtaining an initial seed matrix; wherein, the size of the initial seed matrix is smaller than the size of the to-be-generated laser array; performing an assignment process on parameters of the initial seed matrix to generate a target seed matrix; wherein, the target seed matrix satisfies a preset non-correlation condition; the assignment process is used to assign the parameters of the initial seed matrix to a first value or a second value; the first value and the second value indicate different pixel luminances; based on the manufacturing process parameters of the laser array, expanding the target seed matrix into the laser array; wherein, the second value in the target seed matrix corresponds to a sub-light source in the laser array.

[0007] Second aspect, embodiments of the present disclosure provide a laser array generation device, including: an acquisition unit configured to acquire an initial seed matrix; wherein, the size of the initial seed matrix is smaller than the size of the to-be-generated laser array; a first generation unit configured to perform an assignment process on the parameters of the initial seed matrix to generate a target seed matrix; wherein, the target seed matrix satisfies a preset non-correlation condition; the assignment process is configured to assign the parameters of the initial seed matrix to a first value or a second value; the first value and the second value indicate different pixel brightnesses; a second generation unit configured to expand the target seed matrix into the laser array based on the manufacturing process parameters of the laser array; wherein, the second value in the target seed matrix corresponds to a sub-light source in the laser array.

[0008] Third aspect, embodiments of the present disclosure provide an electronic device, including: one or more processors; a storage device configured to store one or more programs, which when executed by the one or more processors, cause the one or more processors to implement the laser array generation method as described in the first aspect.

[0009] Fourth aspect, embodiments of the present disclosure provide a computer-readable medium, on which a computer program is stored, and when the program is executed by a processor, the steps of the laser array generation method as described in the first aspect are implemented.

[0010] The laser array generation method, device, and electronic device provided by the embodiments of the present disclosure first acquire an initial seed matrix whose size is smaller than the size of the to-be-generated laser array, then perform an assignment process on the parameters of the initial seed matrix to generate a target seed matrix that satisfies a preset non-correlation condition, and finally, in combination with the manufacturing process parameters of the laser array, expand the target seed matrix into a laser array. The above method uses a method of non-correlation optimization for a small-sized seed matrix to expand and generate a large-sized laser array. Through this method, the computational amount can be effectively reduced, and the optimization efficiency of the laser array can be improved. At the same time, this method can generate multiple laser arrays with different sizes (through different size expansion multiples) based on the optimized same target seed matrix, and further improve the efficiency of generating multiple laser arrays with different sizes. That is, by performing one optimization, multiple laser arrays with different sizes can be obtained. Description of the Drawings

[0011] In combination with the drawings and referring to the following specific embodiments, the above and other features, advantages, and aspects of the embodiments of the present disclosure will become more obvious. Throughout the drawings, the same or similar reference numerals represent the same or similar elements. It should be understood that the drawings are schematic, and the original elements and elements are not necessarily drawn to scale.

[0012] Figure 1 is a flowchart of an embodiment of a method for generating a laser array according to the present disclosure;

[0013] Figure 2 is a schematic diagram of an initial seed matrix in an embodiment of a method for generating a laser array according to the present disclosure;

[0014] Figure 3 is a schematic diagram of a target seed matrix in an embodiment of a method for generating a laser array according to the present disclosure;

[0015] Figure 4 is a schematic diagram of a laser array in an embodiment of a method for generating a laser array according to the present disclosure;

[0016] Figure 5 is a schematic diagram of a laser array in another embodiment of a method for generating a laser array according to the present disclosure;

[0017] Figure 6 is a flowchart of another embodiment of a method for generating a laser array according to the present disclosure;

[0018] Figure 7 is a block diagram of steps in an embodiment of a method for generating a laser array according to the present disclosure;

[0019] Figure 8 is a schematic structural diagram of an embodiment of a device for generating a laser array according to the present disclosure;

[0020] Figure 9 is an exemplary system architecture to which the method for generating a laser array according to an embodiment of the present disclosure can be applied;

[0021] Figure 10 is a schematic diagram of the basic structure of an electronic device provided according to an embodiment of the present disclosure. Detailed Embodiments

[0022] Embodiments of the present disclosure will be described in more detail below with reference to the accompanying drawings. Although some embodiments of the present disclosure are shown in the drawings, it should be understood that the present disclosure can be implemented in various forms and should not be construed as limited to the embodiments set forth herein. Instead, these embodiments are provided to more thoroughly and completely understand the present disclosure. It should be understood that the drawings and embodiments of the present disclosure are only for exemplary purposes and are not used to limit the protection scope of the present disclosure.

[0023] It should be understood that the steps recited in the method embodiments of the present disclosure can be executed in different orders and / or in parallel. In addition, the method embodiments may include additional steps and / or omit the steps shown. The scope of the present disclosure is not limited in this regard.

[0024] As used herein, the term "including" and its variations are open-ended, i.e., "including but not limited to". The term "based on" means "at least partially based on". The term "one embodiment" means "at least one embodiment"; the term "another embodiment" means "at least one additional embodiment"; the term "some embodiments" means "at least some embodiments". The relevant definitions of other terms will be given in the following description.

[0025] It should be noted that the concepts such as "first", "second", etc. mentioned in this disclosure are only used to distinguish different devices, modules or units, and are not used to limit the order or interdependence of the functions performed by these devices, modules or units.

[0026] It should be noted that the modifications of "one" and "a plurality" mentioned in this disclosure are illustrative rather than restrictive. Those skilled in the art should understand that unless otherwise clearly specified in the context, it should be understood as "one or more".

[0027] The names of the messages or information exchanged between multiple devices in the embodiments of this disclosure are only for illustrative purposes and are not used to limit the scope of these messages or information.

[0028] Please refer to Figure 1 , which shows the flow of an embodiment of the method for generating a laser array according to this disclosure. The method for generating a laser array can be applied to an electronic device. As Figure 1 shown in the method for generating a laser array, it includes the following steps:

[0029] Step 101, obtain an initial seed matrix.

[0030] Among them, the size of the initial seed matrix is smaller than the size of the laser array to be generated.

[0031] In the embodiments of this application, the required laser array can be expanded based on the initial seed matrix. That is, by optimizing the small-sized initial seed matrix, a large-sized laser array can be generated based on the small-sized initial seed matrix to reduce the computational amount when laying out and optimizing the large-sized laser array.

[0032] Here, the initial seed matrix can be pre-set or constructed in real time according to the size of the laser array to be generated.

[0033] Exemplarily, the width of the initial seed matrix can be M pixels, and the height can be N pixels. Both M and N are natural numbers greater than 2. That is, the size of the initial seed matrix can be M×N. As for the specific values of M and N, they can be preset. For example, multiple initial seed matrices of different sizes can be preset, such as an initial seed matrix of 45×45, an initial seed matrix of 36×36, and an initial seed matrix of 81×81. Subsequently, a smaller-sized initial seed matrix can be adaptively selected according to the size of the laser array to be generated. Of course, it can also be directly constructing an initial seed matrix smaller than the size of the laser array to be generated in real time according to the size of the laser array to be generated.

[0034] Exemplarily, if the size of the laser array to be generated is 360×360, then a 45×45 initial seed matrix can be selected or constructed based on the size of the laser array to be generated.

[0035] Step 102: Assign values to the parameters of the initial seed matrix to generate a target seed matrix.

[0036] Among them, the target seed matrix meets the preset non-correlation condition.

[0037] That is, after obtaining the initial seed matrix, it is necessary to optimize the initial seed matrix so that it meets the preset non-correlation condition. It should be noted that as the arrangement of the sub-light sources in the laser array of the depth camera needs to have non-correlation, so that the speckle spots emitted by the laser array have non-correlated characteristics. Here, non-correlation can be understood as random and irregular.

[0038] Therefore, in this step, the parameters of the small-sized initial seed matrix are optimized to generate a target seed matrix that meets the preset non-correlation condition, so that the laser array subsequently expanded based on the target seed matrix can also meet non-correlation.

[0039] Here, the optimization method adopts an assignment processing method. The assignment processing can be used to assign the parameters of the initial seed matrix to the first value or the second value; the first value and the second value indicate different pixel brightnesses.

[0040] For example, for a binary image, the first value can be pixel brightness 0, and the second value can be pixel brightness 1. The pixel brightness represented by 0 is black; the pixel brightness represented by 1 is white. Another example is that the first value can be pixel brightness 0, and the second value can be pixel brightness 255. Of course, in some embodiments, the first value can also be pixel brightness 1, and the second value can also be pixel brightness 0. In this regard, the present application is not limited.

[0041] Exemplarily, please refer to Figures 2 - 3 , Figure 2It is an initial seed matrix with a size of 45×45. Among them, the parameters in the initial seed matrix can all be the first numerical value 0, that is, the brightness of each pixel in the initial seed matrix is black. Figure 3 It is the target seed matrix generated after assigning values to the parameters of the initial seed matrix; the size of this target matrix is also 45×45. The parameters in the target matrix include the first numerical value 0 and the second numerical value 1 after the assignment process. Among them, the pixel brightness corresponding to the second numerical value 1 is white. From Figure 3 It can be seen that the second numerical value 1 after the assignment process has non-correlation, that is, it has irregularity and randomness.

[0042] It should be noted that the above preset non-correlation condition can be set according to requirements. For example, the preset non-correlation condition can refer to the non-correlation of the arrangement of the second numerical values in the seed matrix, and this non-correlation can be characterized by calculating indicators such as Hamming distance and non-correlation coefficient.

[0043] Step 103, based on the manufacturing process parameters of the laser array, expand the target seed matrix into a laser array.

[0044] Among them, the second numerical value in the target seed matrix corresponds to the sub-light sources in the laser array. That is, when expanding the target seed matrix into a laser array, sub-light sources are set in the expanded area corresponding to the second numerical value, while no sub-light sources are set in the remaining areas corresponding to the first numerical value.

[0045] That is, finally, based on the manufacturing process parameters of the required designed laser array, the target seed matrix is expanded to generate the required laser array.

[0046] As an implementation method, the manufacturing process parameters of the laser array can include the size of the laser array. For example, the size of this laser array is 360×360. And the size of the target seed matrix is 45×45, then the target seed matrix can be enlarged by 8 times, and then a laser array with a size of 360×360 and non-correlation can be obtained. As Figure 4 shown, Figure 4 shows a laser array with a size of 360×360, and this laser array can be generated by enlarging the 45×45 target seed matrix shown Figure 3 by 8 times. Figure 4 Sub-light sources are set in the area corresponding to each origin.

[0047] It should be noted that since the target seed matrix meets the preset non-correlation condition, the laser array obtained by equally scaling up the target seed matrix also meets the preset non-correlation condition.

[0048] In the embodiments of the present application, the laser array may specifically be a vertical cavity surface-emitting laser (VCSEL) array.

[0049] In the related art, for the design of the laser array in a depth camera, the design is usually directly based on the size of the laser array itself. However, the large array size increases the difficulty of arranging uncorrelated sub-light sources, posing higher requirements for the computing power of the computing device.

[0050] The embodiments of the present application provide a method for generating a laser array. First, an initial seed matrix with a size smaller than the size of the to-be-generated laser array is obtained. Then, the parameters of the initial seed matrix are assigned to generate a target seed matrix that meets the preset non-correlation condition. Finally, in combination with the manufacturing process parameters of the laser array, the target seed matrix is expanded into a laser array. The above method uses the method of optimizing the non-correlation of the small-sized seed matrix to expand and generate a large-sized laser array. Through this method, the amount of computation can be effectively reduced, and the optimization efficiency of the laser array can be improved. At the same time, this method can generate multiple laser arrays with different sizes (through different size expansion multiples) based on the optimized same target seed matrix, and further improve the efficiency of generating multiple laser arrays with different sizes. That is, by performing one optimization, multiple laser arrays with different sizes can be obtained.

[0051] In one embodiment, the preset non-correlation condition may specifically include that any two sub-windows of the first size in the target seed matrix do not overlap, and any two second values in the target seed matrix are not adjacent.

[0052] Among them, the first size is smaller than the size of the target seed matrix. That is, the first size can be m×n; where the range of m is (1, M), and the range of n is (1, N). M is the width of the initial seed matrix, and N is the width of the initial seed matrix. The initial seed matrix has the same size as the target seed matrix.

[0053] Exemplarily, the target seed matrix may be Figure 3 a matrix with a size of 45×45 as shown, then the first size can be 9×9. Correspondingly, any two sub-windows with a size of 9×9 in the target seed matrix do not overlap. Here, non-overlap can be understood as being different, that is, the layout in any two sub-windows with a size of 9×9 selected from the target seed matrix is different. In other words, there are differences in the numerical arrangements in any two sub-windows with a size of 9×9 selected from the target seed matrix.

[0054] Here, any two second values in the target seed matrix are not adjacent. Continuing with Figure 3 as an example,Figure 3 In it, the second value is 1, which corresponds to white pixel points. From Figure 3 As can be seen, any two white pixel points are not adjacent.

[0055] It should be noted that by setting the above preset non - correlation conditions, the target seed matrix can have higher non - correlation, and further, the non - correlation of the subsequent laser array can be improved.

[0056] Optionally, step 102 assigns values to the parameters of the initial seed matrix to generate a target seed matrix, which may specifically include: performing a randomized assignment process on the parameters of the initial seed matrix to generate a first seed matrix; performing a secondary assignment process on the first seed matrix to generate a target seed matrix.

[0057] Among them, the assignment process includes a randomized assignment process and a secondary assignment process. That is, through two assignment processes, a target seed matrix is generated.

[0058] Specifically, the initial values of all parameters in the initial seed matrix can all be the first value 0. Then, each parameter in the initial seed matrix is traversed, and by means of randomized assignment, the parameter is assigned the first value 0 or the second value 1. After the randomized assignment process to obtain the first seed matrix, a secondary assignment process is performed on the first seed matrix. During the assignment process, it is judged whether the updated first seed matrix meets the preset non - correlation conditions. When it is determined that the preset non - correlation conditions are met, the first seed matrix is output, and this first seed matrix is the target seed matrix.

[0059] The above - mentioned way of randomized assignment can be, but is not limited to, a pseudo - random sequence folding algorithm, a shift algorithm based on De Bruijn sequence, an exhaustive method, etc. This application does not make a limitation.

[0060] In another embodiment, step 102 assigns values to the parameters of the initial seed matrix to generate a target seed matrix, and may also specifically include the following steps:

[0061] S1: Perform a randomized assignment process on the parameters of the initial seed matrix to generate a first seed matrix.

[0062] S2: Perform a secondary assignment on the first seed matrix to generate a second seed matrix.

[0063] Among them, any two sub - windows of the first size in the second seed matrix do not repeat, and any two second values in the target seed matrix are not adjacent; the first size is smaller than the size of the target seed matrix; the assignment process includes a randomized assignment process and a secondary assignment process.

[0064] The specific processes of steps S1 and S2 can refer to the descriptions in the foregoing embodiments and will not be elaborated here.

[0065] S3: Calculate the non-correlation of the second sub-matrix.

[0066] After generating the second sub-matrix through the above-mentioned secondary assignment process, calculate the non-correlation of the second sub-matrix.

[0067] As an implementation manner, the calculation method of the above non-correlation may specifically include: calculating the similarity between any two sub-windows of the first size in the second sub-matrix, and then determining the non-correlation of the second sub-matrix based on the average value of the similarities.

[0068] Here, the average value of the similarities refers to the average value of all calculated similarities between two sub-windows of the first size. That is, in a traversal manner, the similarity between each sub-window of the first size in the second sub-matrix and other sub-windows of the first size can be calculated in turn, and then the sum of all similarities is taken and averaged to obtain the non-correlation of the second sub-matrix.

[0069] Here, the similarity between two sub-windows of the first size can be calculated by calculating indexes such as the Hamming distance and non-correlation coefficient between the two sub-windows of the first size, which is not limited here.

[0070] After calculating the non-correlation of the second sub-matrix once, repeat steps S1 - S3 until the first termination condition is reached, and then determine the target seed matrix; where the target seed matrix is the second sub-matrix in the second sub-matrix that meets the first preset non-correlation condition.

[0071] Here, the first termination condition can be the number of repetitions. For example, the first termination condition is specifically to repeat 10 times. When it is judged that the non-correlations of 10 second sub-matrices have been calculated, the target seed matrix is determined. The specific numerical value of the number of repetitions can be set according to the implementation requirements. Here, the first termination condition can also be that the non-correlation value reaches the first preset value. For example, when determining the non-correlation of the second sub-matrix by calculating the Hamming distance, the first preset value can be set to 7. When the non-correlation of the second sub-matrix calculated reaches 7, it is determined that the first termination condition is met, and the target seed matrix is determined.

[0072] Here, the target seed matrix is the second sub-matrix in the second sub-matrix that meets the first preset non-correlation condition.

[0073] In one embodiment, the first preset non-correlation condition may be the second sub-matrix with the highest correlation. For example, taking the aforementioned first termination condition of repeating 10 times as an example, the non-correlations of 10 second sub-matrices will be obtained. At this time, the second sub-matrix with the highest correlation among these 10 second sub-matrices can be determined as the target seed matrix. Of course, the first preset non-correlation condition may also be the second sub-matrix with the second highest correlation, which is not limited herein.

[0074] In one embodiment, the first preset non-correlation condition may also be the second sub-matrix that satisfies the first termination condition. For example, in the aforementioned example, the first termination condition is that the non-correlation value reaches the first preset value. When determining the non-correlation of the second sub-matrix by calculating the Hamming distance, the first preset value can be set to 7. When the calculated non-correlation of the second sub-matrix reaches 7, it is determined that the first termination condition is satisfied, and the second sub-matrix is output, and this second sub-matrix is determined as the target seed matrix.

[0075] In addition, it should be noted that the algorithm complexity of non-correlation is related to the size of the sub-window, and the calculation time increases significantly with the square of the size. Therefore, in the specific operation process, the size of the sub-window can be reasonably set according to the calculation complexity.

[0076] In yet another embodiment, the above step 102 performs an assignment process on the parameters of the initial seed matrix to generate a target seed matrix, and may specifically include: performing a randomized assignment process on the parameters of the initial seed matrix to generate a target seed matrix.

[0077] That is, in the process of performing a randomized assignment process on the parameters of the initial seed matrix, it can be determined whether the seed matrix after each randomized assignment satisfies the preset non-correlation condition until a seed matrix that satisfies the preset non-correlation condition is determined, and then this seed matrix is output. This seed matrix is the target seed matrix.

[0078] Optionally, when the preset non-correlation condition is that any two sub-windows of the first size do not repeat, when it is determined through the above method that the seed matrix after the current randomized assignment does not satisfy the preset non-correlation condition, two identical sub-windows that do not satisfy the preset non-correlation condition can be first determined, and then only further randomized assignment is performed on these two identical sub-windows, so as to improve the calculation efficiency.

[0079] Optionally, the manufacturing process parameters of the laser array may also specifically include the minimum point spacing between adjacent sub-light sources and the set size of the sub-light sources.

[0080] Correspondingly, the above step 103 expands the target seed matrix into a laser array based on the manufacturing process parameters of the laser array, and may specifically include: determining a matrix magnification factor based on the minimum point spacing between adjacent sub-light sources and the minimum interval of the second value in the target seed matrix; and expanding the target seed matrix into a laser array based on the matrix magnification factor.

[0081] Exemplarily, when generating the target seed matrix, the minimum interval Min_P of the second value in the target seed matrix is statistically calculated. Figure 3 For example, the minimum interval of the second value in the target seed matrix is Min_P = 3. That is, Figure 3 the minimum interval between the white pixel points in is 3.

[0082] Exemplarily, the minimum point spacing between adjacent sub-light sources Pitch = 24, and the matrix magnification factor G satisfies G ≥ Pitch / Min_P, so as to ensure that the formed laser array after expansion meets the requirements of the spacing of the light-emitting points. Then, the matrix magnification factor G can be equal to 8.

[0083] Finally, the target seed matrix can be expanded 8 times based on the magnification matrix magnification factor G = 8 to obtain a laser array.

[0084] Among them, the sub-light sources in the laser array are centered on the coordinates after expansion of the second value in the target seed matrix, and the size of the sub-light sources in the laser array is the set size of the sub-light sources.

[0085] Exemplarily, when generating the target seed matrix, the coordinates (xi, yi) of each second value are statistically calculated, where the range of xi is [1, M], the range of yi is [1, N], M is the width of the initial seed matrix, and N is the width of the initial seed matrix. The initial seed matrix has the same size as the target seed matrix. Then, the coordinates of the center of each sub-light source in the laser array are (Xi, Yi); where, (Xi, Yi) = G × (xi, yi). Then, with (Xi, Yi) as the center, the position of the sub-light source is determined by the set size of the sub-light source.

[0086] Optionally, the manufacturing process parameters of the laser array may further include the shape of the sub-light source (such as circular, hexagonal, patterned structure, etc.). Exemplarily, when the shape of the sub-light source is circular, a circular area is drawn with (Xi, Yi) as the center and the set size of the sub-light source as the diameter, and this circular area is the position of each sub-light source.

[0087] Optionally, the manufacturing process parameters of the laser array may further include the sub-light source density, etc. Subsequently, the laser array after expansion can also be adjusted in terms of the sub-light source density.

[0088] It should be noted that the above size of the sub-light source may be the light-emitting aperture size of the sub-light source.

[0089] In one embodiment, during the process of magnifying the target seed matrix into a laser array based on the matrix magnification factor, the specific positions of the sub-light sources can be adjusted, that is, the centers of the sub-light sources are perturbed, so as to output a laser array that meets the conditions.

[0090] Specifically, as an implementation manner of perturbation, the process of magnifying the target seed matrix into a laser array based on the matrix magnification factor may specifically include the following steps:

[0091] S11: Magnify the target seed matrix into a first laser array based on the matrix magnification factor.

[0092] Among them, the sub-light sources in the first laser array are centered on the coordinates expanded by the second value in the target seed matrix, and the size of the sub-light sources in the first laser array is the set size of the sub-light sources.

[0093] It should be noted that this step can refer to the description in the foregoing embodiment and will not be elaborated here.

[0094] S12: Determine k sub-light sources from the sub-light sources in the first laser array, and randomly vary the centers of the k sub-light sources within their own size ranges, and re-determine the positions of the k sub-light sources with the changed centers.

[0095] Here, k sub-light sources can be randomly determined from the sub-light sources in the first laser array. Among them, k is a positive integer, and k ∈ [1, Ntotal]; Ntotal is the number of the second values in the target seed matrix, that is, when generating the target seed matrix, the number Ntotal of the second values therein can be counted.

[0096] Then, the centers of the k sub-light sources are randomly varied once within their own size ranges. It should be noted that each pixel point in the target seed matrix corresponds to a region in the first laser array during the magnification process. Therefore, any pixel point in this region can be determined as the center of the sub-light source. The above-mentioned own size range is the projection area of the pixel points corresponding to the second value in the target seed matrix. The above-mentioned own size range may specifically include [Xi - G / 2, Xi + G / 2] and [Yi - G / 2, Yi + G / 2], that is, the perturbation magnitudes △Xi of the centers of the k sub-light sources ∈ [-G / 2, G / 2], and △Yi ∈ [-G / 2, G / 2].

[0097] After the centers of the k sub-light sources are perturbed, re-determine the positions of the k sub-light sources with the changed centers.

[0098] S13: Calculate the incoherence of the changed first laser array.

[0099] After the central perturbation of k sub-light sources in the first laser array, calculate the incoherence of the perturbed first laser array.

[0100] As an implementation manner, the calculation method of the above incoherence may specifically include: calculating the similarity between any two sub-windows of the second size in the first laser array; determining the incoherence of the first laser array based on the average value of the similarities.

[0101] Wherein, the second size is equal to the first size multiplied by the matrix magnification factor. That is, the second size is G×(m, n).

[0102] Here, the average value of the similarities refers to the average value of the similarities between all calculated sub-windows of the second size. That is, in a traversal manner, the similarity between each sub-window of the second size in the first laser array and other sub-windows of the second size can be calculated in turn, and then the sum of all similarities is obtained and averaged to obtain the incoherence of the first laser array.

[0103] Here, the similarity between two sub-windows of the second size can be determined by calculating indexes such as the Hamming distance and incoherence coefficient between the two sub-windows of the second size, which is not limited here.

[0104] After one perturbation, after calculating the incoherence of the changed first laser array, repeat steps S12 - S13 until the second termination condition is reached, and then determine the laser array; wherein, the laser array is the first laser array in the changed first laser array that meets the second preset incoherence condition.

[0105] Here, the second termination condition can be the number of repetitions. For example, the second termination condition is specifically 20 repetitions. When it is judged that the incoherence of 20 first laser arrays has been calculated, the laser array is determined. The specific numerical value of the number of repetitions can be set according to the implementation requirements. Here, the second termination condition can also be that the incoherence value reaches the second preset value. For example, when determining the incoherence of the first laser array by calculating the Hamming distance, the second preset value can be set to 30. When the incoherence of the second sub-matrix is calculated to reach 30, it is determined that the second termination condition is met, and the laser array is determined.

[0106] Here, the laser array is the first laser array in the first laser array that meets the second preset incoherence condition.

[0107] In one embodiment, the second preset non-correlation condition may be the first laser array with the highest correlation. For example, taking the aforementioned first termination condition of repeating 20 times as an example, the non-correlations of 20 first laser arrays will be obtained. At this time, the first laser array with the highest correlation among these 20 first laser arrays can be determined as the laser array. Of course, the second preset non-correlation condition may also be the first laser array with the second highest or third highest correlation, which is not limited here.

[0108] In one embodiment, the second preset non-correlation condition may also be the first laser array that satisfies the second termination condition. For example, in the aforementioned example, the second termination condition is that the non-correlation value reaches the second preset value. When determining the non-correlation of the first laser array by calculating the Hamming distance, the second preset value can be set to 30. When the non-correlation of the first laser array is calculated to reach 30, it is determined that the second termination condition is satisfied, and the first laser array is output, and this first laser array is determined as the laser array.

[0109] Optionally, before calculating the non-correlation of the changed first laser array in step S13 above, the method further includes: determining that the changed first laser array satisfies the minimum point spacing between adjacent sub-light sources.

[0110] That is, after disturbing the center of the sub-light source, it is necessary to determine again whether the changed first laser array satisfies the minimum point spacing between adjacent sub-light sources. If it is satisfied, it is determined to accept the disturbance result of the first laser array, and the non-correlation of the changed first laser array is calculated. If it is not satisfied, the disturbance is performed again, that is, steps S11 - S12 are re-executed.

[0111] Specifically, as another embodiment of the disturbance, the process of magnifying the target seed matrix into a laser array based on the matrix magnification factor may specifically include the following steps:

[0112] S111: Magnify the target seed matrix into a first laser array based on the matrix magnification factor.

[0113] Among them, the sub-light sources in the first laser array are centered on the coordinates expanded by the second value in the target seed matrix, and the size of the sub-light sources in the first laser array is the set size of the sub-light sources.

[0114] It should be noted that this step can refer to the description in the foregoing embodiment and will not be elaborated here.

[0115] S112: Calculate the non-correlation of the first laser array.

[0116] It should be noted that this step can refer to the process of calculating non-correlation in step S13 of the foregoing embodiment and will not be elaborated here either.

[0117] S113: Determine k sub-light sources from the sub-light sources in the first laser array, and randomly vary the centers of the k sub-light sources within their respective sizes, and re-determine the positions of the k sub-light sources with the varied centers; k is a positive integer.

[0118] It should be noted that this step can refer to the description of step S12 in the foregoing embodiment, and will not be elaborated here.

[0119] S114: Calculate the incoherence of the varied first laser array.

[0120] It should be noted that this step can refer to the process of calculating the incoherence in step S13 in the foregoing embodiment, and will not be elaborated here.

[0121] S115: Determine whether the difference between the incoherence of the varied first laser array and the incoherence of the previous first laser array is greater than a preset value.

[0122] That is, a judgment is made here to determine whether the difference between the incoherence of the currently varied first laser array and the incoherence of the previous first laser array is greater than a preset value.

[0123] It should be noted that when steps S113 - S115 are only executed once, what is judged here is the difference between the incoherence of the varied first laser array and the incoherence of the first laser array calculated in step S112, that is, the incoherence of the first laser array calculated in step S112 is the incoherence of the first laser array obtained by the first calculation. When the number of executions of steps S113 - S115 is greater than one, it is judged whether the difference between the incoherence of the varied first laser array and the incoherence of the first laser array calculated in the previous time is greater than the preset value.

[0124] The above preset value can be 0, 0.5, 1, etc., and the specific value of this preset value is not limited here.

[0125] S116: In response to the difference between the incoherence of the varied first laser array and the incoherence of the previous first laser array being greater than the preset value, accept the varied first laser array.

[0126] Here, when the difference between the incoherence of the varied first laser array and the incoherence of the previous first laser array is greater than the preset value, it indicates that the incoherence of the perturbed first laser array is higher, and at this time, the varied first laser array can be received.

[0127] Then, continue to execute steps S113 - S115 based on the changed first laser array until the third termination condition is reached, and then determine the laser array.

[0128] Here, the third termination condition can be the number of repetitions. For example, the third termination condition is specifically 20 repetitions. When it is determined that the non - correlation of 20 first laser arrays has been calculated, the laser array is determined. The specific numerical value of the number of repetitions can be set according to the implementation requirements. Here, the third termination condition can also be that the non - correlation value reaches a third preset value. For example, when determining the non - correlation of the first laser array by calculating the Hamming distance, the third preset value can be set to 35. When the non - correlation of the second sub - matrix is calculated to reach 35, it is determined that the third termination condition is met, and the laser array is determined.

[0129] S117: In response to the difference between the non - correlation of the changed first laser array and the non - correlation of the previous first laser array being no greater than a preset value, determine whether to accept the changed first laser array based on a preset probability rule.

[0130] Here, when the difference between the non - correlation of the changed first laser array and the non - correlation of the previous first laser array is no greater than the preset value, it indicates that the non - correlation of the perturbed first laser array has not been optimized. At this time, it can be determined whether to accept the changed first laser array based on the preset probability rule.

[0131] After determining to accept the changed first laser array, continue to execute steps S113 - S115 based on the changed first laser array until the third termination condition is reached, and then determine the laser array.

[0132] After determining not to accept the changed first laser array, continue to execute steps S113 - S115 based on the previous first laser array until the third termination condition is reached, and then determine the laser array.

[0133] Among them, the preset probability rule can adopt the Metropolis judgment basis in the simulated annealing algorithm. The Metropolis judgment basis includes:

[0134]

[0135] r = rand(0, 1)

[0136] In the above formula, T is the temperature coefficient in the simulated annealing algorithm, which is positive and its value is defined by the user. Its value can change with the iteration or remain unchanged; r is a random number in the interval (0, 1), and its value is generated in each iteration; p = 1 indicates accepting the perturbation, and p = 0 indicates not accepting the perturbation. Δf represents the difference between the incoherence of the changed first laser array and the incoherence of the previous first laser array; here, Δf is not greater than a preset value.

[0137] That is to say, here the simulated annealing algorithm can be used to determine whether the result after each perturbation is acceptable. If it is acceptable, the state after the perturbation is used as the starting point for the next change. If it is not acceptable, it returns to the state before the perturbation. Through this method, to a certain extent, it can avoid falling into the local optimal solution and increase the possibility of finding the global optimal solution.

[0138] In other embodiments, the preset probability rule can also adopt any random rule. For example, a random number generation algorithm is set, and the random numbers include 0 and 1. When the randomly generated number is 1, it represents accepting the changed first laser array; if the randomly generated number is 0, it represents not accepting the changed first laser array.

[0139] In addition, it should be noted that when the third termination condition is not met, the temperature (T) can also be slowly decreased or the iteration count can be continued to be recharged, which is not limited here.

[0140] As Figure 5 shown, after the perturbation, Figure 5 the incoherence of the laser array shown is further improved compared to Figure 4 that obtained.

[0141] Next, the above perturbation process will be further described with Figure 6 an example. First, k sub-light sources are determined from the sub-light sources in the first laser array. Then, the centers of the k sub-light sources are perturbed, and the positions of the k sub-light sources are re-determined with the changed centers, and the Hamming distance f1 of the first laser array before the change and the Hamming distance f2 of the first laser array after the perturbation are calculated. Then, calculate the difference between the Hamming distance f1 of the first laser array before the change and the Hamming distance f2 of the first laser array after the perturbation, that is, calculate Δf; Δf = f2 - f1. When Δf ≥ 0, accept the changed first laser array; and determine whether the third termination condition is reached. If it is reached, output the result. If the third termination condition is not reached, the above process can be continued to be repeated.

[0142] When Δf < 0, it is determined whether to accept the result after perturbation based on the Metropolis judgment criterion. If accepted, it is determined whether the third termination condition is reached. If so, the result is output. If the third termination condition is not reached, the above process can be repeated. If not accepted, the above process is continued according to the previous perturbation result.

[0143] In addition, when it is determined that the third termination condition is not satisfied, the temperature (T) can be slowly decreased or the number of recharge iterations can be continued.

[0144] Optionally, before calculating the non-correlation of the changed first laser array, the method further includes: determining that the changed first laser array satisfies the minimum point spacing of adjacent sub-light sources.

[0145] This process can refer to the description in the foregoing embodiments and is not limited herein.

[0146] Optionally, the value of k decreases based on a preset rule during the iteration process.

[0147] Among them, the preset rule can be to reduce by half each time during the iteration process. For example, if the initial value of k is 100, then when iterating to the 30th time, the value of k is 50, and when iterating to the 60th time, the value of k is 25, and so on. The present application does not limit which rule is used to reduce the value of k.

[0148] It can be seen that in the above process, more sub-light sources are selected in the initial stage of optimization, which can accelerate the optimization progress and approach the optimal solution faster. In the later stage of optimization, only a few sub-light sources are perturbed, which can avoid obvious deviation of the evaluation index.

[0149] The following combines Figure 7 A specific example is used to illustrate the laser array generation method provided by the embodiments of the present application.

[0150] First, the manufacturing process parameters of the laser array can be obtained. The specific process parameters include but are not limited to: the oxidation aperture size OA of each sub-light source, the minimum point spacing Pitch of adjacent sub-light sources, the shape of the sub-light source (such as circular, hexagonal, patterned structure, etc.), the sub-light source density, etc.

[0151] Then, an initial seed matrix is obtained. Here, a seed matrix can be defined as the initial seed matrix. The size of the seed matrix can be much smaller than the size of the laser array to be generated. On the one hand, this can greatly reduce the calculation amount in the randomized dot matrix design, enabling the seed matrix to more efficiently achieve non-correlated arrangement; on the other hand, the seed matrix can be batch-optimized, and the initial seed matrix with the highest non-correlation is selected as the initial solution for global optimization.

[0152] A possible implementation of this step includes:

[0153] 1. Define a seed matrix that is M pixels wide and N pixels high, where M and N are natural numbers greater than 2, and M and N can be equal or unequal.

[0154] 2. The elements in the seed matrix consist of two possible states, 0 and 1. 0 represents a dark pixel (corresponding pixel brightness is black), and 1 represents a bright pixel (corresponding pixel brightness is white). In the initial state, the values of all elements are set to 0.

[0155] 3. Define the unique sub-window size of the seed matrix, with width m and height n, where m ∈ (1, M) and n ∈ (1, N).

[0156] For example, the size of the initial seed matrix is Figure 2 The size shown in the figure is a 45×45 seed matrix. The size of the sub-window can be 9×9.

[0157] Then, optimize the initial seed matrix to obtain the target seed matrix. The specific process can include:

[0158] 1. Randomly assign values to each parameter in the initial seed matrix, and the parameter values include 0 and 1.

[0159] 2. Reassign values to each parameter so that any two sub-windows with a size of m×n in the initial seed matrix do not repeat, and any two 1 elements are not adjacent, where m ∈ (1, M) and n ∈ (1, N).

[0160] 3. Statistically analyze the coordinates (xi, yi) of each number 1, where xi ∈ [1, M] and yi ∈ [1, N], and the number of number 1s is Ntotal;

[0161] 4. Statistically analyze the minimum interval Min_P in the initial seed matrix;

[0162] 5. Calculate the non-correlation of the initial seed matrix. The non-correlation can be characterized by indicators such as the Hamming distance and non-correlation coefficient between two sub-windows in the matrix.

[0163] Repeat steps 1 - 5 multiple times, and select the seed matrix with the largest Hamming distance, that is, the seed matrix with the highest non-correlation as the target seed matrix.

[0164] Next, expand the target seed matrix to generate the first laser array. The specific process (taking the shape of the sub-light source set as a circle as an example) can include:

[0165] 1. Determine the matrix magnification factor G, where G satisfies G ≥ Pitch / Min_P to ensure that the expanded first laser array meets the requirements of the spacing between the starting light points.

[0166] 2. Calculate the central coordinates (Xi, Yi) of each sub-light source in the first laser array as (Xi, Yi) = G×(xi, yi). At this time, the unique sub-window size of the first laser array is G×(m, n).

[0167] 3. Draw a circle with a diameter of OA centered at the central coordinates (Xi, Yi) of the sub-light source, which is the light-emitting aperture of each sub-light source.

[0168] Exemplarily, according to Pitch = 24um and Min_P = 3, select the magnification factor G = 8, then the Figure 3 shown target seed matrix can be expanded into a laser light source array as shown in Figure 4 .

[0169] Finally, perturb the first laser array, and then generate the required laser array. That is, by perturbing and optimizing the coordinates of each sub-light source in the first laser array, the flexibility of the dot matrix arrangement can be further expanded, and the non-correlation can be improved. A possible implementation of this process includes:

[0170] 1. Randomly select k sub-light sources from all sub-light sources, where k ∈ [1, Ntotal], perturb their central coordinates, and correspondingly adjust the light-emitting hole positions of each sub-light source.

[0171] 2. Traverse any two sub-windows of size G×(m, n) within the range of the first laser array, and count the Hamming distance between any two sub-windows.

[0172] 3. Repeat steps 1-2 to obtain a larger Hamming distance value and enhance the non-correlation degree of the first laser array.

[0173] In the above process, the simulated annealing algorithm can be used to determine whether the result after each perturbation is acceptable. If it is acceptable, use the perturbed state as the starting point for the next change. If it is not acceptable, roll back to the state before the perturbation. Through this method, it is possible to avoid falling into the local optimal solution to a certain extent and increase the possibility of finding the global optimal solution (the specific process can refer to Figure 6 ).

[0174] In summary, the effects of the laser array generation method provided by the embodiments of the present application include: it can batch optimize small-size seed matrices, accelerate the initial optimization speed of the matrix, and generate a better global optimization initial solution; and it can map a complete laser array from the seed matrix based on the laser array manufacturing process parameters, and generate laser arrays of different sizes by setting different mapping coefficients. In addition, through global optimization of the laser array and coordinate perturbation of multiple sub-light sources at the same time, the optimization process is accelerated, approaching the optimal solution, and further strengthening the non-correlation of the laser array.

[0175] Further reference is made to Figure 8 , as an implementation of the methods shown in the above figures, the present disclosure provides an embodiment of a laser array generation device, which corresponds to the embodiment of the laser array generation method shown in Figure 1 and can be specifically applied to various electronic devices.

[0176] As shown in Figure 8 , the laser array generation device of this embodiment includes: an acquisition unit 801, configured to acquire an initial seed matrix; wherein, the size of the initial seed matrix is smaller than the size of the to-be-generated laser array; a first generation unit 802, configured to perform an assignment process on the parameters of the initial seed matrix to generate a target seed matrix; wherein, the target seed matrix satisfies a preset non-correlation condition; the assignment process is used to assign the parameters of the initial seed matrix to a first value or a second value; the first value and the second value indicate different pixel luminances; a second generation unit 803, configured to expand the target seed matrix into the laser array based on the manufacturing process parameters of the laser array; wherein, the second value in the target seed matrix corresponds to a sub-light source in the laser array.

[0177] In some embodiments, the preset non-correlation condition includes that any two sub-windows of the first size in the target seed matrix do not repeat, and any two second values in the target seed matrix are not adjacent; the first size is smaller than the size of the target seed matrix.

[0178] In some embodiments, the first generation unit 802 is further specifically configured to perform a randomized assignment process on the parameters of the initial seed matrix to generate a first seed matrix; perform a secondary assignment process on the first seed matrix to generate the target seed matrix; the assignment process includes the randomized assignment process and the secondary assignment process.

[0179] In some embodiments, the first generation unit 802 is further specifically configured to: S1: perform a randomized assignment process on the parameters of the initial seed matrix to generate a first seed matrix; S2: perform a secondary assignment on the first seed matrix to generate a second seed matrix; wherein, any two sub-windows of the first size in the second seed matrix do not repeat, and any two second values in the target seed matrix are not adjacent; the first size is smaller than the size of the target seed matrix; the assignment process includes the randomized assignment process and the secondary assignment process; S3: calculate the non-correlation of the second seed matrix; repeat steps S1 - S3 until a first termination condition is reached, and then determine the target seed matrix; wherein, the target seed matrix is the second seed matrix that satisfies the first preset non-correlation condition in the second seed matrix.

[0180] In some embodiments, the first generating unit 802 is further specifically configured to calculate the non-correlation of the second seed matrix, including: calculating the similarity between any two sub-windows of the first size in the second seed matrix; determining the non-correlation of the second seed matrix based on the average value of the similarities.

[0181] In some embodiments, the manufacturing process parameters of the laser array include the minimum point spacing between adjacent sub-light sources and the set size of the sub-light sources; the second generating unit 803 is further specifically configured to determine a matrix magnification factor based on the minimum point spacing between adjacent sub-light sources and the minimum interval of the second value in the target seed matrix; magnify the target seed matrix into the laser array based on the matrix magnification factor; wherein, the sub-light sources in the laser array are centered at the coordinates expanded by the second value in the target seed matrix, and the size of the sub-light sources in the laser array is the set size of the sub-light sources.

[0182] In some embodiments, the second generating unit 803 is further specifically configured to: S11: Magnify the target seed matrix into a first laser array based on the matrix magnification factor; wherein, the sub-light sources in the first laser array are centered at the coordinates expanded by the second value in the target seed matrix, and the size of the sub-light sources in the first laser array is the set size of the sub-light sources; S12: Determine k sub-light sources from the sub-light sources in the first laser array, and randomly vary the centers of the k sub-light sources within their own sizes, and re-determine the positions of the k sub-light sources with the changed centers; k is a positive integer; S13: Calculate the non-correlation of the changed first laser array; repeat steps S12 - S13 until a second termination condition is reached, and then determine the laser array; wherein, the laser array is the first laser array that satisfies the second preset non-correlation condition in the changed first laser array.

[0183] In some embodiments, the second generating unit 803 is further specifically configured to calculate the similarity between any two sub-windows of the second size in the first laser array; wherein, the second size is equal to the first size multiplied by the matrix magnification factor; determine the non-correlation of the first laser array based on the average value of the similarities.

[0184] In some embodiments, the second generating unit 803 is further specifically configured to determine that the changed first laser array satisfies the minimum point spacing between adjacent sub-light sources before calculating the non-correlation of the changed first laser array.

[0185] In some embodiments, the second generating unit 803 is further specifically configured to: S111: Enlarge the target seed matrix into a first laser array based on the matrix magnification factor; wherein, the sub-light sources in the first laser array are centered at the coordinates expanded by the second value in the target seed matrix, and the size of the sub-light sources in the first laser array is the set size of the sub-light sources; S112: Calculate the incoherence of the first laser array; S113: Determine k sub-light sources from the sub-light sources in the first laser array, and randomly vary the centers of the k sub-light sources within their own size ranges, and re-determine the positions of the k sub-light sources with the changed centers; k is a positive integer; S114: Calculate the incoherence of the changed first laser array; S115: Determine whether the difference between the incoherence of the changed first laser array and the incoherence of the previous first laser array is greater than a preset value; S116: In response to the difference between the incoherence of the changed first laser array and the incoherence of the previous first laser array being greater than the preset value, accept the changed first laser array; continue to execute steps S113 - S115 based on the changed first laser array until the third termination condition is reached, and then determine the laser array.

[0186] In some embodiments, the second generating unit 803 is further specifically configured to: S117: In response to the difference between the incoherence of the changed first laser array and the incoherence of the previous first laser array not being greater than the preset value, determine whether to accept the changed first laser array based on a preset probability rule; when it is determined to accept the changed first laser array, continue to execute steps S113 - S115 based on the changed first laser array until the third termination condition is reached, and then determine the laser array; when it is determined not to accept the changed first laser array, continue to execute steps S113 - S115 based on the previous first laser array until the third termination condition is reached, and then determine the laser array.

[0187] In some embodiments, the second generating unit 803 is further specifically configured to determine that the changed first laser array satisfies the minimum point spacing between adjacent sub-light sources before calculating the incoherence of the changed first laser array.

[0188] In some embodiments, the value of k decreases based on a preset rule during the iteration process.

[0189] Please refer to Figure 9 , Figure 9 which shows an exemplary system architecture to which the laser array generation method according to an embodiment of the present disclosure can be applied.

[0190] As shown Figure 9 in the figure, the system architecture may include terminal devices 901, 902, 903, a network 904, and a server 905. The network 904 may be a medium for providing communication links between the terminal devices 901, 902, 903 and the server 905. The network 904 may include various connection types, such as wired, wireless communication links, or fiber optic cables, etc.

[0191] The terminal devices 901, 902, 903 may interact with the server 905 through the network 904 to receive or send messages, etc. Various client applications may be installed on the terminal devices 901, 902, 903, such as web browser applications, search applications, and news information applications. The client applications on the terminal devices 901, 902, 903 may receive instructions from users and complete corresponding functions according to the instructions of the users.

[0192] The terminal devices 901, 902, 903 may be hardware or software. When the terminal devices 901, 902, 903 are hardware, they may be various electronic devices with a display screen and supporting web browsing, including but not limited to smart phones, tablet computers, e-book readers, MP3 players (Moving Picture Experts Group Audio Layer III), MP4 (Moving Picture Experts Group Audio Layer IV) players, laptop computers, and desktop computers, etc. When the terminal devices 901, 902, 903 are software, they may be installed in the above-listed electronic devices. It may be implemented as multiple software or software modules (such as software or software modules for providing distributed services), or may be implemented as a single software or software module. No specific limitation is made here.

[0193] The server 905 may be a server that provides various services, such as receiving information acquisition requests sent by the terminal devices 901, 902, 903, obtaining display information corresponding to the information acquisition requests in various ways according to the information acquisition requests, and sending relevant data of the display information to the terminal devices 901, 902, 903.

[0194] It should be noted that the method for generating a laser array provided in the embodiments of the present disclosure may be executed by the terminal device. Correspondingly, the laser array generating device may be set in the terminal devices 901, 902, 903. In addition, the method for generating a laser array provided in the embodiments of the present disclosure may also be executed by the server 905. Correspondingly, the laser array generating device may be set in the server 905.

[0195] It should be understood that Figure 9 the number of terminal devices, networks, and servers in [[ ]] is merely illustrative. Depending on the implementation requirements, there can be any number of terminal devices, networks, and servers.

[0196] Reference is now made to [[ ]] Figure 10 which shows a schematic structural diagram of an electronic device suitable for implementing the embodiments of the present disclosure (such as [[ ]] Figure 9 the terminal device or server in [[ ]]). The terminal device in the embodiments of the present disclosure may include, but is not limited to, mobile terminals such as mobile phones, laptop computers, digital broadcast receivers, PDAs (Personal Digital Assistants), PADs (Tablet Computers), PMPs (Portable Multimedia Players), in-vehicle terminals (such as in-vehicle navigation terminals), etc., and fixed terminals such as digital TVs, desktop computers, etc. Figure 10 The electronic device shown is merely an example and should not impose any limitations on the functions and usage scope of the embodiments of the present disclosure.

[0197] As shown in [[ ]] Figure 10 the electronic device may include a processing device (such as a central processing unit, a graphics processing unit, etc.) 1001, which can perform various appropriate actions and processes according to the program stored in the read-only memory (ROM) 1002 or the program loaded from the storage device 1008 into the random access memory (RAM) 1003. In the RAM 1003, various programs and data required for the operation of the electronic device are also stored. The processing device 1001, the ROM 1002, and the RAM 1003 are connected to each other through a bus 1004. The input / output (I / O) interface 1005 is also connected to the bus 1004.

[0198] Generally, the following devices may be connected to the I / O interface 1005: an input device 1006 including, for example, a touch screen, a touchpad, a keyboard, a mouse, a camera, a microphone, an accelerometer, a gyroscope, etc.; an output device 1007 including, for example, a liquid crystal display (LCD), a speaker, a vibrator, etc.; a storage device 1008 including, for example, a magnetic tape, a hard disk, etc.; and a communication device 1009. The communication device 1009 can allow the electronic device to communicate with other devices wirelessly or wiredly to exchange data. Although [[ ]] Figure 10 shows an electronic device having various devices, it should be understood that it is not required to implement or include all the shown devices. Instead, more or fewer devices may be implemented or included.

[0199] ​​​​In particular, according to an embodiment of the present disclosure, the processes described above with reference to the flowchart can be implemented as a computer software program. For example, an embodiment of the present disclosure includes a computer program product that includes a computer program carried on a non-transitory computer-readable medium, and the computer program includes program code for performing the method shown in the flowchart. In such an embodiment, the computer program can be downloaded and installed from the network through the communication device 1009, or installed from the storage device 1008, or installed from the ROM 1002. When the computer program is executed by the processing device 1001, the above-mentioned functions defined in the method of the embodiment of the present disclosure are performed.

[0200] It should be noted that the above-mentioned computer-readable medium in the present disclosure can be a computer-readable signal medium or a computer-readable storage medium or any combination of the two. A computer-readable storage medium can be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the above. More specific examples of the computer-readable storage medium can include, but are not limited to: an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above. In the present disclosure, a computer-readable storage medium can be any tangible medium that contains or stores a program, and the program can be used by or in combination with an instruction execution system, apparatus, or device. In the present disclosure, a computer-readable signal medium can include a data signal propagated in a baseband or as part of a carrier wave, which carries computer-readable program code. Such a propagated data signal can take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the above. A computer-readable signal medium can also be any computer-readable medium other than a computer-readable storage medium, and the computer-readable signal medium can send, propagate, or transmit a program for use by or in combination with an instruction execution system, apparatus, or device. The program code contained on the computer-readable medium can be transmitted by any suitable medium, including but not limited to: wires, optical cables, RF (radio frequency), etc., or any suitable combination of the above.

[0201] In some embodiments, the client and the server can communicate using any currently known or future-developed network protocol such as HTTP (HyperText Transfer Protocol), and can be interconnected with digital data communication in any form or medium (e.g., a communication network). Examples of communication networks include local area networks ("LAN"), wide area networks ("WAN"), the Internet (e.g., the Internet), and end-to-end networks (e.g., ad hoc end-to-end networks), as well as any currently known or future-developed networks.

[0202] The above computer-readable medium can be included in the above electronic device; or it can exist separately without being assembled into the electronic device.

[0203] The above computer-readable medium carries one or more programs. When the above one or more programs are executed by the electronic device, the electronic device is caused to: obtain an initial seed matrix; wherein, the size of the initial seed matrix is smaller than the size of the laser array to be generated; perform an assignment process on the parameters of the initial seed matrix to generate a target seed matrix; wherein, the target seed matrix satisfies a preset non-correlation condition; the assignment process is used to assign the parameters of the initial seed matrix to a first value or a second value; the first value and the second value indicate different pixel brightnesses; based on the manufacturing process parameters of the laser array, expand the target seed matrix into the laser array; wherein, the second value in the target seed matrix corresponds to the sub-light sources in the laser array.

[0204] Computer program code for performing the operations of the present disclosure can be written in one or more programming languages or combinations thereof. The above programming languages include, but are not limited to, object-oriented programming languages such as Java, Smalltalk, C++, and also include conventional procedural programming languages such as the "C" language or similar programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, executed as a stand-alone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In the case of a remote computer, the remote computer can 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 can be connected to an external computer (e.g., by using an Internet service provider to connect through the Internet).

[0205] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of the present disclosure. In this regard, each block in the flowchart or block diagram may represent a module, a segment of a program, or a portion of code that contains one or more executable instructions for implementing the specified logical function. It should also be noted that in some alternative implementations, the functions noted in the blocks may occur in a different order than noted in the accompanying drawings. For example, two consecutive blocks shown may actually be executed substantially in parallel, or they may sometimes be executed in the reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can be implemented by a dedicated hardware-based system that performs the specified functions or operations, or by a combination of dedicated hardware and computer instructions.

[0206] The units involved in the embodiments described in the present disclosure can be implemented in software or in hardware. Among them, the name of the unit does not constitute a limitation on the unit itself in some cases. For example, the acquisition unit 801 can also be described as "the unit for acquiring the initial seed matrix".

[0207] The functions described above in this document can be performed, at least in part, by one or more hardware logic components. For example, without limitation, exemplary types of hardware logic components that can be used include: Field Programmable Gate Arrays (FPGA), Application Specific Integrated Circuits (ASIC), Application Specific Standard Products (ASSP), System on a Chip (SOC), Complex Programmable Logic Devices (CPLD), and so on.

[0208] In the context of the present disclosure, a machine-readable medium can be a tangible medium that can contain or store a program for use by or in connection with an instruction execution system, apparatus, or device. A machine-readable medium can be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium can include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination of the foregoing. More specific examples of machine-readable storage media would include an electrical connection based on one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a Read-Only Memory (ROM), an Erasable Programmable Read-Only Memory (EPROM or Flash memory), an optical fiber, a portable Compact Disc Read-Only Memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.

[0209] The above description is only a preferred embodiment of the present disclosure and an explanation of the applied technical principles. Those skilled in the art should understand that the scope of the disclosure involved in the present disclosure is not limited to the technical solutions formed by the specific combination of the above technical features, but should also cover other technical solutions formed by any combination of the above technical features or their equivalent features without departing from the above disclosure concept. For example, the technical solutions formed by mutually replacing the above features with the technical features (but not limited to) having similar functions disclosed in the present disclosure.

[0210] In addition, although the operations are depicted in a particular order, this should not be construed as requiring that the operations be performed in the particular order shown or in sequential order. In certain circumstances, multitasking and parallel processing may be advantageous. Similarly, although a number of specific implementation details are included in the above discussion, these should not be construed as limiting the scope of the present disclosure. Certain features described in the context of separate embodiments may also be implemented in combination in a single embodiment. Conversely, the various features described in the context of a single embodiment may also be implemented separately or in any suitable sub-combination in multiple embodiments.

[0211] Although the subject matter has been described in language specific to structural features and / or methodological logical acts, it should be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or acts described above. Rather, the specific features and acts described above are merely example forms of implementing the claims.

Claims

1. A method for generating a laser array, characterized in that, Including: Obtain an initial seed matrix; wherein, the size of the initial seed matrix is smaller than the size of the laser array to be generated; Perform assignment processing on the parameters of the initial seed matrix to generate a target seed matrix; wherein, the target seed matrix meets a preset non-correlation condition; the assignment processing is used to assign the parameters of the initial seed matrix to a first value or a second value; the first value and the second value indicate different pixel luminances; Based on the manufacturing process parameters of the laser array, expand the target seed matrix into the laser array; wherein, the second value in the target seed matrix corresponds to the sub-light sources in the laser array.

2. The method according to claim 1, wherein The preset non-correlation condition includes that any two sub-windows of the first size in the target seed matrix do not repeat, and any two second values in the target seed matrix are not adjacent; the first size is smaller than the size of the target seed matrix.

3. The method according to claim 2, wherein The performing assignment processing on the parameters of the initial seed matrix to generate a target seed matrix includes: Perform randomized assignment processing on the parameters of the initial seed matrix to generate a first seed matrix; Perform secondary assignment processing on the first seed matrix to generate the target seed matrix; the assignment processing includes the randomized assignment processing and the secondary assignment processing.

4. The method according to claim 1, wherein The performing assignment processing on the parameters of the initial seed matrix to generate a target seed matrix includes: S1: Perform randomized assignment processing on the parameters of the initial seed matrix to generate a first seed matrix; S2: Perform secondary assignment on the first seed matrix to generate the second seed matrix; wherein, any two sub-windows of the first size in the second seed matrix do not repeat, and any two second values in the target seed matrix are not adjacent; the first size is smaller than the size of the target seed matrix; the assignment processing includes the randomized assignment processing and the secondary assignment processing; S3: Calculate the non-correlation of the second seed matrix; Repeat steps S1 - S3 until a first termination condition is reached, and then determine the target seed matrix; wherein, the target seed matrix is the second seed matrix that meets the first preset non-correlation condition in the second seed matrix.

5. The method according to claim 4, wherein The calculating the non-correlation of the second seed matrix includes: Calculate the similarity between any two sub-windows of the first size in the second seed matrix; Based on the average value of the similarities, determine the non-correlation of the second seed matrix.

6. The method according to claim 2, wherein The manufacturing process parameters of the laser array include the minimum point spacing between adjacent sub-light sources and the set size of the sub-light sources; the expanding the target seed matrix into the laser array based on the manufacturing process parameters of the laser array includes: Based on the minimum point spacing between adjacent sub-light sources and the minimum interval of the second values in the target seed matrix, determine the matrix magnification factor; Enlarge the target seed matrix into the laser array based on the matrix magnification factor; wherein, the sub-light sources in the laser array are centered at the coordinates expanded by the second value in the target seed matrix, and the size of the sub-light sources in the laser array is the set size of the sub-light sources.

7. The method according to claim 6, wherein The enlarging the target seed matrix into the laser array based on the matrix magnification factor includes: S11: Enlarge the target seed matrix into a first laser array based on the matrix magnification factor; wherein, the sub-light sources in the first laser array are centered at the coordinates expanded by the second value in the target seed matrix, and the size of the sub-light sources in the first laser array is the set size of the sub-light sources; S12: Determine k sub-light sources from the sub-light sources in the first laser array, and randomly vary the centers of the k sub-light sources within their own sizes, and re-determine the positions of the k sub-light sources with the changed centers; k is a positive integer; S13: Calculate the non-correlation of the changed first laser array; Repeat steps S12 - S13 until a second termination condition is reached, and then determine the laser array; wherein, the laser array is the first laser array that satisfies the second preset non-correlation condition in the changed first laser array.

8. The method according to claim 7, characterized in that The calculating the non-correlation of the first laser array includes: Calculate the similarity between any two sub-windows of the second size in the first laser array; wherein, the second size is equal to the first size multiplied by the matrix magnification factor; Determine the non-correlation of the first laser array based on the average value of the similarities.

9. The method according to claim 7, wherein Before calculating the non-correlation of the changed first laser array, the method further includes: Determine that the changed first laser array satisfies the minimum point spacing between adjacent sub-light sources.

10. The method according to claim 6, wherein The enlarging the target seed matrix into the laser array based on the matrix magnification factor includes: S111: Enlarge the target seed matrix into a first laser array based on the matrix magnification factor; wherein, the sub-light sources in the first laser array are centered at the coordinates expanded by the second value in the target seed matrix, and the size of the sub-light sources in the first laser array is the set size of the sub-light sources; S112: Calculate the non-correlation of the first laser array; S113: Determine k sub-light sources from the sub-light sources in the first laser array, and randomly vary the centers of the k sub-light sources within their own sizes, and re-determine the positions of the k sub-light sources with the changed centers; k is a positive integer; S114: Calculate the non-correlation of the changed first laser array; S115: Determine whether the difference between the non-correlation of the changed first laser array and the non-correlation of the previous first laser array is greater than a preset value; S116: In response to the difference between the non-correlation of the changed first laser array and the non-correlation of the previous first laser array being greater than the preset value, accept the changed first laser array; Based on the changed first laser array, continue to execute steps S113 - S115 until the third termination condition is reached, and then determine the laser array.

11. The method according to claim 10, wherein The method further includes: S117: In response to the difference between the irrelevance of the changed first laser array and the irrelevance of the previous first laser array being no greater than the preset value, determine whether to accept the changed first laser array based on a preset probability rule; When it is determined to accept the changed first laser array, continue to execute steps S113 - S115 based on the changed first laser array until the third termination condition is reached, and then determine the laser array; When it is determined not to accept the changed first laser array, continue to execute steps S113 - S115 based on the previous first laser array until the third termination condition is reached, and then determine the laser array.

12. The method according to claim 10, wherein Before calculating the irrelevance of the changed first laser array, the method further includes: Determine that the changed first laser array satisfies the minimum point spacing of adjacent sub - light sources.

13. The method according to claim 10, wherein The value of k decreases based on a preset rule during the iteration process.

14. A laser array generating device, characterized in that, It includes: An acquisition unit for acquiring an initial seed matrix; wherein, the size of the initial seed matrix is smaller than the size of the laser array to be generated; A first generation unit for performing an assignment process on the parameters of the initial seed matrix to generate a target seed matrix; wherein, the target seed matrix satisfies a preset irrelevance condition; the assignment process is used to assign the parameters of the initial seed matrix to a first value or a second value; the first value and the second value indicate different pixel luminances; A second generation unit for expanding the target seed matrix into the laser array based on the manufacturing process parameters of the laser array; wherein, the second value in the target seed matrix corresponds to the sub - light sources in the laser array.

15. An electronic device, characterized in that, It includes: One or more processors; A storage device for storing one or more programs, When the one or more programs are executed by the one or more processors, the one or more processors implement the method as described in any one of claims 1 - 13.

16. A computer-readable medium having a computer program stored thereon, characterized in that, When the program is executed by the processor, it implements the method as described in any one of claims 1 - 13.