Systems and methods for image processing
Patent Information
- Authority / Receiving Office
- EP · EP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-11-07
- Publication Date
- 2026-03-25
Smart Images

Figure CN2023130183_12092024_PF_FP
Abstract
Description
SYSTEMS AND METHODS FOR IMAGE PROCESSING
[0001] CROSS-REFERENCE TO RELATED APPLICATIONS
[0002] This application claims priority of Chinese Patent Application No. 202310223508.7 filed on March 6, 2023, the contents of which are hereby incorporated by reference.TECHNICAL FIELD
[0003] The present disclosure generally relates to image processing, and more particularly, relates to systems and methods for correcting fringe noises in images.BACKGROUND
[0004] Improving the image quality has become a major goal of imaging techniques. The image quality is affected by many factors. For example, the material, the process level, and the circuit design of detectors may affect the responses of detection elements in a detector of an uncooled infrared thermal imager. The responses of the detection elements in the detector are usually inconsistent, which leads to fringe noises in images generated by the uncooled infrared thermal imager, and reduces the image quality.
[0005] Therefore, it is desirable to provide systems and methods for image processing, specifically systems and methods for correcting fringe noises in images, in order to improve the imaging quality.SUMMARY
[0006] An aspect of the present disclosure provides a method for image processing. The method may be implemented on a computing device having at least one processor and at least one storage device. The method may include generating, based on a preliminary image, a smooth image and a first fringe noise image. The preliminary image may include fringe noises along a column direction. The method may include generating a first weight map corresponding to the smooth image and a second weight map corresponding to the first fringe noise image. The method may also include generating a second fringe noise image based on the first fringe noise image, the first weight map, and the second weight map. The method may further include generating a target image based on the second fringe noise image and the preliminary image.
[0007] Another aspect of the present disclosure provides a system for image processing. The system may include at least one storage device including a set of instructions; and at least one processor configured to communicate with the at least one storage device. When executing the set of instructions, the at least one processor may be configured to direct the system to perform operations. The operations may include generating, based on a preliminary image, a smooth image and a first fringe noise image. The preliminary image may include fringe noises along a column direction. The operations may include generating a first weight map corresponding to the smooth image and a second weight map corresponding to the first fringe noise image. The operations may also include generating a second fringe noise image based on the first fringe noise image, the first weight map, and the second weight map. The operations may further include generating a target image based on the second fringe noise image and the preliminary image.
[0008] Still another aspect of the present disclosure provides a system for image processing. The system may include a first generation module, a second generation module, a third generation module, and a fourth generation module. The first generation module may be configured to generate, based on a preliminary image, a smooth image and a first fringe noise image. The preliminary image may include fringe noises along a column direction. The second generation module may be configured to generate a first weight map corresponding to the smooth image and a second weight map corresponding to the first fringe noise image. The third generation module may be configured to generate a second fringe noise image based on the first fringe noise image, the first weight map, and the second weight map. The fourth generation module may be configured to generate a target image based on the second fringe noise image and the preliminary image.
[0009] Yet another aspect of the present disclosure provides a non-transitory computer readable medium, comprising executable instructions that, when executed by at least one processor, direct the at least one processor to perform a method. The method may include generating, based on a preliminary image, a smooth image and a first fringe noise image. The preliminary image may include fringe noises along a column direction. The method may include generating a first weight map corresponding to the smooth image and a second weight map corresponding to the first fringe noise image. The method may also include generating a second fringe noise image based on the first fringe noise image, the first weight map, and the second weight map. The method may further include generating a target image based on the second fringe noise image and the preliminary image.
[0010] Additional features will be set forth in part in the description which follows, and in part will become apparent to those skilled in the art upon examination of the following and the accompanying drawings or may be learned by production or operation of the examples. The features of the present disclosure may be realized and attained by practice or use of various aspects of the methodologies, instrumentalities, and combinations set forth in the detailed examples discussed below.BRIEF DESCRIPTION OF THE DRAWINGS
[0011] The present disclosure is further described in terms of exemplary embodiments. These exemplary embodiments are described in detail with reference to the drawings. These embodiments are non-limiting exemplary embodiments, in which like reference numerals represent similar structures throughout the several views of the drawings, and wherein:
[0012] FIG. 1 is a schematic diagram illustrating an exemplary image processing system according to some embodiments of the present disclosure;
[0013] FIG. 2 is a block diagram illustrating an exemplary processing device according to some embodiments of the present disclosure;
[0014] FIG. 3 is a flowchart illustrating an exemplary process for image processing according to some embodiments of the present disclosure;
[0015] FIG. 4 is a schematic diagram illustrating an exemplary process for generating a segmented fringe noise image according to some embodiments of the present disclosure;
[0016] FIG. 5 is a schematic diagram illustrating an exemplary process for image processing according to some embodiments of the present disclosure;
[0017] FIG. 6 is a schematic diagram illustrating an exemplary image processing device according to some embodiments of the present disclosure; and
[0018] FIG. 7 is a schematic diagram illustrating an exemplary electronic device according to some embodiments of the present disclosure.DETAILED DESCRIPTION
[0019] In the following detailed description, numerous specific details are set forth by way of examples in order to provide a thorough understanding of the relevant disclosure. However, it should be apparent to those skilled in the art that the present disclosure may be practiced without such details. In other instances, well-known methods, procedures, systems, components, and / or circuitry have been described at a relatively high level, without detail, in order to avoid unnecessarily obscuring aspects of the present disclosure. Various modifications to the disclosed embodiments will be readily apparent to those skilled in the art, and the general principles defined herein may be applied to other embodiments and applications without departing from the spirit and scope of the present disclosure. Thus, the present disclosure is not limited to the embodiments shown, but to be accorded the widest scope consistent with the claims.
[0020] The terminology used herein is for the purpose of describing particular example embodiments only and is not intended to be limiting. As used herein, the singular forms “a, ” “an, ” and “the” may be intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms “comprise, ” “comprises, ” and / or “comprising, ” “include, ” “includes, ” and / or “including, ” when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and / or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and / or groups thereof.
[0021] It will be understood that when a unit, engine, module, or block is referred to as being “on, ” “connected to, ” or “coupled to, ” another unit, engine, module, or block, it may be directly on, connected or coupled to, or communicate with the other unit, engine, module, or block, or an intervening unit, engine, module, or block may be present, unless the context clearly indicates otherwise. As used herein, the term “and / or” includes any and all combinations of one or more of the associated listed items.
[0022] These and other features, and characteristics of the present disclosure, as well as the methods of operation and functions of the related elements of structure and the combination of parts and economies of manufacture, may become more apparent upon consideration of the following description with reference to the accompanying drawings, all of which form a part of this disclosure. It is to be expressly understood, however, that the drawings are for the purpose of illustration and description only and are not intended to limit the scope of the present disclosure. It is understood that the drawings are not to scale.
[0023] The terms “pixel” and “voxel” in the present disclosure are used interchangeably to refer to an element in an image. In the present disclosure, the term “image” may refer to a two-dimensional (2D) image, a three-dimensional (3D) image, or a four-dimensional (4D) image (e.g., a time series of 3D images) .
[0024] The present disclosure relates to systems and methods for image processing. The methods may include generating, based on a preliminary image, a smooth image and a first fringe noise image. The preliminary image may include fringe noises along a column direction. The methods may include generating a first weight map corresponding to the smooth image and a second weight map corresponding to the first fringe noise image. The methods may also include generating a second fringe noise image based on the first fringe noise image, the first weight map, and the second weight map. The methods may further include generating a target image based on the second fringe noise image and the preliminary image.
[0025] By processing the preliminary image in multiple operations, a plurality of intermediate images (e.g., the smooth image, the first fringe noise image, the first weight map, the second weight map, etc. ) can be generated corresponding to the multiple operations, which can introduce more details into the determination of the pixel points in the preliminary image whether are noise point. Therefore, the accuracy of the determination of the noise points can be improved, which can improve the accuracy of the fringe noise processing, thereby improving the image quality.
[0026] In some embodiments, if a raw image captured by an imaging device includes fringe noises along a row direction, it can be rotated to generate the preliminary image. In this way, the methods can also be applied to correct fringe noises along a row direction without adding complex operations, thereby simplifying the fringe noise processing.
[0027] FIG. 1 is a schematic diagram illustrating an exemplary image processing system 100 according to some embodiments of the present disclosure. As shown in FIG. 1, the image processing system 100 may include an imaging device 110, a processing device 120, and a storage device 130. In some embodiments, the imaging device 110, the processing device 120, and / or the storage device 130 may be connected to and / or communicate with each other via a wireless connection (e.g., a network) , a wired connection, or a combination thereof. The connection between the components in the image processing system 100 may be variable. Merely by way of example, the imaging device 110 may be connected to the processing device 120 directly as illustrated in FIG. 1 or through a network. As another example, the storage device 130 may be connected to the processing device 120 directly as illustrated in FIG. 1 or through a network.
[0028] The imaging device 110 may be configured to capture image data (e.g., an image, a video, etc. ) . In some embodiments, the imaging device 110 may include an infrared thermal imager, a camera, a video recorder, an image sensor, etc. Exemplary infrared thermal imagers may include a cooled infrared thermal imager or an uncooled infrared thermal imager. Exemplary cameras may include a gun camera, a dome camera, an integrated camera, a monocular camera, a binocular camera, a multi-view camera, a visible light camera, a thermal imaging camera, or the like, or any combination thereof. Exemplary video recorders may include a digital video recorder (DVR) , an embedded DVR, a visible light DVR, a thermal imaging DVR, or the like, or any combination thereof. Exemplary image sensors may include a charge coupled device (CCD) image sensor, a complementary metal oxide semiconductor (CMOS) image sensor, or the like, or any combination thereof. In some embodiments, the imaging device 110 may transmit the captured image data (e.g., a preliminary image) to one or more components (e.g., the processing device 120, the storage device 130) of the image processing system 100.
[0029] The processing device 120 may process data and / or information obtained from one or more components (the imaging device 110 and / or the storage device 130) of the image processing system 100. For example, the processing device 120 may generate a target image by processing the preliminary image captured by the imaging device 110 (e.g., correcting fringe noises in the preliminary image) . In some embodiments, the processing device 120 may be a single server or a server group. The server group may be centralized or distributed. In some embodiments, the processing device 120 may be local or remote. For example, the processing device 120 may access information and / or data stored in the imaging device 110 and / or the storage device 130. In some embodiments, the processing device 120 may be implemented on a cloud platform. Merely by way of example, the cloud platform may include a private cloud, a public cloud, a hybrid cloud, a community cloud, a distributed cloud, an inter-cloud, a multi-cloud, or the like, or any combination thereof.
[0030] In some embodiments, the processing device 120 may be implemented by a computing device. For example, the computing device may include a processor, a storage, an input / output (I / O) , and a communication port. The processor may execute computer instructions (e.g., program codes) and perform functions of the processing device 120 in accordance with the techniques described herein. The computer instructions may include, for example, routines, programs, objects, components, data structures, procedures, modules, and functions, which perform particular functions described herein.
[0031] The storage device 130 may store data / information obtained from the imaging device 110 and / or any other component of the image processing system 100. In some embodiments, the storage device 130 may include a mass storage, a removable storage, a volatile read-and-write memory, a read-only memory (ROM) , or the like, or any combination thereof. For example, the mass storage may include a magnetic disk, an optical disk, a solid-state drive, etc. The removable storage may include a flash drive, a floppy disk, an optical disk, a memory card, a zip disk, a magnetic tape, etc. In some embodiments, the storage device 130 may store one or more programs and / or instructions to perform exemplary methods described in the present disclosure.
[0032] In some embodiments, the storage device 130 may be communicated with one or more other components (e.g., the imaging device 110, the processing device 120) in the image processing system 100. One or more components in the image processing system 100 may access the data or instructions stored in the storage device 130. In some embodiments, the storage device 130 may be part of the processing device 120.
[0033] In some embodiments, the image processing system 100 may further include a network and / or at least one terminal. The network may facilitate the exchange of information and / or data for the image processing system 100. In some embodiments, one or more components (e.g., the imaging device 110, the processing device 120, the storage device 130) of the image processing system 100 may transmit information and / or data to other component (s) of the image processing system 100 via the network. In some embodiments, the network may be any type of wired or wireless network, or combination thereof.
[0034] The at least one terminal may be configured to receive information and / or data from the imaging device 110, the processing device 120, and / or the storage device 130, such as, via the network. For example, the at least one terminal may receive the preliminary image from the imaging device 110 and / or the target image from the processing device 120. In some embodiments, the at least one terminal may process information and / or data received from the imaging device 110, the processing device 120, and / or the storage device 130. In some embodiments, the at least one terminal may provide a user interface via which a user may view information and / or input data and / or instructions to the image processing system 100. In some embodiments, the at least one terminal may include a mobile phone, a computer, a wearable device, or the like, or any combination thereof. In some embodiments, the at least one terminal may include a display that can display information in a human-readable form, such as text, image, audio, video, graph, animation, or the like, or any combination thereof. The display of the at least one terminal may include a cathode ray tube (CRT) display, a liquid crystal display (LCD) , a light-emitting diode (LED) display, a plasma display panel (PDP) , a three-dimensional (3D) display, or the like, or a combination thereof.
[0035] FIG. 2 is a block diagram illustrating an exemplary processing device 120 according to some embodiments of the present disclosure. In some embodiments, the processing device 120 may be in communication with a computer-readable storage medium (e.g., the storage device 130 illustrated in FIG. 1) and may execute instructions stored in the computer-readable storage medium. The processing device 120 may include a first generation module 202, a second generation module 204, a third generation module 206, and a fourth generation module 208.
[0036] The first generation module 202 may be configured to generate, based on a preliminary image, a smooth image and a first fringe noise image. The preliminary image refers to an image that needs to be processed. In some embodiments, the preliminary image may include fringe noises along a column direction. The smooth image refers to an image in which the fringe noises along the column direction are smoothed. The first fringe noise image may include information relating to edge details and the fringe noises along the column direction in the preliminary image. More descriptions regarding the generation of the smooth image and the first fringe noise image may be found elsewhere in the present disclosure. See, e.g., operation 302 and relevant descriptions thereof.
[0037] The second generation module 204 may be configured to generate a first weight map corresponding to the smooth image and a second weight map corresponding to the first fringe noise image. The first weight map may include weight values or adjusted weight values of pixel points in the smooth image. In some embodiments, the first weight map may be a binary image. The second weight map may include weight values or adjusted weight values of pixel points in the first fringe noise image. In some embodiments, the second weight map may be a binary image. More descriptions regarding the generation of the first weight map and the second weight map may be found elsewhere in the present disclosure. See, e.g., operation 304 and relevant descriptions thereof.
[0038] The third generation module 206 may be configured to generate a second fringe noise image based on the first fringe noise image, the first weight map, and the second weight map. The second fringe noise image refers to an image only (or substantially only) including the fringe noises along the column direction. In some embodiments, the third generation module 206 may generate an amplitude-limiting image by performing an amplitude-limiting operation on the first fringe noise image, and generate the second fringe noise image based on the amplitude-limiting image, the first weight map, and the second weight map. More descriptions regarding the generation of the second fringe noise image may be found elsewhere in the present disclosure. See, e.g., operation 306 and relevant descriptions thereof.
[0039] The fourth generation module 208 may be configured to generate a target image based on the second fringe noise image and the preliminary image. The target image refers to an image that has been processed. For example, the target image may be a corrected image corresponding to the preliminary image in which fringe noises along the column direction have been reduced or eliminated. More descriptions regarding the generation of the target image may be found elsewhere in the present disclosure. See, e.g., operation 308 and relevant descriptions thereof.
[0040] It should be noted that the above descriptions of the processing device 120 are provided for the purposes of illustration, and not intended to limit the scope of the present disclosure. For persons having ordinary skills in the art, various variations and modifications may be conducted under the guidance of the present disclosure. However, those variations and modifications do not depart from the scope of the present disclosure. In some embodiments, the processing device 120 may include one or more other modules. For example, the processing device 120 may include a storage module to store data generated by the modules in the processing device 120. In some embodiments, any two of the modules may be combined as a single module, and any one of the modules may be divided into two or more units.
[0041] FIG. 3 is a flowchart illustrating an exemplary process 300 for image processing according to some embodiments of the present disclosure. In some embodiments, process 300 may be implemented in the image processing system 100 illustrated in FIG. 1. For example, the process 300 may be stored in the storage device 130 as a form of instructions, and invoked and / or executed by the processing device 120.
[0042] Infrared thermal imaging technique is a widely used imaging technique. The infrared thermal imaging technique can be used to detect infrared signals of a subject’s thermal radiation within a specific band through a photoelectric technique, convert the infrared signals into an image that can be distinguished by human vision, and further determine the temperature value of the subject. The infrared thermal imager may include a cooled infrared thermal imager and an uncooled infrared thermal imager. An imaging detector of the cooled infrared thermal imager is equipped with an integrated low-temperature refrigerator, which can reduce a detector temperature to the cooling temperature. An imaging detector of the uncooled infrared thermal imager does not require low-temperature refrigerators, which has the advantages of small size, low power consumption, simple structure, low cost, etc. Therefore, the uncooled infrared thermal imager occupies an important position in the infrared thermal imaging technique and has been widely used in various fields.
[0043] However, the material, the process level, and the circuit design of the imaging detector can affect the responses of detection elements in the imaging detector of the uncooled infrared thermal imager. The responses of the detection elements in the imaging detector are usually inconsistent, which leads to fringe noises in an image captured by the uncooled infrared thermal imager, and reduces the image quality. The fringe noises are normally presented as strips or lines in the image. In some embodiments, the fringe noises include noise points whose amplitudes and phases are the same in a same column (or row) .
[0044] In order to correct (e.g., reduce or eliminate) the fringe noises in the image and improve the image quality, the process 300 may be performed.
[0045] In 302, the processing device 120 (e.g., the first generation module 202) may generate, based on a preliminary image, a smooth image and a first fringe noise image.
[0046] The preliminary image refers to an image that needs to be processed. In some embodiments, the preliminary image may include fringe noises along a column direction. The fringe noises along the column direction are normally presented as strips or lines extending along the column direction. In some embodiments, the fringe noises along the column direction may include noise points whose amplitudes and phases are the same in a same column. As used herein, the column direction refers to a vertical direction of an image (e.g., the preliminary image) , and a row direction refers to a horizontal direction of the image.
[0047] In some embodiments, before operation 302, the processing device 120 may determine whether the preliminary image includes fringe noises along the row direction. If the preliminary image includes the fringe noises along the row direction, the processing device 120 may rotate the preliminary image 90 degrees for the image processing. For instance, the process 300 may be performed on the rotated preliminary image to reduce or eliminate the fringe noises along the row direction. By rotating the preliminary image, the process 300 can be applied to the fringe noises along the row direction, which adds no complex operations, thereby simplifying the fringe noise processing and improving the image quality.
[0048] In some embodiments, the processing device 120 may obtain the preliminary image from an imaging device (e.g., the imaging device 110) or a storage device (e.g., the storage device 130) . For example, the preliminary image may be collected by an uncooled infrared thermal imager or a cooled infrared thermal imager, which is not limited herein. Merely by way of example, the processing device 120 may obtain a raw image captured by an imaging device, and determine whether the raw image includes fringe noises along a row direction or a column direction. If the raw image includes fringe noises along the row direction, the processing device 120 may generate the preliminary image by rotating the raw image 90 degrees. Alternatively, if the raw image includes fringe noises along the column direction, the processing device 120 may designate the raw image as the preliminary image.
[0049] For illustration purposes, the processing of the preliminary image including the fringe noises along the column direction described in FIG. 3 is provided for the purposes of illustration, and is not intended to limit the scope of the present disclosure.
[0050] The smooth image refers to an image in which the fringe noises along the column direction are smoothed. In some embodiments, the smooth image may be generated by performing a weighted filtering operation (also referred to as an edge-preserving filtering operation) on the preliminary image along the row direction. After the weighted filtering operation is performed on the preliminary image along the row direction, the fringe noises along the column direction in the preliminary image may be smoothed. Therefore, an image generated by performing the weighted filtering operation along the row direction on the preliminary image is referred to as the smooth image.
[0051] As used herein, a weighted filtering operation may be performed according to a bilateral filtering algorithm, a guided filtering algorithm, a weighted least square filtering algorithm, a non-local mean filtering algorithm, or the like, or any combination thereof. Exemplary indexes that are weighted in the weighted filtering operation may include a variance, a standard deviation, a first-order gradient, a second-order gradient, or the like, or any combination thereof.
[0052] The first fringe noise image may include information relating to edge details and the fringe noises along the column direction in the preliminary image.
[0053] In some embodiments, the processing device 120 may obtain a preliminary fringe noise image by performing a weighted filtering operation on the preliminary image along the column direction. The preliminary fringe noise image may be designated as the first fringe noise image. Alternatively, the processing device 120 may generate the first fringe noise image based on the preliminary fringe noise image and the smooth image. For example, the processing device 120 may obtain the first fringe noise image by subtracting the smooth image from the preliminary fringe noise image. For instance, for each pixel point in the preliminary fringe noise image, the processing device 120 may obtain a subtracted pixel value (e.g., a gray value, an amplitude value, etc. ) of the pixel point by subtracting a pixel value of a pixel point in the smooth image corresponding to the pixel point from a pixel value of the pixel point. The processing device 120 may further generate the first fringe noise image based on the subtracted pixel value of each pixel point in the preliminary fringe noise image. In such case, same information between the preliminary fringe noise image and the smooth image can be deleted from the preliminary fringe noise image, so that the first fringe noise image only includes the information relating to edge details and the fringe noises along the column direction in the preliminary image. Therefore, the data volume of subsequent operations can be reduced, which can improve the efficiency of the noise reduction, thereby improving the efficiency of the image correction. In addition, the subsequent operations can focus on the information relating to edge details and the fringe noises along the column direction in the preliminary image, which can improve the accuracy of the noise reduction and the image correction.
[0054] In some embodiments, the processing device 120 may obtain an original smooth image and an original fringe noise image by processing the preliminary image, and obtain the smooth image and the first fringe noise image by performing the weighted filtering operation on the original smooth image and the original fringe noise image, respectively.
[0055] In 304, the processing device 120 (e.g., the second generation module 204) may generate a first weight map corresponding to the smooth image and a second weight map corresponding to the first fringe noise image.
[0056] The first weight map may include weight values or adjusted weight values of pixel points in the smooth image. The weight value (or adjusted weight value) of a pixel point in the smooth image may reflect an importance degree (or a richness degree of details) of the pixel point in the smooth image. For example, the higher the importance degree (or the richness degree of details) of the pixel point is, the larger the weight value of the pixel point may be. In some embodiments, the weight value (or adjusted weight value) of a pixel point in the smooth image may indicate whether the pixel point is located at flatten regions or detailed regions in the smooth image. In some embodiments, if a difference between pixel values of any two pixel points in an image region does not exceed a difference threshold, the image region may be designated as a flatten region. If a difference between pixel values of any two pixel points in an image region exceeds the difference threshold, the image region may be designated as a detailed region. The difference threshold may be determined based on the system default setting, or set manually by the user. A pixel point located at detailed regions in the smooth image may be more likely to be a noise point. Therefore, the weight value (or adjusted weight value) of a pixel point in the smooth image may indicate whether the pixel point is a noise point.
[0057] In some embodiments, the first weight map may be a binary image.
[0058] In some embodiments, the processing device 120 may determine at least one weight value of each pixel point in the smooth image, and generate the first weight map based on the at least one weight value of each pixel point in the smooth image.
[0059] In some embodiments, for each pixel point in the smooth image, the processing device 120 may determine at least one feature parameter of the pixel point based on the smooth image. The at least one feature parameter may include a variance (e.g., a local variance, a standard deviation, a square error, etc. ) , a gradient (e.g., a first-order gradient, a second-order gradient, etc. ) , or the like, or any combination thereof., of a pixel value (e.g., a gray value, an amplitude value, etc. ) of the pixel point. The processing device 120 may further determine at least one weight value of the pixel point based on the at least one feature parameter. For example, for each of the at least one feature parameter, the processing device 120 may determine a weight value of each pixel point in the smooth image based on the feature parameter. Then, the processing device 120 may determine an adjusted weight value of the pixel point based on a comparison result between each of the at least one weight value and a corresponding threshold value, and generate the first weight map based on the adjusted weight value of each pixel point in the smooth image. The first weight map may include adjusted weight value of each pixel point in the smooth image. For illustration purposes, two examples of generating the first weight map are provided below.
[0060] Example 1:
[0061] When the at least one feature parameter includes one feature parameter, the first weight map may be generated in the following way. For example, the at least one feature parameter of a pixel value in the smooth image is a local variance of the pixel point. The local variance of the pixel point refers to the variance of pixel values of pixel points in a local window corresponding to the pixel point. For instance, the local window has the size of n1×n1, and the pixel point is the center point of the local window. n1 is an odd number greater than or equal to 3. A weight value (denoted as W1) of the pixel point in the smooth image may be determined based on the local variance of the pixel point according to Equation (1) :
[0062] where weighti, j refers to the weight value W1 of the pixel point (i, j) ; i refers to a row number of the pixel point in the smooth image; j refers to a column number of the pixel point in the smooth image; refers to the local variance of the pixel point (i, j) ; and varm refers to a mean value of local variances of all the pixel points in the smooth image.
[0063] Then, the processing device 120 may determine an adjusted weight value of the pixel point by performing a binary operation on the weight value W1 of the pixel point. For example, the processing device 120 may determine the adjusted weight value of the pixel point based on a comparison result between weight value W1 and a corresponding threshold value. For instance, the adjusted weight value of the pixel point may be determined according to Equation (2) :
[0064] where map1 (i, j) refers to an adjusted weight value of the pixel point (i, j) ; and weight1 refers to a first threshold value corresponding to the local variance.
[0065] The first threshold value may be used to distinguish flat regions and detailed regions in the smooth image. For example, if the weight value weighti, j of the pixel point is less than the first threshold valueweight1, the adjusted weight value map1 (i, j) of the pixel point may be determined to be 0, and the pixel point can be regarded as being located in the flat regions. Otherwise, the adjusted weight value map1 (i, j) of the pixel point may be determined to be 1, and the pixel point can be regarded as being located in the detailed regions. In some embodiments, the first threshold value weight1 may be within a range from 0 to 1. The first threshold value weight1 may be determined a system default setting or set manually by a user. For example, the first threshold value weight1 may be determined according to the experience of the user.
[0066] Example 2:
[0067] When the at least one feature parameter includes two or more feature parameters, the first weight map may be generated in the following way. For example, the at least one feature parameter of a pixel point in the smooth image is the local variance and the gradient of the pixel point, the at least one weight value of the pixel point may include a weight value corresponding to the local variance and a weight value corresponding to the gradient. Correspondingly, the processing device 120 may determine the adjusted weight value of the pixel point based on a first comparison result and a second comparison result. The first comparison result is a comparison result between the weight value corresponding to the local variance and the first threshold value. The second comparison result is a comparison result between the weight value corresponding to the gradient and the second threshold value. Merely by way of example, the adjusted weight value of the pixel point may be determined according to Equation (3) :
[0068] where grad1i, j refers to a weight value corresponding to the gradient of the pixel point (i, j) ; and weight2 refers to the second threshold value corresponding to the gradient.
[0069] The second threshold value may be also used to distinguish flat regions and detailed regions in the smooth image. The determination of the second threshold value may be in a similar manner as how the first threshold value is determined, which is not repeated herein.
[0070] By introducing the at least one feature parameter, the weight value (s) of each pixel point in the smooth image can be determined from at least one perspective, which can improve the accuracy of the determination of whether each pixel point in the smooth image is located in the flat regions or the detailed regions, thereby improving the accuracy of subsequent noise processing.
[0071] The second weight map may include weight values or adjusted weight values of pixel points in the first fringe noise image. The weight value (or adjusted weight value) of a pixel point in the first fringe noise image may reflect an importance degree (or a richness degree of details) of the pixel point in the first fringe noise image. In some embodiments, the weight value (or adjusted weight value) of a pixel point in the first fringe noise image may indicate whether the pixel point is located at flatten regions or detailed regions in the first fringe noise image. A pixel point located at detailed regions in the first fringe noise image may be more likely to be a noise point. Therefore, the weight value (or adjusted weight value) of a pixel point in the first fringe noise image may indicate whether the pixel point is a noise point.
[0072] In some embodiments, the second weight map may be a binary image.
[0073] In some embodiments, the second weight map may be generated in a similar manner as how the first weight map is generated. For example, for each pixel point in the first fringe noise image, the processing device 120 may determine at least one feature parameter of the pixel point based on the first fringe noise image, determine at least one weight value of the pixel point based on at least one feature parameter, and determine an adjusted weight value of the pixel point based on a comparison result between each of the at least one weight value and a corresponding threshold value. The processing device 120 may further generate the second weight map based on the adjusted weight value of each pixel point in the first fringe noise image. For example, the second weight map may include the adjusted weight value of each pixel point in the first fringe noise image.
[0074] As aforementioned, the first weight map includes the weight values or the adjusted weight values of pixel points in the smooth image, wherein the weight value (or adjusted weight value) of a pixel point in the smooth image may indicate whether the pixel point is a noise point; the second weight map includes weight values or adjusted weight values of pixel points in the first fringe noise image, wherein the weight value (or adjusted weight value) of a pixel point in the first fringe noise image may indicate whether the pixel point is a noise point. In other words, whether a pixel point is a noise point is determined based on the smooth image and the first fringe noise image, respectively. In this way, more comprehensive information can be analyzed in identifying noise points in the preliminary image, which can improve the accuracy of the division, thereby providing a basis for subsequent noise processing.
[0075] In 306, the processing device 120 (e.g., the third generation module 206) may generate a second fringe noise image based on the first fringe noise image, the first weight map, and the second weight map.
[0076] The second fringe noise image refers to an image only (or substantially only) including the fringe noises along the column direction.
[0077] In some embodiments, for each pixel point in the first fringe noise image, the processing device 120 may determine a classification value (also referring to as a first classification value) of the pixel point indicating whether the pixel point is a noise point based on the first weight map and the second weight map, and generate the second fringe noise image based on the first classification value of each pixel point in the first fringe noise image.
[0078] For example, the first classification value may include a value of 0 indicating that the pixel point is not a noise point and a value of 1 indicating that the pixel point is a noise point. For instance, the first classification value of the pixel point may be determined according to Equation (4) :
[0079] where classification1 (i, j) refers to the first classification value of the pixel point (i, j) .
[0080] The second fringe noise image may have the same size as the first fringe noise image and include second pixel points each of which corresponds to one pixel point in the first fringe noise image. If the first classification value of a pixel point in the first fringe noise image is 0, a pixel value (e.g., the amplitude value, the gray value, etc. ) of a second pixel point corresponding to the pixel point may be determined as 0. If the first classification value of the pixel point in the first fringe noise image is 1, the pixel value of the second pixel point corresponding to the pixel point may be the same as the pixel value of the pixel point in the first fringe noise image.
[0081] As another example, the first classification value may be the pixel value of the second pixel point in the second fringe noise image corresponding to the pixel point. For instance, the first classification value of the pixel point may be determined according to Equation (5) :
[0082] where high1 (i, j) refers to the pixel value of a pixel point (i, j) in the second fringe noise image.
[0083] Since the first fringe noise image includes information relating to edge details and the fringe noises along the column direction, if the second fringe noise image is determined based on the first fringe noise image directly, the second fringe noise image not only includes information relating to the fringe noises along the column direction, but also includes information relating to the edge details, textures, etc., along the column direction. To further improve the accuracy of the noise processing, the processing device 120 may generate an amplitude-limiting image by performing an amplitude-limiting operation on the first fringe noise image, and generate the second fringe noise image based on the amplitude-limiting image, the first weight map, and the second weight map.
[0084] The amplitude-limiting image refers to an image that an amplitude value of each pixel point in the image is within an amplitude threshold. For the convenience of descriptions, the pixel points in the amplitude-limiting image are referred to as third pixel points. For example, for each pixel point in the first fringe noise image, if an amplitude value of the pixel point is larger than or equal to a first amplitude threshold and less than or equal to a second amplitude threshold, an amplitude value of a third pixel point in the amplitude-limiting image corresponding to the pixel point may be equal to the amplitude value. Otherwise, the amplitude value of the third pixel point may be determined as 0. For instance, the amplitude value of a third pixel point may be determined according to Equation (6) :
[0085] where high2 (i, j) refers to an amplitude value of a third pixel point (i, j) in the amplitude-limiting image; abs(high (i, j) ) refers to an amplitude value of a corresponding pixel point (i, j) in the first fringe noise image; Th1 refers to the first amplitude threshold; and Th2 refers to the second amplitude threshold.
[0086] Since an amplitude value of a pixel point corresponding to the fringe noises (also referred to a fringe noise point) is always within an amplitude range (e.g., from the first amplitude threshold to the second amplitude threshold) , by determining the amplitude range, the fringe noise points along the column direction in the first fringe noise image can be reserved in the amplitude-limiting image, while other information (e.g., the edge details, textures, etc. ) can be removed. That is, the amplitude-limiting image can include only (or substantially only) the fringe noise points along the column direction.
[0087] In some embodiments, the amplitude threshold (e.g., the first amplitude threshold and the second amplitude threshold) may be determined based on the system default setting, or set manually by the user.
[0088] In some embodiments, the amplitude threshold (e.g., the first noise threshold and the second noise threshold) corresponding to the amplitude-limiting operation may be determined based on a severity degree of the fringe noises in the preliminary image. The severity degree of the fringe noises may reflect a ratio of the fringe noises along the column direction and other information (e.g., the edge details, textures, etc. ) along the column direction in the preliminary image. If the severity degree of the fringe noises is relatively large in the preliminary image, the amplitude range may be determined to be relatively large (e.g., the first amplitude threshold is decreased and the second amplitude threshold is increased) . Therefore, more fringe noise points along the column direction can be reserved in the amplitude-limiting image, which can ensure that all (or substantially all) the fringe noises along the column direction in the preliminary image can be corrected in the subsequent operations, thereby improving the accuracy of the image correction.
[0089] In some embodiments, the processing device 120 may generate the second fringe noise image based on the amplitude-limiting image, the first weight map, and the second weight map. For example, for each pixel point in the amplitude-limiting image (i.e., for each fringe noise point) , the processing device 120 may determine a classification value (also referring to as a second classification value) of the pixel point indicating whether the pixel point is a noise point based on the first weight map and the second weight map, and generate the second fringe noise image based on the second classification value of each pixel point in the amplitude-limiting image.
[0090] In some embodiments, the second fringe noise image may be generated based on the amplitude-limiting image and the second classification value in a similar manner as how the second fringe noise image may be generated based on the first fringe noise image and the first classification value. For example, the second classification value may include a value of 0 indicating that the pixel point is not a noise point and a value of 1 indicating that the pixel point is a noise point. For instance, the second classification value of the pixel point may be determined according to Equation (7) :
[0091] where classification2 (i, j) refers to the second classification value of the pixel point (i, j) .
[0092] The second fringe noise image may have the same size as the amplitude-limiting image and include fourth pixel points each of which corresponds to one pixel point in the amplitude-limiting image. If the second classification value of a pixel point in the amplitude-limiting image is 0, the pixel value (e.g., the amplitude value) of the fourth pixel point corresponding to the pixel point may be determined as 0. If the second classification value of the pixel point in the amplitude-limiting image is 1, the pixel value of the fourth pixel point corresponding to the pixel point may be the same as the pixel value of the pixel point in the amplitude-limiting image.
[0093] As another example, the second classification value may be the pixel value of the second pixel point corresponding to the pixel point in the second fringe noise image. For instance, the second classification value of the pixel point may be determined according to Equation (8) :
[0094] where high1 (i, j) refers to the pixel value of a pixel point (i, j) in the second fringe noise image.
[0095] By introducing the classification value, pixel points including the fringe noises (i.e., noise points) and pixel points including no fringe noises (i.e., non-noise points) can be distinguished. Therefore, the pixel points including the fringe noises (i.e., the noise points) can be identified for the noise processing, which avoids loss of details in the preliminary image, thereby improving the image quality.
[0096] In 308, the processing device 120 (e.g., the fourth generation module 208) may generate a target image based on the second fringe noise image and the preliminary image.
[0097] The target image refers to an image that has been processed. For example, the target image may be a corrected image corresponding to the preliminary image in which fringe noises along the column direction have been reduced or eliminated.
[0098] In some embodiments, the processing device 120 may obtain the target image by subtracting the second fringe noise image from the preliminary image. For example, for each pixel point in the preliminary image, the processing device 120 may obtain a target pixel value of the pixel point by subtracting a pixel value of a pixel point in the second fringe noise image corresponding to the pixel point from a pixel value of the pixel point. The processing device 120 may further generate the target image based on the target pixel value of each pixel point in the preliminary image.
[0099] In some embodiments, the processing device 120 may generate a segmented fringe noise image by segmenting each column of the second fringe noise image into a plurality of sections. The processing device 120 may further generate the target image by subtracting the segmented fringe noise image from the preliminary image.
[0100] For example, for each column of the second fringe noise image, the processing device 120 may determine a count of the plurality of sections in the column, determine a length of each of the plurality of sections based on the count of the plurality of sections and a count of rows of the second fringe noise image, and segment the column based on the length. Merely by way of example, referring to FIG. 4, a second fringe noise image 400 is an image including 16 columns and 16 rows. Taking a sixteenth column 410 of the second fringe noise image 400 as an example, a count of a plurality of sections (e.g., a section 412, a section 414, a section 416, and a section 418) in the sixteenth column 410 may be 4, and a length of each of the plurality of sections may be 4.
[0101] In some embodiments, the count of the plurality of sections of each column in the second fringe noise image may be determined based on the system default setting, or set manually by the user. For example, the count of the plurality of sections of each column in the second fringe noise image may be determined based on the experience of the user. In some embodiments, better noise reduction effect can be achieved by using a larger count, but less counter fringe noises will appear if a smaller count is used. Therefore, the determination of the count of the plurality of sections of each column needs to balance the noise reduction effect and the possibility of the appearance of the counter fringe noises.
[0102] In some embodiments, the processing device 120 may perform an interpolation operation on the plurality of sections of each column of the second fringe noise image to generate the segmented fringe noise image. For example, for each column of the second fringe noise image, the processing device 120 may determine a noise value and a count of noise points of each section of the column. For instance, the noise value of the section of the column may be determined according to Equation (9) :
[0103] where sumcoljm refers to a noise value of a m-th section of a j-th column; noise ( (m-1) *len+K, j) refers to a noise value of each noise point in the j-th column; and len refers to a length of the m-th section.
[0104] The count of noise points of the section of the column may be determined according to Equation (10) :
[0105] where numcoljm refers to a count of noise points of the m-th section of the j-th column.
[0106] The processing device 120 may determine a mean fringe noise of each section of the column based on the noise value of the section and the length of the section. For instance, the mean fringe noise of the section of the column may be determined according to Equation (11) :
[0107] where Nmeanjm refers to a mean fringe noise of the m-th section of the j-th column.
[0108] In some embodiments, the processing device 120 may generate the segmented fringe noise image by performing the interpolation operation on the plurality of sections of each column of the second fringe noise image based on the mean fringe noise of the section of the column. For instance, for each of middle sections among the plurality of sections of each column, the interpolation operation may be performed between a head portion of a current section and a tail portion of a previous section. For a first section of each column, the interpolation operation may be performed between a tail portion of the first section and a head portion of a second section. For a last section of each column, the interpolation operation may be performed between a head portion of the last section and a tail portion of a section before the last section.
[0109] Referring to FIG. 4, for the section 412 and the section 414, the interpolation operation may be performed between a tail portion of the section 412 and a head portion of the section 414. For the section 414 and the section 416, the interpolation operation may be performed between a tail portion of the section 414 and a head portion of the section 416. For the section 416 and the section 418, the interpolation operation may be performed between a tail portion of the section 416 and a head portion of the section 418. In some embodiments, a length of the head portion and / or a length of the tail portion may be determined based on the system default setting, or set manually by the user. For example, the length of the head portion and / or the length of the tail portion may be 1 / 10, 1 / 8, 1 / 5, 1 / 4, 1 / 3, 1 / 2, etc., of the total length of the section. In some embodiments, the length of the head portion may be the same as or different from the length of the tail portion.
[0110] By performing the interpolation operation, segmentation phenomena between adjacent sections can be eliminated, which can improve the image quality of the segmented fringe noise image, thereby improving the accuracy of the noise processing.
[0111] Some embodiments of the present disclosure, the preliminary image can be processed in multiple operations, and a plurality of intermediate images (e.g., the smooth image, the first fringe noise image, the first weight map, the second weight map, etc. ) can be generated corresponding to the multiple operations, which can introduce more details into the determination of the pixel points in the preliminary image whether are noise point. Therefore, the accuracy of the determination of the noise points can be improved, which can improve the accuracy of the fringe noise processing, thereby improving the image quality. In addition, by segmenting each column of the second fringe noise image to the plurality of sections, the segmented fringe noise image can be generated, which avoids the appearance of the counter fringe noises, further improving the image quality.
[0112] It should be noted that the description of the process 300 is provided for the purposes of illustration, and not intended to limit the scope of the present disclosure. For persons having ordinary skills in the art, various variations and modifications may be conducted under the teaching of the present disclosure. However, those variations and modifications may not depart from the protection of the present disclosure. For example, the process 300 may be accomplished with one or more additional operations not described, and / or without one or more of the operations discussed. Additionally, the order in which the operations of the process 300 is not intended to be limiting. However, those variations and modifications may not depart from the protection of the present disclosure.
[0113] In some embodiments, the process 300 may be performed to correct fringe noises along the row direction. Merely by way of example, the segmented fringe noise image may be generated by segmenting each row of the second fringe noise image to a plurality of sections, and the target image may be generated by subtracting the segmented fringe noise image from the preliminary image.
[0114] FIG. 5 is a schematic diagram illustrating an exemplary process 500 for image processing according to some embodiments of the present disclosure.
[0115] As illustrated in FIG. 5, a smooth image 504 and a first fringe noise image 508 may be generated based on a preliminary image 502. The smooth image 504 is generated by performing a weighted filtering operation on the preliminary image along a row direction. In some embodiments, a preliminary fringe noise image 506 may be obtained by performing a weighted filtering operation on the preliminary image 502 along the column direction, and the first fringe noise image 508 may be generated based on the preliminary fringe noise image 506 and the smooth image 504 (for example, by subtracting the smooth image 504 from the preliminary fringe noise image 506) .
[0116] A first weight map 510 corresponding to the smooth image 504 may be generated, and a second weight map 512 corresponding to the first fringe noise image 508 may be generated. A second fringe noise image 516 may be generated based on the first fringe noise image 508, the first weight map 510, and the second weight map 512. Alternatively, an amplitude-limiting image 514 may be generated by performing an amplitude-limiting operation on the first fringe noise image 508, and the second fringe noise image 516 may be generated based on the amplitude-limiting image 514, the first weight map 510, and the second weight map 512.
[0117] A target image 520 may be generated based on the second fringe noise image 516 and the preliminary image 502. Alternatively, a segmented fringe noise image 518 may be generated by segmenting each column of the second fringe noise image 516 into a plurality of sections, and the target image 520 may be generated by subtracting the segmented fringe noise image 518 from the preliminary image 502.
[0118] FIG. 6 is a schematic diagram illustrating an exemplary image processing device 600 according to some embodiments of the present disclosure.
[0119] As illustrated in FIG. 6, the image processing device 600 may include an obtaining module 602, a filtering module 604, a first fringe noise image generation module 606, a weight image generation module 608, a second fringe noise image generation module 612, and a target image generation module 616. The obtaining module 602 may be used to obtain a preliminary image. The filtering module 604 may be used to generate a smooth image based on the preliminary image. The first fringe noise image generation module 606 may be used to generate a first fringe noise image based on the preliminary image. In some embodiments, the filtering module 604 may be also used to generate a preliminary fringe noise image based on the preliminary image, and the first fringe noise image generation module 606 may be also used to generate the first fringe noise image based on the preliminary fringe noise image and the smooth image. The weight image generation module 608 may be used to generate a first weight map corresponding to the smooth image and a second weight map corresponding to the first fringe noise image. The second fringe noise image generation module 612 may be used to generate a second fringe noise image based on the first fringe noise image, the first weight map, and the second weight map. The target image generation module 616 may be used to generate a target image based on the second fringe noise image and the preliminary image.
[0120] In some embodiments, the image processing device 600 may also include an amplitude-limiting module 610. The amplitude-limiting module 610 may be used to generate an amplitude-limiting image based on the first fringe noise image. Correspondingly, the second fringe noise image generation module 612 may be used to generate the second fringe noise image based on the amplitude-limiting image, the first weight map, and the second weight image.
[0121] In some embodiments, the image processing device 600 may further include a segmentation module 614. The segmentation module 614 may be used to generate a segmented fringe noise image by segmenting each column of the second fringe noise image into a plurality of sections. Correspondingly, the target image generation module 616 may be used to generate the target image based on the segmented fringe noise image and the preliminary image.
[0122] FIG. 7 is a schematic diagram illustrating an exemplary electronic device 700 according to some embodiments of the present disclosure.
[0123] As illustrated in FIG. 7, the electronic device 700 may include at least one processor 710 and a storage device 720 coupled to the at least one processor 710. A specific connection medium between the processor (s) 710 and the storage device (s) 720 is not limited in the embodiments of the present disclosure. As illustrated in FIG. 7, the processor (s) 710 and the storage device (s) 720 may be connected via bus 730. It should be noted that the description of the bus 730 is provided for the purposes of illustration, and not intended to limit the scope of the present disclosure. The bus 730 may include an address bus, a data bus, a control bus, etc. In some embodiments, the processor (s) 710 may also be referred to as a controller, which is not limited herein.
[0124] The storage device (s) 720 may store programs and / or instructions for implementing the processes in the above embodiments of the present disclosure. The processor (s) 710 may be configured to execute the programs and / or instructions stored in the storage device (s) 720 to implement operations of the processes in the above embodiments of the present disclosure. The processor (s) 710 may include a central processing unit (CPU) . The processor (s) 710 may be an integrated circuit chip that can process a signal. The processor (s) 710 may include a general processor, a digital signal processor (DSP) , an application-specific integrated circuit (ASIC) , a field-programmable gate array (FPGA) or other programmable logic devices, a discrete gate or transistor logic devices, a discrete hardware component, etc. The general processor may be a microprocessor, or any conventional processor.
[0125] Some embodiments of the present disclosure also provide a computer-readable storage medium. The computer-readable storage medium may store computer-executable instructions, and the computer-executable instructions may be used to cause a computer to implement the processes in the above embodiments of the present disclosure.
[0126] Some embodiments of the present disclosure also provide a computer program product. When the computer program product is executed, the processes in the above embodiments of the present disclosure may be implemented.
[0127] Having thus described the basic concepts, it may be rather apparent to those skilled in the art after reading this detailed disclosure that the foregoing detailed disclosure is intended to be presented by way of example only and is not limiting. Various alterations, improvements, and modifications may occur and are intended for those skilled in the art, though not expressly stated herein. These alterations, improvements, and modifications are intended to be suggested by this disclosure, and are within the spirit and scope of the exemplary embodiments of this disclosure.
[0128] Moreover, certain terminology has been used to describe embodiments of the present disclosure. For example, the terms “one embodiment, ” “an embodiment, ” and / or “some embodiments” mean that a particular feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment of the present disclosure. Therefore, it is emphasized and should be appreciated that two or more references to “an embodiment” or “one embodiment” or “an alternative embodiment” in various portions of this disclosure are not necessarily all referring to the same embodiment. Furthermore, the particular features, structures, or characteristics may be combined as suitable in one or more embodiments of the present disclosure.
[0129] Furthermore, the recited order of processing elements or sequences, or the use of numbers, letters, or other designations therefore, is not intended to limit the claimed processes and methods to any order except as may be specified in the claims. Although the above disclosure discusses through various examples what is currently considered to be a variety of useful embodiments of the disclosure, it is to be understood that such detail is solely for that purpose, and that the appended claims are not limited to the disclosed embodiments, but, on the contrary, are intended to cover modifications and equivalent arrangements that are within the spirit and scope of the disclosed embodiments. For example, although the implementation of various components described above may be embodied in a hardware device, it may also be implemented as a software only solution, e.g., an installation on an existing server or mobile device.
[0130] Similarly, it should be appreciated that in the foregoing description of embodiments of the present disclosure, various features are sometimes grouped together in a single embodiment, figure, or description thereof for the purpose of streamlining the disclosure aiding in the understanding of one or more of the various inventive embodiments. This method of disclosure, however, is not to be interpreted as reflecting an intention that the claimed subject matter requires more features than are expressly recited in each claim. Rather, inventive embodiments lie in less than all features of a single foregoing disclosed embodiment.
[0131] In some embodiments, the numbers expressing quantities or properties used to describe and claim certain embodiments of the application are to be understood as being modified in some instances by the term “about, ” “approximate, ” or “substantially. ” For example, “about, ” “approximate, ” or “substantially” may indicate ±20%variation of the value it describes, unless otherwise stated. Accordingly, in some embodiments, the numerical parameters set forth in the written description and attached claims are approximations that may vary depending upon the desired properties sought to be obtained by a particular embodiment. In some embodiments, the numerical parameters should be construed in light of the number of reported significant digits and by applying ordinary rounding techniques. Notwithstanding that the numerical ranges and parameters setting forth the broad scope of some embodiments of the application are approximations, the numerical values set forth in the specific examples are reported as precisely as practicable.
[0132] Each of the patents, patent applications, publications of patent applications, and other material, such as articles, books, specifications, publications, documents, things, and / or the like, referenced herein is hereby incorporated herein by this reference in its entirety for all purposes, excepting any prosecution file history associated with same, any of same that is inconsistent with or in conflict with the present document, or any of same that may have a limiting effect as to the broadest scope of the claims now or later associated with the present document. By way of example, should there be any inconsistency or conflict between the description, definition, and / or the use of a term associated with any of the incorporated material and that associated with the present document, the description, definition, and / or the use of the term in the present document shall prevail.
[0133] In closing, it is to be understood that the embodiments of the application disclosed herein are illustrative of the principles of the embodiments of the application. Other modifications that may be employed may be within the scope of the application. Thus, by way of example, but not of limitation, alternative configurations of the embodiments of the application may be utilized in accordance with the teachings herein. Accordingly, embodiments of the present application are not limited to that precisely as shown and described.
Claims
1.A method for image processing, implemented on a computing device having at least one processor and at least one storage device, the method comprising:generating, based on a preliminary image, a smooth image and a first fringe noise image, the preliminary image including fringe noises along a column direction;generating a first weight map corresponding to the smooth image and a second weight map corresponding to the first fringe noise image;generating a second fringe noise image based on the first fringe noise image, the first weight map, and the second weight map; andgenerating a target image based on the second fringe noise image and the preliminary image.2.The method of claim 1, wherein the first fringe noise image is generated by:obtaining a preliminary fringe noise image by performing a weighted filtering operation on the preliminary image along the column direction; andgenerating the first fringe noise image based on the preliminary fringe noise image and the smooth image.3.The method of claim 1 or claim 2, wherein the first weight map corresponding to the smooth image is generated by:for each pixel point in the smooth image,determining at least one feature parameter of the pixel point based on the smooth image;determining at least one weight value of the pixel point based on the at least one feature parameter; anddetermining an adjusted weight value of the pixel point based on a comparison result between each of the at least one weight value and a corresponding threshold value; andgenerating the first weight map based on the adjusted weight value of each pixel point in the smooth image.4.The method of any one of claims 1-3, wherein the second weight map corresponding to the first fringe noise image is generated by includes:for each pixel point in the first fringe noise image,determining at least one feature parameter of the pixel point based on the first fringe noise image;determining at least one weight value of the pixel point based on at least one feature parameter; anddetermining an adjusted weight value of the pixel point based on a comparison result between each of the at least one weight value and a corresponding threshold value; andgenerating the second weight map based on the adjusted weight value of each pixel point in the first fringe noise image.5.The method of any one of claims 1-4, wherein the generating a second fringe noise image based on the first fringe noise image, the first weight map, and the second weight map includes:generating an amplitude-limiting image by performing an amplitude-limiting operation on the first fringe noise image; andgenerating the second fringe noise image based on the amplitude-limiting image, the first weight map, and the second weight map.6.The method of claim 5, wherein the performing an amplitude-limiting operation on the first fringe noise image includes:determining an amplitude threshold corresponding to the amplitude-limiting operation based on a severity degree of the fringe noises in the preliminary image; andperforming, based on the amplitude threshold, the amplitude-limiting operation on the first fringe noise image.7.The method of claim 5 or claim 6, wherein the generating the second fringe noise image based on the amplitude-limiting image, the first weight map, and the second weight map includes:for each pixel point in the amplitude-limiting image, determining a classification value of the pixel point indicating whether the pixel point is a noise point based on the first weight map and the second weight map; andgenerating the second fringe noise image based on the classification value of each pixel point in the amplitude-limiting image.8.The method of any one of claims 1-7, wherein the generating a target image based on the second fringe noise image and the preliminary image includes:generating a segmented fringe noise image by segmenting each column of the second fringe noise image into a plurality of sections; andgenerating the target image by subtracting the segmented fringe noise image from the preliminary image.9.The method of claim 8, wherein the segmenting each column of the second fringe noise image to a plurality of sections includes:for each column of the second fringe noise image,determining a count of the plurality of sections in the column;determining a length of each of the plurality of sections based on the count of the plurality of sections and a count of rows of the second fringe noise image; andsegmenting the column based on the length.10.The method of any one of claims 1-9, wherein before generating the smooth image and the first fringe noise image based on the preliminary image, the method further comprises:obtaining a raw image captured by an imaging device;in response to determining that the raw image includes fringe noises along a row direction, generating the preliminary image by rotating the raw image 90 degrees; orin response to determining that the raw image includes fringe noises along a column direction, designating the raw image as the preliminary image.11.A system for image processing, comprising:at least one storage device including a set of instructions; andat least one processor configured to communicate with the at least one storage device, wherein when executing the set of instructions, the at least one processor is configured to direct the system to perform operations including:generating, based on a preliminary image, a smooth image and a first fringe noise image, the preliminary image including fringe noises along a column direction;generating a first weight map corresponding to the smooth image and a second weight map corresponding to the first fringe noise image;generating a second fringe noise image based on the first fringe noise image, the first weight map, and the second weight map; andgenerating a target image based on the second fringe noise image and the preliminary image.12.The system of claim 11, wherein the first fringe noise image is generated by:obtaining a preliminary fringe noise image by performing a weighted filtering operation on the preliminary image along the column direction; andgenerating the first fringe noise image based on the preliminary fringe noise image and the smooth image.13.The system of claim 11 or claim 12, wherein the first weight map corresponding to the smooth image is generated by:for each pixel point in the smooth image,determining at least one feature parameter of the pixel point based on the smooth image;determining at least one weight value of the pixel point based on the at least one feature parameter; anddetermining an adjusted weight value of the pixel point based on a comparison result between each of the at least one weight value and a corresponding threshold value; andgenerating the first weight map based on the adjusted weight value of each pixel point in the smooth image.14.The system of any one of claims 11-13, wherein the second weight map corresponding to the first fringe noise image is generated by includes:for each pixel point in the first fringe noise image,determining at least one feature parameter of the pixel point based on the first fringe noise image;determining at least one weight value of the pixel point based on at least one feature parameter; anddetermining an adjusted weight value of the pixel point based on a comparison result between each of the at least one weight value and a corresponding threshold value; andgenerating the second weight map based on the adjusted weight value of each pixel point in the first fringe noise image.15.The system of any one of claims 11-14, wherein the generating a second fringe noise image based on the first fringe noise image, the first weight map, and the second weight map includes:generating an amplitude-limiting image by performing an amplitude-limiting operation on the first fringe noise image; andgenerating the second fringe noise image based on the amplitude-limiting image, the first weight map, and the second weight map.16.The system of claim 15, wherein the performing an amplitude-limiting operation on the first fringe noise image includes:determining an amplitude threshold corresponding to the amplitude-limiting operation based on a severity degree of the fringe noises in the preliminary image; andperforming, based on the amplitude threshold, the amplitude-limiting operation on the first fringe noise image.17.The system of claim 15 or claim 16, wherein the generating the second fringe noise image based on the amplitude-limiting image, the first weight map, and the second weight map includes:for each pixel point in the amplitude-limiting image, determining a classification value of the pixel point indicating whether the pixel point is a noise point based on the first weight map and the second weight map; andgenerating the second fringe noise image based on the classification value of each pixel point in the amplitude-limiting image.18.The system of any one of claims 11-17, wherein the generating a target image based on the second fringe noise image and the preliminary image includes:generating a segmented fringe noise image by segmenting each column of the second fringe noise image into a plurality of sections; andgenerating the target image by subtracting the segmented fringe noise image from the preliminary image.19.The system of claim 18, wherein the segmenting each column of the second fringe noise image to a plurality of sections includes:for each column of the second fringe noise image,determining a count of the plurality of sections in the column;determining a length of each of the plurality of sections based on the count of the plurality of sections and a count of rows of the second fringe noise image; andsegmenting the column based on the length.20.The system of any one of claims 11-19, wherein before generating the smooth image and the first fringe noise image based on the preliminary image, the method further comprises:obtaining a raw image captured by an imaging device;in response to determining that the raw image includes fringe noises along a row direction, generating the preliminary image by rotating the raw image 90 degrees; orin response to determining that the raw image includes fringe noises along a column direction, designating the raw image as the preliminary image.21.A system for image processing, comprising a first generation module, a second generation module, a third generation module, and a fourth generation module, wherein:the first generation module is configured to generate, based on a preliminary image, a smooth image and a first fringe noise image, the preliminary image including fringe noises along a column direction;the second generation module is configured to generate a first weight map corresponding to the smooth image and a second weight map corresponding to the first fringe noise image;the third generation module is configured to generate a second fringe noise image based on the first fringe noise image, the first weight map, and the second weight map; andthe fourth generation module is configured to generate a target image based on the second fringe noise image and the preliminary image.22.A non-transitory computer readable medium, comprising executable instructions that, when executed by at least one processor, direct the at least one processor to perform a method, the method comprising:generating, based on a preliminary image, a smooth image and a first fringe noise image, the preliminary image including fringe noises along a column direction;generating a first weight map corresponding to the smooth image and a second weight map corresponding to the first fringe noise image;generating a second fringe noise image based on the first fringe noise image, the first weight map, and the second weight map; andgenerating a target image based on the second fringe noise image and the preliminary image.
Citation Information
Patent Citations
Infrared image column-direction stripe elimination method and system and computer storage medium
CN111161172A
Infrared image stripe elimination method, infrared detector and storage device
CN111383196A
Infrared image stripe noise processing method and device, medium and electronic equipment
CN112465707A