Methods, apparatus, equipment, media, and programs for eliminating vertical stripes in infrared images.

By employing overlapping block segmentation, hybrid filtering, and dynamic thresholding, the problem of vertical stripe noise in mid-wave infrared camera images was solved, achieving efficient removal of vertical stripes while preserving edges and details, and is applicable to various environmental conditions.

CN122312427APending Publication Date: 2026-06-30安徽光智科技有限公司
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202610405987.8
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2026-03-31
Publication Date
2026-06-30

AI Technical Summary

Technical Problem

Due to limitations in detector manufacturing processes, mid-wave infrared cameras produce vertical stripe noise (column-oriented non-uniform noise) in their images. Existing technologies struggle to efficiently remove these vertical stripes without affecting image edges and details.

Method used

By employing methods such as overlapping block processing, hybrid filtering, dynamic thresholding, and inter-frame weighted optimization, vertical stripe noise is accurately extracted and removed, preserving image edges and details.

Benefits of technology

It achieves efficient removal of vertical stripe noise with a removal rate of ≥90%, while preserving image edges and details. It is adaptable to different ambient temperatures and integration times and is suitable for mid-wave infrared cameras.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122312427A_ABST
    Figure CN122312427A_ABST
Patent Text Reader

Abstract

This application relates to a method, apparatus, device, medium, and program product for removing vertical stripes from infrared images, comprising: performing overlapping block processing on the infrared image to be processed; performing grayscale correction processing on each image block according to a preset scene threshold to calculate the column median vector; processing the column median vector using a hybrid filtering strategy to obtain initial vertical stripe components; filtering true vertical stripe components from the initial vertical stripe components based on column gradient trends, and truncating the true vertical stripe components based on a dynamic threshold to obtain accurate vertical stripe components; performing inter-frame weighted optimization by combining vertical stripe feature data from historical frames to obtain target vertical stripe components; and removing the target vertical stripe components from the infrared image to be processed to obtain the target infrared image. This application, through overlapping block processing, hybrid filtering, dynamic threshold filtering, and inter-frame weighted optimization, can efficiently remove vertical stripes while preserving the edges and details of the image.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of infrared image processing technology, and in particular to a method, apparatus, device, medium, and program product for eliminating vertical stripes in infrared images. Background Technology

[0002] Due to limitations in detector manufacturing processes, inconsistent bias voltages in the column output circuits of mid-wave infrared cameras can cause vertical stripe noise (column-oriented non-uniform noise) in the image. This type of noise manifests as vertical stripes that run through the entire image or exist in specific areas, typically with a width of less than or equal to two columns. It severely affects the visual quality of the image and interferes with subsequent processing such as detail enhancement and target recognition.

[0003] In related technologies, vertical line removal schemes are prone to confusing vertical lines with edges, resulting in blurred edges or residual vertical lines after vertical line removal. Furthermore, they may not fully cover local vertical lines, leading to uneven processing results. Summary of the Invention

[0004] Therefore, it is necessary to provide an infrared image vertical stripe removal method, apparatus, device, medium, and program product that can efficiently remove vertical stripes while protecting image edges and details, and has strong dynamic adaptability, in response to the above-mentioned technical problems.

[0005] Firstly, this application provides a method for eliminating vertical stripes in infrared images. The method includes: The infrared image to be processed is subjected to overlapping and block segmentation to obtain multiple image blocks; Each image block is subjected to grayscale correction processing according to a preset scene threshold, and the column midpoint vector of the corrected image block is calculated. The column median vector is processed using a hybrid filtering strategy to obtain the initial vertical stripe components; Based on the column gradient trend, the true vertical ridge components are selected from the initial vertical ridge components, and the true vertical ridge components are truncated based on the dynamic threshold to obtain the accurate vertical ridge components. The vertical stripe feature data of the current frame is calculated based on the precise vertical stripe component, and inter-frame weighted optimization is performed by combining the vertical stripe feature data of historical frames to obtain the target vertical stripe component. The target vertical stripe component is removed from the infrared image to be processed to obtain the target infrared image.

[0006] In one embodiment, the overlapping and segmentation of the infrared image to be processed to obtain multiple image blocks includes: The infrared image to be processed is divided into blocks according to the target block step size, the preset image width, and the target overlap rate to obtain multiple image blocks; wherein, the target overlap rate is the overlap rate between two adjacent image blocks, and the target overlap rate is greater than or equal to the preset overlap rate threshold; the size of the image block is (2×hStep+1)×iW, where hStep is the target block step size and iW is the preset image width; the missing data of the edge region is filled in using a preset non-zero padding method to obtain the image block of the corresponding edge region.

[0007] In one embodiment, the step of processing the column median vector using a hybrid filtering strategy to obtain the initial vertical stripe components includes: The median vector of the column is subjected to mean filtering to obtain a smoothed vector; Using the column median vector as a guiding image, the smoothed vector is subjected to guided filtering to obtain a filtered vector; The initial vertical stripe component is calculated by subtracting the column midpoint vector and the filter vector.

[0008] In one embodiment, the step of filtering true vertical ridge components from the initial vertical ridge components based on column gradient trends includes: By traversing the initial vertical ridge components, the first left gradient, second left gradient, first right gradient, and second right gradient of each initial vertical ridge component are calculated respectively. If the first left gradient and the second left gradient have the same direction and the first right gradient and the second right gradient have the same direction, then the initial vertical stripe component is determined to be the true vertical stripe component.

