A short-wave infrared star map denoising method and system

CN116957960BActive Publication Date: 2026-08-21BEIHANG UNIV
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202310812649.2
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-07-04
Publication Date
2026-08-21
Estimated Expiration
2043-07-04

AI Technical Summary

Technical Problem

[0006]为解决现有技术中存在的问题,本发明的目的是提供一种短波红外星图的降噪方法和系统,本发明通过研究短波红外星图条纹非均匀性噪声和盲元噪声的实时降噪,解决短波红外星图降噪方法中盲元识别高准确率和低漏检率难以兼得、降噪后微弱星点提取困难且提取准确率与召回率相互制约的问题,提高短波红外星敏感器噪声抑制性能,对全天时星敏感器的正常工作具有重要意义

Benefits of technology

1、本发明针对盲元噪声提出二阶差分描绘子和高斯相关描绘子,分别对盲元和星点的邻域灰度特征进行针对性描绘,且具有对灰度线性变换的不变性。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116957960B_ABST
    Figure CN116957960B_ABST
Patent Text Reader

Abstract

The application provides a short-wave infrared star map denoising method and system. The method comprises the following steps: calculating a moment matching correction coefficient of each column of pixels of an image; performing moment matching correction on the stripe noise of each column of pixels respectively by using the moment matching correction coefficient; identifying non-background pixels which are possibly star points and blind elements on the basis of the star map after the moment matching correction, and calculating a second-order difference descriptor and a Gaussian correlation descriptor of each non-background pixel; training a support vector machine, and classifying the non-background pixels according to the descriptors; and the application has important significance for the normal operation of an all-weather star sensor.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of astronomical navigation star sensor technology, specifically to a method and system for denoising shortwave infrared star maps. Background Technology

[0002] Shortwave infrared all-weather star sensors are a commonly used astronomical navigation system for near-space vehicles, boasting advantages such as high accuracy, non-accumulating errors over time, fully autonomous navigation, low power consumption, and high reliability. While the shortwave infrared band offers advantages such as low atmospheric background radiation, less atmospheric extinction, and a greater number of observable stars, star images captured by shortwave infrared detectors contain fringe non-uniformity noise and blind pixel noise, severely impacting subsequent star point extraction and other processing steps, thus affecting the normal operation of the navigation system.

[0003] Current methods for suppressing stripe non-uniformity noise in shortwave infrared images are mainly divided into calibration-based correction methods and scene-based correction methods. (1) The calibration-based method requires testing the detector with an external uniform radiation source in an experimental environment and recording the non-uniformity response of the pixels, so as to serve as a reference for compensation when the detector is working. However, the response characteristics of the short-wave infrared imaging chip are affected by factors such as working time, working temperature, and fluctuation of the internal transistor bias voltage. The working environment of the near-space star sensor is complex and variable, and the working cycle is very long, making it difficult to maintain fixed working conditions. If the parameters calibrated under specific conditions are forcibly used for correction, uncertain correction errors will be introduced. (2) Scene-based correction methods include the sequence method and the single-frame method. The sequence method requires the pixel value to change between subsequent frames and converges through multi-frame images with different pixel gray distributions. Its delay and multi-frame storage memory requirements are not suitable for star sensor applications. The single-frame method is more complex to calculate, and the algorithm time is significantly greater than that of the sequence method. (3) In addition, there are time-domain high-pass filtering and artificial neural network methods for non-uniformity correction. The former can only correct the bias, while the latter algorithm is more complex and has higher computational requirements.

[0004] For the blind element problem in shortwave infrared images, the common methods are calibration-based correction methods and statistical feature-based correction methods. (1) Calibration-based correction methods determine the position of blind elements through standard light source experiments, but the position of blind elements changes over time. During the working cycle of the detector, multiple calibrations are often required, which is difficult to adapt to the complex and ever-changing working environment of star sensors and the requirements of long-term operation. (2) Statistical correction methods use the gray-scale features of the center pixel and surrounding pixels to design criteria for blind element detection. This method has strong adaptability to different working environments and the algorithm is fast, but its ability to identify blind element clusters composed of multiple blind elements is poor. There are problems such as incomplete blind element detection and misidentification of star pixels as blind elements. It is often difficult to achieve both high accuracy and low false negative rate in blind element identification.

[0005] Stripe non-uniformity noise affects the grayscale of each column of pixels, and a undulating background is detrimental to star point extraction, while also increasing the error in star centroid calculation. Overheated blind pixels and blind pixel clusters have extremely similar characteristics to star targets, greatly affecting star point discrimination. Both stripe non-uniformity noise and blind pixel noise are related to ambient temperature, operating time, and atmospheric background radiation intensity. Traditional calibration compensation and threshold processing methods are difficult to effectively eliminate them. In addition, star sensors have real-time requirements during on-orbit operation, requiring the algorithm to be simulated not only at the computer software level but also implemented at the hardware level to achieve a faster speed than software algorithms. Summary of the Invention

[0006] To address the problems existing in the prior art, the purpose of this invention is to provide a noise reduction method and system for short-wave infrared star maps. This invention studies the real-time noise reduction of non-uniform noise and blind element noise in short-wave infrared star map stripes, solving the problems in short-wave infrared star map noise reduction methods where it is difficult to achieve both high accuracy and low false negative rate in blind element identification, and the difficulty in extracting weak star points after noise reduction, with extraction accuracy and recall mutually constraining each other. This improves the noise suppression performance of short-wave infrared star sensors and is of great significance for the normal operation of all-weather star sensors.

[0007] This invention is achieved by the following technical solution: This invention provides a method for denoising shortwave infrared star maps, comprising the following steps: (1) Based on the neighborhood grayscale features, the two types of non-background pixels, star points and blind pixels, are roughly identified. After ignoring the non-background pixels, the mean and standard deviation of all pixels in the star map are calculated, and the mean and standard deviation of each column of pixels are calculated. Based on the mean and standard deviation of each column of pixels, two moment matching correction coefficients for each column of pixels are calculated. The correction coefficients are moment matching correction gain coefficient and bias coefficient. (2) Moment matching correction is performed on each column of pixels using moment matching correction coefficients to correct stripe noise; (3) Based on the star map after moment matching correction, use the same method in step (1) to identify two types of non-background pixels: star points and blind pixels, and calculate the second-order difference descriptor and Gaussian correlation descriptor for each non-background pixel respectively. (4) Train a linear support vector machine, classify it based on the descriptors of non-background pixels, and assign it star point labels or blind element labels; (5) Using the Gaussian distribution characteristics of the gray values ​​of star pixels in the image, the pixels that are misjudged as blind cells in the periphery of the star are corrected. (6) Perform four-neighbor mean compensation on pixels labeled as blind cells; (7) Perform four-neighbor mean filtering on the entire star map to suppress Gaussian noise.

