JP2000149006A - Medium in which image processing program is recorded, image processor and image processing method - Google Patents

Medium in which image processing program is recorded, image processor and image processing method

Info

Publication number
JP2000149006A
JP2000149006A JP11186789A JP18678999A JP2000149006A JP 2000149006 A JP2000149006 A JP 2000149006A JP 11186789 A JP11186789 A JP 11186789A JP 18678999 A JP18678999 A JP 18678999A JP 2000149006 A JP2000149006 A JP 2000149006A
Authority
JP
Japan
Prior art keywords
image
divided data
data
image processing
processing
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
JP11186789A
Other languages
Japanese (ja)
Inventor
Masanori Ishida
正紀 石田
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.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
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 Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP11186789A priority Critical patent/JP2000149006A/en
Publication of JP2000149006A publication Critical patent/JP2000149006A/en
Pending legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To reduce data quantity and expense for processing resources by instructing only a part to be utilized, when an image from among divided objects is treated. SOLUTION: S-areas (a) to (c) are requested to make them utilizable from a processed image management object to a divided image management object so as to make corresponding S-Units (a) to (i) are made utilizable. Each piece of divided object data is inputted in the divided image management object via a function management object, substance is stored in a spool file while managing information as an area and in addition, the informed image area S-Area is developed on a memory, so as to be utilized from other object by the divided image management object. An emphasis processing is executed by an emphasis processing object, and a magnification processing is executed by a magnification processing object, after all the S-Units (a) to (i) containing the image area S-Areas are developed on the memory by the divided image management object.

Description

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

【0001】[0001]

【発明の属する技術分野】本発明は、画像処理プログラ
ムを記録した媒体、画像処理装置および画像処理方法に
関し、特に、ページデータが分割されるとともに、分割
されたデータが順不同に配置された場合に好適な画像処
理プログラムを記録した媒体、画像処理装置および画像
処理方法に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a medium recording an image processing program, an image processing apparatus and an image processing method, and more particularly, to a case where page data is divided and the divided data are arranged in random order. The present invention relates to a medium recording an appropriate image processing program, an image processing device, and an image processing method.

【0002】[0002]

【従来の技術】コンピュータなどでは、画像をドットマ
トリクス状に配置された画素にて構成する画像データと
して表し、この画像データに対して所定の画像処理を実
行してている。一方、近年、仮想的なドットマトリクス
状の領域に対して、オブジェクト画像を適宜配置して一
枚の画像を表す手法が利用されている。すなわち、文字
だけを表すオブジェクト画像や、イメージを表すオブジ
ェクト画像を個別に用意し、所定の順番で重ね合わせて
画像を完成させる。
2. Description of the Related Art In a computer or the like, an image is represented as image data composed of pixels arranged in a dot matrix, and predetermined image processing is executed on the image data. On the other hand, in recent years, a technique of appropriately arranging object images in a virtual dot matrix area to represent one image has been used. That is, an object image representing only a character or an object image representing an image is individually prepared, and the images are completed by overlapping in a predetermined order.

【0003】[0003]

【発明が解決しようとする課題】上述した従来のものに
おいて、オブジェクト画像を個別に用意し所定の順番で
重ね合わせた画像を扱う際、コンピュータの処理の都合
上、一つのオブジェクト画像を複数に分割することが多
い。例えば、オブジェクト画像が大きくなるのにつれて
データ量も極めて多大となり、一体として処理するには
処理資源の負担が大きくなるという課題がある。
In the above-described conventional apparatus, when an object image is prepared individually and an image superimposed in a predetermined order is handled, one object image is divided into a plurality of pieces for convenience of computer processing. Often do. For example, as the size of the object image increases, the amount of data becomes extremely large, and there is a problem that the processing resources are burdened to perform the processing in an integrated manner.

【0004】本発明は、上記課題にかんがみてなされた
もので、分割されたオブジェクト画像のなかから画像を
扱う際に利用部分のみを指示することにより、データ量
を低減することができるとともに、処理資源の負担を少
なくすることが可能な画像処理プログラムを記録した媒
体、画像処理装置および画像処理方法の提供を目的とす
る。
SUMMARY OF THE INVENTION The present invention has been made in view of the above-mentioned problems, and it is possible to reduce a data amount by designating only a portion to be used when handling an image among divided object images. It is an object of the present invention to provide a medium, an image processing apparatus, and an image processing method in which an image processing program capable of reducing the burden on resources is recorded.

【0005】[0005]

【課題を解決するための手段】上記目的を達成するた
め、請求項1にかかる発明は、ページデータが分割さ
れ、この分割データが順不同に配置された元画像データ
の中から所定の画像処理に要する分割データを選択し、
同選択した分割データの所定の処理領域に対して同画像
処理を実行するコンピュータにて読取り可能な画像処理
プログラムを記録した媒体であって、上記元画像データ
より所定の画像処理を実施する処理領域を含む分割デー
タを選択する分割データ選択ステップと、全分割データ
のうち上記分割データ選択ステップにて選択された分割
データを限定してアクセス可能な状態に指示する選択分
割データ指示ステップと、上記選択分割データ指示ステ
ップにて指示された分割データの所定の処理領域に対し
て画像処理を実行する画像処理実行ステップとを具備す
る構成としてある。
In order to achieve the above object, according to the present invention, page data is divided, and the divided data is subjected to predetermined image processing from original image data arranged in random order. Select the required split data,
A medium storing a computer-readable image processing program for executing the same image processing on a predetermined processing area of the selected divided data, the processing area performing a predetermined image processing from the original image data A divided data selecting step of selecting divided data including: a selected divided data instruction step of instructing the divided data selected in the divided data selecting step to be in an accessible state in all the divided data; An image processing execution step of executing image processing on a predetermined processing area of the divided data designated in the divided data designation step.

【0006】上記のように構成した請求項1にかかる発
明において、本画像処理プログラムを記録した媒体は、
画像処理の対象となるページデータが分割されて順不同
に配置され所定の記憶領域に格納された元画像データの
中から所定の画像処理に要する分割データを選択し、同
選択した分割データの所定の処理領域に対して画像処理
を実行するに際し、この選択された分割データに高速に
アクセスすることが可能になっている。具体的には、分
割データ選択ステップが元画像データより所定の画像処
理を実施する処理領域を含む分割データを選択する。そ
して、選択分割データ指示ステップは、分割データ選択
ステップにて選択された分割データを全分割データのな
かから限定してアクセス可能な状態に指示する。このよ
うに指示された分割データに画像処理を実施する際に、
画像処理実行ステップは、分割データの所定の処理領域
に対して画像処理を実行する。すなわち、分割データ選
択ステップにて選択された利用頻度の高い分割データを
選択分割データ指示ステップにて限定して指示して利用
可能にする。そして、画像処理実行ステップはこの指示
された分割データの所定の処理領域に対して画像処理を
実行する。従って、不要な分割データを処理対象とする
ことがなくなり、処理速度などの低下を防止することが
可能になる。
In the invention according to claim 1 configured as described above, the medium on which the image processing program is recorded is:
The page data to be subjected to the image processing is divided and arranged in random order, and the divided data required for the predetermined image processing is selected from the original image data stored in the predetermined storage area. When performing image processing on the processing area, the selected divided data can be accessed at high speed. Specifically, the divided data selecting step selects divided data including a processing area for performing predetermined image processing from the original image data. Then, the selected divided data instructing step instructs the divided data selected in the divided data selecting step to an accessible state by limiting the divided data from all the divided data. When performing image processing on the divided data designated in this way,
The image processing execution step executes image processing on a predetermined processing area of the divided data. That is, the frequently used divided data selected in the divided data selecting step is limited and instructed in the selected divided data instructing step to make it available. Then, the image processing execution step executes image processing on a predetermined processing area of the designated divided data. Therefore, unnecessary divided data is not processed, and a reduction in processing speed or the like can be prevented.

【0007】上述した元画像データは、画像全体を構成
するものであってもよいし、画像に含まれるオブジェク
ト画像から構成されるものであってもよい。そして、元
画像データのデータ形式は、ドットマトリクス状の画素
にて形成されるビットマップデータであってもよいし、
描画されている図形などが所定の描画命令にて記述され
たベクターデータであってもよいし、適宜変更可能であ
る。ここで、処理領域管理モジュールが処理領域を形成
するとは、例えば、元画像データが画像に含まれるオブ
ジェクト画像についてのものであって、ランダムに分割
されて形成されているものである場合、ランダムに分割
されているデータのなかから画像処理モジュールにて画
像処理の対象となるある特定の連続した領域を検索し
て、連結しつつ形成することである。むろん、ランダム
に分割されていないときは、所定の位置から必要となる
領域を区分して処理領域を形成することとなる。分割デ
ータ選択ステップは、所定の画像処理を実施する処理領
域を含む分割データを元画像データより選択することが
できればよく、上記処理領域に対応する分割データを元
画像データの中から検索して抽出し選択すればよい。選
択分割データ指示ステップは、選択された分割データを
限定してアクセス可能に指示することができればよく、
選択された分割データの実体を限定して所定の領域に保
持させ利用可能に指示し、画像処理実行ステップからの
アクセスを可能にしてもよいし、限定する分割データを
間接的に指示し利用可能にしてもよい。また、指示した
分割データを利用可能にする場合、例えば、対応する分
割データの実体をメモリに展開して利用可能にすればよ
い。画像処理実行ステップは、指示された分割データの
処理領域に対して所定の画像処理を実行することができ
ればよく、その画像処理の内容は特に限定されない。例
えば、強調処理、拡大処理、 色調処理などがある。む
ろん、それぞれ強調に使用するパラメータ、拡大に使用
するパラメータなどを変更することによって、各処理を
複数にしてもよい。また、選択された分割データの所定
の処理領域に対して画像処理を実行することができれば
よく、処理領域として選択された分割データ全体を対象
として画像処理を実行してもよいし、選択された分割デ
ータより所定の処理領域を抽出して画像処理を実行して
もよい。
[0007] The above-mentioned original image data may constitute the entire image or may comprise object images included in the image. The data format of the original image data may be bitmap data formed by pixels in a dot matrix,
The figure or the like being drawn may be vector data described by a predetermined drawing command, or may be changed as appropriate. Here, the processing area management module forms a processing area means, for example, that the original image data is for an object image included in the image and is formed by being randomly divided, The purpose is to search for a specific continuous area to be subjected to image processing by the image processing module from the divided data and form the area while connecting the areas. Of course, when the image is not divided at random, a necessary area is divided from a predetermined position to form a processing area. In the divided data selection step, it is sufficient that the divided data including the processing area for performing the predetermined image processing can be selected from the original image data, and the divided data corresponding to the processing area is searched for and extracted from the original image data. Then select it. In the selected divided data instructing step, it suffices if the selected divided data can be instructed to be accessible with limitation.
The entity of the selected divided data may be limited and held in a predetermined area to indicate that the data can be used, and access from the image processing execution step may be enabled, or the limited divided data may be indirectly specified and used. It may be. When the designated divided data can be used, for example, the entity of the corresponding divided data may be developed in a memory and used. The image processing execution step only needs to be able to execute predetermined image processing on the processing area of the designated divided data, and the content of the image processing is not particularly limited. For example, there are emphasis processing, enlargement processing, and color tone processing. Of course, each process may be performed in plural by changing parameters used for emphasis, parameters used for enlargement, and the like. Further, it is sufficient that image processing can be performed on a predetermined processing area of the selected divided data, and image processing may be performed on the entire divided data selected as the processing area, or the selected divided data may be processed. Image processing may be performed by extracting a predetermined processing area from the divided data.

【0008】ここで、その記録媒体は、磁気記録媒体で
あってもよいし光磁気記録媒体であってもよいし、今後
開発されるいかなる記録媒体においても全く同様に考え
ることができる。また、一次複製品、二次複製品などの
複製段階については全く問う余地無く同等である。その
他、供給方法として通信回線を利用して行なう場合でも
本発明が利用されていることにはかわりない。さらに、
一部がソフトウェアであって、一部がハードウェアで実
現されている場合においても発明の思想において全く異
なるものではなく、一部を記録媒体上に記憶しておいて
必要に応じて適宜読み込まれるような形態のものとして
あってもよい。
Here, the recording medium may be a magnetic recording medium, a magneto-optical recording medium, or any recording medium to be developed in the future. Also, the duplication stages of the primary duplicated product, the secondary duplicated product, and the like are equivalent without any question. In addition, the present invention is not limited to the case where the present invention is used even when the supply is performed using a communication line. further,
The concept of the present invention is not completely different even when part is software and part is realized by hardware, and part is stored on a recording medium and read as needed as needed. Such a form may be adopted.

【0009】選択分割データ指示ステップにおいて分割
データ選択ステップにて選択された分割データを指示す
る具体的な一例として、請求項2にかかる発明は、請求
項1に記載の画像処理プログラムを記録した媒体におい
て、上記選択分割データ指示ステップは、選択された分
割データを元画像データにおける位置情報により間接的
に指示する構成としてある。上記のように構成した請求
項2にかかる発明において、選択分割データ指示ステッ
プは、選択された分割データを元画像データにおける位
置情報により間接的に指示する。すなわち、選択分割デ
ータ指示ステップは、選択された分割データの順不同に
配置された元画像データにおける位置情報を取得する。
そして、この位置情報を指示し分割データの利用を可能
にする。画像処理実行ステップは、指示され利用可能に
なった分割データの所定の処理領域に対して画像処理を
実行する。従って、画像処理を実行するごとに元画像デ
ータにて順不同にて配置された分割データの全体を処理
対象として当該画像処理に要する分割データを検索し指
示する必要がないため処理の高速化を図ることができ
る。
According to a second aspect of the present invention, as a specific example of designating the divided data selected in the divided data selecting step in the selected divided data designating step, a medium in which the image processing program according to the first aspect is recorded is provided. In the above, the selected divided data designating step is configured to indirectly designate the selected divided data based on position information in the original image data. In the invention according to claim 2 configured as described above, the selected divided data instructing step indirectly designates the selected divided data by position information in the original image data. That is, the selected divided data instruction step acquires position information of the selected divided data in the original image data arranged in any order.
Then, this position information is indicated to enable the use of the divided data. In the image processing execution step, image processing is performed on a predetermined processing area of the divided data that has been designated and made available. Therefore, each time the image processing is executed, it is not necessary to search and instruct the divided data required for the image processing for the entire divided data arranged in random order in the original image data, so that the processing is speeded up. be able to.