[0009] In one embodiment, the step of truncating the true vertical line component based on a dynamic threshold to obtain the accurate vertical line component includes: Obtain a first dynamic hard threshold and a second dynamic hard threshold; wherein the dynamic hard threshold is less than the second dynamic hard threshold, and both the first dynamic hard threshold and the second dynamic hard threshold are positive numbers; If the absolute value of the true vertical line component is less than the first dynamic hard threshold, the precise vertical line component is determined to be 0; If the actual vertical ridge component is greater than or equal to the second dynamic hard threshold, the precise vertical ridge component is determined to be the second dynamic hard threshold. If the true vertical ridge component is less than or equal to a negative number of the second dynamic hard threshold, the precise vertical ridge component is determined to be a negative number of the second dynamic hard threshold. If the true vertical ridge component does not meet any of the above conditions, the precise vertical ridge component is determined to be the true vertical ridge component.

[0010] In one embodiment, the step of calculating the vertical stripe feature data of the current frame based on the precise vertical stripe component, and performing inter-frame weighted optimization by combining the vertical stripe feature data of historical frames to obtain the target vertical stripe component includes: The median of the precise vertical stripe components is taken as the vertical stripe feature data of the current frame; The target vertical stripe component is obtained by performing inter-frame weighted optimization based on a preset mixing coefficient, the vertical stripe feature data of the current frame, and the vertical stripe feature data of the historical frames, wherein the vertical stripe feature data of the historical frames includes at least the vertical stripe feature data of the previous frame.

[0011] Secondly, this application also provides an infrared image vertical stripe removal device. The device includes: The segmentation module is used to perform overlapping block processing on the infrared image to be processed, resulting in multiple image blocks; The correction module is used to perform grayscale correction processing on each image block according to a preset scene threshold, and to calculate the column midpoint vector of the corrected image block; The filtering module is used to process the column median vector using a hybrid filtering strategy to obtain the initial vertical stripe components; The filtering module is used to filter the true vertical ridge components from the initial vertical ridge components based on the column gradient trend, and to truncate the true vertical ridge components based on a dynamic threshold to obtain the accurate vertical ridge components. The optimization module is used to calculate the vertical stripe feature data of the current frame based on the precise vertical stripe component, and perform inter-frame weighted optimization by combining the vertical stripe feature data of historical frames to obtain the target vertical stripe component. The elimination module is used to remove the target vertical stripe component from the infrared image to be processed to obtain the target infrared image.

[0012] Thirdly, this application also provides a computer device. The computer device includes a memory and a processor, the memory storing a computer program, and the processor executing the computer program to implement the steps of the infrared image vertical stripe removal method described in the first aspect.

[0013] Fourthly, this application also provides a computer-readable storage medium. The computer-readable storage medium stores a computer program thereon, which, when executed by a processor, implements the steps of the infrared image vertical stripe removal method described in the first aspect.

[0014] Fifthly, this application also provides a computer program product. The computer program product includes a computer program that, when executed by a processor, implements the steps of the infrared image vertical stripe removal method described in the first aspect.

[0015] The aforementioned infrared image vertical stripe removal method, apparatus, device, medium, and program products include: performing overlapping block processing on the infrared image to be processed; performing grayscale correction processing on each image block according to a preset scene threshold to calculate the column median vector; processing the column median vector using a hybrid filtering strategy to obtain initial vertical stripe components; filtering true vertical stripe components from the initial vertical stripe components based on column gradient trends, and truncating the true vertical stripe components based on a dynamic threshold to obtain accurate vertical stripe components; performing inter-frame weighted optimization by combining vertical stripe feature data from historical frames to obtain target vertical stripe components; and removing the target vertical stripe components from the infrared image to be processed to obtain the target infrared image. This application, through overlapping block processing, hybrid filtering, dynamic threshold filtering, and inter-frame weighted optimization, can efficiently remove vertical stripes while preserving image edges and details. Attached Figure Description

[0016] Figure 1 This is a flowchart illustrating an infrared image vertical stripe removal method in one embodiment; Figure 2 This is a schematic diagram of an image block obtained by overlapping and segmenting an infrared image to be processed in one embodiment; Figure 3 This is a schematic diagram of the steps for calculating the initial vertical stripe component in one embodiment; Figure 4 This is a schematic diagram of an unprocessed infrared image with vertical stripes in one embodiment; Figure 5 This is a schematic diagram of a target infrared image processed by an infrared image vertical stripe removal method in one embodiment; Figure 6 This is a schematic diagram of an unprocessed infrared image with vertical stripes in another embodiment; Figure 7 This is a schematic diagram of a target infrared image processed by an infrared image vertical stripe removal method in another embodiment; Figure 8 This is a schematic diagram of an unprocessed infrared image with vertical stripes in another embodiment; Figure 9 This is a schematic diagram of a target infrared image processed by the infrared image vertical stripe removal method in another embodiment; Figure 10 This is a structural block diagram of an infrared image vertical stripe removal device in one embodiment; Figure 11 This is an internal structural diagram of a computer device in one embodiment. Detailed Implementation

[0017] To make the objectives, technical solutions, and advantages of this application clearer, the following detailed description is provided in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the scope of this application.

