Abstract:
Embodiments relate to a histogram-of-oriented gradients (HOG) module. The HOG module is implemented in hardware rather than software. The HOG module applies an algorithm to an image to identify gradient orientation in localized portions of the image. The HOG module creates a histogram-of orientation gradients based on the identified gradient orientations.
Abstract:
An image processing pipeline may perform noise filtering and image sharpening utilizing common spatial support. A noise filter may perform a spatial noise filtering technique to determine a filtered value of a given pixel based on spatial support obtained from line buffers. Sharpening may also be performed to generate a sharpened value of the given pixel based on spatial support obtained from the same line buffers. A filtered and sharpened version of the pixel may be generated by combining the filtered value of the given pixel with the sharpened value of the given pixel. In at least some embodiments, the noise filter performs spatial noise filtering and image sharpening on a luminance value of the given pixel, when the given pixel is received in a luminance-chrominance encoding.
Abstract:
Systems and methods for reducing chrominance (chroma) noise in image data are provided. In one example of such a method, image data in YCC format may be received into logic of an image signal processor. Using the logic, noise may be filtered from a first chrominance component or a second chrominance component, or both, of the image data, using a sparse filter and a noise threshold. The noise threshold may be determined based at least in part on two of the components of the YCC image data.
Abstract:
An image processing pipeline may account for clipped pixels in auto focus statistics. Generating auto focus statistics may include evaluating a neighborhood of pixels with respect to a given pixel in a stream of pixels for an image. If a clipped pixel is identified within the neighborhood of pixels then the evaluation of the given pixel may be excluded from an auto focus statistic. The image processing pipeline may also provide auto focus statistics that do not exclude clipped pixels. A luminance edge detection value may, in some embodiments, be generated by applying an IIR filter to the given pixel in a stream of pixels to band-pass filter the given pixel before including the band-pass filtered pixel in the generation of the luminance edge detection value.
Abstract:
An image processing pipeline may process image data at multiple rates. A stream of raw pixel data collected from an image sensor for an image frame may be processed through one or more pipeline stages of an image signal processor. The stream of raw pixel data may then be converted into a full-color domain and scaled to a data size that is less than an initial data size for the image frame. The converted pixel data may be processed through one or more other pipelines stages and output for storage, further processing, or display. In some embodiments, a back-end interface may be implemented as part of the image signal processor via which image data collected from sources other than the image sensor may be received and processed through various pipeline stages at the image signal processor.
Abstract:
A temporal filter in an image processing pipeline may perform filtering using spatial filtering and noise history. A given pixel of a current image frame may be received for filtering at a temporal filter. A filtering weight may be determined for blending the given pixel with a corresponding pixel of a reference image frame that was previously filtered at the temporal filter. The filtering weight may be determined based on neighboring pixels of the given pixel in the current image frame and corresponding pixels in the reference image frame. The filtering weight may be adjusted according to a quality score indicating noise history for the corresponding pixel in the reference image frame. Based on the filtering weight, a filtered version of the given pixel may be generated, blending the given pixel and the corresponding pixel to store as part of a filtered version of the current image frame.
Abstract:
In an embodiment, an electronic device may be configured to capture still frames during video capture, but may capture the still frames in the 4×3 aspect ratio and at higher resolution than the 16×9 aspect ratio video frames. The device may interleave high resolution, 4×3 frames and lower resolution 16×9 frames in the video sequence, and may capture the nearest higher resolution, 4×3 frame when the user indicates the capture of a still frame. Alternatively, the device may display 16×9 frames in the video sequence, and then expand to 4×3 frames when a shutter button is pressed. The device may capture the still frame and return to the 16×9 video frames responsive to a release of the shutter button.
Abstract:
A pedestal level for an image sensor can be dynamically adjusted based on one or more parameters. The parameters include one or more operating conditions associated with the image sensor, pre-determined image sensor characterization data, the number of unused digital codes, and/or the number of clipped pixel signals. The operating conditions can include the temperature of the image sensor, the gain of at least one amplifier included in processing circuitry operably connected to at least one pixel, and/or the length of the integration period for at least one pixel in the image sensor. Based on the one or more of the parameters, the pedestal level is adjusted to reduce a number of unused digital codes in a distribution of dark current. Additionally or alternatively, the variance of the pixel signals can be reduced to permit the use of a lower pedestal level.
Abstract:
A temporal filter in an image processing pipeline may perform filtering using spatial filtering and noise history. A given pixel of a current image frame may be received for filtering at a temporal filter. A filtering weight may be determined for blending the given pixel with a corresponding pixel of a reference image frame that was previously filtered at the temporal filter. The filtering weight may be determined based on neighboring pixels of the given pixel in the current image frame and corresponding pixels in the reference image frame. The filtering weight may be adjusted according to a quality score indicating noise history for the corresponding pixel in the reference image frame. Based on the filtering weight, a filtered version of the given pixel may be generated, blending the given pixel and the corresponding pixel to store as part of a filtered version of the current image frame.
Abstract:
A temporal filter in an image processing pipeline may insert a frame delay when filtering an image frame. A given pixel of a current image frame may be received and a filtered version of the given pixel may be generated, blending the given pixel and a corresponding pixel of a reference image frame to store as part of a filtered version of the current image frame. If a frame delay setting is enabled, the corresponding pixel of the reference image frame may be provided as output for subsequent image processing inserting a frame delay for the current image frame. During the frame delay programming instructions may be received and image processing pipeline components may be configured according to the programming instructions. If the frame delay setting is disabled, then the filtered version of the given pixel may be provided as output for subsequent image processing.