[0008] Furthermore, step (1) includes: calculating the difference between the median gray value of pixels in the neighborhood of the center pixel and the gray value of the center pixel.

[0009] Furthermore, in step (3), calculating the second-order difference descriptor of each non-background pixel specifically involves: calculating the normalized weighted absolute value of the second-order difference of the pixels within the cross-shaped window of the neighborhood of the center pixel; The calculation of the Gaussian correlation descriptor for each non-background pixel is specifically as follows: calculate the Pearson correlation coefficient between the pixel gray level in the square window of the center pixel's neighborhood and the value of a two-dimensional Gaussian function with a specific coefficient, so as to reflect that the gray level distribution of the star points imaged on the focal plane of the star sensor imaging system conforms to the characteristics of a two-dimensional Gaussian function.

[0010] Furthermore, step (4) includes: Star points and blind pixels in several real-world shortwave infrared star images were manually extracted and classified to generate a training set and a test set of non-background pixels. Configure the penalty parameters and train a linear support vector machine using the training set; Obtain the support vector machine prediction function; Use the test set to verify the classification accuracy of the support vector machine.

[0011] Furthermore, in step (5), correcting pixels misclassified as blind pixels within the circumpolar diffuse spot includes: For all pixels labeled as star points, within a pixel window centered on the star point, calculate the estimated gray value of its periphery speckle pixel based on the Gaussian function; Within the window, examine pixels labeled as blind pixels. If their grayscale values ​​are close to this estimate, correct their labels to periphery diffuse speckle pixels.

[0012] This invention also provides a noise reduction system for short-wave infrared star maps, implementing the aforementioned noise reduction method, comprising: The background parameter accumulation module is used to accumulate the gray values ​​and the squared values ​​of the gray values ​​of the entire image and each column, and record the number of effective pixels in each column. The moment matching coefficient calculation module is used to calculate the mean and standard deviation of the entire image and each column, and then calculate the moment matching correction coefficient for stripe noise; The moment matching fringe compensation module is used to perform moment matching correction on the non-uniformity noise of stripes in the image; The pixel descriptor and classification module is used to calculate the descriptor of a pixel and classify the pixels using a linear support vector machine, outputting pixel labels. The blind pixel compensation module is used to compensate for pixels labeled as blind pixels. The mean filtering module is used to perform four-neighbor mean filtering on the entire star map.

[0013] Furthermore, the background parameter accumulation module includes: The pixel row cache module is used to generate pixel templates in the column direction; The median determination module is used to calculate the median gray value of pixels within the template and to roughly identify whether a pixel is a non-background pixel based on the median value. The data accumulation module is used to cache and accumulate grayscale statistical values.

[0014] Furthermore, the pixel depiction and classification module includes: The input control module is used for handshaking and data transmission with the main module; The pixel row cache module is used to generate pixel templates in the column direction; The template generation module is used to generate square pixel templates from column-direction pixel templates. The median determination module is used to calculate the median gray value of pixels within the template and to roughly identify whether a pixel is a non-background pixel based on the median value. The second-order difference descriptor calculation module is used to calculate the second-order difference descriptor of a pixel; Gaussian correlation descriptor calculation module, used to calculate the Gaussian correlation descriptor of a pixel; The support vector machine prediction module is used to perform pixel classification using support vector machines. The output control module is used for handshaking and data transmission with the slave module.

[0015] Furthermore, it also includes a peri-spot pixel correction module, used to correct peri-spot pixel labels that are misclassified as blind cells; It also includes an HDMI output module for outputting the noise reduction results.

[0016] Furthermore, the HDMI output module includes: The caching module is used to cache the noise-reduced output pixel data; The image generation module is used to convert the noise-reduced output data in the buffer into a video frame data stream based on the row count and column count signals; The HDMI interface adapter module is used for HDMI encoding, converting video frame data streams into video frame transmission structures and outputting the signal to the HDMI interface.

[0017] The technical solution of the present invention can achieve the following beneficial technical effects: 1. This invention proposes a second-order difference descriptor and a Gaussian correlation descriptor for blind pixel noise, which respectively describe the neighborhood gray-level features of blind pixels and star points, and have invariance to linear gray-level transformations.

[0018] 2. This invention establishes a star point blind pixel dataset and trains a support vector machine to classify blind pixels and star point descriptors, thereby accurately compensating for blind pixels. On the real-world star image sample test set, the classification accuracy reaches 99.95%. Under normal noise levels (Gaussian noise standard deviation of 3 to 16), the accuracy and recall of star point extraction after noise reduction are improved compared with existing methods.

[0019] 3. This invention applies the noise reduction method to the FPGA hardware platform, with an average processing time of 8.3 milliseconds for a single image. The processing efficiency is more than 70 times higher than that of software algorithms, meeting the requirements for real-time noise reduction. Attached Figure Description

[0020] Figure 1 This is a flowchart illustrating the method implementation of Embodiment 1 of the present invention; Figure 2 The typical shortwave infrared star pattern stripe correction results of the present invention are shown in the following figures: (a) the column mean and column standard deviation curve of the original image, (b) the column mean and column standard deviation curve after correction by the traditional method, and (c) the column mean and column standard deviation curve after correction by the moment matching method that ignores non-background pixels. Figure 3 This is a schematic diagram illustrating the difference in neighborhood grayscale features between star points and blind cells in this invention; Figure 4 This is a diagram showing the classification results of blind cells and star points in this invention; Figure 5 The star extraction accuracy of this invention varies with noise level; Figure 6 The star extraction recall rate of this invention varies with noise level; Figure 7 The signal-to-noise ratio of the denoised image as a function of noise level according to the present invention; Figure 8 This is a schematic diagram of the FPGA system composition according to Embodiment 2 of the present invention; Figure 9 This is a schematic diagram of the hardware acceleration principle of the FPGA system of the present invention. Detailed Implementation

