Abstract:
A method for computing a cross-correlation between a first sequence and a second sequence includes: generating a first index vector based on the first sequence, the first index vector including a plurality of first elements, the first index vector excluding indices of zero valued elements of the first sequence; generating a second index vector based on the second sequence, the second index vector including a plurality of second elements, the second index vector excluding indices of zero valued elements of the second sequence; computing, on a processor, a plurality of pairwise differences between each of first elements of the first index vector and each of the second elements of the second index vector; and binning, on the processor, the plurality of pairwise differences to generate the cross-correlation of the first sequence and the second sequence.
Abstract:
An autofocus metric approach for focusing video images, automatically, based on images taken during a focus sweep in which a focus cell is repositioned for each of the images is provided. The approach includes, given an edge detected image from the focus sweep and an associated focus cell position in the focus sweep, an autofocus engine dividing the edge detected image into sub-images. For each sub-image, the autofocus engine calculates a normalized edge detection strength and compares it to a threshold. Based on the comparison, the autofocus engine determines whether an edge is present in the sub-image. Based on the determinations of edges in the sub-images, the autofocus engine calculates an autofocus metric associated with the given focus cell position. The autofocus engine provides the autofocus metric together with autofocus metrics associated with other focus cell positions to focus the video images.
Abstract:
Laser light pulsed to illuminate and reflect from at least one object is received at a digital micro-mirror device including an array of mirrors each of which may be selectively controlled to be oriented to either reflect incident light onto a detector or not. The detector outputs a signal representative of an amount of light sensed. By applying M spatial patterns to the mirrors, each in synchronization with one pulse from the laser, and storing sampled signal values from the detector output at each of K times following a pulse from the laser, the collected information may be used to reconstruct K images each using all M spatial patterns and stored sampled signal values corresponding to a respective one of the K times. Each of the K images corresponds to a different range to the digital micro-mirror device, such that the system may be employed as a range finder.
Abstract:
A system for processing video. The system may include a video camera, a processing unit, and a video display, the video camera being configured to generate a plurality of consecutive luminance frames, including a last frame and a plurality of preceding frames. The processing unit may be configured to: shift the plurality of preceding frames, to register the preceding frames with the last frame to form a plurality of shifted frames, take a Fourier transform of each of the plurality of frames, to form a corresponding plurality of initial Fourier transform frames, iteratively update the plurality of Fourier transform frames by, on the (n+1)th iteration of a plurality of iterations, replacing each Fourier transform frame with a linear combination of the Fourier transform frames of the nth iteration, the Fourier transform frames of the 0th iteration being the initial Fourier transform frames.
Abstract:
Laser light pulsed to illuminate and reflect from at least one object is received at a digital micro-mirror device including an array of mirrors each of which may be selectively controlled to be oriented to either reflect incident light onto a detector or not. The detector outputs a signal representative of an amount of light sensed. By applying M spatial patterns to the mirrors, each in synchronization with one pulse from the laser, and storing sampled signal values from the detector output at each of K times following a pulse from the laser, the collected information may be used to reconstruct K images each using all M spatial patterns and stored sampled signal values corresponding to a respective one of the K times. Each of the K images corresponds to a different range to the digital micro-mirror device, such that the system may be employed as a range finder.
Abstract:
A system for processing video. The system may include a video camera, a processing unit, and a video display, the video camera being configured to generate a plurality of consecutive luminance frames, including a last frame and a plurality of preceding frames. The processing unit may be configured to: shift the plurality of preceding frames, to register the preceding frames with the last frame to form a plurality of shifted frames, take a Fourier transform of each of the plurality of frames, to form a corresponding plurality of initial Fourier transform frames, iteratively update the plurality of Fourier transform frames by, on the (n+1)th iteration of a plurality of iterations, replacing each Fourier transform frame with a linear combination of the Fourier transform frames of the nth iteration, the Fourier transform frames of the 0th iteration being the initial Fourier transform frames.
Abstract:
System and method for image turbulence correction includes: receiving a plurality of consecutive image frames; demosaicing previous, current and preceding image frames into a plurality of same size overlapping video tiles; determining a displacement of each of the video tiles; converting the video tiles of the current image frame, the previous image frame, and the plurality of preceding image frames into a frequency domain; iteratively processing the video tiles of the previous image frame, the current image frame and the plurality of preceding image frames for turbulence correction in the frequency domain; converting the turbulence corrected video tiles into a spatial domain, wherein the converted turbulence corrected video tiles form a single video frame tile including turbulence degradation correction; and mosaicing the single video frame tiles including turbulence degradation correction together to generate a full field of view turbulence correct video stream.
Abstract:
A method for computing a cross-correlation between a first sequence and a second sequence includes: generating a first index vector based on the first sequence, the first index vector including a plurality of first elements, the first index vector excluding indices of zero valued elements of the first sequence; generating a second index vector based on the second sequence, the second index vector including a plurality of second elements, the second index vector excluding indices of zero valued elements of the second sequence; computing, on a processor, a plurality of pairwise differences between each of first elements of the first index vector and each of the second elements of the second index vector; and binning, on the processor, the plurality of pairwise differences to generate the cross-correlation of the first sequence and the second sequence.
Abstract:
An autofocus metric approach for focusing video images, automatically, based on images taken during a focus sweep in which a focus cell is repositioned for each of the images is provided. The approach includes, given an edge detected image from the focus sweep and an associated focus cell position in the focus sweep, an autofocus engine dividing the edge detected image into sub-images. For each sub-image, the autofocus engine calculates a normalized edge detection strength and compares it to a threshold. Based on the comparison, the autofocus engine determines whether an edge is present in the sub-image. Based on the determinations of edges in the sub-images, the autofocus engine calculates an autofocus metric associated with the given focus cell position. The autofocus engine provides the autofocus metric together with autofocus metrics associated with other focus cell positions to focus the video images.