Infrared image vertical stripe processing method and device, electronic equipment and storage medium
By identifying common areas in infrared and visible light images and performing vertical edge detection and single-sided grayscale filtering, the image quality degradation and ghosting problems caused by vertical stripe noise are solved, achieving higher quality infrared image processing.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- ZHEJIANG UNIVIEW TECH CO LTD
- Filing Date
- 2024-12-04
- Publication Date
- 2026-06-05
AI Technical Summary
Vertical stripe noise exists in infrared images, which degrades image quality, especially in scenes with many vertical objects. Vertical edges are easily misjudged as vertical stripes, introducing ghosting and affecting image analysis and target recognition.
By identifying the common image area between the infrared and visible light images, vertical edge detection and single-sided grayscale filtering are performed to obtain a reference low-frequency image, thus shielding the influence of vertical edges and accurately processing vertical stripes.
It effectively eliminates or reduces vertical stripe interference, improves infrared image quality, avoids ghosting, and enhances the accuracy of image analysis and target recognition.
Smart Images

Figure CN122155979A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of image processing technology, and in particular to a method, apparatus, electronic device, and storage medium for processing vertical stripes in infrared images. Background Technology
[0002] Infrared imaging can produce clear images in scenes where visible light cannot distinguish them, making up for the shortcomings of visible light in harsh environments. It is widely used in military reconnaissance, fire alarms, and power failure monitoring.
[0003] Infrared detectors are a crucial component of infrared imaging systems, converting infrared light signals into electrical signals. Different rows or columns of an infrared detector use different signal output circuits. When a pixel on the detector is exposed to light, the output electrical signal amplitude is relatively small and is amplified in the detector's signal output circuit. However, because different rows or columns use different signal amplification circuits, pixel values differ between them. After subsequent image processing, this results in noticeable alternating black and white stripes on the infrared image, known as stripe noise. This stripe noise severely impacts the quality of infrared images, reducing image clarity and readability. It significantly hinders subsequent image analysis and target recognition, limiting the application of infrared imaging technology in scenarios requiring high image quality. Summary of the Invention
[0004] This invention provides a method, apparatus, electronic device, and storage medium for processing vertical stripes in infrared images, which effectively solves the problem that vertical edges are misjudged as vertical stripes in scenes with a large number of vertical objects, leading to ghosting in the stripe removal algorithm.
[0005] In a first aspect, embodiments of the present invention provide a method for processing vertical stripes in infrared images, the method comprising:
[0006] A reference image is determined by the first image and the second image, wherein the first image is an infrared image that has undergone non-uniform correction processing, the second image is a visible light image, and the reference image is a common image region in the second image that describes the same scene region as the first image.
[0007] Vertical edge detection is performed on the reference image to obtain a reference detection result, which is used to describe the coordinates of the vertical edge position in the reference image;
[0008] Based on the reference detection results, a reference low-frequency image is obtained by performing unilateral grayscale filtering on a portion of the image region in the first image.
[0009] The vertical stripes in the first image are processed based on the first image and the reference low-frequency image.
[0010] Secondly, embodiments of the present invention also provide an infrared image vertical stripe processing device, the device comprising:
[0011] The determination module is used to determine a reference image formed by the first image and the second image, wherein the first image is an infrared image that has undergone non-uniform correction processing, the second image is a visible light image, and the reference image is a common image region in the second image that describes the same scene region together with the first image;
[0012] The detection module is used to perform vertical edge detection on the reference image to obtain a reference detection result, which is used to describe the position coordinates of the vertical edge in the reference image;
[0013] The filtering module is used to select a portion of the image region in the first image for unilateral grayscale filtering based on the reference detection result to obtain a reference low-frequency image;
[0014] The processing module is used to process the vertical stripes in the first image based on the first image and the reference low-frequency image.
[0015] Thirdly, this invention also provides an electronic device, the electronic device comprising:
[0016] At least one processor; and
[0017] A memory communicatively connected to the at least one processor; wherein,
[0018] The memory stores a computer program that can be executed by the at least one processor, which enables the at least one processor to perform the infrared image vertical stripe processing method described in any of the above embodiments.
[0019] Fourthly, the present invention also provides a computer-readable medium storing computer instructions for causing a processor to execute the infrared image vertical stripe processing method described in any of the above embodiments.
[0020] The technical solution of this invention determines a common image region in a visible light image that corresponds to an infrared image, using this region as a valuable reference image. By performing detailed vertical edge detection on this reference image, the specific coordinates of vertical edges in the infrared image can be determined with remarkable accuracy. In the single-sided grayscale filtering stage, specific image regions in the infrared image can be filtered using the reference detection results to obtain a reference low-frequency image. This highly targeted filtering method plays a crucial role in removing vertical stripes, effectively shielding the influence of vertical edge positions. Therefore, when processing vertical stripes in the first image based on the infrared image and the reference low-frequency image, the interference from vertical stripes in the infrared image can be effectively eliminated or mitigated. This solution solves the problem faced in scenes with numerous vertical objects, where vertical edges are easily misidentified as vertical stripes, leading to the troublesome ghosting problem introduced into the stripe removal algorithm.
[0021] It should be understood that the description in this section is not intended to identify key or essential features of the embodiments of the present invention, nor is it intended to limit the scope of the invention. Other features of the invention will become readily apparent from the following description. Attached Figure Description
[0022] The above and other features, advantages, and aspects of the various embodiments of the present invention will become more apparent from the accompanying drawings and the following detailed description. Throughout the drawings, the same or similar reference numerals denote the same or similar elements. It should be understood that the drawings are schematic, and the originals and elements are not necessarily drawn to scale.
[0023] Figure 1 This is a flowchart illustrating an infrared image vertical stripe processing method provided in an embodiment of the present invention;
[0024] Figure 2 This is a schematic diagram illustrating the ghosting that occurs when removing vertical stripes from an infrared image, as provided in an embodiment of the present invention.
[0025] Figure 3 This is a schematic diagram of a method for removing vertical stripes based on vertical edge detection and selective filtering, provided in an embodiment of the present invention.
[0026] Figure 4 A schematic diagram of the structure of an infrared image vertical stripe processing device provided in an embodiment of the present invention;
[0027] Figure 5 This is a schematic diagram of the structure of an electronic device that implements a method for processing vertical stripes in infrared images, as provided in an embodiment of the present invention. Detailed Implementation
[0028] Embodiments of the present invention will now be described in more detail with reference to the accompanying drawings. While some embodiments of the invention are shown in the drawings, it should be understood that the invention can be implemented in various forms and should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided to provide a more thorough and complete understanding of the invention. It should be understood that the accompanying drawings and embodiments are for illustrative purposes only and are not intended to limit the scope of protection of the invention.
[0029] It should be understood that the various steps described in the method embodiments of the present invention may be performed in different orders and / or in parallel. Furthermore, the method embodiments may include additional steps and / or omit the steps shown. The scope of the present invention is not limited in this respect.
[0030] The term "comprising" and its variations as used herein are open-ended inclusions, meaning "including but not limited to". The term "based on" means "at least partially based on". The term "one embodiment" means "at least one embodiment"; the term "another embodiment" means "at least one additional embodiment"; the term "some embodiments" means "at least some embodiments". Definitions of other terms will be given in the description below.
[0031] It should be noted that the concepts of "first" and "second" mentioned in this invention are only used to distinguish different devices, modules or units, and are not used to limit the order of functions performed by these devices, modules or units or their interdependencies.
[0032] It should be noted that the terms "a" and "a plurality of" used in this invention are illustrative rather than restrictive. Those skilled in the art should understand that, unless otherwise expressly indicated in the context, they should be understood as "one or more".
[0033] Figure 1 This is a flowchart illustrating an infrared image vertical stripe processing method provided in an embodiment of the present invention. The technical solution of this embodiment is applicable to processing infrared images in scenes with a large number of vertical objects to eliminate vertical stripe interference and avoid the introduction of ghosting by misjudging vertical edges as vertical stripes. This method can be executed by an infrared image vertical stripe processing device, which can be implemented in software and / or hardware and is generally integrated on any electronic device with network communication capabilities, such as a mobile terminal, PC, or server.
[0034] like Figure 1 As shown, the infrared image vertical stripe processing method of this embodiment may include the following process:
[0035] S110. Determine a reference image formed by the first image and the second image. The first image is an infrared image that has undergone non-uniform correction processing, the second image is a visible light image, and the reference image is a common image region in the second image that describes the same scene region as the first image.
[0036] Infrared detectors are a crucial component of infrared imaging systems, converting infrared light signals into electrical signals. Different rows or columns of an infrared detector use different signal output circuits. When a pixel on the detector is exposed to light, the output electrical signal amplitude is relatively small and is amplified in the detector's signal output circuit. Because different rows or columns use different signal amplification circuits, differences in pixel values exist between them. After subsequent image processing, this manifests as distinct alternating black and white stripes on the infrared image, known as stripe noise. Stripe noise is divided into vertical and horizontal stripes, caused by inconsistent response levels of different pixels in the detector when exposed to the same infrared radiation, or by inconsistencies in the readout circuits of different rows or columns.
[0037] Currently, there are two main types of methods for removing vertical stripes. One is based on time-domain and frequency-domain transformations. This method is computationally intensive, and it puts a heavy burden on embedded hardware for high-resolution, high-frame-rate real-time infrared images. The other method is based on the original infrared image, extracting the amplitude of the vertical stripes through filters. This method is convenient to operate and can guarantee real-time performance, but when there are vertical objects in the scene, it is easy to mistake vertical edges for vertical stripe amplitudes, resulting in ghosting in the infrared image. Figure 2 As shown.
[0038] Therefore, in the image processing of this scheme, different types of images can be used comprehensively to obtain more accurate and comprehensive information. For example, the infrared image after non-uniform correction can be used as the first image, and the visible light image can be used as the second image. The visible light image has rich color and detail information and can provide features such as the appearance, texture, and edges of objects. Therefore, the visible light image can be used as a reference to detect and filter vertical stripes in the infrared image. See also... Figure 3 The first image can be generated by receiving infrared light reflected or emitted by the target by an infrared detector with a specific spectral response, performing photoelectric response, and generating the original infrared image (i.e., Y16 image) after image processing and two-point correction.
[0039] In infrared imaging systems, inconsistencies in the response characteristics of different parts of the infrared detector can lead to non-uniformity in the generated infrared images. This non-uniformity manifests as brightness differences in different areas of the image that are not entirely caused by the actual temperature differences of the observed object, but are influenced by the detector's own characteristics. Non-uniformity correction processing can eliminate or mitigate this non-uniformity, allowing the infrared image to more accurately reflect the true temperature distribution and other characteristics of the observed object.
[0040] Since infrared and visible light images are taken from the same scene respectively, although their imaging principles and representations differ, there will inevitably be areas in both images that depict the same scene content. By identifying this common image area as a reference image, the temperature information from the infrared image and the detail information from the visible light image can be combined. For example, when acquiring infrared and visible light images simultaneously, since the two images are obtained from the same scene captured from different spectral ranges, the scene areas they cover usually overlap to some extent. This overlapping part can be called the common area of the infrared and visible light images.
[0041] In the common area, infrared and visible light images can provide complementary information. Visible light images reveal the scene's color, texture, and details, while infrared images reflect the thermal radiation distribution of objects. By combining information from both images in the common area, a more comprehensive understanding of the objects and conditions within the scene can be achieved. Using infrared images to detect object heating, while utilizing color and texture information from visible light images to better identify object type and state, the process of determining this common image area may involve techniques such as image matching and feature extraction to accurately locate the corresponding scene area in the two images. The reference image is defined as the common image area in the second image that, along with the first image, describes the same scene area. This means finding the portion in the visible light image that corresponds to the infrared image after non-uniform correction.
[0042] By identifying a reference image formed by the first image (an infrared image that has undergone non-uniform correction) and the second image (a visible light image), that is, a common image region in the second image that describes the same scene region as the first image, more valuable information can be provided for subsequent image processing and analysis, which helps to understand and process the observed scene more deeply.
[0043] As an optional but not limited implementation, determining a reference image formed by the first image and the second image includes the following steps A1-A2:
[0044] Step A1: Based on the pixel mapping relationship from the first image to the second image, determine the reference boundary range of the first image in the second image. The reference boundary range is the smallest rectangular area covered by the first image after it is mapped to the second image.
[0045] Step A2: The overlapping image region between the reference boundary range of the first image in the second image and the boundary range of the second image is determined as the reference image formed by the first image and the second image.
[0046] The first image typically refers to an infrared image that has undergone specific processing (such as non-uniform correction), while the second image is generally a visible light image, possessing rich color and detail information. Together with the first image, they describe the same scene. Pixel mapping relationships are key to establishing the connection between the first and second images. Through an algorithm or mathematical model, the corresponding position of each pixel in the first image in the second image is determined, thereby enabling image conversion and comparison. For example, based on feature point matching methods, some obvious feature points are found in the first and second images, and then the correspondence between pixels is established by matching these feature points; or a geometric transformation model is used to derive a transformation formula from the coordinates of the first image to the coordinates of the second image based on information such as the image's shooting angle and position.
[0047] The reference boundary range refers to the smallest rectangular area covered by the first image after it is mapped onto the second image. This range can help determine the specific position and size of the first image in the second image. The overlapping image region can be the part where the reference boundary range of the first image in the second image coincides with the boundary range of the second image itself. This part of the region is determined as the reference image formed by the first image and the second image.
[0048] Once the pixel mapping relationship is established, the reference boundary range of the first image in the second image can be determined. Specifically, the boundary pixels of the first image are traversed, and their corresponding positions in the second image are calculated using the pixel mapping relationship. These corresponding positions form a minimum rectangular region, which is the area covered by the first image after mapping to the second image. For example, if the first image is a rectangular infrared image, the positions of its four corner points in the second image can be found through the mapping relationship, and connecting these four points determines the reference boundary range.
[0049] The boundary range of the second image refers to the rectangular area of the entire visible light image. By calculating the overlap between the reference boundary range and the boundary range of the second image, the common image area of the first and second images, i.e., the reference image, can be obtained. If the reference boundary range is entirely within the boundary range of the second image, then the overlapping part is the reference boundary range itself; if the reference boundary range extends beyond the boundary range of the second image, then the overlapping part is the area where the two ranges intersect. This reference image contains the same scene area described by both the first and second images.
[0050] In one example, the boundary pixels of the first image are traversed, and their corresponding positions in the second image are calculated using a coordinate mapping function. The boundary extent of the first image in the second image is determined, i.e., the coordinates of the four vertices of the smallest rectangular region covered by the first image after mapping to the second image are found. The intersection of the boundary extent of the first image in the second image and the boundary extent of the second image itself is calculated. This intersection area is the common area of the infrared image corresponding to the first image and the visible light image corresponding to the second image. In another example, the boundary extent of the visible light image in the infrared image can be determined through the reverse mapping (from the second image to the first image). By calculating the intersection of the boundary extent of the second image in the first image and the boundary extent of the first image itself, the portion of the common area in the first image can be obtained.
[0051] S120. Perform vertical edge detection on the reference image to obtain a reference detection result, which is used to describe the coordinates of the vertical edge position in the reference image.
[0052] S130. Based on the reference detection results, select a portion of the image region in the first image and perform unilateral grayscale filtering to obtain a reference low-frequency image.
[0053] Vertical edge detection can identify the vertical boundaries or contours of objects in visible light images. These edges usually correspond to the contours, texture changes, or boundaries of different regions of objects in the image. After determining the reference image formed by the first image (an infrared image after non-uniform correction) and the second image (a visible light image), vertical edge detection can highlight specific structures in the image and obtain the coordinates of the vertical edges in the reference image, providing important feature information for subsequent image analysis.
[0054] The reference detection results describe the position coordinates of vertical edges in the reference image. This means that a specific edge detection algorithm can find areas in the reference image where grayscale values or colors change drastically; these areas often correspond to the vertical edges of objects. For example, in a reference image containing buildings, vertical edge detection can find the edges of building walls, windows, etc. By recording the position coordinates of these vertical edges, accurate location information can be provided for subsequent processing.
[0055] The reference detection results play a crucial role in the subsequent one-sided grayscale filtering process. One-sided grayscale filtering is a targeted filtering method that can filter a portion of the image region in the first image based on the reference detection results. Specifically, if the coordinates of the vertical edges in the reference image are known, over-filtering of pixels at the vertical edge positions can be avoided when performing one-sided grayscale filtering on the first image, thereby effectively shielding the influence of the vertical edge positions.
[0056] See Figure 3 When processing vertical stripes in the first image, the reference detection result is crucial. By determining the position of the vertical edge in the reference image, the difference between the vertical stripes and the vertical edge in the first image can be identified more accurately. This can avoid misjudging the vertical edge as a vertical stripe and processing it incorrectly during the removal of vertical stripes, thereby effectively eliminating or reducing the vertical stripe interference that may appear in the first image.
[0057] Optionally, vertical edge detection can be implemented using various algorithms, among which the Sobel operator and Canny edge detection algorithm are common. The basic principle of these algorithms is to determine the edge location by calculating the gradient of pixels in the image. For vertical edge detection, the gradient of the image in the vertical direction is typically calculated. If a pixel has a large gradient in the vertical direction, then that pixel can be considered to be located on a vertical edge. The specific calculation process may involve steps such as convolution operations and thresholding to improve the accuracy and reliability of edge detection.
[0058] As an optional but not limited implementation, vertical edge detection is performed on the reference image to obtain the reference detection result, including the following steps B1-B2:
[0059] Step B1: Scale the reference image to obtain a candidate image. The difference between the resolution of the candidate image and the resolution of the first image is less than a preset difference.
[0060] Step B2: Perform grayscale processing on the candidate image to obtain the target image, and perform vertical edge detection on the target image to obtain the reference detection result. The reference detection result is used to record the pixel positions corresponding to the edges in the reference image whose gradient direction tends to be horizontal.
[0061] Scaling the reference image is done to match or approximate its resolution with that of the first image. Since the first and reference images may originate from different imaging systems or have different sizes and resolutions, the reference image needs to be adjusted to better integrate information from both images in subsequent processing. Scaling ensures that the resolution difference between the candidate image and the first image is less than a preset difference, which is determined based on specific application requirements and image processing algorithm specifications. Excessive difference can lead to mismatches or inaccuracies in subsequent processing.
[0062] The preset difference setting is used to control the precision of the scaling process. If the preset difference is set small, the scaled candidate image will be closer to the resolution of the first image, which helps improve the accuracy of subsequent processing. Too small a preset difference may increase the computational load and prolong the processing time; conversely, if the preset difference is set large, although it can reduce the computational load, it will affect the quality of the processing results.
[0063] Grayscale processing of candidate images involves converting a color image to a grayscale image, meaning an image with only one brightness channel. Grayscale processing simplifies image representation, reduces computational load, and helps highlight features such as edges and textures. Grayscale processing is performed before vertical edge detection because many edge detection algorithms perform better on grayscale images. In grayscale images, pixel values represent only brightness information, not color information, allowing edge detection algorithms to focus more on brightness variations and thus more accurately detect vertical edges.
[0064] Vertical edge detection of a target image (i.e., the candidate image after grayscale processing) aims to determine the location of edges in the vertical direction of the image. Vertical edge detection algorithms typically determine whether a pixel is located on an edge by calculating the gradient of each pixel in the image. Specifically, if a pixel has a large gradient in the vertical direction, it can be considered to be located on a vertical edge. This means that in the process of vertical edge detection, not only must the vertical edge be detected, but the gradient direction of the edge must also be determined. If the gradient direction of the edge tends to be horizontal, the pixel position corresponding to that edge is recorded. These recorded pixel positions can be used in subsequent processing to mask the influence of the vertical edge position, or for other specific image processing tasks.
[0065] For example, after scaling the reference image, a visible light image with the same resolution and observation area as the first image is obtained. Then, the reference image is converted to grayscale to obtain a grayscale image Img. vLet E be the target image. The Sobel algorithm is used to detect edges in the target image, recording edges with gradient directions close to horizontal. The pixel positions of these edges are stored in E and fed back into the first image. This means that the pixels in E are located on vertical edges, not on vertical stripes.
[0066] As an optional but not limited implementation, a reference low-frequency image is obtained by performing unilateral grayscale filtering on a portion of the image region in the first image based on the reference detection results, including the following steps C1-C2:
[0067] Step C1: Determine the Gaussian grayscale weight table used in the first image, and determine the grayscale weight of each pixel in the first image by querying the Gaussian grayscale weight table.
[0068] Step C2: Determine the image region to be processed in the first image based on the reference detection results. The image region to be processed is the remaining image region in the first image other than the image region corresponding to the vertical edge position coordinates in the reference detection results mapped to the first image.
[0069] Step C3: Based on the grayscale weights of each pixel in the first image, perform unilateral grayscale filtering on the image region to be processed in the first image to obtain a reference low-frequency image.
[0070] See Figure 3 A Gaussian grayscale weighting table is a tool used to determine the grayscale weight of each pixel in an image. In image processing, different pixels may have different importance or influence. By assigning different grayscale weights, different pixels can be treated more effectively in subsequent processing. For the first image, the Gaussian grayscale weighting table can determine the relative importance of a pixel in the processing based on factors such as its grayscale value and location. For example, a pixel with a large difference in grayscale value from its surrounding pixels can be assigned a higher weight, because such a pixel may be located at an edge or at an important image feature.
[0071] See Figure 3 By consulting the Gaussian grayscale weight table, the grayscale weight of each pixel in the first image can be determined. Specifically, for each pixel in the first image, its corresponding weight value can be found in the Gaussian grayscale weight table based on its grayscale value, position, and other features. This weight value reflects the importance of the pixel in subsequent processing.
[0072] The reference detection result is obtained by detecting vertical edges in a reference image and describes the coordinates of the vertical edges in the reference image. These coordinates are then mapped onto the first image to obtain the image region corresponding to the vertical edge. The remaining portion of the first image, excluding this vertical edge region, is then defined as the image region to be processed. This determination of the image region to be processed allows for targeted processing of the portion of the first image other than the vertical edges during subsequent one-sided grayscale filtering. This avoids over-processing of pixels at the vertical edge positions during filtering, effectively masking the influence of the vertical edge positions.
[0073] See Figure 3 One-sided grayscale filtering is a targeted filtering method that processes only a subset of pixels in an image, rather than filtering the entire image uniformly. One-sided grayscale filtering is performed on the region to be processed within the first image based on the grayscale weights of each pixel. Specifically, for each pixel in the region, filtering is performed based on its grayscale weight and the values of surrounding pixels. Pixels with higher grayscale weights may be given greater influence during the filtering process, making the filtering result more consistent with the importance of that pixel. By performing one-sided grayscale filtering on the region to be processed in the first image, a reference low-frequency image can be obtained. This reference low-frequency image is the filtered image, preserving the low-frequency information in the first image—that is, the overall outline and slowly changing parts of the image—while removing some high-frequency noise and details.
[0074] For example, considering that the position and intensity of vertical stripes in infrared images are relatively fixed and have a certain regularity in the column direction, a one-dimensional filter based on gray-level weights is used to perform one-dimensional filtering in the row direction. To improve the speed of one-sided filtering calculation, the Gaussian gray-level weight table is first calculated using formula (1). In subsequent one-sided filtering calculations, the gray-level weight of the corresponding pixel can be directly obtained by looking up the table.
[0075]
[0076] Among them, ||I p -I q || represents the absolute value of the difference between the grayscale value of a point p and the grayscale value of q within a window centered at pixel q. Then, the low-frequency image Img... lf It can be calculated using formula (2).
[0077]
[0078] Among them, W q The sum of weights for each pixel value in the filter window S is calculated using the following formula:
[0079]
[0080] Let the image weight matrix be W, and the filter kernel width be k. The value of W at q can be obtained by the following formula.
[0081]
[0082] In formula (2), if the current pixel q is located in E obtained by S1, then Img lf =I p Similarly, the image weight W at this location is set to the maximum value of 1.
[0083] Based on the above calculations, the reference low-frequency image Img is obtained. lf The gray weights of each pixel are stored in the image weight matrix W. As can be seen from formula (1), the larger the difference between the pixel value and the surrounding pixel value in the image, the smaller the value in the image weight matrix W. The value of W in the flat region is close to the maximum value.
[0084] S140. Process the vertical stripes in the first image based on the first image and the reference low-frequency image.
[0085] As an optional but not limited implementation, the vertical stripes in the first image are processed based on the first image and the reference low-frequency image, including the following steps D1-D2:
[0086] Step D1: Subtract the first image from the reference low-frequency image to obtain the reference high-frequency image. The reference high-frequency image contains the texture edges in the infrared image and the black or white vertical stripes that appear in the infrared image.
[0087] Step D2: Identify the stripe amplitude of the vertical stripes in the first image based on the reference high-frequency image, and remove the vertical stripes in the first image.
[0088] See Figure 3 The first image (an infrared image that has undergone non-uniform correction) is subtracted from a reference low-frequency image to separate the high-frequency components. These high-frequency components typically contain details such as texture, edges, and potential noise. This method yields a reference high-frequency image that highlights the more drastically changing parts of the first image. Since the reference low-frequency image is obtained by performing unilateral grayscale filtering on the area to be processed in the first image, it primarily preserves the low-frequency information of the image, namely the overall contour and slowly changing parts. Therefore, subtracting the first image from the reference low-frequency image yields a reference high-frequency image containing high-frequency information.
[0089] See Figure 3The reference high-frequency image contains texture edges from the infrared image and vertical stripes that appear as black or white stripes, especially alternating black and white stripes. Texture edges are the detailed features of objects in the image, such as the object's outline and texture. Vertical stripes, on the other hand, may be interference caused by defects in the imaging system, noise, or other reasons. These vertical stripes may affect the image quality and readability in the infrared image, and therefore need to be removed in subsequent steps.
[0090] See Figure 3 This method identifies the fringe amplitude of vertical stripes in a first image based on a reference high-frequency image. Fringe amplitude is an indicator describing the intensity of vertical stripes and can be obtained through analysis and calculation of the reference high-frequency image. For example, each column of pixels in the reference high-frequency image can be traversed, and the presence and intensity of vertical stripes can be determined based on the distribution of pixel values, thereby calculating the fringe amplitude. The purpose of identifying fringe amplitude is to better understand the characteristics of vertical stripes so as to adopt more effective methods in the process of removing vertical stripes.
[0091] See Figure 3 Based on the identified stripe amplitude values, vertical stripes in the first image are removed. Various methods can be used to remove vertical stripes, such as filtering, interpolation, and morphological processing. The specific method needs to be selected based on the characteristics of the vertical stripes and the specific situation of the image. During the removal of vertical stripes, it is important to preserve other important features of the image to avoid excessively affecting the overall image quality. Obtaining a reference high-frequency image by subtracting the images, and then identifying and removing the stripe amplitude values of the vertical stripes, can effectively improve the quality of the infrared image.
[0092] As an optional but not limited implementation, the stripe amplitude of the vertical stripes in the first image is identified based on a reference high-frequency image, including the following steps E1-E2:
[0093] Step E1: Traverse the pixel values of each column in the reference high-frequency image, determine the cumulative average value of the reference pixel corresponding to each column in the reference high-frequency image, and the gray weight corresponding to the reference pixel is greater than the preset gray weight. The preset gray weight is used to adjust the number of pixels in the reference high-frequency image that participate in the calculation of the stripe amplitude.
[0094] Step E2: Determine the stripe amplitude of each column of vertical stripes in the first image based on the cumulative average value of the corresponding pixel values of each column of reference pixels in the reference high-frequency image.
[0095] See Figure 3The purpose of performing column-by-column analysis on the reference high-frequency image is to determine the potential vertical stripe features in each column. Since vertical stripes are typically linear structures in the vertical direction in an image, traversing the pixel values of each column allows for more targeted detection and analysis of the stripe's behavior across different columns. Column-by-column analysis helps to more accurately identify the location and intensity of vertical stripes because the vertical continuity of the stripes means that pixels within the same column may have similar features.
[0096] See Figure 3 In each column, reference pixels are those with a grayscale weight greater than a preset grayscale weight. The grayscale weight is determined based on factors such as the pixel's grayscale value, position, and relationship to surrounding pixels, reflecting the pixel's importance in vertical stripe detection. The preset grayscale weight controls the number of pixels in the reference high-frequency image involved in stripe amplitude calculation. By adjusting the preset grayscale weight, the sensitivity to vertical stripes and detection accuracy can be controlled. If the preset grayscale weight is set high, only pixels with large grayscale weights will be considered reference pixels and participate in stripe amplitude calculation, reducing the influence of noise and other irrelevant pixels and improving detection accuracy. However, this may also miss some weaker vertical stripes. If the preset grayscale weight is set low, more pixels will be included in the calculation, potentially increasing sensitivity to noise, but also potentially detecting even weaker vertical stripes. For each reference pixel in a column, the cumulative average of the corresponding pixel values is calculated. This cumulative average reflects the overall intensity level of the reference pixels in that column and is used to determine the stripe amplitude.
[0097] See Figure 3 By averaging the pixel values of the reference pixels in each column of the reference high-frequency image, the fringe amplitude of each column of vertical stripes in the first image can be determined. Fringe amplitude is a quantitative indicator used to describe the intensity of the vertical stripes in each column. The larger the average value, the higher the intensity of the reference pixels in that column, the stronger the possible vertical stripes, and the larger the corresponding fringe amplitude. In this way, the fringe amplitude distribution of each column of vertical stripes in the first image can be obtained, providing specific parameters and a basis for subsequent vertical stripe removal. By reasonably setting preset grayscale weights, determining reference pixels, and calculating the average value, the fringe amplitude can be determined, effectively detecting and quantifying the intensity of vertical stripes, providing accurate information for vertical stripe removal.
[0098] As an optional but not limited implementation, removing vertical stripes from the first image includes the following steps:
[0099] For each column of pixels in the first image, the pixel value corresponding to each column of pixels in the first image is subtracted from the stripe amplitude value of each column of vertical stripes in the first image to obtain the infrared image after removing the vertical stripes.
[0100] The basic idea behind removing vertical stripes is to analyze the characteristics of the vertical stripes in the image and then take appropriate methods to reduce or eliminate their impact on image quality. Specifically, this involves subtracting the pixel value of each column in the first image from the amplitude of the corresponding vertical stripe in that column. Assuming that the vertical stripes in the first image are an additional interference component, by subtracting the intensity (stripe amplitude) of the vertical stripes from the original pixel values, the influence of the vertical stripes can be eliminated or weakened to some extent, thus obtaining the image after removing the vertical stripes.
[0101] See Figure 3 Because vertical stripes are typically distributed along a vertical direction in an image, processing them column-by-column allows for more targeted operations on these stripes. Each column of pixels may be affected by vertical stripes of varying intensities, thus requiring column-by-column analysis and processing. First, determine the pixel values corresponding to each column of pixels in the first image. These pixel values reflect the brightness or color information of that column in the original image. Then, obtain the stripe amplitude value of each column of vertical stripes in the first image. This stripe amplitude value is calculated in the previous steps and represents the intensity of the vertical stripe in that column. Subtract the pixel value of each column from its stripe amplitude value. If the pixel value of that column contains components of vertical stripes, this component can be subtracted by the subtraction, resulting in a result closer to the pixel values without vertical stripe interference.
[0102] For example, see Figure 3 The first image is compared with the reference low-frequency image Img. lf By subtracting, the high-frequency image Img is obtained. hf Img hf Reflecting the texture edges and vertical stripes that need to be removed in the first image, a weighted threshold W is defined here. th This preset grayscale weight threshold is used to adjust the number of pixels in the reference high-frequency image that participate in the calculation of stripe amplitude. Generally, a preset grayscale weight threshold between 80% and 90% of the unit weight yields the best vertical stripe removal effect; the specific value should be adjusted according to the actual situation. Traverse the reference high-frequency image Img. hf In each column of pixel values, if the weight W(p) of a pixel p in the i-th column is greater than the threshold W... th Then, the value Img of that pixel in the high-frequency image is accumulated. hf (p), and finally calculate the average value S after summing the data in this column. i This represents the stripe amplitude of column i. Subtract the stripe amplitude S of each column from the pixel value of the first image. i That is, to obtain the first image after removing the vertical stripes.
[0103] The technical solution of this invention determines a common image region in a visible light image that corresponds to an infrared image, using this region as a valuable reference image. By performing detailed vertical edge detection on this reference image, the specific coordinates of vertical edges in the infrared image can be determined with remarkable accuracy. In the single-sided grayscale filtering stage, specific image regions in the infrared image can be filtered using the reference detection results to obtain a reference low-frequency image. This highly targeted filtering method plays a crucial role in removing vertical stripes, effectively shielding the influence of vertical edge positions. Therefore, when processing vertical stripes in the first image based on the infrared image and the reference low-frequency image, the interference from vertical stripes in the infrared image can be effectively eliminated or mitigated. This solution solves the problem faced in scenes with numerous vertical objects, where vertical edges are easily misidentified as vertical stripes, leading to the troublesome ghosting problem introduced into the stripe removal algorithm.
[0104] Figure 4 This is a schematic diagram of an infrared image vertical stripe processing device provided in an embodiment of the present invention. The technical solution of the present invention is applicable to processing infrared images in scenes with a large number of vertical objects to eliminate vertical stripe interference and avoid the vertical edges being misjudged as vertical stripes, which would lead to ghosting in the vertical stripe removal algorithm. The infrared image vertical stripe processing device can be implemented in software and / or hardware and is generally integrated on any electronic device with network communication function, such as a mobile terminal, PC, or server.
[0105] like Figure 4 As shown, the infrared image vertical stripe processing device of this embodiment may include the following process:
[0106] The determining module 410 is used to determine a reference image formed by the first image and the second image, wherein the first image is an infrared image that has undergone non-uniform correction processing, the second image is a visible light image, and the reference image is a common image region in the second image that describes the same scene region together with the first image.
[0107] Detection module 420 is used to perform vertical edge detection on the reference image to obtain a reference detection result, the reference detection result being used to describe the position coordinates of the vertical edge in the reference image;
[0108] The filtering module 430 is used to select a portion of the image region in the first image to perform unilateral grayscale filtering based on the reference detection result to obtain a reference low-frequency image;
[0109] The processing module 440 is used to process the vertical stripes in the first image based on the first image and the reference low-frequency image.
[0110] Based on the above embodiments, optionally, a reference image formed by the first image and the second image is determined, including:
[0111] Based on the pixel mapping relationship from the first image to the second image, the reference boundary range of the first image in the second image is determined, and the reference boundary range is the smallest rectangular area range covered by the first image after it is mapped to the second image;
[0112] The overlapping area between the reference boundary range of the first image in the second image and the boundary range of the second image is defined as the reference image formed by the first image and the second image.
[0113] Based on the above embodiments, optionally, vertical edge detection is performed on the reference image to obtain a reference detection result, including:
[0114] The reference image is scaled to obtain a candidate image, and the difference between the resolution of the candidate image and the resolution of the first image is less than a preset difference.
[0115] The candidate image is processed into a grayscale value to obtain a target image, and the target image is subjected to vertical edge detection to obtain a reference detection result. The reference detection result is used to record the pixel positions corresponding to the edges in the reference image whose gradient direction tends to be horizontal.
[0116] Based on the above embodiments, optionally, a reference low-frequency image is obtained by performing unilateral grayscale filtering on a portion of the image region in the first image according to the reference detection result, including:
[0117] The Gaussian grayscale weight table used in the first image is determined, and the grayscale weight of each pixel in the first image is determined by querying the Gaussian grayscale weight table.
[0118] The image region to be processed in the first image is determined based on the reference detection result. The image region to be processed is the remaining image region in the first image other than the image region corresponding to the vertical edge position coordinates in the reference detection result.
[0119] Based on the grayscale weights of each pixel in the first image, a reference low-frequency image is obtained by performing unilateral grayscale filtering on the image region to be processed in the first image.
[0120] Based on the above embodiments, optionally, the vertical stripes in the first image are processed according to the first image and the reference low-frequency image, including:
[0121] The reference high-frequency image is obtained by subtracting the first image from the reference low-frequency image. The reference high-frequency image includes texture edges from the infrared image and vertical stripes that appear as black or white stripes on the infrared image.
[0122] Based on the reference high-frequency image, the stripe amplitude of the vertical stripes in the first image is identified, and the vertical stripes in the first image are removed.
[0123] Based on the above embodiments, optionally, identifying the stripe amplitude of the vertical stripes in the first image based on the reference high-frequency image includes:
[0124] Traverse the pixel values of each column in the reference high-frequency image, determine the cumulative average value of the reference pixel corresponding to each column in the reference high-frequency image, the gray weight corresponding to the reference pixel is greater than the preset gray weight, and the preset gray weight is used to adjust the number of pixels in the reference high-frequency image that participate in the stripe amplitude calculation.
[0125] The stripe amplitude of each column of vertical stripes in the first image is determined by averaging the pixel values corresponding to the reference pixels in each column of the reference high-frequency image.
[0126] Optionally, based on the above embodiments, the vertical stripes in the first image are removed, including:
[0127] For each column of pixels in the first image, the pixel value corresponding to each column of pixels in the first image is subtracted from the stripe amplitude value of each column of vertical stripes in the first image to obtain the infrared image after removing the vertical stripes.
[0128] The technical solution of this invention determines a common image region in a visible light image that corresponds to an infrared image, using this region as a valuable reference image. By performing detailed vertical edge detection on this reference image, the specific coordinates of vertical edges in the infrared image can be determined with remarkable accuracy. In the single-sided grayscale filtering stage, specific image regions in the infrared image can be filtered using the reference detection results to obtain a reference low-frequency image. This highly targeted filtering method plays a crucial role in removing vertical stripes, effectively shielding the influence of vertical edge positions. Therefore, when processing vertical stripes in the first image based on the infrared image and the reference low-frequency image, the interference from vertical stripes in the infrared image can be effectively eliminated or mitigated. This solution solves the problem faced in scenes with numerous vertical objects, where vertical edges are easily misidentified as vertical stripes, leading to the troublesome ghosting problem introduced into the stripe removal algorithm.
[0129] The infrared image vertical stripe processing device provided in the embodiments of the present invention can execute the infrared image vertical stripe processing method provided in any embodiment of the present invention, and has the corresponding functional modules and beneficial effects of executing the infrared image vertical stripe processing method.
[0130] It is worth noting that the various units and modules included in the above-mentioned device are only divided according to functional logic, but are not limited to the above division, as long as the corresponding functions can be realized; in addition, the specific names of each functional unit are only for easy differentiation and are not used to limit the protection scope of the embodiments of the present invention.
[0131] Figure 5 This is a schematic diagram of the structure of an electronic device provided in an embodiment of the present invention. Refer to the following... Figure 5 It illustrates an electronic device suitable for implementing embodiments of the present invention (e.g., Figure 5 The diagram below shows the structure of the terminal device (or server) 600. The terminal device in this embodiment may include, but is not limited to, mobile terminals such as mobile phones, laptops, digital broadcast receivers, PDAs (personal digital assistants), PADs (tablet computers), PMPs (portable multimedia players), and in-vehicle terminals (e.g., in-vehicle navigation terminals), as well as fixed terminals such as digital TVs and desktop computers. Figure 5 The electronic device shown is merely an example and should not be construed as limiting the functionality and scope of use of the embodiments of the present invention.
[0132] like Figure 5 As shown, electronic device 600 may include a processing unit (e.g., a central processing unit, a graphics processing unit, etc.) 601, which can perform various appropriate actions and processes according to a program stored in read-only memory (ROM) 602 or a program loaded from storage device 608 into random access memory (RAM) 603. The RAM 603 also stores various programs and data required for the operation of electronic device 600. The processing unit 601, ROM 602, and RAM 603 are interconnected via bus 604. An edit / output (I / O) interface 605 is also connected to bus 604.
[0133] Typically, the following devices can be connected to I / O interface 605: input devices 606 including, for example, touchscreens, touchpads, keyboards, mice, cameras, microphones, accelerometers, gyroscopes, etc.; output devices 607 including, for example, liquid crystal displays (LCDs), speakers, vibrators, etc.; storage devices 608 including, for example, magnetic tapes, hard disks, etc.; and communication devices 609. Communication device 609 allows electronic device 600 to communicate wirelessly or wiredly with other devices to exchange data. Although Figure 5An electronic device 600 with various devices is shown; however, it should be understood that it is not required to implement or possess all of the devices shown. More or fewer devices may be implemented or possessed alternatively.
[0134] In particular, according to embodiments of the present invention, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, embodiments of the present invention include a computer program product comprising a computer program carried on a non-transitory computer-readable medium, the computer program containing program code for performing the infrared image vertical stripe processing method shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network via a communication device 609, or installed from a storage device 608, or installed from a ROM 602. When the computer program is executed by the processing device 601, it performs the functions defined in the infrared image vertical stripe processing method of the embodiments of the present invention.
[0135] The names of the messages or information exchanged between the multiple devices in the embodiments of the present invention are for illustrative purposes only and are not intended to limit the scope of these messages or information.
[0136] The electronic device provided in this embodiment of the invention and the infrared image vertical stripe processing method provided in the above embodiments belong to the same inventive concept. Technical details not described in detail in this embodiment can be found in the above embodiments, and this embodiment has the same beneficial effects as the above embodiments.
[0137] This invention provides a computer storage medium storing a computer program that, when executed by a processor, implements the infrared image vertical stripe processing method provided in the above embodiments.
[0138] It should be noted that the computer-readable medium described above in this invention can be a computer-readable signal medium, a computer-readable storage medium, or any combination thereof. A computer-readable storage medium can be, for example,—but not limited to—an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples of a computer-readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer disk, a hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination thereof. In this invention, a computer-readable storage medium can be any tangible medium containing or storing a program that can be used by or in conjunction with an instruction execution system, apparatus, or device. In this invention, a computer-readable signal medium can include a data signal propagated in baseband or as part of a carrier wave, carrying computer-readable program code. Such propagated data signals can take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. A computer-readable signal medium can be any computer-readable medium other than a computer-readable storage medium, which can send, propagate, or transmit a program for use by or in connection with an instruction execution system, apparatus, or device. The program code contained on the computer-readable medium can be transmitted using any suitable medium, including but not limited to: wires, optical fibers, RF (radio frequency), etc., or any suitable combination thereof.
[0139] In some implementations, clients and servers can communicate using any currently known or future-developed network protocol such as HTTP (Hypertext Transfer Protocol) and can interconnect with digital data communication (e.g., communication networks) of any form or medium. Examples of communication networks include local area networks (“LANs”), wide area networks (“WANs”), the Internet (e.g., the Internet of Things), and peer-to-peer networks (e.g., ad hoc peer-to-peer networks), as well as any currently known or future-developed networks.
[0140] The aforementioned computer-readable medium may be included in the aforementioned electronic device; or it may exist independently and not assembled into the electronic device.
[0141] The aforementioned computer-readable medium carries one or more programs that, when executed by the electronic device, cause the electronic device to: determine a reference image formed by a first image and a second image, wherein the first image is an infrared image processed by non-uniform correction, the second image is a visible light image, and the reference image is a common image region in the second image that describes the same scene region as the first image; perform vertical edge detection on the reference image to obtain a reference detection result, the reference detection result being used to describe the vertical edge position coordinates in the reference image; select a portion of the image region in the first image to perform unilateral grayscale filtering based on the reference detection result to obtain a reference low-frequency image; and process the vertical stripes in the first image based on the first image and the reference low-frequency image.
[0142] Computer program code for performing the operations of this invention can be written in one or more programming languages or a combination thereof, including but not limited to object-oriented programming languages such as Java, Smalltalk, and C++, as well as conventional procedural programming languages such as the "C" language or similar programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving remote computers, the remote computer can be connected to the user's computer via any type of network—including a local area network (LAN) or a wide area network (WAN)—or can be connected to an external computer (e.g., via the Internet using an Internet service provider).
[0143] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of the present invention. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions.
[0144] The units described in the embodiments of the present invention can be implemented in software or in hardware. The name of a unit does not necessarily limit the unit itself; for example, the first acquisition unit can also be described as "a unit that acquires at least two Internet Protocol addresses".
[0145] The functions described above in this document can be performed, at least in part, by one or more hardware logic components. For example, exemplary types of hardware logic components that can be used, without limitation, include: Field Programmable Gate Arrays (FPGAs), Application-Specific Integrated Circuits (ASICs), Application Standard Products (ASSPs), System-on-Chip (SoCs), Complex Programmable Logic Devices (CPLDs), and so on.
[0146] In the context of this invention, a machine-readable medium can be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, apparatus, or device. A machine-readable medium can be a machine-readable signal medium or a machine-readable storage medium. Machine-readable media can include, but are not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination of the foregoing. More specific examples of machine-readable storage media include electrical connections based on one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fibers, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the foregoing.
[0147] The above description is merely a preferred embodiment of the present invention and an explanation of the technical principles employed. Those skilled in the art should understand that the scope of disclosure in this invention is not limited to technical solutions formed by specific combinations of the above-described technical features, but should also cover other technical solutions formed by arbitrary combinations of the above-described technical features or their equivalents without departing from the above-described concept. For example, technical solutions formed by substituting the above features with (but not limited to) technical features with similar functions disclosed in this invention.
[0148] Furthermore, while the operations are described in a specific order, this should not be construed as requiring these operations to be performed in the specific order shown or in sequential order. In certain circumstances, multitasking and parallel processing may be advantageous. Similarly, while several specific implementation details are included in the above discussion, these should not be construed as limiting the scope of the invention. Certain features described in the context of individual embodiments may also be implemented in combination in a single embodiment. Conversely, various features described in the context of a single embodiment may also be implemented individually or in any suitable sub-combination in multiple embodiments.
[0149] Although the subject matter has been described using language specific to structural features and / or methodological logic, it should be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or actions described above. Rather, the specific features and actions described above are merely illustrative examples of implementing the claims.
Claims
1. A method for processing vertical stripes in infrared images, characterized in that, The method includes: A reference image is determined by the first image and the second image, wherein the first image is an infrared image that has undergone non-uniform correction processing, the second image is a visible light image, and the reference image is a common image region in the second image that describes the same scene region as the first image. Vertical edge detection is performed on the reference image to obtain a reference detection result, which is used to describe the coordinates of the vertical edge position in the reference image; Based on the reference detection results, a reference low-frequency image is obtained by performing unilateral grayscale filtering on a portion of the image region in the first image. The vertical stripes in the first image are processed based on the first image and the reference low-frequency image.
2. The method according to claim 1, characterized in that, Determine a reference image formed by the first image and the second image, including: Based on the pixel mapping relationship from the first image to the second image, the reference boundary range of the first image in the second image is determined, and the reference boundary range is the smallest rectangular area range covered by the first image after it is mapped to the second image; The overlapping area between the reference boundary range of the first image in the second image and the boundary range of the second image is defined as the reference image formed by the first image and the second image.
3. The method according to claim 1, characterized in that, The reference image is subjected to vertical edge detection to obtain a reference detection result, including: The reference image is scaled to obtain a candidate image, and the difference between the resolution of the candidate image and the resolution of the first image is less than a preset difference. The candidate image is processed into a grayscale value to obtain a target image, and the target image is subjected to vertical edge detection to obtain a reference detection result. The reference detection result is used to record the pixel positions corresponding to the edges in the reference image whose gradient direction tends to be horizontal.
4. The method according to claim 1, characterized in that, Based on the reference detection results, a reference low-frequency image is obtained by performing unilateral grayscale filtering on a portion of the image region in the first image, including: The Gaussian grayscale weight table used in the first image is determined, and the grayscale weight of each pixel in the first image is determined by querying the Gaussian grayscale weight table. The image region to be processed in the first image is determined based on the reference detection result. The image region to be processed is the remaining image region in the first image other than the image region corresponding to the vertical edge position coordinates in the reference detection result. Based on the grayscale weights of each pixel in the first image, a reference low-frequency image is obtained by performing unilateral grayscale filtering on the image region to be processed in the first image.
5. The method according to claim 1, characterized in that, Processing the vertical stripes in the first image based on the first image and the reference low-frequency image includes: The reference high-frequency image is obtained by subtracting the first image from the reference low-frequency image. The reference high-frequency image includes texture edges from the infrared image and vertical stripes that appear as black or white stripes on the infrared image. Based on the reference high-frequency image, the stripe amplitude of the vertical stripes in the first image is identified, and the vertical stripes in the first image are removed.
6. The method according to claim 5, characterized in that, Identifying the stripe amplitude of vertical stripes in the first image based on the reference high-frequency image includes: Traverse the pixel values of each column in the reference high-frequency image, determine the cumulative average value of the reference pixel corresponding to each column in the reference high-frequency image, the gray weight corresponding to the reference pixel is greater than the preset gray weight, and the preset gray weight is used to adjust the number of pixels in the reference high-frequency image that participate in the stripe amplitude calculation. The stripe amplitude of each column of vertical stripes in the first image is determined by averaging the pixel values corresponding to the reference pixels in each column of the reference high-frequency image.
7. The method according to claim 6, characterized in that, Removing vertical stripes from the first image includes: For each column of pixels in the first image, the pixel value corresponding to each column of pixels in the first image is subtracted from the stripe amplitude value of each column of vertical stripes in the first image to obtain the infrared image after removing the vertical stripes.
8. An infrared image vertical stripe processing device, characterized in that, The device includes: The determination module is used to determine a reference image formed by the first image and the second image, wherein the first image is an infrared image that has undergone non-uniform correction processing, the second image is a visible light image, and the reference image is a common image region in the second image that describes the same scene region together with the first image; The detection module is used to perform vertical edge detection on the reference image to obtain a reference detection result, which is used to describe the position coordinates of the vertical edge in the reference image; The filtering module is used to select a portion of the image region in the first image for unilateral grayscale filtering based on the reference detection result to obtain a reference low-frequency image; The processing module is used to process the vertical stripes in the first image based on the first image and the reference low-frequency image.
9. An electronic device, characterized in that, The electronic device includes: One or more processors; Storage device for storing one or more programs. When the one or more programs are executed by the one or more processors, the one or more processors implement the infrared image vertical stripe processing method according to any one of claims 1-7.
10. A storage medium containing computer-executable instructions, characterized in that, The computer-executable instructions, when executed by a computer processor, are used to perform the infrared image vertical stripe processing method according to any one of claims 1-7.