Image correlation system
First Claim
1. A controller for a plurality of image correlation circuits, each correlation circuit having a memory for storing a portion of a source image to be correlated with a pattern, each said memory having a portion of its address inputs coupled to a common address bus, comprising:
- means for generation correlator addresses by adding a predetermined increment to said correlator address while controlling the most significant bit of said correlator addresses, said correlator addresses corresponding to source image addresses with at least one of the most significant bits altered, a portion of each said correlator address being transmitted on said common address bus, said correlator addresses being used for loading said memories so that portions of said source image having different source image addresses with have the same correlator addresses;
first control means for sequentially enabling said memories, said first control means being programmable so that more than one memory can receive said correlator addresses at one time to load overlapping portions of said source image in said memories; and
means for generating correlator addresses for a correlation operation such that a portion of said image corresponding to the size of said pattern is accessed, said means for generating correlator addresses including at least one register, an arithmetic logic unit having a first input coupled to an output of said register, and an accumulator having an input coupled to an output or said arithmetic logic unit and an output coupled to a second input or said arithmetic logic unit.
1 Assignment
0 Petitions
Accused Products
Abstract
A method and apparatus for controlling a parallel combination of correlation circuits which compare image pixels. A number of correlation circuits are provided, each having its own memory. The memories are loaded with image data with each memory being assigned a different block (region) of the image. Each memory is also loaded with an overlapping portion of an adjacent block so that a pattern can be stepped across the entire block, including a match of the first column of the pattern with the last column of the block. The loading is done by generating addresses corresponding to addresses for the source image with one or more of the most significant bits modified so that the address sequence received by the second and subsequent memories are identical to the address sequence received by the first memory. This allows the various blocks of the image in the different memories to be later simulataneously accessed in parallel using a single address sequence.
-
Citations
9 Claims
-
1. A controller for a plurality of image correlation circuits, each correlation circuit having a memory for storing a portion of a source image to be correlated with a pattern, each said memory having a portion of its address inputs coupled to a common address bus, comprising:
-
means for generation correlator addresses by adding a predetermined increment to said correlator address while controlling the most significant bit of said correlator addresses, said correlator addresses corresponding to source image addresses with at least one of the most significant bits altered, a portion of each said correlator address being transmitted on said common address bus, said correlator addresses being used for loading said memories so that portions of said source image having different source image addresses with have the same correlator addresses; first control means for sequentially enabling said memories, said first control means being programmable so that more than one memory can receive said correlator addresses at one time to load overlapping portions of said source image in said memories; and means for generating correlator addresses for a correlation operation such that a portion of said image corresponding to the size of said pattern is accessed, said means for generating correlator addresses including at least one register, an arithmetic logic unit having a first input coupled to an output of said register, and an accumulator having an input coupled to an output or said arithmetic logic unit and an output coupled to a second input or said arithmetic logic unit.
-
-
2. A method for correlating a plurality of overlapping portions of an image to a pattern using a plurality of correlators, each correlator having a memory, said memories having a common address bus for a first portion of the address bits for said memories, comprising the steps of:
-
enabling a first memory; loading a first portion of said first memory with a first portion of said image by providing address bits on said common address bus; enabling a second memory; loading a second portion of said first memory and a first portion of a second memory simultaneously with a second portion of said image by providing identical address bits on said address bus, providing a second portion of an address to said first memory for at least one higher order address bit, and providing an altered version of said at least one higher order address bit to said second memory so that said second portion of said image is loaded into said first portion of said second memory; disabling said first memory; enabling a third memory; loading a second portion of said second memory and a first portion of said third memory simultaneously with a third portion of said image by providing identical address bits on said address bus, providing a second portion of an address to said second memory for at least one higher order address bit, and providing an altered version of said at least one higher order address bit to said third memory so that said third portion of said image is loaded into said first portion of said third memory; completing the loading of said memories; enabling all of said memories; and providing identical addresses to all of said memories for simultaneous comparison of the contents of said memories to said pattern by said correlators. - View Dependent Claims (3)
-
-
4. A controller for a plurality of image correlation circuits, each correlation circuit having a memory for storing a portion of an image to be correlated with a pattern, said memories having a common address bus for a portion of the address inputs for said memories, comprising:
-
first control means for sequentially enabling said memories, said first control means being programmable so that two memories can receive the same data simultaneously to load overlapping portions of said image in said two memories; second control means for altering at least one higher order address bit for one of said two memories so that said data is loaded into a second portion of one of said two memories and into a first portion of the other of said two memories; and third control means for generating identical correlator addresses for all of said memories simultaneously for a correlation operation. - View Dependent Claims (5, 6, 7, 8, 9)
-
Specification