Nothing Special   »   [go: up one dir, main page]

JP4146528B2 - Image processing device - Google Patents

Image processing device Download PDF

Info

Publication number
JP4146528B2
JP4146528B2 JP13586397A JP13586397A JP4146528B2 JP 4146528 B2 JP4146528 B2 JP 4146528B2 JP 13586397 A JP13586397 A JP 13586397A JP 13586397 A JP13586397 A JP 13586397A JP 4146528 B2 JP4146528 B2 JP 4146528B2
Authority
JP
Japan
Prior art keywords
image
reduction
line
enlargement
vertical
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
Application number
JP13586397A
Other languages
Japanese (ja)
Other versions
JPH10312457A (en
Inventor
啓佐敏 竹内
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP13586397A priority Critical patent/JP4146528B2/en
Priority to US08/969,944 priority patent/US6141061A/en
Publication of JPH10312457A publication Critical patent/JPH10312457A/en
Priority to US09/658,992 priority patent/US6392711B1/en
Application granted granted Critical
Publication of JP4146528B2 publication Critical patent/JP4146528B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • G06T3/4023Scaling of whole images or parts thereof, e.g. expanding or contracting based on decimating pixels or lines of pixels; based on inserting pixels or lines of pixels
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/222Studio circuitry; Studio devices; Studio equipment
    • H04N5/262Studio circuits, e.g. for mixing, switching-over, change of character of image, other special effects ; Cameras specially adapted for the electronic generation of special effects
    • H04N5/2628Alteration of picture size, shape, position or orientation, e.g. zooming, rotation, rolling, perspective, translation

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Studio Circuits (AREA)
  • Image Processing (AREA)
  • Controls And Circuits For Display Device (AREA)

Description

【0001】
【発明の属する技術分野】
この発明は、画像の縮小・拡大機能を有する画像処理装置に関する。
【0002】
【従来の技術】
画像処理装置では、画像を所望のサイズに調整するために、画像の縮小処理や拡大処理が行われることがある。図16は、従来の垂直方向の画像縮小処理の内容を示す説明図である。図16(A)に示す元画像は、ライン番号が1,4,7のラインが黒で塗りつぶされており、他のラインは白である。図16(B)に示す縮小画像は、この元画像を0.8倍に縮小したものである。
【0003】
【発明が解決しようとする課題】
図16(B)に示す縮小画像では、元画像のライン番号1,6のラインが欠落しており、この結果、黒い水平線が1本消失している。この例から解るように、従来の垂直方向の縮小処理では、いくつかのラインが単に欠落してしまい、この結果、細い線分が消失してしまう場合があった。例えば図16(C)に示すような、1ライン幅の線分L1〜L3を有する元画像を縮小すると、図16(D)に示すように、もとの線分L3が欠落して完全に消失してしまう場合があった。このような画像部分の欠落による問題は、水平方向の縮小時にも発生していた。
【0004】
図17は、従来の垂直方向の画像拡大処理の内容を示す説明図である。図17(A)に示す元画像は、前述した図16(A)と同じものである。図17(B)に示す拡大画像は、この元画像を1.25倍に拡大したものである。図17(B)では、元画像のライン番号0,4のラインが追加されており、この結果、これらのラインの幅が2倍に太っている。この例から解るように、従来の垂直方向の拡大処理では、いくつかのラインが単純に追加されるので、画像内の線の幅が過度に太ってしまうという問題があった。このような画像部分の追加による問題は、水平方向の拡大時にも発生していた。
【0005】
さらに、従来の拡大処理では、画像を整数倍に拡大することは容易であるが、小数部を含む任意の倍率で画像を拡大することは困難であった。
【0006】
この発明は、従来技術における上述の課題を解決するためになされたものであり、縮小時の画像部分の欠落や拡大時の画像部分の太りを緩和することのできる技術を提供することを第1の目的とする。
【0007】
また、小数部を含みうる任意の倍率で画像を拡大することのできる技術を提供することを第2の目的とする。
【0008】
【課題を解決するための手段およびその作用・効果】
上述の課題の少なくとも一部を解決するため、本発明の第1の画像処理装置は、
動画画像データを前記動画画像データの同期信号に応じて更新しつつ順次記憶するためのフレームメモリと、
任意の値に設定された垂直方向の縮小率に応じて前記フレームメモリに前記動画画像データを書き込む際に前記動画画像データで表される画像を垂直方向に縮小し、前記動画画像データの同期信号に同期して1つずつ順次増加するラインアドレス毎に当該ラインが前記垂直方向の縮小により欠落するか否かを判定することによって前記縮小により欠落する第1のラインを検出するとともに、前記第1のラインと前記第1のラインに隣接する第2のラインとを含む複数のラインの動画画像データを補間することによって前記第2のラインの画像を修正する垂直縮小部と、
任意の値に設定された水平方向の縮小率に応じて前記動画画像データで表される画像を水平方向に縮小し、前記動画画像データの同期信号に同期して1つずつ順次増加する画素アドレス毎に当該画素が前記水平方向の縮小により欠落するか否かを判定することによって前記縮小により欠落する第1の画素を検出するとともに、前記第1の画素と前記第1の画素に隣接する第2の画素とを含む複数の画素の動画画像データを補間することによって前記第2の画素の画像を修正する水平縮小部と、を備える。
前記垂直縮小部は、前記動画画像データの同期信号に同期して1つずつ順次増加するラインアドレスと前記垂直方向の縮小率とを乗じて整数化して得られた書き込みラインアドレスの値として同じ値が2回以上繰り返されたか否かによって、前記1つずつ順次増加するラインアドレスで指定されるラインが前記垂直方向の縮小により欠落するか否かを判定する。
また、前記水平縮小部は、前記動画画像データの同期信号に同期して1つずつ順次増加する画素アドレスと前記水平方向の縮小率とを乗じて整数化して得られた書込画素アドレスの値として同じ値が2回以上繰り返されたか否かによって、前記1つずつ順次増加する画素アドレスで指定される画素が前記垂直方向の縮小により欠落するか否かを判定する。
【0009】
上記第1の画像処理装置における垂直縮小部は、縮小によって第1のラインが欠落することを検出して、縮小の際にラインの情報が完全に欠落してしまうことを防止することができる。また、欠落するラインに隣接しないラインに対しては補間処理を行わないので、画像の鮮鋭度を余り劣化させること無く、ラインの欠落による画質の低下を緩和することができる。水平縮小部も、同様に、縮小の際に単に画素が欠落してしまうことを防止することができ、また、画像の鮮鋭度を余り劣化させること無く、画素の欠落による画質低下を緩和することができる。
【0010】
上記第1の画像処理装置において、
前記垂直縮小部と前記水平縮小部のそれぞれは、
与えられた画像データを所定量記憶するバッファと、
前記バッファから読み出された第1の画像データと、前記第1の画像データの後に続く画像部分を表す第2の画像データとを加重平均することによって第3の画像データを作成する加重平均部と、
与えられた前記第2の画像データと、前記加重平均部から出力された前記第3の画像データとを含む複数の画像データの中から1つを選択して出力する選択部と、
画像の縮小率に応じて、前記縮小に伴って欠落する画像部分を示す選択信号を生成し、前記選択信号を前記選択部に供給する選択信号生成部と、
を備えることが好ましい。
【0011】
これらの各縮小部では、与えられた第2の画像データと、加重平均部で生成された第3の画像データとを含む複数の画像データの中から選択部が1つの画像データを選択して出力するので、縮小時の欠落が緩和された画像データをリアルタイムに生成することができる。
【0012】
上記第1の画像処理装置は、さらに、
前記選択信号に応じて、前記フレームメモリに与える書込アドレスの増加を制御する書込アドレス制御部、を備えることが好ましい。
【0013】
こうすれば、縮小時の欠落が緩和された画像データを、フレームメモリの適切なアドレスに書き込むことができる。
【0014】
また、上記第1の画像処理装置において、
前記垂直縮小部と前記水平縮小部における縮小率は、それぞれ0.5から1の範囲内の値であり、従って、前記垂直縮小部における縮小に伴って欠落する画像部分は1ヶ所について1ライン分であり、前記水平縮小部における縮小に伴って欠落する画像部分は1ヶ所について1画素分であることが好ましい。
【0015】
本発明の第2の画像処理装置は、画像データを記憶するためのフレームメモリと、
前記フレームメモリから読み出された画像データで表される画像を垂直方向に拡大し、拡大によって追加される第1のラインを検出するととともに、前記第1のラインに隣接する複数のラインの画像データを補間することによって前記第1のラインの画像データを生成する垂直拡大部と、
前記画像データで表される画像を水平方向に拡大し、拡大によって追加される第1の画素を検出するとともに、前記第1の画素と前記第1の画素に隣接する複数の画素の画像データを補間することによって前記第1の画素の画像データを生成する水平拡大部と、
を備える。
【0016】
第2の画像処理装置における垂直拡大部は、拡大によって第1のラインが追加されるときに、第1のラインと、第1のラインに隣接する第2のラインとを含む複数のラインの画像データを補間することによって、第1のラインを生成することができる。従って、拡大の際に単にラインが追加されて線分が太ってしまうことを防止することができる。また、元の画像に存在していたラインに対しては補間処理を行わないので、画像の鮮鋭度を余り劣化させること無く、ラインの拡大による画質の劣化を緩和することができる。水平拡大部も、同様に、拡大の際に単に画素が太ってしまうことを防止することができ、また、画像の鮮鋭度を余り劣化させること無く、画素の追加による画質の劣化を緩和することができる。
【0017】
上記第2の画像処理装置において、前記垂直拡大部と前記水平拡大部のそれぞれは、
与えられた画像データを所定量記憶するバッファと、
前記バッファから読み出された第1の画像データと、前記第1の画像データの後に続く画像部分を表す第2の画像データとを加重平均することによって第3の画像データを作成する加重平均部と、
与えられた前記第2の画像データと、前記加重平均部から出力された前記第3の画像データとを含む複数の画像データの中から1つを選択して出力する選択部と、
画像の拡大率に応じて、前記拡大に伴って追加される画像部分を示す選択信号を生成し、前記選択信号を前記選択部に供給する選択信号生成部と、
を備える。
【0018】
各拡大部では、与えられた第2の画像データと、加重平均部で生成された第3の画像データとを含む複数の画像データの中から選択部が1つの画像データを選択して出力するので、拡大時の太りが緩和された画像データをリアルタイムに生成することができる。
【0019】
上記第2の画像処理装置は、さらに、
前記選択信号に応じて、前記フレームメモリに与える読出アドレスの増加を制御する読出アドレス制御部と、を備えることが好ましい。
【0020】
こうすれば、拡大の対象となる画像データを、フレームメモリの適切なアドレスから読み出すことができる。
【0021】
上記第2の画像処理装置において、
前記垂直拡大部と前記水平拡大部における拡大率は、それぞれ1から2の範囲内の値であり、従って、前記垂直拡大部における拡大に伴って追加される画像部分は1ヶ所について1ライン分であり、前記水平拡大部における拡大に伴って追加される画像部分は1ヶ所について1画素分であることが好ましい。
【0022】
本発明の第3の画像処理装置は、
1から2の範囲内の第1の拡大率に従って画像を拡大する第1の拡大部と、
整数である第2の拡大率に従って画像を拡大する第2の拡大部と、を備え、
前記第1と第2の拡大部で直列的に画像を拡大することによって、前記第1と第2の拡大率の積で与えられる第3の拡大率で画像を拡大することを特徴とする。なお、第1と第2の拡大部における画像の拡大の順序は任意であり、第1の拡大部による拡大の後に第2の拡大部による拡大が行われても良く、逆に、第2の拡大部による拡大の後に第1の拡大部による拡大が行われても良い。
【0023】
小数部を含みうる第1の拡大率による画像の拡大と、整数である第2の拡大率による画像の拡大とが直列的に行われるので、小数部を含みうる任意の倍率で画像を拡大することができる。
【0024】
上記第3の画像処理装置において、
前記第1と第2の拡大部はこの順に直列的に画像の拡大処理を実行し、
前記第2の拡大部は、前記第1の拡大部の第1の出力速度に前記第2の拡大率を乗じた第2の出力速度で画像データを出力するように前記拡大処理を実行することが好ましい。
【0025】
こうすれば、第2の拡大部は、第1の拡大部から出力された画像データをそのまま順次拡大処理していくことができるので、全体として高速に拡大処理を実行することができる。
【0026】
【発明の実施の形態】
A.画像処理装置の全体構成:
次に、本発明の実施の形態を実施例に基づき説明する。図1は、この発明の実施例としての画像処理装置の全体構成を示すブロック図である。この画像処理装置は、第1のビデオセレクタ30と、同期分離回路32と、n個のA−D変換器34と、フレームメモリ36と、ビデオプロセッサ38と、第2のビデオセレクタ40と、液晶ディスプレイ駆動回路42と、液晶ディスプレイパネル44と、メニュー生成回路46と、フォントROM48と、CPU50とを備えるコンピュータシステムである。
【0027】
この画像処理装置の全体は、液晶プロジェクタ内に設けられており、液晶ディスプレイパネル44に表示する画像を処理するための装置である。液晶ディスプレイパネル44に表示された画像は、図示しない光学系を用いて投写スクリーン上に投写される。第1のビデオセレクタ30には、複数のアナログ画像信号V1,V2が与えられており、ビデオプロセッサ38から与えられる選択信号SEL1に応じてその中の1つが選択的に出力される。複数のアナログ画像信号V1,V2としては、例えばパーソナルコンピュータから出力されたコンピュータ画面を表す画像信号や、ビデオレコーダやテレビから出力された動画映像信号等が供給される。同期分離回路32は、第1のビデオセレクタ30から与えられたアナログ画像信号から垂直同期信号VSYNC1と水平同期信号HSYNC1を分離し、また、コンポーネント画像信号(同期信号を含まない画像信号)を出力する。
【0028】
同期分離回路32から出力されたコンポーネント画像信号は、n個のA−D変換器34によってデジタル画像信号に変換される。すなわち、n個のA−D変換器34は、順次1つずつ切り換えながら使用され、各A−D変換器34は、元の画像信号の周波数の1/nの周波数を有するサンプリングクロックに従ってアナログ信号をデジタル信号に変換する。
【0029】
ビデオプロセッサ38は、フレームメモリ36への画像の書込みや読出しを行うためのプロセッサであり、画像の拡大・縮小を行う機能を有している。ビデオプロセッサ38の内部構成と機能の詳細については後述する。ビデオプロセッサ38には、A−D変換器34から与えられるデジタル画像信号の他に、他のデジタル画像出力装置から出力されたデジタル画像信号DV3も供給可能である。
【0030】
フレームメモリ36から読み出されてビデオプロセッサ38で処理されたデジタル画像信号は、第2のビデオセレクタ40に入力される。第2のビデオセレクタ40には、メニュー生成回路46から出力されたもう1つのデジタル画像信号も供給されている。メニュー生成回路46は、液晶ディスプレイパネル44における表示状態(輝度、コントラスト、同期、トラッキング、色の濃さ、色合い)等を使用者が調整するためのメニューを表すデジタル画像信号を生成している。フォントROM48は、このメニューに用いられる文字のフォントデータを格納している。第2のビデオセレクタ40は、ビデオプロセッサ38から与えられる選択信号SEL2に応じて、入力された2つのデジタル画像信号を切り換えつつ出力する。この結果、フレームメモリ36から読み出された画像内に、メニュー画面が重畳された合成画像を表すデジタル画像信号DV4がビデオセレクタ40から出力される。
【0031】
ビデオセレクタ40から出力されたデジタル画像信号DV4は、液晶ディスプレイ駆動回路42に供給される。液晶ディスプレイ駆動回路42は、この画像信号DV4に応じて、液晶ディスプレイ44に画像を表示する。また、液晶ディスプレイ駆動回路42は、画像表示のための垂直同期信号VSYNC2と水平同期信号HSYNC2とを生成して他の回路に出力している。
【0032】
フレームメモリ36からの画像信号の読み出しと、読み出された画像信号の処理とは、液晶ディスプレイ駆動回路42から出力された同期信号VSYNC2,HSYNC2に同期して行われる。一方、前述したA−D変換器34におけるサンプリングや、フレームメモリ36に画像信号を書き込むための処理は、同期分離回路32で分離された同期信号VSYNC1,HSYNC1に同期して行われる。これらの第1の同期信号VSYNC1,HSYNC1と、第2の同期信号VSYNC2,HSYNC2とは互いに非同期である。もちろん、第1の同期信号VSYNC1,HSYNC1と、第2の同期信号VSYNC2,HSYNC2として、互いに同期する信号を使用することも可能である。
【0033】
このように、画像信号を外部から受け取ってフレームメモリ36に書き込むまでの処理を第1の同期信号VSYC1,HSYNC1で行い、フレームメモリ36から画像信号を読み出して画像を表示するまでの処理を、第1の同期信号とは同期または非同期の第2の同期信号VSYNC2,HSYNC2で行っているので、入力される画像信号の周波数の値として、表示用の画像信号の周波数とは無関係に、比較的広い範囲の値を許容することができる。すなわち、表示用の出力画像信号の周波数を一定に保ちつつ、入力される画像信号の同期信号VSYC1,HSYNC1の周波数に応じて、入力画像信号をフレームメモリ36に書き込む処理を行うことができる。このような利点は、入力画像信号の周波数の取りうる範囲が極めて広い場合に特に有益である。
【0034】
B.ビデオプロセッサ38の内部構成:
図2は、ビデオプロセッサ38内の画像書込制御部の構成を示すブロック図である。画像書込制御部は、色変換回路60と、データセレクタ62と、n個のラインバッファ64と、縮小/フィルタ回路66と、書込画像調整回路68と、CPU書込制御回路70と、書込制御信号生成回路72と、画像書込条件レジスタ74と、書込クロック生成回路76と、フレームメモリ制御回路80とを備えている。
【0035】
色変換回路60には、n個のA−D変換器34から出力されたn個のコンポーネント画像信号が入力される。このコンポーネント画像信号としては、YUV信号やRGB信号等の種々のタイプの信号が入力可能である。色変換回路60は、YUV信号が入力されたときに、これらをRGB信号に変換する機能を有する。色変換回路60にRGB信号が入力されている場合には、色変換回路60、そのRGB信号をそのまま出力する。
【0036】
データセレクタ62は、色変換回路60から出力されたRGB信号と、バスを介して与えられた他のRGB信号DV3(図1)とのうちの一方を選択して出力する。なお、データセレクタ62に与えられる選択信号は、CPU50から供給される。
【0037】
ラインバッファ64は、A−D変換器34の個数と同じn個のバッファ要素を有している。カラー画像はRGBの3色の画像信号で表されるので、RGBの各色に関してn個のラインバッファ64がそれぞれ設けられている。ラインバッファ64は、A−D変換器34で生成されたn個のパラレルな画像信号を一時的に記憶するためのメモリである。
【0038】
縮小/フィルタ回路66は、フレームメモリ36に書き込まれる画像を垂直および水平方向に縮小するとともに、縮小の際に欠落するラインや欠落する画素に関するフィルタリング処理を行う。縮小/フィルタ回路66の内部構成と動作についてさらに後述する。
【0039】
書込制御信号生成回路72は、画像信号をフレームメモリ36に書き込む際のアドレスや制御信号を生成してフレームメモリ制御回路80に供給する機能を有する。フレームメモリ制御回路80は、フレームメモリ36への画像信号の書き込みと読み出しとを調停する機能を有する。すなわち、フレームメモリ制御回路80は、書込制御信号生成回路72から与えられる書込みのためのアドレスおよび制御信号と、後述する画像読出制御部の読出制御信号生成回路から与えられる読出しのためのアドレスおよび制御信号とを受けて、フレームメモリ36にこれらを供給する。
【0040】
書込画像調整回路68は、フレームメモリ36に書き込まれる画像の垂直方向および水平方向のサイズと、フレームメモリ36のメモリ空間内における書込対象領域の位置とを調整する機能を有する。画像のサイズの調整は、画像の垂直方向と水平方向の縮小率を縮小/フィルタ回路66に供給して、縮小/フィルタ回路66に画像を縮小させることによって実現される。また、フレームメモリ36内の書込対象領域の位置は、書込開始アドレスを書込画像調整回路68から書込制御信号生成回路72に供給することによって実現される。書込制御信号生成回路72は、この書込開始アドレスを始点として、書込対象領域内の書込アドレスを順次生成する。書込画像調整回路68は、さらに、ラインバッファ64に供給するアドレスを生成している。
【0041】
CPU書込制御回路70は、バスを介して与えられるデジタル画像信号DV3をフレームメモリ36に書き込むためのアドレスと制御信号とを生成するための回路である。画像書込条件レジスタ74は、画像信号をフレームメモリ36に書き込む際の種々の条件を記憶するレジスタである。これらの条件は、バスを介してCPU50によって設定される。図2において、「*」が付されているブロックは、画像書込条件レジスタ74に設定された条件に従って、それぞれの処理を実行する。すなわち、画像書込条件レジスタ74に登録される書込条件としては、色変換回路60における色変換の有無や色変換のタイプ、データセレクタ62における選択、縮小/フィルタ回路66における縮小率、フレームメモリ36の書込開始位置、等がある。
【0042】
書込クロック生成回路76は、同期分離回路32(図1)から供給される水平同期信号HSYNC1に従ってドットクロック信号DCLK1を生成する。書込クロック生成回路76は、図示しないPLL回路を有している。このPLL回路における分周比は、画像書込条件レジスタ74から与えられる。なお、図2に示す画像書込制御部における処理は、このドットクロック信号DCLK1と、同期信号VSYNC1,HSYNC1とに同期して実行される。
【0043】
図3は、ビデオプロセッサ38内の画像読出制御部の構成を示すブロック図である。画像読出制御部は、フレームメモリ制御回路80と、読出制御信号生成回路90と、拡大/フィルタ回路94と、輝度/コントラスト調整回路96と、階調補正回路98と、CPU読出用ラインバッファ100と、CPU読出制御回路102と、読出画像調整回路104と、画像読出条件レジスタ106と、読出クロック生成回路108とを備えている。
【0044】
図3に示すフレームメモリ制御回路80は、前述した図2に示すものと同じである。読出制御信号生成回路90は、画像信号をフレームメモリ36から読み出す際のアドレスや制御信号を生成してフレームメモリ制御回路80に供給する機能を有する。拡大/フィルタ回路94は、フレームメモリ36から読み出された画像を垂直および水平方向に拡大するとともに、拡大の際に追加されるラインや追加される画素に関するフィルタリング処理を行う。拡大/フィルタ回路94の内部構成と動作についてさらに後述する。なお、画像の読み出しの際には、読み出しアドレスを間引くことによって、画像を縮小することも可能である。このような画像の縮小処理は、読出制御信号生成回路90によって実行される。
【0045】
輝度/コントラスト調整回路96は、表示される画像の輝度やコントラストを調整する機能を有する。また、階調補正回路98は、ルックアップテーブルを用いてガンマ補正などの階調補正を行う。
【0046】
CPU読出用ラインバッファ100は、フレームメモリ36からバス上に画像信号を読み出す際に使用されるバッファである。バス上に画像信号を読み出す際には、CPU読出制御回路102がアドレスや制御信号を生成する。
【0047】
読出画像調整回路104は、フレームメモリ36から読み出される画像の垂直方向および水平方向のサイズと、フレームメモリ36のメモリ空間内における読出対象領域の位置とを調整する機能を有する。画像のサイズの調整は、画像の垂直方向と水平方向の拡大率を拡大/フィルタ回路94に供給して、拡大/フィルタ回路94に画像を拡大させることによって実現される。また、フレームメモリ36内の読出対象領域の位置は、読出開始アドレスを読出画像調整回路104から読出制御信号生成回路90に供給することによって実現される。読出制御信号生成回路90は、この読出開始アドレスを始点として、読出対象領域内の読出アドレスを順次生成する。
【0048】
画像読出条件レジスタ106は、画像信号をフレームメモリ36から読み出す際の種々の条件を記憶するレジスタである。これらの条件は、バスを介してCPU50によって設定される。図3において、「**」が付されているブロックは、画像読出条件レジスタ106に設定された条件に従って、それぞれの処理を実行する。すなわち、画像読出条件レジスタ106に登録される読出条件としては、フレームメモリ36の読出開始位置、拡大/フィルタ回路94における拡大率、輝度/コントラスト調整回路96における調整パラメータ、階調補正回路98における補正パラメータ、等がある。
【0049】
読出クロック生成回路108は、液晶ディスプレイ駆動回路42(図1)から供給される水平同期信号HSYNC2に従ってドットクロック信号DCLK2を生成する。読出クロック生成回路108は、内部に図示しないPLL回路を有している。このPLL回路における分周比は、画像読出条件レジスタ106から与えられる。なお、図3に示す画像読出制御部における処理は、このドットクロック信号DCLK2と、同期信号VSYNC2,HSYNC2とに同期して実行される。
【0050】
C.縮小/フィルタ回路66の内部構成と動作:
図4は、縮小/フィルタ回路66によって行われる画像書込時の垂直方向の縮小/フィルタリング処理の概要を示す説明図である。図4(A)は元画像を示し、図4(B)は従来の方法で縮小された縮小画像を、また、図4(C)は実施例の縮小/フィルタ回路66によって縮小された縮小画像を示している。
【0051】
各画像の左側には、元画像のラインアドレスLADがそれぞれ記されている。図4(B)に示す縮小画像は、従来技術において説明した図16(B)の縮小画像と同じである。前述したように、従来の縮小処理では、元のラインアドレスが1,6のラインが欠落していた。このため、図16(C),(D)で説明したように、画像内の重要な線が消失してしまうことがあった。
【0052】
一方、図4(C)に示すように、実施例の縮小/フィルタ回路66による縮小/フィルタリング処理では、欠落するラインアドレス1,6のラインが、それぞれ隣接するラインと加重平均される。例えば、ラインアドレス1のラインは、その直前のライン(ラインアドレス0のライン)と加重平均される。従って、ラインアドレス1のライン完全には消失せず、元の線分よりもやや薄い色の線分が縮小画像内に残される。すなわち、実施例の縮小/フィルタ回路66は、1画素の幅の線分が縮小画像から完全に消失していまうことを防止することができる。なお、縮小/フィルタ回路66において実行されるフィルタリング処理は、隣接する2ライン分の画像信号を加重平均する処理を意味している。
【0053】
図5は、縮小/フィルタ回路66の内部構成を示すブロック図である。縮小/フィルタ回路66は、垂直縮小/フィルタ回路110と、水平縮小/フィルタ回路112とを備えている。なお、図5に示されているラインアドレス発生回路140と画素アドレス発生回路142は、図2に示した書込制御信号生成回路72内に含まれる回路である。
【0054】
垂直縮小/フィルタ回路110は、垂直デシメーションフラグ生成回路120と、FIFOバッファ122と、加算器124と、乗算器126と、マルチプレクサ128とを有している。なお、この明細書において、「デシメーション」とは、画像の縮小処理や間引き処理を意味している。水平縮小/フィルタ回路112も、垂直縮小/フィルタ回路110とほぼ同様な構成を有しており、水平デシメーションフラグ生成回路130と、バッファ132と、加算器134と、乗算器136と、マルチプレクサ138とを有している。但し、垂直縮小/フィルタ回路110のFIFOバッファ122は1ライン分の画像信号を格納する容量を有しているのに対して、水平縮小/フィルタ回路112のバッファ132は1画素分の画像信号を格納する容量を有している。
【0055】
垂直デシメーションフラグ生成回路120には、ラインアドレスLADと、書込時の垂直方向の縮小率Rwvとが書込画像調整回路68(図2)から入力されている。ラインアドレスLADは、図2に示すラインバッファ64から画像信号を読み出すために書込画像調整回路68からラインバッファ64に与えられるラインアドレスと同じものである。垂直デシメーションフラグ生成回路120は、このラインアドレスLADと垂直縮小率Rwvとに応じて、後述する演算を行って垂直デシメーションフラグFwvを生成する。垂直デシメーションフラグFwvは、FIFOバッファ122とマルチプレクサ128とラインアドレス発生回路140とに供給される。
【0056】
ラインバッファ64(図2)から供給された1ライン分の画像信号VaはFIFOバッファ122に格納される。FIFOバッファ122に格納された画像信号は、次のラインの画像信号がラインバッファ64から供給される時にFIFOバッファ122から読み出される。従って、FIFOバッファ122から読み出される画像信号Vbは、ラインバッファ64から与えられている画像信号Vaよりも1ライン手前の画像信号である。加算器124は、ラインバッファ64から供給された画像信号Vaと、FIFOバッファ122から読み出された画像信号Vbとを加算し、加算された画像信号には、乗算器126において1/2が乗じられる。乗算器126から出力される画像信号Vabは、ラインバッファ64から与えられた画像信号Vaと、その1ライン手前の画像信号Vbとを平均したものである。この平均化された画像信号Vabは、マルチプレクサ128のB入力端子に入力される。マルチプレクサ128のA入力端子には、ラインバッファ64から与えられた画像信号Vaがそのまま入力されている。マルチプレクサ128は、垂直デシメーションフラグFwvのレベルに従って、入力された2つの画像信号Va,Vabの一方を選択して出力する。
【0057】
図6は、垂直縮小/フィルタ回路110の動作に関連する各種のパラメータの算出方法を示す説明図である。ここで、Rwvは垂直縮小率を示し、また、LADは元のラインアドレスを、WLADはフレームメモリ36に与えられる書込ラインアドレスを、Fwvは垂直デシメーションフラグ生成回路120で生成される垂直デシメーションフラグを、MPXはマルチプレクサ128の入力端子A/Bの選択状態を、そして、Vout1はマルチプレクサ128から出力される画像データが元のどのラインに対応しているかをそれぞれ示している。
【0058】
書込ラインアドレスWLADは、垂直縮小率Rwvと、元のラインアドレスLADとの乗算結果を整数化した値で与えられる。図6の例では、垂直縮小率Rwvが0.8なので、書込ラインアドレスWLADは0,0,1,2…となる。垂直デシメーションフラグFwvは、書込ラインアドレスWLADの値が2回以上繰り返されたときにHレベルとなり、それ以外のときにはLレベルとなる。すなわち、垂直デシメーションフラグ生成回路120は、ラインアドレスLADが更新される度に、ラインアドレスLADと垂直縮小率Rwvとを乗算して、その乗算結果WLADが前回の乗算結果と同じ場合には、垂直デシメーションフラグFwvをHレベルに立ち上げる。一方、乗算結果WLADが前回の乗算結果と異なる場合には、垂直デシメーションフラグFwvをLレベルに立ち下げる。図6の例では、元のラインアドレスLADが1と6の場合に垂直デシメーションフラグFwvがHレベルになっていることが解る。図4(B)に示したように、ラインアドレスLADが1と6のラインは、従来の単純な縮小処理において欠落するラインである。従って、垂直デシメーションフラグFwvは、縮小に伴って欠落するラインを示す信号である。
【0059】
マルチプレクサ128(図5)の選択状態は、垂直デシメーションフラグFwvのレベルに応じて切り換えられる。すなわち、図6の「MPX」の欄に示すように、垂直デシメーションフラグFwvがLレベルの場合には、マルチプレクサ128のA端子から入力された画像信号Vaが選択されて出力される。一方、垂直デシメーションフラグFwvがHレベルの場合には、マルチプレクサ128のB端子に入力された画像信号Vabが選択されて出力される。前述したように、A端子に入力された画像信号Vaは、ラインバッファ64から供給されている画像信号であり、B端子に入力される画像信号Vabは、この画像信号Vaと、その1ライン手前の画像信号Vbとを平均した信号である。従って、垂直デシメーションフラグFwvがHレベルの場合には、欠落するラインの画像信号Vaと、その1つ手前のラインの画像信号Vbとを平均した信号Vabがマルチプレクサ128で選択されて出力される。例えば、図6の例において、元のラインアドレスLADが1のラインの画像信号Vaが入力されたときには、出力画像信号Vout1として、ラインアドレスLADが0と1である2つのラインL1,L2を平均した画像信号Vabが出力される。なお、垂直デシメーションフラグFwvがLレベルの場合には、ラインバッファ64から与えられた画像信号Vaがそのまま出力される。
【0060】
図5に示されているように、垂直デシメーションフラグFwvはラインアドレス発生回路140にも供給されている。このラインアドレス発生回路140は、書込制御信号生成回路72(図2)に含まれる回路であり、フレームメモリ36に与える書込ラインアドレスWLADを実際に生成している。垂直デシメーションフラグFwvがLレベルの場合には、書込ラインアドレスは、ラインバッファ64におけるラインアドレスLADの更新に同期して更新される。一方、垂直デシメーションフラグFwvがHレベルの場合には、書込ラインアドレスWLADの更新が禁止され、書込ラインアドレスWLADは同じ値に保たれる。従って、垂直デシメーションフラグFwvがHレベルの場合には、書込ラインアドレスWLADが直前のラインと同じに保たれるので、フレームメモリ36には、直前のラインの画像信号の上に次のラインの画像信号が書き込まれる。例えば、図6において、ラインアドレスLADが0と1である2つのラインL0,L1を平均した画像信号が、ラインアドレスLADが0であるラインL0の画像信号に上書きされる。
【0061】
なお、ラインアドレス発生回路140における書込ラインアドレスWLADの更新を、上述のように垂直デシメーションフラグFwvのレベルに応じて制御する代わりに、ラインアドレス発生回路140内において独自に書込ラインアドレスWLADの更新を制御することも可能である。この場合には、ラインアドレス発生回路140内に、垂直デシメーションフラグ生成回路120とほぼ同様の回路を設けて、垂直デシメーションフラグFwvと等価な信号を生成するようにすればよい。
【0062】
図7は、垂直縮小/フィルタ回路110の動作を示すタイミングチャートである。図7(a)はラインバッファ64におけるラインアドレスを示し、図7(b)は書込ラインアドレスLADを、また、図7(c)は垂直デシメーションフラグFwvを示している。図7(d)に示す書込制御信号FW#と図7(e)に示す読出制御信号FR#は、FIFOバッファ122における書込みと読み出しを許可する信号であり、図示しないFIFO制御回路から供給されている。これらの信号FW#、FR#は負論理であり、Lレベルの時にのみ画像信号の書込みや読み出しが許可される。図7(c)〜(e)を見れば解るように、垂直デシメーションフラグFwvがLレベルのラインでは、FIFOバッファ122への画像信号の書込みが許可されるとともに、FIFOバッファ122からの読み出しが禁止される。一方、垂直デシメーションフラグFwvがHレベルのラインでは、FIFOバッファ122への画像信号の書込みが禁止されるとともに、FIFOバッファ122からの読み出しが許可される。
【0063】
図7(a)、(f)に示すように、ラインバッファ64から垂直縮小/フィルタ回路110に与えられる画像信号VaのラインアドレスLADは1つずつ順次増加する。また、図7(g)に示すように、FIFOバッファ122からは、垂直デシメーションフラグFwvがHレベルのときにのみ、画像信号Vbが読み出される。元のラインアドレスLADが1の時には、図7(f)に示す画像信号Vaと、図7(g)に示す画像信号Vbとが加算平均されて、図7(h)に示す画像信号Vabが作成される。そして、この画像信号Vabがマルチプレクサ128から出力される(図7(i))。
【0064】
このように、図5に示す垂直縮小/フィルタ回路110では、従来の単純な縮小処理において欠落していたラインを、その直前のラインと加算平均することによって、これらの2つのラインとの情報を含む1つのラインを生成する。この結果、1ラインが完全に欠落することが無いので、水平1ラインの重要な線分が縮小画像で消失してしまうことを防止することができる。また、縮小によって欠落するラインに隣接しないラインに関しては、フィルタリング処理(加算平均処理)を行わないので、フィルタリング処理によって画像の鮮鋭度を余り劣化させることが無い。
【0065】
また、この垂直縮小/フィルタ回路110では、画像信号を一時的に格納するためのバッファメモリとして、1ライン分のFIFOバッファ122を使用するだけなので、バッファメモリの容量が比較的少なくて済むという利点がある。さらに、垂直縮小/フィルタ回路110では、1ライン毎に順次供給される画像信号をリアルタイムにフィルタリングしつつ出力できるので、動画画像信号を高速に処理して出力することができる。
【0066】
図5に示す水平縮小/フィルタ回路112は、垂直縮小/フィルタ回路110とほぼ同様な構成を有しており、垂直縮小/フィルタ回路110のFIFOバッファ122は1ラインの記憶容量を有しているのに対して、水平縮小/フィルタ回路112のバッファ132は1画素分の記憶容量を有している点が異なるだけである。従って、その縮小/フィルタリング処理の内容もほぼ同じであり、上述の垂直縮小/フィルタ回路110の説明において、「1ライン」を「1画素」に置き換えればその動作は容易に理解できる。すなわち、水平縮小/フィルタ回路112は、垂直縮小/フィルタ回路110から出力された画像信号Vout1に対して、水平方向の縮小処理とフィルタリング処理とを並行して実行する。この処理は、水平デシメーションフラグ生成回路130において生成される水平デシメーションフラグRwhのレベルに従って実行される。また、画素アドレス発生回路142は、この水平デシメーションフラグRwhのレベルに応じてフレームメモリ36の書込画素アドレスMPADの更新の制御を行う。この結果、従来の単純な縮小処理において欠落していた画素を、その直前の画素と加算平均することによって、これらの2つの画素の情報を含む1つの画素を生成する。この結果、1画素が完全に欠落することが無いので、1画素幅の重要な線分が縮小画像で消失してしまうことを防止することができる。また、縮小によって欠落する画素に隣接しない画素に関しては、フィルタリング処理(加算平均処理)を行わないので、フィルタリング処理によって画像の鮮鋭度を余り劣化させることが無い。
【0067】
垂直縮小/フィルタ回路110における垂直縮小率Rwvと、水平縮小/フィルタ回路112における水平縮小率Rwhは、独立に設定することが可能である。また、縮小によるラインや画素の欠落を防止する効果は、これらの縮小率が、それぞれ0.5から1の範囲内にあるときが顕著である。これは、この範囲では、1ヶ所に1ラインまたは1画素の欠落が生じるだけだからである。もちろん、縮小率は、これ以下の任意の値に設定することが可能である。
【0068】
なお、図5に示す垂直縮小/フィルタ回路110と水平縮小/フィルタ回路112では、2つの画像データの単純な加算平均を行う回路(加算器124,134と乗算器126,136)をそれぞれ用いていたが、重み付き加算平均(すなわち加重平均)を行う回路を利用するようにしてもよい。
【0069】
また、垂直縮小/フィルタ回路110と水平縮小/フィルタ回路112の配列は、図5とは逆にすることも可能である。すなわち、まず、水平縮小/フィルタ回路112で水平方向に縮小した後に、垂直縮小/フィルタ回路110で垂直方向に縮小するようにしてもよい。
【0070】
D.拡大/フィルタ回路94の構成と動作の概要:
図8は、フレームメモリ36から読み出された画像を拡大するための拡大/フィルタ回路94の内部構成とその処理内容の概要を示す説明図である。拡大/フィルタ回路94は、直列に接続された2つの拡大/インターポレーション回路150,152を備えている。第1の拡大/インターポレーション回路150は、入力された画像信号V1をM1倍に拡大するとともに、拡大によって追加される画像部分を、その前後の画像部分から補間して生成する処理を行う。この第1の拡大率M1は、1から2の範囲内の値である。第2の拡大/インターポレーション回路152は、第1の拡大/インターポレーション回路150から与えられた画像信号V2をM2倍に拡大するとともに、拡大によって追加される画像部分をその前後の画像部分から補間して生成する処理を行う。この第2の拡大率M2は整数である。図8(D)に示すように、第2の拡大/インターポレーション回路152から出力される画像の拡大率は、2つの拡大率M1,M2の積に等しい。
【0071】
このように、1から2の範囲の第1の拡大率M1で画像を拡大する第1の拡大/インターポレーション回路150と、整数である第2の拡大率M2で画像を拡大する第2の拡大/インターポレーション回路152を直列に設けるようにすれば、以下に詳述するように、それぞれの拡大率の範囲に応じた適切な処理を行うことができる。この結果、小数部を含む任意の拡大率(M1×M2)で、あまり画質を落とすことなく画像を拡大することが可能である。
【0072】
E.第1の拡大/インターポレーション回路150の構成と動作:
図9は、第1の拡大/インターポレーション回路150によって行われる垂直方向の拡大/インターポレーション処理の概要を示す説明図である。図9(A)は元画像を示し、図9(B)は従来の方法で拡大された拡大画像を、また、図9(C)は実施例の第1の拡大/インターポレーション回路150によって拡大された拡大画像を示している。
【0073】
各画像の左側には、フレームメモリ36から画像を読み出す際の読出ラインアドレスRLADがそれぞれ記されている。図9(B)の縮小画像は、従来技術において説明した図17(B)の縮小画像と同じである。前述したように、従来の拡大処理では、元のラインアドレスが0,4のラインが単純に追加されていた。このため、画像内に含まれる線の幅が過度に太ってしまうという問題があった。
【0074】
一方、図9(C)に示すように、実施例の第1の拡大/インターポレーション回路150による拡大/インターポレーション処理では、追加されるラインが、追加されるラインの前後に存在する元画像の2本のラインの加重平均によって生成される。例えば、ラインアドレス4と5の間に追加されるラインは、これらのラインの加重平均によって生成される。従って、ラインアドレス4のラインが単に太くならずに、やや濃度の薄いラインが追加されるだけである。すなわち、実施例の第1の拡大/インターポレーション回路150では、拡大によって画像内の線分が単純に太くなっていまうことを防止することができる。なお、第1の拡大/インターポレーション回路150において実行されるインターポレーション処理とは、追加されるラインの前後に存在する2ライン分の画像信号を加重平均する処理を意味している。
【0075】
図10は、第1の拡大/インターポレーション回路150の内部構成を示すブロック図である。第1の拡大/インターポレーション回路150は、垂直拡大/インターポレーション回路160と、水平拡大/インターポレーション回路162とを備えている。なお、図10に示されているラインアドレス発生回路190と画素アドレス発生回路192は、図3に示した読出制御信号生成回路90に含まれている回路である。
【0076】
垂直拡大/インターポレーション回路160は、垂直インターポレーションフラグ生成回路170と、FIFOバッファ172と、加算器174と、乗算器176と、マルチプレクサ178とを有している。水平拡大/インターポレーション回路162も、垂直拡大/インターポレーション回路160とほぼ同様な構成を有しており、水平インターポレーションフラグ生成回路180と、バッファ182と、加算器184と、乗算器186と、マルチプレクサ188とを有している。但し、垂直拡大/インターポレーション回路160のFIFOバッファ172は1ライン分の画像信号を格納する容量を有しているのに対して、水平拡大/インターポレーション回路162のバッファ182は1画素分の画像信号を格納する容量を有している。
【0077】
図10を図5と比較すれば解るように、図10に示す垂直拡大/インターポレーション回路160は、図5に示す垂直縮小/フィルタ回路110の垂直デシメーションフラグ生成回路120を垂直インターポレーションフラグ生成回路170で置き換えた構成を有している。また、図10に示す水平拡大/インターポレーション回路162は、図5に示す水平縮小/フィルタ回路112の水平デシメーションフラグ生成回路130を水平インターポレーションフラグ生成回路180で置き換えた構成を有している。
【0078】
垂直インターポレーションフラグ生成回路170には、ラインアドレスLADと、読出時の垂直方向の第1の拡大率Rrvとが読出画像調整回路104(図3)から入力される。ラインアドレスLADは、垂直拡大/インターポレーション回路160で1ライン処理される度に1つずつ順次増加される。このラインアドレスLADは、図5に示すものとは異なるアドレスであるが、図示の便宜上、同じ符号を使用している。垂直インターポレーションフラグ生成回路170は、このラインアドレスLADと垂直拡大率Rrvとに応じて、後述する演算を行って垂直インターポレーションフラグFrvを生成する。垂直インターポレーションフラグFrvは、FIFOバッファ172とマルチプレクサ178とラインアドレス発生回路190とに供給されている。
【0079】
フレームメモリ36から読み出された1ライン分の画像信号Uaは、FIFOバッファ172に格納される。FIFOバッファ172に格納された画像信号は、次のラインの画像信号がフレームメモリ36から供給される時にFIFOバッファ172から読み出される。従って、FIFOバッファ172から読み出される画像信号Ubは、フレームメモリ36から読み出されている画像信号Uaよりも1ライン手前の画像信号である。加算器174は、フレームメモリ36から読み出された画像信号Uaと、FIFOバッファ172から読み出された画像信号Ubとを加算する。加算された画像信号には、乗算器176において1/2が乗じられる。すなわち、乗算器176から出力される画像信号Uabは、フレームメモリ36から読み出された画像信号Uaと、その1ライン手前の画像信号Ubとを平均したものである。この平均化された画像信号Uabは、マルチプレクサ178のB入力端子に入力される。マルチプレクサ178のA入力端子には、フレームメモリ36から読み出された画像信号Uaがそのまま入力されている。マルチプレクサ178は、垂直インターポレーションフラグFrvのレベルに従って、入力された2つの画像信号Ua,Uabの一方を選択して出力する。
【0080】
図11は、垂直拡大/インターポレーション回路160における動作に関連する各種のパラメータの算出方法を示す説明図である。ここで、Rrvは垂直拡大率を示し、また、LADは順次に更新されるラインアドレスを、LAD/RrvはラインアドレスLADを垂直拡大率Rrvで除算した結果を、RLADはフレームメモリ36に与えられる読出ラインアドレスを、LFIFOはFIFOバッファ172に記憶されている画像信号の元のラインを、Frvは垂直インターポレーションフラグ生成回路170で生成される垂直インターポレーションフラグを、MPXはマルチプレクサ178の入力端子A/Bの選択状態を、そして、Uout1はマルチプレクサ178から出力される画像データの元のラインアドレスをそれぞれ示している。なお、順次1ずつ更新されるラインアドレスLADは、垂直拡大/インターポレーション回路160から出力される画像のライン番号を示しているものと考えることができる。
【0081】
図11の左から3番目の欄の値「LAD/Rrv」は、ラインアドレスLADを垂直拡大率Rrvで除した結果を整数化した値である。図11の例では、垂直拡大率Rrvが1.25なので、この除算結果LAD/Rrvは0,0,1,2…となる。図11に矢印で示すように、垂直インターポレーションフラグFrvは、この除算結果LAD/Rrvの値が2回以上繰り返されたときにHレベルとなり、それ以外のときにはLレベルとなる。すなわち、垂直インターポレーションフラグ生成回路170は、ラインアドレスLADが更新される度に、ラインアドレスLADと垂直拡大率Rrvとを除算して、除算結果(LAD/Rrv)が前回の除算結果と同じ場合には、垂直インターポレーションフラグFrvをHレベルに立ち上げる。一方、除算結果が前回の結果と異なる場合には、垂直インターポレーションフラグFrvをLレベルに立ち下げる。図11の例では、元のラインアドレスLADが1と6の場合に垂直インターポレーションフラグFrvがHレベルになっていることが解る。前述した図9(B)に示したように、ラインアドレスLADが1と6のラインは、従来の単純な拡大処理で追加されるラインである。従って、垂直インターポレーションフラグFrvは、拡大に伴って追加されるラインを示す信号である。
【0082】
マルチプレクサ178(図10)の選択状態は、垂直インターポレーションフラグFrvのレベルに応じて切り換えられる。すなわち、図11の「MPX」の欄に示すように、垂直インターポレーションフラグFrvがLレベルの場合には、マルチプレクサ178のA端子から入力された画像信号Uaが選択されて出力される。一方、垂直インターポレーションフラグFrvがHレベルの場合には、マルチプレクサ178のB端子に入力された画像信号Uabが選択されて出力される。前述したように、A端子に入力された画像信号Uaは、フレームメモリ36から読み出されつつある画像信号であり、B端子に入力される画像信号Uabは、この画像信号Uaとその1ライン手前の画像信号Ubとを平均した信号である。従って、垂直インターポレーションフラグFrvがHレベルの場合には、フレームメモリ36から読み出されているラインの画像信号Uaと、その1ライン手前の画像信号Ubとを平均した信号Uabがマルチプレクサ178で選択されて出力される。例えば、図11の例において、元のラインアドレスLADが1のラインの画像信号Uaが入力されているときには、出力画像信号Uout1として、ラインアドレスLADが0と1である2つのラインを平均した画像信号Uabが出力される。一方、垂直インターポレーションフラグFrvがLレベルの場合には、フレームメモリ36から読み出されている画像信号Uaがそのまま出力される。
【0083】
図10に示されているように、垂直インターポレーションフラグFrvはラインアドレス発生回路190にも供給されている。このラインアドレス発生回路190は、読出制御信号生成回路90(図3)に含まれている回路であり、フレームメモリ36に与える読出ラインアドレスRLADを実際に生成している。図11に示されているように、垂直インターポレーションフラグFrvがLレベルの場合には、その次のラインにおいて、読出ラインアドレスRLADは、元のラインアドレスLADの更新に同期して更新される。一方、垂直インターポレーションフラグFrvがHレベルの場合には、図11に矢印で示されるように、その次のラインにおいて読出ラインアドレスRLADの更新が禁止され、読出ラインアドレスRLADが同じ値に保たれる。従って、垂直インターポレーションフラグFrvがHレベルの場合には、読出ラインアドレスRLADが直前のラインと同じに保たれるので、フレームメモリ36から、前回と同じラインの画像信号が読み出される。例えば、図11において、ラインアドレスLADが1と2のときに、読出ラインアドレスRLADが1であるラインの画像信号が2回続けて読み出される。
【0084】
図11の「LFIFO」の欄に示すように、FIFOバッファ172からは、現在フレームメモリ36から読み出されているラインの1つ手前のラインの画像信号が読み出されている。
【0085】
なお、ラインアドレス発生回路190における読出ラインアドレスRLADの更新を、上述のように垂直インターポレーションフラグFrvのレベルに応じて制御する代わりに、ラインアドレス発生回路190内において読出ラインアドレスRLADの更新を独自に制御することも可能である。
【0086】
図12は、垂直拡大/インターポレーション回路160の動作を示すタイミングチャートである。図12(a)は出力される画像信号のラインアドレスLADを示し、また、図12(b)は読出ラインアドレスRLADを、図12(c)は垂直インターポレーションフラグFrvを示している。図12(d)に示す書込制御信号FW#と図12(e)に示す読出制御信号FR#は、FIFOバッファ172における書込みと読み出しを許可する信号であり、図示しないFIFO制御回路から供給されている。これらの信号FR#,FW#は負論理であり、Lレベルの時にのみ画像信号の書込みや読み出しが許可される。図12(c)〜(e)を見れば解るように、垂直インターポレーションフラグFrvがLレベルのラインでは、FIFOバッファ172への画像信号の書込みが許可されるとともに、FIFOバッファ172からの読み出しが禁止される。一方、垂直インターポレーションフラグFrvがHレベルのラインでは、FIFOバッファ172への画像信号の書込みが禁止されるとともに、FIFOバッファ172からの読み出しが許可される。
【0087】
図12(f)に示すように、フレームメモリ36から読み出された画像信号Uaのラインのアドレスは、垂直インターポレーションフラグFrvがHレベルの時には更新されず、Lレベルの時には1つずつ増加する。一方、図12(g)に示すように、FIFOバッファ172からは、垂直インターポレーションフラグFrvがHレベルのときにのみ、画像信号Ubが読み出される。第1の拡大/インターポレーション回路150から出力される画像のラインアドレスLADが1の時には、図12(f)に示すラインR0の画像信号Uaと、図12(g)に示すラインR1の画像信号Ubとが加算平均されて、図12(h)に示す画像信号Uabが作成される。そして、この画像信号Uabがマルチプレクサ178から出力される(図12(i))。
【0088】
このように、図10に示す垂直拡大/インターポレーション回路160では、従来の拡大処理において単純に追加されていたラインを、その前後に存在する2本のラインの加算平均によって生成する。この結果、画像内の水平方向の線が単純に太くなっていまうことを防止することができる。また、拡大によって追加されるラインに隣接しないラインに関しては、インターポレーション処理(加算平均処理)を行わないので、インターポレーション処理によって画像の鮮鋭度を余り劣化させることが無い。
【0089】
また、この垂直拡大/インターポレーション回路160では、画像信号を一時的に格納するためのバッファメモリとして、1ライン分のFIFOバッファ172を使用するだけなので、バッファメモリの容量が比較的少なくて済むという利点がある。さらに、垂直拡大/インターポレーション回路160では、1ライン毎に順次供給される画像信号をリアルタイムにフィルタリングしつつ出力できるので、動画画像信号を高速に処理して出力することができる。
【0090】
図10に示す水平拡大/インターポレーション回路162は、垂直拡大/インターポレーション回路160とほぼ同様な構成を有している。従って、その拡大/インターポレーション処理の内容もほぼ同じであり、上述の垂直拡大/インターポレーション回路160の説明において、「1ライン」を「1画素」に置き換えればその動作は容易に理解できる。この水平拡大/インターポレーション回路162では、画像内の拡大に伴って画像内の線が過度に太ってしまうことを防止することができる。また、拡大によって追加される画素に隣接しない画素に関しては、インターポレーション処理(加算平均処理)を行わないので、インターポレーション処理によって画像の鮮鋭度を余り劣化させることが無い。
【0091】
垂直拡大/インターポレーション回路160における垂直拡大率Rrvと、水平拡大/インターポレーション回路162における水平拡大率Rrhは、独立に設定することが可能である。また、拡大による線分の太りを防止する効果は、これらの拡大率が、それぞれ1から2の範囲内にあるときが顕著である。これは、この範囲では、1ヶ所に1ラインまたは1画素の追加が生じるだけだからである。
【0092】
なお、垂直拡大/インターポレーション回路160と水平拡大/インターポレーション回路162の接続の順序は、図10とは逆にすることも可能である。すなわち、まず、水平拡大/インターポレーション回路162で水平方向に拡大した後に、垂直拡大/インターポレーション回路160で垂直方向に拡大するようにしてもよい。
【0093】
F.第2の拡大/インターポレーション回路152の構成と動作:
図13は、第2の拡大/インターポレーション回路152によって行われる垂直方向の拡大/インターポレーション処理の概要を示す説明図である。図13(A)は、第1の拡大/インターポレーション回路150で拡大された後の画像を示しており、図13(B)は第2の拡大/インターポレーション回路152によって拡大された拡大画像を示している。なお、ここでは図13(A)の画像を「元画像」と呼ぶ。
【0094】
各画像の左側には、元画像のライン番号L0,L1…が示されている。第2の拡大/インターポレーション回路152は、元画像を垂直方向にNv倍に拡大する処理を実行する。拡大に伴って追加されるj番目のラインLNvは、次の式(1)に従って、追加されるラインの前後に存在する元画像の2本のラインLi-1 ,Li の加重平均によって直線内挿される。
【0095】
Nv=(1−αv)×Li-1 +αv×Li …(1)
ここで、αv=j/Nv,j=1〜(Nv−1)である。
【0096】
図14は、第2の拡大/インターポレーション回路152の内部構成を示すブロック図である。第2の拡大/インターポレーション回路152は、垂直拡大/インターポレーション回路200と、水平拡大/インターポレーション回路202とを備えている。
【0097】
垂直拡大/インターポレーション回路200は、重み算出回路210と、マルチプレクサ212と、2つのFIFOバッファ214,216と、補間演算回路218とを有している。水平拡大/インターポレーション回路202も、垂直拡大/インターポレーション回路200とほぼ同様な構成を有しており、重み算出回路220と、マルチプレクサ222と、2つのバッファ224,226と、補間演算回路228とを有している。但し、垂直拡大/インターポレーション回路200の2つのFIFOバッファ214,216はそれぞれ1ライン分の画像信号を格納する容量を有しているのに対して、水平拡大/インターポレーション回路202の2つのバッファ224,226はそれぞれ1画素分の画像信号を格納する容量を有している。
【0098】
重み算出回路210には、ラインアドレスNLADと、読出時の垂直方向の第2の拡大率Nvとが読出画像調整回路104(図3)から入力される。ラインアドレスNLADは、垂直拡大/インターポレーション回路200で1ライン処理される度に1つずつ順次増加される。なお、このラインアドレスNLADと、前述した第1の拡大/インターポレーション回路150におけるラインアドレスLADとの関係については後述する。
【0099】
重み算出回路210は、このラインアドレスNLADと垂直拡大率Nvとに応じて、以下の式(2)に従って重みαvを算出する。
【0100】
αv={(NLAD)%Nv}/Nv …(2)
【0101】
式(2)の右辺の{}内の項は、拡大によって追加されるラインに関しては1〜(Nv−1)の範囲の値を取る。従って、式(2)は、上述した式(1)における重みαvの定義と等価であることが解る。この重みαvは補間演算回路218に供給される。
【0102】
第1の拡大/インターポレーション回路150から出力された1ライン分の画像信号Uout2は、マルチプレクサ212によって切り換えられて、2つのFIFOバッファ214,216に交互に格納される。これらのFIFOバッファ214,216からそれぞれ読み出された画像信号Sa,Sbは、補間演算回路218に入力される。補間演算回路218は、重み算出回路210から与えられた重みαvを用いて2つの画像信号Sa,Sbを加重平均することによって、上述した式(1)による補間演算を実行する。補間演算回路218から出力される画像信号Sout1は、垂直方向にNv倍に拡大された画像を表す信号である。
【0103】
図15は、第2の拡大/インターポレーション回路152の垂直拡大/インターポレーション回路200の動作を示すタイミングチャートである。図15(a)は、第2の拡大/インターポレーション回路152におけるラインアドレスNLADを示し、また、図15(b)は前述した第1の拡大/インターポレーション回路150の出力画像のラインアドレスLADを、図15(c)は第1の拡大/インターポレーション回路150の出力画像信号Uout2を示している。また、図15(d),(e),(f)は、図14に示す補間演算回路218への入力画像信号Sa,Sbと、その出力画像信号Sout1とをそれぞれ示している。
【0104】
図15(a),(b)に示すように、第2の拡大/インターポレーション回路152におけるラインアドレスNLADは、第1の拡大/インターポレーション回路150の出力画像のラインアドレスLADの2倍の速度で(すなわち1/2の周期で)更新されている。一般には、第2の拡大/インターポレーション回路152におけるラインアドレスNLADは、第1の拡大/インターポレーション回路150の出力画像のラインアドレスLADのNv倍の速度で更新される。ここで、Nvは、第2の拡大/インターポレーション回路152における垂直拡大率である。従って、第2の拡大/インターポレーション回路152におけるラインアドレスLADは、図15(b)に示すように(Nv−1)個の休止サイクルを挟んで更新される。なお、前述した図12では、図示の便宜上、ラインアドレスLADの休止サイクルが示されていないが、実際には図15(b)に示したように、休止サイクルを挟む形でラインアドレスLADが更新される。
【0105】
第1の拡大/インターポレーション回路150から入力された画像信号Uout2は、2つのFIFOバッファ214,216に1ラインずつ交互に書き込まれ、書込みサイクルの次のサイクルから読み出される。補間演算回路218は、図15(d),(e)に示す2つの入力画像信号Sa,Sbを、重みαvを用いて補間演算することによって、図15(f)に示す出力画像信号Sout1を生成する。
【0106】
このように、第2の拡大/インターポレーション回路152の垂直拡大/インターポレーション回路200では、拡大に伴って追加されるラインを、その前後に存在する元画像の2つのラインを直線補間することによって生成するので、滑らかな拡大画像を得ることができる。
【0107】
図14に示す水平拡大/インターポレーション回路202は、垂直拡大/インターポレーション回路200とほぼ同様な構成を有している。従って、その拡大/インターポレーション処理の内容もほぼ同じであり、上述の垂直拡大/インターポレーション回路200の説明において、「1ライン」を「1画素」に置き換えればその動作は容易に理解できる。なお、第2の拡大/インターポレーション回路152における画素アドレスNPADは、第1の拡大/インターポレーション回路150における画素アドレスPADのNh倍の周期で更新されることが好ましい。ここで、Nhは、第2の拡大/インターポレーション回路152における水平拡大率である。
【0108】
なお、第2の拡大/インターポレーション回路152の垂直拡大/インターポレーション回路200における垂直拡大率Nvと、水平拡大/インターポレーション回路202における水平拡大率Nhは、独立に設定することが可能である。また、垂直拡大/インターポレーション回路200と水平拡大/インターポレーション回路202の接続の順序は、図14とは逆にすることも可能である。すなわち、まず、水平拡大/インターポレーション回路202で水平方向に拡大した後に、垂直拡大/インターポレーション回路200で垂直方向に拡大するようにしてもよい。
【0109】
以上のように、上記実施例では、第1の拡大/インターポレーション回路150で1から2の範囲内の第1の拡大率で拡大処理を行い、第2の拡大/インターポレーション回路152では整数である第2の拡大率で拡大処理を行っているので、これらの2つの拡大処理を組み合わせることによって、小数部を含む任意の拡大率で画像を拡大することが可能である。
【0110】
なお、この発明は上記の実施例や実施形態に限られるものではなく、その要旨を逸脱しない範囲において種々の態様において実施することが可能であり、例えば次のような変形も可能である。
【0111】
(1)上記実施例において、ハードウェアによって実現されていた構成の一部をソフトウェアに置き換えるようにしてもよく、逆に、ソフトウェアによって実現されていた構成の一部をハードウェアに置き換えるようにしてもよい。
【0112】
(2)上記実施例では、縮小時の画像の欠落現象の緩和と、拡大時の画像の太り現象の緩和とを、いずれも画像データの加重平均処理によって実現していたが、加重平均処理以外の種々の補間処理を使用して、画像の欠落現象や太り現象の緩和を実現することも可能である。補間処理としては、例えば幾何平均や直線補間、非直線補間などの種々の処理を利用できる。
【0113】
(3)縮小時の欠落ラインの補間処理は、欠落ラインと、欠落ラインに隣接する1本のラインとの2本のラインで補間を行う場合に限らず、一般に、これらの2本のラインを含む複数のラインを用いて補間を行うようにしてもよい。縮小時の欠落画素の補間処理も同様である。また、拡大時の追加ラインの補間処理についても、追加されるラインの前後に存在する2本のラインで補間を行う場合に限らず、一般に、追加されるラインに隣接する複数のラインを用いて補間を行えばよい。拡大時に追加画素の補間処理も同様である。
【図面の簡単な説明】
【図1】この発明の実施例としての画像処理装置の全体構成を示すブロック図。
【図2】ビデオプロセッサ38内の画像書込制御部の構成を示すブロック図。
【図3】ビデオプロセッサ38内の画像読出制御部の構成を示すブロック図。
【図4】画像書込時の縮小/フィルタリング処理の概要を示す説明図。
【図5】縮小/フィルタ回路66の内部構成を示すブロック図。
【図6】垂直縮小/フィルタ回路110における動作に関連する各種のパラメータの算出方法を示す説明図。
【図7】垂直縮小/フィルタ回路110の動作を示すタイミングチャート。
【図8】図3に示す拡大/フィルタ回路94の内部構成とその処理内容の概要を示す説明図。
【図9】第1の拡大/インターポレーション回路150によって行われる垂直方向の拡大/インターポレーション処理の概要を示す説明図。
【図10】第1の拡大/インターポレーション回路150の内部構成を示すブロック図。
【図11】第1の拡大/インターポレーション回路150の垂直拡大/インターポレーション回路160における動作に関連する各種のパラメータの算出方法を示す説明図。
【図12】第1の拡大/インターポレーション回路150の垂直拡大/インターポレーション回路160の動作を示すタイミングチャート。
【図13】第2の拡大/インターポレーション回路152によって行われる垂直方向の拡大/インターポレーション処理の概要を示す説明図。
【図14】第2の拡大/インターポレーション回路152の内部構成を示すブロック図。
【図15】第2の拡大/インターポレーション回路152の垂直拡大/インターポレーション回路200の動作を示すタイミングチャート。
【図16】従来の垂直方向の画像縮小処理の内容を示す説明図。
【図17】従来の垂直方向の画像拡大処理の内容を示す説明図。
【符号の説明】
30…ビデオセレクタ
32…同期分離回路
34…D変換器
36…フレームメモリ
38…ビデオプロセッサ
40…ビデオセレクタ
42…液晶ディスプレイ駆動回路
44…液晶ディスプレイパネル
46…メニュー生成回路
48…フォントROM
50…CPU
60…色変換回路
62…データセレクタ
64…ラインバッファ
66…縮小/フィルタ回路
68…書込画像調整回路
70…CPU書込制御回路
72…書込制御信号生成回路
74…画像書込条件レジスタ
76…書込クロック生成回路
80…フレームメモリ制御回路
90…読出制御信号生成回路
94…拡大/フィルタ回路
96…輝度/コントラスト調整回路
98…階調補正回路
100…CPU読出用ラインバッファ
102…CPU読出制御回路
104…読出画像調整回路
106…画像読出条件レジスタ
108…読出クロック生成回路
110…垂直縮小/フィルタ回路
112…水平縮小/フィルタ回路
120…垂直デシメーションフラグ生成回路
122…FIFOバッファ
124…加算器
126…乗算器
128…マルチプレクサ
130…水平デシメーションフラグ生成回路
132…バッファ
134…加算器
136…乗算器
138…マルチプレクサ
140…ラインアドレス発生回路
142…画素アドレス発生回路
150…第1の拡大/インターポレーション回路
152…第2の拡大/インターポレーション回路
160…垂直拡大/インターポレーション回路
162…水平拡大/インターポレーション回路
170…垂直インターポレーションフラグ生成回路
172…FIFOバッファ
174…加算器
176…乗算器
178…マルチプレクサ
180…水平インターポレーションフラグ生成回路
182…バッファ
184…加算器
186…乗算器
188…マルチプレクサ
190…ラインアドレス発生回路
192…画素アドレス発生回路
200…垂直拡大/インターポレーション回路
202…水平拡大/インターポレーション回路
210…重み算出回路
212…マルチプレクサ
214,216…FIFOバッファ
218…補間演算回路
220…重み算出回路
222…マルチプレクサ
224,226…バッファ
228…補間演算回路
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to an image processing apparatus having an image reduction / enlargement function.
[0002]
[Prior art]
In an image processing apparatus, an image reduction process or an enlargement process may be performed to adjust an image to a desired size. FIG. 16 is an explanatory diagram showing the contents of a conventional vertical image reduction process. In the original image shown in FIG. 16A, lines with line numbers 1, 4, and 7 are filled with black, and the other lines are white. The reduced image shown in FIG. 16B is obtained by reducing the original image by 0.8 times.
[0003]
[Problems to be solved by the invention]
In the reduced image shown in FIG. 16B, the lines with the line numbers 1 and 6 of the original image are missing, and as a result, one black horizontal line disappears. As can be seen from this example, in the conventional reduction processing in the vertical direction, some lines are simply lost, and as a result, thin line segments may be lost. For example, when an original image having line segments L1 to L3 having a width of one line as shown in FIG. 16C is reduced, the original line segment L3 is lost as shown in FIG. In some cases, it disappeared. Such a problem due to the lack of the image portion also occurred at the time of horizontal reduction.
[0004]
FIG. 17 is an explanatory diagram showing the contents of a conventional vertical image enlargement process. The original image shown in FIG. 17A is the same as that shown in FIG. The enlarged image shown in FIG. 17B is an enlargement of this original image by 1.25 times. In FIG. 17B, lines with line numbers 0 and 4 of the original image are added, and as a result, the width of these lines is doubled. As can be seen from this example, in the conventional vertical enlargement process, several lines are simply added, and thus there is a problem that the width of the lines in the image becomes excessively thick. Such a problem due to the addition of the image portion also occurred at the time of horizontal enlargement.
[0005]
Furthermore, in the conventional enlargement process, it is easy to enlarge an image to an integral multiple, but it is difficult to enlarge the image at an arbitrary magnification including a decimal part.
[0006]
The present invention has been made to solve the above-described problems in the prior art, and provides a technique that can alleviate the loss of the image part at the time of reduction and the weight of the image part at the time of enlargement. The purpose.
[0007]
It is a second object of the present invention to provide a technique capable of enlarging an image at an arbitrary magnification that can include a decimal part.
[0008]
[Means for solving the problems and their functions and effects]
In order to solve at least a part of the above-described problems, a first image processing apparatus of the present invention includes:
A frame memory for sequentially storing the moving image data while updating the moving image data according to the synchronization signal of the moving image data;
When the moving image data is written to the frame memory in accordance with a vertical reduction ratio set to an arbitrary value, the image represented by the moving image data is reduced in the vertical direction, and the synchronizing signal of the moving image data The first line missing due to the reduction is detected by determining whether or not the line is missing due to the reduction in the vertical direction for each line address that sequentially increases one by one in synchronization with the first address. A vertical reduction unit for correcting the image of the second line by interpolating a plurality of lines of moving image data including the second line and the second line adjacent to the first line;
A pixel address that reduces the image represented by the moving image data in the horizontal direction according to a horizontal reduction ratio set to an arbitrary value, and sequentially increases one by one in synchronization with the synchronizing signal of the moving image data A first pixel missing due to the reduction is detected by determining whether or not the pixel is missing due to the reduction in the horizontal direction every time, and the first pixel and the first pixel adjacent to the first pixel are detected. A horizontal reduction unit that corrects the image of the second pixel by interpolating moving image data of a plurality of pixels including two pixels.
The vertical reduction unit has the same value as the value of the write line address obtained by multiplying the line address that is sequentially increased one by one in synchronization with the synchronization signal of the moving image data and the vertical reduction rate to obtain an integer. It is determined whether or not the line specified by the line address that sequentially increases one by one is lost due to the reduction in the vertical direction depending on whether or not is repeated twice or more.
In addition, the horizontal reduction unit is a write pixel address value obtained by multiplying a pixel address that sequentially increases one by one in synchronization with the synchronization signal of the moving image data and the horizontal reduction rate to obtain an integer. As described above, it is determined whether or not the pixel specified by the pixel address that sequentially increases one by one is lost due to the reduction in the vertical direction depending on whether or not the same value is repeated twice or more.
[0009]
The vertical reduction unit in the first image processing apparatus can detect that the first line is lost due to the reduction, and can prevent the line information from being completely lost during the reduction. In addition, since interpolation processing is not performed on lines that are not adjacent to missing lines, image quality degradation due to missing lines can be alleviated without significantly degrading the sharpness of the image. Similarly, the horizontal reduction unit can prevent a pixel from being simply lost during reduction, and can alleviate a reduction in image quality due to a pixel loss without significantly degrading the sharpness of the image. Can do.
[0010]
In the first image processing apparatus,
Each of the vertical reduction part and the horizontal reduction part is
A buffer for storing a given amount of given image data;
A weighted average unit that generates third image data by performing weighted averaging of the first image data read from the buffer and second image data representing an image portion subsequent to the first image data. When,
A selection unit that selects and outputs one of a plurality of image data including the given second image data and the third image data output from the weighted average unit;
A selection signal generation unit that generates a selection signal indicating an image portion that is lost due to the reduction according to a reduction ratio of the image, and supplies the selection signal to the selection unit;
It is preferable to provide.
[0011]
In each of these reduction units, the selection unit selects one image data from a plurality of image data including the given second image data and the third image data generated by the weighted average unit. Since the data is output, it is possible to generate image data with reduced omission at the time of reduction in real time.
[0012]
The first image processing apparatus further includes:
It is preferable that a write address control unit that controls an increase in the write address given to the frame memory according to the selection signal is provided.
[0013]
In this way, it is possible to write the image data in which the omission at the time of reduction is reduced to an appropriate address in the frame memory.
[0014]
In the first image processing apparatus,
The reduction ratios in the vertical reduction portion and the horizontal reduction portion are values in the range of 0.5 to 1, respectively. Therefore, one image portion is missing at one place due to reduction in the vertical reduction portion. In addition, it is preferable that the image portion that is lost due to the reduction in the horizontal reduction portion is one pixel at one place.
[0015]
A second image processing apparatus of the present invention includes a frame memory for storing image data,
The image represented by the image data read from the frame memory is enlarged in the vertical direction, the first line added by the enlargement is detected, and the image data of a plurality of lines adjacent to the first line A vertical enlargement unit that generates image data of the first line by interpolating
The image represented by the image data is enlarged in the horizontal direction, the first pixel added by the enlargement is detected, and image data of a plurality of pixels adjacent to the first pixel and the first pixel is obtained. A horizontal enlargement unit that generates image data of the first pixel by interpolation;
Is provided.
[0016]
The vertical enlargement unit in the second image processing device has a plurality of line images including the first line and the second line adjacent to the first line when the first line is added by enlargement. A first line can be generated by interpolating the data. Accordingly, it is possible to prevent the line segment from being thickened simply by adding a line during enlargement. In addition, since the interpolation process is not performed on the lines that existed in the original image, it is possible to mitigate the deterioration of the image quality due to the enlargement of the lines without significantly degrading the sharpness of the image. Similarly, the horizontal enlargement unit can prevent the pixels from being simply fattened during enlargement, and can alleviate the deterioration of image quality due to the addition of pixels without significantly degrading the sharpness of the image. Can do.
[0017]
In the second image processing apparatus, each of the vertical enlargement unit and the horizontal enlargement unit includes:
A buffer for storing a given amount of given image data;
A weighted average unit that generates third image data by performing weighted averaging of the first image data read from the buffer and second image data representing an image portion subsequent to the first image data. When,
A selection unit that selects and outputs one of a plurality of image data including the given second image data and the third image data output from the weighted average unit;
A selection signal generation unit that generates a selection signal indicating an image portion that is added along with the enlargement according to an enlargement ratio of the image, and supplies the selection signal to the selection unit;
Is provided.
[0018]
In each enlargement unit, the selection unit selects and outputs one image data from a plurality of image data including the given second image data and the third image data generated by the weighted average unit. Therefore, it is possible to generate image data in which the fatness at the time of enlargement is reduced in real time.
[0019]
The second image processing apparatus further includes:
It is preferable that a read address control unit that controls an increase in the read address given to the frame memory according to the selection signal is provided.
[0020]
In this way, image data to be enlarged can be read from an appropriate address in the frame memory.
[0021]
In the second image processing apparatus,
The enlargement ratios in the vertical enlargement portion and the horizontal enlargement portion are values in the range of 1 to 2, respectively. Therefore, the image portion added with enlargement in the vertical enlargement portion is one line at one place. In addition, it is preferable that the image portion added along with the enlargement in the horizontal enlargement portion is one pixel at one place.
[0022]
The third image processing apparatus of the present invention
A first enlargement unit for enlarging the image according to a first enlargement factor in the range of 1 to 2,
A second enlargement unit that enlarges the image according to a second enlargement factor that is an integer,
The image is enlarged at a third enlargement ratio given by a product of the first and second enlargement ratios by enlarging the image in series with the first and second enlargement sections. Note that the order of image enlargement in the first and second enlargement portions is arbitrary, and enlargement by the second enlargement portion may be performed after enlargement by the first enlargement portion. After the enlargement by the enlargement unit, the enlargement by the first enlargement unit may be performed.
[0023]
Since the enlargement of the image with the first enlargement factor that can include the fractional part and the enlargement of the image with the second enlargement factor that is an integer are performed in series, the image is enlarged at an arbitrary magnification that can contain the fractional part. be able to.
[0024]
In the third image processing apparatus,
The first and second enlargement units execute image enlargement processing in series in this order,
The second enlargement unit executes the enlargement process so as to output image data at a second output speed obtained by multiplying the first output speed of the first enlargement part by the second enlargement factor. Is preferred.
[0025]
In this way, the second enlargement unit can sequentially enlarge the image data output from the first enlargement unit as it is, so that the enlargement process can be executed at high speed as a whole.
[0026]
DETAILED DESCRIPTION OF THE INVENTION
A. Overall configuration of the image processing device:
Next, embodiments of the present invention will be described based on examples. FIG. 1 is a block diagram showing the overall configuration of an image processing apparatus as an embodiment of the present invention. This image processing apparatus includes a first video selector 30, a sync separator circuit 32, n AD converters 34, a frame memory 36, a video processor 38, a second video selector 40, a liquid crystal The computer system includes a display drive circuit 42, a liquid crystal display panel 44, a menu generation circuit 46, a font ROM 48, and a CPU 50.
[0027]
The entire image processing apparatus is provided in a liquid crystal projector and is an apparatus for processing an image displayed on the liquid crystal display panel 44. The image displayed on the liquid crystal display panel 44 is projected on a projection screen using an optical system (not shown). The first video selector 30 is provided with a plurality of analog image signals V1 and V2, and one of them is selectively output according to the selection signal SEL1 provided from the video processor 38. As the plurality of analog image signals V1 and V2, for example, an image signal representing a computer screen output from a personal computer, a moving image signal output from a video recorder or a television, and the like are supplied. The synchronization separation circuit 32 separates the vertical synchronization signal VSYNC1 and the horizontal synchronization signal HSYNC1 from the analog image signal supplied from the first video selector 30, and outputs a component image signal (an image signal not including a synchronization signal). .
[0028]
The component image signal output from the sync separation circuit 32 is converted into a digital image signal by n AD converters 34. That is, n AD converters 34 are used while sequentially switching one by one, and each AD converter 34 uses an analog signal according to a sampling clock having a frequency 1 / n of the frequency of the original image signal. Is converted to a digital signal.
[0029]
The video processor 38 is a processor for writing / reading an image to / from the frame memory 36, and has a function of enlarging / reducing the image. Details of the internal configuration and functions of the video processor 38 will be described later. In addition to the digital image signal supplied from the A / D converter 34, the video processor 38 can also be supplied with a digital image signal DV3 output from another digital image output device.
[0030]
The digital image signal read from the frame memory 36 and processed by the video processor 38 is input to the second video selector 40. Another digital image signal output from the menu generation circuit 46 is also supplied to the second video selector 40. The menu generation circuit 46 generates a digital image signal representing a menu for the user to adjust the display state (brightness, contrast, synchronization, tracking, color density, hue) on the liquid crystal display panel 44. The font ROM 48 stores font data of characters used for this menu. The second video selector 40 switches and outputs the two input digital image signals in accordance with the selection signal SEL2 given from the video processor 38. As a result, the video selector 40 outputs a digital image signal DV4 representing a composite image in which the menu screen is superimposed in the image read from the frame memory 36.
[0031]
The digital image signal DV4 output from the video selector 40 is supplied to the liquid crystal display driving circuit 42. The liquid crystal display driving circuit 42 displays an image on the liquid crystal display 44 in accordance with the image signal DV4. Further, the liquid crystal display driving circuit 42 generates a vertical synchronizing signal VSYNC2 and a horizontal synchronizing signal HSYNC2 for image display and outputs them to other circuits.
[0032]
Reading of the image signal from the frame memory 36 and processing of the read image signal are performed in synchronization with the synchronization signals VSYNC2 and HSYNC2 output from the liquid crystal display driving circuit 42. On the other hand, the above-described sampling in the A / D converter 34 and processing for writing an image signal in the frame memory 36 are performed in synchronization with the synchronization signals VSYNC 1 and HSYNC 1 separated by the synchronization separation circuit 32. The first synchronization signals VSYNC1 and HSYNC1 and the second synchronization signals VSYNC2 and HSYNC2 are asynchronous with each other. Of course, as the first synchronization signals VSYNC1 and HSYNC1 and the second synchronization signals VSYNC2 and HSYNC2, signals synchronized with each other can be used.
[0033]
As described above, the process from receiving the image signal from the outside to writing to the frame memory 36 is performed by the first synchronization signals VSYNC1 and HSYNC1, and the process from reading the image signal from the frame memory 36 to displaying the image is performed. Since the first synchronization signal is synchronized with the second synchronization signal VSYNC2 or HSYNC2 that is synchronous or asynchronous, the frequency value of the input image signal is relatively wide regardless of the frequency of the image signal for display. Range values can be tolerated. That is, it is possible to perform a process of writing the input image signal into the frame memory 36 according to the frequency of the synchronization signals VSYNC1 and HSYNC1 of the input image signal while keeping the frequency of the output image signal for display constant. Such an advantage is particularly beneficial when the frequency range of the input image signal can be very wide.
[0034]
B. Internal configuration of the video processor 38:
FIG. 2 is a block diagram showing the configuration of the image writing control unit in the video processor 38. The image writing control unit includes a color conversion circuit 60, a data selector 62, n line buffers 64, a reduction / filter circuit 66, a writing image adjustment circuit 68, a CPU writing control circuit 70, a writing An image write condition register 74, a write clock generation circuit 76, and a frame memory control circuit 80.
[0035]
The color conversion circuit 60 receives n component image signals output from the n A / D converters 34. As this component image signal, various types of signals such as YUV signals and RGB signals can be input. The color conversion circuit 60 has a function of converting YUV signals into RGB signals when they are input. When an RGB signal is input to the color conversion circuit 60, the color conversion circuit 60 outputs the RGB signal as it is.
[0036]
The data selector 62 selects and outputs one of the RGB signal output from the color conversion circuit 60 and another RGB signal DV3 (FIG. 1) given through the bus. The selection signal given to the data selector 62 is supplied from the CPU 50.
[0037]
The line buffer 64 has n buffer elements equal to the number of AD converters 34. Since a color image is represented by three color image signals of RGB, n line buffers 64 are provided for each color of RGB. The line buffer 64 is a memory for temporarily storing n parallel image signals generated by the AD converter 34.
[0038]
The reduction / filter circuit 66 reduces the image written in the frame memory 36 in the vertical and horizontal directions, and performs a filtering process for missing lines and missing pixels at the time of reduction. The internal configuration and operation of the reduction / filter circuit 66 will be further described later.
[0039]
The write control signal generation circuit 72 has a function of generating an address and a control signal for writing an image signal to the frame memory 36 and supplying the address and control signal to the frame memory control circuit 80. The frame memory control circuit 80 has a function of mediating writing and reading of image signals to and from the frame memory 36. That is, the frame memory control circuit 80 has a write address and control signal given from the write control signal generation circuit 72, and a read address and control signal given from a read control signal generation circuit of the image read control unit described later. These are supplied to the frame memory 36 in response to the control signal.
[0040]
The write image adjustment circuit 68 has a function of adjusting the vertical and horizontal sizes of the image written in the frame memory 36 and the position of the write target area in the memory space of the frame memory 36. The adjustment of the image size is realized by supplying reduction ratios in the vertical and horizontal directions of the image to the reduction / filter circuit 66 and causing the reduction / filter circuit 66 to reduce the image. Further, the position of the write target area in the frame memory 36 is realized by supplying the write start address from the write image adjustment circuit 68 to the write control signal generation circuit 72. The write control signal generation circuit 72 sequentially generates a write address in the write target area, starting from this write start address. The written image adjustment circuit 68 further generates an address to be supplied to the line buffer 64.
[0041]
The CPU write control circuit 70 is a circuit for generating an address and a control signal for writing the digital image signal DV3 given through the bus to the frame memory 36. The image writing condition register 74 is a register that stores various conditions for writing an image signal to the frame memory 36. These conditions are set by the CPU 50 via the bus. In FIG. 2, blocks marked with “*” execute their respective processes according to the conditions set in the image writing condition register 74. That is, the writing conditions registered in the image writing condition register 74 include the presence / absence of color conversion in the color conversion circuit 60, the type of color conversion, the selection in the data selector 62, the reduction rate in the reduction / filter circuit 66, and the frame memory. 36 write start positions, etc.
[0042]
The write clock generation circuit 76 generates the dot clock signal DCLK1 according to the horizontal synchronization signal HSYNC1 supplied from the synchronization separation circuit 32 (FIG. 1). The write clock generation circuit 76 has a PLL circuit (not shown). The frequency division ratio in this PLL circuit is given from the image writing condition register 74. The processing in the image writing control unit shown in FIG. 2 is executed in synchronization with the dot clock signal DCLK1 and the synchronization signals VSYNC1 and HSYNC1.
[0043]
FIG. 3 is a block diagram showing the configuration of the image reading control unit in the video processor 38. The image read control unit includes a frame memory control circuit 80, a read control signal generation circuit 90, an enlargement / filter circuit 94, a brightness / contrast adjustment circuit 96, a gradation correction circuit 98, and a CPU read line buffer 100. CPU read control circuit 102, read image adjustment circuit 104, image read condition register 106, and read clock generation circuit 108.
[0044]
The frame memory control circuit 80 shown in FIG. 3 is the same as that shown in FIG. The read control signal generation circuit 90 has a function of generating an address and a control signal for reading an image signal from the frame memory 36 and supplying the address and control signal to the frame memory control circuit 80. The enlargement / filter circuit 94 enlarges the image read from the frame memory 36 in the vertical and horizontal directions, and performs a filtering process on lines added and pixels added at the time of enlargement. The internal configuration and operation of the enlargement / filter circuit 94 will be further described later. Note that when reading out an image, the image can be reduced by thinning out the read address. Such image reduction processing is executed by the read control signal generation circuit 90.
[0045]
The brightness / contrast adjustment circuit 96 has a function of adjusting the brightness and contrast of the displayed image. The gradation correction circuit 98 performs gradation correction such as gamma correction using a look-up table.
[0046]
The CPU read line buffer 100 is a buffer used when reading an image signal from the frame memory 36 onto the bus. When reading out an image signal on the bus, the CPU read control circuit 102 generates an address and a control signal.
[0047]
The read image adjustment circuit 104 has a function of adjusting the vertical and horizontal sizes of the image read from the frame memory 36 and the position of the read target area in the memory space of the frame memory 36. The adjustment of the image size is realized by supplying the enlargement / filter circuit 94 with enlargement ratios in the vertical direction and the horizontal direction of the image and causing the enlargement / filter circuit 94 to enlarge the image. The position of the read target area in the frame memory 36 is realized by supplying a read start address from the read image adjustment circuit 104 to the read control signal generation circuit 90. The read control signal generation circuit 90 sequentially generates read addresses in the read target area, starting from this read start address.
[0048]
The image reading condition register 106 is a register that stores various conditions for reading an image signal from the frame memory 36. These conditions are set by the CPU 50 via the bus. In FIG. 3, blocks marked with “**” execute their respective processes according to the conditions set in the image reading condition register 106. That is, the reading conditions registered in the image reading condition register 106 include the reading start position of the frame memory 36, the enlargement ratio in the enlargement / filter circuit 94, the adjustment parameter in the luminance / contrast adjustment circuit 96, and the correction in the gradation correction circuit 98. Parameters, etc.
[0049]
The read clock generation circuit 108 generates the dot clock signal DCLK2 in accordance with the horizontal synchronization signal HSYNC2 supplied from the liquid crystal display drive circuit 42 (FIG. 1). The read clock generation circuit 108 has a PLL circuit (not shown) inside. The frequency division ratio in the PLL circuit is given from the image reading condition register 106. 3 is executed in synchronization with the dot clock signal DCLK2 and the synchronization signals VSYNC2 and HSYNC2.
[0050]
C. Internal configuration and operation of the reduction / filter circuit 66:
FIG. 4 is an explanatory diagram showing an outline of vertical reduction / filtering processing at the time of image writing performed by the reduction / filter circuit 66. 4A shows the original image, FIG. 4B shows the reduced image reduced by the conventional method, and FIG. 4C shows the reduced image reduced by the reduction / filter circuit 66 of the embodiment. Is shown.
[0051]
On the left side of each image, the line address LAD of the original image is written. The reduced image shown in FIG. 4B is the same as the reduced image shown in FIG. 16B described in the related art. As described above, in the conventional reduction process, the lines with the original line addresses of 1 and 6 are missing. For this reason, as described in FIGS. 16C and 16D, important lines in the image may disappear.
[0052]
On the other hand, as shown in FIG. 4C, in the reduction / filtering process by the reduction / filter circuit 66 of the embodiment, the missing line addresses 1 and 6 are weighted and averaged with the adjacent lines. For example, the line at line address 1 is weighted and averaged with the immediately preceding line (line at line address 0). Therefore, the line at line address 1 does not disappear completely, and a line segment of a slightly lighter color than the original line segment remains in the reduced image. That is, the reduction / filter circuit 66 according to the embodiment can prevent the line segment having the width of one pixel from completely disappearing from the reduced image. The filtering process executed in the reduction / filter circuit 66 means a process of weighted average of image signals for two adjacent lines.
[0053]
FIG. 5 is a block diagram showing the internal configuration of the reduction / filter circuit 66. The reduction / filter circuit 66 includes a vertical reduction / filter circuit 110 and a horizontal reduction / filter circuit 112. Note that the line address generation circuit 140 and the pixel address generation circuit 142 shown in FIG. 5 are circuits included in the write control signal generation circuit 72 shown in FIG.
[0054]
The vertical reduction / filter circuit 110 includes a vertical decimation flag generation circuit 120, a FIFO buffer 122, an adder 124, a multiplier 126, and a multiplexer 128. In this specification, “decimation” means image reduction processing or thinning-out processing. The horizontal reduction / filter circuit 112 has substantially the same configuration as that of the vertical reduction / filter circuit 110, and includes a horizontal decimation flag generation circuit 130, a buffer 132, an adder 134, a multiplier 136, and a multiplexer 138. have. However, the FIFO buffer 122 of the vertical reduction / filter circuit 110 has a capacity for storing an image signal for one line, whereas the buffer 132 of the horizontal reduction / filter circuit 112 receives an image signal for one pixel. It has the capacity to store.
[0055]
The vertical decimation flag generation circuit 120 receives the line address LAD and the vertical reduction ratio Rwv at the time of writing from the write image adjustment circuit 68 (FIG. 2). The line address LAD is the same as the line address given from the write image adjustment circuit 68 to the line buffer 64 in order to read the image signal from the line buffer 64 shown in FIG. The vertical decimation flag generation circuit 120 performs a calculation described later according to the line address LAD and the vertical reduction rate Rwv to generate a vertical decimation flag Fwv. The vertical decimation flag Fwv is supplied to the FIFO buffer 122, the multiplexer 128, and the line address generation circuit 140.
[0056]
The image signal Va for one line supplied from the line buffer 64 (FIG. 2) is stored in the FIFO buffer 122. The image signal stored in the FIFO buffer 122 is read from the FIFO buffer 122 when the image signal of the next line is supplied from the line buffer 64. Accordingly, the image signal Vb read from the FIFO buffer 122 is an image signal one line before the image signal Va supplied from the line buffer 64. The adder 124 adds the image signal Va supplied from the line buffer 64 and the image signal Vb read from the FIFO buffer 122, and the added image signal is multiplied by ½ in the multiplier 126. It is done. The image signal Vab output from the multiplier 126 is an average of the image signal Va given from the line buffer 64 and the image signal Vb one line before. This averaged image signal Vab is input to the B input terminal of the multiplexer 128. The image signal Va supplied from the line buffer 64 is input to the A input terminal of the multiplexer 128 as it is. The multiplexer 128 selects and outputs one of the two input image signals Va and Vab according to the level of the vertical decimation flag Fwv.
[0057]
FIG. 6 is an explanatory diagram showing a method for calculating various parameters related to the operation of the vertical reduction / filter circuit 110. Here, Rwv represents the vertical reduction ratio, LAD represents the original line address, WLAD represents the write line address given to the frame memory 36, and Fwv represents the vertical decimation flag generated by the vertical decimation flag generation circuit 120. MPX indicates the selected state of the input terminal A / B of the multiplexer 128, and Vout1 indicates which line the image data output from the multiplexer 128 corresponds to.
[0058]
The write line address WLAD is given as an integer value obtained by multiplying the vertical reduction ratio Rwv by the original line address LAD. In the example of FIG. 6, since the vertical reduction ratio Rwv is 0.8, the write line address WLAD is 0, 0, 1, 2,. The vertical decimation flag Fwv becomes H level when the value of the write line address WLAD is repeated twice or more, and becomes L level otherwise. That is, each time the line address LAD is updated, the vertical decimation flag generation circuit 120 multiplies the line address LAD and the vertical reduction ratio Rwv, and if the multiplication result WLAD is the same as the previous multiplication result, the vertical decimation flag generation circuit 120 Raise decimation flag Fwv to H level. On the other hand, when the multiplication result WLAD is different from the previous multiplication result, the vertical decimation flag Fwv is lowered to the L level. In the example of FIG. 6, it can be seen that the vertical decimation flag Fwv is at the H level when the original line address LAD is 1 and 6. As shown in FIG. 4B, the lines with the line addresses LAD of 1 and 6 are missing lines in the conventional simple reduction process. Therefore, the vertical decimation flag Fwv is a signal indicating a line that is lost as a result of reduction.
[0059]
The selection state of the multiplexer 128 (FIG. 5) is switched according to the level of the vertical decimation flag Fwv. That is, as shown in the column “MPX” in FIG. 6, when the vertical decimation flag Fwv is at L level, the image signal Va input from the A terminal of the multiplexer 128 is selected and output. On the other hand, when the vertical decimation flag Fwv is at the H level, the image signal Vab input to the B terminal of the multiplexer 128 is selected and output. As described above, the image signal Va input to the A terminal is an image signal supplied from the line buffer 64, and the image signal Vab input to the B terminal is the image signal Va and one line before it. The image signal Vb is an averaged signal. Therefore, when the vertical decimation flag Fwv is at the H level, the multiplexer 128 selects and outputs the signal Vab obtained by averaging the image signal Va of the missing line and the image signal Vb of the previous line. For example, in the example of FIG. 6, when the image signal Va of the line whose original line address LAD is 1 is input, two lines L1 and L2 whose line addresses LAD are 0 and 1 are averaged as the output image signal Vout1. The image signal Vab is output. When the vertical decimation flag Fwv is at L level, the image signal Va supplied from the line buffer 64 is output as it is.
[0060]
As shown in FIG. 5, the vertical decimation flag Fwv is also supplied to the line address generation circuit 140. The line address generation circuit 140 is a circuit included in the write control signal generation circuit 72 (FIG. 2), and actually generates a write line address WLAD to be given to the frame memory 36. When the vertical decimation flag Fwv is at L level, the write line address is updated in synchronization with the update of the line address LAD in the line buffer 64. On the other hand, when the vertical decimation flag Fwv is at the H level, the update of the write line address WLAD is prohibited, and the write line address WLAD is kept at the same value. Accordingly, when the vertical decimation flag Fwv is at the H level, the write line address WLAD is kept the same as the previous line, so that the frame memory 36 stores the next line on the image signal of the previous line. An image signal is written. For example, in FIG. 6, an image signal obtained by averaging two lines L0 and L1 having a line address LAD of 0 and 1 is overwritten on an image signal of the line L0 having a line address LAD of 0.
[0061]
Instead of controlling the update of the write line address WLAD in the line address generation circuit 140 according to the level of the vertical decimation flag Fwv as described above, the write address of the write line address WLAD is uniquely determined in the line address generation circuit 140. It is also possible to control the update. In this case, the line address generation circuit 140 may be provided with a circuit substantially similar to the vertical decimation flag generation circuit 120 so as to generate a signal equivalent to the vertical decimation flag Fwv.
[0062]
FIG. 7 is a timing chart showing the operation of the vertical reduction / filter circuit 110. 7A shows a line address in the line buffer 64, FIG. 7B shows a write line address LAD, and FIG. 7C shows a vertical decimation flag Fwv. The write control signal FW # shown in FIG. 7D and the read control signal FR # shown in FIG. 7E are signals that permit writing and reading in the FIFO buffer 122, and are supplied from a FIFO control circuit (not shown). ing. These signals FW # and FR # are negative logic, and writing and reading of image signals are permitted only when they are at the L level. As can be seen from FIGS. 7C to 7E, when the vertical decimation flag Fwv is at the L level, writing of the image signal to the FIFO buffer 122 is permitted and reading from the FIFO buffer 122 is prohibited. Is done. On the other hand, in the line where the vertical decimation flag Fwv is at the H level, writing of the image signal to the FIFO buffer 122 is prohibited and reading from the FIFO buffer 122 is permitted.
[0063]
As shown in FIGS. 7A and 7F, the line address LAD of the image signal Va supplied from the line buffer 64 to the vertical reduction / filter circuit 110 sequentially increases one by one. Further, as shown in FIG. 7G, the image signal Vb is read from the FIFO buffer 122 only when the vertical decimation flag Fwv is at the H level. When the original line address LAD is 1, the image signal Va shown in FIG. 7 (f) and the image signal Vb shown in FIG. 7 (g) are added and averaged, and the image signal Vab shown in FIG. Created. The image signal Vab is output from the multiplexer 128 (FIG. 7 (i)).
[0064]
As described above, in the vertical reduction / filter circuit 110 shown in FIG. 5, the line missing in the conventional simple reduction process is averaged with the previous line to obtain information on these two lines. Generate one line containing. As a result, since one line is not completely lost, it is possible to prevent an important line segment of one horizontal line from being lost in the reduced image. In addition, since the filtering process (addition averaging process) is not performed on the line that is not adjacent to the line that is missing due to the reduction, the sharpness of the image is not significantly deteriorated by the filtering process.
[0065]
Further, since the vertical reduction / filter circuit 110 uses only the FIFO buffer 122 for one line as a buffer memory for temporarily storing image signals, the buffer memory capacity can be relatively small. There is. Furthermore, since the vertical reduction / filter circuit 110 can output the image signals sequentially supplied for each line while filtering in real time, the moving image signal can be processed and output at high speed.
[0066]
The horizontal reduction / filter circuit 112 shown in FIG. 5 has substantially the same configuration as the vertical reduction / filter circuit 110, and the FIFO buffer 122 of the vertical reduction / filter circuit 110 has a storage capacity of one line. On the other hand, the buffer 132 of the horizontal reduction / filter circuit 112 is different only in that it has a storage capacity for one pixel. Therefore, the contents of the reduction / filtering process are almost the same. In the description of the vertical reduction / filter circuit 110 described above, the operation can be easily understood by replacing “1 line” with “1 pixel”. That is, the horizontal reduction / filter circuit 112 performs horizontal reduction processing and filtering processing on the image signal Vout1 output from the vertical reduction / filter circuit 110 in parallel. This process is executed according to the level of the horizontal decimation flag Rwh generated by the horizontal decimation flag generation circuit 130. The pixel address generation circuit 142 controls the update of the write pixel address MPAD of the frame memory 36 according to the level of the horizontal decimation flag Rwh. As a result, one pixel including the information of these two pixels is generated by averaging the pixel missing in the conventional simple reduction process with the previous pixel. As a result, since one pixel is not completely lost, it is possible to prevent an important line segment having a width of one pixel from being lost in the reduced image. Further, since the filtering process (addition averaging process) is not performed on the pixels that are not adjacent to the pixels that are missing due to the reduction, the sharpness of the image is not significantly deteriorated by the filtering process.
[0067]
The vertical reduction ratio Rwv in the vertical reduction / filter circuit 110 and the horizontal reduction ratio Rwh in the horizontal reduction / filter circuit 112 can be set independently. Further, the effect of preventing the loss of lines and pixels due to the reduction is significant when the reduction ratios are in the range of 0.5 to 1, respectively. This is because only one line or one pixel is lost at one place in this range. Of course, the reduction ratio can be set to any value below this.
[0068]
Note that the vertical reduction / filter circuit 110 and horizontal reduction / filter circuit 112 shown in FIG. 5 use circuits (adders 124 and 134 and multipliers 126 and 136) that perform simple addition averaging of two image data, respectively. However, you may make it utilize the circuit which performs a weighted addition average (namely, weighted average).
[0069]
Also, the arrangement of the vertical reduction / filter circuit 110 and the horizontal reduction / filter circuit 112 can be reversed from that shown in FIG. That is, first, the image may be reduced in the horizontal direction by the horizontal reduction / filter circuit 112 and then reduced in the vertical direction by the vertical reduction / filter circuit 110.
[0070]
D. Overview of the configuration and operation of the enlargement / filter circuit 94:
FIG. 8 is an explanatory diagram showing the outline of the internal configuration of the enlargement / filter circuit 94 for enlarging the image read from the frame memory 36 and the processing contents thereof. The expansion / filter circuit 94 includes two expansion / interpolation circuits 150 and 152 connected in series. The first enlargement / interpolation circuit 150 performs processing for enlarging the input image signal V1 by M1 and interpolating and generating an image portion added by enlargement from the image portions before and after the enlargement. The first enlargement factor M1 is a value in the range of 1 to 2. The second enlargement / interpolation circuit 152 enlarges the image signal V2 supplied from the first enlargement / interpolation circuit 150 to M2 times, and the image portion added by the enlargement is the image portion before and after the image portion. The process which interpolates and produces | generates from is performed. The second enlargement factor M2 is an integer. As shown in FIG. 8D, the enlargement ratio of the image output from the second enlargement / interpolation circuit 152 is equal to the product of the two enlargement ratios M1 and M2.
[0071]
In this way, the first enlargement / interpolation circuit 150 that enlarges the image at the first enlargement factor M1 in the range of 1 to 2 and the second enlargement of the image at the second enlargement factor M2 that is an integer. If the enlargement / interpolation circuit 152 is provided in series, appropriate processing corresponding to the range of each enlargement ratio can be performed as will be described in detail below. As a result, it is possible to enlarge an image with an arbitrary enlargement ratio (M1 × M2) including a fractional part without significantly reducing the image quality.
[0072]
E. Configuration and operation of the first expansion / interpolation circuit 150:
FIG. 9 is an explanatory diagram showing an outline of the vertical enlargement / interpolation process performed by the first enlargement / interpolation circuit 150. 9A shows the original image, FIG. 9B shows the enlarged image enlarged by the conventional method, and FIG. 9C shows the first enlargement / interpolation circuit 150 of the embodiment. An enlarged image is shown.
[0073]
On the left side of each image, a read line address RLAD for reading the image from the frame memory 36 is written. The reduced image in FIG. 9B is the same as the reduced image in FIG. 17B described in the related art. As described above, in the conventional enlargement process, the lines with the original line addresses of 0 and 4 are simply added. For this reason, there has been a problem that the width of the line included in the image becomes excessively thick.
[0074]
On the other hand, as shown in FIG. 9C, in the enlargement / interpolation process by the first enlargement / interpolation circuit 150 of the embodiment, the added line exists before and after the added line. Generated by weighted average of two lines of image. For example, the lines added between line addresses 4 and 5 are generated by a weighted average of these lines. Therefore, the line at line address 4 is not simply thickened, but a slightly lighter line is added. That is, in the first enlargement / interpolation circuit 150 of the embodiment, it is possible to prevent the line segment in the image from simply becoming thick due to enlargement. The interpolation process executed in the first enlargement / interpolation circuit 150 means a process of weighted averaging image signals for two lines existing before and after the added line.
[0075]
FIG. 10 is a block diagram showing an internal configuration of the first enlargement / interpolation circuit 150. The first enlargement / interpolation circuit 150 includes a vertical enlargement / interpolation circuit 160 and a horizontal enlargement / interpolation circuit 162. The line address generation circuit 190 and the pixel address generation circuit 192 shown in FIG. 10 are circuits included in the read control signal generation circuit 90 shown in FIG.
[0076]
The vertical enlargement / interpolation circuit 160 includes a vertical interpolation flag generation circuit 170, a FIFO buffer 172, an adder 174, a multiplier 176, and a multiplexer 178. The horizontal enlargement / interpolation circuit 162 has substantially the same configuration as the vertical enlargement / interpolation circuit 160, and includes a horizontal interpolation flag generation circuit 180, a buffer 182, an adder 184, and a multiplier. 186 and multiplexer 188. However, the FIFO buffer 172 of the vertical enlargement / interpolation circuit 160 has a capacity for storing an image signal for one line, whereas the buffer 182 of the horizontal enlargement / interpolation circuit 162 has a capacity for one pixel. Have a capacity to store the image signal.
[0077]
As can be seen by comparing FIG. 10 with FIG. 5, the vertical enlargement / interpolation circuit 160 shown in FIG. 10 uses the vertical decimation flag generation circuit 120 of the vertical reduction / filter circuit 110 shown in FIG. The configuration is replaced with the generation circuit 170. Further, the horizontal enlargement / interpolation circuit 162 shown in FIG. 10 has a configuration in which the horizontal decimation flag generation circuit 130 of the horizontal reduction / filter circuit 112 shown in FIG. Yes.
[0078]
The vertical interpolation flag generation circuit 170 receives the line address LAD and the first enlargement factor Rrv in the vertical direction during reading from the read image adjustment circuit 104 (FIG. 3). The line address LAD is sequentially incremented by one every time one line is processed by the vertical enlargement / interpolation circuit 160. The line address LAD is an address different from that shown in FIG. 5, but the same reference numerals are used for convenience of illustration. The vertical interpolation flag generation circuit 170 performs a calculation described later according to the line address LAD and the vertical enlargement ratio Rrv to generate a vertical interpolation flag Frv. The vertical interpolation flag Frv is supplied to the FIFO buffer 172, the multiplexer 178, and the line address generation circuit 190.
[0079]
The image signal Ua for one line read from the frame memory 36 is stored in the FIFO buffer 172. The image signal stored in the FIFO buffer 172 is read from the FIFO buffer 172 when the image signal of the next line is supplied from the frame memory 36. Therefore, the image signal Ub read from the FIFO buffer 172 is an image signal one line before the image signal Ua read from the frame memory 36. The adder 174 adds the image signal Ua read from the frame memory 36 and the image signal Ub read from the FIFO buffer 172. The added image signal is multiplied by 1/2 in the multiplier 176. That is, the image signal Uab output from the multiplier 176 is an average of the image signal Ua read from the frame memory 36 and the image signal Ub one line before. The averaged image signal Uab is input to the B input terminal of the multiplexer 178. The image signal Ua read from the frame memory 36 is input to the A input terminal of the multiplexer 178 as it is. The multiplexer 178 selects and outputs one of the two input image signals Ua and Uab according to the level of the vertical interpolation flag Frv.
[0080]
FIG. 11 is an explanatory diagram showing a method for calculating various parameters related to the operation of the vertical enlargement / interpolation circuit 160. Here, Rrv represents a vertical enlargement ratio, LAD is a line address that is sequentially updated, LAD / Rrv is a result of dividing the line address LAD by the vertical enlargement ratio Rrv, and RLAD is given to the frame memory 36. The read line address, LFIFO is the original line of the image signal stored in the FIFO buffer 172, Frv is the vertical interpolation flag generated by the vertical interpolation flag generation circuit 170, and MPX is the input of the multiplexer 178. The selection state of the terminal A / B, and Uout1 indicate the original line address of the image data output from the multiplexer 178, respectively. Note that the line address LAD that is sequentially updated one by one can be considered to indicate the line number of the image output from the vertical enlargement / interpolation circuit 160.
[0081]
The value “LAD / Rrv” in the third column from the left in FIG. 11 is a value obtained by converting the line address LAD by the vertical enlargement ratio Rrv into an integer. In the example of FIG. 11, since the vertical enlargement ratio Rrv is 1.25, the division result LAD / Rrv is 0, 0, 1, 2,. As indicated by an arrow in FIG. 11, the vertical interpolation flag Frv becomes H level when the value of the division result LAD / Rrv is repeated twice or more, and becomes L level otherwise. That is, every time the line address LAD is updated, the vertical interpolation flag generation circuit 170 divides the line address LAD and the vertical enlargement ratio Rrv, and the division result (LAD / Rrv) is the same as the previous division result. In this case, the vertical interpolation flag Frv is raised to H level. On the other hand, when the division result is different from the previous result, the vertical interpolation flag Frv is lowered to the L level. In the example of FIG. 11, it can be seen that when the original line address LAD is 1 and 6, the vertical interpolation flag Frv is at the H level. As shown in FIG. 9B described above, the lines whose line addresses LAD are 1 and 6 are lines added by a conventional simple enlargement process. Therefore, the vertical interpolation flag Frv is a signal indicating a line to be added with enlargement.
[0082]
The selection state of the multiplexer 178 (FIG. 10) is switched according to the level of the vertical interpolation flag Frv. That is, as shown in the column “MPX” in FIG. 11, when the vertical interpolation flag Frv is at the L level, the image signal Ua input from the A terminal of the multiplexer 178 is selected and output. On the other hand, when the vertical interpolation flag Frv is at the H level, the image signal Uab input to the B terminal of the multiplexer 178 is selected and output. As described above, the image signal Ua input to the A terminal is an image signal being read from the frame memory 36, and the image signal Uab input to the B terminal is the image signal Ua and one line before it. The image signal Ub is an averaged signal. Therefore, when the vertical interpolation flag Frv is at the H level, the multiplexer 178 generates a signal Uab obtained by averaging the image signal Ua of the line read from the frame memory 36 and the image signal Ub of the previous line. Selected and output. For example, in the example of FIG. 11, when the image signal Ua of the line whose original line address LAD is 1 is input, an image obtained by averaging two lines whose line addresses LAD are 0 and 1 as the output image signal Uout1 Signal Uab is output. On the other hand, when the vertical interpolation flag Frv is at the L level, the image signal Ua read from the frame memory 36 is output as it is.
[0083]
As shown in FIG. 10, the vertical interpolation flag Frv is also supplied to the line address generation circuit 190. The line address generation circuit 190 is a circuit included in the read control signal generation circuit 90 (FIG. 3), and actually generates a read line address RLAD to be given to the frame memory 36. As shown in FIG. 11, when the vertical interpolation flag Frv is at L level, the read line address RLAD is updated in synchronization with the update of the original line address LAD in the next line. . On the other hand, when the vertical interpolation flag Frv is at the H level, as shown by an arrow in FIG. 11, the update of the read line address RLAD is prohibited in the next line, and the read line address RLAD is kept at the same value. Be drunk. Therefore, when the vertical interpolation flag Frv is at the H level, the read line address RLAD is kept the same as the previous line, so that the image signal of the same line as the previous time is read from the frame memory 36. For example, in FIG. 11, when the line address LAD is 1 and 2, the image signal of the line whose read line address RLAD is 1 is read out twice in succession.
[0084]
As shown in the column “LFIFO” in FIG. 11, the image signal of the line immediately before the line currently read from the frame memory 36 is read from the FIFO buffer 172.
[0085]
Instead of controlling the update of the read line address RLAD in the line address generation circuit 190 according to the level of the vertical interpolation flag Frv as described above, the update of the read line address RLAD in the line address generation circuit 190 is performed. It is also possible to control it independently.
[0086]
FIG. 12 is a timing chart showing the operation of the vertical enlargement / interpolation circuit 160. 12A shows the line address LAD of the output image signal, FIG. 12B shows the read line address RLAD, and FIG. 12C shows the vertical interpolation flag Frv. The write control signal FW # shown in FIG. 12D and the read control signal FR # shown in FIG. 12E are signals that permit writing and reading in the FIFO buffer 172, and are supplied from a FIFO control circuit (not shown). ing. These signals FR # and FW # are negative logic, and writing and reading of image signals are permitted only when the signals are at the L level. As can be seen from FIGS. 12C to 12E, when the vertical interpolation flag Frv is at the L level, the writing of the image signal to the FIFO buffer 172 is permitted and the reading from the FIFO buffer 172 is performed. Is prohibited. On the other hand, in the line where the vertical interpolation flag Frv is at the H level, writing of the image signal to the FIFO buffer 172 is prohibited and reading from the FIFO buffer 172 is permitted.
[0087]
As shown in FIG. 12 (f), the address of the line of the image signal Ua read from the frame memory 36 is not updated when the vertical interpolation flag Frv is at the H level, and is incremented by 1 when the vertical interpolation flag Frv is at the L level. To do. On the other hand, as shown in FIG. 12G, the image signal Ub is read from the FIFO buffer 172 only when the vertical interpolation flag Frv is at the H level. When the line address LAD of the image output from the first enlargement / interpolation circuit 150 is 1, the image signal Ua of the line R0 shown in FIG. 12F and the image of the line R1 shown in FIG. The signal Ub is added and averaged to generate the image signal Uab shown in FIG. The image signal Uab is output from the multiplexer 178 (FIG. 12 (i)).
[0088]
As described above, the vertical enlargement / interpolation circuit 160 shown in FIG. 10 generates a line that has been simply added in the conventional enlargement process by adding and averaging two lines existing before and after the line. As a result, it is possible to prevent the horizontal line in the image from becoming simply thick. In addition, since the interpolation process (addition averaging process) is not performed for lines that are not adjacent to the line added by enlargement, the sharpness of the image is not significantly deteriorated by the interpolation process.
[0089]
Further, since the vertical enlargement / interpolation circuit 160 only uses the FIFO buffer 172 for one line as a buffer memory for temporarily storing image signals, the capacity of the buffer memory can be relatively small. There is an advantage. Furthermore, since the vertical enlargement / interpolation circuit 160 can output the image signals sequentially supplied for each line while filtering in real time, the moving image signal can be processed and output at high speed.
[0090]
The horizontal enlargement / interpolation circuit 162 shown in FIG. 10 has substantially the same configuration as the vertical enlargement / interpolation circuit 160. Accordingly, the contents of the enlargement / interpolation process are almost the same. In the description of the vertical enlargement / interpolation circuit 160 described above, the operation can be easily understood by replacing “1 line” with “1 pixel”. . The horizontal enlargement / interpolation circuit 162 can prevent the lines in the image from becoming excessively thick as the image is enlarged. In addition, since the interpolation process (addition averaging process) is not performed for pixels that are not adjacent to the pixel added by enlargement, the sharpness of the image is not significantly deteriorated by the interpolation process.
[0091]
The vertical enlargement ratio Rrv in the vertical enlargement / interpolation circuit 160 and the horizontal enlargement ratio Rrh in the horizontal enlargement / interpolation circuit 162 can be set independently. Further, the effect of preventing the line segment from being enlarged due to enlargement is remarkable when these enlargement ratios are in the range of 1 to 2, respectively. This is because in this range, only one line or one pixel is added at one place.
[0092]
Note that the order of connection between the vertical enlargement / interpolation circuit 160 and the horizontal enlargement / interpolation circuit 162 can be reversed from that shown in FIG. That is, first, the horizontal enlargement / interpolation circuit 162 may enlarge in the horizontal direction, and the vertical enlargement / interpolation circuit 160 may enlarge in the vertical direction.
[0093]
F. Configuration and operation of second enlargement / interpolation circuit 152:
FIG. 13 is an explanatory diagram showing an outline of the vertical enlargement / interpolation process performed by the second enlargement / interpolation circuit 152. FIG. 13A shows an image after being magnified by the first magnification / interpolation circuit 150, and FIG. 13B is a magnification magnified by the second magnification / interpolation circuit 152. An image is shown. Here, the image in FIG. 13A is referred to as an “original image”.
[0094]
On the left side of each image, line numbers L0, L1,... Of the original image are shown. The second enlargement / interpolation circuit 152 executes processing for enlarging the original image Nv times in the vertical direction. The jth line L added with expansion Nv Are two lines L of the original image existing before and after the added line according to the following equation (1): i-1 , L i Is interpolated by a weighted average of
[0095]
L Nv = (1-αv) × L i-1 + Αv × L i ... (1)
Here, αv = j / Nv, j = 1 to (Nv−1).
[0096]
FIG. 14 is a block diagram showing an internal configuration of the second enlargement / interpolation circuit 152. The second enlargement / interpolation circuit 152 includes a vertical enlargement / interpolation circuit 200 and a horizontal enlargement / interpolation circuit 202.
[0097]
The vertical enlargement / interpolation circuit 200 includes a weight calculation circuit 210, a multiplexer 212, two FIFO buffers 214 and 216, and an interpolation calculation circuit 218. The horizontal enlargement / interpolation circuit 202 has substantially the same configuration as the vertical enlargement / interpolation circuit 200, and includes a weight calculation circuit 220, a multiplexer 222, two buffers 224 and 226, and an interpolation calculation circuit. 228. However, the two FIFO buffers 214 and 216 of the vertical enlargement / interpolation circuit 200 each have a capacity to store an image signal for one line, whereas the two of the horizontal enlargement / interpolation circuit 202 have the same capacity. Each of the buffers 224 and 226 has a capacity for storing an image signal for one pixel.
[0098]
The weight calculation circuit 210 receives the line address NLAD and the second vertical enlargement factor Nv during reading from the read image adjustment circuit 104 (FIG. 3). The line address NLAD is sequentially incremented by one every time one line is processed by the vertical enlargement / interpolation circuit 200. The relationship between the line address NLAD and the line address LAD in the first expansion / interpolation circuit 150 described above will be described later.
[0099]
The weight calculation circuit 210 calculates the weight αv according to the following equation (2) according to the line address NLAD and the vertical enlargement ratio Nv.
[0100]
αv = {(NLAD)% Nv} / Nv (2)
[0101]
The term in {} on the right side of Expression (2) takes a value in the range of 1 to (Nv−1) for the line added by expansion. Therefore, it can be understood that the expression (2) is equivalent to the definition of the weight αv in the above-described expression (1). The weight αv is supplied to the interpolation calculation circuit 218.
[0102]
The image signal Uout2 for one line output from the first enlargement / interpolation circuit 150 is switched by the multiplexer 212 and stored alternately in the two FIFO buffers 214 and 216. Image signals Sa and Sb read from the FIFO buffers 214 and 216, respectively, are input to the interpolation calculation circuit 218. The interpolation calculation circuit 218 performs the interpolation calculation according to the above-described equation (1) by performing a weighted average of the two image signals Sa and Sb using the weight αv given from the weight calculation circuit 210. The image signal Sout1 output from the interpolation calculation circuit 218 is a signal representing an image enlarged Nv times in the vertical direction.
[0103]
FIG. 15 is a timing chart showing the operation of the vertical enlargement / interpolation circuit 200 of the second enlargement / interpolation circuit 152. 15A shows the line address NLAD in the second enlargement / interpolation circuit 152, and FIG. 15B shows the line address of the output image of the first enlargement / interpolation circuit 150 described above. FIG. 15C shows the LAD output image signal Uout2 from the first enlargement / interpolation circuit 150. FIG. FIGS. 15D, 15E and 15F show the input image signals Sa and Sb to the interpolation calculation circuit 218 shown in FIG. 14 and the output image signal Sout1.
[0104]
As shown in FIGS. 15A and 15B, the line address NLAD in the second enlargement / interpolation circuit 152 is twice the line address LAD of the output image of the first enlargement / interpolation circuit 150. (Ie, with a period of 1/2). In general, the line address NLAD in the second enlargement / interpolation circuit 152 is updated at a speed Nv times the line address LAD of the output image of the first enlargement / interpolation circuit 150. Here, Nv is a vertical enlargement ratio in the second enlargement / interpolation circuit 152. Accordingly, the line address LAD in the second enlargement / interpolation circuit 152 is updated with (Nv−1) pause cycles as shown in FIG. Note that in FIG. 12 described above, the pause cycle of the line address LAD is not shown for convenience of illustration, but actually, as shown in FIG. 15B, the line address LAD is updated so as to sandwich the pause cycle. Is done.
[0105]
The image signal Uout2 input from the first enlargement / interpolation circuit 150 is alternately written to the two FIFO buffers 214 and 216 line by line, and is read from the next cycle of the write cycle. The interpolation calculation circuit 218 performs an interpolation calculation on the two input image signals Sa and Sb shown in FIGS. 15D and 15E using the weight αv, thereby obtaining the output image signal Sout1 shown in FIG. Generate.
[0106]
As described above, the vertical enlargement / interpolation circuit 200 of the second enlargement / interpolation circuit 152 linearly interpolates two lines of the original image existing before and after the line added with the enlargement. Therefore, a smooth enlarged image can be obtained.
[0107]
The horizontal enlargement / interpolation circuit 202 shown in FIG. 14 has substantially the same configuration as the vertical enlargement / interpolation circuit 200. Therefore, the contents of the enlargement / interpolation process are almost the same. In the description of the vertical enlargement / interpolation circuit 200 described above, the operation can be easily understood by replacing “1 line” with “1 pixel”. . Note that the pixel address NPAD in the second expansion / interpolation circuit 152 is preferably updated at a period Nh times the pixel address PAD in the first expansion / interpolation circuit 150. Here, Nh is a horizontal enlargement ratio in the second enlargement / interpolation circuit 152.
[0108]
Note that the vertical enlargement ratio Nv in the vertical enlargement / interpolation circuit 200 of the second enlargement / interpolation circuit 152 and the horizontal enlargement ratio Nh in the horizontal enlargement / interpolation circuit 202 can be set independently. It is. Further, the order of connection of the vertical enlargement / interpolation circuit 200 and the horizontal enlargement / interpolation circuit 202 can be reversed from that in FIG. That is, first, the horizontal enlargement / interpolation circuit 202 may enlarge in the horizontal direction, and the vertical enlargement / interpolation circuit 200 may enlarge in the vertical direction.
[0109]
As described above, in the above-described embodiment, the first enlargement / interpolation circuit 150 performs enlargement processing at the first enlargement ratio within the range of 1 to 2, and the second enlargement / interpolation circuit 152 Since the enlargement process is performed at the second enlargement ratio which is an integer, it is possible to enlarge the image at an arbitrary enlargement ratio including a fractional part by combining these two enlargement processes.
[0110]
The present invention is not limited to the above-described examples and embodiments, and can be implemented in various modes without departing from the gist thereof. For example, the following modifications are possible.
[0111]
(1) In the above embodiment, a part of the configuration realized by hardware may be replaced with software, and conversely, a part of the configuration realized by software may be replaced with hardware. Also good.
[0112]
(2) In the above-described embodiment, the reduction of the image loss phenomenon at the time of reduction and the reduction of the image fatness phenomenon at the time of enlargement are both realized by the weighted average processing of the image data. It is also possible to realize the mitigation of the image loss phenomenon and the fatness phenomenon by using the various interpolation processes. As the interpolation process, for example, various processes such as geometric average, linear interpolation, and non-linear interpolation can be used.
[0113]
(3) Missing line interpolation processing at the time of reduction is not limited to the case where interpolation is performed with two lines of the missing line and one line adjacent to the missing line. Interpolation may be performed using a plurality of included lines. The same applies to the interpolation processing of missing pixels at the time of reduction. In addition, the interpolation processing of the additional line at the time of enlargement is not limited to the case where the interpolation is performed with two lines existing before and after the added line, and generally, a plurality of lines adjacent to the added line are used. Interpolation may be performed. The same applies to the interpolation processing of additional pixels at the time of enlargement.
[Brief description of the drawings]
FIG. 1 is a block diagram showing the overall configuration of an image processing apparatus as an embodiment of the present invention.
2 is a block diagram showing a configuration of an image writing control unit in the video processor 38. FIG.
3 is a block diagram showing a configuration of an image reading control unit in the video processor 38. FIG.
FIG. 4 is an explanatory diagram showing an outline of reduction / filtering processing during image writing.
5 is a block diagram showing an internal configuration of a reduction / filter circuit 66. FIG.
6 is an explanatory diagram showing a method for calculating various parameters related to the operation of the vertical reduction / filter circuit 110. FIG.
7 is a timing chart showing the operation of the vertical reduction / filter circuit 110. FIG.
FIG. 8 is an explanatory diagram showing an outline of the internal configuration and processing contents of the enlargement / filter circuit 94 shown in FIG. 3;
FIG. 9 is an explanatory diagram showing an outline of vertical enlargement / interpolation processing performed by the first enlargement / interpolation circuit;
10 is a block diagram showing an internal configuration of the first enlargement / interpolation circuit 150. FIG.
FIG. 11 is an explanatory diagram illustrating a method for calculating various parameters related to the operation of the vertical enlargement / interpolation circuit 160 of the first enlargement / interpolation circuit 150;
12 is a timing chart showing the operation of the vertical enlargement / interpolation circuit 160 of the first enlargement / interpolation circuit 150. FIG.
FIG. 13 is an explanatory diagram illustrating an outline of vertical enlargement / interpolation processing performed by a second enlargement / interpolation circuit;
14 is a block diagram showing an internal configuration of a second enlargement / interpolation circuit 152. FIG.
FIG. 15 is a timing chart showing the operation of the vertical enlargement / interpolation circuit 200 of the second enlargement / interpolation circuit 152;
FIG. 16 is an explanatory diagram showing the contents of a conventional vertical image reduction process.
FIG. 17 is an explanatory diagram showing the contents of a conventional vertical image enlargement process.
[Explanation of symbols]
30 ... Video selector
32. Sync separation circuit
34 ... D converter
36 ... Frame memory
38 ... Video processor
40 ... Video selector
42 ... Liquid crystal display drive circuit
44 ... Liquid crystal display panel
46 ... Menu generation circuit
48 ... Font ROM
50 ... CPU
60. Color conversion circuit
62 ... Data selector
64 ... line buffer
66. Reduction / filter circuit
68. Written image adjustment circuit
70 ... CPU writing control circuit
72. Write control signal generation circuit
74: Image writing condition register
76. Write clock generation circuit
80... Frame memory control circuit
90. Read control signal generation circuit
94. Expansion / filter circuit
96. Brightness / contrast adjustment circuit
98 ... gradation correction circuit
100: CPU read line buffer
102: CPU readout control circuit
104. Read image adjustment circuit
106: Image reading condition register
108: Read clock generation circuit
110... Vertical reduction / filter circuit
112 ... Horizontal reduction / filter circuit
120 ... Vertical decimation flag generation circuit
122 ... FIFO buffer
124 ... Adder
126 ... multiplier
128: Multiplexer
130: Horizontal decimation flag generation circuit
132: Buffer
134 ... Adder
136 ... Multiplier
138 ... Multiplexer
140: Line address generation circuit
142: Pixel address generation circuit
150: First expansion / interpolation circuit
152 ... Second expansion / interpolation circuit
160 ... Vertical enlargement / interpolation circuit
162. Horizontal expansion / interpolation circuit
170 ... Vertical interpolation flag generation circuit
172 ... FIFO buffer
174 ... Adder
176: Multiplier
178 ... Multiplexer
180 ... Horizontal interpolation flag generation circuit
182 ... Buffer
184 ... Adder
186: Multiplier
188 ... Multiplexer
190 ... line address generation circuit
192: Pixel address generation circuit
200: Vertical enlargement / interpolation circuit
202 ... Horizontal enlargement / interpolation circuit
210: Weight calculation circuit
212 ... Multiplexer
214, 216 ... FIFO buffer
218 ... Interpolation calculation circuit
220 ... Weight calculation circuit
222: Multiplexer
224, 226 ... Buffer
228 ... Interpolation calculation circuit

Claims (4)

動画画像データを前記動画画像データの同期信号に応じて更新しつつ順次記憶するためのフレームメモリと、
任意の値に設定された垂直方向の縮小率に応じて前記フレームメモリに前記動画画像データを書き込む際に前記動画画像データで表される画像を垂直方向に縮小し、前記動画画像データの同期信号に同期して1つずつ順次増加するラインアドレス毎に当該ラインが前記垂直方向の縮小により欠落するか否かを判定することによって前記縮小により欠落する第1のラインを検出するとともに、前記第1のラインと前記第1のラインに隣接する第2のラインとを含む複数のラインの動画画像データを補間することによって前記第2のラインの画像を修正する垂直縮小部と、
任意の値に設定された水平方向の縮小率に応じて前記動画画像データで表される画像を水平方向に縮小し、前記動画画像データの同期信号に同期して1つずつ順次増加する画素アドレス毎に当該画素が前記水平方向の縮小により欠落するか否かを判定することによって前記縮小により欠落する第1の画素を検出するとともに、前記第1の画素と前記第1の画素に隣接する第2の画素とを含む複数の画素の動画画像データを補間することによって前記第2の画素の画像を修正する水平縮小部と、
を備え、
前記垂直縮小部は、前記動画画像データの同期信号に同期して1つずつ順次増加するラインアドレスと前記垂直方向の縮小率とを乗じて整数化して得られた書き込みラインアドレスの値として同じ値が2回以上繰り返されたか否かによって、前記1つずつ順次増加するラインアドレスで指定されるラインが前記垂直方向の縮小により欠落するか否かを判定し、
前記水平縮小部は、前記動画画像データの同期信号に同期して1つずつ順次増加する画素アドレスと前記水平方向の縮小率とを乗じて整数化して得られた書込画素アドレスの値として同じ値が2回以上繰り返されたか否かによって、前記1つずつ順次増加する画素アドレスで指定される画素が前記垂直方向の縮小により欠落するか否かを判定する、画像処理装置。
A frame memory for sequentially storing the moving image data while updating the moving image data according to the synchronization signal of the moving image data;
When the moving image data is written to the frame memory in accordance with a vertical reduction ratio set to an arbitrary value, the image represented by the moving image data is reduced in the vertical direction, and the synchronizing signal of the moving image data The first line missing due to the reduction is detected by determining whether or not the line is missing due to the reduction in the vertical direction for each line address that sequentially increases one by one in synchronization with the first address. A vertical reduction unit for correcting the image of the second line by interpolating a plurality of lines of moving image data including the second line and the second line adjacent to the first line;
A pixel address that reduces the image represented by the moving image data in the horizontal direction according to a horizontal reduction ratio set to an arbitrary value, and sequentially increases one by one in synchronization with the synchronizing signal of the moving image data The first pixel missing due to the reduction is detected by determining whether or not the pixel is missing due to the reduction in the horizontal direction every time, and the first pixel and the first pixel adjacent to the first pixel are detected. A horizontal reduction unit for correcting the image of the second pixel by interpolating moving image data of a plurality of pixels including two pixels;
With
The vertical reduction unit has the same value as the value of the write line address obtained by multiplying the line address that sequentially increases one by one in synchronization with the synchronization signal of the video image data and the reduction ratio in the vertical direction into an integer. Whether or not the line specified by the line address that sequentially increases one by one is lost due to the reduction in the vertical direction, depending on whether or not is repeated twice or more,
The horizontal reduction unit is the same as the value of the write pixel address obtained by multiplying the pixel address that is sequentially increased one by one in synchronization with the synchronization signal of the moving image data and the horizontal reduction rate to obtain an integer. An image processing apparatus that determines whether or not a pixel specified by a pixel address that sequentially increases one by one is lost due to the reduction in the vertical direction depending on whether or not a value is repeated twice or more.
請求項1記載の画像処理装置であって、
前記垂直縮小部と前記水平縮小部のそれぞれは、
与えられた画像データを所定量記憶するバッファと、
前記バッファから読み出された第1の画像データと、前記第1の画像データの後に続く画像部分を表す第2の画像データとを加重平均することによって第3の画像データを作成する加重平均部と、
与えられた前記第2の画像データと、前記加重平均部から出力された前記第3の画像データとを含む複数の画像データの中から1つを選択して出力する選択部と、
画像の縮小率に応じて、前記縮小に伴って欠落する画像部分を示す選択信号を生成し、前記選択信号を前記選択部に供給する選択信号生成部と、
を備える画像処理装置。
The image processing apparatus according to claim 1,
Each of the vertical reduction part and the horizontal reduction part is
A buffer for storing a given amount of given image data;
A weighted average unit that generates third image data by performing weighted averaging of the first image data read from the buffer and second image data representing an image portion subsequent to the first image data. When,
A selection unit that selects and outputs one of a plurality of image data including the given second image data and the third image data output from the weighted average unit;
A selection signal generation unit that generates a selection signal indicating an image portion that is lost due to the reduction according to a reduction ratio of the image, and supplies the selection signal to the selection unit;
An image processing apparatus comprising:
請求項2記載の画像処理装置であって、さらに、
前記選択信号に応じて、前記フレームメモリに与える書込アドレスの増加を制御する書込アドレス制御部、を備える画像処理装置。
The image processing apparatus according to claim 2, further comprising:
An image processing apparatus comprising: a write address control unit that controls an increase in a write address given to the frame memory in response to the selection signal.
請求項1ないし3のいずれかに記載の画像処理装置であって、
前記垂直縮小部と前記水平縮小部における縮小率は、それぞれ0.5から1の範囲内の値であり、従って、前記垂直縮小部における縮小に伴って欠落する画像部分は1ヶ所について1ライン分であり、前記水平縮小部における縮小に伴って欠落する画像部分は1ヶ所について1画素分である、画像処理装置。
The image processing apparatus according to any one of claims 1 to 3,
The reduction ratios in the vertical reduction portion and the horizontal reduction portion are values in the range of 0.5 to 1, respectively. Therefore, the image portion that is missing due to reduction in the vertical reduction portion is one line at one place. An image processing apparatus, wherein an image portion missing due to the reduction in the horizontal reduction unit is one pixel at one place.
JP13586397A 1997-05-09 1997-05-09 Image processing device Expired - Fee Related JP4146528B2 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP13586397A JP4146528B2 (en) 1997-05-09 1997-05-09 Image processing device
US08/969,944 US6141061A (en) 1997-05-09 1997-11-25 Image reduction and enlargement processing
US09/658,992 US6392711B1 (en) 1997-05-09 2000-09-11 Image reduction and enlargement processing

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP13586397A JP4146528B2 (en) 1997-05-09 1997-05-09 Image processing device

Related Child Applications (2)

Application Number Title Priority Date Filing Date
JP2006117372A Division JP2006276870A (en) 2006-04-21 2006-04-21 Image processing device
JP2006117370A Division JP2006301644A (en) 2006-04-21 2006-04-21 Image processing apparatus

Publications (2)

Publication Number Publication Date
JPH10312457A JPH10312457A (en) 1998-11-24
JP4146528B2 true JP4146528B2 (en) 2008-09-10

Family

ID=15161530

Family Applications (1)

Application Number Title Priority Date Filing Date
JP13586397A Expired - Fee Related JP4146528B2 (en) 1997-05-09 1997-05-09 Image processing device

Country Status (2)

Country Link
US (2) US6141061A (en)
JP (1) JP4146528B2 (en)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4146528B2 (en) * 1997-05-09 2008-09-10 セイコーエプソン株式会社 Image processing device
JP3178665B2 (en) * 1997-12-02 2001-06-25 日本電気株式会社 Image size conversion method and device therefor
US6741294B2 (en) * 1997-12-08 2004-05-25 Sony Corporation Digital signal processor and digital signal processing method
JP4065462B2 (en) * 1997-12-26 2008-03-26 キヤノン株式会社 Image processing apparatus and image processing method
JP3840898B2 (en) * 1998-02-03 2006-11-01 セイコーエプソン株式会社 Projection display device, display method therefor, and image display device
JP2000023063A (en) * 1998-06-26 2000-01-21 Sony Corp Video reproducing device and reproducing method
US6710810B1 (en) * 1998-07-02 2004-03-23 Pioneer Electronic Corporation Video signal processing apparatus with resolution enhancing feature
KR100627995B1 (en) * 1998-07-06 2006-09-27 코닌클리케 필립스 일렉트로닉스 엔.브이. Matrix display device adapted to display video signals from different video standards
US6553153B1 (en) * 1998-12-03 2003-04-22 Chips And Technologies, Llc. Method and apparatus for reducing video data
US6633687B1 (en) 1999-09-10 2003-10-14 Intel Corporation Method and apparatus for image contrast modulation
JP4029253B2 (en) * 2000-04-10 2008-01-09 富士フイルム株式会社 Image resizing apparatus and method
JP2001320680A (en) * 2000-05-09 2001-11-16 Sony Corp Signal processing unit and method
FI115674B (en) * 2000-06-30 2005-06-15 Nokia Corp Method and system for displaying pages based on page definition language on hand-portable devices
US7194141B1 (en) 2002-03-20 2007-03-20 Ess Technology, Inc. Image resolution conversion using pixel dropping
JP2004258885A (en) * 2003-02-25 2004-09-16 Renesas Technology Corp Image data enlarging/reducing device
US7336390B2 (en) * 2003-04-29 2008-02-26 Pfu Limited Method and apparatus for reducing multi-bit image data
US20060050089A1 (en) * 2004-09-09 2006-03-09 Atousa Soroushi Method and apparatus for selecting pixels to write to a buffer when creating an enlarged image
US7574071B2 (en) * 2004-10-05 2009-08-11 Seiko Epson Corporation Method and apparatus for resizing images
US20060158557A1 (en) * 2005-01-20 2006-07-20 Shang-Chieh Wen Method and apparatus for video processing
US7733405B2 (en) * 2005-02-10 2010-06-08 Seiko Epson Corporation Apparatus and method for resizing an image
JP4670403B2 (en) * 2005-03-08 2011-04-13 セイコーエプソン株式会社 Image processing apparatus, image processing method, display controller, and electronic apparatus
TWI357037B (en) * 2006-04-28 2012-01-21 Himax Tech Inc Flat display and driving method thereof
US8032004B2 (en) * 2006-08-14 2011-10-04 Vmedia Research, Inc. Multimedia presentation format

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62176369A (en) * 1986-01-30 1987-08-03 Matsushita Electric Ind Co Ltd Picture signal processor
JPH0226479A (en) * 1988-07-15 1990-01-29 Fujitsu Ltd Picture enlarging/reducing device
JPH02174480A (en) * 1988-12-27 1990-07-05 Sony Corp Liquid crystal display device
JPH02222992A (en) * 1989-02-23 1990-09-05 Fujitsu Ltd Magnification converting circuit for video signal
JP2913797B2 (en) * 1990-08-10 1999-06-28 ソニー株式会社 Image scaling processing method
EP0514819B1 (en) * 1991-05-23 1996-05-01 Hitachi, Ltd. Wide-screen television receiver with aspect ratio conversion function and method of displaying a magnified range
JPH05313646A (en) * 1992-05-08 1993-11-26 Seiko Epson Corp Enlargement and reduction video processor
JPH05316539A (en) * 1992-05-12 1993-11-26 Canon Inc Picture processing circuit
JP2939068B2 (en) * 1992-10-29 1999-08-25 シャープ株式会社 Image file device
JPH06169429A (en) * 1992-11-30 1994-06-14 Mitsubishi Electric Corp Picture data conversion circuit
JPH06225209A (en) * 1993-01-22 1994-08-12 Olympus Optical Co Ltd Picture processor
JPH0738805A (en) * 1993-07-16 1995-02-07 Canon Inc Image enlarging device
JPH0759027A (en) * 1993-08-20 1995-03-03 Sony Corp Picture-in-picture circuit
JPH07143452A (en) * 1993-11-15 1995-06-02 Casio Comput Co Ltd Picture processing unit
JP4146528B2 (en) * 1997-05-09 2008-09-10 セイコーエプソン株式会社 Image processing device

Also Published As

Publication number Publication date
JPH10312457A (en) 1998-11-24
US6141061A (en) 2000-10-31
US6392711B1 (en) 2002-05-21

Similar Documents

Publication Publication Date Title
JP4146528B2 (en) Image processing device
JP3231142B2 (en) Video compression / expansion circuit and device
US5781241A (en) Apparatus and method to convert computer graphics signals to television video signals with vertical and horizontal scaling requiring no frame buffers
US6339434B1 (en) Image scaling circuit for fixed pixed resolution display
US6014125A (en) Image processing apparatus including horizontal and vertical scaling for a computer display
JPH06118925A (en) Video data converting processor and information processor with video data converting device
JP4345937B2 (en) Image enlargement processing circuit
JPH1011009A (en) Processor for video signal and display device using the same
JP4035408B2 (en) Resolution conversion apparatus and method, and information processing apparatus
JPH11283015A (en) Picture color mixing processor
JPH11298862A (en) Image processing method and image display device
JP2003069960A (en) Video processor for realizing panorama/water glass function and its realization method
JP4445122B2 (en) System and method for 2-tap / 3-tap flicker filtering
US20080043145A1 (en) Image Processing Apparatus, Image Processing Method, and Image Display Apparatus
WO1996007175A1 (en) Apparatus for correction of video tearing
JP2006276870A (en) Image processing device
JP4928676B2 (en) Video signal output apparatus, video signal output method, and computer-readable recording medium storing a program for causing computer to execute the method
JP2006215320A (en) Image converting device and image display apparatus
JP2006301644A (en) Image processing apparatus
JP2010186194A (en) Image processing apparatus
JP4280368B2 (en) Image processing device
JP3546029B2 (en) Scan line conversion circuit
JP4733829B2 (en) Method and device for field or frame frequency conversion using dynamic calculation of interpolation phase
JP3527603B2 (en) Digital signal processing circuit for television receiver.
JPH09261568A (en) Keystone distortion corrector

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050913

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050927

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20051108

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060228

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060421

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20060711

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060907

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20060920

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20061006

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080620

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110627

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110627

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120627

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130627

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130627

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees