(57)【要約】映像フレームのスキャンされたラインの１次元画素データストリームを受信し、それから映像システムのリアルタイム映像処理に利用される２次元パラレルデータを同時生成するためのハードウェアアプローチ及び方法。パラレルデータは、現在画素を中心とし、当該画素を中心とするウィンドウに含まれる垂直、水平及び対角画素データを有する。
2006520152.tif 000002
【特許請求の範囲】
【請求項１】
１次元データストリームから同時多次元データストリームを生成するためのハードウェア装置であって、
各々が１次元の画素データストリームを有し、Ｎ本の連続するラインの各々から所定数Ｍの画素がベース画素を含む水平ベースラインを有する２次元カーネルを形成する表示対象となる映像フレームの連続するスキャンされた映像データラインを受信する手段と、
前記連続して受信したカーネルのラインから画素データを連続的に格納し、前記ベース画素を有する前記カーネルの垂直画素データラインを有する前記Ｎ本のラインの各々から、垂直的に揃えられた画素データを有するＮ個のパラレルな画素データをパラレルに連続的に出力するため生成する垂直データ処理手段と、
前記垂直データ処理手段から出力され、前記ベース画素を有するベースラインに対応する垂直的に揃えられた連続する各パラレル画素データの単一のラインから画素データを連続的に受信し、前記カーネルの水平ベースラインに属する画素データを有するＭ個の画素データをパラレルに連続的に出力するため生成する水平データ処理手段と、
前記垂直データ処理手段から出力される垂直的に揃えられた連続する各パラレル画素データから画素データを連続的に受信し、前記ベース画素を有する前記カーネルの第１及び第２対角線に属する画素データを有する画素データをパラレルに連続的に出力するため生成する対角データ処理手段と、
前記ベース画素における映像画像の以降におけるリアルタイム処理を可能にするため、各々が前記カーネルのベース画素を有する垂直ラインパラレルデータ、水平ベースラインパラレルデータ、第１並びに第２対角パラレルデータの同時出力を可能にするタイミング手段と、
を有することを特徴とする装置。
【請求項２】
請求項１記載のハードウェア装置であって、
前記カーネルは、前記ベース画素に関して対称なＭ×Ｎの画素マトリックスを有することを特徴とする装置。
【請求項３】
請求項２記載のハードウェア装置であって、
Ｍ＝Ｎであることを特徴とする装置。
【請求項４】
請求項２記載のハードウェア装置であって、
前記タイミング手段は、前記ベース画素を有する垂直ラインパラレルデータを前記水平ベースラインパラレルデータと対角パラレルデータ出力と揃えるため、前記垂直データ処理手段の出力を（Ｍ＋１）／２クロックサイクルだけ遅延させる手段を有することを特徴とする装置。
【請求項５】
請求項２記載のハードウェア装置であって、
前記垂直データ処理手段は、
前記Ｎ個の連続的に受信したスキャンされた映像ラインの対応するラインから画素データを連続的に格納するＮ個のメモリ記憶装置と、
各々が連続するクロックサイクルにおいて生成されるＮ個の画素データパラレル出力を形成するため、前記Ｎ個のメモリ記憶装置の各々からのデータの読出しと、受信したスキャンされた１次元画素データラインの各メモリ記憶装置への書き込みとを制御するメモリコントローラと、
を有することを特徴とする装置。
【請求項６】
請求項５記載のハードウェア装置であって、
前記メモリコントローラは、前記Ｎ番目のスキャンされた映像ラインが前記Ｎ番目のメモリ記憶装置に書き込まれると、前記（Ｎ−１）番目のメモリ記憶装置を介し第１メモリ記憶装置の各々からのデータの同時読出しを可能にする手段を有することを特徴とする装置。
【請求項７】
請求項６記載のハードウェア装置であって、
前記カーネルは、前記Ｎ番目の映像ラインの後に連続する各スキャンされたラインの受信により、新たなベース画素を処理するため連続的にシフトされ、
前記メモリコントローラは、前記Ｎ番目のメモリ記憶装置を介し第２メモリ記憶装置の各々からのデータの同時読出しを可能にしながら、前記第１メモリ記憶装置への受信した（Ｎ＋１）番目のスキャンされた映像ラインの画素データの書き込みを可能にする、
ことを特徴とする装置。
【請求項８】
請求項６記載のハードウェア装置であって、
各カーネルシフトにおいて、連続する各入力ラインＮ＋Ｘラインは、前記ラインメモリＸを除く残りのメモリ記憶装置に格納されている対応するデータがパラレルに読み出されながら、前記Ｎ個のメモリ記憶装置の対応して番号付けされたラインメモリＸに読み込まれる（ただし、１≦Ｘ＜Ｎ）ことを特徴とする装置。
【請求項９】
請求項８記載のハードウェア装置であって、
前記垂直データ処理手段はさらに、
前記Ｎ個のメモリ記憶装置の各々から読み出されたデータを受信する手段と、
シーケンスとして受信された前記受信された入力ラインＸ（ただし、１≦Ｘ＜Ｎ）が、前記対応する画素データが読み出されるラインメモリ記憶装置に関係なく、前記Ｎ本のパラレル出力ラインの対応するラインＸとして出力されるように、前記垂直データ処理手段から出力される垂直ラインパラレルデータが構成されるように前記ラインシーケンスを再構成する手段と、
を有することを特徴とする装置。
【請求項１０】
請求項９記載のハードウェア装置であって、
前記ラインシーケンスを再構成する手段は、前記データが常に前記正しいシーケンスにより出力され、カーネルが垂直方向にシフトすることを保証するためにマルチプレクサ装置を有することを特徴とする装置。
【請求項１１】
請求項１０記載のハードウェア装置であって、
前記ラインシーケンスを再構成する手段はさらに、前記Ｎ個のパラレル出力ラインデータが前記正しいシーケンスとして出力されることを保証するため、Ｈ＿ｂｌａｎｋパルスをそれのクロック入力おいて受信するカウンタ装置を有することを特徴とする装置。
【請求項１２】
請求項１記載のハードウェア装置であって、
前記対角データ処理手段からパラレルに出力される画素データの個数は、ＭとＮの小さい方であることを特徴とする装置。
【請求項１３】
映像データをリアルタイム処理に利用可能にする方法であって、
ａ）各々が１次元の画素データストリームを有し、Ｎ本の連続するラインの各々から所定数Ｍの画素がベース画素を含む水平ベースラインを有する２次元カーネルを形成する表示対象となる映像フレームの連続するスキャンされた映像データラインを受信するステップと、
ｂ）前記連続して受信したカーネルのラインから画素データを連続的に格納し、前記ベース画素を有する前記カーネルの垂直画素データラインを有する前記Ｎ本のラインの各々から、垂直的に揃えられた画素データを有するＮ個のパラレルな画素データをパラレルに連続的に出力するため生成するステップと、
ｃ）前記ベース画素を有するベースラインに対応する垂直的に揃えられた連続する各パラレル画素データ出力の単一のラインから画素データを連続的に受信するステップと、
ｄ）前記カーネルの水平ベースラインに属する画素データを有するＭ個の画素データをパラレルに連続的に出力するため生成するステップと、
ｄ）前記垂直データ処理手段から出力される垂直的に揃えられた連続する各パラレル画素データから画素データを連続的に受信するステップと、
ｅ）前記ベース画素を有する前記カーネルの第１及び第２対角線に属する画素データを有する画素データをパラレルに連続的に出力するため生成するステップと、
ｆ）前記ベース画素における映像画像の以降におけるリアルタイム処理を可能にするため、各々が前記カーネルのベース画素を有する垂直ラインパラレルデータ、水平ベースラインパラレルデータ、第１並びに第２対角パラレルデータの出力を同期化するステップと、
を有することを特徴とする方法。
【請求項１４】
請求項１３記載の方法であって、
前記カーネルの連続的に受信したラインから画素データを連続的に格納するステップｂ）は、
前記Ｎ本の連続的に受信したスキャンされた映像ラインのあるラインからの画素データをＮ個のメモリ記憶装置の対応する装置に連続的に格納するステップと、
受信したスキャンされた１次元画素データラインを各メモリ記憶装置に書き込むステップと、
各々が連続するクロックサイクルにおいて生成される前記Ｎ個の画素データパラレル出力を形成するため、前記Ｎ個のメモリ記憶装置の各々からデータを読み出すステップと、
を有することを特徴とする方法。
【請求項１５】
請求項１３記載の方法であって、さらに、
前記Ｎ番目のスキャンされた映像ラインの画素データを前記Ｎ番目のメモリ記憶装置に書き込みながら、前記（Ｎ−１）番目のメモリ記憶装置を介し第１メモリ記憶装置の各々からのデータの同時読出しを可能にするステップを有することを特徴とする方法。
【請求項１６】
請求項１５記載の方法であって、
前記カーネルは、前記Ｎ番目の映像ランイの後に連続する各スキャンされたラインの受信により新たなベース画素における映像処理のため連続的にシフトされ、
当該方法はさらに、
受信した（Ｎ＋１）番目のスキャンされた映像ラインの画素データを前記第１メモリ記憶装置に書き込むステップと、
前記Ｎ番目のメモリ記憶装置を介し第２メモリ記憶装置の各々からデータを同時に読み出すステップと、
を有することを特徴とする方法。
【請求項１７】
請求項１５記載の方法であって、さらに、
各カーネルシフトにおいて、
連続する各入力ラインＮ＋Ｘを前記Ｎ個のメモリ格納装置の対応する番号付けされたラインメモリＸ（ただし、１≦Ｘ＜Ｎ）に読み込むステップと、
前記ラインメモリＸを除く残りのメモリ記憶装置に格納されている対応するデータをパラレルに同時に読出すステップと、
を有することを特徴とする方法。
【請求項１８】
請求項１７記載の方法であって、さらに、
パラレルな出力前に前記Ｎ個のメモリ記憶装置の各々から読み出されたデータを受信するステップと、
シーケンスとして受信された前記受信された入力ラインＸ（ただし、１≦Ｘ＜Ｎ）が、前記対応する画素データが読み出されるラインメモリ記憶装置に関係なく、前記Ｎ本のパラレル出力ラインの対応するラインＸとして出力されるように、前記垂直ラインパラレルデータ出力が構成されるように前記ラインシーケンスを再構成するステップと、
を有することを特徴とする方法。
【請求項１９】
請求項１３記載の方法であって、
前記カーネルの第１及び第２対角線に属する画素データを有するパラレルに出力される画素データの個数は、ＭとＮの小さい方であることを特徴とする方法。
【請求項２０】
映像データをリアルタイム処理に利用可能とするハードウェア装置を有する映像表示装置であって、
各々が１次元の画素データストリームを有し、Ｎ本の連続するラインの各々から所定数Ｍの画素がベース画素を含む水平ベースラインを有する２次元カーネルを形成する表示対象となる映像フレームの連続するスキャンされた映像データラインを受信する手段と、
前記連続して受信したカーネルのラインから画素データを連続的に格納し、前記ベース画素を有する前記カーネルの垂直画素データラインを有する前記Ｎ本のラインの各々から、垂直的に揃えられた画素データを有するＮ個のパラレルな画素データをパラレルに連続的に出力するため生成する垂直データ処理手段と、
前記垂直データ処理手段から出力され、前記ベース画素を有するベースラインに対応する垂直的に揃えられた連続する各パラレル画素データの単一のラインから画素データを連続的に受信し、前記カーネルの水平ベースラインに属する画素データを有するＭ個の画素データをパラレルに連続的に出力するため生成する水平データ処理手段と、
前記垂直データ処理手段から出力される垂直的に揃えられた連続する各パラレル画素データから画素データを連続的に受信し、前記ベース画素を有する前記カーネルの第１及び第２対角線に属する画素データを有する画素データをパラレルに連続的に出力するため生成する対角データ処理手段と、
前記ベース画素における映像画像の以降におけるリアルタイム処理を可能にするため、各々が前記カーネルのベース画素を有する垂直ラインパラレルデータ、水平ベースラインパラレルデータ、第１並びに第２対角パラレルデータの同時出力を可能にするタイミング手段と、
を有することを特徴とする装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、表示装置のための映像処理システムに関し、好ましくは特に、映像フレームの走査ラインの１次元画素データストリームを受信し、それから映像システムでのリアルタイム映像信号処理（エッジ検出計算など）に用いられる多次元データを同時生成するハードウェアアプローチ及び方法に関する。
【背景技術】
【０００２】
多数の映像処理アルゴリズムは、画素単位による「ベース」画素の周囲の走査方向に移動する矩形の画素ブロック内で実行される計算を必要とし、上記計算の各結果は入力画素ストリームレートに等しいレートを有することを意味する。しばしば大部分の計算は、水平及び垂直の２つの方向に実行されるが（いわゆる、２つの１次元）、最新のアルゴリズムは＋４５度と−４５度の対角方向に実行される計算を要する。これらのアルゴリズムは、フル２次元と呼ばれ、例えば、エッジ検出やシャープネスエンハンスメント機能などに用いられる。
【０００３】
ソフトウェア的に計算が実行されるとき（例えば、実行スピードが主要な考慮点でないときには、シミュレーション中）、「ベース」画素を含む映像フレームはメモリに格納され、単一またはネストされた「ＦＯＲ」ループを用いてしばしば実行される。ループの実行を制御するインデックスまたは表現は、典型的には０から対象とされる方向への「ブロックサイズ−１」に等しい数値まで変化する。しかしながら、ソフトウェア計算では、複数のプロセスはパラレルに、または１つのプロセッサにおいて実行することができない。このため、この計算は逐次的に実行され、リアルタイムでは実行されない。
【０００４】
エッジ検出のためのシステムを含むハードウェアアプローチが存在するが、それらは１次元（１Ｄ）で動作し、データを逐次的に処理する。
【０００５】
複数のプロセスが好ましくは２次元でパラレルに実行されることを可能にする純粋なハードウェアアプローチを実現することが極めて望ましいであろう。映像アルゴリズムのハードウェアによる実現は、多数のプロセスのリアルタイムによる実行を可能にし、これにより、例えば、２次元のエッジ検出によるリアルタイムのシャープネスエンハンスメントを可能にする。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
以上より、本課題は、複数のプロセスが１次元のデータストリームから好ましくは２次元でパラレルに実行されるのを可能にする純粋なハードウェアアプローチを実現することである。映像アルゴリズムのハードウェアによる実現形態は、多数のプロセスのリアルタイムの実行を可能にし、これにより、例えば、向上した処理スピードによる２次元にエッジ検出によるリアルタイムシャープネスエンハンスメントを可能にする。ハードウェアによるアプローチは、各々が画素の一方向に関して計算を行うハードウェアブロックをパラレルに動作させることにより実行されるリアルタイムブロック単位の２Ｄ映像処理を可能にする。
【課題を解決するための手段】
【０００７】
本発明の原理によると、１次元データストリームから同時多次元データストリームを生成するためのハードウェア装置であって、各々が１次元の画素データストリームを有し、Ｎ本の連続するラインの各々から所定数Ｍの画素がベース画素を含む水平ベースラインを有する２次元カーネルを形成する表示対象となる映像フレームの連続するスキャンされた映像データラインを受信する手段と、前記連続して受信したカーネルのラインから画素データを連続的に格納し、前記ベース画素を有する前記カーネルの垂直画素データラインを有する前記Ｎ本のラインの各々から、垂直的に揃えられた画素データを有するＮ個のパラレルな画素データをパラレルに連続的に出力するため生成する垂直データ処理手段と、前記垂直データ処理手段から出力され、前記ベース画素を有するベースラインに対応する垂直的に揃えられた連続する各パラレル画素データの単一のラインから画素データを連続的に受信し、前記カーネルの水平ベースラインに属する画素データを有するＭ個の画素データをパラレルに連続的に出力するため生成する水平データ処理手段と、前記垂直データ処理手段から出力される垂直的に揃えられた連続する各パラレル画素データから画素データを連続的に受信し、前記ベース画素を有する前記カーネルの第１及び第２対角線に属する画素データを有する画素データをパラレルに連続的に出力するため生成する対角データ処理手段と、前記ベース画素における映像画像の以降におけるリアルタイム処理を可能にするため、各々が前記カーネルのベース画素を有する垂直ラインパラレルデータ、水平ベースラインパラレルデータ、第１並びに第２対角パラレルデータの同時出力を可能にするタイミング手段とを有することを特徴とする装置が提供される。
【０００８】
本発明の課題、特徴及び効果は、添付された図面と共に与えられる以下の詳細な説明から当業者には明らかとなるであろう。
【発明を実施するための最良の形態】
【０００９】
図１は、本発明によるリアルタイム２次元映像処理１０のハードウェアアプローチの包括的なブロック図１０を示す。説明のため、本発明は例えば７２０Ｐ（プログレッシブ）配信映像規格を実現する高品位テレビシステムにより実現される。７２０Ｐ規格では、７２０本の垂直ラインが設けられ、各ラインは１２８０アクティブ画素を有する。しかしながら、水平及び垂直ブランキングインターバルを含む追加情報により、画素総数（例えば、１６５０×７５０）が増えるということは理解されるであろう。典型的なテレビ映像配信規格によると、映像画像データは水平方向には左から右に実行されるライン走査により、映像フレームの上から下に垂直方向にラインごとにシステムに入力される。図１は、１次元データストリーム１２としてシステムに入力される映像画像データを示す。
【００１０】
本発明による映像処理アルゴリズムでは、ブロック内の４つの方向（水平、垂直及び２つの対角（＋／−４５°）方向）に計算が行われることが求められる。ここではあるいはカーネルと呼ばれるこの画素ブロックは、Ｍ×Ｎのサイズを有する（例えば、Ｍはカーネルの水平サイズであり、Ｎはカーネルの垂直サイズである）。説明のため、Ｍ＝Ｎであることに留意されたい。図１に示されるように、１３×１３の映像画像ブロックが示される。しかしながら、本発明は他のＭ×Ｎの２次元カーネルサイズ、好ましくは、ＭとＮが奇数となるサイズに適用可能であるということは、カーネルがエッジ判定が行われるベース画素の周囲において対称的であることから理解されるであろう。
【００１１】
図１に示される一例となるシステムでは、パラレルに処理計算を実行する「Ａ」、「Ｂ」、「Ｃ」及び「Ｄ」とラベル付けされた４つの「算術」ブロックが設けられる。好ましくは、上記ブロック「Ａ」、「Ｂ」、「Ｃ」及び「Ｄ」の各々は、例えば、垂直（ブロックＡ）、水平（ブロックＢ）、＋／−４５°（ブロックＣ、Ｄ）などの単一の画素方向の計算を実行し、ベース画素におけるエッジの存在を決定する。好ましくは、エッジが検出されると、各ブロックは、幅、ダイナミックレンジ、遷移方向などのエッジパラメータをさらに決定する。従って図１において、これらの「算術的」計算ブロックが同一とされ、パラレル（または同期的）に機能するため、これらのブロックに入力されるデータストリームは、同一のフォーマットを有する必要があり、共通のタイムクロック１５に従って同期化される必要がある。
【００１２】
本発明のハードウェア実現によるパラレル処理のためのデータストリームの上記類似性を実現するため、画素再構成構造が与えられる。このような構造は、各受信ラインが映像フレームの１次元データストリーム１２から構成される典型的な配信規格に従う連続的に走査された映像データラインを受信する垂直ソースブロック１１（図１）を有する。映像ラインからあるデータ量を受信した後、垂直ソースブロック１１は、計算ブロック「Ａ」、「Ｂ」、「Ｃ」及び「Ｄ」により用いられるパラレルストリームを生成するのに処理されるＭ×Ｎ（例えば、１３×１３など）画素ブロックまたはカーネルを構成する。さらに詳細に説明されるように、垂直ソースブロック１１は、図２に示されるように構成される垂直遅延ブロック３０１とラインマルチプレクサ３０２を有する。垂直遅延ブロック３０１は、図３に示されるように構成されたメモリモジュール１０１とメモリコントローラ１０２を有する。メモリモジュール１０１は、図４に示されるように構成されたＮ個のラインメモリ２０１を含む。説明されるように、カーネル内部のベース画素におけるエッジを計算するための情報は、すでに受信されたラインに対する情報とまだ受信されていないラインに対する情報を必要とするため、ラインメモリを含む垂直ソースブロック１１が必要とされる。特に、垂直ソースブロック１１のメモリは、ベース画素を含む映像データライン３０の上位（以前）の６つのライン２０の各ラインからの画素データと、以降において受信されるカーネルのベース画素を含むライン３０の下位（以降）の連続する６つのライン４０に対する映像画素データである１３×１３のカーネルの場合では、既に受信されたカーネルのラインに対する映像画素情報を格納する必要がある。従って実施例では、１３本のラインの画素情報がカーネルを構成するため、図２の垂直遅延ブロック３０１にあるラインメモリに格納される。
【００１３】
図２及び３を参照して説明されるように、垂直遅延ブロック３０１は、メモリコントローラ１０２とメモリモジュール１０１を有する。ラインメモリのパフォーマンスは、垂直ブランク（Ｖ＿ｂｌａｎｋ）信号１８、水平ブランク（Ｈ＿ｂｌａｎｋ）信号１７及びクロック１５を含む制御信号を受信するラインメモリコントローラ１０２により制御される。垂直遅延ブロックメモリモジュール１０１は、図４に示されるようなラインメモリを含む。ラインメモリのパフォーマンスは、以下のようにラインメモリコントローラ１０２により制御される。垂直ブランキングインターバルの後、すなわち、Ｖ＿ｂｌａｎｋリセットパルス１８の受信後、フレームの垂直方向において現在のアクティブ映像ライン情報が受信されている位置を正確に把握できるように、受信したＨ＿ｂｌａｎｋパルス１７がカウントされる。従って、垂直ブランキングインターバルの後、所望のベース画素のカーネルの第１アクティブラインを有する映像フレームの垂直位置に対応するＨ＿ｂｌａｎｋパルスの受信に続いて、当該カーネルのすべての第１アクティブ映像ラインデータが、図４のＵ１とラベル付けされたラインメモリ＿１（２０１）に書き込まれる。ここで説明される１３×１３カーネルの実施例では、当該位置は図１に示されるようなベース画素を含むライン３０から６本までのラインである。次のＨ＿ｂｌａｎｋパルス１７の受信の直後に、カーネルの第２ライン（例えば、実施例のベースライン３０から５本までのラインなど）が、図４においてＵ２とラベル付けされたラインメモリ＿２（２０１）に書き込まれ、例えば、Ｎ番目のラインが図４のＵ１３とラベル付けされたメモリＮに書き込まれるまで（例えば、本例ではベースライン３０以下の６本のラインなど）、当該プロセスは継続する。映像スキャニングが進捗するに従い、（Ｎ＋１）番目のラインがメモリ１に書き込まれ、（Ｎ＋２）番目のラインがメモリ２に書き込まれることが理解される。すなわち、好適な実施例では、読出し動作は、カーネルのライン１からライン（Ｎ−１）までのすべてのデータが処理のため格納及び利用可能となると、Ｎ番目のラインのスタートから開始される。従って、メモリ１からメモリＮ−１までのデータは、Ｎ番目のアクティブ映像ラインにおけるデータの書き込み中にパラレルに読み出される。その後、（Ｎ＋１）番目のアクティブ映像ラインの書き込み中に、ラインメモリ２からラインメモリＮが読み出され、（Ｎ＋２）番目のライン中に、ラインメモリ１とラインメモリ３からラインメモリＮまでが読み出されるなどされる。ここで、図５に示されるように、あるライン時間中にアクティブな「書き込み」状態にあるラインメモリは、当該ライン時間中には読み出されないことに留意されたい。
【００１４】
特に図３に示されるように、メモリ制御ブロック１０２は、メモリモジュール１０１のラインメモリ２０１（図４のＵ１からＵ１３など）の読出し及び書き込み動作を制御するためのリードパルス４８とライトパルス４９を生成する。ＷＲ１〜ＷＲ１３とラベル付けされたこれらのラインメモリライトパルスのタイミングが図５の実施例において図示され、図示される第１アクティブラインライトパルスＷＲ１（カーネルのアクティブ映像ライン１のデータを書き込むための）が、Ｖ＿ｂｌａｎｋパルスの受信に即座に続き、次の連続するアクティブラインライトパルスＷＲ２が、前のパルス（ＷＲ１）のフォーリングエッジにおいてトリガーされる。当業者には既知であるように、当該プロセスはＨ＿ｂｌａｎｋパルスカウンタにより制御されてもよい。このプロセスは、図５に示されるように、ＷＲ１３が生成されるまで以降の各ライトパルスに対して繰り返される。図５において、パルスの期間は１ライン時間に対応することが理解される。図５に示されるように、アクティブラインＮ（Ｎ＝１３など）がパルス５９によって示されるように読み出されると、ラインメモリ１からＮ−１までにおけるデータが、ライン４８として示される各リードパルスＲＤ１〜ＲＤ１２のトリガーにより示されるように同時に読み出される（パラレルに）。次のカーネルシフトでは、新しいラインＮ＋１がＷＲ１パルス６９により示されるようにラインメモリ１に書き込まれるに従い、ラインメモリ２からＮまでにおけるデータが、各リードライン４８（ＲＤ２〜ＲＤ１２）のアクティブハイ状態と、パルス５８として示されるリードパルスＲＤ１３のトリガーにより示されるように、同時に読み出される（パラレルに）。新しいラインＮ＋１に対するラインメモリ１への書き込み期間では、ラインメモリ１の読出しはアクティブロー状態７０として示される状態変更によって回避されるということは理解される。以降の各ラインがラインメモリに書き込まれ、データライン４８がパラレルに読み出されるテいるとき、当該プロセスは継続する。従って、次のカーネルシフトでは、ラインＮ＋２はパルス７９に制御されるようにラインメモリ２に読み出され、ラインメモリモジュール１及び３からＮまでのリードパルスがアクティブとなり、そこに格納されている対応するデータがパラレルに読み出される。このとき、ラインメモリ２の読出しはアクティブロー状態７１などにより示される状態変更により回避されるということは理解される。「リード」及び「ライト」パルスの期間はまた映像ラインのアクティブ部分に等しいものであってもよく、これにより、メモリ長の保持、すなわち、ブランキング部分は格納されないということが理解されるべきである。これは、より高機能の「メモリ制御」ブロックを必要とするであろう。しかしながら、このアプローチが採用される場合、映像フレームのあらゆる側の１番目から５番目までの「境界」画素は非対称カーネルを有するであろう。理想的には、これらの画素に対して、データは「ミラーリング」され、すなわち、利用可能なデータがより高機能の制御を必要とする欠落位置に対称的に複製される。説明されている例では、ブランキング部分からのデータがこれらの「境界」カーネルに使用され、画像の可視部分が全体の画像解像度より２つの画素分だけ若干小さいとき、「オーバースキャン（ｏｖｅｒｓｃａｎ）」により利用者システムの大部分に受け入れ可能なものである。
【００１５】
図２を再び参照するに、ラインマルチプレクサブロック３０２は、垂直遅延ブロックメモリモジュール１０１（図３）のラインメモリ２０１からパラレルに出力された格納されている垂直データ５０を受信する。好ましくは、ラインマルチプレクサ３０２は、「算術」ブロックに入力されるデータが常にボトムライン（例えば、Ｎ＝１３、またはベース＋６）など）として現在の入力ラインを受け取り、前のライン期間に格納されているラインをその上の１ライン（例えば、Ｎ＝１２、ベース＋５など）として受け取るなどのため、Ｎ−１のライン時間前（例えば、ラインＮ＝１、またはベースライン−６など）に格納されたラインが、データが読み出されるラインメモリとは関係なく最上位のラインとして現れるように、ラインシーケンスを再構成する。従って、図５に関して説明されるメモリ制御下のライト及びリードポイントのシフトにより、ラインマルチプレクサ３０２は、データが正確なシーケンスにおいて常に出力され、ブロック（カーネル）が垂直方向にスムーズに移動することを保証する。図８に示されるような実施例では、当該処理（実際には、他の処理と共に）は、ＨＤＬにより符号化されてもよく、これを実現するのに必要なマルチプレクサ動作を制御する出力７８を生成するため、Ｈ＿ｂｌａｎｋ信号１７、Ｖ＿ｂｌａｎｋ信号１８及びクロック信号１５を受信するシンプルなカウンタ装置７７を有するようにしてもよい。
【００１６】
ここで、垂直ソースブロック１１の処理は、ベース画素、従ってカーネル、及びベース画素におけるエッジを決定するための２次元画素情報の利用性が、ある表示装置の映像処理システムにより実行されるような垂直方向の連続する各スキャンにより定期的に変化するように、リアルタイムな連続するプロセスであるということは理解されるべきである。
【００１７】
図２〜５に関してここで説明されるリアルタイム処理を実行すると、例えば、説明されている実施例では、垂直ライン画素がブロック（カーネル）のベースライン−６ラインに対応する上位ラインと、ベースライン＋６ラインに対応する下位ラインに対応して利用可能となる。当該垂直画素ラインから、水平ライン及び対角ラインの生成は、以下のようにしてリアルタイムに実行される。
【００１８】
特に図１に示されるように、カーネルの各垂直ラインから受信されるベース画素（画素カーネルのＮ＝７の位置における）が水平ラインを形成する。従って、垂直方向のカーネルのセンターラインである水平ラインが形成され、これはベースラインと呼ばれ、すべての「ベース」画素を含む。水平方向に「ベース」画素の周囲においてデータシーケンスを生成するため、当該ベースラインのデータは、対象となるベース画素が水平ラインの中間に対応するように、バス１６から画素が遅延される水平遅延回路２２に入力される。図６は、各遅延が１つのＤフリップフロップ４０１を有する直列接続されたＭ個の遅延回路（例えば、Ｍ＝１３など）を含むシリアルロード及びパラレルアンロードによるシフトレジスタを有する水平遅延回路２２の詳細図を示す。各レジスタは、図１に示されるような対応する「算術」ブロックＢへの出力４０２を有する。
【００１９】
２つの対角シーケンス（例えば、＋／−４５°）を生成するため、垂直ソースブロック１１の各出力は図１の対角ソースブロック３３に信号１９として供給される。図７に示されるように、対角ソースブロック３３は、各々が１クロック遅延５０１を有するＭ×Ｎ構成のシフトレジスタを有する。一般的なケースでは、Ｍ≠Ｎのとき（正方形のカーネルでないとき）、対角線の長さはＭとＮの短い方となるであろうということは理解される。この結果、以下のすべての式は、当業者の範囲内において対応して変更されるであろう。シフトレジスタ５０１は各遅延クロックサイクルに対して直列接続され、第１レジスタ５０５から第Ｎレジスタ５１０までの第１行におけるレジスタの個数はＭであり、レジスタ５１５から第（Ｎ−１）レジスタ５２０までの第２行のレジスタの個数はＭ−１などとなる。センターの長さは、Ｍ＝Ｎ＝１３の実施例では（Ｍ＋１）／２の直列接続、すなわち、レジスタ５２５から（Ｎ＋１）／２番目のレジスタ５３０の直列接続を有する。＋４５°方向の対角シーケンスを生成するため、１から（Ｍ＋１）／２までのシフトレジスタの最後の１クロック遅延の出力５５０ａ〜５５０ｇが、Ｎ番目のシフトレジスタの第１遅延の出力５６０ａ、（Ｎ−１）番目のシフトレジスタの第２遅延の出力５６０ｂ、（Ｎ−２）番目のシフトレジスタ第３遅延の出力５６０ｃなどと共に、レジスタ（Ｍ＋３）／２の出力５６０ｆが取得されるまでとられる。同様に、−４５°の対角方向では、シフトレジスタＮから（Ｍ＋１）／２（レジスタ５３０）の最後の遅延の出力５７０ａ〜５７０ｇが、第１シフトレジスタ５０５の第１遅延の出力５８０ａ、第２シフトレジスタの第２遅延の出力５８０ｂ、第３シフトレジスタの第３遅延の出力５８０ｃなどのレジスタ５８０ｆを含むレジスタと共にとられる。ここで説明されるように、対角ソースブロック３３により生成される２つの対角（すなわち、＋／−４５°）シーケンスのそれぞれの出力５５０ａ〜５５０ｇ、５６０ａ〜５６０ｆ及び５７０ａ〜５７０ｇ、５８０ａ〜５８０ｆが、図１に示されるようなエッジ検出計算ブロックＤに対する同時的なパラレル出力に対して同期された２次元情報として利用可能である。
【００２０】
さらに図１において、算術ブロックＡ〜Ｄへの同時入力のため、２次元水平パラレルデータと２次元対角パラレルデータの出力と２次元垂直ソースパラレルデータとを揃えるため、垂直ソースブロック１の出力を（Ｍ＋１）／２クロックサイクルだけ遅延させるために、垂直データ遅延ブロック４４が設けられるということが理解されるべきである。
【００２１】
本発明の好適な実施例と考えられるものが図示及び説明されたが、もちろん、本発明の趣旨から逸脱することなく形式または詳細に関する各種改良及び変更が容易に可能であるということは理解されるであろう。従って、本発明は説明及び図示されたそのままの形式に限定されるものではなく、添付された請求項の範囲内に属するすべての改良をカバーすると解釈されるべきである。
【図面の簡単な説明】
【００２２】
【図１】図１は、本発明によるリアルタイム２次元映像処理１０のためのハードウェアアプローチの包括的なブロック図１０を示す。
【図２】図２は、図１に示される垂直ソースブロック１１のコンポーネントを示す回路図である。
【図３】図３は、図２に示される垂直遅延ブロック３０１のコンポーネントを示す回路図である。
【図４】図４は、図３に示される垂直遅延ブロックメモリモジュール１０１を有するラインメモリコンポーネントを示す回路図である。
【図５】図５は、カーネルに対するデータの取得を制御するよう動作するラインメモリリード及びライトパルスのタイミングを示す。
【図６】図６は、図１に示される水平遅延回路２２の詳細図を示す。
【図７】図７は、カーネルに対する対角データを生成するのに利用可能な図１の対角遅延回路３３の構成を示す。
【図８】図８は、カーネルの垂直データが正しいシーケンス（すなわち、図２のブロック３０２の「内部」）によりマルチプレクサにおいて出力されることを保証する一例となる回路を示す。
【図９】図９は、所定の解像度により映像フレームの画素を有し、ベース画素９９についてのカーネル１００を示す一例となる表示９８を示す。
【図１】
2006520152.tif 000003
【図２】
2006520152.tif 000004
【図３】
2006520152.tif 000005
【図４】
2006520152.tif 000006
2006520152.tif 000007
2006520152.tif 000008
【図５】
2006520152.tif 000009
【図６】
2006520152.tif 000010
【図７】
2006520152.tif 000011
2006520152.tif 000012
2006520152.tif 000013
2006520152.tif 000014
【図８】
2006520152.tif 000015
【図９】
2006520152.tif 000016
【国際調査報告】
2006520152.tif 000017
2006520152.tif 000018