JP5413265B2 - 画像表示装置およびプロジェクター - Google Patents

画像表示装置およびプロジェクター Download PDF

Info

Publication number
JP5413265B2
JP5413265B2 JP2010063846A JP2010063846A JP5413265B2 JP 5413265 B2 JP5413265 B2 JP 5413265B2 JP 2010063846 A JP2010063846 A JP 2010063846A JP 2010063846 A JP2010063846 A JP 2010063846A JP 5413265 B2 JP5413265 B2 JP 5413265B2
Authority
JP
Japan
Prior art keywords
block
video
video data
unit
frame
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.)
Active
Application number
JP2010063846A
Other languages
English (en)
Other versions
JP2011199575A (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.)
Seiko Epson Corp
Original Assignee
Seiko Epson 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 Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP2010063846A priority Critical patent/JP5413265B2/ja
Publication of JP2011199575A publication Critical patent/JP2011199575A/ja
Application granted granted Critical
Publication of JP5413265B2 publication Critical patent/JP5413265B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Projection Apparatus (AREA)
  • Liquid Crystal Display Device Control (AREA)
  • Transforming Electric Information Into Light Information (AREA)
  • Video Image Reproduction Devices For Color Tv Systems (AREA)
  • Control Of Indicators Other Than Cathode Ray Tubes (AREA)
  • Controls And Circuits For Display Device (AREA)

Description