【0010】選択分割データ指示ステップにて分割デー
タ選択ステップにて選択された分割データを指示する他
の具体的な一例として、請求項3にかかる発明は、請求
項1に記載の画像処理プログラムを記録した媒体におい
て、上記選択分割データ指示ステップは、順不同の各分
割データに所定の識別子を付与するとともに、選択され
た分割データの識別子に基づく識別子テーブルを形成
し、同選択された分割データを同識別子テーブルにより
間接的に指示する構成としてある。上記のように構成し
た請求項3にかかる発明において、選択分割データ指示
ステップは、順不同の各分割データに所定の識別子を付
与するとともに、選択された分割データの識別子に基づ
く識別子テーブルを形成する。そして、選択された分割
データを同識別子テーブルにより間接的に指示し利用可
能にする。すなわち、選択分割データ指示ステップは、
分割データ選択ステップが選択した分割データを指示す
るに際し、順不同に配置された各分割データに識別子、
例えば、ID番号を割り付け、選択された分割データに
該当するID番号を取り出して識別子テーブルを形成す
る。このように選択された分割データを間接的に指示し
利用可能にする。画像処理実行ステップは、この指示さ
れた分割データの所定の処理領域に対して画像処理を実
行する。従って、画像処理を実行するごとに元画像デー
タにて順不同にて配置された分割データの全体を処理対
象として当該画像処理に要する分割データを検索し指示
する必要がないため処理の高速化を図ることができる。
[0010] As another specific example of designating the divided data selected in the divided data selection step in the selected divided data designating step, the invention according to claim 3 implements the image processing program according to claim 1. In the recorded medium, the selected divided data instructing step assigns a predetermined identifier to each of the divided data in any order, forms an identifier table based on the identifier of the selected divided data, and stores the selected divided data in the same order. The configuration is such that an instruction is made indirectly by an identifier table. In the invention according to claim 3 configured as described above, the selected divided data instructing step assigns a predetermined identifier to each of the divided data in any order and forms an identifier table based on the identifier of the selected divided data. Then, the selected divided data is indirectly designated by the same identifier table and made available. That is, the selected divided data indicating step includes:
When indicating the selected divided data in the divided data selection step, an identifier is assigned to each of the divided data arranged in any order,
For example, an ID number is assigned, an ID number corresponding to the selected divided data is taken out, and an identifier table is formed. The divided data selected in this way is indirectly designated and made available. The image processing execution step executes image processing on a predetermined processing area of the designated divided data. Therefore, each time the image processing is executed, it is not necessary to search and instruct the divided data required for the image processing for the entire divided data arranged in random order in the original image data, so that the processing is speeded up. be able to.

【0011】選択分割データ指示ステップにて分割デー
タ選択ステップにて選択された分割データを指示するさ
らに他の具体的な一例として、請求項4にかかる発明
は、請求項1に記載の画像処理プログラムを記録した媒
体において、上記選択分割データ指示ステップは、上記
分割データ選択ステップにて選択された分割データを元
画像データが格納されている記憶領域より相対的に高速
アクセスが可能な記憶領域に転送して指示する構成とし
てある。上記のように構成した請求項4にかかる発明に
おいて、選択分割データ指示ステップは、分割データ選
択ステップにて選択された分割データを元画像データが
格納されている記憶領域より相対的に高速アクセスが可
能な記憶領域に転送して指示し利用可能にする。例え
ば、元画像データがハードディスクに格納されている場
合、選択分割データ指示ステップは、選択された分割デ
ータを主メモリに転送して格納させたり、キャッシュメ
モリに転送して格納させる。従って、画像処理実行ステ
ップは、このハードディスクより相対的に高速アクセス
可能な主メモリあるいはキャッシュメモリに格納された
分割データの所定の処理領域を使用し画像処理を実行す
る。従って、画像処理を実行するごとに元画像データに
て順不同にて配置された分割データの全体を処理対象と
して当該画像処理に要する分割データを検索し指示する
必要がないため処理の高速化を図ることができる。画像
処理実行ステップは処理対象となる分割データを利用可
能とする場合、本来の処理対象とする画像領域だけでな
く、他の領域を画像処理において参照することがある。
そこで、請求項5にかかる発明は、請求項1〜請求項4
のいずれかに記載の画像処理プログラムを記録した媒体
において、上記分割データ選択ステップは、上記処理領
域に画像処理において参照する周縁領域を加えた処理領
域を含む分割データを選択する構成としてある。上記の
ように構成した請求項5にかかる発明において、上記分
割データ選択ステップは、上記処理領域に画像処理にお
いて参照する周縁領域を加えた処理領域を含む分割デー
タを選択する。すなわち、本画像処理プログラムでは、
元画像データを表現するために複数の分割データが生成
され、順不同に配置される。そして、この元画像データ
から所定の処理領域に対応する分割データを選択し所定
の画像処理を実行する。かかる場合、処理の都合上、画
像処理実行ステップが処理対象とする画像領域の分割デ
ータを利用可能とする場合、本来の処理対象とする画像
領域だけでなく、画像処理において参照する周縁領域ま
で加える。
According to a fourth aspect of the present invention, there is provided a computer-readable storage medium storing the image processing program according to the first aspect of the present invention, as still another specific example of designating the divided data selected in the divided data selecting step in the selected divided data specifying step. In the medium on which the divided data is selected, the divided data selection step transfers the divided data selected in the divided data selection step to a storage area that can be accessed relatively faster than the storage area in which the original image data is stored. The instruction is given as follows. In the invention according to claim 4 configured as described above, the selected divided data instructing step allows the divided data selected in the divided data selecting step to access the divided data selected in the divided data selecting step relatively faster than the storage area in which the original image data is stored. Transfer to a possible storage area to instruct and make available. For example, when the original image data is stored in the hard disk, the selected divided data instructing step transfers the selected divided data to the main memory for storage, or transfers the selected divided data to the cache memory for storage. Therefore, in the image processing execution step, the image processing is executed using a predetermined processing area of the divided data stored in the main memory or the cache memory which can be accessed relatively faster than the hard disk. Therefore, each time the image processing is executed, it is not necessary to search and instruct the divided data required for the image processing for the entire divided data arranged in random order in the original image data, so that the processing is speeded up. be able to. When the divided data to be processed can be used in the image processing execution step, not only the original image area to be processed but also other areas may be referred to in the image processing.
Therefore, the invention according to claim 5 is based on claims 1 to 4
In the medium storing the image processing program according to any one of the above, the divided data selecting step is configured to select divided data including a processing area obtained by adding a peripheral area referred to in image processing to the processing area. In the invention according to claim 5 configured as described above, the divided data selecting step selects divided data including a processing area obtained by adding a peripheral area to be referred to in image processing to the processing area. That is, in this image processing program,
A plurality of divided data are generated to represent the original image data, and are arranged in any order. Then, divided data corresponding to a predetermined processing area is selected from the original image data, and predetermined image processing is performed. In such a case, if the divided data of the image area to be processed is made available in the image processing execution step for the sake of processing, not only the original image area to be processed but also the peripheral area referred to in the image processing is added. .

【0012】ところで、このような画像処理プログラム
を記録した媒体はある機器に組み込まれた状態で利用さ
れることもあるなど、発明の思想としては、記録媒体に
限らず、各種の態様を含むものである。従って、ソフト
ウェアであったりハードウェアであったりするなど、適
宜変更可能である。そして、発明の思想の具現化例とし
て、ページデータが分割され、この分割データが順不同
に配置された元画像データの中から所定の画像処理に要
する分割データを選択し、同選択した分割データに対し
て同画像処理を実行する画像処理装置としても当然に存
在し利用されるといわざるをえない。その一例として、
請求項6にかかる発明は、ページデータが分割され、こ
の分割データが順不同に配置された元画像データの中か
ら所定の画像処理に要する分割データを選択し、同選択
した分割データの所定の処理領域に対して同画像処理を
実行する画像処理装置であって、上記元画像データより
所定の画像処理を実施する処理領域を含む分割データを
選択する分割データ選択手段と、全分割データのうち上
記分割データ選択手段が選択した分割データを限定して
アクセス可能な状態に指示し利用可能にする選択分割デ
ータ指示手段と、上記選択分割データ指示手段が利用可
能にした分割データの所定の処理領域に対して画像処理
を実行する画像処理実行手段とを具備する構成としてあ
る。すなわち、必ずしも画像処理プログラムを記録した
媒体にて具現化されるとともに提供することに限定され
るものではなく、画像処理装置としても提供することも
有効であることに相違はない。
By the way, the idea of the invention is not limited to a recording medium, but includes various aspects, such that a medium recording such an image processing program is sometimes used in a state of being incorporated in a certain device. . Therefore, it can be changed as appropriate, such as software or hardware. Then, as an embodiment of the idea of the present invention, page data is divided, the divided data is selected from among the original image data arranged in random order, and the divided data required for predetermined image processing is selected. On the other hand, it can be said that an image processing apparatus that executes the same image processing naturally exists and is used. As an example,
According to a sixth aspect of the present invention, the page data is divided, the divided data is selected from the original image data arranged in any order, and the divided data required for the predetermined image processing is selected, and the predetermined processing of the selected divided data is performed. An image processing apparatus that performs the same image processing on an area, wherein the divided data selecting unit selects a divided data including a processing area for performing a predetermined image processing from the original image data, and A selected divided data instructing means for limiting the divided data selected by the divided data selecting means to an accessible state and making it available, and a predetermined processing area of the divided data made available by the selected divided data instructing means. On the other hand, the image processing apparatus is provided with image processing execution means for executing image processing. That is, the present invention is not necessarily limited to being embodied and provided in a medium in which the image processing program is recorded, and there is no difference that providing as an image processing apparatus is effective.

【0013】このように、ページデータが分割され、こ
の分割データが順不同に配置された元画像データの中か
ら所定の画像処理に要する分割データを選択し、同選択
した分割データの所定の処理領域に対して同画像処理を
実行する手法は必ずしも実体のある装置に限られる必要
はなく、その方法としても機能することは容易に理解で
きる。このため、請求項7にかかる発明は、ページデー
タが分割され、この分割データが順不同に配置された元
画像データの中から所定の画像処理に要する分割データ
を選択し、同選択した分割データの所定の処理領域に対
して同画像処理を実行する画像処理方法であって、上記
元画像データより所定の画像処理を実施する処理領域を
含む分割データを選択する分割データ選択工程と、全分
割データのうち上記分割データ選択工程にて選択された
分割データを限定してアクセス可能な状態に指示し利用
可能にする選択分割データ指示工程と、上記選択分割デ
ータ指示工程にて利用可能にされた分割データの所定の
処理領域に対して画像処理を実行する画像処理実行工程
とを具備する構成としてある。すなわち、必ずしも実体
のある画像処理装置に限らず、その画像処理方法として
も有効であることに相違はない。
In this manner, the page data is divided, and the divided data required for the predetermined image processing is selected from the original image data in which the divided data is arranged in any order, and the predetermined processing area of the selected divided data is selected. However, the method of executing the same image processing need not necessarily be limited to a substantial device, and it can be easily understood that the method also functions as the method. Therefore, according to the invention according to claim 7, the page data is divided and the divided data is selected from among the original image data arranged in random order, the divided data required for predetermined image processing, and the divided data of the selected divided data is selected. An image processing method for performing the same image processing on a predetermined processing area, comprising: a division data selection step of selecting division data including a processing area for performing the predetermined image processing from the original image data; A divided data selection step in which the divided data selected in the divided data selection step is limited and instructed to be accessible and used, and a division made available in the selected divided data specifying step And an image processing execution step of executing image processing on a predetermined processing area of the data. That is, there is no difference that the present invention is not necessarily limited to a substantial image processing apparatus but is also effective as an image processing method.

【0014】[0014]

【発明の効果】以上説明したように本発明は、分割され
順不同に配置された分割データのなかから画像処理とし
て扱う際に、利用部分のみを指示することにより、処理
対象とするデータ量を低減することができるとともに、
処理資源の負担を少なくすることが可能な画像処理プロ
グラムを記録した媒体を提供することができる。また、
請求項2にかかる発明によれば、選択した分割データを
この分割データの元画像データにおける位置情報に基づ
いて間接的に指示するため、処理の高速化を図ることが
可能になる。さらに、請求項3にかかる発明によれば、
選択した分割データをこの分割データに付与した識別子
に基づいて間接的に指示するため、処理の高速化を図る
ことが可能になる。さらに、請求項4にかかる発明によ
れば、選択した分割データを高速アクセス可能な記憶領
域に転送してしまうため、以降はこの記憶領域に対して
アクセスすればよく、処理の高速化を図ることが可能に
なる。さらに、請求項5にかかる発明によれば、処理対
象となる分割データに参照する周縁領域を付加すること
ができるため、より詳細な画像処理を実現することが可
能になる。さらに、請求項6にかかる発明によれば、分
割され順不同に配置された分割データのなかから画像処
理として扱う際に、利用部分のみを指示することによ
り、処理対象とするデータ量を低減することができると
ともに、処理資源の負担を少なくすることが可能な画像
処理装置を提供することができる。さらに、請求項7に
かかる発明によれば、分割され順不同に配置された分割
データのなかから画像処理として扱う際に、利用部分の
みを指示することにより、処理対象とするデータ量を低
減することができるとともに、処理資源の負担を少なく
することが可能な画像処理方法を提供することができ
る。
As described above, the present invention reduces the amount of data to be processed by designating only a used part when handling as image processing from among divided data arranged in a random order. Be able to
It is possible to provide a medium in which an image processing program capable of reducing a load on processing resources is recorded. Also,
According to the second aspect of the present invention, the selected divided data is indirectly instructed based on the position information of the divided data in the original image data, so that the processing speed can be increased. Further, according to the invention according to claim 3,
Since the selected divided data is indirectly instructed based on the identifier assigned to the divided data, the processing can be speeded up. Further, according to the invention of claim 4, the selected divided data is transferred to a storage area that can be accessed at high speed. Therefore, it is sufficient to access this storage area thereafter, and the processing speed is increased. Becomes possible. Further, according to the fifth aspect of the present invention, since a peripheral area to be referred to can be added to the divided data to be processed, more detailed image processing can be realized. Further, according to the present invention, when handling as image processing from among the divided data that has been divided and arranged in no particular order, it is possible to reduce the amount of data to be processed by designating only the used part. And an image processing apparatus capable of reducing the load on processing resources. Further, according to the invention according to claim 7, when handling as image processing from among the divided data that has been divided and arranged in random order, only the used portion is specified, thereby reducing the amount of data to be processed. And an image processing method capable of reducing the load on processing resources.

【0015】[0015]

