(57)【要約】【課題】ラスタースキャン順序で画素が伝送される原画像の一部を書き換える場合において、処理遅延とハードウエアの使用量の増大を解消すること。【解決手段】本発明は、ラスタースキャン順序で画素が伝送される原画像の一部を書換画像で書き換える画像書換装置に適用される。本発明の画像書換装置は、ラスタースキャン順序で前記原画像の各画素を入力し、その入力画素をラインバッファに格納すると共に、その入力画素が、原画像の最初の画素から数えて何番目の画素であるかをカウントし、そのカウント値が書換画像の画素に対応している場合には、前記ラインバッファ内の入力画素の画素値を書換画像の画素の画素値に置き換えて出力する画素書換部１２を有する。【選択図】図１
2014203243.tif 000002
【特許請求の範囲】
【請求項１】
ラスタースキャン順序で画素が伝送される原画像の一部を書換画像で書き換える画像書換装置であって、
ラスタースキャン順序で前記原画像の各画素を入力し、その入力画素をラインバッファに格納すると共に、その入力画素が、原画像の最初の画素から数えて何番目の画素であるかをカウントし、そのカウント値が書換画像の画素に対応している場合には、前記ラインバッファ内の入力画素の画素値を書換画像の画素の画素値に置き換えて出力する画素書換部を有する画像書換装置。
【請求項２】
前記画素書換部は、
前記原画像の最初の画素から順番に、前記原画像の画素値ｘの画素を入力すると、カウント値ｃを１増加させるカウンタと、
前記カウント値ｃが前記書換画像の画素に対応しているか否かを判断する対象判断部と、
前記ラインバッファを含み、前記カウント値ｃが前記書換画像の画素に対応している場合には、前記ラインバッファ内の入力画素の画素値ｘを書換画像の画素の画素値に置き換えて出力する書換実施部と、を有し、
前記対象判断部は、
前記原画像の中の、前記書換画像で書き換える書換対象領域が１箇所である場合、前記書換対象領域の左上の画素の行方向の座標ｊおよび列方向の座標ｋと、前記原画像の行方向の画素数Ｍと、を用いて、前記カウント値ｃが次式の条件に合致するか否かを判断し、
ｊ＝ｃ  ｍｏｄ  Ｍ
かつ
ｋ＝ｉｎｔ（ｃ／Ｍ）
前記カウント値ｃが前記条件に合致すれば、前記カウント値ｃが前記書換画像の画素に対応していると判断する、請求項１に記載の画像書換装置。
【請求項３】
前記画素書換部は、
前記原画像の最初の画素から順番に、前記原画像の画素値ｘの画素を入力すると、カウント値ｃを１増加させるカウンタと、
前記カウント値ｃが前記書換画像の画素に対応しているか否かを判断する対象判断部と、
前記ラインバッファを含み、前記カウント値ｃが前記書換画像の画素に対応している場合には、前記ラインバッファ内の入力画素の画素値ｘを書換画像の画素の画素値に置き換えて出力する書換実施部と、を有し、
前記対象判断部は、
前記原画像の中の、前記書換画像で書き換える書換対象領域が複数箇所である場合、複数の前記書換対象領域の左上の画素の行方向の座標ｊおよび列方向の座標ｋと、前記原画像の行方向の画素数Ｍと、を用いて、アドレスＭｋ＋ｊを計算し、前記アドレスＭｋ＋ｊの書換判断の値を、書換判断配列ｑ［Ｍｋ＋ｊ］として格納しておき、
前記カウント値ｃ＝Ｍｋ＋ｊとして、前記書換判断配列ｑ［Ｍｋ＋ｊ］を読み出し、その値が予め決められた値であれば、前記カウント値ｃが前記書換画像の画素に対応していると判断する、請求項１に記載の画像書換装置。
【請求項４】
前記画素書換部は、
前記原画像の最初の画素から順番に、前記原画像の画素値ｘの画素を入力すると、カウント値ｃを１増加させるカウンタと、
前記カウント値ｃが前記書換画像の画素に対応しているか否かを判断する対象判断部と、
前記ラインバッファを含み、前記カウント値ｃが前記書換画像の画素に対応している場合には、前記ラインバッファ内の入力画素の画素値ｘを書換画像の画素の画素値に置き換えて出力する書換実施部と、を有し、
前記対象判断部は、
前記原画像の中の、前記書換画像で書き換える書換対象領域が複数箇所であり、複数の前記書換対象領域の左上の画素の行方向の座標がｊeで列方向の座標がｋe（ｅ＝１，２，…）である場合、
次式で表されるｄeのリストを格納しておき、
ｄe＝Ｍｋe＋ｊe（ｅ＝１，２，…）
前記カウント値ｃとｄeとが等しい場合には、前記カウント値ｃが前記書換画像の画素に対応していると判断するとともに、ｅを１増加させる、請求項１に記載の画像書換装置。
【請求項５】
前記ラインバッファは、
インデックスｈが付与されたレジスタｐ［ｈ］から構成され、
前記書換実施部は、
前記書換画像の列方向とは反対方向の座標がａで行方向とは反対方向の座標ｂである画素の画素値が、インデックスｍｂ＋ａが付与されたレジスタにｒ［ｍｂ＋ａ］として予め格納された書換画像格納部をさらに含み、
前記カウント値ｃが前記書換画像の画素に対応している場合、前記インデックスｈと、前記原画像の行方向の画素数Ｍと、を用いて、次式により変数ａ，ｂを求め、
ａ＝ｈ  ｍｏｄ  Ｍ
ｂ＝ｉｎｔ（ｈ／Ｍ）
前記変数ａと、前記書換画像の行方向の画素数ｍと、を用いて、前記インデックスｈが次式の条件を満たすか判断し、
０≦ａ＜ｍ
前記ラインバッファにおいて、前記条件を満たすインデックスｈが付与されたレジスタｐ［ｈ］には、画素値ｒ［ｍｂ＋ａ］を格納し、レジスタｐ［０］には、画素値ｘを格納し、その他のレジスタｐ［ｈ］には、レジスタｐ［ｈ−１］に格納された画素値を格納し、
前記原画像の行方向の画素数Ｍと、前記書換画像の行方向の画素数ｍおよび列方向の画素数ｎと、を用いて、前記ラインバッファのレジスタｐ［Ｍ（ｎ−１）＋ｍ−１］に格納された画素値を出力する、請求項２から４のいずれか１項に記載の画像書換装置。
【請求項６】
前記ラインバッファは、
インデックスｈが付与されたレジスタｐ［ｈ］から構成され、
前記書換実施部は、
前記書換画像の列方向とは反対方向の座標がａで行方向とは反対方向の座標ｂである画素の画素値が、インデックスｍｂ＋ａが付与されたレジスタにｒ［ｍｂ＋ａ］として予め格納された書換画像格納部をさらに含み、
前記カウント値ｃが前記書換画像の画素に対応している場合、前記インデックスｈと、前記原画像の行方向の画素数Ｍと、を用いて、次式により変数ａ，ｂを求め、
ａ＝ｈ  ｍｏｄ  Ｍ
ｂ＝ｉｎｔ（ｈ／Ｍ）
前記変数ａと、前記書換画像の行方向の画素数ｍと、を用いて、前記インデックスｈが次式の条件を満たすか判断し、
０≦ａ＜ｍ
前記ラインバッファにおいて、前記条件を満たすインデックスｈが付与されたレジスタｐ［ｈ］には、レジスタｐ［ｈ−１］に格納された画素値と画素値ｒ［ｍｂ＋ａ］とを線形結合した画素値を格納し、レジスタｐ［０］には、画素値ｘを格納し、その他のレジスタｐ［ｈ］には、レジスタｐ［ｈ−１］に格納された画素値を格納し、
前記原画像の行方向の画素数Ｍと、前記書換画像の行方向の画素数ｍおよび列方向の画素数ｎと、前記ラインバッファのレジスタｐ［Ｍ（ｎ−１）＋ｍ−１］に格納された画素値を出力する、請求項２から４のいずれか１項に記載の画像書換装置。
【請求項７】
ラスタースキャン順序で画素が伝送される原画像の一部を書換画像で書き換える画像書換装置による画像書換方法であって、
ラスタースキャン順序で前記原画像の各画素を入力し、
その入力画素をラインバッファに格納すると共に、その入力画素が、原画像の最初の画素から数えて何番目の画素であるかをカウントし、
そのカウント値が書換画像の画素に対応している場合には、前記ラインバッファ内の入力画素の画素値を書換画像の画素の画素値に置き換えて出力する、画像書換装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ラスタースキャン順序で画素が伝送される原画像の一部を上書きまたは重ね書きして書き換える技術に関する。
【背景技術】
【０００２】
ラスタースキャン順序で原画像の画素（ピクセル）が伝送される場合に、原画像の一部の領域を指定して、所定のパタンの画像を上書きして書き換えたり、半透明な画像を重ね書きして書き換えたりする加工処理を行うことがある。
【０００３】
原画像の一部を書き換える場合、一般に、いったん原画像を、ランダムアクセス可能なメモリによって構成されたフレームバッファに、画素ごとに書き換え可能なように格納し、このフレームバッファに対して、画素単位の書き換えを行う。
【０００４】
その際、画素を書き換えるアドレスは、上書きまたは重ね書きする位置に基づいて計算をして得る。また、このアドレスに書き込む画素の画素値は、上書きまたは重ね書きする画像に応じて、いくつかの方法によって得る。例えば、上書きする画像が、ＣＧ（Computer Graphics）などの場合には、ＧＰＵ（Graphics Processing Unit）などを用いたシェーダ演算などにより画素値を得る。また、上書きする画像が、別カメラなどで撮影した撮影画像の場合には、ＣＰＵ（Central Processing Unit）あるいはＧＰＵなどを用いたアルファブレンディング演算などにより、画素値を得る。
【０００５】
これらの技術は、原画像をいったんフレームバッファに格納する点が共通である。しかし、原画像の中のどの領域を上書きまたは重ね書きするかは、一般に設計時には決定していないため、フレームバッファに原画像を１フレーム時間待機させておく必要があり、そのための処理遅延が発生してしまうという問題があった。
【０００６】
また、上書きまたは重ね書きする箇所が多数あり、かつ、事前に該当箇所を１つの処理装置やメモリに集めることが難しい場合、この工程を所定回数繰り返すことになるため、毎回、１フレーム時間以上の遅延が発生し、処理遅延がますます大きくなっていた。
【０００７】
また、この１工程のためにかならず１フレーム以上のフレームバッファを構成するためのメモリが必要となり、ハードウエアの使用量が多くなってしまうことも問題であった。
【０００８】
なお、上書きする画像がＣＧなどの場合に、ＧＰＵなどを用いたシェーダ演算などにより画素値を得る先行技術は、非特許文献１に示されている。非特許文献１には、フレーム単位に処理を行うことが示されている。
【先行技術文献】
【非特許文献】
【０００９】
【非特許文献１】“ＧＰＵはいつ描画するのか？”、［平成２５年３月１１日検索］、インターネット＜URL:http://blogs.msdn.com/b/ito/archive/2009/03/25/how-gpus-works-01.aspx＞
【発明の概要】
【発明が解決しようとする課題】
【００１０】
上述したように、従来技術においては、原画像への上書きまたは重ね書きの加工処理のために、原画像をフレームバッファに格納して１フレーム時間待機させておくことによる処理遅延とハードウエアの使用量の増大が課題となっている。
【００１１】
以下、上記の課題について具体的に説明する。
【００１２】
図１１に従来の画像書換装置の構成を示し、図１２に従来の画像書換装置の処理手順を示す。
【００１３】
図１１に示すように、従来の画像書換装置は、３個のフレームバッファ１１０（ｆ０，ｆ１，ｆ２）と、入力書込部１２０と、書換部１３０と、出力読出部１４０と、スイッチ１５０と、を有している。
【００１４】
入力書込部１２０は、入力された原画像をフレームバッファ１１０に書き込む。
【００１５】
書換部１３０は、フレームバッファ１１０に格納された原画像の一部を、画素単位で書き換える。
【００１６】
出力読出部１４０は、書換部１３０が書き換えた画像をフレームバッファ１１０から読み出して出力する。
【００１７】
スイッチ１５０は、入力書込部１２０、書換部１３０、および出力読出部１４０を、フレームバッファ１１０（ｆ０，ｆ１，ｆ２）に接続する。
【００１８】
３個のフレームバッファ１１０（ｆ０，ｆ１，ｆ２）には、それぞれ、入力書込部１２０による原画像の書き込み、書換部１３０による画像の書き換え、および出力読出部１４０による画像の出力、の３つの処理が順次割り当てられる。この割り当てを図１２に処理手順として示す。
【００１９】
図１２に示すように、フレームバッファ１１０（ｆ０）には、まず、入力書込部１２０による原画像の書き込みが割り当てられ、その１フレーム時間後には、書換部１３０による画像の書き換えが割り当てられ、さらにその１フレーム時間後には、出力読出部１４０による画像の出力が割り当てられる。この割り当ては以降も繰り返される。他の２個のフレームバッファ１１０（ｆ１，ｆ２）には、それぞれ、フレームバッファ１１０（ｆ０）から１フレーム時間分づつずらして、同様の割り当てが行われる。
【００２０】
すなわち、従来の画像書換装置では、画像が入力されてから出力するまで、少なくとも１度はフレームバッファ１１０に画素を蓄えていたため、１フレーム時間以上、図１２では、２フレーム時間の処理遅延が生じていた。
【００２１】
また、従来の画像書換装置では、１フレーム以上、図１２では、３フレームのフレームバッファ１１０をそれぞれ構成するためのメモリが必要となり、ハードウエアの使用量が多くなっていた。
【００２２】
そこで、本発明の目的は、ラスタースキャン順序で画素が伝送される原画像の一部を書き換える場合において、処理遅延とハードウエアの使用量の増大を解消することができる技術を提供することにある。
【課題を解決するための手段】
【００２３】
本発明の画像書換装置は、
ラスタースキャン順序で画素が伝送される原画像の一部を書換画像で書き換える画像書換装置であって、
ラスタースキャン順序で前記原画像の各画素を入力し、その入力画素をラインバッファに格納すると共に、その入力画素が、原画像の最初の画素から数えて何番目の画素であるかをカウントし、そのカウント値が書換画像の画素に対応している場合には、前記ラインバッファ内の入力画素の画素値を書換画像の画素の画素値に置き換えて出力する画素書換部を有する。
【００２４】
本発明の画像書換方法は、
ラスタースキャン順序で画素が伝送される原画像の一部を書換画像で書き換える画像書換装置による画像書換方法であって、
ラスタースキャン順序で前記原画像の各画素を入力し、
その入力画素をラインバッファに格納すると共に、その入力画素が、原画像の最初の画素から数えて何番目の画素であるかをカウントし、
そのカウント値が書換画像の画素に対応している場合には、前記ラインバッファ内の入力画素の画素値を書換画像の画素の画素値に置き換えて出力する。
【発明の効果】
【００２５】
本発明によれば、ラスタースキャン順序で原画像の各画素を入力し、その入力画素をラインバッファに格納すると共に、その入力画素が、原画像の最初の画素から数えて何番目の画素であるかをカウントし、そのカウント値が書換画像の画素に対応している場合には、ラインバッファ内の入力画素の画素値を書換画像の画素の画素値に置き換えて出力する。
【００２６】
したがって、従来技術のように原画像をフレームバッファに格納して１フレーム時間待機させておくことがなくなるため、そのための処理遅延とハードウエアの使用量の増大を解消することができるという効果が得られる。
【００２７】
なお、上記の効果は、原画像を書き換える加工処理を繰り返し施す回数が多いほど、また、原画像の列方向の画素数が大きいほど顕著である。
【図面の簡単な説明】
【００２８】
【図１】本発明の第１および第２の実施形態の画像書換装置の構成を示す図である。
【図２】書換実施部の構成を示す図である。
【図３】原画像と書換対象領域との位置関係を示す図である。
【図４】原画像の画素の入力順序を示す図である。
【図５】書換画像の配列表記と、書換画像格納部のレジスタ配置と、を示す図である。
【図６】本発明の第１の実施形態の画像書換装置の動作を示すフロー図である。
【図７】ラインバッファの構造と、ラインバッファのレジスタ配置と、を示す図である。
【図８】書換判断配列と書換対象領域との位置関係と、書換判断配列のメモリ配置と、を示す図である。
【図９】本発明の第１の実施形態の画像書換装置の効果を示す図である。
【図１０】本発明の第２の実施形態の画像書換装置の動作を示すフロー図である。
【図１１】従来の画像書換装置の構成を示す図である。
【図１２】従来の画像書換装置の処理手順を示す図である。
【発明を実施するための形態】
【００２９】
以下に、本発明を実施するための形態について図面を参照して説明する。
（１）第１の実施形態
本実施形態は、原画像の一部に対し、所定のパタンの書換画像を上書きして書き換える加工処理を行うものである。
【００３０】
図１に本実施形態の画像書換装置の構成を示し、図２に図１に示した書換実施部１２４の構成を示す。
【００３１】
図１に示すように、本実施形態の画素書換装置は、画素入力部１１と、画素書換部１２と、画素出力部１３と、を有している。
【００３２】
画素入力部１１は入力ポートを備え、画素出力部１３は出力ポートを備えている。
【００３３】
画素書換部１２は、ラスタースキャン順序で原画像の各画素を画素入力部１１の入力ポートを介して入力し、その入力画素をラインバッファに格納すると共に、その入力画素が、原画像の最初の画素から数えて何番目の画素であるかをカウントし、そのカウント値が書換画像の画素に対応している場合には、ラインバッファ内の入力画素の画素値を書換画像の画素の画素値に置き換え、画素出力部１３の出力ポートを介して出力する。
【００３４】
画素書換部１２は、カウンタ１２１と、同期検出部１２２と、対象判断部１２３と、書換実施部１２４と、を有している。また、書換実施部１２４は、書換画像格納部１２５と、ラインバッファ部１２６と、を有している。
【００３５】
なお、画素書換部１２内の各構成要素が行う動作については後述する。
【００３６】
図３に原画像と書換対象領域との位置関係を示し、図４に原画像の画素の入力順序を示す。
【００３７】
図３および図４に示すように、原画像の画素は、左上から右へ、行単位のラスタースキャン順序で時系列を構成して入力される。
【００３８】
図４において、『Ａ』、『Ｂ』等の枠は画素を示し、また、その枠内の文字は画素の画素値を示している。
【００３９】
原画像の左から右への行方向（横方向）の画素数はＭで、上から下への列方向（縦方向）の画素数はＮである。
【００４０】
原画像の各画素には、左上の画素（原画像の最初の画素）を原点（０，０）とし、２次元で、左から右への行方向、および、上から下への列方向に昇順に座標が（＜行方向＞，＜列方向＞）という形式によって、与えられている。
【００４１】
原画像の中の書換対象領域は、左上の画素の座標が（ｊ，ｋ）である矩形領域である。この書換対象領域の画素の画素値を、書換画像の画素の画素値によって置き換える。なお、この書換対象領域は、原画像の中に複数ある場合も起こりうる。
【００４２】
図５に、書換画像の配列表記と、書換画像格納部１２５のレジスタとインデックス（添字）との関係と、を示す。
【００４３】
図５に示すように、書換画像の行方向の画素数はｍ、列方向の画素数はｎである。図５では、書換画像の配列を、画面上の向きとは転置（１８０度回転）させて提示してある。
【００４４】
書換画像の各画素には、画面上での右下の画素を原点（０，０）とし、２次元で、右から左への、行方向とは反対方向、および、下から上への、列方向とは反対方向に、昇順に座標が（ａ，ｂ）という形式によって、与えられている。ここで、ａは画面上での位置の行方向とは反対方向の座標、ｂは画面上での位置の列方向とは反対方向の座標を表す。
【００４５】
書換画像の座標（ａ，ｂ）の画素の画素値は、書換画像格納部１２５においてインデックスｍｂ＋ａが付与されたレジスタにｒ［ｍｂ＋ａ］として予め書込んでおく。
【００４６】
以下、図１に示した本実施形態の画像書換装置の動作について説明する。
【００４７】
図６に、本実施形態の画像書換装置の動作を説明するフロー図を示す。
【００４８】
図６に示すように、図４の時系列を形成している原画像の各画素は、画素入力部１１の入力ポートに到着する。
【００４９】
画素書換部１２では、画素入力部１１の入力ポートから画素値ｘの画素を入力し、カウンタ１２１は、カウント値ｃを１増加させる。また、同期検出部１２２は、書換実施部１２４のラインバッファ部１２６の最終段の１つ前のレジスタｐ［Ｍ（ｎ−１）＋ｍ−２］に格納されている画素値ｚを読み取り、画素値ｚがフレーム同期信号である場合には、カウンタ１２１のカウント値ｃをリセットして０とする（ステップＳ１）。フレーム同期信号は、原画像の最初の画素の直前に入力されるため、カウント値ｃは、入力画素が原画像の最初の画素から数えて何番目の画素であるかを示す値となる。
【００５０】
また、画素書換部１２では、入力した画素の画素値ｘを書換実施部１２４のラインバッファ部１２６に格納する。
【００５１】
図７に示すように、ラインバッファ部１２６は、画素値を到着順に順次格納するレジスタチェーン構造のラインバッファとなっている。ラインバッファ部１２６を構成するレジスタには、図７に示す通り、構造に対するインデックスを付与しておく。このインデックスｈが
ａ＝ｈ  ｍｏｄ  Ｍ
について
０≦ａ＜ｍ
となるレジスタに対しては、そのａの値により一意に定まるレジスタを予め用意しておく。これらのレジスタの集まりが書換画像格納部１２５であり、書換画像格納部１２５には図５に示した通り、インデックスを与える。すなわち、書換画像格納部１２５のレジスタは、ラインバッファ部１２６の該当部分のレジスタと１つ１つ一意に対応する。
【００５２】
画素値ｘの画素が入力されると、対象判断部１２３は、カウント値ｃが書換画像の画素に対応しているか否かを判断する（ステップＳ２）。
【００５３】
例えば、原画像の中の書換対象領域が毎フレーム１箇所であり、その書換対象領域の左上の画素の座標が（ｊ，ｋ）で与えられている場合には、書換対象領域の左上の画素の行方向の座標ｊおよび列方向の座標ｋと、原画像の行方向の画素数Ｍと、を用いて、カウント値ｃが次式の条件に合致するか否かを判断し、条件に合致すれば、カウント値ｃが書換画像の画素に対応していると判断する、ということができる。
【００５４】
ｊ＝ｃ  ｍｏｄ  Ｍ
かつ
ｋ＝ｉｎｔ（ｃ／Ｍ）
また、原画像の中の書換対象領域が複数箇所である場合、すなわち、上記座標（ｊ，ｋ）が複数与えられている場合、それらの各座標からアドレスＭｋ＋ｊを計算し、アドレスＭｋ＋ｊの書換判断の値（予め決められた値、例えば、値１）を、図８に示すように、書換判断配列ｑ［Ｍｋ＋ｊ］として、メモリ（不図示）に格納しておくことによって、カウント値ｃが書換画像の画素に対応しているか否かを判断することができる。
【００５５】
具体的には、カウント値ｃ＝Ｍｋ＋ｊとして、書換判断配列ｑ［Ｍｋ＋ｊ］を読み出し、その値が１であれば、カウント値ｃが書換画像の画素に対応していると判断する、ということができる。
【００５６】
あるいは、複数与えられた書換対象領域の左上の画素の座標を（ｊe，ｋe）、ここで、ｅ＝１，２，…としたとき、
次式で表されるｄeのリストを値が昇順にメモリ（不図示）に格納して用意しておく。
【００５７】
ｄe＝Ｍｋe＋ｊe  ここで、ｅ＝１，２，…
そして、カウント値ｃとｄeとが等しい場合には、カウント値ｃが書換画像の画素に対応していると判断するとともに、ｅを１増加させる、ということもできる。
【００５８】
対象判断部１２３は、カウント値ｃに基づく判断結果をｑ［ｃ］として書換実施部１２４に与え、カウント値ｃが書換画像の画素に対応している場合、ｑ［ｃ］＝１とする。
【００５９】
書換実施部１２４は、カウント値ｃが書換画像の画素に対応している場合、ラインバッファ部１２６のすべてのレジスタ（すなわち、レジスタｐ［０］も含む）について、インデックスｈと、原画像の行方向の画素数Ｍと、を用いて、次式により変数ａ，ｂを求める。
【００６０】
ａ＝ｈ  ｍｏｄ  Ｍ
ｂ＝ｉｎｔ（ｈ／Ｍ）
次に、書換実施部１２４は、変数ａと、書換画像の行方向の画素数ｍと、を用いて、インデックスｈが次式の条件を満たすか否かを判断する。
【００６１】
０≦ａ＜ｍ
書換実施部１２４は、インデックスｈが上記の条件を満たしていれば、変数ａ，ｂと、書換画像の行方向の画素数ｍと、を用いて、書換画像格納部１２５から画素値ｒ［ｍｂ＋ａ］を読み出し、上記の条件を満たすインデックスｈが付与されたレジスタｐ［ｈ］には、画素値ｒ［ｍｂ＋ａ］を格納する。また、それ以外のインデックスｈが付与されたレジスタｐ［ｈ］には、レジスタｐ［ｈ−１］に格納された画素値を格納する。ただし、レジスタｐ［０］には、画素値ｘを格納する（ステップＳ３）。これにより、ラインバッファ部１２６のすべてのレジスタｐ［ｈ］を更新する。
【００６２】
一方、書換実施部１２４は、カウント値ｃが書換画像の画素に対応していない場合、ラインバッファ部１２６のすべてのレジスタ（すなわち、レジスタｐ［０］も含む）について、インデックスｈが付与されたレジスタｐ［ｈ］に、レジスタｐ［ｈ−１］に格納された画素値を格納する。ただし、レジスタｐ［０］には、画素値ｘを格納する（ステップＳ４）。これにより、ラインバッファ部１２６のすべてのレジスタｐ［ｈ］を更新する。
【００６３】
その後、書換実施部１２４は、原画像の行方向の画素数Ｍと、書換画像の行方向の画素数ｍおよび列方向の画素数ｎと、を用いて、ラインバッファ部１２６のレジスタｐ［Ｍ（ｎ−１）＋ｍ−１］に格納された画素値を読み出し、この画素値を出力画素の画素値ｙとして画素出力部１３の出力ポートに書き込む（ステップＳ５）。
【００６４】
以上の図６の手順は、画素入力部１１の入力ポートから画素を入力するかぎり、画素の入力ごとに１回繰り返す。
【００６５】
図９に、本実施形態の効果を示す。
【００６６】
従来技術では、原画像をフレームバッファに格納して待機させておく必要があったため、１フレーム時間以上の処理遅延が生じていた。
【００６７】
これに対して、本実施形態では、図９に示すように、画素入力部１１に到着した画素（画素値ｘ）は、画素書換部１２に入力され、書換実施部１２４（ラインバッファ部１２６）で一定時間待機させられ、その間に画素の書き換えが実施されるが、この期間は、たかだか書換画像の列方向の画素数分のラインバッファ程度である。そのため、入力画像フレームと出力画像フレームの遅延時間もまた、たかだかこのラインバッファ程度の時間となる。一般に、書換画像は、画面全体に対して十分に小さいため、書換画像の列方向の画素数は、原画像の列方向の画素数にくらべて十分に小さい。したがって、この遅延は、従来技術で１フレーム時間以上の遅延が生じていたことと比較して、圧倒的に小さくなる。
【００６８】
また、従来技術では、１フレーム以上のフレームバッファを構成するためのメモリが必要となり、ハードウエアの使用量が多くなっていた。
【００６９】
これに対して、本実施形態では、入力される原画像の画素も、出力される書き換えた画像の画素も、容量の小さいラインバッファに格納される。このように、大容量のフレームバッファを用いないため、従来技術と比較して、ハードウエアの使用量を削減できる。
【００７０】
なお、従来技術では、原画像の大きさに応じたフレームバッファを必要としたため、列方向の解像度が大きい場合には、所用資源も比例して増大していた。
【００７１】
これに対して、本実施形態におけるラインバッファは、原画像の行方向の画素数のＭと書換画像の列方向の画素数ｎにより容量がさだまるため、原画像の列方向の画素数Ｎの増加の影響は受けない。すなわち、原画像の列方向の画素数Ｎが大きい場合に、従来比効果が大きくなる。
【００７２】
さらに、原画像の一部を上書きする加工処理を繰り返し行う場合には、処理遅延の削減時間の差、および、ハードウエア使用量の削減量の差は、その繰り返し数に応じて広がることになり、上記の効果がさらに顕著となる。
【００７３】
特に、原画像に対して、同じ書換画像の上書きを複数ヶ所に（ｗ回）施す場合、本実施形態によれば、所要装置規模、所要処理時間ともにｗに依存することは全くないため、従来比効果が非常に大きい。また、そのため、回数ｗが原画像そのものを含めて、なんらかの外的条件によって決まるために、事前にわからない場合でも、適用可能である。
（２）第２の実施形態
本実施形態は、原画像の一部に対し、半透明な書換画像を重ね書きして書き換える加工処理を行うものである。
【００７４】
なお、本実施形態の構成は第１の実施形態と同様である。
【００７５】
図１０に、本実施形態の画像書換装置の動作を説明するフロー図を示す。
【００７６】
図１０に示すように、本実施形態の画像書換装置の動作は、図６に示したステップＳ３を、ステップＳ３’に置き換えた点が異なり、その他の処理手順は第１の実施形態と同様である。
【００７７】
すなわち、第１の実施形態では、図６のステップＳ３において、条件を満たすインデックスｈが付与されたレジスタｐ［ｈ］には、画素値ｒ［ｍｂ＋ａ］を格納していた。
【００７８】
これに対して、本実施形態では、図１０のステップＳ３’において、条件を満たすインデックスｈが付与されたレジスタｐ［ｈ］には、画素値“（ｕ  ｐ［ｈ−１］）＋（ｖ  ｒ［ｍｂ＋ａ］）”、すなわち、レジスタｐ［ｈ−１］に格納された画素値と画素値ｒ［ｍｂ＋ａ］とを線形結合した画素値を”格納している。
【００７９】
これにより、原画像の一部に対し、半透明な書換画像を重ね書きして書き換える加工処理を行うことができる。また、第１の実施形態と同様、従来技術のように原画像をフレームバッファに格納して１フレーム時間待機させておくことがなくなるため、そのための処理遅延とハードウエアの使用量の増大を解消することができる。
【符号の説明】
【００８０】
１１    画素入力部
１２    画素書換部
１２１    カウンタ
１２２    同期検出部
１２３    対象判断部
１２４    書換実施部
１２５    書換画像格納部
１２６    ラインバッファ部
１３    画素出力部
【図１】
2014203243.tif 000003
【図２】
2014203243.tif 000004
【図３】
2014203243.tif 000005
【図４】
2014203243.tif 000006
【図５】
2014203243.tif 000007
【図６】
2014203243.tif 000008
【図７】
2014203243.tif 000009
【図８】
2014203243.tif 000010
【図９】
2014203243.tif 000011
【図１０】
2014203243.tif 000012
【図１１】
2014203243.tif 000013
【図１２】
2014203243.tif 000014