[0021] To make the objectives, technical solutions, and advantages of this invention clearer, the invention will be further described in detail below with reference to specific embodiments and the accompanying drawings. It should be understood that these descriptions are merely exemplary and not intended to limit the scope of the invention. Furthermore, descriptions of well-known structures and techniques are omitted in the following description to avoid unnecessarily obscuring the concept of the invention.

[0022] The present invention will now be described in detail with reference to the accompanying drawings and embodiments.

[0023] The first aspect of this invention provides a method for denoising shortwave infrared star maps; please refer to [link to relevant documentation]. Figure 1The method includes: S101. Based on the neighborhood grayscale features, roughly identify two types of non-background pixels: star points and blind pixels. After ignoring the non-background pixels, calculate the mean and standard deviation of all pixels in the star map, and calculate the mean and standard deviation of each column of pixels. Based on the mean and standard deviation of each column of pixels, calculate two moment matching correction coefficients for each column of pixels.

[0024] The correction coefficients include the gain coefficient and the bias coefficient.

[0025] In this invention, "coarse recognition" means to detect as many non-background pixels as possible, without requiring that all detected pixels be non-background pixels. That is, the detection of non-background pixels requires a high recall rate. "Coarse recognition" is quantitatively defined as the detection recall rate of the target pixel is not less than 90%.

[0026] Step S101 includes: calculating the difference between the median gray value of the pixels in the neighborhood of the center pixel and the gray value of the center pixel. The difference reflects the contrast between the center pixel and the neighboring pixels. If the contrast is high (more than three times the standard deviation of the image), the center pixel is very likely to be a non-background pixel and will not participate in the calculation of the mean and standard deviation, thereby reducing the calculation error of the moment matching correction coefficient.

[0027] Specifically, in step S101, when calculating the mean and standard deviation of all pixels in the star map, if non-background points such as star points and blind pixels are included in the statistical scope, star points and overheated blind pixels will cause the mean and standard deviation to be too large, while dead blind pixels will cause the mean and standard deviation to be too small. All three will introduce errors into the grayscale statistics. The special grayscale of star points and blind pixels is not caused by stripe non-uniformity noise, so when correcting stripe noise, star points and blind pixels should be ignored before calculating the mean and standard deviation. Considering that ignoring star points and blind pixels is only a preprocessing step before calculating grayscale features, it is only necessary to ensure that star points and blind pixels are ignored. The impact of a few background pixels being misjudged and ignored is minimal. The recognition algorithm does not need strong adaptability, and slightly stricter conditions can be set to ensure that all star points and blind pixels are ignored.

[0028] Therefore, this embodiment utilizes a median-based thresholding method to coarsely identify star points and blind pixels, two types of non-background pixels. It calculates the mean and standard deviation of all pixels other than background pixels and then calculates the moment matching correction gain coefficient and bias coefficient. For each pixel in the image, the median of pixels in a 7×1 window centered on that pixel is calculated, and the difference between the median and the central pixel is also calculated. This difference reflects the contrast between the central pixel and its neighboring pixels. If the contrast between the central pixel and its neighboring pixels is high, the central pixel is highly likely to be a background pixel and can participate in the calculation of the mean and standard deviation. If the contrast is high (more than 3 times the standard deviation of the image), the central pixel is highly likely to be a star point or blind pixel, and is not included in the calculation of the mean and standard deviation, thereby reducing the calculation error of the moment matching correction coefficient.

[0029] Based on the neighborhood grayscale features, star points and blind pixels are roughly identified as two types of non-background pixels. The identification formula is as follows:

[0030] in, Indicates the category of pixels. This indicates that the pixel belongs to the background. This indicates that the pixel is a suspicious point, possibly a blind pixel or a star-shaped pixel. The median grayscale value within a 7×1 window. The standard deviation is three times the image standard deviation. When the image contains column-oriented stripe noise, the standard deviation is... Replace with the mean of the standard deviations of each column of the image.

[0031] Calculate two moment matching correction coefficients for each column of pixels based on the mean and standard deviation of each column. This involves calculating the moment matching correction gain coefficient and bias coefficient after ignoring non-background pixels, as shown in the following formula:

[0032]

[0033] in, and For the first The correction gain and bias coefficients for each column pixel are the same; the correction coefficients for pixels in the same column are identical. and For the first correction The mean and standard deviation of the grayscale values ​​of the column pixels. and For reference purposes, the mean and standard deviation of the entire graph are used as reference values ​​in this embodiment.

[0034] Using a 7×1 window with median thresholding in the column direction has the following advantages: First, due to the presence of column-direction fringe noise, the grayscale of neighboring pixels in the row direction is not continuous. Therefore, the bar-shaped window in the column direction is not affected by fringe noise, which is better than a square window. Second, compared to the mean, the median can better avoid the influence of outliers with a small amount of data, and the estimation of the background grayscale in the neighborhood is more accurate. Third, a window with a height of 7 pixels can span large blind pixel clusters and star points, and theoretically can identify all blind pixel pixels in a blind pixel cluster with a diameter of 3. However, blind pixel clusters with a diameter greater than 3 are extremely rare in normal short-wave infrared star images, and a larger window also means more computation. Therefore, a 7×1 window is more suitable. Experiments show that the median-based thresholding method in this embodiment can achieve a recall rate of no less than 94% for star point and blind pixel detection.

[0035] Experiments show that the "median-based threshold judgment method" in this embodiment can achieve a recall rate of no less than 94% for star points and blind pixels.

[0036] S102. Use the moment matching correction coefficient to perform moment matching correction on stripe noise for each column of pixels.

[0037] Specifically, in S102, the moment matching method is based on the condition that the background gray level in the image is uniform. It assumes that the mean and standard deviation of each column of pixels in the image are consistent. The background of the short-wave infrared star image is smooth and the gray level is uniform, which meets this condition. The moment matching method adjusts the mean and standard deviation of each column to the reference mean and standard deviation, thereby compensating for the non-uniformity noise of the stripes. Pixels in the same column have the same moment matching correction coefficient, while pixels in different columns have different correction coefficients. The moment matching correction coefficient is used to perform moment matching correction for stripe noise on each column of pixels. Moment matching correction is a linear correction. The corrected pixel gray level can be obtained by applying the moment matching correction gain coefficient and bias coefficient to the original pixel gray level in the form of a linear function.

[0038] The formula for calculating moment matching correction is as follows:

[0039] in, Before calibration grayscale of the pixel, This is the corrected grayscale. and For the first The correction gain coefficient and bias coefficient of the column pixels.

[0040] For comparison, we selected a traditional moment matching method that does not ignore non-background pixels as the experimental method. Please refer to [link to relevant documentation]. Figure 2(a) is the column mean and column standard deviation curve of a typical shortwave infrared star map; (b) is the column mean and column standard deviation curve after correction using the traditional moment matching method without ignoring non-background pixels; and (c) is the column mean and column standard deviation curve after correction using the method of this embodiment. Compared with the traditional method, the mean and standard deviation obtained by ignoring star points and blind pixels in this embodiment are more accurate, and the correction effect on the column mean and column standard deviation is better. After correction, the grayscale characteristics of each column of pixels are consistent. After correction using the method of this embodiment, the dispersion of all column means is reduced to 24% of that of the traditional method, and the dispersion of all column standard deviations is reduced to 7% of that of the traditional method.

[0041] S103. Based on the star map after moment matching correction, identify two types of non-background pixels, namely star points and blind pixels, using the same method as in S101, and calculate the second-order difference descriptor and Gaussian correlation descriptor for each non-background pixel.

[0042] In step S103, calculating the second-order difference descriptor for each non-background pixel specifically involves calculating the normalized weighted absolute value of the second-order difference of pixels within the cross-shaped window of the center pixel's neighborhood to reflect the rapid gray-level change in the blind pixel neighborhood.

[0043] In step S103, calculating the Gaussian correlation descriptor for each non-background pixel specifically involves calculating the Pearson correlation coefficient between the pixel grayscale value within the square window of the center pixel's neighborhood and the value of a specific two-dimensional Gaussian function, so as to reflect that the grayscale distribution of the star points imaged on the focal plane of the star sensor imaging system conforms to the characteristics of a two-dimensional Gaussian function.

[0044] Specifically, in S103, the same median-based thresholding method as in S101 is used to coarsely identify star points and blind pixels, two types of non-background pixels, and the second-order difference descriptor and Gaussian correlation descriptor are calculated for each non-background pixel. This step ensures that there are no blind pixels in the background pixels, so this embodiment does not need to calculate the descriptor of the background pixels, thereby saving computational resources.

[0045] Specifically, in S103, the second-order difference descriptor of each non-background pixel is calculated to depict the feature of the blind pixel neighborhood where the gray-level change rate is faster than that of the star point, that is, the feature where the sum of the absolute values ​​of its second-order differences is larger than that of the star point. A star point appears as a bright diffuse spot in the image, its gray-level characteristics conforming to a two-dimensional Gaussian function, with gradual gray-level changes. A blind pixel appears as an isolated bright or dark spot in the image, its gray-level characteristics conforming to an impulse function, with drastic gray-level changes and sharp edges. Taking a simulated star point and a blind pixel with a background gray-level of 70 and a peak gray-level of 255 as an example, the sum of the absolute values ​​of the second-order differences of the star point is 400, while that of the blind pixel is 740, which is 1.85 times that of the star point. Figure 3 As shown.

[0046] The second-order difference descriptor uses a cross-shaped window with a width and height of 7 pixels. It calculates the absolute values ​​of the second-order differences in the x and y directions of pixels within the neighborhood of the center pixel, forming a cross-shaped window with a width and height of 5. Each absolute value of the second-order difference is weighted according to its distance from the center pixel. The sum of all weighted absolute values ​​of the second-order differences is then normalized by dividing by the difference between the center pixel and the image mean, yielding the second-order difference descriptor for that center pixel. (Coordinates are in...) The formula for calculating the second-order difference descriptor of a pixel is as follows.

[0047]

[0048] in, Here is the weighting function, and the function value is related to the coordinates. Centrally symmetric. and The weighting function is a second-order difference in the x and y directions, and is adjusted experimentally based on the Gaussian function.

[0049] The second-order difference descriptor is invariant to linear grayscale transformations. First, the descriptor is insensitive to brightness changes because the difference calculation itself eliminates the bias applied to the image. Second, the descriptor is insensitive to contrast changes because normalization using the difference between the center pixel and the image mean eliminates the effect of grayscale gain.

[0050] Specifically, in S103, the Gaussian correlation descriptor for each non-background pixel is calculated to depict the grayscale distribution of the star points imaged on the focal plane of the star sensor imaging system as conforming to the characteristics of a two-dimensional Gaussian function. The slight defocus imaging characteristics of the star sensor determine that the grayscale values ​​of the neighboring pixels of the ideal star point image on the star map have a very strong correlation with the Gaussian function. Since the diameter of the star point blur spot is generally 5 pixels or less, this embodiment selects a 5×5 pixel window for calculating the correlation coefficient. The grayscale values ​​of the 25 pixels within the window are used as ordered array one, and the two-dimensional discrete Gaussian function values ​​are used as ordered array two. The Pearson correlation coefficient between the two is calculated and used as the Gaussian correlation descriptor of the center pixel. The coordinates are in... The formula for calculating the Gaussian correlation descriptor of a pixel is as follows.

[0051]

[0052] in, It is a sequence of pixel grayscale values. It is a two-dimensional discrete Gaussian function. express and covariance, and This represents the standard deviation of the two values.

[0053] Because the Pearson correlation coefficient is invariant to linear transformations of the variable, the Gaussian correlation descriptor is insensitive to linear changes in pixel grayscale, meaning that normalization of the input data is unnecessary. Furthermore, the coefficient values ​​range from -1 to 1, facilitating quantization.

[0054] S104. Train a linear support vector machine, classify it based on the descriptors of non-background pixels, and assign it star point labels or blind pixel labels.

[0055] In step S104, training the linear support vector machine includes the following steps: Star points and blind pixels in several real-world shortwave infrared star images were manually extracted and classified to generate a training set and a test set of non-background pixels. Configure the penalty parameters and train a linear support vector machine using the training set; Obtain the support vector machine prediction function; Use the test set to verify the classification accuracy of the support vector machine.

[0056] Specifically, in S104, this embodiment trains a linear support vector machine to classify descriptors. In this embodiment, 235 star point samples, 5133 overheated blind pixel samples, and 4283 dead blind pixel samples are manually extracted and labeled from real-world shortwave infrared star images. An 11×11 square region surrounding the central pixel is cropped and stored. Information such as the sample category, source image, and row / column number is recorded to generate a shortwave infrared image star point blind pixel dataset. The dataset is divided into an 80% training set and a 20% test set.

[0057] The relevant machine learning support packages are called using Python, and a support vector machine is trained using samples from the training set. Before training, an appropriate penalty parameter must be configured. A larger penalty parameter, i.e., a greater penalty for misclassification, forces more samples to meet the classification criteria, but may lead to overfitting; a smaller penalty parameter may lead to underfitting. In this embodiment, the penalty parameter is set to 10 through repeated experiments and adjustments. A linear kernel function is used during training to train a linear support vector machine.

[0058] After training, a linear prediction function is obtained, and its expression is as follows.

[0059]

[0060] in, For pixels The second-order difference descriptor, This is a Gaussian correlation descriptor.

[0061] The samples in the test set were classified sequentially using a prediction function, and the classification results were compared with the true class of each sample. The classification accuracy of the support vector machine on the test set was 99.95%. (See also...) Figure 4 .

[0062] S105. Utilize the Gaussian distribution characteristics of the grayscale of star-point pixels in the image to correct pixels that are misclassified as blind pixels within the diffuse spots around the stars, thereby reducing the misclassification rate of star-point pixels.

[0063] In step S105, correcting pixels misclassified as blind cells within the circumferential diffuse spot includes the following steps: For all pixels labeled as star points, within a pixel window centered on the star point, calculate the estimated gray value of its periphery speckle pixel based on the Gaussian function; Within the window, examine pixels labeled as blind pixels. If their grayscale values ​​are close to this estimate, correct their labels to periphery diffuse speckle pixels.

[0064] Specifically, in step S105, due to the differences in the second-order difference and Gaussian correlation properties of pixels within the circumferential diffuse spot compared to the star center pixel, some circumferential diffuse spot pixels are classified as blind pixels after subclassification. It is necessary to correct the classification of these pixels to prevent compensation for the circumferential diffuse spot pixels, which could lead to errors in subsequent star centroid localization. The correction process is as follows: For each pixel classified as a star, within a 5×5 pixel window centered on it, an estimated value of the grayscale of its circumferential diffuse spot pixel is calculated using a Gaussian function; within this window, pixels classified as blind pixels are checked, and if their grayscale values ​​are close to this estimated value, their labels are corrected to circumferential diffuse spots.

[0065] S106. Perform four-neighbor mean compensation on pixels labeled as blind pixels.

[0066] Specifically, in step S106, based on the continuity of image gray levels, blind pixels can be compensated using the gray levels of their neighboring areas. This embodiment uses the average gray level of four neighboring areas for blind pixel compensation, and the compensation calculation formula is as follows.

[0067]

[0068] in, for The grayscale value after pixel compensation for The grayscale values ​​of the four neighboring pixels of a pixel. If the first If the first four neighboring pixels are blind pixels, then the average gray value of the image is used instead of the first. gray values ​​of each neighborhood .

[0069] S107. Use four-neighbor mean filtering to suppress Gaussian noise.

[0070] Specifically, in step S107, to suppress background Gaussian noise, a four-neighbor mean filter template is used to perform spatial domain filtering on the entire image. In traditional noise reduction methods, due to incomplete blind pixel compensation, forcibly using mean filtering will cause the grayscale features of blind pixel noise to be more similar to those of star points after filtering, resulting in greater confusion between star points and blind pixels and introducing more difficult-to-suppress spurious star noise. In this embodiment, because the blind pixel compensation accuracy is very high, using mean filtering to suppress Gaussian noise will not produce additional spurious stars, which is one of the advantages of this method. The calculation formula for four-neighbor mean filtering is as follows:

[0071] in, This is the filtered grayscale value. for The grayscale values ​​of the four neighboring pixels of a pixel. .

[0072] The difference between mean filtering in S107 and mean compensation in S106 is that S106 only compensates for blind pixels, while S107 performs mean filtering on all pixels of the entire image.

[0073] The following simulation examples illustrate the star map denoising effect of this invention. In the simulation examples, existing first-order difference delineation methods and traditional 3σ methods in the field of short-wave infrared star map denoising are selected as control methods to evaluate the performance of this invention. Specifically, the first-order difference delineation method uses a vertical 9×1 template to calculate the sum of the first-order differences of the neighborhood as the pixel delineator, uses K-Means clustering to distinguish star points and blind pixels, and uses moment matching to suppress stripe non-uniformity noise. The traditional 3σ method uses three times the standard deviation of the image as a threshold, marks pixels with gray levels greater than the threshold and whose four neighboring pixels all have gray levels less than the threshold as blind pixels and compensates for them, and uses single-point correction based on histogram maxima to suppress stripe non-uniformity noise.

[0074] First, we compared the changes in star extraction accuracy and recall with noise levels after denoising using various methods. Please refer to [link to relevant documentation]. Figure 5 and Figure 6 The simulation parameters are set as follows: stripe noise gain standard deviation is 0.05, bias standard deviation is 10.0, and blind pixel noise probability is 1.5 × 10⁻⁶. -4The Gaussian noise standard deviation ranged from 1 to 16, and 1000 different simulated star maps were used for testing. Simulation results show that under normal noise levels, such as when the Gaussian noise standard deviation is 3 to 16, the star extraction accuracy and recall of this invention are significantly improved compared to existing methods. When the Gaussian noise standard deviation is 6, the star extraction accuracy of this invention is improved by 30% compared to existing methods, and the star extraction recall is improved by 28%. When the Gaussian noise standard deviation is 16, the background noise is already quite severe, but the star extraction accuracy of this invention still remains above 92%, and the recall is still improved by 25% compared to existing methods.

[0075] Second, the changes in the average signal-to-noise ratio of the image after denoising by various methods with varying noise levels were compared. Please refer to [link to relevant documentation]. Figure 7 The simulation parameters are set as follows: stripe noise gain standard deviation is 0.05, bias standard deviation is 10.0, and blind pixel noise probability is 1.5 × 10⁻⁶. -4 The Gaussian noise standard deviation ranged from 1 to 16. 1000 different simulated star images were used for testing, and the average signal-to-noise ratio (SNR) for 6th magnitude stars and brighter stars was calculated as the evaluation metric. Simulation results show that the average SNR after denoising using this invention is improved compared to existing methods under normal noise levels. When the Gaussian noise standard deviation is 6, the SNR after denoising using this invention is 8.8 dB higher than the original image, and 4.0 dB higher than existing methods. When the Gaussian noise standard deviation is 16, the background noise is already quite severe; the denoised image still maintains a SNR of 15 dB, an improvement of 4.1 dB compared to the original image, and 3.6 dB higher than existing methods.

[0076] Example 2: This example provides an FPGA. Please refer to [link / reference]. Figure 8 The FPGA 200 includes, but is not limited to: Background parameter accumulation module 201 is used to accumulate the gray values ​​and the squared values ​​of the gray values ​​of the entire image and each column, and record the number of effective pixels in each column; The moment matching coefficient calculation module 202 is used to calculate the mean and standard deviation of the entire image and each column, and then calculate the moment matching correction coefficient of the stripe noise; The moment matching fringe compensation module 203 is used to perform moment matching correction on the non-uniformity noise of the fringe in the image. The pixel descriptor and classification module 204 is used to calculate the descriptor of the pixel and classify the pixel using a linear support vector machine, and output the pixel label. The blind pixel compensation module 205 is used to compensate for pixels labeled as blind pixels; The mean filtering module 206 is used to perform four-neighbor mean filtering on the entire star map.

[0077] Specifically, the background parameter accumulation module 201 includes: Pixel row cache module 2011 is used to generate column-direction pixel templates; The median judgment module 2012 is used to calculate the median gray value of pixels within the template and roughly identify whether a pixel is a non-background pixel based on the median value. The data accumulation module 2013 is used to cache and accumulate grayscale statistical values.

[0078] In the pixel row buffer module, since pixel data is input sequentially row by row, if pixel values ​​across multiple rows of the template need to be read simultaneously at a certain moment, the previously input pixels must be buffered. In this embodiment, a maximum of 7 rows and 1 column of pixel data is needed simultaneously, so only the first 6 rows of pixels need to be buffered. Each row buffer is essentially a first-in, first-out (FIFO) memory, and the depth of each FIFO is equal to the width of the image. A 6-row buffer requires 6 FIFOs. Input pixels are first stored in the first FIFO. When the first FIFO is full, its output is stored in the second FIFO, and so on. When all 6 FIFOs are full, the pixel input signal and the outputs of the 6 FIFOs in one clock cycle form a 7-row, 1-column pixel template. In the median determination module, after each clock edge, the pixel grayscale values ​​in the template are input to the median calculation module. In this embodiment, the median calculation module is a combinational logic module consisting of 14 comparison nodes, each node being a comparator. After inputting seven data points, the module outputs the median. The median is then subtracted from the pixel value and compared with a threshold. Based on the comparison result, if the pixel is a background point, its grayscale value is accumulated and stored in RAM.

[0079] In the data accumulation module, since image data is input sequentially row by row, it is impossible to accumulate all pixel values ​​of a single column at once. Therefore, RAM is used to temporarily store the sum of grayscale values ​​for each column. When new data is input, the sum of the corresponding column is retrieved from RAM, added to the new data, and then stored back into RAM. The bit width of RAM is determined by the maximum value of the data to be recorded. Taking an image with 616×512 pixels as an example, the maximum number of pixels in each column is 512 < 2^10, the maximum sum of grayscale values ​​is 512 × 255 = 130560 < 2^17, and the maximum sum of squared grayscale values ​​is 512 × 255^2 = 130560 < 2^25. Therefore, the bit width of RAM is 10 + 17 + 25 = 52 bits. The depth of RAM is the number of image columns, 616.

[0080] After traversing all pixels, the accumulated result is output. The output of an image will continue for the number of rows + 2 clock cycles. The first two data points output are the sum of gray levels and the sum of squared gray levels of the entire image, respectively. The subsequent data output are the statistical data of each column. The first 10 bits of a single output data point are the number of valid pixels in the column, the middle 17 bits are the sum of gray levels in the column, and the last 25 bits are the sum of squared gray levels in the column.

[0081] Specifically, in the moment matching coefficient calculation module 202, the calculation is controlled by a finite state machine with 11 states. State 0 is an idle state; when the input enable signal is high, it jumps to state 1. State 1 enables data reception, informing the previous module to send data, and receives the total grayscale sum and grayscale sum of squares data. State 2 divides the total grayscale sum by the total number of pixels in the image to obtain the total grayscale mean. State 3 calculates the grayscale standard deviation using the grayscale sum of squares and the grayscale mean. State 4 outputs the mean and standard deviation data. State 5 enables data reception, receiving the effective pixel count, grayscale sum, and grayscale sum of squares for a single column. State 6 divides the total grayscale sum by the effective pixel count to obtain the column grayscale mean. State 7 calculates the column variance using the column grayscale sum of squares and the column grayscale mean. State 8 takes the square root of the variance to obtain the column standard deviation. State 9 calculates the column moment matching gain parameter. In state 10, the column moment matching bias parameters are calculated and output. Then, the system jumps to state 5 to calculate the parameters for the next column. An internal counter is included; the system jumps to state 0 after all column parameters have been calculated.

[0082] Specifically, the moment matching stripe compensation module 203 includes a pixel counter. After receiving an input pixel, the module calculates the column number of the pixel based on the counter and uses the column number as an address to read the moment matching correction coefficient of the corresponding column from the sequential write random access memory. The sequential write random access memory is a type of memory designed in this embodiment. Data is written sequentially from low addresses and read randomly according to specified addresses. Data is not cleared when reading; instead, data is cleared through a specially designed data clearing port. This read / write mechanism matches the requirement of single sequential write and multiple random reads in this embodiment. The pixel grayscale is linearly corrected using the moment matching correction gain coefficient and bias coefficient to obtain the output pixel grayscale. In this module, moment matching correction for each pixel only involves multiplication and addition operations, without time-consuming operations such as division and square root.

[0083] Specifically, the pixel depiction and classification module 204 includes: The input control module 2041 is used for handshaking and data transmission with the main module; Pixel row cache module 2042 is used to generate column-direction pixel templates; Template generation module 2043 is used to generate a square pixel template using column direction pixel template; The median judgment module 2044 is used to calculate the median gray value of pixels within the template and roughly identify whether a pixel is a non-background pixel based on the median value. Second-order difference descriptor calculation module 2045, used to calculate the second-order difference descriptor of a pixel; Gaussian correlation descriptor calculation module 2046 is used to calculate the Gaussian correlation descriptor of a pixel; Support Vector Machine Prediction Module 2047 is used for pixel classification using a support vector machine. Output control module 2048 is used for handshaking and data transmission with slave modules.

[0084] Specifically, the pixel depiction and classification module 204 features a pipelined design. Since the module needs to perform calculations on each pixel in the image sequentially, to improve computational efficiency, the module breaks down the calculation process into multiple steps, each step consuming one clock cycle. Data between steps is buffered using registers. This structure allows each step to run in parallel, forming a clock-level pipelined structure. This structure enables the calculation of one pixel to consume only one clock cycle.

[0085] Specifically, in the pixel delineation and classification module 204, the input control module 2041 performs a handshake and data transmission with the main module, transmitting image data to the pixel row buffer module 2042 to generate a column-oriented 7×1 pixel template. Through the buffer in the register group of the template generation module 2043, the column-oriented 7×1 template is converted into a square 7×7 template. The median judgment module 2044 roughly identifies non-background pixels based on the pixel grayscale of the neighborhood of the center pixel within the template. The second-order difference descriptor calculation module 2045 and the Gaussian correlation descriptor calculation module 2046 calculate two types of descriptors for the pixels, and the support vector machine prediction module 2047 performs pixel classification. Finally, the output control module 2048 outputs the data.

[0086] Specifically, the second-order difference descriptor calculation module 2045 includes 10 weighted second-order difference absolute value calculation modules and 1 divider. Ten groups of three adjacent pixels from a 7×7 cross-shaped pixel template are input into the weighted second-order difference absolute value calculation modules. These modules are entirely composed of combinational logic circuits and can calculate the second-order difference absolute values ​​of the three input pixels, assigning them specified weights. The 10 second-order difference values ​​output by the calculation modules are summed and used as the dividend input to the divider. The absolute value of the difference between the center pixel and the grayscale mean is used as the divisor input to the divider; the resulting quotient is the second-order difference descriptor.