[0018] The infrared image vertical stripe removal method provided in this application embodiment can be applied to terminal devices such as infrared cameras, security monitoring equipment, and target detection terminals. The terminal device has infrared image acquisition or reception functions and can execute the processing steps of the method.

[0019] In one embodiment, such as Figure 1 As shown, an infrared image vertical stripe removal method is provided, which can be applied to terminal devices such as infrared cameras, security monitoring equipment, and target detection terminals. These terminal devices have infrared image acquisition or reception functions. The infrared image vertical stripe removal method includes the following steps: Step 101: Perform overlapping block processing on the infrared image to be processed to obtain multiple image blocks.

[0020] In this embodiment, the infrared image to be processed refers to the infrared image acquired by the terminal device that requires vertical stripe removal processing. The infrared image to be processed can also be referred to as the input image of the terminal device. Specifically, the vertical stripe noise in the infrared image to be processed often manifests as column-oriented additive noise, and its pixel grayscale values ​​satisfy the following relationship: in, The input image is the infrared image to be processed. This is a real image (without vertical lines). This refers to vertical stripe noise. The core principle of the infrared image vertical stripe removal method provided in this embodiment is to accurately extract the column noise component. The vertical lines are then subtracted from the input image to eliminate them.

[0021] Overlapping block processing refers to dividing the infrared image to be processed into multiple image blocks, with some areas overlapping between adjacent image blocks. In this embodiment, the specific steps of overlapping block processing include: The infrared image to be processed is divided into multiple image blocks according to the target block step size, preset image width, and target overlap rate. The target overlap rate is the overlap rate between two adjacent image blocks, and the target overlap rate is greater than or equal to a preset overlap rate threshold. The size of each image block is (2×hStep+1)×iW, where hStep is the target block step size and iW is the preset image width.

[0022] In this embodiment, the image block partImg is formed by taking the i-th row as the center and taking the hStep rows above and below it. The size of the image block partImg is (2×hStep+1)×iW.

[0023] Specifically, hStep can take any value from 1 to 3 to adaptively divide the infrared image to be processed into blocks, thereby achieving local vertical stripe extraction. In one embodiment, image block division can be implemented using either horizontal or vertical block division to adapt to images of different resolutions. The specific value of the preset image width iW is determined based on the resolution of the infrared image to be processed in the actual application scenario, and is not limited to a specific value here. Specifically, when hStep is 2, the resulting image blocks partImg are as follows: Figure 2 As shown.

[0024] Specifically, if the i-th row is located in the edge region of the infrared image to be processed, this embodiment can use a preset non-zero padding method to complete the missing data in the edge region, obtaining the corresponding image block of the edge region. Specifically, the preset non-zero padding method can be repeated expansion padding or mirror copy padding. Based on the above scheme, a non-zero padding method can be used to complete the missing data in the edge region, so as to effectively avoid image distortion when extracting edge vertical lines.

[0025] Specifically, the specific value of the preset overlap rate threshold can be set according to the needs of the actual application scenario. For example, the preset overlap rate threshold can be set to 60%, meaning that after dividing the image into blocks, the overlap rate between two adjacent image blocks must be ≥60% to ensure that the divided image blocks can cover the entire image and avoid missing local discontinuous vertical lines. In a feasible embodiment, the preset overlap rate threshold can also be set to 0, meaning that a non-overlapping division method can be used to divide the infrared image to be processed into blocks. The actual value of the preset overlap rate threshold can be adaptively configured according to the vertical line situation in the infrared image to be processed.

[0026] Step 102: Perform grayscale correction processing on each image block according to the preset scene threshold, and calculate the column midpoint vector of the corrected image block.

[0027] In this embodiment, each image block `partImg` is processed according to a preset grayscale correction rule. The preset grayscale correction rule involves setting a preset scene threshold and calculating the absolute value of the grayscale difference between any pixel within the image block and the center pixel of the same column. If the absolute value of the grayscale difference is greater than the preset scene threshold, the grayscale value of that pixel is corrected to the grayscale value of the center pixel of the same column. If the absolute value of the grayscale difference is less than or equal to the preset scene threshold, the original grayscale value of that pixel is maintained. This effectively suppresses possible grayscale jumps in the infrared image and protects local details.

[0028] In this embodiment, the expression for the preset grayscale correction rule is as follows: in, These are the corrected pixel values. The original pixel value. The pixel value of the center point of the same column as the pixel. The preset scene threshold.

[0029] It should be noted that the actual value of the preset scene threshold can be determined based on the resolution of the infrared image to be processed in the actual application scenario or the actual type of the terminal device that acquires the infrared image to be processed.

[0030] Specifically, after performing grayscale correction on each image block, the corrected image block is obtained. The median value of each column is then taken, i.e., the median of each corrected image block is calculated. This yields the corresponding column midpoint vector. .

[0031] Step 103: Use a hybrid filtering strategy to process the column median vector to obtain the initial vertical stripe components.

[0032] In this embodiment, the hybrid filtering strategy can be a filtering processing strategy that combines multiple filtering methods, mainly used to solve problems such as insufficient noise suppression or blurred details that exist in single filtering.

[0033] Specifically, the hybrid filtering strategy can be a combination of smoothing filtering and guided filtering, or a combination of Gaussian filtering and bilateral filtering. It should be noted that the actual filtering method of the hybrid filtering strategy can be adaptively replaced according to the needs of the actual application scenario.

