JP3690860B2 - 画像処理装置 - Google Patents
画像処理装置 Download PDFInfo
- Publication number
- JP3690860B2 JP3690860B2 JP05029996A JP5029996A JP3690860B2 JP 3690860 B2 JP3690860 B2 JP 3690860B2 JP 05029996 A JP05029996 A JP 05029996A JP 5029996 A JP5029996 A JP 5029996A JP 3690860 B2 JP3690860 B2 JP 3690860B2
- Authority
- JP
- Japan
- Prior art keywords
- error
- pixel
- display
- pixels
- display line
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G3/00—Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes
- G09G3/20—Control 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
- G09G3/2007—Display of intermediate tones
- G09G3/2059—Display of intermediate tones using error diffusion
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2310/00—Command of the display device
- G09G2310/02—Addressing, scanning or driving the display screen or processing steps related thereto
- G09G2310/0232—Special driving of display border areas
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Control Of Indicators Other Than Cathode Ray Tubes (AREA)
- Controls And Circuits For Display Device (AREA)
- Control Of Gas Discharge Display Tubes (AREA)
- Image Processing (AREA)
- Transforming Electric Information Into Light Information (AREA)
Description
【発明の属する技術分野】
本発明は、画像処理装置に関するものであり、更に詳しく言えば、高い表示階調の入力画像を表示階調能力の低い表示装置で表示するために輝度(誤差データ)を周辺画素に拡散する回路に関するものである。
【0002】
【従来の技術】
近年、薄型の特徴を生かしたフルカラーPDP(プラズマ・ディスプレイ・パネル)が壁掛けテレビ用として製造されている。PDPは、本来、白黒画像の表示デバイスであるが、表示パネルにR(赤)G(緑)B(青)の3色の蛍光体を塗布することによりカラー表示を実現している。
【0003】
また、PDPは画質を向上させるために多階調表示方式が採られている。多階調表示にはサブフィールド方式が採用されている。この方式は、表示セルへの書込みデータの重みに比例した発光時間で各表示セルを同時に発光させるものである。
図14(A)は、64階調のPDPの1フレーム期間(垂直走査期間:16.7ms)を示している。図14(A)において、SF1〜SF6はサブフィールドである。各フィールドSF1〜SF6の発光時間の相対比は1対2,4,8,16,32である。このようにサブフィールド毎に発光時間を変えることにより、64階調のカラー表示を実現することができる。多階調化のためには、サブフィールドを増やせば良いが、サブフィールド毎にデータを書込む「アドレス期間」が必要となる。したがって、サブフィールド数を増やすことは1フレーム期間内に占めるアドレス期間が増大し、相対的に発光時間を短くせざるを得なくなる。これにより、表示パネルの輝度が低下してしまう。
【0004】
そこで、高い表示階調の入力画像を表示駆動能力の低い表示装置で表示するために、疑似的な多階調化手段として「誤差拡散処理」が採用されている。誤差拡散処理とは、階調数Aを表示できる表示装置に、A以上の階調数Bを持つ映像信号を入力した場合、表示装置が表示できない情報(B−A)を利用して実際の階調数はAでありながら、疑似的にBに近い階調数に見せる技術である。
【0005】
図14(B)は、入力画像の階調対表示画像の階調の関係を示した特性図である。図14(B)において、図中太線は256階調(8ビット)の入力画像を全ビットを適用して階調表示を行った場合の特性である。階段状の細線は、256階調の入力画像の上位3ビットを適用して8階調表示を行った場合の特性である。この階調特性は誤差拡散処理を行わない場合を示しており、人間の顔のような輪郭部分が、明るさ(階調)の段差として見えてしまう。このため色細やかな自然画を表示することができない。
【0006】
そこで、図14(B)に示すように、256階調特性(図中太線)と8階調特性(細線)が作る三角形部分(図中網点部分)の輝度差(以下誤差又は誤差データという)を利用することにより、図15(A)に示すような階段部分に無数の疑似中間調(ひげ)を発生させるようにする。この中間調の誤差(明るさ)が画面全体に分散され、人間の目にはこれがぼけて認識されるようになり、8階調特性の階段部分が滑らかに変化するようになる。
【0007】
誤差拡散処理は、まず、
(1)閾値を決定し、
(2)それぞれの閾値を表示値に割り当て、
(3)入力画像の値と閾値とを比較して、最も近い閾値を選択することにより、表示値を決定する。そして、
(4)選択した閾値と入力画像の差により誤差を算出し、
(5)算出した誤差を図15(B)に示すような重み(1/16, 3/16, 5/16, 7/16)を付けて周辺の画素に拡散する(Floyd&Steinbergの方法)。
【0008】
図15(B)において、Aは当該画素、Bは左隣の画素、Cは左上の画素、Dは真上の画素、Eは右上の画素である。誤差拡散開始位置は、表示画面の第1表示ラインの先頭画素である。この位置から所定の方向に誤差が拡散する。誤差は1つの画素から右隣の画素、左下の画素、真下の画素、右下の画素に拡散する。誤差拡散処理は、このような5つの手順によって行われ、このうち表示画面の画素毎に(3)〜(5)の作業を繰り返し行う。
【0009】
これによって、画面左上部から右下部に向かって誤差が拡散され、どんどん誤差が累積されていき、各画素の表示値の最下位ビットに桁上げが発生する。この桁上げが図15(A)に示すような階調特性に疑似中間調を発生させる。そして、累積誤差が画面全体に散りばめられ、表示画面を原画に近い階調数に見せかけることができる。
【0010】
次に、従来例に係る誤差拡散回路を説明する。図16の構成図において、1はm個の閾値S1〜Smと入力画像との差が最も少なくなる表示値X1 〜Xmのいずれか1つ及びそのときの誤差を検出する誤差検出回路である。閾値と表示値とは表示装置の階調数分(m個)だけ用意されており、表示値と閾値はそれぞれ対応付けられている。2は誤差拡散範囲以外の表示値をマスクするマスク回路、3〜6は誤差拡散範囲以外の誤差をマスクするマスク回路、7〜10は所定の重みα1〜α4を誤差に乗算する乗算器、11は当該画素の周辺画素から拡散されてくる誤差を全て加算する加算器である。12は加算器11の出力(累積誤差:桁上げ部分の下位のビット)を1表示ラインだけ遅らせるラインメモリ、13〜15は周辺画素からの誤差を保持するフリップ・フロップ回路(以下FF回路という)である。16は加算器11の演算結果のうち、誤差の最上位となる桁上げビットを誤差検出回路1からの表示値に加算する加算器である。17は各マスク回路2〜6及びラインメモリ12を制御する制御部である。
【0011】
次に誤差拡散回路の動作を説明する。図17は水平方向に誤差を拡散する場合の動作タイミングチャートであり、図18は垂直方向に誤差を拡散する場合の動作タイミングチャートを示している。このタイムチャートは、入力画像の1表示ラインの画素I1〜I20のうち、画素I3〜I17に誤差拡散範囲を指定した場合を示している。
【0012】
例えば、8ビットの入力画像を5ビットの表示階調の表示装置に適用する場合、まず、誤差検出回路1は、8ビットの入力画像からm個の閾値S1〜Smを差し引いた下位3ビットの誤差が最も少なくなる5ビットの表示値X1 〜Xmの何れか及びそのときの誤差A´を検出する。この表示値Xnは第1表示ラインの先頭画素I3に該当する。
【0013】
また、マスク回路2は制御部17から出力されたマスク信号S2に基づいて誤差拡散範囲外の表示値をマスクするように動作し、当該画素Aの表示値Xnは加算器16に出力される。また、マスク回路3はマスク信号S1に基づいて誤差拡散範囲外の誤差をマスクするように動作し、当該画素の誤差A´は加算器11に出力されるようになる。
【0014】
加算器11の演算結果から、桁上げ部分以下の3ビットは累積誤差としてラインメモリ12及びFF回路13に書き込まれる。また、FF回路13の出力は入力に対して1クロック遅延した累積誤差、つまり当該画素Aの左隣に位置する画素Bの誤差B´になる。
ラインメモリ12は制御部17からのリード制御信号に基づいて加算器11の出力を1表示ライン及び1クロック遅延して乗算器10に出力する。このラインメモリ12からの出力が、当該画素Aの右上の画素Eの誤差E´である。ラインメモリ12の出力をFF回路14及びFF回路15により1クロックづつ遅延させることにより、当該画素Aの真上に位置する画素Dの誤差D´、画素Aの左上に位置する画素Cの誤差C´を得ている。各マスク回路4、5、6はマスク信号S1に基づいて誤差拡散範囲以外の誤差をマスクする。この結果、周辺画素B,C,D,Eからの誤差が乗算器7〜10に出力され、乗算器7〜10はα1〜α4の係数を誤差に乗算して重み付けする。重み付けされた誤差は加算器11によって加算される。そして加算器11の演算の結果、新たな誤差に桁上げ(キャリー=「1」)が生じた場合、このビットが、誤差検出回路1からの表示値の最下位ビットに加算されるようになる。このように見直された表示値が表示信号(表示画像)として表示装置に出力される。また、新たな誤差は周辺の画素に拡散していく。
【0015】
【発明が解決しようとする課題】
しかしながら従来技術に係る誤差拡散方法では、図19に示すように表示画面の中央の画素A(ケース▲1▼)に比べて、画面の端部の画素には、周辺画素からの誤差が十分に拡散されていない。すなわち、図19において、ケース▲2▼では、第1表示ラインの先頭画素Aに対して、左隣の画素B、左上の画素C、真上の画素D及び右上の画素Eからの誤差が無い。ケース▲3▼では、第1表示ラインの最終画素Aに対して左隣の画素Bの誤差はあるものの、左上の画素C、真上の画素D及び右上の画素Eからの誤差が無い。ケース▲4▼では、最終表示ラインの先頭画素Aに対して真上の画素D及び右上の画素Eの誤差はあるものの、左隣の画素B及び左上の画素Cからの誤差が無い。ケース▲5▼では、最終表示ラインの最終画素Aに対して左隣の画素B、左上の画素C及び真上の画素Dの誤差はあるものの、右上の画素Eからの誤差が無い。
【0016】
したがって、誤差が十分に累積されている画面の中央部や下部に比べて、誤差が不十分な画面の左側や上部では輝度ムラが発生し、多階調表示の再現性が非常に悪くなるという問題がある。
本発明は、かかる従来例の課題に鑑み創作されたものであり、表示画面の左上部に位置する画素の輝度の差分の不足を補い、その部分の輝度ムラを無くして画質の向上を図ることが可能となる画像処理装置の提供を目的とする。
【0017】
【課題を解決するための手段】
本発明に係る第1の画像処理装置は、その一実施例を図1に示すように、輝度表示がNビットである画素の画像データをフレーム毎に入力し、輝度表示がM(M<N)ビットである画素の画像データをフレーム毎に出力する装置であって、当該画素のNビットの画像データからMビットの画像データを差し引いたN−Mビットの誤差データを求め、当該画素の誤差データに周辺画素の誤差データを加算して新たな誤差データを求め、当該新たな誤差データの桁上げによるビットのデータをMビットの画像データに加算して輝度を補正すると共に新たな誤差データを周辺画素に拡散する画像処理装置において、前記周辺画素から拡散されてくる誤差データとして、当該表示画像の前フレームの最終表示ラインの画素の誤差データを現在フレームの第1表示ラインの画素の誤差データに加算すると共に、当該表示画像の現在フレームの各々の表示ラインの先頭画素の誤差データを現在フレームの各々の表示ラインの最終画素の誤差データに加算することを特徴とする。
【0018】
本発明の第2の画像処理装置は、輝度表示がNビットである画素の画像データをフレーム毎に入力し、輝度表示がM(M<N)ビットである画素の画像データをフレーム毎に出力する装置であって、前記Nビットの画像データからMビットの画像データを差し引いた当該画素のN−Mビットの誤差データを求め、前記誤差データに周辺画素の誤差データを加算し新たな誤差データを求め、前記新たな誤差データの桁上げによるビットのデータをMビットの画像データに加算して輝度を補正すると共に新たな誤差データを周辺画素に拡散する画像処理装置において、
当該表示画像の現在のフレームの第1表示ラインから任意の表示ラインに至る間の複数の画素をブロックに分割し、前記ブロック毎に誤差データの平均値を求め、前記ブロック毎に求めた誤差データの平均値を周辺の画素から拡散されてくる誤差データとして、次のフレームの第1表示ラインの表示画素の誤差データに加算することを特徴とし、上記目的を達成する。
【0019】
本発明の第1の画像処理装置では、前フレームの最終表示ラインの各々対応する画素の誤差データを現在フレームの第1表示ラインの各々対応する画素の誤差データに加算することにより、表示画面の左上部(誤差拡散開始点)から右上部に至る画素の輝度を補うことができる。したがって、これらの当該画素に最初から大きな誤差データを与えることができるので、表示画面の左上部から右上部に至る輝度ムラが無くなる。
【0021】
本発明の第2の画像処理装置では、ブロック毎に求めた誤差データの平均値を次のフレームの第1表示ラインの当該画素の誤差データに加算することにより、表示画面の左上部の誤差を補うことができる。したがって、これらの当該画素に最初から大きな誤差データを与えることができるので、表示画面の左上部の輝度ムラが無くなる。
【0022】
また、本発明の第2の装置ではブロック毎に求めた誤差データの平均値を次のフレームの各々の表示ラインの先頭画素や最終画素の誤差データに加算することにより、これらの当該画素に最初から大きな誤差データを与えることができるので、表示画面の左側部分や右側部分の輝度ムラが無くなる。
【0023】
【発明の実施の形態】
次に、図を参照しながら本発明の実施の形態について説明をする。図1〜図13は、本発明の実施の形態に係る画像処理装置の説明図である。
本発明の画像処理装置は、▲1▼1枚の画像をラスタ走査する画像信号が時系列的に伝送されてくるという特徴と、▲2▼表示画像のフレーム間には相関性があるということを利用して表示画面の端部の画素の誤差データ(以下単に誤差という)を算出するものである。
【0024】
(1)第1の実施の形態
図1は、本発明の第1の実施の形態に係る誤差拡散処理の説明図を示している。第1の誤差拡散方法は、前記の▲1▼の特徴を利用するものである。図1は表示画像の現在フレームとその前フレームとを便宜的につなぎ合わせたものである。図1において、Lはある表示画像の現在フレームであり、L−1は表示画像の前フレームを示している。当該フレームは、mドット×nラインの表示画面を構成している。網掛け部分(a)は、画面の中央部の画素のタイプを示しており、(b)〜(g)は画面の端部の画素のタイプを示している。次に、これらのタイプの画素に誤差を与える周辺画素を示すことにする。以下括弧内はドット番号、ライン番号、フレーム番号を順に示している。Xは任意ドットであり、Yは任意ラインである。
【0025】
(a) 画面の中央部の画素(X,Y,L)は、基本パターンである。但し、1<Y<n、1<X<mである。この画素に対して誤差を与える周辺画素は、
左隣の画素が、B:(m−1,n , L )、
左上の画素が、C:(m−1,n−1,L )、
真上の画素が、D:(m , n−1,L )、
右上の画素が、E:(m+1,n−1,L )である。
【0026】
(b) 画面の左上部の画素(1,1,L)に対して誤差を与える周辺画素は、
左隣の画素が、B:(m , n , L−1)、
左上の画素が、C:(m , n−1,L−1)、
真上の画素が、D:(1 , n , L−1)、
右上の画素が、E:(2 , n , L−1)である。
【0027】
(c) 画面の最上部の画素(X,1,L)、すなわち、画面の左上部及び右上部の画素を除いた第1表示ラインの画素(1<X<m)に対して誤差を与える周辺画素は、
左隣の画素が、B:(X−1,1 , L )、
左上の画素が、C:(X−1,n , L−1)、
真上の画素が、D:(X , n , L−1)、
右上の画素が、E:(X+1,n , L−1)である。
【0028】
(d) 画面の右上部の画素(m,1,L)に対して誤差を与える周辺画素は、
左隣の画素が、B:(m−1,1 , L )、
左上の画素が、C:(m−1,n , L−1)、
真上の画素が、D:(m , n , L−1)、
右上の画素が、E:(m , 1 , L )である。
【0029】
(e) 画面の第2表示ラインの先頭画素(1,2,L)に対して誤差を与える周辺画素は、
左隣の画素が、B:(m , 1 , L )、
左上の画素が、C:(m , n , L−1)、
真上の画素が、D:(1 , 1 , L )、
右上の画素が、E:(2 , 1 , L )である。
【0030】
(f) 画面の左端の各先頭画素(1,Y,L)、すなわち、画面の第1、第2表示ラインの先頭画素を除いた左端の画素(2<Y<n)に対して誤差を与える周辺画素は、
左隣の画素が、B:(m , n−1,L )、
左上の画素が、C:(m , n−2,L )、
真上の画素が、D:(1 , n−1,L )、
右上の画素が、E:(2 , n−1,L )である。
【0031】
(g) 画面の右側下部の最終画素(m,n,L)に対して誤差を与える周辺画素は、
左隣の画素が、B:(m−1,n , L )
左上の画素が、C:(m−1,n−1,L )
真上の画素が、D:(m , n−1,L )
右上の画素が、E:(1 , n , L )である。
【0032】
次に、このような周辺画素B、C、D、Eから7タイプの画素へ誤差を与える誤差拡散回路について説明する。図2は第1の実施の形態に係る誤差拡散回路の構成図を示している。図2において、20は誤差検出回路、21、22、28〜30はマスク回路、23は加算器、24はリード制御信号SR及びライト制御信号SWに基づいて加算器23の出力(累積誤差)を1表示ライン(1水平期間)だけ遅らせるラインメモリである。従来例では最終表示ラインの1つ手前の表示ラインで書込みを終了していたが、本実施の形態では最終表示ラインの誤差まで書込みを行う。読出しは各表示ラインの先頭画素から開始する。このようにすると第1表示ラインの先頭画素の誤差の演算に、前フレームの最終表示ラインの各画素の誤差が使用できる。従来例では「0」であった先頭画素の誤差として、左上の画素C、真上の画素D、右上の画素Eの誤差を前フレームの最終表示ラインから持ってくることができる。
【0033】
25、26、27はフリップ・フロップ回路(以下FF回路という)である。FF回路25は加算器23の出力を1クロック分だけ遅らせ、左隣の画素B´から画素へ拡散する誤差を与えるように動作する。FF回路26はラインメモリ24の出力を1クロック分だけ遅らせ、真上の画素D´から画素へ拡散する誤差を与えるように動作する。FF回路27はラインメモリ24の出力を2クロック分だけ遅らせ、画素の左上の画素C´からの誤差を与えるように動作する。
【0034】
これまでは従来例と大きな相違点はないが、次の点で構成が異なる。31は誤差拡散終了パルス(S5)に従って加算器23の出力(画素の誤差)をラッチするラッチ回路である。ラッチ回路31は、図1に示したような(b)、(e)及び(f)タイプの画素の誤差を計算する場合に、加算器23の出力(誤差B´)をラッチするように動作する。誤差拡散終了パルスは、前フレームの最終表示ライン(nライン)の最終画素の誤差を算出したときに発生する。誤差拡散終了パルスが「H」から「L」レベルに変化すると、加算器23の出力がラッチ回路31にセットされる。これにより、左隣の画素Bの誤差として前フレームの最終画素の誤差を現在フレームの第1表示ラインの先頭画素に与えることができる。
【0035】
また、誤差拡散終了パルスは、現在フレームの各表示ライン(1〜nライン)の最終画素の誤差を算出したときに発生する。誤差拡散終了パルスは各表示ラインの最終画素の誤差を算出すると「H」から「L」レベルに変化する。この結果、加算器36の出力がラッチ回路31にセットされる。ラッチ回路31は、図1に示したような(b)、(e)及び(f)タイプの画素の誤差を計算する場合に、加算器23の出力(誤差B´)をラッチするように動作する。これにより、左隣の画素Bの誤差として各表示ラインの最終画素の誤差を現在フレームの各表示ラインの先頭画素に与えることができる。
【0036】
32はラッチパルス信号(S4)に従ってラッチ回路31の出力をラッチするラッチ回路である。ラッチ回路32は、(b)、(c)、(d)、(e)及び(f)タイプの画素の誤差を計算する場合に、ラッチ回路32の出力を誤差C´としてラッチするように動作する。これにより、左上部の画素Cの誤差として各表示ラインの最終画素の誤差を現在フレームの各表示ラインの先頭画素に与えることができる。
【0037】
33は誤差拡散開始パルス(S3)に従って加算器23の出力をラッチするラッチ回路である。ラッチ回路33は、(d)及び(g)タイプの画素の誤差を計算する場合に、加算器23の出力(誤差E´)をラッチするように動作する。誤差拡散開始パルスは、現在フレームの各表示ラインの先頭画素の誤差を算出するときに発生する。誤差拡散開始パルスが「H」から「L」レベルに変化すると、加算器23の出力がラッチ回路33にセットされる。これにより、右上部の画素Eの誤差として現在フレームの先頭画素の誤差を現在フレームの各表示ラインの最終画素に与えることができる。
【0038】
34は誤差拡散開始パルスに従ってラッチ回路31の出力又はFF回路25の出力(誤差B´)のいずれかを選択するセレクタである。セレクタ34は、図1に示したような(a)、(c)、(d)及び(g)タイプの画素の誤差を計算する場合は、入力1側の誤差B´を選択するように動作するが、(b)、(e)及び(f)タイプの画素の誤差を計算する場合は入力2側のラッチ回路31の出力を選択するように動作する。
【0039】
35は誤差拡散開始パルスに従ってラッチ回路32の出力又はFF回路27の出力(誤差C´)のいずれかを選択するセレクタである。セレクタ35は、(a)、(g)タイプの画素の誤差を計算する場合に、入力1側の誤差C´を選択するように動作するが、(b)、(c)、(d)、(e)及び(f)タイプの画素の誤差を計算する場合は、入力2側のラッチ回路32の出力を選択するように動作する。
【0040】
36は誤差拡散終了パルスに従ってラッチ回路33の出力又はラインメモリ24の出力(誤差E´)のいずれかを選択するセレクタである。セレクタ36は、(a)、(e)及び(f)タイプの画素の誤差を計算する場合に、入力1側の誤差E´を選択するように動作するが、(b),(c),(d),(g)タイプの画素の誤差を計算する場合は、入力2側のラッチ回路33の出力を選択するように動作する。
【0041】
なお、37は画素Bからの誤差に所定の重みα1=7/16を乗算する乗算器、38は画素Cからの誤差に重みα2=1/16を乗算する乗算器、39は画素Dからの誤差に重みα3=5/16を乗算する乗算器、40は重みα4=3/16を画素Eかの誤差に乗算する乗算器である。41は加算器30の演算結果のうち誤差の桁上げ部分の下位のビットを誤差検出回路20からの表示値に加算する加算器である。次式は、例えば、6ビットの表示値Xn , Xn-1 , Xn-2 , Xn-3 , Xn-4 , Xn-5 に、小数表示した誤差Ym .Ym-1 , Ym-2 , Ym-3 , Ym-4 , Ym-5 を加算した場合の加算器30の出力Zn , Zn-1 , Zn-2 , Zn-3 , Zn-4 , Zn-5 .Ym-1 , Ym-2 , Ym-3 , Ym-4 , Ym-5 を示している。
【0042】
【数1】
【0043】
Ym が桁上げ部分のビットであり、当該表示値の誤差に周辺の画素からの誤差を加算した結果キャリーが上がるとXn-5 が変化する。Xn-5 が変化することにより表示値が補正できる。例えば、表示値が「111000」の場合であって、キャリー=1が上がると、表示値は「111001」に補正され、表示値が「111001」の場合であって、キャリー=1が上がると、表示値は「111010」に補正されるようになる。
【0044】
42はマスク回路22、28〜30、ラッチ回路31〜33、セレクタ34〜36及びラインメモリ24の入出力を制御する制御部である。制御部42は、垂直同期信号(V−SYNC)、水平同期信号(H−SYNC)及び誤差拡散範囲指定値に従って各マスク回路28〜30にマスク信号S1を出力し、マスク回路22にマスク信号S2を出力し、ラインメモリ24にリード制御信号及びライト制御信号を出力する。マスク信号S1及びS2は誤差拡散範囲を指定するときに「H」レベルにする。
【0045】
また、制御部42は、垂直同期信号、水平同期信号及び誤差拡散範囲指定値から、各表示ライン毎に誤差拡散開始位置と誤差拡散終了位置とを検出して誤差拡散開始パルスとラッチパルスと誤差拡散終了パルスとを発生する。誤差拡散開始パルスはセレクタ34、35及びラッチ回路33に出力し、ラッチパルスはラッチ回路32に出力し、誤差拡散終了パルスはラッチ回路31、セレクタ36に出力する。
【0046】
次に、本実施の形態に係る誤差拡散回路の動作を説明する。図3は垂直方向に誤差を拡散する場合の動作タイミングチャートである。このタイムチャートは、入力画像の1フレームの垂直方向の画素I0〜I20のうち画素I2〜I18に誤差拡散範囲を指定した場合であり、表示ラインが17本の場合を示している。
本実施の形態では、前フレームの最終表示ラインの最終画素の誤差Y18a,Y18b…を周辺画素C,D,Eの誤差として使用する場合を示している。まず、誤差検出回路20は、画像(輝度値)を入力し、従来例と同様に誤差が最も少なくなる表示値(輝度)X2及びそのときの誤差A2を検出する。この表示値X2は第1表示ラインの先頭画素I2に該当する。表示値X2は、表示装置に表示すべき画素の輝度値である。
【0047】
また、マスク回路21は各表示ライン毎にマスク信号S1及びS2に基づいて誤差拡散範囲外の表示値をマスクするように動作し、画素の表示値X2は加算器41に出力される。マスク回路22はマスク信号S1に基づいて誤差拡散範囲外の誤差をマスクするように動作し、画素の誤差A2は加算器23に出力されるようになる。
【0048】
加算器23の演算結果で、桁上げ部分から下位のビットが累積誤差としてラインメモリ24に書き込まれる。ラインメモリ24はリード制御信号に基づいて加算器23の出力を1表示ライン遅延してセレクタ36に出力する。セレクタ36は誤差拡散終了パルスに従ってラッチ回路33の出力又はラインメモリ24の出力をマスクした誤差E´のいずれかを選択するように動作する。このとき、セレクタ36は、(a)、(e)及び(f)タイプの画素の誤差を計算する場合は、入力1の誤差E´を選択するように動作するが、(d),(g)タイプの画素の誤差を計算する場合は、入力2側のラッチ回路33の出力を選択するように動作する。
【0049】
同様に残りの表示ラインについても誤差検出回路20は、表示値X3〜X18及び誤差A3〜A18を検出し、所定の誤差拡散処理を続けると、加算器23はY2b〜Y18bを出力するようになる。そして、最終表示ラインの最終画素I18の誤差Y18bが得られると、次のフレームの第1表示ラインの周辺画素C,D,Eの誤差としてこれを使用する(図3▲1▼参照)。
【0050】
ラインメモリ24からの出力が、当該画素の右上の画素Eの誤差E´である。ラインメモリ24の出力をFF回路26及びFF回路27により1クロックづつ遅延させると、当該画素Aの真上の画素Dの誤差D´、画素Aの左上の画素Cの誤差C´が得られる。
そして、乗算器37は画素Bからの誤差に重みα1=7/16を乗算し、乗算器38は画素Cからの誤差に重みα2=1/16を乗算し、乗算器39は画素Dからの誤差に重みα3=5/16を乗算し、乗算器40は重みα4=3/16を画素Eかの誤差に乗算するように動作する。この結果、加算器41は加算器30の演算結果でキャリーが発生すると、この桁上げビット=「1」を誤差検出回路20からの表示値に加算するように動作する。これにより、加算器41は表示信号としてZ2〜Z18を表示装置に出力する。新たな誤差は第2フレームの画素に拡散して行く。
【0051】
図4は水平方向に誤差を拡散する場合の動作タイミングチャートを示している。このタイムチャートは、入力画像の1表示ラインの水平方向の画素のうち17画素に誤差拡散範囲を指定した場合であり、表示画素が17個の場合を示している。
図4において、▲1▼は、図1に示したように右上の画素Eからの誤差として第1表示ラインの先頭画素の誤差を当該表示ラインの最終画素に与える場合を示している。この場合、誤差検出回路20が表示値X2及びそのときの誤差A2を検出し、マスク回路21がマスク信号S2に基づいて誤差拡散範囲以外の表示値をマスクし、マスク回路22がマスク信号S1に基づいて誤差拡散範囲以外の誤差をマスクするように動作する。また、加算器23はラッチ回路33に演算結果(誤差)Y2aを出力する。ラッチ回路33は誤差拡散開始パルスS3に基づいて誤差Y2aを1水平期間だけラッチする。
【0052】
セレクタ36は誤差拡散終了パルスに従って(d),(g)タイプの画素の誤差を計算するべく、入力2側のラッチ回路33の出力を選択するように動作する。これにより、右上の画素Eからの誤差として第1表示ラインの先頭画素の誤差を当該表示ラインの最終画素の誤差に加算することができる。
▲2▼は、左隣の画素Bからの誤差として第1表示ラインの最終画素の誤差を第2表示ラインの先頭画素に与える場合を示している。この場合、誤差検出回路20が表示値X18及びそのときの誤差A18を検出し、マスク回路21が当該画素の表示値以外をマスクし、マスク回路22が誤差拡散範囲以外の誤差をマスクするように動作する。また、加算器23はラッチ回路31に演算結果(誤差)Y18aを出力する。そして、ラッチ回路31は誤差Y18aを誤差拡散終了パルスS5に基づいて1水平期間だけラッチし、セレクタ34は誤差拡散終了パルスに従って(b)、(e)タイプの画素の誤差を計算するべく、入力2側のラッチ回路31の出力を選択するように動作する。これにより、左隣の画素Bからの誤差として第1表示ラインの最終画素の誤差を第2表示ラインの先頭画素の誤差に加算することができる。
【0053】
▲3▼は、左上の画素Cからの誤差として、第1表示ラインの最終画素の誤差を第3表示ラインの先頭画素に与える場合を示している。この場合、加算器23の演算結果Y18aが、ラッチパルスに基づいてラッチ回路32によりラッチされる。そして、セレクタ35は誤差拡散終了パルスに従って(b)、(e)、(f)タイプの画素の誤差を計算するべく、入力2側のラッチ回路32の出力を選択するように動作する。これにより、左上の画素Cからの誤差として第1表示ラインの最終画素の誤差を第3表示ラインの先頭画素の誤差に加算することができる。
【0054】
▲4▼は、右上の画素Eからの誤差として第2表示ラインの先頭画素の誤差を当該表示ラインの最終画素に与える場合を示している。この場合、誤差検出回路20が表示値X2及びそのときの誤差A2を検出し、マスク回路21が誤差拡散範囲以外の表示値をマスクし、マスク回路22が誤差拡散範囲以外の誤差をマスクするように動作する。また、加算器23はラッチ回路33に演算結果Y2bを出力する。
【0055】
セレクタ36は誤差拡散終了パルスに従って(d),(g)タイプの画素の誤差を計算するべく、入力2側のラッチ回路33の出力を選択するように動作する。これにより、右上の画素Eからの誤差として第2表示ラインの先頭画素の誤差を当該表示ラインの最終画素の誤差に加算することができる。
▲5▼は、左隣の画素Bからの誤差として第2表示ラインの最終画素の誤差を第3表示ラインの先頭画素に与える場合を示している。この場合、誤差検出回路20が表示値X18及びそのときの誤差A18を検出し、マスク回路21が誤差拡散範囲以外の表示値をマスクし、マスク回路22が誤差拡散範囲以外の誤差をマスクするように動作する。また、加算器23はラッチ回路31に誤差Y18bを出力する。そして、ラッチ回路31は誤差Y18bを1水平期間だけラッチし、セレクタ34は誤差拡散終了パルスに従って(b)、(e)タイプの画素の誤差を計算するべく、入力2側のラッチ回路31の出力を選択するように動作する。これにより、左隣の画素Bからの誤差として第2表示ラインの最終画素の誤差を第3表示ラインの先頭画素の誤差に加算することができる。
【0056】
▲6▼は、右上の画素Eからの誤差として第3表示ラインの先頭画素の誤差を当該表示ラインの最終画素の誤差の計算に使用する場合を示している。この場合、誤差検出回路20は表示値X2及びそのときの誤差A2を検出し、マスク回路21がマスク信号S2に基づいて誤差拡散範囲以外の表示値をマスクし、マスク回路22がマスク信号S1に基づいて誤差拡散範囲以外の誤差をマスクするように動作する。また、加算器23はラッチ回路33に誤差Y2bを出力する。ラッチ回路33は誤差Y2bを1水平期間だけラッチし、セレクタ36は誤差拡散終了パルスに従って(d),(g)タイプの画素の誤差を計算するべく、入力2側のラッチ回路33の出力を選択するように動作する。これにより、右上の画素Eからの誤差として第2表示ラインの先頭画素の誤差を当該表示ラインの最終画素の誤差に加算することができる。
【0057】
このようにして、本発明の第1の実施の形態に係る画像処理装置によれば、図1に示すように、左上部の画素C、真上の画素D及び右上部の画素Eから拡散されてくる誤差として、前フレームの最終表示ライン(n)の各画素の誤差を現在フレームの第1表示ラインの(b)、(c)及び(d)タイプの画素の誤差に加算することにより、これら(b)、(c)及び(d)タイプの画素で不足している誤差を補うことができる。したがって、最初から大きな誤差をこれらの画素に与えることができるので、表示画面の左上部(誤差拡散開始点)の輝度ムラを無くすことができる。
【0058】
また、本発明の第1の実施の形態では、右上部の画素Eから拡散されてくる誤差として、当該表示画像の現在のフレームの各々の表示ラインの先頭画素の誤差を現在フレームの各々の表示ラインの(d),(g)タイプの最終画素の誤差に加算することにより、これら(d),(g)タイプの最終画素で不足している誤差を補うことができる。したがって、各表示ラインの最終画素に大きな誤差データを拡散することができるので、表示画面の右側の輝度ムラを無くすことができる。
【0059】
更に、本発明の第1の実施の形態では、左隣の画素Bから拡散されてくる誤差として、当該表示画像の現在のフレームの各々の表示ラインの最終画素の誤差を現在フレームの各々の表示ラインの(b),(e)及び(f)タイプの先頭画素の誤差に加算することにより、これら(b),(e)及び(f)タイプの先頭画素で不足している誤差を補うことができる。したがって、各表示ラインの先頭画素に大きな誤差を拡散することができるので、表示画面の左側の輝度ムラを無くすことができる。なお、ラッチ回路とセレクタの追加で回路が構成でき、簡単に輝度が補正できる。
【0060】
(2)第2の実施の形態
図5は、本発明の第2の実施の形態に係る誤差拡散処理の説明図を示している。第2の実施の形態では第1の実施の形態と異なり、「表示画像のフレーム間には相関性がある」ということを利用して表示画面の端部の画素の誤差を算出するものである。一般に、ディスプレイは1秒間に数十フレーム(TV画像の場合には約60フレーム)の画像を連続して表示しており、フレーム間の絵柄には大きな差異は無く相関性を持っている。さらに、同一のフレーム内のある表示ラインの画素に着目すると、その画素の周辺画素の輝度レベルが大きく変化する場合は少なく、相関性があるといって良い。
【0061】
そこで、本実施の形態では、まず、表示画面の現在フレームの端部の領域をm×nの画素のブロックに分割し、そのブロック内の画素が持つ誤差成分の平均値を算出し、次のフレームにおいて、前フレームの各ブロックで算出した平均誤差をそれぞれ表示画面の端部に位置する画素に拡散させるようにする。このようにすると相関性のある値で当該画素の誤差を算出することができるようになる。
【0062】
図5(A)において、Lはある表示画面の現在フレームであり、(1)〜(13)はブロックを示している。(1)〜(7)ブロックは第1表示ライン〜第4表示ラインに位置する4×28の画素を7つに分割したものである。(8),(10),(12)ブロックは第5表示ライン〜第16表示ラインの先頭ドットから4ドットまでの4×16の画素を3つに分割したものである。(9),(11),(13)ブロックは第5表示ライン〜第16表示ラインの最終ドットから手前4ドットまでの4×12の画素を3つに分割したものである。各ブロックは4×4の画素で構成するようになる。各ブロックの平均誤差は、各画素の誤差を全て加算し、この加算値を16分の1したものである。
【0063】
図5(B)において、L+1はこの表示画面の次のフレームである。本実施の形態ではブロック(1)で求めた平均誤差は、当該表示画面の第1表示ラインの先頭画素〜第4画素及び第2〜第4表示ラインの各先頭画素の誤差を算出するときに、左隣の画素B、左上の画素C及び真上の画素Dの各々の誤差として使用する。ブロック(2)で求めた平均誤差は、第1表示ラインの第1画素〜第12画素の誤差を算出するときに、右上の画素E、真上の画素D及び左上の画素Cの各々の誤差として使用する。ブロック(3)で求めた平均誤差は、第1表示ラインの第5画素〜第16画素の誤差を算出するときに、右上の画素E、真上の画素D及び左上の画素Cの各々の誤差として使用する。ブロック(4)で求めた平均誤差は、第1表示ラインの第9画素〜第20画素の誤差を算出するときに、右上の画素E、真上の画素D及び左上の画素Cの各々の誤差として使用する。ブロック(5)で求めた平均誤差は、第1表示ラインの第13画素〜第24画素の誤差を算出するときに、右上の画素E、真上の画素D及び左上の画素Cの各々の誤差として使用する。ブロック(6)で求めた平均誤差は、第1表示ラインの第17画素〜第28画素の誤差を算出するときに、右上の画素E、真上の画素D及び左上の画素Cの各々の誤差として使用する。ブロック(7)で求めた平均誤差は、第1表示ラインの第21画素〜第28画素及び第2〜第4表示ラインの最終画素の誤差を算出するときに、右上の画素E及び真上の画素Dの各々の誤差として使用する。
【0064】
また、ブロック(8)で求めた平均誤差は、第5〜第8表示ラインの先頭画素の誤差を算出するときに、左隣の画素B及び左上の画素の誤差として使用する。ブロック(9)で求めた平均誤差は、第5〜第8表示ラインの最終画素の誤差を算出するときに、右上の画素Eの誤差として使用する。ブロック(10)で求めた平均誤差は、第9〜第12表示ラインの先頭画素の誤差を算出するときに、左隣の画素B及び左上の画素の誤差として使用する。ブロック(11)で求めた平均誤差は、第9〜第12表示ラインの最終画素の誤差を算出するときに、右上の画素Eの誤差として使用する。ブロック(12)で求めた平均誤差は、第13〜第16表示ラインの先頭画素の誤差を算出するときに、左隣の画素B及び左上の画素の誤差として使用する。ブロック(13)で求めた平均誤差は、第13〜第16表示ラインの最終画素の誤差を算出するときに、右上の画素Eの誤差として使用する。
【0065】
次に、このようなブロック(1)〜(13) の平均誤差を表示画面の端部の画素に与える誤差拡散回路について説明する。図6は第2の実施の形態に係る誤差拡散回路の構成図を示している。図6において、51は誤差検出回路、52、22、74〜76はマスク回路、53は加算器である。
54はイネーブル信号Seに従って加算器53の出力を加算し、各ブロックの誤差を累積する加算器である。55は加算器54の出力を1クロックだけ保持するフリップ・フロップ回路(以下FF回路という)である。56は各ブロックの誤差を記憶するメモリである。メモリ56は2フレーム分の累積誤差を蓄積する容量を持せるようにする。メモリ56は、1フレーム目の累積誤差を記憶する領域M1及び2フレーム目の累積誤差を記憶する領域M2とを設けている。
【0066】
57は切り換え信号Saに基づいて1表示ライン毎にFF回路55の出力又はメモリ56の出力をいずれかを選択するセレクタである。58はメモリ56の出力から各ブロックの平均誤差を算出する演算器である。演算器58は各ブロックの誤差をブロック内の画素数4×4で除算することにより平均誤差を算出するように動作する。59はリード制御信号SR及びライト制御信号SWに基づいて加算器53の出力を1水平期間だけ遅らせるラインメモリである。
【0067】
60はラッチパルスP1に従って演算器58の出力(各ブロックの平均誤差)をラッチするラッチ回路である。ラッチ回路60は、第1の実施の形態で説明したような(b)、(e)及び(f)タイプの画素の誤差を計算する場合に、加算器53の出力(誤差B´)をラッチするように動作する。これにより、左隣の画素Bの誤差として前フレームのブロック(1),(8),(10),(12)の各々の平均誤差を現在フレームの第1〜第16表示ラインの先頭画素に与えることができる。
【0068】
61はラッチパルスP2に従って演算器58の出力をラッチするラッチ回路である。ラッチ回路61は、同様に(b)、(c)、(d)、(e)及び(f)タイプの画素の誤差を計算する場合に、演算器58の出力を誤差C´としてラッチするように動作する。これにより、前フレームのブロック(1)〜(8),(10),(12)の各平均誤差を左上部の画素Cの誤差として現在フレームの第1表示ラインの画素及び第1〜第16表示ラインの先頭画素に与えることができる。
【0069】
62はラッチパルスP3に従って演算器58の出力をラッチするラッチ回路である。ラッチ回路62は、(b)、(c)及び(d)タイプの画素の誤差を計算する場合に、演算器58の出力を誤差D´としてラッチするように動作する。これにより、前フレームのブロック(1)〜(7)の各平均誤差を真上の画素Dの誤差として第1表示ラインの各画素に与えることができる。
【0070】
63はラッチパルスP4に従って演算器58の出力をラッチするラッチ回路である。ラッチ回路63は、(d)及び(g)タイプの画素の誤差を計算する場合に、演算器58の出力(誤差E´)をラッチするように動作する。これにより、前フレームのブロック(7),(9),(11),(13)の各平均誤差を右上部の画素Eの誤差として現在フレームの各表示ラインの最終画素に与えることができる。なお、64〜66はラッチパルスP5に基づいて各ラッチ回路61〜63の出力タイミングを揃えるラッチ回路である。71、72、73はFF回路であり、第1の実施の形態に係るFF回路25〜27と同じ機能を有している。
【0071】
67はセレクト信号SS1に従ってラッチ回路60の出力又はFF回路71の出力をマスクした誤差B´のいずれかを選択するセレクタである。セレクタ67は、図1に示したような(a)、(c)、(d)及び(g)タイプの画素の誤差を計算する場合には、入力1側の誤差B´を選択するように動作するが、(b)、(e)及び(f)タイプの画素の誤差を計算する場合には入力2側のラッチ回路60の出力を選択するように動作する。
【0072】
68はセレクト信号SS2に従ってラッチ回路64の出力又はFF回路73の出力をマスクした誤差C´のいずれかを選択するセレクタである。セレクタ68は、(a)、(g)タイプの画素の誤差を計算する場合に、入力1側の誤差C´を選択するように動作するが、(b)、(c)、(d)、(e)及び(f)タイプの画素の誤差を計算する場合は、入力2側のラッチ回路64の出力を選択するように動作する。
【0073】
69はセレクト信号SS2に従ってラッチ回路65の出力又はFF回路72の出力をマスクした誤差D´のいずれかを選択するセレクタである。セレクタ69は、(a)、(f)、(g)タイプの画素の誤差を計算する場合に、入力1側の誤差D´を選択するように動作するが、(b)、(c)及び(d)タイプの画素の誤差を計算する場合は、入力2側のラッチ回路65の出力を選択するように動作する。
【0074】
70はセレクト信号SS3に従ってラッチ回路66の出力又はラインメモリ59の出力をマスクした誤差E´のいずれかを選択するセレクタである。セレクタ70は、(a)、(e)及び(f)タイプの画素の誤差を計算する場合に、入力1側の誤差E´を選択するように動作するが、(b),(c),(d),(g)タイプの画素の誤差を計算する場合は、入力2側のラッチ回路66の出力を選択するように動作する。
【0075】
なお、77〜80は乗算器であり、第1の実施の形態に係る乗算器37〜40と同じ機能を有している。81は加算器76の演算結果のうち誤差の桁上げ部分の下位のビットを誤差検出回路51からの表示値に加算する加算器である。計算式は第1の実施の形態で示している。
82はマスク回路52、74〜76、加算器54、メモリ56、セレクタ57、演算器58、ラインメモリ59、ラッチ回路60〜66及びセレクタ67〜70の入出力を制御する制御部である。制御部82は第1の実施の形態で説明した制御部42の機能に加えて次のような機能を有している。制御部82は誤差拡散開始位置と誤差拡散終了位置とを検出してラッチパルスP1〜P5及びセレクタ信号SS1〜SS3を発生する。ラッチパルスP1〜P5は、各ブロックが誤差を演算する直前に制御部82から各ラッチ回路に出力され、セレクタ信号SS1〜SS3は、図1に示すような(a)タイプの画素の誤差の算出と、(b)〜(g)タイプの画素の誤差の算出との切り換えに使用している。
【0076】
制御部82は、各ブロック(1)〜(13)で誤差を算出するときに、加算器54にイネーブル信号Seを出力し、セレクタ57に切り換え信号Saを出力する。イネーブル信号Seは当該ブロック内の画素のみの誤差を加算するために、各表示ライン及び各ブロック(1)〜(13)毎にリセットされる。切り換え信号Saは前の表示ラインで加算した誤差を次の表示ラインの誤差に加算するための信号であり、セレクタ57に出力される。
【0077】
制御部82は、メモリ領域M1に各ブロック(1)〜(13)の誤差を書込むようにライトアドレス(ADD)を指定し、ライトイネーブル信号WEを出力してメモリ56を制御する。また、制御部82は平均誤差(DATA)を誤差拡散回路に与えるときに、メモリ56にリードイネーブル信号REを出力する。更に、制御部82はブロック分割情報からブロック内画素数を求め、この画素数を演算器58に出力する。他の構成及び第1の実施の形態と同じ名称のものは、同じ機能を有するため、その説明を省略する。
【0078】
次に、本実施の第2の形態に係る誤差拡散回路の動作を説明する。図7(A)及び(B)は、誤差拡散回路のブロック内誤差算出時の動作タイミングチャートである。図7(A)は、第1表示ラインの7つブロックの累積誤差の算出タイムチャートである。図7(A)において、加算器53は第1表示ラインのブロック(1)の誤差A0〜A3を加算器54に出力し、同様にブロック(2)の誤差B0〜B3、ブロック(3)の誤差C0〜C3、ブロック(4)の誤差D0〜D3、ブロック(5)の誤差E0〜E3、ブロック(6)の誤差F0〜F3、及びブロック(7)の誤差G0〜G3を順次加算器54に出力するように動作する。加算器54の出力はFF回路55により1クロック遅延され、ここで遅延された誤差a0〜a3、b0〜b3、c0〜c3、d0〜d3、e0〜e3、f0〜f3及びg0〜g3は、切り換え信号Saに従ってセレクタ57により選択される。セレクタ57がFF回路55の出力を選択することにより、誤差a0〜a3、b0〜b3、c0〜c3、d0〜d3、e0〜e3、f0〜f3及びg0〜g3は加算器54にフィードバックされる。
【0079】
そして、加算器54はイネーブル信号Seに基づいて第1表示ラインの各ブロック毎に誤差a0〜a3、b0〜b3、c0〜c3、d0〜d3、e0〜e3、f0〜f3及びg0〜g3を順次加算する。このとき制御部82は各ブロック毎に誤差が加算されると、ライトアドレス(ADD=aa)を指定してブロック(1)の第1表示ラインの累積誤差am=a0〜a3をメモリ領域M1に書き込む。制御部82はライトイネーブル信号WEをメモリ56に出力する。他のブロック(2)〜(7)の累積誤差bm=b0〜b3、cm=c0〜c3、dm=d0〜d3、em=e0〜e3、fm=f0〜f3及びgm=g0〜g3も制御部82はライトアドレス(ADD=ab,ac…)を指定し、ライトイネーブル信号WEを出力して同様に書き込む。次のフレームの場合(L+1)には、メモリ領域をM1からM2に変えるためにライトアドレスADDはbb,bb,bc…を指定するようにする。
【0080】
また、図7(B)は、第2表示ラインの7つブロックの累積誤差の算出タイムチャートを示している。図7(B)において、加算器53は第2表示ラインのブロック(1)の誤差A0〜A3を加算器54に出力し、同様にブロック(2)の誤差B0〜B3、ブロック(3)の誤差C0〜C3、ブロック(4)の誤差D0〜D3、ブロック(5)の誤差E0〜E3、ブロック(6)の誤差F0〜F3、及びブロック(7)の誤差G0〜G3を順次加算器54に出力するように動作する。
【0081】
第1表示ラインの動作と異なるのは、第2の表示ラインでは、メモリ領域M1に記憶した第1表示ラインの累積誤差am、bm、cm、dm、em、fm及びgmを読出し、これを当該表示ラインの誤差に加算するものである。具体的には、制御部82がセレクタ57に切り換え信号Saを出力すると、セレクタ57がメモリ56の出力を選択することにより、第1表示ラインで得た累積誤差am、bm、cm、dm、em、fm及びgmが加算器54にフィードバックされる。そして、FF回路55によって遅延された加算器53からの誤差a0〜a2、b0〜b2、c0〜c2、d0〜d2、e0〜e2、f0〜f2及びg0〜g2に累積誤差am、bm、cm、dm、em、fm及びgmが加算される。これにより、制御部82は各ブロック毎に累積誤差が加算されると、ライトアドレス(ADD=aa)を指定してメモリ領域M1にブロック(1)の第2表示ラインの誤差を書き込む。他のブロック(2)〜(7)の累積誤差もライトアドレス(ADD=ab,ac…)を指定し、ライトイネーブル信号WEを出力して同様に書き込む。このような動作を繰り返し、図5に示したような第1表示ラインから第4表示ラインに至る7つのブロックの累積誤差を各々メモリ56に記憶することができる。
【0082】
これ以降の動作では、7つのブロック(1)〜(7)の各々の累積誤差の平均値を求め、次のフレームの第1表示ラインの全画素に平均誤差を拡散するようにする。
図8は、本発明の実施の形態に係る誤差拡散回路の動作タイムチャート(ラッチ書込み時)である。本実施の形態では、表示画面のフレーム間の空き時間から演算器58で各ブロックの平均値を計算し始め、次のフレームの第1表示ラインの先頭画素の誤差計算の直前に、これらの平均誤差(DATA)をラッチ回路60〜63でラッチする。
【0083】
図8において、制御部82は誤差計算の直前に、メモリ56にリードイネーブル信号REを出力し、演算器58にブロック内画素数を指定する。すると、メモリ56から読み出された各ブロック(1)〜(7)の累積誤差am、bm、cm、dm、em、fm及びgmはブロック内画素数(4×4)で除算される。これが各ブロック毎の平均誤差である。この平均誤差はラッチ回路60,61,62,63に与えられる。
【0084】
ラッチ回路60は、ラッチパルスP1に基づいて演算器58の出力(ブロック(1)の平均誤差)をラッチし、ラッチ回路61はラッチパルスP2に基づいて演算器58の出力をラッチし、ラッチ回路62はラッチパルスP3に従って演算器58の出力をラッチする。そして、ラッチ回路63はラッチパルスP4に従って演算器58の出力(ブロック(2)の平均誤差)をラッチする。その後、ラッチ回路64〜66は、ラッチパルスP5に基づいて各ラッチ回路61〜63の出力タイミングを揃えるように動作する。
【0085】
そして、制御部82がセレクタ67にセレクト信号SS1を出力し、セレクタ68及び69にセレクト信号SS2を出力し、セレクタ70にセレクト信号SS3を出力すると、セレクタ67は、入力2側のラッチ回路60の出力を選択するように動作し、セレクタ68は入力2側のラッチ回路64の出力を選択するように動作し、セレクタ69は入力2側のラッチ回路65の出力を選択するように動作し、セレクタ70は入力2側のラッチ回路66の出力を選択するように動作する。
【0086】
これにより、セレクタ67は左隣の画素の誤差として、ブロック(1)の平均誤差を第1表示ラインの先頭画素に与え、セレクタ68は左上部の画素の誤差としてブロック(1)の平均誤差を第1表示ラインの先頭画素に与え、セレクタ69は真上の画素の誤差としてブロック(1)の平均誤差を第1表示ラインの先頭画素に与え、セレクタ70は右上の画素の誤差としてブロック(2)の平均誤差を第1表示ラインの先頭画素に与えるように動作する。このような動作を繰り返し、図5に示したような第1表示ラインの7つのブロックの平均誤差を使用して各々の画素の誤差を算出することができる。
【0087】
なお、図9は、本発明の第2の実施の形態に係る誤差拡散回路の動作タイムチャート(第2表示ライン以降)である。第2表示ライン以降では、表示画面の各表示ラインの先頭画素に、ブロック(1),(8),(10)及び(12)の平均誤差を与えて累積誤差を算出し、また、各表示ラインの最終画素に、ブロック(7),(9),(11)及び(13)の平均誤差を与えて累積誤差を算出するようにする。
【0088】
したがって、先頭画素の誤差演算のときは、ラッチ回路60がラッチパルスP1に基づいて演算器58の出力(ブロック(1)の平均誤差)をラッチする。他のラッチ回路61〜63は非動作である。そして、最終画素の誤差演算のときは、ラッチ回路63がラッチパルスP4に基づいて演算器58の出力(ブロック(7)の平均誤差)をラッチし、ラッチ回路63が動作する。他のラッチ回路60〜62、64、65は非動作である。このときセレクタ67は、入力2側のラッチ回路60の出力を選択するように動作する。先頭画素の除く最終画素に至るまではセレクタ67は、入力1側のFF回路71の出力を選択するように動作し、セレクタ68は入力1側のFF回路73の出力を選択するように動作し、セレクタ69は入力1側のラインメモリ59の出力を選択するように動作する。なお、最終画素に至るとセレクタ70は入力2側のラッチ回路66の出力を選択するように動作する。
【0089】
これにより、セレクタ67は左隣の画素の誤差として、ブロック(1)の平均誤差を第2表示ラインの先頭画素に与え、セレクタ70は右上の画素の誤差としてブロック(7)の平均誤差を第2表示ラインの最終画素に与えるように動作する。このような動作を繰り返すことにより、図5に示したような表示画面の各表示ラインの先頭画素に、ブロック(1),(8),(10)及び(12)の平均誤差を与えて累積誤差を算出すること、及び、各表示ラインの最終画素に、ブロック(7),(9),(11)及び(13)の平均誤差を与えて累積誤差を算出することができる。
【0090】
このようにして、本発明の第2の実施の形態に係る画像処理装置では、当該表示画像の現在のフレームの第1表示ラインから第4表示ラインに至る間の4×28の画素を7つのブロックに分割し、このブロック(1)〜(7)毎に平均誤差を求め、このブロック毎に求めた平均誤差を左上部の画素C、真上の画素D、右上部の画素Eから拡散されてくる誤差として、次のフレームの第1表示ラインの各々の画素の誤差に加算している。
【0091】
このため、第1表示ラインの各々の画素に最初から大きな誤差が与えられるので、表示画面の上部の画素の誤差不足分を各ブロック(1)〜(7)の平均誤差によって補うことができる。これにより、表示画面の上部の輝度ムラが無くなり、PDPや液晶ディスプレイ等の表示品質を向上させることができる。
また、本実施の形態では、当該表示画像の現在のフレームの各々の表示ラインの先頭画素から4画素に至る間の4×16ラインの画素を4つブロックに分割し、このブロック(1),(8),(10),(12)毎に平均誤差を求め、ブロック毎に求めた平均誤差を左隣の画素B及び左上部の画素Cから拡散されてくる誤差として、次のフレームの各々の表示ラインの先頭画素の誤差に加算している。
【0092】
このため、各々の表示ラインの先頭画素に最初から大きな誤差が与えられるので、表示画面の左側部分の画素の誤差不足分を各ブロック(1),(8),(10),(12)の平均誤差によって補うことができる。これにより、表示画面の左側部分の輝度ムラが無くなる。
更に、本実施の形態では、当該表示画像の現在のフレームの各々の表示ラインの最終画素から4つの前の画素に至る間の4×16ラインの画素を4つブロックに分割し、このブロック(7),(9),(11),(13)毎に平均誤差を求め、ブロック毎に求めた平均誤差を右上部の画素Eから拡散されてくる誤差として、次のフレームの各々の表示ラインの最終画素の誤差に加算している。このため、これらの最終画素に最初から大きな誤差を与えることができるので、表示画面の右側部分の輝度ムラが無くなる。
【0093】
(3)本実施の形態と従来技術との比較
図10〜図19は本発明の実施の形態に係る誤差拡散画像と従来例に係る誤差拡散画像とを比較する図を示している。いずれも図も画像を写真に撮ったものを複写したものである。図10(A)は従来方式の誤差拡散回路により得られた拡散画像であり、図10(B)は本発明に係る誤差拡散回路により得られた拡散画像を示している。この画像は256階調を持つ信号を画面の左から右に向けて誤差拡散処理をし、2階調化表示(白と黒の画像)したものである。
【0094】
従来方式では全てのフレームの左上部(誤差拡散開始位置)が丸くなっており、輝度むらが現れている。これに対して、本発明では第1フレームでは他からの誤差が拡散されない(電源投入時)ので、左上部(誤差拡散開始位置)が丸くなっているが、第2フレーム以降では、この丸みが消え、左上部に輝度むらが無くなっていることが明確である。
【0095】
図11(A)は画面の上から下に向けて誤差拡散処理をした従来方式の誤差拡散画像であり、図11(B)は本発明に係る誤差拡散画像を示している。この場合にも、従来方式では全てのフレームの左上部が丸くなっており輝度むらが現れている。これに対して、本発明では全てのフレームで丸みが消え、左上部に輝度むらが無くなっている。
【0096】
図12(A)は従来方式の誤差拡散画像であり、図12(B)は本発明に係る誤差拡散画像を示している。この画像は、画面の左から右に向けて、白から黒に階調を減少させ、黒になった時点で再び白に向かって階調が増加していくように誤差拡散処理をしたものである。この場合にも、従来方式では全てのフレームの中央部が丸く括れており輝度むらが現れている。これに対して、本発明では第2のフレーム以降では括れが消え、画面の中央部の輝度むらが無くなっている。
【0097】
図13(A)は従来方式の誤差拡散画像であり、図13(B)は本発明に係る誤差拡散画像を示している。この画像は、画面の上から下に向けて、白から黒に階調を減少させ、黒になった時点で再び白に向かって階調が増加していくように誤差拡散処理をしたものである。この場合にも、従来方式では全てのフレームの中央部が丸く括れており輝度むらが現れている。これに対して、本発明では全てで括れが消え、画面の中央部の輝度むらが無くなっている。
【0098】
【発明の効果】
以上説明したように、本発明の画像処理装置では、前フレームの特定画素の誤差データを現在フレームの第1表示ラインの各画素及び第2表示ラインの先頭画素の各々の誤差データに加算することにより、表示画面の左上部(誤差拡散開始点)の輝度を補うことができる。したがって、これらの画素に最初から大きな誤差データを与えることができるので、表示画面の左上部の輝度むらが無くなる。
【0099】
本発明の他の画像処理装置では、ブロック毎に求めた誤差データの平均値を次のフレームの第1表示ラインの画素の誤差データに加算することにより、表示画面の左上部の輝度を補うことができる。したがって、表示画面の左上部の輝度むらが無くなる。
これにより、プラズマディスプレイや液晶表示装置の表示品質の向上に寄与するところが大きい。
【図面の簡単な説明】
【図1】本発明の第1の実施の形態に係る誤差拡散処理の説明図である。
【図2】本発明の第1の実施の形態に係る誤差拡散回路の構成図である。
【図3】本発明の第1の実施の形態に係る誤差拡散回路の動作タイミングチャート(垂直方向)である。
【図4】本発明の第1の実施の形態に係る誤差拡散回路の動作タイミングチャート(水平方向)である。
【図5】本発明の第2の実施の形態に係る誤差拡散処理の説明図である。
【図6】本発明の第2の実施の形態に係る誤差拡散回路の構成図である。
【図7】本発明の第2の実施の形態に係る誤差拡散回路のブロック内誤差算出時の動作タイミングチャートである。
【図8】本発明の第2の実施の形態に係る誤差拡散回路のラッチ書込み時の動作タイミングチャートである。
【図9】本発明の第2の実施の形態に係る誤差拡散回路の動作タイミングチャート(第2表示ライン以降)である。
【図10】本発明に係る誤差拡散像と従来例の誤差拡散画像とを比較する写真図(その1)である。
【図11】本発明に係る誤差拡散像と従来例の誤差拡散画像とを比較する写真図(その2)である。
【図12】本発明に係る誤差拡散像と従来例の誤差拡散画像とを比較する写真図(その3)である。
【図13】本発明に係る誤差拡散像と従来例の誤差拡散画像とを比較する写真図(その4)である。
【図14】従来例に係る表示装置の多階調化を説明する図(その1)である。
【図15】従来例に係る表示装置の多階調化を説明する図(その2)である。
【図16】従来例に係る誤差拡散回路の構成図である。
【図17】従来例に係る誤差拡散回路の動作タイミングチャート(水平方向)である。
【図18】従来例に係る誤差拡散回路の動作タイミングチャート(垂直方向)である。
【図19】従来例に係る誤差拡散方法の説明図である。
【符号の説明】
1,20,51…誤差検出回路、2〜6,21,22,28〜30,52,74〜76…マスク回路、7〜10,37〜40,77〜80…乗算器、11,16,23,41,53,54,81…加算器、12,24,59…ラインメモリ、13〜15,25〜27,55,71〜73…フリップ・フロップ回路、31〜33,60〜66…ラッチ回路、34〜36,57,67〜70…セレクタ、17,42,82…制御部、56…メモリ、58…演算器。
Claims (4)
- 輝度表示がNビットである画素の画像データをフレーム毎に入力し、輝度表示がM(M<N)ビットである画素の画像データをフレーム毎に出力する装置であって、当該画素のNビットの画像データからMビットの画像データを差し引いたN−Mビットの誤差データを求め、当該画素の誤差データに周辺画素の誤差データを加算して新たな誤差データを求め、当該新たな誤差データの桁上げによるビットのデータをMビットの画像データに加算して輝度を補正すると共に新たな誤差データを周辺画素に拡散する画像処理装置において、
前記周辺画素から拡散されてくる誤差データとして、当該表示画像の前フレームの最終表示ラインの画素の誤差データを現在フレームの第1表示ラインの画素の誤差データに加算すると共に、当該表示画像の現在フレームの各々の表示ラインの先頭画素の誤差データを現在フレームの各々の表示ラインの最終画素の誤差データに加算することを特徴とする画像処理装置。 - 輝度表示がNビットである画素の画像データをフレーム毎に入力し、輝度表示がM(M<N)ビットである画素の画像データをフレーム毎に出力する装置であって、当該画素のNビットの画像データからMビットの画像データを差し引いたN−Mビットの誤差データを求め、当該画素の誤差データに周辺画素の誤差データを加算して新たな誤差データを求め、当該新たな誤差データの桁上げによるビットのデータをMビットの画像データに加算して輝度を補正すると共に新たな誤差データを周辺画素に拡散する画像処理装置において、
当該表示画像の現在のフレームの第1表示ラインから任意の表示ラインに至る間の複数の画素をブロックに分割し、前記ブロック毎に誤差データの平均値を求め、前記ブロック毎に求めた誤差データの平均値を周辺の画素から拡散されてくる誤差データとして、次のフレームの第1表示ラインの表示画素の誤差データに加算することを特徴とする画像処理装置。 - 当該表示画像の現在のフレームの各々の表示ラインの先頭画素から任意の画素に至る間の複数の画素をブロックに分割し、前記ブロック毎に誤差データの平均値を求め、前記ブロック毎に求めた誤差データの平均値を周辺の画素から拡散されてくる誤差データとして、次のフレームの各々の表示ラインの先頭画素の誤差データに加算することを特徴とする請求項2に記載の画像処理装置。
- 当該表示画像の現在のフレームの各々の表示ラインの最終画素から任意の前の画素に至る間の複数の画素をブロックに分割し、前記ブロック毎に誤差データの平均値を求め、前記ブロック毎に求めた誤差データの平均値を周辺の画素から拡散されてくる誤差データとして、次のフレームの各々の表示ラインの最終画素の誤差データに加算することを特徴とする請求項2に記載の画像処理装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP05029996A JP3690860B2 (ja) | 1996-03-07 | 1996-03-07 | 画像処理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP05029996A JP3690860B2 (ja) | 1996-03-07 | 1996-03-07 | 画像処理装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH09244576A JPH09244576A (ja) | 1997-09-19 |
JP3690860B2 true JP3690860B2 (ja) | 2005-08-31 |
Family
ID=12855024
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP05029996A Expired - Fee Related JP3690860B2 (ja) | 1996-03-07 | 1996-03-07 | 画像処理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3690860B2 (ja) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3045284B2 (ja) | 1997-10-16 | 2000-05-29 | 日本電気株式会社 | 動画表示方法および装置 |
KR100669042B1 (ko) * | 2001-06-16 | 2007-01-15 | 충화 픽처 튜브스, 엘티디. | 플라즈마 표시판에 관한 에러 확산을 구현하는 방법 |
CN101578642B (zh) | 2007-03-01 | 2011-05-25 | 松下电器产业株式会社 | 图像显示装置 |
JP5047700B2 (ja) * | 2007-06-08 | 2012-10-10 | 株式会社リコー | 画像表示装置、画像処理方法、及びプログラム |
JP5573706B2 (ja) * | 2011-01-31 | 2014-08-20 | ブラザー工業株式会社 | 画像処理装置及び画像処理プログラム |
-
1996
- 1996-03-07 JP JP05029996A patent/JP3690860B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH09244576A (ja) | 1997-09-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3630477B2 (ja) | 画像処理装置及びプラズマ・ディスプレイ・パネル | |
JP3406934B2 (ja) | 並列誤差拡散方法 | |
JPH11231827A (ja) | 画像表示装置及び画像評価装置 | |
JP3710131B2 (ja) | 画像処理装置および画像処理方法、並びに画像表示装置、携帯電子機器 | |
JP2001343957A (ja) | 液晶表示装置 | |
KR20060041642A (ko) | 화상 처리 장치, 화상 처리 방법, 화상 표시 장치, 휴대용정보 기기, 제어 프로그램 및 컴퓨터 판독가능 기록 매체 | |
JP3690860B2 (ja) | 画像処理装置 | |
US7633468B2 (en) | Image processing apparatus and method of plasma display panel | |
JP3473454B2 (ja) | マトリクス型表示装置の映像信号処理回路及び映像信号処理方法 | |
JP2804686B2 (ja) | 画像情報処理方法及び画像情報処理装置 | |
JP3562707B2 (ja) | 画像表示装置 | |
JP2003177697A (ja) | 映像表示装置 | |
KR100403698B1 (ko) | 다계조 화상 표시 방법 및 그 장치 | |
JP3912079B2 (ja) | 表示装置の誤差拡散処理回路及び方法 | |
JP3625192B2 (ja) | マトリクス型表示装置の映像信号処理回路及び方法 | |
JP3518205B2 (ja) | 画像表示装置 | |
JP3407053B2 (ja) | 動画偽輪郭防止表示装置及び動画偽輪郭防止表示方法 | |
JP3593799B2 (ja) | 複数画面表示装置の誤差拡散回路 | |
JP3990612B2 (ja) | 画像評価装置 | |
JP2970332B2 (ja) | Pdp駆動回路 | |
JP2002091375A (ja) | プラズマディスプレイパネルの階調表示処理方法 | |
JP4052142B2 (ja) | 画像表示装置 | |
JP2005037961A (ja) | 画像処理装置および画像処理方法、並びに画像表示装置 | |
JPH0990902A (ja) | 擬似中間調処理回路 | |
JP3727619B2 (ja) | 画像表示装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050322 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050520 |
|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20050527 |
|
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: 20050614 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20050614 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
S131 | Request for trust registration of transfer of right |
Free format text: JAPANESE INTERMEDIATE CODE: R313131 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080624 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090624 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100624 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110624 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110624 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120624 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120624 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130624 Year of fee payment: 8 |
|
S131 | Request for trust registration of transfer of right |
Free format text: JAPANESE INTERMEDIATE CODE: R313135 |
|
SZ03 | Written request for cancellation of trust registration |
Free format text: JAPANESE INTERMEDIATE CODE: R313Z03 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130624 Year of fee payment: 8 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |