Vector image processing system
First Claim
1. The method of processing a two-dimensional XY PIXEL image array containing discrete bits of digitally encoded PIXEL data oriented in "X" rows and "Y" columns, and including a multiplicity of overlapping two-dimensional AB neighborhoods, where "A" and "B" can have any desired whole integer value greater than "1", and wherein each two-dimensional AB neighborhood includes a PIXEL to be processed and data bits representative of neighbor PIXELS and any boundary data bits adjacent the PIXEL to be processed;
- said method comprising the steps of;
(a) shifting n rows of digitally encoded PIXEL data, where "n" is any whole integer, in column-by-column sequential internally pipelined order through a one-dimensional columnar array of n processing element(s) each including;
(i) a plurality of serially cascaded interconnected latches equal in number to the value of "A" in the two-dimensional AB neighborhood for storing a plurality of discrete bits of digitally encoded data intermediate successive data shifts; and
,(ii) a neighborhood functional processing unit for performing a NEIGHBORHOOD TRANSFORM processing operation;
(b) conveying the digitally encoded data stored in one of the serially cascaded interconnected latches in each of the n processing element(s) and corresponding to each PIXEL to be processed to the neighborhood functional processing unit on that processing element;
(c) conveying digitally encoded data representative of all neighbor PIXELS and boundary data contained within each two-dimensional AB neighborhood to the neighborhood functional processing unit in each of the n processing element(s);
(d) performing a computational NEIGHBORHOOD TRANSFORM processing operation on the digitally encoded PIXEL data for each PIXEL being analyzed at a given instant of time in the neighborhood functional processing unit in each of the n processing element(s); and
,(e) outputting digitally encoded data representative of the results of each computational NEIGHBORHOOD TRANSFORM processing operation on each PIXEL being processed, with all PIXELS in a given "Y" column of PIXELS and in the n rows being processed in parallel in those instances where n is greater than "1", and with all PIXELS in each of the n rows being processed in internally pipelined sequential order.
1 Assignment
0 Petitions
Accused Products
Abstract
Hybrid parallel internally pipelined Vector Image Processors (24, 41, 54) which may also be externally pipelined. The exemplary Processors (24, 41, 54) include n processing elements (PEa -PEn)--wherein "n" is any whole integer but, when greater than "1", the elements are arranged in parallel in a one-dimensional column--for processing a two-dimensional XY PIXEL image array (25, 25'"'"', 38, 52) wherein each element (PEa -PEn) includes: (i) multiple cascaded latches (N1, N2, N3) in a one-dimensional row; (ii) a neighborhood functional unit (NFUn) for performing NEIGHBORHOOD TRANSFORMS; (iii) an arithmetic logic unit (ALU) for performing ARTIHMETIC/LOGIC TRANSFORMS; (iv) means (48n, 49n, 50n) for transferring data in the latches (N1, N2, N3) to the neighborhood functional unit (NFUn) and to the neighboring north/south processors; (v) means (48n, 49n) for transferring data in the latches (N1, N2) to the arithmetic logic unit (ALU); and (vi), means (48n-1 . . . 50n-1, 48n+1 . . . 50n+ 1) for inputting image boundary and PIXEL neighbor data to the neighborhood functional unit (NFUn). Where the number of rows ("X") of PIXEL data is greater than the number ("n") of processors (PEa -PEn), the system processes adjacent strips (38a -38d) of PIXEL rows with all PIXELS in a given column ("Y") within each strip (38a -38d) being processed in parallel and with all columns of PIXELS in each strip being processed in internally pipelined form. This latter system includes border Memories (22NB, 22SB) for storing boundary data for each strip (38a -38d) and for cross-feeding the north and south rows of PIXEL output data in each strip to respective ones of the border Memories (22SB, 22NB) for use in processing adjacent strips.
-
Citations
79 Claims
-
1. The method of processing a two-dimensional XY PIXEL image array containing discrete bits of digitally encoded PIXEL data oriented in "X" rows and "Y" columns, and including a multiplicity of overlapping two-dimensional AB neighborhoods, where "A" and "B" can have any desired whole integer value greater than "1", and wherein each two-dimensional AB neighborhood includes a PIXEL to be processed and data bits representative of neighbor PIXELS and any boundary data bits adjacent the PIXEL to be processed;
- said method comprising the steps of;
(a) shifting n rows of digitally encoded PIXEL data, where "n" is any whole integer, in column-by-column sequential internally pipelined order through a one-dimensional columnar array of n processing element(s) each including; (i) a plurality of serially cascaded interconnected latches equal in number to the value of "A" in the two-dimensional AB neighborhood for storing a plurality of discrete bits of digitally encoded data intermediate successive data shifts; and
,(ii) a neighborhood functional processing unit for performing a NEIGHBORHOOD TRANSFORM processing operation; (b) conveying the digitally encoded data stored in one of the serially cascaded interconnected latches in each of the n processing element(s) and corresponding to each PIXEL to be processed to the neighborhood functional processing unit on that processing element; (c) conveying digitally encoded data representative of all neighbor PIXELS and boundary data contained within each two-dimensional AB neighborhood to the neighborhood functional processing unit in each of the n processing element(s); (d) performing a computational NEIGHBORHOOD TRANSFORM processing operation on the digitally encoded PIXEL data for each PIXEL being analyzed at a given instant of time in the neighborhood functional processing unit in each of the n processing element(s); and
,(e) outputting digitally encoded data representative of the results of each computational NEIGHBORHOOD TRANSFORM processing operation on each PIXEL being processed, with all PIXELS in a given "Y" column of PIXELS and in the n rows being processed in parallel in those instances where n is greater than "1", and with all PIXELS in each of the n rows being processed in internally pipelined sequential order. - View Dependent Claims (3, 4, 5, 6, 7, 8, 9)
- said method comprising the steps of;
-
2. The method of processing a two-dimensional XY PIXEL image array containing discrete bits of digitally encoded PIXEL data oriented in "X" rows and "Y" columns, and including a multiplicity of overlapping two-dimensional AB neighborhoods, where "A" and "B" can have any desired whole integer value greater than "1", and wherein each two-dimensional AB neighborhood includes a PIXEL to be processed and data bits representative of neighbor PIXELS and any boundary data bits located adjacent the PIXEL to be processed;
- said method comprising the steps of;
(a) shifting n rows of digitally encoded PIXEL data, where "n" is any whole integer, in column-by-column sequential internally pipelined order through a one-dimensional columnar array of n processing element(s) each including; (i) a plurality of serially cascaded interconnected latches equal in number to the value of "A" in the two-dimensional AB neighborhood for storing a plurality of discrete bits of digitally encoded data intermediate successive data shifts; (ii) a neighborhood functional processing unit for performing a NEIGHBORHOOD TRANSFORM processing operation; and
,(iii) one of an arithmetic processing unit, a logic unit or an arithmetic logic unit for performing one of an ARITHMETIC TRANSFORM processing operation or a LOGIC TRANSFORM processing operation; (b) conveying the digitally encoded data stored in one of the serially cascaded interconnected latches in each of the n processing element(s) and corresponding to each PIXEL to be processed to the neighborhood functional processing unit on that processing element; (c) conveying digitally encoded data representative of all neighbor PIXELS and boundary data contained within each two-dimensional AB neighborhood to the neighborhood functional processing unit in each of the n processing element(s); (d) conveying digitally encoded data stored in one of the serially cascaded interconnected latches in each of the n processing elements and corresponding to each PIXEL to be processed, and digitally encoded data stored in an adjacent one of the serially connected latches to the one of the arithmetic processing unit, logic unit or arithmetic logic unit on that processing element; (e) performing one of a computational NEIGHBORHOOD TRANSFORM processing operation, a computational ARITHMETIC TRANSFORM processing operation, or a computational LOGIC TRANSFORM processing operation on the digitally encoded PIXEL data for each PIXEL being analyzed at a given instant of time in either the neighborhood functional processing unit or the one of the arithmetic processing unit, logic unit or arithmetic logic unit in each of the n processing element(s); and
,(f) outputting digitally encoded data representative of the results of each computational TRANSFORM processing operation on each PIXEL being processed, with all PIXELS in a given "Y" column of PIXELS and in the n rows being processed in parallel in those instances where n is greater than "1", and with all PIXELS in each of the n rows being processed in internally pipelined sequential order.
- said method comprising the steps of;
-
10. An image processing system for processing a two-dimensional XY array of digitally encoded PIXEL data bits disposed in "X" rows "A", "B", "C" . . . "Xn " and "Y" columns "0", "1", "2" . . . "Yn " wherein said array contains discrete PIXEL data bits, and for performing NEIGHBORHOOD TRANSFORM processing operations on each PIXEL data bit in said two-dimensional XY array based on the relation of the value of each PIXEL data bit to the value of its northern, southern, eastern and western neighbors in a two-dimensional AB neighborhood array containing "A" columns and "B" rows where "A" and "B" have equal integer values greater than "1";
- said image processing system comprising, in combination;
(a) a sensor for detecting image data and outputting such data in the form of a two-dimensional XY array of digitally encoded PIXEL data bits; (b) a memory having XY address locations for storing said two-dimensional XY array of digitally encoded PIXEL data bits and boundary address locations for storing digitally encoded data bits representative of the northern, southern, eastern and western boundaries of said XY array; (c) a vector image processor comprising n processing element(s) wherein "n" can be any whole integer value and wherein said n processing elements are disposed in parallel in those instances where "n" is greater than "1", said n processing element(s) each including; (i) m serially cascaded interconnected latches where the value of "m" is equal to the value of "A" in said two-dimensional AB neighborhood array; and
,(ii) a neighborhood functional unit having a first group m, a second group m'"'"', and a third group m" of input terminals and an output terminal, said neighborhood functional unit being programmed to perform selected NEIGHBORHOOD TRANSFORM processing operations on digitally encoded data presented on its input terminals upon receipt of a compute command signal; (d) m north and south serially cascaded interconnected boundary latches for receiving digitally encoded data bits stored in said memory boundary address locations representative of north and south boundary locations corresponding to each column of PIXEL data bits to be processed and corresponding to the eastern and western boundaries of said two-dimensional XY array; (e) means for coupling said m serially cascaded interconnected latches on each of said n processing elements to; (i) said first group m of input terminals on said neighborhood functional unit on that particular one of said n processing elements; (ii) said second group m'"'"' of input terminals on said neighborhood functional unit on any immediately adjacent northern one of said n processing elements; and
,(iii) said third group m" of input terminals on said neighborhood functional unit on any immediately adjacent southern one of said n processing elements; (f) means for coupling said m north serially cascaded boundary latches to said third group m" of input terminals on said neighborhood functional unit on the northernmost one of said n processing elements; (g) means for coupling said m south serially cascaded boundary latches to said second group m'"'"' of input terminals on said neighborhood functional unit on the southernmost one of said n processing elements; and
,(h) means for generating a series of programmed shift and compute command signals and for transmitting such signals to;
(i) said memory XY and boundary address locations;
(ii) said m serially cascaded interconnected latches on each of said n processing elements;
(iii) said m north serially cascaded interconnected boundary latches;
(iv) said m south serially cascaded interconnected boundary latches; and
(v), said neighborhood functional units on each of said n processing elements, for inputting shift command signals thereto, and for inputting compute command signals to each of said neighborhood functional units on each of said n processing elements;
whereby each shift command signal input to;
(i) n of said memory XY address locations;
(ii) said memory boundary address locations;
(iii) said m serially cascaded latches on said n processing elements;
(iv) said m north and south serially cascaded interconnected boundary latches; and
(v), said neighborhood functional units on each of said n processing elements, serves to shift;
(a) n of said "X" rows of digitally encoded PIXEL data bits stored in n adjacent ones of said memory XY address locations where "n" is equal to the number "n" of said processing elements;
(b) boundary data bits in said boundary address locations corresponding to shifted PIXEL data bits; and
(c), data bits stored in all of said latches and presented on said first, second and third groups m, m'"'"' and m" of input terminals of each of said neighborhood functional units on each of said n processing elements by one column position so as to shift n of said "X" rows of digitally encoded PIXEL data bits successively through respective ones of said m serially cascaded latches on each of said n processing elements in column-by-column internally pipelined order and for simultaneously shifting digitally encoded north and south boundary data bits through said m north and south serially cascaded boundary latches in column-by-column internally pipelined order whereby m digitally encoded PIXEL data bits, m bits of north boundary data for each of said n processing elements, and m bits of south boundary data for each of said n processing elements are successively and simultaneously presented on said first, second and third groups m, m'"'"' and m" of input terminals of said neighborhood functional units on each of said n processing elements; and
, each compute command signal input to said neighborhood functional unit on each of said n processing elements serves to initiate a NEIGHBORHOOD TRANSFORM processing operation with the results of each of said n operations being output from said n processing elements on the next succeeding shift command signal and being input to the associated ones of said memory XY address locations. - View Dependent Claims (13, 14, 16, 17, 18, 19, 20, 21, 22, 25, 27, 29, 30, 31, 32, 33, 34, 35, 38, 39, 42, 45, 46, 47, 48, 49, 50, 51, 54, 55, 57, 58, 59, 60, 61, 62, 63, 66, 68, 70, 71, 72, 75, 76, 79)
- said image processing system comprising, in combination;
-
11. An image processing system for processing a two-dimensional XY array of digitally encoded PIXEL data bits disposed in "X" rows "A", "B", "C" . . . "Xn " and "Y" columns "0", "1", "2" . . . "Yn " wherein said array contains discrete PIXEL data bits, and for performing a selected one of an ARITHMETIC TRANSFORM or LOGIC TRANSFORM processing operation with respect to two adjacent PIXELS in a given row, or a NEIGHBORHOOD TRANSFORM processing operation on each PIXEL data bit in said two-dimensional XY array based on the relation of the value of each PIXEL data bit to the value of its northern, southern, eastern and western neighbors in a two-dimensional AB neighborhood array containing "A" columns and "B" rows where "A" and "B" have equal integer values greater than "1";
- said image processing system comprising, in combination;
(a) a sensor for detecting image data and outputting such data in the form of a two-dimensional XY array of digitally encoded PIXEL data bits; (b) a memory having XY address locations for storing said two-dimensional XY array of digitally encoded PIXEL data bits and boundary address locations for storing digitally encoded data bits representative of the northern, southern, eastern and western boundaries of said XY array; (c) a vector image processor comprising n processing element(s) wherein "n" can be any whole integer value and wherein said n processing elements are disposed in parallel in those instances where "n" is greater than "1", said n processing element(s) each including; (i) m serially cascaded interconnected latches where the value of "m" is equal to the value of "A" in said two-dimensional AB neighborhood array; (ii) a neighborhood functional unit having a first group m, a second group m'"'"', and a third group m" of input terminals and an output terminal, said neighborhood functional unit being programmed to perform selected NEIGHBORHOOD TRANSFORM processing operations on digitally encoded data presented on its input terminals upon receipt of a compute command signal; and
,(iii) one of an arithmetic processing unit, a logic unit or an arithmetic logic unit having a pair of input terminals and an output terminal and programmed to perform a selected ARITHMETIC and/or LOGIC TRANSFORM processing operation on digitally encoded data presented on its input terminals upon receipt of a compute command signal; (d) m north and south serially cascaded interconnected boundary latches for receiving digitally encoded data bits stored in said memory boundary address locations representative of north and south boundary locations corresponding to each column of PIXEL data bits to be processed and corresponding to the eastern and western boundaries of said two-dimensional XY array; - View Dependent Claims (15)
- said image processing system comprising, in combination;
-
12. (e) means for coupling said m serially cascaded interconnected latches on each of said n processing elements to:
-
(i) said first group m of input terminals on said neighborhood functional unit on that particular one of said n processing elements; (ii) said second group m'"'"' of input terminals on said neighborhood functional unit on any immediately adjacent northern one of said n processing elements; and
,(iii) said third group m" of input terminals on said neighborhood functional unit on any immediately adjacent southern one of said n processing elements; (f) means for coupling said m north serially cascaded boundary latches to said third group m" of input terminals on said neighborhood functional unit on the northernmost one of said n processing elements; (g) means for coupling said m south serially cascaded boundary latches to said second group m'"'"' of input terminals on said neighborhood functional unit on the southernmost one of said n processing elements; (h) means for coupling two of said m serially cascaded interconnected latches on each of said n processing elements to respective ones of said pair of input terminals on the one of said arithmetic processing unit, logic unit or arithmetic logic unit on that particular one of said n processing elements; and
,(i) means for generating a series of programmed shift and compute command signals and for transmitting such signals to;
(i) said memory XY and boundary address locations;
(ii) said m serially cascaded interconnected latches on each of said n processing elements;
(iii) said m north serially cascaded interconnected boundary latches;
(iv) said m south serially cascaded interconnected boundary latches;
(v) said neighborhood functional units on each of said n processing elements; and
(vi), said one of said arithmetic processing unit, logic unit or arithmetic logic unit on each of said n processing elements, for inputting shift command signals thereto, and for inputting compute command signals to one only of said neighborhood functional unit or said one of said arithmetic processing unit, logic unit or arithmetic logic unit on each of said n processing elements;
whereby each shift command signal input to;
(i) n of said memory XY address locations;
(ii) said memory boundary address locations;
(iii) said m serially cascaded latches on said n processing elements;
(iv) said m north and south serially cascaded interconnected boundary latches;
(v) said neighborhood functional units on each of said n processing elements; and
(vi), said one of said arithmetic processing unit, logic unit or arithmetic logic unit on each of said n processing elements, serves to shift;
(a) n of said "X" rows of digitally encoded PIXEL data bits stored in n adjacent ones of said memory XY address locations where "n" is equal to the number "n" of said processing elements;
(b) boundary data bits in said boundary address locations corresponding to shifted PIXEL data bits; and
(c), data bits stored in all of said latches and presented on said first, second and third groups m, m'"'"' and m" of input terminals of each of said neighborhood functional units and on said pair of input terminals on said one of said arithmetic processing unit, logic unit or arithmetic logic unit on each of said n processing elements by one column position so as to shift n of said "X" rows of digitally encoded PIXEL data bits successively through respective ones of said m serially cascaded latches on each of said n processing elements in column-by-column internally pipelined order and for simultaneously shifting digitally encoded north and south boundary data bits through said m north and south serially cascaded boundary latches in column-by-column internally pipelined order whereby m digitally encoded PIXEL data bits, m bits of north boundary data for each of said n processing elements, and m bits of south boundary data for each of said n processing elements are successively and simultaneously presented on said first, second and third groups m, m'"'"' and m" of input terminals on said neighborhood functional units on each of said n processing elements, and PIXEL data bits in two of said m serially cascaded interconnected latches on each of said n processing elements are successively and simultaneously presented on said pair of input terminals on said one of said arithmetic processing unit, logic unit or arithmetic logic unit on that particular one of each of said n processing elements; and
each compute command signal is input to one only of said neighborhood functional unit or said one of said arithmetic processing unit, said logic unit or said arithmetic logic unit on each of said n processing elements and serves to initiate a selected one of a NEIGHBORHOOD, ARITHMETIC or LOGIC TRANSFORM processing operation with the results of each of said n operations being output from said n processing elements on the next succeeding shift command signal and being input to the associated ones of said memory XY address locations.
-
-
23. In an image processing system for the type employing:
- (i) a sensor for detecting image data and outputting such data in the form of a two-dimensional XY array of digitally encoded PIXEL data bits disposed in "X" rows "A", "B", "C" . . . "Xn " and "Y" columns "0", "1", "2" . . . "Yn " wherein said array contains discrete PIXEL data bits and wherein said two-dimensional XY array includes a plurality of overlapping two-dimensional AB neighborhood arrays for each and every PIXEL location in the XY array where "A" and "B" have equal integer values greater than "2";
(ii) a memory having XY address locations for storing said two dimensional XY array of digitally encoded PIXEL data bits and boundary address locations for storing digitally encoded data bits representative of the northern, southern, eastern and western boundaries of said XY array;
(iii) a special purpose image processor;
(iv) a host central processing unit coupled to the memory and to the special purpose image processor; and
(v), a sequencer controlled by the central processing unit for inputting shift command signals to the memory and both shift command signals and compute command signals to the special purpose image processor;
the improvement in said special purpose image processor comprising, in combination;(a) means for shifting n of said "X" rows of digitally encoded PIXEL data bits through said special purpose image processor in parallel and in column-by-column stepwise internally pipelined order where "n" is any whole integer greater than "2"; (b) means for storing n two-dimensional AB neighborhood arrays each including a particular PIXEL data bit in one of the n "X" rows and all neighboring PIXEL and boundary data bits in the preselected two-dimensional AB array during periods intermediate successive data shift signals; (c) means for performing a NEIGHBORHOOD TRANSFORM processing operation on all data bits in each of the n stored two-dimensional AB arrays;
whereby said two-dimensional XY array of PIXEL data bits is processed in parallel row and internally pipelined column-by-column order; and(d) n processing elements and wherein said means for storing n two-dimensional AB neighborhood arrays comprises n sets of m serially cascaded interconnected latches where "m" is less then "n" and with one such set formed on each of said n processing elements whereby the centermost one of said m latches on any given one of said n processing elements contains the PIXEL data bits to be analyzed by that processing element during a NEIGHBORHOOD TRANSFORM and wherein that processing element comprises the centermost one of m of said n processing elements, and wherein all latches in said n processing elements surrounding the centermost one of said m latches on said given one of said n processing elements provide neighbor inputs to that one of said n processing elements containing said centermost one of said m latches.
- (i) a sensor for detecting image data and outputting such data in the form of a two-dimensional XY array of digitally encoded PIXEL data bits disposed in "X" rows "A", "B", "C" . . . "Xn " and "Y" columns "0", "1", "2" . . . "Yn " wherein said array contains discrete PIXEL data bits and wherein said two-dimensional XY array includes a plurality of overlapping two-dimensional AB neighborhood arrays for each and every PIXEL location in the XY array where "A" and "B" have equal integer values greater than "2";
-
24. In an image processing system of the type employing:
- (i) a sensor for detecting image data and outputting such data in the form of a two-dimensional XY array of digitally encoded PIXEL data bits disposed in "X" rows "A", "B", "C" . . . "Xn and "Y" columns "0", "1", "2" . . . "Yn wherein said array contains discrete PIXEL data bits and wherein said two-dimensional XY array includes a plurality of overlapping two-dimensional AB neighborhood arrays for each and every PIXEL location in the XY array where "A" and "B" have equal integer values greater than "2";
(ii) a memory having XY address locations for storing said two-dimensional XY array of digitally encoded PIXEL data bits and boundary address locations for storing digitally encoded PIXEL data bits and boundary address locations for storing digitally encoded data bits representative of the northern, southern, eastern and western boundries of said XY array;
(iii) a special purpose image processor;
(iv) a host central processing unit coupled to the memory and to the special purpose image processor; and
(v), a sequencer controlled by the central processing unit for inputting shift command signals to the memory and both shift command signals and compute command signals to the special purpose image processor;
the improvement in said special purpose image processor comprising, in combination;(a) means for shifting n of said "X" rows of digitally encoded PIXEL data bits through said special purpose image processor in parallel and in column-by-column stepwise internally pipelined order where "n" is any whole integer greater than "2"; (b) means for storing n two-dimensional AB neighborhood arrays each including a particular PIXEL data bit in one of the n "X" rows and all neighboring PIXEL and boundary data bits in the preselected two-dimensional AB array during periods intermediate successive data shift signals; (c) means for performing a selected one of; (i) a NEIGHBORHOOD TRANSFORM processing operation on all data bits in each of the n stored two-dimensional AB arrays;
or,(ii) one only of an ARITHMETIC TRANSFORM and a LOGIC TRANSFORM processing operation with respect to each PIXEL data bit being analyzed in each of said n "X" rows and an adjacent PIXEL data bit in one of said n "X" rows; whereby said two-dimensional XY array of PIXEL data bits is processed in parallel row and internally pipelined column-by-column order; and (d) n processing elements and wherein said means for storing n two-dimensional AB neighborhood arrays comprises n sets of m serially cascaded interconnected latches where "m" is less than "n" and with one such set formed on each of said n processing elements whereby the centermost one of said m latches on any given one of said n processing elements contains the PIXEL data bits to be analyzed by that processing element during a NEIGHBORHOOD TRANSFORM and wherein that processing element comprises the centermost one of m of said n processing elements, and wherein all latches in said n processing elements surrounding the centermost one of said m latches on said given one of said n processing elements provide neighbor inputs to that one of said n processing elements containing said centermost one of said m latches. - View Dependent Claims (26)
- (i) a sensor for detecting image data and outputting such data in the form of a two-dimensional XY array of digitally encoded PIXEL data bits disposed in "X" rows "A", "B", "C" . . . "Xn and "Y" columns "0", "1", "2" . . . "Yn wherein said array contains discrete PIXEL data bits and wherein said two-dimensional XY array includes a plurality of overlapping two-dimensional AB neighborhood arrays for each and every PIXEL location in the XY array where "A" and "B" have equal integer values greater than "2";
-
28. A one-dimensional columnar vector image processor for use in processing digitally encoded PIXEL data bits contained within a multiplicity of two-dimensional AB neighborhood arrays in parallel row, internally pipelined, column-by-column order and for use with an image processing having:
- (i) a sensor for outputting a two-dimensional XY video image having PIXELS oriented in "X" rows "A", "B", "C" . . . "Xn " and "Y" columns "0", "1", "2" . . . "Yn ";
(ii) a memory for receiving data from said sensor and containing XY address locations for storage of said PIXEL data bits and boundary address locations for storage of data bits representative of the north, south, east and west boundaries of said two-dimensional XY video image;
(iii) a central processing unit coupled to said sensor and said memory; and
(iv), a sequencer controlled by said central processing unit and coupled to said memory and said vector image processor for inputting data shift command signals thereto and for inputting compute command signals to said vector image processor for initiating a computational processing operation;
said vector image processor comprising, in combination;(a) n processing elements disposed in parallel where "n" is any whole integer greater than "1", each of said n processing elements including; (i) a series of m serially cascaded interconnected latches where the value of "m" is equal to the value of "A" in said two-dimensional AB neighborhood array; (ii) a neighborhood functional unit having a first group m, a second group m'"'"', and a third group m" of input terminals and an output terminal, said neighborhood functional unit being programmed to perform selected NEIGHBORHOOD TRANSFORM processing operations on digitally encoded data presented on its input terminals upon receipt of a compute command signal; and
,(iii) one of an arithmetic processing unit, a logic unit or an arithmetic logic unit having a pair of input terminals and an output terminal, said one of said arithmetic processing unit, logic unit or arithmetic logic unit being programmed to perform one of an ARITHMETIC TRANSFORM or a LOGIC TRANSFORM processing operation on digitally encoded data presented on its input terminals upon receipt of a compute command signal; (b) m north and south serially cascaded interconnected boundary latches for receiving digitally encoded data bits stored in said memory boundary address locations representative of north and south boundary locations corresponding to each column of PIXEL data bits to be processed and corresponding to the eastern and western boundaries of said two-dimensional XY array; (c) means for coupling said m serially cascaded interconnected latches on each of said n processing elements to; (i) said first group m of input terminals on said neighborhood functional unit on that particular one of said n processing elements; (ii) said second group m'"'"' of input terminals on said neighborhood functional unit on any immediately adjacent northern one of said n processing elements; and
,(iii) said third group m" of input terminals on said neighborhood functional unit on any immediately adjacent southern one of said n processing elements; (d) means for coupling said m north serially cascaded boundary latches to said third group m" of input terminals on said neighborhood functional unit on the northernmost one of said n processing elements; (e) means for coupling said m south serially cascaded boundary latches to said second group m'"'"' of input terminals on said neighborhood functional unit on the southernmost one of said n processing elements; and
,(f) means for coupling said one of said m serially cascaded interconnected latches containing the particular PIXEL data bit to be processed and an adjacent one of said m serially cascaded interconnected latches on each of said n processing elements to respective ones of said pair of input terminals of said one of said arithmetic processing unit, logic unit or arithmetic logic unit on each of said n processing elements; whereby each shift command signal generated by the sequencer and input to said vector image processor serves to shift all PIXEL data bits and all boundary data bits in each of said two-dimensional AB neighborhoods by one column position and where each compute command signal transmitted by the sequencer to said vector image processor serves to initiate a computational operation in either said neighborhood logic unit or in the one of said arithmetic processing unit, logic unit or arithmetic logic unit on each of said n processing elements for initiating a selected one of a NEIGHBORHOOD TRANSFORM, an ARITHMETIC TRANSFORM, or a LOGIC TRANSFORM.
- (i) a sensor for outputting a two-dimensional XY video image having PIXELS oriented in "X" rows "A", "B", "C" . . . "Xn " and "Y" columns "0", "1", "2" . . . "Yn ";
-
36. A processing element for use in a vector image processing system of the type employed in processing discrete digitally encoded PIXEL data bits in a video image comprising a multiplicity of overlapping two-dimensional AB neighborhood arrays in a two-dimensional XY PIXEL image array oriented in "X" rows and "Y" columns and containing PIXELS in internally pipelined column-by-columns order upon receipt of shift and compute command signals from a suitable command source, said processing element comprising, in combination:
-
(a) a support; (b) means defining a plurality of n serially cascaded interconnected latches mounted on said support where "n" is equal to the number of PIXEL data bits and boundary data bits located in a horizontal row in each of said two-dimensional AB neighborhood arrays; (c) input terminal means mounted on said support and coupled to the upstream one of said plurality of n serially cascaded interconnected latches for sequentially inputting successive discrete digitally encoded PIXEL data bits in a given "X" row to said n serially cascaded latches; (d) a neighborhood functional unit mounted on said support for performing preprogrammed NEIGHBORHOOD TRANSFORM processing operations, said neighborhood functional unit having 3n input terminals and an output terminal; (e) means for coupling each of said n serially cascaded latches to respective ones of a first group of n of said 3n input terminals on said neighborhood functional unit; (f) means defining n first input terminals on said support for inputting n discrete bits of digitally encoded data from n north neighbors corresponding in column "Y" position to the digitally encoded data bits in each of said n serially cascaded latches, said n first input terminal defining means being coupled to respective ones of a second group of n of said 3n input terminals on said neighborhood functional unit; (g) means defining n second input terminals on said support for inputting n discrete bits of digitally encoded data from n south neighbors corresponding in column "Y" position to the digitally encoded data bits in said n serially cascaded latches, said n second input terminal defining means being coupled to respective ones of a third group of n of said 3n input terminals on said neighborhood functional unit; (h) means defining n first output terminals on said support and respectively coupled to said n serially cascaded latches for outputting the digitally encoded PIXEL data bits stored in said n latches to a neighboring north processing element; (i) means defining n second output terminals on said support and respectively coupled to said n serially cascaded latches for outputting the digitally encoded PIXEL data bits stored in said n latches to a neighboring south processing element; (j) means defining a command input terminal formed on said support and coupled to each of said n latches and to said neighborhood functional unit for shifting data stored therein by one column position upon receipt of a shift command signal and for initiating a NEIGHBORHOOD TRANSFORM processing operation with respect to data on the input terminals of said neighborhood functional unit upon receipt of a compute command signal; and
,(k) an output terminal on said support coupled to said output terminal on said neighborhood functional unit for outputting digitally encoded data from said neighborhood functional unit representative of the computational result of said NEIGHBORHOOD TRANSFORM processing operation; whereby as PIXEL data bits are shifted into and through said n serially cascaded latches on said processing element in successive PIXEL-by-PIXEL order, a NEIGHBORHOOD TRANSFORM processing operation is conducted on each and every PIXEL stored in a given one of said n serially cascaded latches with each said PIXEL data bit being processed based upon its relation to all neighboring PIXEL data bits and boundary data bits in said AB neighborhood.
-
-
37. A processing element for use in a vector image processing system of the type employed in processing discrete digitally encoded PIXEL data bits in a video image comprising an multiplicity of overlapping two-dimensional AB neighborhood arrays in a two-dimensional XY PIXEL image array oriented in "X" rows and "Y" columns and containing PIXELS in internally pipelined column-by-column order upon receipt of shift and compute command signals from a suitable command source, said processing element comprising, in combination:
-
(a) a support; (b) means defining a plurality of n serially cascaded interconnected latches mounted on said support where "n" is equal to the number of PIXEL data bits and boundary data bits located in a horizontal row in each of said two-dimensional AB neighborhood arrays; (c) input terminal means mounted on said support and coupled to the upstream one of said plurality of n serially cascaded interconnected latches for sequentially inputting successive discrete digitally encoded PIXEL data bits in a given "X" row to said n serially cascaded latches; (d) a neighborhood functional unit mounted on said support for performing preprogrammed NEIGHBORHOOD TRANSFORM processing operations, said neighborhood functional unit having 3n input terminals and an output terminal; (e) means for coupling each of said n serially cascaded latches to respective ones of a first group of n of said 3n input terminals on said neighborhood functional unit; (f) means defining n first input terminals on said support for inputting n discrete bits of digitally encoded data from n north neighbors corresponding in column "Y" position to the digitally encoded data bits in each of said n serially cascaded latches, said n first input terminal defining means being coupled to respective ones of a second group of n of said 3n input terminals on said neighborhood functional unit; (g) means defining n second input terminals on said support for inputting n discrete bits of digitally encoded data from n south neighbors corresponding in column "Y" position to the digitally encoded data bits in said n serially cascaded latches, said n second input terminal defining means being coupled to respective ones of a third group of n of said 3n input terminals on said neighborhood functional unit; (h) means defining n first output terminals on said support and respectively coupled to said n serially cascaded latches for outputting the digitally encoded PIXEL data bits stored in said n latches to a neighboring north processing element; (i) means defining n second output terminals on said support and respectively coupled to said n serially cascaded latches for outputting the digitally encoded PIXEL data bits stored in said n latches to a neighboring south processing element; (j) means defining one of an arithmetic processing unit, a logic unit or an arithmetic logic unit on said support for performing a selected one of a preprogrammed ARITHMETIC or LOGIC TRANSFORM, said one unit having a pair of input terminals and an output terminal; (k) means for coupling two adjacent ones of said n serially cascaded latches, including that latch containing PIXEL data bits for the particular PIXEL being analyzed in each of said n processing elements, to respective ones of said pair of input terminals on said one unit; (l) means defining a command input terminal formed on said support and coupled to each of said n latches and to said neighborhood functional unit and to said one of said arithmetic processing unit, logic unit or arithmetic logic unit for shifting data stored therein by one column position upon receipt of a shift command signal and for initiating one only of a NEIGHBORHOOD, ARITHMETIC or LOGIC TRANSFORM processing operation with respect to data on the input terminals of one only of said neighborhood functional unit or said one of said arithmetic processing unit, said logic unit or said arithmetic logic unit upon receipt of a compute command signal; and
,(m) an output terminal on said support coupled to said output terminal on said neighborhood functional unit and to said output terminal on said one of said arithmetic processing unit, said logic unit or said arithmetic logic unit for outputting digitally encoded data from one only of said units representative of the computational result of said NEIGHBORHOOD, ARITHMETIC or LOGIC TRANSFORM processing operation;
whereby as PIXEL data bits are shifted into and through said n serially cascaded latches on each of said n processing elements in successive PIXEL-by-PIXEL order, a NEIGHBORHOOD, ARITHMETIC or LOGIC TRANSFORM processing operation is conducted on each and every PIXEL stored in a given one of said n serially cascaded latches and wherein each NEIGHBORHOOD TRANSFORM conducted with respect to each said PIXEL data bit being processed is based upon that PIXEL data bit'"'"'s relation to all neighboring PIXEL data bits and boundary data bits in said AB neighborhood.
-
-
40. A vector image processor for use in processing digitally encoded PIXEL data bits contained within a multiplicity of two-dimensional 3×
- 3 neighborhood arrays in parallel row, internally pipelined, column-by-column order and for use with an image processing system having;
(i) a sensor for outputting a two-dimensional XY video image having PIXELS oriented in "X" rows "A", "B", "C" . . . "Xn " and "Y" columns "0", "1", "2" . . . "Yn ";
(ii) a memory for receiving data from said sensor and containing XY address locations for storage of said PIXEL data bits and boundary address locations for storage of data bits representative of the north, south, east and west boundaries of said two-dimensional XY video image;
(iii) a central processing unit coupled to said sensor and said memory; and
(iv), a sequencer controlled by said central processing unit and coupled to said memory and said vector image processor for inputting data shift command signals thereto and for inputting compute command signals to said vector image processor for initiating a computational processing operation;
said vector image processor comprising, in combination;(a) a processing element having; (i) three (3) serially cascaded interconnected latches P-, P and P+; (ii) a neighborhood functional unit for performing programmed NEIGHBORHOOD TRANSFORM processing operations and having nine (9) input terminals P-, P, P+, N-, N, N+, S-, S and S+ and an output terminal; and
,(iii) means for transmitting the data contained in respective ones of said latches P-, P and P+ at any given instant of time to respective ones of said input terminals P-, P and P+ on said neighborhood functional unit; (b) a series of three (3) serially cascaded interconnected latches N-, N or N+; (c) a series of three (3) serially cascaded interconnected latches S-, S and S+; (d) means for transmitting data contained in respective ones of said latches N-, N, N+, S-, S and S+ at any given instant of time to respective ones of said input terminals N-, N, N+, S-, S and S+ on said neighborhood functional unit; (e) means for coupling said latch P- to the memory for receiving data stored in said XY address locations for a given "X" row in column-by-column pipelined order upon generation of shift command signals by the sequencer; (f) means for coupling said output terminal on said neighborhood functional unit to the memory for inputting data to the appropriate XY address locations therein for data output from a given processing operation upon generation of shift command signals by the sequencer; (g) means for coupling said latches N- and P- to the memory for receiving north and south boundary data, respectively, stored in north and south boundary address locations for each of said "X" rows in column-by-column pipelined order upon generation of shift command signals by the sequencer; (h) means for transmitting data shift command signals generated by the sequencer and coupled to the memory to all of said latches and to said neighborhood functional unit for causing data contained therein to be shifted one column position for each data shift command signal; and
,(i) means for transmitting a compute command signal generated by the sequencer to said neighborhood functional unit for initiating a NEIGHBORHOOD TRANSFORM processing operation; whereby said "X" rows of data in said XY array are processed in sequential column-by-column and row-by-row order.
- 3 neighborhood arrays in parallel row, internally pipelined, column-by-column order and for use with an image processing system having;
-
41. A vector image processor for use in processing digitally encoded PIXEL data bits contained within a multiplicity of two-dimensional 3×
- 3 neighborhood arrays in parallel row, internally pipelined, column-by-column order and for use with an image processing system having;
(i) a sensor for outputting a two-dimensional XY video image having PIXELS oriented in "X" rows "A", "B", "C" . . . "Xn " and "Y" columns "0", "1", "2" . . . "Yn ";
(ii) a memory for receiving data from said sensor and containing XY address locations for storage of said PIXEL data bits and boundary address locations for storage of data bits representative of the north, south, east and west boundaries of said two-dimensional XY video image;
(iii) a central processing unit coupled to said sensor and said memory; and
(iv), a sequencer controlled by said central processing unit and coupled to said memory and said vector image processor for inputting data shift command signals thereto and for inputting compute command signals to said vector image processor for initiating a computational processing operation;
said vector image processor comprising, in combination;(a) a processing element having; (i) three (3) serially cascaded interconnected latches P-, P and P+; (ii) a neighborhood functional unit for performing programmed NEIGHBORHOOD TRANSFORM processing operations and having nine (9) input terminals P-, P, P+, N-, N, N+, S-, S and S+ and an output terminal; (iii) one of an arithmetic processing unit, a logic unit or an arithmetic logic unit for performing one of programmed ARITHMETIC or LOGIC TRANSFORM processing operations and having a pair of input terminals P- and P and an output terminal; and
,(iv) means for transmitting the data contained in respective ones of said latches P-, P and P+ at any given instant of time to respective ones of said input terminals P-, P and P+ on said neighborhood functional unit and to respective ones of said input terminals P- and P on said one of said arithmeic processing unit, said logic unit or said arithmetic logic unit; (b) a series of three (3) serially cascaded interconnected latches N-, N and N+; (c) a series of three (3) serially cascaded interconnected latches S-, S and S+; (d) means for transmitting data contained in respective ones of said latches N-, N, N+, S-, S and S+ at any given instant of time to respective ones of said input terminals N-, N, N+, S-, S and S+ on said neighborhood functional unit; (e) means for coupling said latch P- to the memory for receiving data stored in said XY address locations for a given "X" row in column-by-column pipelined order upon generation of shift command signals by the sequencer; (f) means for coupling said output terminals on said neighborhood functional unit and said one of said arithmetic processing unit, logic unit or arithmetic logic unit to the memory for inputting data to the appropriate XY address locations therein for data output from a given processing operation upon generation of shift command signals by the sequencer; (g) means for coupling said latches N- and P- to the memory for receiving north and south boundary data, respectively, stored in north and south boundary address locations for each of said "X" rows in column-by-column pipelined order upon generation of shift command signals by the sequencer; (h) means for transmitting data shift command signals generated by the sequencer and coupled to the memory to all of said latches and to both said neighborhood functional unit and said one of said arithmetic processing unit, logic unit or arithmetic logic unit for causing data contained therein to be shifted one column position for each data shift command signal; and
,(i) means for transmitting a compute command signal generated by the sequencer to one of said neighborhood functional unit or said one of said arithmetic processing unit, said logic unit or said arithmetic logic unit for initiating one only of a NEIGHBORHOOD, ARITHMETIC or LOGIC TRANSFORM processing operation;
whereby said "X" rows of data in said XY array are processed in sequential column-by-column and row-by-row order.
- 3 neighborhood arrays in parallel row, internally pipelined, column-by-column order and for use with an image processing system having;
-
43. The method of processing a two-dimensional XY PIXEL image array containing discrete bits of digitally encoded PIXEL data oriented in "X" rows and "Y" columns, and including a multiplicity of overlapping AB neighborhoods, where at least one of "A" and "B" has any desired whole integer value greater than "1", and wherein each AB neighborhood includes a PIXEL to be processed and data bits representative of neighbor PIXELS, said method comprising the steps of:
-
(a) shifting n rows of digitally encoded PIXEL data, where "n" is any whole integer, in column-by-column sequential internally pipelined order through a one-dimensional columnar array of n processing element(s) each including; (i) latch means equal in number to the value of "A" in the AB neighborhood for storing a plurality of discrete bits of digitally encoded data intermediate successive data shifts, and wherein the latch means comprises serially cascaded interconnected latches in those instances where "A" is greater than "1"; and
,(ii) a neighborhood functional processing unit for performing a NEIGHBORHOOD TRANSFORM processing operation; (b) conveying the digitally encoded data stored in the latch means in each of the n processing element(s) and corresponding to each PIXEL to be processed to the neighborhood functional processing unit on that processing element; (c) conveying digitally encoded data representative of all neighbor PIXELS contained within each AB neighborhood to the neighborhood functional processing unit in each of the n processing element(s); (d) performing a computational NEIGHBORHOOD TRANSFORM processing operation on the digitally encoded PIXEL data for each PIXEL being analyzed at a given instant of time in the neighborhood functional processing unit in each of the n processing element(s); and
,(e) outputting digitally encoded data representative of the results of each computational NEIGHBORHOOD TRANSFORM processing operation on each PIXEL being processed, with all PIXELS in a given "Y" column of PIXELS and in the n rows being processed in parallel in those instances where n is greater than "1", and with all PIXELS in each of the n rows being processed in internally pipelined sequential order.
-
-
44. The method of processing a two-dimensional XY PIXEL image array containing discrete bits of digitally encoded PIXEL data oriented in "X" rows and "Y" columns, and including a multiplicity of overlapping AB neighborhood, where at least one of "A" and "B" has any desired whole integer value greater than "1", and wherein each AB neighborhood includes a PIXEL to be processed and data bits representative of neighbor PIXELS;
- said method comprising the steps of;
(a) shifting n rows of digitally encoded PIXEL data, where "n" is any whole integer, in column-by-column sequential internally pipelined order through a one-dimensional columnar array of n processing element(s) each including; (i) latch means equal in number to the value of "A" in the AB neighborhood for storing a plurality of discrete bits of digitally encoded data intermediate successive data shifts, and wherein the latch means comprises serially cascaded interconnected latches in those instances where "A" is greater than "1"; (ii) a neighborhood functional processing unit for performing a NEIGHBORHOOD TRANSFORM processing operation; and
,(iii) one of an arithmetic processing unit, a logic unit or an arithmetic logic unit for performing one of an ARITHMETIC TRANSFORM processing operation or a LOGIC TRANSFROM processing operation; (b) conveying the digitally encoded data stored in the latch means in each of the n processing element(s) and corresponding to each PIXEL to be processed to the neighborhood functional processing unit on that processing element; (c) conveying digitally encoded data representative of all neighbor PIXELS contained within each AB neighborhood to the neighborhood functional processing unit in each of the n processing element(s); (d) conveying digitally encoded data stored in the latch means in each of the n processing elements and corresponding to each PIXEL to be processed, and digitally encoded data stored in an adjacent one of the latch means to the one of the arithmetic processing unit, logic unit or arithmetic logic unit on that processing element; (e) performing one of a computational NEIGHBORHOOD TRANSFROM processing operation, a computational ARITHMETIC TRANSFORM processing operation, or a computational LOGIC TRANSFORM processing operation on the digitally encoded PIXEL data for each PIXEL being analyzed at a given instant of time in either the neighborhood functional processing unit or the one of the arithmetic processing unit, logic unit or arithmetic logic unit in each of the n processing element(s); and
,(f) outputting digitally encoded data representative of the results of each computational TRANSFORM processing operation on each PIXEL being processed, with all PIXELS in a given "Y" column of PIXELS and in the n rows being processed in parallel in those instances where n is greater than "1", and with all PIXELS in each of the n rows being processed in internally pipelined sequential order.
- said method comprising the steps of;
-
52. An image processing system for processing a two-dimensional XY array of digitally encoded PIXEL data bits disposed in "X" rows "A", "B", "C" . . . "Xn " and "Y" columns "0", "1", "2" . . . "Yn " wherein said array contains discrete PIXEL data bits, and for performing NEIGHBORHOOD TRANSFORM processing operations on each PIXEL data bit in said two-dimensional XY array based on the relation of the value of each PIXEL data bit to the value of its immediately adjacent neighbors in an AB neighborhood array containing "A" columns and "B" rows where at least one of "A" and "B" has an integer value greater than "1";
- said image processing system comprising, in combination;
(a) a sensor for detecting image data and outputting such data in the form of a two-dimensional XY array of digitally encoded PIXEL data bits; (b) a memory having XY address locations for storing said two-dimensional XY array of digitally encoded PIXEL data bits; (c) a vector image processor comprising n processing element(s) wherein "n" can be any whole integer value and wherein said n processing elements are disposed in parallel in those instances where "n" is greater than "1", said n processing element(s) each including; (i) m latch means where the value of "m" is equal to the value of "A" in said AB neighborhood array and where said m latch means comprise m serially cascaded interconnected latches in those instances where "A" and "m" are greater than "1"; and
,(ii) a neighborhood functional unit having a first group m, a second group m'"'"', and a third group m" of input terminals and an output terminal, said neighborhood functional unit being programmed to perform selected NEIGHBORHOOD TRANSFORM processing operations on digitally encoded data presented on its input terminals upon receipt of a compute command signal; (d) means for coupling said m latch means on each of said n processing elements to; (i) said first group m of input terminals on said neighborhood functional unit on that particular one of said n processing elements; (ii) said second group m'"'"' of input terminals on said neighborhood functional unit on any immediately adjacent northern one of said n processing elements; and
,(iii) said third group m" of input terminals on said neighborhood functional unit on any immediately adjacent southern one of said n processing elements; and
,(e) means for generating a series of programmed shift and compute command signals and for transmitting such signals to;
(i) said memory XY address locations;
(ii) said m latch means on each of said n processing elements; and
, (iii), said neighborhood functional units on each of said n processing elements, for inputting shift command signals thereto, and for inputting compute command signals to each of said neighborhood functional units on each of said n processing elements;whereby each shift command signal input to;
(i) n of said memory XY address locations;
(ii) said m latch means on said n processing elements; and
(iii), said neighborhood functional units on each of said n processing elements, serves to shift;
(a) n of said "X" rows of digitally encoded PIXEL data bits stored in n adjacent ones of said memory XY address locations where "n" is equal to the number "n" of said processing elements; and
(b), data bits stored in all of said latch means and presented on said first, second and third groups m, m'"'"' and m" of input terminals of each of said neighborhood functional units on each of said n processing elements by one column position so as to shift n of said "X" rows of digitally encoded PIXEL data bits successively through respective ones of said m latch means on each of said n processing elements in column-by-column internally pipelined order whereby m digitally encoded PIXEL data bits are presented on said first, second and third groups m, m'"'"' and m" of input terminals of said neighborhood functional units on each of said n processing elements; and
, each compute command signal input to said neighborhood functional unit on each of said n processing elements serves to initiate a NEIGHBORHOOD TRANSFORM processing operation with the results of each of said n operations being output from said n processing elements on the next succeeding shift command signal and being input to the associated ones of said memory XY address locations. - View Dependent Claims (56)
- said image processing system comprising, in combination;
-
53. An image processing system for processing a two-dimensional XY array of digitally encoded PIXEL data bits disposed in "X" rows "A", "B", "C" . . . "Xn " and "Y" columns "0", "1", "2" . . . "Yn " wherein said array contains discrete PIXEL data bits, and for performing a selected one of an ARITHMETIC TRANSFROM or LOGIC TRANSFORM processing operation with respect to two adjacent PIXELS in a given row, or a NEIGHBORHOOD TRANSFORM processing operation on each PIXEL data bit in said two-dimensional XY array based on the relation of the value of each PIXEL data bit to the value of its immediately adjacent neighbors in an AB neighborhood array containing "A" columns and "B" rows where at least one of "A" and "B" has an integer value greater than "1";
- said image processing system comprising, in combination;
(a) a sensor for detecting image data and outputting such data in the form of an two-dimensional XY array of digitally encoded PIXEL data bits; (b) a memory having XY address locations for storing said two-dimensional XY array of digitally encoded PIXEL data bits; (c) a vector image processor comprising n processing element(s) wherein "n" can be any whole integer value and wherein said n processing elements are disposed in parallel in those instances where "n" is greater than "1", said n processing element(s) each including; (i) m latch means where the value of "m" is equal to the value of "A" in said AB neighborhood array and where said m latch means comprise m serially cascaded interconnected latches in those instances where "A" and "m" are greater than "1"; (ii) a neighborhood functional unit having a first group m, a second group m'"'"', and a third group m " of input terminals and an output terminal, said neighborhood functional unit being programmmed to perform selected NEIGHBORHOOD TRANSFORM processing operations on digitally encoded data presented on its input terminals upon receipt of a compute command signal; and
,(iii) one of an arithmetic processing unit, a logic unit or an arithmetic logic unit having a pair of input terminals and an output terminal and programmed to perform a selected ARITHMETIC and/or LOGIC TRANSFORM processing operation on digitally encoded data presented on its input terminals upon receipt of a compute command signal; (d) means for coupling said m latch means on each of said n processing elements to; (i) said first group m of input terminals on said neighborhood functional unit on that particular one of said n processing elements; (ii) said second group m'"'"' of input terminals on said neighborhood functional unit on any imnmediately adjacent northern one of said n processing elements; and
,(iii) said third group m" of input terminals on said neighborhood functional unit on any immediately adjacent southern one of said n processing elements; (e) means for coupling two of said m latch means on each of said n processing elements to respective ones of said pair of input terminals on the one of said arithmetic processing unit, logic unit or arithmetic logic unit on that particular one of said n processing elements; and
,(f) means for generating a series of programmmed shift and compute command signals and for transmitting such signals to;
(i) said memory XY address locations;
(ii) said m latch means on each of said n processing elements;
(iii) said neighborhood functional units on each of said n processing elements; and
(iv), said one of said arithmetic processing unit, logic unit or arithmetic logic unit on each of said n processing elements, for inputting shift command signals thereto, and for inputting compute command signals to one only of said neighborhood functional unit or said one of said arithmetic processing unit, logic unit or arithmetic logic unit on each of said n processing elements;
whereby each shift command signal input to;
(i) n of said memory XY address locations;
(ii) said m latch means on said n processing elements;
(iii) said neighborhood functional units on each of said n processing elements; and
(iv), said one of said arithmetic processing unit, logic unit or arithmetic logic unit on each of said n processing elements, serves to shift;
(a) n of said "X" rows of digitally encoded PIXEL data bits stored in n adjacent ones of said memory XY address locations where "n" is equal to the number "n" of said processing elements; and
(b), data bits stored in all of said latches and presented on said first, second and third groups m, m'"'"' and m" of input terminals of each of said neighborhood functional units and on said pair of input terminals on said one of said arithmetic processing unit, logic unit or arithmetic logic unit on each of said n processing elements by one column position so as to shift n of said "X" rows of digitally encoded PIXEL data bits successively through respective ones of said m latch means on each of said n processing elements in column-by-column internally pipelined order whereby m digitally encoded PIXEL data bits are presented on said first, second and third groups m, m'"'"' and m" of input terminals on said neighborhood functional units on each of said n processing elements, and PIXEL data bits in two of said m latch means on each of said n processing elements are successively and simultaneously presented on said pair of input terminals on said one of said arithmetic processing unit, logic unit or arithmetic logic unit on that particular one of each of said n processing elements; and
each compute command signal is input to one only of said neighborhood functional unit or said one of said arithmetic processing unit, said logic unit or said arithmetic logic unit on each of said n processing elements and serves to initiate a selected one of a NEIGHBORHOOD, ARITHMETIC or LOGIC TRANSFORM processing operation with the results of each of said n operations being output from said n processing elements on the next succeeding shift command signal and being input to the associated ones of said memory XY address locations.
- said image processing system comprising, in combination;
-
64. In an image processing system of the type employing:
- (i) a sensor for detecting image data and outputting such data in the form of a two-dimensional XY array of digitally encoded PIXEL data bits disposed in "X" rows "A", "B", "C" . . . "Xn " and "Y" columns "0", "1", "2" . . . "Yn " wherein said array contains discrete PIXEL data bits and wherein said two-dimensional XY array includes a plurality of overlapping AB neighborhood arrays for each and every PIXEL location in the XY array where at least one of "A" and "B" has an interger value greater than "2";
(ii) a memory having XY address locations for storing said two-dimensional XY array of digitally encoded PIXEL data bits;
(iii) a special purpose image processor;
(iv) a host central processing unit coupled to the memory and to the special purpose image processor; and
(v) a sequencer controlled by the central processing unit for inputting shift command signals to the memory and both shift command signals and compute command signals to the special purpose image processor;
the improvement in said special purpose image processor comprising, in combination;(a) means for shifting n of said "X" rows of digitally encoded PIXEL data bits through said special purpose image processor in parallel and in column-by-column stepwise internally pipelined order where "n" is any whole interger greater than "2"; (b) means for storing n AB neighborhood arrays each including a particular PIXEL data bit in one of the n "X" rows and all neighboring PIXEL data bits in the preselected AB array during periods intermediate successive data shift signals; (c) means for performing a NEIGHBORHOOD TRANSFORM processing operation on all data bits in each of the n stored AB arrays;
whereby said two-dimensional XY array of PIXEL data bits is processed in parallel row and internally pipelined column-by-column order; and(d) n processing elements and wherein said means for storing n AB neighborhood arrays comprises n sets of m latch means where "m" is less than "n" and with one such set formed on each of said n processing elements whereby the centermost one of said m latch means on any given one of said n processing elements contains the PIXEL data bits to be analyzed by that processing element during a NEIGHBORHOOD TRANSFORM and wherein that processing element comprises the centermost one of m of said n processing elements, and wherein all latch means in said n processing elements surrounding the centermost one of said m latch means on said given one of said n processing elements provide neighbor inputs to that one of said n processing elements containing said centermost one of said m latch means.
- (i) a sensor for detecting image data and outputting such data in the form of a two-dimensional XY array of digitally encoded PIXEL data bits disposed in "X" rows "A", "B", "C" . . . "Xn " and "Y" columns "0", "1", "2" . . . "Yn " wherein said array contains discrete PIXEL data bits and wherein said two-dimensional XY array includes a plurality of overlapping AB neighborhood arrays for each and every PIXEL location in the XY array where at least one of "A" and "B" has an interger value greater than "2";
-
65. In an image processing system of the type employing:
- (i) a sensor for detecting image data and ouputting such data in the form of a two-dimensional XY array of digitally encoded PIXEL data bits disposed in "X" rows "A", "B", "C" . . . "Xn " and "Y" columns "0", "1", "2" . . . "Yn " wherein said array contains discrete PIXEL data bits and wherein said two-dimensional XY array includes a plurality of overlapping AB neighborhood arrays for each and every PIXEL location in the XY array where at least one of "A" and "B" has an integer value greater than "2";
(ii) a memory having XY address locations for storing said two-dimensional XY array of digitally encoded PIXEL data bits;
(iii) a special purpose image processor;
(iv) a host central processing unit coupled to the memory and to the special purpose image processor; and
(v), a sequencer controlled by the central processing unit for inputting shift command signals to the memory and both shift command signals and compute command signals to the special purpose image processor;
the improvement in said special purpose image processor comprising, in combination;(a) means for shifting n of said "X" rows of digitally encoded PIXEL data bits through said special purpose image processor in parallel and in column-by-column stepwise internally pipelined order where "n" is any whole integer greater than "2"; (b) means for storing n AB neighborhood arrays each including a particular PIXEL data bit in one of the n "X" rows and all neighboring PIXEL data bits in the preselected AB array during periods intermediate successive data shift signals; (c) means for performing a selected one of; (i) a NEIGHBORHOOD TRANSFORM processing operation on all data bits in each of the n stored AB arrays;
or,(ii) one only of an ARITHMETIC TRANSFORM and a LOGIC TRANSFORM processing operation with respect to each PIXEL data bit being analyzed in each of said n "X" rows and an adjacent PIXEL data bit in one of said n "X" rows; whereby said two two-dimensional XY array of PIXEL data bits is processed in parallel row and internally pipelined column-by-column order; and (d) n processing elements and wherein said means for storing n AB neighborhood arrays comprises n sets of m latch means where "m" is less than "n" and with one such set formed on each of said n processing elements whereby the centermost one of said m latch means on any given one of said n processing elements contains the PIXEL data bits to be analyzed by that processing element during a NEIGHBORHOOD TRANSFORM and wherein that processing element comprises the centermost one of m of said n processing elements, and wherein all latch means in said n processing elements surrounding the centermost one of said m latch means on said given one of said n processing elements provide neighbor inputs to that one of said n processing elements containing said centermost one of said m latch means. - View Dependent Claims (67)
- (i) a sensor for detecting image data and ouputting such data in the form of a two-dimensional XY array of digitally encoded PIXEL data bits disposed in "X" rows "A", "B", "C" . . . "Xn " and "Y" columns "0", "1", "2" . . . "Yn " wherein said array contains discrete PIXEL data bits and wherein said two-dimensional XY array includes a plurality of overlapping AB neighborhood arrays for each and every PIXEL location in the XY array where at least one of "A" and "B" has an integer value greater than "2";
-
69. A one-dimensional columnar vector image processor for use in processing digitally encoded PIXEL data bits contained within a multiplicity of overlapping AB neighborhood arrays where at least one of "A" and "B" has any desired whole integer value greater than "1", wherein said processor processes such digitally encoded data bits in parallel row, internally pipelined, column-by-column order and is adapted for use with an image processing system having:
- (i) a sensor for outputting an XY video image having a plurality of discrete PIXELS oriented in "X" rows "A", "B", "C" . . . "Xn " and "Y" columns "0", "1", "2" . . . "Yn ";
(ii) a memory for receiving data from said sensor and containing XY address locations for storage of said PIXEL data bits;
(iii) a central processing unit coupled to said sensor and said memory; and
(iv), a sequencer controlled by said central processing unit and coupled to said memory and said vector image processor for inputting data shift command signals thereto and for inputting compute command signals to said vector image processor for initiating a computational processing operation;
said vector image processor comprising, in combination;(a) n processing elements disposed in parallel where "n" is any whole integer greater than "1", each of said n processing elements including; (i) m latch means where the value of "m" is equal to the value of "A" in said AB neighborhood arrays and where said m latch means comprises m serially cascaded interconnected latches where "A" and "m" are greater than "1"; (ii) a neighborhood functional unit having a first group m, a second group m'"'"', and a third group m" of input terminals and an output terminal, said neighborhood functional unit being programmed to perform selected NEIGHBORHOOD TRANSFORM processing operations on digitally encoded data presented on its input terminals upon receipt of a compute command signal; and
,(iii) one of an arithmetic processing unit, a logic unit or an arithmetic logic unit having a pair of input terminals and an output terminal, said one of said arithmetic processing unit, logic unit or arithmetic logic unit being programmed to perform one of an ARITHMETIC TRANSFORM or a LOGIC TRANSFORM processing operation on digitally encoded data presented on its input terminals upon receipt of a compute command signal; (b) means for coupling said m latch means on each of said n processing elements to; (i) said first group m of input terminals on said neighborhood functional unit on that particular one of said n processing elements; (ii) said second group m'"'"' of input terminals on said neighborhood functional unit on any immediately adjacent northern one of said n processing elements; and
,(iii) said third group m" of input terminals on said neighborhood functional unit on any immediately adjacent southern one of said n processing elements; and
,(c) means for coupling said one of said m latch means containing the particular PIXEL data bit to be processed and an adjacent one of said m latch means on each of said n processing elements to respective ones of said pair of input terminals of said one of said arithmetic processing unit, logic unit or arithmetic logic unit on each of said n processing elements; whereby each shift command signal generated by the sequencer and input to said vector image processor serves to shift all PIXEL data bits in each of said AB neighborhoods by one column position and where each compute command signal transmitted by the sequencer to said vector image processor serves to initiate a computational operation in either said neighborhood logic unit or in the one of said arithmetic processing unit, logic unit or arithmetic logic unit on each of said n processing elements for initiating a selected one of a NEIGHBORHOOD TRANSFORM, an ARITHMETIC TRANSFORM, or a LOGIC TRANSFORM.
- (i) a sensor for outputting an XY video image having a plurality of discrete PIXELS oriented in "X" rows "A", "B", "C" . . . "Xn " and "Y" columns "0", "1", "2" . . . "Yn ";
-
73. A processing element for use in a vector image processing system of the type employed in processing discrete digitally encoded PIXEL data bits in a video image comprising a multiplicity of overlapping AB neighborhood arrays, where at least one of "A" and "B" has any desired whole integer value greater than "1", in a two-dimensional XY PIXEL image array oriented in "X" rows and "Y" columns and containing a plurality of discrete PIXELS in internally pipelined column-by-column order upon receipt of shift and compute command signals from a suitable command source, said processing element comprising, in combination:
-
(a) a support; (b) m latch means mounted on said support where "m" is equal to the number of PIXEL data bits located in a horizontal row in each of said AB neighborhood arrays and where said m latch means comprise m serially cascaded interconnected latches in those instances where m is greater than "1"; (c) input terminal means mounted on said support and coupled to the upstream one of said plurality of m latch means for sequentially inputting successive discrete digitally encoded PIXEL data bits in a given "X" row to said m latch means; (d) a neighborhood functional unit mounted on said support for performing preprogrammed NEIGHBORHOOD TRANSFORM processing operations, said neighborhood functional unit having 3n input terminals and an output terminal; (e) means for coupling each of said m latch means to respective ones of a first group of n of said 3n input terminals on said neighborhood functional unit; (f) means defining n first input terminals on said support for inputting n discrete bits of digitally encoded data from n north neighbors corresponding in column "Y" position to the digitally encoded data bits in each of said m latch means, said n first input terminal defining means being coupled to respective ones of a second group of n of said 3n input terminals on said neighborhood functional unit; (g) means defining n second input terminals on said support for inputting n discrete bits of digitally encoded data from n south neighbors corresponding in column "Y" position to the digitally encoded data bits in said m latch means, said n second input terminal defining means being coupled to respective ones of a third group of n of said 3n input terminals on said neighborhood functional unit; (h) means defining n first output terminals on said support and respectively coupled to said m latch means for outputting the digitally encoded PIXEL data bits stored in said m latch means to a neighboring north processing element; (i) means defining n second output terminals on said support and respectively coupled to said m latch means for outputting the digitally encoded PIXEL data bits stored in said m latch means to a neighboring south processing element; (j) means defining a command input terminal formed on said support and coupled to each of said m latch means and to said neighborhood functional unit for shifting data stored therein by one column position upon receipt of a shift command signal and for initiating a NEIGHBORHOOD TRANSFORM processing operation with respect to data on the input terminals of said neighborhood functional unit upon receipt of a compute command signal; and
,(k) an output terminal on said support coupled to said output terminal on said neighborhood functional unit for outputting digitally encoded data from said neighborhood functional unit representative of the computational result of said NEIGHBORHOOD TRANSFORM processing operation; whereby as PIXEL data bits are shifted into and through said m latch means on said processing element is successive PIXEL-by-PIXEL order, a NEIGHBORHOOD TRANSFORM processing operation is conducted on each and every PIXEL stored in a given one of said m latch means with each said PIXEL data bit being processed based upon its relation to all neighboring PIXEL data bits in said AB neighborhood.
-
-
74. A processing element for use in a vector image processing system of the type employed in processing discrete digitally encoded PIXEL data bits in a video image comprising a multiplicity of overlapping AB neighborhood arrays, where at least one of "A" and "B" has any desired whole integer value greater than "1", in a two-dimensional XY PIXEL image array oriented in "X" rows and "Y" columns and containing a plurality of discrete PIXELS in internally pipelined column-by-column order upon receipt of shift and compute command signals from a suitable command source, said processing element comprising, in combination:
-
(a) a support; (b) m latch means mounted on said support where "m" is equal to the number of PIXEL data bits located in a horizontal row in each of said AB neighborhood arrays and where said m latch means comprise m serially cascaded interconnected latches in those instances where m is greater than "1"; (c) input terminal means mounted on said support and coupled to the upstream one of said plurality of m latch means for sequentially inputting successive discrete digitally encoded PIXEL data bits in a given "X" row to said m latch means; (d) a neighborhood functional unit mounted on said support for performing preprogrammed NEIGHBORHOOD TRANSFORM processing operations, said neighborhood functional unit having 3n input terminals and an output terminal; (e) means for coupling each of said m latch means to respective ones of a first group of n of said 3n input terminals on said neighborhood functional unit; (f) means defining n first input terminals on said support for inputting n discrete bits of digitally encoded data from n north neighbors corresponding in column "Y" position to the digitally encoded data bits in each of said m latch means, said n first input terminal defining means being coupled to respective ones of a second group of n of said 3n input terminals on said neighborhood functional unit; (g) means defining n second input terminals on said support for inputting n discrete bits of digitally encoded data from n south neighbors corresponding in column "Y" position to the digitally encoded data bits in said m latch means, said n second input terminal defining means being coupled to respective ones of a third group of n of said 3n input terminals on said neighborhood functional unit; (h) means defining n first output terminals on said support and respectively coupled to said m latch means for outputting the digitally encoded PIXEL data bits stored in said m latch means to a neighboring north processing element; (i) means defining n second output terminals on said support and respectively coupled to said m latch means for outputting the digitally encoded PIXEL data bits stored in said m latch means to a neighboring south processing element; (j) means defining one of an arithmetic processing unit, a logic unit or an arithmetic logic unit on said support for performing a selected one of a preprogrammed ARITHMETIC or LOGIC TRANSFORM, said one unit having a pair of input terminals and an output terminal; (k) means for coupling two adjacent ones of said m latch means, including that latch means containing PIXEL data bits for the particular PIXEL being analyzed in each of said n processing elements, to respective ones of said pair of input terminals on said one unit; (l) means defining a command input terminal formed on said support and coupled to each of said m latch means and to said neighborhood functional unit and to said one of said arithmetic processing unit, logic unit or arithmetic logic unit for shifting data stored therein by one column position upon receipt of a shift command signal and for initiating one only of a NEIGHBORHOOD, ARITHMETIC or LOGIC TRANSFORM processing operation with respect to data on the input terminals of one only of said neighborhood functional unit or said one of said arithmetic processing unit, said logic unit or said arithmetic logic unit upon receipt of a compute command signal; and
,(m) an output terminal on said support coupled to said output terminal on said neighborhood functional unit and to said output terminal on said one of said arithmetic processing unit, said logic unit or said arithmetic logic unit for outputting digitally encoded data from one only of said units representative of the computational result of said NEIGHBORHOOD, ARITHMETIC or LOGIC TRANSFORM processing operation; whereby as PIXEL data bits are shifted into and through said m latch means on each of said n processing elements in successive PIXEL-by-PIXEL order, a NEIGHBORHOOD, ARITHMETIC or LOGIC TRANSFORM processing operation is conducted on each and every PIXEL stored in a given one of said m latch means and wherein each NEIGHBORHOOD TRANSFORM conducted with respect to each said PIXEL data bit being processed is based upon that PIXEL data bit'"'"'s relation to all neighboring PIXEL data bits in said AB neighborhood.
-
-
77. A vector image processor for use in processing digitally encoded PIXEL data bits contained within a multiplicity of two-dimensional 3×
- 3 neighborhood arrays in parallel row, internally pipelined, column-by-column order and for use with an image processing system having;
(i) a sensor for outputting a two-dimensional XY video image having a plurality of discrete PIXELS oriented in "X" rows "A", "B", "C" . . . "Xn " and "Y" columns "0", "1", "2" . . . "Yn ";
(ii) a memory for receiving data from said sensor and containing XY address locations for storage of said PIXEL data bits;
(iii) a central processing unit coupled to said sensor and said memory; and
(iv), a sequencer controlled by said central processing unit and coupled to said memory and said vector image processor for inputting data shift command signals thereto and for inputting compute command signals to said vector image processor for initiating a computational processing operation;
said vector image processor comprising, in combination;(a) a processing element having; (i) three (3) serially cascaded interconnected latches P-, P and P+; (ii) a neighborhood functional unit for performing programmed NEIGHBORHOOD TRANSFORM processing operations and having nine (9) input terminals P-, P, P+, N-, N, N+, S-, S and S+ and an output terminal; and
,(iii) means for transmitting the data contained in respective ones of said latches P-, P and P+ at any given instant of time to respective ones of said input terminals P-, P and P+ on said neighborhood functional unit; (b) a series of three (3) serially cascaded interconnected latches N-, N and N+; (c) a series of three (3) serially cascaded interconnected latches S-, S and S+; (d) means for transmitting data contained in respective ones of said latches N-, N, N+, S-, S and S+ at any given instant of time to respective ones of said input terminals N-, N, N+, S-, S and S+ on said neighborhood functional unit; (e) means for coupling said latch P- to the memory for receiving data stored in said XY address locations for a given "X" row in column-by-column pipelined order upon generation of shift command signals by the sequencer; (f) means for coupling said output terminal on said neighborhood functional unit to the memory for inputting data to the appropriate XY address locations therein for data output from a given processing operation upon generation of shift command signals by the sequencer; (g) means for transmitting data shift command signals generated by the sequencer and coupled to the memory to all of said latches and to said neighborhood functional unit for causing data contained therein to be shifted one column position for each data shift command signal; and
,(h) means for transmitting a compute command signal generated by the sequencer to said neighborhood functional unit for initiating a NEIGHBORHOOD TRANSFORM processing operation; whereby said "X" rows of data in said XY array are processed in sequential column-by-column and row-by-row order.
- 3 neighborhood arrays in parallel row, internally pipelined, column-by-column order and for use with an image processing system having;
-
78. A vector image processor for use in processing digitally encoded PIXEL data bits contained within a multiplicity of two-dimensional 3×
- 3 neighborhood arrays in parallel row, internally pipelined, column-by-column order and for use with an image processing system having;
(i) a sensor for outputting a two-dimensional XY video image having a plurality of discrete PIXELS oriented in "X" rows "A", "B", "C" . . . "Xn " and "Y" columns "0", "1", "2" . . . "Yn ";
(ii) a memory for receiving data from said sensor and containing XY address locations for storage of said PIXEL data bits;
(iii) a central processing unit coupled to said sensor and said memory; and
(iv), a sequencer controlled by said central processing unit and coupled to said memory and said vector image processor for inputting data shift command signals thereto and for inputting compute command signals to said vector image processor for initiating a computational processing operation;
said vector image processor comprising, in combination;(a) a processing element having; (i) three (3) serially cascaded interconnected latches P-, P and P+; (ii) a neighborhood functional unit for performing programmed NEIGHBORHOOD TRANSFORM processing operations and having nine (9) input terminals P-, P, P+, N-, N, N+, S-, S and S+ and an output terminal; (iii) one of an arithmetic processing unit, a logic unit or an arithmetic logic unit for performing one of programmed ARITHMETIC or LOGIC TRANSFORM processing operations and having a pair of input terminals P- and P and an output terminal; and
,(iv) means for transmitting the data contained in respective ones of said latches P-, P and P+ at any given instant of time to respective ones of said input terminals P-, P and P+ said neighborhood functional unit and to respective ones of said input terminals P- and P on said one of said arithmetic processing unit, said logic unit or said arithmetic logic unit; (b) a series of three (3) serially cascaded interconnected latches N-, N and N+; (c) a series of three (3) serially cascaded interconnected latches S-, S and S+; (d) means for transmitting data contained in respective ones of said latches N-, N, N+, S-, S and S+ at any given instant of time to respective ones of said input terminals N-, N, N+, S-, S and S+ on said neighborhood functional unit; (e) means for coupling said latch P- to the memory for receiving data stored in said XY address locations for a given "X" row in column-by-column pipelined order upon generation of shift command signals by the sequencer; (f) means for coupling said output terminals on said neighborhood functional unit and said one of said arithmetic processing unit, logic unit or arithmetic logic unit to the memory for inputting data to the appropriate XY address locations therein for data output from a given processing operation upon generation of shift command signals by the sequencer; (g) means for transmitting data shift command signals generated by the sequencer and coupled to the memory to all of said latches and to both said neighborhood functional unit and said one of said arithmetic processing unit, logic unit or arithmetic logic unit for causing data contained therein to be shifted one column position for each data shift command signal; and
,(h) means for transmitting a compute command signal generated by the sequencer to one of said neighborhood functional unit or said one of said arithmetic processing unit, said logic unit or said arithmetic logic unit for initiating one only of a NEIGHBORHOOD, ARITHMETIC or LOGIC TRANSFORM processing operation;
whereby said "X" rows of data in said XY array are processed in sequential column-by-column and row-by-row order.
- 3 neighborhood arrays in parallel row, internally pipelined, column-by-column order and for use with an image processing system having;
Specification