(57)【特許請求の範囲】
【請求項１】
イメージ・プロセッサであって、グラフィック・オブジェクトを処理するように構成された第１の複数ステージを含むグラフィックス・パイプラインと、ビットマップ・イメージを処理するように構成された第２の複数ステージを含むビットマップ・イメージ・パイプラインと、前記パイプラインの１つに含まれる前記ステージの選択された１つ又は複数の出力を、前記パイプラインの１つに含まれる前記ステージの選択された別の１つ又は複数の入力に提供するためのイメージ・パスを定義する、選択的に構成可能な相互接続マトリックスを備えるイメージ・プロセッサ。
【請求項２】
前記第１の複数ステージのそれぞれが他のステージと異なっており、走査変換、クリッピング、ビューポートへのウィンドウ処理、投影、ソート処理などのステージのグループから選択される請求項１に記載のイメージ・プロセッサ。
【請求項３】
前記第２の複数ステージのそれぞれが他のステージと異なっており、モザイク解除、色補正／ホワイト・バランス、全領域マッピング、階調補正、フレア補正、色変換、スケーリングなどのステージのグループから選択される請求項１に記載のイメージ・プロセッサ。
【請求項４】
さらに、出力ステージが前記パイプラインのそれぞれの出力に接続される請求項１に記載のイメージ・プロセッサ。
【請求項５】
前記相互接続が、前記第１の複数ステージの１つ又は複数の出力を、前記第１の複数ステージの次の１つ又は前記第２の複数ステージの選択された１つにルーティングし、記第２の複数ステージの１つ又は複数の出力を、前記第２の複数ステージの次の１つ又は前記第１の複数ステージの選択された１つにルーティングするように構成できるスイッチング・マトリックスを備える請求項１に記載のイメージ・プロセッサ。
【請求項６】
前記グラフィックス・パイプラインがグラフィックス識別データとグラフィックス位置データを含むグラフィックス・データを受信するように構成され、前記ビットマップ・イメージ・パイプラインがピクセル輝度情報を表すラスター・スキャン・イメージ・データを受信するように構成される請求項１に記載のイメージ・プロセッサ。
【請求項７】
グラフィックス・データ形式とビットマップ・イメージ・データ形式との変換を行うように構成されたデータ・フォーマット・コンバータをさらに備える請求項１に記載のイメージ・プロセッサ。
【請求項８】
前記ビットマップ・イメージ内のグラフィック・イメージを識別し、コード化するように構成された画像認識ステージをさらに備える請求項１に記載のイメージ・プロセッサ。
【請求項９】
前記グラフィックス・パイプラインとビットマップ・イメージ・パイプラインの間で、前記グラフィック・オブジェクトと前記ビットマップ・イメージ・オブジェクトの少なくとも１つをルーティングする前記相互接続を制御するように動作できる共通の命令デコーダをさらに備える請求項１に記載のイメージ・プロセッサ。
【請求項１０】
画像処理の方法であって、グラフィックス・パイプラインのステージの１つ又は複数と、ビットマップ・イメージ・パイプラインのステージの１つ又は複数を通過するイメージ・パスを確立するためのパイプライン相互接続マトリックスを選択的に構成するステップと各パイプラインの少なくとも１つのステージを通過する前記イメージ・パスに沿って送信することで画像を処理するステップを含む方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は一般に画像処理に関し、特にオブジェクト指向グラフィックス処理パイプラインとラスター・グラフィックス処理パイプラインを組み合わせるための装置と方法に関する。
【０００２】
【従来の技術】
画像は、一般的にラスター・グラフィックス（ビットマップ・データ）とグラフィック・オブジェクトの２種類の画像情報のいずれかを使用して表現され、表示される。通常、コンピュータで生成されるデジタル画像は赤、緑、青（ＲＧＢ）の燐ドットの三原色を使用して表示装置（モニタ）に表示される。コンピュータの表示装置はピクセルの行と列で構成される。各ピクセルは燐ドットの三原色（ＲＧＢ）である。各ピクセルの赤、緑、青の輝度を制御し、コンピュータの表示装置で様々な色をシミュレートする。デジタル画像は、ピクセルを構成する３つのドットの三原色のそれぞれについてアドレスを指定し、ＲＧＢの輝度を定義することによってコンピュータの表示装置に表示される。
【０００３】
ピクセルの照度に関する情報は、生のラスター・データとしてコンピュータから表示装置に送信される。この情報は、ＲＧＢピクセルの輝度で構成されており、通常、コンピュータ画面の左上のピクセルから始まってコンピュータ画面最上部の１行目に配置された後続の各ピクセル・グループに関する赤、緑、青のピクセル輝度値が続く。１行目が完了すると、生のラスター・データはコンピュータ画面の２行目の１番左に配置されたピクセルに続き、同様にコンピュータ画面内の各ピクセル・グループについて、生のラスター・データからピクセル・グループの各ピクセルの輝度値が指定される。コンピュータはこうしてコンピュータ画面に表示されるデジタル画像を生成し、ユーザーはこれを画像として認識する。この種のピクセル照度情報は、一般に「ビットマップ」イメージと呼ばれる。すなわち、画面上の各ピクセルは、表示装置のピクセル・レイアウトに対応する２次元メモリ配列に格納された値にマップされる。各メモリ要素には、０から２５５までの対応するピクセル輝度値が格納される。
【０００４】
デジタル・カメラやデジタル・カムコーダなどの入力装置には、４つのカラー・センサー（緑を感知する左上のセンサー、青を感知する右上のセンサー、赤を感知する左下のセンサー、緑を感知する右下のセンサー）をグループ化したＢａｙｅｒパターンを実装するＢａｙｅｒフィルターを使用できる。センサーの要素は既知のパターンで繰り返される。前述のＢａｙｅｒパターンは、赤、緑、青ピクセルの位置を指定する標準入力のセンサー・カラー・フォーマットであるが、通常の当業者はこのパターンの様々な並べ替えが可能であり、コンピュータ業界全体で使用されていることを理解できるであろう。
【０００５】
コンピュータは、センサーから取り込まれた生のビットマップ・イメージに対して多くの処理や手順を実行することで、画像全体の美的価値を向上できる。例えば、４つのセンサーによるＢａｙｅｒグループのフィールドから得られた色（センサー自体の強さによって決まる）を周囲のセンサーの色と比較し、抽出されたＲＧＢ三原色の輝度値を確立及び調整して人物の顔の色合いなどの色が必ず緩やかに変化するようにしてから、最終的にデジタル画像として表示することができる。色の要素の輝度を調整することによって、センサーまたはピクセル・グループから得られた色を調整する各ステップは、全体としてビットマップ・パイプライン又は生のラスター・パイプラインを確立する。デジタル画像を構成するビットマップ・イメージは、コンピュータにとっては一連の色の輝度値である。
【０００６】
コンピュータは、一般にオブジェクト指向グラフィックスを使用してグラフィック・イメージを生成し、点、線、多角形、英数字、特殊記号、フォントなどの１つ又は複数のグラフィック基本形（primitives）を作成し、さらにこれらの基本的なグラフィック基本形を組み合わせて画像全体を表現することができる。例えば、標準のグラフィック基本形オブジェクトである正方形は、サイズ、位置、線、塗りつぶしの色など、該当する正方形を構成するのに必要なデータとして表され、正方形のグラフィック・イメージを構成する。しかし、グラフィック・イメージに含まれる人物は、多くの独立したグラフィック基本形から構成されており、全体として複数の基本形から構成される別の複雑なオブジェクト（ここでは人物）を表現する。現在では、ビットマップ・グラフィックス又はラスター・グラフィックスによるデジタル画像をオブジェクト指向グラフィック表現によるデジタル画像に変換する認識ソフトウェアが存在する。変換のアルゴリズムの機能は様々であり、デジタル画像のグラフィック表現は変換に使用するアルゴリズムの機能の直接的な関数である。例えば、このアルゴリズムを人物のデジタル画像に使用する場合、人物のグラフィック・イメージの外観の質は人物のラスターによるデジタル画像を人物のオブジェクト指向グラフィック表現に変換するアルゴリズムの質の直接的な関数である。
【０００７】
デジタル画像をオブジェクト指向グラフィック表現に変換すると、コンピュータはデジタル画像を表現する様々な基本形の位置と向きを変えることでグラフィック表現の動きをシミュレートできる。例えば、人物のデジタル画像をグラフィック表現に変換すると、その人物の足を表すオブジェクト指向グラフィック基本形オブジェクトの向きを変更することで歩いている人物をシミュレートできる。グラフィック・イメージが複雑になり、シミュレートする動きが向上すると、グラフィック・イメージ全体の質がリアルな画像すなわち人工的でない画像に近付く。
【０００８】
コンピュータ画面に表示されるグラフィック・データは、多くのステージを経て画像全体の外観が向上する。換言すれば、グラフィック・イメージがグラフィックス・パイプラインを通過する間に、グラフィック・イメージ全体の外観を向上し、様々な補正を施し、基本形要素や構成コンポーネントを１つの画像に統合することができる。
【０００９】
前述のように、コンピュータ画面に表示される画像は、通常、オブジェクト指向グラフィック・イメージ又はビットマップ（ラスター・スキャン）イメージから生成される。ビットマップ・イメージが表示される場合は、ビットマップ・パイプラインすなわちラスター・パイプラインを使用してピクセルの色の輝度を調整してからコンピュータ画面に画像が表示される。オブジェクト指向グラフィック・イメージが表示される場合は、グラフィック・イメージはグラフィックス・パイプラインを通過して基本形を合成画像に統合してから表示される。従来技術によるシステムでは、今日のテレビの「ピクチャ・イン・ピクチャ」機能と同様に、画面上でビットマップ・イメージを表示できる部分又はウィンドウとオブジェクト指向グラフィック・イメージを表示できる部分又はウィンドウが分離されており、２種類の画像は別々のグラフィック・パイプを通過してくるため、画面の１つの領域又はウィンドウに表示される画像は依然としてビットマップ・イメージとオブジェクト指向グラフィック・イメージのいずれかである。
【００１０】
【発明が解決しようとする課題】
オブジェクト指向（ベクトル）とビットマップ（ラスター）の両方のグラフィックスや画像を交互に効果的かつ効率的に処理することが望まれる場合には問題がある。
【００１１】
【課題を解決するための手段】
オブジェクト指向とビットマップの両方のグラフィックスや画像を効果的かつ効率的に処理する必要がある場合は、オブジェクト指向（「ベクトル」）のグラフィックス・パイプラインとラスター・スキャン（「ビットマップ」イメージ）パイプラインのいずれか又は両方の選択されたステージで画像データを処理できるように、両方のパイプラインを組み合わせたシステムと方法によって目的が達成される。すなわち、オブジェクト指向グラフィックス・パイプラインにはグラフィック・データを順次処理するよう構成されたいくつかの処理ステージを含めることができ、グラフィックス・データには点、線、多角形、英数字、特殊記号、フォントなどの１つ又は複数のグラフィック基本形を生成するためのデータを含めることができる。オブジェクト指向グラフィックス・パイプラインのグラフィック処理ステージの例には、走査変換、クリッピング、ビューポートへのウィンドウ処理、投影、ソート処理の組み合わせ又は部分的な組み合わせを含めることができる。他の機能や代わりの機能などを代用又は併用してもよい。同様に、ビットマップ・パイプラインすなわちラスター・スキャン・パイプラインには、複数のピクセル輝度値や他のピクセル特性で画像を表すビットマップ・データを順次処理するように構成されたいくつかの処理ステージを含めることができる。これらのビットマップ・パイプラインすなわちラスター・スキャン・パイプラインの処理ステージには、（ｉ）モザイク解除（demosaicing）、（ｉｉ）色補正／ホワイト・バランス、（ｉｉｉ）全領域（gamut）マッピング、（ｉｖ）階調補正、（ｖ）フレア補正、（ｖｉ）色変換、（ｖｉｉ）スケーリングの組み合わせ又は部分的な組み合わせを含めることができる。他の機能や代わりの機能などを代用又は併用してもよい。プロセッサは、それぞれのパイプラインを経由して選択的にステージを連結し、必要なデータ変換（ビットマップ・イメージからオブジェクト指向グラフィック・データを形成するための多角形認識と多角形変換、及びオブジェクト指向グラフィック・データ形式からビットマップ・データ形式への同様の変換）を行って各パイプラインのステージ間でデータを「クロスオーバー」することができるので便利である。
【００１２】
本発明の１つの態様に従って、イメージ・プロセッサは、グラフィック・オブジェクトを処理するように構成された第１の複数ステージを含むオブジェクト指向グラフィックス・パイプラインと、ビットマップ・イメージを処理するように構成された第２の複数ステージを含むビットマップ・イメージ・パイプラインを備えることができる。相互接続は、パイプラインの一方（グラフィックス・パイプライン又はビットマップ・イメージ・パイプライン）のステージの１つの出力を、同じパイプラインの選択された次のステージかデフォルトの次のステージ（ある場合）の入力に、又は他方のパイプラインの選択されたステージ（１つ以上）に提供するように選択的に構成できる。本発明の１つの機能に従って、第１の複数ステージのそれぞれ（グラフィックス・パイプラインの各ステージ）は、異なる機能を実行できる。これらの機能には、走査変換、クリッピング、ビューポートへのウィンドウ処理、投影、ソート処理などの（しかし必ずしもこれらに限定されない）グループの１つ又は複数が含まれる。同様に、本発明のもう１つの機能に従って、第２の複数ステージのそれぞれ（ビットマップ・イメージ・パイプラインの各ステージ）は、異なる機能を実行できる。これらの機能には、モザイク解除、色補正／ホワイト・バランス、全領域マッピング、階調補正、フレア補正、色変換、スケーリングなどの（しかし必ずしもこれらに限定されない）グループの１つ又は複数が含まれる。
【００１３】
本発明のもう１つの機能に従って、出力ステージにはそれぞれのパイプラインの出力（グラフィックス・パイプラインとビットマップ・イメージ・パイプラインの選択されたステージの出力）を接続できる。パイプライン間の相互接続には、第１の（グラフィックス）複数ステージの１つ又は複数の出力を、第１の（グラフィックス）複数ステージの指定された次の１つ又は選択された次の１つと、第２の（ビットマップ・イメージ）複数ステージの選択された１つにルーティングするように構成できるスイッチング・マトリックスを含めることができる。同様に、このスイッチング・マトリックスは、第２の（ビットマップ・イメージ）複数ステージのいくつかの出力を、第２の（ビットマップ・イメージ）複数ステージの次の１つと、第１の（グラフィックス）複数ステージの選択された１つにルーティングするよう構成できる。本発明のもう１つの機能に従って、グラフィックス・パイプラインは、グラフィック識別データとグラフィック位置データを含むグラフィック・データを受信するよう構成され、ビットマップ・イメージ・パイプラインは、ピクセル輝度情報を表すラスター・スキャン・イメージ・データを受信するよう構成される。データ・フォーマット・コンバータを配置し、オブジェクト指向グラフィックス・データ形式とビットマップ・イメージ・データ形式とを、いずれか一方から一方向に、又はいずれか一方の形式から他方の形式に双方向に、変換するように構成することもできる。
【００１４】
本発明のもう１つの機能に従って、画像認識ステージはビットマップ・イメージ内でオブジェクト指向グラフィック・イメージを識別し、コード化するように構成できる。例えば、画像認識ステージでは、ビットマップすなわちラスター・ベースの表現内で多角形、多面体、線、面、曲線、孤、点、ベクトル、キャラクタ、記号や他の基本形を含む基本形要素や形状と、合成されたグラフィック構造を認識し、同じものを適切なオブジェクト指向グラフィック・データ表現に変換することができる。変換には変換された部分を元のビットマップから削除する作業を含めることができるので、変換されたオブジェクトがグラフィックス・パイプラインで処理される間にビットマップ・イメージの残りの部分を適切に処理できる。共通の命令デコーダによって相互接続（たとえば、スイッチング・マトリックス）を制御できるので、グラフィックスとビットマップ・イメージの両方のパイプラインの間でグラフィック・オブジェクトとビットマップ・イメージ・オブジェクトの少なくとも１つをルーティングできる。
【００１５】
本発明のもう１つの態様に従って、画像処理の方法に、オブジェクト指向グラフィックス・パイプラインのステージの１つ又は複数とビットマップ・イメージ・パイプラインのステージの１つ又は複数の選択的な構成を含めることができる。結果として得られる構成では、一方のパイプラインの１つのステージの出力が、他方のパイプラインの１つのステージの入力に送信され、各パイプラインの少なくとも１つのステージを経由して画像を送信することで画像を処理できることになる。
【００１６】
本発明の１つの機能に従って、グラフィックス・パイプラインの各ステージで実行される処理は、このパイプラインの別のステージで実行される処理とは異なり、走査変換、クリッピング、ビューポートへのウィンドウ処理、投影、ソート処理を含む（しかしこれらに限定されない）処理のグループから選択できる。同様に、ビットマップ・イメージ・パイプラインの各ステージで実行される処理は、別のステージで実行される処理とは異なり、モザイク解除、色補正／ホワイト・バランス、全領域マッピング、階調補正、フレア補正、色変換、スケーリングを含む（しかしこれらに限定されない）処理のグループから選択できる。
【００１７】
本発明のもう１つの機能に従って、ステップを組み合わせることで、両パイプラインの出力によって提供される信号すなわちデータからマージ出力を形成できる。
【００１８】
本発明のもう１つの機能に従って、選択的にパイプラインを構成するステップで、１つ又は複数のステージの出力を、次の１つのステージに、又は他方のパイプラインの選択された１つのステージに選択的にルーティングすることができる。オブジェクト指向グラフィックス・データはグラフィックス識別データとグラフィックス位置データを含む形式でグラフィックス・パイプラインを通過し、かつ／または個々のピクセル特性（たとえば、輝度、色、他のピクセル表示情報など）を表すラスター・スキャン（ビットマップ）イメージ・データはビットマップ・イメージ・パイプラインを通過する。オブジェクト指向グラフィックス・データ形式とビットマップ・イメージ・データ形式間の変換用に変換のステップを含めることができる（いずれか１方向又は双方向のデータ変換を行う）。画像認識のステップによって、ビットマップ・イメージ内のグラフィック・イメージを識別し、コード化するための準備ができる。本発明のもう１つの機能に従って、相互接続を制御するステップで、グラフィックス・パイプラインとビットマップ・イメージ・パイプラインの間でグラフィック・オブジェクトとビットマップ・イメージ・オブジェクトのいずれか（又は両方）をルーティングできる。
【００１９】
本発明のもう１つの態様に従って、プロセッサは２つのパイプライン方式を備えることができる。第１のパイプライン方式はオブジェクト指向グラフィック・オブジェクトを処理する複数のグラフィック・イメージ処理方式を備えることができ、第２のパイプライン方式はビットマップ・イメージを処理する複数のビットマップ・イメージ処理方式を備えることができる。相互接続方式は、一方のパイプライン方式の１つの処理方式の出力を、他方のパイプライン方式の１つの処理方式の入力に選択的に接続できる。
【００２０】
以上、後述の発明の実施の形態をより深く理解するために、本発明の特定の機能と技術的な利点について広く概要を示した。本発明の特許請求の範囲の対象となるその他の機能と利点については以下で説明する。開示された概念と特定の実施態様が本発明の同じ目的を達成するために他の構造を変更又は設計する基礎として直ちに使用できることを、当業者は理解するであろう。このような均等の構造が前述の特許請求の範囲に規定される本発明の趣旨と適用範囲を逸脱しないことも、当業者は理解するであろう。
【００２１】
【発明の実施の形態】
ここで添付の図と後述のその説明を参照することによって、本発明をより詳細に理解できる。
【００２２】
デジタル画像を表示するには、ビットマップ・パイプラインすなわちラスター・パイプラインを使用してビットマップ・イメージを処理し、赤、緑、青のピクセル情報を含む表示可能な画像を取得する必要がある。ビットマップ・パイプラインには多くのステップが含まれており、画像はこれらのステップで修正され、処理され、結果として精密で写実的で満足を与える画像の表示が保証される。例えば、デジタル・ビデオの表示では、通常、１秒間に３０デジタル画像フレームが表示され、各デジタル画像は後述のラスター・パイプラインを通過する。デジタル画像又はフル・モーション・デジタル・ビデオやパーシャル・モーション・デジタル・ビデオを表示するコンピュータでは、１つ又は複数のデジタル画像はコンピュータの表示モニターに表示されるデジタル画像を構成するピクセルの輝度値の組み合わせとして解釈される。新たな処理を実行しないと、コンピュータはデジタル画像又はデジタル・ビデオのオブジェクトを認識しない。
【００２３】
しかし、コンピュータが実行できるビットマップ・デジタル画像の変更は限定的である。コンピュータはデジタル画像を一連の輝度値として解釈するので、コンピュータは輝度の値を増大又は減少することで結果として表示される色をそれぞれ濃くしたり薄くしたりできる。
【００２４】
図に示すのは、本発明の実施態様に従ってビットマップ・パイプラインの処理ステージとオブジェクト指向グラフィックス・パイプラインの処理ステージを備える複合パイプラインである。複合パイプラインには相互接続が含まれており、相互接続によってパイプラインの１つのステージの出力を別のステージに送信してさらに処理することができる。例えば、Ｂａｙｅｒパターンのビットマップ・イメージ形式の画像１０１がモザイク解除ステージ１０２で従来のビットマップ・パイプライン１００に入るのが示されている。モザイク解除ステージ１０２では、各ピクセルのＢａｙｅｒパターンの入力要素の赤、緑、青の三原色の輝度を変換し、アーティファクト（artifacts）（あらかじめ指定された輝度値の影響）を補償する。従来のビットマップ・パイプラインでは、モザイク解除ステージ１０２から出力された輝度値は、色補正とホワイト・バランスのステージ１０３に進む。色補正とホワイト・バランスのステージ１０３では、処理ソフトウェアがビットマップ全体のホワイト・バランスを検査し、白を表示するために組み合わせる各ピクセルの構成要素である色が適正な輝度を持ち、実際にその組み合わせが白として表示されることを保証する。さらに、他の色の輝度は、表示される色が意図した実際の色に、できるだけ近付くように、赤、緑、青の構成要素の輝度を調整することによって補正される。
【００２５】
様々な装置によって特定の色が様々に作成されるので、全領域マッピング・ステージ１０４で様々なプラットフォーム間の色の違いを補正する。この補償によって、コンピュータ画面、プリンタ、プロッタなど、画像が表示又は記録される任意の装置を含めて、様々な装置間の違いが修正される。全領域マッピング１０４の目的は、ある色空間と別の色空間との間に発生し得る違いを除去し、デジタル画像で表示される色が正確に作成されるようにすることである。すなわち、コンピュータ画面に表示されるデジタル画像は印刷されたコピーのデジタル画像と同じ色合いを持つ必要がある。全領域マッピング・ステージ１０４は、画像の忠実なレンダリングを促進するためのものである。
【００２６】
階調補正ステージ１０５はビデオ用のパイプラインにも含まれ、２つのピクセルが同じ色を表す場合にピクセル間の色の変化を除去又は緩和する。例えば、図の中心に正方形の赤い箱があり、箱全体の色が均一な場合は、階調補正によって正方形の赤い箱を構成するピクセルの色の構成要素をチェックし、赤、緑、青の構成要素の輝度を調整して同じ色になるようにする。
【００２７】
フレア補正ステージ１０６は生のイメージのパイプラインにも含まれ、元の画像における白色光の効果とその白色光が結果の画像にどう影響するかを制御する。例えば、前述の正方形の赤い箱の部分が白色スポットライトで照らされ、赤い箱の別の部分がスポットライトの光の外側にある場合、白色スポットライトの存在は正方形の赤い箱の赤の濃淡（shade）には影響せず、赤い箱の該当する部分自体の照度だけに影響するはずである。フレア補正ステージ１０６では、色の各構成要素の輝度を調整し、結果の色が他の照明状態においてピクセル間で適正な釣り合いが保たれるようにする。
【００２８】
色変換ステージ１０７では１つのオブジェクトの色むらを補償する。スケーリング・ステージ１０８はビデオのパイプラインに含まれ、所望の表示装置又は出力装置に合わせてデジタル画像をスケーリングする。ただし、複合パイプラインのビットマップ・パイプライン１００に含まれるステップは、考えられるラスター・イメージすなわちビットマップ・イメージを処理する例、及びその処理を別個のステージに分割する例として示されており、各ステージは特定のデジタル画像を処理するために使用され、表示されるデジタル画像のいずれを処理するときにも必要というわけではない。さらに、複合パイプラインに含まれるビットマップ・パイプライン１００は、処理ステップを実行する１つの順序に過ぎない。例えば、階調補正ステージ１０５は全領域マッピング・ステージ１０６の前に実行してもよい。全領域マッピング１０６では目的の出力装置についての情報が必要である。一部の例では、全領域マッピングをビットマップ・パイプライン１００の最後のステップにすることもできる。ビットマップ・パイプラインで特定のデジタル画像を処理するステージの順序やステージの数も変更できる。１つの実施態様に従って、前述の各ステージはビットマップ・パイプラインに含まれ、適切な補正を行うのが好ましい。
【００２９】
複合パイプライン構造には、オブジェクト指向グラフィックス・パイプライン１０９も含まれる。２つの端点ｘ１、ｙ１、ｚ１とｘ２、ｙ２、ｚ２で定義される線１１０など、最初のオブジェクト指向グラフィック・イメージは、走査変換ステージ１１１でグラフィックス・パイプライン１０９に入る。線の場合は、走査変換ステージ１１１で線１１０に沿ったすべての点を表す想像上の線がアルゴリズム的に描かれる。アルゴリズム的に線が決定すると、線の画像を構成するピクセルが識別され、レンダリングされる。レンダリングは、画像に写実的な外観を与えるように、幾何学的なモデルを使用し、色と影を使用する画像の作成を表す用語である。走査変換ステージ１１１の全体的な機能には、多角形の画像をレンダリングするための多角形など、リンクのない形状の幾何学的描写を変形するプロセスを含めることができる。
【００３０】
クリッピング・ステージ１１２は、イメージ・ウィンドウが定義され、特定のイメージ・ウィンドウの外側にある、レンダリングする画像の部分をレンダリングする画像から削除する場合に実行される。クリッピング・ステージには多くの様々なアルゴリズムが適用される。クリッピングでは、ユーザーが定義した大きさと形状のウィンドウを使用して定義空間の外側にある部分の画像をインテリジェントに削除できる。
【００３１】
ビューポートへのウィンドウ・ステージ１１３では、直交座標（一般的にｕとｖ）が定義され、グラフィック・イメージを取り囲む空間を定義する。空間が定義されると、定義された空間の幾何変換を実行する一連のアルゴリズムを適用することによってその空間が正規化される。正規化された空間を使用すると、投影ステージ１１４で実行される投影の複雑性が最小化される。
【００３２】
投影ステージ１１４では、グラフィック・オブジェクトを見るための様々な投影又は視点を定義し、様々な視点から見たグラフィック・オブジェクトやグラフィック・オブジェクトの部分を表示する。投影ステージ１１４では、正規化された幾何学的形状が、そこから光線が投影される投影の中心と対になり、幾何学的形状の投影の中心から見える部分が識別される。例えば、背面クリッピング平面が定義され、ここに画像の背面又は背後から見た画像の形状を含む画像の投影が生成される。同様に、前面クリッピング平面が定義され、ここに前面から見た画像の投影が取り込まれる。２次元の視点又は３次元の視点からの投影が可能である。一般に、平行投影が使用される。平行投影では、投影の中心が無限遠と定義される。平行投影を利用することにより、オブジェクトの投影は視点が空間の１点でなくオブジェクトの表面に面平行であるように表示できる。投影の中心は、事前に定義してもユーザーが決定してもよい。
【００３３】
一般に、ソート・ステージ１１５はビュー参照点を定義した後に配置される。ビュー参照点は、オブジェクトの投影が表示画面に表示される起点を定義する。ビュー参照点が定義されると、投影ステージ１１４で作成される画像の投影が並べ替えられ（ソートされ）、ビュー参照点からの適切な投影を識別する。例えば、ソート・ステージ１１５で使用するアルゴリズムの１つは、ビュー参照点から見てグラフィック・オブジェクトの後ろになる面を除去する背面選択アルゴリズムである。ソート・ステージ１１５は、グラフィック・イメージの表示される部分を決定するアルゴリズム群である。一般に、様々な奥行きのグラフィック・オブジェクトを想定して適宜表示するための奥行きソート処置アルゴリズムも含まれる。ビュー参照点は、事前に定義してもユーザーが決定してもよい。
【００３４】
オブジェクト指向グラフィックス・パイプライン１０９の出力とラスター・パイプライン１００の出力は、結合してマージ出力１１６を形成する。マージ出力は、グラフィックス・パイプライン１０９かラスター・パイプライン１００のいずれかの最終出力ステージから得られる。代替的に、マージ出力は適切な手段でインターリーブされた２つのパイプラインの出力である。従って、マージ出力１１６はコンピュータ画面又は他の任意の装置に表示できる。
【００３５】
複合パイプラインにはルーティング・マトリックス１４０を形成する交差接続１１７及至１３９が含まれており、ラスター・パイプラインのステージとグラフィックス・パイプラインのステージの間に存在する。ルーティング・マトリックス１４０は制御ロジック１４１で制御される。制御ロジックには、ルーティング・マトリックス１４０で実現されるパイプライン・ステージ間の相互接続を定義するための構成レジスタ１４２が含まれる。制御ロジック１４１には、特定の画像データが複合パイプラインを通過するパスの自動制御を含めることができる。このパスは、（所定又はユーザー制御）アプリケーション・ソフトウェア設定で制御しても、（所定又はユーザー制御）オペレーティング・システム設定で制御しても、画像データ、入力装置、出力装置の１つ以上の特性に依存する確立済みの規則に基づいて制御してもよい。
【００３６】
これらの接続によって、各パイプラインから得られた画像データは複合画像に変換され、複合パイプラインの任意のステージで処理できる。例えば、モザイク解除ステージ１０２の処理を終えると、結果のビットマップ・イメージ・データは、デジタル画像を表す一連の色の輝度値になる。これらの輝度値はパス１１７を介して走査変換ステージ１１１に送られる。走査変換ステージ１１１で、一連のＲＧＢ値からなる画像はソフトウェアがビットマップ・イメージ内に含まれるオブジェクト指向グラフィック・オブジェクトを認識できるように処理される。このオブジェクト認識ソフトウェアはステージ１４３に存在し、ビットマップ・パイプライン１００のステージの出力に双方向で接続される。例えば、元のデジタル画像が人物のデジタル画像である場合は、多くのピクセル１０１がモザイク解除ステージ１０２で処理される。この一連のピクセルがデジタル画像の処理後に走査変換ステージ１１１に送られ、デジタル画像に含まれる人物の画像は元のビットマップ・デジタル画像に近い一連のオブジェクト指向の幾何学的形状（基本形）に変換される。この変換が完了すると、走査変換ステージ１１１で幾何学的オブジェクトがデジタル画像に含まれる人物の３次元表現に変換される。これで、３次元表現はグラフィックス・パイプライン内の他の任意のステージで適宜処理できる。
【００３７】
代替的に、パイプラインの様々なステージ間のデータのルーティングは、ルーティング・マトリックス１４０を使用する代わりに、処理する画像データにルーティング情報を複合パイプライン内のパスを定義するルーティング・タグなどの形で付加又は関連付けすることによっても実現できる。
【００３８】
逆に、走査変換ステージ１１１で線の形のグラフィック基本形１１０を受信した場合は、一般にその線の３次元表現が走査変換の最終的な結果である。ユーザーがその３次元の線を色補正／ホワイト・バランス・ステージ１０３に送信する場合は、その３次元の線がデジタル形式で線を表すビットマップ表現に変換される。この変換は、オブジェクト指向グラフィックス・パイプライン１０９の各ステージの出力に双方向で接続されるデータ・フォーマット・コンバータ１４４によって実行される。これで、このＲＧＢ４ピクセル表現をビットマップ・パイプライン１００の他の任意のステージを経由して送信し、画質を向上することができる。
【００３９】
代替的に、画像を表す２つの方法の望ましい属性を備え、コンピュータがオブジェクト指向グラフィック形式のオブジェクトを認識及び操作でき、しかもコンピュータ画面にビットマップ・イメージ形式で画像を正確に描くことができる複合形式を作成できるのが好ましい。この複合形式を使用すると、通常はビットマップ・パイプラインに含まれるステージにユーザーが画像を送信するたびにグラフィック表現からＲＧＢピクセル表現に画像を変換する必要性も、グラフィックス・パイプラインのステージを使用する場合に画像をＲＧＢビットマップ表現からオブジェクト指向グラフィック（又は多角形）表現に変換する必要性もなくなる。この複合形式は、ＲＧＢラスター空間とオブジェクト指向グラフィック空間とのマッピングであるのが好ましい。複合形式によって、２つの形式のスーパーセットを構成することもできる。
【００４０】
本発明の開示によって通常の当業者が理解するように、ここで説明した当該の実施態様と事実上同じ機能を実行するか事実上同じ結果をもたらす既存の又は後に開発されるプロセス、機械、製品、組成物、手段、方法、ステップは、本発明に従って利用できる。従って、特許請求の範囲により、当該のプロセス、機械、製品、組成物、手段、方法、ステップをそれらの適用範囲内に含むものとする。
【００４１】
本発明の態様を以下に例示する。
【００４２】
１．イメージ・プロセッサであって、グラフィック・オブジェクトを処理するように構成された第１の複数ステージ（１１１、１１２、１１３、１１４、１１５）を含むグラフィックス・パイプライン（１０９）と、ビットマップ・イメージを処理するように構成された第２の複数ステージ（１０２、１０３、１０４、１０５、１０６、１０７、１０８）を含むビットマップ・イメージ・パイプライン１００と、前記パイプラインの１つに含まれる前記ステージの選択された１つ又は複数の出力を、前記パイプラインの１つに含まれる前記ステージの選択された別の１つ又は複数の入力に提供するためのイメージ・パスを定義する、選択的に構成可能な相互接続マトリックス（１４０）を備えるイメージ・プロセッサ。
【００４３】
２．前記第１の複数ステージ（１１１、１１２、１１３、１１４、１１５）のそれぞれが他のステージと異なっており、走査変換（１１１）、クリッピング（１１２）、ビューポートへのウィンドウ処理（１１３）、投影（１１４）、ソート処理（１１５）などのステージのグループから選択される上記１に記載のイメージ・プロセッサ。
【００４４】
３．前記第２の複数ステージ（１０２、１０３、１０４、１０５、１０６、１０７、１０８）のそれぞれが他のステージと異なっており、モザイク解除（１０２）、色補正／ホワイト・バランス（１０３）、全領域マッピング（１０４）、階調補正（１０５、フレア補正（１０６）、色変換（１０７）、スケーリング（１０８）などのステージのグループから選択される上記１に記載のイメージ・プロセッサ。
【００４５】
４．さらに、出力ステージ（１１６）が前記パイプラインのそれぞれの出力に接続される上記１に記載のイメージ・プロセッサ。
【００４６】
５．前記相互接続が、前記第１の複数ステージ（１１１、１１２、１１３、１１４、１１５）の１つ又は複数の出力を、前記第１の複数ステージの次の１つ又は前記第２の複数ステージ（１０２、１０３、１０４、１０５、１０６、１０７、１０８）の選択された１つにルーティングし、記第２の複数ステージの１つ又は複数の出力を、前記第２の複数ステージの次の１つ又は前記第１の複数ステージの選択された１つにルーティングするように構成できるスイッチング・マトリックス（１４０）を備える上記１に記載のイメージ・プロセッサ。
【００４７】
６．前記グラフィックス・パイプライン（１０９）がグラフィックス識別データとグラフィックス位置データを含むグラフィックス・データ（１１０）を受信するように構成され、前記ビットマップ・イメージ・パイプライン（１００）がピクセル輝度情報を表すラスター・スキャン・イメージ・データ（１０１）を受信するように構成される上記１に記載のイメージ・プロセッサ。
【００４８】
７．グラフィックス・データ形式とビットマップ・イメージ・データ形式との変換を行うように構成されたデータ・フォーマット・コンバータ（１４４）をさらに備える上記１に記載のイメージ・プロセッサ。
【００４９】
８．前記ビットマップ・イメージ内のグラフィック・イメージを識別し、コード化するように構成された画像認識ステージ（１４３）をさらに備える上記１に記載のイメージ・プロセッサ。
【００５０】
９．前記グラフィックス・パイプライン１０９とビットマップ・イメージ・パイプライン（１００）の間で、前記グラフィック・オブジェクト（１１０）と前記ビットマップ・イメージ・オブジェクト（１０１）の少なくとも１つをルーティングする前記相互接続（１１７乃至１３９）を制御するように動作できる共通の命令デコーダをさらに備える上記１に記載のイメージ・プロセッサ。
【００５１】
１０．画像処理の方法であって、ラフィックス・パイプライン（１０９）のステージ（１１１、１１２、１１３、１１４、１１５）の１つ又は複数と、ビットマップ・イメージ・パイプライン（１００）のステージ（１０２、１０３、１０４、１０５、１０６、１０７、１０８）の１つ又は複数を通過するイメージ・パスを確立するためのパイプライン相互接続マトリックス（１４０）を選択的に構成するステップと各パイプラインの少なくとも１つのステージを通過する前記イメージ・パスに沿って送信することで画像を処理するステップを含む方法。
【図面の簡単な説明】
【図１】ビットマップ・パイプラインのステージがグラフィックス・パイプラインのステージと相互に接続される本発明の実施態様に従った複合パイプラインのブロック図である。
【符号の説明】
１００  ビットマップ・イメージ・パイプライン（ラスター・パイプライン）
１０２  モザイク解除
１０３  色補正／ホワイト・バランス
１０４  全領域マッピング
１０５  階調補正
１０６  フレア補正
１０７  色変換
１０８  スケーリング
１０９  グラフィックス・パイプライン
１１０  グラフィックス・データ
１１１  走査変換
１１２  クリッピング
１１３  ビューポートへのウィンドウイング
１１４  投影
１１５  ソート
１１６  出力ステージ、マージ出力
【図１】
0004116330.tif 000002