Hardware implemented pixel level digital filter and processing of electromagnetic signals
First Claim
Patent Images
1. An apparatus for performing digital video calibration of electromagnetic waves for system impurity calibration;
- a sequence of raster input pixel signals, each respective raster input pixel having, an n-tuple set of values of electromagnetic waves from a video camera or sensors to signify n-tuple intensity identification relating to a pixel, the n-tuple (hereafter called channels) set, that is selected from adjacent or separate bands or sub-bands representing a channel of electromagnetic wave;
wherein data intensities constituting a set of addresses input to plurality of “
n”
memories;
each memory address pre-loaded with a set of data to represent scaling, calibration, and/or correction, for correcting system caused imperfections, including and not limited to variations in FPA temperature, optical imperfections and or individual pixel impurities affecting sensor data;
correction made by altering the received sensor data with a pre-recorded or empirically derived data;
corrections to be made with a cascading memories in which each stage of the memory in the cascading (series) of stages, correcting data due to a different sources of the imperfection shown in FIGS. 2, 2B, and 2C as follows;
a) a controller for sequencing activity of each stage and to direct the output from any previous stage to the next stage;
radiometric pixel by pixel corrections for the imperfections of equipment are corrected by setting the CCD frame address such as rows and columns to plurality of Radiometric Correction Memory address generator, wherein the data contents are set to address to the Radiometric Data Correction (substitution), in which the data correction for each pixel is already pre-loaded;
Memory identify each pixel and data corrections;
b) inhibit (prevent) corrections along any one of the cascading stages;
c) the sequence timing to be done with a fastest system clock synchronized to pixel timing or sequencing without timing in which the final (data) settlement of each stage and all the stages, is valid upon electronic propagation settlement of stages;
d) controller having individual control lines for each stage to transfer data from any previous stage to this stage;
e) initial stages are allocated to the system imperfections affecting all pixels, and secondary stages will be pixel location related;
f) each stage consisting of a correction memory in which data contents is the correction a pixel sensor and the address to the memory is sensor data, previous stage sensor data, quantized source of imperfection for each stage or pixel coordinates;
each correcting memories data preloaded with a set of data to replace the affected sensor data according to FIGS. 2, 2B and 2C;
g) each stage is armed with correct no correct signal from the controller with additional signal to enable or disable outputs from registers or memories;
h) controller initially receiving control information from the main CPU or dynamically receiving changes based upon the health of the system.
0 Assignments
0 Petitions
Accused Products
Abstract
An apparatus for performing digital video processing of electromagnetic waves in IR or other electromagnetic waves spectra; derived from adjacent or separate bands (or sub-bands) representing a channel of electromagnetic wave intensities; that is processed for equipment radiometric corrections (calibration), adverse environmental elements or substance calibrations, channel filtering in real time and dynamic pixel to pixel time.
-
Citations
12 Claims
-
1. An apparatus for performing digital video calibration of electromagnetic waves for system impurity calibration;
- a sequence of raster input pixel signals, each respective raster input pixel having, an n-tuple set of values of electromagnetic waves from a video camera or sensors to signify n-tuple intensity identification relating to a pixel, the n-tuple (hereafter called channels) set, that is selected from adjacent or separate bands or sub-bands representing a channel of electromagnetic wave;
wherein data intensities constituting a set of addresses input to plurality of “
n”
memories;
each memory address pre-loaded with a set of data to represent scaling, calibration, and/or correction, for correcting system caused imperfections, including and not limited to variations in FPA temperature, optical imperfections and or individual pixel impurities affecting sensor data;
correction made by altering the received sensor data with a pre-recorded or empirically derived data;
corrections to be made with a cascading memories in which each stage of the memory in the cascading (series) of stages, correcting data due to a different sources of the imperfection shown inFIGS. 2 , 2B, and 2C as follows;a) a controller for sequencing activity of each stage and to direct the output from any previous stage to the next stage; radiometric pixel by pixel corrections for the imperfections of equipment are corrected by setting the CCD frame address such as rows and columns to plurality of Radiometric Correction Memory address generator, wherein the data contents are set to address to the Radiometric Data Correction (substitution), in which the data correction for each pixel is already pre-loaded;
Memory identify each pixel and data corrections;b) inhibit (prevent) corrections along any one of the cascading stages; c) the sequence timing to be done with a fastest system clock synchronized to pixel timing or sequencing without timing in which the final (data) settlement of each stage and all the stages, is valid upon electronic propagation settlement of stages; d) controller having individual control lines for each stage to transfer data from any previous stage to this stage; e) initial stages are allocated to the system imperfections affecting all pixels, and secondary stages will be pixel location related; f) each stage consisting of a correction memory in which data contents is the correction a pixel sensor and the address to the memory is sensor data, previous stage sensor data, quantized source of imperfection for each stage or pixel coordinates; each correcting memories data preloaded with a set of data to replace the affected sensor data according to FIGS. 2 , 2B and 2C;g) each stage is armed with correct no correct signal from the controller with additional signal to enable or disable outputs from registers or memories; h) controller initially receiving control information from the main CPU or dynamically receiving changes based upon the health of the system. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
- a sequence of raster input pixel signals, each respective raster input pixel having, an n-tuple set of values of electromagnetic waves from a video camera or sensors to signify n-tuple intensity identification relating to a pixel, the n-tuple (hereafter called channels) set, that is selected from adjacent or separate bands or sub-bands representing a channel of electromagnetic wave;
-
9. An apparatus to generate memory address to a large memory system and memory banks in which the source of address generation is plurality of “
- n”
registers, each register is set to different variable values of n(1), n(2), n(3), to n(x), wherein (x) denotes the length of each register, the apparatus consisting of the following;a) plurality of “
n”
registers, each register receiving its data from different sources, of sensors or CPU;b) a memory based address lookup table block, coupled to the registers, to translate variable data into a fixed memory address; the memory based address lookup table block, consisting of either a PROM or a Random Access Memory, wherein the contents of the RAM is set by a register or CPU, to address the address lookup table block to generate address to the memory bank, and / or memory; the address lookup table provides a translation from all the various levels of strength (quotient), to an absolute memory bank address value, within a memory bank; an address lookup table provides a translation from a set of pre-assigned variable levels of strength and direct inputs from the computer address latch, to an absolute memory bank address value, for selecting a memory bank; c) a set of memory banks addressed by the selected registers or memory address lookup table;
each bank consisting of a sub-bank memory selector, Data Memory Selector and instruction memories;instruction memories preloaded with application instruction relevant to the register settings and feedback instruction registers; Instructions fed to the CPU through a FIFO to execute specific instructions related to register settings;
each instruction containing executable instructions, a feedback (to the registers) data, and a number relating to the instruction bytes to be followed;d) A CPU receiving information specified in the above through a FIFO for necessary executions with an option to load feedback instruction either before or after the execution of instructions. e) a feedback generator.
- n”
-
10. A method of performing digital filtering for performing identification of targets in software in electromagnetic waves received from a video camera in IR and visible light in a sequence of raster input pixel signals, each having, an ordered n-tuple (channel) set of values from a camera or sensors representing n-tuple wavelength (primary colors or channels) identifying bands of electromagnetic waves, wherein a band of electromagnetic waves is any band within so called MWIR (or other similar name bands);
- filtering begins with (1) initializing an intensity range of the primary colors in visible light or channel intensity in IR of a target for recognition within certain band of frequencies;
(2) storing the detected colors or channels of targets in a frame file (in the relevant x, and y coordinate) including the color number. (3) recognition of the colors belonging to the same target within same pixel as follows;
(for convenience the flow chart ofFIG. 10 discusses visible light, in which the same applies for IR and the word “
prime color”
is substituted with the word channel);a) wait for the frame start initialization signal from frame synchronization logic and go to the next step; b) initialize “
n”c) read the intensity of one of the prime colors such as red, green, or blue (or different channels of IR established during initialization) that appear in the video digital bit stream and proceed to the next step; d) check if the intensities of three prime colors falls within the selected limits;
if it does transition to next step, otherwise transition to step e);e) keep the target number, color number, pixel coordinates and increment “
n”
;f) store the substituting prime colors (of a pixel) for this object in relevant coordinates as a background for visible light; g) check for the end of prime colors (or channels), if it is not the end, transition back to block step c), otherwise transition to next step; h) store color number and its associate targets in the same pixel coordinates in a frame;
store the same color number of a substitute color in the same coordinates;
increment coordinate and transition to next step;i) check for the end of pixels in a row and column of a frame, if it is not the end of all pixels in a flame and transition to step b), otherwise transition to next stage of concurrent processing. - View Dependent Claims (11, 12)
- filtering begins with (1) initializing an intensity range of the primary colors in visible light or channel intensity in IR of a target for recognition within certain band of frequencies;
Specification