JPH10304184A - Image processor and image processing method - Google Patents

Image processor and image processing method

Info

Publication number
JPH10304184A
JPH10304184A JP9114603A JP11460397A JPH10304184A JP H10304184 A JPH10304184 A JP H10304184A JP 9114603 A JP9114603 A JP 9114603A JP 11460397 A JP11460397 A JP 11460397A JP H10304184 A JPH10304184 A JP H10304184A
Authority
JP
Japan
Prior art keywords
image
processing
image processing
unit
divided
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.)
Pending
Application number
JP9114603A
Other languages
Japanese (ja)
Inventor
Takashi Nagao
隆 長尾
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.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
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 Fuji Xerox Co Ltd filed Critical Fuji Xerox Co Ltd
Priority to JP9114603A priority Critical patent/JPH10304184A/en
Publication of JPH10304184A publication Critical patent/JPH10304184A/en
Pending legal-status Critical Current

Links

Landscapes

  • Image Processing (AREA)
  • Storing Facsimile Image Data (AREA)
  • Editing Of Facsimile Originals (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide an image processor which can perform both image processings that can be performed independently by partial areas and an image processing requires a wide reference area through parallel processing at a high speed in arbitrary order. SOLUTION: Divided area data of image data are inputted to divisional input means 2 and image processes that can be performed independently by the divided areas are performed for the inputted divided area data through pipeline processing 3; and the process results of the pipeline processing 3 are integrated. Further, the image process which requires a wide reference area is performed by image processing means 5, whose processing results are integrated. Those different image processings are performed in arbitrary order to achieve fast image processing.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、デジタル化された
画像を処理する装置に係り、並列処理により画像を高速
に処理することが可能な画像処理装置および画像処理方
法に関する。特に、分割画像データた毎に独立可能な処
理と、広い参照領域を要する処理とを区別し、それぞれ
の処理の効率を高めた画像処理装置および画像処理方法
に関する。
The present invention relates to an apparatus for processing a digitized image, and more particularly to an image processing apparatus and an image processing method capable of processing an image at high speed by parallel processing. In particular, the present invention relates to an image processing apparatus and an image processing method in which a process that can be independent for each divided image data and a process that requires a wide reference area are distinguished to increase the efficiency of each process.

【0002】[0002]

【従来の技術】画像処理装置や画像を入力可能なDTP
(デスクトップ・パブリッシング)システム、画像を出
力可能なプリントシステムなどでは、大容量の画像に対
して拡大・縮小、回転、アフィン変換、フィルタ、色変
換などの各種の画像処理が行われる。これらの画像処理
は、その負荷が非常に大きく、さらに動画像処理などで
はリアルタイム性が要求されるため、これらの処理をい
かに高速に行うかに対して様々な手法が提案されてい
る。
2. Description of the Related Art An image processing apparatus and a DTP capable of inputting an image
In a (desktop publishing) system, a print system capable of outputting images, and the like, various image processes such as enlargement / reduction, rotation, affine transformation, filters, and color conversion are performed on large-capacity images. Since the load of these image processings is extremely large, and real-time processing is required for moving image processing, various methods have been proposed for how to perform these processings at high speed.

【0003】一般に、画像処理は多くの対象に同じ処理
を繰り返すものが多い。このような処理に特に効果が高
い手法の一つとして、複数のプロセッサや処理ハードウ
エアを持ち、画像を複数の部分領域に分割して並列パイ
プライン処理を行う方法がある。
In general, image processing often involves repeating the same processing for many objects. As one of the techniques particularly effective for such processing, there is a method that has a plurality of processors and processing hardware, divides an image into a plurality of partial regions, and performs parallel pipeline processing.

【0004】図2は、そのような並列パイプライン処理
システムの一例である。図2は特開平5−219390
号公報に述べられているものであり、スキャナから入力
された画像データはスプリッターにより各行毎に同じ画
素数のN個の領域に分割され、各々がスレッシュホルダ
ー#1〜#Nにより2値化処理され、さらに圧縮器#1
〜#Nにより圧縮され、合成器で統合されて出力され
る。尚、スレッシュホルダーでは近傍画素の平均値と注
目画素とから出力を決定する周辺参照型の2値化処理を
行っており、そのためスプリッターは、2値化に必要な
周辺領域の幅分だけ画素をオーバーラップさせて分割す
ることが記載されている。
FIG. 2 is an example of such a parallel pipeline processing system. FIG. 2 is Japanese Patent Application Laid-Open No. 5-219390.
The image data input from the scanner is divided into N regions having the same number of pixels for each row by a splitter, and each is binarized by threshold holders # 1 to #N. And compressor # 1
## N, integrated by the synthesizer, and output. Note that the thresholder performs a peripheral reference type binarization process that determines an output from the average value of the neighboring pixels and the pixel of interest. Therefore, the splitter removes pixels by the width of the peripheral region necessary for binarization. It is described that division is performed by overlapping.

【0005】この構成は、画像がN個の領域に分割され
て各々が独立に処理されるため、N倍に近い高速化が期
待できるが、例えばアフィン変換やヒストグラム均等化
などのように、参照範囲が広いため部分領域毎に独立処
理できないものには適用できないという欠点がある。そ
こで、このような参照範囲の広いものも含めて処理を行
える手法として、特開平3−48979号公報や特開平
6−52296号公報に述べられた手法が提案されてい
る。
In this configuration, since an image is divided into N regions and each is processed independently, a speedup close to N times can be expected. However, for example, a reference such as an affine transformation or a histogram equalization is used. There is a drawback that the method cannot be applied to an object that cannot be processed independently for each partial area because of a wide range. Therefore, as a method capable of performing processing including those having a wide reference range, the methods described in JP-A-3-48979 and JP-A-6-52296 have been proposed.

【0006】図3は、特開平3−48979号公報に述
べられた構成を説明するものである。画像は入力データ
バスから複数存在する画像処理モジュールに分割されて
入力され、画像処理モジュール中の入力メモリに蓄積さ
れて演算部で処理され、出力メモリに蓄積される。この
処理結果は出力データバスを経由して入力データバスに
戻され、画像処理モジュールの1つで全画像の濃度統計
データ算出など全画像を参照する処理が行われ、それら
のデータを元に2値化レベルなど次の処理に必要なパラ
メータが求められて各画像処理モジュールの入力メモリ
に分配される。その後に、各画像処理モジュールは、先
の2値化レベルなどのパラメータに従って入力メモリに
格納された部分画像データを処理する。
FIG. 3 illustrates the configuration described in Japanese Patent Application Laid-Open No. 3-48979. The image is divided from the input data bus to a plurality of existing image processing modules, input, stored in an input memory in the image processing module, processed by the arithmetic unit, and stored in an output memory. This processing result is returned to the input data bus via the output data bus, and processing for referring to all images, such as calculation of density statistical data for all images, is performed by one of the image processing modules. Parameters necessary for the next processing, such as a binarization level, are obtained and distributed to the input memory of each image processing module. Thereafter, each image processing module processes the partial image data stored in the input memory according to the parameters such as the binarization level.

【0007】この構成では、先の特開平5−21939
0号公報に記載された構成ではできなかった広い参照領
域を要する処理を可能となるように構成することができ
る。しかしながら、広い参照領域を要する処理について
は1つの画像処理モジュールで実行するため速度が遅
く、さらに処理毎に結果画像を出力メモリ側から入力メ
モリ側に転送する必要があるため、複数の処理を連続し
て行う場合には処理速度の低下が生じるという欠点があ
る。
In this configuration, the above-mentioned Japanese Patent Application Laid-Open No. 5-21939 is disclosed.
The configuration described in Japanese Patent Application Laid-Open No. 0-205 can be configured to enable a process requiring a large reference area, which cannot be performed by the configuration described in Japanese Patent Application Publication No. 0-086. However, since the processing requiring a large reference area is performed by one image processing module, the processing speed is slow. Further, since it is necessary to transfer the result image from the output memory side to the input memory side for each processing, a plurality of processings are continuously However, there is a disadvantage that the processing speed is reduced when performing the process.

【0008】図4は、特開平6−52296号公報に述
べられた構成の一部を説明するものである。ラインセン
サカメラから入力された画像は分配回路で部分画像に分
割されてデジタル化され、それぞれ並列にパイプライン
処理回路により処理され、フレームメモリに蓄積され
る。フレームメモリに蓄積された画像は、複数の判定制
御回路やメイン判定制御回路により全画像に渡る処理が
行われる。
FIG. 4 illustrates a part of the configuration described in Japanese Patent Application Laid-Open No. 6-52296. The image input from the line sensor camera is divided into partial images by a distribution circuit, digitized, processed in parallel by a pipeline processing circuit, and stored in a frame memory. The image stored in the frame memory is subjected to processing for all images by a plurality of determination control circuits and a main determination control circuit.

【0009】この構成では、判定制御回路を経由して各
フレームメモリ間の情報が交換できるために、全面を参
照する処理も実行できる。しかしながら、各判定制御回
路が他方のフレームメモリ中のデータを参照する必要が
ある場合に、フレームメモリが分割されているため領域
をまたがった制御が複雑になり、またデータの参照にも
時間がかかることが予想される。さらに前段のパイプラ
イン処理回路と後段の判定制御回路とが別々に必要であ
るため、回路規模が大きくなるという欠点がある。また
さらに、パイプライン処理回路と判定制御回路との順序
関係が固定的であるため、広い参照領域を要する処理を
先に行うなどの柔軟な構成が取れないという欠点があ
る。
In this configuration, since information can be exchanged between the frame memories via the determination control circuit, a process of referring to the entire surface can also be executed. However, when each judgment control circuit needs to refer to the data in the other frame memory, control over the area becomes complicated because the frame memory is divided, and it takes time to refer to the data. It is expected that. Further, since the former pipeline processing circuit and the latter determination control circuit are separately required, there is a disadvantage that the circuit scale becomes large. Furthermore, since the order relation between the pipeline processing circuit and the determination control circuit is fixed, there is a disadvantage that a flexible configuration such as performing processing requiring a wide reference area first cannot be obtained.

【0010】[0010]

【発明が解決しようとする課題】本発明は、上述した既
存方式の問題に鑑みてなされたものであり、部分領域毎
に独立に処理可能な画像処理と、広い参照領域を必要と
するため部分領域毎には処理できない画像処理の両方
を、並列処理により高速かつ任意の順序で処理できる画
像処理装置および画像処理方法を提供することを目的と
する。
SUMMARY OF THE INVENTION The present invention has been made in view of the above-mentioned problems of the existing system, and requires image processing which can be processed independently for each partial area and partial processing for requiring a wide reference area. It is an object of the present invention to provide an image processing apparatus and an image processing method capable of processing both image processing that cannot be processed for each area at high speed and in an arbitrary order by parallel processing.

【0011】さらに、部分領域毎の独立の処理と広い参
照領域を要する処理の両方の処理のための大規模な回路
を持つことなく、回路を有効に利用した並列画像処理装
置の提供を目的とする。
It is another object of the present invention to provide a parallel image processing apparatus which effectively uses circuits without having to have a large-scale circuit for both independent processing for each partial area and processing requiring a wide reference area. I do.

【0012】[0012]

【課題を解決するための手段】上記課題を解決するため
に、本発明は、画像データを格納する画像記憶手段と、
画像記憶手段に格納された画像データの分割領域データ
を各々入力する複数の分割入力手段と、分割入力手段に
入力された分割領域データ各々に対して、分割領域毎に
独立に処理可能な画像処理をパイプライン処理により実
行する複数の画像処理パイプラインと、複数の画像処理
パイプラインの処理結果を統合して画像記憶手段に出力
する第1の統合処理手段と、画像記憶手段に格納された
画像を読み出して広い参照領域を要する画像処理を行う
複数の画像処理手段と、複数の画像処理手段の処理結果
を統合して画像記憶手段に出力する第2の統合処理手段
とを具備することを特徴とする画像処理装置を提供す
る。
In order to solve the above-mentioned problems, the present invention provides image storage means for storing image data,
A plurality of divided input means for respectively inputting divided area data of image data stored in an image storage means; and image processing capable of independently processing each divided area data inputted to the divided input means for each divided area Pipeline processing, a plurality of image processing pipelines, a first integrated processing unit that integrates processing results of the plurality of image processing pipelines and outputs the integrated processing results to an image storage unit, and an image stored in the image storage unit. A plurality of image processing means for reading image data and performing image processing requiring a wide reference area, and a second integrated processing means for integrating processing results of the plurality of image processing means and outputting the result to the image storage means. An image processing apparatus is provided.

【0013】また、本発明の画像処理装置における分割
入力手段の一実施例は、画像記憶手段に格納された画像
をほぼ同じ画素数毎の領域に分割して入力することを特
徴とする。
An embodiment of the division input means in the image processing apparatus according to the present invention is characterized in that an image stored in the image storage means is divided into substantially the same number of pixels and input.

【0014】また、本発明の画像処理装置における分割
入力手段の一実施例は、画像処理パイプラインの処理の
内容に応じて、画像記憶手段に格納された画像を一部重
複して入力することを特徴とする。
One embodiment of the division input means in the image processing apparatus of the present invention is to input a part of the image stored in the image storage means in accordance with the content of the processing of the image processing pipeline. It is characterized by.

【0015】また、本発明の画像処理装置における第1
の統合処理手段は、画像処理手段の処理の内容に応じ
て、画像処理パイプラインからの出力を統合する際に、
出力画像を外側に所定の画素数分だけ拡張して画像記憶
手段に格納することを特徴とする。また、本発明の画像
処理装置における画像処理手段は、画像記憶手段に格納
された入力画像の全体を読み出し可能領域として、出力
画像の別々の領域に対応した処理を行うことを特徴とす
る。
Further, in the image processing apparatus of the present invention, the first
When integrating the output from the image processing pipeline according to the content of the processing of the image processing means,
The output image is extended outward by a predetermined number of pixels and stored in the image storage means. Further, the image processing means in the image processing apparatus of the present invention is characterized in that the entire input image stored in the image storage means is used as a readable area and performs processing corresponding to different areas of the output image.

【0016】また、本発明の画像処理装置における画像
処理手段の各々は、処理の内容に応じて対象画素数がほ
ぼ等しくなるように分割された出力画像の各領域に対し
て処理を行うことを特徴とする。
Each of the image processing means in the image processing apparatus of the present invention performs processing on each area of the output image divided so that the number of target pixels is substantially equal according to the content of the processing. Features.

【0017】また、本発明の画像処理装置は、少なくと
も1つのプロセッサを擁するマルチプロセスまたはマル
チスレッド処理環境に実現され、前記分割入力手段と前
記画像処理パイプラインはその組毎に1つづつのプロセ
スまたはスレッドで処理され、前記画像処理手段はそれ
ぞれに1つづつのプロセスまたはスレッドにより処理さ
れることを特徴とする。
Further, the image processing apparatus of the present invention is realized in a multi-process or multi-thread processing environment having at least one processor, and the divided input means and the image processing pipeline have one process or one set for each set. The image processing means is processed by one process or thread.

【0018】さらに、本発明の画像処理方法は、画像記
憶手段に格納された画像データの分割領域データをそれ
ぞれ複数の分割入力手段へ入力するステップと、分割入
力手段に入力された複数の分割領域データ各々につい
て、分割領域毎に独立に処理可能な画像処理を、複数の
画像処理パイプラインにより並列処理するステップと、
複数の画像処理パイプラインの処理結果を統合して画像
記憶手段に出力するステップと、画像記憶手段に格納さ
れた画像を読み出して複数の画像処理手段により、広い
参照領域を要する画像処理を行うステップと、複数の画
像処理手段による広い参照領域を要する処理の処理結果
を統合して画像記憶手段に出力するステップと、を有す
ることを特徴とする。
Further, according to the image processing method of the present invention, the step of inputting the divided area data of the image data stored in the image storage means to each of the plurality of divided input means; For each data, image processing that can be independently processed for each divided region, parallel processing by a plurality of image processing pipelines,
Integrating the processing results of the plurality of image processing pipelines and outputting the result to the image storage unit, and reading the image stored in the image storage unit and performing image processing requiring a wide reference area by the plurality of image processing units And a step of integrating the processing results of the processing requiring a large reference area by the plurality of image processing means and outputting the result to the image storage means.

【0019】[0019]

【発明の実施の形態】以下、図面に基づき本発明に係わ
る画像処理装置および画像処理方法の実施の形態につい
て説明する。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, embodiments of an image processing apparatus and an image processing method according to the present invention will be described with reference to the drawings.

【0020】[0020]

【実施例】図1は本発明の画像処理装置の実施の形態を
示すブロック図である。図1において、画像処理装置
は、画像データを格納する画像記憶部1と、画像記憶部
1に格納された画像を部分領域毎に分割して入力する複
数の分割入力部2と、分割入力部2からの入力をパイプ
ライン処理する分割入力部2と同数の画像処理パイプラ
イン3と、画像処理パイプラインにより処理された各部
分画像を統合して画像記憶部1に格納する第1の統合処
理部4と、画像記憶部1に格納された画像を処理する複
数の画像処理部5と、画像処理部5による処理結果を統
合して画像記憶部1に格納する第2の統合処理部6とか
ら構成されている。
FIG. 1 is a block diagram showing an embodiment of an image processing apparatus according to the present invention. In FIG. 1, an image processing device includes an image storage unit 1 for storing image data, a plurality of divided input units 2 for dividing and inputting an image stored in the image storage unit 1 for each partial area, and a divided input unit. A first integration process in which the same number of image processing pipelines 3 as the number of divided input units 2 that pipeline input from the second unit 2 and each partial image processed by the image processing pipeline are integrated and stored in the image storage unit 1 Unit 4, a plurality of image processing units 5 for processing images stored in the image storage unit 1, a second integration processing unit 6 for integrating processing results from the image processing unit 5 and storing the results in the image storage unit 1. It is composed of

【0021】画像記憶部1は、画像データを格納する記
憶手段であり、メモリやハードディスク装置などにより
構成され、分割入力部1や画像処理部5から読み出さ
れ、第1ならびに第2の統合処理部から画像を入力され
る。尚、画像記憶部1と外部との画像の入出力は、図示
されていないスキャナ装置や画像入力I/Fなどを経由
して行われる。
The image storage unit 1 is a storage unit for storing image data, is constituted by a memory, a hard disk device, or the like, is read from the division input unit 1 or the image processing unit 5, and performs first and second integration processing. The image is input from the section. Note that input and output of images between the image storage unit 1 and the outside are performed via a scanner device or an image input I / F (not shown).

【0022】分割入力部2は、画像記憶部1に格納され
た画像データを、ほぼ同数の画素を含む部分領域に分割
して読み出し、その部分画像データを自身に接続された
各画像処理パイプライン3に入力する。尚、分割入力部
は画像処理パイプラインの処理内容により、図5に示す
ようにお互いに排他的に分割(図5(a))したり、あ
るいは処理パラメータに依存した特定の幅でお互いにオ
ーバラップするように分割(図5(b))することが可
能である。
The division input section 2 divides the image data stored in the image storage section 1 into partial areas containing substantially the same number of pixels and reads out the divided image data, and reads the partial image data into each of the image processing pipelines connected thereto. Enter 3 Depending on the processing contents of the image processing pipeline, the divided input units may be divided exclusively (FIG. 5A) as shown in FIG. 5, or may overlap each other with a specific width depending on the processing parameter. It is possible to divide (FIG. 5B) so as to wrap.

【0023】画像処理パイプライン3は、分割入力部2
から入力された部分画像データを、パイプライン方式で
順次処理して第1の統合処理部に出力する。画像処理パ
イプライン3は、図7に示すように、ユーザが希望する
複数の処理モジュールが連結されており、第1の統合処
理部4から指示を受けると、最後段のモジュールから順
次手前のモジュールを呼び出し、最前段の処理モジュー
ルが自身に接続された分割入力部2を呼び出して処理に
必要な画像データを取得する。取得されたデータは、各
処理モジュールで処理されながら先の指示と逆方向に画
像処理パイプライン3を通過し、最終的に第1の統合処
理部4に渡される。この処理は、分割された部分画像全
体を一度のフローで行っても、また例えば1ライン毎な
どの部分画像の一部づつの繰り返しで行ってもよい。
The image processing pipeline 3 includes the divided input unit 2
, And sequentially processes the partial image data in a pipeline manner and outputs the partial image data to the first integrated processing unit. As shown in FIG. 7, a plurality of processing modules desired by the user are connected to each other, and when an instruction is received from the first integrated processing unit 4, the image processing pipeline 3 sequentially starts from the last module to the previous module. And the first processing module calls the divided input unit 2 connected thereto to acquire image data necessary for processing. The acquired data passes through the image processing pipeline 3 in a direction opposite to the previous instruction while being processed by each processing module, and is finally passed to the first integrated processing unit 4. This process may be performed on the entire divided partial image in a single flow, or may be performed by repeating a part of the partial image, for example, for each line.

【0024】第1の統合処理部4は、画像処理パイプラ
イン3に指示を与えて処理を開始させ、出力された処理
済の部分画像データを各画像処理パイプラインから受け
取り、処理済の画像データ全体が作成されるように位置
を合わせてこれらを統合し、画像記憶部1に出力する。
さらにマルチプロセス環境またはマルチスレッド環境の
ようなソフトウエアで実現される場合には、処理の始め
に予め定められた個数の分割入力部2を生成してその入
力範囲を設定し、これに予め定められた処理モジュール
を生成/連結して画像処理パイプラインを構成する。
The first integrated processing section 4 gives an instruction to the image processing pipeline 3 to start processing, receives the output processed partial image data from each image processing pipeline, and processes the processed image data. These are aligned and integrated so that the whole is created, and output to the image storage unit 1.
Further, when the processing is realized by software such as a multi-process environment or a multi-thread environment, a predetermined number of divided input units 2 are generated at the beginning of the process, and the input range is set. The image processing pipeline is configured by generating / concatenating the processed modules.

【0025】画像処理部5は、第2の統合処理部6から
の指示に従って、画像記憶部1に格納された対象画像の
全体をアクセスしながら必要な処理を行い、その結果を
第2の統合処理部6に出力する。画像処理部5の各々の
処理範囲は、第2の統合処理部6に出力される出力画像
上で重ならないように設定される。処理範囲の設定など
に関する詳細は後述する。
The image processing section 5 performs necessary processing while accessing the entire target image stored in the image storage section 1 in accordance with an instruction from the second integration processing section 6, and compares the result with the second integration processing. Output to the processing unit 6. Each processing range of the image processing unit 5 is set so as not to overlap on the output image output to the second integration processing unit 6. Details regarding the setting of the processing range will be described later.

【0026】第2の統合処理部6は、画像処理部5に指
示を与えて処理を開始させ、出力された処理済の部分画
像データを各画像処理部5から受け取り、処理済みの画
像データ全体が作成されるように位置を合わせてこれら
を統合し、画像記憶部1に出力する。さらにマルチプロ
セス環境またはマルチスレッド環境のようなソフトウエ
アで実現される場合には、処理の始めに予め定められた
個数の画像処理部5を生成して、その出力処理範囲を設
定する。
The second integrated processing unit 6 gives an instruction to the image processing unit 5 to start processing, receives the output processed partial image data from each image processing unit 5, and outputs the processed image data as a whole. Are integrated so that they are created and output to the image storage unit 1. Further, when the processing is realized by software such as a multi-process environment or a multi-thread environment, a predetermined number of image processing units 5 are generated at the beginning of the process, and the output processing range is set.

【0027】次に、本実施例における各部の詳細を、順
を追って説明する。尚、以下の説明では画像は畳み込み
フィルタ、色補正、拡大、45度回転の順に処理され、
4つのプロセッサを持つマルチスレッド環境により実現
されているものとして説明を行うが、発明の構成から明
らかなように本発明はこれらに限定されるものではな
く、他の種類の画像処理を含む場合にも同様に適用可能
である。また、プロセッサの数等、各種のハードウエア
環境は、以下の実施例に述べる構成に限定されるもので
はない。
Next, details of each section in the present embodiment will be described step by step. In the following description, the image is processed in the order of convolution filter, color correction, enlargement, and 45-degree rotation.
The description will be made assuming that the multi-thread environment has four processors. However, as is apparent from the configuration of the present invention, the present invention is not limited to these. Is similarly applicable. Various hardware environments such as the number of processors are not limited to the configurations described in the following embodiments.

【0028】処理の対象となる画像データは、初めに図
示されていないスキャナや画像入出力I/Fから画像記
憶部1に入力されて格納される。第1の統合処理部4
は、画像記憶部1から処理対象となる画像のサイズを取
得し、それを各分割入力部2に均等に割り付けるための
部分領域のサイズと読み出し開始位置を計算する。この
時、周辺画素を必要とする処理があるかどうか等に応じ
て、第1の統合処理部4は各分割入力部2に割り付ける
部分領域のサイズと読み出し開始位置について、異なる
計算を行う。
Image data to be processed is first input from an unillustrated scanner or image input / output I / F to the image storage unit 1 and stored. First integrated processing unit 4
Obtains the size of the image to be processed from the image storage unit 1 and calculates the size of the partial area and the read start position for equally allocating the size to each divided input unit 2. At this time, the first integration processing unit 4 performs different calculations on the size of the partial area allocated to each divided input unit 2 and the read start position, depending on whether there is a process that requires peripheral pixels.

【0029】画像処理パイプライン3で行われる処理に
周辺画素の参照が不要な場合には、第1の統合処理部4
は、単純に全画像を複数の領域に均等分割して部分領域
を作成する。例えば、100画素×100ラインの画像
を4つのスレッドで処理する場合には、4つの領域に分
割する。3つのスレッドで処理するには、図5(a)に
示すように3つの領域に均等に分割する。100画素×
100ラインの画像を4つの領域に均等分割する場合
は、例えば、以下の表1に示すように、対象画像は10
0画素×25ラインづつの4つの領域に分割される。
If it is not necessary to refer to peripheral pixels in the processing performed in the image processing pipeline 3, the first integrated processing unit 4
Simply creates a partial area by equally dividing the entire image into a plurality of areas. For example, when an image of 100 pixels × 100 lines is processed by four threads, the image is divided into four regions. In order to perform processing by three threads, as shown in FIG. 100 pixels x
When an image of 100 lines is equally divided into four regions, for example, as shown in Table 1 below, the target image is 10
It is divided into four regions of 0 pixels × 25 lines.

【0030】[0030]

【表1】 ・ 分割領域1 : (0, 0)〜(99,24) ・ 分割領域2 : (0,25)〜(99,49) ・ 分割領域3 : (0,50)〜(99,74) ・ 分割領域4 : (0,75)〜(99,99)[Table 1]-Divided area 1: (0, 0)-(99, 24)-Divided area 2: (0, 25)-(99, 49)-Divided area 3: (0, 50)-(99, 24) 74) Division area 4: (0,75) to (99,99)

【0031】画像処理パイプライン3で行われる処理に
周辺画素の参照が必要な場合には、第1の統合処理部4
は、その分を各分割領域がオーバーラップするように分
割する。例えば5×5畳み込みフィルタを画像処理パイ
プライン3の先頭で処理する場合には、図5(b)に示
すように、各分割領域はその外側2画素づつをオーバー
ラップして読み出す。尚、分割入力部2は、0より小さ
い画素/ラインには0画素/ラインの値を、100以上
の画素/ラインには99画素/ラインの値を出力するよ
うに設定されているものとする。100画素×100ラ
インの画像を4つの領域に各分割領域がオーバーラップ
するように分割する場合は、例えば、以下の表2に示す
ように、4つの領域に分割される。
When the processing performed in the image processing pipeline 3 needs to refer to peripheral pixels, the first integrated processing unit 4
Is divided so that the divided areas overlap. For example, when a 5 × 5 convolution filter is processed at the head of the image processing pipeline 3, as shown in FIG. 5B, each divided area is read by overlapping two pixels outside each divided area. It is assumed that the division input unit 2 is set to output a value of 0 pixel / line for a pixel / line smaller than 0 and a value of 99 pixels / line for a pixel / line of 100 or more. . When an image of 100 pixels × 100 lines is divided into four regions so that each divided region overlaps, for example, the image is divided into four regions as shown in Table 2 below.

