JP2005242675A - 画像サイズ縮小処理方法及び画像サイズ拡大処理方法 - Google Patents
画像サイズ縮小処理方法及び画像サイズ拡大処理方法 Download PDFInfo
- Publication number
- JP2005242675A JP2005242675A JP2004051713A JP2004051713A JP2005242675A JP 2005242675 A JP2005242675 A JP 2005242675A JP 2004051713 A JP2004051713 A JP 2004051713A JP 2004051713 A JP2004051713 A JP 2004051713A JP 2005242675 A JP2005242675 A JP 2005242675A
- Authority
- JP
- Japan
- Prior art keywords
- image
- data
- pixel
- pixels
- integer
- 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.)
- Withdrawn
Links
- 238000005549 size reduction Methods 0.000 title claims abstract description 40
- 238000003672 processing method Methods 0.000 title claims abstract description 28
- 230000009467 reduction Effects 0.000 description 42
- 238000000034 method Methods 0.000 description 28
- 230000008569 process Effects 0.000 description 27
- 238000010586 diagram Methods 0.000 description 22
- 238000007906 compression Methods 0.000 description 11
- 230000006835 compression Effects 0.000 description 8
- 101000885321 Homo sapiens Serine/threonine-protein kinase DCLK1 Proteins 0.000 description 7
- 102100039758 Serine/threonine-protein kinase DCLK1 Human genes 0.000 description 7
- 230000006870 function Effects 0.000 description 5
- 238000011946 reduction process Methods 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 239000004973 liquid crystal related substance Substances 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 230000001419 dependent effect Effects 0.000 description 3
- 238000003384 imaging method Methods 0.000 description 3
- 230000033001 locomotion Effects 0.000 description 3
- 239000000470 constituent Substances 0.000 description 2
- 238000005401 electroluminescence Methods 0.000 description 2
- 230000000873 masking effect Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Images
Landscapes
- Controls And Circuits For Display Device (AREA)
- Image Processing (AREA)
- Editing Of Facsimile Originals (AREA)
Abstract
【課題】 表示コントローラに好適で、画像サイズを滑らかに拡大又は縮小させながら画像を表示させるための画像サイズ縮小処理方法及び画像サイズ拡大処理方法を提供する。
【解決手段】 原画像の水平方向に第0〜第Mx(Mxは1以上の整数)の画素が並び、前記縮小画像の水平方向に第0〜第Nx(Nxは1以上の整数)の画素が並ぶ場合に、前記原画像の水平方向に隣接する画素間を仮想的にB1(B1は2以上の整数)分割し、該水平方向に並ぶ各画素と画素間の各分割点に対し、連続する整数を割り当て、((C1+α)×Px)(0<C1<B1、0≦α<B1−C1、Pxは1より大きい数)のnx倍(0≦nx≦Nx、nxは整数)の数値が、mx×B1(0≦mx≦Mx−1、mxは整数)以上で、かつ(mx+1)×B1より小さいとき、前記縮小画像の水平方向の第nxの画素のデータに、前記原画像の水平方向の第mxの画素のデータを割り当てて前記画像データを生成する。
【選択図】 図2
【解決手段】 原画像の水平方向に第0〜第Mx(Mxは1以上の整数)の画素が並び、前記縮小画像の水平方向に第0〜第Nx(Nxは1以上の整数)の画素が並ぶ場合に、前記原画像の水平方向に隣接する画素間を仮想的にB1(B1は2以上の整数)分割し、該水平方向に並ぶ各画素と画素間の各分割点に対し、連続する整数を割り当て、((C1+α)×Px)(0<C1<B1、0≦α<B1−C1、Pxは1より大きい数)のnx倍(0≦nx≦Nx、nxは整数)の数値が、mx×B1(0≦mx≦Mx−1、mxは整数)以上で、かつ(mx+1)×B1より小さいとき、前記縮小画像の水平方向の第nxの画素のデータに、前記原画像の水平方向の第mxの画素のデータを割り当てて前記画像データを生成する。
【選択図】 図2
Description
本発明は、画像サイズ縮小処理方法及び画像サイズ拡大処理方法に関する。
従来より、携帯電話機に代表される携帯機器は表示部を有する。この表示部は、例えば液晶表示(Liquid Crystal Display:LCD)パネルを有し、LCDドライバによって駆動される。LCDドライバは、LCDパネルの走査線を駆動すると共に、表示データに基づいてLCDパネルのデータ線を駆動する。
一方、携帯機器の制御を司るホストの負荷を軽減する目的で、LCDコントローラ(広義には表示コントローラ)が用いられることがある。この場合、LCDコントローラが、ホストに代わって表示データ及び表示制御信号をLCDドライバに対して供給する。
特開2000−206941号公報
ところで、近年の携帯機器は撮像手段として例えばCCD(Charge Coupled Device)イメージセンサを内蔵し、画像を取り込むことができるようになっている。そして取り込んだ画像を携帯電話機が有する表示部に表示したり、他の携帯機器に対して該画像のデータを送信したりできる。
このような携帯機器に搭載されるCCDイメージセンサの解像度は次第に高くなり、CCDイメージセンサが取り込む取り込み画像の画像数は100万を越えるようになっている。そのため、取り込み画像の画像サイズも大きくなる傾向にある。その一方で、携帯性を維持するために携帯機器の表示部の表示サイズは制限されるため、LCDコントローラが取り込み画像の画像サイズを縮小し、縮小後の画像の表示データをLCDパネルに供給している。
しかしながら、従来ではLCDコントローラでは、2分の1、3分の1、4分の1等の予め決められた縮小倍率でしか画像サイズを縮小できなかった。そのためCCDイメージセンサがVGA(Video Graphics Array)サイズ(640×480)で取り込んだ場合、LCDパネルの標準的なサイズであるCIF(Common Interface Format)サイズ(352×328)等に変換することができなかった。従ってLCDコントローラは、2分の1、3分の1に縮小した画像から、所望の領域の画像を切り取ってCIFサイズの画像の表示データとしてLCDパネルに供給しており、CCDイメージセンサで取り込んだ画像の全部を有効に使うことができなかった。また、連続的に倍率を変化させて、画像サイズを滑らかに拡大又は縮小させながら画像を表示させることができなかった。
本発明は、以上のような技術的課題に鑑みてなされたものであり、その目的とするところは、例えば表示コントローラに好適で、画像サイズを滑らかに拡大又は縮小させながら画像を表示させるための画像サイズ縮小処理方法及び画像サイズ拡大処理方法を提供することにある。
上記課題を解決するために本発明は、水平方向及び垂直方向に画素が並ぶ原画像のサイズを縮小した縮小画像の画像データを生成するための画像サイズ縮小処理方法であって、前記原画像の水平方向に第0〜第Mx(Mxは1以上の整数)の画素が並び、前記縮小画像の水平方向に第0〜第Nx(Nxは1以上の整数)の画素が並ぶ場合に、前記原画像の水平方向に隣接する画素間を仮想的にB1(B1は2以上の整数)分割し、該水平方向に並ぶ各画素と画素間の各分割点に対し、連続する整数を割り当て、((C1+α)×Px)(0<C1<B1、0≦α<B1−C1、Pxは1より大きい数)のnx倍(0≦nx≦Nx、nxは整数)の数値が、mx×B1(0≦mx≦Mx−1、mxは整数)以上で、かつ(mx+1)×B1より小さいとき、前記縮小画像の水平方向の第nxの画素のデータに、前記原画像の水平方向の第mxの画素のデータを割り当てて前記画像データを生成する画像サイズ縮小処理方法に関係する。
本発明によれば、原画像を、その水平方向にB1/((C1+α)×Px)倍に縮小できる。そして、αをパラメータとして変化させることで、1倍からPx分の1倍までの範囲内で、(B1−C1)通りの縮小倍率で水平方向の画像サイズが変化する画像データを生成できるようになる。
またB1、C1、α又はPxを変更できるようにすることで、種々の倍率で水平方向に画像サイズを変化させることができるようになる。
また本発明は、水平方向及び垂直方向に画素が並ぶ原画像のサイズを縮小した縮小画像の画像データを生成するための画像サイズ縮小処理方法であって、前記原画像の垂直方向に第0〜第My(Myは1以上の整数)の画素が並び、前記縮小画像の垂直方向に第0〜第Ny(Nyは1以上の整数)の画素が並ぶ場合に、前記原画像の垂直方向に隣接する画素間を仮想的にB2(B2は2以上の整数)分割し、該垂直方向に並ぶ各画素と画素間の各分割点に対し、連続する整数を割り当て、((C2+β)×Py)(0<C2<B2、0≦β<B2−C2、Pyは1より大きい数)のny倍(0≦ny≦Ny、nyは整数)の数値が、my×B2(0≦my≦My−1、myは整数)以上で、かつ(my+1)×B2より小さいとき、前記縮小画像の垂直方向の第nyの画素のデータに、前記原画像の垂直方向の第myの画素のデータを割り当てて前記画像データを生成する画像サイズ縮小処理方法に関係する。
本発明によれば、原画像を、その垂直方向にB2/((C2+β)×Py)倍に縮小できる。そして、βをパラメータとして変化させることで、1倍からPy分の1倍までの範囲内で、(B2−C2)通りの縮小倍率で垂直方向の画像サイズが変化する画像データを生成できるようになる。
またB2、C2、β又はPyを変更できるようにすることで、種々の倍率で水平方向に画像サイズを変化させることができるようになる。
また本発明は、水平方向及び垂直方向に画素が並ぶ原画像のサイズを拡大した拡大画像の画像データを生成するための画像サイズ拡大処理方法であって、前記原画像の画像の水平方向に第0〜第M1x(M1xは1以上の整数)の画素が並び、前記拡大画像の水平方向に第0〜第N1x(N1xは1以上の整数)の画素が並ぶ場合に、前記原画像の水平方向に隣接する画素間を仮想的にB3(B3は2以上の整数)分割し、該水平方向に並ぶ各画素と画素間の各分割点に対し、連続する整数を割り当て、(C3+α1)(0<C3<B3、0≦α1<B3−C3)のn1x倍(0≦n1x≦N1x、n1xは整数)の数値が、m1x×B3(0≦m1x≦M1x−1、m1xは整数)以上で、かつ(m1x+1)×B3より小さいとき、前記拡大画像の水平方向の第n1xの画素のデータに、前原画像の水平方向の第m1xの画素のデータを割り当てて前記画像データを生成する画像サイズ拡大処理方法に関係する。
本発明によれば、原画像を、その水平方向にB3/(C3+α1)倍に拡大できる。そして、α1をパラメータとして変化させることで、(B3−C3)通りの拡大倍率で水平方向の画像サイズが変化する画像データを生成できるようになる。
またB3、C3、α1を変更できるようにすることで、種々の倍率で水平方向に画像サイズを変化させることができるようになる。
また本発明は、水平方向及び垂直方向に画素が並ぶ原画像のサイズを拡大した拡大画像の画像データを生成するための画像サイズ拡大処理方法であって、前記原画像の垂直方向に第0〜第M1y(M1yは1以上の整数)の画素が並び、前記拡大画像の垂直方向に第0〜第N1y(N1yは1以上の整数)の画素が並ぶ場合に、前記原画像の水平方向に隣接する画素間を仮想的にB4(B4は2以上の整数)分割し、該水平方向に並ぶ各画素と画素間の各分割点に対し、連続する整数を割り当て、(C4+β1)(0<C4<B4、0≦β1<B4−C4)のn1y倍(0≦n1y≦N1y、n1yは整数)の数値が、m1y×B4(0≦m1y≦M1y−1、m1yは整数)以上で、かつ(m1y+1)×B4より小さいとき、前記拡大画像の垂直方向の第n1yの画素のデータに、前記原画像の垂直方向の第m1yの画素のデータを割り当てて前記画像データを生成する画像サイズ拡大処理方法に関係する。
本発明によれば、原画像を、その垂直方向にB4/(C4+β1)倍に拡大できる。そして、β1をパラメータとして変化させることで、(B4−C4)通りの拡大倍率で垂直方向の画像サイズが変化する画像データを生成できるようになる。
またB4、C4、β1を変更できるようにすることで、種々の倍率で垂直方向に画像サイズを変化させることができるようになる。
以下、本発明の実施の形態について図面を用いて詳細に説明する。なお、以下に説明する実施の形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また以下で説明される構成のすべてが本発明の必須構成要件であるとは限らない。
1. 画像サイズ縮小処理
本実施形態における画像サイズ縮小処理方法の説明に先立って、原画像について説明する。
本実施形態における画像サイズ縮小処理方法の説明に先立って、原画像について説明する。
図1に、原画像の説明図を示す。
本実施形態において、原画像は2次元の画像である。この原画像の垂直方向の1つの画素の行に着目すれば、その水平方向(x方向)には、第0〜第Mx(Mxは1以上の整数)の画素が並ぶ。また原画像の水平方向の1つの画素の列に着目すれば、その垂直方向(y方向)には、第0〜第My(Myは1以上の整数)の画素が並ぶ。
同様に、原画像に対して縮小処理された縮小後の画像の水平方向には、第0〜第Nx(Nxは1以上の整数)の画素が並び、該縮小後の画像の垂直方向には、第0〜第Ny(Nyは1以上の整数)の画素が並ぶ。
このような原画像に対し、本実施形態では以下のような縮小処理を行う。
図2に、本実施形態における画像サイズ縮小処理方法の説明図を示す。
ここでは、原画像の水平方向のサイズの縮小処理の説明図を示す。
まず原画像の水平方向に隣接する画素間を仮想的にB1(B1は2以上の整数)分割する。例えば各画素間の仮想的な長さを1とすると、該長さをB1個に分割する。
次に、該水平方向に並ぶ各画素と画素間の各分割点に対し、連続する整数を割り当てる。これにより、原画像の第0の画素と第1の画素との間の仮想的な長さがB1個に分割された場合、第0の画素に分割番号0、第1の画素に分割番号B1が割り当てられ、各分割点にそれぞれ分割番号1、2、・・・、B1−1が割り当てられる。同様に、第2の画素に分割番号2×B1が割り当てられ、第1及び第2の画素の各分割点にそれぞれ分割番号B1+1、B1+2、・・・、2×B1−1が割り当てられる。更に同様に、第3の画素に分割番号3×B1が割り当てられ、第2及び第3の画素の各分割点にそれぞれ分割番号2×B1+1、2×B1+2、・・・、3×B1−1が割り当てられる。
続いて、((C1+α)×Px)(0<C1<B1、0≦α<B1−C1)のnx倍(0≦nx≦Nx、nxは整数)の数値を求める。そして、この数値が、mx×B1(0≦mx≦Mx−1、mxは整数)以上で、かつ(mx+1)×B1より小さいとき、縮小後の画像の水平方向の第nxの画素のデータに、原画像の水平方向の第mxの画素のデータを割り当てて、水平方向に縮小後の画像データとする。
図2では、(C1+α)×PxがB1以上で2×B1未満であるため、縮小後の画像の水平方向の第1の画素のデータに、原画像の水平方向の第1の画素のデータが割り当てられることを示している。同様に、例えば((C1+α)×Px)×4が4×B1以上で5×B1未満であるため、縮小後の画像の水平方向の第4の画素のデータに、原画像の水平方向の第4の画素のデータが割り当てられることを示している。
なお図2では、例えば縮小後の画像の第0の画素に割り当てられた分割番号0を起点に((C1+α)×Px)のnx倍の数値を求めるようにしていたが、これに限定されるものではない。例えば正又は負の数のオフセット値を設け、該オフセット値を起点に((C1+α)×Px)のnx倍の数値を求めてもよい。こうすることで、縮小後の画像の第0の画素のデータに、必ず原画像の第0の画素のデータが割り当てられることを回避できる。
このようにして、本実施形態によれば、原画像を、その水平方向にB1/((C1+α)×Px)倍に縮小できる。例えば、フレームごとにαを1ずつインクリメント若しくはデクリメントするように設定することで、(B1−C1)通りの縮小倍率で水平方向の画像サイズが徐々に変化する画像データを生成できるようになる。
図3に、図2に示した画像サイズ縮小処理の具体的な動作説明図を示す。
図3では、B1が256、C1が128、αが80、Pxが2である場合を示している。従って、原画像の第0の画素と第1の画素との間の仮想的な長さが256個に分割される。そして、原画像の第0の画素に分割番号0、第1の画素に分割番号256が割り当てられ、各分割点にそれぞれ分割番号1、2、・・・、255が割り当てられる。同様に、第2の画素に分割番号512が割り当てられ、第1及び第2の画素の各分割点にそれぞれ分割番号257、258、・・・、511が割り当てられる。更に同様に、第3の画素に分割番号768が割り当てられ、第2及び第3の画素の各分割点にそれぞれ分割番号513、514、・・・、767が割り当てられる。
そして、((128+80)×2)×1の数値は416であるため、256以上で512未満であると判断し、縮小後の画像の水平方向の第1の画素のデータに、原画像の水平方向の第1の画素のデータが割り当てられる。同様に、例えば(416)×2の数値が832であるため、768以上で1024未満であると判断し、縮小後の画像の水平方向の第2の画素のデータに、原画像の水平方向の第3の画素のデータが割り当てられる。更に同様に、例えば(416)×3の数値が1248であるため、1024以上で1280未満であると判断し、縮小後の画像の水平方向の第3の画素のデータに、原画像の水平方向の第4の画素のデータが割り当てられる。
図4に、図3に示す縮小処理前後の画素の説明図を示す。
原画像の水平方向に第0の画素、第1の画素、第2の画素、第3の画素、・・・が並び、図3に示す処理で画像サイズを縮小した場合、縮小後の画像の水平方向の第0の画素、第1の画素、第2の画素、第3の画素、・・・の各データには、それぞれ原画像の第0の画素、第1の画素、第3の画素、第4の画素、・・・の各データが割り当てられる。
こうして本実施形態によれば、原画像を、256/((128+α)×2)倍に縮小できる。図3では、αとして80が設定される。なおαを127に設定し、その後フレームごとに1ずつデクリメントするように設定すると、128通りの縮小倍率で画像サイズがフレームごとに変化する画像データを生成できるようになる。
このような処理は、ハードウェア回路や、ソフトウェア又はファームウェアを読み込んだハードウェア回路によって実現される。
また図2〜図4では原画像の水平方向のサイズの縮小処理について説明したが、該原画像の垂直方向のサイズの縮小処理も同様である。
即ち、原画像の垂直方向に隣接する画素間を仮想的にB2(B2は2以上の整数)分割し、該垂直方向に並ぶ各画素と画素間の各分割点に対し、連続する整数を割り当てる。そして、((C2+β)×Py)(0<C2<B2、0≦β<B2−C2)のny倍(0≦ny≦Ny、nyは整数)の数値が、my×B2(0≦my≦My−1、myは整数)以上で、かつ(my+1)×B2より小さいとき、縮小後の画像の垂直方向の第nyの画素のデータに、原画像の垂直方向の第myの画素のデータを割り当てる。
この場合、原画像を、その垂直方向にB2/((C2+β)×Py)倍に縮小できる。そして、βに対応した値を、フレームごとに1ずつインクリメント若しくはデクリメントするように設定することで、(B2−C2)通りの縮小倍率で垂直方向の画像サイズが徐々に変化する画像データを生成できるようになる。
2. 画像サイズ拡大処理
図1と同様の2次元の原画像に対し、本実施形態では以下のような拡大処理を行う。なお、以下では、原画像の垂直方向の1つの画素の行に着目すれば、その水平方向(x方向)に、第0〜第M1x(M1xは1以上の整数)の画素が並ぶものとする。また原画像の水平方向の1つの画素の列に着目すれば、その垂直方向(y方向)に、第0〜第M1y(M1yは1以上の整数)の画素が並ぶものとする。
図1と同様の2次元の原画像に対し、本実施形態では以下のような拡大処理を行う。なお、以下では、原画像の垂直方向の1つの画素の行に着目すれば、その水平方向(x方向)に、第0〜第M1x(M1xは1以上の整数)の画素が並ぶものとする。また原画像の水平方向の1つの画素の列に着目すれば、その垂直方向(y方向)に、第0〜第M1y(M1yは1以上の整数)の画素が並ぶものとする。
同様に、原画像に対して拡大処理された拡大後の画像の水平方向には、第0〜第N1x(N1xは1以上の整数)の画素が並び、該拡大後の画像の垂直方向には、第0〜第N1y(N1yは1以上の整数)の画素が並ぶものとする。
図5に、本実施形態における画像サイズ拡大処理方法の説明図を示す。
ここでは、原画像の水平方向のサイズの拡大処理の説明図を示す。
まず原画像の水平方向に隣接する画素間を仮想的にB3(B3は2以上の整数)分割する。例えば各画素間の仮想的な長さを1とすると、該長さをB3個に分割する。
次に、該水平方向に並ぶ各画素と画素間の各分割点に対し、連続する整数を割り当てる。これにより、原画像の第0の画素と第1の画素との間の仮想的な長さがB3個に分割された場合、第0の画素に分割番号0、第1の画素に分割番号B3が割り当てられ、各分割点にそれぞれ分割番号1、2、・・・、B3−1が割り当てられる。同様に、第2の画素に分割番号2×B3が割り当てられ、第1及び第2の画素の各分割点にそれぞれ分割番号B3+1、B3+2、・・・、2×B3−1が割り当てられる。更に同様に、第3の画素に分割番号3×B3が割り当てられ、第2及び第3の画素の各分割点にそれぞれ分割番号2×B3+1、2×B3+2、・・・、3×B3−1が割り当てられる。
続いて、(C3+α1)(0<C3<B3、0≦α1<B3−C3)のn1x倍(0≦n1x≦N1x、n1xは整数)の数値を求める。そして、この数値が、m1x×B3(0≦m1x≦M1x−1、m1xは整数)以上で、かつ(m1x+1)×B3より小さいとき、拡大後の画像の水平方向の第n1xの画素のデータに、原画像の水平方向の第m1xの画素のデータを割り当てて、水平方向に拡大後の画像データとする。
図5では、(C3+α1)が0以上でB3未満であるため、拡大後の画像の水平方向の第1の画素のデータに、原画像の水平方向の第0の画素のデータが割り当てられることを示している。同様に、例えば(C3+α1)×4が2×B3以上で3×B3未満であるため、拡大後の画像の水平方向の第4の画素のデータに、原画像の水平方向の第2の画素のデータが割り当てられることを示している。
なお図5では、例えば拡大後の画像の第0の画素に割り当てられた分割番号0を起点に(C3+α1)のn1x倍の数値を求めるようにしていたが、これに限定されるものではない。例えば正又は負の数のオフセット値を設け、該オフセット値を起点に(C3+α1)のnx倍の数値を求めてもよい。こうすることで、拡大後の画像の第0の画素のデータに、必ず原画像の第0の画素のデータが割り当てられることを回避できる。
このようにして、本実施形態によれば、原画像を、その水平方向にB3/(C3+α1)倍に拡大できる。例えば、フレームごとにα1を1ずつインクリメント若しくはデクリメントするように設定することで、(B3−C3)通りの拡大倍率で水平方向の画像サイズが徐々に変化する画像データを生成できるようになる。
図6に、図5の画像サイズ拡大処理の具体的な動作説明図を示す。
図6では、B3が256、C3が128、α1が52である場合を示している。従って、原画像の第0の画素と第1の画素との間の仮想的な長さが256個に分割される。そして、第0の画素に分割番号0、第1の画素に分割番号256が割り当てられ、各分割点にそれぞれ分割番号1、2、・・・、255が割り当てられる。同様に、第2の画素に分割番号512が割り当てられ、第1及び第2の画素の各分割点にそれぞれ分割番号257、258、・・・、511が割り当てられる。更に同様に、第3の画素に分割番号768が割り当てられ、第2及び第3の画素の各分割点にそれぞれ分割番号513、514、・・・、767が割り当てられる。
そして、(128+52)×1の数値は180であるため、0以上で256未満であると判断し、拡大後の画像の水平方向の第1の画素のデータに、原画像の水平方向の第0の画素のデータが割り当てられる。同様に、例えば(180)×2の数値が360であるため、256以上で512未満であると判断し、拡大後の画像の水平方向の第2の画素のデータに、原画像の水平方向の第1の画素のデータが割り当てられる。更に同様に、例えば(180)×3の数値が540であるため、512以上で768未満であると判断し、拡大後の画像の水平方向の第3の画素のデータに、原画像の画像の水平方向の第2の画素のデータが割り当てられる。
図7に、図6に示す拡大処理前後の画素の説明図を示す。
原画像の水平方向に第0の画素、第1の画素、第2の画素、第3の画素、・・・が並び、図6に示す処理で画像サイズを拡大した場合、拡大後の画像の水平方向の第0の画素、第1の画素、第2の画素、第3の画素、・・・の各データには、それぞれ原画像の第0の画素、第0の画素、第1の画素、第2の画素、第2の画素、・・・の各データが割り当てられる。
こうして本実施形態によれば、原画像を、256/(128+α1)倍に拡大できる。図6では、α1として52が設定される。なおα1を127に設定し、その後フレームごとに1ずつデクリメントするように設定すると、128通りの拡大倍率で画像サイズがフレームごとに徐々に変化する画像データを生成できるようになる。
このような処理は、ハードウェア回路や、ソフトウェア又はファームウェアを読み込んだハードウェア回路によって実現される。
また図5〜図7では原画像の水平方向のサイズの拡大処理について説明したが、該原画像の垂直方向のサイズの拡大処理も同様である。
即ち、原画像の垂直方向に隣接する画素間を仮想的にB4(B4は2以上の整数)分割し、該垂直方向に並ぶ各画素と画素間の各分割点に対し、連続する整数を割り当てる。そして、(C4+β1)(0<C4<B4、0≦β1<B4−C4)のn1y倍(0≦n1y≦N1y、n1yは整数)の数値が、m1y×B4(0≦m1y≦M1y−1、m1yは整数)以上で、かつ(m1y+1)×B4より小さいとき、拡大後の画像の垂直方向の第n1yの画素のデータに、原画像の垂直方向の第m1yの画素のデータを割り当てる。
この場合、原画像を、その垂直方向にB4/(C4+β1)倍に拡大できる。そして、β1に対応した値を、フレームごとに1ずつインクリメント若しくはデクリメントするように設定することで、(B4−C4)通りの拡大倍率で垂直方向の画像サイズが徐々に変化する画像データを生成できるようになる。
3. 表示コントローラ
次に、上述の画像サイズ縮小処理及び画像サイズ拡大処理を行う表示コントローラについて説明する。表示コントローラは、機器の制御を司るホストの負荷を軽減する目的でホストに代わって表示データ及び表示制御信号を、表示部を駆動する駆動部に対して供給できる。
次に、上述の画像サイズ縮小処理及び画像サイズ拡大処理を行う表示コントローラについて説明する。表示コントローラは、機器の制御を司るホストの負荷を軽減する目的でホストに代わって表示データ及び表示制御信号を、表示部を駆動する駆動部に対して供給できる。
図8に、本実施形態における表示コントローラの構成例のブロック図を示す。
表示コントローラ300は、カメラインタフェース(InterFace:以下I/F)310と、リサイザ320と、画像サイズ縮小処理部330と、フレームメモリ340と、画像サイズ拡大処理部350と、ドライバI/F360と、圧縮処理部370と、ホストI/F380と、制御部390とを含む。
カメラI/F310は、CCDイメージセンサモジュール(画像取り込み部)100に接続される。CCDイメージセンサモジュール100は、撮像により得られた動画像の入力画像データ(表示データ)をYUVフォーマットで出力すると共に、1フレームの区切りを指定する同期信号(例えば垂直同期信号)を出力する。CCDイメージセンサモジュール100は、取り込み画像の水平方向に沿って各ドット(画素)のデータを順次出力し、これを各水平走査ラインごとに繰り返す。
カメラI/F310は、CCDイメージセンサモジュールで生成された動画像の入力画像データを受信するためのインタフェース処理を行う。カメラI/F310は、クロックをイメージセンサモジュールに供給して、入力画像データを順次受信できるようになっている。
リサイザ320は、CCDイメージセンサモジュール100によって取り込まれた2次元の取り込み画像のサイズをR(Rは2以上の整数)分の1に変換したリサイズ画像を生成する。ここで画像取り込み部としてのCCDイメージセンサモジュールは、CMOS(Complementary Metal Oxide Semiconductor)イメージセンサを含むCMOSイメージセンサモジュールであってもよい。
リサイザ320は、中央処理装置(Central Processing Unit:CPU)を含むホスト110によって設定された倍率でリサイズ画像を生成する。そのため表示コントローラ300は、リサイズ設定レジスタ418を含む設定レジスタ部400を有する。ホスト110は、リサイズ設定レジスタ418にリサイザ320の縮小倍率R分の1に対応するデータを設定できる。このリサイズ設定レジスタ418には、Rの値として2、3、4、・・・等の整数値が設定される。リサイザ320は、リサイズ設定レジスタ418の設定値に対応した倍率で取り込み画像のサイズを変換してリサイズ画像を生成する。
図9に、リサイザ320の動作説明図を示す。
CCDイメージセンサモジュール100によって取り込まれた2次元の取り込み画像は、各画素が水平方向(x方向)及び垂直方向(y方向)に配列された複数の画素を有する。リサイズ設定レジスタ418に2が設定された場合、図9に示すように水平方向に並ぶ画素を1つおきに選択すると共に、垂直方向に並ぶ画素を1つおきに選択する。こうすることで、リサイザ320は、取り込み画像のサイズを4分の1に変換したリサイズ画像を生成できる。なおリサイズ設定レジスタ418に、水平方向及び垂直方向にそれぞれ縮小倍率を設定できるようにして、リサイザ320が水平方向及び垂直方向にそれぞれの縮小倍率に応じて画素を選択することも可能である。例えば水平方向に1、垂直方向に2、或いは水平方向に2、垂直方向に1を設定すれば、取り込み画像のサイズを2分の1に変換したリサイズ画像を生成できる。
このようにしてリサイザ320によって生成されたリサイズ画像もまた2次元の画像である。このリサイズ画像も、水平方向及び垂直方向に画素が配列されている。
図10に、リサイザ320の構成例のブロック図を示す。
リサイザ320には、CCDイメージセンサモジュール100で取り込まれた取り込み画像の画像データと共に、垂直同期信号Vsync、水平同期信号HsyncI、ドットクロックDCLKIが入力される。垂直同期信号Vsyncは、該取り込み画像の1垂直走査期間の開始タイミングを規定する。水平同期信号HsyncIは、該取り込み画像の1水平走査期間の開始タイミングを規定する。ドットクロックDCLKIは、各水平走査期間の各画素のデータに同期したクロックである。
リサイザ320は、x方向画素カウンタ322−x、y方向画素カウンタ322−y、コンパレータ324−x、324−yを含む。
x方向画素カウンタ322−xは、図9に示すような取り込み画像の水平方向であるx方向の画素をカウントする。x方向画素カウンタ322−xは、垂直同期信号Vsyncのパルス又は水平同期信号HsyncIのパルスによりそのカウント値がリセットされ、ドットクロックDCLKIに同期してインクリメントされる。
y方向画素カウンタ322−yは、図9に示すような取り込み画像の垂直方向であるy方向の画素をカウントする。y方向画素カウンタ322−yは、垂直同期信号Vsyncのパルス又は水平同期信号HsyncIのパルスによりそのカウント値がリセットされ、水平同期信号HsyncIに同期してインクリメントされる。
コンパレータ324−xは、x方向画素カウンタ322−xのカウント値と、リサイズ設定レジスタ418の設定値により指定される水平方向の縮小倍率に対応したデータとを比較し、その比較結果をDCLKマスク回路326に出力する。x方向画素カウンタ322−xのカウント値と、該水平方向の縮小倍率に対応したデータとが一致したとき、x方向画素カウンタ322−xのカウント値をリセットする。
コンパレータ324−yは、y方向画素カウンタ322−yのカウント値と、リサイズ設定レジスタ418の設定値により指定される垂直方向の縮小倍率に対応したデータとを比較し、その比較結果をHsyncマスク回路328に出力する。y方向画素カウンタ322−yのカウント値と、該垂直方向の縮小倍率に対応したデータとが一致したとき、y方向画素カウンタ322−yのカウント値をリセットする。
DCLKマスク回路326は、コンパレータ324−xの比較結果に基づいて、x方向画素カウンタ322−xのカウント値と、該水平方向の縮小倍率に対応したデータとが一致したときにドットクロックDCLKIをマスクする。またDCLKマスク回路326は、y方向画素カウンタ322−yのカウント値と、該垂直方向の縮小倍率に対応したデータとが一致したときにドットクロックDCLKIをマスクする。DCLKマスク回路326は、このようにドットクロックDCLKIがマスク制御されたクロックを、ドットクロックDCLKとして出力する。DCLKマスク回路326は、このようにドットクロックDCLKIがマスク制御されたクロックを、ドットクロックDCLKとして出力する。
Hsyncマスク回路328は、コンパレータ324−yの比較結果に基づいて、y方向画素カウンタ322−yのカウント値と、リサイズ設定レジスタ418の設定値により指定される垂直方向の縮小倍率に対応したデータとが一致したときに水平同期信号HsyncIをマスクする。Hsyncマスク回路328は、このように水平同期信号HsyncIがマスク制御されたパルスを、水平同期信号Hsyncとして出力する。
従って図11(A)に示すように取り込み画像の画像データ等が供給される場合、図11(B)に示すように、x方向画素カウンタ322−xのカウント値に基づいて、間引き対象のドットクロックがマスクされ(E1)、x方向画素カウンタ322−xのカウント値に基づいて間引き対象の1水平走査ライン分のドットクロックがマスクされる(E2)。また、y方向画素カウンタ322−yのカウント値に基づいて、間引き対象の水平同期信号がマスクされる(E3)。
以上のように、ドットクロック又は水平同期信号をマスクすることで、ドットクロック又は水平同期信号を用いた画素の書き込みが省略される。従ってリサイザ320は、図9に示すような取り込み画像の画素を間引いて、画像サイズを変換することができる。
図8に戻って、画像サイズ縮小処理部330は、リサイザ320によって生成されたリサイズ画像を原画像として上述した画像サイズ縮小処理を行う。より具体的には画像サイズ縮小処理部330は、リサイズ画像の水平方向及び該リサイズ画像の垂直方向の少なくとも1つの方向のサイズを縮小する処理を行う。更に具体的には、画像サイズ縮小処理部330は、リサイズ画像の水平方向のサイズを縮小する場合、1倍からPx(Pxは1より大きい数)分の1倍の範囲のいずれかの倍率で行う。例えばPxが2の場合、1倍から2分の1(=0.5)倍までの例えば3分の2(=0.666・・)倍や5分の4(=0.8)倍等の倍率で縮小処理を行う。また画像サイズ縮小処理部330は、リサイズ画像の垂直方向のサイズを縮小する場合、1倍からPy(Pyは1より大きい数)分の1倍の範囲のいずれかの倍率で行う。例えばPyが2の場合、1倍から2分の1(=0.5)倍までの例えば3分の2(=0.666・・)倍や5分の4(=0.8)倍等の倍率で縮小処理を行う。
画像サイズ縮小処理部330は、ホスト110によってそれぞれ別個に設定された縮小倍率で、リサイズ画像の水平方向及び垂直方向にサイズを縮小できるようになっている。そのため表示コントローラ300の設定レジスタ部400は、水平方向縮小倍率設定レジスタ412、垂直方向縮小倍率設定レジスタ416を含む。ホスト110は、水平方向縮小倍率設定レジスタ412に、1倍からPx分の1倍の範囲のいずれかの倍率に対応したデータを設定できる。またホスト110は、垂直方向縮小倍率設定レジスタ416に、1倍からPy分の1倍の範囲のいずれかの倍率に対応したデータを設定できる。画像サイズ縮小処理部330は、水平方向縮小倍率設定レジスタ412及び垂直方向縮小倍率設定レジスタ416の少なくとも一方の設定値に基づいて、リサイズ画像の縮小処理を行う。
フレームメモリ340は、表示パネル(表示部)120の表示画像の1フレーム(1垂直走査期間)分の表示データを記憶する。表示パネル120は、複数の走査線、複数のデータ線、複数の画素を有する。各画素は、1つの走査線及び1つのデータ線によって特定される。そして表示ドライバ(駆動部)130が、表示パネル120の走査線を1垂直走査期間ごとに走査しながら、表示コントローラ300から供給された表示データに基づいて1水平走査期間ごとに表示パネル120のデータ線を駆動する。
フレームメモリ340が有する複数の記憶領域は、それぞれアドレスによって指定される。これら記憶領域の並びは表示パネル120の画素の配列に対応付けられており、表示コントローラ300が所定の周期で各記憶領域から表示データを読み出す。即ち、表示コントローラ300は、表示ドライバ130に対して、フレームメモリ340に記憶された表示データを所定の順序で読み出しながら所定の周期で供給できる。ここで所定の周期とは、例えば表示ドライバ130が1水平走査期間分の表示データずつ保持する場合には1水平走査期間であり、例えば表示ドライバ130が1フレーム分の表示メモリを有する場合には1又は複数の垂直走査期間ということができる。
図8では、フレームメモリ340に書き込まれたデータが、画像サイズ拡大処理部350に入力された後に、ドライバI/F360に供給されるようになっている。
画像サイズ拡大処理部350は、フレームメモリ340に記憶された1フレームの表示データの画像を原画像として、上述した画像サイズ拡大処理を行う。即ち、画像サイズ拡大処理部350は、フレームメモリ340に記憶された1フレーム分の表示データにより規定される画像のサイズを拡大する処理を行う。より具体的には画像サイズ拡大処理部350は、フレームメモリ340から所定の周期で表示データを読み出し、上述した画像サイズ拡大処理を行って該表示データに規定される1フレームの画像のサイズを拡大する処理を行う。従って、表示コントローラ300は、画像サイズ拡大処理部350によって画像サイズが拡大された表示データを、表示ドライバ130に対して供給することになる。
ドライバI/F360は、画像サイズ拡大処理部350によって画像サイズが拡大処理された表示データを、表示ドライバ130に対して供給する。ドライバI/F360は、表示ドライバ130に対して表示データを送信するためのインタフェース処理を行う。例えばドライバI/F360は、表示データ、ドットクロック、表示同期信号(水平同期信号、垂直同期信号)を出力する。ドライバI/F360は、例えば1水平走査期間分の表示データごとに表示ドライバ130に対して出力したり、或いは1垂直走査期間分の表示データごとに表示ドライバ130に対して出力したりできる。
またフレームメモリ340に記憶された表示データは、ホスト110からの要求があったときに該ホスト110に対して出力される。即ち、表示コントローラ300は、ホスト110からの要求があったときに、フレームメモリ340に記憶された表示データをホスト110に対して出力する。ここでホスト110は、CPU及び該CPUが実行するプログラムを格納するメモリを含む。
図8では、フレームメモリ340に書き込まれたデータが、圧縮処理部370に入力された後に、ホストI/F380に供給されるようになっている。
圧縮処理部370は、フレームメモリ340から読み出された表示データをJPEG(Joint Photographic Experts Group)規格又はMPEG(Motion Picture Experts Group)規格に従って圧縮した圧縮データを生成する。圧縮データは、ホストI/F380を介して表示コントローラ300の外部に出力される。
ホストI/F380は、ホスト110との間のインタフェース処理を行う。例えばホスト110からリード要求信号があったときに、制御部390に通知し、制御部390がフレームメモリ340から表示データを読み出して圧縮処理部370において、圧縮処理を開始させる。そしてこの圧縮処理後のデータを、ホストI/F380を介してホスト110に出力させる。
制御部390は、カメラI/F310、リサイザ320、画像サイズ縮小処理部330、フレームメモリ340、画像サイズ拡大処理部350、ドライバI/F360、圧縮処理部370、及びホストI/F380の制御を司る。制御部390は、例えばホストI/F380を介してホスト110からの指示に従って、CCDイメージセンサモジュール100からの入力画像データの受信処理、リサイザ320及び画像サイズ縮小処理部330の処理、フレームメモリ340への書き込み処理、フレームメモリ340からの表示データの読み出し処理、画像サイズ拡大処理部350の処理、圧縮処理部370の圧縮処理、表示ドライバ130への該画像データの送信処理の制御を行う。
制御部390は、設定レジスタ部400を有する。設定レジスタ部400には、制御部390の制御内容に対応したデータが設定される。
図12に、設定レジスタ部400の構成例のブロック図を示す。
設定レジスタ部400は、水平方向最小縮小倍率設定レジスタ410、水平方向縮小倍率設定レジスタ412、垂直方向最小縮小倍率設定レジスタ414、垂直方向縮小倍率設定レジスタ416、リサイズ設定レジスタ418を含む。更に設定レジスタ部400は、水平方向拡大倍率設定レジスタ420、垂直方向拡大倍率設定レジスタ422を含む。
水平方向最小縮小倍率設定レジスタ410には、ホスト110によって、上述した画像サイズ縮小処理におけるPxが設定される。水平方向縮小倍率設定レジスタ412は、ホスト110によって、上述した画像サイズ縮小処理におけるαが設定される。
垂直方向最小縮小倍率設定レジスタ414には、ホスト110によって、上述した画像サイズ縮小処理におけるPyが設定される。垂直方向縮小倍率設定レジスタ416は、ホスト110によって、上述した画像サイズ縮小処理におけるβが設定される。
水平方向拡大倍率設定レジスタ420には、画像サイズ拡大処理部350による水平方向の拡大倍率に対応したデータが設定される。該データは、上述した画像サイズ拡大処理におけるα1であり、ホスト110によって設定される。垂直方向拡大倍率設定レジスタ422には、画像サイズ拡大処理部350による垂直方向の拡大倍率に対応したデータが設定される。該データは、上述した画像サイズ拡大処理におけるβ1であり、ホスト110によって設定される。
以上のように、表示コントローラ300では、リサイザ320によって大まかに取り込み画像のサイズが変換される。そして画像サイズ縮小処理部330では、狭い範囲(例えば1倍から2分の1倍までの範囲)で縮小倍率を細かく設定できるようにし、リサイズ画像を細かく設定できる倍率で縮小できるようにする。このようなリサイザ320と画像サイズ縮小処理部330とを組み合わせることで、取り込み画像の画像データを省くことなく、表示パネル120の表示サイズに応じた画像サイズに変換できる。そして、簡素な構成で、連続的に(フレームごとに)滑らかに画像サイズが変更される画像を表示するための表示データを提供できる。
また例えばフレームメモリ340から読み出した表示データに対して縮小処理を行ってから表示ドライバ130に表示データを供給してしまうと、縮小前の画像のデータを記憶するフレームメモリ340の大容量化を招く。これに対して、図8では表示コントローラ300のフレームメモリ340には、画像サイズ縮小処理部330によって縮小処理が行われた後の画像のデータが書き込まれる。そのため、フレームメモリ340の容量を小さくできる。
また、近年では取り込み画像のデータを他の携帯機器に送信できるが、他の携帯機器も同様に表示部のサイズが制限されているため、縮小後の表示データをそのまま送信しても問題がない。
更にフレームメモリ340から読み出した表示データをJPEG規格やMPEG規格に従って圧縮した圧縮データを他の携帯機器に送信する場合にも、該表示データを縮小処理した後に圧縮データに変換することが望ましい。なぜなら、画像サイズの大きいデータに対して圧縮処理を行ってからサイズの縮小処理を行うと、それだけ圧縮処理の負荷が重くなるからである。更に他の携帯機器が、取り込み画像を有効に使って縮小処理を行うことができないときに、他の携帯機器では画像を切り取ることが行われてしまうからである。
これに対して本実施形態では、取り込み画像の縮小後にフレームメモリに書き込むようにしている。こうすることで、ホストが余分な処理を行うことなく、フレームメモリから読み出した表示データを、そのまま或いは圧縮した後に、他の携帯機器に送信できるようになる。
なお画像サイズ縮小処理部330と画像サイズ拡大処理部350に関して、C1とC3、C2とC4、αとα1、βとβ1とをそれぞれ同じ値にすることで、パラメータを1種類にできる。例えば図2の(C1+α)の係数を、縮小処理のときには1以上の値を設定し、拡大処理のときには1を設定すればよい。この場合、α又はβを変更することで、所定の範囲で倍率を可変にできる。
また画像サイズ拡大処理部350は、以下のように拡大後の画像の画素を線形補間するようにしてもよい。
図13に、8×8画素の原画像を、縦横1.25倍に拡大した拡大画像の例を示す。この場合、画像サイズ拡大処理部350は、上記の処理方法により、8×8画素の1ブロックを、10×10画素に拡大しているものとする。原画像の画素と拡大画像の画素との間で同一の画素のデータは、同じ記号を付している。
この結果、拡大画像の水平方向の画素500、510では、水平方向に隣接する画素のデータと同じ画素のデータが割り当てられたものとする。同様に、拡大画像の垂直方向の画素520、530では、垂直方向に隣接する画素のデータと同じ画素のデータが割り当てられたものとする。
このとき画像サイズ拡大処理部350は、画素500については、水平方向に隣接する画素と線形補間を行う。即ち、図14に示すように、画素500のデータP3を、該データP3と、画素500と水平方向に隣接し該画素500のデータとは異なる画素のデータとを用いて補間を行うということができる。この場合、(P3+P4)/2に置き換える。従って、画素500の列には、(P3+P4)/2、(Q3+Q4)/2、・・・が並ぶことになる。
また同様に画素510については、水平方向に隣接する画素と線形補間を行う。即ち、図14に示すように、画素510のデータP5を、(P5+P6)/2に置き換える。従って、画素510の列には、(P5+P6)/2、(Q5+Q6)/2、・・・が並ぶことになる。
更に画像サイズ拡大処理部350は、画素520については、垂直方向に隣接する画素と線形補間を行う。即ち、図14に示すように、画素520のデータS1を、画素520の両端の画素のデータを使って、(R1+S1)/2に置き換えるということができる。従って、画素520の行には、(R1+S1)/2、(R2+S2)/2、・・・が並ぶことになる。
また同様に画素530については、垂直方向に隣接する画素と線形補間を行う。即ち、図14に示すように、画素530のデータT1を、(T1+U1)/2に置き換える。従って、画素530の行には、(T1+U1)/2、(T2+U2)/2、・・・が並ぶことになる。
以上のように線形補間を行うことで、滑らかな拡大画像を表現できるようになる。特に拡大画像が自然画像の場合、滑らかに表現できる。
なお原画像及び拡大画像の画素のフォーマットがYUVフォーマットであるものとすると、線形補間を行うのはY成分(輝度成分)のみであることが望ましい。色差成分であるU、V成分では線形補間の効果が薄く、回路規模が増大するだけだからである。
これまで説明したように、図8に示した表示コントローラ300によれば、取り込み画像の画像データを省くことなく、表示パネル120の表示サイズに応じた画像サイズに変換できる。そして、簡素な構成で、滑らかに画像サイズが変更される画像を表現するための表示データを生成できる。
またフレームメモリ340に容量を小さくし、ホストに余分な処理負荷をかけることなくフレームメモリ340から読み出した表示データを、そのまま或いは圧縮した後に出力できる。
図15に、図8の表示コントローラが適用される電子機器の構成例のブロック図を示す。ここでは、電子機器として、携帯電話機の構成例のブロック図を示す。但し、図8と同一部分には同一符号を付し、適宜説明を省略する。
携帯電話機600は、イメージセンサモジュール610を含む。イメージセンサモジュール610は、CCDイメージセンサを含み、CCDイメージセンサで撮像した画像のデータを、YUVフォーマットで表示コントローラ300に供給する。
携帯電話機600は、表示パネル620を含む。表示パネル620は、図8の表示パネル120の機能を有する。表示パネル620として、液晶表示パネルを採用できる。この場合、表示パネル620は、表示ドライバ630によって駆動される。表示パネル620は、複数の走査線、複数のデータ線、複数の画素を含む。表示ドライバ630は、図8の表示ドライバ130の機能を有する。表示ドライバ630は、複数の走査線の1又は複数本単位で走査線を選択する走査ドライバの機能を有すると共に、画像データに対応した電圧を複数のデータ線に供給するデータドライバの機能を有する。
表示コントローラ300は、表示ドライバ630に接続され、表示ドライバ630に対して表示データを供給する。
ホスト640は、表示コントローラ300に接続される。ホスト640は、図8のホスト110の機能を有する。ホスト640は、表示コントローラ300を制御する。またホスト640は、アンテナ660を介して受信された画像データを、変復調部650で復調した後、表示コントローラ300に対して供給できる。表示コントローラ300は、この画像データに基づき、表示ドライバ630により表示パネル620に表示させる。
また表示コントローラ300は、イメージセンサモジュール610により取り込まれた取り込み画像を縮小した後に、表示データをフレームメモリに記憶する。これにより、連続的にフレームごとに画像サイズが滑らかに変化する画像を表示パネル620に表示させることが可能となる。
そしてホスト640が、表示コントローラ300のフレームメモリに記憶された表示データを用いて変復調部650で変調した後、アンテナ660を介して他の携帯機器(通信装置)への送信を指示できる。
その一方で、フレームメモリから読み出した表示データを拡大できるため、連続的にフレームごとに画像サイズが滑らかに拡大していく画像を表示パネル620に表示させることも可能となる。
ホスト640は、操作入力部670からの操作情報に基づいて画像データの送受信処理、画像サイズ縮小処理及び画像サイズ拡大処理、イメージセンサモジュール610の撮像、表示パネルの表示処理を行う。
なお、図15では、表示パネル620として液晶表示パネルを例に説明したが、これに限定されるものではない。表示パネル620は、エレクトロクミネッセンス、プラズマディスプレイ装置であってもよく、これらを駆動する表示ドライバに表示データを供給する表示コントローラに適用できる。
なお、本発明は上述した実施の形態に限定されるものではなく、本発明の要旨の範囲内で種々の変形実施が可能である。例えば、本発明は上述の液晶表示パネルの駆動に適用されるものに限らず、エレクトロクミネッセンス、プラズマディスプレイ装置の駆動に適用可能である。
また、本発明のうち従属請求項に係る発明においては、従属先の請求項の構成要件の一部を省略する構成とすることもできる。また、本発明の1の独立請求項に係る発明の要部を、他の独立請求項に従属させることもできる。
100 CCDイメージセンサモジュール(画像取り込み部)、110 ホスト、
120 表示パネル(表示部)、130 表示ドライバ(駆動部)、
300 表示コントローラ、310 カメラI/F、320 リサイザ、
330 画像サイズ縮小処理部、340 フレームメモリ、
350 画像サイズ拡大処理部、360 ドライバI/F、370 圧縮処理部、
380 ホストI/F、390 制御部、400 設定レジスタ部、
400 設定レジスタ部、410 水平方向最小縮小倍率設定レジスタ、
412 水平方向縮小倍率設定レジスタ、414 垂直方向最小縮小倍率設定レジスタ、
416 垂直方向倍率設定レジスタ、418 リサイズ設定レジスタ、
420 水平方向拡大倍率設定レジスタ、422 垂直方向拡大倍率設定レジスタ
120 表示パネル(表示部)、130 表示ドライバ(駆動部)、
300 表示コントローラ、310 カメラI/F、320 リサイザ、
330 画像サイズ縮小処理部、340 フレームメモリ、
350 画像サイズ拡大処理部、360 ドライバI/F、370 圧縮処理部、
380 ホストI/F、390 制御部、400 設定レジスタ部、
400 設定レジスタ部、410 水平方向最小縮小倍率設定レジスタ、
412 水平方向縮小倍率設定レジスタ、414 垂直方向最小縮小倍率設定レジスタ、
416 垂直方向倍率設定レジスタ、418 リサイズ設定レジスタ、
420 水平方向拡大倍率設定レジスタ、422 垂直方向拡大倍率設定レジスタ
Claims (4)
- 水平方向及び垂直方向に画素が並ぶ原画像のサイズを縮小した縮小画像の画像データを生成するための画像サイズ縮小処理方法であって、
前記原画像の水平方向に第0〜第Mx(Mxは1以上の整数)の画素が並び、前記縮小画像の水平方向に第0〜第Nx(Nxは1以上の整数)の画素が並ぶ場合に、
前記原画像の水平方向に隣接する画素間を仮想的にB1(B1は2以上の整数)分割し、
該水平方向に並ぶ各画素と画素間の各分割点に対し、連続する整数を割り当て、
((C1+α)×Px)(0<C1<B1、0≦α<B1−C1、Pxは1より大きい数)のnx倍(0≦nx≦Nx、nxは整数)の数値が、mx×B1(0≦mx≦Mx−1、mxは整数)以上で、かつ(mx+1)×B1より小さいとき、前記縮小画像の水平方向の第nxの画素のデータに、前記原画像の水平方向の第mxの画素のデータを割り当てて前記画像データを生成することを特徴とする画像サイズ縮小処理方法。 - 水平方向及び垂直方向に画素が並ぶ原画像のサイズを縮小した縮小画像の画像データを生成するための画像サイズ縮小処理方法であって、
前記原画像の垂直方向に第0〜第My(Myは1以上の整数)の画素が並び、前記縮小画像の垂直方向に第0〜第Ny(Nyは1以上の整数)の画素が並ぶ場合に、
前記原画像の垂直方向に隣接する画素間を仮想的にB2(B2は2以上の整数)分割し、
該垂直方向に並ぶ各画素と画素間の各分割点に対し、連続する整数を割り当て、
((C2+β)×Py)(0<C2<B2、0≦β<B2−C2、Pyは1より大きい数)のny倍(0≦ny≦Ny、nyは整数)の数値が、my×B2(0≦my≦My−1、myは整数)以上で、かつ(my+1)×B2より小さいとき、前記縮小画像の垂直方向の第nyの画素のデータに、前記原画像の垂直方向の第myの画素のデータを割り当てて前記画像データを生成することを特徴とする画像サイズ縮小処理方法。 - 水平方向及び垂直方向に画素が並ぶ原画像のサイズを拡大した拡大画像の画像データを生成するための画像サイズ拡大処理方法であって、
前記原画像の画像の水平方向に第0〜第M1x(M1xは1以上の整数)の画素が並び、前記拡大画像の水平方向に第0〜第N1x(N1xは1以上の整数)の画素が並ぶ場合に、
前記原画像の水平方向に隣接する画素間を仮想的にB3(B3は2以上の整数)分割し、
該水平方向に並ぶ各画素と画素間の各分割点に対し、連続する整数を割り当て、
(C3+α1)(0<C3<B3、0≦α1<B3−C3)のn1x倍(0≦n1x≦N1x、n1xは整数)の数値が、m1x×B3(0≦m1x≦M1x−1、m1xは整数)以上で、かつ(m1x+1)×B3より小さいとき、前記拡大画像の水平方向の第n1xの画素のデータに、前原画像の水平方向の第m1xの画素のデータを割り当てて前記画像データを生成することを特徴とする画像サイズ拡大処理方法。 - 水平方向及び垂直方向に画素が並ぶ原画像のサイズを拡大した拡大画像の画像データを生成するための画像サイズ拡大処理方法であって、
前記原画像の垂直方向に第0〜第M1y(M1yは1以上の整数)の画素が並び、前記拡大画像の垂直方向に第0〜第N1y(N1yは1以上の整数)の画素が並ぶ場合に、
前記原画像の水平方向に隣接する画素間を仮想的にB4(B4は2以上の整数)分割し、
該水平方向に並ぶ各画素と画素間の各分割点に対し、連続する整数を割り当て、
(C4+β1)(0<C4<B4、0≦β1<B4−C4)のn1y倍(0≦n1y≦N1y、n1yは整数)の数値が、m1y×B4(0≦m1y≦M1y−1、m1yは整数)以上で、かつ(m1y+1)×B4より小さいとき、前記拡大画像の垂直方向の第n1yの画素のデータに、前記原画像の垂直方向の第m1yの画素のデータを割り当てて前記画像データを生成することを特徴とする画像サイズ拡大処理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004051713A JP2005242675A (ja) | 2004-02-26 | 2004-02-26 | 画像サイズ縮小処理方法及び画像サイズ拡大処理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004051713A JP2005242675A (ja) | 2004-02-26 | 2004-02-26 | 画像サイズ縮小処理方法及び画像サイズ拡大処理方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2005242675A true JP2005242675A (ja) | 2005-09-08 |
Family
ID=35024353
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004051713A Withdrawn JP2005242675A (ja) | 2004-02-26 | 2004-02-26 | 画像サイズ縮小処理方法及び画像サイズ拡大処理方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2005242675A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007243610A (ja) * | 2006-03-08 | 2007-09-20 | Seiko Epson Corp | アドレスを生成し、そのアドレスに画素データを格納するユニット |
JP7316130B2 (ja) | 2019-07-16 | 2023-07-27 | キヤノン株式会社 | 画像処理装置、画像処理装置の制御方法、プログラム |
-
2004
- 2004-02-26 JP JP2004051713A patent/JP2005242675A/ja not_active Withdrawn
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007243610A (ja) * | 2006-03-08 | 2007-09-20 | Seiko Epson Corp | アドレスを生成し、そのアドレスに画素データを格納するユニット |
JP4687511B2 (ja) * | 2006-03-08 | 2011-05-25 | セイコーエプソン株式会社 | アドレスを生成し、そのアドレスに画素データを格納するユニット |
JP7316130B2 (ja) | 2019-07-16 | 2023-07-27 | キヤノン株式会社 | 画像処理装置、画像処理装置の制御方法、プログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4687725B2 (ja) | 画像処理装置及び画像処理方法、並びにコンピュータ・プログラム | |
JP2006251861A (ja) | 画像処理装置、画像処理方法、表示コントローラ及び電子機器 | |
JP2007271908A (ja) | マルチ画像生成装置 | |
EP1594119A2 (en) | Image signal processing circuit and image display apparatus | |
JP4263190B2 (ja) | 映像合成回路 | |
JP4035408B2 (ja) | 解像度変換装置及び方法及び情報処理装置 | |
JPH03148695A (ja) | 液晶表示装置 | |
US20060203002A1 (en) | Display controller enabling superposed display | |
JP2007017615A (ja) | 画像処理装置,画像処理方法及びプログラム | |
JP2005242675A (ja) | 画像サイズ縮小処理方法及び画像サイズ拡大処理方法 | |
JP2000324337A (ja) | 画像拡大縮小装置 | |
JP2001128089A (ja) | マルチスクリーン用画面合成装置 | |
JP2006145758A (ja) | オンスクリーンディスプレイ装置 | |
JP2005322233A (ja) | 大型のオーバーレイされたカメラ画像を圧縮符号化するためのメモリ効率の良い方法及び装置 | |
JP2005241979A (ja) | 表示コントローラ及び表示制御方法 | |
JP2005266792A (ja) | 大型のオーバーレイされたカメラ画像を表示するためのメモリ効率の良い方法及び装置 | |
JP4470762B2 (ja) | 画像処理装置、表示コントローラ及び電子機器 | |
JP5645343B2 (ja) | 撮像装置 | |
US8553050B2 (en) | Video signal processing apparatus, video signal processing method, and imaging device | |
JP4670403B2 (ja) | 画像処理装置、画像処理方法、表示コントローラ及び電子機器 | |
JP4788158B2 (ja) | 表示パネル駆動装置、及び表示パネル駆動方法、デジタルカメラ | |
JP2003259283A (ja) | 画像処理装置、画像処理方法および画像処理システム | |
JP2002182639A (ja) | 画像処理装置 | |
JP2011090210A (ja) | 画像表示装置、電子機器及び画像表示方法 | |
JP4350395B2 (ja) | プログレッシブ走査変換方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20070501 |