この発明は、画像表示装置およびプロジェクターに関する。
プロジェクターなどの画像表示装置において、スクリーンなどの表示面に映像を表示させるとき、例えば、プロジェクターと表示面との相対的な位置関係等によって、表示面に表示された映像が歪む場合がある。この問題を解決するために、射影変換の手法を利用して、台形形状に歪んだ映像を矩形形状に補正する台形歪み補正が知られている。
特開2007−150531号公報
しかし、画像表示装置における歪み補正処理の効率化については、なお改善の余地があった。
本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、画像表示装置における歪み補正処理の効率性の向上を図ることを目的とする。
本発明の第1の態様は、画像表示装置を提供する。本発明の第1の態様に係る画像表示装置は、フレーム映像を表す映像データを記憶するフレーム映像記憶部と、所定数の画素からなるブロック映像データを格納するためのブロック領域を複数並べた構成を有するブロック領域列を複数備え、前記フレーム映像記憶部に記憶された映像データの一部を前記ブロック映像データとしてそれぞれのブロック領域に格納するブロック映像記憶部と、前記ブロック映像記憶部に格納された前記ブロック映像データから所定数の画素からなる補間ブロック映像データを取得し、取得した前記補間ブロック映像データを用いて、前記フレーム映像に対して所定の補正をおこなった補正後フレーム映像を表す補正後映像データを生成する補正処理部と、各前記ブロック領域列において、所定の基準を満たす前記ブロック映像データから前記補正処理部により前記補間ブロック映像データの取得が行われたときに、前記補正処理部が後に補間ブロック映像データを取得する前記ブロック映像データを予測するブロック映像予測部と、前記ブロック映像予測部により予測された前記ブロック映像データを前記フレーム映像記憶部から取得し、前記ブロック映像記憶部のブロック領域に格納するブロック映像取得部と、前記所定の基準を変更する基準変更部と、を備える。
第1の態様に係る画像表示装置によれば、所定の基準を満たすブロック映像データから補間ブロック映像データの取得がおこなわれたときに、フレーム映像においてブロック映像予測部により予測された位置と対応する映像の映像データをフレーム映像記憶部からブロック映像データとして取得することができるため、歪み補正処理の効率性の向上を図ることができる。
本発明の第2の態様は、画像表示装置を提供する。本発明の第2の態様に係る画像表示装置は、フレーム映像を表す映像データを記憶するフレーム映像記憶部と、所定数の画素からなるブロック映像データを格納するためのブロック領域を複数並べた構成を有するブロック領域列を複数備え、前記フレーム映像記憶部に記憶された映像データの一部をブロック映像データとしてそれぞれのブロック領域に格納するブロック映像記憶部と、各前記ブロック領域列に含まれる複数のブロック映像データのうち、ブロック映像データにより表される映像が前記フレーム映像の第1の方向において相対的に上流側の領域と対応するブロック映像データから順に所定数の画素からなる補間ブロック映像データを取得し、取得した前記補間ブロック映像データを用いて、前記フレーム映像に対して所定の補正をおこなった補正後フレーム映像を表す補正後映像データを生成する補正処理部と、各前記ブロック領域列に含まれる各ブロック映像データとそれぞれ対応し、各ブロック映像データにより表される映像と対応する前記フレーム映像における各領域の前記第1の方向における相対的な位置を示す番号情報から、任意の1の番号情報を選択する選択部と、各前記ブロック領域列において、前記選択部により選択された番号情報に対応するブロック映像データから前記補正処理部により前記補間ブロック映像データの取得がおこなわれたときに、前記補正処理部が後に補間ブロック映像データを取得するブロック映像データにより表される映像のフレーム映像における位置を予測するブロック映像予測部と、前記ブロック映像予測部により予測された位置の映像と対応する映像データを前記フレーム映像記憶部からブロック映像データとして取得し、前記ブロック映像記憶部のブロック領域に格納するブロック映像取得部と、を備える。
第2の態様に係る画像表示装置によれば、選択部により選択された番号情報に対応するブロック映像データから補間ブロック映像データの取得がおこなわれたときに、フレーム映像においてブロック映像予測部により予測された位置と対応する映像の映像データをフレーム映像記憶部からブロック映像データとして取得することができるため、歪み補正処理の効率性の向上を図ることができる。
第2の態様に係る画像表示装置において、前記ブロック映像予測部は、各前記ブロック領域列に含まれる各ブロック映像データにより表される映像と対応するフレーム映像の各領域のうち、前記第1の方向において最も下流側の領域と下流側で隣接する領域の位置を、前記補正処理部が後に補間ブロック映像データを取得するブロック映像データにより表される映像のフレーム映像における位置として予測してもよい。この場合、選択部により選択された番号情報に対応するブロック映像データから補間ブロック映像データの取得がおこなわれたときに、ブロック領域列に含まれる各ブロック映像データにより表される映像と対応するフレーム映像の領域のうち、第1の方向において最も下流側の領域と下流側で隣接する領域と対応する映像データをブロック映像データとして取得することができるため、歪み補正処理の効率性の向上を図ることができる。
第2の態様に係る画像表示装置において、前記選択部は、前記補正処理部により前記補間ブロック映像データが順次取得されたときに、取得された各補間ブロック映像データが表す映像と対応するフレーム映像の各領域をそれぞれ繋いだ軌跡の方向に基づいて前記番号情報を選択してもよい。この場合、各補間ブロック映像データが表す映像と対応するフレーム映像の各領域をそれぞれ繋いだ軌跡の方向に応じて、ブロック映像記憶部の各ブロック領域にブロック映像データを格納するタイミングを制御することができるため、歪み補正処理の効率性の向上を図ることができる。
第2の態様に係る画像表示装置において、前記選択部は、前記軌跡の方向が、前記第1の方向に沿った方向に近づくほど、前記第1の方向において下流側の映像を表すブロック映像データと対応する番号情報を選択し、前記軌跡の方向が、前記第1の方向と直交する方向に近づくほど、前記第1の方向において上流側の映像を表すブロック映像データと対応する番号情報を選択してもよい。この場合、軌跡の方向が第1の方向と直交する方向に近いときには、ブロック映像記憶部の各ブロック領域にブロック映像データを格納するタイミングを早めることができるため、歪み補正処理の効率性の向上を図ることができる。
第2の態様に係る画像表示装置において、前記補正処理部は、1つの前記補間ブロック映像データを用いて、前記補正後フレーム映像を構成する1画素を生成する処理を順次おこなうことにより、前記補正後映像データを生成してもよい。この場合、歪み補正処理を精度良くおこなうことができる。
本発明の第3の態様は、画像表示装置を提供する。本発明の第3の態様に係る画像表示装置は、フレーム映像を表す映像データを記憶するフレーム映像記憶部と、所定数の画素からなるブロック映像データを格納するためのブロック領域を複数並べた構成を有するブロック領域列を複数備え、前記フレーム映像記憶部に記憶された映像データの一部をブロック映像データとしてそれぞれのブロック領域に格納するブロック映像記憶部と、各前記ブロック領域列に含まれる複数のブロック映像データのうち、前記ブロック領域に格納された時期が相対的に古いブロック映像データから順に所定数の画素からなる補間ブロック映像データを取得し、取得した前記補間ブロック映像データを用いて、前記フレーム映像に対して所定の補正をおこなった補正後フレーム映像を表す補正後映像データを生成する補正処理部と、各前記ブロック領域列に含まれる各ブロック映像データとそれぞれ対応し、各ブロック映像データの前記ブロック領域に格納された相対的な時期を示す番号情報から、任意の1の番号情報を選択する選択部と、各前記ブロック領域列において、前記選択部により選択された番号情報に対応するブロック映像データから前記補正処理部により前記補間ブロック映像データの取得がおこなわれたときに、前記補正処理部が後に補間ブロック映像データを取得するブロック映像データにより表される映像のフレーム映像における位置を予測するブロック映像予測部と、前記ブロック映像予測部により予測された位置の映像と対応する映像データを前記フレーム映像記憶部からブロック映像データとして取得し、前記ブロック映像記憶部のブロック領域に格納するブロック映像取得部と、を備える。
第3の態様に係る画像表示装置によれば、選択部が選択する番号情報は、各ブロック映像データにより表される映像の相対的な位置に限られず、各ブロック映像データがブロック領域に格納された相対的な時期であっても、歪み補正処理の効率性の向上を図ることができる。
本発明の第4の態様は、被投写面上に映像を投写して表示するプロジェクターを提供する。本発明の第4の態様に係るプロジェクターは、前記映像を表す映像光を生成して出力する映像光出力部と、フレーム映像を表す映像データを記憶するフレーム映像記憶部と、所定数の画素からなるブロック映像データを格納するためのブロック領域を複数並べた構成を有するブロック領域列を複数備え、前記フレーム映像記憶部に記憶された映像データの一部を前記ブロック映像データとしてそれぞれのブロック領域に格納するブロック映像記憶部と、前記ブロック映像記憶部に格納された前記ブロック映像データから所定数の画素からなる補間ブロック映像データを取得し、取得した前記補間ブロック映像データを用いて、前記フレーム映像に対して前記被投写面上に投写される映像の歪みを補正するための処理をおこなった補正後フレーム映像を表す補正後映像データを生成し、前記映像光出力部に出力する補正処理部と、各前記ブロック領域列において、所定の基準を満たす前記ブロック映像データから前記補正処理部により前記補間ブロック映像データの取得が行われたときに、前記補正処理部が後に補間ブロック映像データを取得する前記ブロック映像データを予測するブロック映像予測部と、前記ブロック映像予測部により予測された前記ブロック映像データを前記フレーム映像記憶部から取得し、前記ブロック映像記憶部のブロック領域に格納するブロック映像取得部と、前記所定の基準を変更する基準変更部と、を備える。
第4の態様に係るプロジェクターによれば、所定の基準を満たすブロック映像データから補間ブロック映像データの取得がおこなわれたときに、フレーム映像においてブロック映像予測部により予測された位置と対応する映像の映像データをフレーム映像記憶部からブロック映像データとして取得することができるため、プロジェクターにおいて、被投写面上に投写される映像の歪みを補正する処理の効率性の向上を図ることができる。
本発明の第5の態様は、画像表示装置を提供する。本発明の第5の態様に係る画像表示装置は、フレーム映像を表す映像データを記憶するフレーム映像記憶部と、所定数の画素からなるブロック映像データを格納するためのブロック領域を複数並べた構成を有するブロック領域列を複数備え、前記フレーム映像記憶部に記憶された映像データの一部を前記ブロック映像データとしてそれぞれのブロック領域に格納するブロック映像記憶部と、前記ブロック映像記憶部に格納された前記ブロック映像データから所定数の画素からなる補間ブロック映像データを取得し、取得した前記補間ブロック映像データを用いて、前記フレーム映像に対して所定の補正をおこなった補正後フレーム映像を表す補正後映像データを生成する補正処理部と、各前記ブロック領域列において、前記ブロック領域列を構成する複数のブロック領域のうち、前記ブロック映像データが格納された順番が所定の順位となるブロック領域に格納された前記ブロック映像データから前記補正処理部により前記補間ブロック映像データの取得が行われたときに、前記補正処理部が後に補間ブロック映像データを取得する前記ブロック映像データを予測するブロック映像予測部と、前記ブロック映像予測部により予測された前記ブロック映像データを前記フレーム映像記憶部から取得し、前記ブロック映像記憶部のブロック領域に格納するブロック映像取得部と、前記所定の順位を変更する基準変更部と、を備え、前記ブロック映像予測部は、各前記ブロック領域列に含まれる各ブロック映像データにより表される映像と対応するフレーム映像の各領域のうち、最も下流側の領域と下流側で隣接する領域の位置を、前記補正処理部が後に補間ブロック映像データを取得するブロック映像データにより表される映像のフレーム映像における位置として予測する。
第5の態様に係る画像表示装置によれば、ブロック映像データが格納された順番が所定の順位となるブロック領域に格納されたブロック映像データから補間ブロック映像データの取得がおこなわれたときに、フレーム映像においてブロック映像予測部により予測された位置と対応する映像の映像データをフレーム映像記憶部からブロック映像データとして取得することができるため、歪み補正処理の効率性の向上を図ることができる。
なお、本発明は、種々の態様で実現することが可能であり、例えば、プロジェクターテレビ、モニター、ブロック映像記憶装置、射影変換処理装置、画像処理装置等で実現することができる。また、ブロック映像記憶方法、画像処理方法、および、これらの方法または装置の機能を実現するためのコンピュータープログラム、そのコンピュータープログラムを記録した記録媒体、そのコンピュータープログラムを含み搬送波内に具現化されたデータ信号、等の形態で実現することができる。
台形歪み補正を概念的に示す説明図である。 補正後映像データの作成方法を概念的に示す説明図である。 画素補間の方法を概念的に示す図である。 本発明の一実施例としてのプロジェクターの構成を概略的に示すブロック図である。 台形歪み補正部120の構成を示す機能ブロック図である。 台形歪み補正部120の動作の流れを模式的に示す工程図である。 台形歪み補正部120が補正後映像の1画素の画素値を算出するときの各処理のタイミングを示す説明図である。 フレームバッファー150とキャッシュブロック記憶部122との関係を模式的に示す図である。 キャッシュブロック記憶部122とキャッシュブロック用タグ情報記憶部123との関係を概念的に示す図である。 キャッシュブロックと補間ブロックとの関係を示す図である。 先読みリクエスト発行部132における先読み判定を説明するための説明図である。 キャッシュブロック記憶部122に格納されているキャッシュブロックが更新される順序を説明するための説明図である。 キャッシュブロック記憶部122に格納されているキャッシュブロックとフレームバッファー150の座標との関係を説明するための説明図である。 選択部によりキャッシュブロックを特定するための番号として「3」が選択されている状態を説明するための説明図である。 選択部によりキャッシュブロックを特定するための番号として「4」が選択されている状態を説明するための説明図である。 補間ブロックの移動方向と選択部により選択される番号との関係を説明するための説明図である。 タグ情報を用いたヒット判定の例を示す説明図である。 ヒット判定処理の工程を模式的に示す工程図である。 ヒット判定処理の工程を模式的に示す工程図である。
以下、本発明の一態様であるプロジェクターについて、図面を参照しつつ、実施例に基づいて以下の順序で説明する。
A.第1の実施例:
A−1.台形歪み補正:
A−2.プロジェクターの構成:
A−3.台形歪み補正部:
A−4.先読み判定:
A−5.ヒット判定:
B.変形例:
A.第1の実施例:
A−1.台形歪み補正:
本発明の一実施例としてのプロジェクター100は、映像を表す映像光を投写して、スクリーンSCなどの被投写面上に映像を表示させる。プロジェクター100は、矩形の映像が入力された場合に、スクリーンSC上に表示される映像の台形歪みを補正して、矩形の映像を表示させることが可能なプロジェクターである。ここで、台形歪みとは、プロジェクターと被投写面との相対的な位置関係によって、被投写面に表示された映像が台形、平行四辺形、それ以外の四角形等に歪むことをいう。プロジェクター100の構成の説明に先立って、本実施例のプロジェクター100における台形歪み補正について、簡単に説明する。
図1は、台形歪み補正を概念的に示す説明図である。図示するように、プロジェクター100が、スクリーンSCに対して、水平方向(左右方向)および垂直方向(上下方向)に、それぞれ傾きを有して配置された場合、液晶パネル部192に表示されている映像(補正前映像IG0)は矩形であるのに対し、スクリーンSCに投写される映像PIG0は、水平方向および垂直方向のそれぞれに台形歪みを生じる。なお、図1では、説明の便を図って、プロジェクター100内に含まれる液晶パネル部192を、プロジェクター100外に出して表示している。
プロジェクター100は、射影変換の手法を利用して、スクリーンSCに投写される映像と逆方向に歪ませた映像(補正後映像IG1)を液晶パネル部192上に形成することにより、スクリーンSC上に矩形の映像PIG1を表示させる(図1)。ここでは、台形歪みを生じた映像を、矩形(本来表示されるべき映像の形状)に見せるためにおこなわれる補正を「台形歪み補正」と呼ぶ。本実施例における台形歪み補正は、特許請求の範囲における「所定の補正」に該当する。
図2は、補正後映像データの作成方法を概念的に示す説明図である。図2(a)は、補正前映像IG0を示している。また、図2(b)は、補正後映像IG1を示している。図2(b)の破線は、補正前映像IG0の外形を示している。補正前映像IG0は、液晶パネル部192のフレーム一杯に表示されるように映像処理を施されているため、図2(b)における破線は、液晶パネル部192のフレームを示している。
本実施例において、補正前映像IG0、補正後映像IG1の座標とは、補正前映像IG0、補正後映像IG1が液晶パネル部192に表示されたときの画素座標をいう。以下、補正後映像IG1が表示されている場合の液晶パネル部192の画素座標を、補正後座標という。なお、液晶パネル部192の画素座標のうち、補正後映像IG1が表示されていない領域の画素座標も、補正後座標を用いて呼ぶ。補正後座標を、逆射影変換により補正前映像IG0における座標位置(液晶パネルの画素座標)に変換した座標を、補正前座標という。
補正後映像IG1を表す補正後映像データの作成方法の概要について、図2に基づいて説明する。プロジェクター100は、補正前映像IG0の画素値に基づいて、補正後映像IG1を構成する全ての画素座標の画素値(R,G,Bの各値)を求めることにより、補正後映像データを生成する。一例として、図2に示す補正後映像IG1の真ん中の四角で囲まれた座標P1(X,Y)の画素値を求める方法を説明する。
まず、プロジェクター100は、画素値を求めたい画素の補正後座標P1(X,Y)を補正前座標P0(x,y)に変換する。このとき、補正前映像IG0と補正後映像IG1は、整数倍の対応関係となっていないため、算出された補正前座標P0(x,y)には、小数が含まれている。そのため、プロジェクター100は、対応する補正前座標P0(x,y)の近傍の16座標の画素値を用いて、補正前座標P0(x,y)の画素値を推定する。この画素値の推定を画素補間とも呼ぶ。したがって、プロジェクター100は、変換された小数点を含む補正前座標P0(x,y)に基づいて、補正前座標P0(x,y)近傍の画素ブロックを読み出し、読み出した画素ブロックに対してフィルター係数を用いて画素補間を行う。これにより、プロジェクター100は、補正後映像IG1の座標P1(X,Y)の画素値を算出する。すなわち、プロジェクター100は、補正後映像IG1を構成する全ての画素(座標)の画素値を、1画素ごとに、上記の画素補間を行うことによって算出し、補正後映像IG1を表す補正後映像データを生成する。
図3は、画素補間の方法を概念的に示す図である。図3では、上記した補正後座標P1(X,Y)を変換した補正前座標P0(x,y)に対応する画素値を画素補間により求める方法を例示している。図中、補正前座標P0(x,y)の位置を、ハッチングを付した丸印で示し、その周辺16座標の位置を白丸印で示している。補正前座標P0(x,y)に対応する画素値は画素補間によって求められるため、補正前座標P0(x,y)に対応する画素値を「補間画素」、補正前座標P0(x,y)周辺の16画素の画素値は、補正前映像データであり既知であるため「既知画素」とも称する。
図3では、既知画素である16画素の画素値を、DATA[m][n](m=0,1,2,3(x方向);n=0,1,2,3(y方向))と示している。補間画素は、この16画素の画素値とフィルター係数との畳み込み演算により求められる。フィルター係数は、補間画素と既知画素との距離(例えば、DATA[1][1]の既知画素と補間画素との距離は、x方向にdx、y方向にdyである)による影響を考慮した係数であり、既知画素ごとに定められる。図3では、フィルター係数は、COEF[m][n](m=0,1,2,3(x方向);n=0,1,2,3(y方向))と示している。なお、本実施例において、2次元のフィルター係数を用いているが、フィルター係数を1次元に分解してもよい。
A−2.プロジェクターの構成:
図4は、本発明の一実施例としてのプロジェクターの構成を概略的に示すブロック図である。図示するように、プロジェクター100は、映像入力部110と、IP変換部112と、解像度変換部114と、映像合成部116と、台形歪み補正部120と、液晶パネル駆動部140と、フレームバッファー150と、高速バス制御部160と、低速バス制御部162と、プロセッサー部170と、撮像部180と、センサー部182と、照明光学系190と、液晶パネル部192と、投写光学系194と、を備える。照明光学系190、液晶パネル部192、投写光学系194以外の各構成要素は、高速バス102または低速バス104を介して互いに接続されている。
映像入力部110は、図示しないDVDプレーヤーやパーソナルコンピューターなどからケーブルを介して入力された入力映像信号に対して、必要によりA/D変換を行い、デジタル映像信号をIP変換部112に供給する。
IP変換部112は、映像入力部110から供給された映像データのフォーマットを、インタレース方式からプログレッシブ方式に変換する処理を実行し、得られた映像データを解像度変換部114に供給する。
解像度変換部114は、IP変換部112から供給された映像データに対して、サイズの拡大処理または縮小処理(すなわち、解像度変換処理)を施し、得られた映像データを、映像合成部116に供給する。
映像合成部116は、解像度変換部114から供給された映像データとメニュー画面などのOSD(On Screen Display)とを合成して、フレームバッファー150に、補正前映像データとして書き込む。
フレームバッファー150は、1フレームまたは複数フレームのデータを格納できる。本実施例では、フレームバッファー150として、安価で大容量なDRAM(Dynamic Random Access Memory)を用いている。本実施例におけるフレームバッファー150は、特許請求の範囲における「フレーム映像記憶部」に該当する。
台形歪み補正部120は、スクリーンSCに対してプロジェクター100の投写軸を傾けた状態で投写した場合に生じる台形歪みを補正する。具体的には、フレームバッファー150に格納されている補正前映像データが表す補正前映像を、台形歪みを補償する形状で液晶パネル部192に表示させるため、補正前映像データに対して補正処理を施し、補正後映像データとして、液晶パネル駆動部140に供給する。台形歪み補正部120については、後に図5を用いて詳述する。
液晶パネル駆動部140は、台形歪み補正部120を経て入力されたデジタル映像信号に基づいて、液晶パネル部192を駆動する。液晶パネル部192は、複数の画素をマトリクス状に配置した透過型液晶パネルにより構成される。液晶パネル部192は、液晶パネル駆動部140によって駆動され、マトリクス状に配置された各画素における光の透過率を変化させることにより、照明光学系190から照射された照明光を、映像を表す有効な映像光へと変調するための映像を形成する。本実施例において、液晶パネル部192のモードはWUXGAであり、解像度は1920×1200ドットである。本実施例では、液晶パネル画素座標を、x=0〜1919、y=0〜1199と規定している。なお、液晶パネル部192は、本実施例と異なる解像度のものを用いてもよい。
照明光学系190は、例えば、高圧水銀ランプ、超高圧水銀ランプ等のランプ類や、その他の発光体を備えて構成される。投写光学系194は、プロジェクター100の筐体の前面に取り付けられており、液晶パネル部192によって映像光へと変調された光を拡大して、スクリーンSCに投写する。投写光学系194はズームレンズ(図示せず)を備え、液晶パネル部192を透過した光を投写する際の拡大の程度(ズーム状態)を変化させることができる。本実施例における液晶パネル駆動部140、液晶パネル部192、照明光学系190、投写光学系194は、特許請求の範囲における「映像光出力部」に該当する。
プロセッサー部170は、記憶部(図示しない)に記憶された制御プログラムを読み出して実行することにより、プロジェクター100内の各部の動作を制御する。また、撮像部180により撮像された撮影画像や、センサー部182により検出されるプロジェクター100の傾きや、ユーザからの指示に基づいて、後述する補正後座標(X0〜X3、Y0〜Y3)(図2参照)、座標変換行列の変換係数(後に詳述する)を算出し、台形歪み補正部120に出力する。なお、本実施例において、プロセッサー部170は、ユーザからの指示をプロジェクター100本体に設けられた操作パネル(図示しない)を通じて受け取る構成にしているが、例えば、リモコンを通じたユーザからの指示をリモコン制御部が受信して、低速バス104を介してプロセッサー部170がユーザからの指示を受信する構成にしてもよい。
撮像部180は、CCDカメラを有しており、プロジェクター100によってスクリーンSC上に表示された映像を撮像して撮影画像を生成する。撮像部180により生成された撮影画像は、図示せざる撮影画像メモリ内に格納される。なお、撮像部180は、CCDカメラの代わりに他の撮像デバイスを有することも可能である。
センサー部182は、プロジェクター100の鉛直方向からの傾きを検出することにより、撮像部180のCCD光軸が水平面となす傾き角度を検出することができる。
A−3.台形歪み補正部:
台形歪み補正部120は、上記したように、フレームバッファー150に格納されている補正前映像データが表す補正前映像を、台形歪みを補償する形状に補正した補正後映像データを生成する。図5は、台形歪み補正部120の構成を示す機能ブロック図である。台形歪み補正部120は、キャッシュブロック制御部121と、キャッシュブロック記憶部122と、キャッシュブロック用タグ情報記憶部123と、補間ブロック読み出し部124と、画素補間部125と、FIFO部126と、レジスター部127と、制御部128と、座標変換部129と、フィルター係数算出部130と、ヒット判定部131と、先読みリクエスト発行部132と、を備えている。
キャッシュブロック制御部121は、フレームバッファー150に格納されている補正前映像データの一部のデータを、8×8画素からなるキャッシュブロック単位で取得してキャッシュブロック記憶部122に格納する。以後、キャッシュブロックとは、8×8画素の画素値を含む映像データを表す。また、キャッシュブロック制御部121は、キャッシュブロック用タグ情報記憶部123に格納されている後述するタグ情報を更新する。キャッシュブロック制御部121は、ヒット判定部131または先読みリクエスト発行部132によって指定されたキャッシュブロックをフレームバッファー150から取得する。キャッシュブロック制御部121は、特許請求の範囲における「ブロック映像取得部」に該当する。
キャッシュブロック記憶部122は、フレームバッファー150に格納されている1フレーム分の補正前映像データの一部のデータを、8×8画素からなるキャッシュブロック単位で格納する。キャッシュブロック記憶部122は、1つのキャッシュブロックを格納できるブロック領域を複数備える。本実施例では、後に詳述するように、キャッシュブロック記憶部122は240列×4行のブロック領域を備える。本実施例において、キャッシュブロック記憶部122は、小容量で高速なSRAM(Static Random Access Memory)で構成され、当該SRAMは、後に詳述するように、1ポートのRAMを用いて、読み出しと書き込みとを同時に行うことができる。本実施例におけるキャッシュブロック記憶部122は、特許請求の範囲における「ブロック映像記憶部」に該当する。また、本実施例では、キャッシュブロック記憶部122における1列×4行のブロック領域群を、ブロック領域列とも呼ぶ。すなわち、本実施例におけるキャッシュブロック記憶部122は、ブロック領域列が240列並列に並んだ構成を備えている。
キャッシュブロック用タグ情報記憶部123は、キャッシュブロック記憶部122を構成するブロック領域ごとに、キャッシュブロックが格納されているか否かの情報や、格納されているキャッシュブロックを特定するための情報等、ブロック領域を管理するための情報であるタグ情報を格納する。タグ情報の具体的な内容は図9を用いて後述する。
補間ブロック読み出し部124は、画素補間部125における画素補間に必要な4×4画素からなる補間ブロックを、キャッシュブロック記憶部122から読み出して、画素補間部125に供給する。補間ブロック読み出し部124がキャッシュブロック記憶部122から補間ブロックを読み出す位置については、図10を用いて後述する。
画素補間部125は、補間ブロック読み出し部124から供給される補間ブロックと、フィルター係数算出部130から供給されるフィルター係数に基づいて画素補間処理を実行し、補間画素の画素値を求める。画素補間部125が補間画素の画素値を算出する方法は、図1〜図3を用いて上述したとおりである。画素補間部125は、1つの補間ブロックと、フィルター係数から1つの補間画素の画素値を算出する。本実施例では、画素補間部125は、まず、補正後映像のx方向、y方向ともに最も上流側の画素(図2(b)左上)の画素値を算出し、その後、図2(b)の矢印の方向に従って、x方向の下流側の画素について画素値を順次算出する。x方向で最も下流側の画素の画素値を算出すると、y方向において一つ下流側の列について同様にx方向の最も上流側の画素から順に画素値を算出する。これを順次繰り返し、x方向、y方向ともに最も下流側の画素の画素値まで算出をおこなうことにより、補正後映像を表す補正後映像データを生成する。生成された補正後映像データは、FIFO部126を介して液晶パネル駆動部140(図4)に出力される。本実施例における補間ブロック読み出し部124、画素補間部125は、特許請求の範囲における「補正処理部」に該当する。
レジスター部127は、プロセッサー部170から供給されるパラメーターを格納する。具体的には、レジスター部127には、補正前映像の1フレームのフレーム幅、フレーム高さ、座標変換行列の変換係数A〜Hなどのパラメーターが格納される。変換係数A〜Hは、プロセッサー部170において、下記の射影変換の行列式(式1)を用いて算出される。具体的には、プロセッサー部170は、補正前座標(x0〜x3、y0〜y3)(図2参照)が射影変換により、補正後座標(X0〜X3、Y0〜Y3)(図2参照)に変換されたものとして、その補正後映像IG1の4つの座標(X0〜X3、Y0〜Y3)を、行列式(式1)に入力して、係数A〜Hを導出する。
Figure 0005413265
本実施例では、補正後映像データの生成処理が開始される前に、台形歪み補正前にスクリーンSCに表示されている映像PIG0を、撮像部180で撮像する。プロセッサー部170(図4)は、撮像した映像に基づいて、台形歪み補正後の補正後映像IG1における4つの頂点の座標(X0〜X3、Y0〜Y3)(図2(b))を求めている。
なお、センサー部182によって、プロジェクター100の鉛直方向からの傾きを検出して、検出された角度に基づいて、補正後座標(X0〜X3、Y0〜Y3)を求めるようにしてもよい。また、ユーザがリモコンを操作して、手動で台形歪み補正を行うようにしてもよい。そのような場合には、プロセッサー部170は、リモコン制御部を介して受け取った、ユーザからの指示に基づいて、補正後座標(X0〜X3、Y0〜Y3)を求める。
制御部128は、台形歪み補正部120の全体の制御を行う。例えば、制御部128に入力される同期信号に従って、フレームの始まりを示すフレームスタート信号を座標変換部129に対して出力する。同期信号は、例えば、1秒間に60フレーム表示される場合には、1/60秒毎に入力される。
座標変換部129は、レジスター部127から供給される座標変換係数A〜Hと、以下の(式2)、(式3)を用いて、台形歪み補正を行った後の補正後映像IG1の座標値(補正後座標)を、補正前映像IG0(矩形の映像)の座標値(補正前座標)に変換する。補正前映像IG0と補正後映像IG1とは、整数倍の対応関係とはなっていないため、座標変換部129にて算出された補正前座標は、小数を含んでいる。座標変換部129は、補正前座標を、整数部と小数部に分けて、整数部をヒット判定部131および先読みリクエスト発行部132に供給し、小数部をフィルター係数算出部130に供給する。
ここで、上記した補正前座標の算出方法について説明する。補正後映像IG1は、補正前映像IG0を射影変換することにより得られた映像であると考えられるため、補正前座標は、補正後座標について、下記の(式2)、(式3)に基づいて、逆射影変換することによって算出される。補正前座標(x,y)が射影変換により補正後座標(X,Y)に変換されたものとする。
Figure 0005413265
Figure 0005413265
上記(式2)、(式3)中の係数A〜Hは、レジスター部127に記憶されている。
フィルター係数算出部130は、座標変換部129から供給される小数部に基づいて、画素補間処理を実行する際に用いられるフィルター係数を、フィルター係数テーブルより選択して、選択されたフィルター係数を画素補間部125に供給する。フィルター係数テーブルは、図3に示す補間画素と既知画素との距離とフィルター係数との関係を示すテーブルであり、予め算出された結果がフィルター係数算出部130の備えるメモリに格納されている。
ヒット判定部131は、座標変換部129から供給された補正前座標の整数部に基づいて、画素補間部125における画素補間に用いられる座標の画素値がキャッシュブロック記憶部122に格納されているか否かを判定する。以下、この判定を「ヒット判定」と称する。ヒット判定の結果、キャッシュブロック記憶部122に画素補間に必要な画素値が格納されていない場合には、キャッシュブロック制御部121に対して、必要なキャッシュブロックの取得要求を出す。ヒット判定の結果、キャッシュブロック記憶部122に画素補間に必要な画素値が格納されている場合には、補間ブロック読み出し部124に対してキャッシュブロック記憶部122における読み出し位置を供給する。ヒット判定の処理の流れについては、図17〜図19を用いて後述する。
先読みリクエスト発行部132は、座標変換部129に供給された補正前座標の整数部に基づいて、その後の画素補間処理に必要になるキャッシュブロックを予測し、キャッシュブロック制御部121に、予測したキャッシュブロックをキャッシュブロック記憶部122に格納させる。先読みリクエスト発行部132は、キャッシュブロックを予測するタイミングを制御するための選択部133を備える。先読みリクエスト発行部132は、選択部133により選択されたキャッシュブロックから補間ブロック読み出し部124により補間ブロックの読み出しがおこなわれたときに、その後の画素補間処理に必要になるキャッシュブロックを予測する。先読みリクエスト発行部132および選択部133による具体的な処理については、後述する。なお、上記したキャッシュブロックの予測を、「先読み判定」とも称する。先読みリクエスト発行部132は、特許請求の範囲における「ブロック映像予測部」に該当する。選択部133は、特許請求の範囲における「基準変更部」に該当する。
台形歪み補正部120を構成する上記各構成部の動作の流れを簡単に説明する。図6は、台形歪み補正部120の動作の流れを模式的に示す工程図である。まず、台形歪み補正部120の座標変換部129(図5)は、フレームスタート信号が入力されるまでは待機し(ステップS102:NO)、フレームスタート信号が入力されると (ステップS102:YES)、補正後映像の座標(補正後座標)を座標変換して補正前座標を求める(ステップS104)。補正後座標を座標変換して補正前座標を算出する方法は上述したとおりである。
ヒット判定部131(図5)は、座標変換部129が算出した補正前座標の整数部に基づいて、補間ブロックの読み出し位置を補間ブロック読み出し部124に供給する。補間ブロック読み出し部124(図5)は、供給された読み出し位置に基づいて補間ブロックをキャッシュブロック記憶部122から読み出す(ステップS106)。一方、フィルター係数算出部130(図5)は、ステップS104で求められた補正前座標の小数部に基づいて、フィルター係数テーブルからフィルター係数を選択する。ステップS106の補間ブロック読み出し処理(「ブロックリード」とも呼ぶ)と、ステップS108のフィルター係数算出処理は同時に行われ、両処理が終了すると、次の処理(ステップS110)に進む。
画素補間部125(図5)は、補間ブロックとフィルター係数とを用いて、補正後座標の画素値を算出する(ステップS110)。具体的には、画素補間部125は、補間ブロック読み出し部124から供給された補間ブロックと、フィルター係数算出部130から供給されたフィルター係数とを用いて、畳み込み演算により補正後座標の画素値を算出する。
台形歪み補正部120は、上記のステップS104〜ステップS110を、補正後座標(X,Y)=(0,0)〜(フレーム幅−1,フレーム高さ−1)まで繰り返して行うことにより、補正後映像データを生成する。本実施例では、フレーム幅1920、フレーム高さ1200であるため、補正後座標(X,Y)=(0,0)〜(1919,1199)まで、ステップS104〜ステップS110を繰り返す。なお、フレーム幅、フレーム高さが本実施例と異なる場合には、ステップS104〜ステップS110を、補正後座標(X,Y)=(0,0)〜(フレーム幅−1,フレーム高さ−1)まで繰り返して行うことにより、補正後映像データを生成することができる。
図7は、台形歪み補正部120が補正後映像の1画素の画素値を算出するときの各処理のタイミングを示す説明図である。座標変換部129は、制御部128から出力されたフレームスタート信号を受信すると、座標変換処理を開始する。この座標変換処理が終了して補正前座標が算出されると、フィルター係数算出部130は、フィルター係数の算出処理を開始し、ヒット判定部131は、ヒット判定のためのタグ情報の読み出し処理を開始する。
ヒット判定部131は、タグ情報を読み出してヒット判定をおこなった結果、補間ブロック読み出し部124により読み出されるべき領域を含むキャッシュブロックがキャッシュブロック記憶部122に格納されていないと判定した場合には、補間ブロック読み出し部124により読み出されるべき領域を含むキャッシュブロックがキャッシュブロック記憶部122に格納されるのを待つ(以下、「ブロックライト待ち」とも呼ぶ)。
一方、上記のフィルター係数算出処理、および、タグ情報の読み出し処理と同時に、先読みリクエスト発行部132は、キャッシュブロックの先読みの要否を判定し、必要であれば、キャッシュブロックの先読みの要求(以下、「先読みリクエスト」とも呼ぶ)を発行する。キャッシュブロック制御部121は、ヒット判定部131または先読みリクエスト発行部132からキャッシュブロックの読み出し要求が発行されたら、フレームバッファー150の要求された位置からキャッシュブロックを読み出して、キャッシュブロック記憶部122に格納する。補間ブロック読み出し部124により読み出されるべき領域を含むキャッシュブロックがキャッシュブロック記憶部122に格納されると、ヒット判定部131は、補間ブロック読み出し部124により読み出されるべき領域を含むキャッシュブロックがキャッシュブロック記憶部122に格納されていると判定し、補間ブロック読み出し部124は、新たに格納されたキャッシュブロックから補間ブロックを読み出す。
フィルター係数の算出や、補間ブロックの読み出しが終了すると、画素補間部125は、画素補間を開始する。なお、図7において、実線の枠は処理時間が固定、破線の枠は処理時間が可変であることを表す。また、枠の長さは処理の長さを表すものではない。本実施例では、先読みリクエストを行うことにより、ヒット判定部におけるブロックライト待ちの時間を短くしている。
A−4.先読み判定:
先読みリクエスト発行部132における先読み判定についての説明に先立って、本実施例におけるフレームバッファー150、キャッシュブロック記憶部122およびキャッシュブロック用タグ情報記憶部123の関係と、キャッシュブロックと補間ブロックとの関係について詳細に説明する。
図8は、フレームバッファー150とキャッシュブロック記憶部122との関係を模式的に示す図である。図8では、フレームバッファー150に格納されている1フレーム分の補正前映像データを、8×8画素からなるキャッシュブロック単位に分割した状態を示している。本実施例において、フレームバッファー150に格納されている補正前映像データは、1920×1200画素によって構成されており、このような補正前映像データが240×150個のキャッシュブロックに分割されている。図8に示すフレームバッファー150に格納された補正前映像データにおける各キャッシュブロックの位置は、それぞれ、補正前映像データにより表される補正前映像における各キャッシュブロックにより表される映像(領域)の位置と対応している。図8において各キャッシュブロック内に記載されている文字列(x,y)は、そのキャッシュブロックのx方向およびy方向の位置(列番号,行番号)を示している。本実施例では、列が並んでいる方向をx方向、行が並んでいる方向をy方向としている。本実施例におけるy方向は、特許請求の範囲における「第1の方向」に該当し、x方向は、特許請求の範囲における「第1の方向と直交する方向」に該当する。また、x方向、y方向いずれにおいても、文字列(x,y)の番号の小さいキャッシュブロックの側を上流側と呼び、文字列(x,y)の番号の大きい側を下流側と呼ぶ。
キャッシュブロック記憶部122は、1つのキャッシュブロックを格納できるブロック領域を、240列×4行個備える。図8では、各ブロック領域を識別するために、(列(0〜239),行(0〜3))の番号を付している。すなわち、キャッシュブロック記憶部122は、y方向に沿った方向に並ぶ4つのブロック領域(行0〜3)からなるブロック領域列がx方向に沿った方向に240列(列0〜239)並んだ構成を備えている。キャッシュブロック記憶部122には、フレームバッファー150に格納されている1フレーム分の補正前映像データの一部のデータ(キャッシュブロック)が、240×4個格納できる。
本実施例では、台形歪み補正処理が開始される際に、まず、フレームバッファー150から(0,0)〜(239,3)のキャッシュブロックが読み出され、キャッシュブロック記憶部122に格納される。キャッシュブロックは、キャッシュブロック記憶部122において、各キャッシュブロックの列番号と同一の列番号のブロック領域に格納される。したがって、台形歪み補正処理が開始される際には、まず、キャッシュブロック記憶部122の各ブロック領域には、ブロック領域の列番号、行番号と同一の列番号、行番号を有するキャッシュブロックが格納される(図8)。キャッシュブロック記憶部122の幅は、フレームバッファー150の幅と同じである。キャッシュブロック記憶部122の高さは、4キャッシュブロック分であり、1フレームの32ライン(4キャッシュブロック×8px)分の画素データが格納される。キャッシュブロック記憶部122において、キャッシュブロックがフレームバッファー150の列番号の順に、すなわち、x方向の上流側から下流側に順次格納されているため、後述するx方向のヒット判定検索を高速に行うことができる。
キャッシュブロック用タグ情報記憶部123は、キャッシュブロック記憶部122をブロック領域単位で管理する際の管理情報であるタグ情報を格納する。図9は、キャッシュブロック記憶部122とキャッシュブロック用タグ情報記憶部123との関係を概念的に示す図である。図示するように、キャッシュブロック用タグ情報記憶部123には、キャッシュブロック記憶部122の240×4個のブロック領域に対応させて240×4個のタグ情報が格納されている。
具体的には、タグ情報として、(1)フレームバッファー150からキャッシュブロック記憶部122への書き込み待ちか否かを示す情報(書き込み待ちの場合WRITING=1)、(2)ブロック領域のデータが有効か無効かを示す情報(有効の場合VALID=1、無効の場合VALID=0)、及び(3)ブロック領域に格納されているキャッシュブロックがフレームバッファー150のどの位置のブロックかを示す座標Y_ADRが格納されている。(3)の座標Y_ADRは、キャッシュブロックの左上端の画素のフレームバッファー150におけるy座標を1/8にした情報を保持する。本実施例では、図8に示す行番号を座標Y_ADRとする。(2)において、有効とは、キャッシュブロックがキャッシュブロック記憶部122に格納されていること、無効とはキャッシュブロックがキャッシュブロック記憶部122に格納されていないことを示す。本実施例において、台形歪み補正処理開始の際に、(0,0)〜(239,3)のキャッシュブロックがキャッシュブロック記憶部122に格納される前は、すべのタグ情報において、「無効(VALID=0)」となっている。
図10は、キャッシュブロックと補間ブロックとの関係を示す図である。図10において、補間ブロックを斜線ハッチングで示している。本実施例において、キャッシュブロックは8×8画素からなり、補間ブロックは4×4画素からなるため、補間ブロックは、キャッシュブロックの一部となる。
後述するように、キャッシュブロック記憶部122に格納されるキャッシュブロックは、台形歪み補正処理の進行にしたがって、ブロック領域列ごとに順次更新される。したがって、台形歪み補正処理の途中では、キャッシュブロック記憶部122に格納されているキャッシュブロックと対応するフレームバッファー150のキャッシュブロックは、例えば、図10に示すように階段状となる。
本実施例では、画素補間部125は、図2(b)の矢印に示す方向に従って補間画素の画素値を算出する。そのため、補間ブロック読み出し部124は、図2(a)の矢印に示すように、補正前映像に対して斜め方向に補間ブロックの取得をおこなう。すなわち、補間ブロック読み出し部124は、図10の矢印に示すように、キャッシュブロック記憶部122において、x方向の最も上流側から補間ブロックの取得を開始し、x方向において下流側、y方向において上流側となる位置において次の補間ブロックを取得する。これを順次繰り返し、x方向において、最も下流側の位置において補間ブロックを取得すると、x方向の最も上流側において補間ブロックの取得を開始した前回の位置よりもy方向において下流側となる位置から補間ブロックの取得をおこなう。その後、同様に前回補間ブロックを取得した位置よりもx方向において下流側、y方向において上流側となる位置において補間ブロックの取得をおこなう。上記の補間ブロックの取得方向を各ブロック領域列単位で見ると、補間ブロック読み出し部124は、ブロック領域列を構成する複数のブロック領域にそれぞれ格納されているキャッシュブロックのうち、フレームバッファー150において対応するキャッシュブロックの位置が、y方向において相対的に上流側となるキャッシュブロックから順に補間ブロックの取得をおこなう。図10のフレームバッファーに示した矢印の方向は、特許請求の範囲における「軌跡の方向」に該当する。
図11は、先読みリクエスト発行部132における先読み判定を説明するための説明図である。図11において、補正前映像データのキャッシュブロック(u,v),キャッシュブロック(u,v+1),キャッシュブロック(u,v+2),キャッシュブロック(u,v+3)が、キャッシュブロック記憶部122のブロック領域(u,0),ブロック領域(u,1),ブロック領域(u,2),ブロック領域(u,3)に格納されているものとする。
先読みリクエストの条件は、先読みリクエスト発行部132に入力された補正前座標の整数部Int(x、y)が、キャッシュブロック記憶部122の各ブロック領域列に格納されているキャッシュブロックのうち、選択部133により選択されたキャッシュブロックに入ったことである。先読みリクエストが発行されると、キャッシュブロック制御部121により、各ブロック領域列において行番号が一番大きいキャッシュブロックより1つ行番号が大きいキャッシュブロックがフレームバッファー150から読み出され、キャッシュブロック記憶部122に格納されているキャッシュブロックのうち、行番号が一番小さいキャッシュブロックが格納されているブロック領域に上書きされる。
本実施例において、選択部133は、ブロック領域列に格納されている複数のキャッシュブロックについて、フレームバッファー150においてそれぞれ対応するキャッシュブロックのy方向における相対的な位置を表す番号から1つの番号を選択することにより、ブロック領域列に格納されている複数のキャッシュブロックから1のキャッシュブロックを特定する。例えば、選択部133により「3」が選択された場合には、選択部133は、フレームバッファー150においてy方向における位置が上流側から数えて3番目のキャッシュブロックに対応するブロック領域列のキャッシュブロックを選択する。すなわち図11では、キャッシュブロック(u,v+2)が選択される。なお、選択部133によるキャッシュブロックの選択方法は、上記以外の方法であってもよい。例えば、選択部133は、キャッシュブロックがブロック領域列の各ブロック領域に格納された相対的な時期を表す番号から、1の番号を選択することにより、ブロック領域列に格納されている複数のキャッシュブロックから1のキャッシュブロックを特定してもよい。
図11を用いて先読み判定の具体例を示す。ここでは、選択部133によりキャッシュブロックを特定するための番号として「3」が選択されているものとして説明する。先読みリクエスト発行部132は、入力された補正前座標の整数部Int(x、y)が、選択部133により選択されたキャッシュブロック(u,v+2)に含まれるか否かを判断する。先読みリクエスト発行部132は、整数部Int(x、y)が、キャッシュブロック(u,v+2)に含まれる場合には、ブロック領域列に格納されている複数のキャッシュブロックのうち、行番号が一番大きいキャッシュブロック(u,v+3)の次のキャッシュブロック(u,v+4)をフレームバッファー150から読み出すための先読みリクエストをキャッシュブロック制御部121に対して発行する。先読みリクエストには、先読みをするブロックのフレームバッファー150における座標、すなわちキャッシュブロックの行番号と列番号、および、キャッシュブロックを保存するキャッシュブロック記憶部122の座標位置、すなわちブロック領域の行番号と列番号などが含まれている。キャッシュブロック制御部121は、先読みリクエストを受けると、ブロック領域列に格納されているキャッシュブロックのうち行番号が一番小さいキャッシュブロック(u,v)が格納されているブロック領域(u,0)に、先読みしたキャッシュブロック(u,v+4)を上書きする。
本実施例では、先読みリクエスト発行部132は、ブロック領域列に格納されているキャッシュブロックのうち、フレームバッファー150のy方向において最も下流側の領域を表すキャッシュブロック(u,v+3)と補正前映像において下流側で隣接する領域を表すキャッシュブロック、すなわちキャッシュブロック(u,v+4)を、補間ブロック読み出し部124が後に補間ブロック映像データを取得するキャッシュブロックとして予測している。
なお、先読みリクエスト発行部132は、先読みリクエストの発行とともに、指定したブロック領域に対応するタグ情報の更新をおこなう。具体的には、WRITING=1とし、Y_ADRを先読みするキャッシュブロックの座標(行番号)に設定する。また、先読みリクエスト発行部132は、先読みリクエストにより指定したブロック領域に指定したキャッシュブロックが格納されると、キャッシュブロック用タグ情報記憶部123の該当するタグ情報を、VALID=1、WRITING=0に更新する。
図12は、キャッシュブロック記憶部122に格納されているキャッシュブロックが更新される順序を説明するための説明図である。図12では、キャッシュブロック記憶部122における第2列目のブロック領域列に格納されているキャッシュブロックを例示している。また図12では、ブロック領域列に格納されている各キャッシュブロックを、各キャッシュブロックの左上端の画素の補正前映像における座標を用いて識別する。例えば、左上端の画素の補正前映像における座標が(16,0)のキャッシュブロックは、キャッシュブロック(16,0)と示している。ここでは、選択部133によりキャッシュブロックを特定するための番号として「3」が選択されているものとして説明する。
図12(a)は、台形歪み補正処理開始時におけるブロック領域列の各ブロック領域に格納されているキャッシュブロックを例示している。ここでは、ブロック領域(2,0)にはキャッシュブロック(16,0)が格納され、ブロック領域(2,1)にはキャッシュブロック(16,8)が格納され、ブロック領域(2,2)にはキャッシュブロック(16,16)が格納され、ブロック領域(2,3)にはキャッシュブロック(16,24)が格納されている。これらのキャッシュブロックのうち、フレームバッファー150においてそれぞれ対応するキャッシュブロックのy方向における相対的な位置において上流側から「3」番目は、ハッチングで示したキャッシュブロック(16,16)となる。そのため、先読みリクエスト発行部132に入力された補正前座標の整数部Int(x、y)が、キャッシュブロック(16,16)に入ったとき、すなわち、入力されたy座標の整数部が16〜23だった場合には、先読みリクエストが発行されてキャッシュブロック(16,32)がフレームバッファー150から読み出される。そして、キャッシュブロック記憶部122の第2列目のブロック領域列に格納されているキャッシュブロックのうち、y座標が一番小さいキャッシュブロック(16,0)が格納されているブロック領域(2,0)に、読み出されたキャッシュブロック(16,32)が上書きされる(図12(a),(b))。
ブロック領域(2,0)に、キャッシュブロック(16,32)が上書きされると、ブロック領域列の各ブロック領域に格納されているキャッシュブロックのうち、フレームバッファー150においてそれぞれ対応するキャッシュブロックのy方向における相対的な位置において上流側から「3」番目は、図12(b)のハッチングで示したキャッシュブロック(16,24)となる。そのため、先読みリクエスト発行部132に入力された補正前座標の整数部Int(x、y)が、キャッシュブロック(16,24)に入ったとき、すなわち、入力されたy座標の整数部が24〜31だった場合には、次の先読みリクエストが発行されてキャッシュブロック(16,40)がフレームバッファー150から読み出される。そして、キャッシュブロック記憶部122の第2列目のブロック領域列に格納されているキャッシュブロックのうち、y座標が一番小さいキャッシュブロック(16,8)が格納されているブロック領域(2,1)に、読み出されたキャッシュブロック(16,40)が上書きされる(図12(b),(c))。ブロック領域(2,1)に、キャッシュブロック(16,40)が上書きされると、ブロック領域列の各ブロック領域に格納されているキャッシュブロックのうち、フレームバッファー150においてそれぞれ対応するキャッシュブロックのy方向における相対的な位置において上流側から「3」番目は、図12(c)のハッチングで示したキャッシュブロック(16,32)となる。
図13は、キャッシュブロック記憶部122に格納されているキャッシュブロックとフレームバッファー150の座標との関係を説明するための説明図である。図13では、図12に示したキャッシュブロック記憶部122における第2列目のブロック領域列に格納されているキャッシュブロックと、フレームバッファー150において対応する領域の座標との関係を示している。図13のキャッシュブロック記憶部122において、0,8,16,24,32,・・・,1896,1904,1912と記載されている番号は、キャッシュブロック記憶部122に格納されているキャッシュブロックの左上端の画素の補正前映像におけるx座標であり、すなわち、フレームバッファー150におけるx座標を示している。
図13は、図12において、図12(b)から図12(c)への移行時を表している。図13に示すように、ブロック領域列に格納されている複数のキャッシュブロック(16,8)、(16,16)、(16,24)、(16,32)のうち、フレームバッファー150のy方向において最も上流側のキャッシュブロック(16,8)を格納しているブロック領域(2,1)に、ブロック領域列に格納されているキャッシュブロックのうちy方向において最も下流側のキャッシュブロック(16.32)と下流側で接するキャッシュブロック(16,40)が上書きされる。
次に、図14と図15を用いて、選択部133により選択される番号と、キャッシュブロックを取得するタイミングとの関係について説明する。図14は、選択部によりキャッシュブロックを特定するための番号として「3」が選択されている状態を説明するための説明図である。図15は、選択部によりキャッシュブロックを特定するための番号として「4」が選択されている状態を説明するための説明図である。図14および図15のハッチングは、それぞれ選択部133により選択された番号に対応するキャッシュブロックを示している。図14および図15において示した矢印は、図10の矢印と同様に補間ブロックの取得位置の移動方向を表している。補間ブロックの取得位置は、矢印L1、L2、L3、L4の順にそれぞれの矢印の方向に移動する。
図14に示すように、選択部133によりキャッシュブロックを特定するための番号として「3」が選択されている状態において、補間ブロックの取得位置(ここでは、補正前座標の整数部Int(x、y))が矢印L1上のときには、選択部133により選択されたキャッシュブロックからの読み取りがおこなわれない。しかし、補間ブロックの取得位置が矢印L2上のときには、0,1,3,4,6,7列目のブロック領域列において、補間ブロックの取得位置が選択部133により選択されたキャッシュブロックに含まれ、0,1,3,4,6,7列目のブロック領域列では先読みが実行される。また、補間ブロックの取得位置が矢印L3上となると、0,1,3,4,6,7列目のブロック領域列に加えて、2,5,8列目のキャッシュブロックのブロック領域列においても、補間ブロックの取得位置が選択部133により選択されたキャッシュブロックに含まれるため、2,5,8列目のキャッシュブロックについても先読みが実行される。すなわち、本実施例では、選択部133によりキャッシュブロックを特定するための番号として「3」が選択されているときには、補間ブロックが矢印L4の上となる前までに、図示したすべてのブロック領域列(0〜8列)において先読みが実行される。
一方、図15に示すように、選択部133によりキャッシュブロックを特定するための番号として「4」が選択されている状態では、補間ブロックの取得位置が矢印L1上のみでなく、矢印L2上であっても、補間ブロックの取得位置が選択部133により選択されたキャッシュブロックに含まれない。補間ブロックの取得位置が矢印L3上のときに、0,3,6列目のブロック領域列において、補間ブロックの取得位置が選択部133により選択されたキャッシュブロックに含まれ、0,3,6列目のブロック領域列では先読みが実行される。そして、補間ブロックの取得位置が矢印L4上のときに、0,3,6列目のブロック領域列に加えて、1,2,4,5,7,8列目のキャッシュブロックのブロック領域列においても、補間ブロックの取得位置が選択部133により選択されたキャッシュブロックに含まれ、1,2,4,5,7,8列目のキャッシュブロックについても先読みが実行される。すなわち、図14に示した選択部133により「3」が選択されている状態と比べて、すべてのブロック領域列(0〜8列)において、先読みが実行されるタイミングが遅くなる。このことから、選択部133により選択された番号により、先読みが実行されるタイミングが変化する。具体的には、選択される番号が小さくなるほど、先読みが実行されるタイミングが早くなり、選択される番号が大きくなるほど、先読みが実行されるタイミングが遅くなる。
図16は、補間ブロックの移動方向と選択部により選択される番号との関係を説明するための説明図である。図16(a)は、選択部133によりキャッシュブロックを特定するための番号として「3」が選択されている状態を示している。図16(b)は、キャッシュブロックを特定するための番号として「4」が選択されている状態を示している。図16(a)において、破線で示した第1の読み取り位置P1において補間ブロックの取得がおこなわれると、2列目のブロック領域列において先読みが実行され、ブロック領域(2,0)に格納されているキャッシュブロック(16,0)がキャッシュブロック(16,32)に更新される。しかし、補間ブロックの移動方向とx方向とがなす角度(以後「補正角度」とも呼ぶ)θ1が所定の角度(以後「限界補正角度」とも呼ぶ)より大きい場合には、第2の読み取り位置P2において補間ブロックの取得をおこなうときに、キャッシュブロック(16,0)からの読み取りが必要であるにもかかわらず、既にキャッシュブロック(16,32)に更新されているという不具合が発生する。この場合、ブロック領域(2,0)に再度キャッシュブロック(16,0)を格納する必要があるため、台形歪み補正処理の処理効率を低下させる虞がある。よって、処理効率の低下を抑制するためには、補正角度θ1を限界補正角度以下とする必要がある。ここで、限界補正角度は、選択部133により選択された番号と対応するキャッシュブロックと、先読みにより更新されるキャッシュブロックとの間にあるキャッシュブロックの数に依存する。例えば、図16(a)に示すように、選択部133により選択された番号と対応するキャッシュブロック(2,2)と、更新されるキャッシュブロック(2,0)との間にあるキャッシュブロックが1つ、ここでは、キャッシュブロック(2,1)のみの場合、限界補正角度はキャッシュブロック(2,1)の対角線とx方向とのなす角度、概ね45度となる。
図16(b)では、選択部133により選択された番号と対応するキャッシュブロックと、更新されるキャッシュブロックとの間にあるキャッシュブロックが2つ、ここでは、キャッシュブロック(2,1)とキャッシュブロック(2.2)であるため、限界補正角度は、2つのキャッシュブロックの外形により表される矩形の対角線とx方向とのなす角度、概ね60度となる。このことから、選択部133により選択された番号により、限界補正角度が変化する。具体的には、選択される番号が小さくなるほど、限界補正角度が小さくなり、選択される番号が大きくなるほど、限界補正角度が大きくなる。
上記の図14〜図16から、選択部133により選択される番号が小さくなるほど、先読みが実行されるタイミングが早くなるため、補間ブロックを読み出す際に必要なキャッシュブロックが格納されていない状態を抑制できる一方、限界補正角度が小さくなるといえる。また、選択部133により選択される番号が大きくなるほど、限界補正角度が大きくなるため、台形補正量(角度)の大きい補正であっても、一度格納したキャッシュブロックを再度読み取ることによる処理効率の低下を抑制することができる一方、選択される番号が小さい場合と比べて先読みが実行されるタイミングが遅くなるといえる。
選択部133は、キャッシュブロックを特定するための番号として、補正前画像に対する補正後画像の傾きを表す補正角度が限界補正角度を下回る範囲において、最も小さい番号を選択する。例えば、本実施例では、補正角度θ1が40度のときは、選択部133は、キャッシュブロックを特定するための番号として、限界補正角度が概ね45度となる「3」を選択する。また、補正角度θ1が50度のときは、選択部133は、キャッシュブロックを特定するための番号として、限界補正角度が概ね60度となる「4」を選択する。言い換えると、選択部133は、図16の矢印の方向が、y方向に近づくほど、補正角度θ1は大きくなるため、大きい番号、すなわち、ブロック領域列に格納されているキャッシュブロックのうち、フレームバッファー150のy方向における下流側の映像を表すキャッシュブロックと対応する番号を選択し、矢印の方向が、y方向と直交するx方向に近づくほど、補正角度θ1は小さくなるため、小さい番号、すなわち、ブロック領域列に格納されているキャッシュブロックのうち、フレームバッファー150のy方向において上流側の映像を表すキャッシュブロックと対応する番号を選択する。
補正角度θ1は、上記の(式2)や(式3)を用いることにより算出することができる。本実施例では、選択部133は、レジスター部127に格納されている座標変換係数A〜Hと、(式2)、(式3)を用いて補正角度θ1を算出し、選択する番号ごとに予め特定されている限界補正角度と、算出した補正角度θ1とを比較し、限界補正角度が補正角度θ1より大きくなる番号のうち最小の番号を、キャッシュブロックを特定するための番号として選択する。なお、補正角度θ1は、必ずしも算出される必要はなく、例えば、選択部133は、座標変換係数A〜Hの少なくとも一部の値と、選択する番号との対応関係が示されたテーブルを備えることにより、座標変換係数A〜Hの少なくとも一部の値から直接的にキャッシュブロックを特定するための番号を選択してもよい。
A−5.ヒット判定:
図17は、タグ情報を用いたヒット判定の例を示す説明図である。図17では、図13に示したキャッシュブロック記憶部122に格納されているキャッシュブロックに対応するタグ情報が例示されている。すなわち、キャッシュブロック用タグ情報記憶部123の2列0行には、キャッシュブロック記憶部122におけるブロック領域(2,0)に関するタグ情報が格納されている。画素補間に用いる16画素を、(x[0],y[0]),(x[1],y[1]),(x[2],y[2]),・・・,(x[15],y[15])とした場合に、ヒット判定は、(x[0],y[0])から順に、1画素ずつ行う。例えば、(x[0],y[0])=(16,40)である場合のヒット判定について、図17に基づいて説明する。
(x[0],y[0])=(16,40)が含まれるキャッシュブロックがキャッシュブロック記憶部122に格納されているか否か判定する場合、まず、ヒット判定部131は、キャッシュブロック用タグ情報記憶部123から該当する列のタグを抽出する。1つのキャッシュブロックは、8×8画素から成るため、画素補間に用いる画素のx座標を8で割ることにより、該当する列がわかる。(x[0],y[0])=(16,40)は第2列に該当するため、第2列のタグを抽出する。
図17において、抽出されたタグの情報が、紙面右側に記載されている。ヒット判定部131は、タグの行番号が小さい順にヒット判定を行う。以下、タグ情報を、TAG[行番号]で表す。TAG[0]は、WRITING=0,VALID=1,Y_ADR=4である。WRITING=0は、先読み中でないということ,VALID=1はデータが有効であるということをそれぞれ表している。また、Y_ADR=4を補正前映像のy座標に変換すると、4×8=32である。すなわち、TAG[0]によれば、補正前映像のy座標=32のブロックがキャッシュブロック記憶部122に存在することがわかる。
TAG[1]は、WRITING=1,VALID=0,Y_ADR=5である。WRITING=1は、先読み中であるということ,VALID=0はデータが無効であるということをそれぞれ表している。また、Y_ADR=5を補正前映像のy座標に変換すると、5×8=40である。すなわち、TAG[1]によれば、補正前映像のy座標=40のブロックが先読み中であり、しばらく待てば読み出し可能であることがわかる。
TAG[2]は、WRITING=0,VALID=1,Y_ADR=2である。WRITING=0は、先読み中でないということ,VALID=1はデータが有効であるということをそれぞれ表している。また、Y_ADR=2を補正前映像のy座標に変換すると、2×8=16である。すなわち、TAG[2]によれば、補正前映像のy座標=16のブロックがキャッシュブロック記憶部122に存在することがわかる。
TAG[3]は、WRITING=0,VALID=1,Y_ADR=3である。WRITING=0は、先読み中でないということ,VALID=1はデータが有効であるということをそれぞれ表している。また、Y_ADR=3を補正前映像のy座標に変換すると、3×8=24である。すなわち、TAG[3]によれば、補正前映像のy座標=24のブロックがキャッシュブロック記憶部122に存在することがわかる。
すなわち、(x[0],y[0])=(16,40)が含まれるキャッシュブロックがキャッシュブロック記憶部122に格納されているか否か判定した結果、(x[0],y[0])=(16,40)が含まれるキャッシュブロックは先読み中であり、しばらく待てば、読み出し可能であると判定される。
図18、図19は、ヒット判定部131(図5)におけるヒット判定処理の工程を模式的に示す工程図である。座標変換部129からヒット判定部131に対して補正前座標の整数部Int(x,y)が入力されると、ヒット判定部131におけるヒット判定処理が開始される。ヒット判定部131は、座標変換部129から入力された補正前座標の整数部Int(x,y)に基づいて、その周辺16画素の座標(x[0],y[0]),(x[1],y[1]),(x[2],y[2]),・・・,(x[15],y[15])を算出する(ステップS202)。この後の処理は、座標(x[0],y[0]),(x[1],y[1]),(x[2],y[2]),・・・,(x[15],y[15])について、並列に行う。
ヒット判定部131は、周辺16画素の座標の算出が終了すると、タグ情報(TAG[0],[1],[2],[3])をキャッシュブロック用タグ情報記憶部123から読み出し(ステップS204)、TAG[0]のY_ADR(すなわち、キャッシュブロックの行番号)が、y[0]/キャッシュブロックの高さ(8px)と同一か否かを判断する(ステップS206)。同一であった場合(ステップS206においてYES)、ヒット判定部131はTAG[0]のWRITING=1か否かを判断する(ステップS208)。一方、同一でない場合は(ステップS206においてNO)、ステップS216に進む。
ステップS208においてWRITING=1であった場合、ステップS204に戻り、WRITING=0であった場合は、ヒット判定部131はTAG[0]のVALID=1か否かを判断する(ステップS210)。VALID=1であった場合、ヒット判定部131は、ヒットしたタグに該当するキャッシュブロックの座標(列,行)を算出する(ステップS212)。一方、VALID=0であった場合は、ヒット判定部131は、キャッシュブロック(x[0]/キャッシュブロックの幅(8px),y[0]/キャッシュブロックの高さ(8px))の読み出し要求を、キャッシュブロック制御部121へ出力する(ステップS214)。
ステップS216,S226,S236では、それぞれ、TAG[1],TAG[2],TAG[3]についてステップS206と同様の処理を行う。ステップS218,S228,S238では、それぞれ、TAG[1],TAG[2],TAG[3]についてステップS208と同様の処理を行う。ステップS220,S230,S240では、それぞれ、TAG[1],TAG[2],TAG[3]についてステップS210と同様の処理を行う。
すなわち、タグ情報に含まれるキャッシュブロックの行番号が、y[0]/8と同一でなければ、次のタグ情報について同様の処理を行うというように、第0行のタグ情報から、第1行、第2行、第3行と順にタグ情報を判定していく。ステップS208,S218,S228,S238において、WRITING=1ということは、当該タグ情報に対応するブロック領域にキャッシュブロックが書き込み中であるということであるため、書き込みが終了するまで、すなわちWRITING=0になるまで、タグ情報の読み出しと判定を繰り返す。ステップS210,S220,S230,S240においてVALID=1である場合には、目的の座標の画素値が含まれるキャッシュブロックがキャッシュブロック記憶部122に存在する(ヒットした)といえるため、ヒットしたタグに該当するキャッシュブロックの座標(列,行)を算出する。
以上説明したように、本実施例におけるプロジェクター100によれば、選択部133により選択された番号に対応するキャッシュブロックから補間ブロックの取得がおこなわれたときに、先読みリクエスト発行部132により予測された位置のキャッシュブロックをフレームバッファー150から取得することができるため、歪み補正処理の効率性の向上を図ることができる。具体的には、本実施例におけるプロジェクター100は、先読みリクエスト発行部132を備えるため、n番目の画素の画素値を求める画素補間を行う際に、n+1番目以降の画素の画素値を求めるために必要なキャッシュブロックを前もって読み出して(先読みして)、キャッシュブロック記憶部122に格納することができる。したがって、n+1番目以降の画素の画素値を求める際に、改めて必要なキャッシュブロックをキャッシュブロック記憶部122に格納しなくてもよい。すなわち、図7に示すブロックライト待ちの時間を短縮することができる。したがって、歪み補正処理の効率性の向上を図ることができる。
本実施例におけるプロジェクター100によれば、先読みリクエスト発行部132は、ブロック領域列に含まれるキャッシュブロックのうち、フレームバッファー150のy方向において最も下流側のキャッシュブロックと下流側で隣接するキャッシュブロックを補間ブロック読み出し部124が後に補間ブロックを取得する位置を含むキャッシュブロックとして予測するため、歪み補正処理の効率性の向上を図ることができる。具体的には、通常、台形歪み補正において、補正後座標を補正前座標に変換する座標変換では、回転、反転等がない場合には、図2に示すように、補正前映像の上方から下方へと画素補間に必要な補間ブロックは移動する。そのため、ブロック領域列に含まれるキャッシュブロックのうち、フレームバッファー150のy方向において最も下流側のキャッシュブロックと下流側で隣接するキャッシュブロックを取得することにより、補間ブロックの取得に必要なキャッシュブロックがキャッシュブロック記憶部122に格納されていない状態を抑制することができ、歪み補正処理の効率性の向上を図ることができる。
本実施例におけるプロジェクター100によれば、選択部133は、補間ブロックの移動方向が、フレームバッファー150のy方向に近づくほど、ブロック領域列に格納されているキャッシュブロックのうち、フレームバッファー150のy方向における下流側の映像を表すキャッシュブロックと対応する番号を選択し、補間ブロックの移動方向が、y方向と直交するx方向に近づくほど、ブロック領域列に格納されているキャッシュブロックのうち、フレームバッファー150のy方向において上流側の映像を表すキャッシュブロックと対応する番号を選択するため、歪み補正処理の効率性の向上を図ることができる。具体的には、選択部133により選択される番号は、小さくなるほど、先読みが実行されるタイミングが早くなるため、補間ブロックを読み出す際に必要なキャッシュブロックが格納されていない状態を抑制できるが、限界補正角度が小さくなる。一方、大きくなるほど、限界補正角度が大きくなるため、台形補正量(角度)の大きい補正であっても、一度格納したキャッシュブロックを再度読み取ることによる処理効率の低下を抑制することができるが、先読みが実行されるタイミングが遅くなることがいえる。
補間ブロックの移動方向が、フレームバッファー150のy方向に近づくほど、図16の補正角度θ1は大きくなる。そのため、選択部133は、補正角度θ1を限界補正角度より小さくするために、選択する番号を大きくする。一方、補間ブロックの移動方向が、フレームバッファー150のy方向と直交するx方向に近づくほど、図16の補正角度θ1は小さくなる。そのため、選択部133は、先読みのタイミングを早めるために、選択する番号を小さくする。このように、補正角度θ1に応じて先読みを実行するタイミングを変化させることによって、歪み補正処理の効率性の向上を図ることができる。
B.変形例:
なお、この発明は上記の実施例や実施形態に限られるものではなく、その要旨を逸脱しない範囲において種々の態様において実施することが可能であり、例えば次のような変形も可能である。
B1.変形例1:
本実施例では、選択部133は、補正角度θ1に応じて、キャッシュブロックを特定するための番号を変化させているが、選択部133は、補正角度θ1、および/または、補正角度θ1以外の条件に応じて、キャッシュブロックを特定するための番号を変化させてもよい。例えば、選択部133は、高速バス102や低速バス104におけるトラフィック量に応じてキャッシュブロックを特定するための番号を変化させる構成としてもよい。具体的には、フレームバッファー150へのアクセス量が多い場合、キャッシュブロックの読み出しに要する時間が増大して、歪み補正処理の処理効率が低下する虞がある。しかし、このとき、選択部133は、キャッシュブロックを特定するための番号として小さい番号を選択することで、先読みが実行されるタイミングを早めて歪み補正処理の処理効率の低下を抑制することができる。また、選択部133により選択されるキャッシュブロックを特定するための番号は、ユーザにより切り替え可能な構成としてもよい。
B2.変形例2:
本実施例では、補間ブロック読み出し部124によるキャッシュブロックの読み出し順番や、選択部133によるキャッシュブロックの選択方法は、各キャッシュブロックが表す映像のフレームバッファー150において対応する領域のy方向における位置に基づいて決定しているが、本発明は、必ずしも、各キャッシュブロックが表す映像のフレームバッファー150において対応する領域の位置に基づかなくても実現することができる。例えば、補間ブロック読み出し部124の読み出し順番や選択部133によるキャッシュブロックの選択方法は、各キャッシュブロックのブロック領域に格納された時期に基づいて決定してもよい。具体的には、部124は、ブロック領域列に格納されている複数のキャッシュブロックについて、ブロック領域に格納された時期が古いキャッシュブロックから順に読み出しをおこない、選択部133は、ブロック領域列に格納されている複数のキャッシュブロックについて、ブロック領域に格納された相対的な時期を表す番号から1つの番号を選択することにより、ブロック領域列に格納されている複数のキャッシュブロックから1のキャッシュブロックを特定してもよい。
B3.変形例3:
本実施例では、図10に示すように、キャッシュブロック制御部121は、ブロック領域列ごとフレームバッファー150のy方向に沿った方向において順次キャッシュブロックの読み出しをおこなうものとして説明しているが、本発明を適用したキャッシュブロックの読み出しは、必ずしもy方向に沿った方向に限定されず、例えばx方向に沿った方向において順次キャッシュブロックの読み出しをおこなう構成であっても適用することができる。
B4.変形例4:
本実施例では、補正前座標の整数部Int(x、y)が選択部133により選択されたキャッシュブロックに入っているときに先読みが実行されるとしているが、補間ブロックにおいて、補正前座標の整数部Int(x、y)以外の領域が選択部133により選択されたキャッシュブロックに入っているときに先読みが実行される構成であってもよい。例えば、補間ブロックの四隅のうち、y方向下流側の2つの隅のいずれか一方が選択部133により選択されたキャッシュブロックに入っているときに先読みが実行される構成であってもよい。
B5.変形例5:
本実施例では、プロジェクター100は、ヒット判定部131を備えるが、ヒット判定部131を備えない構成であってもよい。ヒット判定部131を備えない構成にする場合には、例えば、先読みリクエスト発行部132が補間ブロック読み出し部124に対して読み出し位置を供給する構成にすればよい。このような構成にしても、先読みリクエストを行うことにより、画素補間に必要な補間ブロックを含むキャッシュブロックを読み出してキャッシュブロック記憶部122に格納することができる。
B6.変形例6:
フレームバッファー150の画素数、キャッシュブロック記憶部122の画素数、キャッシュブロックの画素数、および補間ブロックの画素数(画素補間に用いる画素数)は、上記した実施例に限定されず、任意に設定することができる。
B7.変形例7:
本実施例では、プロジェクター100は、透過型の液晶パネル部192を用いて、照明光学系190からの光を変調しているが、透過型の液晶パネル部192に限定されず、例えば、デジタル・マイクロミラー・デバイス(DMD(登録商標):Digital Micro−Mirror Device)や、反射型の液晶パネル(LCOS(登録商標):Liquid Crystal on Silicon)等を用いて、照明光学系190からの光を変調する構成にしてもよい。また、小型CRT(陰極線管)上の映像を被投写面に投写するCRTプロジェクターでもよい。
B8.変形例8:
本実施例に係るプロジェクター100は、上記実施例において、ハードウェアによって実現されていた構成の一部をソフトウェアに置き換えるようにしてもよく、逆に、ソフトウェアによって実現されていた構成の一部をハードウェアに置き換えるようにしてもよい。
B9.変形例9:
本発明は、種々の態様で実現することが可能であり、例えば、プロジェクターテレビ、モニター、ブロック映像記憶装置、射影変換処理装置、画像処理装置等で実現することができる。また、ブロック映像記憶方法、画像処理方法、および、これらの方法または装置の機能を実現するためのコンピュータープログラム、そのコンピュータープログラムを記録した記録媒体、そのコンピュータープログラムを含み搬送波内に具現化されたデータ信号、等の形態で実現することができる。
100…プロジェクター
102…高速バス
104…低速バス
110…映像入力部
112…IP変換部
114…解像度変換部
116…映像合成部
120…台形歪み補正部
121…キャッシュブロック制御部
122…キャッシュブロック記憶部
123…キャッシュブロック用タグ情報記憶部
124…補間ブロック読み出し部
125…画素補間部
126…FIFO部
127…レジスター部
128…制御部
129…座標変換部
130…フィルター係数算出部
131…ヒット判定部
132…先読みリクエスト発行部
133…選択部
140…液晶パネル駆動部
150…フレームバッファー
160…高速バス制御部
162…低速バス制御部
170…プロセッサー部
180…撮像部
182…センサー部
190…照明光学系
192…液晶パネル部
194…投写光学系