【0032】[0032]

【表2】 ・ 分割領域1 : (−2,−2)〜(101, 26) ・ 分割領域2 : (−2,23)〜(101, 51) ・ 分割領域3 : (−2,48)〜(101, 76) ・ 分割領域4 : (−2,73)〜(101,101)[Table 2]-Divided area 1: (-2, -2) to (101, 26)-Divided area 2: (-2, 23) to (101, 51)-Divided area 3: (-2, 48) -(101, 76)-Division area 4: (-2, 73)-(101, 101)

【0033】第1の統合処理部4は、このようにして各
部分領域のサイズと読み出し開始位置を計算した後に、
4つの分割入力部2の動作を行う処理モジュールを、部
分領域のサイズと読み出し位置をパラメータとして生成
する。
After calculating the size of each partial area and the read start position in this way, the first integration processing unit 4
A processing module that performs the operation of the four divided input units 2 is generated using the size of the partial area and the read position as parameters.

【0034】生成された分割入力部2は、図6に示すよ
うに、画像記憶部1からの画像データの読み出しを行う
入力処理部20と、画像処理パイプライン3の先頭の処
理モジュールからの呼出しに答え、入力処理部20が読
み出したデータを出力する入力I/F部21と、画像記
憶部1に格納された処理対象画像中の読み出し位置のア
ドレスを保持するアドレスポインタや現在の読み出しラ
イン位置を保持するラインカウンタや1ラインのバイト
数を保持するライン長レジスタなどを持ち、各部を制御
する入力制御部22とから構成される。これら各部は、
画像処理パイプライン3の先頭の処理モジュールからの
呼出しに応じて次のように動作する。
As shown in FIG. 6, the generated divided input unit 2 includes an input processing unit 20 for reading image data from the image storage unit 1 and a call from the first processing module of the image processing pipeline 3. And an input I / F unit 21 for outputting data read by the input processing unit 20, an address pointer for holding an address of a read position in the processing target image stored in the image storage unit 1, and a current read line position. And a line length register for holding the number of bytes of one line, and an input control unit 22 for controlling each unit. Each of these parts
The following operation is performed in response to a call from the first processing module of the image processing pipeline 3.