【発明の実施の形態】以下、図面にもとづいて本発明の
実施形態を説明する。図1は本発明の一実施形態にかか
る画像処理プログラムを適用した画像処理システムを実
現するハードウェアの一例としてのコンピュータシステ
ム10をブロック図により示している。本コンピュータ
システム10は、画像データを直接的に入力する画像入
力デバイスとして、スキャナ11aとデジタルスチルカ
メラ11bとビデオカメラ11cとを備えており、コン
ピュータ本体12に接続されている。それぞれの入力デ
バイスは画像をドットマトリクス状の画素で表現した画
像データを生成してコンピュータ本体12に出力可能と
なっており、ここで同画像データはRGBの三原色にお
いてそれぞれ256階調表示することにより、約167
0万色を表現可能となっている。
Embodiments of the present invention will be described below with reference to the drawings. FIG. 1 is a block diagram showing a computer system 10 as an example of hardware for realizing an image processing system to which an image processing program according to an embodiment of the present invention is applied. The computer system 10 includes a scanner 11a, a digital still camera 11b, and a video camera 11c as image input devices for directly inputting image data, and is connected to a computer main body 12. Each input device is capable of generating image data representing an image by dot matrix pixels and outputting the image data to the computer main unit 12. Here, the image data is displayed in 256 gradations in three primary colors of RGB. , About 167
It is possible to express 10,000 colors.

【0016】コンピュータ本体12には、外部補助記憶
装置としてのフロッピーディスクドライブ13aとハー
ドディスク13bとCD−ROMドライブ13cとが接
続されており、ハードディスク13bにはシステム関連
の主要プログラムが記録されており、フロッピーディス
クやCD−ROMなどから適宜必要なプログラムなどを
読み込み可能となっている。また、コンピュータ本体1
2を外部のネットワークなどに接続するための通信デバ
イスとしてモデム14aが接続されており、外部のネッ
トワークに同公衆通信回線を介して接続し、ソフトウェ
アやデータをダウンロードして導入可能となっている。
この例ではモデム14aにて電話回線を介して外部にア
クセスするようにしているが、LANアダプタを介して
ネットワークに対してアクセスする構成とすることも可
能である。
The computer main body 12 is connected to a floppy disk drive 13a, a hard disk 13b, and a CD-ROM drive 13c as external auxiliary storage devices, and the hard disk 13b stores main system-related programs. Necessary programs and the like can be read from a floppy disk or a CD-ROM as needed. The computer body 1
A modem 14a is connected as a communication device for connecting the 2 to an external network or the like. The modem 14a is connected to the external network via the same public communication line, and software and data can be downloaded and introduced.
In this example, the modem 14a accesses the outside via a telephone line. However, a configuration in which a network is accessed via a LAN adapter is also possible.

【0017】ここで、外部補助記憶装置のうち、フロッ
ピーディスクドライブ13aやCD−ROMドライブ1
3cについては、記録媒体自身が交換可能であり、この
記録媒体に画像データが記録された状態で供給されるこ
とにより、画像入力デバイスの一手段ともなりうる。ま
た、モデム14aやLANアダプタを介してネットワー
クにアクセスした場合、このネットワークから画像デー
タが供給されることもあり、このような場合も画像入力
デバイスの一手段となりうる。この他、コンピュータ本
体12の操作用にキーボード15aやポインティングデ
バイスとしてのマウス15bも接続され、さらに、マル
チメディア対応のためにスピーカ18aやマイク18b
を備えている。一方、画像出力デバイスとして、ディス
プレイ17aとカラープリンタ17bとを備えている。
ディスプレイ17aについては水平方向に800画素と
垂直方向に600画素の表示エリアを備えており、各画
素毎に上述した1670万色の表示が可能となってい
る。むろん、この解像度は一例に過ぎず、640×48
0画素であったり、1024×768画素であるなど、
適宜、変更可能である。
Here, among the external auxiliary storage devices, the floppy disk drive 13a and the CD-ROM drive 1
Regarding 3c, the recording medium itself can be exchanged, and when supplied in a state where image data is recorded on this recording medium, it can also be a means of an image input device. Further, when accessing a network via the modem 14a or a LAN adapter, image data may be supplied from the network, and in such a case, the image data can be used as a means of an image input device. In addition, a keyboard 15a and a mouse 15b as a pointing device are connected to operate the computer main body 12, and a speaker 18a and a microphone 18b are used for multimedia.
It has. On the other hand, a display 17a and a color printer 17b are provided as image output devices.
The display 17a has a display area of 800 pixels in the horizontal direction and 600 pixels in the vertical direction, and can display the above-mentioned 16.7 million colors for each pixel. Of course, this resolution is only an example, 640 × 48
0 pixels or 1024 x 768 pixels
It can be changed as appropriate.

【0018】また、印刷装置としてのカラープリンタ1
7bはインクジェットプリンタであり、CMYKの四色
の色インクを用いて記録媒体たる印刷用紙上にドットを
付して画像を印刷可能となっている。画像密度は360
×360dpiや720×720dpiといった高密度
印刷が可能となっているが、階調表限については色イン
クを付すか否かといった2階調表現となっている。色イ
ンクについては、かかる四色のものに限らず、色の薄い
ライトシアンやライトマゼンタを加えた六色によってド
ットの目立ちを低減させることも可能であるしインクジ
ェット方式に限らずカラートナーを利用した静電写真方
式などを採用することも可能である。このような画像入
力デバイスを使用して画像を入力しつつ、画像出力デバ
イスに表示あるいは出力するため、コンピュータ本体1
2内では所定のプログラムが実行されることになる。そ
のうち、基本プログラムとして稼働しているのはオペレ
ーティングシステム(OS)12aであり、このオペレ
ーティングシステム12aにはディスプレイ17aでの
表示を行わせるディスプレイドライバ(DSPDRV)
12bとカラープリンタ17bに印刷出力を行わせるプ
リンタドライバ(PRT DRV)12cが組み込まれ
ている。これらのドライバ12b,12cの類はディス
プレイ17aやカラープリンタ17bの機種に依存して
おり、それぞれの機種に応じてオペレーティングシステ
ム12aに対して追加変更可能である。また、機種に依
存して標準処理以上の付加機能を実現することもできる
ようになっている。すなわち、オペレーティングシステ
ム12aという標準システム上で共通化した処理体系を
維持しつつ、許容される範囲内での各種の追加的処理を
実現できる。
A color printer 1 as a printing device
Reference numeral 7b denotes an ink-jet printer which can print an image by adding dots to printing paper as a recording medium using four color inks of CMYK. Image density is 360
High-density printing such as × 360 dpi or 720 × 720 dpi is possible, but the gradation table has a two-gradation expression such as whether or not to apply color ink. The color ink is not limited to the four color inks, and it is also possible to reduce the conspicuousness of dots by using six colors including light cyan and light magenta, which are not limited to the ink jet method. It is also possible to adopt an electrophotographic method or the like. The computer main body 1 is used for displaying or outputting to an image output device while inputting an image using such an image input device.
2, a predetermined program is executed. Of these, an operating system (OS) 12a is operating as a basic program, and the operating system 12a has a display driver (DSPDRV) for displaying on the display 17a.
A printer driver (PRT DRV) 12c that causes the printer 12b and the color printer 17b to perform print output is incorporated. These drivers 12b and 12c depend on the models of the display 17a and the color printer 17b, and can be additionally changed to the operating system 12a according to each model. Further, depending on the model, additional functions beyond the standard processing can be realized. That is, it is possible to realize various additional processes within an allowable range while maintaining a common processing system on the standard system of the operating system 12a.

【0019】この基本プログラムとしてのオペレーティ
ングシステム12a上でアプリケーション12dが実行
される。アプリケーション12dの処理内容は様々であ
り、操作デバイスとしてのキーボード15aやマウス1
5bの操作を監視し、操作された場合には各種の外部機
器を適切に制御して対応する演算処理などを実行し、さ
らには、処理結果をディスプレイ17aに表示したり、
カラープリンタ17bに出力したりすることになる。か
かるコンピュータシステム10では、画像入力デバイス
であるスキャナ11aなどで写真などを読み取って画像
データを取得することができる他、デジタルスチルカメ
ラ11bで撮影した画像データを取得したり、ビデオカ
メラ11cで撮影した動画としての画像データを取得す
ることができる。このような画像データは最終的に画像
出力デバイスとしてのディスプレイ17aで表示した
り、カラープリンタ17bで印刷することになるが、元
の画像データのままでは写りが悪いなどの問題があるこ
とが多く、そのような場合には、何らかの修正が行われ
る。この修正を行うのは、一般的にはフォトレタッチな
どのアプリケーション12dなどであるが、本画像処理
システムではアプリケーション12dが印刷処理を実行
するときに出力されるオブジェクトデータに対してプリ
ンタドライバ12cが同修正処理を実行する。
The application 12d is executed on the operating system 12a as the basic program. The processing contents of the application 12d are various, and include a keyboard 15a and a mouse 1 as operation devices.
5b is monitored, and when it is operated, various external devices are appropriately controlled to execute corresponding arithmetic processing and the like. Further, the processing result is displayed on the display 17a,
For example, the data is output to the color printer 17b. In such a computer system 10, image data can be acquired by reading a photograph or the like with a scanner 11a or the like, which is an image input device, and image data photographed by a digital still camera 11b or photographed by a video camera 11c can be acquired. Image data as a moving image can be obtained. Such image data is finally displayed on the display 17a as an image output device or printed by the color printer 17b. However, there are many problems such as poor image quality if the original image data is not used. In such cases, some modifications are made. This correction is generally performed by an application 12d such as photo retouching. However, in the present image processing system, the printer driver 12c performs the same processing on the object data output when the application 12d executes the printing process. Execute the correction process.

【0020】印刷処理の際、アプリケーション12dは
オペレーティングシステム12aに対してオブジェクト
データを出力する。図2は、印刷イメージの処理単位の
変化を示しており、本来、一つの印刷イメージP.I.
は処理の都合上、分割オブジェクトデータa(1)〜a
(n)に分割され、さらにプリンタドライバ12cの処
理を経てカラープリンタ17bが処理可能なラスタデー
タb(1)〜b(n)として出力される。このプリンタ
ドライバ12cがオペレーティングシステム12aに組
み込まれた状態でのシステム上の概略構成を図3に示し
ており、API層から本プリンタドライバ12cが提供
する機能管理オブジェクトP1にアクセスされ、この機
能管理オブジェクトP1は、分割画像管理オブジェクト
P2によって上記分割オブジェクトデータの管理を実行
しつつ、処理画像管理オブジェクトP3によって処理画
像を取得する。この処理画像を取得するにあたって機能
管理オブジェクトP1は同処理画像管理オブジェクトP
3に対して必要領域を要求するし、その処理の前提とし
て予め分割オブジェクトデータに関して分割画像登録の
処理を実行する。すなわち、処理画像管理オブジェクト
P3が実際の画像処理を実行する拡大処理オブジェクト
P4と強調処理オブジェクトP5を介して分割画像管理
オブジェクトP2に対して処理対象となる画像領域を通
知するため、分割画像管理オブジェクトP2は既に登録
されている分割オブジェクトデータのうちの必要なもの
だけをメモリ上に展開して利用可能とし、展開された結
果を利用して強調処理オブジェクトP5と拡大処理オブ
ジェクトP4が画像処理を実行することになる。
During the printing process, the application 12d outputs object data to the operating system 12a. FIG. 2 shows a change in the processing unit of a print image. I.
Are divided object data a (1) to a for convenience of processing.
(N), and is output as raster data b (1) to b (n) that can be processed by the color printer 17b through the processing of the printer driver 12c. FIG. 3 shows a schematic configuration of the system in a state where the printer driver 12c is incorporated in the operating system 12a. The function management object P1 provided by the printer driver 12c is accessed from the API layer. P1 acquires a processed image by the processed image management object P3 while managing the divided object data by the divided image management object P2. When acquiring this processed image, the function management object P1
A required area is requested for the divided object data, and a divided image registration process is executed in advance on the divided object data as a premise of the process. That is, in order for the processed image management object P3 to notify the divided image management object P2 of the image area to be processed via the enlargement processing object P4 and the enhancement processing object P5 for executing the actual image processing, the divided image management object P3 In P2, only necessary ones of the already registered divided object data are expanded on the memory to be usable, and the expanded processing object P5 and the enlarged processing object P4 execute image processing using the expanded result. Will do.

【0021】図4は入力される分割オブジェクトデータ
と取得される処理画像とを示している。同図において、
元の画像をソース(Source)画像と呼ぶととも
に、拡大処理と強調処理を実施された画像をデスティネ
イション(Destination)画像と呼ぶことに
すると、入力される分割オブジェクトデータは9分割さ
れたS−Unit.a〜iである。ここで、デスティネ
イション画像は、一体として処理することも可能である
が、この場合も分割して処理するものとし、各分割画像
をD−Unit.A〜Cと呼ぶ。D−Unit.A〜C
を得るためには処理前の画像領域を利用可能であること
が必要であるが、入力されているのはS−Unit.a
〜iであって、全てを利用可能となっているか否かは分
からない。従って、処理画像管理オブジェクトP3から
分割画像管理オブジェクトP2に対して対応するS−U
nit.a〜iを利用可能とするように要求し、そのよ
うにして利用可能にされるのがS−Area.a〜cで
ある。ただし、このS−Area.a〜cは領域として
は拡大前のD−Unit.A〜Cと一致するものではな
く、周縁領域を含むものとなっている。このように周縁
領域を含むのは、拡大処理オブジェクトP4と強調処理
オブジェクトP5で画像処理する際に処理対象の画素だ
けでは処理が不可能であり、その周囲の画素も参照しな
ければならないからである。
FIG. 4 shows input divided object data and acquired processed images. In the figure,
When the original image is called a source image and the image on which the enlargement processing and the enhancement processing are performed is called a destination image, the input divided object data is divided into nine S-Units. . a to i. Here, the destination image can be processed as one, but in this case as well, it is assumed that the destination image is divided and processed, and each divided image is referred to as D-Unit. Call them AC. D-Unit. AC
It is necessary that the image area before processing is available to obtain the image data, but what is input is S-Unit. a
To i, and it is not known whether all are available. Therefore, the corresponding S-U from the processed image management object P3 to the divided image management object P2
nit. a-i are requested to be made available, and the S-Area. a to c. However, this S-Area. a to c are D-Unit. It does not coincide with A to C but includes the peripheral region. The reason why the peripheral area is included is that the image cannot be processed only by the processing target pixel when performing the image processing by the enlargement processing object P4 and the enhancement processing object P5, and the surrounding pixels must be referred to. is there.

