EP0428624A1 - Processeur d'images a balayage intelligent - Google Patents
Processeur d'images a balayage intelligentInfo
- Publication number
- EP0428624A1 EP0428624A1 EP89910797A EP89910797A EP0428624A1 EP 0428624 A1 EP0428624 A1 EP 0428624A1 EP 89910797 A EP89910797 A EP 89910797A EP 89910797 A EP89910797 A EP 89910797A EP 0428624 A1 EP0428624 A1 EP 0428624A1
- Authority
- EP
- European Patent Office
- Prior art keywords
- neighborhood
- pixel
- interest
- processing images
- pixels
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
- 238000012545 processing Methods 0.000 claims description 51
- 230000000877 morphologic effect Effects 0.000 claims description 10
- 230000003628 erosive effect Effects 0.000 claims description 3
- 230000010339 dilation Effects 0.000 claims description 2
- 230000000630 rising effect Effects 0.000 claims description 2
- 238000000034 method Methods 0.000 abstract description 20
- 230000008569 process Effects 0.000 abstract description 11
- 230000006740 morphological transformation Effects 0.000 abstract 1
- 238000010586 diagram Methods 0.000 description 9
- RTZKZFJDLAIYFH-UHFFFAOYSA-N Diethyl ether Chemical compound CCOCC RTZKZFJDLAIYFH-UHFFFAOYSA-N 0.000 description 4
- 238000003491 array Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000008571 general function Effects 0.000 description 2
- 230000000873 masking effect Effects 0.000 description 2
- 125000000205 L-threonino group Chemical group [H]OC(=O)[C@@]([H])(N([H])[*])[C@](C([H])([H])[H])([H])O[H] 0.000 description 1
- 235000001537 Ribes X gardonianum Nutrition 0.000 description 1
- 235000001535 Ribes X utile Nutrition 0.000 description 1
- 235000016919 Ribes petraeum Nutrition 0.000 description 1
- 244000281247 Ribes rubrum Species 0.000 description 1
- 235000002355 Ribes spicatum Nutrition 0.000 description 1
- ZVQOOHYFBIDMTQ-UHFFFAOYSA-N [methyl(oxido){1-[6-(trifluoromethyl)pyridin-3-yl]ethyl}-lambda(6)-sulfanylidene]cyanamide Chemical compound N#CN=S(C)(=O)C(C)C1=CC=C(C(F)(F)F)N=C1 ZVQOOHYFBIDMTQ-UHFFFAOYSA-N 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 238000012886 linear function Methods 0.000 description 1
- 239000004570 mortar (masonry) Substances 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 239000003973 paint Substances 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/30007—Arrangements for executing specific machine instructions to perform operations on data operands
- G06F9/30021—Compare instructions, e.g. Greater-Than, Equal-To, MINMAX
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/22—Arrangements for sorting or merging computer data on continuous record carriers, e.g. tape, drum, disc
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/22—Arrangements for sorting or merging computer data on continuous record carriers, e.g. tape, drum, disc
- G06F7/24—Sorting, i.e. extracting data from one or more carriers, rearranging the data in numerical or other ordered sequence, and rerecording the sorted data on the original carrier or on a different carrier or set of carriers sorting methods in general
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/20—Image enhancement or restoration using local operators
Definitions
- the field of the invention relates to the field of image processing generally end to the field cf image processing Very Large scale Integration (VLSI) architecture in particular, BACKGROUND OF THE INVENTION
- VLSI Very Large scale Integration
- Conventional image processing systems acquire images from 'th image acquisition unit, such as a camera, which producer each image in a rastar-scan format, i.e. the pixels of au image are transmitted to the image processing units beginning from the top left corner and proceeding across each line until reaching the bottom right corner.
- the video signal thus produced is typically forwarded to a pipeline of preprocessors .
- preprocessors typically consisting of linear neighborhood processors such as convolvers, non-linear neighborhood processors and other processors , such as histogram transformers or Fast Fourier Transformerr .
- the preprocessors typically generate their output in & raster-mean format so that one preprocessor can directly feed into the next one.
- a novel non-raster scanning method, modelled on the human visual system, has been developed which selectively acquires and processor the data pertaining to specific areas of interest in the image, as defined according ts predetermined enteric.
- the non-raster scanning method it disclosed in applicants contnding unpublished israel Patent Application 7948 common owned by the common owners of the present scanning method.
- An ares of interest is the image in identified through processing on a low resolution version of the image, typically utilising one-sixty fourth of the pixels in the image, and the random access image sensor is instructed to acquirs the remaining pixels in the area of interest at higher resolution levels .
- the random access image sensor is disclosed in applicant' s copending unpublished Isrmal Patent Application 83213 , which is incorporated herein by reference.
- U.S. Patent 4,601 ,055 discloses a low-level image processor with many internal stages.
- An input stream of pixels typically comprises an entirety of an image although regions of interest can be defined externally using 1 bitsmap.
- U.S. Patent 4,541,116 discloses a neighborhood transform stage for implementing filter operations. The value of each pixel but the central one in 6 square of nine pixels is compared with the central pixel. This operation uses tight comparators and the result is used to form a vector to address the appropriate element in a programmable lookup table . The value of the central pixel is maintained or transformed to that at one of the other pixels in the square depending on the value of the appropriate element in the programmable lookup table.
- the neighborhood trans form stage is typically used for filtering.
- U.S. Patent 4,718,101 discloses segmentation apparatus suitable for recognising a pattern in an image , for labelling each pattern , for detecting the area at each label , for calculating top or vertex coordinates and for determining nesting relationships between patterns.
- U.S. Patent 4 ,417 , 685 discloses image analyzing apparatus which employs techniques of integral geometry to classify patterns in 2- and 3-dimansional raster-scanned images where 3-dimensional images refer to multi -valued images and 2-dimensional images refer to binary-valued images . For 3-dimensional images, the apparatus selects the maximum value associated with each 5 x 3 neighborhood in the image. The values of the 3 x 3 neighborhood are typically modified by neighborhood contribution circuitry.
- the present invention seeks to provide an image processing architecture for processing images acquired with via non-raster scanning means .
- an apparatus for processing images acquired as a plurality of areas of interest end comprising apparatus for defining a neighborhood for each pixel in each of the plurality of areas of interest and image processing apparatus which uses a neighborhood generated by the apparatus for defining a neighborhood.
- an apparatus for processing images which comprises apparatus for defining a neighborhood of each incoming pixel and apparatus for image processing including apparatus for producing the maximum, minimum and median values of the neighborhood.
- the apparatus for defining a neighborhood includes apparatus for padding the : neighborhood of incoming pixels defined as belonging to the border of one of the areas of interest.
- the apparatus for defining a neighborhood produces a portion of the neighborhood of a pixel and the apparatus for image processing reconstructs the complete neighborhood from the portion of the neighborhood and from its own storage apparatus.
- the portion of the neighborhood is the North, Center and South pixels of a neighborhood of on incoming pixel.
- the apparatus for producing comprises seven three element mortars .
- the image processing apparatus includes a morphological operator.
- the morphological operator may determine the maximum, medium and minimum values of the pixel values of the neighborhood. It additionally may perform in extended neighborhood transfers which can be erosion or dilation n other suitable transform.
- the areas of interest may be square or non-square shapes.
- a sorting network for producing the maximum median and minimum values of nine input elements .
- the network comprises seven three element sorters.
- Fig. 1 is a block diagram illustration of a system which incoporates the area of interest image processor of the present invention.
- Fig. 2 is a block diagram illustration of the basic unite of the area of interest image processor of the present invention
- Figs . 3A and 3B are pictorial illustrations of two scan methodologies.
- Fig. 4A is a pictorial illustration of an image with two areas of interest
- Fig. 4B is an illustration of the interfacing signals resulting from the image of Fig. 4A.
- Fig. 5 is a block diagram illustration of a neighborhood generator useful in the area of interest image
- Fig. 6 is an illustration of a finite state machine logic useful in a data output server of the neighborhood generator of Fig. 5.
- Fig. 7 is a pictorial illustration of the operation of & processing unit of the area of interest image processor of Fig. 2.
- Fig. 8 is a block diagram illustration of a processing unit useful for the area of interest image processor of Fig. 2.
- Figs . 9A - 90 are block diagram illustrations of elements of a sorter useful in the processing unit of Fig. 8.
- Fig. 10 is a block diagram illustration of an extended neighborhood transfort block useful in the processing unit of
- Fig. 11 is a simpli fied block diagr am of a neighborhood generator useful in the area of interest processor of Fig. 2.
- Fig. 1 illustrates an image processing system utilizing an area of interest image acquisition method.
- the system comprises an image content responsive image acquisition unit 10, such as a photodiode array camera with a random access image ; sensor 11 as described in the previously mentioned Isrm al Patent Application 83213, to acquire analog pixel intensities of a current area cf interest in the image, where the current area of interest is typically defined by a system user.
- An A/D converter 12 converts the analog pixel intensities to digital values and a plurality of Area of Interest Image processors (AllP) 14 , such as convolvers or morphological and other non-linear operators , process the data acquired by the image acquisition unit 10.
- AllP Area of Interest Image processors
- the system additionally comprises an image content responsive scan controller 16 to analyze the data, select a new area of interest and output the relevant coordinates of the new area of interest to the image acquisition unit 10 which than acquires the analog pixel intensity values of the new area of interest,
- the coordinate information denoted "control" in Fig. 1, ia additionally passed from the image acquisition unit 10 to the first AIIP 14.
- Algorithmic blocks 18 and 20 respectively, receive the processed data free the plurality of AIIPs 14 and Additionally process the date, typically creating a new definition of the area of interest.
- Fig. 2 illustrates the major elements and the input and output signals of an AIIP 14.
- Each AIIP 14 preferably comprises a neighborhood generator 22 and a processing unit 25 typically comprising a neighborhood operator 24 and an extended neighborhood transform block 26.
- the neighborhood generator 22 receives as input a signal P in which contains the digital pixel intensities of the entirety of pixels within an area of interest, a signal X in which contains the x-coordinate of each pixel , and control information for each pixel as described hereinbelow.
- the neighborhood generator 22 For each input pixel , the neighborhood generator 22 generates a neighborhood , typically of nine pixels , where the current input pixel is the center pixel of the neighborhood , typically for use by the neighborhood operator 24 of processing unit 23.
- the neighborhood generator 24 additionally produces control information and the x -coordinate of the pixel, denoted X out , for use by other processors which may succeed AlIP 14 in processing the image data.
- the neighborhood generator 22 also detects the border pixels of each eres, of interest and provides the appropriate padding to fill the invalid components of the neighborhood , in accordance wit h process parameters initially downloaded into it.
- the neighborhood operator 24 is typically % 3 x 3 mor phological operator, although other 3 x 3 operators , such as convolvers or non-linear operators . are also possible.
- the neighborhood operator 24 produces the result a of the morphological operation and typically a modified copy of the intensity of the center pixel , P in for use by the extended nei ghborhood transport block 26,
- the neighborhood operator. 24 performs two-dimensional linear functions, such as convolutions. These operations typically do not preserve the characteristics of the area of interest; however , they produce information useful in the processing of an image .
- the extended neighborhood transfers is typically obtained in the extended neighborhood transfers block 26 by performing a general function , f , on some combination of the inputs from the neighborhood operator 22, P in and 0, and external dats , such as a constant value or the value of a related pixel from a second image .
- the general function f can be addition, subtraction, identification of the maximum or the minimum, or a threshold operation.
- the output of block 26 which is the output of the processing unit 23, is the signal P out which contains the transtformed intensity values of the pixels of the area of internet.
- extended neighborhood transfers block 26 it not included in processing unit 22.
- the processing unit 23 produces the outputs of neighborhood operator 22, P in and G.
- Eash AIIP 14 is typically built on a single VLSI chip typically designed as two functional, units , the neighborhood generator 23 and the processing unit 23.
- the abovementioned configuration would require 72 interconnecting wires to transmit the nine 6-bit intensity values of the neighborhood free the neighborhood generator 22 and the processing unit 28 .
- a novel seness of providing only a third of the neighborhood intensities to the processing unit 23 at one time reduces the number of interconnecting wires while requiring very little additional hardware
- each AIIP 14 is sent to the image content respons ive scan controller 16.
- a preferred embodiment of the image content responsive scan controller 16 typically initially analyzes a low resolution version of the image and identifies areas of interest in it.
- the controller 16 instructs the image acquisition unit 10 to acquire the intensities of the pixels of the areas of interest at the next highest resolution , where a higher resolution indicates that the chosen pixels are closer to each other.
- the data from the areas of interest are processed by the AIIPs 14 and the controller 16 analyses the results to identify areas within the areas of interest which require still further resolution to fully define them. The process repeats itself until fill sections of the image are acquired it the highest resolution necessary ,
- the output of the controller 16 is a stream of pixel coordinates in the areas of interest typically organized as followa and according to Fig . 3A. Since an area of interact is rarely square or rectangular, it may first be made rectangular by adding additional pixels . This it done to simplify the organiza tion of the data . Subsequently , the areas of interest in the image are scanned where the scanning methodology utilises the fact that the image sensor 11 described in previously mentions Isrmal Patent Application 83213 internally obtains the intensity values pertaining to the entirety of pixels in a certain row and only afterwards executes the x coordinate selection. Thus, the scanning is typically performed as shown in Fig. 3A.
- An alternative embodiment of the scanning methodology scans the areas of interest in order, each area is scanned from left to right and from top down, as shown in Fig, 3B.
- each arrow in Fig. 3A corresponds to a sequential access to pixels of a given area of interest that share the same y coordinate. Since the pixels thus marked can be accessed sequentially with no interruptions, they constitute an xburat.
- the dashed lines correspond to breaks in the date flow for acquiring the areas of interest and it will be appreciated that the breaks should be skipped as fast as possible in order to maintain system performance. Breaks occuring in the same row are denoted xbreaks and breaks occurring between rows are denoted ybreaks.
- An xbreak may typically cause a date time equivalent to the access time of at most two pixela l
- a ybreak may typically cause a date time equivalent to the access time of at most ten pixels.
- set of interfacing signals a described hereinbelow are received by the neighborhood generator 22 - from the image acquisition unit 1C, Any other similar not of control signals which indicate to the neighborhood generator 22, for each incoming pixel , its coordinates in the image and its location in the area of interest, can be used .
- the preferred set of interfacing signals to the neighborhood generator 22 typically is.
- Absolute coordinates refer to the location of the pixel in the image .
- LV A line valid signal which allows , when active , a set of 'xbursts to occur.
- the riming edge of the signal marks the end of a scanning row and the filling edge marks the Beginning of the next.
- xs , xe Signals to indicate the beginning and end of in xburst, xs becomes active during one pixel time (i.e. the time requited to acquire one pixel) to indicate the start of an xburst. xe becomes active during one pixel time to indicate the end of en xburst. The pixel arriving at the same time that xs it mesurted it called the leftmost edge and the one that arrives with xs it called the rightmost edge . Typically , xs and xe are required act to become active at the same time .
- F Indicates a valid image framo .
- the rising edge of the signal indicates the and of a first image and the falling edge marks the beginning of a second image.
- ys ,ye Signals to indicate the topmost and bottomost pixels of an area of interest. If ye is active , all pixels received are topmost pixels. If ye is active, the pixels received are bottomost pixels . If neither is active, then an internal pixel is being received. It is typically required that ye and ye not become active at the same time .
- Fig . 4A The bullets in Fig . 4A indicate the pixels being scanned. Across the top of Fig. 4A is an indication of the x coordinate; it should be noted that the leftmost area ef interest is located between x coordinates 21 and 33 and the rightmost area of interest it. located between x coordinates 101 and 105 , The y coordinates are not marked as they are not necessary. lt should also be noted that xbursts are numbered in the order that they are scanned.
- the neighborhood generator 22 typically receives the abovementioned input signals from controller 16, via image acquisition, unit 10, and utilises them to generate the neighborhood of the pixel (x,y) whose intensity is P in . Since the neighborhood generator 22 produces as output only three pixels of the neighborhood of a pixel (x, y) as any instant (i.e . a North, a
- each pixel (x ,y) it a potential element of threr neighborhoods as the topmost, the central and the bottom ost pixel
- the neighborhood generator 22 stores each pixel (x,y) in three separate locations in order to properly generate the three neighborhoods to which each pixel (x,y) belongs
- the neighborhood operator 24 must be organized such that the pixels thus transmitted can be used as the rightmost column , the central column and the lef tmost column of thres consecutive neighborhoods .
- the neighborhood generator 22 must add a dummy pixel to the right of a finishing xburst and to the left of a beginning xburst, a process known as padding, to ensure that the entirety of pixels in the area of interest can be utilised in the processing. This addition of two extra pixels between xbursts costs the sys tem two pixels of dead time.
- An alternative embodiment of the padding which reduces the dead time between pixels , comprises an additional output signal, denoted edge , which becomes active whenever an xburst starts and one clock after it ends.
- edge an additional output signal, denoted edge , which becomes active whenever an xburst starts and one clock after it ends.
- the dead time is reduced to one pixel time.
- FIG. 5 illustrates , in block diagram form, the architecture of the neighborhood generator 22 comprising a date input system 30 for organizing the flok of input information, a FIFO 32 for storing the incoming pixels in en organized manner , and a data output server 34 for reading the date free the FIFO 32 and for generating the properly padded neighborhood and the output control signals .
- a controller 36 control, the operation it the data input system 30 and the data output server 34.
- the neighborhood g enerator 22 receives , for each pixel
- the interface signals . xs in , xe in in ys in , ye in , LV in , and FV in , as wall as the x coordinate x in and the intensity P in of the incoming pixel . It produces , for each pixel (xfy) , the interface signals xs out , xe out , ys out , ye out ,LV out , and PV out , and the north, center, south and edge signals .
- the data input system 30 directs the input data to the appropriate locations within the neighborhood generator 22 for storage or for computations .
- the FIFO 32 is organized in 5 column arrays 8, C, N, X, and 7 corresponding, respectively, to south pixels , center pixels, north pixels, x coordinate values , and 3-bit interface tags described in detail hereinbelow .
- the arrays are typically filled by the data input system 30 to ensure that the output information for a given pixel (x,y) is located at the same location in each array, A head pointer h paints to the currant available location and is increased by one every time a pixel intensity is entered into the FIFO 32.
- the 3-bit. tag is typically included to pass the informatio n of the location of the pixel in the area of interest on to ether succeeding processors. It is generated according to the following table where xborder indicates eithhr xs or xe and yborder indicated either ys or ye .
- the current intensity p in of pixel (x,y) is stored in FIFO 32 at C[h] as indicated by pointer A. It is additionally stored in the proper locations in FIFO 32 to become the south neighbor of the pixel in the line above it end the north neighbor for the pixel below it. Accordingly , the value of h for the X in pixel of the previous line it stored in the X in location of a line pointer column array, L_Pointer , of a two column array RAM
- P in is also stored in the X in location of a previous pixel column erray , L_Pixel, of the RAM 38. However , before it is stored in that location , the value previously stored there 10 copied into N[h] . Ones the operations described hereinabove are performed . h is increased by one and the process repeats itself.
- a topmost border pixel has no north neighbor and is not 6 south neighbor for any ether pixel and thus , the pixel intensity P in is not stored in column 8 and no pixel intensity value is copied from column L_Pixel to column N. However, P in is stored in columns O and L_Pixel , its x coordinate is stored in column X and its tag is stored in column TAG.
- a bottomost border pixel has a north neighbor for which it is a south neighbor. To simplify the storing logic, the entirety of operations described for an internal pixel occur for the bottomost border pixel; P in is placed at C[h] , the intensity of its north neighbor is taken from the appropriate location in
- L_Pixel and P in is stored at the appropriate location to be a south neighbor.
- P in is also placed in the appropriate location in L_Pixel to be a north neighbor for a pixel of the following line , although no pixels will enter the FIFO 32 which will utilize the value stored in L_Pixel .
- the appropriate tag value is stored and the location b is increased by 1.
- the neighborhood generator 22 also comprises a process
- the two options are duplicate padding and constant, or register , padding.
- constant padding a constant stored in a special register is used as the padding value.
- Typical values of the constant are the values of white or black.
- Duplicate padding consists of using the value of the border pixel as the value of the padded pixel .
- a programmable delay block 44 is typically incorporated to implement a programmable delay on the output interface signals, xs ou , xs out , ys out , ys out , LV out , TV out and X out
- xs ou , xs out , ys out , ys out , LV out , TV out and X out are accomodated.
- Fig. 6 shows the embodiment of the finite state machine incorporated into the controller 36, Fig. 6 will be better understood with the following definitions of the input signals to the finite stats machine.
- Xbordes Active when Tag[t] i. g. the value of column Tag at the address indicated by pointer t
- the odd xborders are typically considered as xs and the even xborders are typically considered as xs.
- the signal is defined according to the following condition.
- Stored_Liner is a variable indicating the number of lines presently stored in FIFO 32 and Last_X is a variable indicating the previous x location.
- Stored_Lines and Last _X are calculated by controller 36 and are used in the program of Annax A.
- cap Causes the insertion of a gap, as defined in the process parameters register 40, with the appropriate padding before an xburst starts and after it finishes .
- the finite state machine produces the following output signals.
- g x,y and the extended neighborhood transform block 26 performs a subtration between g x,y and a x,y producing the output intensi ty a x,y .
- the fourth type of operation is topically performed between a senc eant K and at least one of the abovementioned input, to the extended neighborhood transform block 26 , specifically, at least one of the pixel intensities a x,y , b x,y or the output of the neighborhood operator 24 a x,y .
- a typical operation is a threshold operation.
- Neighborhood operator 24 typically comprises an input register so for receiving, at each clock, one three element column of a neighborhood and for producing, at each clock, a nine element neighborhood , a mask register 32 for storing a nine element mask, a mask 34 for performing a masking operation to produce a difntion or erosion operation on the nine element neighborhood, or, alternatively , to perform a linear convolution, and a sorter 36 to find the maximum, minimum and median values of the masked nine elements of the neighborhood and to produce one of the maximum, minimum or median values as the result g x ,y .
- the extended neighborhood transform block 25 has four input ports , receiving the input pixel intensity a x,y , the output r x, y of the neighborhood operator 24 , the pixel intensity value b x, y , and the constant value K .
- the result of block 26, and or the preceding unit 25 is the value r x, y .
- the type of operation performed by block 26 and the inputs to be used for i t are indicated to the block 26 by a system operator.
- the input register 30 is comprised of any suitable hardware which accepts a three element column as input, stores it and produces it three times on output, as the rightmost, center and leftmost column of three neighborhoods. Additionally, the hardware must respond to edge information indicating the edge of an area of interest such that edge columns or columns next to edge columns are used for output only once or twice , respectively.
- the masker 34 is composed of suitable hardware to perform a mesking operation.
- the mask stored in mask register 32 , typically comprises nine 8-bit elements whose values are either 1 or 0 where only the lowest significant bit is utilized for the masking operation. The remaining bits are included so that, in the alternate embodiment where masker 34 performs a linear convolution, the mask register 32 need not change.
- Masker 34 operates as follows, for each mask element whose lowest significant bit is 1 , masker 34 passes the pixel intensity value on which the mask element operates to the sorter 36 unchanged.
- Fig. 9A illustrates , in block diagram form, the sorter 36 which identifies the maximum, minimum and median of the nine masked pixel values received from masker 34.
- Sorter 36 is typically comprised of 7 minimum-maximum - median (M 3 ) sorters 60 each of which finds the minimum, maximum and median of three input signals .
- Fig. 9B illustrates the operation of an individual M 3 sorter 60.
- Three masked pixel intensity values , p , q and r, are sorted by three max-min sorters 65 , into the maximum, median and mini mum values as follows , it will be appreciated that the signals are positive.
- Max-min sorter 62a receives masked Pixel values p and q and produces the larger value as value' s and the smaller value as value t.
- Values t and r are compared by max-min sorter 63b, the larger one is produced as value u and the smaller, which is the smallest value of the three masked pixel values , is produced, on output, as the minimum value.
- the two larger values s and u are compared by max-min sorter 62c , the larger value is produced as the maximum value of ths three input signals p, q and r and the smaller value is produced as ths median value.
- Fig. 90 illustrates the elements of ths max-min sorters 6B.
- Each max-min sorter 62 is comprised of a subtrac tor 64 and a multiplexer 66.
- the subtractor 64 produces the signal k , the substration of w from v. If a is positive , the multiplexer 66 produces v as the maximum value and w as the minimum value . If x is negative , the multiplexer 66 produces v. as the minimum value and w as the maximum value, t x ,y o f the neighborhood operator 24 , and a constant K, and performs between two of the inputs a two-element operation, such as addition, subtraction, calculation of the maximum or minimum, or a threshold operation.
- Block 26 typically comprises four selectors 70 and an adder/subtractor 72. Selectors 70a and 70b select the two input values in accordance with the values of two input select signals.
- selector 70a selects one of g x, y , a x, y or b x, y and selector 70b selects between K end b x, y .
- the output of selectors 70a and 70b is sent to adder/subtractor 72 and to selector 70c.
- selectors 70a and 70b pass the selected values to adder/subtractor 72 and its output is selected by selector 70d.
- selector 70b is not operative.
- y adder /sub tree tor 72 receives the selected signal and the threshold value k via selectors 70a and 70b respectively .
- the borrow signal of adder/subtractor 72 is utilised to control selector 70a to pass either a 1 , a 0, or any other desirable val ⁇ e, to the output via selector 70d.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Image Processing (AREA)
Abstract
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
IL87310 | 1988-08-02 | ||
IL87310A IL87310A (en) | 1988-08-02 | 1988-08-02 | Intelligent scan image processor |
IL91125 | 1989-07-26 | ||
IL91125A IL91125A0 (en) | 1989-07-26 | 1989-07-26 | Apparatus for processing images |
Publications (2)
Publication Number | Publication Date |
---|---|
EP0428624A1 true EP0428624A1 (fr) | 1991-05-29 |
EP0428624A4 EP0428624A4 (en) | 1993-02-03 |
Family
ID=26321831
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP19890910797 Withdrawn EP0428624A4 (en) | 1988-08-02 | 1989-08-02 | Intelligent scan image processor |
Country Status (2)
Country | Link |
---|---|
EP (1) | EP0428624A4 (fr) |
WO (1) | WO1990001750A1 (fr) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5771312A (en) * | 1996-07-01 | 1998-06-23 | Ramot University Authority For Applied Research & Industrial Development Ltd. | Method for automatic partial white balance correction |
US8321490B2 (en) | 2005-07-28 | 2012-11-27 | Analog Devices, Inc. | Instruction-based parallel median filtering |
US20070027944A1 (en) * | 2005-07-28 | 2007-02-01 | James Wilson | Instruction based parallel median filtering processor and method |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4395700A (en) * | 1980-08-15 | 1983-07-26 | Environmental Research Institute Of Michigan | Image analyzer with variable line storage |
GB2180118A (en) * | 1985-08-27 | 1987-03-18 | Hamamatsu Photonics Kk | Image processing |
SU1305715A1 (ru) * | 1985-11-19 | 1987-04-23 | Ленинградский Институт Точной Механики И Оптики | Устройство дл определени медианы |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3322705A1 (de) * | 1983-06-24 | 1985-01-10 | Fa. Carl Zeiss, 7920 Heidenheim | Verfahren und schaltungsanordnung zur videoschnellen bestimmung des medianwertes eines auswertefensters |
US4665554A (en) * | 1983-07-13 | 1987-05-12 | Machine Vision International Corporation | Apparatus and method for implementing dilation and erosion transformations in digital image processing |
US4541116A (en) * | 1984-02-27 | 1985-09-10 | Environmental Research Institute Of Mi | Neighborhood image processing stage for implementing filtering operations |
US4821333A (en) * | 1986-08-22 | 1989-04-11 | Environmental Research Inst. Of Michigan | Machine learning procedures for generating image domain feature detector structuring elements |
US4797806A (en) * | 1987-02-19 | 1989-01-10 | Gtx Corporation | High speed serial pixel neighborhood processor and method |
-
1989
- 1989-08-02 WO PCT/US1989/003347 patent/WO1990001750A1/fr not_active Application Discontinuation
- 1989-08-02 EP EP19890910797 patent/EP0428624A4/en not_active Withdrawn
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4395700A (en) * | 1980-08-15 | 1983-07-26 | Environmental Research Institute Of Michigan | Image analyzer with variable line storage |
GB2180118A (en) * | 1985-08-27 | 1987-03-18 | Hamamatsu Photonics Kk | Image processing |
SU1305715A1 (ru) * | 1985-11-19 | 1987-04-23 | Ленинградский Институт Точной Механики И Оптики | Устройство дл определени медианы |
Non-Patent Citations (2)
Title |
---|
DATABASE WPIL Section EI, Week 8747, Derwent Publications Ltd., London, GB; Class T01, AN 87-334034 & SU-A-1 305 715 (LENINGRAD PREC MECH OPTI) * |
See also references of WO9001750A1 * |
Also Published As
Publication number | Publication date |
---|---|
EP0428624A4 (en) | 1993-02-03 |
WO1990001750A1 (fr) | 1990-02-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0279297B1 (fr) | Contours de modèle en traitement d'image | |
US5321510A (en) | Serial video processor | |
US5657403A (en) | Vision coprocessing | |
US4949390A (en) | Interconnect verification using serial neighborhood processors | |
US4648119A (en) | Method and apparatus for forming 3×3 pixel arrays and for performing programmable pattern contingent modifications of those arrays | |
EP0154449B1 (fr) | Système d'amincissement de caractères en temps réel | |
CA2123976A1 (fr) | Circuits de traitement d'images numeriques | |
US4939575A (en) | Fault-tolerant serial video processor device | |
US5058181A (en) | Hardware and software image processing system | |
JPS61112284A (ja) | グレイスケ−ルイメ−ジ処理における拡大および浸食変形を実施するための方法および装置 | |
US4805226A (en) | Image processing apparatus | |
KR970007011B1 (ko) | 직렬 비디오 프로세서와 고장 허용성 직렬 비디오 프로세서 장치 및 프로세스 방법 | |
EP0428624A1 (fr) | Processeur d'images a balayage intelligent | |
EP0457547B1 (fr) | Dispositif et procédé de reconnaissance d'information | |
JPS6337481A (ja) | グレイスケ−ル画像処理において変換を行なうための装置及び方法 | |
JP3007392B2 (ja) | パターン認識方法及びその装置 | |
EP0585861A2 (fr) | Méthode de vérification d'images | |
EP0356463A1 (fr) | Verification d'interconnexions au moyen de processeurs seriels d'environs | |
EP0380090A2 (fr) | Système de traitement d'image | |
JPS62108381A (ja) | 濃度ヒストグラム検出装置 | |
Eshaghian et al. | The systolic reconfigurable mesh | |
JP2658346B2 (ja) | 並列画像処理装置 | |
JPH05500282A (ja) | インテリジェント走査影像プロセッサ | |
JPS63128484A (ja) | 画像処理装置 | |
JPS63254578A (ja) | パタ−ン認識装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
17P | Request for examination filed |
Effective date: 19910129 |
|
AK | Designated contracting states |
Kind code of ref document: A1 Designated state(s): AT BE CH DE FR GB IT LI LU NL SE |
|
RAP1 | Party data changed (applicant data changed or rights of an application transferred) |
Owner name: ISIGHT, INC. |
|
A4 | Supplementary search report drawn up and despatched | ||
AK | Designated contracting states |
Kind code of ref document: A4 Designated state(s): AT BE CH DE FR GB IT LI LU NL SE |
|
RBV | Designated contracting states (corrected) |
Designated state(s): CH DE FR GB LI NL |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE APPLICATION HAS BEEN WITHDRAWN |
|
18W | Application withdrawn |
Withdrawal date: 19930422 |