Multi-frame likelihood-based adaptive bad pixel correction in image processing applications or other applications
A method includes obtaining multiple input image frames and generating bad pixel maps associated with different ones of the input image frames. Each bad pixel map is generated using first and second adaptive thresholds that are based on statistical properties of image data contained in a specified operation window within the associated input image frame. The method also includes generating at least one refined bad pixel map using the bad pixel maps associated with two or more of the input image frames. The method further includes using one or more coordinates of one or more bad pixels identified in the at least one refined bad pixel map to update one or more pixel values of at least one of the input image frames.
1 . A method comprising:
obtaining multiple input image frames;
generating bad pixel maps associated with different ones of the input image frames, each bad pixel map generated using first and second adaptive thresholds that are based on statistical properties of image data contained in a specified operation window within the associated input image frame;
generating at least one refined bad pixel map using the bad pixel maps associated with two or more of the input image frames; and
using one or more coordinates of one or more bad pixels identified in the at least one refined bad pixel map to update one or more pixel values of at least one of the input image frames;
wherein the first adaptive threshold is used to identify one or more hot or bright pixels that generate image data that is too bright relative to other pixels in the specified operation window, the first adaptive threshold having (i) a constant value for a first range of image brightness values and (ii) an increasing value for a second range of image brightness values, the second range larger than the first range; and
wherein the second adaptive threshold is used to identify one or more dark pixels that generate image data that is too dark relative to other pixels in the specified operation window, the second adaptive threshold having (i) a decreasing value for a third range of image brightness values and (ii) a constant value for a fourth range of image brightness values, the third range larger than the fourth range.
2 . The method of claim 1 , wherein:
the first adaptive threshold is used to identify one or more hot or bright pixels that generate image data that is too bright relative to other pixels in the specified operation window; and
the second adaptive threshold is used to identify one or more dark pixels that generate image data that is too dark relative to other pixels in the specified operation window.
3 . The method of claim 2 , wherein:
the first adaptive threshold has (i) a constant value for a first range of image brightness values and (ii) an increasing value for a second range of image brightness values, the second range larger than the first range; and
the second adaptive threshold has (i) a decreasing value for a third range of image brightness values and (ii) a constant value for a fourth range of image brightness values, the third range larger than the fourth range.
4 . The method of claim 1 , wherein generating the bad pixel maps associated with different ones of the input image frames comprises, for each of the input image frames:
separating the input image frame into multiple color channels;
generating an initial bad pixel map for each of the color channels; and
combining the initial bad pixel maps for the color channels to generate the bad pixel map for the input image frame.
5 . The method of claim 4 , wherein generating the initial bad pixel map for each of the color channels comprises:
identifying first and N th maximum and minimum pixel values based on pixel values within the specified operation window;
identifying the first and second adaptive thresholds based on differences between the first and N th maximum and minimum pixel values; and
applying the first and second adaptive thresholds to determine whether a pixel at a center of the specified operation window is a bad pixel.
6 . The method of claim 1 , wherein:
the bad pixel maps are generated sequentially; and
generating the at least one refined bad pixel map comprises refining a subsequent one of the bad pixel maps with an earlier one of the bad pixel maps.
7 . The method of claim 1 , wherein generating the at least one refined bad pixel map comprises combining bad pixel locations present in all of the bad pixel maps to generate the at least one refined bad pixel map.
8 . The method of claim 1 , wherein generating the at least one refined bad pixel map comprises:
combining bad pixel locations present in all or a subset of the bad pixel maps to generate an intermediate bad pixel map; and
combining bad pixel locations present in the intermediate bad pixel map with bad pixel locations present in an additional bad pixel map, the additional bad pixel map associated with one of the input image frames and based on one or more different adaptive thresholds.
9 . The method of claim 1 , wherein:
the input image frames are processed in batches; and
generating the at least one refined bad pixel map comprises combining a subset of the bad pixel maps associated with a subset of the input image frames.
10 . A method comprising:
obtaining multiple input image frames;
generating bad pixel maps associated with different ones of the input image frames, each bad pixel map generated using first and second adaptive thresholds that are based on statistical properties of image data contained in a specified operation window within the associated input image frame;
generating at least one refined bad pixel map using the bad pixel maps associated with two or more of the input image frames; and
using one or more coordinates of one or more bad pixels identified in the at least one refined bad pixel map to update one or more pixel values of at least one of the input image frames;
wherein generating the bad pixel maps and generating the at least one refined bad pixel map comprise:
determining the statistical properties of the image data in each of the input image frames;
aggregating the statistical properties to detect a distribution type;
generating the bad pixel maps for at least a subset of the image frames based on the detected distribution type; and
combining the bad pixel maps to generate the at least one refined bad pixel map.
11 . An electronic device comprising:
at least one imaging sensor configured to capture multiple input image frames; and
at least one processing device configured to:
generate bad pixel maps associated with different ones of the input image frames, wherein, to generate each bad pixel map, the at least one processing device is configured to use first and second adaptive thresholds that are based on statistical properties of image data contained in a specified operation window within the associated input image frame;
generate at least one refined bad pixel map using the bad pixel maps associated with two or more of the input image frames; and
use one or more coordinates of one or more bad pixels identified in the at least one refined bad pixel map to update one or more pixel values of at least one of the input image frames;
wherein, to generate the bad pixel maps associated with different ones of the input image frames, the at least one processing device is configured, for each of the input image frames, to:
separate the input image frame into multiple color channels;
generate an initial bad pixel map for each of the color channels; and
combine the initial bad pixel maps for the color channels to generate the bad pixel map for the input image frame.
12 . The electronic device of claim 11 , wherein:
the first adaptive threshold is used to identify one or more hot or bright pixels that generate image data that is too bright relative to other pixels in the specified operation window; and
the second adaptive threshold is used to identify one or more dark pixels that generate image data that is too dark relative to other pixels in the specified operation window.
13 . The electronic device of claim 12 , wherein:
the first adaptive threshold has (i) a constant value for a first range of image brightness values and (ii) an increasing value for a second range of image brightness values, the second range larger than the first range; and
the second adaptive threshold has (i) a decreasing value for a third range of image brightness values and (ii) a constant value for a fourth range of image brightness values, the third range larger than the fourth range.
14 . The electronic device of claim 11 , wherein, to generate the initial bad pixel map for each of the color channels, the at least one processing device is configured to:
identify first and N th maximum and minimum pixel values based on pixel values within the specified operation window;
identify the first and second adaptive thresholds based on differences between the first and N th maximum and minimum pixel values; and
apply the first and second adaptive thresholds to determine whether a pixel at a center of the specified operation window is a bad pixel.
15 . The electronic device of claim 11 , wherein:
the at least one processing device is configured to generate the bad pixel maps sequentially; and
to generate the at least one refined bad pixel map, the at least one processing device is configured to refine a subsequent one of the bad pixel maps with an earlier one of the bad pixel maps.
16 . The electronic device of claim 11 , wherein, to generate the at least one refined bad pixel map, the at least one processing device is configured to combine bad pixel locations present in all of the bad pixel maps to generate the at least one refined bad pixel map.
17 . The electronic device of claim 11 , wherein, to generate the at least one refined bad pixel map, the at least one processing device is configured to:
combine bad pixel locations present in all or a subset of the bad pixel maps to generate an intermediate bad pixel map; and
combine bad pixel locations present in the intermediate bad pixel map with bad pixel locations present in an additional bad pixel map, the additional bad pixel map associated with one of the input image frames and based on one or more different adaptive thresholds.
18 . The electronic device of claim 11 , wherein:
the at least one processing device is configured to process the input image frames in batches; and
to generate the at least one refined bad pixel map, the at least one processing device is configured to combine a subset of the bad pixel maps associated with a subset of the input image frames.
19 . The electronic device of claim 11 , wherein, to generate the bad pixel maps and generate the at least one refined bad pixel map, the at least one processing device is configured to:
determine the statistical properties of the image data in each of the input image frames;
aggregate the statistical properties to detect a distribution type;
generate the bad pixel maps for at least a subset of the image frames based on the detected distribution type; and
combine the bad pixel maps to generate the at least one refined bad pixel map.
20 . The method of claim 1 , wherein generating the bad pixel maps and generating the at least one refined bad pixel map comprise:
determining the statistical properties of the image data in each of the input image frames;
aggregating the statistical properties to detect a distribution type;
generating the bad pixel maps for at least a subset of the image frames based on the detected distribution type; and
combining the bad pixel maps to generate the at least one refined bad pixel map.