A method for extracting underwater laser stripe center based on distance gradient region energy

CN118229565BActive Publication Date: 2026-09-11XIAN INST OF OPTICS & PRECISION MECHANICS CHINESE ACAD OF SCI
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202410338333.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-03-22
Publication Date
2026-09-11
Estimated Expiration
2044-03-22

AI Technical Summary

Technical Problem

[0006]本发明的目的是用于解决现有的基于几何中心和基于灰度能量中心两类方法不适用于水下受噪声严重干扰的激光条纹中心提取的问题,而提供一种基于距离梯度区域能量的水下激光条纹中心提取方法

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN118229565B_ABST
    Figure CN118229565B_ABST
Patent Text Reader

Abstract

The present application relates to image data processing, in particular to a kind of underwater laser stripe center extraction method based on distance gradient region energy, for solving the problem that the two kinds of methods based on geometric center and based on gray energy center are not applicable to underwater laser stripe center extraction seriously disturbed by noise.The underwater laser stripe center extraction method based on distance gradient region energy, first through Gaussian filtering, gray transformation, gradient calculation and other pretreatment steps, filter out the backward scattering noise interference of negative gradient distribution, then the region gradient energy of image is calculated to obtain the accurate region of laser stripe, then the laser stripe center is extracted, finally the median value and absolute deviation are calculated to remove outliers, effectively suppress abnormal value interference, so as to improve the extraction accuracy of stripe center.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to image data processing, and more specifically to a method for extracting the center of underwater laser stripes based on the energy of a distance gradient region. Background Technology

[0002] Underwater line-scanning laser 3D imaging is a long-range ranging and 3D imaging system based on laser technology, which can achieve high-precision topographic mapping, target detection and imaging in underwater environments.

[0003] A typical underwater line-scan laser 3D imaging schematic diagram is shown below. Figure 1 As shown. Laser 01 emits a line laser with a certain divergence angle. Image sensor 02 continuously captures images, and after each capture, the depth of target 03 within the line laser illumination range is measured. The underwater lidar is mounted on a mobile platform and continuously pushes and scans the seabed as the platform moves. Combining the inertial navigation information provided by the mobile platform, computer 04 stitches and reconstructs the multiple measurement results 05 to obtain a three-dimensional map 06 of the push-scanned area of ​​target 03.

[0004] Due to the high scattering and strong absorption of light waves during underwater transmission, the acquired laser stripe images have strong backscattering interference, which means that the area where the laser stripes are located is often not the brightest area in the entire image. The contrast of the laser stripes is extremely low, which poses a great challenge to the accurate extraction of the laser stripes.

[0005] Based on their different principles, existing laser stripe extraction techniques can be divided into two main categories: those based on geometric centers and those based on gray-scale energy centers. Due to the high scattering and strong absorption of the underwater environment, the area where underwater laser stripes are located is often not the brightest region in the entire image, and its gray-scale energy is weaker than the backscattered noise energy. Therefore, methods based on geometric centers cannot extract the precise contours of laser stripes, and methods based on gray-scale energy centers cannot extract the energy centers of laser stripes. Both existing types of laser stripe extraction techniques are unusable in complex underwater environments. Summary of the Invention

[0006] The purpose of this invention is to address the problem that existing methods based on geometric centers and grayscale energy centers are not suitable for extracting the center of underwater laser stripes when they are severely affected by noise, and to provide an underwater laser stripe center extraction method based on the energy of the distance gradient region.

[0007] To address the shortcomings of the existing technology, the present invention provides the following technical solution:

[0008] A method for extracting the center of underwater laser stripes based on the energy of the distance gradient region, characterized by the following steps:

[0009] Step 1: Using a Gaussian kernel, the underwater laser stripe image I is filtered using a discretized window sliding window convolution method to obtain I. s ;

[0010] Step 2, for I s Perform image grayscale transformation to obtain I g ;

