JPH04161987A - Graphic processing device - Google Patents
Graphic processing deviceInfo
- Publication number
- JPH04161987A JPH04161987A JP2287982A JP28798290A JPH04161987A JP H04161987 A JPH04161987 A JP H04161987A JP 2287982 A JP2287982 A JP 2287982A JP 28798290 A JP28798290 A JP 28798290A JP H04161987 A JPH04161987 A JP H04161987A
- Authority
- JP
- Japan
- Prior art keywords
- image
- processing
- dot
- smoothing
- line segment
- 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
Links
Landscapes
- Dot-Matrix Printers And Others (AREA)
- Facsimile Image Signal Circuits (AREA)
- Controls And Circuits For Display Device (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。(57) [Summary] This bulletin contains application data before electronic filing, so abstract data is not recorded.
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明は出力画像の画像輪郭部のギザギザを除去して出
力する図形処理装置に関し、より詳細には、高速に画像
輪郭部の平滑化を行うことができ、且つ、2値の出力媒
体に対応できる図形処理装置に関する。DETAILED DESCRIPTION OF THE INVENTION [Field of Industrial Application] The present invention relates to a graphic processing device that removes jaggedness from the image outline of an output image and outputs the image. The present invention relates to a graphic processing device capable of processing data and compatible with binary output media.
コンピュータ・グラフィクスの分野では、その出力媒体
であるCRTに画像を表示する際、その表示画像をより
美しくするためにアンチエイリアシング処理という手法
が用いられている。この処理は、第15図(a)に示す
ような階段状のギザギザ部分(エイリアスと呼ばれる)
に輝度変調をかけ、視覚的に表示画像を第15図(b)
に示すように滑らかにするものである。In the field of computer graphics, when displaying an image on a CRT, which is an output medium, a technique called anti-aliasing processing is used to make the displayed image more beautiful. This process creates a step-like jagged part (called an alias) as shown in Figure 15(a).
Figure 15(b) visually displays the displayed image by applying brightness modulation to
It is used to smooth the surface as shown in the figure.
一方、パーソナルコンピュータを用いた出版システム、
所謂、DTP (デスク・トン1・パブリッシング)の
普及に伴い、コンピュータ・グラフィクスで扱うような
ベクトル画像を印字するシステムが広く使われるように
なっている。その代表的なものとして、例えば、アドビ
社のポスト・スクリプトを用いたシステムがある。ポス
ト・スクリプトは、ページ記述言語(Page Des
criptionLanguage :以下、PDL
と記述する)と呼ばれる言語ジャンルに属し、1枚のド
キュメントを構成する内容について、その中に入るテキ
スト(文字部分)や、グラフィックス、或いは、それら
の配置や体裁までを含めたフオームを記述するためのプ
ログラミング言語であり、このようなシステムでは、文
字フォントとしてヘクトルフォントを採用している。従
って、文字の変倍を行っても、ビットマツプフォントを
使用したシステム(例えば、従来のワードプロセッサ等
)と比べて、格段に印字品質を向上させることができ、
また、文字フォントとグラフィックとイメージを混在さ
せて印字することができるという利点がある。On the other hand, a publishing system using a personal computer,
With the spread of so-called DTP (Desktop Publishing), systems for printing vector images, such as those used in computer graphics, have become widely used. A typical example is a system using Adobe's Post Script. PostScript is a page description language (Page Des
criptionLanguage: Hereafter, PDL
It belongs to a language genre called ``Japanese language'', and describes the form of the contents of a single document, including the text (letter part), graphics, and their arrangement and appearance. Hector font is used as the character font in such systems. Therefore, even if the characters are scaled, the print quality can be significantly improved compared to systems using bitmap fonts (for example, conventional word processors).
Another advantage is that character fonts, graphics, and images can be mixed and printed.
ところが、これらのシステムで使用されるレーザープリ
ンタの解像度は、せいぜい240dp i〜400dp
iのものが多く、コンピュータ・グラフィックスのCR
T表示と同様に、解像度が低いためにエイリアスが発生
するという問題点がある。このため、レーザプリンタを
用いた印字においても、印字画像の品質を向上させるた
めに、アンチエイリアシング処理が適用されるようにな
っている。However, the resolution of the laser printers used in these systems is at most 240dpi to 400dp.
There are many i, computer graphics CR
Similar to the T display, there is a problem in that aliasing occurs due to the low resolution. For this reason, antialiasing processing is now being applied to printing using a laser printer in order to improve the quality of the printed image.
しかしながら、アンチエイリアシング処理方法を適用し
た図形処理装置によれば、アンチエイリアシング処理に
よって階段状のギザギザ部を滑らかに表現することはで
きるものの、1つのビクセルを複数のサブビクセル(例
えば、49個のサブビクセル)に分割して、塗りつぶさ
れるサブビクセルの個数をカウントして面積率を算出す
るため、面積率の計算に時間がかかり、表示速度或いは
印字速度の向上の妨げになるという問題点があった。However, according to a graphic processing device that applies an anti-aliasing processing method, although it is possible to smoothly express a step-like jagged part by anti-aliasing processing, one pixel is divided into multiple sub-vixels (for example, 49 sub-vixels). Since the area ratio is calculated by counting the number of sub-vixels to be filled in, there is a problem in that it takes time to calculate the area ratio, which hinders improvement in display speed or printing speed.
また、従来のアンチエイリアシング処理方法では、輝度
変調(或いは濃度変調)を行って輝度(或いは濃度)を
多値の階調で表現することにより、階段上のギザギザ部
を滑らかにするため、多値の8力媒体がなければ、アン
チエイリアシング処理の効果を奏することができないと
いう問題点があった。In addition, in conventional anti-aliasing processing methods, brightness modulation (or density modulation) is performed to express the brightness (or density) with multi-value gradation, so that the jagged parts on the stairs can be smoothed out. There is a problem in that the effect of anti-aliasing processing cannot be achieved without the 8-power medium.
本発明は上記に鑑みてなされてものであって、階段状ギ
ザギザ部分の平滑化を高速に行うことを目的とする。The present invention has been made in view of the above, and an object of the present invention is to smooth step-like jagged portions at high speed.
また、本発明は、階段状ギザギザ部分の平滑化を行い、
且つ、2値の出力媒体で出力できることを目的とする。In addition, the present invention smoothes step-like jagged portions,
Moreover, the object is to be able to output on a binary output medium.
本発明は上記の目的を達成するため、ヘクトル画像を展
開したイメージ画像、或いは、読取装置を介して入力し
たイメージ画像の画像輪郭部の階段状ギザギザ部分(エ
イリアス)を平滑化して印字或いは表示する図形処理装
置において、画像輪郭部における階段状変化の度合を検
知する検知手段と、検知手段で検知した階段状変化の度
合に応じて、階段状ギザギザ部分の所定位置にドツトを
追加し、視覚的に滑らかにする平滑化処理手段とを備え
た図形処理装置を提供するものである。In order to achieve the above object, the present invention smoothes the step-like jagged part (alias) of the image outline of an image developed from a hector image or an image input through a reading device, and then is printed or displayed. The graphic processing device includes a detection means for detecting the degree of step-like change in the image contour, and a dot is added at a predetermined position of the step-like jagged part according to the degree of step-like change detected by the detection means, and a dot is added to a predetermined position of the step-like jagged part to visually The present invention provides a graphic processing device equipped with a smoothing processing means for smoothing the image.
(作用〕
本発明の図形処理装置において、平滑化処理手段は、検
知手段で検知した階段状変化の度合に応じて、階段状ギ
ザギザ部分の所定位置にドツトを追加し、視覚的に滑ら
かにする表現する。(Function) In the graphic processing device of the present invention, the smoothing processing means adds dots to predetermined positions of the step-like jagged portion according to the degree of step-like change detected by the detection means, thereby visually smoothing the step-like jagged portion. express.
以下、本発明の図形処理装置を図面を参照して詳細に説
明する。Hereinafter, the graphic processing apparatus of the present invention will be explained in detail with reference to the drawings.
第1図は本発明の図形処理装置を適用した画像形成シス
テムのブロック構成図を示す。FIG. 1 shows a block diagram of an image forming system to which a graphic processing apparatus of the present invention is applied.
画像形成システムは、PDL言語(本実施例ではボスト
スクリプト言語を使用)で記述された文書を作成するホ
ストコンピュータ100と、ホストコンピュータ100
からページ単位で送られてきたPDL言語をイメージ画
像に展開するPDLコントローラ(本発明の図形処理装
置)200と、PDLコントローラ200の出力するイ
メージ画像を印字する2値プリンタ300とから構成さ
れる。The image forming system includes a host computer 100 that creates a document written in PDL language (Bost script language is used in this embodiment);
The printer is comprised of a PDL controller (graphic processing device of the present invention) 200 that develops the PDL language sent page by page from the computer into an image, and a binary printer 300 that prints the image output from the PDL controller 200.
第2図は、PDLコントローラ200の構成を示し、ホ
ストコンピュータ100から送られてきたPDL言語を
受信する受信装置201と、受信装置201で受信した
PDL言語の格納制御及び平滑化処理の実行を行うCP
U202と、内部システムパス203と、内部システム
ハス203を介して受信装置201から転送されるPD
L言語を格納するRAM204と、平滑化処理用プログ
ラム等を格納したROM205と、平滑化処理を施した
2値のイメージデータを格納するページメモリ206と
、ページメモリ206に格納した2値のイメージデータ
を2値プリンタ300に転送する送信装置207とから
構成される。FIG. 2 shows the configuration of the PDL controller 200, which includes a receiving device 201 that receives PDL language sent from the host computer 100, and a receiving device 201 that controls storage of the PDL language received and executes smoothing processing. C.P.
PD transferred from the receiving device 201 via U202, internal system path 203, and internal system hash 203
A RAM 204 that stores L language, a ROM 205 that stores programs for smoothing processing, etc., a page memory 206 that stores binary image data that has been subjected to smoothing processing, and binary image data stored in the page memory 206. and a transmitting device 207 that transmits the data to the binary printer 300.
ここで、CPU202は、受信装置201で受信したP
DL言語をROM205に格納されたプログラムに従っ
て、内部システムバス203を通して、RAM204に
格納する。その後、後述するフローチャートに基づいて
、RAM204内の図形要素をページメモリ206上に
2値のイメージデータとして展開し、続いて、展開した
イメージデータに平滑化処理を施す。Here, the CPU 202 receives the P received by the receiving device 201.
The DL language is stored in the RAM 204 via the internal system bus 203 according to the program stored in the ROM 205. Thereafter, the graphic elements in the RAM 204 are developed as binary image data on the page memory 206 based on a flowchart to be described later, and then the developed image data is subjected to a smoothing process.
ページメモリ206内のデータは、その後、送信装置2
07を介して2値プリンタ300へ送られる。The data in the page memory 206 is then transferred to the transmitter 2
07 to the binary printer 300.
以上の構成において、その動作を説明する。The operation of the above configuration will be explained.
第3図はPDLコントローラ200における処理のフロ
ーを示す。本発明はドツトイメージを対象としているた
め、詳細は省略するが、PDL言語(ベクトルデータ)
を入力すると、先ず、ページメモリ206上にドツトイ
メージとして展開する(S301,5302,303)
。FIG. 3 shows the flow of processing in the PDL controller 200. Since the present invention targets dot images, the details will be omitted, but PDL language (vector data)
When input, first, it is developed as a dot image on the page memory 206 (S301, 5302, 303).
.
次に、1画像に対してその処理方向を主走査方向と副走
査方向に分け、各々の場合について走査線毎に平滑化処
理を行う(S304.5305)。詳細は後述するが、
この時の処理自体は両走査方向とも同しである。両方の
走査方向に分けて処理することにより、ドツト位置変調
を用いた平滑化処理を任意の図形に対して適用すること
が可能となる。Next, the processing direction for one image is divided into the main scanning direction and the sub-scanning direction, and smoothing processing is performed for each scanning line in each case (S304.5305). The details will be explained later, but
The processing itself at this time is the same in both scanning directions. By performing processing separately in both scanning directions, smoothing processing using dot position modulation can be applied to any figure.
第4図(a)に示すように、主走査方向処理では水平に
近い傾きの階段状変化部分が平滑化処理され、また、第
4図[有]〕に示すように、副走査方向処理では垂直に
近い階段状変化部分が平滑化処理され、最終的に第4図
(C)に示すように、両走査方向で平滑化処理された画
像を得る。As shown in FIG. 4(a), in the main scanning direction processing, the step-like change portion with an almost horizontal inclination is smoothed, and as shown in FIG. The nearly vertical step-like change portion is smoothed, and finally, as shown in FIG. 4(C), an image smoothed in both scanning directions is obtained.
第5図のフローチャートを参照して、−走査方向に対す
る平滑化処理について述べる。The smoothing process in the -scanning direction will be described with reference to the flowchart in FIG.
平滑化処理は、ページメモリ206から所定のバッファ
メモリへ画素データを読み込み(5501)、始点・終
点の判定および登録(5502)、処理対象部分の判別
および決定(5503)、ドツトの抜き打ち処理(55
04)の4つの部分に分けられる。The smoothing process includes reading pixel data from the page memory 206 to a predetermined buffer memory (5501), determining and registering the start point and end point (5502), determining and determining the processing target area (5503), and dot punching process (55).
04) is divided into four parts.
先ず、5501で処理対象となる走査線及びその上下の
走査線の各画素データを、ページメモリ206から3ラ
イン分のバッファメモリへ読み込む。First, in step 5501, each pixel data of the scanning line to be processed and the scanning lines above and below it is read from the page memory 206 into a buffer memory for three lines.
次に、5502でバッファメモリに読み込んだ走査線毎
に、それらの各ドツトに対して、そのドツトが2ドツト
以上の長さを持つ直線線分の始点であるか、終点である
かを判定し、それらの座標値を各走査線毎にペアとして
登録する。Next, for each scanning line read into the buffer memory in step 5502, it is determined for each dot whether that dot is the start point or end point of a straight line segment with a length of two or more dots. , those coordinate values are registered as a pair for each scanning line.
続いて、上記の操作で登録した始点・終点情報を用いて
、現在処理を行おうとしている走査線上の各線分の各始
点・終点と、その上下の走査線上の各線分の各始点・終
点との各々の位置関係から、図形画像輪郭部における階
段上の変化の度合を検出・判別し、処理を行うべき部分
を決定する。Next, using the start point and end point information registered in the above operation, set the start and end points of each line segment on the scanning line that is currently being processed, and the start and end points of each line segment on the scanning line above and below it. The degree of change on the staircase in the contour of the graphic image is detected and determined from the positional relationship of each of the above, and the portion to be processed is determined.
その後、5504で処理対象となった階段状部分に対し
てドツトの抜き打ち処理を行い視覚的な平滑化効果を得
る。Thereafter, in step 5504, a dot punching process is performed on the stepped portion to be processed to obtain a visual smoothing effect.
以下、第5図に示した5501〜5504の各処理につ
いて、■バッファメモリへの画素データの読み込み処理
、■始点・終点の判定および登録処理、■処理対象部分
の判別及び決定処理、■ドツトの抜き打ち処理の順で詳
細に説明する。In the following, each of the processes 5501 to 5504 shown in FIG. A detailed explanation will be given in the order of the random punching process.
■バッファメモリへの画素データの読み込み処理先ず、
主走査方向についての処理を行うために、ページメモリ
206状に展開されている画素データを、別に用意した
3ライン分のバッファメモリ内に格納する。ここで、画
像の大きさをχMAXXYMAX (XMAX<YMA
X) とし、ページメモリ206に対応する配列をo
rg [YMAX] [XMAX] 、バッファメモリ
に対応する配列をbuff 131 [XMAX] 、
と定義する。また、各画素の座標は(i、j)(但し、
1−0〜XMAX−1.j= O〜YM八X−へ)で表
されるものとする。■Reading pixel data into buffer memory First,
In order to perform processing in the main scanning direction, the pixel data developed in the page memory 206 is stored in a separately prepared buffer memory for three lines. Here, the size of the image is χMAXXYMAX (XMAX<YMA
X) and the array corresponding to the page memory 206 is o
rg [YMAX] [XMAX], buff the array corresponding to the buffer memory 131 [XMAX],
It is defined as Also, the coordinates of each pixel are (i, j) (however,
1-0~XMAX-1. j= O to YM8X-).
第6図(a)を参照して、主走査方向処理の場合のペー
ジメモリ206からバッファメモリへの画素データの読
め込みを説明する。図示の如(、buff[1] [i
lには処理対象となる走査線j上の各画素データが入り
、buff [0] [ilおよびbuff [2]
[ilには各々、その上下の走査線(即ち、jl、j÷
1)上の各画素データが入る。With reference to FIG. 6(a), reading of pixel data from the page memory 206 to the buffer memory in the case of processing in the main scanning direction will be described. As shown in the diagram (, buff [1] [i
l contains each pixel data on scanning line j to be processed, buff [0] [il and buff [2]
[il has its upper and lower scan lines (i.e., jl, j÷
1) Each pixel data above is entered.
従って、ページメモリ206からバッファメモリへの画
素データの読み込みは、次の代入式で表すことができる
。Therefore, reading pixel data from the page memory 206 to the buffer memory can be expressed by the following substitution formula.
但し、この代入式は、1回目の読み込み時のものであり
、2回目以降は次式となる。However, this substitution formula is for the first reading, and from the second time onward, the following formula is used.
尚、主走査方向の読み込みの場合にはバッファメモリが
(YMAX−XMAX)ドツト×3ライン分使用されな
いが、その部分の値は0に初期化されているものとする
。In the case of reading in the main scanning direction, the buffer memory is not used for (YMAX-XMAX) dots x 3 lines, but it is assumed that the value of that portion is initialized to 0.
また、副走査方向処理の場合のへソファメモリへの読み
込みについて同様に、第6図(b)に示すよ■始点・終
点の判定および登録処理
一般に、ラスター画像は走査線レベルにおいては、いく
つかの画素によって作られる直線線分の集合であり、こ
れらが各々上下の走査線と相関をもつことによって1つ
の画像を構成している。Similarly, regarding reading into the sofa memory in the case of processing in the sub-scanning direction, as shown in Figure 6(b), start point/end point determination and registration processing Generally speaking, a raster image has several functions at the scanning line level. This is a set of straight line segments created by pixels, and each of these segments has a correlation with the upper and lower scanning lines to form an image.
本発明では、走査線上の直線線分を定義するために、各
走査線上の全ての画素に対して線分の始点であるか、終
点であるかの判定を行い、各々に該当するものを登録す
る。このアルゴリズムを第7図のフローチャートに示す
。In the present invention, in order to define a straight line segment on a scanning line, it is determined whether all pixels on each scanning line are the starting point or the ending point of the line segment, and those corresponding to each are registered. do. This algorithm is shown in the flowchart of FIG.
先ず、各々の走査線上においてドツトの値がO以外(b
uff [jl fil≠0)のものを見つけ(570
1)、そのドツトの左右両隣のどちらかのドツトの値が
0以外(buff [jl [i−1]≠0.或いは、
buff [jl li+1]≠0)の場合にそのド
ツトを始点・終点の対象とする。但し、両隣のドツトが
ともにO以外の値である場合、及び、単点の場合は判定
の対象外とする(5704,5705,5706)。First, on each scanning line, the dot value is other than O (b
Find uff [jl fil≠0) (570
1), the value of one of the dots on either the left or right side of the dot is other than 0 (buff [jl [i-1]≠0. or,
buff [jl li+1]≠0), the dot is set as the starting point and ending point. However, if the dots on both sides have values other than O, or if they are a single point, they are excluded from the determination (5704, 5705, 5706).
右隣のドツトの値が0以外で、且つ、左隣のドツトの値
がOの場合には、その注目しているドツトのX座標値i
を配列5trx[jl [k]に代入し、走査線上のj
上のに番目の始点として登録する(5707)。If the value of the dot on the right is other than 0, and the value of the dot on the left is O, the X coordinate value i of the dot in question
is assigned to the array 5trx[jl[k], and j
It is registered as the starting point above (5707).
また、左隣のドツトの値がO以外で、且つ、右隣のドツ
トの値がOの場合には、その注目しているドツトのX座
標値iを配列endx[jl [k]に代入し、走査線
上のに番目の終点として登録する(5708)。Also, if the value of the dot on the left is other than O, and the value of the dot on the right is O, the X coordinate value i of the dot in question is assigned to the array endx[jl[k]. , is registered as the th end point on the scanning line (5708).
ここで、kの範囲は1から最大でPMAXである(本実
施例ではPM八へ=1000)。Here, the range of k is from 1 to PMAX at maximum (in this embodiment, PM8 = 1000).
始点・終点判定の例外として、注目ドツトのX座標値が
0(画像の左端)或いはXMAX (画像の右端)の場
合があるが、前者の場合にはその右隣のドツト値が0以
外であれば始点として登録しく5702.5707)
、後者の場合はその左のドツト値が0以外であれば終点
として登録する(5703.5707)尚、これらの判
定および登録処理はバッファメモリ中に格納された全て
のドツトについて行われる(5709〜5712)。第
8図に上記の処理の一例を示す。As an exception to the start/end point determination, there are cases where the X coordinate value of the dot of interest is 0 (left edge of the image) or XMAX (right edge of the image), but in the former case, even if the value of the dot to the right is other than 0 Please register as a starting point (5702.5707)
In the latter case, if the dot value on the left is other than 0, it is registered as the end point (5703, 5707). These judgments and registration processes are performed for all dots stored in the buffer memory (5709 to 5707). 5712). FIG. 8 shows an example of the above processing.
■処理対象部分の判別及び決定処理
任意の図形画像輪郭部における階段状変化部分というの
は、各走査線上の直線線分同士が上下に重なっている部
分であると定義することができる。(2) Discrimination and determination process of processing target portion A stepped change portion in an arbitrary graphic image contour portion can be defined as a portion where straight line segments on each scanning line overlap vertically.
即ち、ある線分の始点と終点との間に、その上下いずれ
かの走査線上の、任意の線分の始点或いは終点が存在す
る場合、それらの線分は重なりあっているとみなせ、そ
れにより階段状変化部分を検出することができる。In other words, if there is a starting point or ending point of any line segment on either the upper or lower scanning line between the starting point and ending point of a certain line segment, those line segments can be considered to overlap, and therefore Step-like changes can be detected.
本発明では、この検出方法に様々な条件を付加し、後述
する平滑化処理を行うか否かの判定及び処理対象となる
範囲の決定を行っている。In the present invention, various conditions are added to this detection method to determine whether or not to perform smoothing processing, which will be described later, and to determine the range to be processed.
上記したように、階段状変化部分は各走査線上の各線分
の始点・終点の上下位置関係により検出されるが、その
パターンは基本的に、第9図(a)。As described above, the step-like change portion is detected based on the vertical positional relationship between the start and end points of each line segment on each scanning line, and the pattern is basically as shown in FIG. 9(a).
(b)、 (C)、 (d)に示す4つのものに大別す
ることができる。ここで、同図(a)は注目線分の始点
が下の線分の始点・終点間にある場合、同図(b)は注
目線分の終点が下の線分の始点・終点間にある場合、同
図(C)は注目線分の始点が上の線分の始点・終点間に
ある場合、同図(d)は注目線分の終点が上の線分の始
点・終点間にある場合であり、同図(a)〜(d)のの
各々の場合の処理対象範囲は、それぞれ斜線で示した部
分となる。It can be roughly divided into four types shown in (b), (C), and (d). Here, in figure (a), the starting point of the line segment of interest is between the starting point and end point of the line segment below, and in figure (b), the end point of the line segment of interest is between the starting point and ending point of the line segment below. In that case, in the same figure (C), the starting point of the line segment of interest is between the starting point and end point of the upper line segment, and in the same figure (d), the end point of the noticed line segment is between the starting point and ending point of the upper line segment. In each of the cases (a) to (d) in the figure, the processing target range is the shaded area.
第10図を参照して処理対象範囲の決定について説明す
る。Determination of the processing target range will be explained with reference to FIG.
処理対象範囲を決定するには、gradとstxの2つ
の変数を用いる。ここで、gradは任意の走査線上の
処理対象範囲内にあるドツトの個数を示し、換言すれば
、階段状変化の傾きを表している。第10図の場合は、
grad=s trx [j l [kl −s tr
x [j+1] [klで表される。また、stxは処
理対象範囲の始点座標を示し、この場合は5tx=st
rx[j+1] [klである。Two variables, grad and stx, are used to determine the processing target range. Here, grad indicates the number of dots within the processing target range on an arbitrary scanning line, in other words, it indicates the slope of the stepwise change. In the case of Figure 10,
grad=s trx [j l [kl −s tr
Represented by x [j+1] [kl. In addition, stx indicates the starting point coordinates of the processing target range, and in this case, 5tx=st
rx[j+1] [kl.
第9図(a)に示した条件: (strx[jl [k
l>5trx(j+1![4]) && (strx[
jl [kl<endx[j+1] [il)により階
段状部分が検出され、そして処理対象範囲が決定される
わけであるが、これらの条件に合うものを全て処理する
ことは必ずしも適切ではない。即ち、余計な部分まで処
理されてしまうという問題が生じるため、これらの条件
にされに細かい条件を付加する必要がある。Conditions shown in FIG. 9(a): (strx[jl[k
l>5trx(j+1![4]) && (strx[
jl [kl<endx[j+1] [il)], a step-like portion is detected and a processing target range is determined, but it is not necessarily appropriate to process everything that meets these conditions. That is, since there is a problem that unnecessary parts are processed, it is necessary to add more detailed conditions to these conditions.
更に、付加する条件について、注目線分の始点が下の線
分の始点・終点間にある場合(第9図(alの場合)を
例として説明する。Furthermore, the conditions for addition will be explained using an example in which the starting point of the line segment of interest is between the starting point and the ending point of the lower line segment (FIG. 9 (case al)).
尚、grad<= 3では、処理を加えるとかえってギ
サリが目立つため、処理対象部分と判定されているも処
理を行わないものとする。同様にgrad>・200の
場合には略水平線或いは垂直線と見なせるので処理を行
わないものとする。Note that when grad <= 3, adding processing will make the jitter more noticeable, so no processing will be performed even though it is determined to be a portion to be processed. Similarly, if grad>200, no processing is performed because it can be regarded as a substantially horizontal line or vertical line.
付加条件としては、第11図(a)に示すように、(s
trx[j−1] [hl<=strx[jl [
kl) && (endx[j−1][hl >=
s trx [j ] [k] )の場合、処理をしな
い。As an additional condition, as shown in FIG. 11(a), (s
trx[j-1] [hl<=strx[jl [
kl) && (endx[j-1][hl >=
s trx [j] [k]), no processing is performed.
第11図(b)に示すように、(endx [jl [
k−1] !=strx[N [kl) && (en
dx[j−II fhl>=strx[jl [ki)
の場合、斜線部分を処理する。As shown in FIG. 11(b), (endx [jl [
k-1]! =strx[N [kl] && (en
dx[j-II fhl>=strx[jl [ki]
In this case, process the shaded part.
第11図(b)に示すように、(endx [jl [
k−1] !=strx[jl [kl) && (e
ndx[j−1] [hl>=strx[jl [kl
)の場合、斜線部分を処理する。この場合、grad・
5trx[N [kl−endx[jl [k−1]−
1とし、5tx=endx[jl [k−1]+1とす
る。As shown in FIG. 11(b), (endx [jl [
k-1]! =strx[jl [kl] && (e
ndx[j-1] [hl>=strx[jl [kl
), process the shaded part. In this case, grad・
5trx[N [kl-endx[jl [k-1]-
1, and 5tx=endx[jl [k-1]+1.
第11図(C)に示すように、斜線部分の4ドツトに線
分の始点が有る場合、(buff [j−1] [hl
!=0)の場合、処理しない。As shown in FIG. 11(C), when the starting point of a line segment is located at the four dots in the shaded area, (buff [j-1] [hl
! = 0), no processing is performed.
但し、上記のhはh=s trx [j ] [kl
〜s trx [j ] [kl +3とする。However, the above h is h=s trx [j] [kl
~s trx [j] [kl +3.
■ドツトの抜き打ち処理
ドツトの抜き打ち処理は、処理対象範囲(階段状ギザギ
ザ部分)の所定位置にドツトを抜き打ち(追加)する処
理である。換言すれば、ドツト位置変調によるギザリ平
滑化処理であり、図形画像輪郭部の階段状部分にドツト
の抜き打ちを行って高周波成分を加えることにより、視
覚上の平滑化効果を得るという原理に基づいている。そ
のドツト抜き打ちのパターンは様々であり、各々によっ
て得られる効果も異なっているが、本実施例ではその中
で最も効果のあった抜き打ちパターンを用いる。以下、
第12図(a)、 (b)を参照して抜き打ちパターン
について説明する。(2) Dot punching process The dot punching process is a process in which dots are randomly punched (added) at predetermined positions in the processing target range (stepped jagged portion). In other words, it is a jagged smoothing process using dot position modulation, and is based on the principle that a visual smoothing effect is obtained by punching out dots in the step-like part of the contour of the figure image and adding a high frequency component. There is. There are various patterns for punching out dots, and the effects achieved by each pattern are different, but in this embodiment, the punching pattern that is most effective among them is used. below,
The punch pattern will be explained with reference to FIGS. 12(a) and 12(b).
第12図(a)は、注目線分の始点が上下いずれかの線
分の始点・終点間にある場合を示し、図示の如(、処理
対象範囲はドツトを全く打たない平坦部と、ドツトをあ
る個数だけ打つ被処理部とに分けられる。ここで平坦部
の長さncは、nc=dnp+2 但し、dnp=
in t (grad/2)と定義する。これは処理
対象範囲の長さgradが偶数であるか奇数であるかに
よって異なる。また、被処理部では、エツジ・ドツトの
2n個前方のドツトを全て打つ。ここでn=1.2,3
.・・・・・・nmaxであり、nmaxは次式で求め
られる。FIG. 12(a) shows a case where the starting point of the line segment of interest is between the starting point and ending point of either the upper or lower line segment, and as shown in the figure (the range to be processed is a flat area where no dots are placed, It is divided into a treated part on which a certain number of dots are applied.Here, the length of the flat part nc is nc=dnp+2, where dnp=
Define in t (grad/2). This differs depending on whether the length grad of the processing target range is an even number or an odd number. In addition, in the part to be processed, all dots 2n points in front of the edge dot are struck. Here n=1.2,3
.. . . . nmax, and nmax is obtained by the following formula.
nmax=int[(grad/2−nc)]即ち、被
処理部ではエツジ・ドツトのnmax個前のドツトから
エツジ・ドツトの1つ前のドツトまで、“ドツトを打つ
゛・ “ドツトを打たない”の操作を交互に繰り返す。nmax=int [(grad/2-nc)] In other words, in the processed part, "dots are struck" from the nmax number of dots before the edge dot to the dot one before the edge dot. Repeat the "No" operation alternately.
更に、これに加えてエツジ・ドツトの後ろのドツト(図
中点線で示す)を抜いて処理を完了する。Furthermore, in addition to this, the dot after the edge dot (indicated by the dotted line in the figure) is removed to complete the process.
このパターンを注目線分の終点が上下いずれかの線分の
始点・終点間にある場合に適用したものを、第12図(
b)に示す。この場合には、処理対象範囲内の平坦部と
被処理部の順序が逆転しているので、その処理順序も逆
転する。即ち、先ず、エツジ・ドツトの前のドツト(図
中点線で示す)を抜き、その後、エツジ・ドツトの1つ
後ろのドツトから、nmax個後ろのドツトまで、“ド
ツトを打たない° ・ ゛ドツトを打つパの操作を交互
に繰り返して処理を完了する。This pattern is applied when the end point of the line segment of interest is between the start and end points of either the upper or lower line segment, as shown in Figure 12 (
Shown in b). In this case, since the order of the flat part and the to-be-processed part within the processing target range is reversed, the processing order is also reversed. That is, first, the dot in front of the edge dot (indicated by the dotted line in the figure) is removed, and then from the dot one place after the edge dot to the nmax number of dots after the edge dot, "dot not be struck". The process is completed by repeating the operation of hitting the dots alternately.
尚、ドツトを打つ・打たない(抜く)の操作は、直接、
ページメモリ206に対応する配列org[jl[i]
の値を0.またはドツト値の最大値(後述するプログ
ラムでは255)に書き換えることで実現される。In addition, the operation of hitting/not hitting (dotting) dots is done directly.
Array org[jl[i] corresponding to page memory 206
The value of 0. Alternatively, this can be realized by rewriting the dot value to the maximum value (255 in the program described later).
また、説明を省略するが、前述したドツト抜き打ち処理
のフローチャートを第13図(a)に示す。Further, although the explanation is omitted, a flowchart of the aforementioned dot punching process is shown in FIG. 13(a).
第13図(b)、 (C)はフローチャート中の変数を
示し、5W=Oの場合には、対象処理範囲が始点部分の
画像輪郭部であり、SW・1の場合には、対象処理範囲
が終点部分の画像輪郭部であることを示す。FIGS. 13(b) and (C) show variables in the flowchart. In the case of 5W=O, the target processing range is the image outline at the starting point, and in the case of SW・1, the target processing range indicates that is the image contour of the end point.
以上の■〜■の処理で説明した平滑化処理の実施例を第
14図(a)、 (b)、 (C)を参照して説明する
。An embodiment of the smoothing process described in the above processes 1 to 2 will be described with reference to FIGS. 14(a), 14(b), and 14(C).
第14図(a)はオリジナル画像(300dpi、32
ポイント相当)を示し、これに主走査方向の平滑化処理
を施した結果を第14図(′b)に示す。また、更に第
14図(b)の画像に副走査方向の平滑化処理を処理を
施した結果を第14図(C)に示す。Figure 14(a) is the original image (300 dpi, 32
14('b) shows the result of smoothing processing in the main scanning direction. Furthermore, the image of FIG. 14(b) is subjected to smoothing processing in the sub-scanning direction, and the result is shown in FIG. 14(c).
同図(a)と同図(C)を比較すると明らかなように、
階段状ギザギザ部分の平滑化が実現されている。As is clear from comparing Figure (a) and Figure (C),
Smoothing of stepped jagged parts has been achieved.
また、本実施例では、前述したように、サブピクセル分
割及びサブビクセルの塗りつぶし処理を必要としないの
で、高速に平滑化処理を行うことができる。更に、第1
4図(C)の処理画像は2値で表されているので、2値
プリンタ300でそのまま出力することができる。Further, in this embodiment, as described above, since subpixel division and subpixel filling processing are not required, smoothing processing can be performed at high speed. Furthermore, the first
Since the processed image in FIG. 4(C) is expressed in binary, it can be output as is by the binary printer 300.
以上説明したように、本発明の図形処理装置は、ヘクト
ル画像を展開したイメージ画像、或いは。As described above, the graphic processing device of the present invention can process an image image developed from a hector image, or a graphic processing device of the present invention.
読取装置を介して入力したイメージ画像の画像輪郭部の
階段状ギザギザ部分(エイリアス)を平滑化して印字或
いは表示する図形処理装置において、画像輪郭部におけ
る階段状変化の度合を検知する検知手段と、検知手段で
検知した階段状変化の度合に応して、階段状ギザギザ部
分の所定位置にドツトを追加し、視覚的に滑らかにする
平滑化処理手段とを備えたため、階段状ギザギザ部分の
平滑化を高速に行うことができる。In a graphic processing device that smooths and prints or displays a step-like jagged part (alias) of an image outline of an image input via a reading device, a detection means detects the degree of step-like change in the image outline; The step-like jagged part can be smoothed by adding dots at predetermined positions of the step-like jagged part to visually smooth it according to the degree of the step-like change detected by the detection means. can be done quickly.
また、階段状ギザギザ部分の平滑化を行い、且つ、2値
の出力媒体で出力することができる。Furthermore, it is possible to smooth the step-like jagged portion and output it on a binary output medium.
第1図は本発明の図形処理装置を通用した画像形成シス
テムの構成図、第2図はPDLコントローラの構成を示
す説明図、第3図はPDLコントローラにおける処理の
フローチャート、第4図(a)。
(b)、 (C)は平滑化処理の処理順序を示す説明図
、第5図の平滑化処理のフローチャート、第6図(a)
。
(b)はバッファメモリへの画素データの読み込みを示
す説明図、第7図は始点・終点の判定および登録のフロ
ーチャート、第8図は始点・終点の判定および登録の一
例を示す説明図、第9図(a)、 (b)。
(C)、 (d)は階段状変化部分は各走査線上の各線
分の始点・終点の上下位置関係のパターンを示す説明図
、第10図は処理対象範囲を示す説明図、第9図(a)
、 (b)、 (C)は付加条件を示す説明図、第12
図(a)、 (b)は抜き打ちパターンを示す説明図、
第13図(a)はドツト抜き打ち処理のフローチャート
、第13図(b)、 (C)は第13図(a)のフロー
チャート中の変数を示す説明図、第14図(a)、 (
b)、 (c)は実施例による処理結果を示す説明図、
第15図(a)、 (b)は従来のアンチエイリアシン
グ処理を示す説明図である。
符号の説明
100・−一一−−ホストコンビューク200−−−−
P D Lコントローラ201−−受信装置 202−
・−−−−−CP U203−−−一内部システムハス
204−−−・−RAM 205・−−−ROM20
6−−−−−−−ベージメモリ 207−・−−m−送
信装置300−−−−2値プリンタFIG. 1 is a configuration diagram of an image forming system using the graphic processing apparatus of the present invention, FIG. 2 is an explanatory diagram showing the configuration of a PDL controller, FIG. 3 is a flowchart of processing in the PDL controller, and FIG. 4(a) . (b) and (C) are explanatory diagrams showing the processing order of smoothing processing, the flowchart of smoothing processing in Fig. 5, and Fig. 6 (a).
. (b) is an explanatory diagram showing the loading of pixel data into the buffer memory, FIG. 7 is a flowchart for determining and registering the starting point and ending point, FIG. Figure 9 (a), (b). (C) and (d) are explanatory diagrams showing the pattern of the vertical positional relationship of the start and end points of each line segment on each scanning line for the step-like change part, Fig. 10 is an explanatory diagram showing the processing target range, and Fig. 9 ( a)
, (b), (C) are explanatory diagrams showing additional conditions, 12th
Figures (a) and (b) are explanatory diagrams showing random patterns,
FIG. 13(a) is a flowchart of the dot punching process, FIGS. 13(b) and 13(C) are explanatory diagrams showing variables in the flowchart of FIG. 13(a), and FIGS. 14(a), (
b), (c) are explanatory diagrams showing processing results according to the example,
FIGS. 15(a) and 15(b) are explanatory diagrams showing conventional antialiasing processing. Explanation of codes 100・-11--Host computer 200----
PDL controller 201--receiving device 202-
・-----CP U203----Internal system lot 204---RAM 205・---ROM20
6--------Bage memory 207---m-Transmitting device 300--Binary printer
Claims (1)
置を介して入力したイメージ画像の画像輪郭部の階段状
ギザギザ部分(エイリアス)を平滑化して印字或いは表
示する図形処理装置において、 前記画像輪郭部における階段状変化の度合を検知する検
知手段と、 前記検知手段で検知した階段状変化の度合に応じて、前
記階段状ギザギザ部分の所定位置にドットを追加し、視
覚的に滑らかにする平滑化処理手段とを備えたことを特
徴とする図形処理装置。[Scope of Claims] A graphic processing device that smoothes and prints or displays a step-like jagged portion (alias) of an image contour of an image developed from a vector image or an image input via a reading device, a detection means for detecting the degree of step-like change in the image contour; and a dot added to a predetermined position of the step-like jagged portion according to the degree of step-like change detected by the detection means, so as to visually smooth the image. A graphic processing device characterized by comprising: smoothing processing means for smoothing.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2287982A JPH04161987A (en) | 1990-10-25 | 1990-10-25 | Graphic processing device |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2287982A JPH04161987A (en) | 1990-10-25 | 1990-10-25 | Graphic processing device |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH04161987A true JPH04161987A (en) | 1992-06-05 |
Family
ID=17724271
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2287982A Pending JPH04161987A (en) | 1990-10-25 | 1990-10-25 | Graphic processing device |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH04161987A (en) |
-
1990
- 1990-10-25 JP JP2287982A patent/JPH04161987A/en active Pending
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US8467089B2 (en) | Systems and methods for line width control and pixel retagging | |
| US20130335424A1 (en) | Character display method and device | |
| KR101525064B1 (en) | Method of toner saving, system of toner saving, and image forming appartus | |
| JPH08106276A (en) | Display method of text on screen | |
| US20190369929A1 (en) | Print control device, page data correction method, and raster data generation method | |
| JP3142550B2 (en) | Graphic processing unit | |
| US5404431A (en) | Image drawing with improved area ratio approximation process | |
| JPH07322057A (en) | Increase of resolution of binary input picture and its increasing device together with improvement of appearance ofbinary input picture | |
| JP2008279626A (en) | Image processor and image processing program | |
| JPH05120441A (en) | Vector picture plotting device | |
| JP3952188B2 (en) | Image interpolation apparatus, image interpolation method, and image interpolation program | |
| JPH04139589A (en) | Graphic processor | |
| JPH04161987A (en) | Graphic processing device | |
| EP1351196A2 (en) | A method and apparatus for creating an image | |
| JP2008294609A (en) | Image output device, image output method, and image output program | |
| JP3997415B2 (en) | Edge generation apparatus, edge generation method, and edge generation program | |
| JPH04161986A (en) | Graphic processing device | |
| JP3294249B2 (en) | Image processing device | |
| JPH06118935A (en) | Character data generator | |
| JPH05143743A (en) | Vector image drawing device | |
| JP2019121870A (en) | Image processing apparatus, control method of the same, and program | |
| JP3990743B2 (en) | Printer control method and printer control apparatus | |
| JP2524393Y2 (en) | Image processing device | |
| JP5826147B2 (en) | Image forming apparatus | |
| JP2000270214A (en) | Dot deletion method for inkjet printer |