Image processing for pixel correction
Patent Information
- Application Number
- CN202380053687.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2022-07-20
- Filing Date
- 2023-07-14
- Publication Date
- 2025-03-07
Smart Images

Figure CN119585767A_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates generally to an image processing technique for pixel correction, and more particularly to an image processing technique for correcting pixels associated with a defective region of an imager. Summary of the invention
[0002] According to one aspect of the present disclosure, a method for correcting pixels of a display includes: receiving image data associated with an image captured by an imager at a processor. The method further includes determining, by the processor, a location of a target pixel in the display associated with a defect of the imager. The method further includes identifying an operation pixel that is close to the target pixel. The operation pixel has a common color with the target pixel. The method further includes applying a kernel to a first region of image data overlapping the location of the target pixel. The method further includes calculating a sum of at least one value of each of the operation pixels in the first region, and storing the sum and a count of the operation pixels in the first region in a memory. The method further includes applying the kernel to a second region of image data overlapping the location of the target pixel. The method further includes determining a weighted average of the operation pixels based on the sum, the count of the operation pixels in the first region, and the values of the operation pixels in the second region. The method further includes applying correction to the target pixel based on the weighted average.
[0003] According to another aspect of the present disclosure, a system for correcting image data includes an imager configured to capture image data. A display is configured to present image data. An image processor communicates with the display and the imager. The image processor is configured to receive the image data, determine the location of a target pixel in the display associated with a defect of the imager, and identify an operation pixel close to the target pixel. The operation pixel has a common color with the target pixel. The image processor is also configured to apply a kernel to a first region of the image data overlapping the location of the target pixel, calculate a sum of at least one value of each of the operation pixels in the first region, and store the sum and the count of the operation pixels in the first region in a memory. The image processor is also configured to apply the kernel to a second region of the image data overlapping the location of the target pixel. The image processor is also configured to determine a weighted average of the operation pixels based on the sum, the count of the operation pixels in the first region, and the value of the operation pixels in the second region, and apply correction to the target pixel based on the weighted average.
[0004] These and other features, advantages and objects of the present device will be further understood and appreciated by those skilled in the art through a study of the following specification, claims and drawings. BRIEF DESCRIPTION OF THE DRAWINGS
[0005] In the attached picture:
[0006] Figure 1 is a block diagram of an image processing system of the present disclosure;
[0007] Figure 2 is a front view of pixel data displayed at a rear view assembly of the present disclosure, and a detailed view of the displayed pixel data; and
[0008] Figure 3 is a flow chart of a method for correcting pixels of a display according to one aspect of the present disclosure. DETAILED DESCRIPTION
[0009] For the purpose of this description, the terms "upper", "lower", "right", "left", "rear", "front", "vertical", "horizontal" and their derivatives will be used in conjunction with the present invention. Figure 2 Unless otherwise specified, the term "front" shall refer to the surface of the element closer to the intended observer of the display mirror, and the term "rear" shall refer to the surface of the element farther from the intended observer of the display mirror. However, it should be understood that the present invention may adopt various alternative orientations except that the opposite direction is explicitly specified. It should also be understood that the specific devices and processes shown in the drawings and described in the following description are merely exemplary embodiments of the inventive concepts defined in the appended claims. Therefore, unless the claims expressly state otherwise, specific dimensions and other physical characteristics related to the embodiments disclosed herein should not be considered limiting.
[0010] The terms "comprises", "includes" or any other variation thereof are intended to cover non-exclusive inclusions, such that a process, method, article or apparatus comprising a list of elements includes not only those elements, but may also include other elements not explicitly listed or inherent to such process, method, article or apparatus. Without further constraints, an element preceded by "comprises..." does not exclude the presence of additional identical elements in the process, method, article or apparatus comprising the element.
[0011] The present disclosure generally provides an image processing device for manipulating image data captured by an imaging device. In operation, the image processing device can generate a corrected image to mask or hide a defective or dead portion (e.g., a pixel or fragment) of an image sensor of the imaging device so as not to be displayed on a display screen. The process adopted by the image processing device can provide reduced memory requirements while also collecting enough data to fully adjust the pixels associated with the defective portion of the image sensor. In general, the image processing device can implement pixel correction on a given area (e.g., a 5x5 pixel area) of an image using two line buffers in a single scan. Therefore, the implementation of the present disclosure can limit the line buffers required to process and correct image data captured by defects of a faulty image sensor in a given area. For example, the present disclosure can provide the use of a dual-line buffer instead of a quad-line buffer to cover a 5x5 pixel area containing "dead" pixels. In this way, the image processing device of the present disclosure can provide a more robust and cost-effective technique for producing accurate images from inaccurate or defective image sensors.
[0012] Reference now Figure 1 , an image processing system 10 is shown implemented in a simplified schematic structure representing a vehicle 12. Although discussed with reference to a vehicle 12 (e.g., a motor vehicle, an aircraft, a bus, a train, etc.), the system 10 may be implemented with a variety of cameras or imaging systems that may be applied in portable devices as well as fixed devices to accommodate a variety of applications. In the specific example shown, the system 10 may be configured to process images of the interior 14 or exterior 16 of the vehicle 12. Thus, the present disclosure may provide a flexible image processing system 10 suitable for a variety of applications.
[0013] The system 10 may include an imaging device 18, which includes an imager 20 and, in some cases, one or more illumination sources 22 for illuminating a spatial region within the field of view of the imager 20. In operation, the imager 20 may capture image data and supply the data to one or more displays. In some cases, the imager 20 may suffer from one or more failures caused by manufacturing problems or wear and tear attributable to use. For example, due to changes in the operating environment, vibration, etc., the imager 20 and corresponding components may be susceptible to damage and defects, including one or more dead pixels or defective pixels of a light sensor or photodiode array (e.g., CMOS, charge coupled, etc.). In operation, the controller 36 may identify such "dead" or defective light sensor pixels based on corresponding pixel data read out from the pixel array 48. In various embodiments, the present disclosure may provide detection and correction of such defects by simulating pixel data associated with defective pixels and displaying corrected image data, which corrects and removes visible spots associated with defective pixels. In this way, the system 10 can extend the operation of the imager 20 by enhancing the image data to extend the corresponding service life and reduce maintenance costs.
[0014] The imager 20 may include an image sensor including a plurality of pixels, such as a CMOS photodiode array configured to generate a characteristic electrical signal corresponding to the wavelength of light received by the image sensor. The imager 20 may communicate with an image processor 24 that processes the image in a field programmable gate array (FPGA) 26. The FPGA 26 includes a block random access memory (BRAM) 28, which may include individual blocks 30 for storing embedded memory in the FPGA 26. Each block 30 may have a predefined storage space (e.g., 4, 8, 16, 32 kilobits, etc.). In general, values associated with image data (e.g., characteristic electrical signals) may be stored in the blocks 30 by the BRAM 28 on a frame-by-frame basis. Additionally, in some instances, the BRAM 28 may store multiple previous lines of image data and the current frame to allow manipulation of image data based on previously captured lines.
[0015] Still refer to Figure 1 An interface 32, such as a human machine interface (HMI), a touch screen, a head-up display, etc., can communicate with the image processor 24 and can be configured to output image data to a display 34 of the interface 32. For example, as referenced Figure 2As described, the interface 32 can stream video or image data captured by the imager 20 to a display 34 of the rearview assembly, where the image data and / or video data is a representation of the interior 14 or exterior 16 of the vehicle 12. The display 34 may include a light emitting diode, a liquid crystal display (LCD), or another type of display that employs pixels to present colors of various intensities to form an image at the display 34. For example, the display 34 may be an RGB display 34 (e.g., a display having red, green, and blue pixels arranged in an array) that corresponds to image data captured by the light sensors of the imager 20. In some examples, the pixels are associated with or generally correspond to a square grid of light sensors of the imager 20. In particular, the pixels may correspond to a group of light sensors aligned with a Bayer filter that arranges the RGB color filters above the light sensors. In this way, each light sensor of the imager 20 can be assigned to a given wavelength or color of visible light, the brightness or intensity of which can be processed by the image processor 24. The image processor 24 can, in turn, transmit the image data associated with the light sensor to a specific pixel mapped to the light sensor. As will be further described, the image data may be manipulated by image processor 24 prior to determining pixel data for individual pixels.
[0016] Still reference Figure 1 , the image processing system 10 may also include a controller 36 that communicates with the interface 32 and the imaging device 18. The controller 36 may include a processor and a memory. The memory may store instructions that, when executed by the processor, cause the processor to control the illumination source 22 and / or the imager 20. For example, the controller 36 may control the shutter of the imager 20 and / or the flashing of the illumination source 22 or the brightness of the illumination source 22 to enhance the quality of the image captured by the imager 20. The controller 36 may communicate with other devices not illustrated, which may correspond to other aspects of the imaging device 18, such as an ambient light sensor, an infrared sensor, an infrared light source, etc. Therefore, the controller 36 may employ other functions related to image capture and / or illumination that are not specifically described herein.
[0017] Reference now Figure 2 , the image processing system 10 may incorporate a rearview mirror assembly 38 that may be configured to display an image of the exterior 16 of the vehicle 12, such as a rear portion of the exterior 16 of the vehicle 12. As shown, the image processing system 10 may be configured to receive image data associated with an image captured by the imager 20. The image data may be processed in individual segments or rows 40, such as Figure 24. Although shown as five unit wide rows 40, in other examples of the present disclosure, the size of the rows 40 may vary. In general, the scanning of pixel / image data may be done in one or two directions 42, 44 of the display 34, such as horizontally 42 and vertically 44.
[0018] As previously discussed, the system 10 can provide for detection and correction of one or more faulty pixels or target pixels 60 of the imager 20, and can simulate image data associated with the target pixels 60 for presentation on the display 34. In operation, the controller 36 can detect a fault of one or more light sensor pixels of the pixel array 48 in response to a readout signal indicative of the one or more faults. Examples of light sensor pixel faults can include dead pixels, stuck pixels, or other permanent or temporary faults attributed to the detection of image data representing a scene captured by the imager 20. Such faults can be caused by a photodiode that has stopped receiving power, a pixel that cannot change color or brightness, etc. The controller 36 can detect such faults as a specific address associated with a pixel in the pixel array 48 that generally fails to respond by changing the readout signal over time or fails to read out a dynamic or changing value similar to a group of adjacent or nearby pixels over time.
[0019] The detection of the pixel array or one or more faulty pixels can be detected by the controller 36 primarily by monitoring the readout values over time. For example, the faulty operation of one or more light sensor pixels can be detected in response to a failure to dynamically change in response to a readout value in a region of the field of view compared to one or more pixels in the same region or block. In some cases, the color or brightness of one or more pixels may fail to change in response to a dynamic condition identified by one or more neighboring pixels over time. By monitoring the output readings associated with the operation of each light sensor pixel in the pixel array 48, the controller 36 can identify one or more pixels that fail to change over time or change differently from nearby associated pixels, and attribute such nonconforming behavior to an indication that a pixel in the array is faulty or otherwise blocked due to contamination or debris associated with the camera device. It may be desirable to monitor such a fault condition frequently. In response to detecting a fault condition, the controller 36 can identify the address of the corresponding pixel as having failed and identify the pixel as a target pixel 60 for pixel correction.
[0020] Still refer to Figure 2, an example of correction or simulation of image data associated with a target pixel 60 is described in more detail. As illustratively shown, the image data is processed vertically 44, where a kernel 46 is applied to the image data sequentially and row by row from the top of the image to the bottom of the image. The kernel 46 can be used to scan the pixel data and store the pixel data in the block 30 of the BRAM 28. For example, the kernel 46 can be a convolution matrix or mask that captures a specific area (e.g., a 3x5 unit pixel area) of the pixel array 48 containing at least one line buffer 49 of the image data. Based on the pixel data stored in the BRAM 28, the target pixel 60 associated with a defect in the imaging device 18 (e.g., a damaged or dust-covered light sensor) can be updated to reflect a possible representation of the object of the captured image. The target pixel 60 shown and described may be referred to as a "dead" or "defective" pixel due to its association with a bad, dead or defective portion of the imager 20.
[0021] In the example shown, the area scanned by the kernel 46 is a 5x5 pixel array 48 of row 40 having a first region 50 and a second region 52 that overlaps the first region 50 at an overlap region 54. The overlap region 54 may be the bottom line of the 3x5 matrix (e.g., kernel 46) that is scanned or traversed by the kernel 46 in two scans 56, 58. In the first scan 56 of the kernel 46, pixels in the range of (0,0) to (3,5) are scanned and corresponding image data is stored in the BRAM 28. For example, the intensity associated with a red pixel at (0,0) in the pixel array 48 may be stored in a 32-bit word along with the brightness or intensity of some or all other pixels in the 3x5 kernel 46. In addition to individual pixel values, an average or weighted average of pixels of a similar type (e.g., color) of a region of the kernel 46 may be stored in a 32-bit word or in another word in the BRAM 28. In this manner, for pixels associated with defective light sensors (e.g., target pixel 60 at (3,3)), the pixel value associated with target pixel 60 may be adjusted or corrected using the average of the surrounding red pixels. For example, pixels at positions (0,0), (0,2), (0,4), (2,0), and (2,4) may be averaged or otherwise statistically related to the target value of target pixel 60 after first scan 56. The target value may then be incorporated by image processor 24 to manipulate the image data to output pixel data that is different from the value captured at imager 20.
[0022] With particular reference to the second pass 58 of the kernel 46 over the pixel array 48, the second region 52 may include pixels ranging from (2,0) to (4,4) and may overlap with the first region 50 via a common overlap region 54. Similar to the process following the first scan 56, the image processor 24 may incorporate surrounding pixels in the second region 52 having pixel data of a type common to the target pixel 60 to adjust the target pixel 60 to a target value. In this manner, the target value may be updated based on the pixel data collected in the second pass 58. For example, pixel data associated with pixels at positions (2,0), (2,4), (4,0), (4,2), and (4,4) may be incorporated into an algorithm used by the processor to adjust the target value to correct the target pixel 60.
[0023] Once pixel data for pixels having a type (e.g., color) in common with the type of target pixel 60 is determined from both the first scan 56 and the second scan 58, a weighted average of this value (e.g., brightness, intensity, and amount / number) may be assigned as the target value. By overlapping the first scan 56 and the second scan 58 twice along the common overlap region 54 incorporating the target pixel data, the "good" pixels in the pixel array 48 may be used to compensate for the "defective" target pixel 60. Furthermore, if the kernel 46 is larger (e.g., a 5x5 area), the amount of image data stored in the BRAM 28 may be less than the amount of image data that needs to be stored in the BRAM 28. In this manner, the image processing system 10 of the present disclosure may provide a more efficient and robust image correction process.
[0024] In some examples, the algorithm employed may be a hybrid algorithm that causes the BRAM 28 to store the total value of surrounding similar type pixel data in a 32-bit word between the first pass 56 and the second pass 58, along with information specifying how many pixels have been scanned (e.g., how many red pixels have been scanned). During the second scan 58, (after having passed through the two line buffers 49 in the first scan 56), the kernel 46 may capture pixel values associated with the additional similar type pixels of the second region 52 in the second scan 58, and may add the values of these similar type pixels, along with the number of additional pixels scanned, to the 32-bit word, thereby forming an aggregate sum of the two regions 50, 52. The image processor 24 may then calculate (e.g., by division) the average of the 5x5 pixel array 48 scanned twice by the kernel 46. In this way, the target value may be updated to incorporate the weighted average of the two scans, and capture a wider range of good pixels than would be possible with a 3x5 kernel 46 that does not include the overlap region 54.
[0025] Although not shown exemplarily, it is contemplated that similar types of pixels surrounding the "defective" target pixel 60 may also be associated with a defective light sensor. Therefore, the calculation of the target value by the surrounding pixels may not always be reliable. Image processing techniques can take such defects into account by omitting the values of these dead pixel values in the average or other calculations to determine the target value. In addition, by adopting a dual scanning method, a sufficient amount of similar type pixel data can be collected to fully correct the "defective" target pixel 60. In other words, the advantage of adopting a larger kernel size can be determined without using as much storage / memory as required by a 5x5 kernel. In fact, the dual scanning method and corresponding methods described herein can limit the memory requirements to six blocks 30 of BRAM 28 for a 1920 pixel long width or height of the display 34. For example, three pixel lines (e.g., two line buffers 49 and overlapping lines 54) can be stored for each row of pixels scanned along the lateral direction 42 or the vertical direction 44 for a 1920 pixel width or height, and each pixel line consumes two blocks 30 of BRAM 28. In contrast, since each scan captures five pixel lines, a 5x5 kernel may consume ten blocks 30 of BRAM 28 for a similar scan of a similar sized display.
[0026] Reference now Figure 3 , a method for correcting pixels of a display includes a process 302 for identifying a "dead" pixel (e.g., a target pixel 60). Within process 302, method 300 checks for the presence of a dead pixel at step 304, and if a dead pixel is detected, method 300 proceeds to determining the location of the dead pixel based on image data at step 306. The dead pixel identification routine may employ sensor pattern noise detection and / or other image processing techniques that may associate consistent pixel values that do not correspond to surrounding pixel values with dead pixels. Image processor 24 may then determine the location of the defective light sensor, and thereby determine the location of dead pixel 60.
[0027] At step 308, an operational pixel that is close to the target / dead pixel 60 may be identified by the image processor 24, and the operational pixel may have a common color with the target pixel 60. Figure 2In the example shown, the red pixels surrounding the target pixel 60 may be operational pixels due to having a common color with the color of the target pixel 60. At step 310, the kernel 46 may be applied to the first region 50 of the image data that overlaps the location of the target pixel 60. At step 312, operational pixels in the first region 50 that are also defective or dead may be excluded from the calculations for determining the value of the target pixel 60 via steps 314 and 316. Once the dead operational pixels of the first region 50 are removed from the calculation of the target value of the target pixel 60, the method 300 may continue to step 318, where an average value of the operational pixels of the first region 50 is stored in a memory. For example, the average value may be stored in a 32-bit word in the block 30 of the BRAM 28.
[0028] At step 320, the kernel 46 may be applied to a second region 52 of the image data that overlaps the location of the target pixel 60. For example, Figure 2 The overlap region 54 shown in FIG. 3 may be scanned twice by the kernel 46. At step 322, defective or dead operational pixels in the second region 52 may be excluded from the calculations for determining the value of the target pixel 60 via steps 314 and 316. At step 324, a weighted average of the operational pixels may be determined based on the average and value of the operational pixels in the second region 52. At step 326, a correction, update, or offset may be applied to the target pixel 60 based on the weighted average to generate an analog pixel value in the image data. The analog pixel value may ensure that the location of the target pixel as represented on the display 34 is similar to the surrounding pixels and changes dynamically as the operational pixels close to the location of the target pixel 60 change over time.
[0029] The correction may include assigning a weighted average to the target pixel 60. In this way, a target value for the pixel may be applied based on the weighted average to correct the target pixel 60. The target value may be a brightness level, intensity, etc., which may correspond to a specific color corresponding to the pixel. Although the description is made with respect to a red pixel, Figure 2 The example shown in , but the image correction technique can be applied to pixels of green, blue or other colors. It is also contemplated that brightness levels associated with surrounding pixels that are not of similar types can also be incorporated into other examples.
[0030] In general, the size (e.g., resolution) of the image captured by the imager 20 and / or the capacity of the image processor 24 can affect how much memory can be released by using the algorithm of the present disclosure. For example, the specific display 34 used can have a resolution in the range of 16 to 15,360 pixels by 16 to 15,360 pixels, or any combination thereof. Other resolutions exceeding such a range can also be used for the image processing technology of the present disclosure. In addition, the FPGA 26 can include any number of BRAMs 28 that can store image data within such a resolution range, and the amount of memory released can be proportional to or scalable to a specific resolution. In an example where each row 40 is up to 1920 pixels, a total of four blocks 30 of the BRAM 28 can be released for other image processing techniques. For example, compared with the embodiment of the 5x5 non-overlapping kernel 46, two blocks 30 of the BRAM 28 of each row 40 can be saved. For images with resolutions greater than 1920 pixels (e.g., 4K resolution) and / or for image processors 24 of different sizes (e.g., larger), algorithms according to the present disclosure can save more blocks 30 of BRAM 28. Similarly, the present algorithm can free up fewer blocks 30 of BRAM 28 for image processors 24 of resolution and / or smaller sizes than systems for processing and presenting images with resolutions less than 1920 pixels. Thus, the algorithms employed by the present disclosure can be scaled to account for different imager resolutions. It is also contemplated that the image processor 24 can employ additional cores 46 to perform other image processing on the image before presenting it at the display 34. In general, by requiring less BRAM 28 for image processing, a smaller and / or less complex FPGA 26 can be employed, resulting in a more efficient image processing device.
[0031] According to some aspects of the present disclosure, a method for correcting image data captured by a light sensor array includes: receiving image data associated with an image captured by the light sensor array at a processor; and determining, by the processor, a position of a target pixel in the light sensor array associated with a defect of an imager. Subsequently, the method identifies a first operational pixel in a first region of the light sensor array that overlaps with the position of the target pixel, and a second operational pixel in a second region of the light sensor array that overlaps with the position of the target pixel and a portion of the first region. An analog pixel value of the target pixel is determined in response to a weighted average of the first operational pixel and the second operational pixel. The analog pixel value is then assigned to the target pixel in the image data.
[0032] According to various aspects, the present disclosure may implement one or more of the following features or configurations in various combinations:
[0033] - said method is applied by a kernel operated by said processor;
[0034] - determining the analog pixel value by calculating a first sum of a plurality of first pixel values of the operating pixels in the first zone;
[0035] - further determining said analog pixel value by storing in a memory said first sum and a first count of said operational pixels in said first region;
[0036] - determining said analog pixel value by identifying a plurality of second pixel values of said operating pixels in said second region;
[0037] - determining said analog pixel value as a weighted average based on said sum, said first count of said operational pixels in said first zone and the values of the operational pixels in said second zone;
[0038] - said assigning of said analog pixel value comprises applying a correction to a target pixel value of said target pixel based on said weighted average;
[0039] - the weighted average is a brightness level;
[0040] - calculating a second sum of second pixel values of the operation pixels in the second area;
[0041] - determining a second count of operational pixels in the second region, wherein determining the weighted average is further based on the second sum and the second count of the operational pixels in the second region;
[0042] - identifying the location of the target pixel in response to detecting at least one pixel failure in the photosensor pixel array based on the image data;
[0043] - detecting said at least one pixel failure in response to a first readout value of said location of one of said operational pixels failing to conform to a plurality of second readout values associated with other operational pixels spatially proximate to said one of said operational pixels; and / or
[0044] - detecting said at least one pixel failure in response to a pixel readout value of a location of one of said operational pixels failing to change over time.
[0045] According to another aspect of the present invention, a system for correcting image data includes: an imager configured to capture the image data; a display configured to present the image data; and an image processor in communication with the display and the imager. The image processor is configured to receive the image data and determine the location of a target pixel in the display associated with a defect of the imager. Subsequently, the processor may identify a first operational pixel in a first region of a light sensor array that overlaps the location of the target pixel, and a second operational pixel in a second region of the light sensor array that overlaps the location of the target pixel and a portion of the first region. An analog pixel value of the target pixel is then determined in response to a weighted average of the first operational pixel and the second operational pixel. The imager may then display the analog pixel value to the target pixel in the image data on the display.
[0046] According to various aspects, the present disclosure may implement one or more of the following features or configurations in various combinations:
[0047] - determining the analog pixel value by calculating a first sum of a plurality of first pixel values of the operating pixels in the first zone;
[0048] - storing said first sum and a first count of said operational pixels in said first zone;
[0049] - determining the analog pixel value by calculating a second sum of a plurality of second pixel values of the operating pixels in the second zone;
[0050] - storing said second sum and a second count of said operational pixels in said second zone;
[0051] - determining the analog pixel value as a weighted average based on the first sum, the first count, the second sum of the operated pixels in the first region, and the second sum and the second count of the operated pixels in the second region;
[0052] - assigning the analog pixel value to a target pixel in the image data comprises applying a correction to the target pixel value of the target pixel based on a weighted average; and / or
[0053] - determining of the position of the target pixel in response to detecting at least one pixel failure in the photosensor pixel array based on the image data.
[0054] According to another aspect of the present invention, a system for correcting image data received from an imager includes a display configured to present image data and a processor in communication with the display and the imager. The processor receives image data from a plurality of operating pixels forming the image data and determines the position of a target pixel in the display associated with a defect of the imager. The processor then calculates a first sum of a first count of a plurality of first pixel values of the operating pixels in a first zone overlapping the position, and stores the first sum and the first count of the operating pixels in the first zone. A second sum is calculated for a second count of a plurality of second pixel values of the operating pixels in a second zone overlapping the position and a portion of the first zone. Subsequently, the processor calculates a weighted average based on the first sum, the first count, the second sum, and the second count. Subsequently, an analog pixel value of the target pixel is generated based on the weighted average. The analog pixel value is displayed in the position of the image data on the display.
[0055] It should be understood that any described process or step within the described process can be combined with other disclosed processes or steps to form a structure within the scope of the present invention. The exemplary structures and processes disclosed herein are for illustrative purposes and should not be construed as limiting.
[0056] It will also be understood that changes and modifications may be made to the structures and methods described above without departing from the concepts of the inventive apparatus and that such concepts are intended to be covered by the appended claims unless the language of such claims expressly states otherwise.
[0057] The above description is to be regarded as a description of the illustrated embodiment only. Those skilled in the art and those skilled in the art of making or using the device may make modifications to the device. Therefore, it should be understood that the embodiments shown in the drawings and described above are for illustrative purposes only and are not intended to limit the scope of the device, which is defined by the appended claims interpreted in accordance with the principles of patent law (including the doctrine of equivalents).
Claims
1. A method for correcting image data captured by a light sensor array, the method comprising: receiving, at a processor, image data associated with an image captured by the light sensor array; determining, by the processor, a location of a target pixel in the photosensor array associated with a defect of an imager; identifying a first operational pixel in a first region of the photosensor array that overlaps the location of the target pixel; identifying a second operational pixel in a second region of the photosensor array that overlaps the location of the target pixel and a portion of the first region; determining an analog pixel value of the target pixel in response to a weighted average of the first operating pixel and the second operating pixel; as well as The analog pixel value is assigned to the target pixel in the image data.
2. The method of claim 1, wherein the method is applied by a kernel operated by the processor. 3 . The method according to claim 1 , wherein the analog pixel value is determined by calculating a first sum of a plurality of first pixel values of the operation pixels in the first region. 4 . The method of claim 3 , wherein the analog pixel value is further determined by storing in a memory the first sum and a first count of the operational pixels in the first region. 5 . The method of claim 4 , wherein the analog pixel value is determined by identifying a plurality of second pixel values of the operational pixels in the second region.
6. The method according to claim 5, further comprising: The analog pixel value is determined as a weighted average based on the sum, the first count of the operational pixels in the first region, and the values of the operational pixels in the second region. 7 . The method of claim 6 , wherein the assigning of the analog pixel value comprises applying a correction to a target pixel value of the target pixel based on the weighted average. The method of claim 6 , wherein the weighted average is a brightness level.
9. The method according to claim 6, further comprising: A second sum of second pixel values of the operation pixels in the second region is calculated.
10. The method according to claim 4, further comprising: A second count of operational pixels in the second region is determined, wherein determining the weighted average is further based on the second sum and the second count of the operational pixels in the second region.
11. The method of any one of claims 1 to 10, wherein the location of the target pixel is identified in response to detecting at least one pixel failure in a photosensor pixel array based on the image data.
12. The method of claim 11 , wherein the at least one pixel failure is detected in response to a first readout value of the location of one of the operational pixels failing to conform to a plurality of second readout values associated with other operational pixels that are spatially proximate to the one of the operational pixels.
13. A system for correcting image data, the system comprising: an imager configured to capture the image data; a display configured to present the image data; as well as an image processor in communication with the display and the imager, the image processor being configured to: receiving the image data; determining a location of a target pixel in the display associated with a defect in the imager; identifying a first operational pixel in a first region of the photosensor array that overlaps the location of the target pixel; identifying a second operational pixel in a second region of the photosensor array that overlaps the location of the target pixel and a portion of the first region; determining an analog pixel value of the target pixel in response to a weighted average of the first operating pixel and the second operating pixel; as well as The analog pixel value is displayed on the display to the target pixel in the image data.
14. The system of claim 13, wherein the analog pixel value is determined by calculating a first sum of a plurality of first pixel values of the operational pixels in the first region and storing the first sum and a first count of the operational pixels in the first region.
15. The system of claim 13 or 14, wherein the analog pixel value is determined by calculating a second sum of a plurality of second pixel values of the operational pixels in the second region and storing the second sum and a second count of the operational pixels in the second region.