[0011] Step 3, for I g The distance gradient image I is obtained using the Scharr operator. disgra ;

[0012] Step 4: Calculate the distance gradient image I disgra Maximum regional gradient energy Max disgra It also outputs the coordinates of the corresponding point and the size of the region.

[0013] Step 5: Calculate the maximum value of the regional gradient energy obtained in Step 4. disgra Given the corresponding point coordinates and region size, extract the laser stripe region I from the underwater laser stripe image I. zone ;

[0014] Step 6: Calculate the laser stripe region I zone The coordinates of the maximum grayscale value in each column are used as the original laser stripe coordinate set l(x, y) for output.

[0015] Step 7: By calculating the median and absolute deviation of the original laser stripe coordinate set obtained in Step 6, outliers are removed to obtain the final underwater laser stripe center.

[0016] Furthermore, step 3 specifically includes:

[0017] to I g Using the Scharr operator to perform a convolution kernel G in the vertical direction y Perform convolution operation to obtain I g Distance gradient image I disgra .

[0018] Furthermore, step 4 specifically includes:

[0019] Step 4.1: Based on the distance gradient image I disgra The number of rows (rows1) and the number of columns (cols1) determine the length of the slider. x Wide Slide y ;

[0020] Step 4.2: Determine the traversal distance gradient image I disgra Horizontal step size x and vertical step length Step y Long Slidex Wide Slide y The horizontal step size is Step x and vertical step length Step y Multiples of positive integers;

[0021] Step 4.3: Move the sliding window in horizontal steps. x and vertical step length Step y Traversing the distance gradient image I disgra Calculate the distance gradient image I disgra Maximum regional gradient energy Max disgra It outputs the coordinates of the corresponding point and the size of the region.

[0022] Furthermore, step 4.3 specifically includes:

[0023] Assuming the initial region gradient energy is maximum (Max) disgra =0, corresponding to the top left corner coordinates of the slider as (x, y) = (0, 0), calculate the region gradient energy E during the traversal process. disgra If E disgra ≥Max disgra Then Max disgra =E disgra The traversal rules are as follows:

[0024] A1. Row-by-row traversal of the distance gradient image I disgra Let n = n + 1, and the coordinates of the slider (x, y) be:

[0025]

[0026] Where n is the number of times the sliding window moves horizontally, and m1 is the number of times the sliding window moves vertically. Both m1 and n are integers greater than or equal to 0.

[0027] A2. When x = n·Step x ≥cols1-Slide x At this point, the slider has reached the last column, and the slider moves down by m1 = m1 + 1, while the horizontal direction is reset to n = 0;

[0028] A3. When y = m1·Step y <rows1-Slide y If necessary, return to step A1;

[0029] When y = m1·Step y ≥rows1-Slide y When the slider has reached the last row, the iteration ends after traversing this row of data, and the maximum gradient energy of the output region (Max) is determined. disgraThe corresponding point coordinates and area size.

[0030] Furthermore, step 6 specifically includes:

[0031] Step 6.1: Obtain laser stripe region I zone The number of rows2 and the number of columns2;

[0032] Step 6.2, Traverse the laser stripe region I zone Record the coordinates of the maximum grayscale value for each column;

[0033] Step 6.3: Determine the laser stripe region I zone If a column has multiple equal maximum gray values, then set the center of the laser stripe in that column to the average of the coordinates of the multiple equal maximum gray values ​​in that column; otherwise, proceed to step 6.4.

[0034] Step 6.4, make the laser stripe area I zone The coordinates of the maximum grayscale value of each column are used as the original laser stripe coordinate set l(x, y), x∈[0, cols2).

[0035] Further, step 6.2 specifically includes:

[0036] Traversing the laser stripe region I zone Record the coordinates of the maximum grayscale value in each column, where r is the row coordinate and c is the coordinate of the currently traversed column, where 0 ≤ r < rows2 and 0 ≤ c < cols2, according to the following rules:

[0037] B1. Traversing the distance gradient image column by column (I) disgra , r = r + 1;

[0038] B2. When r = rows2-1, move right to the next column, c = c+1, and reset the row coordinate to r = 0;

[0039] When B3.c < cols2-1, return to step B1;

[0040] When c = cols2-1, the iteration continues until the last column is reached, and the iteration ends after all data in this column has been traversed.

[0041] Furthermore, step 7 specifically includes:

[0042] Step 7.1: Select the neighborhood length len and the traversal step size step;

[0043] Step 7.2: Traverse the original laser stripe coordinate set l(x, y) using the neighborhood length len and the step size step;

[0044] Step 7.3: Calculate all data Y in the current traversed neighborhood. i The median value Y median ;

[0045] Step 7.4: Calculate all data Y in the current traversed neighborhood. i With median value Y median The absolute deviation, i.e.:

[0046] bias = |Y i -Y median |

[0047] Step 7.5: Take the median value of the absolute deviation (MAD) = bias. median ;

[0048] Step 7.6: Determine the outlier threshold n2, and process and filter all data Y within the current traversal neighborhood. i Outliers in the data are used to obtain the processed data Y′. i ,as follows:

[0049]

[0050] Step 7.7: Output the center of the underwater laser stripe, l′(x, y).

[0051] Further, in step 7.1, the step size step is less than or equal to the neighborhood length len, and there is

[0052]

[0053] Where cols3 is the length of the laser stripe, m2 is the number of horizontal sliding steps, and m2 is an integer greater than or equal to 0.

[0054] Further, step 7.2 specifically includes:

[0055] Traverse the original laser stripe coordinate set l(x, y)m2=m2+1 for each neighborhood length len;

[0056] The iteration ends when m2·step = cols3 - len.

[0057] Compared with the prior art, the beneficial effects of the present invention are:

[0058] (1) The underwater laser stripe center extraction method based on the energy of the distance gradient region in this invention first filters out backscattering noise interference with a negative gradient distribution through preprocessing steps such as Gaussian filtering, grayscale transformation, and gradient calculation.

[0059] (2) The underwater laser stripe center extraction method based on the energy of the distance gradient region in this invention neutralizes the interference of other background light noise when calculating the energy of the distance gradient region by traversing the sliding window, thereby obtaining the laser stripe region submerged in the noise.

[0060] (3) The underwater laser stripe center extraction method based on distance gradient region energy of the present invention provides good adaptability through parameter adjustment (neighborhood length, traversal step size, outlier threshold), which can be optimized according to the specific underwater environment and laser stripe characteristics, so as to obtain good extraction effect under different conditions.

[0061] (4) The present invention provides an underwater laser stripe center extraction method based on distance gradient region energy. By calculating the median value and absolute deviation to remove outliers, it effectively suppresses outlier interference and improves the extraction accuracy of stripe centers. Attached Figure Description

[0062] Figure 1 This is a typical schematic diagram of underwater line-scan laser 3D imaging;

[0063] The reference numerals in the attached figures are explained as follows: 01-Laser; 02-Image sensor; 03-Target; 04-Computer; 05-Measurement result; 06-3D image.

[0064] Figure 2 This is a schematic flowchart of the underwater laser stripe center extraction method based on distance gradient region energy according to the present invention. Detailed Implementation

[0065] The present invention will be further described below with reference to the accompanying drawings and exemplary embodiments.

[0066] Reference Figure 2 A method for extracting the center of underwater laser stripes based on the energy of the distance gradient region includes the following steps:

[0067] Step 1: Using a Gaussian kernel, the underwater laser stripe image I is filtered using a discretized window sliding window convolution method to obtain I. s ;

[0068] Step 2, for I s Perform image grayscale transformation to obtain I g The basic idea is to merge the pixel values ​​of the RGB three-channel components in a color image in RGB format into a single value, which ranges from 0 to 255.

[0069] Step 3: Calculate the distance gradient image I using the Scharr operator. disgraSince the line laser shines vertically downwards onto the target surface, the backscattering noise in the acquired image mostly exhibits a negative gradient distribution. Therefore, this step can filter out backscattering interference in the image.

[0070] The Scharr operator's convolution kernel G in the vertical direction y for:

[0071]

[0072] to I g Using convolution kernel G y Perform convolution operation to obtain I g Distance gradient image I disgra .

[0073] Step 4: Calculate the distance gradient image I disgra Maximum regional gradient energy Max disgra It also outputs the coordinates of the corresponding point and the size of the region.

[0074] Step 4.1: Based on the distance gradient image I disgra The number of rows (rows1) and the number of columns (cols1) determine the length of the slider. x Wide Slide y ;

[0075] According to the principle of underwater Schaperone imaging, laser stripes acquired from targets at the same distance will always be horizontally distributed on the image. Therefore, the length of the sliding frame should be approximately twice its width, i.e.:

[0076] Slide x ≈2 Slide y

[0077] The sliding window should not be too large, as an overly large sliding frame will result in insufficient precision in the laser stripe area;

[0078] Step 4.2: Determine the traversal distance gradient image I disgra Horizontal step size x and vertical step length Step y Long Slide x Wide Slide y The horizontal step size is Step x and vertical step length Step y Multiples of positive integers;

[0079] To traverse the entire distance gradient image I disgra It must be ensured that the step size does not exceed the corresponding side length of the sliding window, that is:

[0080]

[0081] When selecting the sliding window and step size, try to ensure that the entire image is covered after sliding an integer number of times with a certain step size.

[0082]

[0083] Where n is the number of times the sliding window moves horizontally, and m1 is the number of times the sliding window moves vertically. Both m1 and n are integers greater than or equal to 0.

[0084] Step 4.3: Move the sliding window with a horizontal step size Stepx and a vertical step size Step. y Traversing the distance gradient image I disgra Calculate the distance gradient image I disgra Maximum regional gradient energy Max disgra It outputs the coordinates of the corresponding point and the size of the region, as follows:

[0085] Assuming the initial region gradient energy is maximum (Max) disgra =0, the coordinates of the top left corner of the slider are (x, y) = (0, 0), calculate the region gradient energy E during the traversal process. disgra If E disgra ≥Max disgra Then Max disgra =E disgra The traversal rules are as follows:

[0086] A1. Row-by-row traversal of the distance gradient image I disgra Let n = n + 1, and the coordinates of the slider (x, y) be:

[0087]

[0088] A2. When x = n·Step x ≥cols1-Slide x When the slider moves down by m1 = m1 + 1, the horizontal direction is reset to n = 0, that is:

[0089]

[0090] A3. When y = m1·Step y <rows1-Slide y If necessary, return to step A1;

[0091] When y = m1·Step y ≥rows1-Slide y When the slider has reached the last row, the iteration ends after traversing this row of data, and the maximum gradient energy of the output region (Max) is determined. disgraThe corresponding point coordinates and region size, the corresponding point coordinates are the distance gradient image I disgra Top left point coordinates (Max) x Max y ), the area size is Slide x and Slide y ;

[0092] Step 5: Calculate the maximum value of the regional gradient energy obtained in Step 4. disgra Given the corresponding point coordinates and region size, extract the laser stripe region I from the underwater laser stripe image I. zone ;

[0093] Step 6: Calculate the laser stripe region I zone The coordinates of the maximum gray value of each column are used as the original laser stripe coordinate set l(x, y), x∈[0, cols2).

[0094] Step 6.1: Obtain laser stripe region I zone The number of rows2 and the number of columns2;

[0095] Step 6.2, Traverse the laser stripe region I zone Record the coordinates of the maximum grayscale value for each column, where r is the row coordinate and c is the coordinate of the currently traversed column, according to the following rules:

[0096] B1. Column-by-column distance gradient image I disgra , r = r + 1;

[0097] B2. When r = rows2-1, move right to the next column and iterate until c = c+1, then clear the row coordinates to r = 0.

[0098] When B3.c < cols2-1, return to step B1;

[0099] When c = cols2-1, the iteration continues until the last column is reached, and the iteration ends after all data in this column has been traversed.

[0100] Step 6.3: Determine the laser stripe region I zone If a column has multiple equal maximum gray values, then set the center of the laser stripe in that column to the average of the coordinates of the multiple equal maximum gray values ​​in that column; otherwise, proceed to step 6.4.

[0101] Step 6.4, make the laser stripe area I zone The coordinates of the maximum gray value of each column are used as the original laser stripe coordinate set l(x, y), x∈[0, cols2).

[0102] Step 7: Remove noise and outliers from the original laser stripe coordinate set l(x, y) obtained in Step 6.4 to obtain the underwater laser stripe center l′(x, y);

[0103] Step 7.1: Select appropriate neighborhood length len and traversal step size, based on the following principles:

[0104] Since laser stripe data are only correlated with points in the nearest neighborhood, the neighborhood length len should not be too large.

[0105] In order to traverse the entire original set of laser stripe coordinates l(x, y), it must be ensured that the step size step is less than or equal to the neighborhood length len;

[0106] The step size is guaranteed to cover the entire original laser fringe coordinate set l(x, y) after sliding an integer number of times, i.e.:

[0107]

[0108] Where cols3 is the length of the laser stripe, and is related to the laser stripe region I mentioned above. zone The number of columns cols2 is equal, m2 is the number of horizontal sliding steps, and m2 is an integer greater than or equal to 0;

[0109] Step 7.2: Traverse the original laser stripe coordinate set l(x, y) using the neighborhood length len and the step size step, according to the following rules:

[0110] Traverse the original laser stripe coordinate set l(x, y)m2=m2+1 for each neighborhood length len;

[0111] The traversal ends when m2·step = cols3 - len;

[0112] Step 7.3: Calculate all data Y in the current traversed neighborhood. i The median value Y median To effectively reduce the impact of extreme values; the current traversal neighborhood is the set interval of the original laser stripe coordinate set l(x,y) where m2·step≤x<<(m2·step+len);

[0113] Step 7.4: Calculate all data Y in the current traversed neighborhood. i The absolute deviation from the median, i.e.:

[0114] bias = |Y i -Y median |

[0115] Absolute bias is used to assess the degree to which the ordinate value of each point deviates from the central tendency in its neighborhood;

[0116] Step 7.5: Take the median value of the absolute deviation, MAD = bias median The median absolute deviation (MAD) reflects the typical deviation of the ordinate values ​​of points in the neighborhood from the median.

[0117] Step 7.6: Determine the outlier threshold n2, and process and filter all data Y within the current traversal neighborhood. i Outliers in the data are used to obtain the processed data Y′. i ,as follows:

[0118]

[0119] Step 7.6: Output the center of the underwater laser stripe l′(x, y), x∈[0, cols3).

Claims