[0034] In this embodiment, the column median vector is processed by a hybrid filtering strategy to obtain the corresponding filtered components. The difference between the column median vector and the filtered components is calculated to obtain the initial vertical stripe components.

[0035] Step 104: Based on the column gradient trend, the true vertical ridge components are selected from the initial vertical ridge components, and the true vertical ridge components are truncated based on the dynamic threshold to obtain the accurate vertical ridge components.

[0036] In this embodiment, by combining column gradient trend analysis and dynamic threshold truncation processing, the accurate vertical stripe component is obtained, which can effectively distinguish the vertical stripe features and edges of the infrared image to be processed, so as to accurately remove the vertical stripes and preserve the image details and edges.

[0037] In this embodiment, step 104 is divided into two steps: column gradient trend analysis and dynamic threshold truncation processing. The specific steps of the column gradient trend analysis include: Traverse the initial vertical fringe components and calculate the first left gradient, second left gradient, first right gradient and second right gradient of each initial vertical fringe component.

[0038] If the directions of the first left gradient and the second left gradient are the same, and the directions of the first right gradient and the second right gradient are the same, then the initial vertical stripe component is determined to be the true vertical stripe component.

[0039] In this embodiment, the median vectors of all columns in the initial vertical stripe component are traversed, and each is calculated. The gradients of five adjacent columns are used to obtain the first left gradient, the second left gradient, the first right gradient, and the second right gradient. The gradient calculation formula for 5 adjacent columns includes: in, The first left gradient, The second left gradient, The first right gradient, This is the second right gradient. Specifically, the first left gradient... The calculation is performed on the two columns furthest to the left of the current column (the first two columns). Column and number The difference between columns reflects the local grayscale change trend at a position further to the left of the current column. Second left gradient. The calculation is performed on the column immediately to the left of the current column (the first column). (column) and the current column (number) The difference between columns reflects the direct grayscale change when moving from the leftmost adjacent column to the current column. First right gradient. The calculation is performed between the current column and the column immediately to its right (the first column). The difference between columns reflects the direct grayscale change when moving from the current column to the immediately adjacent column on the right. Second right gradient The calculation is performed between the column immediately to the right and the column furthest to the right (the column with the rightmost column). The difference between columns reflects the local grayscale change trend at a position further to the right of the current column.

[0040] In this embodiment, when and Same number, and and When the first and second left gradients have the same direction, and the first and second right gradients also have the same direction, the median vector of that column is determined. The corresponding initial vertical stripe component is the true vertical stripe component, that is, it is determined to be a vertical stripe based on the grayscale variation pattern of the column vertical stripes. If the above conditions are not met, then the median vector of that column can be determined. The corresponding initial vertical ridge component is the real edge, and the grayscale change does not conform to the grayscale change rule of column vertical ridges.

[0041] Specifically, the steps of dynamic threshold truncation processing include: Obtain a first dynamic hard threshold and a second dynamic hard threshold; wherein the dynamic hard threshold is less than the second dynamic hard threshold, and both the first dynamic hard threshold and the second dynamic hard threshold are positive numbers.

[0042] If the absolute value of the true vertical ridge component is less than the first dynamic hard threshold, the precise vertical ridge component is determined to be 0.

[0043] If the actual vertical ridge component is greater than or equal to the second dynamic hard threshold, the accurate vertical ridge component is determined as the second dynamic hard threshold.

[0044] If the true vertical ridge component is less than or equal to a negative number of the second dynamic hard threshold, the accurate vertical ridge component is determined to be a negative number of the second dynamic hard threshold.

[0045] If the true vertical ridge component does not meet any of the above conditions, the precise vertical ridge component is determined to be the true vertical ridge component.

[0046] In this embodiment, a first dynamic hard threshold is set. Second dynamic hard threshold Then, the actual vertical ridge component can be truncated. The specific truncation expression is as follows: Specifically, This represents the true vertical bar component obtained through column gradient trend analysis. First dynamic hard threshold. Second dynamic hard threshold All of these can adaptively change according to the needs of the actual application scenario to adapt to different noise levels. For example, they can be based on the local variance of the image. The first dynamic hard threshold is calculated. Second dynamic hard threshold The first dynamic hard threshold can be set to... The second dynamic hard threshold can be set to .

[0047] Based on the above scheme, this embodiment can accurately distinguish between vertical lines and the edges of real vertical lines through dynamic threshold truncation processing, thereby obtaining accurate vertical line components. This effectively solves the problem of edge confusion in existing technologies.

[0048] In this embodiment, the initial vertical stripe component This is the difference between the column median vector and the filtered component, without thresholding. Precise vertical stripe component. This is the result of gradient filtering and dynamic threshold truncation of the initial vertical ridge components. Vertical ridge feature data. For precise vertical stripe components The column midpoint is used for inter-frame weighted suppression of flickering vertical lines.

[0049] Step 105: Calculate the vertical stripe feature data of the current frame based on the accurate vertical stripe component, and perform inter-frame weighted optimization by combining the vertical stripe feature data of historical frames to obtain the target vertical stripe component.

[0050] In this embodiment, the vertical stripe feature data can be the median data of the precise vertical stripe components. The vertical stripe feature data of the previous frame is the vertical stripe feature data obtained after processing the infrared image to be processed in the current frame through steps 101-105. The vertical stripe feature data of the historical frames can be the vertical stripe feature data of the previous frame or the vertical stripe feature data of the previous two frames. The actual number of historical frames can be adaptively set according to the needs of the actual application scenario.

[0051] Specifically, the specific steps of step 105 include: The median of the precise vertical stripe components is taken as the vertical stripe feature data of the current frame. Inter-frame weighted optimization is performed based on the preset mixing coefficient, the vertical stripe feature data of the current frame, and the vertical stripe feature data of the historical frames to obtain the target vertical stripe component. The vertical stripe feature data of the historical frames includes at least the vertical stripe feature data of the previous frame.

[0052] In this embodiment, the vertical stripe feature data of the current frame is calculated using the following formula. in, For vertical stripe feature data, To take the median function, For precise vertical stripe components.

[0053] Combined with the vertical stripe feature data from the previous frame Calculate the target vertical ridge component using the following formula: in, For the target vertical ridge component, This is the preset mixing coefficient.

[0054] In this embodiment, by combining preset mixing coefficients and vertical stripe feature data from historical frames to perform inter-frame weighted optimization of the precise vertical stripe components, temporal flickering vertical stripes can be effectively suppressed, thus significantly improving the suppression effect on flickering vertical stripes.

[0055] It is important to know that calculating the vertical stripe feature data of the current frame can effectively suppress flickering vertical stripes when performing vertical stripe removal processing on the next frame. The preset mixing coefficient can be set to any value between 0.3 and 0.7, preferably 0.5. It is also important to know that increasing the number of historical frames can effectively improve the stability of dynamic vertical stripe removal.

[0056] Step 106: Remove the target vertical stripe component from the infrared image to be processed to obtain the target infrared image.

[0057] In this embodiment, from the image to be processed Remove target vertical stripe components Obtain the infrared image of the target. The specific calculation formula is as follows: Based on the above scheme, this embodiment provides a method for eliminating vertical stripes in infrared images. It systematically solves the core defects of the prior art by overlapping and segmenting to cover local vertical stripes, using hybrid filtering to balance noise reduction and detail preservation, using dynamic thresholding to distinguish vertical stripes from edges, and using inter-frame weighting to suppress flickering vertical stripes.

[0058] In one embodiment, reference Figure 3 The column median vector is processed using a hybrid filtering strategy to obtain the initial vertical stripe components, including the following steps: Step 301: Perform mean filtering on the column median vector to obtain a smoothed vector; Step 302: Using the column median vector as the guiding image, perform guided filtering on the smoothing vector to obtain the filtered vector; Step 303: Calculate the initial vertical stripe components by subtracting the column median vector and the filter vector.

[0059] Specifically, by analyzing the column midpoint vector Perform mean filtering to obtain a smooth vector. The expression for mean filtering is: in, For a window radius of The vector of column midpoints within the window. To find the mean function. Where, The value can be determined based on the resolution of the image to be processed, for example... .

[0060] Using column midpoint vector To guide the image, a guided filter is applied to the smoothing vector, with a window radius of [value missing]. The regularization parameter can be set to , thus obtaining the filter vector .in, .

[0061] The initial vertical ridge component extraction steps can be performed using the following formula: Based on the above steps, it is possible to combine mean filtering to smooth noise with guided filtering to preserve edges, thereby balancing noise reduction and detail preservation, effectively removing noise while retaining details.

[0062] In summary, this embodiment provides a method for eliminating vertical stripes in infrared images. It ensures full coverage of local vertical stripes through overlapping blocks and protects details through grayscale correction. Hybrid filtering balances noise reduction and edge preservation, gradient trend analysis and dynamic thresholding accurately distinguish vertical stripes from real edges, and inter-frame weighting optimization suppresses flickering vertical stripes. Ultimately, it achieves a vertical stripe removal rate of ≥90% for through-type or local vertical stripes with a width ≤2 columns. Guided filtering and dynamic thresholding avoid edge blurring, and image detail (such as target texture) preservation is improved by ≥30%. Furthermore, the algorithm complexity is O(N) (N is the number of image pixels), meeting the real-time processing requirements of infrared cameras, such as real-time processing at frame rates ≥30fps. The inter-frame weighting mechanism effectively suppresses temporal flickering vertical stripes and adapts to scenarios with varying integration time and ambient temperature. It is suitable for dynamic scenarios with integration times of 5~20ms and ambient temperatures of -10℃~50℃, and does not rely on specific camera parameters. It is applicable to vertical stripe processing after two-point correction for various mid-wave infrared cameras, compatible with 14-bit / 8-bit output images, and has strong versatility.

[0063] In practical applications, unprocessed infrared images containing vertical stripes, such as... Figure 4 , 6 As shown in Figures 8 and 9, the target infrared image processed by the infrared image vertical stripe removal method provided in this embodiment is as follows: Figure 5 , 7 As shown in Figures 9 and 9.

[0064] It should be understood that although the steps in the flowcharts of the embodiments described above are shown sequentially according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some steps in the flowcharts of the embodiments described above may include multiple steps or multiple stages. These steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these steps or stages is not necessarily sequential, but can be performed alternately or in turn with other steps or at least some of the steps or stages of other steps.

[0065] Based on the same inventive concept, this application also provides an infrared image vertical stripe removal device for implementing the infrared image vertical stripe removal method described above. The solution provided by this device is similar to the solution described in the above method; therefore, the specific limitations in one or more embodiments of the infrared image vertical stripe removal device provided below can be found in the limitations of the infrared image vertical stripe removal method described above, and will not be repeated here.