【0022】次に、各画像処理で参照する周縁領域を図
5および図6に示す。具体的な処理内容については詳述
しないが、図5に示す強調処理では対象画素を基準とし
て上方と左方に1画素、右方と下方に2画素を参照する
必要がある。また、図6に示す拡大処理では、対象画素
を基準として右方左方と下方に1画素、上方に2画素を
参照する必要がある。周縁領域を参照する必要がある具
体的な演算例として、フィルタ処理が上げられる。この
場合の強調処理と拡大処理の例にあてはめれば、強調処
理においては4×4画素分のフィルタを利用し、拡大処
理においては3×4画素分のフィルタを利用するので、
周縁領域が必要になるといえる。図7は処理画像管理オ
ブジェクトP3から分割画像管理オブジェクトP2に必
要領域が通知される過程を示している。同図において、
最終的に取得される処理画像の領域が、最初の必要領域
S−Area’として処理画像管理オブジェクトP3に
要求されると、同処理画像管理オブジェクトP3は、拡
大処理オブジェクトP4にこれを通知する。すると、拡
大処理オブジェクトP4では自己の拡大倍率が2倍であ
るときには上記必要領域S−Area’の元となる画像
領域は1/2倍である。ただし、参照する画素は上方、
右方、下方、左方に対してそれぞれ1、2、2、1画素
づつであることを強調処理オブジェクトP5に通知す
る。この強調処理オブジェクトP5では拡大を行わない
ため、本来的に必要なのは拡大処理オブジェクトP4で
必要とする画像領域であり、上記必要領域S−Are
a’の1/2倍であるとともに、その周縁領域の(1,
2,2,1)画素である。しかし、自己においても周縁
領域を参照する必要があり、さらに周縁領域の(2,
1,1,1)画素を加えて分割画像管理オブジェクトP
2に通知する。すなわち、このような修正を加えた画像
領域S−Areaは必要領域S−Area’の1/2倍
の領域と、その周縁領域の(3,3,3,2)画素を加
えた領域となる。むろん、このような周縁領域の大きさ
は拡大処理オブジェクトP4や強調処理オブジェクトP
5の演算手法に依存しており、他の演算例では強調処理
において上下左右の全てに2画素を要求しつつ、拡大処
理で上方と左方に1画素、右方と下方に2画素を要求す
るというようなものもある。
Next, FIG. 5 and FIG. 6 show the peripheral area referred to in each image processing. Although specific processing contents are not described in detail, in the enhancement processing shown in FIG. 5, it is necessary to refer to one pixel upward and left and two pixels right and downward with respect to the target pixel. In addition, in the enlargement processing shown in FIG. 6, it is necessary to refer to one pixel rightward and leftward and downward, and two pixels upward, based on the target pixel. As a specific example of a calculation that needs to refer to the peripheral region, a filtering process is given. Applying to the example of the enhancement process and the enlargement process in this case, a filter for 4 × 4 pixels is used in the enhancement process, and a filter for 3 × 4 pixels is used in the enlargement process.
It can be said that a peripheral area is required. FIG. 7 shows a process in which a required area is notified from the processed image management object P3 to the divided image management object P2. In the figure,
When the finally acquired area of the processed image is requested to the processed image management object P3 as the first required area S-Area ', the processed image management object P3 notifies the enlarged processing object P4 of the request. Then, in the enlargement processing object P4, when its own enlargement magnification is 2 times, the image area which is the source of the necessary area S-Area 'is 1/2 times. However, the pixel to refer to is above,
The emphasis processing object P5 is notified that the right, lower, and left pixels are 1, 2, 2, and 1 pixels, respectively. Since the enhancement processing object P5 does not perform enlargement, what is originally required is an image area required for the enlargement processing object P4.
a ′, and (1, 1)
2, 2, 1) pixels. However, it is necessary to refer to the peripheral region by itself, and (2,
(1,1,1) The divided image management object P by adding pixels
Notify 2. That is, the image area S-Area to which such correction has been made is an area obtained by adding a half area of the necessary area S-Area 'and (3,3,3,2) pixels of the peripheral area thereof. . Of course, the size of such a peripheral area is determined by the enlargement processing object P4 and the enhancement processing object P.
In the other calculation examples, two pixels are required for the upper, lower, left, and right in the enhancement processing, while one pixel is required for the upper and left sides and two pixels for the right and lower parts in the enlargement processing. Some do.

【0023】一方、分割画像管理オブジェクトP2は、
機能管理オブジェクトP1を介して個々の分割オブジェ
クトデータが入力されており、領域としての情報を管理
しながら実体についてはスプールファイルに格納して分
割画像登録を実施している。スプールファイルはハード
ディスク13b上に格納されるため、他の処理オブジェ
クトは直接的に参照したり利用することはできない。し
かしながら、この分割画像管理オブジェクトP2は以上
のようにして通知された画像領域S−Areaを他のオ
ブジェクトから利用できるようにするため、メモリ上に
展開する。この際、必要とされた画像領域S−Area
のそのままをメモリ上に展開するのではなく、図8に示
すように、あくまでも画像領域S−Areaを包含する
に足るS−Unit.a〜iがどれにあたるかを調査
し、該当する全てのS−Unit.a〜iをメモリ上に
展開する。ここで分割オブジェクトデータの数が少なけ
れば画像領域S−Areaを包含するS−Unit.a
〜iがどれであるかを判断するのは容易である。各S−
Unit.a〜iの実体データは、ハードディスク13
b上に格納されるものの、各領域に関するヘッダ情報
は、図9に示すようなテーブルに格納されている。各テ
ーブルには次のS−Unit.a〜iの情報開始位置を
示すポインタnext_ptrが備えられている。本来
であれば、このポインタをたどることによって全てのS
−Unit.a〜iのヘッダ情報を参照することができ
るが、各S−Unit.a〜iが画像領域S−Area
の一部とでも重なり合うか否かを判断するのはいくつか
の比較演算を繰り返さなければならず、演算回数が多大
となってしまう。一方、分割オブジェクトユニットの配
置情報などから必ずしも全てのS−Unit.a〜iと
対比する必要もなく、現実的には参照すべきS−Uni
t.a〜iは限られている。例えば、図9に示す例であ
れば、S−Areaを展開するに際し、斜線を示すS−
Unit.a〜iだけを参照できればよく、一時的にで
はあるがこのテーブルにおけるポインタnext_pt
rを振り替えておくようにしている。
On the other hand, the divided image management object P2
Individual divided object data is input via the function management object P1, and while managing information as an area, the entity is stored in a spool file to register a divided image. Since the spool file is stored on the hard disk 13b, other processing objects cannot be directly referred to or used. However, the divided image management object P2 is developed on a memory so that the image area S-Area notified as described above can be used by another object. At this time, the required image area S-Area
Is not developed on the memory as it is, as shown in FIG. 8, S-Unit. Is sufficient to include the image area S-Area. a to i are checked, and all applicable S-Unit. a to i are expanded on the memory. Here, if the number of divided object data is small, S-Unit. That includes the image area S-Area. a
It is easy to determine which i is. Each S-
Unit. The entity data of a to i is stored in the hard disk 13
b, the header information on each area is stored in a table as shown in FIG. Each table has the following S-Unit. A pointer next_ptr indicating the information start position of a to i is provided. Originally, by following this pointer, all S
-Unit. a to i can be referred to, but each S-Unit. a to i are image areas S-Area
It is necessary to repeat some comparison operations to determine whether or not they overlap with a part of, and the number of operations becomes large. On the other hand, not all S-Unit. There is no need to compare with a to i, and in reality S-Uni to be referred to
t. a to i are limited. For example, in the example shown in FIG. 9, when the S-Area is developed,
Unit. It is only necessary to refer to a to i, and the pointer next_pt in this table is temporarily
r is changed.

【0024】本実施形態においては、ポインタnext
_ptrにより参照するS−Unit.a〜iを振り替
えて間接的にS−Areaを形成するS−Unit.a
〜iを指定し、S−Areaを高速に生成可能な構成を
採用しているが、むろん、S−Areaを高速に生成可
能にする手法は限定されるものではない。図21に示す
ようにS−Areaの生成に必要なS−Unit.a〜
iをハードディスクと比較して相対的に高速アクセス可
能な主メモリやキャッシュメモリなどのメモリに格納さ
せ、S−Areaの生成時に参照させるようにしてもよ
いし、図22に示すように各S−Unit.a〜iにI
D1〜9を振り分けるとともに、このID1〜9により
順不同に配置されたS−Unit.a〜iがソース画像
の元画像を形成できるような順番に配置するIDテーブ
ルを形成し、S−Areaの生成時に参照するようにし
てもよい。
In this embodiment, the pointer next
_Ptr to refer to the S-Unit. a-i are transferred to form an S-Area indirectly. a
Ii is specified, and a configuration capable of generating an S-Area at a high speed is adopted. However, a method of generating an S-Area at a high speed is, of course, not limited. As shown in FIG. 21, the S-Unit. a ~
i may be stored in a memory such as a main memory or a cache memory that can be accessed relatively faster than a hard disk, and may be referred to when the S-Area is generated. Alternatively, as shown in FIG. Unit. a to i
D1 to D9, and the S-Units. It is also possible to form an ID table in which a to i are arranged in such an order that an original image of a source image can be formed, and refer to the ID table when generating an S-Area.

【0025】以上のようにして分割画像管理オブジェク
トP2が画像領域S−Areaを包含する全てのS−U
nit.a〜iをメモリ上に展開したら、強調処理オブ
ジェクトP5が強調処理を実行し、次いで拡大処理オブ
ジェクトP4が拡大処理を実行する。強調処理では対象
画素の周縁領域として(2,1,1,1)画素が必要で
あり、強調処理の結果として生成される画像領域は図1
0に示すように周縁領域として(2,1,1,1)画素
を省いた破線内の領域となる。また、同様にして拡大処
理では対象画素の周縁領域として(1,2,2,1)画
素が必要であり、強調処理の結果として生成される画像
領域は図11に示すように周縁領域として(1,2,
2,1)画素を省いた破線内の領域となる。むろん、拡
大処理は内部に格子点を補間生成するものであるから、
得られる処理画像は縦横2倍に拡大される結果、最初の
必要領域S−Area’と一致することになる。
As described above, the divided image management object P2 includes all the SUs including the image area S-Area.
nit. When a to i are expanded on the memory, the enhancement processing object P5 executes the enhancement processing, and then the enlargement processing object P4 executes the enlargement processing. In the enhancement processing, (2, 1, 1, 1) pixels are required as the peripheral area of the target pixel, and the image area generated as a result of the enhancement processing is shown in FIG.
As shown by 0, the peripheral area is an area within a broken line excluding (2, 1, 1, 1) pixels. Similarly, in the enlargement processing, (1, 2, 2, 1) pixels are required as the peripheral area of the target pixel, and the image area generated as a result of the enhancement processing is defined as the peripheral area as shown in FIG. 1,2,
(2, 1) This is the area within the broken line with the pixels omitted. Of course, since the enlargement process generates interpolation of grid points inside,
The obtained processed image is enlarged twice in length and width, and as a result, it coincides with the first necessary area S-Area '.

【0026】次に、分割画像管理オブジェクトP2がメ
モリ上にS−Areaを展開する他の実施例を説明す
る。かかる実施例におけるプリンタドライバ12cがオ
ペレーティングシステム12aに組み込まれた状態での
システム上の概略構成を図23に示す。同図において、
API層から本プリンタドライバ12cが提供する機能
管理オブジェクトP100にアクセスされ、この機能管
理オブジェクトP100は、分割画像管理オブジェクト
P200によって分割オブジェクトデータの管理を実行
しつつ、処理画像管理オブジェクトP300より拡大お
よび色調に関する画像処理が実施された画像データを1
ラインごと取得し、取得したライン単位の画像データを
積み上げてデスティネーション画像を形成する画像デー
タを生成する。
Next, another embodiment in which the divided image management object P2 develops the S-Area on the memory will be described. FIG. 23 shows a schematic configuration of the system in a state where the printer driver 12c in this embodiment is incorporated in the operating system 12a. In the figure,
The API management layer accesses the function management object P100 provided by the printer driver 12c from the API layer. The function management object P100 manages the divided object data by the divided image management object P200 and enlarges and adjusts the color tone from the processed image management object P300. Image data on which the image processing related to
The image data for each line is acquired, and the acquired image data for each line is stacked to generate image data for forming a destination image.

【0027】具体的には、各モジュールにおいて色調処
理オブジェクトP500が分割画像管理オブジェクトP
200より引き渡された所定のライン単位の画像データ
に対して色調処理を実施し、所定のライン単位の画像デ
ータを形成し拡大処理オブジェクトP400に引き渡
す。次に、拡大処理オブジェクトP400は、この色調
処理が為された画像データに対して拡大処理を実施し、
1ラインの画像データを形成し処理画像管理オブジェク
トP400に引き渡し、機能管理オブジェクトP100
は処理画像管理オブジェクトP300より1ラインごと
に画像データを取得しつつ積み上げてデスティネーショ
ン画像を生成する。
Specifically, in each module, the color tone processing object P500 is
A color tone process is performed on the predetermined line-unit image data transferred from the unit 200 to form predetermined line-unit image data and transferred to the enlargement processing object P400. Next, the enlargement processing object P400 performs enlargement processing on the image data on which the color tone processing has been performed,
One line of image data is formed and transferred to the processed image management object P400, and the function management object P100
Generates a destination image by acquiring and accumulating image data line by line from the processed image management object P300.

【0028】ここで、本実施形態においては、拡大処理
オブジェクトP400は、1ラインの拡大処理後の画像
データを生成するため、同1ラインと参照ラインとを含
め5ラインの画像データを必要とする。従って、色調処
理オブジェクトP500に対して5ラインの画像データ
の引き渡しを通知することになる。また、色調処理オブ
ジェクトP500は、1ラインの色調処理後の画像デー
タを生成するため、当該1ラインの画像データのみでよ
い。従って、分割画像管理オブジェクトP200に対し
て1ラインの画像データの引き渡しを要求することにな
る。むろん、これらの処理にて必要とするライン数は、
特に限定されるものではなく、各オブジェクトの処理内
容に応じて適宜変更可能である。
Here, in the present embodiment, the enlargement processing object P400 needs five lines of image data including the one line and the reference line to generate one line of image data after the enlargement processing. . Accordingly, the delivery of the five lines of image data is notified to the color tone processing object P500. In addition, since the tone processing object P500 generates image data of one line after the tone processing, only the image data of the one line may be used. Therefore, it is requested that the divided image management object P200 deliver one line of image data. Of course, the number of lines required in these processes is
It is not particularly limited, and can be appropriately changed according to the processing content of each object.

【0029】次に、図24に入力される分割オブジェク
トデータと取得される処理画像とを示す。同図におい
て、元の画像をソース(Source)画像と呼ぶとと
もに、拡大処理と色調処理を実施された処理画像をデス
ティネイション(Destination)画像と呼ぶ
ことにする。また、入力される分割オブジェクトデータ
は9分割されたS−Unit.A〜Iである。ここで、
デスティネイション画像は、一体として処理することも
可能であるが、本実施例においてはライン単位に分割し
てラインごとに生成され、このラインごとに生成された
ものを積み上げて最終的なデスティネーション画像が生
成されるものとする。また、デスティネーション画像を
分割するライン単位の各分割画像をD−ライン.0〜n
と呼ぶ。ここで、nは整数であり、生成されるデスティ
ネーション画像の総ライン数を示している。最初に、D
−ライン.0を得るために、処理画像管理オブジェクト
P300は、拡大処理オブジェクトP400に対して1
ラインの引き渡しを通知する。ここで、拡大処理オブジ
ェクトP400は、1ラインの拡大処理を実行するため
に、上述したように5ラインの画像データを必要とす
る。従って、次の色調処理オブジェクトP500に対し
て5ラインの引き渡しを通知する。色調処理オブジェク
トP500は、色調処理を実行するにあたり1ラインの
画像データにて処理可能であるため、分割画像管理オブ
ジェクトP200に1ラインの画像データの引き渡しを
通知する。
Next, FIG. 24 shows the input divided object data and the obtained processed image. In the figure, the original image is called a source image, and the processed image that has been subjected to the enlargement process and the color tone process is called a destination image. The input divided object data is divided into nine S-Units. A to I. here,
Although the destination image can be processed integrally, in the present embodiment, the destination image is divided into lines and generated for each line, and the images generated for each line are stacked to form the final destination image. Is generated. Also, each divided image in units of lines that divides the destination image is referred to as a D-line. 0-n
Call. Here, n is an integer and indicates the total number of lines of the generated destination image. First, D
-Line. In order to obtain 0, the processed image management object P300 sets 1
Notify the delivery of the line. Here, the enlargement processing object P400 needs the image data of five lines as described above to execute the enlargement processing of one line. Therefore, the transfer of the five lines is notified to the next color tone processing object P500. Since the color tone processing object P500 can process one line of image data when executing the color tone processing, it notifies the divided image management object P200 of the delivery of the one line of image data.

【0030】そして、分割画像管理オブジェクトP20
0は、分割画像データS−Unit.A〜Iより所定の
1ラインの画像データを形成し、色調処理オブジェクト
P500に引き渡す。色調処理オブジェクトP500
は、この引き渡された1ラインのデータに色調処理を実
施し、色調処理が終わると、拡大処理オブジェクトP4
00からは5ラインを要求されているため、5ライン分
の色調処理が終わるまで、分割画像管理オブジェクトP
200に1ラインを引き渡しを通知し、分割画像管理オ
ブジェクトは、要求に従い順次1ラインを生成し、色調
処理オブジェクトに渡す。そして、色調処理オブジェク
トP500は、引き渡された1ラインの画像データに順
次色調処理を実行する。色調処理オブジェクトP500
は、5ラインに対する色調処理が終わると、拡大処理オ
ブジェクトP400にこの5ラインを引き渡す。拡大処
理オブジェクトP400は、この引き渡された5ライン
の内後ろ4ラインを参照して先頭1ラインの強調処理を
実施する。そして、色調処理も強調処理も実施された1
ラインのデスティネーション画像が生成され、処理画像
管理オブジェクトP300に引き渡される。
Then, the divided image management object P20
0 is the divided image data S-Unit. A predetermined image data of one line is formed from A to I and transferred to the color tone processing object P500. Color tone processing object P500
Performs color tone processing on the transferred one-line data, and when the color tone processing is completed, the enlargement processing object P4
Since five lines are requested from 00, the divided image management object P
Notifying 200 that one line has been delivered, the divided image management object sequentially generates one line in accordance with the request and delivers it to the color tone processing object. Then, the color tone processing object P500 sequentially executes color tone processing on the transferred one-line image data. Color tone processing object P500
Transfers the five lines to the enlargement processing object P400 when the color tone processing for the five lines is completed. The enlargement processing object P400 performs the emphasis processing of the first line with reference to the last four lines of the transferred five lines. Then, both the color tone processing and the emphasis processing were performed.
A destination image of the line is generated and transferred to the processed image management object P300.

【0031】最初の1ラインのデスティネーション画像
が生成されると、以降、順次nラインまで、1ラインご
とデスティネーション画像が生成される。この1ライン
の画像を生成するにあたり、処理画像管理オブジェクト
P300は、拡大処理オブジェクトP400に1ライン
の引き渡しを通知する。ここで、拡大処理オブジェクト
P400は、既に、色調処理が終わっている5ラインを
引き渡されている。従って、この5ラインのうち先頭の
1ラインを不参照の扱いとし、2番目のラインについて
拡大処理を実施するために、色調処理オブジェクトP5
00に1ラインの引き渡しを通知する。この通知を受け
ると色調処理オブジェクトP500は、分割画像管理オ
ブジェクトP200に1ラインの引き渡しを通知する。
分割画像管理オブジェクトP200は、S−Unit.
A〜Iより所定の1ラインを形成し、色調処理オブジェ
クトP500に引き渡す。色調処理オブジェクトP50
0は、この引き渡された1ラインに対して色調処理を実
施し、拡大処理オブジェクトP400に引き渡す。拡大
処理オブジェクトP400は、この引き渡された1ライ
ンを既に引き渡されている4ラインの最後尾に付加し
て、5ラインの処理領域を形成し、上述した2番目のラ
インについて拡大処理を実施する。この2番目の1ライ
ンについて拡大処理が終わると、処理画像管理オブジェ
クトP300に引き渡す。機能管理オブジェクトP10
0は、このように処理画像管理オブジェクトP300が
取得した各オブジェクトにて各処理が実施されたライン
単位の画像データを順次積み上げてデスティネーション
画像を生成する。
When the destination image of the first one line is generated, the destination image is sequentially generated for each line up to n lines. In generating this one-line image, the processed image management object P300 notifies the enlargement processing object P400 of the delivery of one line. Here, the enlargement processing object P400 has already delivered the five lines for which the color tone processing has been completed. Therefore, in order to treat the first one of the five lines as unreferenced and to perform the enlarging process on the second line, the tone processing object P5
00 is notified of the delivery of one line. Upon receiving this notification, the color tone processing object P500 notifies the divided image management object P200 of the delivery of one line.
The divided image management object P200 includes the S-Unit.
A predetermined line is formed from A to I, and transferred to the tone processing object P500. Color tone processing object P50
0 performs the color tone processing on the transferred one line and transfers it to the enlargement processing object P400. The enlargement processing object P400 adds the transferred one line to the end of the already transferred four lines to form a processing area of five lines, and performs the enlargement processing on the second line described above. When the enlarging process is completed for the second one line, it is transferred to the processed image management object P300. Function management object P10
A value 0 indicates that the destination image is generated by sequentially stacking the line-by-line image data on which each process has been performed by each object acquired by the processed image management object P300.

【0032】以上のようにして、最初に分割画像管理オ
ブジェクトP200が色調処理オブジェクトP500に
対して1ラインの画像領域をメモリ上に展開して引き渡
し、色調処理オブジェクトP500が色調処理を実行
し、色調処理オブジェクトP500において5ラインの
画像データを生成すると、拡大処理オブジェクトP40
0に引き渡し、拡大処理を実行する。そして、5ライン
より生成された1ラインの画像データを処理画像管理オ
ブジェクトP300に引き渡す。そして、以降は、処理
画像管理オブジェクトP300,拡大処理オブジェクト
P400,色調処理オブジェクトP500,分割画像管
理オブジェクトP200間にて1ラインの引き渡し通知
および形成し、あるいは、画像処理を実行した1ライン
の画像データを逆方向にて順次引き渡し、機能管理オブ
ジェクトP100にて積み上げることによりデスティネ
ーション画像を生成する。本実施形態においては、分割
画像管理オブジェクトP200から色調処理オブジェク
トP500に引き渡される1ラインの画像データおよび
色調処理オブジェクトP500から拡大処理オブジェク
トP400に引き渡される5ラインあるいは1ラインの
画像データがS−Areaを構成することはいうまでも
ない。また、本実施形態においては、画像処理を実行す
る順番を色調処理オブジェクトP500→拡大処理オブ
ジェクトP400としているが、むろん、これに限定さ
れるものではなく、拡大処理オブジェクトP400→色
調処理オブジェクトP500としてもよいし、所定の設
定により、拡大処理オブジェクトP400あるいは色調
処理オブジェクトP500のいずれか一方のみを実行す
るようにしてもよい。
As described above, first, the divided image management object P200 develops and transfers a one-line image area on the memory to the tone processing object P500, and the tone processing object P500 executes the tone processing, and When five lines of image data are generated in the processing object P500, the enlargement processing object P40
0 and execute the enlargement process. Then, one line of image data generated from five lines is delivered to the processed image management object P300. Thereafter, a one-line delivery notification and formation between the processed image management object P300, the enlargement processing object P400, the color processing object P500, and the divided image management object P200, or the one-line image data on which the image processing has been executed Are successively delivered in the reverse direction, and are stacked by the function management object P100 to generate a destination image. In the present embodiment, one line of image data transferred from the divided image management object P200 to the color processing object P500 and five lines or one line of image data transferred from the color processing object P500 to the enlargement processing object P400 are S-Area. Needless to say, it constitutes. Further, in the present embodiment, the order in which the image processing is executed is set as the color processing object P500 → the enlargement processing object P400. However, the present invention is not limited to this. Alternatively, only one of the enlargement processing object P400 and the color tone processing object P500 may be executed by a predetermined setting.

【0033】ここで、図12にプリンタドライバ12c
における手続の流れを示す。同図においては、オペレー
ティングシステム12aに組み込まれた状態でのプリン
タドライバ12cの概略構成を示しているが、図3では
プリンタドライバ12c単独での視点で示しており、さ
らにプリンタドライバ12c内を本来のドライバの機能
に近い処理と、付加的な機能に近い処理とに分割し、左
欄にドライバ機能をまとめ、右欄にモジュール機能をま
とめている。すなわち、手順1においてはドライバ機能
としてソース画像の取得処理があり、これは機能管理オ
ブジェクトP1と分割画像管理オブジェクトP2の機能
といえる。次に、手順2はフォトインスタンス取得処理
があるが、これは各オブジェクト画像ごとに別個・並行
に処理するために現在の実行処理対象を確認するための
ものである。
FIG. 12 shows the printer driver 12c.
Shows the flow of the procedure in. Although FIG. 3 shows a schematic configuration of the printer driver 12c in a state where the printer driver 12c is incorporated in the operating system 12a, FIG. The process is divided into a process close to the function of the driver and a process close to the additional function, and the driver function is summarized in the left column, and the module function is summarized in the right column. That is, in procedure 1, there is a source image acquisition process as a driver function, which can be said to be a function of the function management object P1 and the divided image management object P2. Next, the procedure 2 includes a photo instance acquisition process, which is for confirming a current execution target to be processed separately and in parallel for each object image.

【0034】以上が前処理に対応し、処理の流れとして
は手順3においてモジュールの側からドライバの側に向
けて処理画像領域を上述したように通知する 一方、手順4では要求された処理画像領域を含むソース
画像(S−Unit.a〜i)をドライバ側が登録し、
これに続いて手順5では画像処理として強調処理および
拡大処理を実行することになる。なお、画像処理は、オ
ブジェクト画像全体についての評価を行っておき、その
評価結果に基づいて処理を実行する。例えば、あるオブ
ジェクト画像が全体的に暗いのであれば、画像処理で明
るく修整すればよい。この場合、オブジェクト画像は分
割オブジェクトデータに分割されてしまっているから、
それぞれのオブジェクトデータをまとめて評価するか、
個別的にオブジェクトデータについて評価しつつも、最
終的には各オブジェクト画像ごとに評価をまとめる必要
がある。
The above corresponds to the pre-processing, and the processing flow is as follows: in step 3, the processing image area is notified from the module side to the driver side, while in step 4, the requested processing image area is notified. The driver side registers a source image (S-Unit. A to i) including
Subsequently, in procedure 5, an emphasis process and an enlargement process are executed as image processing. In the image processing, evaluation is performed on the entire object image, and processing is performed based on the evaluation result. For example, if a certain object image is entirely dark, it may be adjusted to be bright by image processing. In this case, since the object image has been divided into divided object data,
Evaluate each object data at once,
While individually evaluating object data, it is necessary to finally summarize the evaluation for each object image.

【0035】本来、分割オブジェクトデータとオブジェ
クト画像との対応関係は付けられていないのが通常であ
り、この対応付けはプリンタドライバ12cの側で行わ
なければならない。この対応付けの一つの手法として、
仮想領域に分割オブジェクトデータを展開してオブジェ
クト画像を連結する手法があるし、別の手法として分割
オブジェクトデータ同士の重なり合いや隣接具合から同
じオブジェクト画像であるか否かを判断する手法があ
る。いずれの手法を採用するかはシステムの相違によっ
てまちまちである。
Originally, the correspondence between the divided object data and the object image is usually not assigned, and this association must be performed by the printer driver 12c. As one method of this association,
There is a method of expanding the divided object data in the virtual area to connect the object images, and another method of judging whether or not the divided object data is the same object image based on the overlapping or adjacent state of the divided object data. Which method is adopted depends on the difference of the system.

【0036】一方、上述したように画像処理のためにオ
ブジェクト画像を評価するには、オブジェクト画像全体
にわたって画素の情報をサンプリングすることが有効で
あり、簡易である。このようなサンプリングは、オブジ
ェクト画像と分割オブジェクトデータとの対応関係が分
かる前後のどちらで実行しても良い。すなわち、対応関
係が分かる前に分割オブジェクトデータごとにサンプリ
ングしておき、対応関係が分かってからサンプリング結
果を統合することもできるし、対応関係が分かってから
各オブジェクト画像ごとに対応する分割オブジェクトデ
ータをサンプリングすることもできる。このようにサン
プリングの実行タイミングは条件に応じてさまざまであ
り、図12においても実行可能な三つのタイミングに対
応して破線で示している。なお、ドライバの側で行うと
いってもサンプリング用のモジュールを用意することも
可能である。
On the other hand, as described above, in order to evaluate an object image for image processing, it is effective and simple to sample pixel information over the entire object image. Such sampling may be performed before or after the correspondence between the object image and the divided object data is known. That is, sampling can be performed for each divided object data before the corresponding relationship is known, and the sampling results can be integrated after the corresponding relationship is known. Can also be sampled. As described above, the execution timing of the sampling varies depending on the conditions, and is indicated by broken lines in FIG. 12 corresponding to the three executable timings. It should be noted that it is also possible to prepare a sampling module, even if it is performed on the driver side.

【0037】手順5の画像処理は、このサンプリング結
果を利用して実行され、生成された画像がデスティネー
ション画像となって手順6にて登録される。そして、登
録されたデスティネーション画像は手順7でドライバ側
にて出力されることになる。そして、最終的にデスティ
ネーション画像が取得されたら手順8でソース画像をメ
モリから解放する。ここでソース画像の解放タイミング
は特に制限されるものではない。例えば、一つのS−A
reaごとに登録・解放を実行するとすれば使用メモリ
領域を低減できる反面、作業が煩わしい。これに対して
使用メモリ領域の制限が少ない場合は、登録・解放の作
業をこまめに行わなくても良いと言える。
The image processing in step 5 is executed using this sampling result, and the generated image is registered as a destination image in step 6. Then, the registered destination image is output on the driver side in step 7. Then, when the destination image is finally obtained, the source image is released from the memory in step 8. Here, the release timing of the source image is not particularly limited. For example, one SA
If registration / release is performed for each area, the memory area used can be reduced, but the operation is troublesome. On the other hand, when the used memory area is less limited, it can be said that the work of registration / release need not be performed frequently.

【0038】なお、上述した例では、デスティネーショ
ン画像を取得する意味で必要領域を通知しており、生成
されるデスティネーション画像は任意のメモり領域に展
開されればよい。これに対してスプールファイル自体に
対して拡大処理を実行したい場合もある。この場合は、
拡大処理された画像をスプールファイルに対して付加
し、元画像ファイルのポインタを拡大処理された画像フ
ァイルにリンクさせればよい。例えばスプールファイル
から読み出して仮想画像を構築し、画像処理を施してか
ら元のスプールファイルを書き換えたいという処理があ
るとする。かかる場合に、拡大処理をスプールファイル
中の画像ファイルに施してしまえば仮想画像上で拡大処
理を実現しなくても良くなる。しかしながら、拡大処理
すればスプールファイル中の画像ファイルよりも大きく
なるから、拡大後の画像ファイルで書き換えることはで
きない。従って、拡大後の画像データをスプールファイ
ルの後に付加していき、ポインタのリンクを張り替える
ようにするのである。
In the above-described example, the necessary area is notified in the sense of acquiring the destination image, and the generated destination image may be expanded to an arbitrary memory area. On the other hand, there are cases where it is desired to execute the enlargement processing on the spool file itself. in this case,
The enlarged image may be added to the spool file, and the pointer of the original image file may be linked to the enlarged image file. For example, it is assumed that there is a process of reading a spool file to construct a virtual image, performing image processing, and then rewriting the original spool file. In such a case, if the enlargement processing is performed on the image file in the spool file, it is not necessary to realize the enlargement processing on the virtual image. However, if the enlargement process is performed, the image file becomes larger than the image file in the spool file, and cannot be rewritten with the enlarged image file. Therefore, the enlarged image data is added after the spool file, and the pointer link is changed.

【0039】次に、拡大処理の具体的手法について説明
する。一般に、ドットマトリクス状の画素からなる画像
についてその格子間に新たに画素を生成する処理を拡大
処理と呼んで広く実行されている。これは、ディスプレ
イ17aの解像度とカラープリンタ17bの解像度に相
違があるような場合、画素単位で割り当ててしまうと一
定の大きさに表示されなくなるといった不具合を解消す
るためである。ここで、拡大処理には、次に示す手法が
知られている。 1.最近隣内挿法(単純水増しコピー)
Next, a specific method of the enlargement processing will be described. Generally, a process of generating a new pixel between lattices of an image composed of pixels in a dot matrix is widely called an enlarging process. This is to solve the problem that when the resolution of the display 17a and the resolution of the color printer 17b are different from each other, they are not displayed in a certain size if assigned in pixel units. Here, the following method is known for the enlargement processing. 1. Nearest neighbor interpolation method (simple inflated copy)

【0040】2.3次たたみ込み補間(以下、3次補間
という) 前者のものは数学的に最も高速な拡大手法であるし、後
者のものはきれいな拡大結果を得られる反面で数学的に
は大量の演算を必要として時間がかかるという特徴を有
している。いずれにしても、これらは画像処理の技術用
語としてはフィルタ処理と呼ばれている。ここで、図1
3や図14は別々のフィルタ[1],[2]を使用して
拡大前の画像aから拡大後の画像Aを生成する原理を示
している。この場合、拡大前の画像aの数点を利用して
フィルタ[1],[2]にかけることにより、拡大後の
画像Aのある1点を求めることができる。従って、拡大
後の画像Aの全画素について本来的には演算を繰り返す
ことになる。
2.3 Third-order convolution interpolation (hereinafter referred to as cubic interpolation) The former is the mathematically fastest enlargement method, while the latter is capable of obtaining a beautiful enlargement result, but is mathematically It has a feature that it requires a large amount of calculation and takes time. In any case, these are called filter processing in the technical term of image processing. Here, FIG.
3 and FIG. 14 show the principle of generating an enlarged image A from an unenlarged image a using separate filters [1] and [2]. In this case, one point of the image A after the enlargement can be obtained by applying the filters [1] and [2] using the several points of the image a before the enlargement. Therefore, the calculation is essentially repeated for all the pixels of the enlarged image A.

【0041】ところで、フィルタ[1],[2]には処
理結果について差があるはずである。すなわち、前者は
荒く見え、後者は滑らかに見えるように思われる。しか
しながら、拡大結果を使用して印刷した場合、人間の目
の認識の限界により必ずしもその差を認識することがで
きない。すなわち、高度な演算を要するフィルタ[2]
だけで拡大した場合と、フィルタ[1],[2]を併用
して拡大した場合とにおいて、拡大結果の差を認識でき
ない場合がある。図15は、後者の手順を示しており、
元の画像aに対してフィルタ[2]を利用して拡大処理
を実行し、一度、画像a’を生成した後に、今度はフィ
ルタ[1]を利用して拡大処理を実行し画像Aを得てい
る。むろん、先のフィルタ[2]の拡大処理は3次補間
を要するのでモジュールで実行し、フィルタ[1]の拡
大処理はドライバで実現するようにしてもよい。この場
合、もちろんフィルタ[1]とフィルタ[2]の拡大倍
率によっては肉眼でも差が分かるが、そのような差が分
からない範囲の組合せであるならば、処理時間のかかる
フィルタ[2]にて生成する画像a’の面積は小さいた
め高速な処理を期待できる。なぜなら、拡大処理後の画
像の面積に比例して演算量も多くなるからである。
Incidentally, there should be a difference in the processing results between the filters [1] and [2]. That is, the former appears to be rough and the latter appears to be smooth. However, when printing is performed using the enlargement result, the difference cannot always be recognized due to the limit of human eye recognition. That is, the filter [2] which requires an advanced operation
There is a case where the difference between the enlargement results cannot be recognized between the case where the enlargement is performed only by one and the case where the enlargement is performed using both the filters [1] and [2]. FIG. 15 illustrates the latter procedure,
An enlargement process is performed on the original image a using the filter [2] to generate an image a 'once, and then an enlargement process is performed using the filter [1] to obtain the image A. ing. Needless to say, the enlargement process of the filter [2] requires cubic interpolation, so that the enlargement process of the filter [1] may be realized by a driver. In this case, of course, a difference can be seen by the naked eye depending on the magnification of the filter [1] and the filter [2]. However, if the combination is in a range where such a difference is not known, the filter [2] requiring a long processing time is used. Since the area of the generated image a 'is small, high-speed processing can be expected. This is because the amount of calculation increases in proportion to the area of the image after the enlargement processing.

【0042】図16は、3次補間の場合の既存の格子点
と補間点との配置を示すとともに、数1は、この3次補
間のフィルタ処理を行列演算式で示している。
FIG. 16 shows the arrangement of existing grid points and interpolation points in the case of cubic interpolation, and Expression 1 shows the filter processing of this cubic interpolation by a matrix operation formula.

【数1】 なお、関数f(t)については、 f(t) = {sin(πt)}/πt で表され、UまたはVをWに置き換えることにより、 t0 = 1+(W−|W|) t1 = (W−|W|) t2 = 1−(W−|W|) t3 = 2−(W−|W|) で表すことができる。(Equation 1) Note that the function f (t) is represented by f (t) = {sin (πt) π / πt, and by replacing U or V with W, t0 = 1 + (W− | W |) t1 = ( W− | W |) t2 = 1− (W− | W |) t3 = 2− (W− | W |)

【0043】このような3次補間演算は、一般的に多く
の演算量を要することになるが、補間点の位置によって
は高速化が可能であり、より具体的には整数倍の拡大に
限れば処理量はかなり低減することができる。なお、こ
こでいう整数倍とは原点が格子線の交差点上に置かれる
ようになる倍率のことであって、拡大処理前後の格子点
数の比を意味するものではない。図17は、この定義で
いうところの2倍の拡大であり、図18は、3倍の拡大
である。図中、大きな白丸が原点で、小さい黒丸が補間
点である。これらの図から分かるように、整数倍の拡大
においては、補間点のいくつかは格子線上に配置され
る。以下、具体的な高速化手段について説明する。
Such a cubic interpolation operation generally requires a large amount of operation, but can be speeded up depending on the position of the interpolation point, and more specifically, is limited to an integral multiple. Throughput can be considerably reduced. Here, the integral multiple is a magnification at which the origin is placed on the intersection of the grid lines, and does not mean the ratio of the number of grid points before and after the enlargement processing. FIG. 17 is a two-fold enlargement in this definition, and FIG. 18 is a three-fold enlargement. In the figure, the large white circle is the origin, and the small black circle is the interpolation point. As can be seen from these figures, at the magnification of an integral multiple, some of the interpolation points are arranged on the grid lines. Hereinafter, specific speed-up means will be described.

【0044】(1) 格子線上の補間点の演算簡易化 整数倍の拡大においては、補間点のいくつかは格子線上
に配置される。従って、数1は、簡易化(演算量が減
る)される。すなわち、補間点が格子線上に存在すると
いうことは、W(UあるいはVのいずれか)が0になる
ことを意味する。よって、 t0 = 1、 t1 = 0、 t2 = 1、 t3 = 2 となる。このとき、 f(t) は、上式より以下のよう
になる。 f(0) = 1、 f(1) = 0、 f(2) = 0 よって、Y軸に関しては格子線上に存在する場合のX軸
上の補間点は、
(1) Simplification of Calculation of Interpolation Points on Grid Lines In the case of enlargement by an integral multiple, some interpolation points are arranged on grid lines. Therefore, Equation 1 is simplified (the amount of calculation is reduced). That is, the fact that the interpolation point exists on the grid line means that W (either U or V) becomes zero. Therefore, t0 = 1, t1 = 0, t2 = 1, and t3 = 2. At this time, f (t) is as follows from the above equation. f (0) = 1, f (1) = 0, f (2) = 0 Therefore, the interpolation point on the X axis when the Y axis is on the grid line is

【数2】 によって算出することになり、X軸に関しては格子線上
に存在する場合のY軸上の補間点は、
(Equation 2) The interpolation point on the Y-axis when it is on the grid line with respect to the X-axis is

【数3】 によって算出することになる。この数2、数3から明ら
かなように拡大処理の演算を簡易化することが可能にな
る。
(Equation 3) Will be calculated by As is clear from the equations (2) and (3), it is possible to simplify the calculation of the enlargement processing.

【0045】(2) 複数のフィルタを用意することに
よる高速化 整数倍のときに格子線上に位置する補間点はもっとも特
異な例であるが、格子線上にない場合でも倍率を固定す
るとともに、補間点ごとのフィルタ処理を用意すれば、
f(t) は定数化できるので演算処理を高速化できる。か
かる場合、f(t) を定数化すると、
(2) Speedup by Preparing a Plurality of Filters Interpolation points located on a grid line at integer multiples are the most peculiar examples. By providing point-by-point filtering,
Since f (t) can be converted to a constant, arithmetic processing can be sped up. In such a case, if f (t) is converted into a constant,

【数4】 により表されることになる。ここにおいて、A〜D、K
〜N は、補間点の場所Wによって一意的に決定されう
るものであり、予め演算してテーブルに保存しておけば
よい。
(Equation 4) Will be represented by Here, A to D, K
NN can be uniquely determined by the location W of the interpolation point, and may be calculated in advance and stored in a table.

【0046】ここで、拡大処理において2倍の場合につ
いて図17を参照してみると、局所的には4個の点を補
間しなければならないので拡大処理前の画像aを画像A
に拡大する場合、4つのフィルタを用意することにな
る。これを図で表したものが図19であり、複数のフィ
ルタ処理を用意することを前提とすれば、f(t) の
定数化が可能になる。f(t) の定数化が実現する具
体的な高速化は以下のような理由による。まず、f
(t) の定数化そのこと自体による高速化が可能であ
る。なぜならば、f(t) の定数化は、f(t) で表
せられる3次補間関数の演算の除去を意味するからであ
る。次に、演算種別の変化によって高速化が可能であ
る。一般に、CPUにとって同じ1回の掛け算でも、
“変数 * 変数” より “定数 * 変数”の方が高速な
処理となる。従って、数式1と数式4とを比較した場
合、数式4の方が高速化されることが分かる。さらに、
一方の定数化によって“定数 * 変数”のかけ算を演算
テーブルにて代用することにより、高速化することがで
きる。
Here, referring to FIG. 17 for the case of double magnification in the enlargement processing, it is necessary to interpolate four points locally.
In case of enlargement, four filters are prepared. FIG. 19 shows this in a diagram. Assuming that a plurality of filter processes are prepared, f (t) can be made constant. The concrete speed-up realized by making f (t) constant is based on the following reasons. First, f
(T) can be made constant, and the speed itself can be increased. This is because conversion of f (t) into a constant means removal of the operation of the cubic interpolation function represented by f (t). Next, it is possible to increase the speed by changing the operation type. In general, even for the same multiplication for the CPU,
"Constant * variable" is faster than "variable * variable". Therefore, when Expressions 1 and 4 are compared, it can be seen that Expression 4 is faster. further,
On the other hand, the speed can be increased by substituting the multiplication of “constant * variable” in the operation table by conversion to a constant.

【0047】以上の高速化の効果をまとめると次のよう
になる。 1つの補間点を求めるために、1つのフィルタ処理を行
なう従来の手法によれば、 ・3次補間関数の演算 ・20回の“変数 * 変数”の演算 が必要である。しかしながら、上に述べたように複数の
フィルタ処理を前提とした場合には、 ・16回の演算テーブルへのアクセス ・4回の“定数 * 変数”の演算 により実現できる。従って、複数のフィルタを用意した
方が高速化を実現できる。また、先に述べた格子線上の
補間点の演算簡略化についても、同様にして複数のフィ
ルタ処理を用意して実現可能である。そして、このよう
な複数のフィルタ処理を用意することによる高速化と、
格子線上にある補間点の式の簡略化による高速化は、整
数倍であれば何倍でも有効である。
The effects of the above speeding-up are summarized as follows. According to the conventional method of performing one filter process in order to obtain one interpolation point, calculation of a cubic interpolation function and calculation of “variable * variable” 20 times are required. However, as described above, when a plurality of filter processes are assumed, it can be realized by 16 accesses to the operation table and 4 operations of “constant * variable”. Therefore, speedup can be realized by preparing a plurality of filters. In addition, the simplification of the calculation of the interpolation points on the grid lines described above can be realized by preparing a plurality of filter processes in the same manner. And speedup by preparing such a plurality of filter processes,
Speeding up by simplifying the equation for the interpolation point on the grid line is effective for any multiple that is an integer multiple.

【0048】(3)その他の高速化 (a)2のn乗倍の拡大における特異な補間点の演算式
の簡略化 2のn乗倍の拡大においては(nは1以上の整数)、最
近傍の原点と原点の2分の1にある場所の点を結んだ格
子線(図17の破線)に補間点が置かれるが、X軸上の
場合は、
(3) Other high-speed operations (a) Simplification of the arithmetic expression of a unique interpolation point in 2 n times magnification In 2 n times expansion (n is an integer of 1 or more), An interpolation point is placed on a grid line (dashed line in FIG. 17) connecting the origin at the side and a point at a half of the origin.

【数5】 により表され、Y軸上の場合は、(Equation 5) And on the Y axis,

【数6】 により表されることになる。この場合、ベクトルの対称
性を利用することにより、 ・16回の演算テーブルへのアクセス ・2回の“定数 * 変数”の演算 だけで補間点を求めることができる。
(Equation 6) Will be represented by In this case, by utilizing the symmetry of the vector, it is possible to: • access the calculation table sixteen times;

【0049】(b) 各フィルタ間で共用できる演算の
保存による演算量の節約 補間点数分のフィルタを用意することによって、高速化
できることはすでに述べたが、各フィルタ間で共用でき
る演算を保存することによって演算量を節約することが
できる。 (c)4倍拡大における高速化の例 図20は、4倍拡大におけるコーディング例を示してい
る。上述した高速化が具体的に適用されている行に注釈
を付している。すなわち、高速化は、 ・原点のコピー ・格子線上の簡易式 ・各フィルタ間で共用できる演算の保存 ・2のn乗倍の特異点の簡易式 という手法で表れている。
(B) Saving of the amount of operation by storing the operations that can be shared between the filters It has already been described that the speed can be increased by preparing the filters for the number of interpolation points. However, the operations that can be shared between the filters are stored. As a result, the amount of calculation can be reduced. (C) Example of speeding up in quadruple magnification FIG. 20 shows a coding example in quadruple magnification. The lines to which the above-described acceleration is specifically applied are annotated. In other words, the speed-up is expressed by the following techniques: copy of origin, simplified formula on grid lines, storage of computations that can be shared between filters, and simplified formula of singular point multiplied by 2 n.

【0050】上述してきたように整数倍の補間拡大に限
れば処理量はかなり低減することができる。従って、局
所的に補間位置を特定することが高速化に有効であるこ
とが分かった。かかる整数倍による補間拡大の方法を適
用する場合、整数倍の補間に限定せず、少数倍の補間拡
大についても応用することが考えられる。ここでは、拡
大処理の他の実施例について、少数倍、具体的には1.
25倍の補間拡大について考察する。この1.25倍の
補間拡大における局所的な作用を図25に示す。同図に
おいて、局所的な1.25倍とは、4点の原点を補間点
の1点を含めて5点にすることである。すなわち、平面
において、16点の原点を補間点を含めて25点に拡大
することをいう。
As described above, the processing amount can be considerably reduced by limiting the interpolation to an integral multiple. Therefore, it has been found that locally specifying the interpolation position is effective for speeding up. In the case of applying the method of interpolation expansion by such an integral multiple, it is conceivable that the present invention is not limited to the interpolation of an integral multiple, but may be applied to the interpolation of a small number of times. Here, in another embodiment of the enlargement processing, a small number of times, specifically 1.
Consider a 25-fold interpolation magnification. FIG. 25 shows the local operation in the 1.25-fold interpolation enlargement. In the figure, the local 1.25 times means that the origin of four points is made five points including one interpolation point. That is, this means that the origin of 16 points is enlarged to 25 points including the interpolation points on the plane.

【0051】従って、図25に示すように補間点の座標
は予め推測することが可能であり、そのことによる演算
の効率化および演算量の低減は上述した整数倍の補間拡
大による実施例と同様である。よって、それぞれの補間
点ごとに最適なフィルタを用意すればよいことになる。
ここでは、それぞれの補間点ごとのフィルタを子フィル
タと呼び、16点の原点から補間点を含め25点の画素
を生成する。これらの子フィルタを使用した全体のフィ
ルタをフィルタ16to25と呼ぶ。ここで、フィルタ
16to25を構成する子フィルタに必要なベクトル要
素を示す。 ・P1〜P5を求めるために必要な1024倍されたベ
クトル要素 P1:{0,1024,0,0} P2:{VA,VB,VC,VD} P3:{VE,VF,VG,VH} P4:{VH,VG,VF,VE} P5:{VD,VC,VB,VA} なお、VA〜VHは3次元補間関数とその補間位置から
予め求められる定数である。
Therefore, as shown in FIG. 25, the coordinates of the interpolation point can be estimated in advance, and the efficiency of the operation and the reduction in the amount of the operation can be reduced in the same manner as in the above-described embodiment using the integral multiple of the interpolation. It is. Therefore, it is sufficient to prepare an optimum filter for each interpolation point.
Here, a filter for each interpolation point is called a child filter, and 25 pixels including the interpolation points are generated from the 16 origins. The whole filter using these child filters is called a filter 16to25. Here, the vector elements required for the child filters forming the filters 16 to 25 are shown. 1024 multiplied vector elements required for obtaining P1 to P5 P1: {0, 1024, 0, 0} P2: {VA, VB, VC, VD} P3: {VE, VF, VG, VH} P4 : {VH, VG, VF, VE} P5: {VD, VC, VB, VA} VA to VH are constants previously obtained from the three-dimensional interpolation function and its interpolation position.

【0052】このように、ある画像を1.25倍にする
ことを考えた場合、フィルタ16to25を16点ずつ
周期的に通すことになる。しかし、一般的にはフィルタ
16to25を通すことができない余りの領域が出るこ
とは自明である。従って、フィルタ16to25を適用
する場合、参照画素の影響も考えなければならない。こ
の余った領域は別のフィルタを通すことになるので、均
一性がなくなり、歪みが生じる。ただし、これは人間の
目の誤差の範囲内であることを前提とする。
As described above, in order to increase a certain image by 1.25 times, the filters 16 to 25 are periodically passed through 16 points. However, it is self-evident that, in general, there is an extra area that cannot pass through the filters 16 to 25. Therefore, when applying the filter 16to25, the influence of the reference pixel must be considered. Since the surplus area passes through another filter, the uniformity is lost and distortion occurs. However, it is assumed that this is within the error range of the human eye.

【0053】ここで、フィルタ16to25を通した場
合のソース画像とデスティネーション画像の大きさの関
係を示す。ソース画像1辺の長さをsLとすると、フィ
ルタ16to25を通して得られるデスティネーション
画像の1辺の長さdLは、以下のようになる。 ・dL = {(sLー1)/4}*5+1 { }は整数部分 ・・・・式(1) となる。ただし、複数の連続した局所的な箇所であっ
て、参照画素の影響がなければ、 ・dL = {sL/4}*5 ・・・・式(2) となる。
Here, the relationship between the size of the source image and the size of the destination image when passing through the filters 16 to 25 will be described. Assuming that the length of one side of the source image is sL, the length dL of one side of the destination image obtained through the filter 16to25 is as follows. DL = {(sL-1) / 4 {* 5 + 1}} is an integer part... However, if there are a plurality of continuous local places and there is no influence of the reference pixel, dL = {sL / 4} * 5 (2)

【0054】次に、画像データを形成する画素数が4の
倍数である場合に、1.25倍の補間拡大を実施するこ
とについて検証する。具体的に、本実施形態においては
デジタルカメラの補間拡大などにより必要とされてい
る、「1280画素*960画素」を1.25倍により
補間拡大し、「1600画素*1200画素」に修正す
るということについて検証する。かかる場合、X座標お
よびY座標は、Nを整数とすると、4*Nの画素数を5
*Nの画素数に変換することを示している。式(2)を
使用して、sLに4*Nを代入すると、 ・dL_1=[4*N/4]*5 ・・・・(3) =[N]*5 =5*N となり、局所的な1.25倍が利用可能であることが分
かる。ただし、全体の大きさを考えた場合は、式(1)
に基づいて考えなければならないので、 ・dL_2=[4*(N−1)/4]*5+1 ・・・・(4) =[N−1/4]*5+1 ・・・・(4−1) =5*N−4 ・・・・(4−2) となる。式(4−2)は、デスティネーション画像とし
て4画素足りない状態を示し、式(4−1)は(N−
1)回しか、フィルタ16to25を通していないこと
を示している。このことから、ソース画像でフィルタ1
6to25を適用することができる画素は、4*(N−
1)点であり、4N−4(N−1)=4点は未処理のま
まであることが分かる。また、デスティネーション画像
としてフィルタ16to25により取り出せる画素は、
5*(N−1)であり、5N−5(N−1)=5点が生
成できないことになる。従って、ソース画像の残りの4
点からデスティネーション画像における不足分5点を生
成する方法を考える必要がある。
Next, it will be verified that, when the number of pixels forming the image data is a multiple of 4, the interpolation expansion of 1.25 times is performed. Specifically, in the present embodiment, "1280 pixels * 960 pixels", which is required due to interpolation expansion of a digital camera, is interpolated / expanded by 1.25 times, and corrected to "1600 pixels * 1200 pixels". Verify that In such a case, when N is an integer, the X coordinate and the Y coordinate are 4 * N pixels equal to 5
* N is converted to the number of pixels. Substituting 4 * N for sL using equation (2), dL_1 = [4 * N / 4] * 5 (3) = [N] * 5 = 5 * N It can be seen that a typical 1.25 times is available. However, when considering the overall size, equation (1)
DL_2 = [4 * (N-1) / 4] * 5 + 1 (4) = [N-1 / 4] * 5 + 1 (4-1) ) = 5 * N−4 (4-2) Equation (4-2) shows a state where four pixels are insufficient as the destination image, and equation (4-1) shows (N−
1) This indicates that the light passes through the filter 16 to 25 only once. From this, filter 1 in the source image
Pixels to which 6to25 can be applied are 4 * (N−
It can be seen that 1) point and 4N−4 (N−1) = 4 points remain unprocessed. The pixels that can be extracted by the filters 16 to 25 as the destination image are:
5 * (N-1), which means that 5N-5 (N-1) = 5 points cannot be generated. Therefore, the remaining 4
It is necessary to consider a method of generating five missing points in the destination image from the points.

【0055】このソース画像の残りの4点からデスティ
ネーション画像における不足分5点を生成する方法を図
26示す。同図において、局所的には3点を4点にす
る、すなわち、4/3=1.3333・・・・倍(以
下、1.3倍)の補間拡大になる。ここで、この局所的
な1.3倍の補間拡大に必要となるベクトル要素は以下
のようになる。 ・P1〜P4を求めるために必要な1024倍されたベ
クトル要素 P1:{0,1024,0,0} P2:{VK,VL,VM,VN} P3:{VX,VY,VY,VX} P4:{VN,VM,VL,VK} なお、VK〜VN,VX,VYは3次元補間関数とその
補間位置から予め求められる定数である。
FIG. 26 shows a method of generating five missing points in the destination image from the remaining four points in the source image. In the figure, three points are locally changed to four points, that is, interpolation enlargement of 4/3 = 1.333... Times (hereinafter 1.3 times). Here, the vector elements necessary for the local 1.3 times interpolation enlargement are as follows. 1024 vector elements required for obtaining P1 to P4 P1: {0, 1024, 0, 0} P2: {VK, VL, VM, VN} P3: {VX, VY, VY, VX} P4 : {VN, VM, VL, VK} VK to VN, VX, VY are constants previously obtained from the three-dimensional interpolation function and its interpolation position.

【0056】以上のことから、フィルタ16to25で
処理できなかった箇所については、X方向には、フィル
タ12to25X、Y方向にはフィルタ12to25Y
を使用する。また、X,Y方向ともに1.25倍できな
い箇所はフィルタ9to16を使用する。ここで、この
フィルタ12to15Yを使用する際の原点と補間点の
相関を示した相関図を図27に示す(フィルタ12to
25Xは90度回転した図になる。)。このように、
1.25倍の補間拡大では、局所的には1.25倍と
1.3倍の補間拡大を実行する。かかる場合、フィルタ
16to25、フィルタ12to20X、フィルタ12
to20X、フィルタ9to16を使用すると補間拡大
が可能となり、これに伴い補間拡大処理の高速化を実現
することが可能になる。
From the above, for the portion that could not be processed by the filter 16to25, the filter 12to25X in the X direction and the filter 12to25Y in the Y direction.
Use In addition, a filter 9to16 is used for a portion that cannot be multiplied by 1.25 in both the X and Y directions. Here, a correlation diagram showing the correlation between the origin and the interpolation point when using the filter 12to15Y is shown in FIG.
25X is a figure rotated 90 degrees. ). in this way,
In the 1.25-times interpolation enlargement, 1.25-times and 1.3-times interpolation enlargement is performed locally. In such a case, the filter 16to25, the filter 12to20X, the filter 12
When to20X and the filter 9to16 are used, interpolation enlargement becomes possible, and accordingly, it is possible to realize high-speed interpolation enlargement processing.

【0057】これらのフィルタで必要なベクトル要素を
まとめると、14個のベクトル要素が必要になる。よっ
て、それぞれのベクトル要素に0〜255を掛けた、2
56個の要素から形成される14個の演算テーブルを使
用することにより演算数を減らすことが可能になる。こ
こで、この演算テーブルの要素1個の大きさを4バイト
とすると、1個の演算テーブルの大きさは、1024バ
イト(1KB)である。これが14個あるので、演算テ
ーブルに必要なメモリは14KBとなる。
If necessary vector elements are collected by these filters, 14 vector elements are required. Therefore, each vector element is multiplied by 0 to 255, 2
The number of operations can be reduced by using 14 operation tables formed from 56 elements. Here, assuming that the size of one element of this operation table is 4 bytes, the size of one operation table is 1024 bytes (1 KB). Since there are 14 of these, the memory required for the operation table is 14 KB.

【0058】このように、S−Areaを形成するに際
し、S−Unit.a〜iのうち参照するS−Unit
を所定のテーブルにてポインタnext_ptrを振り
替え、または、高速アクセス可能な主メモリやキャッシ
ュメモリなどのメモリに格納し、または、所定のIDテ
ーブルを形成することによって画像処理に利用する部分
のみを指示するため、必要な処理領域に対して高速にア
クセスが可能になるとともに、メモリに展開するデータ
量を低減することができ処理資源の負担を減らすことが
可能になる。
As described above, when forming the S-Area, the S-Unit. S-Unit referenced from a to i
Is transferred in a predetermined table, stored in a memory such as a main memory or a cache memory that can be accessed at high speed, or a predetermined ID table is formed to indicate only a portion to be used for image processing. Therefore, a required processing area can be accessed at a high speed, and the amount of data to be developed in a memory can be reduced, thereby reducing the load on processing resources.

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

