(57)【要約】【課題】冗長なバス設計を伴わずにリアルタイム性を保証できる画像補間装置を得る。【解決手段】メモリ負荷評価手段４は、画素補間手段１によるメモリ３へのメモリアクセスの負荷状況を監視し、負荷の重さを示すメモリ負荷評価値を出力する。精度変換手段５は、メモリアクセス負荷の重さが大きくなると補間の対象となる画素の座標の精度を低くする精度変換を行う。画素補間手段１は、精度変換手段５における精度変換後の画素座標に基づき、メモリ３へのアクセスを行って、画素座標の画素値を算出する。【選択図】図３
2014102730.tif 000002
【特許請求の範囲】
【請求項１】
画像の画素データを格納するメモリにアクセスして、前記メモリに格納された画素データの中から、所定の画素データを取得し、当該所定の画素データに基づいて画像補間を行う画像補間装置において、
前記メモリへのメモリアクセスの負荷状況を監視し、当該負荷の重さを評価するメモリ負荷評価手段と、
前記メモリ負荷の評価結果に基づき、当該メモリアクセス負荷の重さが大きくなると前記補間の対象となる画素の座標の精度を低くする精度変換を行う精度変換手段と、
前記精度変換手段における精度変換後の画素座標に基づき、前記メモリへのアクセスを行って、当該画素座標の画素値を算出する画素補間手段とを備えた画像補間装置。
【請求項２】
メモリ負荷評価手段は、
補間の対象となる画素の座標値を入力して保持し、当該座標値を画素補間手段からの読み出し要求に基づいて出力するＦＩＦＯメモリと、
前記ＦＩＦＯメモリが保持する座標値のデータが多い場合はメモリ負荷が重いとして評価値を算出する評価値算出手段とを備えたことを特徴とする請求項１記載の画像補間装置。
【請求項３】
メモリ負荷評価手段は、
画素補間手段から出力される画素のデータを入力して保持し、当該データを所定の後段側の装置からの読み出し要求に基づいて出力するＦＩＦＯメモリと、
前記ＦＩＦＯメモリが保持するデータが少ない場合はメモリ負荷が重いとして評価値を算出する評価値算出手段とを備えたことを特徴とする請求項１記載の画像補間装置。
【請求項４】
メモリ負荷評価手段は、
画素補間手段から出力され画素のデータを入力し、当該画素数をカウントするカウンタと、
前記カウンタのカウント値が少ない場合はメモリ負荷が重いとして評価値を算出する評価値算出手段とを備えたことを特徴とする請求項１記載の画像補間装置。
【請求項５】
メモリ負荷評価手段は、
画素補間手段がメモリへのアクセスを行うためのメモリバスにおける占有率をカウント値として求めるサイクルカウンタと、
前記サイクルカウンタが求めた占有率が高い場合はメモリ負荷が重いとして評価値を算出する評価値算出手段とを備えたことを特徴とする請求項１記載の画像補間装置。
【請求項６】
画素補間手段は、
精度変換された画素座標に基づいて補間に必要な画素のアドレスを算出する読み出しアドレス算出手段と、前記読み出しアドレスに基づいてメモリから前記補間に必要な画素のデータを読み出し、前記精度変換された画素座標の画素値を求める補間手段とを備え、
メモリ負荷評価手段は、
前記読み出しアドレス算出手段における補間に必要な画素のアドレスを入力して、当該アドレスを格納し、前記画素補間手段からの読み出し要求によって前記アドレスを出力するＦＩＦＯメモリと、前記ＦＩＦＯメモリが保持するアドレスが多い場合はメモリ負荷が重いとして評価値を算出する評価値算出手段とを備えたことを特徴とする請求項１記載の画像補間装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理を行う装置として、特に画像の拡大、縮小、変形等を行う画像補間装置に関する。
【背景技術】
【０００２】
パーソナルコンピュータやデジタルスチルカメラなどのデジタル機器では、画像を画素の行列として取り扱う。たとえばＶＧＡ画像であれば画像を水平６４０画素（列）、垂直４８０画素（行）とし、６４０×４８０個の画素値（階調値）を１枚の画像として取り扱う。
【０００３】
一方で、デジタル機器においては、拡大・縮小・アフィン変換など、画像の変形がさまざまな用途で用いられている。画像の変形はすなわち座標変換処理であるため、入力画像の小数座標、たとえば水平２３．４（列）、垂直４５．８（行）の成分などが参照されうる。本来の画像上に存在しない小数座標の画素値を周辺画素値から算出する処理が画像補間である。
【０００４】
画像補間の手法として、最近傍補間、バイリニア補間、バイキュービック補間などが知られている。最近傍補間は最も近い座標位置の画素値をそのまま用いる手法、バイリニア補間は周辺４画素からの１次補間を行う手法、バイキュービック補間は周辺１６画素からの３次補間を行う手法である。
【０００５】
画像補間装置の画質を向上するためさまざまな画像補間アルゴリズムが提案されており、たとえば特許文献１は、画像が自然画か非自然画かの特徴を検出し、非自然画であれば最近傍補間を、自然画であればバイキュービック補間を用いるようにすることで、補間画像の画質を向上させている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００４−９６７１５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、従来手法にも、さらには画像補間装置自体にも、リアルタイム動作の保証が困難という課題が存在する。
図１に一般的な画像補間装置１００の構成を示す。読み出しアドレス算出手段１０１は画素座標を受け取り、画素座標を補間に必要な周辺画素のアドレスに変換し、画素の読み出しアドレスと読み出し要求をメモリバス２００に対して発行する。メモリ３００はメモリバス２００を介して読み出しアドレスと読み出し要求を受け取り、入力画像の中から必要画素を出力する。補間手段１０２はメモリバス２００を介して必要画素を受け取り、最近傍補間やバイキュービック補間等の補間演算を行って出力画素値を算出する。
【０００８】
画像補間装置はワーストケースにおける画素読み出しのメモリバス負荷が高い。これは、拡大縮小率や変形の形状によって、画素読み出しの画素座標（＝アドレス）に連続性・相関性がなくなるため、たとえばメモリバスがバーストアクセスやキャッシュの仕組みをもっていたとしても、それらの効果が得られないことが原因である。
【０００９】
図２に入力画像と読み出し座標の例を示す。ケースＡのように連続的で規則正しい読み出し順の場合はバーストアクセスが効果的でキャッシュヒット率も高くなるが、ケースＢやケースＣのような場合ではバーストアクセスの効果は得られず、キャッシュヒット率も０になる。
【００１０】
また、従来手法は画像の特徴によって最近傍補間とバイキュービック補間を切り替える方式であるため、最悪の場合、全画素の生成に際してバイキュービック補間に必要な１６画素分の読み出しアクセスが発生する。
もちろん、リアルタイム動作を保証するため、従来手法で発生しうる最大のメモリバス負荷を想定してメモリバス設計を行うことは可能である。すなわち、バーストアクセスもキャッシュヒット率も０で、全画素に対してバイキュービック法１６画素分の読み出しアクセスが実行される、ワーストケースのメモリバス負荷の処理が可能となるようメモリバス設計を行えば、リアルタイム動作は保証できる。
【００１１】
しかしながら、常に最大のメモリバス負荷が発生するわけではないため、これは冗長な設計である。冗長な設計はコストの増大、装置サイズの巨大化、消費電力増大など、さまざまなデメリットの要因となる。
メモリバス負荷低減のため、最近傍補間等の画素読み出し数が少ない補間方法を用いることも考えられる。しかし、画像補間装置自体の、ワーストケースでメモリバス負荷が高いという課題は解決しておらず、冗長な設計が必要であるということには変わりがない。さらに、読み出し数が少ない補間手法では自然画像に対して好適な画質が得られない。
【００１２】
この発明は上記のような課題を解決するためになされたもので、冗長なバス設計を伴わずにリアルタイム性を保証できる画像補間装置を得ることを目的とする。
【課題を解決するための手段】
【００１３】
この発明に係る画像補間装置は、画像の画素データを格納するメモリにアクセスして、メモリに格納された画素データの中から、所定の画素データを取得し、所定の画素データに基づいて画像補間を行う画像補間装置において、メモリへのメモリアクセスの負荷状況を監視し、負荷の重さを評価するメモリ負荷評価手段と、メモリ負荷の評価結果に基づき、メモリアクセス負荷の重さが大きくなると補間の対象となる画素の座標の精度を低くする精度変換を行う精度変換手段と、精度変換手段における精度変換後の画素座標に基づき、メモリへのアクセスを行って、画素座標の画素値を算出する画素補間手段とを備えたものである。
【発明の効果】
【００１４】
この発明の画像補間装置は、メモリアクセス負荷の重さが大きくなると補間の対象となる画素の座標の精度を低くするようにしたので、冗長なバス設計を伴わずにリアルタイム性を保証することができる。
【図面の簡単な説明】
【００１５】
【図１】一般的な画像補間装置の構成を示すブロック図である。
【図２】入力画像における読み出し画素座標の不連続性・不規則性を示す説明図である。
【図３】この発明の実施の形態１による画像補間装置の構成を示すブロック図である。
【図４】この発明の実施の形態１による画像補間装置の小数点以下の丸め桁数と座標が整数になる確率の関係を示す説明図である。
【図５】この発明の実施の形態１による画像補間装置のバイリニア補間において座標が整数になった場合の読み出し画素数を示す説明図である。
【図６】この発明の実施の形態１による画像補間装置のバイリニア補間の、丸め桁数と平均必要画素数の関係を示す図である。
【図７】この発明の実施の形態１による画像補間装置のバイキュービック補間の、丸め桁数と平均必要画素数の関係を示す図である。
【図８】この発明の実施の形態１による画像補間装置のメモリ負荷評価値と丸め桁数の関係を示す説明図である。
【図９】この発明の実施の形態２による画像補間装置の構成を示すブロック図である。
【図１０】この発明の実施の形態２による画像補間装置のメモリ負荷評価値と丸め桁数の関係を示す説明図である。
【図１１】この発明の実施の形態３による画像補間装置の構成を示すブロック図である。
【図１２】この発明の実施の形態４による画像補間装置の構成を示すブロック図である。
【図１３】この発明の実施の形態５による画像補間装置の構成を示すブロック図である。
【発明を実施するための形態】
【００１６】
実施の形態１．
図３は、この発明の実施の形態１による画像補間装置を示す構成図である。
図３に示す画像補間装置は、画素補間手段１、メモリ負荷評価手段４、精度変換手段５を備え、画素補間手段１はメモリバス２を介してメモリ３に接続されている。
ここで、画素補間手段１は、図１で示した従来の画像補間装置１００に相当する構成であり、読み出しアドレス算出手段１１と補間手段１２を備え、メモリ３から周辺画素の画素値を読み出して補間画素を生成する手段である。読み出しアドレス算出手段１１は、従来の読み出しアドレス算出手段１０１と同様に、画素座標から読み出しアドレスを算出する手段である。補間手段１２は、従来の補間手段１０２と同様に、画素値に対する補間演算を行う手段である。メモリバス２は、画素補間手段１とメモリ３とを接続するバスであり、メモリ３は、入力画像の画素値を格納する記憶部である。
【００１７】
メモリ負荷評価手段４は、メモリバス２の負荷の高低を示す負荷評価値を算出する手段であり、ＦＩＦＯメモリ４１、評価値算出手段４２を備えている。ＦＩＦＯメモリ４１は、対象となる画素座標を入力して格納し、かつ、画素補間手段１によって読み出される先入れ先出しメモリである。評価値算出手段４２は、ＦＩＦＯメモリ４１に格納されるデータの状態からメモリバス２のメモリ負荷評価値を算出する手段である。精度変換手段５は、評価値算出手段４２の評価結果に基づき、メモリアクセス負荷の値が高い場合は入力された画素の座標値の精度を低く、メモリアクセス負荷の値が低い場合は入力された画素の座標値の精度を高くするよう精度変換を行う手段である。
【００１８】
なお、ここで、メモリバス２を介したメモリ３と画素補間手段１の接続はメモリコントローラなどを用いてもいいし、画素補間手段１とメモリ３が直接接続されていてもよい。また、どのような種類のメモリを用いてもよい。
【００１９】
すなわち、実施の形態１は、一般的な画像補間装置（＝画素補間手段１）にメモリ負荷状況を監視するためのメモリ負荷評価手段４と画素座標を変換するための精度変換手段５を追加したものである。
【００２０】
次に、実施の形態１の画像補間装置の動作について説明する。
まず、画素補間手段１とメモリ３の動作を説明する。読み出しアドレス算出手段１１は精度変換手段５にて精度変換後の画素座標を受け取り、画素座標からメモリアドレスを算出する。補間アルゴリズムが必要とする周辺画素を読み出すため、メモリ３上の周辺画素位置のアドレスを算出し、アドレスとともに読み出し要求をメモリバス２に対して出力する。アドレスの具体的な算出方法は、補間方法やメモリ３への入力画像配置によって異なり、また、本発明とは直接関係ないためここでは詳細な説明は省略する。
【００２１】
読み出しアドレス算出手段１１は画素座標１個に対応する読み出し要求が全てメモリバス２に受理されれば処理完了し、前段（ここではＦＩＦＯメモリ４１）に対して、画素座標が正常に処理されたことを示す信号（ａｃｋ）を返す。ａｃｋ信号は画素座標１個を処理するたびに出力する。
メモリバス２はアドレスと読み出し要求を受け取り、メモリバス２が受付可能であればメモリ３に対してアドレスと読み出し要求を出力する。メモリ３はメモリバス２からアドレスと読み出し要求を受け取り、アドレスに対応する周辺画素値を出力する。
補間手段１２は精度変換後の画素座標と周辺画素値を受け取り、周辺画素値から補間画素値を算出し、出力する。
【００２２】
次に、メモリ負荷評価手段４におけるＦＩＦＯメモリ４１の動作について説明する。ＦＩＦＯメモリ４１は前段から画素座標を受け取るたびに画素座標をＦＩＦＯメモリ４１内にキューとして保持し、ライトアドレスを１加算する。また、ＦＩＦＯメモリ４１は読み出しアドレス算出手段１１からａｃｋ信号を受け取り、ライトアドレスがリードアドレスより大きければＦＩＦＯメモリ４１のリードアドレスを１加算する。つまり、読み出しアドレス算出手段１１からメモリバス２に対して画素座標１個分の読み出し要求が受理されるたびに、ＦＩＦＯメモリ４１は画素座標１個を出力するように動作する。
ＦＩＦＯメモリ４１において、前段からの画素座標入力よりもメモリバス２における画素座標１個分の読み出しのほうが早く受理される場合、すなわちメモリバス負荷が軽く、入力に対して十分な処理速度性能が発揮できる場合は、ＦＩＦＯメモリ４１のキュー出力数のほうが入力数より多くなるため、ＦＩＦＯメモリ４１のキューは減少（もしくは一定）する。
【００２３】
一方で、メモリバス２における画素座標１個分の読み出しのほうが遅く受理される場合、すなわちメモリバス負荷が重く、入力に対して十分な処理速度性能が発揮できない場合は、ＦＩＦＯメモリ４１のキュー入力数のほうが出力数より多くなるため、ＦＩＦＯメモリ４１のキュー個数は増加する。
つまり、ＦＩＦＯメモリ４１のキューの個数の増減を監視することで、メモリバス負荷の多寡が評価可能である。ここで、キュー個数はＦＩＦＯメモリ４１のライトアドレスとリードアドレスの差分である。差分が大きいほどキュー個数が大＝メモリバス負荷が累積的に過大であることを示す。
評価値算出手段４２は、ＦＩＦＯメモリ４１からライトアドレスとリードアドレスを受け取り、その差分、あるいは差分の微分値等、アドレスからメモリバス負荷の多寡を算出してメモリ負荷評価値として出力する。
【００２４】
精度変換手段５では、画素座標をＦＩＦＯメモリ４１から、また、メモリ負荷評価値を評価値算出手段４２から受け取り、メモリ負荷評価値が大きい場合＝メモリバス負荷が過大な場合はバス負荷を低減するよう、画素座標の精度を低くなるよう変換する。具体的には、メモリ負荷評価値が大きい場合に小数点以下の桁数が少なくなるよう丸めを行う。
画素座標の小数点以下の桁数が少なくなるように丸めた場合、水平／垂直座標が整数位置に丸められる確率は上昇する。
【００２５】
図４に丸め後の小数点以下の桁（ｂｉｔ）数Ｘと、座標が整数位置に丸められる確率の関係の例を示す。図中、例えば、Ｘ＝３ｂｉｔにおける分母の数値（６４）は水平座標の小数部分と垂直座標の小数部分の組み合わせの数である。座標値の小数が３ｂｉｔの時、小数部のとりうる値は０、０．１２５、０．２５、０．３７５、０．５、０．６２５、０．７５、０．８７５の８パタンである。水平８パタン×垂直８パタンで組み合わせは６４となる。この数値（６４）は図中の○の数と一致しており、そのうち、水平・垂直とも整数値になる（小数値が０になる）のは、左上の１パタンのみである（１／６４＝１．６％）。また、水平・垂直のどちらか一方が整数値になる（小数値が０になる）のは、左端の縦７画素と上端の横７画素の１４画素で（１４／６４＝２１．９％）、どちらも整数値にならないのが残りの４９／６４＝７６．６％である。
【００２６】
すなわち、図４は、どんな値をとるかわからない（一様分布と仮定している、と言い換えることもできる）小数値である水平座標／垂直座標をＸｂｉｔで量子化した場合に、それぞれが整数になる確率を表している。Ｘ＝３ｂｉｔの場合であれば１／６４＝１．６％の確率で水平／垂直両方の座標値が整数に丸められ、１４／６４＝２１．９％の確率で水平／垂直片方の座標値が整数に丸められ、４９／６４＝７６．６％の確率でどちらも整数には丸められないことを表している。
【００２７】
図４に示すように、丸め後のｂｉｔ数が少ないほど水平／垂直座標値が整数に丸められる確率は高くなる。例えば、Ｘ＝３ｂｉｔにおける水平／垂直座標の両方が整数位置になる確率は１．６％であるが、Ｘ＝２ｂｉｔでは６．３％、Ｘ＝１ｂｉｔでは２５．０％といったように、ｂｉｔ数が少ないほど確率が高くなる。
【００２８】
“補間”処理は、その名称からわかる通り、水平／垂直座標どちらか、もしくは両方が整数値であった場合、整数値である方向には補間を行う必要がない。例として、バイリニア補間の場合の補間方法を図５に示す。水平／垂直どちらか一方が整数座標であれば必要な読み出し画素数は２画素に減少するし（図５（ｂ）参照）、水平／垂直両方が整数座標であれば読出し画素数は１画素でよい（図５（ａ）参照）。なお、図５（ａ）は水平／垂直座標のどちらも整数でない場合を示しており、読み出し画素は４画素必要である。
【００２９】
つまり、精度変換手段５において、丸めによって小数点以下の桁数を小さくすればするほど、必要読出し画素数の平均値は少なくなる。例としてバイリニア補間とバイキュービック補間における小数点以下の桁数と必要読出し画素数の関係を図６および図７に示す。
よって、メモリ負荷評価値が大きい場合に小数点以下の桁数が少なくなるよう丸めることで、メモリバス負荷の増加を抑制するような制御を与えることができる。
【００３０】
桁数の丸めは、たとえば図８（ａ）に示すように２段階に制御してもよいし、図８（ｂ）に示すように評価値に連動するように複数の段階を切り替えてもよい。丸めの段階の数を増やせばメモリバス負荷をより細かく制御でき、どのようなメモリバス負荷にも良好な画質を与えることができるが、一方で制御は複雑になる。丸めの段階の数を減らせば制御は簡単になるが、メモリバス負荷の制御は粗くなる。
また、ＦＩＦＯメモリ４１の容量が画像の複数ライン分に及ぶなど比較的大きい場合には、図８（ｃ）のように評価値の増大に対して桁数の変化を遅くしておくことで、一時的なメモリバス負荷の増減に画質が影響を受けにくくすることも可能である。
【００３１】
なお、図８における評価値と丸め桁数の関係は一例に過ぎず、ＦＩＦＯメモリ４１のサイズやメモリバスの性能等に合わせて自由に設定してよい。また、目的に合わせて段階と丸め桁数を選択できるよう、評価値と丸め桁数の関係を外部から設定できるようにしてもよい。
評価値の増減によって、丸め桁数の微分値が変化するように（すなわち、評価値が大きい場合にｂｉｔ数が徐々に減り、評価値が小さい場合にｂｉｔ数が徐々に増えるように）制御することも考えられる。
【００３２】
このように、実施の形態１によれば、メモリバス２の負荷状況をＦＩＦＯメモリ４１により監視し、それに基づいて座標精度を変化させることで、メモリバス負荷の過多によるリアルタイム動作の破綻を未然に防ぐことが可能である。
【００３３】
なお、文中で説明したバイリニア補間、バイキュービック補間は補間方法の一例に過ぎない。また、従来手法のように複数の補間方法を切り替えるアルゴリズムにも適用できる。本発明は画素座標が整数値を取った時に読出し画素数が減るような補間アルゴリズムであれば適用可能である。
【００３４】
以上説明したように、実施の形態１の画像補間装置によれば、画像の画素データを格納するメモリにアクセスして、メモリに格納された画素データの中から、所定の画素データを取得し、所定の画素データに基づいて画像補間を行う画像補間装置において、メモリへのメモリアクセスの負荷状況を監視し、負荷の重さを評価するメモリ負荷評価手段と、メモリ負荷の評価結果に基づき、メモリアクセス負荷の重さが大きくなると補間の対象となる画素の座標の精度を低くする精度変換を行う精度変換手段と、精度変換手段における精度変換後の画素座標に基づき、メモリへのアクセスを行って、画素座標の画素値を算出する画素補間手段とを備えたので、冗長なバス設計を伴わずにリアルタイム性を保証することができる。
【００３５】
また、実施の形態１の画像補間装置によれば、メモリ負荷評価手段は、補間の対象となる画素の座標値を入力して保持し、座標値を画素補間手段からの読み出し要求に基づいて出力するＦＩＦＯメモリと、ＦＩＦＯメモリが保持する座標値のデータが多い場合はメモリ負荷が重いとして評価値を算出する評価値算出手段とを備えたので、画素補間手段の入力側でメモリバス負荷の評価を行うことから、前段の装置の動作速度（すなわち、画像補間装置の入力である画素座標の入力速度）が安定している場合に有効である。
【００３６】
実施の形態２．
図９は、実施の形態２による画像補間装置を示す構成図である。
実施の形態２の画像補間装置は、画素補間手段１、メモリ負荷評価手段４ａ、精度変換手段５ａを備え、実施の形態１と同様に画素補間手段１がメモリバス２を介してメモリ３に接続されている。実施の形態２では、メモリ負荷評価手段４ａが画素補間手段１の出力側に配置され、画素補間手段１における出力画素を入力するよう構成されている点が実施の形態１と異なる。また、精度変換手段５ａは、メモリ負荷評価値が小さい場合＝メモリバス負荷が過大な場合は、バス負荷を低減するために画素座標の精度を低く変換するよう構成されている。その他の構成は実施の形態１と同様であるため、対応する部分に同一符号を付してその説明を省略する。
【００３７】
次に、実施の形態２の画像補間装置の動作について実施の形態１とは異なる点を重点的に説明する。
実施の形態２では、ＦＩＦＯメモリ４１は前段の画素補間手段１における補間手段１２から出力画素を受け取り、ＦＩＦＯメモリ４１内にキューとして保持してライトアドレスを１加算する。また、ＦＩＦＯメモリ４１は後段（ここでは外部の何らかの装置）からａｃｋ信号を受け取り、ライトアドレスがリードアドレスより大きければＦＩＦＯメモリ４１のリードアドレスを１加算する。ＦＩＦＯメモリ４１は補間手段１２から出力画素値を受け取り、後段の何らかの装置が必要とするたびに画素座標１個を出力するように動作する。
【００３８】
ＦＩＦＯメモリ４１において、補間手段１２からの出力画素よりも後段からの必要数が少ない場合、すなわちメモリバス負荷が軽く、画像補間手段１が後段に対して十分な処理速度性能を発揮している間は、ＦＩＦＯメモリ４１のキュー入力数のほうが出力数より多くなるため、ＦＩＦＯメモリ４１のキューは増加（もしくは一定）する。一方で、補間手段１２からの出力よりも後段からの必要数が多い場合、すなわちメモリバス負荷が重く、画像補間手段１が後段に対して十分な処理速度性能を発揮できない場合は、ＦＩＦＯメモリ４１のキュー出力数のほうが入力数より多くなるため、ＦＩＦＯメモリ４１のキュー個数は減少する。
【００３９】
よって、実施の形態２は実施の形態１とは逆に、ＦＩＦＯメモリ４１のリードアドレスとライトアドレスの差分が小さいほどメモリバス負荷が累積的に過大であることを示す。評価値算出手段４２は、ＦＩＦＯメモリ４１からライトアドレスとリードアドレスを受け取り、その差分、あるいは差分の微分値等、アドレスからメモリバス負荷の多寡を算出してメモリ負荷評価値として出力する。実施の形態１と異なり、実施の形態２ではメモリ負荷評価値が小さい場合にメモリ負荷が過大であることを表す。
【００４０】
精度変換手段５ａでは画素座標を入力すると共に、メモリ負荷評価手段４ａからメモリ負荷評価値を受け取り、メモリ負荷評価値が小さい場合＝メモリバス負荷が過大な場合はバス負荷を低減するよう、画素座標の精度を変換する。メモリ負荷評価値が小さい場合に小数点以下の桁数が少なくなるよう丸めることで、メモリバス負荷の増加を抑制するような制御を与えることができる。図１０に実施の形態２におけるメモリ負荷評価値と丸め桁数の関係を例示する。実施の形態２では、メモリ負荷評価値と小数点以下の桁数のｂｉｔ数との関係が実施の形態１とは逆となっているため、図１０の（ａ）〜（ｃ）の特性も図８の（ａ）〜（ｃ）の特性とは逆の関係となっている。
【００４１】
以上説明したように、実施の形態２の画像補間装置によれば、メモリ負荷評価手段は、画素補間手段から出力される画素のデータを入力して保持し、データを所定の後段側の装置からの読み出し要求に基づいて出力するＦＩＦＯメモリと、ＦＩＦＯメモリが保持するデータが少ない場合はメモリ負荷が重いとして評価値を算出する評価値算出手段とを備えたので、冗長なバス設計を伴わずにリアルタイム性を保証することができる。
【００４２】
また、実施の形態２では、画素補間手段の出力側でメモリバス負荷の評価を行うため、後段の装置の動作速度（すなわち、後段の装置から入力されるａｃｋの速度）が安定している場合に有効である。
【００４３】
実施の形態３．
図１１は、実施の形態３による画像補間装置を示す構成図である。
実施の形態３の画像補間装置は、画素補間手段１、メモリ負荷評価手段４ｂ、精度変換手段５ａを備えている。実施の形態３では、メモリ負荷評価手段４ｂが、実施の形態２と同様に画素補間手段１の出力側に配置されていると共に、その内部構成が実施の形態２とは異なっている。すなわち、メモリ負荷評価手段４ｂは、画素数カウンタ４３と評価値算出手段４２ａとを備えている。画素数カウンタ４３は、画素補間手段１からの出力画素を入力し、単位時間当たりの出力画素の数（出力画素レート）をカウントするカウンタである。また、評価値算出手段４２ａは、画素数カウンタ４３からのカウント値に基づいて、メモリ負荷評価値を算出して出力するよう構成されている。
メモリバス２やメモリ３を含め、その他の構成は実施の形態１、２と同様であるため、対応する部分に同一符号を付してその説明を省略する。
【００４４】
次に、実施の形態３の画像補間装置の動作について実施の形態１、２とは異なる点を重点的に説明する。
画素数カウンタ４３は、画素補間手段１から出力画素を受け取り、単位時間当たりの出力画素の数（出力画素レート）をカウントする。評価値算出手段４２ａは、画素数カウンタ４３から受け取った出力画素レートＸと、出力画素レートの目標値Ｙを比較する。出力画素レートの目標値Ｙは外部からユーザが与える値であり、所望の処理速度（フレームレート）に処理画像のサイズを乗じることで決定される。一例をあげると、所望のフレームレート３０［ｆｒａｍｅ／ｓｅｃｏｎｄ］、処理画像サイズが６４０＊４８０［ｐｉｘｅｌ］であった場合、出力画素レートの目標値は６４０＊４８０＊３０＝９２１６０００［ｐｉｘｅｌ／ｓｅｃｏｎｄ］である。
【００４５】
評価値算出手段４２ａは画素数カウンタ４３から受け取った出力画素レートＸと、出力画素レートの目標値Ｙの差分Ｘ−Ｙを算出し、評価値として出力する。実施の形態３における評価値は、小さいほど出力画素のレートが足りていない＝メモリバス負荷が過大であることを示す。すなわち、精度変換手段５ａは、実施の形態２と同様にメモリ負荷評価値の値が小さい場合は小数点以下の桁数が少なくなるよう丸めることで、メモリバス負荷の増加を抑制するような制御を行う。
【００４６】
以上説明したように、実施の形態３の画像補間装置によれば、メモリ負荷評価手段は、画素補間手段から出力され画素のデータを入力し、当該画素数をカウントするカウンタと、カウンタのカウント値が少ない場合はメモリ負荷が重いとして評価値を算出する評価値算出手段とを備えたので、冗長なバス設計を伴わずにリアルタイム性を保証することができる。
【００４７】
また、実施の形態３では、画素補間手段の出力レートによってメモリバス負荷の評価を行うため、外部の装置の動作速度によらず、画像補間装置のみで一定の出力画素レートを保証したい場合に有効である。
【００４８】
実施の形態４．
図１２は、実施の形態４による画像補間装置を示す構成図である。
実施の形態４の画像補間装置は、画素補間手段１、メモリ負荷評価手段４ｃ、精度変換手段５を備えており、メモリ負荷評価手段４ｃ以外の構成は実施の形態１と同様であるため、メモリ負荷評価手段４ｃ以外の構成についてはその説明を省略する。
【００４９】
実施の形態４のメモリ負荷評価手段４ｃは、サイクルカウンタ４４と評価値算出手段４２ｂとを備えている。サイクルカウンタ４４は、メモリバス２を監視し、単位時間（サイクル）当たりの、画素補間手段１がメモリバス２を占有するサイクル数（メモリバス占有率）をカウントするカウンタである。評価値算出手段４２ｂは、サイクルカウンタ４４から受け取ったメモリバス占有率に基づいてメモリ負荷評価値を出力するよう構成されている。
【００５０】
次に、実施の形態４の画像補間装置の動作について実施の形態１〜３とは異なる点を重点的に説明する。
サイクルカウンタ４４は、単位時間（サイクル）あたりの、画像補間手段１がメモリバス２を占有するサイクル数（メモリバス占有率）をカウントする。最も単純には、読み出し画素が読み出されてきたサイクル数をカウントして、その割合を算出すればよいし、メモリバス２上で処理される読み出し要求など、メモリバス占有率につながるなんらかの要素をカウントし、その割合を算出してもよい。
【００５１】
評価値算出手段４２ｂは、サイクルカウンタ４４から受け取ったメモリバス占有率Ｘと、メモリバス占有率の目標値Ｙを比較する。メモリバス占有率の目標値Ｙは画素補間装置がメモリバスを占有（使用）してよい時間の割合であり、ユーザが決定して外部から与える値である。評価値算出手段４２ｂは、サイクルカウンタ４４から受け取ったメモリバス占有率Ｘと、メモリバス占有率の目標値Ｙの差分Ｘ−Ｙを算出し、評価値として出力する。実施の形態４における評価値は、大きいほどメモリバス負荷が過大であることを示す。これにより、精度変換手段５は、実施の形態１と同様に、メモリ負荷評価値が大きい場合に小数点以下の桁数が少なくなるよう丸めを行う。
【００５２】
以上説明したように、実施の形態４の画像補間装置によれば、メモリ負荷評価手段は、画素補間手段がメモリへのアクセスを行うためのメモリバスにおける占有率をカウント値として求めるサイクルカウンタと、サイクルカウンタが求めた占有率が高い場合はメモリ負荷が重いとして評価値を算出する評価値算出手段とを備えたので、冗長なバス設計を伴わずにリアルタイム性を保証することができる。
【００５３】
また、実施の形態４では、メモリバス占有率によりメモリバス負荷の評価を行うため、メモリバス負荷自体を一定の値に保ちたい場合、たとえば他の装置がメモリバスに接続されており、その性能を保証しなければならない場合などに有効である。
【００５４】
実施の形態５．
図１３は、実施の形態５による画像補間装置を示す構成図である。
実施の形態５の画像補間装置は、画素補間手段１ａ、メモリ負荷評価手段４、精度変換手段５を備えているが、実施の形態１に対してメモリ負荷評価手段４の配置が異なる。即ち、実施の形態５では、メモリ負荷評価手段４を画素補間手段１ａ中に配置している。メモリ負荷評価手段４は、読み出しアドレス算出手段１１と補間手段１２との間に設けられ、ＦＩＦＯメモリ４１は、読み出しアドレス算出手段１１における補間に必要な画素のアドレスを入力して、そのアドレスを格納し、画素補間手段１２からの読み出し要求によってアドレスを出力するよう構成されている。また、評価値算出手段４２は、ＦＩＦＯメモリ４１が保持するアドレスが多い場合はメモリ負荷が重いとしてこれを示すメモリ負荷評価値を精度変換手段５に対して出力するよう構成されている。その他の構成は、実施の形態１と同様であるため、対応する部分に同一符号を付してその説明を省略する。
【００５５】
次に、実施の形態５の画像補間装置の動作について実施の形態１〜４とは異なる点を重点的に説明する。
実施の形態５では、ＦＩＦＯメモリ４１は読み出しアドレス算出手段１１から精度変換後の画素座標を受け取り、ＦＩＦＯメモリ４１内にキューとして保持してライトアドレスを１加算する。また、ＦＩＦＯメモリ４１は補間手段１２からａｃｋ信号を受け取り、ライトアドレスがリードアドレスより大きければＦＩＦＯメモリ４１のリードアドレスを１加算する。ＦＩＦＯメモリ４１は、メモリへの読み出し要求が発行されてから補間手段１２に読み出し画素が入力されるまでの遅延に合わせて精度変換後の画素座標を遅延させるように動作する。
【００５６】
ＦＩＦＯメモリ４１において、メモリバス負荷が低い場合は読み出し要求から読み出し画素が補間手段１２に入力されるまでの遅延が小さくなり、ＦＩＦＯメモリ４１に入力されたキューは低遅延で出力されていくため、ＦＩＦＯメモリ４１のキューは減少（もしくは一定）する。
一方で、メモリバス負荷が重い場合は読み出し要求から読み出し画素が補間手段１２に入力されるまでの遅延が大きくなり、ＦＩＦＯメモリ４１に入力されたキューは高遅延で出力されることになるため、ＦＩＦＯメモリ４１のキュー個数は増加する。
よって、実施の形態５は実施の形態１と同様に、ＦＩＦＯメモリ４１のリードアドレスとライトアドレスの差分が大きいほどメモリバス負荷が累積的に過大であることを示す。これ以降の動作については実施の形態１と同様である。
【００５７】
以上説明したように、実施の形態５の画像補間装置によれば、画素補間手段は、精度変換された画素座標に基づいて補間に必要な画素のアドレスを算出する読み出しアドレス算出手段と、読み出しアドレスに基づいてメモリから補間に必要な画素のデータを読み出し、精度変換された画素座標の画素値を求める補間手段とを備え、メモリ負荷評価手段は、読み出しアドレス算出手段における補間に必要な画素のアドレスを入力して、アドレスを格納し、画素補間手段からの読み出し要求によってアドレスを出力するＦＩＦＯメモリと、ＦＩＦＯメモリが保持するアドレスが多い場合はメモリ負荷が重いとして評価値を算出する評価値算出手段とを備えたので、冗長なバス設計を伴わずにリアルタイム性を保証することができる。
【００５８】
また、実施の形態５では、メモリバス遅延時間に即した評価を行うため、メモリバス負荷の急峻な変化に即応したい場合に有効である。
【００５９】
なお、本願発明はその発明の範囲内において、各実施の形態の自由な組み合わせ、あるいは各実施の形態の任意の構成要素の変形、もしくは各実施の形態において任意の構成要素の省略が可能である。
【符号の説明】
【００６０】
１，１ａ  画素補間手段、２  メモリバス、３  メモリ、４，４ａ，４ｂ，４ｃ  メモリ負荷評価手段、５，５ａ  精度変換手段、１１  読み出しアドレス算出手段、１２  補間手段、４１  ＦＩＦＯメモリ、４２，４２ａ，４２ｂ  評価値算出手段、４３  画素数カウンタ、４４  サイクルカウンタ。
【図１】
2014102730.tif 000003
【図２】
2014102730.tif 000004
【図３】
2014102730.tif 000005
【図４】
2014102730.tif 000006
【図５】
2014102730.tif 000007
【図６】
2014102730.tif 000008
【図７】
2014102730.tif 000009
【図８】
2014102730.tif 000010
【図９】
2014102730.tif 000011
【図１０】
2014102730.tif 000012
【図１１】
2014102730.tif 000013
【図１２】
2014102730.tif 000014
【図１３】
2014102730.tif 000015