JPH06253129A - 画像回転処理装置 - Google Patents

画像回転処理装置

Info

Publication number
JPH06253129A
JPH06253129A JP5040102A JP4010293A JPH06253129A JP H06253129 A JPH06253129 A JP H06253129A JP 5040102 A JP5040102 A JP 5040102A JP 4010293 A JP4010293 A JP 4010293A JP H06253129 A JPH06253129 A JP H06253129A
Authority
JP
Japan
Prior art keywords
block
rotation
data
image data
rotation processing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP5040102A
Other languages
English (en)
Other versions
JP3147567B2 (ja
Inventor
Hiroshi Ohira
洋 大平
Yuji Ito
裕二 伊藤
Hiroshi Suenobe
洋 末延
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fuji Xerox Co Ltd filed Critical Fuji Xerox Co Ltd
Priority to JP04010293A priority Critical patent/JP3147567B2/ja
Priority to KR1019930021749A priority patent/KR0128045B1/ko
Publication of JPH06253129A publication Critical patent/JPH06253129A/ja
Application granted granted Critical
Publication of JP3147567B2 publication Critical patent/JP3147567B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/387Composing, repositioning or otherwise geometrically modifying originals

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Editing Of Facsimile Originals (AREA)
  • Image Processing (AREA)
  • Dot-Matrix Printers And Others (AREA)
  • Studio Circuits (AREA)

Abstract

(57)【要約】 【目的】少ない画像メモリで入力画像データの回転処理
を行って効率的に出力でき、残余のデータが生じても回
転処理能力が低下しない。 【構成】入力画像データを所定のブロック単位に分割し
たブロックデータを記憶する回転記憶領域14aと、回
転記憶領域14aに記憶する際、残余のデータが存在す
る場合に、回転前に補間を行う回転前補間部11、90
度単位の回転後に出力装置2の最初の主走査方向となる
回転後のブロック行の前記ブロックデータを順次読出す
回転順序指示/読取手段12と、前記読出手段で読み出
されたブロックデータを回転処理する分割回転部13
と、この回転処理されたブロックデータを出力装置の1
ブロック行分のブロックデータとして少なくとも1ブロ
ック行分記憶する回転後記憶領域14bと、この少なく
とも1ブロック行分のブロックデータを出力する出力制
御部15とを有する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、入力画像データを所定
のブロック単位で分割し、このブロック単位毎に90度
単位の回転処理を行って出力する画像回転処理装置に関
する。
【0002】
【従来の技術】従来、画像回転処理装置として、入力さ
れた画像データを所定のブロック単位で回転処理して出
力するものがある。
【0003】図5は、従来の画像回転処理装置の回転処
理動作を説明する図であり、この図5を用いて従来の画
像回転処理動作について説明する。
【0004】図5において、例えば図5(a)のように
文字「A」の画像データが入力されると、所定のブロッ
ク単位に分割されて、画像回転処理装置内の画像メモリ
の入力画像データ記憶領域に記憶される。ここでは、ブ
ロック行Rが「3」で、ブロック列Cが「3」の9個の
ブロックデータ(ブロック番号(1)〜(9))に分割
されて記憶されている。
【0005】そして、例えば90度回転処理をこのブロ
ック単位毎に行う場合、図5(a)のブロック番号
(1)〜(9)の順序で回転処理が順次行われる。例え
ば、図5(a)のブロック番号(2)のブロックデータ
は、図5(b)のブロック番号(2)のブロックデータ
のように反時計方向に90度の回転処理が行われ、該バ
ッファ位置に記憶される。
【0006】その結果、図5(b)に示すように回転後
の画像データがブロック単位で画像メモリのバッファ領
域に記憶される。すなわち、図5(b)のブロック番号
(1)〜(9)の順序で回転処理後のブロック単位の画
像データが記憶される。
【0007】この場合、バッファ領域に記憶された回転
後の画像データは、出力装置の出力順序方向を考慮して
いないため、回転処理されたブロック単位のブロックデ
ータを順次、出力装置へ転送出力することができない。
【0008】すなわち、出力装置から最初に出力される
図5(b)のブロック番号(3),(6),(9)の3
つのブロックデータからなるブロックラインデータBL
は、図5(a)におけるブロック番号(9)のブロック
データが最後に回転処理されるため、ブロック番号
(1)〜(9)までのブロックデータに対する全ての回
転処理が終了しない限り、回転処理後の画像データを出
力装置へ出力することができない。
【0009】従って、回転前における全画像データを記
憶する入力画像データ記憶領域と、回転後における回転
処理後の全画像データを記憶するバッファ領域を有した
画像メモリを必要とする。すなわち、入力画像データを
記録するメモリの約2倍のメモリを必要としていた。
【0010】これに対し、回転処理に必要な画像メモリ
量を少なくした画像回転処理装置がある。
【0011】図6は、画像メモリ量を少なくした従来の
画像回転処理装置の回転処理動作を説明する図であり、
この画像回転処理装置は、図5(a)の入力画像データ
記憶領域をブロック番号(1)〜(3)の3つのブロッ
クデータのメモリ量、すなわち1つのブロックラインデ
ータに相当するメモリ量とし、この記憶されたブロック
ラインデータのそれぞれのブロックデータに対して回転
処理をブロック番号(1)〜(3)の順で行い、回転処
理後のブロックデータをブロックラインデータBDとし
て図6(b)に示したバッファ領域に記憶するようにし
ている。
【0012】同様にして、図6(a)に次のブロックラ
インデータが入力されると、回転処理を行って図6
(b)のブロック番号(4)〜(6)のブロックデータ
がバッファ領域に記憶される。
【0013】このため、入力画像データを記憶するメモ
リ量の2倍のメモリ量を必要とせずに、約1倍のメモリ
量のみで入力画像データの回転処理を行うことができ
る。
【0014】なお、この場合も図5と同様に、バッファ
領域に記憶された回転後の画像データは、出力装置の出
力順序方向を考慮していないため、回転処理されたブロ
ック単位の画像データを順次出力装置へ出力することが
できない。
【0015】すなわち、ブロック番号(9)の回転処理
が終了しないと、出力装置から回転処理後の画像データ
を出力することができない。
【0016】なお、特開昭60−222974号公報に
は、境界部に位置するユニット(ブロック)の回転パタ
ーンデータを、回転エリア(入力画像データ)の内側部
分(残余のデータ)を回転画像エリアの回転後、ユニッ
ト位置に選択的に転送する画像回転処理方式が記載され
ている。
【0017】また、特開昭63−70381号公報に
は、イメージデータをK×Kビット(ブロック)で回転
処理する際、イメージデータの残余のデータに対してM
ビット(余白ビット)のスペースを与える補間を行い、
出力時に0ビットとするイメージデータの回転処理方法
が記載されている。
【0018】さらに、特開平1−131971号公報に
は、2値画像のアフィン変換時に、x軸方向への斜交軸
変換、90度の回転変換、y軸方向の拡大縮小変換を順
次行うことにより、画像メモリに特別な回路を付加する
ことなく、変換を高速処理することができる画像のアフ
ィン変換処理装置が記載されている。
【0019】
【発明が解決しようとする課題】前述したように、従来
の画像回転処理装置では、入力画像データの回転処理た
め、入力画像データのメモリ量の2倍のメモリ量を必要
とするという問題点があった。
【0020】これに対し、入力画像データのメモリ量の
約1倍のメモリ量で回転処理を行うことができる画像回
転処理装置が考えられたが、回転処理された画像データ
を出力する出力装置の出力順序方向を考慮していないた
め、入力画像データの回転処理と回転処理された画像デ
ータの出力装置への転送出力を並列処理することができ
ない。従って、画像回転処理装置全体として、結果的に
効率的な入力画像データの回転・転送出力処理が行えな
いという問題点があった。
【0021】また、ブロック単位で回転処理する際、残
余のデータが生じた場合、この残余のデータを補間して
回転処理を効率的に行うものがあるが、この補間は回転
処理時に行うものである。このため、回転処理時に補間
の処理が必要である場合に回転処理能力が低下するとい
う問題点があった。
【0022】そこで、本発明は、かかる問題点を除去
し、少ない画像メモリで入力画像データの回転処理を行
って効率的に回転処理後の画像データを転送出力するこ
とができ、入力画像データに残余のデータが生じても回
転処理能力を低下せずに効率的に回転処理された画像デ
ータを出力することができる画像回転処理装置を提供す
ることを目的とする。
【0023】
【課題を解決するための手段】本発明は、入力画像デー
タを90度単位に回転処理して出力装置に出力する画像
回転処理装置において、入力画像データをブロック単位
にブロック行(R)とブロック列(C)に分割したR×
C個のブロックデータを記憶する第1の記憶手段(図1
の14a)と、90度単位の回転後に前記出力装置の最
初の主走査方向となる回転後のブロック行の前記ブロッ
クデータを順次読出す読出手段(図1の12)と、前記
読出手段で読み出されたブロックデータを回転処理する
回転処理手段(図1の13)と、前記回転処理手段で回
転処理されたブロックデータを前記出力装置の1ブロッ
ク行分のブロックデータとして少なくとも1ブロック行
分記憶する第2の記憶手段(図1の14b)と、前記第
2の記憶手段に記憶された少なくとも1ブロック行分の
ブロックデータを出力する出力制御手段(図1の15)
とを具備したことを特徴とする。
【0024】また、本発明は、入力画像データを90度
単位に回転処理して出力装置に出力する画像回転処理装
置において、入力画像データをブロック単位にブロック
行(R)とブロック列(C)に分割したR×C個のブロ
ックデータを記憶する第1の記憶手段(図1の14a)
と、90度単位の回転後に前記出力装置の最初の主走査
方向となる回転後のブロック行の前記ブロックデータを
順次読出す読出手段(図1の12)と、前記読出手段で
読み出されたブロックデータを回転処理する回転処理手
段(図1の13)と、前記第1の記憶手段に記憶される
前記入力画像データを前記ブロック単位で分割して記憶
する時に、該入力画像データを前記ブロック単位で分割
した時に残余の部分データがある場合、該残余の部分デ
ータが前記回転処理手段による回転処理後の最後のブロ
ック行およびブロック列となる補間をする補間手段(図
1の11)と、前記回転処理手段で回転処理されたブロ
ックデータを前記出力装置の1ブロック行分のブロック
データとして少なくとも1ブロック行分記憶する第2の
記憶手段(図1の14b)と、前記第2の記憶手段に記
憶された少なくとも1ブロック行分のブロックデータを
出力する出力制御手段(図1の15)とを具備したこと
を特徴とする。
【0025】
【作用】本発明は、入力画像データを90度単位に回転
処理して出力装置に出力する際、まず第1の記憶手段に
入力画像データをブロック単位にブロック行(R)とブ
ロック列(C)に分割したR×C個のブロックデータを
記憶する。そして、読出手段が、90度単位の回転情報
に基づいて、90度単位の回転後に前記出力装置の最初
の主走査方向となる回転後のブロック行に対応する前記
ブロックデータを順次読出す。そして、前記読出手段で
読み出されたブロックデータを回転処理して、第2の記
憶手段に、前記回転処理手段で回転処理されたブロック
データを前記出力装置の1ブロック行分のブロックデー
タとして少なくとも1ブロック行分記憶する。そして、
出力制御手段が、前記第2の記憶手段に記憶された少な
くとも1ブロック行分のブロックデータを出力する。こ
のようにして出力装置の主走査方向となる1ブロック行
分のブロックデータを読み出して回転処理しているの
で、入力画像データの回転処理と、出力装置から回転処
理された画像データの転送出力処理との並列処理を行う
ことができる。
【0026】また、本発明は、入力画像データを90度
単位に回転処理して出力装置に出力する際、まず前記入
力画像データをブロック単位にブロック行(R)とブロ
ック列(C)に分割したR×C個のブロックデータを第
1の記憶手段に記憶する時に、該入力画像データを前記
ブロック単位で分割した時に残余の部分データがある場
合、補間手段が、該残余の部分データが回転処理手段に
よる回転処理後の最後のブロック行およびブロック列と
なる補間を行って、前記入力画像データを前記第1の記
憶手段に記憶する。そして、読出手段が、90度単位の
回転情報に基づいて、90度単位の回転後に前記出力装
置の最初の主走査方向となる回転後のブロック行に対応
する前記ブロックデータを順次読出す。そして、前記読
出手段で読み出されたブロックデータを回転処理して、
第2の記憶手段に、前記回転処理手段で回転処理された
ブロックデータを前記出力装置の1ブロック行分のブロ
ックデータとして少なくとも1ブロック行分記憶する。
そして、出力制御手段が、前記第2の記憶手段に記憶さ
れた少なくとも1ブロック行分のブロックデータを出力
する。従って、第1の記憶手段に記憶される時に補間手
段により入力画像データの残余の部分データが補間さ
れ、補間された画像データか否かに関係なく、回転処理
手段は回転処理のみを行うため、回転処理自体の能力に
影響を与えない。
【0027】
【実施例】以下、図面を参照して本発明の一実施例につ
いて説明する。
【0028】図1は、本発明の一実施例である画像回転
処理装置の構成を示すブロック図である。
【0029】図1において、画像回転処理装置10は、
ワークステーション等の入力装置1から入力された入力
画像データに対し、所定のブロック単位で分割して回転
処理する前に、残余の画像データがある場合に回転処理
後の画像データの主走査方向、すなわち出力方向順を考
慮して残余の部分を補間する回転前補間部11、入力画
像データ、あるいは回転前補間部11により補間された
場合は補間後の入力画像データの全画像データを記憶す
る回転前記憶領域14aと回転処理後の所定数のブロッ
ク単位の画像データを記憶する回転後記憶領域14bと
を有した記憶部14、回転情報に基づいてプリンタ等の
出力装置2の出力方向順が考慮された指示を行い、この
指示に基づいて順次、回転前記憶領域14aのブロック
単位の画像データ(ブロックデータ)を取り出す回転順
序指示/読取部12、回転順序指示/読取部12により
読み取られたブロックデータを回転処理し、回転後記憶
領域14bに記憶する分割回転部13、回転後記憶領域
14bに記憶された複数のブロックデータ(ブロックラ
インデータ)を順次出力装置2に転送出力する制御を行
う出力制御部15から構成される。
【0030】次に、入力画像データが回転処理されて出
力されるまでの画像データの流れについて説明する。
【0031】図2は、入力画像データの回転・出力処理
を説明する図である。
【0032】図2(a1)は、入力装置1から入力され
た入力画像データの回転前記憶領域14aでの記憶され
た状態を示している。この入力画像データは、文字
「A」の内容をもつ画像データであり、ブロック行Rが
「3」でブロック列Cが「3」すなわち9個(3×3=
9)のブロックデータに分割されて記憶されている。そ
して、ブロック単位は、8×8ビット(幅Mが8ビット
で高さNが8ビット)である。また、入力画像データは
幅24ドット、高さ24ラインである。
【0033】また、この入力画像データは、バイト単位
であり、図2(a2)に示すようなアドレス配置で記憶
されている。
【0034】図2(a1)の入力画像データに対して9
0度の回転指示情報が入力されると、90度の回転処理
後の出力装置2からの出力順序に対応するブロック行列
(1,1)〜(1,3)、(2,1)〜(2,3)、
(3,1)〜(3,3)で示されるブロックデータの中
から1つのブロックデータが回転順序指示/読取部12
により指示される。ここで、このブロック行列の行の番
号は、回転処理されたブロックラインデータの出力順序
を示し、列の番号は、回転処理されたブロックラインデ
ータを構成するブロックデータの主走査方向に対応した
順序を示している。また、ブロック行列は、分割回転部
13の回転処理順序を示している。この回転処理順序
は、(1,1)→(1,2)→(1,3)→(2,1)
→(2,2)→(2,3)→(3,1)→(3,2)→
(3,3)の順となる。
【0035】例えば、第1番目に回転処理されるブロッ
クデータは、図2(b1)のブロック行列(1、1)の
位置にあるブロックデータであり、このブロックデータ
は回転処理後、図2(c1)の最初のブロックラインデ
ータBL11の第1番目のブロックラインデータとして
転送出力される。また、第6番目に回転処理されるブロ
ックデータは、図2(b1)のブロック行列(2,3)
の位置にあるブロックデータであり、このブロックデー
タは回転処理後、図2(c1)の第2番目のブロックラ
インデータBL12の第3番目のブロックデータとして
転送出力される。
【0036】そして、回転順序指示/読取部12により
順次読み取られたブロックデータに対して、分割回転部
13は転送指示情報(反時計方向に90度の回転)に基
づいて、回転処理をブロックデータごとに行い、回転後
記憶領域14bに記憶する。
【0037】そして、ブロック行の全てのブロックデー
タが回転処理されて回転後記憶領域14bにブロックラ
インデータとして記憶が完了すると、出力制御部15
は、このブロックラインデータを出力装置2に転送出力
する。すなわち、図2(c1)に示すようにブロックラ
インデータBL11→BL12→BL13の順で順次転
送出力される。
【0038】同様にして、回転指示情報が反時計方向に
180度の回転である場合は、図2(b2)で示すよう
なブロック行列が対応し、このブロック行列の順序に対
応するブロックデータが回転順序指示/読取部12によ
り順次読み取られる。そして、分割回転部13は順次読
み取られたブロックデータに対して180度の回転処理
を行い、回転後記憶領域14bに記憶する。そして、回
転後記憶領域14bに1つのブロックラインデータが記
憶されたならば、出力制御部15がこのブロックライン
データを出力装置2に転送出力する。すなわち、ブロッ
クラインデータBL21→BL22→BL23の順で順
次転送出力される。
【0039】同様にして、回転指示情報が反時計方向に
270度の回転である場合は、図2(b3)で示すよう
なブロック行列が対応し、このブロック行列の順序に対
応するブロックデータが回転順序指示/読取部12によ
り順次読み取られる。そして、分割回転部13は順次読
み取られたブロックデータに対して270度の回転処理
を行い、回転後記憶領域14bに記憶する。そして、回
転後記憶領域14bに1つのブロックラインデータが記
憶されたならば、出力制御部15がこのブロックライン
データを出力装置2に転送出力する。すなわち、ブロッ
クラインデータBL31→BL32→BL33の順で順
次転送出力される。
【0040】ここで、回転順序指示/読取部12による
90度、180度、270度の各回転指示情報ごとの読
み出し順序であるブロック行列のブロックデータが存在
するアドレス位置決定について説明する。すなわち、ブ
ロック行列に対応するブロックデータの回転前記憶領域
14aのアドレス位置決定について説明する。
【0041】まず、反時計方向に90度回転を行う場合
について説明する。
【0042】この場合、式f90(x,y)を用いて、該
当するブロック行列(x,y)の回転前のブロックデー
タの先頭アドレスを決定することにより、該ブロックデ
ータを読出す。すなわち、 f90(x,y)=s+w(1+n(y−1))−mx を用いる。ここで、 x:ブロック行列の行の値 y:ブロック行列の列の値 s:回転前の画像データの先頭アドレス w:回転前の画像データの幅[バイト] n:ブロック単位の幅[ビット] m:ブロック単位の高さ(ビット)/8 [バイト] である。
【0043】例えば、図2(c1)のブロック行列
(3,3)のブロックデータB12の回転前のブロック
データの先頭アドレスを求めると次のようになる。
【0044】この場合、x=3、y=3、s=0、w=
24ドット/8=3バイト、n=N=8、m=M/8=
8/8=1バイトであるので f90(3,3)=0+3(1+8(3−1))−1×3 =48 これにより、90度回転時のブロック行列(3,3)の
回転前のブロックデータの先頭アドレスは、「48」と
求められる。すなわち、図2(a2)のアドレス配置に
おけるアドレス48が、求められたブロックデータの先
頭アドレスということになる。これにより、上述したよ
うに図2(b1)のブロック行列(3,3)の位置のブ
ロックデータB11が回転前ブロックデータであること
がわかる。そして、回転順序指示/読取部12は、ブロ
ックデータB11を回転前画像領域14aから読み取
り、分割回転部13により90度の回転処理がなされ
る。
【0045】次に、反時計方向に180度回転を行う場
合について説明する。
【0046】この場合、式f180(x,y)を用いて、
該当するブロック行列(x,y)の回転前のブロックデ
ータの先頭アドレスを決定することにより、該ブロック
データを読出す。すなわち、 f180(x,y)=s+w((ya−x)n+1)−my を用いる。ここで、 ya:ブロック行列の列の総数値 である。
【0047】例えば、図2(c2)のブロック行列
(2,2)のブロックデータB22の回転前のブロック
データの先頭アドレスを求めると次のようになる。
【0048】この場合、x=2、y=2、s=0、w=
24ドット/8=3バイト、n=N=8、m=M/8=
8/8=1バイトであるので f180(2,2)=0+3((3−2)×8+1)−1×2 =25 これにより、180度回転時のブロック行列(2,2)
の回転前のブロックデータの先頭アドレスは、「25」
と求められる。すなわち、図2(a2)のアドレス配置
におけるアドレス25が、求められたブロックデータの
先頭アドレスということになる。これにより、上述した
ように図2(b2)のブロック行列(2,2)の位置の
ブロックデータB21が回転前ブロックデータであるこ
とがわかる。そして、回転順序指示/読取部12は、ブ
ロックデータB21を回転前画像領域14aから読み取
り、分割回転部13により180度の回転処理がなされ
る。
【0049】さらに、反時計方向に270度回転を行う
場合について説明する。
【0050】この場合、式f270(x,y)を用いて、
該当するブロック行列(x,y)の回転前のブロックデ
ータの先頭アドレスを決定することにより、該ブロック
データを読出す。すなわち、 f270(x,y)=nw(ya−y)+m(x−1) を用いる。
【0051】例えば、図2(c3)のブロック行列
(3,1)のブロックデータB32の回転前のブロック
データの先頭アドレスを求めると次のようになる。
【0052】この場合、x=3、y=1、s=0、w=
24ドット/8=3バイト、n=N=8、m=M/8=
8/8=1バイトであるので f180(2,2)=8×3×(3−1)+1×(3−1) =50 これにより、270度回転時のブロック行列(3,1)
の回転前のブロックデータの先頭アドレスは、「50」
と求められる。すなわち、図2(a2)のアドレス配置
におけるアドレス50が、求められたブロックデータの
先頭アドレスということになる。これにより、上述した
ように図2(b3)のブロック行列(3,1)の位置の
ブロックデータB31が回転前ブロックデータであるこ
とがわかる。そして、回転順序指示/読取部12は、ブ
ロックデータB31を回転前画像領域14aから読み取
り、分割回転部13により270度の回転処理がなされ
る。
【0053】次に、この画像回転処理装置の記憶部14
の回転処理に必要なメモリ容量について説明する。
【0054】ここで、記憶部14のメモリを2Mバイト
(2×1024×1024=2097152ドット)と
し、「A4」サイズで解像度400dpi(4672×
3296)の入力画像データ(4672/8×3296
=1924864バイト)を上述したようにブロック単
位が8×8ビットで90度の回転処理する場合を考え
る。
【0055】この場合、回転前記憶領域14aに必要な
メモリは、1924864バイトであり、回転後記憶領
域14bに必要なメモリは、(3296ドット/8)×
8=3296バイトであり、90度回転処理に必要なメ
モリは、1924864バイト+3296バイト=19
28160バイトとなる。従って、記憶部14は、2M
バイトのメモリサイズで十分である。
【0056】なお、この場合における総ブロック数は、
(4672/8)×(3296/8)=240608個
であり、1つのブロックラインのブロック数は3296
/8=421個となる。
【0057】このように、記憶部14は、入力画像デー
タを記憶するメモリと1つのブロックラインデータを記
憶するメモリのみを必要とし、入力画像データを記憶す
るメモリとほぼ同等のメモリ容量のみで回転処理を行う
ことができるとともに、この回転処理中に1ブロックラ
インデータごとに出力装置に転送出力するという回転・
出力の並列処理を行うので、小メモリ容量で効率的な回
転処理が可能となる。
【0058】次に、回転前補間部11の動作について説
明する。
【0059】すなわち、上述したブロック単位は、8×
8ビットであり、通常の画像データはバイト単位である
ため補間する必要はないが、回転のためのブロック単位
が16×16ビットの場合、入力画像データがバイト単
位であっても、残余のデータ(8ビット)が生じる場合
がある。以下この場合の回転前の補間について説明す
る。
【0060】図3は、図1の画像回転処理装置が16×
16ビットのブロック単位で回転処理する場合の補間を
説明する図である。
【0061】図3(a)は、入力装置1から入力された
入力画像データの回転前記憶領域14aでの記憶された
状態を示している。この入力画像データは、文字「A」
の内容をもつ幅24ドット、高さ40ラインの画像デー
タ(実画像データ)であり、8×8ビットのブロック単
位で回転処理される場合は、ブロック行Rが「3」でブ
ロック列Cが「5」すなわち15個(3×5=15)の
ブロックデータに分割されて記憶されるものである。し
かし、16×16ビットのブロック単位で回転処理を行
うため、割り切れない場合が生じる。
【0062】すなわち、入力画像データの回転前の幅
(ドット)をブロック単位の値の幅M=16で除算し、
余りAが生じる場合、および入力画像データの高さ(ラ
イン)をブロック単位の値の高さN=16で除算し、余
りBが生じる場合、回転処理前に補間を行う。
【0063】まず、反時計方向に90度回転を行う場合
の補間について説明する。この場合、回転前補間部11
は、入力された実画像データを90度の回転指示情報に
基づいて回転前に次のような補間処理を行う。
【0064】すなわち、図3(b1)において、ブロッ
ク単位の値の幅M=16から余りA=8を減算した補間
幅A1=8を算出し、このA1=8ドット分の「0」デ
ータを実画像データの先頭に追加し、ブロック単位の値
の高さN=16から余りB=8を減算した補間高さB1
=8を算出し、このB1=8ライン分の「0」ラインを
実画像データの最後に追加する補間を行う。
【0065】これにより、図3(c1)に示すように、
回転後の実画像データが含まれない補間部分が、最後の
ブロックラインBL1の下位ラインに含まれ、また各ブ
ロックラインの最後のブロックBD11,BD12の下
位ドットに含まれて出力される。
【0066】次に、反時計方向に180度回転を行う場
合の補間について説明する。この場合、回転前補間部1
1は、入力された実画像データを180度の回転指示情
報に基づいて回転前に次のような補間処理を行う。
【0067】すなわち、図3(b2)において、ブロッ
ク単位の値の高さN=16から余りB=8を減算した補
間高さB2=8を算出し、このB1=8ライン分の
「0」ラインを実画像データの先頭に追加し、ブロック
単位の値の幅M=16から余りA=8を減算した補間幅
A2=8を算出し、このA2=8ドット分の「0」デー
タを実画像データの先頭に追加する補間を行う。
【0068】これにより、図3(c2)に示すように、
回転後の実画像データが含まれない補間部分が、最後の
ブロックラインBL2の下位ラインに含まれ、また各ブ
ロックラインの最後のブロックBD21,BD22,B
D23の下位ドットに含まれて出力される。
【0069】次に、反時計方向に270度回転を行う場
合の補間について説明する。この場合、回転前補間部1
1は、入力された実画像データを270度の回転指示情
報に基づいて回転前に次のような補間処理を行う。
【0070】すなわち、図3(b3)において、ブロッ
ク単位の値の高さN=16から余りB=8を減算した補
間高さB3=8を算出し、このB3=8ライン分の
「0」ラインを実画像データの先頭に追加し、ブロック
単位の値の幅M=16から余りA=8を減算した補間幅
A3=8を算出し、このA3=8ドット分の「0」デー
タを実画像データの最後に追加する補間を行う。
【0071】これにより、図3(c3)に示すように、
回転後の実画像データが含まれない補間部分が、最後の
ブロックラインBL3の下位ラインに含まれ、また各ブ
ロックラインの最後のブロックBD31,BD32,B
D33の下位ドットに含まれて出力される。
【0072】なお、回転のブロック単位が16×16ビ
ットでない場合も同様に所定のブロック単位として補間
することができる。例えば、32×32ビットのブロッ
ク単位としてもよい。
【0073】これにより、回転処理された画像データ
は、出力装置から最後に出力される位置で回転処理前に
補間されるため、迅速な回転処理が可能となる。
【0074】次に、図1の画像回転処理装置の全体動作
をフローチャートに基づいて説明する。
【0075】図4は、図1の画像回転処理装置の全体動
作手順を示すフローチャートである。
【0076】この画像回転処理装置の全体動作は、大き
く2つのフェーズに分けることができ、第1のフェーズ
は画像データの入力処理であり、第2のフェーズは画像
データの回転処理である。
【0077】まず、第1のフェーズである画像データの
入力処理について説明する。
【0078】ワークステーション等の入力装置1から回
転処理対象の入力画像データと回転指示情報が画像回転
処理装置10に入力される(ステップ101)と、回転
前補間部11は、補間が必要か否かを判断し(ステップ
102)、補間が必要である場合は、ステップ105に
移行し、回転指示情報の回転角度を判断して、これに対
応する補間処理を実行する。すなわち、回転角度が90
度である場合は、図3(b1)で示した90度回転時の
補間処理を行い(ステップ106)、回転角度が180
度である場合は、図3(b2)で示した180度の補間
処理を行い(ステップ107)、回転角度が270度で
ある場合は、図3(b3)で示した270度の補間処理
を行い(ステップ108)、ステップ103に移行す
る。
【0079】一方、ステップ102において、補間が必
要でない場合、すなわち余りAあるいは余りBが生じな
い場合は、ステップ103に移行し、画像データを回転
前記憶領域14aに記憶する。そして、全ての画像デー
タの書き込みが終了するまで、上記処理を繰り返す(ス
テップ104)。
【0080】このようにして、入力画像データに補間が
必要である場合は補間処理を行った後、ブロック単位の
画像データとして回転前記憶領域14aに記憶される。
【0081】次に、第2のフェーズである画像データの
回転処理について説明する。
【0082】上述した画像データの入力処理により、回
転前記憶領域14aには、ブロック単位に分割された画
像データが記憶された状態となっている。
【0083】この画像データに対して、回転順序指示/
読取部12は、回転指示情報に対応する式f90(x,
y),f180(x,y),f270(x,y)をもとに、回
転処理後のブロック行列の順序に対応する回転前のブロ
ックデータの先頭アドレスを算出し、該当するブロック
データを順次取り出す(ステップ109)。そして、分
割回転部13は、回転指示情報の回転角度に基づいて、
回転順序指示/読取部12で取り出されたブロックデー
タの回転処理を行う(ステップ110)。そして、回転
処理されたブロックデータを回転後記憶領域14bに記
憶する(ステップ111)。その後、1つのブロックラ
インデータの回転が終了したか否かを判断し(ステップ
112)、終了しない場合は、ステップ109に移行
し、上記処理を繰り返す。
【0084】一方、ステップ112において1つのブロ
ックラインデータの回転が終了した場合は、ステップ1
13に移行し、出力制御部15は、この1つのブロック
ラインデータを出力装置2に転送出力する。その後、全
ブロックデータの回転が終了したか否かを判断し(ステ
ップ114)、終了しない場合は、ステップ109に移
行し、上記処理を繰り返す。一方、ステップ114にお
いて、全ブロックデータの処理が終了した場合は、本処
理を終了する。
【0085】このように、第1のフェーズで入力処理を
行い、その後第2のフェーズで転送処理を行っている。
【0086】なお、上記実施例においては、入力装置1
がワークステーション等とし、出力装置2をプリンタ等
としたが、逆に、入力装置1がイメージスキャナで、出
力装置2がワークステーションであってもよい。
【0087】このように本実施例においては、記憶部1
4の回転処理に必要なメモリは、入力画像データとほぼ
同等のメモリであり、少ないメモリで回転処理を行うこ
とができるとともに、回転・出力処理を並列的に行える
ため、少ないメモリで効率的に回転後の画像データを出
力できる。また、ブロック単位に一致しない入力画像デ
ータは、回転処理前の第1のフェーズで補間処理が独立
に行われるため、補間の必要がある場合でも回転処理能
力に影響を及ぼすことはない。
【0088】
【発明の効果】以上詳細に説明したように、本発明で
は、入力画像データを、第1の記憶手段に所定のブロッ
ク単位で記憶する。そして、読出手段が、90度単位の
回転情報に基づいて、90度単位の回転後に出力装置の
最初の主走査方向となる回転後のブロック行に対応する
回転前のブロックデータを第1の記憶手段から順次読出
す。そして、このブロックデータを回転処理し、この回
転処理されたブロックデータを出力装置の1ブロック行
分のブロックデータとして少なくとも1ブロック行分第
2の記憶手段に記憶するとともに、出力制御手段が、前
記第2の記憶手段に記憶された少なくとも1ブロック行
分のブロックデータを出力装置に転送出力して、回転処
理された全画像データを出力する。
【0089】すなわち、入力画像データの回転処理とと
もに出力装置から回転処理された画像データを出力する
という並列処理を行うことができるので、回転処理後の
画像データを効率的に出力し、画像回転処理装置全体の
処理能力を向上することができるという利点を有する。
【0090】また、回転処理に必要なメモリは、入力画
像データを記憶するメモリと回転処理後の1ブロックラ
インデータを記憶するメモリのみであり、少ないメモリ
で回転処理を行うことができる。
【0091】また、本発明は、回転処理前の入力画像デ
ータに対するブロック単位の分割時に残余の部分が生じ
た場合、補間手段が、回転処理前に、該残余の部分が回
転後の最後のブロック行およびブロック列となる補間を
する。
【0092】このため、補間された画像データか否かに
関係なく、その後の回転処理が行われるので、回転処理
自体の能力に影響を与えず、無駄のない効率的な回転処
理を行うことができるという利点を有する。
【0093】また、この補間手段による補間を回転前に
行うようにしているので、その後の回転処理に合わせた
補間動作の変更を行うのみで、回転処理固有の回転のた
めのブロック単位を変更する必要がないという利点を有
する。
【0094】さらに、入力画像データとブロック単位の
関係から残余のデータ部分が存在する場合に、この残余
のデータを含むブロック単位における余白の不要データ
が生じるが、この不要データに対する補間を回転角度に
応じて回転処理前に行うようにしているので、回転処理
により残余のデータのズレが生じないという利点を有す
る。
【図面の簡単な説明】
【図1】本発明の一実施例である画像回転処理装置の構
成を示すブロック図。
【図2】入力画像データの回転・出力処理を説明する
図。
【図3】図1の画像回転処理装置が16×16ビットの
ブロック単位で回転処理する場合の補間を説明する図。
【図4】図1の画像回転処理装置の全体動作手順を示す
フローチャート。
【図5】従来の画像回転処理装置の回転処理動作を説明
する図。
【図6】画像メモリ量を少なくした従来の画像回転処理
装置の回転処理動作を説明する図。
【符号の説明】
1 入力装置 2 出力装置 10 画像回転処理装置 11 回転前補間部 12 回転順序指示/読取部 1
3 分割回転部 14 記憶部 15 出力制御部 14a 回転前記憶
領域 14b 回転後記憶領域
フロントページの続き (72)発明者 末延 洋 神奈川県川崎市高津区坂戸3丁目2番1号 KSP R&D ビジネスパークビル 富士ゼロックス株式会社内

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 入力画像データを90度単位に回転処理
    して出力装置に出力する画像回転処理装置において、 入力画像データをブロック単位にブロック行(R)とブ
    ロック列(C)に分割したR×C個のブロックデータを
    記憶する第1の記憶手段と、 90度単位の回転後に前記出力装置の最初の主走査方向
    となる回転後のブロック行の前記ブロックデータを順次
    読出す読出手段と、 前記読出手段で読み出されたブロックデータを回転処理
    する回転処理手段と、 前記回転処理手段で回転処理されたブロックデータを前
    記出力装置の1ブロック行分のブロックデータとして少
    なくとも1ブロック行分記憶する第2の記憶手段と、 前記第2の記憶手段に記憶された少なくとも1ブロック
    行分のブロックデータを出力する出力制御手段とを具備
    したことを特徴とする画像回転処理装置。
  2. 【請求項2】 入力画像データを90度単位に回転処理
    して出力装置に出力する画像回転処理装置において、 入力画像データをブロック単位にブロック行(R)とブ
    ロック列(C)に分割したR×C個のブロックデータを
    記憶する第1の記憶手段と、 90度単位の回転後に前記出力装置の最初の主走査方向
    となる回転後のブロック行の前記ブロックデータを順次
    読出す読出手段と、 前記読出手段で読み出されたブロックデータを回転処理
    する回転処理手段と、 前記第1の記憶手段に記憶される前記入力画像データを
    前記ブロック単位で分割して記憶する時に、該入力画像
    データを前記ブロック単位で分割した時に残余の部分デ
    ータがある場合、該残余の部分データが前記回転処理手
    段による回転処理後の最後のブロック行およびブロック
    列となる補間をする補間手段と、 前記回転処理手段で回転処理されたブロックデータを前
    記出力装置の1ブロック行分のブロックデータとして少
    なくとも1ブロック行分記憶する第2の記憶手段と、 前記第2の記憶手段に記憶された少なくとも1ブロック
    行分のブロックデータを出力する出力制御手段とを具備
    したことを特徴とする画像回転処理装置。
JP04010293A 1993-03-01 1993-03-01 画像回転処理装置 Expired - Fee Related JP3147567B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP04010293A JP3147567B2 (ja) 1993-03-01 1993-03-01 画像回転処理装置
KR1019930021749A KR0128045B1 (ko) 1993-03-01 1993-10-20 화상 회전 처리 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP04010293A JP3147567B2 (ja) 1993-03-01 1993-03-01 画像回転処理装置

Publications (2)

Publication Number Publication Date
JPH06253129A true JPH06253129A (ja) 1994-09-09
JP3147567B2 JP3147567B2 (ja) 2001-03-19

Family

ID=12571506

Family Applications (1)

Application Number Title Priority Date Filing Date
JP04010293A Expired - Fee Related JP3147567B2 (ja) 1993-03-01 1993-03-01 画像回転処理装置

Country Status (2)

Country Link
JP (1) JP3147567B2 (ja)
KR (1) KR0128045B1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101037624B1 (ko) * 2009-06-19 2011-05-30 (주)실리콘화일 메모리를 사용하지 않고 구현되는 이미지 회전 방법 및 장치

Also Published As

Publication number Publication date
KR940023238A (ko) 1994-10-22
KR0128045B1 (ko) 1998-04-02
JP3147567B2 (ja) 2001-03-19

Similar Documents

Publication Publication Date Title
US4875173A (en) Image enlarging method and device
EP0794510B1 (en) High speed system for image scaling
US6310986B2 (en) Image rotation assist circuitry and method
US5771105A (en) High speed system for grey level image scaling, threshold matrix alignment and tiling, and creation of a binary half-tone image
JP2000158720A (ja) バーコード印刷装置
US6633975B1 (en) Data processing system having plurality of processors and executing series of processings in prescribed order
US7508538B2 (en) Image data rotation apparatus
JP3147567B2 (ja) 画像回転処理装置
JPH06334834A (ja) 画像処理装置
JPH11306343A (ja) 2次元データ回転処理装置
US6980701B1 (en) Image processing method and apparatus capable of rotating and reversing an input image
JP2745957B2 (ja) 画像回転処理装置
JP2005109856A (ja) 画像回転回路及びそれを有する画像処理装置
JP3092579B2 (ja) 画像データ回転処理方法及び画像データ回転処理装置
JPH0241267A (ja) 像形成装置
JP3247441B2 (ja) 画像処理装置
JP3028692B2 (ja) 画像回転装置
JPH0520450A (ja) 画像処理装置
JP3019906B2 (ja) 画像処理装置
JP3877054B2 (ja) 画像縮小変倍装置
JPH0563959A (ja) 画像処理方法および装置
JP2537830B2 (ja) 画像処理装置
JP4158695B2 (ja) 画像処理方法及び画像処理装置
JP3016372B2 (ja) 画像処理装置
KR900006716Y1 (ko) 화상정보메모리 제어회로

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080112

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090112

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100112

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110112

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120112

Year of fee payment: 11

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120112

Year of fee payment: 11

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130112

Year of fee payment: 12

LAPS Cancellation because of no payment of annual fees