【0035】画像処理パイプライン3の先頭の処理モジ
ュールからの呼出しが起きると、入力I/F部21はそ
の旨を入力制御部22に通知し、呼出し指示と同時に処
理モジュールから渡された画像データを書き込むバッフ
ァのポインタを入力制御部22に送る。入力制御部22
は、入力I/F部21からの通知を受けるとアドレスポ
インタとライン長レジスタの内容を入力処理部20に渡
すとともに、ラインカウンタを1だけインクリメント
し、その結果が0より大で画像記憶部1に格納された画
像のライン数より小の場合に、画像1ラインのバイト数
に相当する数値をライン長レジスタから読み出してアド
レスポインタに加算する。入力処理部20は、入力制御
部22から指示された画像記憶部1のアドレスからライ
ン長分のデータを読み出して入力I/F部21から渡さ
れたバッファポインタの領域にそのデータを書き込み、
さらに左右に余分な参照画素の付加が必要な場合は左は
ラインの先頭画素を、右はラインの最終画素をコピーす
る。その後、入力I/F部21が読み込み処理の終了を
画像処理パイプライン3の先頭の処理モジュールに通知
し、1回の読み込み処理が終了する。分割入力部2は、
このような処理を処理モジュールからの呼出しに応じて
繰り返す。
When a call from the head processing module of the image processing pipeline 3 occurs, the input I / F unit 21 notifies the input control unit 22 of the call, and the image data transferred from the processing module simultaneously with the call instruction. Is sent to the input control unit 22. Input control unit 22
Receives the notification from the input I / F unit 21, passes the address pointer and the contents of the line length register to the input processing unit 20, increments the line counter by 1, and if the result is greater than 0 and the image storage unit 1 Is smaller than the number of lines of the image stored in the line length register, a value corresponding to the number of bytes of one line of the image is read from the line length register and added to the address pointer. The input processing unit 20 reads data of the line length from the address of the image storage unit 1 specified by the input control unit 22 and writes the data in the area of the buffer pointer passed from the input I / F unit 21,
If extra reference pixels need to be added to the left and right, the left pixel is copied with the first pixel of the line, and the right is copied with the last pixel of the line. Thereafter, the input I / F unit 21 notifies the end processing module of the image processing pipeline 3 of the end of the reading process, and one reading process ends. The division input unit 2
Such processing is repeated in response to a call from the processing module.

【0036】4つの分割入力部が生成されると、次に第
1の統合処理部4は画像処理パイプライン3を生成す
る。初めに第1の統合処理部4は、畳み込みフィルタモ
ジュール30を4つ生成し、それぞれを分割入力部2に
リンクする。次に色補正モジュール31を4つ生成し、
それぞれを先に作成した畳み込みフィルタモジュール3
0にリンクする。次に拡大モジュール32を4つ生成
し、それぞれを先に作成した色補正モジュール31にリ
ンクする。このような処理により、図7に示すように畳
み込みフィルタ→色補正→拡大を順次行う4つの画像処
理パイプライン3が生成される。尚、フィルタサイズ/
係数や色補正係数、拡大率などは、生成時のパラメータ
として渡される等の方法で各モジュールに与えられる。
After the four divided input units are generated, the first integrated processing unit 4 generates the image processing pipeline 3. First, the first integration processing unit 4 generates four convolution filter modules 30 and links each to the divided input unit 2. Next, four color correction modules 31 are generated,
Convolution filter module 3 created first for each
Link to 0. Next, four enlargement modules 32 are generated, and each is linked to the color correction module 31 created earlier. Through such processing, as shown in FIG. 7, four image processing pipelines 3 for sequentially performing a convolution filter → color correction → enlargement are generated. The filter size /
A coefficient, a color correction coefficient, an enlargement ratio, and the like are given to each module by a method such as being passed as a parameter at the time of generation.

【0037】図8は、これら処理モジュールの一例とし
て、色補正モジュール31の内部ブロックを示したもの
である。色補正モジュール31は、前段の処理モジュー
ルからの入力を受け取るための入力バッファ310と、
後段の処理モジュールへの処理済データの出力を行う出
力I/F部311と、色処理処理を行う色補正処理部3
12とから構成されている。後段の処理モジュールから
の呼出しが起きると、出力I/F部はその旨を色補正処
理部312に通知し、呼出し指示と同時に後段の処理モ
ジュールから渡された画像データを書き込むバッファの
ポインタを色補正処理部312に送る。色補正処理部3
12は、出力I/F部311からの通知を受けると入力
バッファのポインタを引数として前段の処理モジュール
を呼出して1ライン分の入力データを受け取り、係数レ
ジスタに格納された係数を用いて、ライン長レジスタに
格納された数のデータを色補正処理し、ラインカウンタ
を1だけインクリメントして処理の終了を出力I/F部
311に通知する。出力I/F部311は、色補正処理
部312からの処理終了通知を受け取ると、後段の処理
モジュールに処理終了を通知して1回の色補正処理が終
了する。色補正モジュールは、このような処理を後に接
続された処理モジュールからの呼出しに応じて繰り返
す。
FIG. 8 shows an internal block of the color correction module 31 as an example of these processing modules. The color correction module 31 includes an input buffer 310 for receiving an input from the preceding processing module,
An output I / F unit 311 for outputting processed data to a subsequent processing module, and a color correction processing unit 3 for performing color processing
12. When a call is made from a subsequent processing module, the output I / F unit notifies the color correction processing unit 312 of the call, and sets a pointer of a buffer for writing image data passed from the subsequent processing module at the same time as the call instruction. This is sent to the correction processing unit 312. Color correction processing unit 3
12 receives the notification from the output I / F unit 311, calls the preceding processing module with the pointer of the input buffer as an argument, receives one line of input data, and uses the coefficient stored in the coefficient register to execute the line processing. The color correction processing is performed on the data stored in the length register, the line counter is incremented by 1, and the end of the processing is notified to the output I / F unit 311. Upon receiving the processing end notification from the color correction processing unit 312, the output I / F unit 311 notifies the processing module of the subsequent stage of the processing end, and one color correction processing ends. The color correction module repeats such processing in response to a call from a processing module connected later.

【0038】4つの画像処理パイプラインが生成される
と、次に第1の統合処理部4は並列に各画像処理パイプ
ラインを呼び出して、畳み込みフィルタ→色補正→拡大
の処理を行う。図9は、第1の統合処理部4の構成を示
すブロック図の一例である。第1の統合処理部4は、先
に説明した分割入力部2の生成を行う分割入力部生成部
40と、同じく先に説明した画像処理パイプライン3の
生成を行う画像処理パイプライン生成部41と、生成さ
れた各画像処理パイプライン3からの処理結果を画像記
憶部1に書き込み位置を制御しながら出力するための制
御を行う統合制御部42とから構成されている。先に説
明した処理により分割入力部2と画像処理パイプライン
3とが生成されると、統合制御部42は、各画像処理パ
イプラインの最後の処理モジュールに対して呼出しを行
う。この時、各統合制御部42は、各分割(処理済)画
像データを書き出すための画像記憶部1の領域の先頭ア
ドレスを内部のアドレスポインタに保持し、これを最後
の処理モジュールの出力バッファのポインタとして呼出
しを行う。呼び出された処理モジュールは、順次自身よ
り前段側の処理モジュールを呼出し、先頭のモジュール
は分割入力部2を呼び出して処理に必要なデータを取得
し、処理結果を順次後段側のモジュールに返し、最後に
統合制御部42を介して画像記憶部1の所定のアドレス
に書き込まれる。この処理が1回終了すると、統合制御
部42はラインカウンタを1だけインクリメントし、自
分が担当する処理領域の最終ラインを越えていないなら
ばアドレスポインタにライン長レジスタの内容を加算し
て、再度画像処理パイプライン3の最後のモジュールを
呼び出す。このような処理を各部分領域のライン数分だ
け繰り返すことで、画像記憶部1には処理済みの全画像
データが格納される。尚、この処理は、統合制御部42
と画像処理パイプライン3と分割入力部2の組が1つの
スレッドで動作し、4つの各組は別々に並列処理される
ため、4つ以上のプロセッサを持つ環境では、ほぼ1/
4の時間で処理が実行できる。
When four image processing pipelines are generated, the first integrated processing unit 4 calls each image processing pipeline in parallel and performs a convolution filter → color correction → enlargement processing. FIG. 9 is an example of a block diagram illustrating a configuration of the first integration processing unit 4. The first integration processing unit 4 includes a division input unit generation unit 40 that generates the division input unit 2 described above and an image processing pipeline generation unit 41 that generates the image processing pipeline 3 described above. And an integrated control unit 42 that performs control to output the generated processing results from each image processing pipeline 3 to the image storage unit 1 while controlling the writing position. When the divided input unit 2 and the image processing pipeline 3 are generated by the processing described above, the integrated control unit 42 calls the last processing module of each image processing pipeline. At this time, each integration control unit 42 holds the start address of the area of the image storage unit 1 for writing out each divided (processed) image data in an internal address pointer, and stores this in the output buffer of the last processing module. Make a call as a pointer. The called processing module sequentially calls the processing module on the preceding stage from itself, the first module calls the divided input unit 2 to acquire data necessary for processing, and returns the processing result to the subsequent module in sequence. Is written to a predetermined address of the image storage unit 1 via the integrated control unit 42. When this process is completed once, the integrated control unit 42 increments the line counter by 1, and if it does not exceed the last line of the processing area in which it is responsible, adds the contents of the line length register to the address pointer, and again Call the last module of the image processing pipeline 3. By repeating such processing for the number of lines of each partial area, the image storage unit 1 stores all processed image data. This processing is performed by the integrated control unit 42.
And the set of the image processing pipeline 3 and the divided input unit 2 operate in one thread, and each of the four sets is processed separately in parallel. Therefore, in an environment having four or more processors, almost 1 /
The process can be executed in a time of 4.

【0039】上記の処理が終了すると、制御が第2の統
合処理部6に移って45度回転が行われる。第2の統合
処理部6は、初めに画像記憶部1から処理対象となる画
像のサイズを取得し、処理の内容から各画像処理部5の
負荷がほぼ均等になるように、出力画像上での処理対象
領域を計算する。
When the above processing is completed, control is transferred to the second integration processing section 6 to perform 45-degree rotation. The second integration processing unit 6 first obtains the size of the image to be processed from the image storage unit 1, and performs processing on the output image so that the load on each image processing unit 5 becomes substantially equal based on the content of the processing. Is calculated.

【0040】画像を45度回転させる場合に、出力画像
を図10(a)のようにラインに平行に同じ矩形に分割
して各画像処理部5で処理すると、各画像処理部が担当
する画素数に大きな差が生じ、上から1番目と4番目の
処理が速く終わるのに対して2番目と3番目が遅くな
り、結果として並列化の効果が少なくなってしまう。そ
こで図10(b)に示すように、各画像処理部5が担当
する出力画素数がほぼ均等になるように担当領域を分割
することで、ほぼ並列数に見合った高速化が実現でき
る。具体的には、出力画像の各ラインにおける画像の開
始位置と終了位置を計算して各出力ライン中の演算対象
となる画素数を求め、部分領域毎のこの画素数の総和が
ほぼ等しくなるように領域を分割する。
When the image is rotated by 45 degrees, when the output image is divided into the same rectangle parallel to the line as shown in FIG. 10A and processed by each image processing unit 5, the pixels handled by each image processing unit There is a large difference in the numbers, and the first and fourth processes from the top end faster, whereas the second and third processes are slower, resulting in less effective parallelization. Therefore, as shown in FIG. 10B, by dividing the assigned area so that the number of output pixels assigned to each image processing unit 5 is substantially equal, it is possible to realize a speedup substantially corresponding to the number of parallel processing. Specifically, the start position and the end position of the image in each line of the output image are calculated to determine the number of pixels to be operated in each output line, and the sum of the number of pixels for each partial region is substantially equal. The area is divided into

【0041】第2の統合処理部6は、このようにして各
出力部分領域のサイズと開始位置を計算した後に、部分
領域のサイズと開始位置ならびに各ラインの開始位置と
終了位置をパラメータとして、45度回転を行う4つの
画像処理部5を生成する。
After calculating the size and start position of each output partial area in this way, the second integration processing unit 6 sets the size and start position of each partial area and the start and end positions of each line as parameters. Four image processing units 5 that rotate by 45 degrees are generated.

【0042】生成された画像処理部5は、図11に示す
ように、画像記憶部1からの画像データの読み出しを行
う入力処理部50と、第2の統合処理部6への処理済デ
ータの出力を行う出力I/F部51と、画像の回転処理
を行う回転処理部52とから構成されている。第2の統
合処理部6からの呼出しが起きると、出力I/F部51
はその旨を回転処理部52に通知し、呼出し指示と同時
に第2の統合処理部6から渡された画像データを書き込
むバッファのポインタを回転処理部52に送る。回転処
理部52は、ラインカウンタに格納された処理対象ライ
ンに対して、開始/終了画素位置テーブルから開始画素
位置と終了画素位置を求め、開始位置から終了位置まで
順次係数レジスタに格納された係数を用いて原画像中の
対応する画素位置を求め、その画素の値を入力処理部5
0を経由して画像記憶部1から読み出して、出力バッフ
ァに書き込む。処理が終了画素位置まで達すると、回転
処理部6はラインカウンタの値を1だけインクリメント
して処理の終了を出力I/F部51に通知する。出力I
/F部51は、回転処理部52からの処理終了通知を受
け取ると、第2の統合処理部6に処理終了を通知して、
出力画像の1ライン分の回転処理が終了する。画像処理
部5は、このような処理を第2の統合処理部6からの呼
出しに応じて繰り返す。
As shown in FIG. 11, the generated image processing section 5 includes an input processing section 50 for reading image data from the image storage section 1 and a processing section for processing the processed data to the second integration processing section 6. It comprises an output I / F section 51 for performing output and a rotation processing section 52 for performing image rotation processing. When a call from the second integration processing unit 6 occurs, the output I / F unit 51
Notifies the rotation processing unit 52 of this fact, and sends a pointer of a buffer for writing the image data passed from the second integration processing unit 6 to the rotation processing unit 52 at the same time as the call instruction. The rotation processing unit 52 obtains the start pixel position and the end pixel position from the start / end pixel position table for the processing target line stored in the line counter, and sequentially stores the coefficients stored in the coefficient register from the start position to the end position. Is used to find a corresponding pixel position in the original image, and the value of that pixel is input to the input processing unit 5.
The data is read out from the image storage unit 1 via 0 and written into the output buffer. When the processing reaches the end pixel position, the rotation processing unit 6 increments the value of the line counter by 1 and notifies the output I / F unit 51 of the end of the processing. Output I
Upon receiving the processing end notification from the rotation processing unit 52, the / F unit 51 notifies the second integration processing unit 6 of the processing end, and
The rotation processing for one line of the output image ends. The image processing unit 5 repeats such processing in response to a call from the second integration processing unit 6.

【0043】4つの画像処理部5が生成されると、次に
第2の統合処理部6は並列に各画像処理部5を呼び出し
て45度回転の処理を行う。図12は、第2の統合処理
部6の構成を示すブロック図の一例である。第2の統合
処理部6は、先に説明した画像処理部5の生成を行う画
像処理部生成部60と、生成された各画像処理部5から
の処理結果を画像記憶部1に書き込み位置を制御しなが
ら出力するための制御を行う統合制御部61とから構成
されている。先に説明した処理により画像処理部5が生
成されると、統合制御部61は、各画像処理部に対して
呼出しを行う。この時、各統合制御部61は、各画像処
理部からの処理済みデータを書き出すための画像記憶部
1の領域の先頭アドレスを内部のアドレスポインタに保
持し、これを画像処理部5の出力バッファのポインタと
して呼出しを行う。呼び出された画像処理部5は、先の
説明のように開始/終了画素位置の間の画素について、
原画像上の対応点の値を画像記憶部1から読み出して出
力し、これが終了するとそのラインの処理結果は第2の
統合処理部6を経由して画像記憶部1の処理済み画像を
格納するための領域に書き込まれる。この処理が1回終
了すると、統合制御部61はラインカウンタを1だけイ
ンクリメントし、自分が担当する処理領域の最終ライン
を越えていないならばアドレスポインタにライン長レジ
スタの内容を加算して、再度画像処理部5を呼び出す。
このような処理を各部分領域のライン数分だけ繰り返す
ことで、画像記憶部1には最終的な処理済みの全画像デ
ータが格納される。この処理は、統合制御部61と画像
処理部5の組が1つのスレッドで動作して4つの各組は
別々に並列処理され、さらに各組が担当する処理対象画
素数がほぼ均等になるようライン数を割当てているた
め、4つ以上のプロセッサを持つ環境では、ほぼ1/4
の時間で処理が実行できる。
When the four image processing units 5 are generated, the second integrated processing unit 6 calls each image processing unit 5 in parallel and performs a 45-degree rotation process. FIG. 12 is an example of a block diagram illustrating a configuration of the second integration processing unit 6. The second integration processing unit 6 includes an image processing unit generation unit 60 for generating the image processing unit 5 described above and a writing position of the generated processing result from each image processing unit 5 in the image storage unit 1. And an integrated control unit 61 for performing control for outputting while controlling. When the image processing unit 5 is generated by the processing described above, the integrated control unit 61 calls each image processing unit. At this time, each integrated control unit 61 holds the start address of the area of the image storage unit 1 for writing out the processed data from each image processing unit in an internal address pointer, and stores this in the output buffer of the image processing unit 5. Call as a pointer to The called image processing unit 5 calculates the pixels between the start / end pixel positions as described above.
The value of the corresponding point on the original image is read out from the image storage unit 1 and output, and when this is completed, the processing result of the line is stored in the image storage unit 1 via the second integration processing unit 6. Is written in the area for When this process is completed once, the integrated control unit 61 increments the line counter by 1, and if it does not exceed the last line of the processing area in which it is responsible, adds the contents of the line length register to the address pointer, and again The image processing unit 5 is called.
By repeating such processing for the number of lines in each partial area, the image processing unit 1 stores the final processed all image data. In this processing, the set of the integrated control unit 61 and the image processing unit 5 operates in one thread, and the four sets are separately processed in parallel, and the number of pixels to be processed by each set is substantially equal. Almost 1/4 in an environment with four or more processors because the number of lines is assigned
The process can be executed in a time of.

【0044】本実施例では、畳み込みフィルタ→色補正
→拡大→45度回転の順で処理を行ったが、構成から明
らかなように、45度回転→畳み込みフィルタ→色補正
→拡大のように広い参照領域を要する処理が先頭の処理
順でも、畳み込みフィルタ→45度回転→色補正→拡大
のように広い参照領域を要する処理が間にあるような処
理順でも、また広い参照領域を要する処理が複数あって
も、同じように並列処理による高速処理が可能である。
In this embodiment, the processing is performed in the order of convolution filter → color correction → enlargement → rotation by 45 degrees. However, as is apparent from the configuration, the processing is as wide as 45 degrees rotation → convolution filter → color correction → enlargement. Even if the processing that requires the reference area is the first processing order, the processing that requires a wide reference area such as a convolution filter → rotation by 45 degrees → color correction → enlargement, or the processing that requires a wide reference area Even if there is a plurality, high-speed processing by parallel processing is possible in the same manner.

【0045】また、45度回転→畳み込みフィルタ→色
補正→拡大のように広い参照領域を要する処理が先頭の
処理順の場合には、図13のように構成を変更し、画像
処理部5の出力を画像処理パイプライン3に直接入力で
きるようにすれば、画像記憶部1から読み出したデータ
を画像処理部5で45度回転処理を実行した後、処理デ
ータを画像処理パイプライン3に入力し、それぞれのデ
ータについて畳み込みフィルタ→色補正→拡大処理が実
行可能となる。この構成によれば、一時的に画像記憶部
1に全画像データを保持することが不要となり、メモリ
領域を節約することが可能となる。
If the processing requiring a wide reference area such as 45-degree rotation → convolution filter → color correction → enlargement is the first processing order, the configuration is changed as shown in FIG. If the output can be directly input to the image processing pipeline 3, the data read from the image storage unit 1 is subjected to 45-degree rotation processing by the image processing unit 5, and then the processed data is input to the image processing pipeline 3. For each data, a convolution filter → color correction → enlargement processing can be executed. According to this configuration, it is not necessary to temporarily store all image data in the image storage unit 1, and it is possible to save a memory area.

【0046】また、本実施例の第1の統合処理部4なら
びに第2の統合処理部6では、画像処理パイプライン3
または画像処理部5の出力を単に統合して画像記憶部1
に格納したが、図14に示すように、次に行う処理に応
じて出力画像の周囲に特定の幅の領域を設けて最外郭の
画素値と同じ値で埋めるように構成することも可能であ
る。このように構成すると、例えば画像処理部5での処
理が9点2次補間を行う45度回転のように入力画像の
外の参照が発生する場合に、第1の統合処理部4でその
分の周辺領域を設けて出力画像を書き込んでおくこと
で、画像処理部5において参照画素位置が画像の外であ
るかどうかの判断を省略して高速化を図ることが可能と
なる。
Further, in the first integrated processing unit 4 and the second integrated processing unit 6 of this embodiment, the image processing pipeline 3
Alternatively, the output of the image processing unit 5 is simply integrated and the image storage unit 1
However, as shown in FIG. 14, it is also possible to provide a region of a specific width around the output image and fill it with the same value as the outermost pixel value, according to the next processing. is there. With this configuration, when a reference outside the input image occurs such as a 45-degree rotation in which the processing in the image processing unit 5 performs a 9-point quadratic interpolation, the first integration processing unit 4 accordingly By writing the output image by providing the peripheral area of, the image processing unit 5 does not need to determine whether or not the reference pixel position is outside the image, and the speed can be increased.

【0047】さらに、本実施例は複数のプロセッサを持
つマルチスレッド環境で実現するとして説明を行った
が、マルチプロセス環境による実現や、DSP(デジタ
ル・シグナル・プロセッサ)やFPGA(フィールド・
プログラマブル・ゲート・アレー)などのプログラム可
能なハードウエアによる実現、さらには回路規模が増加
するもののゲートアレーなどの固定的なハードウエアに
より構成されていてもよい。
Further, the present embodiment has been described as being realized in a multi-thread environment having a plurality of processors. However, realization in a multi-process environment, a DSP (Digital Signal Processor) and an FPGA (Field
It may be realized by programmable hardware such as a programmable gate array, or may be configured by fixed hardware such as a gate array although the circuit scale increases.

【0048】また、本実施例では、4つのプロセッサが
ある場合に、分割入力部1と画像処理パイプライン3の
組と画像処理部5とを同じ4つのスレッドで実行した
が、例えばPDL(ページ記述言語)の展開処理のよう
に画像だけに全てのプロセッサを割当てられない場合に
は4つ以下のスレッドで実行したり、あるいは他の処理
の負荷に応じてスレッド数を可変させるなどの構成も可
能である。
In this embodiment, when there are four processors, the set of the divided input unit 1, the image processing pipeline 3, and the image processing unit 5 are executed by the same four threads. When not all processors can be assigned only to an image as in the expansion processing of the description language), the configuration may be such that the processing is executed by four or less threads, or the number of threads is varied according to the load of other processing. It is possible.

【0049】また、本実施例では処理をライン単位で行
うように構成したが、本発明はこれに限定されるもので
はなく、画素単位や複数ライン単位、ブロック単位など
の各種の処理単位において同様に実施することができ
る。
In this embodiment, the processing is performed on a line basis. However, the present invention is not limited to this. The same applies to various processing units such as a pixel unit, a plurality of line units, and a block unit. Can be implemented.

【0050】[0050]

【発明の効果】以上述べたように、本発明の画像処理装
置では、畳み込みフィルタ、色補正、拡大など、処理画
像の部分領域毎に独立に処理可能なものと、45度回転
などの広い参照領域を必要とするために部分領域毎に独
立処理できないものの両方について、任意の順序で高速
な処理を行うことができる。さらに、複数プロセッサに
よるマルチプロセスまたはマルチスレッド環境や、DS
P(デジタル・シグナル・プロセッサ)やFPGA(フ
ィールド・プログラマブル・ゲート・アレー)等のプロ
グラム可能なハードウエアにより本発明の構成を実現す
ることで、処理画像の部分領域毎の独立処理と、広い参
照領域を必要とする処理のための大規模な回路を持つこ
となく、回路を有効に利用した並列パイプライン型画像
処理装置を提供することができる。
As described above, the image processing apparatus according to the present invention can perform processing independently for each partial region of a processed image, such as a convolution filter, color correction, and enlargement, and a wide reference such as a 45-degree rotation. High-speed processing can be performed in an arbitrary order for both of which cannot be independently processed for each partial area because of the need for areas. In addition, multi-process or multi-thread environments with multiple processors, DS
By realizing the configuration of the present invention with programmable hardware such as P (Digital Signal Processor) and FPGA (Field Programmable Gate Array), independent processing for each partial area of the processed image and wide reference It is possible to provide a parallel pipeline type image processing device that effectively uses a circuit without having a large-scale circuit for processing that requires an area.

【図面の簡単な説明】[Brief description of the drawings]

【図1】 本発明の実施例を示すブロック図である。FIG. 1 is a block diagram showing an embodiment of the present invention.

【図2】 既存の画像処理装置の構成を示すブロック
図である。
FIG. 2 is a block diagram illustrating a configuration of an existing image processing apparatus.

【図3】 既存の画像処理装置の別の構成を示すブロ
ック図である。
FIG. 3 is a block diagram illustrating another configuration of an existing image processing apparatus.

【図4】 既存の画像処理装置の別の構成を示すブロ
ック図である。
FIG. 4 is a block diagram illustrating another configuration of an existing image processing apparatus.

【図5】 分割入力部2における画像の分割を説明す
る図である。
FIG. 5 is a diagram illustrating division of an image in a division input unit 2.