[0066] In one embodiment, such as Figure 10 As shown, an infrared image vertical stripe removal device 1000 is provided, including: a segmentation module 1010, a correction module 1020, a filtering module 1030, a screening module 1040, an optimization module 1050, and an removal module 1060, wherein: The segmentation module 1010 is used to perform overlapping block processing on the infrared image to be processed, resulting in multiple image blocks; The correction module 1020 is used to perform grayscale correction processing on each image block according to a preset scene threshold, and to calculate the column midpoint vector of the corrected image block. Filtering module 1030 is used to process the column median vector using a hybrid filtering strategy to obtain the initial vertical stripe components; The filtering module 1040 is used to filter the true vertical stripe components from the initial vertical stripe components based on the column gradient trend, and to truncate the true vertical stripe components based on the dynamic threshold to obtain the accurate vertical stripe components. The optimization module 1050 is used to calculate the vertical stripe feature data of the current frame based on the accurate vertical stripe component, and perform inter-frame weighted optimization by combining the vertical stripe feature data of historical frames to obtain the target vertical stripe component. The elimination module 1060 is used to remove the target vertical stripe component from the infrared image to be processed to obtain the target infrared image.

[0067] In one embodiment, the segmentation module 1010 is further configured to segment the infrared image to be processed into multiple image blocks according to the target segmentation step size, the preset image width, and the target overlap rate; wherein, the target overlap rate is the overlap rate between two adjacent image blocks, and the target overlap rate is greater than or equal to the preset overlap rate threshold; the size of the image block is (2×hStep+1)×iW, where hStep is the target segmentation step size and iW is the preset image width; and the missing data of the edge region is filled in using a preset non-zero padding method to obtain the image block of the corresponding edge region.

[0068] In one embodiment, the filtering module 1030 is further configured to perform mean filtering on the column median vector to obtain a smooth vector; use the column median vector as a guide image to perform guided filtering on the smooth vector to obtain a filtered vector; and calculate the initial vertical stripe component by subtracting the column median vector and the filtered vector.

[0069] In one embodiment, the filtering module 1040 is further configured to traverse the initial vertical ridge components and calculate the first left gradient, the second left gradient, the first right gradient and the second right gradient corresponding to each initial vertical ridge component; if the first left gradient and the second left gradient have the same direction and the first right gradient and the second right gradient have the same direction, the initial vertical ridge component is determined to be the true vertical ridge component.

[0070] In one embodiment, the filtering module 1040 is further configured to obtain a first dynamic hard threshold and a second dynamic hard threshold; wherein the dynamic hard threshold is less than the second dynamic hard threshold, and both the first and second dynamic hard thresholds are positive numbers; if the absolute value of the true vertical ridge component is less than the first dynamic hard threshold, the precise vertical ridge component is determined to be 0; if the true vertical ridge component is greater than or equal to the second dynamic hard threshold, the precise vertical ridge component is determined to be the second dynamic hard threshold; if the true vertical ridge component is less than or equal to a negative number of the second dynamic hard threshold, the precise vertical ridge component is determined to be a negative number of the second dynamic hard threshold; if the true vertical ridge component does not meet any of the above conditions, the precise vertical ridge component is determined to be the true vertical ridge component.

[0071] In one embodiment, the optimization module 1050 is further configured to take the median of the precise vertical stripe component as the vertical stripe feature data of the current frame; perform inter-frame weighted optimization based on the preset mixing coefficient, the vertical stripe feature data of the current frame and the vertical stripe feature data of the historical frame to obtain the target vertical stripe component, wherein the vertical stripe feature data of the historical frame includes at least the vertical stripe feature data of the previous frame.

[0072] Taking a 640×512 resolution (14-bit) image from a mid-wave infrared camera as an example, the block range of the 100th row (i=100) image is rows 98-102 (hStep=2), and the column center within the block is mid_col=320 (640 / / 2). When the grayscale difference between pixels a(100,310) and a(100,320) is 55 > grayRange=50, it is corrected to a(100,320). In summary, this embodiment provides an infrared image vertical stripe removal device. It ensures full coverage of local vertical stripes through overlapping blocks and protects details through grayscale correction. Hybrid filtering balances noise reduction and edge preservation, gradient trend analysis and dynamic thresholding accurately distinguish vertical stripes from real edges, and inter-frame weighting optimization suppresses flickering vertical stripes. Ultimately, it achieves a vertical stripe removal rate of ≥90% for through-type or local vertical stripes with a width ≤2 columns. Guided filtering and dynamic thresholding avoid edge blurring, and image detail (such as target texture) preservation is improved by ≥30%. Furthermore, the algorithm complexity is O(N) (N is the number of image pixels), meeting the real-time processing requirements of infrared cameras, such as real-time processing at frame rates ≥30fps. The inter-frame weighting mechanism effectively suppresses temporal flickering vertical stripes and adapts to scenarios with varying integration time and ambient temperature. It is suitable for dynamic scenarios with integration times of 5~20ms and ambient temperatures of -10℃~50℃, and does not rely on specific camera parameters. It is applicable to vertical stripe processing after two-point correction for various mid-wave infrared cameras, compatible with 14-bit / 8-bit output images, and has strong versatility.