[0087] Specifically, the Gaussian correlation descriptor calculation module 2046 includes a divider, a square root calculator, and several addition and multiplication logic operations. The module first calculates using addition and multiplication. , , , ( Indicates pixel grayscale. (This represents the Gaussian function). , , , A constant ( For data volume, here The square root calculator is then used to calculate the result, which is input as a parameter. Finally, the Pearson correlation coefficient is calculated using a divider, which is the Gaussian correlation descriptor.

[0088] Specifically, in the support vector machine prediction module 2047, the descriptors are classified according to the pre-trained linear support vector machine prediction function to obtain the classification labels of the pixels.

[0089] Specifically, in the blind pixel compensation module 205, two sets of row buffers and a pixel template generator are used to cache the pixel grayscale and pixel label, respectively. The average value of the four neighboring pixels of the center pixel is used as the compensated pixel grayscale. If there is a pixel labeled as a blind pixel in the four neighboring pixels, the average grayscale value of the entire image is used to replace the grayscale value of that neighboring pixel.

[0090] Specifically, in the mean filtering module 206, a four-neighbor mean template is used to perform spatial domain filtering on the entire image, thereby suppressing background Gaussian noise. During module operation, a pixel row buffer is used to buffer the latest two rows of pixels, thereby generating a cross-shaped pixel template with dimensions of 3 and a total of 5 pixels. The mean of the 5 pixels is calculated and used as the new grayscale value of the center pixel of the cross-shaped template, which is then output.

[0091] Optionally, such as Figure 8 As shown, the system also includes: Peripheral speckle pixel correction module 207 is used to correct the peripheral speckle pixel labels that are misidentified as blind cells; HDMI output module 208 is used for outputting the noise reduction results.

[0092] Specifically, in the circumpolar diffuse spot pixel correction module 207, the module determines whether the center pixel is a circumpolar diffuse spot pixel that has been misclassified as a blind pixel based on the grayscale and pixel label of its neighboring pixels. If so, its label is corrected to that of a circumpolar diffuse spot pixel. The module uses two sets of row buffers and a pixel template generator to cache pixel grayscale and pixel label respectively, thereby enabling simultaneous reading of their 5×5 templates. The module uses 24 judgment sub-modules, each corresponding to a neighboring pixel. Each sub-module can determine whether the center pixel and a neighboring pixel form a Gaussian weighted relationship based on their grayscale and positional relationship. If the center pixel label is a blind pixel, and one or more of the 24 neighboring pixels have a label of "star point" that meets the judgment conditions, then the center pixel has been misclassified as a blind pixel and its label needs to be corrected to that of a circumpolar diffuse spot pixel.

[0093] Specifically, the HDMI output module 208 includes: Cache module 2081 is used to cache noise-reduced output pixel data; Image generation module 2082 is used to convert the noise-reduced output data in the buffer into a video frame data stream based on the row count and column count signals; The HDMI interface adapter module 2083 is used for HDMI encoding, converting video frame data streams into video frame transmission structures and outputting signals to the HDMI interface.

[0094] It should be noted that, as Figure 8 As shown, modules that are always included in FPGA 200 are indicated by solid boxes, such as background parameter accumulation module 201; modules that may or may not be included in FPGA 200 are indicated by dashed boxes, such as stellar speckle pixel correction module 207.

[0095] In this embodiment, the algorithm is accelerated by designing an FPGA hardware module pipeline. For a schematic diagram of the principle of algorithm acceleration using the hardware module pipeline, please refer to [link to relevant documentation]. Figure 9 The noise reduction algorithm of this invention can be broken down into multiple algorithm steps. In software algorithms, multiple algorithm steps are connected in series and run sequentially, but only one step can run at a time, resulting in slow execution speed. In FPGA, different hardware modules are used to implement each algorithm step. The advantage of this is that each hardware module can work independently without interfering with each other, achieving algorithm parallelism. After a module finishes processing one image, it can immediately start processing the next image without waiting for other modules. This pipelined structure reduces the idle time of each processing module, fully utilizes the parallel operation advantage of FPGA, and improves algorithm efficiency.

[0096] To verify the acceleration capability of the FPGA for the algorithm, a software algorithm implemented in MATLAB was selected as a comparison for the experiment, comparing the noise reduction speed of the software and the FPGA hardware.

[0097] The software algorithm implemented in MATLAB was performed on a computer with an Intel(R) Core(TM) i5-8300H processor, a base frequency of 2.3GHz, a maximum turbo frequency of 4GHz, 16GB of RAM, and MATLAB version R2016b.

[0098] The FPGA 200, operating normally at 50MHz, processed 100 images (from the first pixel input of the first image to the last pixel output of the last image) in 41,720,053 clock cycles, or 0.8344 seconds. The average processing time per image was 8.3 milliseconds. The MATLAB-implemented software denoising algorithm processed 100 images in 58.63 seconds, averaging 586.3 milliseconds per image. The FPGA hardware implementation of the denoising algorithm shows a significant improvement in processing efficiency compared to the software implementation, increasing speed by more than 70 times. The comparison of image processing speed between the software and FPGA implementations of this invention with the first-order difference depiction method and the traditional 3σ method is shown in the table below.

[0099] Table 1 Software implementation of this invention 586.3 FPGA implementation of this invention 8.3 First-order difference description method 23.3 Traditional 3σ method 13.5 In summary, this invention provides a method and system for denoising short-wave infrared star maps. It includes: calculating the moment matching correction coefficient for each column of pixels in the image; performing moment matching correction for stripe noise on each column of pixels using the moment matching correction coefficient; identifying non-background pixels that may be star points or blind pixels based on the moment matching corrected star map, and calculating the second-order difference descriptor and Gaussian correlation descriptor for each non-background pixel; training a support vector machine to classify non-background pixels based on their descriptors. This invention addresses the challenges of achieving both high accuracy and low false negative rate in blind pixel identification, the difficulty in extracting weak star points after denoising, and the mutual constraint between extraction accuracy and recall in other short-wave infrared star map denoising methods by studying real-time denoising of stripe non-uniform noise and blind pixel noise in short-wave infrared star maps. This improves the noise suppression performance of short-wave infrared star sensors and is of great significance for the normal operation of all-weather star sensors.

[0100] It should be understood that the specific embodiments described above are merely illustrative or explanatory of the principles of the invention and do not constitute a limitation thereof. Therefore, any modifications, equivalent substitutions, improvements, etc., made without departing from the spirit and scope of the invention should be included within the protection scope of the invention. Furthermore, the appended claims are intended to cover all variations and modifications falling within the scope and boundaries of the appended claims, or equivalent forms of such scope and boundaries.

Claims

1. A method for denoising shortwave infrared star maps, characterized in that, Includes the following steps: (1) Based on the neighborhood grayscale features, the two types of non-background pixels, star points and blind pixels, are roughly identified. After ignoring the non-background pixels, the mean and standard deviation of all pixels in the star map are calculated, and the mean and standard deviation of each column of pixels are calculated. Based on the mean and standard deviation of each column of pixels, two moment matching correction coefficients for each column of pixels are calculated. The correction coefficients are moment matching correction gain coefficient and bias coefficient. (2) Moment matching correction is performed on each column of pixels using moment matching correction coefficients to correct stripe noise; (3) Based on the star map after moment matching correction, use the same method in step (1) to identify two types of non-background pixels: star points and blind pixels, and calculate the second-order difference descriptor and Gaussian correlation descriptor for each non-background pixel respectively. The calculation of the second-order difference descriptor for each non-background pixel specifically involves: calculating the normalized weighted absolute value of the second-order difference of pixels within the cross-shaped window of the center pixel's neighborhood to reflect the characteristic of rapid gray-level changes in the blind pixel neighborhood. The calculation of the Gaussian correlation descriptor for each non-background pixel specifically involves: calculating the Pearson correlation coefficient between the pixel gray level within the square window of the center pixel's neighborhood and the value of a specific two-dimensional Gaussian function, so as to reflect that the gray level distribution of the star points imaged on the focal plane of the star sensor imaging system conforms to the characteristics of a two-dimensional Gaussian function. (4) Train a linear support vector machine, classify it based on the descriptors of non-background pixels, and assign it star point labels or blind element labels; (5) Using the Gaussian distribution characteristics of the gray values ​​of star pixels in the image, the pixels that are misjudged as blind cells in the periphery of the star are corrected. (6) Perform four-neighbor mean compensation on pixels labeled as blind cells; (7) Perform four-neighbor mean filtering on the entire star map to suppress Gaussian noise.

2. The method according to claim 1, characterized in that: Step (1) includes: calculating the difference between the median gray value of the pixels in the neighborhood of the center pixel and the gray value of the center pixel.

3. The method according to claim 1, characterized in that: In step (3), calculating the second-order difference descriptor of each non-background pixel specifically involves: calculating the normalized weighted absolute value of the second-order difference of the pixels within the cross-shaped window of the neighborhood of the center pixel; The calculation of the Gaussian correlation descriptor for each non-background pixel is specifically as follows: calculate the Pearson correlation coefficient between the pixel gray level in the square window of the center pixel's neighborhood and the value of a two-dimensional Gaussian function with a specific coefficient, so as to reflect that the gray level distribution of the star points imaged on the focal plane of the star sensor imaging system conforms to the characteristics of a two-dimensional Gaussian function.

4. The method according to claim 1, characterized in that: Step (4) includes: Star points and blind pixels in several real-world shortwave infrared star images were manually extracted and classified to generate a training set and a test set of non-background pixels. Configure the penalty parameters and train a linear support vector machine using the training set; Obtain the support vector machine prediction function; Use the test set to verify the classification accuracy of the support vector machine.

5. The method according to claim 1, characterized in that: In step (5), correcting pixels that are misclassified as blind pixels within the circumpolar diffuse spot includes: For all pixels labeled as star points, within a pixel window centered on the star point, calculate the estimated gray value of its periphery speckle pixel based on the Gaussian function; Within the window, examine pixels labeled as blind pixels. If their grayscale values ​​are close to this estimate, correct their labels to periphery diffuse speckle pixels.

Citation Information

Patent Citations

  • Infrared image correction method

    CN115100068A

  • Star point image processing method under complex background

    CN115439350A