【図1】本発明の一実施形態にかかる画像処理プログラ
ムを実行するコンピュータシステムのブロック図であ
る。
FIG. 1 is a block diagram of a computer system that executes an image processing program according to an embodiment of the present invention.

【図2】印刷イメージの処理単位の変化を示す図であ
る。
FIG. 2 is a diagram illustrating a change in a processing unit of a print image.

【図3】オペレーティングシステムに組み込まれた状態
でのプリンタドライバの概略構成を示す図である。
FIG. 3 is a diagram illustrating a schematic configuration of a printer driver in a state where the printer driver is incorporated in an operating system.

【図4】画像の処理単位を示す図である。FIG. 4 is a diagram showing a processing unit of an image.

【図5】強調処理で必要な周縁領域を示す図である。FIG. 5 is a diagram showing a peripheral area necessary for the emphasis processing.

【図6】拡大処理で必要な周縁領域を示す図である。FIG. 6 is a diagram illustrating a peripheral area necessary for the enlargement processing.

【図7】モジュール側からドライバ側に必要領域を通知
する過程を示す図である。
FIG. 7 is a diagram showing a process of notifying a necessary area from a module side to a driver side.

【図8】S−AreaとS−Unitの関係を示す図で
ある。
FIG. 8 is a diagram showing a relationship between S-Area and S-Unit.

【図9】S−Unitのポインタテーブルを示す図であ
る。
FIG. 9 is a diagram showing an S-Unit pointer table.

【図10】強調処理を実行する場合の実質的処理対象領
域を示す図である。
FIG. 10 is a diagram illustrating a substantial processing target area when an emphasis process is performed.

【図11】拡大処理を実行する場合の実質的処理対象領
域を示す図である。
FIG. 11 is a diagram illustrating a substantial processing target area when the enlargement processing is performed.

【図12】プリンタドライバにおける手続の流れを示す
図である。
FIG. 12 is a diagram showing a procedure flow in a printer driver.

【図13】第1のフィルタ処理による拡大処理を示す図
である。
FIG. 13 is a diagram showing an enlargement process by a first filter process.

【図14】第2のフィルタ処理による拡大処理を示す図
である。
FIG. 14 is a diagram illustrating an enlargement process by a second filter process.

【図15】二段階のフィルタ処理による拡大処理を示す
図である。
FIG. 15 is a diagram illustrating an enlargement process by two-stage filtering.

【図16】3次補間の格子点と補間点の関係を示す図で
ある。
FIG. 16 is a diagram illustrating the relationship between grid points and interpolation points for cubic interpolation.

【図17】2倍補間の格子点と補間点の関係を示す図で
ある。
FIG. 17 is a diagram showing the relationship between grid points and interpolation points for double interpolation.

