A method for automatically detecting sunspots
By improving the U-Net model and clustering techniques, the problems of low automation and insufficient dataset in solar flare detection are solved, achieving high-precision and highly automated solar flare detection, and supporting image processing at different resolutions and time series.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- NANJING UNIV
- Filing Date
- 2024-09-03
- Publication Date
- 2026-08-04
AI Technical Summary
Existing automatic detection methods for solar filaments suffer from low automation, mediocre detection accuracy and precision, poor scalability, and limited and low-quality datasets, which are also time-consuming to create.
An improved U-Net model architecture and APP component are used, combined with K-means clustering and DBSCAN clustering, to build a solar flare detection model. A training dataset is generated through image preprocessing, and time series data are used for flare detection and tracking.
It achieves highly automated solar flare detection, supports images of different resolutions, improves detection accuracy and transferability, can process time-series images, and generates a large amount of training data without manual intervention.
Smart Images

Figure CN119091175B_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the field of image processing technology, specifically relating to an automatic method for detecting solar dark lines. Background Technology
[0002] Solar activity is a general term encompassing all active phenomena in the solar atmosphere, such as sunspots, flares, and solar flares. Among these, solar filaments are dark bands projected onto the solar surface by prominences, and they can reflect the local magnetic field structure of the prominence region to some extent. Current automatic detection methods for solar filaments include connected component processing methods based on Canny edge detection and semantic segmentation methods based on Naive U-Net.
[0003] Among them, the connected component processing method based on Canny edge detection requires multiple manually set thresholds. These thresholds are sensitive to the features of the image itself. Therefore, the versatility and transferability are poor for images taken by different stations, the degree of automation is low, and repeated manual adjustments are required. The dark bar recognition capability of this method is poor. It can only recognize relatively obvious dark bars. For dark bars with small active areas, this method may regard them as noise due to the problem of connected component thresholds.
[0004] For semantic segmentation methods, the datasets involved need to be completely manually labeled, which is time-consuming, has a low degree of automation, and the dataset size is small, resulting in unsatisfactory model metrics. At the same time, this method can only process relatively low-resolution data and has no reliable function for high-resolution images. Summary of the Invention
[0005] In view of the above-mentioned shortcomings in the prior art, the solar filament detection method provided by the present invention solves the problems of low automation, general detection accuracy and precision, poor scalability, as well as the problems of small quantity, low quality and time-consuming production of existing filament detection datasets.
[0006] To achieve the above-mentioned objectives, the technical solution adopted by this invention is: an automatic detection method for solar flares, comprising the following steps:
[0007] S1. Obtain the full solar surface Hα image, preprocess it, and construct the image training dataset;
[0008] S2. Construct a U-Net model based on APP improvement as a solar flare detection model, and train it using an image dataset;
[0009] S3. The preprocessed input image with time series data is processed using the trained solar flare detection model to obtain the solar flare detection results.
[0010] S4. Perform SORT tracking on the dark bar detection results to obtain the dark bar tracking results.
[0011] Further, step S1 specifically includes:
[0012] S11. Acquire the full-plane Hα image, convert it into a single-channel image, and correct its edge shading;
[0013] S12. Based on the correction of edge dimness, crop the outer rectangle of the sun surface according to the pixel center and radius data to obtain the sun surface image;
[0014] S13. Perform K-means clustering on the solar image according to the color depth of pixels, and construct an image training dataset based on the clustering results where the classification significance of dark bars is greater than a set threshold.
[0015] Furthermore, in step S1, the preprocessing further includes:
[0016] Different clustering results corresponding to the same solar image are integrated, and majority election and ground truth annotation are performed.
[0017] The groundtruth annotation results are re-clustered to remove noise and then manually corrected.
[0018] Furthermore, in step S2, the solar filament detection model includes an improved U-Net model architecture and an APP component;
[0019] The improved U-Net model architecture includes a DoubleConv component, the first to the nth DownSample component, the first to the nth UpSample component, and a 2D convolutional layer connected in sequence; the output of the 2D convolutional layer is connected to the APP component.
[0020] The DoubleConv component is also connected to the nth UpSample component via the concatenate function, and the first to nth DownSample components are connected to the (n-1)th to the first UpSample components via the concatenate function respectively.
[0021] Where n is the adjustable number of UpSample and DownSample components.
[0022] Furthermore, when the number of output channels of the DoubleConv component is base_channels, the number of input and output channels of the i-th DownSample component are 2 and 2 respectively. i-1 *base_channels and 2 i*base_channels, where the number of input and output channels for the i-th UpSample component are 2 and 2 respectively. n-i+1-f *base_channels and 2 n-i-f *base_channels, the number of input and output channels for a 2D convolutional layer are base_channels respectively;
[0023] Where i is the index of the DownSample component or the UpSample component, and f is 1 if bi_linear is true, otherwise f is 0, and bi_linear is the parameter passed to the UpSample component.
[0024] Furthermore, the DoubleConv component includes a first 3×3 convolutional layer, a first batch normalized layer (BN), a first LeakyReLU activation function, a second 3×3 convolutional layer, a second batch normalized layer (BN), a second LeakyReLU activation function, and a random deactivation layer, connected in sequence.
[0025] Furthermore, the APP component includes three adaptive pooling layers of the same structure in parallel, and the output of each adaptive pooling layer is connected to a 1×1 convolutional layer, a Dropout layer and a Sigmoid activation layer in sequence through the concatenate function;
[0026] Each of the adaptive pooling layers includes an adaptive pooling strategy, a 1×1 convolutional layer, and an upsampling layer connected in sequence; the adaptive pooling strategy is either max pooling or average pooling.
[0027] The target size of the output of the m-th adaptive pooling layer is out_image_size is the output size of the APP component, and depth is the depth of the APP component, i.e., the number of adaptive pooling layers.
[0028] Furthermore, the DownSample component includes an APP component and a DoubleConv component connected in sequence;
[0029] For the UpSample component, when bi_linear is true, the UpSample component includes an UpSample layer with mode bi_linear and a DoubleConv component; the processing result of the UpSample layer is truncated and merged with the processing result of the corresponding DownSample component, and then connected to the DoubleConv component through the concatenate function;
[0030] When bi_linear is false, the UpSample component includes a 2×2 transposed convolutional layer and a DoubleConv component; the processing result of the 2×2 transposed convolutional layer is centered and merged with the processing result of the corresponding DownSample component, and then connected to the DoubleConv component through the concatenate function;
[0031] When the input size of the UpSample component is H in ×W in ×C in At that time, its output size is 2H in ×2W in ×C out .
[0032] Furthermore, depending on the complexity of the detected images, the structure of the solar flare detection model is extended by freely connecting the improved U-Net model architecture and APP components.
[0033] Furthermore, step S3 specifically includes:
[0034] S31. Use the trained solar flare detection model to infer the input image and output the detected flare annotation results;
[0035] S32. Perform DBSCAN clustering on the output results to obtain the classification results of independent dark bars;
[0036] S33. Record the pixel coordinates and image number of each individual dark fringe to obtain the solar dark fringe detection results.
[0037] The beneficial effects of this invention are as follows:
[0038] 1. The generation of training data for the model in this invention can be largely automated. K-means clustering is fast and requires no human intervention except for manual screening, thus enabling the rapid generation of a large amount of training data.
[0039] 2. The improved U-Ne model structure in this invention is used as a solar filament detection model. Its depth can be manually adjusted, which is convenient for supporting training data of different resolutions and hardware requirements.
[0040] 3. The target detection results obtained based on the solar flare detection model in this invention are of good quality.
[0041] 4. This invention provides a scheme for tracking long-period dark bars, which can process image groups with time series, rather than single images;
[0042] 5. The method of the present invention has a high degree of automation, good portability and scalability. Attached Figure Description
[0043] Figure 1 The flowchart of the automatic detection method for solar flares provided by the present invention is shown.
[0044] Figure 2 This is a schematic diagram of the solar filament detection model provided by the present invention.
[0045] Figure 3 This is a schematic diagram of the Double Conv component structure provided by the present invention.
[0046] Figure 4 This is a schematic diagram of the APP component structure provided by the present invention.
[0047] Figure 5 This is a schematic diagram of the Down Sample component structure provided by the present invention.
[0048] Figure 6 This is a schematic diagram of the Up Sample component structure provided by the present invention.
[0049] Figure 7 This is a schematic diagram illustrating the process of detecting dark bars using the method of this invention. Detailed Implementation
[0050] The specific embodiments of the present invention are described below to enable those skilled in the art to understand the present invention. However, it should be understood that the present invention is not limited to the scope of the specific embodiments. For those skilled in the art, various changes are obvious as long as they are within the spirit and scope of the present invention as defined and determined by the appended claims. All inventions utilizing the concept of the present invention are protected.
[0051] This invention provides an automatic detection method for solar flares, such as... Figure 1 As shown, it includes the following steps:
[0052] S1. Obtain the full solar surface Hα image, preprocess it, and construct the image training dataset;
[0053] S2. Construct a U-Net model based on APP improvement as a solar flare detection model, and train it using an image dataset;
[0054] S3. The preprocessed input image with time series data is processed using the trained solar flare detection model to obtain the solar flare detection results.
[0055] S4. Perform SORT tracking on the dark bar detection results to obtain the dark bar tracking results.
[0056] Step S1 in this embodiment of the invention is specifically as follows:
[0057] S11. Acquire the full-plane Hα image, convert it into a single-channel image, and correct its edge shading;
[0058] S12. Based on the correction of edge dimness, crop the outer rectangle of the sun surface according to the pixel center and radius data to obtain the sun surface image;
[0059] S13. Perform K-means clustering on the solar image according to the color depth of pixels, and construct an image training dataset based on the clustering results where the classification significance of dark bars is greater than a set threshold.
[0060] For example, in this embodiment, the preprocessing process of the full solar Hα image is performed based on the FTTS file of the full solar Hα image.
[0061] Optionally, use the sldtk tool to correct edge shading.
[0062] Optionally, when performing K-means clustering on solar images, multiple clustering operations can be performed by setting multiple K values, such as 10, 20, and 30.
[0063] In step S1 of this embodiment, the preprocessing further includes:
[0064] Different clustering results corresponding to the same solar image are integrated, and majority election and ground truth annotation are performed. The ground truth annotation results are then re-clustered, noise is removed, and manual corrections are made.
[0065] Optionally, when conducting a majority election, those that receive more than half the votes will be marked with a groundtruth.
[0066] Optionally, the DBSCAN method can be used for clustering, and noise can be removed, for example, if a certain class has fewer than 10 pixels.
[0067] Alternatively, when using manual correction, Photoshop or LabelImg tools can be used to connect discontinuous or incomplete results in the clustering.
[0068] In step S2 of this embodiment of the invention, the solar filament detection model includes an improved U-Net model architecture and an APP component;
[0069] like Figure 2 As shown, the improved U-Net model architecture includes a DoubleConv component, the first to the nth DownSample component, the first to the nth UpSample component, and a 2D convolutional layer connected in sequence; the output of the 2D convolutional layer is connected to the APP component;
[0070] The DoubleConv component is also connected to the nth UpSample component via the concatenate function, and the first to nth DownSample components are connected to the (n-1)th to the first UpSample components via the concatenate function respectively.
[0071] Where n is the adjustable number of UpSample and DownSample components.
[0072] In this embodiment, in the improved U-Net model architecture, when the number of output channels of the DoubleConv component is base_channels, the number of input and output channels of the i-th DownSample component are 2 and 2 respectively. i-1 *base_channels and 2i*base_channels, where the number of input and output channels for the i-th UpSample component are 2 and 2i*base_channels respectively. n-i+1-f *base_channels and 2 n-i-f *base_channels, the number of input and output channels for a 2D convolutional layer are base_channels respectively;
[0073] Where i is the index of the DownSample component or the UpSample component, and f is 1 if bi_linear is true, otherwise f is 0, and bi_linear is the parameter passed to the UpSample component.
[0074] Specifically, compared to the traditional structure, the improved U-Net model architecture has additional parameters such as base_channels, num_pooling, and requirements_activation compared to UpSample. The depth of U-Net can be manually adjusted by adjusting the first two parameters accordingly.
[0075] In this embodiment, as Figure 3 As shown, the DoubleConv component includes a first 3×3 convolutional layer, a first batch of normalized layers (BN), a first LeakyReLU activation function, a second 3×3 convolutional layer, a second batch of normalized layers (BN), a second LeakyReLU activation function, and a randomly deactivated layer, all connected in sequence.
[0076] For example, in Figure 3In the DoubleConv component structure shown, the kernel size of the convolutional layer is 3, the padding size is 1, and the parameters of the LeakyReLU activation function (leaky_negative_slope), the number of input channels (in_channels), the number of output channels (out_channels), the number of channels in the intermediate layer (the output of the first 3×3 convolutional layer) (mid_channels), and the dropout probability of the random dropout layer (dropout_p) can all be set by passing parameters.
[0077] In this embodiment, as Figure 4 As shown, the APP component includes three adaptive pooling layers of the same structure in parallel, and the output of each adaptive pooling layer is connected to a 1×1 convolutional layer, a Dropout layer and a Sigmoid activation layer in sequence through the concatenate function.
[0078] Each of the adaptive pooling layers includes an adaptive pooling strategy, a 1×1 convolutional layer, and an upsampling layer connected in sequence; the adaptive pooling strategy is either max pooling or average pooling.
[0079] The target size of the output of the m-th adaptive pooling layer is out_image_size is the output size of the APP component, and depth is the depth of the APP component, i.e., the number of adaptive pooling layers.
[0080] Specifically, the aforementioned APP component is also known as a pyramid pooling component, with parameters including the number of input channels (in_channels), the number of output channels (out_channels), the output size (out_image_size), the depth (depth), whether an activation layer is required (requires_activation), and the pooling strategy (pooling_strategy).
[0081] For example, for any input x, it is upsampled after passing through each adaptive pooling layer so that the final image size becomes out_image_size. Then, it is concatenated on the channels and then fed into a 1×1 convolutional layer to change the number of channels to out_channels. Finally, whether to pass through the activation function is selected as needed, depending on whether to activate the layer.
[0082] For example, the above upsampling layer uses bilinear interpolation upsampling operation.
[0083] In this embodiment, as Figure 5 As shown, the DownSample component includes the APP component and the DoubleConv component connected in sequence;
[0084] When the input size of the DownSample component is H in ×W in ×C in At that time, its output size is
[0085]
[0086] Specifically, for the DownSample component in the above structure, the parameter passed to it includes an additional `out_image_size` compared to the DoubleConv component, used to specify the output image size of the APP component. The `out_channels` of the APP component are specified to be the same as those of the DownSample component itself, and the output image size can be freely set to support images of different resolutions; generally, the width and height are set to half of the previous layer. Compared to the original U-Net model using max pooling, replacing it with the APP component improves the information extraction capability during downsampling, encoding and integrating image information from different receptive fields.
[0087] In this embodiment, as Figure 6 As shown, for the UpSample component, the UpSample component in this embodiment has one more parameter, bi_linear, than DoubleConv. There are two architectural forms depending on the value of the bi_linear parameter.
[0088] Specifically, when bi_linear is true, the UpSample component includes an UpSample layer with mode bi_linear and a DoubleConv component; the processing result of the UpSample layer is centered and merged with the processing result of the corresponding DownSample component, and then connected to the DoubleConv component through the concatenate function; wherein, the parameter of the number of intermediate layer channels in the DoubleConv component is set to half of the number of input channels;
[0089] When bi_linear is false, the UpSample component includes a 2×2 transposed convolutional layer and a DoubleConv component; the processing result of the 2×2 transposed convolutional layer is centered and merged with the processing result of the corresponding DownSample component, and then connected to the DoubleConv component through the concatenate function; wherein, the number of output channels of the 2×2 transposed convolutional layer is half the number of input channels, and the number of intermediate channels of the DoubleConv component is the same as the number of output channels.
[0090] Based on the UpSample component structure described above, when the input size of the UpSample component is H... in ×W in ×Cin At that time, its output size is 2H in ×2W in ×C out .
[0091] For example, in step S2, when training the solar flare detection model, the data is processed as follows during each training iteration:
[0092] The original and labeled images are scaled to a specified size; the original and labeled images are simultaneously flipped vertically with a certain probability (e.g., 50%); the original and labeled images are simultaneously rotated randomly within a certain range with a certain probability (e.g., 80%), with the rotation angle within ±45°; the original image is subjected to a random gamma transformation within a certain range with a certain probability (e.g., 80%), with the gamma value between 0.5 and 1.5; and the original image is Min-Max normalized.
[0093] Optionally, in the above process, the original image and the labeled image are synchronously translated within a certain range with a certain probability, such as 80% probability, with the translation degree within ±30%.
[0094] For example, during model training, Focal Loss is used as the loss function, and the AdamW optimizer is trained for a certain number of iterations, such as 250 iterations.
[0095] In the solar flare detection model described in this embodiment, exemplarily, the most basic model is based on the U-Net architecture with the `requires_activation` parameter set to `False`, and an additional `APP` component is connected, where `out_image_size` is the original image size and `out_channels` is 1. The depth can be freely set; in this embodiment, 4 is used as an example. Compared to the standalone U-Net model, the addition of an `APP` component improves the model's decoding capability without increasing the number of trainable parameters, compensating for the shortcomings of U-Net's simple decoding process and single receptive field, resulting in stronger learning ability and faster model convergence.
[0096] In this embodiment of the invention, the structure of the solar flare detection model is extended by using an improved U-Net model architecture and APP components for free connection, depending on the complexity of the detected image.
[0097] For example, the model can be arbitrarily extended using the structure U-Net-APP-U-Net-APP-…….
[0098] Optionally, the above model can be used as an auxiliary head for training. For example, a U-Net-APP can be used as the main model, and a U-Net can be used as an auxiliary head to improve the model's performance.
[0099] In step S3 of this embodiment of the invention, the method for processing the preprocessed input image with time series is specifically as follows:
[0100] S31. Use the trained solar flare detection model to infer the input image and output the detected flare annotation results;
[0101] S32. Perform DBSCAN clustering on the output results to obtain the classification results of independent dark bars;
[0102] S33. Record the pixel coordinates and image number of each individual dark fringe to obtain the solar dark fringe detection results.
[0103] For example, in step S3, the image preprocessing operations include: reading the FITS file of the entire solar disk Hα and converting it into a single-channel image; using the sldtk tool to correct edge shading; cropping the outer rectangle of the solar disk according to the solar disk pixel center and radius data in the FITS file; rotating the image according to the p-angle size provided in the FITS file to correct the obliquity of the ecliptic; and performing Min-Max normalization on the image.
[0104] Optionally, in the process of obtaining the above output results, multiple U-Net models trained at different depths can be integrated, for example, through masking and unification.
[0105] In step S4 of this embodiment, the solar filament detection results obtained by the above model inference are input into the SORT model tool and combined with the time series to perform filament tracking.
[0106] In one example of this embodiment, such as Figure 7 The diagram shows a schematic of the process of detecting dark bars using the method of the present invention. Figure 7 (a) is the original image. Figure 7 (b) is the labeled image after the "training data generation" step. Figure 7 (c) represents the inference results after model training. Figure 7 (d) is the result of the inference results after noise reduction using the DBSCAN clustering method. Figure 7 (e) is in Figure 7 Based on (d), the various dark bars were colored and their bounding rectangles were drawn. (Comparison) Figure 7 (a) Figure 7 (b) and Figure 7(c) It can be observed that the inference results after training basically identify all the dark bars in the labeled image, and the outlines of some dark bars are more complete; comparison Figure 7 (c) and Figure 7 (d) Figure 7 (e) It can be seen that DBSCAN clustering removes some noise and distinguishes the dark bars, identifying each dark bar independently.
[0107] Specific embodiments have been used to illustrate the principles and implementation methods of this invention. The descriptions of the embodiments above are only for the purpose of helping to understand the method and core ideas of this invention. At the same time, for those skilled in the art, there will be changes in the specific implementation methods and application scope based on the ideas of this invention. Therefore, the content of this specification should not be construed as a limitation of this invention.
[0108] Those skilled in the art will recognize that the embodiments described herein are intended to help the reader understand the principles of the invention, and should be understood that the scope of protection of the invention is not limited to such specific statements and embodiments. Those skilled in the art can make various other specific modifications and combinations based on the technical teachings disclosed in this invention without departing from the spirit of the invention, and these modifications and combinations are still within the scope of protection of this invention.
Claims
1. An automatic detection method for solar flares, characterized in that, Includes the following steps: S1. Obtain the full solar surface Hα image, preprocess it, and construct the image training dataset; S2. Construct a U-Net model based on APP improvement as a solar flare detection model, and train it using an image dataset; S3. The preprocessed input image with time series data is processed using the trained solar flare detection model to obtain the solar flare detection results. S4. Perform SORT tracking on the dark fringe detection results to obtain the dark fringe tracking results; In step S2, the solar filament detection model includes an improved U-Net model architecture and an APP component; The improved U-Net model architecture includes a DoubleConv component, the first to the nth DownSample component, the first to the nth UpSample component, and a 2D convolutional layer connected in sequence; the output of the 2D convolutional layer is connected to the APP component. The DoubleConv component is also connected to the nth UpSample component through the concatenate function, and the first to nth DownSample components are connected to the (n-1)th to the first UpSample components through the concatenate function respectively. Where n is the adjustable number of UpSample and DownSample components; The APP component includes three adaptive pooling layers of the same depth in parallel structure. The output of each adaptive pooling layer is connected to a 1×1 convolutional layer, a Dropout layer and a Sigmoid activation layer in sequence through the concatenate function. Each of the adaptive pooling layers includes an adaptive pooling strategy, a 1×1 convolutional layer, and an upsampling layer connected in sequence; the adaptive pooling strategy is either max pooling or average pooling. The target size of the output of the m-th adaptive pooling layer is , out_image_size is the output size of the APP component, and depth is the depth of the APP component, i.e. the number of adaptive pooling layers.
2. The automatic detection method for solar flares according to claim 1, characterized in that, Step S1 specifically involves: S11. Acquire the full-plane Hα image, convert it into a single-channel image, and correct its edge shading; S12. Based on the correction of edge dimness, crop the outer rectangle of the sun surface according to the pixel center and radius data to obtain the sun surface image; S13. Perform K-means clustering on the solar image according to the color depth of pixels, and construct an image training dataset based on the clustering results where the classification significance of dark bars is greater than a set threshold.
3. The automatic detection method for solar flares according to claim 2, characterized in that, In step S1, the preprocessing further includes: Different clustering results corresponding to the same solar image are integrated, and majority election and ground truth annotation are performed. The groundtruth annotation results are re-clustered to remove noise and then manually corrected.
4. The automatic detection method for solar flares according to claim 1, characterized in that, When the number of output channels of the DoubleConv component is base_channels, the number of input and output channels of the i-th DownSample component are 2 and 2 respectively. i-1 *base_channels and 2 i *base_channels, where the number of input and output channels for the i-th UpSample component are 2 and 2 respectively. n-i+1-f *base_channels and 2 n-i-f *base_channels, the number of input and output channels for a 2D convolutional layer are base_channels respectively; Where i is the index of the DownSample component or the UpSample component, and f is 1 if bi_linear is true, otherwise f is 0, and bi_linear is the parameter passed to the UpSample component.
5. The automatic detection method for solar flares according to claim 1, characterized in that, The DoubleConv component includes a first 3×3 convolutional layer, a first batch normalized layer (BN), a first LeakyReLU activation function, a second 3×3 convolutional layer, a second batch normalized layer (BN), a second LeakyReLU activation function, and a random deactivation layer, connected in sequence.
6. The automatic detection method for solar flares according to claim 1, characterized in that, The DownSample component includes an APP component and a DoubleConv component connected in sequence; When the input size of the DownSample component is H in ×W in ×C in At that time, its output size is ; For the UpSample component, when bi_linear is true, the UpSample component includes an UpSample layer with mode bi_linear and a DoubleConv component; The processing results of the UpSample layer and the corresponding processing results of the DownSample component are truncated and merged, and then connected to the DoubleConv component through the concatenate function; When bi_linear is false, the UpSample component includes a 2×2 transposed convolutional layer and a DoubleConv component; the processing result of the 2×2 transposed convolutional layer is centered and merged with the processing result of the corresponding DownSample component, and then connected to the DoubleConv component through the concatenate function; When the input size of the UpSample component is H in ×W in ×C in At that time, its output size is .
7. The automatic detection method for solar flares according to claim 1, characterized in that, Depending on the complexity of the detected images, an improved U-Net model architecture and APP components are used for free connection to extend the structure of the solar flare detection model.
8. The automatic detection method for solar flares according to claim 1, characterized in that, Specifically, step S3 is as follows: S31. Use the trained solar flare detection model to infer the input image and output the detected flare annotation results; S32. Perform DBSCAN clustering on the output results to obtain the classification results of independent dark bars; S33. Record the pixel coordinates and image number of each individual dark fringe to obtain the solar dark fringe detection results.