[0073] Each module in the aforementioned infrared image vertical stripe removal device can be implemented entirely or partially through software, hardware, or a combination thereof. These modules can be embedded in the processor of a computer device in hardware form or independent of it, or stored in the memory of a computer device in software form, so that the processor can call and execute the corresponding operations of each module.

[0074] In one embodiment, a computer device is provided, which may be a terminal, and its internal structure diagram may be as follows: Figure 11As shown, the computer device includes a processor, memory, input / output interface, communication interface, display unit, and input device. The processor, memory, and input / output interface are connected via a system bus, and the communication interface, display unit, and input device are also connected to the system bus via the input / output interface. The processor provides computing and control capabilities. The memory includes non-volatile storage media and internal memory. The non-volatile storage media stores the operating system and computer programs. The internal memory provides an environment for the operation of the operating system and computer programs stored in the non-volatile storage media. The input / output interface is used for exchanging information between the processor and external devices. The communication interface is used for wired or wireless communication with external terminals; wireless communication can be achieved through Wi-Fi, mobile cellular networks, NFC (Near Field Communication), or other technologies. When executed by the processor, the computer program implements a method for eliminating vertical stripes in infrared images. The display unit is used to form a visually visible image and can be a display screen, projection device, or virtual reality imaging device. The display screen can be an LCD screen or an e-ink screen. The input device of the computer device can be a touch layer covering the display screen, or buttons, trackballs, or touchpads set on the casing of the computer device, or external keyboards, touchpads, or mice, etc.

[0075] Those skilled in the art will understand that Figure 11 The structure shown is merely a block diagram of a portion of the structure related to the present application and does not constitute a limitation on the computer device to which the present application is applied. Specific computer devices may include more or fewer components than those shown in the figure, or combine certain components, or have different component arrangements.

[0076] In one embodiment, a computer device is provided, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to perform the following steps: The infrared image to be processed is subjected to overlapping and block segmentation to obtain multiple image blocks; Each image block is subjected to grayscale correction processing according to a preset scene threshold, and the column midpoint vector of the corrected image block is calculated. The column median vector is processed using a hybrid filtering strategy to obtain the initial vertical stripe components; Based on the column gradient trend, the true vertical ridge components are selected from the initial vertical ridge components, and the true vertical ridge components are truncated based on the dynamic threshold to obtain the accurate vertical ridge components. The vertical stripe feature data of the current frame is calculated based on the precise vertical stripe component, and inter-frame weighted optimization is performed by combining the vertical stripe feature data of historical frames to obtain the target vertical stripe component. The target vertical stripe component is removed from the infrared image to be processed to obtain the target infrared image.

[0077] In one embodiment, a computer-readable storage medium is provided having a computer program stored thereon, the computer program performing the following steps when executed by a processor: The infrared image to be processed is subjected to overlapping and block segmentation to obtain multiple image blocks; Each image block is subjected to grayscale correction processing according to a preset scene threshold, and the column midpoint vector of the corrected image block is calculated. The column median vector is processed using a hybrid filtering strategy to obtain the initial vertical stripe components; Based on the column gradient trend, the true vertical ridge components are selected from the initial vertical ridge components, and the true vertical ridge components are truncated based on the dynamic threshold to obtain the accurate vertical ridge components. The vertical stripe feature data of the current frame is calculated based on the precise vertical stripe component, and inter-frame weighted optimization is performed by combining the vertical stripe feature data of historical frames to obtain the target vertical stripe component. The target vertical stripe component is removed from the infrared image to be processed to obtain the target infrared image.

[0078] In one embodiment, a computer program product is provided, including a computer program that, when executed by a processor, performs the following steps: The infrared image to be processed is subjected to overlapping and block segmentation to obtain multiple image blocks; Each image block is subjected to grayscale correction processing according to a preset scene threshold, and the column midpoint vector of the corrected image block is calculated. The column median vector is processed using a hybrid filtering strategy to obtain the initial vertical stripe components; Based on the column gradient trend, the true vertical ridge components are selected from the initial vertical ridge components, and the true vertical ridge components are truncated based on the dynamic threshold to obtain the accurate vertical ridge components. The vertical stripe feature data of the current frame is calculated based on the precise vertical stripe component, and inter-frame weighted optimization is performed by combining the vertical stripe feature data of historical frames to obtain the target vertical stripe component. The target vertical stripe component is removed from the infrared image to be processed to obtain the target infrared image.

[0079] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, data stored, data displayed, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of related data must comply with the relevant laws, regulations and standards of the relevant countries and regions.

[0080] Those skilled in the art will understand that all or part of the processes in the above embodiments can be implemented by a computer program instructing related hardware. The computer program can be stored in a non-volatile computer-readable storage medium. When executed, the computer program can include the processes of the embodiments described above. Any references to memory, databases, or other media used in the embodiments provided in this application can include at least one of non-volatile and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM can take many forms, such as Static Random Access Memory (SRAM) or Dynamic Random Access Memory (DRAM). The databases involved in the embodiments provided in this application may include at least one type of relational database and non-relational database. Non-relational databases may include, but are not limited to, blockchain-based distributed databases. The processors involved in the embodiments provided in this application may be general-purpose processors, central processing units, graphics processing units, digital signal processors, programmable logic devices, quantum computing-based data processing logic devices, etc., and are not limited to these.

[0081] The technical features of the above embodiments can be combined in any way. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.