1. A method for extracting the center of underwater laser stripes based on the energy of a distance gradient region, characterized in that, The steps include the following: Step 1: Using a Gaussian kernel, the underwater laser stripe image is processed by a discretized window sliding window convolution method. Filtering is performed to obtain ; Step 2, for Image grayscale transformation is performed to obtain ; Step 3, for Using the Scharr operator in the vertical convolution kernel Perform convolution operation to obtain Distance gradient image ; Step 4: Calculate the distance gradient image Maximum regional gradient energy It also outputs the coordinates of the corresponding point and the size of the region. Step 4.1: Based on the distance gradient image number of rows Number of columns Determine the length of the slider. ,Width ; Step 4.2: Determine the traversal distance gradient image horizontal step size and vertical step length ,long ,Width Horizontal step size and vertical step length Multiples of positive integers; Step 4.3: Assume the initial maximum regional gradient energy. The coordinates of the top left corner of the corresponding slider are Calculate the regional gradient energy during the traversal process. ,like ,but The traversal rules are as follows: A1. Traverse the distance gradient image row by row , Sliding box coordinates for: ; in, This represents the number of times the sliding window moves horizontally. This represents the number of times the sliding window moves vertically. and All are integers greater than or equal to 0; A2. When At that time, the slider has reached the last column, and the slider moves down. Zero in the horizontal direction ; A3. When If necessary, return to step A1; when When the slider has reached the last row, the iteration ends after traversing this row of data, and the maximum gradient energy of the output region is determined. The corresponding point coordinates and area size; Step 5: Calculate the maximum value of the regional gradient energy obtained in Step 4. The corresponding point coordinates and area size are obtained from the underwater laser stripe image. Extracting the laser stripe area ; Step 6: Calculate the laser stripe area The coordinates of the maximum grayscale value in each column are used as the original set of laser stripe coordinates. Output; Step 7: By calculating the median and absolute deviation of the original laser stripe coordinate set obtained in Step 6, outliers are removed to obtain the final underwater laser stripe center.

2. The method for extracting the center of underwater laser stripes based on the energy of a distance gradient region according to claim 1, characterized in that, Step 6 specifically involves: Step 6.1: Obtain the laser stripe area number of rows Number of columns ; Step 6.2: Traverse the laser stripe area Record the coordinates of the maximum grayscale value for each column; Step 6.3: Determine the laser stripe area Does each column contain multiple maximum gray values ​​with equal values? If a column contains multiple maximum gray values ​​with equal values, then set the center of the laser stripe in that column to the average of the coordinates corresponding to the multiple maximum gray values ​​in that column; otherwise, proceed to step 6.

4. Step 6.4: Set the laser stripe area The coordinates of the maximum grayscale value in each column are used as the original laser stripe coordinate set. Output.

3. The method for extracting the center of underwater laser stripes based on the energy of a distance gradient region according to claim 2, characterized in that, Step 6.2 specifically involves: Traverse the laser stripe area Record the coordinates of the maximum grayscale value in each column. For row coordinates, The coordinates of the current traversed column are given by the coordinates of the column in the current traversal. , The rules are as follows: B1. Traverse the distance gradient image column by column ; B2. When When the time comes, move to the next column to the right. Reset row coordinates to zero ; B3. If necessary, return to step B1; when When the data in the last column is exhausted, the iteration ends.

4. A method for extracting the center of underwater laser stripes based on distance gradient region energy according to any one of claims 1 to 3, characterized in that, Step 7 specifically involves: Step 7.1: Select the neighborhood length and traversal step size ; Step 7.2, based on neighborhood length and step length Traverse the original set of laser stripe coordinates ; Step 7.3: Calculate all data within the current traversal neighborhood. median ; Step 7.4: Calculate all data within the current traversal neighborhood. Compared with the median value absolute deviation ,Right now: ; Step 7.5: Take the absolute deviation median ; Step 7.6: Determine the outlier threshold. Process and filter all data within the current traversal neighborhood. Outliers in the data are processed to obtain the final data. ,as follows: ; Step 7.7: Output the center of the underwater laser stripe. .

5. The method for extracting the center of underwater laser stripes based on the energy of a distance gradient region according to claim 4, characterized in that, In step 7.1, the step size Less than or equal to neighborhood length And there are ; in, The length of the laser stripe. The number of horizontal slides. It is an integer greater than or equal to 0.

6. The method for extracting the center of underwater laser stripes based on the energy of a distance gradient region according to claim 5, characterized in that, Step 7.2 specifically involves: Neighborhood length Traverse the original set of laser stripe coordinates ; when When the time is right, the traversal ends.