JPH0731727B2 - 画像90度回転方法 - Google Patents

画像90度回転方法

Info

Publication number
JPH0731727B2
JPH0731727B2 JP61112891A JP11289186A JPH0731727B2 JP H0731727 B2 JPH0731727 B2 JP H0731727B2 JP 61112891 A JP61112891 A JP 61112891A JP 11289186 A JP11289186 A JP 11289186A JP H0731727 B2 JPH0731727 B2 JP H0731727B2
Authority
JP
Japan
Prior art keywords
data
bits
bit
image
word
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.)
Expired - Lifetime
Application number
JP61112891A
Other languages
English (en)
Other versions
JPS62269280A (ja
Inventor
博子 緑川
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.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP61112891A priority Critical patent/JPH0731727B2/ja
Publication of JPS62269280A publication Critical patent/JPS62269280A/ja
Publication of JPH0731727B2 publication Critical patent/JPH0731727B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Image Processing (AREA)
  • Digital Computer Display Output (AREA)
  • Editing Of Facsimile Originals (AREA)
  • Controls And Circuits For Display Device (AREA)

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、語構成のメモリにパックされた2進画像の画
像90゜回転方法に関する。
〔従来技術〕
従来1語NビットからなるメモリN語にパックして格納
されているN×Nの2進画像の転置画像を得るための方
法として、転置された1語N画素を作るため元の画像を
構成する語のあるビット位置に注目し、1語から1ビッ
トずつ抽出し、N語繰り返す処理が用いられていた。N
=8の場合の例を第6図に示す。同図(a)の画像を90
゜回転するために、同図(a)の画像から1ワードずつ
よみ出しaビット目の画素を1ビットずつとり出し、同
図(b)のa行目の1ワードを作る。したがって同図
(b)の画像を得るためにはメモリをN2回リードしN回
ライトする必要がある。
〔発明が解決しようとする問題点〕
従来の方法ではメモリをN×N回リードしN回ライトす
るためN×N+N回のアクセスが必要であり処理時間が
遅くなるという問題があった。
[問題点を解決するための手段] 第1の発明によれば、N=2nビットで構成される語単位
にアクセスできるメモリをもつ情報処理装置における画
像90度回転方法において、N×Nの2値画像がN語に格
納されている時、Nビットの語のビット位置の2進数表
現でのn−j+1ビット目が1であれば、Nビットのデ
ータMの同一ビット位置に1を与えることによりできる
NビットのマスクデータMを出力する操作と、i≫j,
(i+1)≫jで得られる2つのアドレスのデータA,B
を読み出し、B∩を2n-jビット左シフトしたデータと
A∩との論理和をとったデータと、A∩Mを2n-jビッ
ト右シフトしたデータとB∩Mとの論理和をとったデー
タとを、それぞれ(i+1)≫jとi≫jに格納する操
作を備え、(但し、記号の上のバーは論理否定、∩は論
理積、i≫jにおける≫はiをjビット右へローテート
シフト(nビットローテーション)することを示す記号
である。)前記マスクデータM出力操作をj=1,…,nと
してn回繰り返し操作し、更に前記各マスクデータM出
力操作の各回について前記データ格納操作をi=0,2,4,
…N−2としてN/2回繰り返し操作することにより右へ9
0度回転されたN×N2値画像を得ることを特徴とする画
像90度回転方法が得られる。
第2の発明によれば、N=2nビットで構成される語単位
にアクセスできるメモリをもつ情報処理装置における画
像90ど回転方法において、N×Nの2値画像がN語に格
納されている時、Nビットの語のビット位置の2進数表
現でのn−j+1ビット目が1であれば、Nビットのデ
ータMの同一ビット位置に1を与えることによりできる
NビットのマスクデータMを出力する操作と、i≫j,
(i+1)≫jで得られる2つのアドレスのデータA,B
を読み出し、A∩を2n-jビット左シフトしたデータと
B∩との論理和をとったデータと、B∩Mを2n-jビッ
ト右シフトしたデータとA∩Mとの論理和をとったデー
タとを、それぞれi≫jと(i+1)≫jに格納する操
作を備え、(但し、記号の上のバーは論理否定、∩は論
理積、i≫jにおける≫はiをjビット右へローテート
シフト(nビットローテーション)することを示す記号
である。)前記マスクデータM出力操作をj=1,…,nと
してn回繰り返し操作し、更に前記各マスクデータM出
力操作の各回について前記データ格納操作をi=0,2,4,
…,N−2としてN/2回繰り返し操作することにより左へ9
0度回転されたN×N2値画像を得ることを特徴とする画
像90度回転方法が得られる。
[実施例] 図面を参照して本発明について説明する。第1図は第1
の本発明の一実施例を示すブロック図である。この例で
は説明を簡単にするためn=4,すなわちN=16である。
16×16の2値画像が16語としてメモリに格納され、各語
は画像の一水平画素16画素分のデータからなる。この場
合の対応語の部分入れ替えは4つのステージに分かれ
る。第1ステージではペアとなる語、すなわち同図
(a)に示すように、アドレス0とアドレス8,アドレス
1とアドレス9,…,アドレス7とアドレスFの8つのペ
アに格納されている8対のペアデータに対し第1図
(b)のような部分入れ替えを行う。第1図(b)のA,
Bがペアデータを示す。
部分入れ替えは第1ステージではj=1として、16ビッ
トからなるマスクのビット位置を(右端のビットを第0
ビットとして)2進表現した時、第n−j+1ビット目
が1であるビット位置に1を与えたマスクM=(111111
1100000000)を用いて行う。同様に第2ステージではマ
スクデータはM=(1111000011110000)であり、第3ス
テージのマスクデータはM=(1100110011001100)であ
り、第4ステージでのマスクデータはM=(1010101010
101010)である。ペアとなるアドレスは、i≫j,(i+
1)≫j(ただしi≫jはiをjビット右へローテート
シフト(nビットローテーション)することを示す。)
で得られ、j=1,2,3,4、i=0,2,4,…14としたとき第
1ステージのペアとなる語のアドレスが求められる。
各ステージでのペアとなる語アドレスは第1図(a),
(c),(e),(g)に示されている。対応語の部分
入れ替えは、第1図(b),(d),(f),(h)に
示される。
第1ステージについて説明すると、ペアとなる語のアド
レスで読み出したデータA,Bに対し、Bの下8ビットを
Bの上8ビットへ、Bの上8ビットをAの上8ビット
へ、Aの上8ビットをAの下8ビットへ、Aの下8ビッ
トをBの下8ビットヘ、それぞれ置きかえるという操作
を8つのペア語に対して行う。第2,第3,第4ステージも
同様に部分入れ替えを小刻みにして第1図(d),
(f),(h)に示されるように部分入れ替えを行う。
第1図(b),(d),(f),(h)に示す部分入れ
替えの操作は、マスクデータMと第1図(a),
(c),(e),(g)で示されたペアデータA,Bに対
し、B∩を2n-jビット左シフトしたデータとA∩と
の論理和をとったデータと、A∩Mを2n-jビット右シフ
トしたデータとB∩Mとの論理和をとったデータとを求
める処理に対応する。
各画素の(X,Y)座標を4ビット(x0〜x3,y0〜y3)の2
進表現した座標(x3x2x1x0,y3y2y1y0)で表すと、部分
入れ替え操作とは第1ステージでは(x3x2x1x0,y3y2y1y
0)座標位置の画素を(y3x2x1x0,3y2y1y0)座標位置
へ、第2ステージでは(y3x2x1x0,3y2y1y0)座標位置
の画素を(y3y2x1x0, 2y1y0)座標位置へ、第3ス
テージでは(y3y2x1x0, 2y1y0)座標位置の画素を
(y3y2y1x0, 1y0)座標位置へ、第4ステージ
では(y3y2y1x0, 1y0)の座標位置の画素を
(y3y2y1y0, )座標位置へ移動するこ
とに対応しており、これにより90度回転画像が得られ
る。
第3図は、第1図の操作によりある特定の画素がいかに
移動していくかを示した図であり、図中〜は第1,第
2,第3,第4ステージで(0011,0010)座標位置の画素
が、(0011,1010),(0011,1110),(0011,1100),
(0010,1100)の順に移動していくことを示している。
更に、16×16より大きい画像の90度回転画像の場合、例
えば64×64の画像を転置する場合、第4図に示すよう
に、縦横4つに分割16コの部分画像は分解し個々の部分
画像に本発明の方法を適用し、その後、部分画像単位に
対象位置の部分画像と入れ替えることにより大きい画像
の90度回転画像処理にも容易に適用できる。
第2図は第2の本発明の一実施例を示すブロック図であ
る。この例では説明を簡単にするためn=4、すなわ
ち、N=16である。
16×16の2値画像が16語としてメモリに格納され、各語
は画像の一水平画素1画素分のデータからなる。この場
合の対応語の部分入れ替えは4つのステージに分かれ
る。第1ステージではペアとなる語、すなわち、同図
(a)に示すように、アドレス0とアドレス8、アドレ
ス1とアドレス9、…、アドレス7とアドレスFの8つ
のペアに格納されている8対のペアデータに対し第2図
(b)のような部分入れ替えを行う。第2図(b)のA,
Bがペアデータを示す。
部分入れ替えは第1ステージではj=1として、16ビッ
トからなるマスクのビット位置を(右端のビットを第0
ビットとして)2進表現した時、第n−j+1ビット目
が1であるビット位置に1を与えたマスクM=(111111
1100000000)を用いて行う。同様に第2ステージではマ
スクデータはM=(1111000011110000)であり、第3ス
テージのマスクデータはM=(1100110011001100)であ
り、第4ステージでのマスクデータはM=(1010101010
101010)である。ペアとなるアドレスは、i≫j、(i
+1)≫jで得られ、(ただしi≫jはiをjビット右
へローテートシフト(nビットローテーション)するこ
とを示す。)、j=1,2,3,4、i=0,2,4,…14としたと
き第1図の第1ステージのペアとなる語のアドレスが求
められる。
各ステージでのペアとなる語アドレスは第2図(a),
(c),(e),(g)に示されている。対応語の部分
入れ替えは、第2図(b),(d),(f),(h)に
示される。
第1ステージについて説明すると、ペアとなる語のアド
レスで読み出したデータA,Bに対し、Bの下8ビットを
Aの下8ビットへ、Aの下8ビットをAの上8ビット
へ、Aの上8ビットをBの上8ビットへ、Bの上8ビッ
トをBの下8ビットへ置き換える操作を8つのペア語に
対して行う。第2,第3,第4ステージも同様に部分入れ替
えを小刻みにして第2図(b),(d),(f),
(h)に示されるように部分入れ替えを行う。
第2図(b),(d),(f),(h)に示す部分入れ
替えの操作はマスクデータMと第2図(a),(c),
(e),(g)で示されたペアデータA,Bに対し、A∩
を2n-jビット左シフトしたデータとB∩との論理和
をとったデータと、B∩Mを2n-jビット右シフトしたデ
ータとA∩Mとの論理和をとったデータとを求める処理
に対応する。
各画素の(X,Y)座標を4ビット(x0〜x3,y0〜y3)の2
進表現した座標(x3x2x1x0,y3y2y1y0)で表すと、部分
入れかえ操作とは、第1ステージでは(x3x2x1x0,y3y2y
1y0)座標位置の画素を(3x2x1x0,x3y2y1y0)座標位
置へ、第2ステージでは(3x2x1x0,x3y2y1y0)座標位
置の画素を( 2x1x0,x3x2y1y0)座標位置へ、第3
ステージでは( 2x1x0,x3x2y1y0)座標位置の画素
を( 1x0,x3x2x1y0)座標位置へ、第4ステー
ジでは( 1x0,x3x2x1y0)の座標位置の画素を
0,x3x2x1x0)座標位置へ移動すること
に対応しており、これにより90度回転画像が得られる。
第5図は、第2図の操作によりある特定の画素がいかに
移動していくかを示した図であり、図中〜は第1,第
2,第3,第4ステージで(0011,0010)座標位置の画素
が、(1011,0010),(1111,0010),(1101,0010),
(1101,0011)の順に移動していくことを示している。
N=16の例では、4ステージの処理で、各ステージでメ
モリには16回リードライトするのでメモリアクセスは16
×2×4となる。一般にはN=2nのときnステージの処
理で各ステージでメモリに2N回アクセスするので、全部
で2Nlog2N回となる。
〔発明の効果〕
本発明によれば、N語×N語の2値画像の90゜回転画像
を得るのに、2NlogN回のメモリアクセスで処理ができ、
N+1/2logN倍にメモリアクセス時間を軽減できる。
【図面の簡単な説明】
第1図は第1の本発明の原理を示すブロック図、第2図
は第2の本発明の原理を示すブロック図、第3図は第1
図の方法を用いた時、特定の画素が移動していく様子を
示す図、第4図は第1の本発明の第2の実施例を示す
図、第5図は第2図の方法を用いた時、特定の画素が移
動していく様子を示す図、第6図は従来例のブロック図
である。 A,B……ペアとなるデータ。

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】N=2nビットで構成される語単位にアクセ
    スできるメモリをもつ情報処理装置における画像90度回
    転方法において、N×Nの2値画像がN語に格納されて
    いる時、Nビットの語のビット位置の2進数表現でのn
    −j+1ビット目が1であれば、NビットのデータMの
    同一ビット位置に1を与えることによりできるNビット
    のマスクデータMを出力する操作と、i≫j,(i+1)
    ≫jで得られる2つのアドレスのデータA,Bを読み出
    し、B∩を2n-jビット左シフトしたデータとA∩と
    の論理和をとったデータと、A∩Mを2n-jビット右シフ
    トしたデータとB∩Mとの論理和をとったデータとを、
    それぞれ(i+1)≫jとi≫jに格納する操作を備
    え、(但し、記号の上のバーは論理否定、∩は論理積、
    i≫jにおける≫はiをjビット右へローテートシフト
    (nビットローテーション)することを示す記号であ
    る。)前記マスクデータM出力操作をj=1,…,nとして
    n回繰り返し操作し、更に前記各マスクデータM出力操
    作の各回について前記データ格納操作をi=0,2,4,…,N
    −2としてN/2回繰り返し操作することにより右へ90度
    回転されたN×N2値画像を得ることを特徴とする画像90
    度回転方法。
  2. 【請求項2】N=2nビットで構成される語単位にアクセ
    スできるメモリをもつ情報処理装置における画像90度回
    転方法において、N×Nの2値画像がN語に格納されて
    いる時、Nビットの語のビット位置の2進数表現でのn
    −j+1ビット目が1であれば、NビットのデータMの
    同一ビット位置に1を与えることによりできるNビット
    のマスクデータMを出力する操作と、i≫j,(i+1)
    ≫jで得られる2つのアドレスのデータA,Bを読み出
    し、A∩を2n-jビット左シフトしたデータとB∩と
    の論理和をとったデータと、B∩Mを2n-jビット右シフ
    トしたデータとA∩Mとの論理和をとったデータとを、
    それぞれi≫jと(i+1)≫jに格納する操作を備
    え、(但し、記号の上のバーは論理否定、∩は論理積、
    i≫jにおける≫はiをjビット右へローテートシフト
    (nビットローテーション)することを示す記号であ
    る。)前記マスクデータM出力操作をj=1,…,nとして
    n回繰り返し操作し、更に前記各マスクデータM出力操
    作の各回について前記データ格納操作をi=0,2,4,…,N
    −2としてN/2回繰り返し操作することにより左へ90度
    回転されたN×N2値画像を得ることを特徴とする画像90
    度回転方法。
JP61112891A 1986-05-16 1986-05-16 画像90度回転方法 Expired - Lifetime JPH0731727B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP61112891A JPH0731727B2 (ja) 1986-05-16 1986-05-16 画像90度回転方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP61112891A JPH0731727B2 (ja) 1986-05-16 1986-05-16 画像90度回転方法

Publications (2)

Publication Number Publication Date
JPS62269280A JPS62269280A (ja) 1987-11-21
JPH0731727B2 true JPH0731727B2 (ja) 1995-04-10

Family

ID=14598099

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61112891A Expired - Lifetime JPH0731727B2 (ja) 1986-05-16 1986-05-16 画像90度回転方法

Country Status (1)

Country Link
JP (1) JPH0731727B2 (ja)

Also Published As

Publication number Publication date
JPS62269280A (ja) 1987-11-21

Similar Documents

Publication Publication Date Title
US3995253A (en) Method and apparatus for accessing horizontal sequences, vertical sequences, and rectangular subarrays from an array stored in a modified word organized random access memory system
JPS62299881A (ja) 画像表示システム
JPS6325672B2 (ja)
JPS6247786A (ja) 近傍画像処理専用メモリ
JPH0323917B2 (ja)
JP3786993B2 (ja) データ記憶ユニット及び該ユニットを用いたデータ記憶装置
US5095422A (en) Information transferring method and apparatus for transferring information from one memory area to another memory area
JPS61103189A (ja) デ−タ転送方法
JPH01283676A (ja) ウインドウ画像データの読出処理方式
JP3124852B2 (ja) データ移動回路及びアドレス配列
JPH07113904B2 (ja) メモリ・アクセス装置
JPH061449B2 (ja) 画像編集用イメ−ジメモリ
JP2643533B2 (ja) 画像情報回転装置
JPS58207170A (ja) 画像処理システム
JPS6168636A (ja) デ−タ処理装置
JPS60124785A (ja) 画像処理装置
JPH0687259B2 (ja) 画像転置方法と装置
JPS607678A (ja) メモリ構成方式
JPH0233158B2 (ja)
JPS62269281A (ja) 画像転置方法
JPS62269280A (ja) 画像90度回転方法
JPH0535392B2 (ja)
JPS6340972A (ja) メモリ制御方式
JPS63234360A (ja) 2次元メモリのアクセス装置
JPH0221615B2 (ja)