[0082] The embodiments described above are merely illustrative of several implementation methods of this application, and while the descriptions are specific and detailed, they should not be construed as limiting the scope of this patent application. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of this application, and these all fall within the protection scope of this application. Therefore, the protection scope of this application should be determined by the appended claims.

Claims

1. A method for eliminating vertical stripes in infrared images, characterized in that, The method includes: The infrared image to be processed is subjected to overlapping and block segmentation to obtain multiple image blocks; Each image block is subjected to grayscale correction processing according to a preset scene threshold, and the column midpoint vector of the corrected image block is calculated. The column median vector is processed using a hybrid filtering strategy to obtain the initial vertical stripe components; Based on the column gradient trend, the true vertical ridge components are selected from the initial vertical ridge components, and the true vertical ridge components are truncated based on the dynamic threshold to obtain the accurate vertical ridge components. The vertical stripe feature data of the current frame is calculated based on the precise vertical stripe component, and inter-frame weighted optimization is performed by combining the vertical stripe feature data of historical frames to obtain the target vertical stripe component. The target vertical stripe component is removed from the infrared image to be processed to obtain the target infrared image.

2. The method according to claim 1, characterized in that, The infrared image to be processed is subjected to overlapping and block segmentation processing to obtain multiple image blocks, including: The infrared image to be processed is divided into blocks according to the target block step size, the preset image width, and the target overlap rate to obtain multiple image blocks; wherein, the target overlap rate is the overlap rate between two adjacent image blocks, and the target overlap rate is greater than or equal to the preset overlap rate threshold; the size of the image block is (2×hStep+1)×iW, where hStep is the target block step size and iW is the preset image width; the missing data of the edge region is filled in using a preset non-zero padding method to obtain the image block of the corresponding edge region.

3. The method according to claim 1, characterized in that, The process of using a hybrid filtering strategy to process the column median vector to obtain the initial vertical stripe components includes: The median vector of the column is subjected to mean filtering to obtain a smoothed vector; Using the column median vector as a guiding image, the smoothed vector is subjected to guided filtering to obtain a filtered vector; The initial vertical stripe component is calculated by subtracting the column midpoint vector and the filter vector.

4. The method according to claim 1, characterized in that, The step of filtering true vertical rib components from the initial vertical rib components based on column gradient trends includes: By traversing the initial vertical ridge components, the first left gradient, second left gradient, first right gradient, and second right gradient of each initial vertical ridge component are calculated respectively. If the first left gradient and the second left gradient have the same direction and the first right gradient and the second right gradient have the same direction, then the initial vertical stripe component is determined to be the true vertical stripe component.

5. The method according to claim 1, characterized in that, The step of truncating the true vertical line component based on a dynamic threshold to obtain the accurate vertical line component includes: Obtain a first dynamic hard threshold and a second dynamic hard threshold; wherein the dynamic hard threshold is less than the second dynamic hard threshold, and both the first dynamic hard threshold and the second dynamic hard threshold are positive numbers; If the absolute value of the true vertical line component is less than the first dynamic hard threshold, the precise vertical line component is determined to be 0; If the actual vertical ridge component is greater than or equal to the second dynamic hard threshold, the precise vertical ridge component is determined to be the second dynamic hard threshold. If the true vertical ridge component is less than or equal to a negative number of the second dynamic hard threshold, the precise vertical ridge component is determined to be a negative number of the second dynamic hard threshold. If the true vertical ridge component does not meet any of the above conditions, the precise vertical ridge component is determined to be the true vertical ridge component.

6. The method according to claim 1, characterized in that, The process of calculating the vertical stripe feature data of the current frame based on the precise vertical stripe component, and performing inter-frame weighted optimization by combining the vertical stripe feature data of historical frames to obtain the target vertical stripe component includes: The median of the precise vertical stripe components is taken as the vertical stripe feature data of the current frame; The target vertical stripe component is obtained by performing inter-frame weighted optimization based on a preset mixing coefficient, the vertical stripe feature data of the current frame, and the vertical stripe feature data of the historical frames, wherein the vertical stripe feature data of the historical frames includes at least the vertical stripe feature data of the previous frame.

7. An infrared image vertical stripe removal device, characterized in that, The device includes: The segmentation module is used to perform overlapping block processing on the infrared image to be processed, resulting in multiple image blocks; The correction module is used to perform grayscale correction processing on each image block according to a preset scene threshold, and to calculate the column midpoint vector of the corrected image block; The filtering module is used to process the column median vector using a hybrid filtering strategy to obtain the initial vertical stripe components; The filtering module is used to filter the true vertical ridge components from the initial vertical ridge components based on the column gradient trend, and to truncate the true vertical ridge components based on a dynamic threshold to obtain the accurate vertical ridge components. The optimization module is used to calculate the vertical stripe feature data of the current frame based on the precise vertical stripe component, and perform inter-frame weighted optimization by combining the vertical stripe feature data of historical frames to obtain the target vertical stripe component. The elimination module is used to remove the target vertical stripe component from the infrared image to be processed to obtain the target infrared image.

8. A computer device comprising a memory and a processor, wherein the memory stores a computer program, characterized in that, When the processor executes the computer program, it implements the steps of the infrared image vertical stripe removal method according to any one of claims 1 to 6.

9. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by the processor, it implements the steps of the infrared image vertical stripe removal method according to any one of claims 1 to 6.

10. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by the processor, it implements the steps of the infrared image vertical stripe removal method according to any one of claims 1 to 6.