(57)【要約】【課題】画像の傾き補正を小さな演算回路で高速に処理できる画像処理装置を提供する。【解決手段】傾斜検知部２０はスキャナで読み取った原稿の傾き角度を検知し、マトリックス選択部３１は検知された傾き角度に応じたサイズおよび形状のブロックを選択する。メモリ制御部３３は、画像メモリ１７に格納された画像をマトリックス選択部３１の決定したブロック単位に分割すると共に、画像の傾きが補正されるように隣り合うブロック同士の相対位置をずらしながら各ブロックを画像メモリ１７上に再配置する。【選択図】図１
2006203710.tif 000002
【特許請求の範囲】
【請求項１】
画像の傾きを補正する画像処理装置において、
複数画素からなるブロック単位に分割する処理対象画像における各ブロックの配置アドレスを、補正角度に応じて変更する配置制御手段を有する
ことを特徴とする画像処理装置。
【請求項２】
ブロック単位に画像データを圧縮する圧縮手段をさらに備え、
配置アドレスの変更処理を行なった後に圧縮する
ことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
ブロック単位に画像データを圧縮する圧縮手段と、圧縮された画像データをブロック単位に元の状態に伸張する伸張手段とをさらに備え、
伸張後の各ブロックに対して配置アドレスの変更処理を行なう
ことを特徴とする請求項１に記載の画像処理装置。
【請求項４】
画像の傾きを補正する画像処理装置において、
処理対象画像を複数画素からなるブロック単位に分割するブロック化手段と、
前記ブロック化手段で分割して得た各ブロックを画像メモリ上に配置する配置制御手段とを有し、
補正角度に応じて、隣り合うブロック同士の相対位置を分割時と画像メモリ上に配置したときとでずらすようにした
ことを特徴とする画像処理装置。
【請求項５】
ブロック単位に画像データを圧縮する圧縮手段と、圧縮された画像データをブロック単位に元の状態に伸張する伸張手段とを備え、
前記ブロック化手段で処理対象画像を分割して得た各ブロックを前記圧縮手段に与え、
前記配置制御手段は、前記伸張手段によって伸張された各ブロックを画像メモリ上に配置する
ことを特徴とする請求項４に記載の画像処理装置。
【請求項６】
補正角度に応じて前記ブロックのサイズを変更する
ことを特徴とする請求項１、２、３、４または５に記載の画像処理装置。
【請求項７】
左傾斜を補正するときは、処理対象画像上での元の位置関係に対して各ブロックを、その左隣のブロックより下にずらし、かつその上隣のブロックより左にずらすように配置し、
右傾斜を補正するときは、処理対象画像上での元の位置関係に対して各ブロックを、その右隣のブロックより下にずらし、かつその上隣のブロックより右にずらすように配置する
ことを特徴とする請求項１、２、３、４、５または６に記載の画像処理装置。
【請求項８】
前記ブロックは非矩形のものも含む
ことを特徴とする請求項１、２、３、４、５、６または７に記載の画像処理装置。
【請求項９】
左傾斜を補正するときは、各ブロックを矩形領域とその左下角にある画素の左隣の１画素とからなる形状にし、かつ処理対象画像上で各ブロックの前記矩形領域が行列状に並ぶように処理対象画像を分割し、各ブロックがその左隣のブロックより１画素分だけ下にずれ、かつその上隣のブロックより１画素分だけ左にずれるように画像メモリ上に配置し、
右傾斜を補正するときは、各ブロックを矩形領域とその右下角にある画素の右隣の１画素とからなる形状にし、かつ処理対象画像上で各ブロックの前記矩形領域が行列状に並ぶように処理対象画像を分割し、各ブロックがその右隣のブロックより１画素分だけ下にずれ、かつその上隣のブロックより１画素分だけ右にずれるように画像メモリ上に配置する
ことを特徴とする請求項１、２、３、４、５、６または７に記載の画像処理装置。
【請求項１０】
１つのブロックを矩形領域とその左下角にある画素の左隣の１画素とからなる形状にし、左傾斜を補正するときは、処理対象画像上で各ブロックの前記矩形領域が行列状に並ぶように処理対象画像を分割し、各ブロックがその左隣のブロックより１画素分だけ下にずれ、かつその上隣のブロックより１画素分だけ左にずれるように画像メモリ上に配置し、右傾斜を補正するときは左傾斜を補正する場合の逆変換となるように各ブロックの分割および配置を行なう、
または、１つのブロックを矩形領域とその右下角にある画素の右隣の画素とからなる形状にし、右傾斜を補正するときは、処理対象画像上で各ブロックの前記矩形領域が行列状に並ぶように処理対象画像を分割し、各ブロックがその右隣のブロックより１画素分だけ下にずれ、かつその上隣のブロックより１画素分だけ右にずれるように画像メモリ上に配置し、左傾斜を補正するときは右傾斜を補正する場合の逆変換となるように各ブロックの分割および配置を行なう
ことを特徴とする請求項１、２、３、４、５、６または７に記載の画像処理装置。
【請求項１１】
画像の傾きを検知する傾斜検知手段を有し、
この傾斜検知手段で検知した傾きを補正する
ことを特徴とする請求項１、２、３、４、５、６、７、８、９または１０に記載の画像処理装置。
【請求項１２】
前記傾斜検知手段は、原稿または画像形成される記録紙の搬送経路の幅方向に所定間隔を空けて配置された２つのセンサでそれぞれ原稿または記録紙の通過タイミングを検知し、これらのセンサが検知した通過タイミングの時間差に基づいて原稿または記録紙の傾斜を求めて画像の傾きを検知する
ことを特徴とする請求項１１に記載の画像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像の傾きを補正する画像処理装置に係わり、特に、簡易な回路で高速に画像の傾きを補正するための技術に関する。
【背景技術】
【０００２】
通常、画像の傾き補正はアフィン（affine）変換を用いた回転処理で行なわれる。たとえば、ブロック単位にＪＰＥＧ（Joint Photographic Experts Group）方式で圧縮されている画像をブロック毎に展開し、ブロック毎にアフィン変換処理を施し、再度圧縮するという一連の処理を流れ作業的に行なうことで、画像の傾き補正を少ないワークメモリで可能にする技術が開示されている（特許文献１参照）。
【０００３】
【特許文献１】特開２００４−６４１８０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
アフィン変換を用いた画像の回転処理はｓｉｎ、ｃｏｓなどの三角関数を用いた行列演算になるので処理負担が大きい。これを短時間に処理するためには、高速のＣＰＵによるソフトウェア処理で実現するか、ＤＳＰ（Digital Signal Processor）などの特別なハードウェアを用意しなければならず、装置価格が高騰するという問題があった。
【０００５】
本発明は、上記の問題を解決しようとするものであり、画像の傾き補正を小さな演算回路で高速に処理できる画像処理装置を提供することを目的としている。
【課題を解決するための手段】
【０００６】
請求項１に係わる発明は、画像の傾きを補正する画像処理装置において、
複数画素からなるブロック単位に分割する処理対象画像における各ブロックの配置アドレスを、補正角度に応じて変更する配置制御手段を有する
ことを特徴とする画像処理装置である。
【０００７】
上記発明によれば、処理対象画像をブロック単位に分割するとき、または分割したブロックを再配置するときの各ブロックの配置アドレスを補正角度に応じて変更する。すなわち、ブロック単位での回転は行なわず、各ブロックの配置を変更することで傾き補正を行なう。ブロック単位で見ると傾きは補正されないが、処理対象画像全体で見ると傾きが補正されることになる。
【０００８】
たとえば、各ブロックが縦横の行列状に整列するように処理対象画像を分割し、これらのブロックを画像メモリ上に配置するときの配置アドレスを画像の傾斜が補正されるように変更する。逆に、各ブロックを縦横の行列状に通常どおり並べると画像の傾斜が補正されるように、処理対象画像をブロック単位に分割する際に各ブロックの配置アドレスを変更してもよい。
【０００９】
請求項２に係わる発明は、ブロック単位に画像データを圧縮する圧縮手段をさらに備え、
配置アドレスの変更処理を行なった後に圧縮する
ことを特徴とする請求項１に記載の画像処理装置である。
【００１０】
上記発明によれば、処理対象画像をブロックに分割する際に配置アドレスの変更処理を行なって得た各ブロックをブロック単位に圧縮する。伸張後の各ブロックを通常どおりに縦横の行列状に整列させて配置すれば画像の傾きが補正される。圧縮手段に画像データをブロック単位に供給する処理と配置アドレスの変更処理との共通化が可能になる。
【００１１】
請求項３に係わる発明は、ブロック単位に画像データを圧縮する圧縮手段と、圧縮された画像データをブロック単位に元の状態に伸張する伸張手段とをさらに備え、
伸張後の各ブロックに対して配置アドレスの変更処理を行なう
ことを特徴とする請求項１に記載の画像処理装置である。
【００１２】
上記発明によれば、各ブロックが縦横の行列状に整列するように処理対象画像を分割して各ブロックを圧縮しておき、伸張後の各ブロックを配置する際に配置アドレスの変更を行なって画像の傾きを補正する。伸張手段の出力するブロック単位の画像データを画像メモリ上に配置する処理と配置アドレスの変更処理との共通化が可能になる。
【００１３】
請求項４に係わる発明は、画像の傾きを補正する画像処理装置において、
処理対象画像を複数画素からなるブロック単位に分割するブロック化手段と、
前記ブロック化手段で分割して得た各ブロックを画像メモリ上に配置する配置制御手段とを有し、
補正角度に応じて、隣り合うブロック同士の相対位置を分割時と画像メモリ上に配置したときとでずらすようにした
ことを特徴とする画像処理装置である。
【００１４】
上記発明によれば、処理対象画像をブロック単位に分割するときと、分割された各ブロックを画像メモリ上に配置したときとで、隣り合うブロック同士の相対位置を変更することで画像の傾きを補正する。すなわち、ブロック単位での回転は行なわず、分割時と再配置後とで隣り合うブロック同士の相対位置をずらすことで傾きが補正される。ブロック単位で見ると傾きは補正されないが処理対象画像全体で見ると傾きが補正されることになる。隣り合うブロック同士の相対位置をずらす処理は、ブロック化手段と配置制御手段のいずれかまたは双方で行なわれる。
【００１５】
たとえば、各ブロックが縦横の行列状に整列するように処理対象画像を分割し、画像の傾斜が補正されるように各ブロックを隣り合うブロック同士の相対位置を上下左右にずらしながら配置する。逆にブロックに分割する際に隣り合うブロック同士を相対的に上下左右にずらすようにし、これらが縦横の行列状に整列するように配置し直すことで傾きを補正してもよい。
【００１６】
請求項５に係わる発明は、ブロック単位に画像データを圧縮する圧縮手段と、圧縮された画像データをブロック単位に元の状態に伸張する伸張手段とを備え、
前記ブロック化手段で処理対象画像を分割して得た各ブロックを前記圧縮手段に与え、
前記配置制御手段は、前記伸張手段によって伸張された各ブロックを画像メモリ上に配置する
ことを特徴とする請求項４に記載の画像処理装置である。
【００１７】
上記発明によれば、ブロック化手段が処理対象画像を分割して得た各ブロックを圧縮手段で圧縮し、圧縮された画像データをブロック単位に伸張手段で伸張して得た各ブロックの画像データを配置制御手段が画像メモリ上に配置する。ブロック化手段が処理対象画像をブロックに分割する処理と圧縮手段に画像データをブロック単位に供給する処理とが共通化される。また、配置制御手段がブロック単位に画像データを画像メモリ上に配置する処理と伸張手段の出力するブロック単位の画像データを画像メモリ上に配置する処理とが共通化される。
【００１８】
請求項６に係わる発明は、補正角度に応じて前記ブロックのサイズを変更する
ことを特徴とする請求項１、２、３、４または５に記載の画像処理装置である。
【００１９】
上記発明によれば、補正角度が大きいときはブロックサイズを小さくし、補正角度が小さいときはブロックサイズを大きくする。補正角度が小さいときは大きいサイズの１ブロックを複数の小ブロックの集合として構成してもよい。ブロックサイズを調整することで、隣り合うブロック同士の相対位置のずれ量を一定（たとえば１画素）にしながら様々な角度を補正することが可能になる。ずれ量を１画素（最小量）にすることで、ブロック同士の境界箇所で画像のつながりが良好になる。
【００２０】
請求項７に係わる発明は、左傾斜を補正するときは、処理対象画像上での元の位置関係に対して各ブロックを、その左隣のブロックより下にずらし、かつその上隣のブロックより左にずらすように配置し、
右傾斜を補正するときは、処理対象画像上での元の位置関係に対して各ブロックを、その右隣のブロックより下にずらし、かつその上隣のブロックより右にずらすように配置する
ことを特徴とする請求項１、２、３、４、５または６に記載の画像処理装置である。
【００２１】
上記発明によれば、縦横２×２の４つのブロックで見ると、左傾斜を補正するときは右回転したようにブロックの相対位置がずれ、右傾斜を補正するときは左回転したようにブロックの相対位置がずれることになる。ずらし量が１画素ずつとなるようにブロックサイズを補正角度に応じて設定することが好ましい。
【００２２】
請求項８に係わる発明は、前記ブロックは非矩形のものも含む
ことを特徴とする請求項１、２、３、４、５、６または７に記載の画像処理装置である。
【００２３】
上記発明によれば、ブロックが矩形の場合に隣り合うブロックの相対位置を上下左右にずらすとブロック同士の間に隙間の画素が生じるので、このような隙間の画素が生じないようにブロックの形状を非矩形に設定する。
【００２４】
請求項９に係わる発明は、左傾斜を補正するときは、各ブロックを矩形領域とその左下角にある画素の左隣の１画素とからなる形状にし、かつ処理対象画像上で各ブロックの前記矩形領域が行列状に並ぶように処理対象画像を分割し、各ブロックがその左隣のブロックより１画素分だけ下にずれ、かつその上隣のブロックより１画素分だけ左にずれるように画像メモリ上に配置し、
右傾斜を補正するときは、各ブロックを矩形領域とその右下角にある画素の右隣の１画素とからなる形状にし、かつ処理対象画像上で各ブロックの前記矩形領域が行列状に並ぶように処理対象画像を分割し、各ブロックがその右隣のブロックより１画素分だけ下にずれ、かつその上隣のブロックより１画素分だけ右にずれるように画像メモリ上に配置する
ことを特徴とする請求項１、２、３、４、５、６または７に記載の画像処理装置である。
【００２５】
上記発明によれば、左傾斜を補正する場合と右傾斜を補正する場合とで異なる形状のブロックを使用する。左傾斜を補正する場合と右傾斜を補正する場合とでは隣り合うブロック同士の相対位置のずらし方が異なるので、縦横の行列状にブロックが整列するようにして分割した各ブロックの相対位置をずらすと、隙間を補間するためのブロック形状が左傾斜を補正する場合と右傾斜を補正する場合とで相違する。そこで、補正方向に応じてブロック形状を変更している。
【００２６】
請求項１０に係わる発明は、１つのブロックを矩形領域とその左下角にある画素の左隣の１画素とからなる形状にし、左傾斜を補正するときは、処理対象画像上で各ブロックの前記矩形領域が行列状に並ぶように処理対象画像を分割し、各ブロックがその左隣のブロックより１画素分だけ下にずれ、かつその上隣のブロックより１画素分だけ左にずれるように画像メモリ上に配置し、右傾斜を補正するときは左傾斜を補正する場合の逆変換となるように各ブロックの分割および配置を行なう、
または、１つのブロックを矩形領域とその右下角にある画素の右隣の画素とからなる形状にし、右傾斜を補正するときは、処理対象画像上で各ブロックの前記矩形領域が行列状に並ぶように処理対象画像を分割し、各ブロックがその右隣のブロックより１画素分だけ下にずれ、かつその上隣のブロックより１画素分だけ右にずれるように画像メモリ上に配置し、左傾斜を補正するときは右傾斜を補正する場合の逆変換となるように各ブロックの分割および配置を行なう
ことを特徴とする請求項１、２、３、４、５、６または７に記載の画像処理装置である。
【００２７】
上記発明によれば、ブロックの形状を、左傾斜を補正する場合と右傾斜を補正する場合とで共通化し、処理対象画像の分割および配置の仕方が左傾斜を補正する場合と右傾斜を補正する場合とで逆変換となるようにする。
【００２８】
請求項１１に係わる発明は、画像の傾きを検知する傾斜検知手段を有し、
この傾斜検知手段で検知した傾きを補正する
ことを特徴とする請求項１、２、３、４、５、６、７、８、９または１０に記載の画像処理装置である。
【００２９】
上記発明によれば、画像の傾斜を傾斜検知手段で検知し、その検知した傾斜角度を補正する。傾斜の検知は画像データを解析して行なってもよいし、原稿を読み取って画像データを取得する場合は原稿の傾きを検知してもよい。また、画像を記録紙上に形成する場合に記録紙の傾斜をセンサなどで検知し、記録紙の傾きが補正されるように画像を傾斜させるようにしてもよい。
【００３０】
請求項１２に係わる発明は、前記傾斜検知手段は、原稿または画像形成される記録紙の搬送経路の幅方向に所定間隔を空けて配置された２つのセンサでそれぞれ原稿または記録紙の通過タイミングを検知し、これらのセンサが検知した通過タイミングの時間差に基づいて原稿または記録紙の傾斜を求めて画像の傾きを検知する
ことを特徴とする請求項１１に記載の画像処理装置である。
【００３１】
上記発明によれば、原稿や記録紙の先端あるいは後端が搬送経路の幅方向に間隔を空けて配置された２つのセンサを通過するタイミングの時間差に基づいて原稿または記録紙の傾斜角度を検知する。通過するタイミングの時間差はその間の処理ライン数で計数してもよい。
【発明の効果】
【００３２】
本発明に係わる画像処理装置によれば、処理対象画像を分割したブロック単位での回転は行なわずに、各ブロックの配置を変更するだけで傾きを補正するので、小さな演算回路で高速に画像の傾き補正を行なうことができる。また、ブロックの配置を変更するだけで主走査方向と副走査方向の角度補正を一度に行なうことができる。
【００３３】
補正角度に応じてブロックのサイズを変更するものでは、補正角度に合ったブロックサイズを選択することで画像の歪みが少ない滑らかな傾斜補正が実現される。
【００３４】
ブロックの形状を非矩形にしたものでは、隣り合うブロックの相対位置を上下左右にずらした場合に生じるブロック同士の隙間を非矩形部分の画素で補間することができ、別途の補間処理が不要となって処理の高速化に貢献する。
【００３５】
圧縮伸張処理とブロックの配置変更処理とを組み合わせたものでは、ブロック単位に画像データを圧縮手段に供給する処理と傾き補正におけるブロックへの分割処理とを共通化したり、伸張した画像データをブロック単位に画像メモリ上に配置する処理と傾き補正における画像メモリ上へのブロックの配置処理とを共通化したりすることができ、装置構成の簡略化や処理の高速化を図ることができる。
【発明を実施するための最良の形態】
【００３６】
以下、図面に基づき本発明の各種実施の形態を説明する。
【００３７】
図１は、本発明の実施の形態に係わる画像処理装置１０の主要部の構成を表わしている。画像処理装置１０は、スキャナで原稿画像を読み取り、その複製画像を記録紙上に作成して出力する、いわゆるデジタル複写機として構成されている。図１は、画像処理装置１０のうち、原稿の読み取りに関連する部分を示している。
【００３８】
原稿は、図示省略の自動原稿送り装置によって搬送され、その搬送経路の途中に配置されたＣＣＤ１１（ラインイメージセンサ）を用いて、いわゆる流し読み方式で原稿画像が読み取られる。すなわち、ＣＣＤ１１は、原稿の搬送方向（副走査方向）と直交する主走査方向に１ライン分の長さを有しており、原稿がＣＣＤ１１の受光部上を通過する間にライン単位の読み取り動作を繰り返し行なうことで原稿画像を２次元に読み取るようになっている。
【００３９】
ＣＣＤ駆動回路１２は、ＣＣＤ１１にクロック１３とライン同期信号１４とを供給する回路である。Ａ／Ｄ変換部１５は、ＣＣＤ１１が出力するアナログの画像信号を多値のデジタル画像信号に変換する回路である。画像処理部１６は、Ａ／Ｄ変換部１５から入力されるデジタル画像信号にシェーディング補正や階調補正、２値化処理などを行なった後、画像メモリ１７に画像データを格納する機能を果たす。画像メモリ１７は、１ページ分の画像データを格納可能なページメモリでも、ページの一部をなす複数ライン分の画像データを格納するためのバンドメモリでもよい。ブロック圧縮部１８は、画像データをブロック単位に圧縮する機能を果たす回路である。
【００４０】
傾斜検知部２０は、前述した図示省略の自動原稿送り装置に搬送される原稿の傾斜を検知する回路である。傾斜検知部２０は、搬送経路の幅方向（主走査方向）に間隔を空けて配置された第１センサ２１および第２センサ２２と、カウンタ回路２５と、ラッチ回路２６とを主要部として構成されている。
【００４１】
第１センサ２１と第２センサ２２とは、原稿の幅方向両端に近い部分に配置するとよい。第１センサ２１および第２センサ２２の出力信号２１ａ、２２ａは、通常はローレベルで、搬送される原稿を検知している間だけハイレベルに変化し、第１センサ２１と第２センサ２２のいずれかが先に原稿を検知するとＯＲ回路２３からスタート信号２３ａが出力され、その後、第１センサ２１と第２センサ２２の双方が原稿を検知するとＡＮＤ回路２４からストップ信号２４ａが出力されるようになっている。
【００４２】
カウンタ回路２５には、ライン同期信号１４とスタート信号２３ａとストップ信号２４ａとが入力されており、スタート信号２３ａが入力されてからストップ信号２４ａが入力されるまでの間に入力されたライン同期信号１４の数を計数し、その計数結果を角度判別信号２５ａとして出力する。角度判別信号２５ａが示すライン数と、第１センサ２１と第２センサ２２との配置距離とから傾斜角度を割り出すことができる。
【００４３】
ＡＮＤ回路２７の出力は、スタート信号２３ａの出力時点で第１センサ２１が先に原稿を検知しているときハイレベルとなり、第２センサ２２が先に原稿を検知しているときローレベルになる。ラッチ回路２６は、スタート信号２３ａが出力された時点のＡＮＤ回路２７の出力値を保持する回路であり、原稿が右傾斜か左傾斜かを示す左右判別信号２６ａを出力する。
【００４４】
マトリックス選択部３１とアドレス演算部３２とメモリ制御部３３は、画像メモリ１７に格納された画像データをブロック単位に分割して読み出すときと分割した各ブロックを画像メモリ１７上に再格納するときとで各ブロックの配置アドレスを変更することにより、画像の傾きを補正する回路部分であり、ブロック化手段と配置制御手段としての機能を果たす。
【００４５】
マトリックス選択部３１には角度判別信号２５ａと左右判別信号２６ａとが入力されている。マトリックス選択部３１はこれらの入力信号２５ａ、２６ａに基づいて、ブロックのサイズや形状を選択する。アドレス演算部３２は、マトリックス選択部３１が選択したブロックの種類に応じて、画像メモリ１７上での各ブロックの配置アドレスを演算する機能を果たす。メモリ制御部３３は、アドレス演算部３２の演算結果に基づいて画像メモリ１７に対するアドレス信号やリード信号、ライト信号などを出力する機能を果たす。
【００４６】
次に、画像処理装置１０における画像の傾き補正の原理を説明する。
【００４７】
自動原稿送り装置によって原稿が傾斜して搬送された結果、図２に示すように原稿４１が主走査方向Ｂに対して５.６２５度傾いた状態で読み取られたものとする。この原稿４１には、縦横の罫線と大きく「Ａ」の文字とが描かれている。
【００４８】
図３は、読み取った原稿４１の罫線部分の一部を拡大して示したものである。図中の各格子は１画素を示している。ここで、５.６２５度は４５度の１／８であり、画素単位で詳細にみると、図３に示すような画像になっている。すなわち、読み取った罫線４２は、８画素で上下または左右方向に１画素ずれる画像になっている。
【００４９】
そこで、マトリックス選択部３１とアドレス演算部３２とメモリ制御部３３は、図３の画像を図４に示すように８画素×８画素のマトリックス形状をなした４つのブロック４３ａ〜４３ｄに分割する。これらのブロック４３ａ〜４３ｄを図５に示すように画像メモリ１７上に再配置することにより、画像の傾き補正が行なわれ、罫線４２は正しく縦横のラインになる。
【００５０】
より詳細には、図４に示すような左傾斜した画像の傾きを補正するときは、元の画像上での位置関係に対して各ブロック４３ａ〜４３ｄを、その左隣のブロックより１画素分だけ下にずらし、かつその上隣のブロックより１画素分だけ左にずらすように再配置する。逆に右傾斜を補正するときは、読み取った画像上での元の位置関係に対して各ブロックを、その右隣のブロックより１画素分だけ下にずらし、かつその上隣のブロックより１画素分だけ右にずらすように再配置すればよい。図６は右傾斜した補正前の画像の一例を、図７は図６に示す画像の各ブロックを再配置して傾き補正した画像を示している。
【００５１】
図５や図７に示す画像の中央にある空白画素４４は、ブロック４３ａ〜４３ｄを再配置することによって生じる画素で、傾きを補正することにより発生する長さの違いを補正する役割を果たす。
【００５２】
たとえば、図８に示すように、原稿を５.６２５度左傾斜して読み取ったために縦線が斜め線５１として読み取られたものとする。この斜め線５１を含む元画像５２（同図（ａ））を、同図（ｂ）に示すよう傾き補正した画像５３に変換する場合を考える。元画像５２において斜め線５１は副走査方向（図中の上下方向）に１２８ライン分の長さがあり、両端で主走査方向（図中の左右方向）に１６画素分ずれている。
【００５３】
図８（ａ）に示す元画像５２を、８画素×８画素を１ブロックとして分割し、分割後の各ブロックを、左隣のブロックより１画素分だけ下にずらし、かつ上隣のブロックより１画素分だけ左にずらすという規則を適用しながら再配置すると、同図（ｂ）のような縦線５４が形成される。このとき、上から８ブロック目と９ブロック目の間の空白画素４４がちょうど縦線５４上に挿入される。その結果、傾き補正後の縦線５４は１２９ライン分の長さを持つ線分になる。元の斜め線５１の長さＬはピタゴラスの定理より１２８.９９（Ｌ×Ｌ＝１２８×１２８＋１６×１６）であり、本方式でブロックを再配置することにより、空白画素４４が長さ調整画素として作用して自動的に線分の長さ調整が行なわれることが分かる。
【００５４】
図８に示す例では、空白画素４４はその上の画素と同じ画像データにすればよい。先に述べたように、左傾斜を補正する場合は各ブロックがその左隣のブロックより１画素分だけ下にずらして配置される。このように配置した際に空白画素４４の位置にその上の画素の複製が自動的に作成されるようにするためには、ブロックを図９に示すような形状にすればよい。すなわち、８画素×８画素の矩形領域にその左下角の画素の左隣に補間画素６１をさらに加えた形状の非矩形ブロック６０とすればよい。補間画素６１の部分の画素はその左隣の非矩形ブロックの右下角の画素と重複することになる（図１０（ａ）参照）。
【００５５】
このような形状の非矩形ブロック６０で画像を分割して再配置すると、空白画素であった位置にその上の画素と同じ内容の画素が配置されるようになる。すなわち、図１０（ａ）に示すように非矩形ブロック６０ａ〜６０ｄの矩形領域の部分が行列状に整列するようにして元画像を分割し、各非矩形ブロック６０ａ〜６０ｄを、左隣のブロックより１画素分だけ下にずらし、かつ上隣のブロックより１画素分だけ左にずらすという規則を適用して再配置すると、同図（ｂ）に示すようになり、上の画素６２ａ、６２ｂと同じ内容を持つ補間画素６１ａ、６１ｂが空白画素に自動的に置き換わるようになる。
【００５６】
図１１は、右傾斜を補正する場合の非矩形ブロック６５を表わしている。非矩形ブロック６５は、８画素×８画素の矩形領域にその右下角の画素の右隣に補間画素６６をさらに加えた形状をなしている。右傾斜を補正する場合は各ブロックがその右隣のブロックより１画素分だけ下にずらして配置されるので、図１１に示す非矩形ブロック６５のような形状にすることで、空白画素４４の位置にその上の画素の複製が自動的に作成されるようになる。
【００５７】
図１２は、右傾斜補正用の非矩形ブロック６５で画像を分割して再配置する様子を示している。図１２（ａ）に示すように非矩形ブロック６５ａ〜６５ｄの矩形領域の部分が行列状に整列するようにして元画像を分割し、各非矩形ブロック６５ａ〜６５ｄを、右隣のブロックより１画素分だけ下にずらし、かつ上隣のブロックより１画素分だけ右にずらすという規則を適用して再配置すると、同図（ｂ）に示すようになり、上の画素６７ａ、６７ｂと同じ内容を持つ補間画素６６ａ、６６ｂが空白画素に自動的に置き換わるようになる。
【００５８】
次に、傾き角度（補正角度）とブロックサイズとの関係について説明する。これまでの説明では原稿の傾き角度が５.６２５°であったので８画素×８画素のブロックまたは８画素×８画素の矩形領域を備えた非矩形ブロック６０、６５を使用したが、補正する角度に応じてブロックサイズは変更される。図１３は、傾き角度とブロックサイズ（非矩形ブロックにおける矩形領域のサイズを含むものとする）との関係を示している。
【００５９】
また、これより小さい角度の場合は１ブロックサイズを大きくするか、小さいブロックを複数組み合わせて目的のサイズのブロックが等価的に構成されるようにしてもよい。図１４は、傾き角度と、必要な大きさを１ブロックで実現する場合のブロックサイズと、そのサイズを複数のブロックの組み合わせで実現する場合の小ブロックのサイズとその組み合わせ個数との関係を示している。
【００６０】
図１に示したマトリックス選択部３１は、図１３や図１４に示す関係を記憶しており、傾斜検知部２０から入力される角度判別信号２５ａに基づいてブロックサイズを選択し、さらに左右判別信号２６ａに基づいて左傾斜用と右傾斜用のいずれの非矩形ブロック形状を採用するかを選択するようになっている。
【００６１】
次に、傾き補正とブロック単位の圧縮伸張処理との組み合わせについて説明する。画像データの圧縮処理は、圧縮前の画像をブロック単位にブロック圧縮部１８などの圧縮回路に与える処理を伴い、画像データの伸張処理は伸張したブロック単位の画像データを画像メモリ上に配置する処理を伴う。したがって、傾き補正におけるブロックへの分割処理およびブロックの配置処理を、圧縮伸張における上記の処理と兼用することで、圧縮伸張と同時に傾き補正を実現することが可能になる。
【００６２】
図１５は、伸張時に、隣り合うブロック同士の位置を相対的にずらしながら配置することで傾き補正を行なう様子を示している。ここでは、左傾斜を補正する例を示している。ＣＣＤ１１で読み取って画像メモリ１７に格納されている画像（同図（ａ））を、左傾斜補正用の各非矩形ブロック６０ａ〜６０ｄの矩形領域が行列状に整列するようにしてブロック化し（同図（ｂ））、各非矩形ブロック６０ａ〜６０ｄの画像データをブロック圧縮部１８に与えて圧縮させ、ブロック毎の圧縮データ７０ａ〜７０ｄを生成する（同図（ｃ））。
【００６３】
画像データはこのように圧縮された状態で保存され、画像を出力する際に伸張される。伸張時には、各圧縮データ７０ａ〜７０ｄを伸張して得た各非矩形ブロック６０ａ〜６０ｄ（同図（ｄ））の画像データを、左傾斜を補正する場合の配置規則に従って画像メモリ１７上に配置する（同図（ｅ））。すなわち、左隣のブロックより１画素分だけ下にずらし、かつ上隣のブロックより１画素分だけ左にずらすという規則を適用しながら再配置する。
【００６４】
これにより、元の画像（同図（ａ））の左傾斜を補正した画像（同図（ｅ））を得ることができ、圧縮伸張と同時に傾き補正を実現することが可能になる。なお、右傾斜を補正するときは、右傾斜補正用の非矩形ブロック６５を使用し、伸張時に各ブロック６５を、右傾斜を補正する場合の配置規則に従って配置すればよい。すなわち、右隣のブロックより１画素分だけ下にずらし、かつ上隣のブロックより１画素分だけ右にずらすという規則を適用して再配置する。
【００６５】
図１６は、圧縮時に、隣り合うブロック同士の位置を相対的にずらしながら元の画像をブロック化し、伸張時には各ブロックを行列状に整列配置するようにして傾き補正を行なう様子を示している。図１６では、図１５の逆変換となるように各ブロックの分割および配置を行なうことで左傾斜補正用の非矩形ブロック６０を用いて右傾斜を補正している。
【００６６】
すなわち、ＣＣＤ１１で読み取って画像メモリ１７に格納した元の画像（同図（ａ））を非矩形ブロック６０ａ〜６０ｄに分割してブロック圧縮部１８に与える際に、左隣のブロックより１画素分だけ下にずらし、かつ上隣のブロックより１画素分だけ左にずらすという規則を適用しながらブロック化する（同図（ｂ））。そして各非矩形ブロック６０ａ〜６０ｄをそれぞれ圧縮してブロック毎の圧縮データ７０ａ〜７０ｄを生成する（同図（ｃ））。
【００６７】
伸張時には、各圧縮データ７０ａ〜７０ｄを伸張して得た非矩形ブロック６０ａ〜６０ｄ（同図（ｄ））を、各非矩形ブロック６０ａ〜６０ｄの矩形領域が行列状に整列するように再配置する（同図（ｅ））。すなわち、同図（ａ）に示す元の画像での相対位置に比べて、右隣のブロックより１画素分だけ下にずらし、かつ上隣のブロックより１画素分だけ右にずらすという右傾斜補正用の規則を適用して再配置する。これにより、圧縮伸張と同時に右傾斜の補正が実現される。
【００６８】
このように、ブロックへの分割と配置とを左傾斜補正時と右傾斜補正時とで逆変換となるようにすることで、同じ形状の非矩形ブロック６０を使用しながら右傾斜と左傾斜のいずれも補正することができる。なお、図１６に示すように隣り合うブロック６０同士の位置がずれた状態から行列状に整列する配置に変換する場合には、縦方向の長さ補正が逆向き（傾きを補正すると縦の長さが短くなる方向）に働くので、長さには若干の狂いが生じることになる。
【００６９】
以上、本発明の実施の形態を図面によって説明してきたが、具体的な構成は実施の形態に示したものに限られるものではなく、本発明の要旨を逸脱しない範囲における変更や追加があっても本発明に含まれる。
【００７０】
たとえば、実施の形態では、スキャナで原稿画像を読み取った際の傾斜を補正するようにしたが、プリンタ部で搬送される記録紙の傾斜を検知し、記録紙に印刷する画像を記録紙の傾きを補正するように傾斜させる構成にしてもよい。記録紙の傾き具合の計測は、原稿の傾斜を測定した傾斜検知部２０と同じ原理で行なえばよい。すなわち、記録紙の通紙経路に記録紙の幅方向に間隔を空けて２つのセンサを配置し、それらの通過タイミングの差から傾斜角度を検知すればよい。また、画像処理装置１０の組立て時のばらつきによる傾きを補正する場合は、あらかじめその傾斜角度を測定しておき、補正すべき角度をマトリックス選択部３１やアドレス演算部３２に通知（プリセット）しておけばよい。
【００７１】
また、実施の形態では非矩形ブロック６０、６５を利用して空白画素４４を自動的に補間するようにしたが、矩形のブロックを使用し、再配置後に空白画素４４へその上の画素を複製するように構成してもよい。
【００７２】
なお、原稿や記録紙などの傾きの検知方法は実施の形態で例示したものに限定されない。画像解析の結果から傾斜角度を検出してもよい。また、原稿の読み取りに代えて画像データを外部装置から入力するような場合には、傾斜角度を外部装置からデータで受け取るように構成してもよい。
【００７３】
また、補正する角度を一定角度以下に制限するとよい。たとえば、補正角度を±５.６２５度の範囲に制限し、たとえ原稿の傾斜が１０度と検出された場合でも５.２６５度までしか補正しないように構成する。補正する角度を制限することで、大きな角度補正により画像が許容範囲を超えて歪んだり劣化したりすることが防止される。
【図面の簡単な説明】
【００７４】
【図１】本発明の実施の形態に係わる画像処理装置の主要部の構成を示すブロック図である。
【図２】傾斜して読み取られた原稿画像の一例を示す正面図である。
【図３】図２に示す原稿の罫線部分の一部を拡大して示した説明図である。
【図４】図３に示す左傾斜した画像を８画素×８画素のブロック単位に分割した状態の一例を示す説明図である。
【図５】左傾斜が補正されるように図４に示す各ブロックを隣り合うブロック同士の相対位置をずらして配置した様子を示す説明図である。
【図６】右傾斜した画像を８画素×８画素のブロック単位に分割した状態の一例を示す説明図である。
【図７】右傾斜が補正されるように図６に示す各ブロックを隣り合うブロック同士の相対位置をずらして配置した様子を示す説明図である。
【図８】傾き補正により生じる空白画素により縦方向の長さが調整される様子を示す説明図である。
【図９】左補正用の非矩形ブロックの一例を示す説明図である。
【図１０】左補正用の非矩形ブロックを使用することで空白画素が上の画素と同じ画素で補間される様子を示す説明図である。
【図１１】右補正用の非矩形ブロックの一例を示す説明図である。
【図１２】右補正用の非矩形ブロックを使用することで空白画素が上の画素と同じ画素で補間される様子を示す説明図である。
【図１３】傾き角度とブロックサイズとの関係を示す対応図表である。
【図１４】傾き角度と、ブロックサイズと、そのサイズを複数の小ブロックの組み合わせで実現する場合の小ブロックサイズとその組み合わせ個数との関係を示す対応図表である。
【図１５】伸張時に隣り合うブロック同士の位置を相対的にずらしながら配置することで傾き補正を行なう様子を示す説明図である。
【図１６】圧縮時に隣り合うブロック同士の位置を相対的にずらしながら元の画像をブロック化し、伸張時には各ブロックを行列状に整列配置するようにして傾き補正を行なう様子を示す説明図である。
【符号の説明】
【００７５】
１０…画像処理装置
１１…ＣＣＤ
１２…ＣＣＤ駆動回路
１３…クロック
１４…ライン同期信号
１５…Ａ／Ｄ変換部
１６…画像処理部
１７…画像メモリ
１８…ブロック圧縮部
２０…傾斜検知部
２１…第１センサ
２１ａ、２２ａ…出力信号
２２…第２センサ
２３…ＯＲ回路
２３ａ…スタート信号
２４…ＡＮＤ回路
２４ａ…ストップ信号
２５…カウンタ回路
２５ａ…角度判別信号
２６…ラッチ回路
２６ａ…左右判別信号
２７…ＡＮＤ回路
３１…マトリックス選択部
３２…アドレス演算部
３３…メモリ制御部
４１…原稿
４２…罫線
４３…ブロック
４４…空白画素
５１…斜め線
５２…元画像
５３…傾き補正した画像
５４…縦線
６０…左傾斜補正用の非矩形ブロック
６１…補間画素
６５…右傾斜補正用の非矩形ブロック
６６…補間画素
【図１】
2006203710.tif 000003
【図２】
2006203710.tif 000004
【図３】
2006203710.tif 000005
【図４】
2006203710.tif 000006
【図５】
2006203710.tif 000007
【図６】
2006203710.tif 000008
【図７】
2006203710.tif 000009
【図８】
2006203710.tif 000010
【図９】
2006203710.tif 000011
【図１０】
2006203710.tif 000012
【図１１】
2006203710.tif 000013
【図１２】
2006203710.tif 000014
【図１３】
2006203710.tif 000015
【図１４】
2006203710.tif 000016
【図１５】
2006203710.tif 000017
【図１６】
2006203710.tif 000018