Claims (7)

  1. 画像表示装置であって、
    フレーム映像を表す映像データを記憶するフレーム映像記憶部と、
    所定数の画素からなるブロック映像データを格納するためのブロック領域を複数並べた構成を有するブロック領域列を複数備え、前記フレーム映像記憶部に記憶された映像データの一部を前記ブロック映像データとしてそれぞれのブロック領域に格納するブロック映像記憶部と、
    前記ブロック映像記憶部に格納された前記ブロック映像データから所定数の画素からなる補間ブロック映像データを取得し、取得した前記補間ブロック映像データを用いて、前記フレーム映像に対して所定の補正をおこなった補正後フレーム映像を表す補正後映像データを生成する補正処理部と、
    各前記ブロック領域列において、前記ブロック領域列を構成する複数のブロック領域のうち、前記ブロック映像データが格納された順番が所定の順位となるブロック領域に格納された前記ブロック映像データから前記補正処理部により前記補間ブロック映像データの取得が行われたときに、前記補正処理部が後に補間ブロック映像データを取得する前記ブロック映像データを予測するブロック映像予測部と、
    前記ブロック映像予測部により予測された前記ブロック映像データを前記フレーム映像記憶部から取得し、前記ブロック映像記憶部のブロック領域に格納するブロック映像取得部と、
    前記所定の順位を変更する基準変更部と、を備え
    前記ブロック映像予測部は、各前記ブロック領域列に含まれる各ブロック映像データにより表される映像と対応するフレーム映像の各領域のうち、最も下流側の領域と下流側で隣接する領域の位置を、前記補正処理部が後に補間ブロック映像データを取得するブロック映像データにより表される映像のフレーム映像における位置として予測する画像表示装置。
  2. 画像表示装置であって、
    フレーム映像を表す映像データを記憶するフレーム映像記憶部と、
    所定数の画素からなるブロック映像データを格納するためのブロック領域を複数並べた構成を有するブロック領域列を複数備え、前記フレーム映像記憶部に記憶された映像データの一部を前記ブロック映像データとしてそれぞれのブロック領域に格納するブロック映像記憶部と、
    各前記ブロック領域列に含まれる複数のブロック映像データのうち、ブロック映像データにより表される映像が前記フレーム映像の第1の方向において相対的に上流側の領域と対応するブロック映像データから順に所定数の画素からなる補間ブロック映像データを取得し、取得した前記補間ブロック映像データを用いて、前記フレーム映像に対して所定の補正をおこなった補正後フレーム映像を表す補正後映像データを生成する補正処理部と、
    各前記ブロック領域列に含まれる各ブロック映像データとそれぞれ対応し、各ブロック映像データにより表される映像と対応する前記フレーム映像における各領域の前記第1の方向における相対的な位置を示す番号情報から、任意の1の番号情報を選択する選択部と、
    各前記ブロック領域列において、前記選択部により選択された番号情報に対応するブロック映像データから前記補正処理部により前記補間ブロック映像データの取得がおこなわれたときに、前記補正処理部が後に補間ブロック映像データを取得するブロック映像データにより表される映像のフレーム映像における位置を予測するブロック映像予測部と、
    前記ブロック映像予測部により予測された位置の映像と対応する映像データを前記フレーム映像記憶部からブロック映像データとして取得し、前記ブロック映像記憶部のブロック領域に格納するブロック映像取得部と、を備え
    前記ブロック映像予測部は、各前記ブロック領域列に含まれる各ブロック映像データにより表される映像と対応するフレーム映像の各領域のうち、前記第1の方向において最も下流側の領域と下流側で隣接する領域の位置を、前記補正処理部が後に補間ブロック映像データを取得するブロック映像データにより表される映像のフレーム映像における位置として予測する画像表示装置。
  3. 請求項2に記載の画像表示装置において、
    前記選択部は、前記補正処理部により前記補間ブロック映像データが順次取得されたときに、取得された各補間ブロック映像データが表す映像と対応するフレーム映像の各領域をそれぞれ繋いだ軌跡の方向に基づいて前記番号情報を選択する画像表示装置。
  4. 請求項3に記載の画像表示装置において、
    前記選択部は、前記軌跡の方向が、前記第1の方向に沿った方向に近づくほど、前記第1の方向において下流側の映像を表すブロック映像データと対応する番号情報を選択し、前記軌跡の方向が、前記第1の方向と直交する方向に近づくほど、前記第1の方向において上流側の映像を表すブロック映像データと対応する番号情報を選択する画像表示装置。
  5. 請求項2ないし請求項4のいずれかに記載の画像表示装置において、
    前記補正処理部は、1つの前記補間ブロック映像データを用いて、前記補正後フレーム映像を構成する1画素を生成する処理を順次おこなうことにより、前記補正後映像データを生成する画像表示装置。
  6. 画像表示装置であって、
    フレーム映像を表す映像データを記憶するフレーム映像記憶部と、
    所定数の画素からなるブロック映像データを格納するためのブロック領域を複数並べた構成を有するブロック領域列を複数備え、前記フレーム映像記憶部に記憶された映像データの一部をブロック映像データとしてそれぞれのブロック領域に格納するブロック映像記憶部と、
    各前記ブロック領域列に含まれる複数のブロック映像データのうち、前記ブロック領域に格納された時期が相対的に古いブロック映像データから順に所定数の画素からなる補間ブロック映像データを取得し、取得した前記補間ブロック映像データを用いて、前記フレーム映像に対して所定の補正をおこなった補正後フレーム映像を表す補正後映像データを生成する補正処理部と、
    各前記ブロック領域列に含まれる各ブロック映像データとそれぞれ対応し、各ブロック映像データの前記ブロック領域に格納された相対的な時期を示す番号情報から、任意の1の番号情報を選択する選択部と、
    各前記ブロック領域列において、前記選択部により選択された番号情報に対応するブロック映像データから前記補正処理部により前記補間ブロック映像データの取得がおこなわれたときに、前記補正処理部が後に補間ブロック映像データを取得するブロック映像データにより表される映像のフレーム映像における位置を予測するブロック映像予測部と、
    前記ブロック映像予測部により予測された位置の映像と対応する映像データを前記フレーム映像記憶部からブロック映像データとして取得し、前記ブロック映像記憶部のブロック領域に格納するブロック映像取得部と、を備え
    前記ブロック映像予測部は、各前記ブロック領域列に含まれる各ブロック映像データにより表される映像と対応するフレーム映像の各領域のうち、最も下流側の領域と下流側で隣接する領域の位置を、前記補正処理部が後に補間ブロック映像データを取得するブロック映像データにより表される映像のフレーム映像における位置として予測する画像表示装置。
  7. 被投写面上に映像を投写して表示するプロジェクターであって、
    前記映像を表す映像光を生成して出力する映像光出力部と、
    フレーム映像を表す映像データを記憶するフレーム映像記憶部と、
    所定数の画素からなるブロック映像データを格納するためのブロック領域を複数並べた構成を有するブロック領域列を複数備え、前記フレーム映像記憶部に記憶された映像データの一部を前記ブロック映像データとしてそれぞれのブロック領域に格納するブロック映像記憶部と、
    前記ブロック映像記憶部に格納された前記ブロック映像データから所定数の画素からなる補間ブロック映像データを取得し、取得した前記補間ブロック映像データを用いて、前記フレーム映像に対して前記被投写面上に投写される映像の歪みを補正するための処理をおこなった補正後フレーム映像を表す補正後映像データを生成し、前記映像光出力部に出力する補正処理部と、
    各前記ブロック領域列において、前記ブロック領域列を構成する複数のブロック領域のうち、前記ブロック映像データが格納された順番が所定の順位となるブロック領域に格納された前記ブロック映像データから前記補正処理部により前記補間ブロック映像データの取得が行われたときに、前記補正処理部が後に補間ブロック映像データを取得する前記ブロック映像データを予測するブロック映像予測部と、
    前記ブロック映像予測部により予測された前記ブロック映像データを前記フレーム映像記憶部から取得し、前記ブロック映像記憶部のブロック領域に格納するブロック映像取得部と、
    前記所定の順位を変更する基準変更部と、を備え
    前記ブロック映像予測部は、各前記ブロック領域列に含まれる各ブロック映像データにより表される映像と対応するフレーム映像の各領域のうち、最も下流側の領域と下流側で隣接する領域の位置を、前記補正処理部が後に補間ブロック映像データを取得するブロック映像データにより表される映像のフレーム映像における位置として予測するプロジェクター。
JP2010063846A 2010-03-19 2010-03-19 画像表示装置およびプロジェクター Active JP5413265B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010063846A JP5413265B2 (ja) 2010-03-19 2010-03-19 画像表示装置およびプロジェクター

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010063846A JP5413265B2 (ja) 2010-03-19 2010-03-19 画像表示装置およびプロジェクター

Publications (2)

Publication Number Publication Date
JP2011199575A JP2011199575A (ja) 2011-10-06
JP5413265B2 true JP5413265B2 (ja) 2014-02-12

Family

ID=44877224

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010063846A Active JP5413265B2 (ja) 2010-03-19 2010-03-19 画像表示装置およびプロジェクター

Country Status (1)

Country Link
JP (1) JP5413265B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6306834B2 (ja) 2013-07-24 2018-04-04 キヤノン株式会社 画像処理装置および画像処理方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4737852B2 (ja) * 2001-03-19 2011-08-03 株式会社リコー 画像処理装置および画像表示装置
JP5217537B2 (ja) * 2008-03-18 2013-06-19 セイコーエプソン株式会社 プロジェクタ、電子機器、および、プロジェクタの制御方法

Also Published As

Publication number Publication date
JP2011199575A (ja) 2011-10-06

Similar Documents

Publication Publication Date Title
JP5348022B2 (ja) プロジェクターおよび射影変換処理装置
US8300978B2 (en) Projector, electronic apparatus, and method of controlling projector
KR101785027B1 (ko) 화면 왜곡 보정이 가능한 디스플레이 장치 및 이를 이용한 화면 왜곡 보정 방법
US6756985B1 (en) Image processor and image display
US8577178B2 (en) Image processing device, image display device, and image data producing method
JP5997882B2 (ja) プロジェクター及びプロジェクターの制御方法
CN114449234B (zh) 投影装置与其投影画面校正方法
JP5348035B2 (ja) プロジェクター
US20130169671A1 (en) Projector and method for controlling image display of the same
JP2011193332A (ja) プロジェクターおよび映像の投写方法
JP5533109B2 (ja) 画像表示装置、プロジェクター、および、画像表示装置におけるデータの取得方法
US9336565B2 (en) Image processing device, display apparatus, and image processing method
CN114449233B (zh) 投影装置与其梯形校正方法
JP2011211274A (ja) 画像表示装置、プロジェクター、および、画像表示装置におけるデータの取得方法
JP2010081024A (ja) 画像補間処理装置
JP5413265B2 (ja) 画像表示装置およびプロジェクター
JP2016163189A (ja) 画像処理装置、画像処理方法及び表示装置
US9761160B2 (en) Image processing device, display apparatus, image processing method, and program
JP5353772B2 (ja) プロジェクター
JPH0737079A (ja) 画像歪み補正方法及び装置
JP5407928B2 (ja) 投写型表示装置および表示方法
JP2006129026A (ja) 表示装置および表示方法
JP5531701B2 (ja) プロジェクター
JP2020061662A (ja) 映像処理装置、映像処理方法、及びプログラム
JP2011199463A (ja) プロジェクター

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130205

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130717

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130730

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130924

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: 20131015

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131028

R150 Certificate of patent or registration of utility model

Ref document number: 5413265

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350