【図6】 分割入力部2を示すブロック図である。FIG. 6 is a block diagram showing a divided input unit 2.

【図7】 画像処理パイプライン3を示すブロック図
である。
FIG. 7 is a block diagram showing an image processing pipeline 3.

【図8】 色補正モジュール31を示すブロック図で
ある。
FIG. 8 is a block diagram showing a color correction module 31.

【図9】 第1の統合処理部4を示すブロック図であ
る。
FIG. 9 is a block diagram showing a first integration processing unit 4;

【図10】 画像データの回転処理における分割領域の
設定を説明する図である。
FIG. 10 is a diagram illustrating setting of a divided area in image data rotation processing.

【図11】 画像処理部5を示すブロック図である。FIG. 11 is a block diagram illustrating an image processing unit 5;

【図12】 第2の統合処理部6を示すブロック図であ
る。
FIG. 12 is a block diagram showing a second integration processing unit 6;

【図13】 本発明の実施例における別の構成を示すブ
ロック図である。
FIG. 13 is a block diagram showing another configuration according to the embodiment of the present invention.

【図14】 第1の統合処理部4または第2の統合処理
部6における出力方法を説明する図である。
FIG. 14 is a diagram illustrating an output method in the first integration processing unit 4 or the second integration processing unit 6.

【符号の説明】[Explanation of symbols]

1 画像記憶部 2 分割入力部 3 画像処理パイプライン 4 第1の統合処理部 5 画像処理部 6 第2の統合処理部 20 入力処理部 21 入力I/F部 22 入力制御部 30 畳み込みフィルタモジュール 31 色補正モジュール 32 拡大モジュール 40 分割入力部生成部 41 画像処理パイプライン生成部 42 統合制御部 50 入力処理部 51 出力I/F部 52 回転処理部 60 画像処理部生成部 61 統合制御部 310 入力バッファ 311 出力I/F部 312 色補正処理部 REFERENCE SIGNS LIST 1 image storage unit 2 divided input unit 3 image processing pipeline 4 first integrated processing unit 5 image processing unit 6 second integrated processing unit 20 input processing unit 21 input I / F unit 22 input control unit 30 convolution filter module 31 Color correction module 32 Enlargement module 40 Divided input unit generation unit 41 Image processing pipeline generation unit 42 Integrated control unit 50 Input processing unit 51 Output I / F unit 52 Rotation processing unit 60 Image processing unit generation unit 61 Integrated control unit 310 Input buffer 311 output I / F section 312 color correction processing section

Claims (8)

【特許請求の範囲】[Claims] 【請求項1】 画像データを格納する画像記憶手段と、 前記画像記憶手段に格納された画像データの分割領域デ
ータを各々入力する複数の分割入力手段と、 前記分割入力手段に入力された分割領域データ各々に対
して、分割領域毎に独立に処理可能な画像処理をパイプ
ライン処理により実行する複数の画像処理パイプライン
と、 前記複数の画像処理パイプラインの処理結果を統合して
前記画像記憶手段に出力する第1の統合処理手段と、 前記画像記憶手段に格納された画像を読み出して広い参
照領域を要する画像処理を行う複数の画像処理手段と、 前記複数の画像処理手段の処理結果を統合して前記画像
記憶手段に出力する第2の統合処理手段とを具備するこ
とを特徴とする画像処理装置。
An image storage unit for storing image data; a plurality of divided input units for respectively inputting divided region data of the image data stored in the image storage unit; and a divided region input to the divided input unit A plurality of image processing pipelines that execute image processing that can be independently processed for each divided region by pipeline processing for each data; and the image storage unit that integrates processing results of the plurality of image processing pipelines. A plurality of image processing means for reading out an image stored in the image storage means and performing image processing requiring a wide reference area; and integrating processing results of the plurality of image processing means. And a second integrated processing means for outputting the image data to the image storage means.
【請求項2】 前記分割入力手段は、前記画像記憶手段
に格納された画像をほぼ同じ画素数毎の領域に分割して
入力することを特徴とする、請求項1に記載の画像処理
装置。
2. The image processing apparatus according to claim 1, wherein the division input unit divides the image stored in the image storage unit into regions each having substantially the same number of pixels and inputs the divided regions.
【請求項3】 前記分割入力手段は、前記画像処理パイ
プラインの処理の内容に応じて、前記画像記憶手段に格
納された画像を一部重複して入力することを特徴とす
る、請求項1に記載の画像処理装置。
3. The image processing apparatus according to claim 1, wherein the division input unit inputs the images stored in the image storage unit in a partially overlapping manner in accordance with the contents of the processing of the image processing pipeline. An image processing apparatus according to claim 1.
【請求項4】 前記第1の統合処理手段は、前記画像処
理手段の処理の内容に応じて、前記画像処理パイプライ
ンからの出力を統合する際に、出力画像を外側に所定の
画素数分だけ拡張して前記画像記憶手段に格納すること
を特徴とする、請求項1に記載の画像処理装置。
4. The image processing apparatus according to claim 1, wherein the first integration processing unit is configured to integrate the output from the image processing pipeline with a predetermined number of pixels outward when integrating the output from the image processing pipeline in accordance with the content of the processing of the image processing unit. The image processing apparatus according to claim 1, wherein the image processing apparatus expands only the image data and stores it in the image storage unit.
【請求項5】 前記画像処理手段は、前記画像記憶手段
に格納された入力画像の全体を読み出し可能領域とし、
出力画像の別々の領域に対応した処理を行うことを特徴
とする、請求項1に記載の画像処理装置。
5. The image processing unit sets the entirety of the input image stored in the image storage unit as a readable area,
The image processing apparatus according to claim 1, wherein processing corresponding to different regions of the output image is performed.
【請求項6】 前記画像処理手段の各々は、処理の内容
に応じて対象画素数がほぼ等しくなるように分割された
出力画像の各領域に対して処理を行うことを特徴とす
る、請求項5に記載の画像処理装置。
6. The image processing device according to claim 1, wherein each of the image processing units performs a process on each area of the output image divided so that the number of target pixels is substantially equal according to the content of the process. 6. The image processing device according to 5.
【請求項7】 少なくとも1つのプロセッサを擁するマ
ルチプロセスまたはマルチスレッド処理環境に実現さ
れ、前記分割入力手段と前記画像処理パイプラインはそ
の組毎に1つづつのプロセスまたはスレッドで処理さ
れ、前記画像処理手段はそれぞれに1つづつのプロセス
またはスレッドにより処理されることを特徴とする、請
求項1乃至6のいずれかに記載の画像処理装置。
7. A multi-process or multi-thread processing environment having at least one processor, wherein the divided input means and the image processing pipeline are processed by one process or thread for each set, and 7. The image processing apparatus according to claim 1, wherein each of the units is processed by one process or thread.
【請求項8】 画像記憶手段に格納された画像データの
分割領域データをそれぞれ複数の分割入力手段へ入力す
るステップと、 前記分割入力手段に入力された複数の分割領域データ各
々について、分割領域毎に独立に処理可能な画像処理を
複数の画像処理パイプラインにより並列処理するステッ
プと、 前記複数の画像処理パイプラインの処理結果を統合して
前記画像記憶手段に出力するステップと、 前記画像記憶手段に格納された画像を読み出して複数の
画像処理手段により、広い参照領域を要する画像処理を
行うステップと、 前記複数の画像処理手段による広い参照領域を要する処
理の処理結果を統合して前記画像記憶手段に出力するス
テップと、 を有することを特徴とする画像処理方法。
8. A step of inputting the divided area data of the image data stored in the image storage means to a plurality of divided input means, respectively, for each of the plurality of divided area data inputted to the divided input means, Parallel processing of image processing that can be independently processed by a plurality of image processing pipelines; integrating the processing results of the plurality of image processing pipelines and outputting the integrated processing results to the image storage unit; Reading an image stored in the image storage unit and performing image processing requiring a wide reference area by a plurality of image processing means; and integrating the processing results of the processing requiring a wide reference area by the plurality of image processing means into the image storage Outputting to the means.
JP9114603A 1997-05-02 1997-05-02 Image processor and image processing method Pending JPH10304184A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP9114603A JPH10304184A (en) 1997-05-02 1997-05-02 Image processor and image processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9114603A JPH10304184A (en) 1997-05-02 1997-05-02 Image processor and image processing method

Publications (1)

Publication Number Publication Date
JPH10304184A true JPH10304184A (en) 1998-11-13

Family

ID=14641995

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9114603A Pending JPH10304184A (en) 1997-05-02 1997-05-02 Image processor and image processing method

Country Status (1)

Country Link
JP (1) JPH10304184A (en)

Cited By (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001109905A (en) * 1999-10-01 2001-04-20 Mitsubishi Electric Inf Technol Center America Inc Rendering method of volume data set in volume rendering system
JP2001325587A (en) * 2000-05-16 2001-11-22 Dainippon Printing Co Ltd Outward appearance inspecting device
JP2002247593A (en) * 2001-02-16 2002-08-30 Olympus Optical Co Ltd Image processor
US6987894B2 (en) 2000-04-28 2006-01-17 Nec Electronics Corporation Appearance inspection apparatus and method in which plural threads are processed in parallel
US7038810B1 (en) 1998-12-14 2006-05-02 Canon Kabushiki Kaisha Image processing method and apparatus, image processing system, and storage medium
JP2006174138A (en) * 2004-12-16 2006-06-29 Sony Corp Data processor, image processing apparatus, method and program therefor
WO2006123822A1 (en) * 2005-05-20 2006-11-23 Sony Corporation Signal processor
WO2007072644A1 (en) * 2005-12-19 2007-06-28 Matsushita Electric Industrial Co., Ltd. Two-dimensional filter arithmetic unit and method
US7286720B2 (en) 2001-08-21 2007-10-23 Canon Kabushiki Kaisha Image processing apparatus, image input/output apparatus, scaling method and memory control method
JP2007304886A (en) * 2006-05-11 2007-11-22 Fuji Xerox Co Ltd Data processor and its program
JP2009159631A (en) * 2002-02-13 2009-07-16 Canon Inc Image processor, image processing method, computer program, and recording medium
US7729016B2 (en) 2005-09-14 2010-06-01 Konica Minolta Business Technologies, Inc. Image processing apparatus, image processing method and image processing program for use therein
JP2010153942A (en) * 2008-12-23 2010-07-08 Casio Computer Co Ltd Image processing apparatus, image processing method, and program
KR100971148B1 (en) 2008-05-16 2010-07-20 포항공과대학교 산학협력단 Parallel structure image processing apparatus and method for image matching with adjusting intensities
JP2010244113A (en) * 2009-04-01 2010-10-28 Canon Inc Image processor, image processing method and program
JP2010244184A (en) * 2009-04-02 2010-10-28 Seiko Epson Corp Video processing device and video processing method
JP2011035863A (en) * 2009-08-06 2011-02-17 Canon Inc Imaging apparatus
JP2011154711A (en) * 2002-10-31 2011-08-11 Lockheed Martin Corp Improved computing architecture, related system and method
JP2011529581A (en) * 2008-07-29 2011-12-08 トムソン ライセンシング Display characterization by filtering
US8165427B2 (en) 2002-02-13 2012-04-24 Canon Kabushiki Kaisha Data processing apparatus, image processing apparatus, and method therefor
JP2012138758A (en) * 2010-12-27 2012-07-19 Casio Comput Co Ltd Image processor, image processing method, and program
KR101204866B1 (en) 2010-10-26 2012-11-26 재단법인대구경북과학기술원 Method and apparatus of executing pixel calculation within window area at high speed in window-based image processing
JP2014157411A (en) * 2013-02-14 2014-08-28 Canon Inc Data processing device, control method thereof, and data processing program
JP2015513837A (en) * 2012-02-24 2015-05-14 アップル インコーポレイテッド Parallel scaler processing
JP2016058947A (en) * 2014-09-11 2016-04-21 株式会社ソシオネクスト Image processing apparatus and image processing method
JP2016096536A (en) * 2014-11-05 2016-05-26 キヤノン株式会社 Information processing device and control method thereof
WO2023113466A1 (en) * 2021-12-14 2023-06-22 주식회사 모빌린트 Image processing device and method for integral image processing, and recording medium

Cited By (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7038810B1 (en) 1998-12-14 2006-05-02 Canon Kabushiki Kaisha Image processing method and apparatus, image processing system, and storage medium
JP2001109905A (en) * 1999-10-01 2001-04-20 Mitsubishi Electric Inf Technol Center America Inc Rendering method of volume data set in volume rendering system
US6987894B2 (en) 2000-04-28 2006-01-17 Nec Electronics Corporation Appearance inspection apparatus and method in which plural threads are processed in parallel
JP2001325587A (en) * 2000-05-16 2001-11-22 Dainippon Printing Co Ltd Outward appearance inspecting device
JP2002247593A (en) * 2001-02-16 2002-08-30 Olympus Optical Co Ltd Image processor
US7286720B2 (en) 2001-08-21 2007-10-23 Canon Kabushiki Kaisha Image processing apparatus, image input/output apparatus, scaling method and memory control method
US8867864B2 (en) 2002-02-13 2014-10-21 Canon Kabushiki Kaisha Data processing apparatus, image processing apparatus, and method therefor
US8165427B2 (en) 2002-02-13 2012-04-24 Canon Kabushiki Kaisha Data processing apparatus, image processing apparatus, and method therefor
JP2009159631A (en) * 2002-02-13 2009-07-16 Canon Inc Image processor, image processing method, computer program, and recording medium
US9361664B2 (en) 2002-02-13 2016-06-07 Canon Kabushiki Kaisha Data processing apparatus, image processing apparatus, and method therefor
JP2011175655A (en) * 2002-10-31 2011-09-08 Lockheed Martin Corp Pipeline accelerator including multiple pipeline units, related computing machine, and method
JP2011170868A (en) * 2002-10-31 2011-09-01 Lockheed Martin Corp Pipeline accelerator for improved computing architecture, and related system and method
JP2011154711A (en) * 2002-10-31 2011-08-11 Lockheed Martin Corp Improved computing architecture, related system and method
JP2006174138A (en) * 2004-12-16 2006-06-29 Sony Corp Data processor, image processing apparatus, method and program therefor
US8464025B2 (en) 2005-05-20 2013-06-11 Sony Corporation Signal processing apparatus with signal control units and processor units operating based on different threads
KR101270925B1 (en) * 2005-05-20 2013-06-07 소니 주식회사 Signal processor
WO2006123822A1 (en) * 2005-05-20 2006-11-23 Sony Corporation Signal processor
JP4893621B2 (en) * 2005-05-20 2012-03-07 ソニー株式会社 Signal processing device
US7729016B2 (en) 2005-09-14 2010-06-01 Konica Minolta Business Technologies, Inc. Image processing apparatus, image processing method and image processing program for use therein
US8260075B2 (en) 2005-12-19 2012-09-04 Panasonic Corporation Two-dimensional filter arithmetic device and method
WO2007072644A1 (en) * 2005-12-19 2007-06-28 Matsushita Electric Industrial Co., Ltd. Two-dimensional filter arithmetic unit and method
JP4824703B2 (en) * 2005-12-19 2011-11-30 パナソニック株式会社 Two-dimensional filter arithmetic apparatus and method
JP2007304886A (en) * 2006-05-11 2007-11-22 Fuji Xerox Co Ltd Data processor and its program
WO2009139596A3 (en) * 2008-05-16 2011-11-24 Postech Academy-Industry Foundation Parallel image processing apparatus and method for image matching using intensity adjustment
KR100971148B1 (en) 2008-05-16 2010-07-20 포항공과대학교 산학협력단 Parallel structure image processing apparatus and method for image matching with adjusting intensities
JP2011529581A (en) * 2008-07-29 2011-12-08 トムソン ライセンシング Display characterization by filtering
JP2010153942A (en) * 2008-12-23 2010-07-08 Casio Computer Co Ltd Image processing apparatus, image processing method, and program
JP2010244113A (en) * 2009-04-01 2010-10-28 Canon Inc Image processor, image processing method and program
JP2010244184A (en) * 2009-04-02 2010-10-28 Seiko Epson Corp Video processing device and video processing method
US8305495B2 (en) 2009-04-02 2012-11-06 Seiko Epson Corporation Video processing device, video display device, and video processing method
JP2011035863A (en) * 2009-08-06 2011-02-17 Canon Inc Imaging apparatus
KR101204866B1 (en) 2010-10-26 2012-11-26 재단법인대구경북과학기술원 Method and apparatus of executing pixel calculation within window area at high speed in window-based image processing
JP2012138758A (en) * 2010-12-27 2012-07-19 Casio Comput Co Ltd Image processor, image processing method, and program
JP2015513837A (en) * 2012-02-24 2015-05-14 アップル インコーポレイテッド Parallel scaler processing
JP2014157411A (en) * 2013-02-14 2014-08-28 Canon Inc Data processing device, control method thereof, and data processing program
JP2016058947A (en) * 2014-09-11 2016-04-21 株式会社ソシオネクスト Image processing apparatus and image processing method
JP2016096536A (en) * 2014-11-05 2016-05-26 キヤノン株式会社 Information processing device and control method thereof
WO2023113466A1 (en) * 2021-12-14 2023-06-22 주식회사 모빌린트 Image processing device and method for integral image processing, and recording medium

Similar Documents

Publication Publication Date Title
JPH10304184A (en) Image processor and image processing method
EP1883045A1 (en) Signal processor
US5202670A (en) Image processing apparatus
CN108073549B (en) Convolution operation device and method
US7546425B2 (en) Data processor with a built-in memory
JPH1091780A (en) Convolution device and convolution execution method
EP0773512B1 (en) A method and apparatus for scaling images
Oh et al. FPGA-based fast image warping with data-parallelization schemes
JP3305406B2 (en) Program-controlled processor
JP4465844B2 (en) Image processing apparatus and method, and recording medium
US6741294B2 (en) Digital signal processor and digital signal processing method
US20240031704A1 (en) Hybrid addressing for imaging and vision data
JPH0728991A (en) Data processing circuit using memory
JPH0785266A (en) Image rotating device
JP2000013679A (en) Image processor
JP3426484B2 (en) Image data processing apparatus and image data processing method
JPS63245568A (en) Picture converter
JP4465843B2 (en) Image processing apparatus and method, and recording medium
GB2304014A (en) Method and apparatus for uniformly scaling a digital image
JP2697679B2 (en) Dither image display device
JP4244619B2 (en) Image data processing device
JPS62219078A (en) Arithmetic and processing device for expanded picture
JPH08235352A (en) Picture variable magnification device
JPS6177965A (en) Picture processor
JPS63163981A (en) Graphic enlarging and reducing circuit

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20041110

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050104

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050223

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050823

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20051018

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20060905