(57)【要約】【課題】原画像情報を拡大および回転するにあたり、拡大後の画像情報を格納する記憶領域を介さず処理すること。【解決手段】ｘｙ座標上の原画像情報を拡大および回転して記憶手段のｘｙ座標上に展開するにあたり、当該拡大および回転の成分を含む座標変換の行列の逆行列を生成する逆行列生成手段２１と、原画像情報の拡大および回転した際の変換後画像情報における記憶手段４のｘｙ座標上での外接矩形に対応した座標を求める外接矩形取得手段２２と、外接矩形取得手段２２で求めた外接矩形の内側で変換後画像情報の領域内となる座標を抽出する座標抽出手段２３と、座標抽出手段２３によって抽出された座標について、逆行列生成手段２１で生成された逆行列を用いて原画像情報に対応した座標を求め、その求めた座標の画素値を取得し、その取得した画素値を記憶手段４の前記抽出された座標へ複製する複製手段３とを備える画像処理装置である。【選択図】図１
2010199663.tif 000002
【特許請求の範囲】
【請求項１】
ｘｙ座標上の原画像情報を拡大および回転して記憶手段のｘｙ座標上に展開するにあたり、当該拡大および回転の成分を含む座標変換の行列の逆行列を生成する逆行列生成手段と、
前記原画像情報の拡大および回転した際の変換後画像情報における前記記憶手段のｘｙ座標上での外接矩形に対応した座標を求める外接矩形取得手段と、
前記外接矩形取得手段で求めた外接矩形の内側で前記変換後画像情報の領域内となる座標を抽出する座標抽出手段と、
前記座標抽出手段によって抽出された座標について、前記逆行列生成手段で生成された逆行列を用いて前記原画像情報に対応した座標を求め、その求めた座標の画素値を取得し、その取得した画素値を前記記憶手段の前記抽出された座標へ複製する複製手段と
を備える画像処理装置。
【請求項２】
前記逆行列生成手段は、前記座標変換の行列として前記原画像情報の平行移動成分を含んだものの逆行列を生成する
請求項１記載の画像処理装置。
【請求項３】
前記平行移動成分は、前記原画像情報のｘ座標およびｙ座標の各々の最小値もしくは最大値と、前記変換後画像情報のｘ座標およびｙ座標の各々の最小値もしくは最大値とを一致させるために必要なｘ方向成分およびｙ方向成分である
請求項２記載の画像処理装置。
【請求項４】
ｘｙ座標上の原画像情報を拡大および回転して記憶手段のｘｙ座標上に展開する画像処理を実行するにあたり、当該拡大および回転の成分を含む座標変換の行列の逆行列を生成する逆行列生成ステップと、
前記原画像情報の拡大および回転した際の変換後画像情報における前記記憶手段のｘｙ座標上での外接矩形に対応した座標を求める外接矩形取得ステップと、
前記外接矩形取得ステップで求めた外接矩形の内側で前記変換後画像情報の領域内となる座標を抽出する座標抽出ステップと、
前記座標抽出ステップによって抽出された座標について、前記逆行列生成ステップで生成された逆行列を用いて前記原画像情報に対応した座標を求め、その求めた座標の画素値を取得し、その取得した画素値を前記記憶手段の前記抽出された座標へ複製する複製ステップと
をコンピュータに実行させる画像処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置および画像処理プログラムに関する。
【背景技術】
【０００２】
従来、画像情報（イメージデータ）を任意の角度で回転する処理を行う場合、原画像情報を一旦拡大した後、任意角度への回転処理を行っている。これは、原画像情報の解像度と回転処理後の画像情報の解像度とが異なるため、回転処理を行うに先立ち、原画像情報の拡大処理を行って解像度を合わせるためである。
【０００３】
ここで、特許文献１では、画像情報を任意角度回転させるにあたり、複数本をまとめて直線描画する技術が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平６−２７４６１０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明は、原画像情報を拡大および回転するにあたり、拡大後の画像情報を格納する記憶領域を介さず処理する技術の提供を目的とする。
【課題を解決するための手段】
【０００６】
本願請求項１に係る発明は、ｘｙ座標上の原画像情報を拡大および回転して記憶手段のｘｙ座標上に展開するにあたり、当該拡大および回転の成分を含む座標変換の行列の逆行列を生成する逆行列生成手段と、前記原画像情報の拡大および回転した際の変換後画像情報における前記記憶手段のｘｙ座標上での外接矩形に対応した座標を求める外接矩形取得手段と、前記外接矩形取得手段で求めた外接矩形の内側で前記変換後画像情報の領域内となる座標を抽出する座標抽出手段と、前記座標抽出手段によって抽出された座標について、前記逆行列生成手段で生成された逆行列を用いて前記原画像情報に対応した座標を求め、その求めた座標の画素値を取得し、その取得した画素値を前記記憶手段の前記抽出された座標へ複製する複製手段とを備える画像処理装置である。
【０００７】
本願請求項２に係る発明は、前記逆行列生成手段が、前記座標変換の行列として前記原画像情報の平行移動成分を含んだものの逆行列を生成する請求項１記載の画像処理装置である。
【０００８】
本願請求項３に係る発明は、前記平行移動成分として、前記原画像情報のｘ座標およびｙ座標の各々の最小値もしくは最大値と、前記変換後画像情報のｘ座標およびｙ座標の各々の最小値もしくは最大値とを一致させるために必要なｘ方向成分およびｙ方向成分となっている請求項２記載の画像処理装置である。
【０００９】
本願請求項４に係る発明は、ｘｙ座標上の原画像情報を拡大および回転して記憶手段のｘｙ座標上に展開する画像処理を実行するにあたり、当該拡大および回転の成分を含む座標変換の行列の逆行列を生成する逆行列生成ステップと、前記原画像情報の拡大および回転した際の変換後画像情報における前記記憶手段のｘｙ座標上での外接矩形に対応した座標を求める外接矩形取得ステップと、前記外接矩形取得ステップで求めた外接矩形の内側で前記変換後画像情報の領域内となる座標を抽出する座標抽出ステップと、前記座標抽出ステップによって抽出された座標について、前記逆行列生成ステップで生成された逆行列を用いて前記原画像情報に対応した座標を求め、その求めた座標の画素値を取得し、その取得した画素値を前記記憶手段の前記抽出された座標へ複製する複製ステップとをコンピュータに実行させる画像処理プログラムである。
【発明の効果】
【００１０】
本願請求項１に係る発明では、原画像情報の拡大および回転を行うにあたり、拡大後の情報を記憶する領域を介さず直接記憶手段の対応座標へ画素値を展開することが可能となる。
【００１１】
本願請求項２に係る発明では、原画像情報の拡大および回転に加え、平行移動を含む処理について、拡大後の情報を記憶する領域を介さず直接記憶手段の対応座標へ画素値を展開することが可能となる。
【００１２】
本願請求項３に係る発明では、原画像情報のｘ座標およびｙ座標の各々の最小値もしくは最大値の位置を一致させた拡大および回転処理を行うことが可能となる。
【００１３】
本願請求項４に係る発明では、原画像情報の拡大および回転を行うにあたり、拡大後の情報を記憶する領域を介さず直接記憶手段の対応座標へ画素値を展開することが可能となる。
【図面の簡単な説明】
【００１４】
【図１】本実施形態に係る画像処理装置の概略構成を説明するブロック図である。
【図２】従来の拡大および回転処理の概念を説明する模式図である。
【図３】本実施形態に係る画像処理装置での処理の概念を説明する模式図である。
【図４】本実施形態に係る画像処理プログラムを説明するフローチャートである。
【図５】通常の回転と平行移動を伴う回転とを説明する模式図である。
【図６】平行移動成分の算出について説明する模式図である。
【図７】平行移動成分を示す模式図である。
【図８】外接矩形およびエッジリストを説明する模式図である。
【図９】逆行列による座標の逆変換および画素値の複製について説明する模式図である。
【発明を実施するための形態】
【００１５】
以下、本発明を実施するための形態（以下、「実施形態」という。）について説明する。なお、説明は以下の順序で行う。
１．画像処理装置の構成
２．従来の処理との比較
３．画像処理プログラム
４．具体例
【００１６】
＜１．画像処理装置の構成＞
［概略構成］
図１は、本実施形態に係る画像処理装置の概略構成を説明するブロック図であり、（ａ）は全体構成、（ｂ）は回転手段の詳細構成である。図１（ａ）に示すように、本実施形態に係る画像処理装置は、原画像情報を拡大および回転して記憶手段４に展開するもので、入力手段１、回転手段２、複製手段３を備えている。
【００１７】
入力手段１は、原画像情報を入力する部分である。原画像情報は、例えばページ記述言語から成り、入力手段１によって論理的なｘｙ座標上のビットマップデータに展開される。回転手段２は、原画像情報の拡大を含む回転処理を行う部分である。回転手段２については後段で詳述する。
【００１８】
複製手段３は、回転手段２によって処理した回転後の画像の座標から、対応する原画像情報の座標の画素値を複製する処理を行う。記憶手段４は複製手段３で複製した画素値を変換後画像情報として展開する記憶領域であり、例えばページバッファが用いられる。
【００１９】
［回転手段の構成］
図１（ｂ）に示すように、回転手段２は、逆行列生成手段２１、外接矩形取得手段２２、座標抽出手段２３を備えている。逆行列生成手段２１は、ｘｙ座標上の原画像情報を拡大および回転して記憶手段４のｘｙ座標上に展開するにあたり、拡大および回転の成分を含む座標変換の行列の逆行列を生成する部分である。
【００２０】
外接矩形取得手段２２は、原画像情報の拡大および回転した際の変換後画像情報における記憶手段４のｘｙ座標上での外接矩形に対応した座標を求める部分である。座標抽出手段２３は、外接矩形取得手段２２で求めた外接矩形の内側で変換後画像情報の領域内となる座標を抽出する部分である。
【００２１】
＜２．従来の処理との比較＞
ここで、本実施形態に係る画像処理装置の処理の概念を従来の処理の概念と比較して説明する。
【００２２】
［従来の処理］
図２は、従来の拡大および回転処理の概念を説明する模式図である。従来の処理では、原画像情報の拡大処理に拡大行列Ｍ１を用い、任意角回転の処理に回転行列Ｍ２を用いている。すなわち、先ず、原画像情報を拡大行列Ｍ１によって拡大する。その後、拡大後の画像に対して回転行列Ｍ２による任意角の回転処理を施す。
【００２３】
原画像情報に対して変換後画像情報の解像度が異なる場合、一旦原画像情報を拡大する必要がある。つまり、拡大行列Ｍ１と回転行列Ｍ２とを合成した行列を用い、原画像情報を直接拡大および回転すると、変換後画像情報の画素情報に抜けが生じてしまうためである。このため、一旦原画像情報を拡大して、拡大後の全ての画素の値を生成した後、全ての画素に対して回転処理を施す必要がある。したがって、原画像情報を拡大した拡大画像を保持しておく記憶領域（バッファ）が必要となる。
【００２４】
［本実施形態による処理］
図３は、本実施形態に係る画像処理装置での処理の概念を説明する模式図である。本実施形態では、原画像情報に対する拡大および回転を行う行列の逆行列Ｍ３を生成し、変換後画像情報の座標から逆行列Ｍ３を用いて原画像情報の座標を求める。そして、求めた原画像情報の座標における画素値を変換後画像情報の対応する座標の画素値としている。これにより、拡大画像を保持することなく、直接拡大および回転後の画素値を記憶手段に展開することになる。
【００２５】
＜３．画像処理プログラム＞
図４は、本実施形態に係る画像処理プログラムを説明するフローチャートである。本実施形態に係る画像処理プログラムは、コンピュータに実行させるステップを有している。コンピュータは本実施形態に係る画像処理プログラムを実行する演算部、プログラムや各種データを格納する記憶部、入出力部を備えている。コンピュータはパーソナルコンピュータ等の電子計算機のほか、印刷装置、複写装置、映像記録再生装置、携帯端末等の画像情報を取り扱うことのできる電子機器に組み込まれているものでもよい。また、本実施形態の情報処理プログラムは、ＣＤ−ＲＯＭ等の記録媒体に記録されていたり、ネットワークを介して配信されるものでもある。
【００２６】
ここで、図４に示すフローチャートに沿った説明で、図に示されない符号は図１を参照するものとする。先ず、入力手段１によって原画像情報の入力を行う（ステップＳ１０１）。原画像情報は、例えばページ記述言語から成るため、これをｘｙ座標上に展開しておく。
【００２７】
次に、回転手段２の逆行列生成手段２１によって逆行列の生成を行う（ステップＳ１０２）。本実施形態では、原画像情報を拡大および回転して記憶手段４のｘｙ座標上に展開するにあたり、この拡大および回転の成分を含む座標変換の行列の逆行列を生成する。
【００２８】
次に、回転手段２の外接矩形取得手段２２によって外接矩形の座標を取得する（ステップＳ１０３）。外接矩形は、原画像情報の拡大および回転した際の変換後画像情報における記憶手段４のｘｙ座標上での外接矩形である。例えば、原画像情報の隅部の座標について拡大および回転した際の変換後の座標から、変換後画像情報の外接矩形の隅部座標を取得する。
【００２９】
次に、取得した外接矩形について、その外接矩形の内側となる領域（座標）で、変換後画像情報の領域内にあたる座標の抽出を行う（ステップＳ１０４）。この判断は、回転手段２の座標抽出手段２３によって行う。外接矩形内であって変換後画像情報の領域内にあたる座標にはフラグを立てておく。
【００３０】
次に、フラグを立てた座標（記憶手段４のｘｙ座標上での外接矩形で変換後画像情報の領域内にある座標）について、先に生成した逆行列を用い、その座標に対応する原画像情報での座標を取得する（ステップＳ１０５）。そして、取得した原画像情報の座標における画素値を複製する（ステップＳ１０６）。ステップＳ１０５〜ステップＳ１０６の処理は、複製手段３によって行う。
【００３１】
このステップＳ１０５〜ステップＳ１０６の処理を、フラグを立てた座標の全てについて行う（ステップＳ１０７）。フラグを立てた次の座標がない場合（フラグを立てた全て座標について逆変換および複製が終わった場合）、複製した画素値を記憶手段４へ展開する処理を行う（ステップＳ１０９）。この処理は、複製手段３によって行う。なお、複製手段３は、フラグを立てた座標の一つずつについて座標の逆変換および画素値を取得し、記憶手段４へそのまま展開するようにしてもよい。
【００３２】
＜４．具体例＞
次に、本実施形態に係る画像処理装置および画像処理プログラムにおける画像処理の具体例を説明する。
【００３３】
［平行移動成分］
先ず、原画像情報の回転処理に伴う平行移動成分の算出について説明する。図５は、通常の回転と平行移動を伴う回転とを説明する模式図である。図５（ａ）に示す例は、通常の回転処理の状態を示している。ここでは、原画像情報Ｓについてｘｙ座標の原点Ｏを中心とした回転が行われ、変換後画像情報Ｓ’となっている。
【００３４】
これに対し、図５（ｂ）に示す例は、平行移動を伴う回転処理の状態を示している。この回転処理では、原画像情報Ｓの回転を行うとともに、ｘｙ方向の各々について平行移動することで、ｘｙ軸による第１象限に変換後画像情報Ｓ’が配置される。
【００３５】
すなわち、図５（ａ）に示すように、原画像情報Ｓについて単純に回転行列を用いて回転処理を施すと、例えば第１象限にあった原画像情報Ｓが回転角度によって第２象限や第３象限、第４象限に移動してしまう。そこで、回転後、ｘ方向、ｙ方向の各々に平行移動させることで、回転後の画像を常に第１象限に配置するようにする。これにより、ｘｙ軸を各々辺の一部とした外接矩形Ｂ−ｂｏｘ内での回転となる。
【００３６】
図６は、平行移動成分の算出について説明する模式図である。図６（ａ）に示す例では、長方形から成る原画像情報Ｓがｘｙ軸の第１象限に配置されている。原画像情報Ｓの原点Ｏ以外の隅部をそれぞれ座標（１）、座標（２）、座標（３）とする。
【００３７】
この原画像情報Ｓに対して単純な回転行列Ｍ２によって回転を施すと、ｘｙ軸の原点Ｏを中心に回転し、図６（ｂ）に示すような変換後画像情報Ｓ’が得られる。この際、原画像情報Ｓの隅部である座標（１）、座標（２）、座標（３）についての回転後のそれぞれ座標を座標（１’）、座標（２’）、座標（３’）とする。
【００３８】
平行移動成分を算出するには、変換後画像情報Ｓ’の座標のうち、ｘ方向およびｙ方向に各々最小の値となる座標に注目する。図６（ｂ）に示す例では、ｘ方向に最小の値をもつ座標（１’）と、ｙ方向に最小の値をもつ座標（２’）に注目する。
【００３９】
そして、座標（１’）のｘ座標の絶対値がｘ方向の平行移動成分、座標（２’）のｙ座用の絶対値がｙ方向の平行移動成分となる。図７は、平行移動成分を示す模式図である。図７（ａ）に示すように、原画像情報Ｓを回転行列Ｍ２によって回転移動すると、図７（ｂ）に示すように、変換後画像情報Ｓ’となる。この原画像情報Ｓの座標（１）に対応した変換後画像情報Ｓ’の座標（１’）のｘ座標の絶対値ｇがｘ方向の平行移動成分となり、原画像情報Ｓの座標（２）に対応した変換後画像情報Ｓ’の座標（２’）のｙ座標の絶対値ｈがｙ方向の平行移動成分となる。
【００４０】
［拡大・回転・平行移動の行列］
上記のように、平行移動成分ｇ、ｈを算出した後、この平行移動成分を含む拡大、回転の行列を求める。すなわち、図２に示す拡大行列Ｍ１と回転行列Ｍ２との合成行列である２×２行列を数１のように定義する。この２×２行列に平行移動成分ｇ、ｈを加えた３×３行列を数２のように定義する。ここで、ｘ、ｙは、原画像情報のｘｙ軸上の座標、ｘ’、ｙ’は変換後画像情報のｘｙ軸上の座標である。本実施形態では、数２に示す３×３行列の成分のうち、ａ，ｂ，ｃ，ｄ，ｇ，ｈのみを抽出して、数３に示すような３×２行列を定義する。この３×２行列によって、原画像情報の拡大、回転および平行移動の各成分を表すことになる。
【００４１】
【数１】
2010199663.tif 000003
【００４２】
【数２】
2010199663.tif 000004
【００４３】
【数３】
2010199663.tif 000005
【００４４】
その後、図１（ｂ）に示す逆行列生成手段２１によって、ａ，ｂ，ｃ，ｄ，ｇ，ｈの３×２行列に対する３×２の逆行列を生成する。
【００４５】
［外接矩形およびエッジリストの取得］
次に、図１（ｂ）に示す外接矩形取得手段２２によって、変換後画像情報における外接矩形を取得する。外接矩形は、原画像情報に対する拡大・回転および平行移動する３×２行列を用い、原画像情報の隅部の変換後の座標を求め、最上端、最下端の座標を通るｘ軸に沿った線と、最左端、最右端の座標を通るｙ軸に沿った線とで囲まれる線を求める。
図８は、外接矩形およびエッジリストを説明する模式図である。図８右図のように、拡大、回転および平行移動した変換後画像情報Ｓ’の外接矩形Ｂ−ｂｏｘを取得する。
【００４６】
次に、この外接矩形Ｂ−ｂｏｘの内側の領域で、変換後画像情報Ｓ’の領域内となる座標を求め、エッジリストを構成する。エッジリストは、外接矩形Ｂ−ｂｏｘについてｘ軸方向に沿った１ラインごとの開始座標と終了座標とを格納する情報列である。
【００４７】
図８に示すように、エッジリストは、外接矩形Ｂ−ｂｏｘのｘ軸方向に沿った１ラインごとの要素を持つため、外接矩形Ｂ−ｂｏｘの高さ（ｙ軸方向の大きさ）分に相当する数の要素を持つことになる。各要素は、外接矩形Ｂ−ｂｏｘのｙ座標ｙ＿０〜ｙ＿ｍａｘまで設けられている。
【００４８】
各要素の値は、ｙ軸の値に対応したｘ軸方向の１ライン分について、変換後画像情報Ｓ’の外形と交わる点のｘ座標となっている。例えば、ｙ＿ｎに対応したエッジリストの要素は、ｙ座標ｙ＿ｎの位置におけるｘ軸方向に沿った１ラインと、変換後画像情報Ｓ’の外形と交わる点ＳＸｎ、ＥＸｎとなっている。つまり、ｙ軸ｙ＿ｎにおけるｘ軸方向に沿った１ラインでは、ｘ座標ＳＸｎ〜ＥＸｎまでが外接矩形Ｂ−ｂｏｘ内であり、かつ変換後画像情報Ｓ’の領域内であることが分かる。エッジリストは、図１（ｂ）に示す座標抽出手段２３が生成する。
【００４９】
［逆行列による逆変換および画素値複製］
図９は、逆行列による座標の逆変換および画素値の複製について説明する模式図である。この逆行列による座標の逆変換および画素値の複製は、図１（ａ）に示す複製手段３が行う。先ず、図９右図に示すように、外接矩形Ｂ−ｂｏｘについて先に取得したエッジリスト（図８）を順に参照し、１つの要素について開始座標から終了座標まで座標を逆行列によって逆変換し、図９左図に示す原画像情報の対応する座標を求める。
【００５０】
エッジリストはｙ座標ごとの要素として設けられているため、ｙ座標は固定で、エッジリストの開始座標から終了座標までｘ座標について、各々逆行列による逆変換を行う。ここれにより、変換後画像情報Ｓ’の領域内の座標について、その座標と対応する原画像情報Ｓの座標が得られる。
【００５１】
原画像情報Ｓの対応する座標が得られたら、その座標における画素値を得る。これを、逆変換前の座標、すなわち変換後画像情報Ｓ’の座標に対応付けして複製する。例えば、変換後画像情報Ｓ’におけるｙ＿ｎに対応したエッジリストにおいて、開始座標ＳＸｎ〜ＥＸｎまでの間にある座標の座標値が（ＳＸｎａ、ｙ＿ｎ）であったとすると、この座標を３×２逆行列によって逆変換する。これにより、原画像情報Ｓの座標（ｘｎａ、ｙｎａ）が得られる。そして、この座標（ｘｎａ、ｙｎａ）の画素値を複製し、変換後画像情報Ｓ’の座標（ＳＸｎａ、ｙ＿ｎ）と対応付けする。
【００５２】
この処理を、エッジリストの全ての開始座標から終了座標まで行う。そして、この複製した画素値を、記憶手段４に展開する。
【符号の説明】
【００５３】
１…入力手段、２…回転手段、３…複製手段、４…記憶手段、２１…逆行列生成手段、２２…外接矩形取得手段、２３…座標抽出手段
【図１】
2010199663.tif 000006
【図２】
2010199663.tif 000007
【図３】
2010199663.tif 000008
【図４】
2010199663.tif 000009
【図５】
2010199663.tif 000010
【図６】
2010199663.tif 000011
【図７】
2010199663.tif 000012
【図８】
2010199663.tif 000013
【図９】
2010199663.tif 000014