GB2180118A - Image processing - Google Patents

Image processing Download PDF

Info

Publication number
GB2180118A
GB2180118A GB08620701A GB8620701A GB2180118A GB 2180118 A GB2180118 A GB 2180118A GB 08620701 A GB08620701 A GB 08620701A GB 8620701 A GB8620701 A GB 8620701A GB 2180118 A GB2180118 A GB 2180118A
Authority
GB
United Kingdom
Prior art keywords
data
arithmetic
central processor
program
image
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.)
Granted
Application number
GB08620701A
Other versions
GB2180118B (en
GB8620701D0 (en
Inventor
Makoto Hosoda
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hamamatsu Photonics KK
Original Assignee
Hamamatsu Photonics KK
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hamamatsu Photonics KK filed Critical Hamamatsu Photonics KK
Publication of GB8620701D0 publication Critical patent/GB8620701D0/en
Publication of GB2180118A publication Critical patent/GB2180118A/en
Application granted granted Critical
Publication of GB2180118B publication Critical patent/GB2180118B/en
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/20Image enhancement or restoration by the use of local operators

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Image Processing (AREA)

Abstract

An image processing device for processing image data according to predetermined program comprises: an address generator (MAP) for simultaneously generating addresses corresponding to each of a central point and a plurality of individual neighbouring points of an image region; a buffer memory (CASHO-CASHn) for simultaneously receiving data on the points, and their corresponding addresses from the address generators; a central processor (CP) coupled to the address generator (MAP) and the buffer memory for comparing the neighbouring point data with the central point data; arithmetic and logic units (PU1-PUn) connected to the central processor (CP) for selectively modifying the data simultaneously for the individual points according to instructions from the central processor (CP); a data integration unit (DC) for receiving a plurality of simultaneous outputs from the arithmetic and logic units (PU1-PUn) and generating a single output based on instructions from the program; and a decision integrator (FC) for receiving a plurality of the single outputs from the data integrator and generating a coded multi-value based on instructions from the program. <IMAGE>

Description

SPECIFICATION Image processing This invention relates generally to digital image processing, and more pa rticularly to devices used for processing neighbouring parts of an imagewhich are subsequently referred to as neighbour images.
No memory IC yet has been proposed in the art which can read the neighbour images at the same time. Previouslythe method generally employed has been to store and read out data on picture elements sequentially in and from a single memory. To obtain data or neighbour images the sequential data is accumulated in a shift register, with various outputs so thatthe data from image neighbours may be obtained simultaneously.
This type of processing device using shift registers suffers from a number of difficulties. For example, the operation is fixed for one process. Therefore, it is difficu It to vary the operation for every part of an image, so that all the parts ofthe image may be processed uniformly. In addition, since the shift registers are fixed in length, it is difficult to change the configuration of the masked region. Thus, it is extremely difficu It to change the operation and the configuration of the masked region for successive picture elements based on the condition orconfiguration of a previous picture element.
Because the image data is inputted sequentially, the neighbour images to be processed cannot be shifted or accessed in random order. Also, in the case of a larger mask, it is often necessary to add hardware in orderto process the images properly.
According to the invention a neighbour image processing device comprises address generating means for simultaneously generating addresses cor- responding to each of a central point and a plurality of individual neighbour points of an image neighbourregion; buffermemorymeansforsimu- Itaneously receiving data on the points, and their corresponding addresses from said address generating means; central processor means coupled to said address generating means and said buffer memory means for comparing the neighbour point data with data on the central point of the neighbour region; arithmetic and logic means connected to said central processor means for selectively modifying the data simultaneouslyforthe individual points according to instructions from said central processor means; data integrating means for receiving a plurality of simultaneous outputs from said arithmetic and logic means and generating a single output based on instructions from the program; and decision integrating means for receiving a pluralityofthesingleout- puts from said data integration means and generating a coded multi-value based on instructions from the program.
An advantage ofthis invention is that it provides a neighbour image processing device in which the above-described difficulties accompanying a con ventional mask type processing device have been eliminated and a flexible processing operation can be carried out at high speed. It also allows random ac- cessto data on neighbour images for more efficient processing. It also increases the speed of neighbour image processing without significant added hardware.
Preferably the address generating means includes a first array of adders. It is also preferred that the data integrating means include a second array of adders.
The second array may be tree shaped.
It is preferred thatthe buffer means include a plurality of individual buffer memories, and the arithmetic and logic means include a plurality of corresponding individual arithmetic units, one arithmetic unit being connected to each of the buffer memories. Each buffer memory may comprise a high speed cache memory. In addition, each arithmetic unit may include a transistor-to-transistor logic circuit.
The central processor means may include an arithmetic and logic unit having a transistor-to-transistor circuit herein. Preferably, the device also includes memory means for storing the programs to be executed bythe processing device.
A particular example of device in accordance with this invention will now be described and contrasted with the prior art with reference to the accompanying drawings, in which: Figure 1 is a block diagram showing one example of a neighbour image processing device according to this invention; and, Figure 2 is a block diagram showing one typical example ofthe arrangement of a conventional neigh- bour image processing device.
Previously, a masktype processing device as shown in Figure 2 has been used for neighbour image processing. The conventional device has a plurality of series-connected shift registers each corresponding to one horizontal line, to which image data read out of the TV camera orthe image memory are applied.
The data is loaded in a read tap registerthrough the intermediate connected points of the shift register, and neighbour data read out in a parallel mode (Figure 2 showing the case of 3 x 3 neighbours) are applied to an arithmetic unit array orthe like. Thus, the operation is performed in the manner of a pipe line to obtain the outputs sequentially, or one by one.
The sequential outputs thus obtained are displayed astheyare, orwritten in the image memory so that they are processed later.
This invention will now be described with referpence to Figure 1.
In Figurei,anaddressarithmeticunitMAPoper- ates as follows: According to the data on the central points an image neighbour region and itsconfigur ationwhich is specified by a micro program memory MM forevery step of a program or specified by a register value stored in the address arithmetic unit MAP or a central processor CP, the address arithmetic unit MAP calculates the coordinates of a number of picture elements in the aimed region in a parallel mode, atthesametime.
In the embodiment, the address arithmetic unit MAP is an array of adders.
The buffer memories in a buffer memory section (CASHO through CASHn) are connected to the arithmetic units (CP1 through CPn) in an arithmetic unit section PU, thus forming independent buffer mem ories.
In otherwords,the buffer memories CASHO through CASHn are connected directly or closely to the center processor CP and the arithmetic units PU1 through PUn without using a bus.
These memories are high-speed cache memories, and are not memories which are coarsely connected thereto through a low-speed bus: that is, they are provided onlyforthe processor.
The addresses ofthe buffer memories CASHO through CASHn may be different from one another and are given independently and simultaneously in a parallel mode bythe address arithmetic unit MAP.
The arithmetic units PUl through PUn can read and write the image data of a number of points simultaneously in a parallel mode according to the addresses provided by the address arithmetic unit MAP.
Each ofthe arithmetic units PU1 through PUn obtains one arithmetic resultthrough arithmetic and logic operations on some ofthree inputs, and this can be accomplished by using, for instance, a TTL circuit.
The central processor CP performs a decision according to the picture element value read from the central coordinates of the neighbor region, and app lies itto the following arithmetic units PU 1 through PUn.
The central processor CP may be, for instance, an ALU (arithmetic and logic unt) utilizing TTL (transis tor4o-transistor logic) which provides one operation flag according to one input result.
It is not always necessary that the coordinates of the central point be exactly the central point in the aimed neighbor region. Since the coordinates ofthe central point are used as reference data forthe address arithmetic unit MAP to provide the addresses of the points in the aimed neighbor region, instead of the precise coordinates, the coordinates of a point inside the region or outside it may be em ployed.
Utilizing the result of decision bythe central pro cessorCP and the pictureelementvalues provided by the buffer memory section CASH, the arithmetic units PU1 through PUn carryoutthe logic and arith metic operations specified by the program simu itaneously in a parallel mode, and output the results ofthe operations at the same time.
A data integrating unit DC receives a plurality of results outputted bythe arithmetic units PU1 through PUn, and calculates a single result and out puts it. In the above-described embodiment, the data integrating unit DC may be an array of adders. Atree shaped adder, similar to the group of arithmetic units shown in Figure 2, may be used as the data integrat ing unit DC.
An integration deciding unit FC performs a logic operation by using a plurality of results outputted by the above-described data integrating unit DC, and outputs its state as a coded multi-value. The integration deciding unit FC may be made up of a pro grammabie logic array.
Aprogram sequencer PS determines the next micro-program step according to the decision code provided bythe integration deciding unit FC.
In the embodiment, a look-up table utilizing mem ories or the like is employed as the data integration deciding unit. Programs to be executed in the neighbor image processing device are stored in the program storing memory MM. The program output provided by the microprogram memory MM controls the central processor CP, the arithmetic unit section PU, the buffer memory section CASH, the data integrating circuit DC, and the data integration deciding unit FC.
One example ofthe operation ofthe neighbor image processing device thus organized will be described with reference to the removal of a small solitary point in a shaded image.
For illustration purposes, a 3 x 3 neighbor mask is considered for a point to be eliminated.
(1) If, with respect to the central point thereof, all the 8-neighbors have values higherthan a given threshold value, and the central point has a value lowerthan the threshold value, then the average of the values ofthe 8-neighbors is assignedtothecen- tral point.
(2) If all the 8-neighbors have values lowerthan the threshold value and the central point has a value higherthan the threshold value, then zero (0) is assigned to the central point.
(3) In the other cases where the values of the 8neighbors do not satisfy one of the above conditions, nothing is done. The result ofthe above-described operation is stored in the buffer memory CASHO.
The buffer memory has a source region, and a destination region.
The procedure is as described below: Step O The address arithemtic unit MAP, while producing the coordinates of all the picture elements in an aimed image region, provides, with each set of central coordinates, its neighbor coordinates.
Step 1 In response to access to one neighbor, it is determined whether or notthevalue inputted tothe central processor CP exceeesthethreshold value, and the result ofthis determination is applied to the central processor CP so as to be transmitted to the arith- metic unit section PU and the program sequencer PS. Atthe same time, the threshold value decisions are carried out in all the arithmetic units in the arithmetic unit section PU, and the results of these decisions are supplied to the deciding unit FC. According to these data, the program sequencer PS determines the next microprogram sequence Step2 According to the above-described conditions (1), (2) and (3), the average value calculated bythe data integrating unit DC through the arithmetic unitsec tion PU, the constant value "0(Zero)" provided by the data integrating unit DC, or the central point's value latched by the central processor CP is written into the corresponding destination address in the buffer memory CASHO.
Step 3 The above-described operations are carried outfor all of the picture elements, and the procedure is complete.
Now, the 3 x 3 mask process will be described.
Step O The initialization is carried out by reading thefollowing data out of the microprogram memory: (1) The weight of the mask is loaded in a register in each ofthe arithmetic units.
(2) Address generation control data are inputted to the address arithmetic unit.
(3) The deviation value from the central point's coordinate ofthe mask address produced bythe address arithmetic unit is loaded.
Step 1 All images to be processed are inputted to nine (9) buffers Othrough 8through the external input bus by by-passing the data integrating unit DC.
Step 2 The different addresses of an aimed point and its neighbors are simultaneously produced by the address arithmetic unit MAP, and the contents ofthe buffer memories are read out at the same time.
Step 3 The data thus read out are multiplied by thecorresponding mask's content, and the results are applied to the data integrating unit DC.
Step 4 The sum of these results is obtained by the data integrating unit, and written in the corresponding address in the buffer memory.
The above-described operations are repeatedly carried out for all the images.
The neighbor image processing device according to the invention is designed and operated as described above. In the conventional device described previously, different hardware is required for different processes. By contrast, in the device of the invention, high-speed processing may be performed with the same hardware. Furthermore, the device ofthe in vention has a variety of applications, and can accomplish the image processing with fewer steps than the conventional apparatus.
I. In each ofthe steps, the type of operation can be readily changed.
II. In each of the steps, the result of operation can be fed backorrecycled.
Ill. In each of the steps, the region to be processed can be changed or skipped randomly on command.
IV. In each of the steps, the outputted result of operation can be immediately accessed again.
V. Depending on the particular processing program writing method and the buffer memory method used, the processors can operate in a parallel mode, independently of one another.
In the device of the invention, the contents ofthe image data are stored in buffer memories closely coupled to the processors instead of the image memory body, and are then read out and operated at high speed by being addressed directly bythe address processor, so that the processing speed can be increased.

Claims (10)

1. A neighbor image processing device for processing image data according to a predetermined program comprising: address generating means for simultaneously generating addresses corresponding to each of a central point and a plurality of individual neighbor points of an image neighbor region; buffer memory means for simultaneously receiving data on the points, and theircorresponding addresses from said address generating means; central processor means coupled to said address generating means and said buffer memory means for comparing the neighbor point data with data on the central point ofthe neighbor region; arithmetic and logic means connected to said central processor means for selectively modifying the data simultaneouslyforthe individual points according to instructions from said central processor means;; data integration means for receiving a plurality of simultaneous outputs from said arithmetic and logic means and generating a single output based on in structionsfromthe program; and decision integrating means for receiving a plurality of the single outputs from said data integration means and generating a coded multi-value based on instructions from the program.
2. A device according to claim 1 ,wherein said address generating means includes a first array of adders.
3. A device according to claim 2, wherein said data integrating means includes a second array of adders.
4. A device according to claim 3, wherein said second array is tree shaped.
5. A device according to any of the preceding claims, wherein said buffer means includes a plurality of individual buffer memories, and said arithmetic and logic means includes a plurality of corresponding individual arithmetic units, one arithmetic unit being connected to each of said buffer memories.
6. A device according to claim 5, wherein each buffer memory comprises a high speed cache memory.
7. A device according to any of the preceding claims, wherein each arithmetic unit includes a transistor-to-transistor logic circuit.
8. A device according to any one of the preceding claims, wherein said central processor means includes an arithmetic and logic unit having a transistorto-transistor logic circuit therein.
9. A device according to any one of the preceding claims, further comprising memory means forstor- ing the program to be executed by the processing device.
10. Aneighbourimage processing devicesubstantially as described with reference to Figure 1 of the drawings.
GB8620701A 1985-08-27 1986-08-27 Image processing Expired GB2180118B (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP18758685A JPS6247785A (en) 1985-08-27 1985-08-27 Adjacent image processor

Publications (3)

Publication Number Publication Date
GB8620701D0 GB8620701D0 (en) 1986-10-08
GB2180118A true GB2180118A (en) 1987-03-18
GB2180118B GB2180118B (en) 1989-10-04

Family

ID=16208698

Family Applications (1)

Application Number Title Priority Date Filing Date
GB8620701A Expired GB2180118B (en) 1985-08-27 1986-08-27 Image processing

Country Status (2)

Country Link
JP (1) JPS6247785A (en)
GB (1) GB2180118B (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0428624A1 (en) * 1988-08-02 1991-05-29 iSight, Inc. Intelligent scan image processor
US7867086B2 (en) * 1992-05-22 2011-01-11 Sitrick David H Image integration with replaceable content

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8821276B2 (en) 1992-05-22 2014-09-02 Bassilic Technologies Llc Image integration, mapping and linking system and methodology
JP2771127B2 (en) * 1995-03-22 1998-07-02 茂次 中島 Three-dimensional multi-stage multipurpose fermenter

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS603671B2 (en) * 1976-03-27 1985-01-30 株式会社ニコン High-speed local parallel processing device for grayscale images
JPS5387123A (en) * 1977-01-11 1978-08-01 Canon Inc Information processing unit
JPS60124785A (en) * 1983-12-09 1985-07-03 Fujitsu Ltd Picture processing unit

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0428624A1 (en) * 1988-08-02 1991-05-29 iSight, Inc. Intelligent scan image processor
EP0428624A4 (en) * 1988-08-02 1993-02-03 Sorex Corporation Intelligent scan image processor
US7867086B2 (en) * 1992-05-22 2011-01-11 Sitrick David H Image integration with replaceable content

Also Published As

Publication number Publication date
JPH0435792B2 (en) 1992-06-12
GB2180118B (en) 1989-10-04
JPS6247785A (en) 1987-03-02
GB8620701D0 (en) 1986-10-08

Similar Documents

Publication Publication Date Title
US5467459A (en) Imaging and graphics processing system
US5301344A (en) Multibus sequential processor to perform in parallel a plurality of reconfigurable logic operations on a plurality of data sets
US5524223A (en) Instruction accelerator for processing loop instructions with address generator using multiple stored increment values
US4979096A (en) Multiprocessor system
US4395700A (en) Image analyzer with variable line storage
US5586281A (en) Data driven type information processing apparatus
US6208772B1 (en) Data processing system for logically adjacent data samples such as image data in a machine vision system
KR19990077230A (en) Image-Processing Processor
EP0638868A2 (en) A variable accuracy indirect addressing scheme for SIMD multi-processors and apparatus implementing same
US5136662A (en) Image processor for sequential processing of successive regions of an image
EP0150910A2 (en) Digital image frame processor
US20020147825A1 (en) Parallel bit correlator
Jonker Why linear arrays are better image processors
EP0377976A2 (en) Microcode control apparatus utilizing programmable logic array circuits
GB2180118A (en) Image processing
US4807297A (en) Neighbor image processing device
CN112396072A (en) Image classification acceleration method and device based on ASIC and VGG16
US5542080A (en) Method for controlling execution of data driven type information processor
JPH10187995A (en) Method and device for labeling area
JP2515724B2 (en) Image processing device
US7114023B2 (en) Non-sequential access pattern based address generator
JP2861435B2 (en) Pipeline type arithmetic unit
JP2536183B2 (en) Image processing method and apparatus
Simoes On multiprocessor dataflow parallel pipelined processors in image processing
JPH0863452A (en) Simd processor

Legal Events

Date Code Title Description
PCNP Patent ceased through non-payment of renewal fee

Effective date: 19960827