JP5424785B2 - Image processing apparatus, image processing method, and computer program - Google Patents
Image processing apparatus, image processing method, and computer program Download PDFInfo
- Publication number
- JP5424785B2 JP5424785B2 JP2009205030A JP2009205030A JP5424785B2 JP 5424785 B2 JP5424785 B2 JP 5424785B2 JP 2009205030 A JP2009205030 A JP 2009205030A JP 2009205030 A JP2009205030 A JP 2009205030A JP 5424785 B2 JP5424785 B2 JP 5424785B2
- Authority
- JP
- Japan
- Prior art keywords
- memory
- processing
- image
- vectorization
- area
- 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.)
- Active
Links
Images
Landscapes
- Storing Facsimile Image Data (AREA)
- Image Input (AREA)
Description
本発明は、入力された画像に対して領域解析処理とベクトル化処理を行って、電子ファイルを生成する画像処理装置、画像処理方法に関する。 The present invention relates to an image processing apparatus and an image processing method for generating an electronic file by performing region analysis processing and vectorization processing on an input image.
近年、情報の電子化が進み、紙文書をそのまま保存するのではなく、スキャナ等によりスキャンして電子化して保存したり、その電子データを他装置に送信したりするシステムが普及してきている。電子データを送信する際のデータ量を削減するため、電子化された文書に対して高い圧縮性が要求されている。また一方、電子データの高画質性も要求されている。 In recent years, the digitization of information has progressed, and systems that do not store paper documents as they are, scan them with a scanner or the like, store them electronically, and send the electronic data to other devices have become widespread. In order to reduce the amount of data when electronic data is transmitted, high compressibility is required for digitized documents. On the other hand, high image quality of electronic data is also required.
そこで、特許文献1では、まず、スキャン画像に対して領域解析処理(領域識別処理)を行うことにより、文字領域や線画領域、写真領域等を抽出する。そして、当該抽出された文字領域や線画領域をベクトルデータに変換し、それ以外のベクトル化に適していない領域(写真領域(自然画)等)をJPEGで圧縮する。そして、各領域の圧縮結果(ベクトルデータ、JPEG圧縮データ等)を1つのファイルに合成して出力することにより、生成されるファイルの高圧縮性、再利用性、高画質性を向上させる手法が提案されている。
Therefore, in
文字領域と図画領域(出現する色数が限られたイラストなどの領域や、線画領域など)との両方をベクトル化処理(ベクトル変換処理)する場合が考えられるが、文字領域と図画領域とでは、ベクトル化処理に適した画像の解像度は異なる。すなわち、文字は図画領域に比べ、複雑かつ小さいことが多いので、文字領域のベクトル処理を行う際の画像には高解像度の画像が必要である。一方、図画領域の場合は、解像度よりも色の情報が重要になることが多い。よって、図画領域のベクトル化処理を行う際は、文字領域をベクトル化処理するときよりも低い解像度の画像(例えば、中解像度の画像)でもよいが、カラー画像が必要である。また、ベクトル化処理の前に行う領域解析処理は、高速に処理することが望まれるため、N値に減色された多値の中解像度以下の画像を用いればよい。 It is conceivable to perform vectorization processing (vector conversion processing) for both the character area and the drawing area (such as an area such as an illustration with a limited number of appearing colors or a line drawing area). The resolution of images suitable for vectorization processing is different. That is, since characters are often more complex and smaller than a graphic area, a high resolution image is required for an image when performing vector processing of the character area. On the other hand, in the case of a drawing area, color information is often more important than resolution. Therefore, when performing the vectorization process of the graphic area, an image with a lower resolution (for example, an image with a medium resolution) than that when the character area is vectorized may be used, but a color image is required. In addition, since it is desired that the area analysis process performed before the vectorization process be performed at high speed, an image having a multi-value medium resolution or less reduced to N values may be used.
しかしながら、領域解析処理と、文字領域のベクトル化処理と、図画領域のベクトル化処理とのそれぞれの画像処理に適した3種類の画像を同時に保持しようとすると、多くのメモリが必要になってしまう。 However, if three types of images suitable for the image processing of the region analysis processing, the character region vectorization processing, and the drawing region vectorization processing are simultaneously held, a large amount of memory is required. .
具体例をあげる。例えば、600dpiの多値画像を入力した場合、解析処理用に300dpiでYCbCrの画像、文字領域のベクトル化処理用に600dpiのグレースケールの画像、図画ベクトルおよび背景用に300dpiで画素数の比がY:Cb:Cr=4:1:1の画像にそれぞれ変換して保持すると仮定する。この場合、元画像の2倍以上のメモリを確保しなければ、全ての画像を保持することができない。 A specific example is given. For example, when a 600 dpi multi-valued image is input, the YCbCr image is 300 dpi for analysis processing, the 600 dpi gray scale image is used for vectorization processing of character areas, and the pixel number ratio is 300 dpi for drawing vectors and backgrounds. It is assumed that Y: Cb: Cr = 4: 1: 1 images are converted and held. In this case, all images cannot be held unless a memory twice as large as the original image is secured.
更に、ページ中のそれぞれの領域に適したベクトル化処理や穴埋め処理を行う場合、それぞれの処理に必要なワークメモリもそれぞれ確保しなければならない。また、最終出力物である電子ファイルの生成まで、個々の変換処理の結果もメモリに保持する必要がある。 Furthermore, when performing vectorization processing and hole filling processing suitable for each area in the page, it is necessary to secure work memory necessary for each processing. It is also necessary to store the results of individual conversion processes in the memory until the electronic file that is the final output product is generated.
これらのワークメモリや各種データを保持するためのメモリを個別に保持しようとすると、多くのメモリ量が必要となってしまう。 If an attempt is made to individually hold these work memories and memories for holding various data, a large amount of memory is required.
本発明では、領域解析処理、文字部のベクトル化処理、図画部のベクトル化処理それぞれの画像処理に適した画像を生成して各処理を実行して、電子ファイルを生成する際に、より少ないメモリ容量で実行可能とする。 In the present invention, fewer images are generated when an electronic file is generated by generating an image suitable for each of the area analysis processing, the vectorization processing of the character portion, and the vectorization processing of the drawing portion and executing each processing. Executable with memory capacity.
上記課題を解決するために、本発明の画像処理装置は、入力画像を保存するメモリと、前記入力画像から領域解析処理に適した領域解析用画像を生成し、当該生成した領域解析用画像を、前記メモリ上に確保した第1のメモリ領域に格納する領域解析用画像生成手段と、前記メモリ上に領域解析処理用ワークメモリを確保する領域解析処理用ワークメモリ確保手段と、前記確保した領域解析処理用ワークメモリを用いて、前記第1のメモリ領域に格納されている領域解析用画像に領域解析処理を実行し、前記メモリ上に確保された処理結果保持用の処理結果保持用メモリ領域に、当該実行した領域解析処理の結果を格納する領域解析手段と、前記領域解析手段による処理の終了時に、前記メモリ上に確保されている前記第1のメモリ領域と前記領域解析処理用ワークメモリとを開放する第1のメモリ開放手段と、前記入力画像から文字部のベクトル化処理に適した文字部ベクトル化処理用画像を生成し、当該生成した文字部ベクトル化処理用画像を、前記第1のメモリ開放手段で開放した後のメモリ上に確保した第2のメモリ領域に格納する文字部ベクトル化処理用画像生成手段と、前記第1のメモリ開放手段で開放した後のメモリ上に文字部ベクトル化処理用ワークメモリを確保する文字部ベクトル化処理用ワークメモリ確保手段と、前記確保した文字部ベクトル化処理用ワークメモリを用いて、前記処理結果保持用メモリに保持されている前記領域解析処理の結果に基づき前記第2のメモリ領域に格納されている文字部ベクトル化処理用画像に文字部ベクトル化処理を実行し、当該実行した文字部ベクトル化処理の結果を前記処理結果保持用メモリに格納する文字部ベクトル化処理手段と、前記文字部ベクトル化処理手段による処理の終了時に、前記メモリ上に確保されている前記第2のメモリ領域と前記文字部ベクトル化処理用ワークメモリとを開放する第2のメモリ開放手段と、前記入力画像から図画部のベクトル化処理に適した図画部ベクトル化処理用画像を生成し、当該生成した図画部ベクトル化処理用画像を、前記第2のメモリ開放手段で開放した後のメモリ上に確保した第3のメモリ領域に格納する図画部ベクトル化処理用画像生成手段と、前記第2のメモリ開放手段で開放した後のメモリ上に文字部穴埋め処理用ワークメモリを確保する文字部穴埋め処理用ワークメモリ確保手段と、前記確保した文字部穴埋め処理用ワークメモリを用いて、前記処理結果保持用メモリに保持されている前記領域解析処理の結果に基づき前記第3のメモリ領域に格納されている図画部ベクトル化処理用画像に文字部穴埋め処理を実行する文字部穴埋め処理手段と、前記文字部穴埋め処理手段による処理の終了時に、前記メモリ上に確保されている前記文字部穴埋め処理用ワークメモリを開放する第3のメモリ開放手段と、前記第3のメモリ開放手段で開放した後のメモリ上に図画部ベクトル化および穴埋め処理用ワークメモリを確保する図画部ベクトル化処理用ワークメモリ確保手段と、前記確保した図画部ベクトル化および穴埋め処理用ワークメモリを用いて、前記処理結果保持用メモリに保持されている前記領域解析処理の結果に基づき前記第3のメモリ領域に格納されている図画部ベクトル化処理用画像に図画部ベクトル化処理を実行し、当該実行した図画部ベクトル化処理の結果を前記処理結果保持用メモリに格納する図画部ベクトル化手段と、前記確保した図画部ベクトル化および穴埋め処理用ワークメモリを用いて、前記第3のメモリ領域に格納されている前記文字部穴埋め処理を実行した後の図画部ベクトル化処理用画像に対して、図画部穴埋め処理を実行する図画部穴埋め処理手段と、前記図画部穴埋め処理手段による処理の終了時に、前記メモリ上に確保されている前記図画部ベクトル化および穴埋め処理用ワークメモリを開放する第4のメモリ開放手段と、前記第4のメモリ開放手段で開放した後のメモリを用いて、前記処理結果保持用メモリに保持されている文字部ベクトル化処理の結果と図画部ベクトル化処理の結果と、前記第3のメモリ領域に保持されている文字部と図画部とが穴埋め処理された後の図画部ベクトル化処理用画像とを含む電子ファイルを生成する電子ファイル生成手段と、を有する。 In order to solve the above problems, an image processing apparatus of the present invention generates a memory for storing an input image, a region analysis image suitable for region analysis processing from the input image, and generates the generated region analysis image. , Area analysis image generating means for storing in a first memory area secured on the memory, area analysis processing work memory securing means for securing area analysis processing work memory on the memory, and the secured area A processing result holding memory area for holding processing results secured on the memory by executing area analysis processing on the area analysis image stored in the first memory area using the analysis processing work memory A region analysis unit for storing a result of the executed region analysis process, and the first memory region secured in the memory at the end of the process by the region analysis unit First memory releasing means for releasing the area analysis processing work memory, a character part vectorization processing image suitable for character part vectorization processing is generated from the input image, and the generated character part vectorization processing The character portion vectorization processing image generation means for storing the image for use in the second memory area secured on the memory after being released by the first memory releasing means, and the first memory releasing means being released Using the character portion vectorization processing work memory securing means for securing the character portion vectorization processing work memory on the later memory and the secured character portion vectorization processing work memory, the processing result holding memory Executing character part vectorization processing on the character part vectorization processing image stored in the second memory area based on the result of the area analysis processing held; Character part vectorization processing means for storing the result of the executed character part vectorization processing in the processing result holding memory, and the memory secured at the end of the processing by the character part vectorization processing means A second memory releasing unit for releasing a second memory area and the character part vectorization processing work memory; and a graphic part vectorization processing image suitable for the vectorization process of the graphic part from the input image. The graphic part vectorization processing image generation means for storing the generated graphic part vectorization processing image in a third memory area secured on the memory after being released by the second memory releasing means; and Character memory portion filling processing work memory securing means for securing the character portion filling processing work memory on the memory released by the second memory releasing means, and the secured character portion Using the work memory for hole filling processing, the character portion is filled in the graphic part vectorization processing image stored in the third memory area based on the result of the area analysis processing held in the processing result holding memory. Character portion filling processing means for executing processing, and third memory releasing means for releasing the character portion filling processing work memory secured on the memory at the end of processing by the character portion filling processing means; Work memory securing means for drawing part vectorization processing for securing the drawing part vectorization and filling process work memory on the memory released by the third memory release means, and the secured drawing part vectorization and filling process And the third memory area based on the result of the area analysis process held in the process result holding memory. Graphic part vectorization means for executing a graphic part vectorization process on the graphic part vectorization process image stored in the image data, and storing the result of the graphic part vectorization process executed in the processing result holding memory; For the graphic part vectorization processing image after the character part filling process stored in the third memory area using the secured graphic part vectorization and filling process work memory, the graphic part The graphic part hole filling processing means for executing the hole filling process, and a fourth memory for releasing the graphic part vectorization and hole filling processing work memory secured on the memory at the end of the processing by the graphic part hole filling processing means Using the release means and the memory released by the fourth memory release means, the character part vectorization held in the processing result holding memory An electronic file including the result of the image processing, the result of the graphic part vectorization processing, and the graphic part vectorization processing image after the character part and the graphic part held in the third memory area are subjected to the filling process. Electronic file generating means for generating.
本発明によれば、複数の処理をより少ないメモリで実行して、電子ファイルを生成することができる。 According to the present invention, an electronic file can be generated by executing a plurality of processes with less memory.
(実施例1)
図1は本実施形態1を用いたシステム構成を示す図の一例である。
Example 1
FIG. 1 is an example of a diagram showing a system configuration using the first embodiment.
画像処理装置100は本発明を実現するための装置の構成例であり、スキャナ101、CPU102、メモリ103、ハードディスク104、ネットワークI/F105を備える。スキャナ101では、文書の紙面情報を読み取って画像データに変換する。CPU102では、コンピュータプログラムを実行することにより、画像データに本発明に係る画像処理を施す装置として機能する。メモリ103は、該プログラムを実行する際のワークメモリやデータの一時保存などに利用される。ハードディスク104は、該プログラムやデータを格納する。ネットワークI/F105は、外部装置とデータの入出力を行う。
The
パーソナルコンピュータ(PC)120は、LAN110などのネットワークを介して画像処理装置100に接続され、画像処理装置100から送信されたデータを受信する。
A personal computer (PC) 120 is connected to the
図2は本実施形態1で実行される処理の構成を説明するブロック図である。図2において、各処理を実行する処理部をS10〜S100で示し、処理対象となるデータや処理結果のデータを201〜211で示している。なお、本実施形態では、CPU102でコンピュータプログラムを実行して、コンピュータを図2の各処理部(処理ユニット)S10〜S100として機能させるものとするが、処理部S10〜S100の一部又は全部を電気回路で構成するようにしても構わない。なお、コンピュータプログラムはコンピュータ読み取り可能な記憶媒体に記憶されているものとする。また、データ201〜211を保持するのに必要なワークメモリと、各処理部S10〜S100の実行に必要なワークメモリは、メモリ103に確保される。本発明では、各処理部で行われる各画像処理の実行順序ならびに画像処理それぞれにおけるメモリの確保と開放のタイミングに特徴があるが、その詳細は後述する。
FIG. 2 is a block diagram illustrating a configuration of processing executed in the first embodiment. In FIG. 2, processing units that execute each process are indicated by S <b> 10 to S <b> 100, and data to be processed and processing result data are indicated by 201-211. In the present embodiment, the computer program is executed by the CPU 102 to cause the computer to function as the processing units (processing units) S10 to S100 in FIG. 2, but part or all of the processing units S10 to S100 may be used. You may make it comprise with an electric circuit. Note that the computer program is stored in a computer-readable storage medium. In addition, a work memory necessary for holding the
まず、図2の各処理部で実行される処理の詳細を説明する。 First, details of processing executed by each processing unit in FIG. 2 will be described.
領域解析用画像生成部S10、文字部ベクトル化処理用画像生成部S20、図画部ベクトル化処理用画像生成部S30は、スキャナから入力された入力画像201の解像度や色空間変換を行い、後段の各処理に適した各画像202,203,204を生成する。なお、解像度変換および色空間変換の処理は公知の方法を用いる。
The area analysis image generation unit S10, the character part vectorization processing image generation unit S20, and the graphic part vectorization processing image generation unit S30 perform resolution and color space conversion of the
領域解析用画像生成部S10では、入力画像201を、後段の領域解析部S40における処理に適した画像(領域解析用画像202)へ変換する。領域解析部S40の処理には、多値の中解像度の画像が適している。そのため、領域解析用画像生成部S10では、入力画像201(例えば、色空間RGB、解像度600dpi)を、色空間YCbCr・解像度300dpiの画像に変換し、領域解析用画像202を生成する。
In the region analysis image generation unit S10, the
文字部ベクトル化処理用画像生成部S20では、入力画像201を、後段の文字部ベクトル化処理部S50の処理に適した画像(文字部ベクトル化処理用画像203)へ変換する。一般的にページの大きさに比べて文字のサイズは小さいので、文字ベクトル化処理部S50の処理には高解像度画像が適している。そこで、文字部ベクトル化処理用画像生成部S20では、入力画像201から輝度情報Yのみを取り出したグレースケールで解像度600dpiの画像に変換し、文字ベクトル化処理用画像203を生成する。
In the character part vectorization processing image generation unit S20, the
図画部ベクトル化処理用画像生成部S30では、入力画像201を、後段の図画部ベクトル化処理部S70の処理に適した画像(図画部ベクトル化処理用画像204)へ変換する。色数の少ないイラストなどのクリップアート画像や、線画などのラインアート画像をベクトル化する場合、色毎の領域に分けてベクトル化するため、色の情報が重要であるので、図画部ベクトル化処理部S70の処理にはカラーで中解像度の画像が適している。そこで、図画部ベクトル化処理用画像生成部S30では、入力画像201を画素数の比がY:Cb:Cr=4:1:1の形式で解像度300dpiの画像に変換し、図画部ベクトル化処理用画像204を生成する。すなわち、色差情報Cb,Crの解像度を、輝度情報Yの解像度の半分にした画像(輝度情報と色差情報の解像度が異なる画像)を生成する。
The graphic part vectorization processing image generation unit S30 converts the
領域解析処理部S40は、領域解析用画像202を解析して、文字部、図画部等の領域を判別し、それぞれの領域に分割する。ここでは公知のカラー画像を領域分割する技術を用いることが可能である。本実施例では、特許文献WO2006/066325号公報に記載の技術を用いることとする。図3(A)は領域解析処理部S40が実行する領域解析処理のフローチャートである。 The area analysis processing unit S40 analyzes the area analysis image 202, determines areas such as a character part and a graphic part, and divides them into respective areas. Here, it is possible to use a known color image dividing technique. In this embodiment, the technique described in Patent Document WO2006 / 066325 is used. FIG. 3A is a flowchart of the area analysis processing executed by the area analysis processing unit S40.
ステップS401では、処理対象の領域解析用画像202を色量子化し、類似する色を持つ領域を統合する。 In step S401, the region analysis image 202 to be processed is color quantized, and regions having similar colors are integrated.
ステップS402では、色量子化で求めた各領域の属性を判定する。本実施例では、文字、線画、写真、表、枠、ページ背景等の属性判定を行う。図3(B)はステップS402の属性判定の詳細を示すフローである。 In step S402, the attribute of each area obtained by color quantization is determined. In this embodiment, attributes such as characters, line drawings, photographs, tables, frames, and page backgrounds are determined. FIG. 3B is a flow showing details of attribute determination in step S402.
ステップS4021では、色量子化で求めた各領域について、色毎の画素連結成分(カラー連結成分)に変換し、各連結成分の統計値を求める。画素連結成分とは、同じと判断された色(類似色)を有する画素で且つ連結している(接触している)画素群ごとに作成されるグループである。統計値には、各連結成分の外接矩形の位置とサイズ、連結成分の画素数、境界線の長さ、平均色などを用いる。 In step S4021, each region obtained by color quantization is converted into a pixel connected component (color connected component) for each color, and a statistical value of each connected component is obtained. The pixel connection component is a group that is created for each pixel group that has the same color (similar color) and is connected (contacted). For the statistical value, the position and size of the circumscribed rectangle of each connected component, the number of pixels of the connected component, the length of the boundary line, the average color, and the like are used.
ステップS4022では、カラー連結成分をそれぞれの統計値を基に分類し、属性判定を行う。 In step S4022, the color connected components are classified based on the respective statistical values, and attribute determination is performed.
ステップS4023では、カラー連結成分の位置情報に基づいて、包含関係を調べて木構造を作成し、当該木構造に基づいてグループ化する。例えば、文字属性のカラー連結成分で、近傍に同様の文字属性の連結成分がある場合は、文字列や段落を形成すると判断して、1つの文字領域にグループ化する。グループ化した場合は、木構造を更新する。 In step S4023, based on the position information of the color connected components, the inclusive relation is examined to create a tree structure, and grouping is performed based on the tree structure. For example, when there is a character attribute color connected component and there is a similar character attribute connected component in the vicinity, it is determined that a character string or paragraph is to be formed and grouped into one character region. When grouped, the tree structure is updated.
ステップS4024では、グループ化後のカラー連結成分に関する情報を生成して、領域情報205を保持するメモリを確保し、当該領域情報205の一部として該カラー連結成分に関する情報を格納する。領域情報205に格納されるカラー連結成分に関する情報は、文字、線画、写真、表、枠、ページ背景などの属性情報と各連結成分の位置情報とが含まれ、更に、連結成分同士の関係は木構造で表される。ベクトル化処理などの以降に行う各領域の処理結果は、領域情報205内に記録される。 In step S4024, information on the color connected components after grouping is generated, a memory for holding the region information 205 is secured, and information on the color connected components is stored as part of the region information 205. The information related to the color connected component stored in the area information 205 includes attribute information such as characters, line drawings, photographs, tables, frames, and page backgrounds, and positional information of each connected component. It is represented by a tree structure. The processing result of each area performed after the vectorization process or the like is recorded in the area information 205.
文字部ベクトル化処理部S50では、文字部ベクトル化処理用画像203を用いて文字用のベクトル化処理を行うことにより、文字部(本文内の文字画像や、表内の文字画像)をベクトル変換する。以下に、文字部のベクトル化処理について詳細を説明する。 In the character part vectorization processing unit S50, the character part (character image in the text or character image in the table) is vector-converted by performing character vectorization processing using the character part vectorization processing image 203. To do. Details of the character vector processing will be described below.
領域情報205に含まれる文字属性を有するカラー連結成分に基づいて、文字領域の位置情報を取得し、文字部ベクトル化処理用画像203において、対応する領域内のグレースケールの連結成分を解析し、高解像度の文字の連結成分を得る。そして、各文字の連結成分の輪郭をベクトルデータに変換する。なお、文字領域ごとに、グレースケールの文字部ベクトル化処理用画像203を2値化した後に、文字の連結成分を抽出し、当該連結成分の輪郭をベクトルデータにするようにしてもよい。 Based on the color connected component having the character attribute included in the region information 205, the position information of the character region is acquired, and in the character part vectorization processing image 203, the grayscale connected component in the corresponding region is analyzed, Get connected components of high resolution characters. Then, the outline of the connected component of each character is converted into vector data. For each character region, the grayscale character part vectorization processing image 203 may be binarized, and then a connected component of the character may be extracted and the outline of the connected component may be converted into vector data.
文字の連結成分の輪郭をベクトルデータに変換する方法は、例えば次のような手法を用いることが可能である。文字の連結成分の輪郭を、直線および/または曲線の組み合わせとして表現するために、輪郭線を複数の区間(画素列)に区切る基準位置となる「角」を検出する。角とは曲率が極大となる点であり、例えば、図4の輪郭線上の画素Piが角か否かの判断は以下のように行う。すなわち、Piを起点とし、輪郭線に沿ってPiから両方向に所定画素数(ここではk個とする)離れた画素Pi−k、Pi+kを線分Lで結ぶ。画素Pi−k、Pi+k間の距離をd1、線分Lと画素Piとの距離をd2、画素Pi−k、Pi+k間の弧の長さをAとする。d2が極大となるとき、あるいは比(d1/A)が閾値以下となるときに画素Piを角と判断する。そして、輪郭の画素列を当該判断された角の位置で分割し、当該分割された各画素列を、直線あるいは曲線で近似する。直線への近似は最小二乗法等により実行し、曲線への近似は3次スプライン関数などを用いる。画素列を分割する角の画素は近似直線あるいは近似直線における、始端または終端となる。さらにベクトル化された輪郭内に、当該輪郭を構成する画素と異なる輝度の画素塊の輪郭(内輪郭)が存在するか否かを判断し、内輪郭が存在するときはその輪郭をベクトル化する。更に、内輪郭の内輪郭というように、再帰的に反転画素の内輪郭をベクトル化していく。このように、連結成分の輪郭の区分線近似を用いれば、文字部のアウトラインをベクトル化することができる。 For example, the following method can be used as the method for converting the outline of the connected component of characters into vector data. In order to express the outline of the connected component of characters as a combination of straight lines and / or curves, “corners” serving as reference positions for dividing the outline into a plurality of sections (pixel columns) are detected. A corner is a point at which the curvature is maximized. For example, whether or not the pixel Pi on the contour line in FIG. 4 is a corner is determined as follows. That is, a line segment L connects pixels Pi−k and Pi + k that are separated from Pi by a predetermined number of pixels (here, k pixels) in both directions along the contour line. A distance between the pixels Pi-k and Pi + k is d1, a distance between the line segment L and the pixel Pi is d2, and an arc length between the pixels Pi-k and Pi + k is A. When d2 reaches a maximum or when the ratio (d1 / A) is equal to or less than the threshold, the pixel Pi is determined to be a corner. Then, the contour pixel row is divided at the determined corner position, and each divided pixel row is approximated by a straight line or a curve. The approximation to a straight line is executed by the least square method or the like, and the approximation to a curve uses a cubic spline function or the like. The pixel at the corner that divides the pixel row is the approximate line or the start or end of the approximate line. Further, it is determined whether or not the contour of the pixel block having a luminance different from that of the pixels constituting the contour (inner contour) exists in the vectorized contour, and if the inner contour exists, the contour is vectorized. . Further, the inner contour of the inverted pixel is recursively vectorized, such as the inner contour of the inner contour. In this way, the outline of the character portion can be vectorized by using the lane marking approximation of the contour of the connected component.
なお、図5に示すように、ある注目区間で外輪郭PRjと、内輪郭PRj+1あるいは別の外輪郭が一定間隔で近接している場合、2個あるいは複数の輪郭線をひとまとめにし、太さを持った線のベクトルデータとして表現するようにしてもよい。例えば、輪郭PRj+1の各画素Piから輪郭PRj上で最短距離となる画素Qiまでの距離PQiを算出する。そして、注目区間(例えばPi−1からPi+2の間)についての距離PQi−1〜距離PQi+2のばらつきがわずかである場合には、画素Pi、Qiの中点Miの点列に沿った直線または曲線で近似し、太さを有する線として表現し得る。なお、近似直線、近似曲線の太さは、例えば注目区間における距離PQiの平均値とする。 As shown in FIG. 5, when the outer contour PRj and the inner contour PRj + 1 or another outer contour are close to each other at a certain interval in a certain attention section, two or a plurality of contour lines are grouped together and the thickness is set. You may make it express as vector data of a held line. For example, the distance PQi from each pixel Pi of the contour PRj + 1 to the pixel Qi that is the shortest distance on the contour PRj is calculated. When the variation in the distance PQi-1 to the distance PQi + 2 for the target section (for example, between Pi-1 and Pi + 2) is slight, a straight line or a curve along the point sequence of the midpoint Mi of the pixels Pi and Qi And can be expressed as a line having a thickness. Note that the thickness of the approximate line and the approximate curve is, for example, the average value of the distances PQi in the target section.
このようにして、文字部ベクトル化処理部S50は、文字連結成分の輪郭からベクトルデータを生成し、カラー連結成分の色情報と合わせて、文字ベクトル206を生成して領域情報205内に記録する。 In this manner, the character part vectorization processing unit S50 generates vector data from the outline of the character connected component, generates the character vector 206 together with the color information of the color connected component, and records it in the area information 205. .
文字部穴埋め処理部S60では、図画部ベクトル化処理用画像204における文字領域について穴埋め処理(文字の画素を背景色で塗りつぶす処理)を行う。本実施例では、文字画素部分を当該文字画素の周囲画素の平均色で塗る方法を用いる。
In the character portion filling processing unit S60, the character region in the drawing portion
まず、領域情報205から文字属性を有するカラー連結成分の情報を取得し、文字穴埋めワークメモリ内に画像として展開する。この文字穴埋めワークメモリに展開された画像の画素位置と、図画部ベクトル化処理用画像204を重ね合わせて、図画部ベクトル化処理用画像204における文字画素部分を特定する。次に、図画部ベクトル化処理用画像204において、それぞれの文字画素部分の周辺画素の平均色(すなわち各文字の背景の平均色)を算出する。最後に、図画部ベクトル化処理用画像204の文字画素部分を当該算出した平均色で塗りつぶす。これにより、文字ベクトル化された領域が、背景色で塗りつぶされた、文字画像部分が消された図画部ベクトル化処理用画像が生成されることになる。
First, the information of the color connected component having the character attribute is acquired from the area information 205 and developed as an image in the character hole filling work memory. The pixel position of the image developed in the character hole filling work memory and the drawing portion
図画部ベクトル化処理部S70では、文字部の穴埋め処理が為された後の図画部ベクトル化処理用画像を用いて、図画部をベクトル変換する。図6を用いて、図画部ベクトル化処理部S70が実行する図画部ベクトル化処理を説明する。 In the graphic part vectorization processing unit S70, the graphic part is vector-converted by using the graphic part vectorization processing image after the character part filling process is performed. The graphic part vectorization processing executed by the graphic part vectorization processing unit S70 will be described with reference to FIG.
ステップS701では、図画領域(線画、色数の少ないイラストなどのクリップアート、表罫線、写真)の領域情報を基に、該当する領域の図画ベクトル化画像がベクトル処理可能かを判定する。処理可能であると判断すればステップS702へ遷移し、そうでなければステップS703へ遷移する。例えば、領域情報の属性を参照し、線画、色数の少ないイラストなどのクリップアート、表であれば、ベクトル化処理可能と判断し、写真などの自然画はベクトル化処理に不適と判断する。また、処理対象の領域内の色量子化結果が過分割と判断される場合(カラー連結成分の数が過剰である場合)や、領域情報の面積が一定値以上である場合も、計算量と処理速度を考慮して、ベクトル化処理に適さない領域と判断してもよい。 In step S701, based on the area information of the drawing area (line drawing, clip art such as an illustration with a small number of colors, table ruled line, and photograph), it is determined whether the drawing vectorized image of the corresponding area can be vector-processed. If it is determined that processing is possible, the process proceeds to step S702, and if not, the process proceeds to step S703. For example, referring to the attribute of the area information, if it is a line drawing, a clip art such as an illustration with a small number of colors, or a table, it is determined that vectorization processing is possible, and a natural image such as a photograph is determined to be unsuitable for vectorization processing. Also, when the color quantization result in the region to be processed is determined to be excessively divided (when the number of color connected components is excessive), or when the area of the region information is greater than a certain value, Considering the processing speed, it may be determined that the region is not suitable for vectorization processing.
ステップS702では、図画部のベクトル化処理を実行し、図画ベクトル207を生成する。なお、線画や表罫線のベクトル化を行う際も文字部と同様に輪郭線を近似してベクトル化処理することが可能であり、特に、線や線の集合体である表罫線は、太さを有する線の集合として表現することにより、効率よくベクトル表現することができる。また、線画(ラインアート)をベクトル化する手法としては、特開2007−293829号公報に開示される手法を用いることもできる。また、イラストなどのクリップアート領域をベクトル化する手法としては、特開2006−344069号公報に開示される方法を用いることもできる。 In step S <b> 702, the drawing unit vectorization process is executed to generate a drawing vector 207. In addition, when vectorizing a line drawing or table ruled line, it is possible to approximate the contour line in the same way as the character part, and the vectorization process can be performed. In particular, the table ruled line which is a collection of lines and lines is thick. By expressing as a set of lines having, vector expression can be efficiently performed. Further, as a technique for vectorizing a line drawing (line art), a technique disclosed in Japanese Unexamined Patent Application Publication No. 2007-293829 can also be used. Further, as a technique for vectorizing a clip art region such as an illustration, a method disclosed in Japanese Patent Application Laid-Open No. 2006-334069 can be used.
図7を用いて、本実施形態におけるクリップアート領域のベクトル化処理の詳細を説明する。図7のS7021〜S7024は、ベクトル化処理S702を実行する図画部ベクトル化処理部S70を構成する詳細な処理部である。また、データ212〜215は、図画部ベクトル化および穴埋め用ワークメモリとして確保されたメモリ103上に記録される。
The details of the vectorization process of the clipart area in this embodiment will be described with reference to FIG. S7021 to S7024 in FIG. 7 are detailed processing units constituting the graphic part vectorization processing unit S70 that executes the vectorization processing S702. The data 212 to 215 are recorded on the
高解像度化処理部S7021は、複数の色成分のうちの少なくとも1つ以上の色成分の解像度が粗いYCbCr画像を、最も高い解像度の色成分の解像度に合わせたRGB画像に変換する。本実施例では、図画部ベクトル化処理用画像204がY:Cb:Cr=4:1:1の画像(Cb,Crの色成分の解像度がY成分より低い画像)であるので、これをRGB画像212に変換することで、Yの色成分の解像度と等しい解像度に戻す。
The resolution enhancement processing unit S7021 converts a YCbCr image having a coarse resolution of at least one of the plurality of color components into an RGB image that matches the resolution of the highest resolution color component. In the present embodiment, the drawing part
クリップアート領域分割部S7022では、領域情報205に格納されているカラー連結成分の位置情報に基づいて、RGB画像212において矩形のクリップアート領域を抽出し、当該クリップアート領域にある各画素を色特徴に基づき色毎の領域に分割する。 In the clipart area dividing unit S7022, a rectangular clipart area is extracted from the RGB image 212 based on the position information of the color connected component stored in the area information 205, and each pixel in the clipart area is color-characterized. Is divided into regions for each color based on the above.
クリップアート領域内背景同定部S7023は、前記クリップアート領域分割部S7022の領域分割結果に基づき、当該クリップアート領域における背景領域情報214とクリップアート内の背景色213とを同定する。例えば、クリップアート領域分割部の領域分割結果のうち、クリップアート領域の外接矩形の境界に接する画素数が多い領域をクリップアート領域内の背景領域として同定する。同定された背景領域情報214とクリップアート内背景色213は、中間情報215として保持される。なお、中間情報215には、その他の図示しないクリップアートベクトル化処理途中で生成される各種の情報が保持されている。 The clip art area background identification unit S7023 identifies the background area information 214 in the clip art area and the background color 213 in the clip art based on the area division result of the clip art area dividing unit S7022. For example, among the area division results of the clip art area dividing unit, an area having a large number of pixels in contact with the circumscribed rectangle boundary of the clip art area is identified as the background area in the clip art area. The identified background area information 214 and the background color 213 in the clip art are held as intermediate information 215. The intermediate information 215 holds various types of information generated during other clip art vectorization processing (not shown).
クリップアートベクトル化部S7024は、背景領域同定部7023の同定結果に基づき、クリップアート領域分割部S7022の領域分割結果のうち、背景領域以外の各領域部分をベクトル化し、クリップアート領域の図画部ベクトル207を生成する。 Based on the identification result of the background region identification unit 7023, the clip art vectorization unit S7024 vectorizes each region portion other than the background region in the region division result of the clip region division unit S7022, and draws the graphic region vector of the clip region. 207 is generated.
なお、中間情報215として保持される背景領域情報214およびクリップアート内背景色213は、後述する図画部穴うめ処理部S80においても使用される。 The background area information 214 and the background color 213 in the clip art held as the intermediate information 215 are also used in the drawing part hole filling processing part S80 described later.
図6の説明に戻る。ステップS703では、ベクトル化に適さない写真などの領域について、ラスター画像の切り出し処理をする。ここでは、文字部の穴埋めを行った後の図画部ベクトル化処理用画像204から、該当する領域を切り出し、矩形写真画像を生成する。
Returning to the description of FIG. In step S703, a raster image is cut out for an area such as a photograph that is not suitable for vectorization. Here, a corresponding region is cut out from the graphic portion
ステップS702で生成された図画ベクトル207や、ステップS703で生成された矩形写真画像208は、領域情報205内に記録される。 The drawing vector 207 generated in step S702 and the rectangular photograph image 208 generated in step S703 are recorded in the area information 205.
図画部穴埋め処理部S80では、図画領域それぞれに対する穴埋め処理を行い、下地画像209を生成する。図画部穴埋め処理部S80は、前段の図画部ベクトル化処理部S70における出力結果において、図画部ベクトルが生成されたか、矩形写真画像が生成されたかに応じて、領域ごとに穴埋め処理の手法を切り替える。 The graphic part hole filling processing unit S80 performs a hole filling process for each graphic area to generate a base image 209. The graphic portion filling processing unit S80 switches the filling processing method for each region depending on whether a graphic portion vector or a rectangular photograph image is generated in the output result of the previous drawing portion vectorization processing portion S70. .
矩形写真画像が生成された図画領域の場合、当該領域の周辺画素の平均色を計算し、当該計算された平均色で、図画部ベクトル化処理用画像204内の対応する図画領域を埋める。
In the case of a drawing area in which a rectangular photographic image is generated, the average color of surrounding pixels in the area is calculated, and the corresponding drawing area in the drawing portion
以下、図画領域がクリップアート領域であった場合についての穴埋め処理について詳細を説明する。図12(a)は、クリップアート領域を含んでいる文書画像の例を表している。図12(b)は、ベクトル化対象としてのクリップアート領域を抽出し、その外接矩形であるオブジェクト外接矩形81を表している。また、中間情報215に保持されているクリップアート領域における背景領域情報214には、クリップアート領域の外接矩形の境界に接する画素数が多い領域がクリップアート領域内の背景領域82として同定されている。図12(b)のクリップアート領域から背景領域83をベクトル化対象から外し、背景以外の領域(ベクトル化対象オブジェクト87)のみを表現した図が、図12(c)である。図12(c)において、境界85は、オブジェクト領域(背景以外の領域)と下地84との境界部(以降、『境界部1』と称する)を示している。また、境界86はオブジェクト領域(背景以外の領域)とクリップアート領域内の背景との境界部(以降、『境界部2』とも称する)を示している。次に、このクリップアート穴埋め処理について、図8のフローチャートを用いて詳細説明する。
Hereinafter, the details of the hole filling process when the drawing area is the clip art area will be described. FIG. 12A shows an example of a document image including a clip art area. FIG. 12B shows an object circumscribing rectangle 81 that is a circumscribed rectangle extracted from a clip art region as a vectorization target. Further, in the background area information 214 in the clipart area held in the intermediate information 215, an area having a large number of pixels in contact with the circumscribed rectangle boundary of the clipart area is identified as the
ステップS1101では、処理対象であるクリップアート領域内の背景領域に基づき、背景領域を判別するための情報を、高解像度化され且つ1画素1ビットで生成された2値のビットマップ画像(背景識別用画像)として生成する。背景領域とオブジェクト領域とを画素値がそれぞれ1か0かで判別できる形式に生成しながらワークメモリに保持する。その際に、当該クリップアート領域に対応する画像データのラスター走査順での処理の準備として、一連の初期化処理を行う。そして、一連の初期化処理が終了すると、ラスター走査順にクリップアート領域に対応する部分の穴埋め処理を開始する。 In step S1101, based on the background area in the clip area to be processed, information for determining the background area is converted into a binary bitmap image (background identification) that has been increased in resolution and generated with 1 bit per pixel. Image). The background area and the object area are generated in a format that can be discriminated based on whether the pixel value is 1 or 0 and held in the work memory. At that time, a series of initialization processing is performed as preparation for processing the image data corresponding to the clipart area in the raster scan order. When the series of initialization processes is completed, the hole filling process for the portion corresponding to the clipart area is started in the raster scanning order.
ステップS1102では、図画部ベクトル化処理用画像204における当該クリップアート領域に対応する部分の画像データのCrデータ(Cbデータでも良い)をラスター走査する。この時点でのラスター走査順の注目位置における画素が上述した境界部1でもなく、かつ境界部2でもない背景領域内にある画素か否かを判定する。具体的には、この時点でのラスター走査順の注目位置における画素が上述のビットマップ画像(背景識別用画像)上での対応部分(2×2画素の領域が対応する)の2×2画素の4画素のうち、全てが背景領域の画素であるか否かを調べる。そして、4画素全てが背景画素であれば境界以外の背景領域であると判定する。
In step S1102, raster scanning is performed on the Cr data (or Cb data) of the portion of the image data corresponding to the clip area in the graphic part
判定した結果、注目画素が境界以外の背景領域の画素である場合、ステップS1107へ進み、境界以外の背景領域の画素でない場合、ステップS1103へ進む。 As a result of the determination, if the target pixel is a pixel in the background area other than the boundary, the process proceeds to step S1107. If the target pixel is not a pixel in the background area other than the boundary, the process proceeds to step S1103.
ステップS1103では、ステップS1102と同様に、注目画素が境界部2に相当する画素(即ち、背景領域とオブジェクト領域(クリップアート領域内における背景以外の領域)との境界)であるか否かを判定する。つまり、その時点でのラスター走査順の注目位置における画素が上述のビットマップ画像(背景識別用画像)上での対応部分の2×2画素の4画素のうち、何れかの画素が背景領域の画素で且つ4画素中の残る画素が全てオブジェクト領域の画素であるか否かを調べる。この条件を満たす場合、注目画素は境界部2に相当する画素(即ち、背景領域とオブジェクト領域との境界)であると判定する。 In step S1103, as in step S1102, it is determined whether or not the target pixel is a pixel corresponding to the boundary 2 (that is, a boundary between the background area and the object area (an area other than the background in the clipart area)). To do. In other words, the pixel at the current position in the raster scan order at that time is the background region, and any one of the corresponding 2 × 2 pixels on the bitmap image (background identification image) is the background region. It is checked whether all the remaining pixels in the four pixels are pixels in the object area. When this condition is satisfied, it is determined that the target pixel is a pixel corresponding to the boundary portion 2 (that is, the boundary between the background area and the object area).
判定した結果、注目画素が背景領域とオブジェクト領域との境界に相当する場合、ステップS1108へ進み、背景領域とオブジェクト領域との境界に相当しない場合には、ステップS1104へ進む。 As a result of the determination, if the target pixel corresponds to the boundary between the background area and the object area, the process proceeds to step S1108. If the target pixel does not correspond to the boundary between the background area and the object area, the process proceeds to step S1104.
ステップS1104では、上述した判定処理と同様に、注目画素が境界部1に相当する画素(即ち、下地領域とオブジェクト領域との境界)であるか否かを判定する。つまり、注目画素が上述のビットマップ画像(背景識別用画像)上での対応部分(2×2画素の領域が対応する)の2×2画素の4画素のうち、何れかの画素がオブジェクト領域の画素で、かつ4画素中の残る画素の何れかが下地領域の画素であるか否かを調べる。この条件を満たす場合、注目画素は境界部1に相当する画素(即ち、下地領域とオブジェクト領域との境界)であると判定する。 In step S1104, as in the determination process described above, it is determined whether the target pixel is a pixel corresponding to the boundary portion 1 (that is, the boundary between the background region and the object region). That is, the pixel of interest is an object region among the 4 pixels of 2 × 2 pixels of the corresponding portion (the region of 2 × 2 pixels corresponds) on the bitmap image (background identification image) described above. Whether any of the remaining pixels in the four pixels is a pixel in the background region. When this condition is satisfied, it is determined that the target pixel is a pixel corresponding to the boundary portion 1 (that is, the boundary between the background area and the object area).
判定した結果、注目画素が下地領域とオブジェクト領域との境界に相当する場合、ステップS1109へ進み、下地領域とオブジェクト領域との境界に相当しない場合には、ステップS1105へ進む。ステップS1105では、注目画素が、オブジェクト領域(前景となるオブジェクト本体)の画素の場合となっているので、背景色(Y,Cb,Cr)で穴埋めを行う。即ち、低解像度化されてRAM30上に保持されている画像データ上で、その時点でのラスター走査順の注目位置における画素のCbデータ、Crデータ、Yデータを背景色データから得られる各値に置き換える。ここでクリップアート領域内の背景色データは、RGBデータで保持しているので、これをYCbCrに変換して得られる。
As a result of the determination, if the target pixel corresponds to the boundary between the background area and the object area, the process proceeds to step S1109. If the target pixel does not correspond to the boundary between the background area and the object area, the process proceeds to step S1105. In step S1105, since the target pixel is a pixel in the object region (the object body serving as the foreground), the background color (Y, Cb, Cr) is filled. That is, the Cb data, Cr data, and Y data of the pixel at the target position in the raster scanning order at that time are converted into the values obtained from the background color data on the image data that has been reduced in resolution and stored in the
次に、ステップS1106では、当該クリップアート領域に対応する画像データのラスター走査順での処理が当該領域の最終画素まで進んだか否かを判断する。判断した結果、最終画素まで終了したのであれば、この一連の処理を終えて終了し、終了していない場合には、ステップS1107へ進む。ステップS1107では、注目する位置の画素(注目画素)を次の位置の画素に進め、ステップS1102に戻る。 Next, in step S1106, it is determined whether or not the processing in the raster scan order of the image data corresponding to the clipart area has advanced to the last pixel of the area. As a result of the determination, if the process has been completed up to the last pixel, the series of processes is completed, and if not completed, the process proceeds to step S1107. In step S1107, the pixel at the position of interest (target pixel) is advanced to the pixel at the next position, and the process returns to step S1102.
一方、ステップS1108では、注目画素は境界部2に相当する画素(即ち、背景領域とオブジェクト領域との境界)であるので、注目画素のCbとCrのみを、背景色データから得られる各値に置き換える。即ち、境界部2が背景色データで穴埋め処理される。ここで背景色データは、RGBデータで保持しているので、これをYCbCrに変換して得られる。そして、ステップS1108の処理を終えると、上述したステップS1106へ進む。 On the other hand, in step S1108, since the target pixel is a pixel corresponding to the boundary portion 2 (that is, the boundary between the background region and the object region), only Cb and Cr of the target pixel are changed to the values obtained from the background color data. replace. That is, the boundary 2 is filled with the background color data. Here, since the background color data is held as RGB data, it is obtained by converting it into YCbCr. Then, when step S1108 is completed, the process proceeds to step S1106 described above.
一方、ステップS1109では、注目画素は境界部1に相当する画素(即ち、下地領域とオブジェクト領域との境界)であるので、注目画素のY,Cb,Crはそのままの値として残し、背景色のデータに置き換えない。即ち、境界部1は、下地領域の色で穴埋め処理される。そして、ステップS1109の処理を終えると、上述したステップS1106へ進む。
On the other hand, in step S1109, since the target pixel is a pixel corresponding to the boundary portion 1 (that is, the boundary between the background region and the object region), Y, Cb, and Cr of the target pixel are left as they are, and the background color is changed. Do not replace with data. That is, the
このように構成することにより、カラー文書のページ内の図形のベクトル化対象オブジェクトと、これを含む外接矩形領域外の背景とが異なる解像度のデータで構成されている場合でも、境界部分に偽色が発生しない。境界部分は、ベクトル化対象オブジェクトとその外接矩形領域外との矩形境界部分や、ベクトル化対象オブジェクトとその外接矩形内におけるベクトル化対象オブジェクト以外の背景領域との境界部分である。 By configuring in this way, even if the object to be vectorized of the figure in the page of the color document and the background outside the circumscribed rectangular area including it are composed of data with different resolutions, a false color is displayed at the boundary part. Does not occur. The boundary portion is a rectangular boundary portion between the vectorization target object and its circumscribed rectangle area, or a boundary portion between the vectorization target object and the background region other than the vectorization target object within its circumscribed rectangle.
ページ描画情報生成処理部S90では、各処理部で生成されたデータおよび領域情報を一つにまとめる。ページ描画情報生成処理で生成されたデータの一例を図9に示す。2100は、ページ描画情報生成処理部S90で生成されたページ描画情報210の全体構成例である。テキストオブジェクト2101には、領域解析部S40が文字と判断した領域のベクトル変換結果(文字ベクトル206)と、画像中における位置情報とを保持する。同様に、写真オブジェクト2102には矩形写真画像208とその位置情報が保持され、図画オブジェクト2103には、クリップアートや線画(ラインアート)のベクトル変換結果(図画ベクトル207)とその位置情報が保持される。また、背景オブジェクト2104には、穴埋め処理後の画像(下地画像209)とその位置情報が保持される。また、プロパティ2105には、入力データの書誌情報(例えば、ページ数、ページサイズ、入力機器情報、タイムスタンプなど)が保持される。
In the page drawing information generation processing unit S90, the data and area information generated by each processing unit are combined into one. An example of data generated by the page drawing information generation process is shown in FIG.
電子ファイル生成部S100では、ページ描画情報210を電子ファイル211に変換する。本実施例では、PC120で再生や編集等が可能な電子ファイルへ変換する。
In the electronic file generation unit S100, the
図10の電子ドキュメント2100は、本実施例の説明のために作られた仮想的なXMLフォーマットに従って作られた電子ファイル211の例である。図10において、2111は、図9の背景オブジェクト2104の下地画像データを1ページ全体に描画する記述の例である。また、2112は、写真オブジェクト2102内の写真画像を位置情報により指定された位置に描画する記述である。また、2113は図画オブジェクト2103内の図画ベクトルをページ内の指定位置に描画する記述である。2114は、文字オブジェクト2101内の文字ベクトルをページ内の指定位置に描画する記述である。図10の電子ドキュメントを受信したPCでは、2111〜2114に記述された情報を順に描画することで、背景、写真、図画ベクトル、文字ベクトルを重ねあわせて元の文書と同等の外観を有すページ画像を再生可能である。また、2111〜2114の記述それぞれをオブジェクトとして編集用途に供することも可能である。なお、図10はあくまで一例であって、他のフォーマットを用いて記述してもよい。例えば、PDF、XPS、SVGなどのグラフィックページ記述、Office Open XML、Open Document Format などのページ編集データ記述などを用いてもよい。変換されるフォーマットの種類は、予めユーザに指定させておいてもよいし、変換処理の途中でユーザに問い合わせて指定させることも可能である。
An
本発明における各処理の実行順序ならびに各処理におけるメモリの確保と開放のタイミングについての詳細を説明する。図11は、図2の各処理部の処理手順と、その処理順ごとにメモリ103の内部状態をどのように変更しているかの模式図である。すなわち、図11(A)は本発明における各処理部の処理順であり、図11(B)は各処理を行っているときのメモリ103の内部挙動(メモリ103の使用状況)を示す。
Details of the execution order of the processes in the present invention and the timing of securing and releasing the memory in each process will be described. FIG. 11 is a schematic diagram showing the processing procedure of each processing unit in FIG. 2 and how the internal state of the
図11(B)において、縦軸は処理順にしたがった時間軸を示し、横軸はメモリアドレス(メモリの使用状況)を示している。図11(B)の各矩形は、各種データやワークメモリとして使用されるメモリ領域が、メモリ103に確保されるタイミングとメモリアドレスとを示すものである。その矩形の上端と下端は、メモリの確保と開放のタイミングを示し、このタイミングは矩形上端、下端の水平線上にある図11(A)の各処理ステップでの処理タイミングと適合するように記載している。具体例を挙げると、入力画像201が格納されるメモリ領域は、メモリ103に確保された状態で図11(A)の処理が開始され、ページ描画情報生成部S90の処理の終了時に開放される。
In FIG. 11B, the vertical axis indicates the time axis according to the processing order, and the horizontal axis indicates the memory address (memory usage status). Each rectangle in FIG. 11B indicates the timing and memory address at which the memory area used as various data and work memory is secured in the
以下では、図11の詳細を説明する。開始時の初期状態は、スキャナやネットワークを介して入力された入力画像201が103メモリ上に確保された入力画像保持用メモリ領域に保存されている。
Details of FIG. 11 will be described below. In an initial state at the start, an
まず、図11(A)に示すように、領域解析用画像生成部S10による領域解析用画像の生成処理が行われる。この処理が実行されると、メモリ103上に領域解析処理用ワークメモリ216が確保されるとともに、解析処理用画像202を格納するためのメモリ領域が確保され、入力画像201から生成された解析用画像202が該メモリ領域に保存される。
First, as shown in FIG. 11A, a region analysis image generation process is performed by the region analysis image generation unit S10. When this processing is executed, the area analysis processing work memory 216 is secured on the
次に、領域解析部S40は、前記確保されている解析処理用ワークメモリ(解析処理用メモリ領域)216を用い、領域解析用画像202を処理対象画像として領域解析処理を実行する。ここでは、領域情報205のメモリ領域(処理結果保持用のメモリ領域)を確保し、領域解析結果であるカラー連結成分212に関する情報(各カラー連結成分の属性情報と位置情報を含む)を領域情報205(処理結果保持用メモリ領域)内に保存する。領域解析部S40の解析処理の終了時には、領域解析用画像202が保持されていたメモリ領域および解析処理用ワークメモリ216を解放する(メモリ開放)。 Next, the area analysis unit S40 executes the area analysis process by using the area memory for analysis processing (analysis process memory area) 216 secured as described above and using the area analysis image 202 as a processing target image. Here, a memory area (memory area for holding the processing result) of the area information 205 is secured, and information relating to the color connected component 212 (including attribute information and position information of each color connected component) as the area analysis result is area information. Saved in 205 (processing result holding memory area). At the end of the analysis processing of the region analysis unit S40, the memory region in which the region analysis image 202 is held and the analysis processing work memory 216 are released (memory release).
次に、文字部ベクトル化処理用画像生成部S20による文字部ベクトル化処理用画像の生成処理が行われる。この処理が実行されると、メモリ103上に文字部ベクトル化処理用ワークメモリ217が確保されるとともに、文字部ベクトル化処理用画像203を格納するためのメモリ領域が確保される。そして、入力画像201から生成された文字部ベクトル化処理用画像203が画像保持用に当該確保されたメモリ領域に保存される。なお、これらのメモリ領域は、図11(B)に示すように、領域解析処理部S40の処理後に開放されたメモリ領域に確保されることになる。
Next, a character part vectorization processing image generation process is performed by the character part vectorization processing image generation unit S20. When this processing is executed, the character part vectorization processing work memory 217 is secured on the
次に、文字部ベクトル化処理部S50は、前記確保されている文字部ベクトル化処理用ワークメモリを用いて、文字部ベクトル化処理用画像203を処理対象画像として文字部のベクトル化処理を実行する。この文字部ベクトル化処理は、領域情報205に保持されている領域解析結果の文字領域に対応する位置の文字部ベクトル化処理用画像に対して実行される。処理の詳細は前述した通りである。文字部のベクトル化処理結果である各文字領域の文字ベクトル206は、領域情報205内に記録される。文字部ベクトル化処理部S50のベクトル化処理の終了時には、文字部ベクトル化処理用画像203が保持されていたメモリ領域および文字部ベクトル化処理用ワークメモリ217を解放する。 Next, the character part vectorization processing unit S50 executes character part vectorization processing using the character part vectorization processing work image as a processing target image using the reserved character part vectorization processing work memory. To do. This character part vectorization processing is executed for the character part vectorization processing image at a position corresponding to the character region of the region analysis result held in the region information 205. Details of the processing are as described above. The character vector 206 of each character area, which is the result of the vectorization processing of the character part, is recorded in the area information 205. At the end of the vectorization process of the character part vectorization processing unit S50, the memory area in which the character part vectorization processing image 203 is held and the character part vectorization processing work memory 217 are released.
次に、図画部ベクトル化処理用画像生成部S30による図画部ベクトル化処理用画像の生成処理が行われる。この処理が実行されると、メモリ103上に、図画部ベクトル化処理用画像204を格納するためのメモリ領域が確保され、入力画像201から生成された図画部ベクトル化処理用画像204が該メモリ領域に保存される。なお、このメモリ領域は、図11(B)に示すように、文字部ベクトル化処理部S50の処理後に開放されたメモリ領域に確保されることになる。
Next, the graphic part vectorization processing image generation process is performed by the graphic part vectorization processing image generation unit S30. When this process is executed, a memory area for storing the graphic part
次に、文字部穴埋め処理部S60は、メモリ103に文字部穴埋め処理用ワークメモリ218を確保し、文字部の穴埋め処理を実行する。ここでは、上述したように、領域情報205から文字領域の画素連結成分(文字属性のカラー連結成分)に関する情報を取り出し、文字穴埋めワークメモリ218に画像として展開する。そして、文字穴埋めワークメモリ218に展開した文字画像と図画部ベクトル化処理用画像204とを重ね合わせて、図画部ベクトル化処理用画像204における文字画素部分を特定する。次に図画部ベクトル化処理用画像204の文字画素部分の周辺画素の平均色を算出し、図画部ベクトル化処理用画像204の文字画素部分を当該算出した平均色で塗りつぶす。以上のようにして、文字部穴埋め処理部S60の処理が終了すると、図画部ベクトル化処理用画像204は文字領域が穴埋めされ、図画部領域とページ背景からなる画像となっている。すなわち、前記図画部ベクトル化処理用画像を格納するためのメモリ領域に、文字部が穴埋めされた後の図画部ベクトル化処理用画像204が格納されることになる。前記文字部穴埋め処理部S60の処理終了時には、文字穴埋めワークメモリ218を開放する。
Next, the character portion filling processing unit S60 secures the character portion filling processing work memory 218 in the
次に、図画部ベクトル化処理部S70は、メモリ103に図画部ベクトル化および穴埋め処理用のワークメモリ219を確保し、図画部のベクトル化処理を実行する。この図画部ベクトル化処理は、領域情報205に保持されている領域解析結果の図画領域に対応する位置の図画部ベクトル化処理用画像に対して実行される。処理の詳細は前述した通りである。図画部のベクトル化処理結果として得られる図画部ベクトル207および矩形写真画像208は、領域情報205内に記録される。また、図画部ベクトル化処理用のワークメモリ219には、図7で示したデータ212〜215が記録される。
Next, the graphic part vectorization processing unit S70 secures a work memory 219 for graphic part vectorization and hole filling processing in the
次に、図画部穴埋め処理部S80において、図画部の穴埋め処理を実行する。ここでは、図7〜図8を用いて説明したように、文字部穴埋め処理後の図画部ベクトル処理用画像204に対して図画部穴埋め処理が実行される。よって、図画部穴埋め処理部S80の処理が終了すると、図画部ベクトル処理用画像204はページ背景のみで構成される画像となり、図2の下地画像209として以降の処理に用いられる。また、図画部穴埋め処理部S80の処理終了時には、メモリ103上の図画部ベクトル化および穴埋め用ワークメモリ219を解放する。
Next, the graphic part filling process is performed in the graphic part filling process part S80. Here, as described with reference to FIGS. 7 to 8, the graphic part filling process is performed on the graphic part
次に、ページ描画情報生成部S90は、メモリ103にページ描画情報210を格納するメモリ領域を確保し、ページ描画情報を生成して該メモリ領域に保存する。ここでは、領域情報205に保存されている文字ベクトル206と図画ベクトル207と矩形写真画像208を取得し、下地画像209を文字部と図画部とが穴埋めされた図画部ベクトル化処理用画像204から取得し、入力データの書誌情報をプロパティとしてページ描画情報を生成する。ページ描画情報生成部S90の処理終了時には、メモリ103上の図画部ベクトル処理用画像204のメモリ領域、領域情報205のメモリ領域、入力画像201のメモリ領域を解放する。
Next, the page drawing information generation unit S90 secures a memory area for storing the
次に、電子ファイル生成部S100では、電子ファイル211を格納するメモリ領域を確保し、前述したように、ページ描画情報210を変換して予め指定されたフォーマットの電子ファイル211を生成する。電子ファイル211を格納するメモリ領域は、ページ描画情報生成部S90の処理終了時に開放されたメモリ領域に確保される。電子ファイル生成部S100の処理終了時には、メモリ103上のページ描画情報210が保持されていたメモリ領域を解放する。
Next, in the electronic file generation unit S100, a memory area for storing the
以上述べたように、本実施形態では、領域解析処理に適した画像と、文字部ベクトル化処理に適した画像と、図画部ベクトル化処理に適した画像とを、複数種類の画像処理それぞれの直前に生成する。そして、各処理結果を別途確保した領域情報205内に記録することにより、処理が終了した時点で不要となった各処理用画像および処理用ワークメモリを開放する用に構成した。これにより、より少ないメモリ容量で、電子ファイルの生成が実現できるようになる。 As described above, in the present embodiment, an image suitable for the region analysis process, an image suitable for the character part vectorization process, and an image suitable for the graphic part vectorization process are provided for each of a plurality of types of image processing. Generate immediately before. Each processing result is recorded in separately secured area information 205, so that each processing image and processing work memory that are no longer required when the processing is completed are opened. As a result, the electronic file can be generated with a smaller memory capacity.
(その他の実施例)
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
(Other examples)
The present invention can also be realized by executing the following processing. That is, software (program) that realizes the functions of the above-described embodiments is supplied to a system or apparatus via a network or various storage media, and a computer (or CPU, MPU, or the like) of the system or apparatus reads the program. It is a process to be executed.
Claims (10)
前記入力画像から領域解析処理に適した領域解析用画像を生成し、当該生成した領域解析用画像を、前記メモリ上に確保した第1のメモリ領域に格納する領域解析用画像生成手段と、
前記メモリ上に領域解析処理用ワークメモリを確保する領域解析処理用ワークメモリ確保手段と、
前記確保した領域解析処理用ワークメモリを用いて、前記第1のメモリ領域に格納されている領域解析用画像に領域解析処理を実行し、前記メモリ上に確保された処理結果保持用の処理結果保持用メモリ領域に、当該実行した領域解析処理の結果を格納する領域解析手段と、
前記領域解析手段による処理の終了時に、前記メモリ上に確保されている前記第1のメモリ領域と前記領域解析処理用ワークメモリとを開放する第1のメモリ開放手段と、
前記入力画像から文字部のベクトル化処理に適した文字部ベクトル化処理用画像を生成し、当該生成した文字部ベクトル化処理用画像を、前記第1のメモリ開放手段で開放した後のメモリ上に確保した第2のメモリ領域に格納する文字部ベクトル化処理用画像生成手段と、
前記第1のメモリ開放手段で開放した後のメモリ上に文字部ベクトル化処理用ワークメモリを確保する文字部ベクトル化処理用ワークメモリ確保手段と、
前記確保した文字部ベクトル化処理用ワークメモリを用いて、前記処理結果保持用メモリに保持されている前記領域解析処理の結果に基づき前記第2のメモリ領域に格納されている文字部ベクトル化処理用画像に文字部ベクトル化処理を実行し、当該実行した文字部ベクトル化処理の結果を前記処理結果保持用メモリに格納する文字部ベクトル化処理手段と、
前記文字部ベクトル化処理手段による処理の終了時に、前記メモリ上に確保されている前記第2のメモリ領域と前記文字部ベクトル化処理用ワークメモリとを開放する第2のメモリ開放手段と、
前記入力画像から図画部のベクトル化処理に適した図画部ベクトル化処理用画像を生成し、当該生成した図画部ベクトル化処理用画像を、前記第2のメモリ開放手段で開放した後のメモリ上に確保した第3のメモリ領域に格納する図画部ベクトル化処理用画像生成手段と、
前記第2のメモリ開放手段で開放した後のメモリ上に文字部穴埋め処理用ワークメモリを確保する文字部穴埋め処理用ワークメモリ確保手段と、
前記確保した文字部穴埋め処理用ワークメモリを用いて、前記処理結果保持用メモリに保持されている前記領域解析処理の結果に基づき前記第3のメモリ領域に格納されている図画部ベクトル化処理用画像に文字部穴埋め処理を実行する文字部穴埋め処理手段と、
前記文字部穴埋め処理手段による処理の終了時に、前記メモリ上に確保されている前記文字部穴埋め処理用ワークメモリを開放する第3のメモリ開放手段と、
前記第3のメモリ開放手段で開放した後のメモリ上に図画部ベクトル化および穴埋め処理用ワークメモリを確保する図画部ベクトル化処理用ワークメモリ確保手段と、
前記確保した図画部ベクトル化および穴埋め処理用ワークメモリを用いて、前記処理結果保持用メモリに保持されている前記領域解析処理の結果に基づき前記第3のメモリ領域に格納されている図画部ベクトル化処理用画像に図画部ベクトル化処理を実行し、当該実行した図画部ベクトル化処理の結果を前記処理結果保持用メモリに格納する図画部ベクトル化手段と、
前記確保した図画部ベクトル化および穴埋め処理用ワークメモリを用いて、前記第3のメモリ領域に格納されている前記文字部穴埋め処理を実行した後の図画部ベクトル化処理用画像に対して、図画部穴埋め処理を実行する図画部穴埋め処理手段と、
前記図画部穴埋め処理手段による処理の終了時に、前記メモリ上に確保されている前記図画部ベクトル化および穴埋め処理用ワークメモリを開放する第4のメモリ開放手段と、
前記第4のメモリ開放手段で開放した後のメモリを用いて、前記処理結果保持用メモリに保持されている文字部ベクトル化処理の結果と図画部ベクトル化処理の結果と、前記第3のメモリ領域に保持されている文字部と図画部とが穴埋め処理された後の図画部ベクトル化処理用画像とを含む電子ファイルを生成する電子ファイル生成手段と、を有する画像処理装置。 Memory to store input images;
A region analysis image generating unit that generates a region analysis image suitable for region analysis processing from the input image, and stores the generated region analysis image in a first memory region secured on the memory;
Area analysis processing work memory securing means for securing area analysis processing work memory on the memory;
The area analysis processing is executed on the area analysis image stored in the first memory area by using the reserved area analysis processing work memory, and the processing result for holding the processing result secured on the memory is obtained. Area analysis means for storing the result of the executed area analysis processing in the holding memory area;
First memory releasing means for releasing the first memory area secured on the memory and the work memory for area analysis processing at the end of processing by the area analyzing means;
A character portion vectorization processing image suitable for character portion vectorization processing is generated from the input image, and the generated character portion vectorization processing image is released on the memory after being released by the first memory releasing means. An image generation means for character vectorization processing stored in the second memory area secured in
Character part vectorization processing work memory securing means for securing character part vectorization processing work memory on the memory released by the first memory releasing means;
Using the secured character part vectorization processing work memory, the character part vectorization process stored in the second memory area based on the result of the area analysis process held in the process result holding memory Character part vectorization processing means for executing character part vectorization processing on the image for use and storing the result of the executed character part vectorization processing in the processing result holding memory;
A second memory releasing means for releasing the second memory area secured on the memory and the work memory for character part vectorization processing at the end of the processing by the character part vectorization processing means;
On the memory after generating the graphic part vectorization processing image suitable for the vectorization processing of the graphic part from the input image, and releasing the generated graphic part vectorization processing image by the second memory releasing means An image generation means for drawing part vectorization processing stored in a third memory area secured in
A character part filling process work memory securing means for securing a character part filling process work memory on the memory released by the second memory releasing means;
For the graphic part vectorization process stored in the third memory area based on the result of the area analysis process held in the processing result holding memory, using the secured character part filling process work memory Character part filling processing means for executing character part filling processing on the image;
Third memory releasing means for releasing the work memory for character portion filling processing secured on the memory at the end of the processing by the character portion filling processing means;
Graphic part vectorization processing work memory securing means for securing graphic part vectorization and hole filling processing work memory on the memory released by the third memory release means;
The graphic part vector stored in the third memory area based on the result of the area analysis process held in the processing result holding memory using the secured graphic part vectorization and hole filling process work memory Graphic part vectorization means for executing graphic part vectorization processing on the graphic processing image, and storing the result of the graphic part vectorization processing executed in the processing result holding memory;
For the graphic part vectorization processing image after the character part filling process stored in the third memory area is performed using the reserved graphic part vectorization and filling process work memory, Drawing part filling processing means for executing the part filling process;
A fourth memory releasing means for releasing the graphic portion vectorization and filling processing work memory secured on the memory at the end of the processing by the drawing portion filling processing means;
Using the memory released by the fourth memory releasing means, the character part vectorization process result, the graphic part vectorization process result held in the processing result holding memory, and the third memory An image processing apparatus comprising: an electronic file generation unit configured to generate an electronic file including a graphic part vectorization processing image after a character part and a graphic part held in a region have been subjected to filling processing.
前記図画部穴埋め処理手段は、前記図画部ベクトル化処理用画像に対して、前記オブジェクト領域に対応する部分の穴埋め処理を行うものであって、前記オブジェクト領域と前記クリップアート領域の外との境界と、前記オブジェクト領域と前記背景領域との境界とでそれぞれ異なる穴埋め処理を行う
ことを特徴とする請求項6に記載の画像処理装置。 The drawing part vectorization means extracts a rectangular clip art region from the vectorization processing image, identifies a background region in the clip art region, and object regions other than the background region identified in the clip art region. To generate a graphic part vector, and store it in the processing result holding memory as a result of the graphic part vectorization process,
The drawing portion filling processing means performs a filling processing of a portion corresponding to the object region on the drawing portion vectorization processing image, and a boundary between the object region and the outside of the clipart region. The image processing apparatus according to claim 6, wherein different hole filling processing is performed at a boundary between the object region and the background region.
領域解析用画像生成手段が、前記入力画像から領域解析処理に適した領域解析用画像を生成し、当該生成した領域解析用画像を、前記メモリ上に確保した第1のメモリ領域に格納する領域解析用画像生成工程と、
領域解析処理用ワークメモリ確保手段が、前記メモリ上に領域解析処理用ワークメモリを確保する領域解析処理用ワークメモリ確保工程と、
領域解析手段が、前記確保した領域解析処理用ワークメモリを用いて、前記第1のメモリ領域に格納されている領域解析用画像に領域解析処理を実行し、前記メモリ上に確保された処理結果保持用の処理結果保持用メモリ領域に、当該実行した領域解析処理の結果を格納する領域解析工程と、
第1のメモリ開放手段が、前記領域解析工程での処理の終了時に、前記メモリ上に確保されている前記第1のメモリ領域と前記領域解析処理用ワークメモリとを開放する第1のメモリ開放工程と、
文字部ベクトル化処理用画像生成手段が、前記入力画像から文字部のベクトル化処理に適した文字部ベクトル化処理用画像を生成し、当該生成した文字部ベクトル化処理用画像を、前記第1のメモリ開放工程で開放した後のメモリ上に確保した第2のメモリ領域に格納する文字部ベクトル化処理用画像生成工程と、
文字部ベクトル化処理用ワークメモリ確保手段が、前記第1のメモリ開放工程で開放した後のメモリ上に文字部ベクトル化処理用ワークメモリを確保する文字部ベクトル化処理用ワークメモリ確保工程と、
文字部ベクトル化処理手段が、前記確保した文字部ベクトル化処理用ワークメモリを用いて、前記処理結果保持用メモリに保持されている前記領域解析処理の結果に基づき前記第2のメモリ領域に格納されている文字部ベクトル化処理用画像に文字部ベクトル化処理を実行し、当該実行した文字部ベクトル化処理の結果を前記処理結果保持用メモリに格納する文字部ベクトル化処理工程と、
第2のメモリ開放手段が、前記文字部ベクトル化処理工程による処理の終了時に、前記メモリ上に確保されている前記第2のメモリ領域と前記文字部ベクトル化処理用ワークメモリとを開放する第2のメモリ開放工程と、
図画部ベクトル化処理用画像生成手段が、前記入力画像から図画部のベクトル化処理に適した図画部ベクトル化処理用画像を生成し、当該生成した図画部ベクトル化処理用画像を、前記第2のメモリ開放手段で開放した後のメモリ上に確保した第3のメモリ領域に格納する図画部ベクトル化処理用画像生成工程と、
文字部穴埋め処理用ワークメモリ確保手段が、前記第2のメモリ開放手段で開放した後のメモリ上に文字部穴埋め処理用ワークメモリを確保する文字部穴埋め処理用ワークメモリ確保工程と、
文字部穴埋め処理手段が、前記確保した文字部穴埋め処理用ワークメモリを用いて、前記処理結果保持用メモリに保持されている前記領域解析処理の結果に基づき前記第3のメモリ領域に格納されている図画部ベクトル化処理用画像に文字部穴埋め処理を実行する文字部穴埋め処理工程と、
第3のメモリ開放手段が、前記文字部穴埋め処理工程による処理の終了時に、前記メモリ上に確保されている前記文字部穴埋め処理用ワークメモリを開放する第3のメモリ開放工程と、
図画部ベクトル化処理用ワークメモリ確保手段が、前記第3のメモリ開放工程で開放した後のメモリ上に図画部ベクトル化および穴埋め処理用ワークメモリを確保する図画部ベクトル化処理用ワークメモリ確保工程と、
図画部ベクトル化手段が、前記確保した図画部ベクトル化および穴埋め処理用ワークメモリを用いて、前記処理結果保持用メモリに保持されている前記領域解析処理の結果に基づき前記第3のメモリ領域に格納されている図画部ベクトル化処理用画像に図画部ベクトル化処理を実行し、当該実行した図画部ベクトル化処理の結果を前記処理結果保持用メモリに格納する図画部ベクトル化工程と、
図画部穴埋め処理手段が、前記確保した図画部ベクトル化および穴埋め処理用ワークメモリを用いて、前記第3のメモリ領域に格納されている前記文字部穴埋め処理を実行した後の図画部ベクトル化処理用画像に対して、図画部穴埋め処理を実行する図画部穴埋め処理工程と、
第4のメモリ開放手段が、前記図画部穴埋め処理工程による処理の終了時に、前記メモリ上に確保されている前記図画部ベクトル化および穴埋め処理用ワークメモリを開放する第4のメモリ開放工程と、
電子ファイル生成手段が、前記第4のメモリ開放工程で開放した後のメモリを用いて、前記処理結果保持用メモリに保持されている文字部ベクトル化処理の結果と図画部ベクトル化処理の結果と、前記第3のメモリ領域に保持されている文字部と図画部とが穴埋め処理された後の図画部ベクトル化処理用画像とを含む電子ファイルを生成する電子ファイル生成工程と、を有する画像処理方法。 An image processing method executed by an image processing apparatus including a memory for storing an input image,
A region in which region analysis image generation means generates a region analysis image suitable for region analysis processing from the input image, and stores the generated region analysis image in a first memory region secured on the memory An analysis image generation process;
The area analysis processing work memory securing means secures the area analysis processing work memory on the memory, and the area analysis processing work memory securing step;
The area analysis means executes the area analysis process on the area analysis image stored in the first memory area using the secured area analysis processing work memory, and the processing result secured on the memory An area analysis step of storing the result of the executed area analysis processing in the memory area for holding the processing result for holding;
The first memory releasing means releases the first memory area secured on the memory and the area analysis processing work memory at the end of the processing in the area analyzing step. Process,
The character part vectorization processing image generation means generates a character part vectorization processing image suitable for character part vectorization processing from the input image, and the generated character part vectorization processing image is used as the first character part vectorization processing image. A character part vectorization processing image generation step of storing in a second memory area secured on the memory after being released in the memory release step of
A character part vectorization processing work memory securing means for securing a character part vectorization processing work memory on the memory released in the first memory release step;
Character part vectorization processing means stores in the second memory area based on the result of the area analysis process held in the process result holding memory, using the reserved character part vectorization process work memory A character part vectorization processing step of executing character part vectorization processing on the character part vectorization processing image being performed and storing the result of the executed character part vectorization processing in the processing result holding memory;
The second memory releasing means releases the second memory area secured on the memory and the character portion vectorization processing work memory at the end of the processing by the character portion vectorization processing step. 2 memory release steps;
The graphic part vectorization processing image generation means generates a graphic part vectorization processing image suitable for the graphic vector processing of the graphic part from the input image, and the generated graphic part vectorization processing image is used as the second graphic part vectorization processing image. An image generation process for drawing part vectorization processing stored in a third memory area secured on the memory after being released by the memory releasing means;
A character part filling process work memory securing unit for securing a character part filling process work memory on the memory released by the second memory releasing unit;
Character portion filling processing means is stored in the third memory area based on the result of the area analysis processing held in the processing result holding memory, using the secured character portion filling processing work memory. A character portion filling process step of performing character portion filling processing on the graphic portion vectorization processing image;
A third memory releasing step for releasing the work memory for character portion filling processing secured on the memory at the end of the processing by the character portion filling processing step;
The graphic part vectorization processing work memory securing means secures the graphic part vectorization and hole filling processing work memory on the memory released in the third memory releasing process. When,
The graphic part vectorization means uses the reserved graphic part vectorization and hole filling process work memory to store the third memory area based on the result of the area analysis process held in the processing result holding memory. A graphic part vectorization process for executing graphic part vectorization processing on the stored graphic part vectorization processing image, and storing the result of the graphic part vectorization process executed in the processing result holding memory;
The drawing part vectorization process after the drawing part filling process means has executed the character part filling process stored in the third memory area by using the graphic part vectorization and filling process work memory secured. A graphic part filling process for executing a graphic part filling process on the image for use;
A fourth memory releasing step for releasing the graphic part vectorization and hole filling process work memory secured on the memory at the end of the process by the graphic part filling process;
The electronic file generation means uses the memory released in the fourth memory releasing step, and the result of the character part vectorization process and the result of the graphic part vectorization process held in the processing result holding memory And an electronic file generation step of generating an electronic file including the graphic part vectorization processing image after the character part and the graphic part held in the third memory area are subjected to the filling process. Method.
メモリに保存された入力画像から領域解析処理に適した領域解析用画像を生成し、当該生成した領域解析用画像を、前記メモリ上に確保した第1のメモリ領域に格納する領域解析用画像生成手段、
前記メモリ上に領域解析処理用ワークメモリを確保する領域解析処理用ワークメモリ確保手段、
前記確保した領域解析処理用ワークメモリを用いて、前記第1のメモリ領域に格納されている領域解析用画像に領域解析処理を実行し、前記メモリ上に確保された処理結果保持用の処理結果保持用メモリ領域に、当該実行した領域解析処理の結果を格納する領域解析手段、
前記領域解析手段による処理の終了時に、前記メモリ上に確保されている前記第1のメモリ領域と前記領域解析処理用ワークメモリとを開放する第1のメモリ開放手段、
前記入力画像から文字部のベクトル化処理に適した文字部ベクトル化処理用画像を生成し、当該生成した文字部ベクトル化処理用画像を、前記第1のメモリ開放手段で開放した後のメモリ上に確保した第2のメモリ領域に格納する文字部ベクトル化処理用画像生成手段、
前記第1のメモリ開放手段で開放した後のメモリ上に文字部ベクトル化処理用ワークメモリを確保する文字部ベクトル化処理用ワークメモリ確保手段、
前記確保した文字部ベクトル化処理用ワークメモリを用いて、前記処理結果保持用メモリに保持されている前記領域解析処理の結果に基づき前記第2のメモリ領域に格納されている文字部ベクトル化処理用画像に文字部ベクトル化処理を実行し、当該実行した文字部ベクトル化処理の結果を前記処理結果保持用メモリに格納する文字部ベクトル化処理手段、
前記文字部ベクトル化処理手段による処理の終了時に、前記メモリ上に確保されている前記第2のメモリ領域と前記文字部ベクトル化処理用ワークメモリとを開放する第2のメモリ開放手段、
前記入力画像から図画部のベクトル化処理に適した図画部ベクトル化処理用画像を生成し、当該生成した図画部ベクトル化処理用画像を、前記第2のメモリ開放手段で開放した後のメモリ上に確保した第3のメモリ領域に格納する図画部ベクトル化処理用画像生成手段、
前記第2のメモリ開放手段で開放した後のメモリ上に文字部穴埋め処理用ワークメモリを確保する文字部穴埋め処理用ワークメモリ確保手段、
前記確保した文字部穴埋め処理用ワークメモリを用いて、前記処理結果保持用メモリに保持されている前記領域解析処理の結果に基づき前記第3のメモリ領域に格納されている図画部ベクトル化処理用画像に文字部穴埋め処理を実行する文字部穴埋め処理手段、
前記文字部穴埋め処理手段による処理の終了時に、前記メモリ上に確保されている前記文字部穴埋め処理用ワークメモリを開放する第3のメモリ開放手段、
前記第3のメモリ開放手段で開放した後のメモリ上に図画部ベクトル化および穴埋め処理用ワークメモリを確保する図画部ベクトル化処理用ワークメモリ確保手段、
前記確保した図画部ベクトル化および穴埋め処理用ワークメモリを用いて、前記処理結果保持用メモリに保持されている前記領域解析処理の結果に基づき前記第3のメモリ領域に格納されている図画部ベクトル化処理用画像に図画部ベクトル化処理を実行し、当該実行した図画部ベクトル化処理の結果を前記処理結果保持用メモリに格納する図画部ベクトル化手段、
前記確保した図画部ベクトル化および穴埋め処理用ワークメモリを用いて、前記第3のメモリ領域に格納されている前記文字部穴埋め処理を実行した後の図画部ベクトル化処理用画像に対して、図画部穴埋め処理を実行する図画部穴埋め処理手段、
前記図画部穴埋め処理手段による処理の終了時に、前記メモリ上に確保されている前記図画部ベクトル化および穴埋め処理用ワークメモリを開放する第4のメモリ開放手段、
前記第4のメモリ開放手段で開放した後のメモリを用いて、前記処理結果保持用メモリに保持されている文字部ベクトル化処理の結果と図画部ベクトル化処理の結果と、前記第3のメモリ領域に保持されている文字部と図画部とが穴埋め処理された後の図画部ベクトル化処理用画像とを含む電子ファイルを生成する電子ファイル生成手段、
として機能させるためのコンピュータプログラム。 Computer
Region analysis image generation for generating a region analysis image suitable for region analysis processing from the input image stored in the memory and storing the generated region analysis image in the first memory region secured in the memory means,
Area analysis processing work memory securing means for securing area analysis processing work memory on the memory;
The area analysis processing is executed on the area analysis image stored in the first memory area by using the reserved area analysis processing work memory, and the processing result for holding the processing result secured on the memory is obtained. Area analysis means for storing the result of the executed area analysis processing in the holding memory area;
First memory releasing means for releasing the first memory area secured on the memory and the work memory for area analysis processing at the end of processing by the area analyzing means;
A character portion vectorization processing image suitable for character portion vectorization processing is generated from the input image, and the generated character portion vectorization processing image is released on the memory after being released by the first memory releasing means. A character part vectorization processing image generation means stored in the second memory area secured in
A character part vectorization processing work memory securing means for securing a character part vectorization processing work memory on the memory released by the first memory releasing means;
Using the secured character part vectorization processing work memory, the character part vectorization process stored in the second memory area based on the result of the area analysis process held in the process result holding memory Character part vectorization processing means for executing character part vectorization processing on the image for use and storing the result of the executed character part vectorization processing in the processing result holding memory;
Second memory releasing means for releasing the second memory area secured on the memory and the work memory for character part vectorization processing at the end of processing by the character part vectorization processing means;
On the memory after generating the graphic part vectorization processing image suitable for the vectorization processing of the graphic part from the input image, and releasing the generated graphic part vectorization processing image by the second memory releasing means Image generation means for drawing part vectorization processing stored in a third memory area secured in
A character part filling process work memory securing means for securing a character part filling process work memory on the memory released by the second memory releasing means;
For the graphic part vectorization process stored in the third memory area based on the result of the area analysis process held in the processing result holding memory, using the secured character part filling process work memory Character portion filling processing means for executing character portion filling processing on the image,
Third memory releasing means for releasing the work memory for character part filling processing secured on the memory at the end of the processing by the character part filling processing means;
Graphic part vectorization processing work memory securing means for securing graphic part vectorization and hole filling processing work memory on the memory released by the third memory releasing means;
The graphic part vector stored in the third memory area based on the result of the area analysis process held in the processing result holding memory using the secured graphic part vectorization and hole filling process work memory Graphic part vectorization means for executing graphic part vectorization processing on the graphic processing image, and storing the result of the graphic part vectorization processing executed in the processing result holding memory;
For the graphic part vectorization processing image after the character part filling process stored in the third memory area is performed using the reserved graphic part vectorization and filling process work memory, Drawing part filling processing means for executing part filling processing;
A fourth memory releasing means for releasing the graphic portion vectorization and hole filling processing work memory secured on the memory at the end of the processing by the drawing portion filling processing means;
Using the memory released by the fourth memory releasing means, the character part vectorization process result, the graphic part vectorization process result held in the processing result holding memory, and the third memory An electronic file generating means for generating an electronic file including an image for graphic part vectorization processing after the character part and graphic part held in the region have been subjected to filling processing;
Computer program to function as.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009205030A JP5424785B2 (en) | 2009-09-04 | 2009-09-04 | Image processing apparatus, image processing method, and computer program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009205030A JP5424785B2 (en) | 2009-09-04 | 2009-09-04 | Image processing apparatus, image processing method, and computer program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2011054123A JP2011054123A (en) | 2011-03-17 |
JP5424785B2 true JP5424785B2 (en) | 2014-02-26 |
Family
ID=43943018
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009205030A Active JP5424785B2 (en) | 2009-09-04 | 2009-09-04 | Image processing apparatus, image processing method, and computer program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5424785B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101550288B1 (en) | 2013-08-29 | 2015-09-07 | (주)인클라우드 | Hybrid Drawing device for Vector graphics processing Without compromising the performance and the speed. |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08272981A (en) * | 1995-04-03 | 1996-10-18 | Fuji Xerox Co Ltd | Image processor |
JPH0993425A (en) * | 1995-09-25 | 1997-04-04 | Ricoh Co Ltd | Image forming device |
JP4217575B2 (en) * | 2003-09-29 | 2009-02-04 | キヤノン株式会社 | Image processing apparatus, image processing method, program, and storage medium |
-
2009
- 2009-09-04 JP JP2009205030A patent/JP5424785B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2011054123A (en) | 2011-03-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5302768B2 (en) | Image processing apparatus and image processing method | |
JP5047051B2 (en) | Image processing apparatus and image encoding method | |
US8050499B2 (en) | Image-processing apparatus, image-processing method, and computer program used therewith | |
CN100356768C (en) | Image processing apparatus, image processing program and storage medium | |
US10477063B2 (en) | Character detection and binarization | |
MXPA03002793A (en) | Mixed raster content files. | |
US7889938B2 (en) | Method and apparatus for processing line drawings in images | |
JP2009071626A (en) | Image processor, image processing method, image processing program, and recording medium | |
JP2008052602A (en) | Image density conversion method, image enhancement processor, and its program | |
US8774501B2 (en) | Image processing apparatus, image processing method, image processing program storage medium | |
JP5328510B2 (en) | Image processing apparatus, image processing method, and computer program | |
JP5335581B2 (en) | Image processing apparatus, image processing method, and program | |
JP5020698B2 (en) | Image processing apparatus, image processing method, and image processing program | |
JP5424785B2 (en) | Image processing apparatus, image processing method, and computer program | |
US8270722B2 (en) | Image processing with preferential vectorization of character and graphic regions | |
JP4966260B2 (en) | Image processing method, image processing apparatus, program, and computer-readable storage medium | |
JP2008042345A (en) | Image processing method and image processor | |
JP2006011967A (en) | Character recognition device and character recognition program | |
JP2008206073A (en) | Image processing apparatus, control method, program, and storage medium | |
JP2007088912A (en) | Image processing apparatus and program | |
JP5208043B2 (en) | Image processing apparatus, image processing method, and program | |
JP4742632B2 (en) | Image processing apparatus, image processing method, and program | |
JP4375199B2 (en) | Image processing apparatus and program | |
JP5612851B2 (en) | Information processing apparatus, information processing method, and program | |
JP2005190010A (en) | Image processor |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20120903 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20130226 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130305 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130507 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130625 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130712 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20131029 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20131126 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 5424785 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |