JPH0877343A - ラスター/ブロック変換方法並びにこの方法を実施する装置 - Google Patents

ラスター/ブロック変換方法並びにこの方法を実施する装置

Info

Publication number
JPH0877343A
JPH0877343A JP6214477A JP21447794A JPH0877343A JP H0877343 A JPH0877343 A JP H0877343A JP 6214477 A JP6214477 A JP 6214477A JP 21447794 A JP21447794 A JP 21447794A JP H0877343 A JPH0877343 A JP H0877343A
Authority
JP
Japan
Prior art keywords
block
raster
conversion
address
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
JP6214477A
Other languages
English (en)
Other versions
JP3503711B2 (ja
Inventor
Atsushi Oshima
淳 大島
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.)
Ricoh Co Ltd
Original Assignee
Ricoh 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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP21447794A priority Critical patent/JP3503711B2/ja
Publication of JPH0877343A publication Critical patent/JPH0877343A/ja
Application granted granted Critical
Publication of JP3503711B2 publication Critical patent/JP3503711B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Image Processing (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Image Input (AREA)

Abstract

(57)【要約】 【目的】 大きなメモリ容量のメモリを備えることなく
ラスター/ブロック変換が行えるようにすること等を目
的とする。 【構成】 Aを現在のアドレス座標とし、A′を次のア
ドレス座標とし、Bを加算値とし、Cを水平方向ピクセ
ル数とし、χをブロックの水平方向一辺のピクセル数と
し、XをC/χの演算で求めた値とし、Yを変換回数と
するとき(ステップ1)、XY >(C−1)の関係が成
立した場合は、XY /(C−1)の式における余りをB
とし(ステップ4,5)、XY >(C−1)の関係が成
立しない場合は、XY の演算結果をBとし(ステップ
3,4)、上記求めたBに基づき、A′=A+Bの式に
よって次のアドレスを求めてラスターデータをブロック
データに変換する(ステップ6〜8)。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、画像圧縮処理等に用い
ることができるラスター/ブロック変換方法並びにこの
方法を実施する装置に関する。
【0002】
【従来の技術】従来の画像処理においては、画像データ
をラスター(線順次に並ぶ水平方向の画像データ)とし
てピクセル毎のデータ処理を行うことが主流であった。
しかし、近年の画像圧縮技術の向上等に伴い、上記ラス
ターで画像処理を行うよりも、ブロック(水平方向×垂
直方向のブロック状の画像データ群)で画像処理を行う
ことが多くなってきている。特に、カラー静止画におい
ては、JPEG方式がブロックで画像処理を行うように
規格化されたため、ラスター/ブロック変換装置の重要
度が増している。
【0003】
【発明が解決しようとする課題】ところで、従来のラス
ター/ブロック変換装置において、当該変換処理をソフ
トウェアによって実行する場合は、1画面分の画像デー
タをフレームメモリに格納して必要なアドレスを発生す
るようにしており、ハードウェアによって実行する場合
には、画面サイズによってアドレスを指示するようにし
ていた。
【0004】図14は、1画面分の画像データを格納す
るフレームメモリを使用してブロック→ラスター変換を
行う場合の処理内容を示したフローチャートである。
【0005】このフローチャートにおいて、Aはアドレ
ス、Bは水平方向ピクセル数/8の値(8×8ブロック
を想定している)である。まず、初期化を実行し(ステ
ップ71)、次に、カウントUP要因(本発明の実施例
を参照)に基づきカウントUPするか否かを判断する
(ステップ72)。カウントUPする場合には、Cの値
が8に一致するか否かを判断する(ステップ73)。C
の値が8に一致した場合には、D=D+1、A=A+
(8×D)、及びC=0の処理を実行する(ステップ7
4)。一方、一致しない場合には、A=A+B、及びC
=C+1の処理を実行する(ステップ75)。
【0006】しかしながら、上記のラスター/ブロック
変換においては、1画面分のフレームメモリを備える必
要があるためコストが割高になる。また、ハードウェア
では画面サイズによりアドレスを指示しており、画面サ
イズが大きくなればそれだけ大きなメモリが必要になっ
てコスト高になる。また、画面サイズが違えば異なるア
ドレスを発生させる必要があるが、これに対応すること
はできなかった。
【0007】本発明は、上記の事情に鑑み、大きなメモ
リ容量のメモリを備えることなくラスター/ブロック変
換を行うことができ、また、画面サイズの相違で変化す
る演算係数を任意に変更可能としてアドレスを自動的に
発生することのできるラスター/ブロック変換方法並び
にこの方法を実施する装置を提供することを目的とす
る。
【0008】
【課題を解決するための手段】本発明のラスター/ブロ
ック変換方法は、Aを現在のアドレス座標とし、A′を
次のアドレス座標とし、Bを加算値とし、Cを水平方向
ピクセル数とし、χを1ブロックの水平方向ピクセル数
とし、XをC/χの演算で求めた値とし、Yを変換回数
とするとき、XY >(C−1)の関係が成立した場合
は、XY /(C−1)の式における余りをBとし、XY
>(C−1)の関係が成立しない場合は、XY の演算結
果をBとし、上記求めたBに基づき、A′=A+Bの式
によって次のアドレスを求めてラスターデータをブロッ
クデータに変換する一方、χY >(C−1)の関係が成
立した場合は、χY /(C−1)の式における余りをB
とし、χY >(C−1)の関係が成立しない場合は、χ
Y の演算結果をBとし、上記求めたBに基づき、A′=
A+Bの式によって次のアドレスを求めてブロックデー
タをラスターデータに変換することを特徴とする。
【0009】また、上記方法におけるXY の値或いはχ
Y を、カウント回数がX或いはχに至るまで同一値を順
次加算させた値を用いることにより得るとともに、ブロ
ックの大きさで定まるメモリ内の全ピクセルに対する変
換処理終了後の次の変換処理に際して上記順次加算させ
た値を上記同一値とするようにしてもよい。
【0010】また、本発明のラスター/ブロック変換方
法においては、ブロックの大きさに対応して変数を適宜
変更することを特徴とするようにしてもよい。
【0011】また、本発明のラスター/ブロック変換装
置は、上記ラスター/ブロック変換方法を実施するため
に、カウント回数がX或いはχに至るまで同一値を順次
加算させる加算手段と、ブロックの大きさで定まるメモ
リ内の全ピクセルに対する変換処理終了後の次の変換処
理に際して上記順次加算させた値を上記同一値とするた
めのラッチ手段とを備えている。
【0012】
【作用】上記第1の構成によれば、水平方向ピクセル数
×ブロックの一辺のピクセル数のメモリ容量があればラ
スター/ブロック変換を行うことができま。また、外部
で設定された任意の画面サイズにおいてラスター/ブロ
ック変換のためのメモリのアドレスを自動的に発生する
ことができる。しかも、ラスター→ブロック変換とブロ
ック→ラスター変換とを同じ演算式(係数を違えるの
み)によって行うことができる。
【0013】上記第2、第4の構成によれば、乗算処理
を行わずに、加算処理によって変換のためのアドレスを
生成することができる。
【0014】上記第3の構成によれば、ブロックの大き
さに対応して係数を任意に変更するので、一般的な8×
8ピクセルのブロックだけでなく、例えば、16×16
ピクセルのブロックにも容易に対応することができる。
【0015】
【実施例】
(実施例1)以下、本発明のその実施例を示す図に基づ
いて説明する。本実施例では、ソフトウェアによってラ
スター/ブロック変換を実行する。
【0016】(ラスター→ブロック変換)まず、ラスタ
ーからブロック(8×8)への変換処理を示す。ラスタ
ーからブロックへの変換処理は、以下のようにメモリに
対する読出・書込アドレスを生成することによって行わ
れる。
【0017】読出・書込アドレスA′は、現在のアドレ
スであるAと、以下の計算によって与えられる加算値B
とを加算することによって得られる。加算値Bは、XY
>(C−1)の関係が成立した場合には、XY /(C−
1)の余りの値(後記するように、XY %(C−1)で
表わせる)であり、XY >(C−1)の関係が成立しな
い場合には、XY の値である。上記Xは、C/χの計算
により算出される。Cは水平方向ピクセル数であり、χ
はブロックの大きさ(ブロックの水平方向ピクセル数)
であり、Yは変換回数である。本実施例では、8×8ブ
ロックとしているので、χ=8となる。
【0018】以上の関係および各変数をまとめて示す
と、以下のようになる。
【0019】
【数1】XY >(C−1)の関係が成立した場合 B=XY %(C−1) XY >(C−1)の関係が成立しない場合 B=XY A′=A+B A=現在のアドレス座標 A′=次のアドレス座標 B=加算値 C=水平方向ピクセル数 χ=ブロックの大きさ(本実施例ではχ=8) X=C/χ Y=変換回数
【0020】図1は、ラスターからブロックへの変換処
理を示すフローチャートである。まず、ステップ1で
は、各変数の初期化処理を行う。次に、カウントアップ
決定要因に基づいてカウントアップするか否かを判断す
る(ステップ2)。このカウントアップを決定する要因
とは、以下のような場合を意味する。例えば、ブロック
が8×8から成るとき、この8×8ブロックにおける一
列の8個分のアドレスを発生させる場合、この8個のド
レスはアドレス信号の下位3ビットにおいて“000〜
111”で表すことができ、そして、その次のアドレス
を発生するためには第4ビット目に桁上げをする必要が
あるが、この桁上げが必要になる時点をカウントアップ
要因としている。
【0021】ステップ2でカウントアップを実行すべき
と判断した場合には、B=XY の計算を実行する(ステ
ップ3)。次に、B>(C−1)か否かを判断する(ス
テップ4)。ステップ4でYESとされるのは、XY
(C−1)の関係が成立した場合であるので、B=B%
(C−1)の計算を実行する(ステップ5)。ステップ
3ではB=XY の計算を行っているので、ステップ5の
計算は、XY /(C−1)の余りをBとする処理が行わ
れたことになる。そして、このように算出されたBを用
いて次のアドレスであるA′を、A=A+Bの計算処
理、及びA′=Aの処理によって求める(ステップ
6)。
【0022】一方、ステップ4でNOとされた場合は、
Y >(C−1)の関係が成立しない場合であるので、
ステップ3で求めたB(B=XY )を用いて、そのまま
A=A+Bの計算、及びA′=Aを実行する(ステップ
6)。
【0023】以上のようにして求められた次のアドレス
A′によってメモリに対する読出・書込が実行される。
【0024】上記ステップ6の処理の後、A′の値と
(C−1)の値とが一致するか否かを判断する(ステッ
プ7)。一致しなければ、ステップ2に進む一方、一致
したならば、A′=0及びA=0の処理を実行するとと
もに、Yをインクリメントする処理を実行し(ステップ
8)、ステップ2に進む。
【0025】以上の処理が実行されることにより、図2
乃至図4に示すように、メモリにデータが格納されてい
くことになる。なお、この図は、8×56のラインメモ
リの内容を示したものであり、8×56個の枠中の数字
は、線順次に並ぶピクセルの番号を示している。また、
図2は0回目(Y=0)の時点のメモリ内容を、図3は
1回目(Y=1)の時点のメモリ内容を、図4は2回目
(Y=2)の時点のメモリ内容を示している。
【0026】また、この例では、水平方向のピクセル数
は56なのでC=56となり、8×8のブロックとする
のでX=7(56/8)となる。なお、本実施例では、
このようにラインメモリを用いた例を示しているが、本
方法においても、1画面メモリを用いることが可能であ
る。
【0027】次に、図1のフローチャートに従って処理
の内容を具体的に説明する。まず、初期化後の最初のス
テップ3で行われる計算では、Y=0なので、XY =7
0 =1となる。従って、XY >(C−1)は成立せず、
ステップ4ではNOと判断され、ステップ6に進むこと
になる。前記のステップ3の処理によってB=1となっ
ているので、ステップ6では、A=A+1の計算、及び
A′=Aの処理によって次のアドレスA′を算出するこ
とになる。以上の処理は、A=(56−1)となるまで
繰り返し実行される。
【0028】ここで、0〜7までの合計8個のアドレス
は、アドレス信号の下位3ビットを000〜111まで
順にインクリメントすることにより行うことができる。
その次の8〜15までの合計8個のアドレスは、第4ビ
ット目を“1”とし、3ビットの信号を000〜111
まで順にインクリメントすればよいことになる。以後の
8個のアドレス発生も、同様に、第4ビット目以上にお
いて順次桁上げを実行していけばよい。この第4ビット
目以上において順次桁上げをする処理は、カウントアッ
プ要因が発生する毎にステップ2でYESとされ、ステ
ップ6を経ることにより実行される。
【0029】前記のA=A+1、及びA′=Aで得られ
るA′は、既に述べたように、上記第4ビット目以上の
値に対応しており、このA′は下位3ビットが000〜
111を繰り返す毎に1ずつ増加するため、図2のごと
く、メモリのアドレス順にデータが格納されていくこと
になる。具体的には、Aの値が“0”のときは0〜7番
地、“1”のときは、8〜15番地、というようにアド
レスが生成されてデータが格納されていく。なお、この
図2に示した状態では、当初のメモリにはデータが格納
されていないため、上記のごとく生成されたアドレスに
よってデータの書込のみが行われる。
【0030】ステップ7においてA′=(56−1)と
なると、ステップ8に進む。上記の“56”は、二進数
で表すと“111000”である。A′は前述のよう
に、第4ビット目以上の値に対応している。“1110
00”が上記A′として第4ビット目〜第9ビット目の
値であるため、その十進数値は、“448”になる。即
ちA′=(56−1)なるときのアドレスは、メモリの
最終番地である447番地であり、当該メモリ全体の処
理を終了したことになる。
【0031】そして、ステップ8で、AとA′のクリ
ア、及びYのインクリメントを実行し、再びステップ2
に進むことになる。
【0032】上記ステップ8を経てステップ2に進む場
合、Y=1となっているため、XY=71 =7となる。
この場合も、ステップ3,4において、XY >(C−
1)は成立せず、B=XY =7となる。従って、ステッ
プ6において、A=A+7の計算及びA′=Aの処理に
よって次のアドレスが算出される。
【0033】前記のA=A+7、及びA′=Aで得られ
るA′は、既に述べたように、上記第4ビット目以上の
値に対応しており、このA′は下位3ビットが000〜
111を繰り返す毎に7ずつ増加するため、図3のごと
く、56個飛びにメモリのアドレスが生成され、そのア
ドレスに次のデータが格納されていくことになる。
【0034】具体的には、Aの値が“0”のときは0〜
7番地には次のデータにおける0〜7が、“7”のとき
は56〜63番地には次のデータにおける8〜15が、
というように生成されたアドレスにデータが格納されて
いく。即ち、図2における0〜7,56〜63,112
〜119,……,392〜399のデータが読み出され
ると同時に、図3に示すように、上記ブロック枠内に、
次のデータにおける0〜7,8〜15,16〜23,…
…,56〜63の8個ずつのデータが書き込まれること
になる。
【0035】ここで、或るアドレスに0〜7を加算して
得られる合計8個のアドレスは、第4ビット目以上のビ
ットを上記或るアドレスに対応させるとともに下位3ビ
ットを000〜111まで順にインクリメントすること
により発生させることができる。図3の場合であれば、
0〜7のデータは0〜7のアドレスに、8〜15のデー
タは、56〜63のアドレスに、という具合であり、上
記或るアドレスといのは、この場合、“0”,“5
6”,“112”,…,“392”という具合になる。
【0036】前記のA=A+7の計算とA′=Aの処理
で得られるA′は、前述したように、第4ビット目以上
のビットに対応している。A′=7であるとき、この7
を二進数で表せば、“111”であり、この“111”
を第4〜第6ビットに当てはめれば、この“111”は
十進数で“56”を意味することになる。また、A′=
14であるとき、この14を二進数で表せば、“111
0”であり、この“1110”を第4〜第7ビットに当
てはめれば、この“1110”は十進数で“112”を
意味することになる。
【0037】即ち、前記のA=A+7の計算とA′=A
の処理で得られるA′は、前記の或るアドレスである
“0”,“56”,“112”,…,“392”を表す
ものとなる。このような或るアドレス(先頭アドレス)
の生成とそれに追加される下位3ビットのインクリメン
トにより、図3のごとく、8×8ブロックのデータ読出
が行われることになる。
【0038】次に、ステップ7においてA′=(56−
1)となると、ステップ8に進む。上記の“56”は、
二進数で表すと“111000”である。A′は前述の
ように、第4ビット目以上の値である。“11100
0”が上記A′として第4ビット目〜第9ビット目の値
であるため、その十進数値は、“448”になる。即ち
A′=(56−1)なるときのアドレスは、メモリの最
終番地である447番地であり、当該メモリ全体の処理
を終了したことになる。
【0039】そして、ステップ8で、AとA′のクリア
と、Yのインクリメントを実行し、再びステップ2に進
むことになる。
【0040】上記ステップ8を経てステップ2に進む場
合、Y=2となっているため、XY=72 =49とな
る。この場合も、ステップ3,4において、XY >(C
−1)は成立せず、B=XY =49となる。従って、ス
テップ6において、A=A+49の計算及びA′=Aの
処理によって次のアドレスが算出される。
【0041】前記のA=A+49およびA′=Aで得ら
れるA′は、既に述べたように、上記第4ビット目以上
の値に対応しており、このA′は下位3ビットが000
〜111を繰り返す毎に49ずつ増加するため、図4の
ごとく、392個飛びにメモリのアドレスが生成され、
そのアドレスに次のデータが格納されていくことにな
る。
【0042】具体的には、Aの値が“0”のときは0〜
7番地に次のデータにおける0〜7を、“49”のとき
は56〜63番地に次のデータにおける8〜15を、と
いうように生成されたアドレスにデータが格納されてい
く。即ち、図3における0〜7,56〜63,112〜
119,……,392〜399のデータが読み出される
と同時に、図4に示すように、その読み出したアドレス
に、次のデータにおける0〜7,8〜15,16〜2
3,……,56〜63のデータが書き込まれることにな
る。
【0043】次に、ステップ8を経てステップ2に進む
場合、Y=3となっているため、XY =73 =343と
なる。この場合は、ステップ3,4において、XY
(C−1)が成立するので、B=XY /(C−1)=1
3となる。従って、ステップ6において、A=A+13
の計算及びA′=Aの処理によって次のアドレスが算出
される。
【0044】以後同様の処理が実行され、上記の如くラ
インメモリを用いて1画面のデータについてラスターか
らブロックへの変換処理が実行されることになる。
【0045】(ブロック→ラスター変換)次に、ブロッ
ク(8×8)からラスターへの変換処理を示す。ブロッ
クからラスターへの変換処理は、以下のようにメモリに
対する読出・書込アドレスを生成することによって行わ
れる。
【0046】算出すべき読出・書込アドレスをA′は、
現在のアドレスであるAと、以下の計算によって与えら
れる加算値Bとを加算することによって算出される。加
算値Bは、χY >(C−1)の関係が成立した場合に
は、χY /(C−1)の余りであり、χY >(C−1)
の関係が成立しない場合には、χY である。上記Cは水
平方向ピクセル数であり、χはブロックの大きさであ
り、Yは変換回数である。本実施例では、8×8ブロッ
クとしているので、χ=8となる。
【0047】以上の関係および各変数のをまとめて示せ
ば、以下のようになる。なお、変数の定義は数1の場合
と同じである。
【0048】
【数2】χY >(C−1)の関係が成立した場合 B=χY %(C−1) χY >(C−1)の関係が成立しない場合 B=χY A′=A+B
【0049】図5は、ブロックからラスターへの変換処
理を示すフローチャートである。まず、ステップ11で
は、各変数の初期化処理を行う。次に、カウントアップ
するか否かを判断する(ステップ12)。このカウント
アップを決定する要因は、図1のフローチャートの場合
と同様である。
【0050】ステップ12でカウントアップを実行すべ
きと判断した場合には、B=χY の計算を実行する(ス
テップ13)。次に、B>(C−1)か否かを判断する
(ステップ14)。ステップ14でYESとされた場合
は、χY >(C−1)の関係が成立した場合であるの
で、B=B%(C−1)の計算を実行する(ステップ1
5)。この計算は、ステップ13でB=XY の計算を行
っているので、χY /(C−1)の余りをBとする処理
が行われたことになる。そして、このように算出された
Bを用いて次のアドレスであるA′を、A=A+Bの計
算処理、及びA′=Aの処理によって求める(ステップ
16)。
【0051】一方、ステップ14でNOとされた場合
は、χY >(C−1)の関係が成立しない場合であるの
で、ステップ13で求めたB(B=χY )を用いて、そ
のままA=A+Bの計算を実行する(ステップ16)。
【0052】以上のようにして求められた次のアドレス
A′によってメモリに対する読出・書込が実行される。
【0053】上記ステップ6の処理の後、A′の値と
(C−1)の値とが一致するか否かを判断する(ステッ
プ7)。一致しなければ、ステップ2に進む一方、一致
したならば、A′=0及びA=A′の処理を実行すると
ともに、Yをインクリメントする処理を実行し(ステッ
プ8)、ステップ2に進む。
【0054】以上の処理が実行されることにより、図6
乃至図8に示すように、メモリにデータが格納されてい
くことになる。
【0055】図6は0回目(Y=0)の時点のメモリ内
容を示している。0回目では、A=A+1、及びA′=
Aによって次のアドレスA′が求められるため、ラスタ
ー→ブロック変換における0回目と同様のアドレス生成
が実行されることになる。
【0056】図7は1回目(Y=1)の時点のメモリ内
容を示している。1回目では、A=A+8、A′=Aに
よって次のアドレスA′が求められるため、ラスター→
ブロック変換におけるA=A+7、A′=Aにおける処
理によるアドレス生成に対して、8個分増加したアドレ
スの生成が行われる。
【0057】図8は2回目(Y=2)の時点のメモリ内
容を示している。1回目では、A=A+9、A′=Aに
よって次のアドレスA′が求められるため、ラスター→
ブロック変換におけるA=A+7、A′=Aにおける処
理によるアドレス生成に対して、16個分増加したアド
レスの生成が行われる。
【0058】なお、図6〜図8のメモリ内容と図2〜図
4のメモリ内容との間には、対応関係はない。
【0059】上記の構成により、水平方向ピクセル数×
ブロックの一辺のピクセル数のメモリ容量で、ラスター
データをブロックデータに変換でき、また、ブロックデ
ータをラスターデータに変換できる。更に、上記実施例
のように、8×8のブロックに限らず、任意のサイズの
ブロックへの変換およびその逆の変換が行える。例え
ば、数1の式のXの値を水平方向ピクセル数/7とし、
数2の式のχを7とすることにより、7×7のブロック
への変換およびその逆変換が行えることになる。なお、
χを7とする場合には、水平方向ピクセル数Cは、例え
ば49というように、7の倍数となる。更には、7×8
といったブロックにも対応できる。
【0060】(実施例2)以下、本発明のその実施例を
示す図に基づいて説明する。本実施例は、ハードウェア
によってラスター/ブロック変換を実行する場合を説明
する。
【0061】図9は、ハードウェアによってラスター→
ブロック変換を実行する場合の処理内容を示したフロー
チャートである。ハードウェアによる上記変換処理にお
いては、乗算器を用いずに加減算器で構成した。図9の
処理内容は、加減算器を用いて上記変換処理を行う場合
を示している。
【0062】図10は、ハードウェアによってブロック
→ラスター変換を実行する場合の処理内容を示したフロ
ーチャートである。ハードウェアによる上記変換処理に
おいては、乗算器を用いずに加減算器で構成した。図1
0の処理内容は、加減算器を用いて上記変換処理を行う
場合を示している。
【0063】図11は、上記図9,10の処理内容を実
行するハードウェアを示した回路図である。
【0064】なお、図9,図10,図11の相互間で
は、各符号は対応関係を有すものであるが、前記の実施
例1で用いた符号との間には対応関係はない。本実施例
では、符号は以下のように定義される。
【0065】 A:水平方向ピクセル数/ブロックの大きさ B:水平方向ピクセル数 C:カウント値 D:実施例1におけるBに相当(初期値は、X0 =1な
ので1に設定) E:余りの数値 F:アドレス
【0066】(ラスター→ブロック変換)まず、図9の
フローチャートを用いて、ラスター→ブロック変換を説
明する。変換の考え方自体は、実施例1の数1の式に基
づく変換処理と同じである。上記フローチャート及び上
記回路構成は、数1の式に基づく変換処理をハードウェ
アで行うのに適した構成にしたものである。
【0067】図9のフローチャートを図1のフローチャ
ートとの対応関係で説明する。ステップ31,32は、
図1のステップ1,2と同様の処理を実行する。次に、
ステップ33の判断処理により、Cが1〜6の値を採る
間はYESとなり、ステップ34においてC=C+1及
びE=E+Dの加算処理を行うとともに、E>(B−
1)か否かを判断する(ステップ35)。Eが0〜55
の値を採る間は、NOと判断され、ステップ37に進む
が、Eが56以上の値を採ると、E=E−(B−1)の
処理を実行し(ステップ36)、その後にステップ37
に進む。また、ステップ33において、C=7とされた
ときには、NOとなり、そのままステップ37に進む。
【0068】ステップ37では、F=F+Dの処理を実
行する。この処理は、図1のステップ6に対応する。即
ち、アドレスを算出する処理である。
【0069】ここで、Fが1,2,3,…のように増加
する場合、即ち、ステップ38において、F>(B−
1)か否かの判断でNOとされ、更にステップ40にお
いてF==(B−1)か否かの判断でNOとされて再び
ステップ37に至る場合には、実施例1で示した0回目
(Y=0)と同様、図2に示したごとく、アドレスが生
成されてデータが格納されていく。
【0070】なお、ステップ38とステップ39の処理
により、生成されたアドレスFがラインメモリの最大ア
ドレスを越えた場合に、当該アドレスFが適正値に修正
される。また、ステップ40は、図1のステップ7に対
応した処理を実行する。ステップ40においてNOとさ
れる場合は、ラインメモリの全アドレスを生成した場合
であり、この場合は、F=0,D=E,及びC=1の処
理が実行される(ステップ41)。F=0はアドレスを
初期化する処理である。D=Eの処理は、図1の処理で
いえば、Yをインクリメントし、このYによりBを求め
る処理に相当する。C=1は、Cの初期化である。
【0071】上記のステップ41の処理を経た後のステ
ップ32以降の処理は、実施例1で示した1回目(Y=
1)の処理に相当するものである。即ち、D=Eの処理
によって、D=7となっており、このときのアドレスF
は、F=F+7で表されることになる。これは、ステッ
プ33により、Cが0〜6の間、ステップ34でE=E
+Dの処理が繰り返されていたため、E=7となってお
り、D=EによってD=7となるからである。
【0072】また、ステップ38において、F>(B−
1)か否かの判断でNOとされ、更にステップ40にお
いてF==(B−1)か否かの判断でNOとされて再び
ステップ37に至る場合には、F=F+Dの処理によ
り、Fは、7,14,21,…のように増加することに
なる。従って、実施例1で示した1回目(Y=1)と同
様、図2に示したごとく、アドレスが生成されてデータ
が格納されていく。
【0073】更に、上記の如く、実施例1で示した1回
目(Y=1)と同様の処理がなされた後、ステップ41
を経て再びステップ32以降の処理を繰り返すが、この
ときの上記のステップ41の処理を経た後のステップ3
2以降の処理は、実施例1で示した2回目(Y=2)の
処理に相当する。即ち、D=Eの処理によって、D=4
9となっており、このときのアドレスFは、F=F+4
9で表されることになる。これは、ステップ33によ
り、Cが1〜6の間、ステップ34でE=E+Dの処理
が繰り返されていたため、E=49となっており、D=
EによってD=49となるからである。
【0074】また、ステップ38において、F>(B−
1)か否かの判断でNOとされ、更にステップ40にお
いてF==(B−1)か否かの判断でNOとされて再び
ステップ37に至る場合には、F=F+Dの処理によ
り、Fは、49,98,…のように増加することにな
る。従って、実施例1で示した2回目(Y=2)と同
様、図4に示したごとく、アドレスが生成されてデータ
が格納されていく。
【0075】(ブロック→ラスター変換)まず、図10
のフローチャートを用いてブロック→ラスター変換を説
明する。変換処理自体は、実施例1の数式2に基づく変
換処理と同じである。このフローチャートは、図1のフ
ローチャートに対する図5のフローチャートの関係と同
様であり、図9のフローチャートの処理において、Cの
比較対象としてブロックを構成している一辺のピクセル
数を当てはめたものである。
【0076】これにより、実施例1の図6乃至図8で示
したのと同様のアドレス生成が実行されることになる。
【0077】次に、図11の回路図を、図9,10の処
理内容との対応で説明する。
【0078】減算器1は、B−1の処理を実行するもの
であり、その減算出力は、比較器7,12,13、及び
減算器8,14に入力されるようになっている。上記の
比較器7,12,13は、フローチャートのステップ3
5,55、ステップ40,60、ステップ38,58の
処理にそれぞれ対応し、減算器8,14は、ステップ3
6,56、ステップ39,59にそれぞれ対応する。
【0079】3ビットシフター2は、Bを1/8した
値、即ちAを生成し、これをマルチプレクサ3に入力す
る。
【0080】マルチプレクサ3は、ラスター→ブロック
変換に際しては、Aの値を採用し、ブロック→ラスター
変換に際しては、8の値を採用し、その採用した値を比
較器4に出力する。なお、Aの値と8の値の切り替え
は、変換切換信号によって行われる。
【0081】比較器4は、マルチプレクサ3からの入力
値と、カウント値(C)とを比較する。この処理は、ス
テップ33,53に対応する。比較器4は、その比較結
果をCカウンタ5及び加算器6に出力する。Cカウンタ
5は、クロックが入力されると、上記比較結果がC<A
(or8)を示すときにはカウントUPを実行する。C
カウンタ及び加算器6は、C=C+1とE=E+Dの処
理を行うものであり、ステップ34,54に対応する。
また、加算器6の出力Eは、比較器7と減算器8とマル
チプレクサ9に入力される。
【0082】比較的7は、加算器6の出力Eと前記減算
器1のB−1出力とを比較する。この処理は、ステップ
35,55に対応する。減算器8は、加算器6の出力E
から前記減算器1のB−1出力を減ずる。この処理は、
ステップ36,56に対応する。マルチプレクサ9は、
比較器7の出力結果がE>(B−1)を示さない場合に
は、加算器6の出力Eを採用し、E>(B−1)を示す
場合には、減算器8の出力E(E=E−(B−1))を
採用する。Eレジスタ10にクロックが入力されると、
当該Eレジスタにマルチプレクサ9の出力Eがラッチさ
れる。
【0083】加算器11は、Fレジスタ16からの出力
Fと、Dレジスタ17からの出力Dとを加算した値をF
として出力する。この処理は、ステップ37,57に対
応する。加算器11の出力Fは、比較器12,13と減
算器14に入力される。
【0084】比較的13は、加算器11の出力Fと前記
減算器1のB−1出力とを比較し、その比較結果を減算
器14と比較器12に出力する。この処理は、ステップ
38,58に対応する。減算器14は、比較器13の出
力がF>(B−1)を示す場合には、F−(B−1)の
減算処理を行うが、F>(B−1)を示さない場合に
は、Fをそのまま出力する。この処理は、ステップ38
とステップ39或いはステップ58とステップ59の処
理に対応する。比較器12は、加算器11の出力Fと減
算器1の出力B−1の一致を判断し、その判定結果をC
カウンタ5、マルチプレクサ15、及びDレジスタ17
に出力する。
【0085】マルチプレクサ15は、比較器12の比較
結果が、一致を示さない場合は、減算器14の出力Fを
選択し、一致を示す場合は、0を選択してFレジスタ1
6に出力する。この処理は、ステップ40,60の処理
に対応する。
【0086】Fレジスタ16は、クロックを入力する
と、マルチプレクサ15で選択された値をラッチする。
Fレジスタ16が0をラッチする処理は、ステップ4
1,61のF=0の処理に対応する。Fレジスタ16の
出力は、アドレス出力となる。
【0087】Dレジスタ17は、比較器12の比較結果
が、一致を示さない場合は、Dの値を保持し、一致を示
す場合は、Eレジスタ10の出力Eを保持する。一致を
示す場合の処理は、ステップ41,61のD=Eの処理
に対応する。
【0088】また、Cカウンタ5は、比較器12の比較
結果が、一致を示さない場合は、Dの値を保持し、一致
を示す場合は、Eレジスタ10の出力Eを保持する。一
致を示す場合の処理は、ステップ41,61のD=Eの
処理に相当する。
【0089】以上の構成により、ラスター/ブロック変
換が、乗算器を用いないハードウェア構成(IC或いは
これに準ずるデバイス)により、実行されることにな
る。
【0090】また、上記回路には、ラインメモリ/フレ
ームメモリインターフェース18が設けられており、ピ
クセルデータの入力が可能となっている。フレームメモ
リインターフェースとすることにより、フレームメモリ
にも対応できる。
【0091】図12及び図13は、上記の如く構成され
たラスター/ブロック変換装置(ソフトウェアで構成さ
れるものも含む)を用い、色変換とラスター/ブロック
変換とを同時に実現できるように構成したものである。
勿論、JEPEG方式に規定されているブロックデータ
を入出力できるように構成してもよい。
【0092】図12の色変換IC27においては、入力
回路21から入力されたラスターデータは、乗算器22
によって係数データ26に基づいて色変換が行われる。
ラスター/ブロック変換装置23は、ラスター/ブロッ
ク用RAM25を用いてラスターからブロックへの変換
処理を実行し、出力回路24によってブロック化された
データが出力される。
【0093】図13の色変換IC34においては、入力
回路28から入力されたブロックデータは、ラスター/
ブロック変換装置29に出力される。ラスター/ブロッ
ク変換装置29は、ラスター/ブロック用RAM33を
用いてラスターからブロックへの変換処理を実行する。
ラスター/ブロック変換装置29からのブロックデータ
は、乗算器30によって係数データ32に基づいて色変
換が行われ、出力回路31を経て出力される。
【0094】これら図12,13のICにより、外部に
特別なソフトウェアやハードウェアを持たずに色変換が
行えることになる。
【0095】
【発明の効果】以上のように、本発明によれば、ライン
メモリの使用を可能にしてコストの低減を図ることがで
きるとともに、任意の画面サイズにおいて変換のための
メモリのアドレスを自動的に発生することのできる等の
優れた諸効果を奏する。
【図面の簡単な説明】
【図1】本発明におけるラスター→ブロック変換処理の
内容を示すフローチャートである。
【図2】図1の処理において0回目(Y=0)ときのラ
インメモリの内容を示す説明図である。
【図3】図1の処理において1回目(Y=1)ときのラ
インメモリの内容を示す説明図である。
【図4】図1の処理において2回目(Y=2)ときのラ
インメモリの内容を示す説明図である。
【図5】本発明におけるブロック→ラスター変換処理の
内容を示すフローチャートである。
【図6】図5の処理において0回目(Y=0)ときのラ
インメモリの内容を示す説明図である。
【図7】図5の処理において1回目(Y=1)ときのラ
インメモリの内容を示す説明図である。
【図8】図5の処理において2回目(Y=2)ときのラ
インメモリの内容を示す説明図である。
【図9】本発明におけるラスター→ブロック変換を加算
処理により実行する場合の処理内容を示すフローチャー
トである。
【図10】本発明におけるブロック→ラスター変換を加
算処理により実行する場合の処理内容を示すフローチャ
ートである。
【図11】図9及び図10の処理を実施する回路を示し
た回路図である。
【図12】本発明のラスター/ブロック変換装置を内蔵
するとともに、色変換回路等を有し、任意の画面サイズ
で自由に色変換とラスター→ブロック変換を行う回路を
示した回路図である。
【図13】本発明のラスター/ブロック変換装置を内蔵
するとともに、色変換回路等を有し、任意の画面サイズ
で自由に色変換とブロック→ラスター変換を行う回路を
示した回路図である。
【図14】1画面メモリを使用してブロック→ラスター
変換を行う場合に考えられる処理内容を示したフローチ
ャートである。
【符号の説明】
1 減算器 2 左3ビットシフター 3 マルチプレクサ 4 比較器 5 Cカウンタ 6 加算器 7 比較器 8 減算器 9 マルチプレクサ 10 Eレジスタ 11 加算器 12 比較器 13 比較器 14 減算器 15 マルチプレクサ 16 Fレジスタ 17 Dレジスタ 18 メモリインターフェース

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】 Aを現在のアドレス座標とし、A′を次
    のアドレス座標とし、Bを加算値とし、Cを水平方向ピ
    クセル数とし、χを1ブロックの水平方向ピクセル数と
    し、XをC/χの演算で求めた値とし、Yを変換回数と
    するとき、 XY >(C−1)の関係が成立した場合は、 XY /(C−1)の式における余りをBとし、 XY >(C−1)の関係が成立しない場合は、 XY の演算結果をBとし、 上記求めたBに基づき、A′=A+Bの式によって次の
    アドレスを求めてラスターデータをブロックデータに変
    換する一方、 χY >(C−1)の関係が成立した場合は、 χY /(C−1)の式における余りをBとし、 χY >(C−1)の関係が成立しない場合は、 χY の演算結果をBとし、 上記求めたBに基づき、A′=A+Bの式によって次の
    アドレスを求めてブロックデータをラスターデータに変
    換することを特徴とするラスター/ブロック変換方法。
  2. 【請求項2】 請求項1の方法におけるXY の値或いは
    χY を、カウント回数がX或いはχに至るまで同一値を
    順次加算させた値を用いることにより得るとともに、ブ
    ロックの大きさで定まるメモリ内の全ピクセルに対する
    変換処理終了後の次の変換処理に際して上記順次加算さ
    せた値を上記同一値とすることを特徴とする請求項1に
    記載のラスター/ブロック変換方法。
  3. 【請求項3】 ブロックの大きさに対応して変数を適宜
    変更することを特徴とする請求項1又は請求項2に記載
    のラスター/ブロック変換方法。
  4. 【請求項4】 請求項2のラスター/ブロック変換方法
    を実施するために、カウント回数がX或いはχに至るま
    で同一値を順次加算させる加算手段と、ブロックの大き
    さで定まるメモリ内の全ピクセルに対する変換処理終了
    後の次の変換処理に際して上記順次加算させた値を上記
    同一値とするためのラッチ手段とを備えていることを特
    徴とするラスター/ブロック変換装置。
JP21447794A 1994-09-08 1994-09-08 ラスター/ブロック変換方法並びにこの方法を実施する装置 Expired - Lifetime JP3503711B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP21447794A JP3503711B2 (ja) 1994-09-08 1994-09-08 ラスター/ブロック変換方法並びにこの方法を実施する装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP21447794A JP3503711B2 (ja) 1994-09-08 1994-09-08 ラスター/ブロック変換方法並びにこの方法を実施する装置

Publications (2)

Publication Number Publication Date
JPH0877343A true JPH0877343A (ja) 1996-03-22
JP3503711B2 JP3503711B2 (ja) 2004-03-08

Family

ID=16656373

Family Applications (1)

Application Number Title Priority Date Filing Date
JP21447794A Expired - Lifetime JP3503711B2 (ja) 1994-09-08 1994-09-08 ラスター/ブロック変換方法並びにこの方法を実施する装置

Country Status (1)

Country Link
JP (1) JP3503711B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008112435A (ja) * 2006-10-06 2008-05-15 Canon Inc 画像処理装置及びその方法
JP2012248226A (ja) * 2006-10-06 2012-12-13 Canon Inc 画像処理装置及びその制御方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008112435A (ja) * 2006-10-06 2008-05-15 Canon Inc 画像処理装置及びその方法
JP2012248226A (ja) * 2006-10-06 2012-12-13 Canon Inc 画像処理装置及びその制御方法
US8466928B2 (en) 2006-10-06 2013-06-18 Canon Kabushiki Kaisha Image processing apparatus and method

Also Published As

Publication number Publication date
JP3503711B2 (ja) 2004-03-08

Similar Documents

Publication Publication Date Title
US4635292A (en) Image processor
KR940007161B1 (ko) 이미지버퍼를 이용한 전자주밍시스템
US5381490A (en) Image processing apparatus for emphasizing edge components of an image
JP2006154992A (ja) ニューロプロセッサ
JP3503711B2 (ja) ラスター/ブロック変換方法並びにこの方法を実施する装置
JPH05260313A (ja) 離散余弦変換(dct)によるデータ処理方法、dct方法、およびdctデータ処理回路
JPH07202681A (ja) 論理演算器および演算方法
JP3348499B2 (ja) 巡回型雑音低減装置
JP3127883B2 (ja) 画像処理装置
JP2000148442A (ja) 提供媒体、並びにデータ処理装置およびデータ処理方法
KR20050008812A (ko) 화상 처리 방법, 계산 회로, 화상 처리 시스템, 셋톱 박스및 통신망
JPH01121930A (ja) データ処理装置
JPH1098743A (ja) 輝度信号の計算装置及びその方法
JPS63207292A (ja) 色信号変換装置
JPS63102467A (ja) 画像デ−タ解像度変換装置
JP2889244B2 (ja) 画像処理装置
JP2623089B2 (ja) 映像処理システム
JPH01302960A (ja) 誤差拡散処理回路
KR100190019B1 (ko) 그래픽 콘트롤러의 어드레스 계산기
JP2002159006A (ja) 演算補助回路
JP3952804B2 (ja) データ処理方法およびデータ処理装置
KR100602249B1 (ko) 영상 처리 장치 및 그 처리 방법
JP2002094833A (ja) ノイズ低減方法及び装置
JPH07146781A (ja) プロセツサ
JPH06214754A (ja) 四捨五入演算回路及びこれを有する画像処理装置

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20031203

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20031203

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

Free format text: PAYMENT UNTIL: 20071219

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20081219

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20081219

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20091219

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20101219

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20101219

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20111219

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20111219

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20121219

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20131219

Year of fee payment: 10

EXPY Cancellation because of completion of term