【図18】3倍補間の格子点と補間点の関係を示す図で
ある。
FIG. 18 is a diagram illustrating the relationship between grid points and interpolation points for triple interpolation.

【図19】4つのフィルタ処理を利用した3次補間によ
る拡大処理を示す図である。
FIG. 19 is a diagram illustrating an enlargement process by cubic interpolation using four filter processes.

【図20】4倍拡大におけるコーディング例を示す図で
ある。
FIG. 20 is a diagram illustrating a coding example in quadruple magnification.

【図21】S−Unitについて処理対象となるものを
分離格納した場合の図である。
FIG. 21 is a diagram in a case where an S-Unit to be processed is separately stored.

【図22】S−Unitの処理領域テーブルを示す図で
ある。
FIG. 22 is a diagram showing a processing area table of S-Unit.

【図23】他の実施の形態におけるオペレーティングシ
ステムに組み込まれた状態でのプリンタドライバの構成
を示す図である。
FIG. 23 is a diagram illustrating a configuration of a printer driver in a state where the printer driver is incorporated in an operating system according to another embodiment.

【図24】他の実施の形態おける画像の処理単位を示す
図である。
FIG. 24 is a diagram showing a processing unit of an image in another embodiment.

【図25】1.25倍補間の格子点と補間点の関係を示
す図である。
FIG. 25 is a diagram showing the relationship between grid points and interpolation points for 1.25-times interpolation.

【図26】1.3倍補間の格子点と補間点の関係を示す
図である。
FIG. 26 is a diagram illustrating a relationship between grid points and interpolation points of 1.3-times interpolation.

【図27】フィルタ12to15Yを使用する際の原点
と補間点の相関を示した相関図である。
FIG. 27 is a correlation diagram showing a correlation between an origin and an interpolation point when using filters 12to15Y.

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

10…コンピュータシステム 11a…スキャナ 11a2…スキャナ 11b…デジタルスチルカメラ 11b1…デジタルスチルカメラ 11b2…デジタルスチルカメラ 11c…ビデオカメラ 12…コンピュータ本体 12a…オペレーティングシステム 12b…ディスプレイドライバ 12c…プリンタドライバ 12d…アプリケーション 13a…フロッピーディスクドライブ 13b…ハードディスク 13c…CD−ROMドライブ 14a…モデム 14a2…モデム 15a…キーボード 15b…マウス 17a…ディスプレイ 17b…カラープリンタ 18a…スピーカ 18b…マイク 10 Computer System 11a Scanner 11a2 Scanner 11b Digital Still Camera 11b1 Digital Still Camera 11b2 Digital Still Camera 11c Video Camera 12 Computer Body 12a Operating System 12b Display Driver 12c Printer Driver 12d Application 13a Floppy disk drive 13b Hard disk 13c CD-ROM drive 14a Modem 14a2 Modem 15a Keyboard 15b Mouse 17a Display 17b Color printer 18a Speaker 18b Microphone

Claims (7)

【特許請求の範囲】[Claims] 【請求項1】 ページデータが分割され、この分割デー
タが順不同に配置された元画像データの中から所定の画
像処理に要する分割データを選択し、同選択した分割デ
ータの所定の処理領域に対して同画像処理を実行するコ
ンピュータにて読取り可能な画像処理プログラムを記録
した媒体であって、 上記元画像データより所定の画像処理を実施する処理領
域を含む分割データを選択する分割データ選択ステップ
と、 全分割データのうち上記分割データ選択ステップにて選
択された分割データを限定してアクセス可能な状態に指
示する選択分割データ指示ステップと、 上記選択分割データ指示ステップにて指示された分割デ
ータの所定の処理領域に対して画像処理を実行する画像
処理実行ステップとを具備することを特徴とするコンピ
ュータにて読取り可能な画像処理プログラムを記録した
媒体。
1. A page data is divided, and divided data required for a predetermined image processing is selected from original image data in which the divided data is arranged in random order, and the divided data is assigned to a predetermined processing area of the selected divided data. A medium on which a computer-readable image processing program for executing the same image processing is recorded, and a divided data selecting step of selecting divided data including a processing area for performing predetermined image processing from the original image data; A selected divided data instructing step of instructing the divided data selected in the divided data selecting step out of all the divided data to be in an accessible state; and An image processing execution step of executing image processing on a predetermined processing area. A medium that stores an image processing program that can be read.
【請求項2】 上記請求項1に記載の画像処理プログラ
ムを記録した媒体において、 上記選択分割データ指示ステップは、選択された分割デ
ータを元画像データにおける位置情報により間接的に指
示することを特徴とする画像処理プログラムを記録した
媒体。
2. The medium on which the image processing program according to claim 1 is recorded, wherein the step of instructing the selected divided data indirectly designates the selected divided data by position information in the original image data. A medium on which an image processing program is recorded.
【請求項3】 上記請求項1に記載の画像処理プログラ
ムを記録した媒体において、 上記選択分割データ指示ステップは、順不同の各分割デ
ータに所定の識別子を付与するとともに、選択された分
割データの識別子に基づく識別子テーブルを形成し、同
選択された分割データを同識別子テーブルにより間接的
に指示することを特徴とする画像処理プログラムを記録
した媒体。
3. A medium on which the image processing program according to claim 1 is recorded, wherein said step of instructing selection of divided data assigns a predetermined identifier to each of the divided data in any order and an identifier of the selected divided data. A medium storing an image processing program, wherein an identifier table is formed based on the image data, and the selected divided data is indirectly indicated by the identifier table.
【請求項4】 上記請求項1に記載の画像処理プログラ
ムを記録した媒体において、 上記選択分割データ指示ステップは、上記分割データ選
択ステップにて選択された分割データを元画像データが
格納されている記憶領域より相対的に高速アクセスが可
能な記憶領域に転送して指示することを特徴とする画像
処理プログラムを記録した媒体。
4. The medium on which the image processing program according to claim 1 is recorded, wherein the selected divided data instruction step stores original image data of the divided data selected in the divided data selecting step. A medium in which an image processing program is recorded, wherein the image processing program is transferred to a storage area that can be accessed at a relatively higher speed than the storage area and is designated.
【請求項5】 上記請求項1〜請求項4のいずれかに記
載の画像処理プログラムを記録した媒体において、 上記分割データ選択ステップは、上記処理領域に画像処
理において参照する周縁領域を加えた処理領域を含む分
割データを選択することを特徴とする画像処理プログラ
ムを記録した媒体。
5. A medium on which the image processing program according to claim 1 is recorded, wherein the divided data selecting step is a processing in which a peripheral area referred to in image processing is added to the processing area. A medium having recorded thereon an image processing program for selecting divided data including an area.
【請求項6】 ページデータが分割され、この分割デー
タが順不同に配置された元画像データの中から所定の画
像処理に要する分割データを選択し、同選択した分割デ
ータの所定の処理領域に対して同画像処理を実行する画
像処理装置であって、 上記元画像データより所定の画像処理を実施する処理領
域を含む分割データを選択する分割データ選択手段と、 全分割データのうち上記分割データ選択手段が選択した
分割データを限定してアクセス可能な状態に指示し利用
可能にする選択分割データ指示手段と、 上記選択分割データ指示手段が利用可能にした分割デー
タの所定の処理領域に対して画像処理を実行する画像処
理実行手段とを具備することを特徴とする画像処理装
置。
6. The page data is divided, and divided data required for predetermined image processing is selected from original image data in which the divided data is arranged in any order, and a predetermined processing area of the selected divided data is selected. An image processing apparatus for performing the same image processing by using the divided data selecting means for selecting divided data including a processing area for performing predetermined image processing from the original image data; Means for instructing the divided data selected by the means to be accessible and restricting the use of the divided data, and an image for a predetermined processing area of the divided data made available by the selected divided data instructing means. An image processing apparatus comprising: an image processing execution unit that executes processing.
【請求項7】 ページデータが分割され、この分割デー
タが順不同に配置された元画像データの中から所定の画
像処理に要する分割データを選択し、同選択した分割デ
ータの所定の処理領域に対して同画像処理を実行する画
像処理方法であって、 上記元画像データより所定の画像処理を実施する処理領
域を含む分割データを選択する分割データ選択工程と、 全分割データのうち上記分割データ選択工程にて選択さ
れた分割データを限定してアクセス可能な状態に指示し
利用可能にする選択分割データ指示工程と、 上記選択分割データ指示工程にて利用可能にされた分割
データの所定の処理領域に対して画像処理を実行する画
像処理実行工程とを具備することを特徴とする画像処理
方法。
7. The page data is divided, and divided data required for predetermined image processing is selected from original image data in which the divided data is arranged in random order, and a predetermined processing area of the selected divided data is selected. An image processing method for performing the same image processing by using a divided data selection step of selecting divided data including a processing area for performing predetermined image processing from the original image data; A step of instructing the divided data selected in the step to make it accessible and restricting the use of the divided data, and a predetermined processing area of the divided data made available in the selected divided data instruction step An image processing execution step of executing image processing on the image.
JP11186789A 1998-08-31 1999-06-30 Medium in which image processing program is recorded, image processor and image processing method Pending JP2000149006A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP11186789A JP2000149006A (en) 1998-08-31 1999-06-30 Medium in which image processing program is recorded, image processor and image processing method

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP24533798 1998-08-31
JP10-245337 1998-08-31
JP11186789A JP2000149006A (en) 1998-08-31 1999-06-30 Medium in which image processing program is recorded, image processor and image processing method

Publications (1)

Publication Number Publication Date
JP2000149006A true JP2000149006A (en) 2000-05-30

Family

ID=26503976

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11186789A Pending JP2000149006A (en) 1998-08-31 1999-06-30 Medium in which image processing program is recorded, image processor and image processing method

Country Status (1)

Country Link
JP (1) JP2000149006A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002055802A (en) * 2000-08-10 2002-02-20 Seiko Epson Corp Printing image display device, its method and medium recording printing image display processing program
JP2016083342A (en) * 2014-10-27 2016-05-19 タタ コンサルタンシー サービシズ リミテッドTATA Consultancy Services Limited Estimation of physiological parameter

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002055802A (en) * 2000-08-10 2002-02-20 Seiko Epson Corp Printing image display device, its method and medium recording printing image display processing program
JP2016083342A (en) * 2014-10-27 2016-05-19 タタ コンサルタンシー サービシズ リミテッドTATA Consultancy Services Limited Estimation of physiological parameter

Similar Documents

Publication Publication Date Title
JPH07262360A (en) Device and method for image processing
JP2528376B2 (en) Image contour correction method
JPH03273368A (en) Graphic processor
JP4063918B2 (en) Apparatus and method for creating an image containing graphics information for display
JP3285930B2 (en) Image processing device
JP2000149006A (en) Medium in which image processing program is recorded, image processor and image processing method
JP3467753B2 (en) Image processing system, image processing method, and medium recording image processing module
US20030128374A1 (en) System and method for scaling an image
JP3467727B2 (en) Medium recording image processing program, image processing apparatus, and image processing method
JPH0457570A (en) Picture processor
JP2004102989A (en) Image processing system, image processing method, and medium recording image processing module
JP2004062894A (en) Medium recorded with image processing program, image processor and image processing method
JP2000149007A (en) Medium in which image data interpolation processing program is recorded, image data interpolation processor and image data interpolation processing method
JP2000013601A (en) Print information processor and device and method for generating intermediate data
JP3133848B2 (en) Image processing apparatus and image processing system
JPH1011593A (en) Image forming device
JPH11265456A (en) Method and device for generating raster data
JPH10151815A (en) Printing-processing apparatus
JPH10333852A (en) Plotting processor
JP3967175B2 (en) Image processing system
JPH10124671A (en) Image processing method
JP2000184197A (en) Image processor
JP3365068B2 (en) Image processing device
JP2001209640A (en) Image information converter, image processor, method therefor and recording medium
JPH09154009A (en) Printer system