JP6966400B2 - 電子ディスプレイの境界ゲインシステム及び方法 - Google Patents

電子ディスプレイの境界ゲインシステム及び方法 Download PDF

Info

Publication number
JP6966400B2
JP6966400B2 JP2018161252A JP2018161252A JP6966400B2 JP 6966400 B2 JP6966400 B2 JP 6966400B2 JP 2018161252 A JP2018161252 A JP 2018161252A JP 2018161252 A JP2018161252 A JP 2018161252A JP 6966400 B2 JP6966400 B2 JP 6966400B2
Authority
JP
Japan
Prior art keywords
gain
map
run
pixel
display
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
JP2018161252A
Other languages
English (en)
Other versions
JP2019049705A (ja
JP2019049705A5 (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.)
Apple Inc
Original Assignee
Apple Inc
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
Priority claimed from US15/701,086 external-priority patent/US10714049B2/en
Application filed by Apple Inc filed Critical Apple Inc
Publication of JP2019049705A publication Critical patent/JP2019049705A/ja
Publication of JP2019049705A5 publication Critical patent/JP2019049705A5/ja
Application granted granted Critical
Publication of JP6966400B2 publication Critical patent/JP6966400B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G3/00Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes
    • G09G3/20Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes for presentation of an assembly of a number of characters, e.g. a page, by composing the assembly by combination of individual elements arranged in a matrix no fixed position being assigned to or needed to be assigned to the individual characters or partial characters
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/39Control of the bit-mapped memory
    • G09G5/391Resolution modifying circuits, e.g. variable screen formats
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/10Intensity circuits
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/37Details of the operation on graphic patterns
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2300/00Aspects of the constitution of display devices
    • G09G2300/04Structural and physical details of display devices
    • G09G2300/0421Structural details of the set of electrodes
    • G09G2300/043Compensation electrodes or other additional electrodes in matrix displays related to distortions or compensation signals, e.g. for modifying TFT threshold voltage in column driver
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2310/00Command of the display device
    • G09G2310/02Addressing, scanning or driving the display screen or processing steps related thereto
    • G09G2310/0232Special driving of display border areas
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2320/00Control of display operating conditions
    • G09G2320/02Improving the quality of display appearance
    • G09G2320/0242Compensation of deficiencies in the appearance of colours
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2320/00Control of display operating conditions
    • G09G2320/02Improving the quality of display appearance
    • G09G2320/0285Improving the quality of display appearance using tables for spatial correction of display data
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2320/00Control of display operating conditions
    • G09G2320/06Adjustment of display parameters
    • G09G2320/0686Adjustment of display parameters with two or more screen areas displaying information with different brightness or colours
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2340/00Aspects of display data processing
    • G09G2340/02Handling of images in compressed format, e.g. JPEG, MPEG
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2340/00Aspects of display data processing
    • G09G2340/04Changes in size, position or resolution of an image
    • G09G2340/0457Improvement of perceived resolution by subpixel rendering
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2370/00Aspects of data communication
    • G09G2370/10Use of a protocol of communication by packets in interfaces along the display data pipeline
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/3066Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction by means of a mask or a bit-map
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/46Conversion to or from run-length codes, i.e. by representing the number of consecutive digits, or groups of digits, of the same kind by a code word and a digit indicative of that kind

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Image Processing (AREA)
  • Image Generation (AREA)

Description

本開示は、概して電子ディスプレイに関し、より具体的には、電子ディスプレイ上に画像又は画像フレームを表示するために適用されるゲインに関する。
(関連出願の相互参照)
本出願は、2016年6月6日出願の米国特許仮出願第62/346,517号の優先権を主張する2017年6月5日出願の米国特許出願第15/614,294号の一部継続出願であり、これら特許出願のそれぞれは、汎用のためにその全体が本明細書に組み込まれる。
この節では、後述し及び/又は請求される本技術の種々の態様に関連し得る様々な態様を閲覧者に紹介する。本論考は、本開示の様々な態様の、より良好な理解を容易にするための背景技術を閲覧者に提供する際に、助けとなるものと考えられる。したがって、これらの記述は、上述の観点から読まれるべきであり、先行技術の承認として読まれるべきではないことを、理解するべきである。
電子デバイスは、多くの場合、電子ディスプレイを用いて、1つ以上の画像を表示することにより情報の視覚表現を提供する。そのような電子デバイスとしては、多くの他のものの中でもとりわけ、コンピュータ、携帯電話、ポータブルメディアデバイス、タブレット、テレビ、バーチャルリアリティヘッドセット、及び車両用ダッシュボードを挙げることができる。画像を表示するために、電子ディスプレイは、画像の目標特性を示す画像データに少なくとも部分的に基づいて表示画素からの発光を制御することができる。例えば、画像データは、画像内の様々な点(例えば、画像画素)における緑色成分、青色成分、及び/又は赤色成分などの特定の色成分の目標ルミナンスを示すことができる。
色成分のブレンド(例えば、平均化)に依拠して、電子ディスプレイは、画像内の様々な色の知覚を可能にすることができる。例えば、様々なルミナンスレベルでの緑色成分、青色成分、及び赤色成分をブレンドすることにより、黒色から白色までの色の範囲の知覚を可能にすることができる。色成分のルミナンスの制御を容易にするために、電子ディスプレイ内のそれぞれの表示画素は、1つの色成分のルミナンスをそれぞれ制御する1つ以上の副画素を含むことができる。例えば、表示画素は、赤の副画素、青の副画素、及び/又は緑の副画素を含むことができる。
いくつかの例では、電子ディスプレイ上に表示されることになる画像に対応する画像データは、画像データソースによって生成することができる。電子ディスプレイは多くの場合矩形形状を有するので、画像データソースは、矩形画像に対応する画像データを生成することができる。しかし、いくつかの例では、電子ディスプレイは、非矩形表示領域を有して実装することができる。にもかかわらず、運用上の柔軟性を促進するために、画像データソースは、例えば、電子ディスプレイに実装された表示領域形状をほとんど又は全く考慮せずに画像データを生成することがある。
本明細書に開示される特定の実施形態の要約を以下に示す。これらの態様が、これらの特定の実施形態の概要を読者に提供するためだけに提示され、これらの態様が、この開示の範囲を限定するものではないことを理解されたい。実際に、本開示は、以下に記載されない種々の態様を包含し得る。
本開示は、概して電子ディスプレイ上で知覚される画像品質を改善することに関する。画像を表示するために、電子ディスプレイは、画像内の画像画素における目標特性(例えば、ルミナンス)を示す画像データに少なくとも部分的に基づいてその表示画素からの発光を制御することができる。いくつかの例では、画像データは、画像データソースによって生成することができる。
電子ディスプレイは多くの場合矩形表示領域を有するので、画像データソースは、矩形画像に対応する画像データを生成することができる。しかし、いくつかの実施形態では、電子ディスプレイは、例えば、1つ以上の丸みのある(例えば、曲線状の)境界を有する非矩形表示領域を有して実装することができる。したがって、いくつかの実施形態では、ディスプレイパイプラインは、例えば、表示領域の外側の画素位置にブラックマスクを適用することにより、非矩形表示領域上に表示するために矩形画像フレームを調整することができる。しかし、いくつかの例では、単にブラックマスクを適用することにより、表示領域の境界に沿った色縁及び/又は表示領域の丸みのある境界に沿ったエイリアシングなどの知覚可能な視覚アーチファクトをもたらすことがある。
知覚される画像品質の改善を容易にするために、画像データは、画像内のそれぞれの画像画素の画素位置に関連付けられたゲイン値に少なくとも部分的に基づいて処理することができる。画素位置が表示領域内にあるとき、対応する表示画素は、その画素位置に配置することができる。いくつかの実施形態では、表示画素が複数の副画素を含むことができるため、画素位置は、対応するゲイン値にそれぞれ関連付けられた複数の副画素位置を含むことができる。
いずれの場合でも、いくつかの実施形態では、ディスプレイパイプラインは、表示領域の境界に隣接する画素位置にプログラム可能な境界ゲイン値を適用することができる。対応するプログラム可能な境界ゲイン値を適用することにより、境界に隣接する表示画素を暗くして、画像が表示されたときに境界に沿った知覚可能な色縁を生成する可能性を低減することができる。
加えて又は代わりに、ディスプレイパイプラインは、表示領域の丸みのある境界に沿ったアンチエイリアシング領域内の画素位置に関連付けられたゲイン値を決定することができる。いくつかの実施形態では、アンチエイリアシング領域内に配置された画素位置に関連付けられたゲイン値は、画素位置と対応する丸みのある境界との間の距離に少なくとも部分的に基づいて決定することができる。例えば、画素位置に関連付けられたゲイン値は、対応する副画素位置と丸みのある境界との間の最短距離に反比例することができる。そのようなゲイン値を適用することにより、丸みのある境界に隣接する表示画素を暗くして、画像が表示されたときに丸みのある境界に沿った知覚可能なエイリアシングを生成する可能性を低減することができる。
いくつかの実施形態では、それぞれの画素位置に関連付けられたゲイン値は、ゲインマップにより示すことができる。例えば、非圧縮ゲインマップは、それぞれの画素位置をゲイン値セットに明示的に関連付ける(例えば、マッピングする)ことができる。そのように、非圧縮ゲインマップのサイズは、相対的に大きく、したがって、外部メモリに記憶することができる。
しかし、いくつかの例では、外部メモリからゲイン値にアクセスすることにより、処理効率及び/又はディスプレイパイプラインのサイズ(例えば、ハードウェア設置面積)などの実装に関連付けられたコストに影響を及ぼすことがある。処理効率を改善すること及び/又は実装に関連付けられたコストを低減することを容易にするために、いくつかの実施形態では、圧縮ゲインマップを、対応する非圧縮ゲインマップに基づいて決定することができる。圧縮により、圧縮ゲインマップのサイズは、概してより小さく、それにより、圧縮ゲインマップをディスプレイパイプラインの内部メモリに記憶することを可能にすることができる。したがって、そのような実施形態では、ゲイン値を決定するために外部メモリにアクセスすることを不要にし、それによって、処理効率を改善する及び/又はダイレクトメモリアクセス実装に関連付けられたコストを低減することができる。
いくつかの実施形態では、圧縮ゲインマップは、ラン(run)マップ、位置マップ、及びゲイン値マップを含むことができる。ランマップは、それぞれの行ラン(row run)に含まれた非圧縮ゲインマップのゲインマップ行の数を示すことができる。したがって、ランマップを決定することを容易にするために、それぞれのゲインマップ行は、コード化された行又はコード化されない行のいずれかとして分類することができ、同じ行分類を有する1つ以上の連続したゲインマップ行は、行ランにグループ化することができる。
加えて、位置マップは、それぞれのコード化された行のゲインラン(gain run)に含まれた画素位置を示すことができる。いくつかの実施形態では、ゲインランに含まれた画素位置は、対応するコード化された行のそれぞれのゲインラン内の画素位置の数に少なくとも部分的に基づいて示すことができる。したがって、位置マップを決定することを容易にするために、コード化された行内のそれぞれのゲインマップ入力は、単位ゲインマップ入力、ゼロゲインマップ入力、又は中間ゲインマップ入力として分類することができ、同じ入力分類を有する1つ以上の連続したゲインマップ入力は、ゲインランにグループ化することができる。圧縮効率を改善することを容易にするために、いくつかの実施形態では、位置マップは、別のゲインラン内の画素位置に対するゲインラン内の画素位置を示すことができる。加えて、いくつかの実施形態では、位置マップは、エントロピ符号化して、圧縮効率を更に改善することを容易にすることができる。
更に、ゲイン値マップは、それぞれの中間ゲインラン内の画素位置に関連付けられたゲイン値を示すことができる。圧縮効率を改善することを容易にするために、いくつかの実施形態では、ゲイン値マップは、別の(例えば、隣接する)画素位置に関連付けられたゲイン値に対する画素位置に関連付けられたゲイン値を示すことができる。加えて、いくつかの実施形態では、ゲイン値マップは、エントロピ符号化して、圧縮効率を更に改善することを容易にすることができる。
圧縮ゲインマップにより示されるとき、ディスプレイパイプラインは、圧縮ゲインマップを読み取って、例えば、対応する非圧縮ゲインマップに展開することにより、それぞれの画素位置に関連付けられたゲイン値を決定することができる。いくつかの実施形態では、ディスプレイパイプラインは、ランマップを読み取ることにより画素位置を含むゲインマップ行の行分類を決定することができる。加えて、ゲインマップ行がコード化されない行として分類されるとき、ディスプレイパイプラインは、画素位置に関連付けられたゲイン値が1であることを決定することができる。
一方、ゲインマップ行がコード化された行として分類されるとき、ディスプレイパイプラインは、位置マップを読み取ることにより、コード化された行内のそれぞれのゲインランに含まれた画素位置を決定することができる。換言すれば、ディスプレイパイプラインは、位置マップに少なくとも部分的に基づいてゲインマップ行内のそれぞれのゲインマップ入力の入力分類を決定することができる。エントロピ符号化されるとき、ディスプレイパイプラインは、位置マップをエントロピ複号化することができる。
画素位置に対応するゲインマップ入力が単位ゲインマップ入力として分類されるとき、ディスプレイパイプラインは、画素位置に関連付けられたゲイン値が1であることを決定することができる。加えて、画素位置に対応するゲインマップ入力がゼロゲインマップ入力として分類されるとき、ディスプレイパイプラインは、画素位置に関連付けられたゲイン値がゼロであることを決定することができる。更に、画素位置に対応するゲインマップ入力が中間ゲインマップ入力として分類されるとき、ディスプレイパイプラインは、ゲイン値マップを読み取ることにより画素位置に関連付けられたゲイン値を決定することができる。エントロピ符号化されるとき、ディスプレイパイプラインは、ゲイン値マップをエントロピ複号化することができる。
上述したように、いくつかの実施形態では、圧縮ゲインマップは、相対的に、例えば、別の画素位置に対して、画素位置に関連付けられたゲイン値を示すことができる。そのような実施形態では、ディスプレイパイプラインは、圧縮ゲインマップを展開して、それによって展開効率(例えば、画素位置に関連付けられたゲイン値が決定される速度)が制限される場合に、データ依存性に遭遇することがある。
展開効率を改善することを容易にするために、いくつかの実施形態では、画素位置及び関連付けられたゲイン値は、例えば、非圧縮ゲインマップを複数の非圧縮ゲインマップに分割することにより、複数の画素領域にグループ化することができる。それぞれの非圧縮ゲインマップを圧縮することにより、画素領域のうちの1つにそれぞれ対応する複数の圧縮ゲインマップを決定することができる。このようにして、異なる画素領域内の画素位置に関連付けられたゲイン値の間のデータ依存性を低減することができる。実際に、このようにして複数の圧縮ゲインマップを実装することにより、ディスプレイパイプラインが、ゲイン値が決定される順序、したがって、圧縮ゲインマップへのアクセス(例えば、フェッチ)パターンを変更することを可能にすることができる。いくつかの実施形態では、ディスプレイパイプラインは、ゲイン値決定順序を制御して、例えば、ランダムアクセスパターンを実行することにより、メモリアクセス効率を改善することができる。
以下の「発明を実施するための形態」を読了し、かつ以下の図面を参照することにより、本開示の様々な態様を、より良好に理解することができる。
一実施形態に係る、画像を表示するための電子ディスプレイを含む電子デバイスのブロック図である。 一実施形態に係る、図1の電子デバイスの実施例である。 一実施形態に係る、図1の電子デバイスの別の実施例である。 一実施形態に係る、図1の電子デバイスの別の実施例である。 一実施形態に係る、図1の電子デバイスの別の実施例である。 一実施形態に係る、図1の電子デバイスに実装されたディスプレイパイプラインのブロック図である。 一実施形態に係る、図6のディスプレイパイプラインを動作させるためのプロセスのフロー図である。 一実施形態に係る、図6のディスプレイパイプライン内の副画素レイアウトリサンプラブロック及び内部メモリのブロック図である。 一実施形態に係る、設計デバイス及び図8の内部メモリのブロック図である。 一実施形態に係る、図10の設計デバイスを動作させるためのプロセスのフロー図である。 一実施形態に係る、矩形画像フレームを表した図である。 一実施形態に係る、図11の矩形画像フレームの左上部分の画像画素を表した図である。 一実施形態に係る、非矩形形状を有する表示領域の実施例である。 一実施形態に係る、丸みのある境界を含む図13の表示領域の左上部分の表示画素の実施例である。 一実施形態に係る、丸みのある境界に沿った副画素に適用されることになるゲイン値を決定するためのプロセスのフロー図である。 一実施形態に係る、図14の丸みのある境界に沿って適用されることになるゲイン値を決定するために用いられる例示的なアンチエイリアシング領域である。 一実施形態に係る、図14の丸みのある境界に沿って適用されることになるゲイン値を決定するために用いられる別の例示的なアンチエイリアシング領域である。 一実施形態に係る、非圧縮ゲインマップを表した図である。 一実施形態に係る、圧縮ゲインマップを決定するためのプロセスのフロー図である。 一実施形態に係る、圧縮ゲインマップに含まれたランマップを決定するためのプロセスのフロー図である。 一実施形態に係る、圧縮ゲインマップに含まれた位置マップを決定するためのプロセスのフロー図である。 一実施形態に係る、圧縮ゲインマップに含まれたゲイン値マップを決定するためのプロセスのフロー図である。 一実施形態に係る、図8の副画素レイアウトリサンプラブロックを動作させるためのプロセスのフロー図である。 一実施形態に係る、圧縮ゲインマップから図8の副画素レイアウトリサンプラブロックによって実行されることになるゲイン値を決定するためのプロセスのフロー図である。 一実施形態に係る、図8の副画素レイアウトリサンプラブロックによって実行されることになるフィルタパラメータを決定するためのプロセスのフロー図である。 一実施形態に係る、オフセット副画素に適用されることになるゲイン値に少なくとも部分的に基づいてオフセットフィルタ位相値を決定するためのプロセスのフロー図である。 一実施形態に係る、表示画素画像データを決定するためにゲイン値を適用するためのプロセスのフロー図である。 一実施形態に係る、表示画素画像データをアップスケーリングするためのプロセスのフロー図である。
本開示の1つ以上のある特定の実施形態を以下に述べる。これらの述べる実施形態は、本明細書で開示されている技術の実施例に過ぎない。更に、これらの実施形態の簡潔な説明を提供するために、本明細書に実際の実施態様のすべての特徴が示されるとは限らない。いずれの工学プロジェクト又は設計プロジェクトの場合とも同様に、いずれのそのような実際的な実装の開発に際しても、実装ごとに異なり得る、システム関連及びビジネス関連の制約の準拠などの、開発者の具体的な目的を達成するために、実装に固有の多数の決定を行わなければならないことを理解するべきである。更に、開発努力は複雑で時間がかかる可能性があるが、それでも、本開示の利益を有する当業者には、設計、製作、及び製造の通常業務であり得ることを理解されたい。
本開示の様々な実施形態の要素を紹介するときに、冠詞「a」、「an」、及び「the」は、1つ以上の要素があることを意味する。用語「備える」、「含む」、及び「有する」は、包括的であることを意図し、列挙した要素以外の付加的な要素がある可能性があることを意味する。更に、本開示の「一実施形態」又は「実施形態」の参照は、列挙した特徴を組み込む追加の実施形態の存在を除外するように解釈されることを意図したものではないことを理解されたい。
本開示は、概して、例えば、1つ以上の画像フレーム内の画像として、情報の視覚表現を提示するために使用することができる電子ディスプレイに関する。画像を表示するために、電子ディスプレイは、画像の目標特性を示す画像データに少なくとも部分的に基づいてその表示画素からの発光を制御することができる。例えば、画像データは、共にブレンドされる(例えば、平均化される)と異なる色の範囲の知覚となり得る、画像の一部分(例えば、画像画素)の特定の色成分の目標ルミナンス(例えば、輝度)を示すことができる。
一般に、電子ディスプレイ内のそれぞれの表示画素は、表示されることになる画像内の画像画素に対応することができる。換言すれば、表示画素及び画像画素は、画素位置に対応することができる。画像を表示することを容易にするために、表示画素は、画素位置の1つの色成分のルミナンスをそれぞれ制御する1つ以上の副画素を含むことができる。例えば、表示画素は、赤色成分のルミナンスを制御する赤の副画素、緑色成分のルミナンスを制御する緑の副画素、及び/又は青色成分のルミナンスを制御する青の副画素を含むことができる。
しかし、異なる電子ディスプレイは、異なる副画素レイアウトを実装することができる。いくつかの例では、異なる電子ディスプレイ内の表示画素当たりの副画素の数は、異なることができる。例えば、第1の電子ディスプレイでは、それぞれの表示画素は、3つの副画素を含むことができる。一方、第2の電子ディスプレイでは、それぞれの表示画素は、2つの副画素を含むことができる。更に、他の電子ディスプレイ内の表示画素は、例えば、表示画素当たり1つの副画素から表示画素当たり5つ以上の副画素までの間の、任意の好適な数の副画素を含むことができる。
加えて、いくつかの例では、異なる電子ディスプレイの表示画素に実装される副画素の色成分は、異なることができる。例えば、第1の電子ディスプレイでは、それぞれの表示画素は、赤の副画素、緑の副画素、及び青の副画素を含むことができる。一方、第2の電子ディスプレイでは、表示画素の一部(例えば、約半分)は、緑の副画素及び赤の副画素をそれぞれ含むことができ、他の表示画素は、緑の副画素及び青の副画素をそれぞれ含むことができる。更に、他の電子ディスプレイ内の表示画素は、例えば、表示画素当たり同じ色成分の複数の副画素を有する、色成分副画素の任意の好適な組み合わせを含むことができる。
更にいくつかの例では、異なる電子ディスプレイ内の表示画素内の副画素の位置は、異なることができる。例えば、第1の電子ディスプレイでは、副画素間の間隔(例えば、距離)は、より小さくすることができる。そのように、この間隔の知覚可能性をより低くすることができ、したがって、表示画素内の副画素は、概して同じ場所に配置されていると考えることができる。一方、第2の電子ディスプレイでは、副画素間の間隔は、より点光源のように機能するそれぞれの副画素により、より大きくすることができる。そのように、この間隔の知覚可能性をより高くすることができ、したがって、第2の電子ディスプレイの表示画素内の副画素は、概して互いにオフセットしていると考えることができる。例えば、第2の電子ディスプレイ内の表示画素は、対応する画像画素と同じ場所に配置された第1の副画素、及び対応する画像画素からオフセットした第2の副画素を含むことができる。
更に、いくつかの例では、異なる電子ディスプレイ内の副画素は、異なる形状を有する表示領域になるように実装することができる。例えば、第1の電子ディスプレイは、矩形形状を有する第1の表示領域を有して実装することができる。換言すれば、第1の表示領域は、約90度の角で接続された4つの直線境界を有することができる。一方、第2の電子ディスプレイは、非矩形形状を有する第2の表示領域を有して実装することができる。例えば、第2の表示領域は、4つの丸みのある(例えば、曲線状の)境界で接続された4つの直線境界を有することができる。
いくつかの例では、画像データソースは、表示されることになる画像の画像画素に対応する画像データを生成することができる。電子ディスプレイは多くの場合矩形表示領域を有するので、画像データソースは、矩形画像に対応する画像データを生成することができる。そのように、第1の表示領域が矩形形状を有するので、矩形画像内のそれぞれの画像画素は、第1の電子ディスプレイ内の表示画素に対応することができる。換言すれば、それぞれの画素位置は、画像画素及び表示画素の両方に対応することができる。
しかし、非矩形形状を有して実装されているので、矩形画像内の一部の画像画素は、第2の電子ディスプレイの第2の表示領域の外側の画素位置に対応することがある。例えば、矩形画像の上部境界が第2の表示領域の上部境界と位置合わせされ、かつ矩形画像の左側境界が第2の表示領域の左側境界と位置合わせされているとき、矩形画像の左上角の画像画素は、第2の表示領域の左上の丸みのある境界(例えば、角)の外側の画素位置に対応することができる。
にもかかわらず、運用上の柔軟性を高めるために、画像データソースは、電子ディスプレイの副画素レイアウトをほとんど又は全く考慮せずに同じ画像データを出力することがある。例えば、画像データソースは、画像が第1の電子ディスプレイに表示されることになるか第2の電子ディスプレイ上に表示されることになるかにかかわらず、矩形画像に対応する画像データを出力することがある。しかし、いくつかの例では、知覚される画像品質は、電子ディスプレイの副画素レイアウトによって影響を受けることがある。例えば、第2の電子ディスプレイの副画素レイアウトは、第2の表示領域の境界(例えば、上部直線境界、下部直線境界、左側直線境界、及び/又は右側直線境界)に沿った知覚可能な色縁をもたらすことがある。加えて又は代わりに、第2の電子ディスプレイの副画素レイアウトは、表示領域の丸みのある(例えば、左上、右上、左下、及び/又は右下)境界に沿った知覚可能なエイリアシングをもたらすことがある。
したがって、本開示は、例えば、電子ディスプレイの副画素レイアウトに少なくとも部分的に基づいて画像データを処理することにより、電子ディスプレイの知覚される画像品質を改善するための技術を提供する。いくつかの実施形態では、ディスプレイパイプラインは、対応する画像が電子ディスプレイ上に表示される前に、画像データソースによって生成された画像データを受信して処理することができる。例えば、ディスプレイパイプラインは、ソース(例えば、RGB)形式の画像データを処理して、表示(例えば、GR又はGB)形式の画像データを決定することができる。より具体的には、いくつかの実施形態では、ディスプレイパイプラインは、フィルタリング(例えば、補間又はサンプリング)して、画像画素画像データ(例えば、画像画素に対応する画像データ)にゲイン値を適用することにより、表示画素画像データ(例えば、表示画素に対応する画像データ)を決定することができる。
いくつかの実施形態では、ディスプレイパイプラインは、周囲の画像画素画像データに少なくとも部分的に基づいて画像画素画像データをフィルタリングすることにより、表示画素画像データを決定することができる。例えば、ディスプレイパイプラインは、周囲の画像画素の対応する色成分画像データを等しく平均化するローパスフィルタを適用することにより、オフセット副画素画像データ(例えば、オフセット副画素に対応する画像データ)を決定することができる。周囲の画像画素からオフセットされているため、このようにしてオフセット副画素画像データを決定することにより、より漸進的なルミナンス変化とすることができる。
しかし、電子ディスプレイの副画素レイアウトに少なくとも部分的に起因して、より漸進的なルミナンス変化により、いくつかの例では、表示領域の境界に沿った色縁及び/又は表示領域の丸みのある境界に沿ったエイリアシングなどの知覚可能な視覚アーチファクトをもたらすことがある。例えば、表示画素が同じ場所に配置された緑の副画素を有するとき、表示領域の第1の(例えば、上部又は下部)直線境界に沿って緑色の色縁が知覚可能なことがある。加えて、表示画素がオフセットした赤の副画素又はオフセットした青の副画素のいずれかを交互に有するとき、表示領域の第2の(例えば、左側又は右側)直線境界に沿って紫色の色縁が知覚可能なことがある。更に、表示画素がオフセット副画素を有するとき、表示領域の丸みのある(例えば、左上、右上、左下、又は右下)境界に沿ってエイリアシング(例えば、ギザギザ)が知覚可能なことがある。
知覚可能な視覚アーチファクトを生成する可能性を低減するために、いくつかの実施形態では、ディスプレイパイプラインは、画像画素画像データをフィルタリングした後でゲイン値を適用して表示領域の境界に沿った副画素を暗くすることにより、表示画素画像データを決定することができる。例えば、知覚可能な色縁を生成する可能性を低減するために、ディスプレイパイプラインは、中間ゲイン値(例えば、ゼロより大きくかつ1未満)を適用して表示領域の境界(例えば、直線境界)に沿った表示画素内の副画素を暗くすることができる。加えて、知覚可能なエイリアシングを生成する可能性を低減するために、ディスプレイパイプラインは、中間ゲイン値を適用して表示領域の丸みのある境界に沿った表示画素内の副画素を暗くすることができる。
いくつかの実施形態では、丸みのある境界に沿った表示画素内の副画素に適用されることになるゲイン値は、副画素と丸みのある境界との間の距離に少なくとも部分的に基づいて決定することができる。例えば、丸みのある境界に沿った副画素位置を含むアンチエイリアシング領域を決定することができる。加えて、アンチエイリアシング領域内のそれぞれの副画素位置に関連付けられたゲイン値は、副画素位置と丸みのある境界との間の最短距離に反比例することができる。このようにして決定されたゲイン値を適用することにより、電子ディスプレイの副画素レイアウトに少なくとも部分的に基づいて、丸みのある境界に沿った副画素を線形に暗くして、丸みのある境界に沿った知覚可能なエイリアシングを生成する可能性を低減することができる。
加えて、電子ディスプレイの表示領域及びアンチエイリアシング領域の外側の画素位置に対応するゲイン値は、ゼロに設定することができる。このようにして決定されたゲイン値を適用することにより、ブラックマスクを適用して、表示領域の外側の画素位置に対応する画像データを消すことができる。このようにして、矩形画像を調整して、非矩形表示領域を有する電子ディスプレイ上の表示を容易にすることができる。知覚される画像品質を更に改善することを容易にするために、いくつかの実施形態では、ディスプレイパイプラインは、対応する画素位置に関連付けられたゲイン値及び/又は隣接する画素位置に関連付けられたゲイン値に少なくとも部分的に基づいて、画像画素画像データに適用されるフィルタリングパラメータ(例えば、フィルタ位相又はフィルタ係数)を適応的に調整することができる。
いくつかの実施形態では、ディスプレイパイプラインは、対応する画像画素画像データを処理しながら、画素位置に関連付けられたゲイン値を計算することができる。加えて、いくつかの実施形態では、表示領域の境界に沿った表示画素に適用されることになるゲイン値は、プログラム可能なレジスタに記憶することができる。例えば、上部直線境界に沿った表示画素に適用されることになる第1の境界ゲイン値は、第1のプログラム可能なレジスタに記憶することができ、下部直線境界に沿った表示画素に適用されることになる第2の境界ゲイン値は、第2のプログラム可能なレジスタに記憶することができ、左側直線境界に沿った表示画素に適用されることになる第3のゲイン値は、第3のプログラム可能なレジスタに記憶することができ、右側直線境界に沿った表示画素に適用されることになる第4のゲイン値は、第4のプログラム可能なレジスタに記憶することができる。
更に、いくつかの実施形態では、電子ディスプレイの特性(例えば、解像度、副画素レイアウト、及び/又は表示領域形状)は一般的に固定されているため、画素位置に関連付けられたゲイン値は、予め設定することができる。例えば、設計デバイスは、それぞれの画素位置に関連付けられたゲイン値のセットを示すゲインマップとしてゲイン値を決定して記憶することができる。いくつかの実施形態では、画素位置に関連付けられたゲイン値セットは、対応する表示画素内のそれぞれの色成分に対するゲイン値を含むことができる。例えば、表示画素が赤の副画素及び緑の副画素を含むとき、その画素位置に関連付けられたゲイン値セットは、赤色のゲイン値及び緑色のゲイン値を含むことができる。加えて、表示画素が青の副画素及び緑の副画素を含むとき、その画素位置に関連付けられたゲイン値セットは、青色のゲイン値及び緑色のゲイン値を含むことができる。
いくつかの実施形態では、非圧縮ゲインマップは、それぞれの画素位置を対応するゲイン値セットに明示的に関連付ける(例えば、マッピングする)ことができる。換言すれば、非圧縮ゲインマップ内の入力の数は、電子ディスプレイの解像度以上とすることができる。そのように、非圧縮ゲインマップのサイズ(例えば、ビット数)は、特に、電子ディスプレイの解像度が増大し続けるに従って、相対的に大きくなることがある。そのサイズに対応するために、いくつかの実施形態では、非圧縮ゲインマップを外部メモリに記憶し、したがって、ダイレクトメモリアクセス(direct memory access)(DMA)チャネルを介してディスプレイパイプラインによって外部メモリから取得することができる。しかし、ダイレクトメモリアクセスチャネルを介して外部メモリにアクセスすることにより、処理効率並びに/又は電力消費及び/若しくはディスプレイパイプラインのサイズ(例えば、ハードウェア設置面積)などの実装に関連付けられたコストに影響を及ぼすことがある。
処理効率を改善すること及び/又は実装に関連付けられたコストを低減することを容易にするために、いくつかの実施形態では、圧縮ゲインマップを使用して、ゲイン値を示すことができる。例えば、設計デバイスは、非圧縮ゲインマップを圧縮して、圧縮ゲインマップを決定することができる。圧縮により、圧縮ゲインマップのサイズは、一般的に非圧縮ゲインマップより小さい。いくつかの実施形態では、低減したサイズにより、圧縮ゲインマップをディスプレイパイプラインの内部メモリに記憶することを可能にすることができる。したがって、そのような実施形態では、ゲイン値を決定するために外部メモリにアクセスすることを不要にし、それによって、処理効率を改善する及び/又はダイレクトメモリアクセス実装に関連付けられたコストを低減することができる。
圧縮を容易にするために、いくつかの実施形態では、非圧縮ゲインマップ内のそれぞれのゲインマップ行は、その対応するゲインマップ入力により示されたゲイン値に少なくとも部分的に基づいて、コード化されない行又はコード化された行のいずれかとして分類することができる。例えば、設計デバイスは、ゲインマップ行によって示されたそれぞれのゲイン値が1であるとき、コード化されない行としてゲインマップ行を分類することができる。一方、設計デバイスは、ゲインマップ行によって示された1つ以上のゲイン値が1未満であるとき、コード化された行としてゲインマップ行を分類することができる。換言すれば、コード化された行内のゲイン値は、ゼロ、1、又は中間ゲイン値(例えば、ゼロより大きく、かつ1未満)とすることができる。
加えて、行分類に基づいて、それぞれのゲインマップ行は、行ラン(row run)にグループ化することができる。例えば、設計デバイスは、1つ以上の連続したコード化された行をコード化された行ランにグループ化することができる。加えて、設計デバイスは、1つ以上の連続したコード化されない行をコード化されない行ランにグループ化することができる。いくつかの実施形態では、行ランは、コード化された行ランとコード化されない行ランとの間で交互になることができる。
更に、それぞれのコード化された行内のゲインマップ入力は、ゲインラン(gain run)にグループ化することができる。例えば、設計デバイスは、それぞれのゲインマップ入力が少なくとも1つの中間ゲイン値を示すとき、1つ以上の連続したゲインマップを中間ゲインランにグループ化することができる。加えて、設計デバイスは、ゲインマップ入力によって示されたそれぞれのゲイン値がゼロであるとき、1つ以上の連続したゲインマップ入力をゼロゲインランにグループ化することができる。更に、設計デバイスは、ゲインマップ入力によって示されたそれぞれのゲイン値が1であるとき、1つ以上の連続したゲインマップ入力を単位ゲインランにグループ化することができる。いくつかの実施形態では、コード化された行内のゲインランは、位置(例えば、ゼロ又は単位)ゲインランと中間ゲインランとの間で交互になることができる。
加えて、いくつかの実施形態では、圧縮ゲインマップは、ランマップ、位置マップ、ゲイン値マップ、及び、例えば、内部メモリのプログラム可能なレジスタに記憶された1つ以上のインジケータを含むことができる。ランマップ(run map)は、それぞれの行ラン内のゲインマップ行の数、したがって、ゲインマップ行の行ランへのグループ化に少なくとも部分的に基づいて決定された数を示すことができる。いくつかの実施形態では、それぞれのランマップ入力は、対応する行ラン内のゲインマップ行の数を明示的に示すことができる。例えば、第1の行ランが第1の10個のゲインマップ行を含み、第2の行ランが次の5個のゲインマップ行を含むとき、設計デバイスは、第1のランマップ入力内に10の値、及び第2のランマップ入力内に5の値を示すことができる。
加えて、いくつかの実施形態では、開始行ランインジケータは、非圧縮ゲインマップ内で識別された最初の行ランがコード化された行ランであるかコード化されない行ランであるかを示すことができる。例えば、最初の行ランがコード化されない行ランであるとき、設計デバイスは、開始行ランインジケータ内に第1の値(例えば、0ビット)を示すことができる。一方、最初の行ランがコード化された行ランであるとき、設計デバイスは、開始行ランインジケータ内に第2の値(例えば、1ビット)を示すことができる。
位置マップは、それぞれのコード化された行内のゲインランに関連付けられた画素位置を示すことができる。いくつかの実施形態では、それぞれの位置マップ入力は、ゲインランに含まれたゲインマップ入力の数を明示的に示すことにより、ゲインランに関連付けられた画素位置を示すことができる。例えば、第1のゲインランがゲインマップ行の最初の4個のゲインマップ入力を含み、第2のゲインランがゲインマップ行の次の6個のゲインマップ入力を含むとき、設計デバイスは、第1の位置マップ入力内に4の値、及び第2のランマップ入力内に6の値を示すことができる。
圧縮効率を改善することを容易にするために、他の実施形態では、それぞれの位置マップ入力は、別のゲインラン内の画素位置に対するゲインラン内の画素位置を示すことができる。例えば、第1のゲインランが第1のゲインマップ行の最初の4個のゲインマップ入力を含み、第2のゲインランが第2のゲインマップ行の最初の5個のゲインマップ入力を含むとき、第2のゲインランが第1のゲインランより1つ多い画素位置を含むので、設計デバイスは、プラス1の画素位置の差を決定することができる。プラス1の位置の差を示すために、設計デバイスは、第1の位置マップ入力内に第1の値(例えば、0ビット)、及び第2の位置マップ入力内に1の値を示すことができる。加えて、第3のゲインランが第1のゲインマップ行の次の6個のゲインマップ入力を含み、第4のゲインランが第2のゲインマップ行の次の5個のゲインマップ入力を含むとき、第4のゲインランが第3のゲインランより1つ少ない画素位置を含むので、設計デバイスは、マイナス1の画素位置の差を決定することができる。マイナス1の位置の差を示すために、設計デバイスは、第3の位置マップ入力内に第2の値(例えば、1ビット)、及び第4の位置マップ入力内に1の値を示すことができる。いくつかの実施形態では、画素位置の差は、エントロピ符号化して、圧縮効率を更に改善することを容易にすることができる。
ゲイン値マップは、それぞれの中間ゲインラン内の画素位置に関連付けられたゲイン値を示すことができる。いくつかの実施形態では、ゲイン値マップ入力は、画素位置に関連付けられたゲイン値を明示的に示すことができる。例えば、表示画素が第1の(例えば、緑の)副画素及び第2の(例えば、赤又は青の)副画素を含むとき、設計デバイスは、第1のゲイン値マップ入力内の第1の副画素に関連付けられた第1のゲイン値、及び第2のゲイン値マップ入力内の第2の副画素に関連付けられた第2のゲイン値を明示的に示すことができる。圧縮効率を改善することを容易にするために、一部のゲイン値マップ入力は、別の画素位置に関連付けられたゲイン値に対する画素位置に関連付けられたゲイン値を示すことができる。例えば、現在の画素位置に関連付けられた第1のゲイン値が直前の(例えば、左側に隣接する)画素位置に関連付けられた第2のゲイン値と同じであるとき、設計デバイスは、現在の画素位置に関連付けられたゲイン値マップ入力内に第1の値(例えば、1ビット)を示すことができる。一方、第1のゲイン値及び第2のゲイン値が異なるとき、設計デバイスは、ゲインマップ入力内に第2の値(例えば、0ビット)を示すことができる。いくつかの実施形態では、明示的に示されたゲイン値は、エントロピ符号化して、圧縮効率を更に改善することを容易にすることができる。
上述したように、ディスプレイパイプラインは、対応する画素位置に関連付けられたゲイン値に少なくとも部分的に基づいて、画像画素画像データを処理することができる。したがって、圧縮ゲインマップを用いて示されるとき、ディスプレイパイプラインは、圧縮ゲインマップを展開して、1つ以上の画素位置に関連付けられたゲイン値(例えば、赤色のゲイン値、青色のゲイン値、及び/又は緑色のゲイン値)を決定することができる。いくつかの実施形態では、ディスプレイパイプラインは、(例えば、ビットストリームを介して)ランマップ及び/又は開始行ランインジケータを読み取って、画像画素画像データがコード化された行ラン内の画素位置に対応するかコード化されない行ラン内の画素位置に対応するかを判定することができる。このようにして、ディスプレイパイプラインは、画素位置がコード化された行内にあるかコード化されない行内にあるかを判定することができる。
上述したように、ゲインマップ行は、そのゲインマップ入力によって示されたゲイン値のそれぞれが1に等しいとき、コード化されない行として分類することができる。したがって、画素位置がコード化されない行内にあることをディスプレイパイプラインが決定するとき、ディスプレイパイプラインは、画素位置に関連付けられたそれぞれのゲイン値が1に等しいことを決定することができる。加えて、上述したように、ゲインマップ行は、そのゲインマップ入力によって示された1つ以上のゲイン値が1未満であるとき、コード化された行として分類することができる。したがって、画素位置がコード化された行内にあることをディスプレイパイプラインが決定するとき、ディスプレイパイプラインは、位置マップを(例えば、ビットストリームを介して)読み取って、画素位置が位置ゲインラン内にあるか中間ゲインラン内にあるかを判定することができる。加えて、エントロピ符号化された画素位置の差により示されたとき、ディスプレイパイプラインは、位置マップをエントロピ複号化して、画素位置の差を決定し、例えば、上の隣接するゲインマップ行内の別のゲインランに対する画素位置の差を適用することにより、ゲインラン内の画素位置を決定することができる。
上述したように、1つ以上の連続したゲインマップ入力は、それぞれのゲインマップ入力が少なくとも1つの中間ゲイン値(例えば、ゼロより大きくかつ1未満)を含むとき、中間ゲインランとして分類することができる。したがって、画素位置が中間ゲインラン内にあることをディスプレイパイプラインが決定するとき、ディスプレイパイプラインは、ゲイン値マップを(例えば、ビットストリームを介して)読み取って、画素位置に関連付けられたゲイン値セットを決定することができる。加えて、ゲイン値がエントロピ符号化されているとき、ディスプレイパイプラインは、ゲイン値マップをエントロピ複号化して、画素位置に関連付けられたゲイン値を決定することができる。
上述したように、位置ゲインランは、ゼロゲインラン又は単位ゲインランのいずれかとすることができる。したがって、画素位置が位置ゲインラン内にあることをディスプレイパイプラインが決定するとき、ディスプレイパイプラインは、対応する位置ゲイン値インジケータを読み取って、画素位置がゼロゲインラン内にあるか単位ゲインラン内にあるかを判定することができる。加えて、上述したように、1つ以上の連続したゲインマップ入力は、それぞれの含まれたゲイン値がゼロであるとき、ゼロゲインランとして分類することができる。したがって、画素位置がゼロゲインラン内にあることを対応する位置ゲイン値インジケータが示すとき、ディスプレイパイプラインは、画素位置に関連付けられたそれぞれのゲイン値がゼロに等しいことを決定することができる。更に、上述したように、1つ以上の連続したゲインマップ入力は、それぞれの含まれたゲイン値が1であるとき、単位ゲインランとして分類することができる。したがって、画素位置が単位ゲインラン内にあることを対応する位置ゲイン値インジケータが示すとき、ディスプレイパイプラインは、画素位置に関連付けられたそれぞれのゲイン値が1に等しいことを決定することができる。
ゲイン値に少なくとも部分的に基づいて、ディスプレイパイプラインは、画像画素画像データを処理して、電子ディスプレイ上に対応する画像を表示するために使用することができる表示画素画像データを決定することができる。例えば、ゲイン値を適用することにより、ディスプレイパイプラインは、非矩形表示領域上に表示するために矩形画像を調整するブラックマスクを適用することができる。加えて、ディスプレイパイプラインは、ゲイン値に少なくとも部分的に基づいてフィルタパラメータを適応的に(例えば、動的に)調整して、画像内の縁部に沿った鮮明度(例えば、鋭い傾斜遷移)を改善することができる。更に、ゲイン値を適用することにより、ディスプレイパイプラインは、表示領域境界に沿った表示画素を暗くして、表示領域境界に沿った知覚可能な視覚アーチファクト(例えば、エイリアシング及び/又は縁)を生成する可能性を低減することができる。このようにして、ディスプレイパイプラインは、電子ディスプレイ上に対応する画像が表示される前に(例えば、圧縮又は非圧縮)ゲインマップから決定されたゲイン値に少なくとも部分的に基づいて画像データを処理して、電子ディスプレイの知覚される画像品質を改善することができる。
図示目的で、電子ディスプレイ12を用いる電子デバイス10の一実施形態を、図1に示す。以下により詳細に説明するように、電子デバイス10は、ハンドヘルド電子デバイス、タブレット電子デバイス、ノートブックコンピュータなどの、任意の好適な電子デバイスとすることができる。したがって、図1は、特定の実施態様の一実施例に過ぎず、電子デバイス10内に存在し得る構成要素のタイプを例示することを意図するものであることに留意されたい。
図示した実施形態では、電子デバイス10は、電子ディスプレイ12、入力デバイス14、入出力(input/output)(I/O)ポート16、1つ以上のプロセッサ(単数又は複数)又はプロセッサコアを有するプロセッサコア複合体18、ローカルメモリ20、メインメモリ記憶装置22、ネットワークインタフェース24、電源26、及び画像処理回路27を含む。図1に記載される様々な構成要素は、ハードウェア要素(例えば、回路)、ソフトウェア要素(例えば、命令を記憶する有形的非一時的コンピュータ可読媒体)、又はハードウェア要素とソフトウェア要素両方の組み合わせを含んでもよい。様々な図示された構成要素は、より数の少ない構成要素に組み合わされてもよく、あるいは追加の構成要素に分けられてもよいことを留意されたい。例えば、ローカルメモリ20及びメインメモリ記憶装置22は、単一の構成要素に含めることができる。加えて、画像処理回路27(例えば、グラフィック処理ユニット)が、プロセッサコア複合体18に含まれてもよい。
図示したように、プロセッサコア複合体18は、ローカルメモリ20及びメインメモリ記憶装置22に動作可能に接続される。いくつかの実施形態では、ローカルメモリ20及び/又はメインメモリ記憶装置22は、プロセッサコア複合体18によって実行可能な命令及び/又はプロセッサコア複合体18によって処理されることになるデータを記憶する有形的非一時的コンピュータ可読媒体とすることができる。例えば、ローカルメモリ20は、ランダムアクセスメモリ(random access memory)(RAM)を含んでもよく、メインメモリ記憶装置22は、読み出し専用メモリ(read only memory)(ROM)、フラッシュメモリ、ハードドライブ、光学ディスクなどの書き換え可能不揮発性メモリを含んでもよい。
いくつかの実施形態では、プロセッサコア複合体18は、ローカルメモリ20及び/又はメインメモリ記憶装置22に記憶された命令を実行して、ソース画像データを生成することなどの動作を実行することができる。このように、プロセッサコア複合体18は、1つ以上の汎用マイクロプロセッサ、1つ以上の特定用途向けプロセッサ(application specific processors)(ASIC)、1つ以上のフィールドプログラマブルロジックアレイ(field programmable logic arrays)(FPGA)、又はそれらの任意の組み合わせを含むことができる。
図示したように、プロセッサコア複合体18はまた、ネットワークインタフェース24に動作可能に接続される。ネットワークインタフェース24を使用して、電子デバイス10は、ネットワーク及び/又は他の電子デバイスに通信可能に接続することができる。例えば、ネットワークインタフェース24は、電子デバイス10を、Bluetooth(登録商標)ネットワークなどのパーソナルエリアネットワーク(personal area network)(PAN)、802.11x Wi−Fi(登録商標)ネットワークなどのローカルエリアネットワーク(local area network)(LAN)、4G又はLTE(登録商標)セルラーネットワークなどの広域ネットワーク(wide area network)(WAN)に接続してもよい。このようにして、ネットワークインタフェース24は、電子デバイス10が画像データをネットワークに送信する、及び/又はネットワークから画像データを受信することを可能にすることができる。
加えて、図示したように、プロセッサコア複合体18は、電源26に動作可能に接続される。いくつかの実施形態では、電源26は、電子デバイス10内のプロセッサコア複合体18及び/又は他の構成要素を動作させるための電力を供給することができる。したがって、電源26は、充電式リチウムポリマー(lithium polymer)(Li−poly)バッテリ及び/又は交流(AC)電力変換器などの任意の好適なエネルギ源を含んでもよい。
更に、図示したように、プロセッサコア複合体18は、I/Oポート16及び入力デバイス14に動作可能に接続される。いくつかの実施形態では、I/Oポート16は、電子デバイス10が様々な他の電子デバイスとインタフェースすることを可能にすることができる。加えて、いくつかの実施形態では、入力デバイス14は、ユーザが電子デバイス10と双方向作用することを可能にすることができる。例えば、入力デバイス14は、ボタン、キーボード、マウス、トラックパッドなどを含んでもよい。加えて又は代わりに、電子ディスプレイ12は、そのスクリーン(例えば、電子ディスプレイ12の表面)をタッチする物体の発生及び/又は位置を検出することにより電子デバイス10へのユーザ入力を可能にするタッチ感知構成要素を含むことができる。
ユーザ入力を可能にすることに加えて、電子ディスプレイ12は、画像を(例えば、1つ以上の画像フレーム内に)表示することにより情報の視覚表現を提供することを容易にする。例えば、電子ディスプレイ12は、オペレーティングシステムのグラフィカルユーザインタフェース(graphical user interface)(GUI)、アプリケーションインタフェース、テキスト、静止画、又はビデオコンテンツを表示することができる。画像を表示することを容易にするために、電子ディスプレイ12は、1つ以上の表示画素を有するディスプレイパネルを含むことができる。加えて、それぞれの表示画素は、1つの色成分(例えば、赤色、青色、又は緑色)のルミナンスをそれぞれ制御する1つ以上の副画素を含むことができる。
上述したように、電子ディスプレイ12は、対応する画像データ(例えば、画像画素画像データ及び/又は表示画素画像データ)に少なくとも部分的に基づいて副画素のルミナンスを制御することにより画像を表示することができる。いくつかの実施形態では、画像データは、例えば、ネットワークインタフェース24及び/又はI/Oポート16を介して別の電子デバイスから受信することができる。加えて又は代わりに、画像データは、プロセッサコア複合体18及び/又は画像処理回路27によって生成することができる。
上述したように、電子デバイス10は、任意の好適な電子デバイスであってもよい。図示目的で、好適な電子デバイス10の一実施例、具体的にはハンドヘルドデバイス10Aを図2に示す。いくつかの実施形態では、ハンドヘルドデバイス10Aは、ポータブル電話機、メディアプレーヤ、パーソナルデータオーガナイザ、ハンドヘルドゲームプラットフォーム及び/又は同様なものとすることができる。例えば、ハンドヘルドデバイス10Aは、Apple Inc.から入手可能な任意のiPhone(登録商標)モデルなどのスマートフォンとすることができる。
図示したように、ハンドヘルドデバイス10Aは、エンクロージャ28(例えば、筐体)を含む。いくつかの実施形態では、エンクロージャ28は、内部構成要素を物理的破損から保護する及び/又は電磁干渉から遮蔽することができる。加えて、図示したように、エンクロージャ28は、電子ディスプレイ12を囲む。図示した実施形態では、電子ディスプレイ12は、アイコン32のアレイを有するグラフィカルユーザインタフェース(GUI)30を表示している。例として、アイコン32が電子ディスプレイ12の入力デバイス14又はタッチ感知構成要素のいずれかによって選択されると、アプリケーションプログラムを起動することができる。
更に、図示するように、入力デバイス14は、エンクロージャ28を通って開いている。上述したように、入力デバイス14は、ユーザがハンドヘルドデバイス10Aと双方向作用することを可能にすることができる。例えば、入力デバイス14は、ユーザに、ハンドヘルドデバイス10Aをアクティブ若しくは非アクティブにすること、ユーザインタフェースをホーム画面にナビゲーションすること、ユーザインタフェースをユーザが構成変更可能なアプリケーション画面にナビゲーションすること、音声認識機能、音量調節を提供すること、及び/又は振動モードと鳴動モードとの間で切り換えることを可能にすることができる。図示するように、I/Oポート16もまた、エンクロージャ28を通して開いている。いくつかの実施形態では、I/Oポート16は、例えば、外部デバイスに接続するためのオーディオジャックを含んでもよい。
更に例示するために、好適な電子デバイス10の別の実施例、具体的にはタブレットデバイス10Bを図3に示す。例示のために、タブレットデバイス10Bは、Apple Inc.から入手可能な任意のiPad(登録商標)モデルであってもよい。好適な電子デバイス10の更なる実施例、具体的にはコンピュータ10Cを図4に示す。例示のために、コンピュータ10Cは、Apple Inc.から入手可能な任意のMacbook(登録商標)又はiMac(登録商標)モデルであってもよい。好適な電子デバイス10の別の実施例、具体的には携帯時計10Dを図5に示す。例示するために、携帯時計10Dは、Apple Inc.から入手可能な任意のApple Watch(登録商標)モデルであってもよい。図示したように、タブレットデバイス10B、コンピュータ10C、及び携帯時計10Dもそれぞれ、電子ディスプレイ12、入力デバイス14、I/Oポート16、及びエンクロージャ28を含む。
上述したように、電子ディスプレイ12は、例えば、プロセッサコア複合体18及び/又は画像処理回路27から受信される画像データに少なくとも部分的に基づいて画像を表示してもよい。加えて、上述したように、画像データは、電子ディスプレイ12上に画像を表示するために使用される前に処理することができる。いくつかの実施形態では、ディスプレイパイプラインは、例えば、対応する画素位置に関連付けられたゲイン値に基づいて画像データを処理して、電子ディスプレイ12の知覚される画像品質を改善することを容易にすることができる。
図示目的で、ディスプレイパイプライン36を含む電子デバイス10の一部分34を、図6に示す。いくつかの実施形態では、ディスプレイパイプライン36は、電子デバイス10内の回路、電子ディスプレイ12内の回路、又はそれらの組み合わせによって実装することができる。例えば、ディスプレイパイプライン36は、プロセッサコア複合体18、画像処理回路27、電子ディスプレイ12内のタイミングコントローラ(timing controller)(TCON)、又はそれらの任意の組み合わせに含めることができる。
図示したように、電子デバイス10の一部分34はまた、画像データソース38、ディスプレイドライバ40、コントローラ42、及び外部メモリ44を含む。いくつかの実施形態では、コントローラ42は、ディスプレイパイプライン36、画像データソース38、及び/又はディスプレイドライバ40の動作を制御することができる。動作の制御を容易にするために、コントローラ42は、コントローラプロセッサ50及びコントローラメモリ52を含むことができる。いくつかの実施形態では、コントローラプロセッサ50は、コントローラメモリ52に記憶された命令を実行することができる。したがって、いくつかの実施形態では、コントローラプロセッサ50は、プロセッサコア複合体18、画像処理回路27、電子ディスプレイ12内のタイミングコントローラ、別個の処理モジュール、又はそれらの任意の組み合わせに含めることができる。加えて、いくつかの実施形態では、コントローラメモリ52は、ローカルメモリ20、メインメモリ記憶装置22、外部メモリ44、ディスプレイパイプライン36の内部メモリ46、別個の有形的非一時的コンピュータ可読媒体、又はそれらの任意の組み合わせに含めることができる。
図示した実施形態では、ディスプレイパイプライン36は、画像データソース38に通信可能に接続される。このようにして、ディスプレイパイプライン36は、例えば、ソース(例えば、RGB)形式で及び/又は矩形画像として、画像データソース38から電子ディスプレイ12上に表示されることになる画像に対応する画像データを受信することができる。いくつかの実施形態では、画像データソース38は、プロセッサコア複合体18、画像処理回路27、又はそれらの組み合わせに含めることができる。
上述したように、ディスプレイパイプライン36は、画像データソース38から受信した画像データを処理することができる。画像データを処理するために、ディスプレイパイプライン36は、1つ以上の画像データ処理ブロック54を含むことができる。例えば、図示した実施形態では、画像データ処理ブロック54は、副画素レイアウトリサンプラ(sub-pixel layout resampler)(SPLR)ブロック56を含む。いくつかの実施形態では、画像データ処理ブロック54は、環境適応画素(ambient adaptive pixel)(AAP)ブロック、動的画素バックライト(dynamic pixel backlight)(DPB)ブロック、白色点補正(white point correction)(WPC)ブロック、副画素レイアウト補償(sub-pixel layout compensation)(SPLC)ブロック、焼き付き補償(burn-in compensation)(BIC)ブロック、パネル応答補正(panel response correction)(PRC)ブロック、ディザリングブロック、副画素均一性補償(sub-pixel uniformity compensation)(SPUC)ブロック、コンテンツフレーム依存持続時間(content frame dependent duration)(CDFD)ブロック、環境光感知(ambient light sensing)(ALS)ブロック、又はそれらの任意の組み合わせを、加えて又は代わりに含むことができる。
以下により詳細に説明するように、ディスプレイパイプライン36は、外部メモリ44及び/又は内部メモリ46に記憶したデータに少なくとも部分的に基づいて、画像データソース38から受信した画像データを処理することができる。一般的に、内部メモリ46に対して、外部メモリ44にデータを記憶することにより、様々な実装に関連付けられたコスト及び/又は処理効率のトレードオフを引き起こすことがある。例えば、物理的サイズの制約条件に少なくとも部分的に起因して、外部メモリ44の記憶容量を増大することは、内部メモリ46の記憶容量を増大することより容易であり得る。そのように、外部メモリ44の記憶容量は、概して、内部メモリ46の記憶容量より大きくすることができる。
加えて、外部メモリ44及び内部メモリ46へのアクセスは、異なることがある。例えば、内部メモリ46は、ディスプレイパイプライン36による使用に専用とすることができる。換言すれば、内部メモリ46に記憶されたデータは、例えば、ディスプレイパイプライン36の処理効率を改善することを容易にすることができる低減した待ち時間で、ディスプレイパイプライン36によってより容易にアクセス可能である。比較すると、ディスプレイパイプライン36の外部であるため、ディスプレイパイプライン36は、ダイレクトメモリアクセス(DMA)チャネル58を介して外部メモリ44にアクセスすることができる。しかし、このようにしてデータアクセスを提供するために、ダイレクトメモリアクセスチャネル58は、実装に関連付けられたコストを増加する増大した帯域幅を有して実装され得る。更に、外部メモリ44が他の構成要素と共有される場合、データアクセス待ち時間、したがってディスプレイパイプライン36の処理効率に影響を及ぼすことがある。
処理後に、ディスプレイパイプライン36は、表示画素画像データなどの処理した画像データをディスプレイドライバ40に出力することができる。処理した画像データに少なくとも部分的に基づいて、ディスプレイドライバ40は、アナログ電気信号を電子ディスプレイ12の表示画素に適用して、1つ以上の画像フレーム内に画像を表示することができる。このようにして、ディスプレイパイプライン36は、動作して、電子ディスプレイ12上の情報の視覚表現を提供することを容易にすることができる。
図示目的で、ディスプレイパイプライン36を動作させるためのプロセス60の一実施形態を、図7に示す。一般的に、プロセス60は、画像画素画像データを受信すること(プロセスブロック62)と、画像画素画像データを処理して表示画素画像データを決定すること(プロセスブロック64)と、表示画素画像データを出力すること(プロセスブロック66)とを含む。いくつかの実施形態では、プロセス60は、ディスプレイパイプライン36内に形成された回路接続に基づいて実施することができる。加えて又は代わりに、いくつかの実施形態では、プロセス60は、コントローラプロセッサ50などの処理回路を用いてコントローラメモリ52などの有形的非一時的コンピュータ可読媒体に記憶された命令を実行することにより実施することができる。
上述したように、ディスプレイパイプライン36は、画像データソース38から、画像内の点(例えば、画像画素)の色成分の目標ルミナンスを示す画像画素画像データを受信することができる(プロセスブロック62)。いくつかの実施形態では、画像画素画像データは、矩形画像に対応することができる。加えて、いくつかの実施形態では、画像画素画像データは、ソース形式とすることができる。例えば、ソース形式がRGB形式である場合、画像画素画像データは、対応する画素位置での赤色成分の目標ルミナンス、青色成分の目標ルミナンス、及び緑色成分の目標ルミナンスを示すことができる。
加えて、コントローラ42は、ディスプレイパイプライン36に、画像画素画像データを処理して、電子ディスプレイ12の表示画素の色成分の目標ルミナンスを示す表示画素画像データを決定し(プロセスブロック64)、表示画素画像データをディスプレイドライバ40に出力する(プロセスブロック66)ように命令することができる。表示画素画像データを決定するために、ディスプレイパイプライン36は、ソース形式から表示形式に画像データを変換することができる。いくつかの実施形態では、ディスプレイパイプライン36は、電子ディスプレイ12内の副画素のレイアウトに少なくとも部分的に基づくことができる表示形式を決定することができる。例えば、一部の表示画素が緑及び赤の副画素を含み、他の表示画素が緑及び青の副画素を含む場合、表示形式は、緑−赤及び緑−青(green-red and green-blue)(GRGB)形式とすることができる。
図示目的で、副画素レイアウトリサンプラブロック56を含むディスプレイパイプライン36の一部分68を、図8に示す。図示したように、副画素レイアウトリサンプラブロック56は、現在の画像画素に対応する画像画素画像データ70を受信し、現在の表示画素に対応する表示画素画像データ72を出力する。いくつかの実施形態では、副画素レイアウトリサンプラブロック56は、別の画像データ処理ブロック54及び/又は画像データソース38から画像画素画像データ70を受信することができる。加えて、いくつかの実施形態では、副画素レイアウトリサンプラブロック56は、別の画像データ処理ブロック54及び/又はディスプレイドライバ40に表示画素画像データ72を出力することができる。
表示画素画像データ72を生成することを容易にするために、副画素レイアウトリサンプラブロック56は、デガンマ(de-gamma)ブロック78、エッジ検出ブロック80、フィルタブロック82、ゲイン展開ブロック84、境界検出ブロック86、及びリガンマ(re-gamma)ブロック88を含むことができる。いくつかの実施形態では、画像画素画像データ70は、ガンマ(例えば、非線形)ドメイン内とすることができる。その後の処理を容易にするために、デガンマブロック78は、画像画素画像データ70を線形ドメインに変換することができる。
加えて、エッジ検出ブロック80は、現在の表示画素のオフセット副画素で発生するエッジの可能性及び/又はオフセット副画素でのエッジの予想される方向などのエッジパラメータを決定することができる。いくつかの実施形態では、エッジ検出ブロック80は、オフセット副画素の周囲のエリアの傾斜などのオフセット副画素の特性に少なくとも部分的に基づいて、エッジパラメータを決定することができる。特性を決定することを容易にするために、エッジ検出ブロック80は、特性を示す統計値を決定することができる。例えば、エッジ検出ブロック80は、オフセット副画素の周囲の傾斜を示し、したがってエッジパラメータを決定するために使用し得る、オフセット副画素の周囲の画像画素ブロック間の差の測定値(例えば、差分絶対値の和)を決定することができる。
いくつかの実施形態では、画像データバッファ76は、例えば、現在の画像画素に隣接する画素位置での他の画像画素に対応する画像データを記憶することができる。換言すれば、フレームバッファは、オフセット副画素の周囲の画像画素ブロックに対応する画像データを記憶することができる。したがって、エッジパラメータを決定することを容易にするために、副画素レイアウトリサンプラブロック56は、画像データバッファ76に通信可能に接続することができる。
更に、フィルタブロック82は、エッジパラメータに少なくとも部分的に基づいて、ソース(例えば、RGB)形式から表示(例えば、GRGB)形式に画像画素画像データを変換することができる。表示形式に変換するために、いくつかの実施形態では、フィルタブロック82は、フィルタパラメータを決定して画像画素画像データ70に適用することができる。例えば、フィルタブロック82は、RGBの画像画素画像データ70をフィルタリング(例えば、サンプリング)して、緑−赤(green-red)(GR)又は緑−青(green-blue)(GB)形式の表示画素画像データ72を生成することができる。換言すれば、フィルタブロック82は、オフセット副画素に対応する画像データ及び現在の表示画素の同じ場所に配置された副画素に対応する画像データを決定することができる。
いくつかの実施形態では、フィルタブロック82は、現在の画像画素の現在の画素位置に関連付けられたゲイン値に少なくとも部分的に基づいて、画像画素画像データ70に適用されることになるフィルタパラメータを決定することができる。加えて、フィルタリングした後で、フィルタブロック82は、現在の画素位置に関連付けられたゲイン値を表示画素画像データ72に適用することができる。いくつかの実施形態では、ディスプレイパイプライン36は、画素位置に関連付けられたゲイン値をアルゴリズムで計算することができる。
加えて又は代わりに、ゲイン値は、予め設定してゲインマップにより記憶することができる。いくつかの実施形態では、非圧縮ゲインマップは、それぞれの画素位置をゲイン値のセットに明示的に関連付ける(例えば、マッピングする)ことができる。画素位置に関連付けられたゲイン値のセットは、画素位置での表示画素のそれぞれの副画素に対して1つのゲイン値を含むことができる。例えば、表示画素が赤の副画素、青の副画素、及び緑の副画素を含むとき、その画素位置に関連付けられたゲイン値のセットは、赤色のゲイン値、青色のゲイン値、及び緑色のゲイン値を含むことができる。加えて、表示画素が緑の副画素及び赤の副画素を含むとき、その画素位置に関連付けられたゲイン値のセットは、赤色のゲイン値及び緑色のゲイン値を含むことができる。更に、表示画素が緑の副画素及び青の副画素を含むとき、その画素位置に関連付けられたゲイン値のセットは、青色のゲイン値及び緑色のゲイン値を含むことができる。
非圧縮ゲインマップがゲイン値セットをそれぞれの表示画素に対応する画素位置に少なくとも関連付けるため、非圧縮ゲインマップのサイズは、電子ディスプレイ12の解像度に基づいて変化する。換言すれば、非圧縮ゲインマップのサイズは、特に、電子ディスプレイの解像度が増大し続けるに従って、相対的に大きくなることがある。したがって、いくつかの実施形態では、非圧縮ゲインマップは、外部メモリ44に記憶して、ダイレクトメモリアクセスチャネル58を介してアクセスすることができる。
しかし、上述したように、ディスプレイパイプライン36に外部メモリ44へのアクセスを提供することにより、実装に関連付けられたコスト及び/又は処理効率に影響を及ぼすことがある。したがって、いくつかの実施形態では、それぞれの画素位置に関連付けられたゲイン値を示すデータは、内部メモリ46に記憶することができる。例えば、図示した実施形態では、内部メモリ46は、対応する非圧縮ゲインマップを圧縮することにより決定することができる圧縮ゲインマップ90、及び対応する(例えば、上部、下部、左側、又は右側)表示領域境界に沿った表示画素に適用されることになるゲイン値をそれぞれ示す1つ以上のプログラム可能な境界ゲイン値インジケータ92を記憶する。
したがって、現在の画素位置に関連付けられたゲイン値を決定することを容易にするために、ゲイン展開ブロック84は、圧縮ゲインマップ90を展開することができる。加えて、境界検出ブロック86は、現在の表示画素が表示領域の境界に沿っているか否かを判定して、現在の表示画素が境界に沿っているときにプログラム可能な境界ゲイン値インジケータ92のうちの対応する1つを決定することができる。上述したように、ゲイン値に少なくとも部分的に基づいて、副画素レイアウトリサンプラブロック56は、画像画素画像データ70を処理して、表示画素画像データ72を決定することができる。線形ドメインで決定されたため、リガンマブロック88は、表示画素画像データ72をガンマドメインに変換することができる。加えて、表示形式であるため、副画素レイアウトリサンプラブロック56は、表示画素画像データ72をソース形式にアップスケーリングすることができる。
したがって、表示画素画像データ72を決定することを容易にするため、圧縮ゲインマップ90及びプログラム可能な境界ゲイン値インジケータ92を、決定して内部メモリ46に記憶することができる。いくつかの実施形態では、設計デバイスは、対応する非圧縮ゲインマップに少なくとも部分的に基づいて、圧縮ゲインマップ90を決定することができる。加えて、いくつかの実施形態では、設計デバイスは、ディスプレイパイプライン36及び/又は電子ディスプレイ12の配置前に、圧縮ゲインマップ90及びプログラム可能な境界ゲイン値インジケータ92を内部メモリ46に記憶することができる。
図示目的で、内部メモリ46に通信可能に接続された設計デバイス94の一実施形態を、図9に示す。加えて、圧縮ゲインマップ90の一実施例が、内部メモリ46に記憶されている。例示的な圧縮ゲインマップ90は、単に例示することを意図しているに過ぎず、限定するものではないことを理解されたい。換言すれば、他の実施形態における圧縮ゲインマップ90は、例えば、設計デバイス94によって実施される圧縮技術に基づいて、異なってもよい。
上述したように、設計デバイス94は、圧縮ゲインマップ90を決定して内部メモリ46に記憶することができる。圧縮ゲインマップ90を決定することを容易にするために、設計デバイス94は、デバイスプロセッサ96及びデバイスメモリ98を含むことができる。いくつかの実施形態では、デバイスプロセッサ96は、デバイスメモリ98に記憶された命令を実行することができる。したがって、いくつかの実施形態では、デバイスプロセッサ96は、プロセッサコア複合体18、画像処理回路27、電子ディスプレイ12内のタイミングコントローラ、コントローラプロセッサ50、別個の処理モジュール、又はそれらの任意の組み合わせに含めることができる。加えて、いくつかの実施形態では、デバイスメモリ98は、ローカルメモリ20、メインメモリ記憶装置22、外部メモリ44、内部メモリ46、コントローラメモリ52、別個の有形的非一時的コンピュータ可読媒体、又はそれらの任意の組み合わせに含めることができる。
図示した実施形態では、圧縮ゲインマップ90は、ランマップ100、位置マップ102、ゲイン値マップ104、及び内部メモリ46のプログラム可能なレジスタ106に記憶することができる1つ以上のインジケータを含む。いくつかの実施形態では、ランマップ100は、ゲインマップ行の数、したがって、それぞれの行ランに含まれた画素位置行の数を示すことができる。以下により詳細に説明するように、単位ゲイン値のみをそれぞれ含む1つ以上の連続したゲインマップ行は、コード化されない行ランにグループ化することができる。加えて、少なくとも1つの中間ゲイン値又はゼロゲイン値をそれぞれ含む1つ以上の連続したゲインマップ行は、コード化された行ランにグループ化することができる。したがって、以下により詳細に説明するように、画素位置を含む行ランは、ランマップ100に少なくとも部分的に基づいて決定することができる。
いくつかの実施形態では、開始行ランインジケータ108は、行ランがコード化された行ランかコード化されない行ランかを示すことができる。例えば、ゼロの開始行ランインジケータ108は、行ランがコード化されたランであることを示すことができ、1の開始行ランインジケータ108は、行ランがコード化されないランであることを示すことができる、又はその逆も同様である。いくつかの実施形態では、開始行ランインジケータ108は、それぞれの行ランに関連付けて、対応する行ランの分類を明示的に示すことができる。圧縮ゲインマップ90のサイズを低減することを容易にするために、他の実施形態では、行ランがコード化された行ランとコード化されない行ランとの間で交互になることができるとき、開始行ランインジケータ108は、第1(例えば、最上位)の行ランのみに関連付けることができる。したがって、以下により詳細に説明するように、行ランの分類、したがって、画素位置を含むゲインマップ行は、ランマップ100及び開始行ランインジケータ108に少なくとも部分的に基づいて決定することができる。
加えて、いくつかの実施形態では、位置マップ102は、それぞれのコード化された行のゲインランに含まれた画素位置を示すことができる。以下により詳細に説明するように、少なくとも1つの中間(例えば、ゼロと1との間の)ゲイン値をそれぞれ含む1つ以上の連続したゲインマップ入力は、中間ゲインランにグループ化することができる。加えて、ゼロゲイン値のみ又は単位ゲイン値のみをそれぞれ含む1つ以上の連続したゲインマップ入力は、位置ゲインランにグループ化することができる。換言すれば、位置ゲインランは、ゼロゲインラン又は単位ゲインランとすることができる。
ゲインランに含まれた画素位置を決定することを容易にするために、いくつかの実施形態では、位置マップ102は、ゲインランに含まれた画素位置の数を示すことができる。加えて、いくつかの実施形態では、コード化された行は、位置ゲインランと中間ゲインランとの間で交互になることができる。更に、いくつかの実施形態では、位置マップ102は、第2のゲインランに含まれた画素位置に対する第1のゲインランに含まれた画素位置を示すことができる。したがって、以下により詳細に説明するように、画素位置を含むゲインランは、位置マップ100に少なくとも部分的に基づいて決定することができる。
いくつかの実施形態では、位置ゲイン値インジケータ110は、対応する位置ラン内のそれぞれの画素位置に関連付けられたゲイン値を示すことができる。例えば、ゼロの位置ゲイン値インジケータ110は、対応する位置ラン内の画素位置に関連付けられたそれぞれ(例えば、赤色、緑色、及び/又は青色)のゲイン値がゼロであることを示すことができる。加えて、1の位置ゲイン値インジケータ110は、対応する位置ラン内の画素位置に関連付けられたそれぞれのゲイン値が1であることを示すことができる。いくつかの実施形態では、位置ゲイン値インジケータ110は、それぞれの位置ランに関連付けることができる。したがって、以下により詳細に説明するように、位置ラン内の画素位置に関連付けられたゲイン値は、対応する位置ゲイン値インジケータ110に少なくとも部分的に基づいて決定することができる。
更に、いくつかの実施形態では、ゲイン値マップ104は、それぞれの中間ゲインラン内の画素位置に関連付けられたゲイン値を示すことができる。いくつかの実施形態では、画素位置に関連付けられたゲイン値セットは、画素位置での表示画素の副画素当たり1つのゲイン値を含むことができる。例えば、中間ゲインラン内の画素位置での表示画素が3つの副画素を含む場合、ゲイン値マップ104は、画素位置を3つのゲイン値に関連付けることができる。加えて、中間ゲインラン内の画素位置での表示画素が同じ場所に配置された副画素及びオフセット副画素を含む場合、ゲイン値マップ104は、画素位置を同じ場所に配置されたゲイン値及びオフセットゲイン値に関連付けることができる。
加えて又は代わりに、画素位置に関連付けられたゲイン値セットは、画素位置での表示画素の色成分当たり1つのゲイン値を含むことができる。例えば、中間ゲインラン内の画素位置での表示画素が赤の副画素及び緑の副画素を含む場合、ゲイン値マップ104は、画素位置を赤色のゲイン値及び緑色の副画素に関連付けることができる。加えて、中間ゲインラン内の画素位置での表示画素が青の副画素及び緑の副画素を含む場合、ゲイン値マップ104は、画素位置を青色のゲイン値及び緑色の副画素に関連付けることができる。したがって、以下により詳細に説明するように、中間ゲインラン内の画素位置に関連付けられたゲイン値は、ゲイン値マップ104に少なくとも部分的に基づいて決定することができる。
設計デバイス94を動作させるためのプロセス112の一実施形態を、図10に示す。一般的に、プロセス112は、非圧縮ゲインマップを決定することと(プロセスブロック114)、圧縮ゲインマップを決定することと(プロセスブロック116)、圧縮ゲインマップを記憶することと(プロセスブロック118)を含む。いくつかの実施形態では、プロセス112は、デバイスプロセッサ96などの処理回路を用いてデバイスメモリ98などの有形的非一時的コンピュータ可読媒体に記憶された命令を実行することにより実施することができる。
したがって、いくつかの実施形態では、設計デバイス94は、非圧縮ゲインマップを決定することができる(プロセスブロック114)。上述したように、非圧縮ゲインマップは、それぞれの画素位置をゲイン値セットに明示的に関連付ける(例えば、マッピングする)ことができる。加えて、いくつかの実施形態では、非圧縮ゲインマップは、電子ディスプレイ12の副画素レイアウト、画像データソース38から受信した画像画素画像データ70に対応する画像の形状、及び/又は電子ディスプレイ12の表示領域形状に少なくとも部分的に基づいて決定することができる。
図示目的で、例示的な矩形画像フレーム120を、図11に示す。図示したように、矩形画像フレーム120は、90度の4つの角124によって接続された4つの直線境界125を含む。例えば、矩形画像フレーム120、左上の90度の角124Aで接続された上部直線境界125A及び左側直線境界125B。矩形画像フレーム120を表示するために、ディスプレイパイプライン36は、矩形画像フレーム120内のそれぞれの画像画素に対応する画像画素画像データ70を受信することができる。
図示目的で、矩形画像フレーム120の左上部分122内の画像画素126を、図12に示す。図示した実施形態では、それぞれの画像画素126は、画素位置に対応する。上述したように、画像画素126に対応する画像画素画像データ70は、画像内の画素位置での目標ルミナンスを示すことができる。例えば、第1の画像画素126Aに対応する画像画素画像データ70は、第1の画素位置での赤色成分の目標ルミナンス、青色成分の目標ルミナンス、及び緑色成分の目標ルミナンスを示すことができる。
しかし、上述したように、異なる電子ディスプレイ12は、異なる表示領域形状を有することができる。図示目的で、非矩形表示領域128の一実施例を、図13に示す。図示した表示領域は、単に例示することを意図しているに過ぎず、限定するものではないことを理解されたい。換言すれば、他の電子ディスプレイ12に実装される非矩形表示領域は、形状が異なってもよい。例えば、電子ディスプレイ12は、円形状(例えば、非矩形)の表示領域を有して実装することができる。
図示したように、非矩形表示領域128は、丸みのある(例えば、曲線状の)境界130によって接続された複数の直線境界134を含む。例えば、非矩形表示領域128は、左上の丸みのある境界130Aを介して接続された上部直線境界134A及び左側直線境界134Bを含む。いくつかの実施形態では、非矩形表示領域128は、それにもかかわらず90度の1つ以上の角132を含むことができる。
上述したように、電子ディスプレイ12は、対応する画像データに基づいて画像を表示することができる。例えば、電子ディスプレイ12は、画像画素画像データ70を処理することにより生成された表示画素画像データ72に基づいて、その表示画素のルミナンスを制御することにより画像を表示することができる。したがって、非矩形表示領域128は、電子ディスプレイ12に実装された表示画素に対応する画素位置によって画定することができる。
図示目的で、非矩形表示領域128の左上部分138内の表示画素136を、図13に示す。図示した表示画素136は、単に例示することを意図しているに過ぎず、限定するものではないことを理解されたい。換言すれば、他の電子ディスプレイ12内の表示画素136は、異なる副画素レイアウトで実装することができる。
図示した実施形態では、表示画素136は、行及び列に構成される。例えば、第1の表示画素行は、第1の表示画素136A、第2の表示画素136B、第3の表示画素136Cなどを含む。加えて、第2の表示画素行は、第4の表示画素136D、第5の表示画素136E、第6の表示画素136Fなどを含む。
上述したように、表示画素136は、対応する色成分のルミナンスをそれぞれ制御する1つ以上の副画素を含むことができる。図示した実施形態では、表示画素136は、赤の副画素138、緑の副画素140、及び青の副画素142を含む。加えて、図示した実施形態では、非矩形表示領域128内に完全に含まれた表示画素136は、2つの副画素、すなわち、緑の副画素140及び交互に赤の副画素138又は青の副画素142をそれぞれ含む。例えば、第2の表示画素行に沿って、第4の表示画素136Dは、青の副画素142及び緑の副画素140を含み、第5の表示画素136Eは、赤の副画素138及び緑の副画素140を含み、第6の表示画素136Fは、赤の副画素138及び緑の副画素140を含む、などとなっている。
非矩形表示領域128を実装するために、丸みのある境界130に沿った一部の表示画素136は、より少ない副画素を含むことができる。図示した実施形態では、そのような表示画素136は、1つの副画素、すなわち、交互に赤の副画素138又は青の副画素142をそれぞれ含むことができる。例えば、左上の丸みのある境界130Aのために、第1の表示画素136Aは、青の副画素142のみを含み、第2の表示画素136Bは、赤の副画素138のみを含み、第3の表示画素136Cは、青の副画素142のみを含む。
いずれの場合でも、上述したように、それぞれの表示画素136は、画素位置、したがって、画像データソース38から受信した画像画素に対応することができる。図示した実施形態に関して、それぞれの表示画素136は、その緑の副画素140と同じ場所に配置された画像画素126、又は対応する緑の副画素140が別の方法で配置されるであろう場所に対応することができる。換言すれば、緑の副画素140は、同じ場所に配置された副画素とすることができ、赤の副画素138及び青の副画素142は、オフセット副画素である。加えて、図示した実施形態では、オフセット副画素(例えば、赤の副画素138又は青の副画素142)は、同じ場所に配置された副画素(例えば、緑の副画素140)の右下にオフセットしている。他の実施形態では、オフセット副画素は、同じ場所に配置された副画素の右上、左上、又は左下にオフセットすることができる。
画像フレームを表示するために、それぞれの表示画素136のルミナンスは、その画素位置での画像画素126に対応する画像画素画像データ70に少なくとも部分的に基づいて制御することができる。しかし、いくつかの例では、画像フレームの形状は、電子ディスプレイ12の表示領域形状とは異なることができる。そのような例では、1つ以上の画像画素126は、表示領域の外側の画素位置に対応することができる。例えば、矩形画像フレーム120内の第1の画像画素126Aは、非矩形表示領域128の外側の画素位置143に対応することができる。換言すれば、表示画素136は、画像画素126に対応する画素位置で電子ディスプレイ12に実装されなくてもよい。
したがって、異なる形状を有する表示領域上に画像フレームを表示することを容易にするために、画像フレームは、例えば、ブラックマスクを適用することにより、表示する前に調整することができる。しかし、上述したように、表示画素136は、色ブレンドに依拠して、異なる色の範囲の知覚を可能にすることができる。換言すれば、単に表示領域の外側の画素位置に対応する画像画素を無視することにより、いくつかの例では、そうでなければ表示画素136がブレンドされるであろう隣接する表示画素136が存在しないため、丸みのある境界130に沿った表示画素136での知覚可能なエイリアシングをもたらすことがある。更に、そうでなければ表示画素136がブレンドされるであろう隣接する表示画素136が存在しないため、直線境界134に沿った表示画素136で知覚可能な色縁が発生することがある。
知覚される画像品質を改善することを容易にするために、上述したように、画像画素画像データ70は、対応する画素位置に関連付けられたゲイン値に基づいて処理することができる。加えて、上述したように、設計デバイス94は、それぞれの画素位置をゲイン値セットに明示的に関連付ける(例えば、マッピングする)非圧縮ゲインマップを決定することができる。したがって、非圧縮ゲインマップを決定するために、設計デバイス94は、それぞれの画素位置、したがって、画素位置でのそれぞれの副画素位置に関連付けられた1つ以上のゲイン値を決定することができる。
図示目的で、ゲイン値を副画素位置に関連付けるためのプロセス144の一実施形態を、図15に示す。一般的に、プロセス144は、表示領域の特性を決定することと(プロセスブロック146)、アンチエイリアシング領域を決定することと(プロセスブロック148)、副画素位置を決定することと(プロセスブロック150)、副画素位置がアンチエイリアシング領域内にあるか否かを判定することと(判定ブロック152)を含む。副画素位置がアンチエイリアシング領域内にある場合に、プロセス144は、副画素位置と表示領域の境界との間の最短距離を判定することと(プロセスブロック154)、最短距離に基づいて決定されたゲイン値を副画素位置に関連付けることと(プロセスブロック156)を含む。副画素位置がアンチエイリアシング領域内にない場合に、プロセス144は、副画素位置が表示領域内にあるか否かを判定することと(判定ブロック158)、副画素が表示領域内にあるときに単位ゲイン値を副画素位置に関連付けることと(プロセスブロック160)、副画素が表示領域内にないときにゼロのゲイン値を副画素位置に関連付けることと(プロセスブロック162)を含む。いくつかの実施形態では、プロセス144は、デバイスプロセッサ96などの処理回路を用いてデバイスメモリ98などの有形的非一時的コンピュータ可読媒体に記憶された命令を実行することにより実施することができる。
したがって、いくつかの実施形態では、設計デバイス94は、電子ディスプレイ12に実装された表示領域の予想される特性を決定することができる(プロセスブロック146)。いくつかの実施形態では、表示領域の特性は、副画素レイアウト、表示領域の形状、その境界の位置、表示領域内の副画素位置、及び/又は同様なものを含むことができる。一般的に、電子ディスプレイ12の特性は、固定することができる。したがって、いくつかの実施形態では、表示領域の予想される特性を決定して、例えば、製造業者によって1つ以上の入力デバイスを介して、設計デバイス94に入力することができる。加えて又は代わりに、設計デバイス94は、電子ディスプレイ12を分析することにより、表示領域の予想される特性を決定することができる。
知覚可能なエイリアシングを生成する可能性を低減するために、設計デバイス94は、表示領域の境界に沿った1つ以上のアンチエイリアシング領域を決定することができる(プロセスブロック148)。上述したように、知覚可能なエイリアシングは、表示領域の丸みのある境界に沿って発生することがある。したがって、いくつかの実施形態では、設計デバイス94は、丸みのある境界に隣接する1つ以上の画素位置での副画素位置を含む、表示領域の丸みのある境界に沿ったアンチエイリアシング領域を決定することができる。
図示目的で、非矩形表示領域128の左上の丸みのある角130Aに沿ったアンチエイリアシング領域164の2つの実施例を、図16及び図17に示す。具体的には、非矩形表示領域128の外側の副画素位置166を含む第1のアンチエイリアシング領域164Aを、図16に示す。一方、非矩形表示領域128の内側の副画素位置166を含む第2のアンチエイリアシング領域164Bを、図17に示す。例示したアンチエイリアシング領域164は、単に例示することを意図しているに過ぎず、限定するものではないことを理解されたい。換言すれば、他の実施形態は、異なる形状及び/又は異なる数の副画素位置を有するアンチエイリアシング領域164を実装することができる。
図16に関して、第1のアンチエイリアシング領域164Aは、それぞれが左上の丸みのある角130Aから固定閾値距離内の副画素166を含む。いくつかの実施形態では、固定閾値距離は、隣接する画素位置間の予想される距離、隣接する画像画素126間の予想される距離、又は隣接する表示画素136内の同じ場所に配置された副画素間の予想される距離とすることができる。したがって、いくつかの実施形態では、丸みのある表示領域境界から一定距離内の副画素位置166を含むように、アンチエイリアシング領域164を決定することができる。
加えて、図17に関して、第2のアンチエイリアシング領域164Bは、それぞれが左上の丸みのある角130Aから可変距離の閾値距離内の副画素位置166を含む。いくつかの実施形態では、距離閾値は、丸みのある表示領域境界の湾曲に少なくとも部分的に基づいて、変化することができる。例えば、左上の丸みのある角130Aの形状及び副画素レイアウトに起因して、可変距離閾値は、左上の丸みのある角130Aの中央部分でより大きくすることができる。したがって、いくつかの実施形態では、丸みのある表示領域境界から可変距離内の副画素位置166を含むように、アンチエイリアシング領域164を決定することができる。
いくつかの実施形態では、アンチエイリアシング領域164は、含まれる副画素位置166によって示すことができる。したがって、その後にアンチエイリアシング領域164を識別することを容易にするために、設計デバイスは、アンチエイリアシング領域164の特性を予め設定して、その含まれる副画素位置をデバイスメモリ98などのメモリ構成要素に記憶することができる。同様な方法で、設計デバイス94は、それぞれの丸みのある表示領域境界に沿ったアンチエイリアシング領域164を決定することができる。
図15のプロセス144に戻って、設計デバイス94は、副画素位置を決定することができる(プロセスブロック150)。上述したように、表示画素136は、1つ以上の副画素を含むことができる。したがって、表示画素136に対応する画素位置は、1つ以上の副画素のそれぞれに対応する副画素位置を含むことができる。いくつかの実施形態では、副画素位置を決定して、例えば、製造業者によって1つ以上の入力デバイスを介して、設計デバイス94に入力することができる。加えて又は代わりに、設計デバイス94は、電子ディスプレイ12及び/又は予想される画像画素画像データ70を分析することにより、副画素位置を決定することができる。
設計デバイス94は、副画素位置がアンチエイリアシング領域164内であることが予想されるか否かを判定することができる(判定ブロック152)。上述したように、いくつかの実施形態では、アンチエイリアシング領域164は、デバイスメモリ98などのメモリ構成要素に記憶することができる、含まれる副画素位置によって示すことができる。したがって、そのような実施形態では、設計デバイス94は、メモリ構成要素をポーリングして、アンチエイリアシング領域164に含まれる副画素位置を決定し、副画素位置をアンチエイリアシング領域164に含まれた副画素位置と比較することにより、副画素位置がアンチエイリアシング領域164内であることが予想されるか否かを判定することができる。加えて又は代わりに、設計デバイス94は、アンチエイリアシング領域164に関連付けられた距離閾値に少なくとも部分的に基づいて、副画素位置がアンチエイリアシング領域164内であることが予想されるか否かを判定することができる。
アンチエイリアシング領域164内でない場合、設計デバイス94は、副画素位置が表示領域内であることが予想されるか否かを判定することができる(判定ブロック158)。上述したように、いくつかの実施形態では、表示領域は、デバイスメモリ98などのメモリ構成要素に記憶することができる、含まれる副画素位置によって示すことができる。したがって、そのような実施形態では、設計デバイス94は、メモリ構成要素をポーリングして、表示領域に含まれる副画素位置を決定し、副画素位置を表示領域に含まれた副画素位置と比較することにより、副画素位置が表示領域内であることが予想されるか否かを判定することができる。
副画素位置が表示領域内であることが予想されない場合、設計デバイス94は、副画素が副画素位置に電子ディスプレイ12に実装されていることが予想されないことを決定する、したがって、副画素位置をゼロのゲイン値に関連付けることができる(プロセスブロック162)。一方、副画素位置が表示領域内であることが予想される場合、設計デバイス94は、副画素が副画素位置に電子ディスプレイ12に実装されていることが予想されることを決定する、したがって、副画素位置を単位ゲイン値に関連付けることができる(プロセスブロック160)。このようにして、設計デバイス94は、適用されると表示領域の外側の副画素位置に対応する画像データに適用されるブラックマスクとなるゲイン値を決定することができる。
副画素位置がアンチエイリアシング領域164内であることが予想される場合、設計デバイス94は、副画素位置と表示領域の境界との間の予想される距離を決定することができる(プロセスブロック154)。上述したように、いくつかの実施形態では、表示領域の予想される特性は、予め設定して、デバイスメモリ98などのメモリ構成要素に記憶することができる。したがって、そのような実施形態では、設計デバイス94は、メモリ構成要素をポーリングして、表示領域境界の予想される位置を決定し、副画素位置と表示領域境界の予想される位置との間の相対距離に少なくとも部分的に基づいて、副画素位置と表示領域境界との間の予想される距離を決定することができる。
表示領域境界からの最短距離に少なくとも部分的に基づいて、設計デバイス94は、ゲイン値を副画素位置に関連付けることができる(プロセスブロック156)。いくつかの実施形態では、ゲイン値は、副画素と表示領域境界との間の最短距離に反比例することができる。換言すれば、副画素と表示領域境界との間の予想される距離が増大するに従って、ゲイン値を減少させることができる。このようにして決定されたゲイン値を適用することにより、副画素を相対的に線形に暗くすることができ、これにより、表示領域境界の丸みのある部分に沿った知覚可能なエイリアシングを生成する可能性を低減することができる。
同様な方法で、設計デバイス94は、ゲイン値をそれぞれの副画素位置、したがって、それぞれの画素位置に関連付けることができる。上述したように、非圧縮ゲインは、ゲイン値セットをそれぞれの画素位置に明示的に関連付ける(例えば、マッピングする)ことができる。したがって、設計デバイス94は、それぞれの副画素位置に関連付けられたゲイン値に基づいて非圧縮ゲインマップを決定することができる。
図示目的で、非圧縮ゲインマップ170の一実施例を、図18に示す。説明した非圧縮ゲインマップ170は、単に例示することを意図しているに過ぎず、限定するものではないことを理解されたい。換言すれば、他の実施形態は、他の形態の非圧縮ゲインマップ170を実装することができる。
いずれの場合でも、図示した実施形態では、非圧縮ゲインマップ170は、複数のゲインマップ行172に構成されたゲインマップ入力174を含む。それぞれのゲインマップ入力174は、画素位置に対応する、したがって、画素位置をゲイン値セットに明示的にマッピングすることができる。例えば、第1のゲインマップ入力174Aは、最初の画像画素126Aの画素位置143をゲイン値セットに関連付けることができる。上述したように、画素位置は、1つ以上の副画素位置を含むことができ、ゲイン値セットは、画素位置でのそれぞれの副画素位置に対応するゲイン値を含むことができる。換言すれば、ゲインマップ入力174は、ゲイン値を対応する画素位置でのそれぞれの副画素位置に明示的にマッピングすることができる。
上述したように、非圧縮ゲインマップ170のサイズは、電子ディスプレイ12の解像度に依存し得、したがって、相対的に大きくなり得る。したがって、いくつかの実施形態では、設計デバイス94は、非圧縮ゲイン170を外部メモリ44に記憶して、それによって、ダイレクトメモリアクセスチャネル58を介してディスプレイパイプライン36に非圧縮ゲイン170へのアクセスを提供することができる。しかし、上述したように、ダイレクトメモリアクセスチャネル58を介してディスプレイパイプライン36に非圧縮ゲイン170へのアクセスを提供することにより、実装に関連付けられたコスト(例えば、ダイレクトメモリアクセスチャネル58の帯域幅を増大するための)及び/又はディスプレイパイプライン36の処理効率に影響を及ぼすことがある。
したがって、図10のプロセス112に戻って、設計デバイス94は、圧縮ゲインマップ90を決定することができる(プロセスブロック116)。いくつかの実施形態では、圧縮ゲインマップ90は、それぞれの画素位置をゲイン値セットに間接的に関連付けることができる。例えば、ディスプレイパイプライン36は、対応する非圧縮ゲインマップ170を決定するために圧縮ゲインマップ90を展開することにより、画素位置に関連付けられたゲイン値セットを決定することができる。したがって、いくつかの実施形態では、設計デバイス94は、対応する非圧縮ゲインマップ170に少なくとも部分的に基づいて、圧縮ゲインマップ90を決定することができる。
図示目的で、圧縮ゲインマップ90を決定するためのプロセス176の一実施形態を、図19に示す。一般的に、プロセス176は、ランマップを決定することと(プロセスブロック178)、位置マップを決定することと(プロセスブロック180)、ゲイン値マップを決定することと(プロセスブロック182)を含む。いくつかの実施形態では、プロセス176は、デバイスプロセッサ96などの処理回路を用いてデバイスメモリ98などの有形的非一時的コンピュータ可読媒体に記憶された命令を実行することにより実施することができる。
したがって、いくつかの実施形態では、設計デバイス94は、非圧縮ゲインマップ170に基づいてランマップ100を決定することができる(プロセスブロック178)。上述したように、ランマップ100は、それぞれの行ランに含まれたゲインマップ行172の数を示す。加えて、上述したように、同じ分類(例えば、コード化された行又はコード化されない行)を有する1つ以上の連続したゲインマップ行172は、行ラン(例えば、コード化された行ラン又はコード化されない行ラン)にグループ化することができる。
ランマップ100を決定するためのプロセス184の一実施形態を、図20に示す。一般的に、プロセス184は、それぞれのゲインマップ入力を分類することと(プロセスブロック185)、それぞれのゲインマップ行をコード化された行又はコード化されない行として分類することと(プロセスブロック186)、連続したコード化された行をコード化された行ランにグループ化することと(プロセスブロック188)、連続したコード化されない行をコード化されない行ランにグループ化することと(プロセスブロック190)、それぞれの行ラン内のゲインマップ行の数を決定することと(プロセスブロック192)を含む。いくつかの実施形態では、プロセス184は、デバイスプロセッサ96などの処理回路を用いてデバイスメモリ98などの有形的非一時的コンピュータ可読媒体に記憶された命令を実行することにより実施することができる。
したがって、いくつかの実施形態では、設計デバイス94は、非圧縮ゲインマップ170を分析して、それぞれのゲインマップ入力174をゼロゲインマップ入力、中間ゲインマップ入力、又は単位ゲインマップ入力として分類することができる(プロセスブロック185)。いくつかの実施形態では、ゲインマップ入力174は、そのゲイン値のそれぞれが1であるとき、単位ゲインマップ入力として分類することができる。加えて、ゲインマップ入力174は、そのゲイン値のそれぞれがゼロであるとき、ゼロゲインマップ入力として分類することができる。更に、ゲインマップ入力174は、そのゲイン値のうちの少なくとも1つが中間ゲイン値(例えば、ゼロより大きくかつ1未満)であるとき、中間ゲインマップ入力として分類することができる。
例えば、図18の非圧縮ゲインマップ170に関して、設計デバイス94は、第1のゲインマップ行172A内の最初のN個のゲインマップ入力174のそれぞれをゼロゲインマップ入力174Zとして、及び第1のゲインマップ行172A内の次のM個のゲインマップ入力のそれぞれを中間ゲインマップ入力174Iとして分類することができる。加えて、設計デバイス94は、第2のゲインマップ行172B内の最初のN−1個のゲインマップ入力174のそれぞれをゼロゲインマップ入力174Zとして、及び第2のゲインマップ行172B内の次のM個のゲインマップ入力のそれぞれを中間ゲインマップ入力174Iとして分類することができる。更に、設計デバイス94は、第7のゲインマップ行172C内のそれぞれのゲインマップ入力174を単位ゲインマップ入力174Uとして分類することができる。このようにして、設計デバイス94は、非圧縮ゲインマップ170内のそれぞれのゲインマップ入力174をゼロゲインマップ入力174Z、中間ゲインマップ入力174I、又は単位ゲインマップ入力174Uとして分類することができる。
図20のプロセス184に戻って、ゲインマップ入力174の分類に少なくとも部分的に基づいて、設計デバイス94は、それぞれのゲインマップ行172をコード化された行又はコード化されない行のいずれかとして分類することができる(プロセスブロック186)。上述したように、ゲインマップ行172は、ゲインマップ入力174のうちの少なくとも1つが中間ゲイン値又はゼロのゲイン値を含むとき、コード化された行として分類することができる。換言すれば、設計デバイス94は、ゲインマップ行172が少なくとも1つのゼロゲインマップ入力174Z又は中間ゲインマップ入力174を含むとき、ゲインマップ行172をコード化された行として分類することができる。例えば、図18の非圧縮ゲインマップ170に関して、複数のゼロゲインマップ入力174Z及び中間ゲインマップ入力174をそれぞれが含むため、設計デバイス94は、最初の6個のゲインマップ行172のそれぞれをコード化された行に分類することができる。
加えて、上述したように、ゲインマップ行172は、ゲインマップ行172が単位ゲイン値のみを含むとき、コード化されない行として分類することができる。換言すれば、設計デバイス94は、ゲインマップ行172が単位ゲインマップ入力174Uのみを含むとき、ゲインマップ行172をコード化されない行として分類することができる。例えば、図18の非圧縮ゲインマップ170に関して、単位ゲインマップ入力174Uのみをそれぞれが含むため、設計デバイス94は、次の4個のゲインマップ行172のそれぞれをコード化されない行に分類することができる。このようにして、設計デバイス94は、非圧縮ゲインマップ170内のそれぞれのゲインマップ行172をコード化された行又はコード化されない行のいずれかとして分類することができる。
図20のプロセス184に戻って、設計デバイス94は、その行分類に少なくとも部分的に基づいて、それぞれのゲインマップ行172を行ランにグループ化することができる。具体的には、設計デバイス94は、コード化された行としてそれぞれ分類された1つ以上の連続したゲインマップ行172をコード化された行ランにグループ化することができる(プロセスブロック188)。加えて、設計デバイス94は、コード化されない行としてそれぞれ分類された1つ以上の連続したゲインマップ行172をコード化されない行ランにグループ化することができる(プロセスブロック190)。例えば、図18の非圧縮ゲインマップ170に関して、設計デバイス94は、コード化された行としてそれぞれが分類されているため、最初の6個のゲインマップ行172を第1の行ラン194A(例えば、コード化された行ラン)にグループ化することができる。加えて、設計デバイス94は、コード化されない行としてそれぞれが分類されているため、次の4個のゲインマップ行172を第2の行ラン194B(例えば、コード化されない行ラン)にグループ化することができる。このようにして、設計デバイス94は、非圧縮ゲインマップ170のそれぞれのゲインマップ行172を行ランにグループ化することができる。
図20のプロセス184に戻って、設計デバイス94は、それぞれの行ラン内のゲインマップ行172の数を決定することができる(プロセスブロック192)。例えば、図18の非圧縮ゲインマップ170に関して、設計デバイス94は、第1の行ラン194Aが6個のゲインマップ行172を含むことを決定する、したがって、第1のランマップ入力内の6個の値を示すことができる。加えて、設計デバイス94は、第2の行ラン194Bが4個のゲインマップ行172を含むことを決定する、したがって、第2のランマップ入力内の4個の値を示すことができる。このようにして、設計デバイス94は、それぞれのランマップ入力が対応する行ランに含まれた非圧縮ゲインマップ170のゲインマップ行172の数を示すように、ランマップ100を決定することができる。
その後の展開を容易にするために、いくつかの実施形態では、ランマップ100は、それぞれの行ラン194がコード化された行ランかコード化されない行ランかを明示的に示すことができる。他の実施形態では、圧縮ゲインマップ90のサイズを更に低減することを容易にするために、設計デバイス94は、開始行ランインジケータ108を決定して、連続した行ラン194をコード化された行ランとコード化されない行ランとして分類することの間で交互になることができる。そのような実施形態では、最初の行ラン194Aの分類は、開始行ランインジケータ108に基づいて決定することができ、その後の行ラン194のそれぞれの分類は、直前の(例えば、上に隣接する)行ラン194の分類に基づいて決定し、それによって、そうでなければその後の行ラン194のそれぞれがコード化された行ランかコード化されない行ランかを明示的に指定するために使用され得るビットを不要にすることができる。このようにして、設計デバイス94は、例えば、ディスプレイパイプライン36によって、ランマップ100及び1つ以上の開始行ランインジケータ108を決定して、それぞれの行ラン194の分類、したがって、それぞれのゲインマップ行172及び/又はコード化されない行内の画素位置に関連付けられたゲイン値の分類を決定することを容易にすることができる。
図19のプロセス176に戻って、設計デバイス94は、非圧縮ゲインマップ170に少なくとも部分的に基づいて位置マップ102を決定することができる(プロセスブロック180)。上述したように、位置マップ102は、コード化された行のそれぞれのゲインランに含まれたゲインマップ入力174の数を示すことができる。加えて、上述したように、同じ分類を有する1つ以上の連続したゲインマップ入力は、ゲインランにグループ化することができる。
位置マップ102を決定するためのプロセス196の一実施形態を、図21に示す。一般的に、プロセス196は、連続した位置ゲインマップ入力を位置ゲインランにグループ化することと(プロセスブロック198)、連続した中間ゲインマップ入力を中間ゲインランにグループ化することと(プロセスブロック200)、前の行と比較した現在の行内のゲインランとの間の位置の差を決定することと(プロセスブロック202)、位置の差をエントロピ符号化することと(プロセスブロック204)を含む。いくつかの実施形態では、プロセス196は、デバイスプロセッサ96などの処理回路を用いてデバイスメモリ98などの有形的非一時的コンピュータ可読媒体に記憶された命令を実行することにより実施することができる。
したがって、いくつかの実施形態では、設計デバイス94は、それぞれの入力分類に少なくとも部分的に基づいて、コード化された行内の連続したゲインマップ入力174をゲインランにグループ化することができる。具体的には、設計デバイス94は、1つ以上の連続したゼロゲインマップ入力174Z又は1つ以上の連続した単位ゲインマップ入力174Uを位置ゲインランにグループ化することができる(プロセスブロック198)。換言すれば、位置ゲインランは、ゼロゲインマップ入力174Zのみを含むゼロゲインラン、又は単位ゲインマップ入力174Uのみを含む単位ゲインランとすることができる。加えて、設計デバイス94は、1つ以上の連続した中間ゲインマップ入力174Iを中間ゲインランにグループ化することができる(プロセスブロック200)。
例えば、図18の非圧縮ゲインマップ170に関して、設計デバイス94は、ゼロゲインマップ入力174Zとしてそれぞれが分類されているため、第1のゲインマップ行172A内の最初のN個のゲインマップ入力174を第1の位置ゲインラン206Aにグループ化することができる。加えて、設計デバイス94は、中間ゲインマップ入力174Iとしてそれぞれが分類されているため、第1のゲインマップ行172A内の次のM個のゲインマップ入力174を第1の中間ゲインラン208Aにグループ化することができる。更に、設計デバイス94は、第2のゲインマップ行172内の最初のN−1個のゲインマップ入力174を第2の位置ゲインラン206Bに、及び次のM個のゲイン入力を第2の中間ゲインラン208Bにグループ化することができる。
それぞれの先行するゲインラン内のゲインマップ入力174の数に少なくとも部分的に基づいて、ゲインマップ入力174、したがって、それぞれのゲインランに含まれた画素位置を決定することができる。例えば、第1の位置ゲインラン206AがN個のゲインマップ入力174を含むことを示すことにより、第1のゲインマップ行172Aの最初のN個のゲインマップ入力174が第1に含まれていること、及び第1の中間ゲインラン208Aが第1のゲインマップ行172AのN+1番目のゲインマップ入力174で開始することを決定することが可能になる。加えて、第1の中間ゲインラン208AがM個のゲインマップ入力174を含むことを示すことにより、第1のゲインマップ行172Aの次のM個のゲインマップ入力174が第1の中間ゲインラン208Aに含まれていること、及び第1の中間ゲインラン208Aが第1のゲインマップ行172AのN+M番目のゲインマップ入力174で終了することを決定することが可能になる。したがって、その後の展開を容易にするために、いくつかの実施形態では、位置マップ102は、それぞれのゲインランに含まれたゲインマップ入力174の数を明示的示すことができる。
図21のプロセス196に戻って、他の実施形態では、設計デバイス94は、直前の(例えば、上に隣接する)行と比較した現在の行内のゲインランの位置の差を決定して(プロセスブロック202)、位置の差をエントロピ符号化し(プロセスブロック204)、圧縮ゲインマップ90のサイズを更に低減することを容易にすることができる。いくつかの実施形態では、位置の差は、現在の行内のゲインランの開始ゲインマップ入力174と直前の行内の対応するゲインランの開始ゲインマップ入力174を分離する画素位置の数を示すことができる。
例えば、図18の非圧縮ゲインマップ170に関して、設計デバイス94は、第1の中間ゲインラン208Aが第1のゲインマップ行172AのN+1番目のゲインマップ入力174で開始することを決定することができる。加えて、設計デバイス94は、第2の中間ゲインラン208Bが第2のゲインマップ行172BのN番目のゲインマップ入力174で開始することを決定することができる。したがって、第2のゲインマップ行172Bの第2の位置ゲインランがN−1個のゲインマップ入力174を含むことを明示的に示すことの代わりに、第2の中間ゲインラン208の開始ゲインマップ入力174は、第1のゲインマップ行172A内の第1の中間ゲインラン208の開始ゲインマップ入力174の1つ前の画素位置として示すことができる。加えて、いくつかの実施形態では、位置の差は、指数Golomb符号化アルゴリズムを用いてエントロピ符号化することができる。このようにして、設計デバイス94は、位置マップ102を決定して、コード化された行のそれぞれのゲインラン内の画素位置を決定することを容易にすることができる。
いずれの場合でも、その後の展開を容易にするために、圧縮ゲインマップ90は、位置ゲインランがゼロゲインランか単位ゲインランかを示すことができる。上述したように、位置ゲイン値インジケータ110は、対応する位置ゲインラン内のそれぞれのゲインマップ入力174のゲイン値を示すことができる。したがって、設計デバイス94は、位置ゲイン値インジケータ110を決定してそれぞれの位置ゲインランに関連付けることができる。
例えば、図18の非圧縮ゲインマップ170に関して、設計デバイス94は、第1の位置ゲイン値インジケータ110を、第1の位置ゲインラン内のそれぞれのゲインマップ入力174がゼロゲインマップ入力174Zであることを示す第1の位置ゲインラン206Aに関連付けることができる。加えて、設計デバイス94は、第2の位置ゲイン値インジケータ110を、第2の位置ゲインラン内のそれぞれのゲインマップ入力174がゼロゲインマップ入力174Zであることを示す第2の位置ゲインラン206Bに関連付けることができる。加えて又は代わりに、設計デバイス94は、位置ゲイン値インジケータ110を、位置ゲインラン内のそれぞれのゲインマップ入力174が単位ゲインマップ入力174Uであることを示す位置ゲインランに関連付けることができる。このようにして、設計デバイス94は、例えば、ディスプレイパイプライン36によって、位置マップ102及び1つ以上の位置ゲイン値インジケータ110を決定して、位置ゲインラン内のそれぞれの画素位置に関連付けられたゲイン値を決定することを容易にすることができる。
図17のプロセス176に戻って、設計デバイス94は、非圧縮ゲインマップ170に少なくとも部分的に基づいてゲイン値マップ104を決定することができる(プロセスブロック182)。上述したように、ゲイン値マップ104は、ゲインマップ入力174のゲイン値、したがって、それぞれの中間ゲインラン内の対応する画素位置に関連付けられたゲイン値を示すことができる。加えて、いくつかの実施形態では、ゲイン値マップ104は、直前の(例えば、左の隣接する)ゲインマップ入力174のゲイン値に少なくとも部分的に基づいて、ゲインマップ入力174のゲイン値を示すことができる。
ゲイン値マップ104を決定するためのプロセス210の一実施形態を、図22に示す。一般的に、プロセス210は、ゲイン値を決定することと(プロセスブロック212)、ゲイン値が前のゲイン値と等しいか否かを判定することと(判定ブロック214)、ゲイン値が前のゲイン値と等しい場合にゼロビットを記憶することと(プロセスブロック216)を含む。加えて、ゲイン値が前のゲイン値と等しくない場合に、プロセス210は、1ビットを記憶することと(プロセスブロック218)、ゲイン値がゼロに等しいか否かを判定することと(判定ブロック220)、ゲイン値がゼロに等しい場合にゼロビットを記憶することと(プロセスブロック222)、ゲイン値がゼロに等しくない場合にゲイン値をエントロピ符号化することと(プロセスブロック224)を含む。いくつかの実施形態では、プロセス210は、デバイスプロセッサ96などの処理回路を用いてデバイスメモリ98などの有形的非一時的コンピュータ可読媒体に記憶された命令を実行することにより実施することができる。
したがって、いくつかの実施形態では、設計デバイス94は、非圧縮ゲインマップ170から中間ゲインラン内の現在のゲインマップ入力174に関連付けられたゲイン値を決定することができる(プロセスブロック212)。加えて、設計デバイス94は、非圧縮ゲインマップ170から直前のゲインマップ入力174に関連付けられたゲイン値を決定することができる。いくつかの実施形態では、表示画素行に対応する画像データは、左から右に処理することができる。したがって、そのような実施形態では、直前のゲインマップ入力174は、現在のゲインマップ入力174の左の隣接するものとすることができる。
上述したように、ゲインマップ入力174は、異なる色成分及び/又は異なる副画素にそれぞれ関連付けられた複数のゲイン値を含むことができる。一般的に、隣接する表示画素136に適用されることになるゲイン値に影響を及ぼす要因は、相対的に類似し得る。そのように、隣接する画素位置での同じ色成分に対応するゲイン値は、相対的に類似し又は同じでもあり得る。したがって、設計デバイス94は、現在のゲインマップ入力174に含まれたゲイン値を直前のゲインマップ入力174内の同じ色成分に関連付けられたゲイン値と比較して、それらが等しいか否かを判定することができる(判定ブロック214)。
ゲイン値が等しい場合に、設計デバイス94は、ゲイン値マップ104にゼロビットを記憶することができる(プロセスブロック216)。一方、ゲイン値が等しくない場合に、設計デバイス94は、ゲイン値マップ104に1ビットを記憶することができる(プロセスブロック218)。したがって、圧縮ゲインマップ90がその後展開されると、現在のゲインマップ入力174に関連付けられた最初のビットは、現在のゲインマップ入力174内のゲイン値が直前のゲインマップ入力174内の対応するゲイン値と同じであるか否かを示すことができる。更に、ゲイン値が等しい場合に、このようにして圧縮することにより、そうでなければゲイン値のうちの1つ以上を明示的に示すために使用されるであろうビットを不要にし、それによって圧縮ゲインマップ90のサイズを低減することを可能にすることができる。
ゲイン値が等しくない場合、設計デバイス94は、現在のゲインマップ入力174内のゲイン値がゼロに等しいか否かを判定することができる(判定ブロック220)。加えて、現在のゲインマップ入力174内のゲイン値がゼロに等しい場合に、設計デバイス94は、ゲイン値マップ104にゼロビットを記憶することができる(プロセスブロック222)。したがって、現在のゲインマップ入力174のゲイン値がゼロに等しい場合に、このようにして圧縮することにより、そうでなければゲイン値を明示的に示すために使用されるであろうビットを不要にし、それによって圧縮ゲインマップ90のサイズを低減することを可能にすることができる。
一方、ゲイン値がゼロに等しくない場合に、設計デバイス94は、現在のゲイン値マップ入力174のゲイン値をエントロピ符号化することができる(プロセスブロック224)。いくつかの実施形態では、設計デバイス94は、指数Golomb符号化アルゴリズムを用いてゲイン値をエントロピ符号化することができる。このようにして、設計デバイス94は、ゲイン値マップがそれぞれの中間ゲインラン内の画素位置に関連付けられたゲイン値を示すように、ゲイン値マップ104を決定することができる。
上述した圧縮技術を用いて、設計デバイス94は、ランマップ100、位置マップ102、ゲイン値マップ104、及び1つ以上のプログラム可能なインジケータ(例えば、開始行ランインジケータ108及び/又は位置ゲイン値インジケータ110)を含む圧縮ゲインマップ90を決定することができる。圧縮技術は、例えば、表示領域境界に沿ってゲイン値を適用するために実施されない場合でも、任意の非圧縮ゲインマップ170に適用可能とすることができることを理解されたい。いくつかの実施形態では、説明した圧縮技術の圧縮効率は、コード化されない行の数が増大する、位置ゲインラン内の画素位置の数が増大する、同じゲイン値に関連付けられた連続した画素位置の数が増大する、及び/又は中間ゲインラン内の画素位置の数が減少するに従って、向上させることができる。したがって、いくつかの実施形態では、圧縮技術は、相対的に均一なコンテンツに適用されることになるゲインマップを圧縮するために有用であり得る。
図10のプロセス112に戻って、設計デバイス94は、圧縮ゲインマップ90をメモリ構成要素に記憶して、メモリ構成要素からのその後のアクセスを可能にすることができる(プロセスブロック118)。上述したように、圧縮ゲインマップ90のサイズは、対応する非圧縮ゲインマップ170のサイズより小さくすることができる。いくつかの実施形態では、このサイズの低減により、圧縮ゲインマップ90をディスプレイパイプライン36の内部メモリ46に記憶することを可能にすることができ、これにより、上述したように、処理効率を改善すること及び/又は実装に関連付けられたコストを低減することを容易にすることができる。他の実施形態では、圧縮ゲインマップ90は、それにもかかわらず外部メモリ44に記憶することができる。いずれの場合でも、上述したように、副画素レイアウトリサンプラブロック56は、その後ゲインマップにアクセスして、ゲインマップによって示されたゲイン値に少なくとも部分的に基づいて画像データを処理することができる。
図示目的で、副画素レイアウトリサンプラブロック56を動作させるためのプロセス226の一実施形態を、図23に示す。一般的に、プロセス226は、画像画素画像データをデガンマ変換することと(プロセスブロック228)、ゲインマップからゲイン値を決定することと(プロセスブロック230)、画像画素画像データをフィルタリングして表示画素画像データを決定することと(プロセスブロック232)、ゲイン値を表示画素画像データに適用することと(プロセスブロック234)、表示画素画像データをリガンマ変換することと(プロセスブロック236)、表示画素画像データをアップスケーリングすることと(プロセスブロック238)を含む。いくつかの実施形態では、プロセス226は、ディスプレイパイプライン36内に形成された回路接続に基づいて実施することができる。加えて又は代わりに、いくつかの実施形態では、プロセス226は、コントローラプロセッサ50などの処理回路を用いてコントローラメモリ52などの有形的非一時的コンピュータ可読媒体に記憶された命令を実行することにより実施することができる。
したがって、いくつかの実施形態では、副画素レイアウトリサンプラブロック56は、画像画素画像データ70をデガンマ変換することができる(プロセスブロック228)。上述したように、副画素レイアウトリサンプラブロック56は、ガンマ(例えば、非線形)ドメインの画像画素画像データ70を受信することができる。その後の処理を容易にするために、副画素レイアウトリサンプラブロック56は、画像画素画像データ70をガンマドメインから線形ドメインに変換することにより、デガンマすることができる。
加えて、副画素レイアウトリサンプラブロック56は、ゲインマップから1つ以上のゲイン値を決定することができる(プロセスブロック230)。上述したように、いくつかの実施形態では、非圧縮ゲインマップ170は、外部メモリ44に記憶することができる。したがって、そのような実施形態では、副画素レイアウトリサンプラブロック56は、外部メモリ44からダイレクトメモリアクセスチャネル58を介して、対応する画素位置に関連付けられた1つ以上のゲイン値を明示的に示す非圧縮ゲインマップ170の少なくとも一部分(例えば、ゲインマップ入力174)を取得することができる。
上述したように、他の実施形態では、圧縮ゲインマップ90は、内部メモリ46に記憶することができる。したがって、そのような実施形態では、副画素レイアウトリサンプラブロック56は、内部メモリ46から圧縮ゲインマップ90の少なくとも一部分を取得することができる。圧縮されているため、副画素レイアウトリサンプラブロック56は、圧縮ゲインマップ90を展開して、対応する画素位置に関連付けられた1つ以上のゲイン値を決定することができる。
圧縮ゲインマップ90を展開するためのプロセス240の一実施形態を、図24に示す。一般的に、プロセス240は、画素位置を決定することと(プロセスブロック242)、ランマップを読み取ることと(プロセスブロック244)、画素位置がコード化されない行内にあるか否かを判定することと(判定ブロック246)、画素位置がコード化されない行内にある場合に画素位置に関連付けられたそれぞれのゲイン値が単位ゲイン値であることを決定することと(プロセスブロック248)を含む。画素位置がコード化されない行内にない場合、プロセス240は、位置マップを読み取ることと(プロセスブロック250)、画素位置が中間ゲインラン内にあるか否かを判定することと(判定ブロック252)、画素位置が中間ゲインラン内にない場合に位置ゲイン値インジケータに基づいて画素位置に関連付けられたそれぞれのゲイン値を決定することと(プロセスブロック254)、画素位置が中間ゲインラン内にある場合にゲイン値マップを読み取ることと(プロセスブロック256)を含む。いくつかの実施形態では、プロセス240は、ディスプレイパイプライン36内に形成された回路接続に基づいて実施することができる。加えて又は代わりに、いくつかの実施形態では、プロセス240は、コントローラプロセッサ50などの処理回路を用いてコントローラメモリ52などの有形的非一時的コンピュータ可読媒体に記憶された命令を実行することにより実施することができる。
したがって、いくつかの実施形態では、副画素レイアウトリサンプラブロック56は、受信した画像画素画像データ70に対応する画素位置を決定することができる(プロセスブロック242)。いくつかの実施形態では、副画素レイアウトリサンプラブロック56は、画像画素画像データ70をビットストリームとして受信することができる。したがって、そのような実施形態では、副画素レイアウトリサンプラブロック56は、画像画素画像データ70が受信される順序及び/又は電子ディスプレイ12の解像度に少なくとも部分的に基づいて、画素位置を決定することができる。画素位置に基づいて、副画素レイアウトリサンプラブロック56は、対応するゲインマップ入力174、したがって、ゲインマップ入力174を含むゲインマップ行172を決定することができる。
加えて、副画素レイアウトリサンプラブロック56は、ランマップ100を読み取って、ゲインマップ行172の行分類を決定することができる(プロセスブロック244)。上述したように、ランマップ100は、それぞれの行ラン194に含まれたゲインマップ行172の数を示すことができる。したがって、ランマップ100に少なくとも部分的に基づいて、副画素レイアウトリサンプラブロック56は、ゲインマップ行172を含む行ラン194、したがって、画素位置を識別することができる。いくつかの実施形態では、ランマップ100は、ディスプレイパイプライン36の内部メモリ46に記憶することができる。したがって、そのような実施形態では、副画素レイアウトリサンプラブロック56は、内部メモリ46からランマップ100を読み取ることができる。
ランの分類を決定することを容易にするために、副画素レイアウトリサンプラブロック56は、開始行ランインジケータ108を読み取ることができる。上述したように、開始行ランインジケータ108は、対応する行ラン194がコード化された行ラン又はコード化されない行ランかを示すことができる。圧縮ゲインマップ90のサイズを低減することを容易にするために、いくつかの実施形態では、開始行ランインジケータ108は、第1の行ラン194Aのみを指定することができる。そのような実施形態では、行ラン194が第1の行ラン194Aでない場合、副画素レイアウトリサンプラブロック56は、直前の(例えば、上の隣接する)行ラン194の分類に少なくとも部分的に基づいて、行ラン194の分類を決定することができる。換言すれば、副画素レイアウトリサンプラブロック56は、行ラン194を第1の行ラン194Aから分離する他の行ラン194の数に基づいて、行ラン194の分類を決定することができる。
したがって、ランマップ100及び開始行ランインジケータ108に少なくとも部分的に基づいて、副画素レイアウトリサンプラブロック56は、行ラン194がコード化されない行ランであるか否か、したがって、画素位置を含むゲインマップ行172がコード化されない行であるか否かを判定することができる(判定ブロック246)。上述したように、ゲインマップ行172は、ゲイン値のそれぞれが1に等しいとき、コード化されない行とすることができる。したがって、ゲインマップ行172がコード化されない行である場合、副画素レイアウトリサンプラブロック56は、画像画素画像データ70を処理するために使用されるそれぞれのゲイン値が単位ゲイン値であることを決定することができる(プロセスブロック248)。
一方、コード化されない行でない場合、副画素レイアウトリサンプラブロック56は、ゲインマップ行172がコード化された行であることを決定する、したがって、位置マップ102を読み取ることができる(プロセスブロック250)。上述したように、位置マップ102は、コード化された行のそれぞれのゲインランに含まれた画素位置を示すことができる。いくつかの実施形態では、位置マップ102は、ディスプレイパイプライン36の内部メモリ46に記憶することができる。したがって、そのような実施形態では、副画素レイアウトリサンプラブロック56は、内部メモリ46から位置マップ102を読み取ることができる。
加えて、いくつかの実施形態では、位置マップ102は、エントロピ符号化することができる。したがって、そのような実施形態では、副画素レイアウトリサンプラブロック56は、位置マップ102をエントロピ復号化することにより、それぞれのゲインランに含まれた画素位置を決定することができる。例えば、副画素レイアウトリサンプラブロック56は、指数Golomb復号化アルゴリズムを用いて、位置マップ102をエントロピ複号化することができる。更に、いくつかの実施形態では、位置マップ102は、位置の差に基づいて、別のゲインランに対するゲインランに含まれた画素位置を示すことができる。したがって、そのような実施形態では、副画素レイアウトリサンプラブロック56は、位置の差を他のゲインラン内の(例えば、開始又は終了)画素位置に適用することにより、ゲインラン内に含まれた画素位置を決定することができる。
位置マップ102に少なくとも部分的に基づいて、副画素レイアウトリサンプラブロック56は、画素位置が中間ゲインラン内にあるか否かを判定することができる(判定ブロック252)。上述したように、中間ゲインラン内のそれぞれのゲインマップ入力174は、1つ以上の中間ゲイン値(例えば、ゼロより大きくかつ1未満)を含む。したがって、中間ゲインラン内でない場合、副画素レイアウトリサンプラブロック56は、画素位置が位置ラン内であることを決定する、したがって、対応する位置ゲイン値インジケータ110に基づいて画像画素画像データ70を処理するために使用されるゲイン値を決定することができる。いくつかの実施形態では、位置ゲイン値インジケータ110は、プログラム可能なレジスタ106に記憶することができる。したがって、そのような実施形態では、副画素レイアウトリサンプラブロック56は、プログラム可能なレジスタ106をポーリングすることにより、位置ゲイン値インジケータ110を決定することができる。
一方、中間ゲインラン内である場合、副画素レイアウトリサンプラブロック56は、ゲイン値マップ104を読み取ることができる(プロセスブロック256)。上述したように、ゲイン値マップ104は、中間ゲインラン内のゲイン値を示すことができる。いくつかの実施形態では、ゲイン値マップ104は、ディスプレイパイプライン36の内部メモリ46に記憶することができる。したがって、そのような実施形態では、副画素レイアウトリサンプラブロック56は、内部メモリ46からゲイン値マップ104を読み取ることができる。
加えて、いくつかの実施形態では、ゲイン値マップ104は、エントロピ符号化することができる。したがって、そのような実施形態では、副画素レイアウトリサンプラブロック56は、ゲイン値マップ104をエントロピ復号化することにより、画素位置に関連付けられたゲイン値を決定することができる。例えば、副画素レイアウトリサンプラブロック56は、指数Golomb復号化アルゴリズムを用いて、ゲイン値マップ104をエントロピ複号化することができる。このようにして、副画素レイアウトリサンプラブロック56は、圧縮ゲインマップ90を展開して、画像画素画像データ70に対応する画素位置に関連付けられた1つ以上のゲイン値を決定することができる。
図23のプロセス226に戻って、副画素レイアウトリサンプラブロック56は、画像画素画像データ70をフィルタリングして、対応する表示画素画像データ72を決定することができる(プロセスブロック232)。上述したように、副画素レイアウトリサンプラブロック56は、オフセットフィルタ位相値及び/又はオフセット副画素フィルタ係数などのフィルタパラメータに基づいて、画像画素画像データ70をフィルタリングすることができる。加えて、いくつかの実施形態では、副画素レイアウトリサンプラブロック56は、ゲインマップから決定されたゲイン値に少なくとも部分的に基づいて、適用されることになるフィルタパラメータを決定することができる。
図示目的で、フィルタ位相値及びオフセット副画素フィルタ係数を決定するためのプロセス258の一実施形態を、図25に示す。一般的に、プロセス258は、現在の位相値を決定することと(プロセスブロック260)、隣接する位相値を決定することと(プロセスブロック262)、変更した位相値を決定することと(プロセスブロック264)、オフセットフィルタ位相値を選択することと(プロセスブロック266)、オフセット副画素フィルタ係数を決定することと(プロセスブロック268)を含む。いくつかの実施形態では、プロセス258は、ディスプレイパイプライン36内に形成された回路接続に基づいて実施することができる。加えて又は代わりに、いくつかの実施形態では、プロセス258は、コントローラプロセッサ50などの処理回路を用いてコントローラメモリ52などの有形的非一時的コンピュータ可読媒体に記憶された命令を実行することにより実施することができる。
したがって、いくつかの実施形態では、副画素レイアウトリサンプラブロック56は、受信した画像画素画像データ70に対応する現在の画像画素を含む現在の画像画素ブロックに関連付けられた位相値を決定することができる(プロセスブロック260)。いくつかの実施形態では、現在の画像画素ブロックは、現在の画像画素に対応する現在の表示画素136のオフセット副画素の周囲の画像画素の2×2のブロックとすることができる。加えて、いくつかの実施形態では、副画素レイアウトリサンプラブロック56は、現在の画像画素ブロックと現在の画像画素ブロックからオフセットした隣接する画像画素ブロックとの間の差分絶対値の和などの、現在の画像画素ブロックに関連付けられた差の測定値に少なくとも部分的に基づいて、現在の位相値を決定することができる。いくつかの実施形態では、現在の位相値は、既定のフィルタ(例えば、均等補間)モードと比較した適用されることになるフィルタリングの変化量を示すことができる。
加えて、それぞれの隣接する画像画素ブロックに関連付けられた位相値を決定するための副画素レイアウトリサンプラブロック56(プロセスブロック262)。いくつかの実施形態では、副画素レイアウトリサンプラブロック56は、現在のブロックに関連付けられた現在の位相値と同様な方法で、隣接するブロックに関連付けられた隣接する位相値を決定することができる。例えば、副画素レイアウトリサンプラブロック56は、上の隣接する画像画素ブロックに関連付けられた差の測定値に少なくとも部分的に基づいて、上の隣接するブロックに対応する上の隣接する位相値を決定することができる。
現在の位相値及び隣接する位相値に少なくとも部分的に基づいて、副画素レイアウトリサンプラブロック56は、変更された位相値を決定することができる(プロセスブロック264)。いくつかの実施形態では、副画素レイアウトリサンプラブロック56は、隣接する位相値に基づいて現在の位相値をフィルタリングすることにより、変更された位相値を決定することができる。例えば、副画素レイアウトリサンプラブロック56は、現在のフィルタ位相値をそれぞれの隣接する画像画素ブロックの隣接するフィルタ位相値でフィルタリングすることにより、変更されたフィルタ位相値を決定することができる。
加えて、副画素レイアウトリサンプラブロック56は、オフセットフィルタ位相値を決定することができる(プロセスブロック266)。いくつかの実施形態では、副画素レイアウトリサンプラブロック56は、現在の位相値及び/又は変更された位相値に少なくとも部分的に基づいて、オフセットフィルタ位相値を設定することができる。例えば、副画素レイアウトリサンプラブロック56は、ゲインマップ内の現在の画像画素の画素位置に関連付けられたゲイン値(例えば、オフセットゲイン値及び/又は同じ場所に配置されたゲイン値)に少なくとも部分的に基づいて、現在の位相値として又は変更された位相値としてオフセットフィルタ位相値を設定することができる。
図示目的で、オフセットフィルタ位相値を決定するためのプロセス270の一実施形態を、図26に示す。一般的に、プロセス270は、同じ場所に配置された副画素に関連付けられたゲイン値を決定することと(プロセスブロック272)、オフセット副画素に関連付けられたゲイン値を決定することと(プロセスブロック274)、同じ場所に配置されたゲイン及びオフセットゲインの両方がゼロでないか否かを判定することと(判定ブロック276)、同じ場所に配置されたゲイン及びオフセットゲインの両方が1でないか否かを判定することと(判定ブロック278)を含む。同じ場所に配置されたゲインがゼロ又は1でなく、かつオフセットゲインがゼロ又は1でない場合、プロセス270は、オフセットフィルタ位相値を現在の位相値に設定することを含む(プロセスブロック280)。そうでなければ、プロセス270は、オフセットフィルタ位相値を変更された位相値に設定することを含む(プロセスブロック282)。いくつかの実施形態では、プロセス270は、ディスプレイパイプライン36内に形成された回路接続に基づいて実施することができる。加えて又は代わりに、いくつかの実施形態では、プロセス270は、コントローラプロセッサ50などの処理回路を用いてコントローラメモリ52などの有形的非一時的コンピュータ可読媒体に記憶された命令を実行することにより実施することができる。
したがって、いくつかの実施形態では、副画素レイアウトリサンプラブロック56は、現在の表示画素内の同じ場所に配置された副画素に適用されることになるゲイン値を決定することができる(プロセスブロック272)。加えて、コントローラ42は、副画素レイアウトリサンプラブロック56に、現在の表示画素内のオフセット副画素に適用されることになるゲイン値を決定するように命令することができる(プロセスブロック274)。いくつかの実施形態では、副画素レイアウトリサンプラブロック56は、例えば、図24のプロセス240を用いて圧縮ゲインマップ90を展開することにより圧縮ゲインマップ90に少なくとも部分的に基づいて、同じ場所に配置された副画素に関連付けられたゲイン値及び/又はオフセット副画素に関連付けられたゲイン値を決定することができる。
ゲイン値に少なくとも部分的に基づいて、副画素レイアウトリサンプラブロック56は、変更された位相値としてオフセットフィルタ位相値を設定する(プロセスブロック282)、又は現在の位相値としてオフセットフィルタ位相値を設定する(プロセスブロック280)ことができる。例えば、副画素レイアウトリサンプラブロック56は、同じ場所に配置されたゲイン及びオフセットゲインが両方ともゼロ又は1に等しくない場合にオフセットフィルタ位相を現在のフィルタ位相に設定することができる。一方、副画素レイアウトリサンプラブロック56は、同じ場所に配置されたゲイン及びオフセットゲインのうちの少なくとも1つがゼロ又は1に等しい場合にオフセットフィルタ位相を変更されたフィルタ位相に設定することができる。このようにして、副画素レイアウトリサンプラブロック56は、現在の画素位置に関連付けられたゲイン値に少なくとも部分的に基づいて、オフセットフィルタ位相値を決定することができる。
図25のプロセス258に戻って、副画素レイアウトリサンプラブロック56は、オフセットフィルタ位相値に少なくとも部分的に基づいてオフセット副画素フィルタ係数を決定することができる(プロセスブロック268)。いくつかの実施形態では、オフセット副画素フィルタ係数を使用して、オフセットフィルタ位相値を実装することができる。したがって、そのような実施形態では、副画素レイアウトリサンプラブロック56は、フィルタブロック82によって適用されることになるオフセット副画素フィルタ係数を決定することができる。このようにして、副画素レイアウトリサンプラブロック56は、ゲインマップ内の現在の画素位置に関連付けられたゲイン値に少なくとも部分的に基づいて、画像画素画像データ70に適用されることになるフィルタパラメータ(例えば、オフセットフィルタ位相値及び/又はオフセット副画素フィルタ係数)を決定することができる。
図23のプロセス226に戻って、副画素レイアウトリサンプラブロック56は、フィルタパラメータに少なくとも部分的に基づいて現在の画素位置に対応する表示画素画像データ72を決定することができる(プロセスブロック114)。いくつかの実施形態では、副画素レイアウトリサンプラブロック56は、表示画素画像データ72を決定するためのフィルタパラメータに基づいて、現在の画像画素の周囲の画像画素の群に対応する画像画素画像データ70をフィルタリングすることができる。
フィルタリングの後で、副画素レイアウトリサンプラブロック56は、ゲイン値を表示画素画像データ72に適用することができる(プロセスブロック234)。上述したように、ゲインマップは、それぞれの画素位置に関連付けられたゲイン値を示すことができる。加えて、上述したように、プログラム可能な境界ゲイン値インジケータ92は、表示領域境界に沿った画素位置に選択的に適用されるゲイン値を示すことができる。したがって、いくつかの実施形態では、副画素レイアウトリサンプラブロック56は、ゲインマップによって示されたゲイン値又はプログラム可能な境界ゲイン値インジケータ92によって示されたゲイン値を適用するかを判定することができる。
図示目的で、ゲイン値を表示画素画像データ72に適用するためのプロセス284の一実施形態を、図27に示す。一般的に、プロセス284は、表示画素画像データの画素位置を決定することと(プロセスブロック286)、画素位置が中間ゲインラン内にあるか否かを判定することと(判定ブロック288)、画素位置が直線境界に隣接するか否かを判定することと(判定ブロック290)、プログラム可能な境界ゲインが有効にされているか否かを判定することと(判定ブロック292)、画素位置が中間ゲインラン内になく、画素位置が直線境界に隣接しており、かつプログラム可能な境界ゲインが有効にされている場合にプログラム可能な境界ゲイン値を適用することと(プロセスブロック294)を含む。加えて、プロセス284は、画素位置が中間ゲインラン内にある、画素位置が直線境界に隣接していない、又はプログラム可能な境界ゲインが有効にされていない場合にゲインマップから決定されたゲイン値を適用することを含む(プロセスブロック296)。いくつかの実施形態では、プロセス284は、ディスプレイパイプライン36内に形成された回路接続に基づいて実施することができる。加えて又は代わりに、いくつかの実施形態では、プロセス284は、コントローラプロセッサ50などの処理回路を用いてコントローラメモリ52などの有形的非一時的コンピュータ可読媒体に記憶された命令を実行することにより実施することができる。
したがって、いくつかの実施形態では、副画素レイアウトリサンプラブロック56は、表示画素画像データ72に対応する画素位置を決定することができる(プロセスブロック286)。上述したように、表示画素画像データ72は、対応する画像画素画像データ70を処理することにより決定することができる。換言すれば、表示画素画像データ72は、画像画素画像データ70と同じ画素位置に対応することができる。そのように、副画素レイアウトリサンプラブロック56は、例えば、画像画素画像データ70が受信される順序及び/又は電子ディスプレイ12の解像度に少なくとも部分的に基づいて、画像画素画像データ70に対応する画素位置を決定することにより、表示画素画像データ72に対応する画素位置を決定することができる。
加えて、副画素レイアウトリサンプラブロック56は、画素位置が中間ゲインラン内にあるか否かを判定することができる(プロセスブロック288)。上述したように、ランマップ100は、それぞれの行ラン194に含まれたゲインマップ行172の数を示すことができ、開始行ランインジケータ108は、それぞれの行ラン194の分類を示すことができる。したがって、ランマップ100及び開始行ランインジケータ108に少なくとも部分的に基づいて、副画素レイアウトリサンプラブロック56は、画素位置を含む行ラン194の分類、したがって、画素位置がコード化された行に含まれているかコード化されない行に含まれているかを判定することができる。コード化されない行は単位ゲイン値のみを含むため、副画素レイアウトリサンプラブロック56は、コード化されない行内のとき画素位置が中間ゲインラン内にないことを判定することができる。
加えて、上述したように、位置マップ102は、コード化された行のそれぞれのゲインランに含まれた画素位置を示すことができ、位置ゲイン値インジケータ110は、それぞれの位置ゲインランに関連付けることができる。したがって、位置マップ102及び位置ゲイン値インジケータ110に少なくとも部分的に基づいて、副画素レイアウトリサンプラブロック56は、それぞれの中間ゲインラン内の画素位置、したがって、画素位置が中間ゲインラン内にあるか否かを判定することができる。
更に、副画素レイアウトリサンプラブロック56は、画素位置が表示領域の直線境界に隣接するか否かを判定することができる(判定ブロック290)。いくつかの実施形態では、境界検出ブロック86は、表示領域の特性に少なくとも部分的に基づいて、画素位置が直線境界に隣接するか否かを判定することができる。例えば、境界検出ブロック86は、表示領域境界の位置及び/又は直線境界に隣接するとして定義済みの画素位置に少なくとも部分的に基づいて、画素位置が直線境界に隣接するか否かを判定することができる。上述したように、いくつかの実施形態では、表示領域の予想される特性は、予め設定して、デバイスメモリ98などのメモリ構成要素に記憶することができる。したがって、そのような実施形態では、設計デバイス94は、メモリ構成要素をポーリングして、表示領域の特性を決定することができる。
副画素レイアウトリサンプラブロック56はまた、プログラム可能な境界ゲインが有効にされているか否かを判定することができる(判定ブロック292)。いくつかの実施形態では、副画素レイアウトリサンプラブロック56は、例えば、内部メモリ46又はプログラム可能なレジスタ106に記憶されたインジケータに少なくとも部分的に基づいて、プログラム可能な境界ゲインが有効にされているか否かを判定することができる。例えば、副画素レイアウトリサンプラブロック56は、インジケータが第1の値(例えば、1ビット)を有するときにプログラム可能な境界ゲインが有効にされていること、及びインジケータが第2の値(例えば、0ビット)を有するときにプログラム可能な境界ゲインが有効にされていることを決定することができる。
これらの決定に基づいて、副画素レイアウトリサンプラブロック56は、ゲインマップから決定されたゲイン値(プロセスブロック296)又はプログラム可能な境界ゲイン値92(プロセスブロック294)のいずれかを適用することができる。上述したように、ゲインマップからのゲイン値を適用することにより、例えば、表示領域の外側の画素位置にブラックマスクを適用することにより異なる(例えば、非矩形)形状を有する表示領域上に表示するために画像又は画像フレームを調整することを容易にすることができる。加えて、上述したように、ゲインマップからのゲイン値を適用することにより、表示領域の丸みのある境界に沿った副画素を暗くして、丸みのある境界に沿った知覚可能なエイリアシングを生成する可能性を低減することを容易にすることができる。
更に、いくつかの実施形態では、プログラム可能な境界ゲイン値を決定して、表示領域の境界(例えば、直線境界)に沿った知覚可能な色縁を生成する可能性を低減することができる。いくつかの例では、境界に沿って発生する縁は、電子ディスプレイ12に実装された副画素レイアウトによって影響を受けることがある。換言すれば、異なる境界に沿って発生する縁は、異なることがある。例えば、電子ディスプレイの表示画素136が緑の副画素及び交互に赤の副画素又は青の副画素のいずれかをそれぞれ含む場合、緑色の縁が第1の(例えば、上部)直線境界に沿って発生することがあり、一方で紫色の縁が第2の(例えば、左側)直線境界に沿って発生することがある。
したがって、知覚可能な色縁を生成する可能性を低減するために、異なるプログラム可能な境界ゲイン値を異なる境界に関連付けることができる。そのように、プログラム可能な境界ゲイン値が適用されることになる場合、副画素レイアウトリサンプラブロック56は、どの境界が画素位置に隣接するかを判定して、対応するプログラム可能な境界ゲイン値を選択することができる。このようにして、副画素レイアウトリサンプラブロック56は、ゲイン値を表示画素画像データ72に選択的に(例えば、適応的に)適用することにより、電子ディスプレイの知覚される画像品質を改善することを容易にすることができる。
図23のプロセス226に戻って、出力画像データがガンマドメインであることが予想されるとき、副画素レイアウトリサンプラブロック56は、表示画素画像データ72を線形ドメインからガンマドメインに変換することができる(プロセスブロック236)。更に、出力画像データがソース形式(例えば、RGB形式)であることが予想されるとき、副画素レイアウトリサンプラブロック56は、表示画素画像データ72をアップスケーリングして、表示形式(例えば、GR又はGB形式)からソース形式に変換することができる(プロセスブロック238)。いくつかの実施形態では、副画素レイアウトリサンプラブロック56は、欠落している色成分に対応する画像データを表示画素画像データ72に追加することにより、ソース形式に変換することができる。
図示目的で、表示画素画像データ72を表示形式からソース形式に変換するためのプロセス298の一実施形態を、図28に示す。一般的に、プロセス298は、表示画素画像データ内の欠落している色成分を決定することと(プロセスブロック300)、表示画素画像データに対応する表示画素が最後の画素であり、かつ画像が奇数の画像画素を含むか否かを判定することと(判定ブロック302)、表示画素が最後の画素であり、かつ画像が奇数の画素を含む場合に後続のダミー画素を生成することと(プロセスブロック304)を含む。加えて、プロセス298は、欠落している成分を直前又は直後の表示画素画像データ内の対応する色成分に設定することを含む(プロセスブロック306)。いくつかの実施形態では、プロセス298は、ディスプレイパイプライン36内に形成された回路接続に基づいて実施することができる。加えて又は代わりに、いくつかの実施形態では、プロセス298は、コントローラプロセッサ50などの処理回路を用いてコントローラメモリ52などの有形的非一時的コンピュータ可読媒体に記憶された命令を実行することにより実施することができる。
したがって、いくつかの実施形態では、副画素レイアウトリサンプラブロック56は、現在の表示画素に対応する表示画素画像データ72から欠落している成分を決定することができる(プロセスブロック300)。例えば、表示画素画像データ72がGR形式である場合、副画素レイアウトリサンプラブロック56は、青色成分が欠落していることを決定することができる。一方、表示画素画像データ72がGB形式である場合、副画素レイアウトリサンプラブロック56は、赤色成分が欠落していることを決定することができる。
ソース形式(例えば、RGB形式)に変換するために、コントローラ42は、副画素レイアウトリサンプラブロック56に直前又は直後の表示画素画像データから欠落している色成分の画像データをコピーするように命令することができる(プロセスブロック306)。例えば、青色の色成分が現在の表示画素画像データから欠落している場合、副画素レイアウトリサンプラブロックは、直前の表示画素画像データから現在の表示画素画像データに青色成分の画像データをコピーし、現在の表示画素画像データから直前の表示画素画像データに赤色成分の画像データをコピーすることができる。
したがって、現在の表示画素が最後の表示画素であり、かつ画像が奇数の画像画素を含む場合、後続の表示画素画像データは、色成分の画像データを現在の表示画素画像データと取り替えるために利用可能でないことがある。したがって、コントローラ42は、副画素レイアウトリサンプラブロック56に後続のダミー画素を生成するように命令することができる(プロセスブロック304)。いくつかの実施形態では、ダミー画素は、それぞれの色成分をゼロに設定した画像データを含むことができる。他の実施形態では、ダミー画素は、他の表示画素画像データのコピーとする、及び/又は色成分を任意の好適な値に設定した画像データを含むことができる。このようにして、副画素レイアウトリサンプラブロック56は、画像を表示するために使用されると向上した知覚される画像品質を提供する表示画素画像データ72を決定することができる。
上述したように、いくつかの実施形態では、圧縮ゲインマップ90は、相対的に、例えば、別の画素位置126に対して、画素位置126に関連付けられたゲイン値を示すことができる。そのような実施形態では、ディスプレイパイプライン56は、圧縮ゲインマップ90を展開して、それによって展開効率(例えば、画素位置に関連付けられたゲイン値が決定される速度)が制限される場合に、データ依存性に遭遇することがある。
展開効率を改善することを容易にするために、いくつかの実施形態では、画素位置126及び関連付けられたゲイン値は、例えば、非圧縮ゲインマップ170を複数の非圧縮ゲインマップ170に分割することにより、複数の画素領域にグループ化することができる。それぞれの非圧縮ゲインマップ170を圧縮することにより、画素領域のうちの1つにそれぞれ対応する複数の圧縮ゲインマップ90を決定することができる。このようにして、異なる画素領域内の画素位置に関連付けられたゲイン値の間のデータ依存性を低減することができる。実際に、このようにして複数の圧縮ゲインマップ90を実装することにより、ディスプレイパイプライン56が、ゲイン値が決定される順序、したがって、圧縮ゲインマップへのアクセス(例えば、フェッチ)パターンを変更することを可能にすることができる。いくつかの実施形態では、ディスプレイパイプライン56は、ゲイン値決定順序を制御して、例えば、ランダムアクセスパターンを実行することにより、メモリアクセス効率を改善することができる。
上述の具体的な実施形態は、例として示されたものであり、これらの実施形態は、様々な修正形態及び代替形態の影響を受けやすいものであり得ることを理解するべきである。更に、特許請求の範囲が、開示された特定の形態に限定されず、むしろこの開示の趣旨と意図の範囲にある全ての修正物、均等物、及び代替物を対象として含むことを理解されたい。

Claims (20)

  1. 丸みのある境界を有する表示領域を備える電子ディスプレイと、前記電子ディスプレイに通信可能に接続されたディスプレイパイプライン回路とを備える電子デバイスであって、
    前記表示領域は、前記丸みのある境界に隣接する第1の画素位置に複数の画素の第1の表示画素を含み、
    前記ディスプレイパイプライン回路は、画素位置の目標ルミナンスに関連付けられたソースフォーマットの画像データを処理し、前記電子ディスプレイ上に表示するために、前記電子ディスプレイ内の前記複数の画素のレイアウトに関連付けられた表示フォーマットの画像データを決定する回路を備え、前記ディスプレイパイプライン回路は、
    矩形形状を有する画像フレーム内の前記第1の画素位置での目標ルミナンスを示す第1の画像データを受信し、
    非圧縮ゲインマップに基づく圧縮ゲインマップから、前記第1の画素位置に関連付けられた第1のゲイン値を決定し、前記圧縮ゲインマップは、前記非圧縮ゲインマップの1つ以上のコード化された行のコード化された行ラン(row run)、及び前記非圧縮ゲインマップの1つ以上のコード化されない行のコード化されない行ランを含み、前記コード化された行ランは、前記コード化された行ランと関連した前記複数の画素の各画素位置のためのゲイン値のゲインマップ入力を示し、前記コード化された行ランは、単位より小さいゲインの少なくとも1つのゲインマップ入力を各々含む前記非圧縮ゲインマップ内の1つ以上の連続したゲインマップ行を含み、前記コード化されない行ランは、単位ゲインのゲインマップ入力を各々含む前記非圧縮ゲインマップ内の1つ以上の連続したゲインマップ行を含み、前記第1のゲイン値を決定することは、
    前記第1の画素位置が、前記コード化された行ラン内にあるのか、又は前記コード化されない行ラン内にあるのかを判定し、
    前記第1の画素位置が前記コード化されない行ラン内にあるという判定に応じて、前記第1のゲイン値が単位ゲインであることを決定し、
    前記第1の画素位置が前記コード化された行ラン内にあるという判定に応じて、前記圧縮ゲインマップを前記非圧縮ゲインマップに展開し、前記第1の画素位置のためのゲイン値を含むゲイン値マップに少なくとも部分的に基づいて前記第1のゲイン値を決定し、
    前記第1の表示画素の目標ルミナンスを示す第2の画像データを決定して、決定された前記第1のゲイン値に少なくとも部分的に基づいて前記第1の画像データを処理することにより前記画像フレームを表示し、
    前記第2の画像データを前記電子ディスプレイに出力して、前記表示領域上に前記画像フレームの非矩形部分を表示することを容易にするように構成されている、電子デバイス。
  2. 前記第2の画像データを決定するために、前記ディスプレイパイプライン回路は、
    前記第1のゲイン値及び前記電子ディスプレイの副画素レイアウトに少なくとも部分的に基づいてフィルタパラメータを決定し、
    前記フィルタパラメータを用いて前記第1の画像データをフィルタリングすることにより表示画素画像データを決定し、
    前記第1のゲイン値を前記表示画素画像データに適用することにより前記第2の画像データを決定して、前記第1の表示画素を線形的に暗くすることにより、前記画像フレームの前記非矩形部分が前記表示領域上に表示されるときに前記丸みのある境界に沿った知覚可能なエイリアシングを生成する可能性を低減することを容易にするように構成されている、請求項1に記載の電子デバイス。
  3. 前記ディスプレイパイプライン回路は、
    前記電子ディスプレイの前記表示領域の外側の前記画像フレーム内の第2の画素位置での目標ルミナンスを示す第3の画像データを受信し、
    前記圧縮ゲインマップから、ゼロのゲイン値である前記第2の画素位置に関連付けられた第2のゲイン値を決定し、
    前記第2のゲイン値を前記第3の画像データに適用することにより第4の画像データを決定して、前記画像フレームの前記非矩形部分の周囲にブラックマスクを適用することを容易にし、
    前記第4の画像データを前記電子ディスプレイに出力して、前記表示領域上に前記画像フレームの前記非矩形部分を表示することを容易にする、ように構成されている、請求項1に記載の電子デバイス。
  4. 前記ディスプレイパイプライン回路は、前記圧縮ゲインマップを記憶するように構成された内部メモリを含み、前記圧縮ゲインマップは、それぞれの画素位置をゲイン値セットに明示的にマッピングする前記非圧縮ゲインマップに基づいて決定されたランマップ(run map)、位置マップ、及びゲイン値マップを含み、
    前記ディスプレイパイプライン回路は、前記第2の画像データを決定するために、
    前記ランマップに少なくとも部分的に基づいて、前記第1の画素位置が前記非圧縮ゲインマップのコード化された行内にあるか否かを判定し、前記ランマップは、前記コード化された行ラン、前記コード化されない行ラン、又はその両方の前記非圧縮ゲインマップのゲインマップ行の数を示し、前記コード化された行は、対応する画素位置を1未満のゲイン値に関連付ける少なくとも1つのゲインマップ入力を含
    前記第1の画素位置が前記コード化された行内にあるときに前記位置マップに少なくとも部分的に基づいて、前記第1の画素位置が前記コード化された行の中間ゲインラン内にあるか否かを判定し、前記中間ゲインランは、対応する画素位置をゼロより大きくかつ1未満の少なくとも1つのゲイン値に関連付ける1つ以上の連続したゲインマップ入力を含み、
    前記画素位置が前記中間ゲインラン内にあるときに、前記ゲイン値マップに少なくとも部分的に基づいて前記第1のゲイン値を決定するように構成されている、請求項1に記載の電子デバイス。
  5. 前記ランマップは、それぞれの行ランに含まれた前記非圧縮ゲインマップのゲインマップ行の数を示し、行ランは、同じ行分類を有する1つ以上の連続したゲインマップ行を含み、
    前記位置マップは、前記コード化された行のそれぞれのゲインランに含まれた前記非圧縮ゲインマップのゲインマップ入力の数を示し、ゲインランは、同じ入力分類を有する1つ以上の連続したゲインマップ入力を含み、
    前記ゲイン値マップは、前記中間ゲインラン内のそれぞれの画素位置に関連付けられた前記ゲイン値セットを示す、請求項4に記載の電子デバイス。
  6. 前記位置マップは、前記非圧縮ゲインマップの対応するゲインマップ入力によってゼロより大きくかつ1未満のゲイン値に関連付けられた画素位置を示す、請求項4に記載の電子デバイス。
  7. 前記圧縮ゲインマップは、プログラム可能なレジスタに記憶された開始行ランインジケータを含み、前記開始行ランインジケータは、前記非圧縮ゲインマップ内で識別された第1の行ランが前記コード化された行ランであることを示し、行ランは、同じ行分類を有する1つ以上の連続したゲインマップ行を含み、
    前記ディスプレイパイプライン回路は、前記第1の画素位置が前記コード化された行内にあるか否かを判定するために、
    前記ランマップに少なくとも部分的に基づいて、前記第1の画素位置が前記第1の行ラン内にあるか否かを判定し、
    前記第1の画素位置が前記第1の行ラン内にあるときに前記第1の画素位置が前記コード化された行内にあることを判定し、
    前記第1の画素位置が前記第1の行ラン内にないときに、
    前記ランマップに少なくとも部分的に基づいて、前記第1の画素位置を含む第2の行ランを決定し、
    前記第2の行ランが奇数の行ランによって前記第1の行ランから分離されているときに、前記第1の画素位置が前記コード化された行内にあることを判定するように構成されている、請求項4に記載の電子デバイス。
  8. 前記圧縮ゲインマップは、プログラム可能なレジスタに記憶された位置ゲイン値インジケータを含み、前記位置ゲイン値インジケータは、前記コード化された行内の位置ゲインランがゼロゲインランか単位ゲインランかを示し、
    前記ディスプレイパイプライン回路は、前記第1の画素位置が前記中間ゲインラン内にないときに、
    前記位置マップに少なくとも部分的に基づいて、前記第1の画素位置が前記位置ゲインラン内にあることを判定し、
    前記位置ゲインランがゼロゲインランであることを前記位置ゲイン値インジケータが示すときに、前記第1の画素位置に関連付けられた前記第1のゲイン値がゼロであることを決定し、
    前記位置ゲインランが単位ゲインランであることを前記位置ゲイン値インジケータが示すときに、前記第1の画素位置に関連付けられた前記第1のゲイン値が1であることを決定するように構成されている、請求項4に記載の電子デバイス。
  9. 前記第1のゲイン値を決定するために、前記ディスプレイパイプライン回路は、前記第1の画素位置が前記コード化された行内にないときに、前記第1のゲイン値が1であることを決定するように構成されている、請求項4に記載の電子デバイス。
  10. 前記第1の表示画素は、前記表示領域内の前記第1の画素位置での色成分のルミナンスを制御する副画素を含み、
    前記第1の画像データは、前記画像フレーム内の前記第1の画素位置での前記色成分の目標ルミナンスを示し、
    前記第1のゲイン値は、前記副画素と前記表示領域の前記丸みのある境界との間に存在することが予想される最短距離に反比例する、請求項1に記載の電子デバイス。
  11. 前記電子ディスプレイは、前記表示領域の直線境界に隣接する第2の画素位置の第2の表示画素を含み、
    前記ディスプレイパイプライン回路は、
    前記画像フレーム内の前記第2の画素位置での目標ルミナンスを示す第3の画像データを受信し、
    前記圧縮ゲインマップから前記第2の画素位置に関連付けられた第2のゲイン値を決定し、
    前記第2のゲイン値に少なくとも部分的に基づいて決定されたフィルタパラメータを用いて前記第3の画像データをフィルタリングすることにより、表示画素画像データを決定し、
    前記直線境界に関連付けられたプログラム可能な境界ゲイン値を前記表示画素画像データに適用することにより前記第2の表示画素の目標ルミナンスを示す第4の画像データを決定して、前記第2の表示画素を暗くすることにより、前記画像フレームの前記非矩形部分が前記表示領域上に表示されるときに前記直線境界に沿った知覚可能な色縁を生成する可能性を低減することを容易にするように構成されている、請求項1に記載の電子デバイス。
  12. 前記電子デバイスは、ポータブル電話機、メディアプレーヤ、パーソナルデータオーガナイザ、ハンドヘルドゲームプラットフォーム、タブレットデバイス、コンピュータ、又はそれらの任意の組み合わせを備える、請求項1に記載の電子デバイス。
  13. 非矩形表示領域を有する電子ディスプレイ上に矩形画像の表示を容易にするための方法であって、
    前記矩形画像内の第1の画素位置での目標ルミナンスを示す第1の画像画素画像データを画像データソースから受信することと、
    非圧縮ゲインマップに基づく圧縮ゲインマップから前記第1の画素位置に関連付けられた第1のゲイン値を決定することであって、前記圧縮ゲインマップは、前記非圧縮ゲインマップの1つ以上のコード化された行のコード化された行ラン(row run)、及び前記非圧縮ゲインマップの1つ以上のコード化されない行のコード化されない行ランを含み、前記コード化された行ランは、前記コード化された行ランと関連した複数の画素位置の各画素位置のためのゲインマップ入力を示し、前記コード化された行ランは、単位より小さいゲインの少なくとも1つのゲインマップ入力を各々含む前記非圧縮ゲインマップ内の1つ以上の連続したゲインマップ行を含み、前記コード化されない行ランは、単位ゲインのゲインマップ入力を各々含む前記非圧縮ゲインマップ内の1つ以上の連続したゲインマップ行を含み、前記第1のゲイン値を決定することは、
    前記第1の画素位置が、前記コード化された行ラン内にあるのか、又は前記コード化されない行ラン内にあるのかを判定し、
    前記第1の画素位置が前記コード化されない行ラン内にあるという判定に応じて、前記第1のゲイン値が単位ゲインであることを決定し、
    前記第1の画素位置が前記コード化された行ラン内にあるという判定に応じて、前記圧縮ゲインマップを前記非圧縮ゲインマップに展開し、前記第1の画素位置のためのゲイン値を含むゲイン値マップに少なくとも部分的に基づいて前記第1のゲイン値を決定することを含む、第1のゲイン値を決定することと、
    前記第1のゲイン値に少なくとも部分的に基づいて、前記第1の画像画素画像データに適用されることになるフィルタパラメータを決定することと、
    前記フィルタパラメータに少なくとも部分的に基づいて前記第1の画像画素画像データをフィルタリングすることにより、前記第1の画素位置の第1の副画素の目標ルミナンスを示す第1の表示画素画像データを決定することと、
    決定された前記第1のゲイン値を前記第1の表示画素画像データに適用することと、
    前記第1の表示画素画像データを前記電子ディスプレイに出力して、前記電子ディスプレイの前記非矩形表示領域上に前記矩形画像の一部分のみを表示することを容易にすることと、を含む、方法。
  14. それぞれの画素位置をゲイン値セットに明示的に関連付ける複数のゲインマップ入力を含む非圧縮ゲインマップを決定することと、
    前記複数のゲインマップ入力のそれぞれを、単位ゲインマップ入力、中間ゲインマップ入力、及びゼロゲインマップ入力のうちの1つとして分類することと、
    前記ゲインマップ入力のそれぞれの行を、コード化された行又はコード化されない行のうちの1つとして分類することと、
    対応する行分類に少なくとも部分的に基づいて、行ラン内の前記ゲインマップ入力のそれぞれの行をグループ化することであって、行ランは、同じ行分類を有する1つ以上の連続したゲインマップ行を含む、ことと、
    それぞれの行ランに含まれた行の数に少なくとも部分的に基づいて、ランマップ(run map)を決定することと、
    対応する入力分類に少なくとも部分的に基づいて、ゲインラン内のそれぞれのコード化された行内の前記ゲインマップ入力のそれぞれをグループ化することと、
    それぞれのゲインラン内のゲインマップ入力の数に少なくとも部分的に基づいて、位置マップを決定することと、
    それぞれの中間ゲインラン内の前記ゲインマップ入力によって示された前記ゲイン値セットに少なくとも部分的に基づいて、ゲイン値マップを決定することであって、前記中間ゲインランは、対応する画素位置をゼロより大きくかつ1未満の少なくとも1つのゲイン値に関連付ける1つ以上の連続したゲインマップ入力を含み、前記中間ゲインラン内でそれぞれのゲインマップ入力に関連付けられた前記ゲイン値セットはゼロより大きくかつ1未満のゲイン値を含む、ことと、
    前記ランマップ、前記位置マップ、及び前記ゲイン値マップをディスプレイパイプライン回路の内部メモリに圧縮ゲインマップとして記憶して、前記第1の画素位置に関連付けられた前記第1のゲイン値を決定することを容易にすることと、を含む、請求項13に記載の方法。
  15. 前記内部メモリから前記ランマップを読み取って、前記第1の画素位置を含む行ランを識別することと、
    前記内部メモリの第1のプログラム可能なレジスタに記憶された開始行ランインジケータに少なくとも部分的に基づいて、前記行ランが前記コード化された行ランか前記コード化されない行ランかを判定することと、
    前記第1の画素位置が、前記コード化された行ラン内にあるとき、
    前記内部メモリから前記位置マップを読み取って、前記第1の画素位置を含むゲインランを識別することと、
    前記ゲインラン前記中間ゲインランであるか否かを判定することと、
    前記ゲインラン前記中間ゲインランであるとき、前記内部メモリから前記ゲイン値マップを読み取ることと、を含み、
    前記第1の画素位置に関連付けられた前記第1のゲイン値を決定することは、
    前記行ランが前記コード化されない行ランであるときに、前記第1のゲイン値が1であることを決定することと、
    前記内部メモリの第2のプログラム可能なレジスタに記憶された位置ゲイン値インジケータが、前記ゲインランが単位ゲインランであることを示すときに、前記第1のゲイン値が1であることを決定することと、
    前記ゲインランがゼロゲインランであることを前記位置ゲイン値インジケータが示すときに、前記第1のゲイン値がゼロであることを決定することと、
    前記ゲインランが中間ゲインランであるとき、前記第1のゲイン値が前記ゲイン値マップから読み取られた値であることを決定することと、を含む、請求項14に記載の方法。
  16. 前記矩形画像内の第2の画素位置での目標ルミナンスを示す第2の画像画素画像データを前記画像データソースから受信することと、
    前記第2の画素位置に関連付けられた第2のゲイン値を決定することであって、前記第2の画素位置は前記電子ディスプレイの前記非矩形表示領域の外側であるときにゼロである、ことと、
    前記第2のゲイン値に少なくとも部分的に基づいて前記第2の画像画素画像データを処理することにより、第2の表示画素画像データを決定することであって、前記第2の表示画素画像データを決定することは、前記第2のゲイン値を適用して前記非矩形表示領域の外側の画素位置にブラックマスクを適用することを容易にすることを含む、ことと、
    前記第2の表示画素画像データを前記電子ディスプレイに出力して、前記非矩形表示領域上に前記矩形画像の前記一部分のみを表示することを容易にすることと、を含む、請求項13に記載の方法。
  17. 電子デバイスの1つ以上のプロセッサによって実行可能な命令を記憶する有形的非一時的コンピュータ可読媒体であって、前記命令は、
    前記1つ以上のプロセッサを用いて、対応する画素位置をゲイン値セットにそれぞれ明示的に関連付ける複数のゲインマップ入力を含む非圧縮ゲインマップを決定する命令と、
    前記1つ以上のプロセッサを用いて、前記非圧縮ゲインマップに少なくとも部分的に基づいて圧縮ゲインマップを決定する命令と、
    ただし、前記圧縮ゲインマップを決定する前記命令は、
    ラン(row run)への前記非圧縮ゲインマップのそれぞれのゲインマップ行のグループ化に少なくとも部分的に基づいてランマップ(run map)を決定する命令であって、それぞれの行ランは、コード化された行としてそれぞれ分類された1つ以上の連続したゲインマップ行を含むか又はコード化されない行としてそれぞれ分類された1つ以上の連続したゲインマップ行を含み、前記コード化された行は、それぞれ対応する画素位置に対し、単位より小さいゲインを有する複数のゲインマップ入力を定義し、前記コード化されない行は、それぞれ対応する画素位置に対し、単位ゲインを有する前記複数のゲインマップ入力を定義し、前記ランマップは、前記コード化された行ラン、前記コード化されない行ラン、又はその両方の前記非圧縮ゲインマップのゲインマップ行の数を示す、命令と、
    前記非圧縮ゲインマップのコード化された行内におけるそれぞれのゲインマップ入力の、位置ゲインラン又は中間ゲインランへのグループ化に少なくとも部分的に基づいて位置マップを決定する命令であって、
    それぞれの中間ゲインランは、対応する画素位置をゼロより大きくかつ1未満の少なくとも1つのゲイン値に関連付ける、中間ゲイン入力としてそれぞれ分類された1つ以上の連続したゲインマップ入力を含み、
    それぞれの位置ゲインランは、単位ゲイン入力としてそれぞれ分類された1つ以上の連続したゲインマップ入力を含むか又はゼロのゲイン入力としてそれぞれ分類された1つ以上の連続したゲインマップ入力を含む、命令と、
    それぞれの中間ゲインラン入力によって示された前記ゲイン値セットに少なくとも部分的に基づいてゲイン値マップを決定する、命令と、を有し、
    前記圧縮ゲインマップを、電子ディスプレイに通信可能に接続されるように構成されたディスプレイパイプライン回路の内部メモリに記憶して、前記圧縮ゲインマップを読み取ることにより決定されたゲイン値に少なくとも部分的に基づいて、前記ディスプレイパイプライン回路が、前記電子ディスプレイ上に表示されることになる画像に対応する画像データを処理することを可能にする命令を含む、コンピュータ可読媒体。
  18. 前記非圧縮ゲインマップを決定する前記命令は、
    前記電子ディスプレイの表示領域の丸みのある境界に沿ったアンチエイリアシング領域を決定する命令と、
    前記アンチエイリアシング領域内の第1の画素位置を、第1のゲイン値セットに明示的に関連付ける第1のゲインマップ入力を決定する命令であって、前記第1のゲイン値セットはゼロより大きくかつ1未満のゲイン値を含む、命令と、
    前記アンチエイリアシング領域の外側かつ前記表示領域の外側の第2の画素を、第2のゲイン値セットに明示的に関連付ける第2のゲインマップ入力を決定する命令であって、前記第2のゲイン値セットにおけるそれぞれのゲイン値はゼロに等しく、前記ディスプレイパイプライン回路が、前記画像の形状と前記表示領域が異なる場合に前記画像を前記電子ディスプレイ上に表示することを容易にする前記画像上にブラックマスクを適用することを可能にする、命令と、含む、請求項17に記載のコンピュータ可読媒体。
  19. 前記画像が前記電子ディスプレイ上に表示されるときに前記表示領域の直線境界に沿った縁を生成する可能性を低減することが予想される境界ゲイン値を決定する命令と、
    前記境界ゲイン値を前記内部メモリのプログラム可能なレジスタに記憶する命令と、を含み、
    前記非圧縮ゲインマップを決定する前記命令は、前記直線境界に沿った第3の画素位置を第3のゲイン値セットに明示的に関連付ける第3のゲインマップ入力を決定して、前記ディスプレイパイプライン回路に対して、
    前記第3のゲイン値セットに少なくとも部分的に基づいて前記第3の画素位置に対応する画像データをフィルタリングすること、
    プログラム可能な境界ゲインが有効にされているときに、前記境界ゲイン値を前記画像データに適用すること、そして
    プログラム可能な境界ゲインが有効にされていないときに、前記第3のゲイン値セットを前記画像データに適用すること、を可能にする命令を含む、請求項18に記載のコンピュータ可読媒体。
  20. 前記ランマップを決定する前記命令は、対応する行ラン内のゲインマップ行の数を示す前記ランマップのそれぞれのランマップ入力を決定する命令を含み、
    前記位置マップを決定する前記命令は、それぞれのコード化された行内のゲインランに含まれた画素位置を示す前記位置マップの位置マップ入力を決定する命令を含み、
    前記ゲイン値マップを決定する前記命令は、それぞれの中間ゲインラン内のそれぞれの画素位置に関連付けられた前記ゲイン値セットを示す前記ゲイン値マップのゲイン値マップ入力を決定する命令を含み、
    前記圧縮ゲインマップを決定する前記命令は、
    第1の行ランをコード化された行ラン又はコード化されない行ランのうちの1つとして識別する開始行ランインジケータを決定する命令と、
    対応するゲインランをゼロゲインラン又は単位ゲインランのうちの1つとして識別する、それぞれの位置ゲインランに関連付けられた位置ゲイン値インジケータを決定する命令と、を含み、
    前記圧縮ゲインマップを前記内部メモリに記憶する前記命令は、
    前記開始行ランインジケータを第1のプログラム可能なレジスタに記憶して、前記ディスプレイパイプライン回路が、画素位置がコード化された行内にあるか否かを判定することを可能にする命令と、
    位置ゲインランインジケータを第2のプログラム可能なレジスタに記憶して、前記ディスプレイパイプライン回路が、前記画素位置が位置ゲインラン内にあるときに前記画素位置がゼロゲイン値に関連付けられているか単位ゲイン値に関連付けられているかを判定することを可能にする命令と、を含む、請求項17に記載のコンピュータ可読媒体。
JP2018161252A 2017-09-11 2018-08-30 電子ディスプレイの境界ゲインシステム及び方法 Active JP6966400B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15/701,086 2017-09-11
US15/701,086 US10714049B2 (en) 2016-06-06 2017-09-11 Electronic display border gain systems and methods

Publications (3)

Publication Number Publication Date
JP2019049705A JP2019049705A (ja) 2019-03-28
JP2019049705A5 JP2019049705A5 (ja) 2020-04-30
JP6966400B2 true JP6966400B2 (ja) 2021-11-17

Family

ID=63490180

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018161252A Active JP6966400B2 (ja) 2017-09-11 2018-08-30 電子ディスプレイの境界ゲインシステム及び方法

Country Status (4)

Country Link
EP (2) EP3893234A1 (ja)
JP (1) JP6966400B2 (ja)
KR (1) KR102166219B1 (ja)
CN (1) CN109493826B (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11217211B2 (en) * 2019-07-24 2022-01-04 Apple Inc. Multiple resolution section display panel systems and methods
WO2021157924A1 (ko) * 2020-02-07 2021-08-12 삼성전자 주식회사 디스플레이를 포함하는 전자 장치
KR20240045897A (ko) * 2022-09-30 2024-04-08 삼성전자주식회사 이미지 처리 장치, 이미지 처리 장치의 동작 방법, 및 이미지 처리 장치를 포함하는 디스플레이 시스템
CN116485645A (zh) * 2023-04-13 2023-07-25 北京百度网讯科技有限公司 图像拼接方法、装置、设备及存储介质

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7221381B2 (en) * 2001-05-09 2007-05-22 Clairvoyante, Inc Methods and systems for sub-pixel rendering with gamma adjustment
JP2006221125A (ja) * 2005-01-13 2006-08-24 Asahi Glass Co Ltd 画像処理方法及び表示装置
JP2007147727A (ja) * 2005-11-24 2007-06-14 Sony Corp 画像表示装置、画像表示方法、画像表示方法のプログラム及び画像表示方法のプログラムを記録した記録媒体
JP2008097223A (ja) * 2006-10-10 2008-04-24 Fujitsu Ltd 画像補正調整装置および調整方法
JP5112961B2 (ja) * 2008-06-11 2013-01-09 三菱電機株式会社 表示装置
JP4743234B2 (ja) * 2008-07-02 2011-08-10 ソニー株式会社 表示装置及び表示方法
JP5879844B2 (ja) * 2011-09-13 2016-03-08 セイコーエプソン株式会社 画像表示装置、画像処理装置
US9098537B2 (en) * 2012-12-20 2015-08-04 Oracle International Corporation Techniques for aligned run-length encoding
JP2016024382A (ja) * 2014-07-22 2016-02-08 株式会社ジャパンディスプレイ 画像表示装置及び画像表示方法
US9311735B1 (en) * 2014-11-21 2016-04-12 Adobe Systems Incorporated Cloud based content aware fill for images
CN104570457B (zh) * 2014-12-23 2017-11-24 上海天马微电子有限公司 一种彩色滤光基板及显示装置
KR102344730B1 (ko) * 2014-12-26 2021-12-31 엘지디스플레이 주식회사 데이터 구동부, 표시장치 및 이의 구동방법
CN106033656A (zh) * 2015-03-11 2016-10-19 群创光电股份有限公司 显示装置
US9947258B2 (en) * 2015-08-28 2018-04-17 Novatek Microelectronics Corp. Image processing method and image processing apparatus
US9672765B2 (en) * 2015-09-30 2017-06-06 Apple Inc. Sub-pixel layout compensation
CN108475489B (zh) * 2015-12-22 2021-08-03 夏普株式会社 显示装置
CN105511152A (zh) * 2016-02-02 2016-04-20 京东方科技集团股份有限公司 显示基板、显示面板和显示装置
KR102508461B1 (ko) * 2016-05-16 2023-03-09 삼성디스플레이 주식회사 표시 장치

Also Published As

Publication number Publication date
EP3454322A1 (en) 2019-03-13
CN109493826A (zh) 2019-03-19
JP2019049705A (ja) 2019-03-28
EP3893234A1 (en) 2021-10-13
CN109493826B (zh) 2021-12-03
KR20190029433A (ko) 2019-03-20
KR102166219B1 (ko) 2020-10-15

Similar Documents

Publication Publication Date Title
US10714049B2 (en) Electronic display border gain systems and methods
JP6966400B2 (ja) 電子ディスプレイの境界ゲインシステム及び方法
JP2019049705A5 (ja)
CN112055875B (zh) 电子显示器部分图像帧更新系统和方法
EP2630783A1 (en) Image processing methods and apparatus using localized gamut definitions
US11651719B2 (en) Enhanced smoothness digital-to-analog converter interpolation systems and methods
JP2023052085A (ja) 画素コントラスト制御システム及び方法
US10762604B2 (en) Chrominance and luminance enhancing systems and methods
US11941785B2 (en) Directional scaling systems and methods
US11094038B1 (en) Variable scaling ratio systems and methods
US20230343269A1 (en) Temperature-Based Pixel Drive Compensation
US10068548B1 (en) Sub-pixel layout resampler systems and methods
US10719916B2 (en) Statistical noise estimation systems and methods
KR102669220B1 (ko) 지향성 스케일링 시스템들 및 방법들
US11321813B2 (en) Angular detection using sum of absolute difference statistics systems and methods
US20240078648A1 (en) Tone Mapping for Preserving Contrast of Fine Features in an Image
US20240095871A1 (en) Cache architecture for image warp processing systems and methods
JP2007019675A (ja) 符号化装置、携帯端末装置及びそれらに用いる画素色情報符号化方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180911

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190814

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20191007

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20200107

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200309

A524 Written submission of copy of amendment under article 19 pct

Free format text: JAPANESE INTERMEDIATE CODE: A524

Effective date: 20200309

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200615

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20200914

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201021

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210401

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20210701

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210901

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20211021

R150 Certificate of patent or registration of utility model

Ref document number: 6966400

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150