JP4550766B2 - 画像処理装置および画像処理方法 - Google Patents

画像処理装置および画像処理方法 Download PDF

Info

Publication number
JP4550766B2
JP4550766B2 JP2006126851A JP2006126851A JP4550766B2 JP 4550766 B2 JP4550766 B2 JP 4550766B2 JP 2006126851 A JP2006126851 A JP 2006126851A JP 2006126851 A JP2006126851 A JP 2006126851A JP 4550766 B2 JP4550766 B2 JP 4550766B2
Authority
JP
Japan
Prior art keywords
weighting factors
value
weighting
pixel
original pixels
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 - Fee Related
Application number
JP2006126851A
Other languages
English (en)
Other versions
JP2007300401A (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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2006126851A priority Critical patent/JP4550766B2/ja
Publication of JP2007300401A publication Critical patent/JP2007300401A/ja
Application granted granted Critical
Publication of JP4550766B2 publication Critical patent/JP4550766B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

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

Description

本発明は補間処理を実行するための画像処理装置および画像処理方法に関する。
一般に、コンピュータにおいては、画像を拡大または縮小するためのスケーリング処理が実行されている。画像の拡大は、例えば、ある元画像をコンピュータのディスプレイモニタにフルスクリーン表示する場合等に使用される。画像を拡大するための処理は、補間を用いて実行される。
補間の方法としては、sin(x)/xの関数を近似する区分多項式を用いた補間方法が知られている。この補間方法においては、補間対象画素を囲む例えば4×4の元画素の重み付け平均値が補間対象画素の画素値として算出される。4×4の元画素の重み付け平均値の算出には、4×4の重み係数が用いられる。
バイキュービック補間は、上述の補間方法の一つとして広く知られている。特許文献1には、バイキュービック補間によって表示画像を生成する装置が開示されている。
特開平11−203467号公報
しかし、4×4の元画素を使用するバイキュービック補間においては、元画素の画素値に重み係数を掛ける乗算を16回行い、さらに16個の乗算結果の総和を求める必要がある。これらの演算をパーソナルコンピュータにおいてソフトウェアによって実行する場合には、コンピュータ内のプロセッサの負荷は非常に大きくなる。例えば、30fpsのフレームレートを有する画像データの画素数を、SD(標準解像度)規格の解像度(水平720画素、垂直480画素)からHD(高解像度)規格の解像度(水平1440画素、垂直960画素)に変換するためには、1秒間に約6億6千万回(1440×960×16×30=663552000)の乗算を行う必要がある。
本発明は上述の事情を考慮してなされたものであり、少ない演算量で効率よく画像データの画素数を増やすことが可能な画像処理装置および画像処理方法を提供することを目的とする。
上述の課題を解決するため、本発明は、sin(x)/xの関数を近似する区分多項式を用いた補間処理によって、補間対象画素の画素値を前記補間対象画素を囲む複数の元画素それぞれの画素値に基づいて算出する画像処理装置であって、前記複数の元画素それぞれに対応する複数の重み係数を含む係数情報を格納する記憶部であって、前記複数の重み係数の内で最大の重み係数を少なくとも含む1以上の重み係数を除く他の重み係数それぞれの値は、前記区分多項式によって得られる重み係数の値をそれぞれ近似する2のべき乗の値である記憶部と、前記補間対象画素の画素値を得るために、前記係数情報に含まれる複数の重み係数を用いて前記複数の元画素の画素値の重み付け平均を算出する演算部とを具備することを特徴とする。
本発明によれば、少ない演算量で効率よく画像データの画素数を増やすことが可能となる。
以下、図面を参照して、本発明の実施形態を説明する。
まず、図1および図2を参照して、本発明の一実施形態に係る画像処理装置を搭載した情報処理装置の構成について説明する。この情報処理装置は、例えば、ノートブック型の携帯型パーソナルコンピュータ10として実現されている。
図1はパーソナルコンピュータ10のディスプレイユニットを開いた状態における斜視図である。本コンピュータ10は、コンピュータ本体11と、ディスプレイユニット12とから構成されている。ディスプレイユニット12には、TFT−LCD(Thin Film Transistor Liquid Crystal Display)17から構成される表示装置が組み込まれており、そのLCD17の表示画面はディスプレイユニット12のほぼ中央に位置されている。LCD17は、例えばHD(High Definition)規格に対応した表示画面サイズ(解像度)を有している。
ディスプレイユニット12は、コンピュータ本体11に対して開放位置と閉塞位置との間を回動自在に取り付けられている。コンピュータ本体11は薄い箱形の筐体を有しており、その上面にはキーボード13、本コンピュータ1を電源オン/オフするためのパワーボタン14、入力操作パネル15、およびタッチパッド16などが配置されている。
入力操作パネル15は、押されたボタンに対応するイベントを入力する入力装置であり、複数の機能をそれぞれ起動するための複数のボタンを備えている。これらボタン群には、TV起動ボタン15A、DVD/CD起動ボタン15Bも含まれている。TV起動ボタン15Aは、TV放送番組データの再生、視聴及び記録を行うためのTV機能を起動するためのボタンである。TV起動ボタン15Aがユーザによって押下された時、TV機能を実行するためのTVアプリケーションプログラムが自動的に起動される。
DVD/CD起動ボタン15Bは、DVDまたはCDに記録されたビデオコンテンツを再生するためのボタンである。DVD/CD起動ボタン15Bがユーザによって押下された時、ビデオコンテンツを再生するための再生アプリケーションプログラムが自動的に起動される。
次に、図2を参照して、本コンピュータ10のシステム構成について説明する。
本コンピュータ10は、図2に示されているように、CPU111、ノースブリッジ112、主メモリ113、グラフィクスコントローラ114、サウスブリッジ119、BIOS−ROM120、ハードディスクドライブ(HDD)121、光ディスクドライブ(ODD)122、TVチューナ123、エンベデッドコントローラ/キーボードコントローラIC(EC/KBC)124、およびネットワークコントローラ125等を備えている。
CPU111は本コンピュータ10の動作を制御するために設けられたプロセッサであり、ハードディスクドライブ(HDD)121から主メモリ113にロードされる、オペレーティングシステム、および各種アプリケーションプログラムを実行する。本実施形態では、TVアプリケーションプログラム、再生アプリケーションプログラムのようなビデオアプリケーションプログラムが実行される。
ビデオアプリケーションプログラムは、TVチューナ123によって受信されたTV放送番組データに含まれる画像データ(動画像データ)または光ディスクドライブ(ODD)122から読み出される画像データ(動画像データ)、のような元画像に対して各種画像処理を施す。ビデオアプリケーションプログラム201は、画像処理機能として、図3に示すように、ノイズリダクションモジュール210、IP(Interlace/Progressive)変換モジュール211、黒伸張モジュール212、白伸張モジュール213、シャープネスモジュール214、および補間処理モジュール(スケーラ)215を備えている。
ノイズリダクションモジュール210は、例えば、TVチューナ123によって受信される放送番組データに含まれる画像データからノイズを除去するための処理を実行する。IP変換モジュール211は、元画像データをインターレース映像からその2倍のデータ量を持つプログレッシブ映像に変換するためのプログレッシブ変換処理を実行する。黒伸張モジュール212および白伸張モジュール213は、それぞれ黒と白の階調を拡張補正するための処理を実行する。シャープネスモジュール214は、輪郭強調などのためのシャープネス処理を実行する。補間処理モジュール(スケーラ)215は、元画像の解像度(画像サイズ)をLCD17の解像度に拡大するための補間処理を実行する。この補間処理により、例えば、SD(Standard Definition)規格に対応した画像サイズ(解像度)を有する元画像は、HD(High Definition)規格に対応した画像サイズ(解像度)に拡大される。
補間処理によって拡大された画像データは、表示ドライバ202を介してグラフィクスコントローラ114のビデオメモリ114Aに書き込まれる。表示ドライバ202はグラフィクスコントローラ114を制御するためのソフトウェアである。
なお、補間処理は、ハードウェアによって実行することもできる。この場合、グラフィクスコントローラ114に設けられた補間処理部(スケーラ)301が上述の補間処理を実行する。
また、CPU111は、BIOS−ROM120に格納されたシステムBIOS(Basic Input Output System)も実行する。システムBIOSはハードウェア制御のためのプログラムである。
ノースブリッジ112はCPU111のローカルバスとサウスブリッジ119との間を接続するブリッジデバイスである。ノースブリッジ112には、主メモリ113をアクセス制御するメモリコントローラも内蔵されている。また、ノースブリッジ112は、AGP(Accelerated Graphics Port)バスなどを介してグラフィクスコントローラ114との通信を実行する機能も有している。
グラフィクスコントローラ114は本コンピュータ10のディスプレイモニタとして使用されるLCD17を制御する表示コントローラである。このグラフィクスコントローラ114はビデオメモリ(VRAM)114Aに書き込まれた画像データをLCD17に表示する。
サウスブリッジ119は、LPC(Low Pin Count)バス上の各デバイス、およびPCI(Peripheral Component Interconnect)バス上の各デバイスを制御する。また、サウスブリッジ119は、HDD121、ODD122を制御するためのIDE(Integrated Drive Electronics)コントローラを内蔵している。さらに、サウスブリッジ119は、BIOS−ROM120をアクセス制御するための機能も有している。
HDD121は、各種ソフトウェア及びデータを格納する記憶装置である。光ディスクドライブ(ODD)123は、ビデオコンテンツが格納されたDVD、CDなどの記憶メディアを駆動するためのドライブユニットである。TVチューナ123は、TV放送番組のような放送番組データを受信するための受信装置である。
エンベデッドコントローラ/キーボードコントローラIC(EC/KBC)124は、電力管理のためのエンベデッドコントローラと、キーボード(KB)13およびタッチパッド16を制御するためのキーボードコントローラとが集積された1チップマイクロコンピュータである。このエンベデッドコントローラ/キーボードコントローラIC(EC/KBC)124は、ユーザによるパワーボタン14の操作に応じて本コンピュータ10をパワーオン/パワーオフする機能を有している。本コンピュータ10の各コンポーネントに供給される動作電源は、本コンピュータ10に内蔵されたバッテリ126、またはACアダプタ127を介して外部から供給される外部電源から生成される。
ネットワークコントローラ125は、例えばインターネットなどの外部ネットワークとの通信を実行する通信装置である。
次に、本実施形態の補間処理について説明する。
図4は、元画像データと、補間処理によって元画像データから生成される出力画像データとの間の画素位置関係を示している。
図4においては、補間処理の説明を簡単にするために、元画像データがP1からP25までの25画素から構成されている場合を想定する。
P1からP5までは水平方向に等間隔に位置する画素であり、このP1からP5に対して垂直方向に水平方向の画素間隔と同じ間隔で離れた位置にP6からP10が存在し、同じくP6からP10に対して垂直方向に水平方向の画素間隔と同じ間隔で離れた位置にP11からP15が存在し、同じくP11からP15に対して垂直方向に水平方向の画素間隔と同じ間隔で離れた位置にP16からP20が存在し、同じくP16からP20に対して垂直方向に水平方向の画素間隔と同じ間隔で離れた位置にP21からP25が存在する。このように、P1からP25は5×5の正方格子の位置関係を有している。
P13からP14に向かって水平方向に1/4の距離で且つP13からP18に向かって垂直方向に1/4の距離にQ13aがあり、P13を中心にQ13aを半時計方向に90度回転した位置にQ13bが、P13を中心にQ13bを半時計方向に90度回転した位置にQ13cが、P13を中心にQ13cを半時計方向に90度回転した位置にQ13dがある。
いま、P13に注目した場合にQ13a、Q13b、Q13c、Q13dで示されるものがP13を中心としてその周囲に作られる4画素の位置を示しており、補間処理によりP13の画素と周辺画素群とから、Q13a〜Q13dの画素が作成されることになる。また、m1〜m25は画素P1〜P25の画素値で、m13a〜m13dはQ13a〜Q13dの画素値である。
元画像を4倍に拡大する場合(画素密度を4倍にする場合)には、画素P1〜P25の各画素がその周辺の4画素に置換される。
一般に、画素補間を行う方法として、補間対象画素を囲む複数の元画素それぞれの画素値を用いて補間する方法が知られている。
この場合、補間関数として図5に示すようなsin(x)/xの特性を持った関数を用い、この関数と周辺画素それぞれの画素値とを掛け合わせたものを畳み込み演算すると、正確な補間を実行できることが知られている。
しかしながら、図5のような特性を持った補間フィルタを設計するのは現実的ではなく、従来より、図5の波形特性を近似する特性を持った関数が用いられている。
図5に示すsin(x)/xを近似する関数としては、双3次関数を用いた内挿法が一般的に知られている。sin(x)/xを近似する関数は、次に示す区分多項式で定義することができる。
区分多項式 区間
(X3+5X2+8X+4)/2 -2 <= X < -1 --- a
(-3X3-5X2+2)/2 -1 <= X < 0 --- b
(3X3-5X2+2)/2 0 <= X < 1 --- c
(-X3+5X2-8X+4)/2 1 <= X < 2 --- d
ここにおけるXの値は画素間距離を示しており、図4における元画像の水平または垂直方向の画素間距離を1としている。双3次関数の特性を図6に示す。
以下、図4においてQ13の周辺にQ13a、Q13b、Q13c、Q13dの4画素を作成する場合の例について述べる。
補間対象画素Q13aを作成する場合は、補間対象画素Q13aを囲む16個の元画素P7、P8、P9、P10、P12、P13、P14、P15、P17、P18、P19、P20、P22、P23、P24、P25それぞれの画素値が使用される。
Q13b、Q13c、Q13dを作成する場合には、使用される周辺画素はP13を中心に半時計回りに順に90度回転させた画素群となる。すなわち、補間対象画素Q13bを作成する場合は、P17、P12、P7、P2、P18、P13、P8、P3、P19、P14、P9、P4、P20、P15、P10、P5それぞれの画素値が使用される。補間対象画素Q13cを作成する場合は、P19、P18、P17、P16、P14、P13、P12、P11、P9、P8、P7、P6、P4、P3、P2、P1それぞれの画素値が使用される。補間対象画素Q13dを作成する場合は、P9、P14、P19、P24、P8、P13、P18、P23、P7、P12、P17、P22、P6、P11、P16、P21それぞれの画素値が使用される。
ここで、Q13aを作成する場合の演算処理について説明する。
P7、P8、P9、P10、P12、P13、P14、P15、P17、P18、P19、P20、P22、P23、P24、P25の画素値は、m7、m8、m9、m10、m12、m13、m14、m15、m17、m18、m19、m20、m22、m23、m24、m25なので、これら画素値とこれら画素値それぞれに対する重み係数との関係は以下のようになる。
各画素位置に対応する画素値
m7 m8 m9 m10
m12 m13 m14 m15
m17 m18 m19 m20
m22 m23 m24 m25
各画素位置に対応する重み係数
w7 w8 w9 w10
w12 w13 w14 w15
w17 w18 w19 w20
w22 w23 w24 w25
各画素位置における重み係数は、実際には、補間対象画素と各元画素との位置関係により区分多項式から求められる。補間対象画素Q13aの画素値m13aは、複数の元画素それぞれの画素値と対応する重み係数との掛け算の総和により求められる。即ち、Q13aの画素値m13aは、
m13a=m7×w7+m8×w8+m9×w9+m10×w10+m12×w12+m13×w13+m14×w14+m15×w15+m17×w17+m18×w18+m19×w19+m20×w20+m22×w22+m23×w23+m24×w24+m25×w25
となる。
区分多項式を用いて得られる具体的な4×4の重み係数の例を基本演算係数として以下に示す。基本演算係数は、補間処理に用いられる16個の元画素それぞれに対応する16個の重み係数から構成される。基本演算係数は例えば16bit精度で表現されている。補間対象画素の画素値は、複数の元画素それぞれの画素値と対応する重み係数との掛け算の総和を求めた後に、その総和を65536(=216)で割ることによって得られる。すなわち、Q13aの画素値m13aは、4×4の重み係数を用いて、16個の元画素の重み付け平均を算出することによって生成される。
区分多項式により得られる基本演算係数
324 -3996 -1044 108
-3996 49284 12876 -1332
-1044 12876 3364 -348
108 -1332 -348 36
通常の双3次関数を用いた内挿法では、以上のような方式により補間対象画素の画素値が求められる。
しかしながら、このような画素補間方式では、非常に多くの乗算を実行することが必要となる。例えば、30fpsのフレームレートを有する元画像データの画素数を、SD(標準解像度)規格の解像度(水平720画素、垂直480画素)からHD(高解像度)規格の解像度(水平1440画素、垂直960画素)に変換するためには、1秒間に約6億6千万回(1440×960×16×30=663552000)の乗算を行う必要がある。
したがって、パーソナルコンピュータにおいてソフトウェアによって補間処理を実行する場合には、コンピュータ内のCPUの負荷は非常に大きくなる。
本実施形態の補間処理においては、CPU負荷を軽減するために、乗算をビットシフト演算により実現できるように各重み係数に工夫を加えている。
本実施形態で用いられる16個の重み係数の例を第1の演算係数として以下に示す。
第1の演算係数
256 -4096 -1024 128
-4096 40928 16384 -1024
-1024 16384 4096 -256
128 -1024 -256 32
第1の演算係数に含まれる各重み係数をべき乗表示したものを以下に示す。
第1の演算係数(べき乗表示)
28 -212 -210 27
-212 40928 214 -210
-210 214 212 -28
27 -210 -28 25
このように、第1の演算係数に含まれる16個の重み係数の内で、最大の重み係数を除く他の重み係数それぞれの値は、区分多項式によって得られる重み係数の値をそれぞれ近似する2のべき乗の値に設定されている。
すなわち、重み係数w7は、区分多項式により得られる重み係数(=324)に最も近い2のべき乗の値(=256=28)に設定されている。重み係数w8は、区分多項式により得られる重み係数(=-3996)に最も近い2のべき乗の値(=-4096=-212)に設定されている。重み係数w9は、区分多項式により得られる重み係数(=-1044)に最も近い2のべき乗の値(=-1024=-210)に設定されている。重み係数w10は、区分多項式により得られる重み係数(=108)に最も近い2のべき乗の値(=128=27)に設定されている。
重み係数w12は、区分多項式により得られる重み係数(=-3996)に最も近い2のべき乗の値(=-4096=-212)に設定されている。重み係数w14は、区分多項式により得られる重み係数(=12876)に最も近い2のべき乗の値(=16384=214)に設定されている。重み係数w15は、区分多項式により得られる重み係数(=-1332)に最も近い2のべき乗の値(=-1024=-210)に設定されている。
重み係数w17は、区分多項式により得られる重み係数(=-1044)に最も近い2のべき乗の値(=-1024=-210)に設定されている。重み係数w18は、区分多項式により得られる重み係数(=12876)に最も近い2のべき乗の値(=16384=214)に設定されている。重み係数w19は、区分多項式により得られる重み係数(=3364)に最も近い2のべき乗の値(=4096=212)に設定されている。重み係数w20は、区分多項式により得られる重み係数(=-348)に最も近い2のべき乗の値(=-256=-28)に設定されている。
重み係数w22は、区分多項式により得られる重み係数(=108)に最も近い2のべき乗の値(=128=27)に設定されている。重み係数w23は、区分多項式により得られる重み係数(=-1332)に最も近い2のべき乗の値(=-1024=-210)に設定されている。重み係数w24は、区分多項式により得られる重み係数(=-348)に最も近い2のべき乗の値(=-256=-28)に設定されている。重み係数w25は、区分多項式により得られる重み係数(=36)に最も近い2のべき乗の値(=32=25)に設定されている。
補間対象画素Q13aに最も近接する元画素P13に対応する重み係数w13、つまり第1の演算係数内に含まれる最大の重み係数の値(=40928)は、第1の演算係数内に含まれる16個の重み係数それぞれの総計が65536(=216)であるという条件を満たす値に設定されている。各重み係数をmビットの2進データによって表現した場合、つまり各重み係数の精度がmビットである場合には、第1の演算係数内に含まれる最大の重み係数の値(=40928)は、第1の演算係数内に含まれる16個の重み係数それぞれの総計が2mであるという条件を満たすように設定される。
このように、15個の重み係数w7,w8,w9,w10,w12,w14,w15,w17,w18,w19,w20,w22,w23,w24,w25をそれぞれ2のべき乗の値に設定することにより、m7×w7,m8×w8,m9×w9,m10×w10,m12×w12,m14×w14,m15×w15,m17×w17,m18×w18,m19×w19,m20×w20,m22×w22,m23×w23,m24×w24,m25×w25の各演算を、乗算ではなく、ビットシフト演算によって実行することができる。
一般に、乗算を実行する場合のCPUの負荷よりもビットシフト演算を実行する場合のCPUの負荷の方が小さい。典型的なCPUにおいては、ビットシフト演算は、乗算よりも4.5倍早い速度で実行することができる。したがって、15個の重み係数w7,w8,w9,w10,w12,w14,w15,w17,w18,w19,w20,w22,w23,w24,w25をそれぞれ2のべき乗の値に設定することにより、CPUの負荷を大幅に低減することができる。また、区分多項式により得られる重み係数に近似する2のべき乗の値を用いているので、区分多項式により得られる16個の重み係数を用いて補間処理を実行した場合とほぼ同等の画質の出力画像を得ることが可能となる。
なお、値の大きい上位3つの重み係数w13,w14,w18以外の各重み係数を2のべき乗の値に設定し、重み係数w13,w14,w18それぞれの値を、第1の演算係数内に含まれる16個の重み係数それぞれの総計が2mであるという条件を満たすように設定してもよい。
図7には、補間処理部301の具体的な構成例が示されている。
補間処理部301は、sin(x)/xの関数を近似する区分多項式を用いた補間処理によって、補間対象画素の画素値を当該補間対象画素を囲む複数の元画素それぞれの画素値に基づいて算出する画像処理装置である。補間処理部301は、演算回路201および記憶部202を含む画素置換回路200から構成されている。
記憶部202は、上述の第1の演算係数を示す係数情報を格納している。演算回路201は、記憶部202に格納された係数情報によって示される第1の演算係数(16個の重み係数)を用いて、補間対象画素を囲む16の元画素の画素値の重み付け平均を算出する。この場合、演算回路201は、m7×w7,m8×w8,m9×w9,m10×w10,m12×w12,m14×w14,m15×w15,m17×w17,m18×w18,m19×w19,m20×w20,m22×w22,m23×w23,m24×w24,m25×w25の各演算を、乗算ではなく、ビットシフト演算によって実行する。
次に、図8のフローチャートを参照して、補間処理部301の動作を説明する。
補間処理部301は、まず、記憶部202から上述の第1の演算係数を示す係数情報を読み出すことによって、16個の重み係数を入力する(ステップS1)。そして、補間処理部301は、16個の重み係数と補間対象画素を囲む16個の元画素それぞれの画素値とに基づいて、16個の元画素の画素値の重み付け平均を算出する(ステップS2)。
なお、補間処理部301の代わりに、CPU111が図8のフローチャートで示される手順を実行してもよい。
次に、図9を参照して、補間処理部301の他の構成例について説明する。
補間処理によって画像データを拡大することによって得られる出力画像においては、ぼけ感が発生してしまう。
図9の補間処理部301は、ぼけ感の発生を低減できるように構成されている。図9の補間処理部301によって実行される補間処理においては、補間対象画素の近傍に位置する元画素間の画素値の差分値に応じて、予め用意された複数種の演算係数の一つが選択される。そして、選択された演算係数を用いて、補間対象画素を囲む複数の元画素の重み付け平均が算出される。これにより、信号の変化の大きい部分の過補正や、不自然な特異点の発生を抑制しつつも、微小信号成分を効果的に際立たせることができ、生成画像の立体感を演出することが可能となる。
以下、補間処理部301の具体的な構成を説明する。
補間処理部301は画素置換回路300および画素値差分検出回路400から構成されている。
画素置換回路300は入力画像信号から出力画像信号を生成するためのものであり、演算回路310、記憶部320、および係数切替スイッチ330から構成されている。記憶部320は、複数種の演算係数k1〜knをそれぞれ示す係数情報を格納している。演算係数k1〜knの各々は、16画素それぞれに対応する16個の重み係数から構成されている。
入力画像信号は、画素置換回路300と画素値差分検出回路400に供給される。画素値差分検出回路400は、補間対象画素の近傍に位置する所定の2つの元画素間の画素値の差分値を検出し、その検出した差分値を係数切替信号として係数切替スイッチ330に供給する。
係数切替スイッチ330は、係数切替信号に応じて、複数種の演算係数k1〜knの内の一つを選択する。演算回路310は、選択された演算係数(16個の重み係数)を用いて、補間対象画素を囲む16の元画素の重み付け平均を算出し、その算出した重み付け平均値を補間対象画素の画素値として出力する。
ここで、記憶部320に格納された各演算係数について説明する。ここでは、K=3、つまり3種類の演算係数が記憶部320に格納されている場合を想定する。
第1の演算係数k1は、上述の第1の演算係数から構成されている。第2の演算係数k2および第3の演算係数k3においては、各重み付け係数の値は、第1の演算係数k1と異なっている。第2の演算係数k2および第3の演算係数k3それぞれの数値例を以下に示す。
第2の演算係数
512 -8192 -2048 256
-8192 53184 16384 -2048
-2048 16384 4096 -512
256 -2048 -512 64
第2の演算係数に含まれる各重み係数をべき乗表示したものを以下に示す。
第2の演算係数(べき乗表示)
29 -213 -211 28
-213 53184 214 -211
-211 214 212 -29
28 -211 -29 26
第3の演算係数
1024 -8192 -2048 512
-8192 53120 16384 -2048
-2048 16384 4096 -1024
512 -2048 -1024 128
第3の演算係数に含まれる各重み係数をべき乗表示したものを以下に示す。
第3の演算係数(べき乗表示)
210 -213 -211 29
-213 53120 214 -211
-211 214 212 -210
29 -211 -210 27
第2、第3の演算係数以外にも多くの数値例が考えられるがここでは省略する。第2、第3の演算係数の各々に含まれる16個の重み係数の総和は、第1の演算係数に含まれる16個の重み係数の総和(=65536)と同じである。また、第2、第3の演算係数の各々においては、個々の重み係数の絶対値は、第1の演算係数に含まれる対応する重み係数の絶対値よりも小さくない。この場合、第3の演算係数に含まれる個々の重み係数の絶対値は、第2の演算係数に含まれる対応する重み係数の絶対値以上の値である。
さらに、第2、第3の演算係数の各々においては、個々の重み係数の正負の符号は、第1の演算係数に含まれる対応する重み係数の正負の符号と同一である。また、第2、第3の演算係数の各々においても、第1の演算係数における重み係数間の大小関係がそのまま維持されている。つまり、第2、第3の演算係数の各々に含まれる16個の重み係数間の大小関係は、第1の演算係数に含まれる16個の重み係数間の大小関係と同一である。
またさらに、第2および第3の各演算係数においても、最大の重み係数以外の他の重み係数それぞれの値は、2のべき乗の値である。
なお、第2および第3の各演算係数においても、値の大きい上位3つの重み係数w13,w14,w18以外の各重み係数を2のべき乗の値に設定し、重み係数w13,w14,w18それぞれの値を、16個の重み係数それぞれの総計が2mであるという条件を満たすように設定してもよい。
第2および第3の各演算係数においては、補間対象画素に対する各周辺画素の影響度は、第1の演算係数よりも大きい。したがって、第2または第3の演算係数のみを用いて画素補間を行うと、出力画像全体にメリハリを生じさせることができるが、画素値の変化の大きいところでは、不自然な出力画像になったり、出力画像内に特異点が発生する場合がある。従って、本実施形態では、画素値の変化の大きいところと、小さいところで、使用する演算係数を動的に切り替えている。
画素値差分検出回路400では、補間対象画素の周辺画素間の画素値の変化を検出しているが、以下に具体例について説明する。
補間対象画素が図4のQ13aである場合、画素値差分検出回路400は、Q13aの最近隣画素P13の周辺画素値の変化を調べる。例えば、画素値差分検出回路400は、P13とQ13aを結ぶ直線の延長線上にある元画素P7と元画素P19との間の画素値の差分値の絶対値、即ち|m7-m19|を算出する。そして、画素値差分検出回路300は、画素差分値の絶対値|m7-m19|を予め設けておいた閾値と比較して、|m7-m19|と閾値との間の大小関係を判別する。画素差分値の絶対値が閾値以上である場合には、係数切替スイッチ330によって第1の演算係数が選択される。画素差分値の絶対値が閾値よりも小さい場合においては、画素差分値の絶対値が小さくなるに従って、使用される演算係数は、第2の演算係数、第3の演算係数の順で切り替えられる。
このように、画素差分値の絶対値に応じて適用的に4×4の重み係数の値を変化させることにより、補間処理によって拡大された画像は自然でメリハリのある画像となる。
なお、比較する元画素数は2つである必要はなく、補間対象画素Q13a近傍の複数の画素それぞれの画素値に基づいて、補間対象画素Q13aの周辺画素値の変化を調べればよい。
次に、図10のフローチャートを参照して、本実施形態の補間処理の手順を説明する。
まず、補間対象画素の近傍の2つ以上の画素間の画素差分値の絶対値が検出される(ステップS11)。そして、画素差分値の絶対値の大きさに応じて、第1の演算係数、第2の演算係数、および第3の演算係数の内の1つが選択される(ステップS12〜S15)。この後、選択された演算係数に含まれる4×4の重み係数を用いて、補間対象画素を囲む4×4の元画素の重み付け平均値を補間対象画素の画素値として算出する補間処理が実行される(ステップS16)。
なお、本実施形態では、画像データサイズ(解像度)を4倍に拡大する場合を例示して説明したが、拡大率は4倍に限られるものではない。また、補間画素を作成する場合に利用する周辺画素を4×4の16画素を基本として説明を行ったが、必ずしも16画素である必要はなく、係数精度も必ずしも16bitである必要もない。
また以上の説明において、画素値は、輝度/色差信号でも、RGB信号のどちらでもよいことは言うまでもない。また、輝度信号のみを用いて補間処理を行うことも可能である。また、他の画素補間方式である双3次畳み込み内挿法やフルーエンシ理論(特開平11-353472)による内挿法でも、本実施形態で述べた構成とすることにより同様の効果が得られることも言うまでもない。
また、本実施形態の補間処理は全てコンピュータプログラムによって実行することができる。したがって、この補間処理の手順をコンピュータに実行させるコンピュータプログラムをコンピュータ読み取り可能な記憶媒体を通じて通常のコンピュータに導入するだけで、本実施形態と同様の効果を容易に得ることができる。
また、本発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。更に、異なる実施形態に構成要素を適宜組み合わせてもよい。
本発明の一実施形態に係るコンピュータの概観を示す斜視図。 図1のコンピュータのシステム構成を示すブロック図。 図1のコンピュータで用いられるビデオアプリケーションプログラムの機能構成を示すブロック図。 図1のコンピュータによって補間処理される画像データの例を説明するための図。 sin(x)/xの関数を説明するための図。 sin(x)/xを近似する双3次関数の特性を説明するための図。 図1のコンピュータに設けられた補間処理部の構成例を示すブロック図。 図1のコンピュータにおいて実行される補間処理の手順の例を説明するフローチャート。 図1のコンピュータに設けられた補間処理部の構成例を示すブロック図。 図1のコンピュータにおいて実行される補間処理の手順の他の例を説明するフローチャート。
符号の説明
10…コンピュータ、111…CPU、114…グラフィクスコントローラ、201…ビデオアプリケーションプログラム、200,300…画素置換回路、201,310…演算回路、202,320…記憶部、330…係数切替スイッチ、400…画素値差分検出回路。

Claims (12)

  1. sin(x)/xの関数を近似する区分多項式を用いた補間処理によって、補間対象画素の画素値を前記補間対象画素を囲む複数の元画素それぞれの画素値に基づいて算出する画像処理装置であって、
    前記複数の元画素それぞれに対応する複数の重み係数を含む係数情報を格納する記憶部であって、前記複数の重み係数の内で最大の重み係数を少なくとも含む1以上の重み係数を除く他の重み係数それぞれの値は、前記区分多項式によって得られる重み係数の値をそれぞれ近似する2のべき乗の値である記憶部と、
    前記補間対象画素の画素値を得るために、前記係数情報に含まれる複数の重み係数を用いて前記複数の元画素の画素値の重み付け平均を算出する演算部とを具備することを特徴とする画像処理装置。
  2. 前記係数情報に含まれる前記複数の重み係数の各々はmビットの2進データによって表現され、
    前記最大の重み係数を少なくとも含む1以上の重み係数の値は、前記係数情報に含まれる前記複数の重み係数それぞれの総計が2であるという条件を満たす値であることを特徴とする請求項1記載の画像処理装置。
  3. 前記係数情報は、前記複数の元画素それぞれに対応する別の複数の重み係数を含み、前記別の複数の重み係数それぞれの絶対値は前記複数の重み係数それぞれの絶対値以上に設定されており、且つ前記別の複数の重み係数の内で最大の重み係数を少なくとも含む1以上の重み係数を除く他の重み係数それぞれの値は、2のべき乗の値であり、
    前記複数の元画素の内で、前記補間対象画素の近傍に位置する元画素間の画素値の差分値を検出する検出手段と、
    前記検出された差分値に応じて、前記複数の重み係数および前記別の複数の重み係数の一方を選択する選択手段とをさらに具備し、
    前記演算部は、前記選択された前記複数の重み係数および前記別の複数の重み係数の一方を用いて、前記複数の元画素の画素値の重み付け平均を算出することを特徴とする請求項1記載の画像処理装置。
  4. 前記別の複数の重み係数それぞれの正負の符号および前記別の複数の重み係数間の大小関係は、前記複数の重み係数それぞれの正負の符号および前記重み係数間の大小関係と同一であることを特徴とする請求項3記載の画像処理装置。
  5. sin(x)/xの関数を近似する区分多項式を用いた補間処理によって、補間対象画素の画素値を前記補間対象画素を囲む複数の元画素それぞれの画素値に基づいて算出する画像処理方法であって、
    前記複数の元画素それぞれに対応する複数の重み係数を含む係数情報であって、前記複数の重み係数の内で最大の重み係数を少なくとも含む1以上の重み係数を除く他の重み係数それぞれの値は、前記区分多項式によって得られる重み係数の値をそれぞれ近似する2のべき乗の値である係数情報を入力するステップと、
    前記補間対象画素の画素値を得るために、前記係数情報に含まれる複数の重み係数を用いて前記複数の元画素の画素値の重み付け平均を算出するステップとを具備することを特徴とする画像処理方法。
  6. 前記係数情報に含まれる前記複数の重み係数の各々はmビットの2進データによって表現され、
    前記最大の重み係数を少なくとも含む1以上の重み係数の値は、前記係数情報に含まれる前記複数の重み係数それぞれの総計が2であるという条件を満たす値であることを特徴とする請求項5記載の画像処理方法。
  7. 前記係数情報は、前記複数の元画素それぞれに対応する別の複数の重み係数を含み、前記別の複数の重み係数それぞれの絶対値は前記複数の重み係数それぞれの絶対値以上に設定されており、且つ前記別の複数の重み係数の内で最大の重み係数を少なくとも含む1以上の重み係数を除く他の重み係数それぞれの値は、2のべき乗の値であり、
    前記複数の元画素の内で、前記補間対象画素の近傍に位置する元画素間の画素値の差分値を検出するステップと、
    前記検出された差分値に応じて、前記複数の重み係数および前記別の複数の重み係数の一方を選択するステップとをさらに具備し、
    前記複数の元画素の重み付け平均を算出するステップは、前記選択された前記複数の重み係数および前記別の複数の重み係数の一方を用いて、前記複数の元画素の画素値の重み付け平均を算出することを特徴とする請求項5記載の画像処理方法。
  8. 前記別の複数の重み係数それぞれの正負の符号および前記別の複数の重み係数間の大小関係は、前記複数の重み係数それぞれの正負の符号および前記重み係数間の大小関係と同一であることを特徴とする請求項7記載の画像処理方法。
  9. sin(x)/xの関数を近似する区分多項式を用いた補間処理によって、補間対象画素の画素値を前記補間対象画素を囲む複数の元画素それぞれの画素値に基づいて算出する画像処理をコンピュータに実行させるプログラムであって、
    前記複数の元画素それぞれに対応する複数の重み係数を含む係数情報であって、前記複数の重み係数の内で最大の重み係数を少なくとも含む1以上の重み係数を除く他の重み係数それぞれの値は、前記区分多項式によって得られる重み係数の値をそれぞれ近似する2のべき乗の値である係数情報を入力する処理を前記コンピュータに実行させる手順と、
    前記補間対象画素の画素値を得るために、前記係数情報に含まれる複数の重み係数を用いて前記複数の元画素の画素値の重み付け平均を算出する処理を前記コンピュータに実行させる手順とを具備することを特徴とするプログラム。
  10. 前記係数情報に含まれる前記複数の重み係数の各々はmビットの2進データによって表現され、
    前記最大の重み係数を少なくとも含む1以上の重み係数の値は、前記係数情報に含まれる前記複数の重み係数それぞれの総計が2であるという条件を満たす値であることを特徴とする請求項9記載のプログラム。
  11. 前記係数情報は、前記複数の元画素それぞれに対応する別の複数の重み係数を含み、前記別の複数の重み係数それぞれの絶対値は前記複数の重み係数それぞれの絶対値以上に設定されており、且つ前記別の複数の重み係数の内で最大の重み係数を少なくとも含む1以上の重み係数を除く他の重み係数それぞれの値は、2のべき乗の値であり、
    前記複数の元画素の内で、前記補間対象画素の近傍に位置する元画素間の画素値の差分値を検出する処理を前記コンピュータに実行させる手順と、
    前記検出された差分値に応じて、前記複数の重み係数および前記別の複数の重み係数の一方を選択する処理を前記コンピュータに実行させる手順とをさらに具備し、
    前記複数の元画素の重み付け平均を算出する処理は、前記選択された前記複数の重み係数および前記別の複数の重み係数の一方を用いて、前記複数の元画素の画素値の重み付け平均を算出する処理を含むことを特徴とする請求項9記載のプログラム。
  12. 前記別の複数の重み係数それぞれの正負の符号および前記別の複数の重み係数間の大小関係は、前記複数の重み係数それぞれの正負の符号および前記重み係数間の大小関係と同一であることを特徴とする請求項11記載のプログラム。
JP2006126851A 2006-04-28 2006-04-28 画像処理装置および画像処理方法 Expired - Fee Related JP4550766B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006126851A JP4550766B2 (ja) 2006-04-28 2006-04-28 画像処理装置および画像処理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006126851A JP4550766B2 (ja) 2006-04-28 2006-04-28 画像処理装置および画像処理方法

Publications (2)

Publication Number Publication Date
JP2007300401A JP2007300401A (ja) 2007-11-15
JP4550766B2 true JP4550766B2 (ja) 2010-09-22

Family

ID=38769524

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006126851A Expired - Fee Related JP4550766B2 (ja) 2006-04-28 2006-04-28 画像処理装置および画像処理方法

Country Status (1)

Country Link
JP (1) JP4550766B2 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002259960A (ja) * 2001-02-27 2002-09-13 Seiko Epson Corp 画像処理装置及び画像処理方法
JP2002344733A (ja) * 2001-05-21 2002-11-29 Canon Inc 画像処理装置及びその処理方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1020847A (ja) * 1996-07-09 1998-01-23 Canon Inc 画像処理装置及びその方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002259960A (ja) * 2001-02-27 2002-09-13 Seiko Epson Corp 画像処理装置及び画像処理方法
JP2002344733A (ja) * 2001-05-21 2002-11-29 Canon Inc 画像処理装置及びその処理方法

Also Published As

Publication number Publication date
JP2007300401A (ja) 2007-11-15

Similar Documents

Publication Publication Date Title
JP4709519B2 (ja) 情報処理装置および表示制御方法
US20060028492A1 (en) Information processing apparatus and video data luminance control method
JP2006050326A (ja) 情報処理装置および同装置のシーンチェンジ検出方法
JP4880884B2 (ja) 情報処理装置および表示制御方法
JP2006349757A (ja) 情報処理装置および画像処理方法
JP2008009383A (ja) 液晶表示装置及びその駆動方法
WO2018188203A1 (zh) 压缩算法验证方法、存储介质及显示装置
JP2007052127A (ja) 画像処理装置、画像処理方法および画像処理プログラム
JP2007212578A (ja) 情報処理装置および情報処理装置に適用される表示制御方法
JP2005340954A (ja) 情報処理装置および表示制御方法
JP5095309B2 (ja) 液晶駆動装置および液晶表示装置
JP2006030911A (ja) 情報処理装置および表示制御方法
JP4921759B2 (ja) 画像処理装置および画像処理方法
JP4550766B2 (ja) 画像処理装置および画像処理方法
JP2005338184A (ja) 情報処理装置および表示制御方法
JP4306274B2 (ja) 液晶表示装置
JP2005338185A (ja) 情報処理装置および表示制御方法
JP2008116812A (ja) 表示装置、プロジェクタおよび表示方法
JP4363314B2 (ja) 画像データ処理装置及び画像データ処理方法
JP5025351B2 (ja) 画像処理装置および画像処理方法
JP2008009227A (ja) 画像データ出力装置及び液晶表示装置
CN114125182A (zh) 一种基于fpga实现4k高清显示的方法
JP4612433B2 (ja) 情報処理装置およびプログラム
JP2006133384A (ja) 動き補償
JP2010283895A (ja) 映像信号処理装置、画像表示装置および映像信号処理方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20081001

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100528

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100608

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100708

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

Free format text: PAYMENT UNTIL: 20130716

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees