JP2015099443A - Image processing apparatus, image processing method, and computer program - Google Patents

Image processing apparatus, image processing method, and computer program Download PDF

Info

Publication number
JP2015099443A
JP2015099443A JP2013238069A JP2013238069A JP2015099443A JP 2015099443 A JP2015099443 A JP 2015099443A JP 2013238069 A JP2013238069 A JP 2013238069A JP 2013238069 A JP2013238069 A JP 2013238069A JP 2015099443 A JP2015099443 A JP 2015099443A
Authority
JP
Japan
Prior art keywords
image
data
area
update area
update
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.)
Granted
Application number
JP2013238069A
Other languages
Japanese (ja)
Other versions
JP6338357B2 (en
JP2015099443A5 (en
Inventor
和希 緑川
Kazuki Midorikawa
和希 緑川
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.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2013238069A priority Critical patent/JP6338357B2/en
Publication of JP2015099443A publication Critical patent/JP2015099443A/en
Publication of JP2015099443A5 publication Critical patent/JP2015099443A5/en
Application granted granted Critical
Publication of JP6338357B2 publication Critical patent/JP6338357B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Processing Or Creating Images (AREA)
  • Image Generation (AREA)
  • Controls And Circuits For Display Device (AREA)

Abstract

PROBLEM TO BE SOLVED: To reduce the drawing time in drawing a second image over a first image, and reduce the band width required for the output of drawn data.SOLUTION: An image processing apparatus specifies an area to be updated in an area of a frame immediately before the current frame according to a drawing command; reads out data of the specified area from coded image data of the frame immediately before the current frame, decodes the read-out data, and overwrites the data of the area to be updated in the current frame on the decoded data and encodes the resulting data to create partially-coded image data; and merges the coded image data of the frame immediately before the current frame and the partially-coded image data with reference to the area to be updated in the area of the frame immediately before the current frame.

Description

本発明は、画像処理装置、画像処理方法、及びコンピュータプログラムに関し、特に、第1の画像に第2の画像を上書きして画像を描画するために用いて好適なものである。   The present invention relates to an image processing apparatus, an image processing method, and a computer program, and is particularly suitable for use in drawing an image by overwriting a second image on a first image.

アニメーションの描画に、ベクタグラフィックスを用いるシステムが普及している。表示デバイスの大画面化や高解像度化に伴い、画像の描画に用いるレンダラが取り扱うピクセル数は今後も増大が予想される。描画対象のピクセル数が多い場合、座標情報や色情報を用いて描画図形(オブジェクト)の形状を指示するベクタグラフィックスの方が、ビットマップを用いるラスタグラフィックスと比較して描画指示に用いるデータが小さい。   Systems that use vector graphics for drawing animation have become widespread. With the increase in screen size and resolution of display devices, the number of pixels handled by the renderer used to draw an image is expected to increase in the future. If the number of pixels to be drawn is large, vector graphics that specify the shape of a drawing figure (object) using coordinate information and color information are used for drawing instructions compared to raster graphics that use bitmaps. Is small.

ベクタグラフィックスアニメーションを描画するレンダラは、アニメーションを構成する各フレームを順に描画する。フレームの描画する方法として、各フレームに含まれるアニメーションの要素を毎フレームすべて描画する方法の他に、以前に描画した画像に現在のフレームで更新される差分を描画する方法がある。特許文献1には、オブジェクトの動作によって更新される領域のみを既に描画されたフレーム画像に上書きする方法が開示されている。   A renderer that draws vector graphics animation draws each frame constituting the animation in turn. As a method of drawing a frame, there is a method of drawing a difference updated in the current frame in a previously drawn image in addition to a method of drawing all animation elements included in each frame every frame. Patent Document 1 discloses a method of overwriting an already drawn frame image with only an area updated by the operation of an object.

任意のベクタグラフィックスアニメーションを描画するシステムでは、レンダラによるアニメーションの描画にかかる時間が予測できない。このようなシステムでは、描画済みの画像の表示処理と画像の更新処理とのタイミング制御の容易化のため、ダブルバッファやマルチバッファを用いる構成を採るものがある。ダブルバッファを用いるシステムでは、レンダラが以前のフレームとの差分を描画する場合、ダブルバッファを構成するバッファ間で適切なデータをコピーしておく必要がある。描画中のフレームが以前のフレームで描画したオブジェクトに半透明のオブジェクトを重ねるケースや、描画命令に基づき描画済みのフレームの任意の場所を参照し、現在のオブジェクトの描画に必要な色情報を描画済みのフレームから取得するケースがある。このため、1フレーム前の描画結果を、これから描画するバッファまたはワークメモリにコピーし、コピーが完了した後に描画処理を開始する。描画処理に先だって行われるバッファ間の画像のコピーにかかる待ち時間を削減するため、特許文献2には、変化しない領域をオンスクリーンにコピーすることと、差分の描画処理を行うこととを並行して行う方法が開示されている。   In a system that draws an arbitrary vector graphics animation, the time taken to render the animation by the renderer cannot be predicted. Some of such systems employ a configuration using a double buffer or a multi-buffer in order to facilitate the timing control of the rendered image display process and the image update process. In a system using a double buffer, when the renderer draws a difference from the previous frame, it is necessary to copy appropriate data between the buffers constituting the double buffer. Draw the color information necessary for drawing the current object by referring to the case where the frame being drawn overlaps a semi-transparent object over the object drawn in the previous frame, or any place in the drawn frame based on the drawing command There are cases where it is obtained from a completed frame. For this reason, the drawing result of the previous frame is copied to the buffer or work memory to be drawn, and the drawing process is started after the copying is completed. In order to reduce the waiting time required to copy an image between buffers performed prior to the drawing process, Patent Document 2 discloses that an area that does not change is copied on-screen and a difference drawing process is performed in parallel. Are disclosed.

特開2004−265331号公報JP 2004-265331 A 特開2010−164972号公報JP 2010-164972 A

しかしながら、描画ピクセル数の増大に伴い、レンダラが描画時に参照する画像データや、描画済みデータの出力に必要となるバンド幅が増大している。ダブルバッファやマルチバッファを用いるシステムでは、描画済み画像や背景画像のコピーのためのバンド幅も追加で必要となる。
また、全ての描画要素を再描画する方法では、フレーム間のコピーにかかるバンド幅は不要となる。しかしながら、フレーム間で差分がない領域にビットマップデータの参照や変形を含むケースでは、複数の入力ビットマップデータへのアクセスを毎フレーム繰り返す必要がある。このため、フレームの再描画のためのバンド幅が大きくなる。また、各フレームの描画処理に必要な時間も長くなってしまう。
本発明は、このような問題点に鑑みてなされたものであり、第1の画像に第2の画像を上書きして描画する際の描画時間を短縮すると共に、描画済みのデータの出力に必要なバンド幅を削減することを目的とする。
However, with the increase in the number of drawing pixels, the bandwidth required for outputting the image data that the renderer refers to at the time of drawing and the drawn data has increased. In a system using a double buffer or a multi-buffer, an additional bandwidth is required for copying a drawn image and a background image.
In the method of redrawing all the drawing elements, the bandwidth required for copying between frames is not necessary. However, in cases where bitmap data is referenced or modified in an area where there is no difference between frames, it is necessary to repeat access to a plurality of input bitmap data every frame. This increases the bandwidth for redrawing the frame. In addition, the time required for the drawing process for each frame also increases.
The present invention has been made in view of such problems, and it is necessary to reduce the drawing time when drawing the second image over the first image and to output the drawn data. The purpose is to reduce the bandwidth.

本発明の画像処理装置は、第1の画像の後に入力される第2の画像の描画命令に基づいて、前記第1の画像の領域のうち、前記第2の画像により更新される更新領域を設定する設定手段と、記憶媒体に記憶されている前記第1の画像の符号画像データのうち前記更新領域における前記第1の画像の符号画像データを復号化し、前記第1の画像の前記更新領域における復号データを生成する復号手段と、前記復号手段により生成された前記第1の画像の前記更新領域における復号データに対して、前記第2の画像を上書きする描画処理を行い、前記第2の画像の前記更新領域を含む領域の描画データを生成し、前記第2の画像の前記更新領域の描画データを出力する描画手段と、前記描画手段により出力された前記第2の画像の前記更新領域における描画データを符号化する符号化手段と、前記記憶媒体に記憶されている、前記第1の画像の前記更新領域とは異なる領域における符号画像データと、前記符号化手段により符号化された前記第2の画像の前記更新領域における描画データとを合成して、前記第2の画像の符号画像データを生成する符号画像合成手段と、前記符号画像合成手段により生成された前記第2の画像の符号画像データを前記記憶媒体に記憶する記憶手段と、を有することを特徴とする。   The image processing apparatus according to the present invention provides an update area updated by the second image among the areas of the first image, based on a drawing instruction of the second image input after the first image. Setting means for setting and decoding the code image data of the first image in the update area among the code image data of the first image stored in the storage medium, and the update area of the first image A decoding means for generating decoded data in the above; and a drawing process for overwriting the second image on the decoded data in the update area of the first image generated by the decoding means; A drawing unit that generates drawing data of an area including the update region of the image and outputs drawing data of the update region of the second image, and the update region of the second image output by the drawing unit In Encoding means for encoding the drawing data, and encoded image data in an area different from the update area of the first image stored in the storage medium, and the encoding means encoded by the encoding means A code image synthesizing unit that synthesizes drawing data in the update area of the second image and generates code image data of the second image; and a second image generated by the code image synthesizing unit. Storage means for storing code image data in the storage medium.

本発明によれば、第1の画像に第2の画像を上書きして描画する際の描画時間を短縮すると共に、描画済みのデータの出力に必要なバンド幅を削減することができる。   According to the present invention, it is possible to reduce the drawing time when drawing the second image over the first image and to reduce the bandwidth necessary for outputting the drawn data.

画像処理装置の構成を示すブロック図である。It is a block diagram which shows the structure of an image processing apparatus. 描画命令を示す図である。It is a figure which shows a drawing command. 描画命令に基づき描画される2フレームの画像を示す図である。It is a figure which shows the image of 2 frames drawn based on a drawing command. オブジェクトのバウンディングボックスの位置関係を示す図である。It is a figure which shows the positional relationship of the bounding box of an object. 更新領域情報の一例を示す図である。It is a figure which shows an example of update area information. 第1のフレームの更新領域をデコードした結果を示す図である。It is a figure which shows the result of having decoded the update area | region of the 1st frame. 第2のフレームにおける更新領域の描画の結果を示す図である。It is a figure which shows the result of drawing of the update area | region in a 2nd frame. 部分符号画像データを示す図である。It is a figure which shows partial code | cord image data. 第1のフレームの符号画像データを示す図である。It is a figure which shows the code image data of a 1st frame. 領域判定データを示す図である。It is a figure which shows area | region determination data. 符号画像合成部の動作を示すフローチャートである。It is a flowchart which shows operation | movement of a code image synthetic | combination part. 第2のフレームの符号画像データを示す図である。It is a figure which shows the code image data of a 2nd frame. 更新領域情報の他の例を示す図である。It is a figure which shows the other example of update area information. 更新領域情報のその他の例を示す図である。It is a figure which shows the other example of update area information.

以下、図面を参照しながら、本発明の一実施形態について詳細に説明する。
図1は、本実施形態の画像処理装置100の構成の一例を示すブロック図である。
画像入力部101は、ベクタグラフィックスの描画命令を受信する。更新領域抽出部102は、画像入力部101が受信した描画命令から、現在のフレームの描画処理中に参照する1フレーム前の描画結果の領域の情報を更新領域情報として抽出する。現在のフレームの描画処理中に参照する1フレーム前の描画結果の領域は、1フレーム前の描画結果の領域のうち、現在のフレームにおいて更新される領域である。以下の説明では、この領域を必要に応じて更新領域と称する。
Hereinafter, an embodiment of the present invention will be described in detail with reference to the drawings.
FIG. 1 is a block diagram illustrating an example of the configuration of the image processing apparatus 100 according to the present embodiment.
The image input unit 101 receives a vector graphics drawing command. The update area extraction unit 102 extracts, from the drawing command received by the image input unit 101, information about the drawing result area of the previous frame that is referred to during the drawing process of the current frame as update area information. The drawing result area one frame before that is referred to during the drawing process of the current frame is an area that is updated in the current frame among the drawing result areas one frame before. In the following description, this area is referred to as an update area as necessary.

部分画像復号部103は、1フレーム前の描画結果を部分的にデコード(復号化)する。描画部104は、部分画像復号部103で部分的にデコードされた更新領域のデータに対して現在のフレームの更新領域のデータを上書きして更新領域の描画を行い、描画データを生成する。符号化部105は、描画部104で生成された描画データをエンコード(符号化)する。
符号画像合成部106は、データ格納部108に格納された1つ前のフレームの符号画像データと、符号化部105で符号化された描画データとをマージ(合成)して現在のフレームの符号画像データを生成する。出力部107は、符号画像合成部106で得られた符号画像データをデータ格納部108に出力する。復号部109は、データ格納部108に格納された符号画像データを復号化して復号画像データを生成する。表示部110は、復号部109で生成された復号画像データに基づく画像を表示する。
The partial image decoding unit 103 partially decodes (decodes) the drawing result of the previous frame. The drawing unit 104 overwrites the update region data of the current frame on the update region data partially decoded by the partial image decoding unit 103, draws the update region, and generates drawing data. The encoding unit 105 encodes (encodes) the drawing data generated by the drawing unit 104.
The code image synthesis unit 106 merges (synthesizes) the code image data of the previous frame stored in the data storage unit 108 and the drawing data encoded by the encoding unit 105 to code the current frame. Generate image data. The output unit 107 outputs the code image data obtained by the code image synthesis unit 106 to the data storage unit 108. The decoding unit 109 decodes the code image data stored in the data storage unit 108 to generate decoded image data. The display unit 110 displays an image based on the decoded image data generated by the decoding unit 109.

以下、これらの動作の一例を説明する。
画像処理装置100は、ユーザによる操作指示に基づいて、SVGやJAVA(登録商標)で記述された画像データを、適切なパーザを用いてフレームの描画完了指示を含む描画命令に変換し、画像入力部101に入力する。
図2は、描画命令の一例を示す図である。図3は、図2に示す描画命令に基づき描画される2フレームの画像の一例を概念的に示す図である。具体的に図3(a)は、第1のフレームの画像(第1の画像)を示し、図3(b)は、第1のフレームの次に表示される第2のフレームの画像(第2の画像)を示す。
命令201から命令204は、図3(a)に示す第1のフレームの画像の描画命令である。命令205から命令215は、図3(b)に示す第2のフレームの画像の描画命令である。本実施形態では、第1のフレームの画像に追加のオブジェクトを上書きして第2のフレームの画像を描画する場合を例に挙げて示す。尚、本実施形態では、特に指定がない限り、X座標は右方向、Y座標は上方向に増加するものとする。
Hereinafter, an example of these operations will be described.
The image processing apparatus 100 converts image data described in SVG or JAVA (registered trademark) into a drawing command including a frame drawing completion instruction using an appropriate parser based on an operation instruction by a user, and inputs an image. Input to the unit 101.
FIG. 2 is a diagram illustrating an example of a drawing command. FIG. 3 is a diagram conceptually showing an example of a two-frame image drawn based on the drawing command shown in FIG. Specifically, FIG. 3A shows an image of the first frame (first image), and FIG. 3B shows an image of the second frame displayed after the first frame (first image). 2 image).
Command 201 to command 204 are drawing commands for the first frame image shown in FIG. Command 205 to command 215 are drawing commands for the image of the second frame shown in FIG. In the present embodiment, an example in which an image of the second frame is drawn by overwriting an additional object on the image of the first frame will be described as an example. In the present embodiment, the X coordinate increases to the right and the Y coordinate increases upward unless otherwise specified.

命令201は、描画するフレームの全域を引数に指定された色で塗りつぶし、初期化することを示す。
命令202は、塗りつぶし色の設定を変更することを示す。命令202以降で塗りつぶし(FILL)が指示された場合、命令202の引数で指定された値が用いられる。以下、図2に含まれる色の設定を変更する命令では、RGBA各8ビットの色情報を用いるものとする。すなわち、図2の命令202、205、209、213は、Red、Green、Blue、α値をこの順で上位から8ビットずつパッキングした32ビットのデータで表現される。命令202が設定する色は不透過な灰色(0xAAAAAAFF)である。
The command 201 indicates that the entire frame to be drawn is filled with a color designated as an argument and initialized.
Command 202 indicates changing the setting of the fill color. When the fill (FILL) is instructed after the command 202, the value specified by the argument of the command 202 is used. Hereinafter, it is assumed that the 8-bit color information of RGBA is used in the instruction for changing the color setting included in FIG. That is, the instructions 202, 205, 209, and 213 in FIG. 2 are represented by 32-bit data in which Red, Green, Blue, and α values are packed in the order of 8 bits. The color set by the instruction 202 is opaque gray (0xAAAAAAFF).

命令203は、長方形の左下と右上の座標を受け取り、命令202で設定された灰色で塗りつぶされた長方形302を描画することを示す。図2に示す例では、長方形の左下と右上の座標はそれぞれ(X, Y)=(2.0,1.0), (5.0,3.0)である。
命令204は、第1のフレームの描画完了を指示することを示す。
命令205は、塗りつぶし色を透過な白(0xFFFFFF00)に変更することを示す。
命令206は、座標(X, Y)=(6.2, 6.0), (7.8, 8.5)をそれぞれ左下、右上とする長方形を命令205で設定した値で描画する。α値が0(ゼロ)であるため、この長方形は図3(b)の描画結果に現れない。
The command 203 indicates that the coordinates of the lower left and upper right corners of the rectangle are received, and the rectangle 302 filled with gray set by the command 202 is drawn. In the example shown in FIG. 2, the lower left and upper right coordinates of the rectangle are (X, Y) = (2.0, 1.0), (5.0, 3.0), respectively.
The command 204 indicates that the drawing completion of the first frame is instructed.
Command 205 indicates changing the fill color to transparent white (0xFFFFFF00).
The command 206 draws a rectangle having coordinates (X, Y) = (6.2, 6.0), (7.8, 8.5) as the lower left and upper right, respectively, with the values set by the command 205. Since the α value is 0 (zero), this rectangle does not appear in the drawing result of FIG.

命令207は、塗りつぶし色を半透明の赤(0xFF000080)に設定することを示す。
命令208は、中心と、横幅及び高さと、角度とを指定して楕円を描画することを示す。具体的に命令208は、中心の座標が(X, Y)=(4.0, 4.0)、横幅及び高さがそれぞれ2.0、描画開始の開始角度が0(ゼロ)度、描画終了の角度が360度の円303を塗りつぶしで描画することを示す。
命令209は、塗りつぶし色を半透明の青(0x0000FF80)に設定することを示す。
命令210は、命令211が使用する座標情報を示す。
Command 207 indicates that the fill color is set to translucent red (0xFF000080).
The command 208 indicates that an ellipse is drawn by designating the center, the width and height, and the angle. Specifically, the command 208 is such that the center coordinates are (X, Y) = (4.0, 4.0), the width and height are 2.0, the drawing start start angle is 0 (zero) degrees, and the drawing end angle is 360 degrees. Indicates that the circle 303 is drawn with a solid color.
Command 209 indicates to set the fill color to translucent blue (0x0000FF80).
An instruction 210 indicates coordinate information used by the instruction 211.

命令211では、描画開始の座標を指定するMOVETOと、現在の座標から指定された座標を線分で結ぶLINETOと、現在の座標と描画開始の座標とを結ぶCLOSEPATHと、を指定する。命令211に含まれる処理では、命令210で与えられた座標が順に参照される。
命令212は、命令210、命令211で指定した三角形304を描画することを示す。
命令213は、塗りつぶし色を黒(0x000000FF)に設定することを示す。
命令214は、座標(X, Y)=(5.1, 2.1), (5.9, 2.9)をそれぞれ左下、右上とする正方形305を描画することを示す。
命令215は、第2のフレームの描画完了を指示することを示す。
画像入力部101に入力された描画命令は、描画部104と更新領域抽出部102に送られる。
In the command 211, MOVETO that specifies the drawing start coordinates, LINETO that connects the coordinates specified from the current coordinates with line segments, and CLOSEPATH that connects the current coordinates and the drawing start coordinates are specified. In the processing included in the command 211, the coordinates given by the command 210 are sequentially referred to.
The command 212 indicates that the triangle 304 designated by the commands 210 and 211 is drawn.
The command 213 indicates that the fill color is set to black (0x000000FF).
The command 214 indicates that a square 305 having the coordinates (X, Y) = (5.1, 2.1), (5.9, 2.9) as the lower left and upper right, respectively, is drawn.
The command 215 indicates that the drawing completion of the second frame is instructed.
The drawing command input to the image input unit 101 is sent to the drawing unit 104 and the update area extraction unit 102.

更新領域抽出部102は、描画命令から、図形の描画に関わる図形描画命令を抽出し、抽出した図形描画命令に与えられた座標情報から更新領域情報を生成する。
以下、本実施形態では、図3(b)に示す第2のフレームの画像を描画する際に、オブジェクトが存在し得る領域を囲む矩形領域であるバウンディングボックスを用いて更新領域情報を生成する方法を例に挙げて説明する。
The update area extraction unit 102 extracts a graphic drawing command related to drawing of a graphic from the drawing command, and generates update area information from the coordinate information given to the extracted graphic drawing command.
Hereinafter, in the present embodiment, when the image of the second frame shown in FIG. 3B is drawn, a method of generating update area information using a bounding box that is a rectangular area surrounding an area where an object may exist Will be described as an example.

図4は、命令205〜215で描画されるそれぞれのオブジェクトのバウンディングボックスの論理座標上での位置関係の一例を示す図である。
図2の命令205、206によって描画される長方形のバウンディングボックス401は、長方形を構成する頂点の情報から、左下、右上の座標をそれぞれ(X, Y)=(6.2, 6.0)、(7.8, 8.5)とする長方形となる。
命令207、208によって描画される円303のバウンディングボックス402は、円の中心点の情報と横幅及び高さの情報とから、左下、右上の座標をそれぞれ(X, Y)=(2.0, 2.0)、(6.0, 6.0)とする長方形となる。
FIG. 4 is a diagram illustrating an example of a positional relationship on the logical coordinates of the bounding box of each object drawn by the commands 205 to 215.
The rectangular bounding box 401 drawn by the commands 205 and 206 in FIG. 2 has coordinates (X, Y) = (6.2, 6.0), (7.8, 8.5) based on the information on the vertices constituting the rectangle. ) And a rectangle.
The bounding box 402 of the circle 303 drawn by the instructions 207 and 208 has the coordinates of the lower left and upper right from the information of the center point of the circle and the information of the width and height, respectively (X, Y) = (2.0, 2.0) , (6.0, 6.0).

命令209〜212によって描画される三角形304のバウンディングボックス403は、三角形を構成する頂点の情報から、左下、右上の座標をそれぞれ(X, Y)=(2.0, 0.0)、(3.0, 2.0)とする長方形となる。
命令213〜215によって描画される正方形305のバウンディングボックス404は、正方形を構成する頂点の情報から、左下、右上の座標をそれぞれ(X, Y)=(5.1, 2.1)、(5.9, 2.9)とする正方形となる。
The bounding box 403 of the triangle 304 drawn by the instructions 209 to 212 has (X, Y) = (2.0, 0.0), (3.0, 2.0) as the coordinates of the lower left and upper right from the information on the vertices constituting the triangle. It becomes a rectangle.
The bounding box 404 of the square 305 drawn by the instructions 213 to 215 has the coordinates of the lower left and upper right as (X, Y) = (5.1, 2.1), (5.9, 2.9) from the information on the vertices constituting the square, respectively. It becomes a square.

実際には、ピクセル精度(1ピクセルの単位)で描画を行うため、更新領域抽出部102は、バウンディングボックスを含む"1つのピクセル又は複数のピクセルの集合"を更新領域情報として抽出する。
図5は、更新領域情報の一例を示す図である。具体的に図5(a)は、図4に示すバウンディングボックス401〜404を、縦8ピクセル、横10ピクセルのピクセル精度の2次元座標系にマッピングした更新領域の一例を示す図である。図5(b)は、図5(a)に示す更新領域から生成される更新領域情報の一例を示す図である。
Actually, in order to perform drawing with pixel accuracy (unit of one pixel), the update region extraction unit 102 extracts “one pixel or a set of a plurality of pixels” including the bounding box as update region information.
FIG. 5 is a diagram illustrating an example of the update area information. Specifically, FIG. 5A is a diagram illustrating an example of an update region in which the bounding boxes 401 to 404 illustrated in FIG. 4 are mapped to a two-dimensional coordinate system with pixel accuracy of 8 pixels in the vertical direction and 10 pixels in the horizontal direction. FIG. 5B is a diagram showing an example of update area information generated from the update area shown in FIG.

領域501は、バウンディングボックス401を含む領域である。領域501は、図5(b)のエントリ513に示す通り、オブジェクトの更新領域の開始位置が(X, Y)=(6, 6)であり、サイズ(大きさ)が幅2ピクセル、高さ2ピクセルの領域として定義される。更新領域情報に記録されるオブジェクトには、オブジェクトの描画順を一意に識別する識別情報として、オブジェクトごとに異なるIDが付与される。
同様に領域502はバウンディングボックス402を含む領域、領域503はバウンディングボックス403を含む領域、領域504はバウンディングボックス404を含む領域である。領域502、領域503、領域504はそれぞれエントリ511、エントリ510、エントリ513に格納される。
An area 501 is an area including the bounding box 401. In the area 501, the start position of the object update area is (X, Y) = (6, 6) as shown in the entry 513 in FIG. It is defined as an area of 2 pixels. Different IDs are assigned to the objects recorded in the update area information as identification information for uniquely identifying the drawing order of the objects.
Similarly, the region 502 is a region including the bounding box 402, the region 503 is a region including the bounding box 403, and the region 504 is a region including the bounding box 404. Area 502, area 503, and area 504 are stored in entry 511, entry 510, and entry 513, respectively.

図1の説明に戻り、部分画像復号部103は、データ格納部108に置かれた1フレーム前の符号画像データのうち、更新領域情報によって指示される更新領域の符号画像データを読み出してデコードし、デコードした結果を描画部104に出力する。
部分画像復号部103は、第1のフレームの符号画像データを読み出し、更新領域情報の座標にあたる部分をデコードする。本実施形態では、符号画像データの生成に、ランレングス圧縮を用いる場合を例に挙げて説明する。ランレングス圧縮の場合、部分画像復号部103は、符号化された第1のフレームのラン長を走査して、更新領域情報にあたる領域をデコードし、デコードした結果を描画部104に出力する。
Returning to the description of FIG. 1, the partial image decoding unit 103 reads out and decodes the code image data of the update region indicated by the update region information from the code image data of the previous frame placed in the data storage unit 108. The decoded result is output to the drawing unit 104.
The partial image decoding unit 103 reads the code image data of the first frame and decodes the portion corresponding to the coordinates of the update area information. In the present embodiment, a case where run-length compression is used for generating code image data will be described as an example. In the case of run length compression, the partial image decoding unit 103 scans the run length of the encoded first frame, decodes the region corresponding to the update region information, and outputs the decoded result to the drawing unit 104.

図6は、第1のフレームの更新領域をデコードした結果の一例を概念的に示す図である。具体的に図6は、第1のフレームの符号画像データのうち、図5(b)に示した更新領域情報により指示された更新領域の部分を、部分画像復号部103がデコードすることにより得られるピクセルイメージの一例を示す図である。
図5のエントリ510で指定される領域は、ピクセル601とピクセル602の領域である。エントリ512で指定される領域は、ピクセル604の領域である。以下同様に、エントリ511で指定される領域は、ピクセル603を左下とする幅4ピクセル、高さ4ピクセルの領域であり、エントリ513で指定される領域は、ピクセル605を左下とする幅2ピクセル、高さ2ピクセルの領域である。
FIG. 6 is a diagram conceptually illustrating an example of a result of decoding the update area of the first frame. Specifically, FIG. 6 shows that the partial image decoding unit 103 decodes the part of the update area indicated by the update area information shown in FIG. 5B in the encoded image data of the first frame. It is a figure which shows an example of the pixel image obtained.
The area specified by the entry 510 in FIG. 5 is an area of the pixels 601 and 602. The area specified by the entry 512 is the area of the pixel 604. Similarly, the area specified by the entry 511 is an area having a width of 4 pixels and a height of 4 pixels with the pixel 603 being lower left, and the area specified by the entry 513 is an area having a width of 2 pixels having the pixel 605 being lower left. , A region with a height of 2 pixels.

図6に示すデコードの結果(復号データ)は、部分画像復号部103と描画部104がともに参照可能な図示しないワークメモリに置いてもよい。デコードの結果(復号データ)を一度ワークメモリに格納する場合、部分画像復号部103は、更新領域情報のIDと、各IDに対応するデコードの結果(復号データ)へのポインタを描画部104に出力する。   The decoding result (decoded data) shown in FIG. 6 may be placed in a work memory (not shown) that can be referred to by both the partial image decoding unit 103 and the drawing unit 104. When the decoding result (decoded data) is once stored in the work memory, the partial image decoding unit 103 sends the update area information ID and a pointer to the decoding result (decoded data) corresponding to each ID to the drawing unit 104. Output.

描画部104は、第2のフレームの描画命令のうち更新領域の部分の描画命令を順に実行し、第2のフレームの更新領域の描画を行う。ピクセル値の算出に1フレーム前の描画結果が必要となる場合、描画部104は部分画像復号部103が出力した復号データを参照する。
図2に示した例では、以下のふたつの条件の何れかに当てはまるピクセルにおいて、1フレーム前の描画結果を参照する。
ひとつ目は、塗りつぶし色が半透明色で指定され、且つ、その半透明色の下地に1フレーム前の色を重ねる必要がある領域である。図3に示した例では、円303、三角形304の描画では、オブジェクトが存在する全てのピクセルで1フレーム前(第1のフレーム)の描画データを参照する必要がある。
The drawing unit 104 sequentially executes drawing commands for the update area portion among the drawing commands for the second frame, and draws the update area for the second frame. When the drawing result of one frame before is required for the calculation of the pixel value, the drawing unit 104 refers to the decoded data output from the partial image decoding unit 103.
In the example shown in FIG. 2, the drawing result of one frame before is referred to in a pixel that meets one of the following two conditions.
The first is an area in which the fill color is designated as a translucent color, and the color of the previous frame needs to be superimposed on the base of the translucent color. In the example shown in FIG. 3, in drawing the circle 303 and the triangle 304, it is necessary to refer to the drawing data one frame before (first frame) for all the pixels where the object exists.

ふたつ目は、オブジェクトの辺や1ピクセルに満たないオブジェクトが描画される領域である。図3において、現在の第2のフレームで描画された正方形305のオブジェクトの領域は幅0.8ピクセル、高さ0.8ピクセルであり、1ピクセルより小さい。よって、1ピクセル内の色の算出では、1ピクセル内でオブジェクトが覆わない部分の色と、オブジェクトが覆う部分の色を混色するため、1フレーム前のピクセル値を参照する必要がある。   The second is an area where an object less than one pixel is drawn. In FIG. 3, the area of the square 305 object drawn in the current second frame is 0.8 pixels wide and 0.8 pixels high, which is smaller than 1 pixel. Therefore, in the calculation of the color within one pixel, the color of the portion that is not covered by the object within one pixel and the color of the portion that is covered by the object are mixed, so it is necessary to refer to the pixel value one frame before.

図7は、第2のフレームにおける更新領域の(描画部104による)描画の結果(部分描画結果)の一例を示す図である。
ピクセル701では、第2のフレームで描画する三角形304がピクセルの75%をカバーし、残りの25%は第2のフレームで描画されない。ピクセル値の計算ではピクセルのカバー率が100%となる必要がある。このため、第2のフレームで描画されない25%の領域については、1フレーム前に描画した第1のフレームのピクセル色が用いられる。ピクセル701の値は、背景色を25%、三角形304の半透明の青(0x0000FF80)を75%の割合で混色した値となる。
同様にピクセル702の値は、長方形302の灰色(0xAAAAAAFF)を75%、三角形304の半透明の青(0x0000FF80)を25%の割合で混色した値である。
FIG. 7 is a diagram illustrating an example of a rendering result (partial rendering result) of the update area (by the rendering unit 104) in the second frame.
In pixel 701, triangle 304 drawn in the second frame covers 75% of the pixel, and the remaining 25% is not drawn in the second frame. For pixel value calculation, the pixel coverage needs to be 100%. For this reason, the pixel color of the first frame drawn one frame before is used for the 25% area that is not drawn in the second frame. The value of the pixel 701 is a value obtained by mixing 25% of the background color and 75% of the translucent blue (0x0000FF80) of the triangle 304 at a ratio of 75%.
Similarly, the value of the pixel 702 is a value obtained by mixing 75% of the gray color (0xAAAAAAFF) of the rectangle 302 and 25% of the semi-transparent blue color (0x0000FF80) of the triangle 304.

ピクセル703、704、705、706は、領域502に含まれているが、描画部104で描画された円303の色は、ピクセル703の値に寄与しない。よって、ピクセル703、704、705、706の値には、第1のフレームの描画結果として得られたピクセル値(図6に示すデコードの結果)がそのまま用いられる。
第2のフレームで描画される正方形305は不透過であるが、正方形305は、ピクセルの81%の領域しかカバーしていない。このため、残りの19%の領域からのピクセル値への寄与分を算出するため、描画部104は、ピクセル707の値を決定する際に、第1のフレームの描画結果として得られたピクセル値を参照する。
尚、描画部104は、第2のフレームの描画命令の全てを順に実行し第2のフレームの全ての描画を行い、そのうちの更新領域の描画データのみを出力してもよい。
The pixels 703, 704, 705, and 706 are included in the region 502, but the color of the circle 303 drawn by the drawing unit 104 does not contribute to the value of the pixel 703. Accordingly, the pixel values (decoding results shown in FIG. 6) obtained as the drawing result of the first frame are used as the values of the pixels 703, 704, 705, and 706 as they are.
The square 305 drawn in the second frame is opaque, but the square 305 covers only 81% of the pixels. Therefore, in order to calculate the contribution to the pixel value from the remaining 19% area, the drawing unit 104 determines the pixel value obtained as the drawing result of the first frame when determining the value of the pixel 707. Refer to
Note that the drawing unit 104 may execute all drawing commands for the second frame in order, perform all drawing for the second frame, and output only drawing data for the update area.

図1の説明に戻り、符号化部105は、描画部104で描画された描画データを符号化したデータである部分符号画像データを生成して符号画像合成部106に出力する。
図8は、部分符号画像データの一例を示す図である。具体的に図8は、図7に示す部分描画結果を符号化部105で符号化した部分符号画像データの一例を示す図である。本実施形態では、ランレングス圧縮を行うため、部分符号はピクセル値とラン長で構成される。
図8のエントリ801は図7のピクセル701、エントリ802はピクセル702、エントリ803はピクセル703、エントリ804はピクセル708、709、エントリ805はピクセル704、エントリ806はピクセル707の符号化の結果を示す。以下同様に、座標値が小さいものから順に符号化される。
Returning to the description of FIG. 1, the encoding unit 105 generates partial code image data that is data obtained by encoding the drawing data drawn by the drawing unit 104 and outputs the partial code image data to the code image synthesis unit 106.
FIG. 8 is a diagram illustrating an example of partial code image data. Specifically, FIG. 8 is a diagram illustrating an example of partial code image data obtained by encoding the partial drawing result illustrated in FIG. 7 by the encoding unit 105. In this embodiment, in order to perform run length compression, the partial code is composed of a pixel value and a run length.
Entry 801 in FIG. 8 shows the result of encoding pixel 701 in FIG. 7, entry 802 in pixel 702, entry 803 in pixel 703, entry 804 in pixels 708 and 709, entry 805 in pixel 704, and entry 806 in pixel 707. . Similarly, encoding is performed in order from the smallest coordinate value.

図1の説明に戻り符号画像合成部106は、データ格納部108から読み出した第1のフレームの符号画像データと、符号化部105が出力する第2のフレームの部分符号画像データとをマージする。マージの際に選択するデータは、図5(b)に示した更新領域情報を参照して決定される。
図9は、第1のフレームの符号画像データの一例を示す図である。具体的に図9(a)は、第1のフレームを幅10ピクセル、高さ8ピクセルで描画した際のピクセル精度の画像の一例を示す図である。図9(b)は、第1のフレームの符号画像データの一例を示す図である。図2の描画命令によると、Color0は白、Color1は0xAAAAAAFF(灰色)である。
エントリ910は、ピクセル901からY=0のスキャンラインの10ピクセルと、Y=1のスキャンラインのX=0,X=1の2ピクセルとを合わせた背景色領域の符号化結果であるため、ラン長は12、ピクセル値はColor0となる。エントリ911は、同様にピクセル902から5ピクセル連続する灰色の領域であるため、ラン長は5、ピクセル値はColor1である。
Returning to the description of FIG. 1, the code image synthesis unit 106 merges the code image data of the first frame read from the data storage unit 108 and the partial code image data of the second frame output from the encoding unit 105. . Data to be selected at the time of merging is determined with reference to the update area information shown in FIG.
FIG. 9 is a diagram illustrating an example of the code image data of the first frame. Specifically, FIG. 9A is a diagram illustrating an example of an image with pixel accuracy when the first frame is drawn with a width of 10 pixels and a height of 8 pixels. FIG. 9B is a diagram illustrating an example of the code image data of the first frame. According to the drawing command of FIG. 2, Color0 is white and Color1 is 0xAAAAAAFF (gray).
Since the entry 910 is the result of encoding the background color region, which is a combination of 10 pixels of the scan line Y = 0 to 10 pixels and 2 pixels of X = 0 and X = 1 of the scan line Y = 1. The run length is 12, and the pixel value is Color0. Similarly, since the entry 911 is a gray region in which five pixels continue from the pixel 902, the run length is 5, and the pixel value is Color1.

次に、符号画像合成部106が、第1のフレームの符号画像データ(図9(b)を参照)と、第2のフレームの部分符号画像データ(図8を参照)とをマージし、第2のフレームの符号画像データを構成するための処理の一例を説明する。
符号画像合成部106は、図5(b)に示した更新領域情報から、第1のフレームの符号画像データをコピー(適用)する部分と、第2のフレームの部分符号画像データをコピー(適用)する部分とを判断する。本実施形態では簡単化のため、符号画像合成部106は、更新領域情報を読み、(X, Y)=(0, 0)からピクセル走査順にコピー元のデータを判定した結果を、図10に示す領域判定データに当てはめて中間形式で出力するものとする。
図10の各エントリは、ソースとレングスとを持つ。ソースは、第2のフレームの符号画像データのコピー元が、第1のフレームの符号画像データであるか、それとも、符号化部105が出力した第2のフレームの部分符号画像データであるかを示す。レングスは、各ソース元から取得したピクセル値が何ピクセル連続するかを示す。
Next, the code image synthesis unit 106 merges the code image data of the first frame (see FIG. 9B) and the partial code image data of the second frame (see FIG. 8), An example of the process for constructing the code image data of the second frame will be described.
The code image synthesizing unit 106 copies (applies) the portion for copying (applying) the code image data of the first frame and the partial code image data of the second frame from the update area information shown in FIG. ). In this embodiment, for the sake of simplification, the code image synthesis unit 106 reads the update area information and determines the copy source data in the pixel scanning order from (X, Y) = (0, 0). It is assumed that data is output in an intermediate format by applying to the area determination data shown.
Each entry in FIG. 10 has a source and a length. The source determines whether the copy source of the encoded image data of the second frame is the encoded image data of the first frame or the partially encoded image data of the second frame output from the encoding unit 105. Show. The length indicates how many consecutive pixel values obtained from each source.

図11は、符号画像合成部106の動作の一例を示すフローチャートである。
本実施形態では、符号画像合成部106は、第1のフレームの符号画像データの読み出し条件の判定にピクセルカウンタを用いる。ステップS1101で、符号画像合成部106は、ピクセルカウンタの値を0(ゼロ)にリセットする。
次に、ステップ1102において、符号画像合成部106は、図10に示す領域判定データの中に、未処理のエントリが存在するか否かを判定する。この判定の結果、図10に示す領域判定データの中に、未処理のエントリが存在しない場合には、図11のフローチャートによる処理を終了する。
FIG. 11 is a flowchart illustrating an example of the operation of the code image synthesis unit 106.
In the present embodiment, the code image synthesis unit 106 uses a pixel counter for determining the read condition of the code image data of the first frame. In step S1101, the code image composition unit 106 resets the value of the pixel counter to 0 (zero).
Next, in step 1102, the code image synthesis unit 106 determines whether there is an unprocessed entry in the area determination data illustrated in FIG. 10. If there is no unprocessed entry in the area determination data shown in FIG. 10 as a result of this determination, the processing according to the flowchart of FIG. 11 is terminated.

一方、図10に示す領域判定データの中に、未処理のエントリが存在する場合には、ステップS1103に進む。ステップS1103に進むと、符号画像合成部106は、図10に示す領域判定データのエントリを1つ読み出す。
次に、ステップS1104において、符号画像合成部106は、ステップS1103で読み出した領域判定データのエントリのソースの値がFrame2であるか否かを判定する。この判定の結果、領域判定データのエントリのソースの値がFrame1である場合には、ステップS1105に進む。一方、領域判定データのエントリのソースの値がFrame2である場合には、後述するステップS1110に進む。
On the other hand, if there is an unprocessed entry in the area determination data shown in FIG. 10, the process proceeds to step S1103. In step S1103, the code image composition unit 106 reads out one entry of the area determination data shown in FIG.
In step S1104, the code image synthesis unit 106 determines whether the source value of the entry of the area determination data read in step S1103 is Frame2. As a result of the determination, if the source value of the entry of the area determination data is Frame1, the process proceeds to step S1105. On the other hand, if the source value of the area determination data entry is Frame2, the process proceeds to step S1110 described later.

ステップS1105に進むと、符号画像合成部106は、ピクセルカウンタの値が0(ゼロ)であるか否かを判定する。この判定の結果、ピクセルカウンタの値が0(ゼロ)である場合には、ステップS1106、S1107を省略して後述するステップS1108に進む。一方、ピクセルカウンタの値が0(ゼロ)でない(正である)場合には、ステップS1106に進む。
ステップS1106に進むと、符号画像合成部106は、第1のフレームFrame1の符号画像データのエントリを1つ読み出す(図9(b)を参照)。
次に、ステップS1107において、符号画像合成部106は、ピクセルカウンタの値に、ステップS1106で読み出した符号画像データのエントリのラン長を設定する(図9(b)を参照)。また、符号画像合成部106は、Frame1出力ピクセル値にステップS1106で読み出した符号画像データのエントリのピクセル値を設定する(図9(b)を参照)。
In step S1105, the code image composition unit 106 determines whether the value of the pixel counter is 0 (zero). If the result of this determination is that the value of the pixel counter is 0 (zero), steps S1106 and S1107 are omitted, and processing proceeds to step S1108, which will be described later. On the other hand, when the value of the pixel counter is not 0 (zero) (positive), the process proceeds to step S1106.
In step S1106, the code image synthesis unit 106 reads out one entry of the code image data of the first frame Frame1 (see FIG. 9B).
Next, in step S1107, the code image composition unit 106 sets the run length of the entry of the code image data read in step S1106 as the value of the pixel counter (see FIG. 9B). Also, the code image composition unit 106 sets the pixel value of the entry of the code image data read out in step S1106 to the Frame1 output pixel value (see FIG. 9B).

次に、ステップS1108において、符号画像合成部106は、次の処理を行う。すなわち、ステップS1107で設定したFrame1出力ピクセル値をピクセル値とし、ステップS1103で読み出した領域判定データのエントリのレングスをラン長として、第2のフレームFrame2の符号画像データのエントリを1つ出力する。図12は、第2のフレームの符号画像データの一例を示す図である。また、ステップS1105からステップS1108に進んだ場合、符号画像合成部106は、次の処理を行う。すなわち、ステップS1107で前回設定されたFrame1出力ピクセル値をピクセル値とし、ピクセルカウンタの値をラン長として、第2のフレームFrame2の符号画像データのエントリを1つ出力する。
次に、ステップS1109において、符号画像合成部106は、ピクセルカウンタの現在の値から、ステップS1103で読み出した領域判定データのエントリのレングスの値を減算してピクセルカウンタの値を更新する。以上で領域判定データの1つのエントリの処理が完了するので、ステップS1102に戻り、処理を繰り返す。
Next, in step S1108, the code image composition unit 106 performs the following processing. That is, the frame 1 output pixel value set in step S1107 is set as the pixel value, the entry length of the area determination data read in step S1103 is set as the run length, and one entry of the encoded image data of the second frame Frame 2 is output. FIG. 12 is a diagram illustrating an example of the code image data of the second frame. When the process proceeds from step S1105 to step S1108, the code image synthesis unit 106 performs the following process. That is, one entry of the coded image data of the second frame Frame 2 is output with the Frame 1 output pixel value set last time in Step S 1107 as the pixel value and the pixel counter value as the run length.
Next, in step S1109, the code image composition unit 106 updates the value of the pixel counter by subtracting the length value of the entry of the area determination data read in step S1103 from the current value of the pixel counter. Thus, the process for one entry of the area determination data is completed, and the process returns to step S1102 to repeat the process.

前述したように、ステップS1104において、領域判定データのエントリのソースの値がFrame2である場合には、ステップS1110に進む。ステップS1110に進むと、符号画像合成部106は、第2のフレームFrame2の部分符号画像データのエントリを1つ読み出す(図8を参照)。
次に、ステップS1111において、符号画像合成部106は、Frame2出力ピクセル値にステップS1110で読み出した部分符号画像のエントリのピクセル値を設定する。
次に、ステップS1112において、符号画像合成部106は、次の処理を行う。すなわち、ステップS1110で設定したFrame2出力ピクセル値をピクセル値とし、ステップS1103で読み出した領域判定データのエントリのレングスをラン長として、第2のフレームFrame2の符号画像データのエントリを1つ出力する。
As described above, if the source value of the entry of the area determination data is Frame 2 in step S1104, the process proceeds to step S1110. In step S1110, the code image synthesis unit 106 reads one entry of partial code image data of the second frame Frame2 (see FIG. 8).
Next, in step S <b> 1111, the code image synthesis unit 106 sets the pixel value of the entry of the partial code image read in step S <b> 1110 as the Frame2 output pixel value.
Next, in step S1112, the code image composition unit 106 performs the following processing. That is, one entry of the encoded image data of the second frame Frame 2 is output with the Frame 2 output pixel value set in step S1110 as the pixel value and the length of the entry of the area determination data read out in step S1103 as the run length.

ステップS1110〜S1112で第2のフレームFrame2の符号画像データのエントリを出力した場合、当該エントリに対応する領域の第1のフレームFrame1の符号画像データのエントリの読み出しをステップS1113〜S1122で省略する。
具体的にステップS1113において、符号画像合成部106は、スキップレングスにステップS1103で読み出した領域判定データのエントリのレングスを設定する。
次に、ステップS1114において、符号画像合成部106は、ピクセルカウンタの値がスキップレングスの値以上であるか否かを判定する。この判定の結果、ピクセルカウンタの値がスキップレングスの値以上である場合、処理中の第1のフレームFrame1の符号画像データでスキップ処理が完了する。この場合、ステップS1115において、符号画像合成部106は、ピクセルカウンタの現在値からスキップレングスの値を減算してピクセルカウンタの値を更新する。
When the code image data entry of the second frame Frame2 is output in steps S1110 to S1112, reading of the code image data entry of the first frame Frame1 in the area corresponding to the entry is omitted in steps S1113 to S1122.
Specifically, in step S1113, the code image synthesis unit 106 sets the length of the entry of the area determination data read in step S1103 as the skip length.
Next, in step S <b> 1114, the code image synthesis unit 106 determines whether or not the value of the pixel counter is greater than or equal to the skip length value. If the result of this determination is that the pixel counter value is greater than or equal to the skip length value, the skip process is completed with the code image data of the first frame Frame1 being processed. In this case, in step S1115, the code image composition unit 106 updates the value of the pixel counter by subtracting the skip length value from the current value of the pixel counter.

次に、ステップS1116において、符号画像合成部106は、ピクセルカウンタの値が0(ゼロ)であるか否かを判定する。この判定の結果、ピクセルカウンタの値が0(ゼロ)である場合、ステップS1117、S1118において、符号画像合成部106は、ステップS1106、S1107と同様の処理を行って、ステップS1102に戻る。すなわち、符号画像合成部106は、第1のフレームFrame1の符号画像データのエントリを1つ読み出す。そして、符号画像合成部106は、ピクセルカウンタの値に、当該読み出した符号画像データのエントリのラン長を設定すると共に、Frame1出力ピクセル値に当該読み出した符号画像データのエントリのピクセル値を設定する。一方、ピクセルカウンタの値が0(ゼロ)でない場合には、ステップS1117、S1118を省略してステップS1102に戻る。   Next, in step S1116, the code image composition unit 106 determines whether or not the value of the pixel counter is 0 (zero). If the result of this determination is that the value of the pixel counter is 0 (zero), in steps S1117 and S1118, the code image composition unit 106 performs the same processing as in steps S1106 and S1107, and returns to step S1102. That is, the code image synthesis unit 106 reads one entry of the code image data of the first frame Frame1. Then, the code image composition unit 106 sets the run length of the read code image data entry as the pixel counter value, and sets the pixel value of the read code image data entry as the Frame1 output pixel value. . On the other hand, if the value of the pixel counter is not 0 (zero), steps S1117 and S1118 are omitted and the process returns to step S1102.

ステップS1114において、ピクセルカウンタの値がスキップレングスの値以上でないと判定された場合、スキップレングスが処理中の第1のフレームFrame1の符号画像データのエントリの残りピクセル数よりも長い。この場合には、ステップS1119〜S1122の処理で新たな第1のフレームFrame1の符号画像データのエントリを読み出し、スキップレングス分の第1のフレームFrame1の符号画像データのエントリをスキップする。   If it is determined in step S1114 that the value of the pixel counter is not greater than or equal to the skip length, the skip length is longer than the number of remaining pixels in the entry of the encoded image data of the first frame Frame1 being processed. In this case, the code image data entry of the new first frame Frame1 is read in the processing of steps S1119 to S1122, and the code image data entry of the first frame Frame1 corresponding to the skip length is skipped.

そのために、まず、ステップS1119において、符号画像合成部106は、スキップレングスの値からピクセルカウンタの値を減算する。そして、ステップS1120、S1121において、符号画像合成部106は、ステップS1106、S1107と同様の処理を行う。
そして、ステップS1122において、符号画像合成部106は、スキップレングスの値が0(ゼロ)であるか否かを判定する。この判定の結果、スキップレングスの値が0(ゼロ)である場合には、ステップ1102に戻る。一方、スキップレングスの値が0(ゼロ)でない(正の値である)場合、スキップレングスの値が0(ゼロ)になるまでステップS1114〜S1122の処理を繰り返す。
For this purpose, first, in step S1119, the code image composition unit 106 subtracts the value of the pixel counter from the skip length value. In steps S1120 and S1121, the code image composition unit 106 performs the same processing as steps S1106 and S1107.
In step S1122, the code image composition unit 106 determines whether the skip length value is 0 (zero). If the result of this determination is that the skip length value is 0 (zero), processing returns to step 1102. On the other hand, when the skip length value is not 0 (zero) (a positive value), the processes in steps S1114 to S1122 are repeated until the skip length value becomes 0 (zero).

以下に、符号画像合成部106が、図10に示す領域判定データのエントリ1001〜エントリ1003を処理する方法の一例を説明する。
符号画像合成部106は、ステップS1101〜S1103の処理を順に実行し、図10に示す領域判定データの先頭のエントリ1001を読み出す。
図10のエントリ1001のソースの値はFrame1であるので、ステップS1104の判定の結果、ステップS1105に進む。
ステップS1101の初期化処理でピクセルカウンタの値は0(ゼロ)にリセットされている。このため、ステップS1105の判定の結果、ステップS1106に進む。ステップS1106において、符号画像合成部106は、第1のフレームFrame1の符号画像データのエントリとして、図9(b)の先頭のエントリ910を読み出す。
Hereinafter, an example of a method in which the code image synthesis unit 106 processes the entry 1001 to the entry 1003 of the area determination data illustrated in FIG. 10 will be described.
The code image synthesizing unit 106 sequentially executes the processes of steps S1101 to S1103, and reads the top entry 1001 of the area determination data illustrated in FIG.
Since the source value of the entry 1001 in FIG. 10 is Frame1, the process proceeds to step S1105 as a result of the determination in step S1104.
In the initialization process in step S1101, the value of the pixel counter is reset to 0 (zero). Therefore, the process proceeds to step S1106 as a result of the determination in step S1105. In step S1106, the code image composition unit 106 reads out the head entry 910 in FIG. 9B as the code image data entry of the first frame Frame1.

続いて、ステップS1107において、符号画像合成部106は、図9(b)のエントリ910のラン長12をピクセルカウンタの値として設定する。さらに、符号画像合成部106は、図9(b)のエントリ910のピクセル値Color0をFrame1出力ピクセル値として設定する。
ステップS1103では、図10のエントリ1001(ラン長2)が読み出されており、ステップS1107では、エントリ910のピクセル値Color0がFrame1出力ピクセル値として設定されている。そこで、ステップS1108において、符号画像合成部106は、ラン長を2、ピクセル値をColor0とするエントリを、第2のフレームFrame2の符号画像データのエントリ1201として出力する。
ステップS1107において、ピクセルカウンタの値が12に更新されている。また、ステップS1103では、図10のエントリ1001(ラン長2)が読み出されている。そこで、ステップS1109において、符号画像合成部106は、ピクセルカウンタの現在の値12から、エントリ1001のレングスである2を減算し、ピクセルカウンタの値を10に更新する。
Subsequently, in step S1107, the code image composition unit 106 sets the run length 12 of the entry 910 in FIG. 9B as the value of the pixel counter. Further, the code image synthesis unit 106 sets the pixel value Color0 of the entry 910 in FIG. 9B as the Frame1 output pixel value.
In step S1103, the entry 1001 (run length 2) in FIG. 10 is read. In step S1107, the pixel value Color0 of the entry 910 is set as the Frame1 output pixel value. Therefore, in step S1108, the code image composition unit 106 outputs an entry with the run length of 2 and the pixel value of Color0 as the entry 1201 of the code image data of the second frame Frame2.
In step S1107, the value of the pixel counter is updated to 12. In step S1103, the entry 1001 (run length 2) in FIG. 10 is read. Therefore, in step S1109, the code image composition unit 106 subtracts 2 which is the length of the entry 1001 from the current value 12 of the pixel counter, and updates the value of the pixel counter to 10.

その後、ステップS1102、S1103の処理を実行し、符号画像合成部106は、図10に示す領域判定データの次のエントリ1002を読み出す。
エントリ1002のソースはFrame2であるので、ステップS1104の判定の結果、ステップS1110に進む。
ステップS1110において、符号画像合成部106は、第2のフレームFrame2の部分符号画像データのエントリとして、図8の先頭のエントリ801を読み出す。続いて、ステップS1111において、符号画像合成部106は、ステップS1110で読み出したエントリ801のピクセル値Color7をFrame2出力ピクセル値として設定する。
Thereafter, the processes of steps S1102 and S1103 are executed, and the code image composition unit 106 reads the next entry 1002 of the area determination data shown in FIG.
Since the source of the entry 1002 is Frame 2, the process proceeds to step S1110 as a result of the determination in step S1104.
In step S1110, the code image synthesis unit 106 reads the top entry 801 in FIG. 8 as an entry of the partial code image data of the second frame Frame2. Subsequently, in step S <b> 1111, the code image composition unit 106 sets the pixel value Color <b> 7 of the entry 801 read out in step S <b> 1110 as the Frame2 output pixel value.

次に、ステップS1112において、符号画像合成部106は、第2のフレームFrame2の符号画像データのエントリ1202を出力する。このエントリ1202は、ステップS1110で設定したFrame2出力ピクセル値Color7をピクセル値とし、ステップS1103で読み出した領域判定データのエントリ1002のレングス1をラン長とするエントリである。
次に、ステップS1113において、符号画像合成部106は、スキップレングスとして、ステップS1103で読み出した領域判定データのエントリ1002のレングスの値1を設定する。
Next, in step S1112, the code image synthesis unit 106 outputs an entry 1202 of code image data of the second frame Frame2. This entry 1202 is an entry having the Frame2 output pixel value Color7 set in step S1110 as the pixel value and the length 1 of the entry 1002 of the area determination data read out in step S1103 as the run length.
Next, in step S1113, the code image composition unit 106 sets the length value 1 of the entry 1002 of the area determination data read in step S1103 as a skip length.

ステップS1109において、ピクセルカウンタの現在の値が10に設定され、ステップS1113において、スキップレングスの値が1に設定されているので、ステップS1114の判定の結果、ステップS1115に進む。
そして、ステップS1115において、符号画像合成部106は、ピクセルカウンタの現在の値である10からスキップレングスの値である1を減算し、ピクセルカウンタの値を9に更新する。この結果、ステップS1116において、ピクセルカウンタは0ではないと判定されるので、ステップS1102に戻る。
In step S1109, the current value of the pixel counter is set to 10. In step S1113, the skip length value is set to 1. As a result of the determination in step S1114, the process proceeds to step S1115.
In step S1115, the code image composition unit 106 subtracts 1 as the skip length value from 10 as the current value of the pixel counter, and updates the value of the pixel counter to 9. As a result, in step S1116, since it is determined that the pixel counter is not 0, the process returns to step S1102.

そして、ステップS1102、S1103の処理を実行し、符号画像合成部106は、図10に示す領域判定データの次のエントリ1003を読みだす。
エントリ1003のソースはFrame1であるので、ステップS1104の判定の結果、ステップS1105に進む。
ステップS1115において、ピクセルカウンタの値が9に更新されている。したがって、ステップS1105の判定の結果、ステップ1108に進む。前回のステップS1107において、エントリ910のピクセル値Color0がFrame1出力ピクセル値として設定されている。そこで、ステップS1108において、符号画像合成部106は、ラン長を9、ピクセル値をColor0とするエントリを、第2のフレームFrame2の符号画像データのエントリ1203として出力する。
Then, the processes of steps S1102 and S1103 are executed, and the code image composition unit 106 reads the next entry 1003 of the area determination data shown in FIG.
Since the source of the entry 1003 is Frame1, the process proceeds to step S1105 as a result of the determination in step S1104.
In step S1115, the value of the pixel counter is updated to 9. Therefore, as a result of the determination in step S1105, the process proceeds to step 1108. In the previous step S1107, the pixel value Color0 of the entry 910 is set as the Frame1 output pixel value. Therefore, in step S1108, the code image composition unit 106 outputs an entry with the run length of 9 and the pixel value of Color0 as the entry 1203 of the code image data of the second frame Frame2.

前述したように、ステップS1115において、ピクセルカウンタの値が9に更新されている。また、ステップS1103では、図10のエントリ1003(ラン長9)が読み出されている。そこで、ステップS1109において、符号画像合成部106は、ピクセルカウンタの現在の値9から、エントリ1003のレングスである9を減算し、ピクセルカウンタの値を0に更新する。
以下同様の処理を行うことにより、図12に示す第2のフレームFrame2の符号画像データを得ることができる。
As described above, in step S1115, the value of the pixel counter is updated to 9. In step S1103, the entry 1003 (run length 9) in FIG. 10 is read. Therefore, in step S1109, the code image composition unit 106 subtracts 9 which is the length of the entry 1003 from the current value 9 of the pixel counter, and updates the value of the pixel counter to 0.
Thereafter, by performing the same processing, the code image data of the second frame Frame2 shown in FIG. 12 can be obtained.

図1の説明に戻り、出力部107は、以上のようにして符号画像合成部106が生成した第2のフレームFrame2の符号画像データをデータ格納部108に出力する。
復号部109は、出力部107による1フレーム(第2のフレームFrame2の符号画像データ)の出力が完了すると、出力が完了したフレームをデータ格納部108から読み出し、デコードする。
表示部110は、復号部109が出力したデータを表示する。
尚、映像や写真等、描画部104が描画する画像以外に複数の画像を重畳して出力するシステムでは、復号部109と表示部110との間で、画像の重ね合わせを行う処理部を追加してもよい。
Returning to the description of FIG. 1, the output unit 107 outputs the code image data of the second frame Frame 2 generated by the code image synthesis unit 106 as described above to the data storage unit 108.
When the output unit 107 completes outputting one frame (the encoded image data of the second frame Frame2), the decoding unit 109 reads the decoded frame from the data storage unit 108 and decodes it.
The display unit 110 displays the data output from the decoding unit 109.
In addition, in a system that superimposes and outputs a plurality of images other than the image drawn by the drawing unit 104, such as a video and a photograph, a processing unit that superimposes images is added between the decoding unit 109 and the display unit 110. May be.

以上のように本実施形態では、描画命令から、1フレーム前のフレームの領域に対して更新される領域を特定する。そして、1フレーム前の符号画像データから、特定した領域のデータを読み出してデコードし、デコードしたデータに対して現在のフレームの更新される領域のデータを上書きして符号化した部分符号画像データを生成する。そして、1フレーム前のフレームの領域に対して更新される領域を参照して、1フレーム前の符号画像データと部分符号画像データとをマージする。このように、1フレーム前の符号画像データをコピーして、更新される領域をデコードして描画するため、全てのオブジェクトを再描画する方法に比べて描画時間を短縮することができる。また、1フレーム前の符号画像データ及び部分符号画像データは符号化されているため、描画したデータの出力に必要なバンド幅を、非圧縮データを用いる場合と比較して削減することができる。   As described above, in the present embodiment, an area to be updated with respect to the area of the previous frame is specified from the drawing command. Then, from the encoded image data of the previous frame, the data of the specified area is read and decoded, and the partial encoded image data encoded by overwriting the decoded data with the updated area data of the current frame Generate. Then, the code image data of the previous frame and the partial code image data are merged with reference to the area updated with respect to the area of the frame of the previous frame. In this way, since the encoded image data of the previous frame is copied and the updated area is decoded and drawn, the drawing time can be shortened compared to the method of redrawing all objects. Further, since the encoded image data and the partial encoded image data of the previous frame are encoded, the bandwidth necessary for outputting the drawn data can be reduced as compared with the case where uncompressed data is used.

(変形例)
本実施形態では、透明なオブジェクトについてもバンディングボックスを計算し、更新領域情報に含めるようにした。しかしながら、透明なオブジェクトについては、このような処理を行わないようにしてもよい。以下に、このようにする場合のバウンディングボックスの算出と、更新領域情報の生成の方法の一例を示す。
(Modification)
In the present embodiment, the banding box is calculated even for a transparent object, and is included in the update area information. However, such processing may not be performed for transparent objects. Hereinafter, an example of a method for calculating the bounding box and generating the update area information in this case will be described.

更新領域抽出部102は、描画色の指示に関わる描画命令のα値を保持し、透明を示すα=0で描画されたオブジェクトのバウンディングボックスの演算を行わない。図2に示す描画命令では、描画色の指示に関わる命令は命令202、205、209、213である。図2の描画命令では、命令205でα値が0に設定された後、命令207の実行前まではα値が0となる。このため、更新領域抽出部102は、命令205で設定された色を用いる命令206に基づき描画するオブジェクトについては、バウンディングボックスを生成しない。   The update area extraction unit 102 holds the α value of the drawing command related to the drawing color instruction, and does not perform the calculation of the bounding box of the object drawn with α = 0 indicating transparency. In the drawing command shown in FIG. 2, commands 202, 205, 209, and 213 are related to the drawing color instruction. In the drawing command of FIG. 2, the α value becomes 0 after the α value is set to 0 by the command 205 and before the command 207 is executed. For this reason, the update area extraction unit 102 does not generate a bounding box for an object to be drawn based on the command 206 using the color set by the command 205.

図13は、更新領域情報の他の例を示す図である。具体的に図13(a)は、図4に示すバウンディングボックス402〜404を、縦8ピクセル、横10ピクセルのピクセル精度の2次元座標系にマッピングした更新領域の一例を示す図である。図13(b)は、図13(a)に示す更新領域から生成される更新領域情報の一例を示す図である。
図13(a)に示すように、命令202、209、213の設定色で描画されるオブジェクトの領域、領域502、503、504のみが更新領域となる。図13(b)に示すように、更新領域情報は、エントリ1304、1305、1306の3つとなる。この更新領域情報は、更新領域抽出部102から、部分画像復号部103と符号画像合成部106に出力される。
FIG. 13 is a diagram illustrating another example of the update area information. Specifically, FIG. 13A is a diagram illustrating an example of an update region in which the bounding boxes 402 to 404 illustrated in FIG. 4 are mapped to a two-dimensional coordinate system with pixel accuracy of 8 pixels in length and 10 pixels in width. FIG. 13B is a diagram showing an example of update area information generated from the update area shown in FIG.
As shown in FIG. 13A, only the areas 502, 503, and 504 of the object drawn with the set colors of the commands 202, 209, and 213 are update areas. As illustrated in FIG. 13B, the update area information includes three entries 1304, 1305, and 1306. The update area information is output from the update area extraction unit 102 to the partial image decoding unit 103 and the code image synthesis unit 106.

また、本実施形態では、バウンディングボックスの計算を描画と同じピクセル精度を用いて行った場合を例に挙げて説明した。しかしながら、演算の高速化のために、バウンディングボックスの計算を描画よりも低いピクセル精度(複数のピクセルの単位)で行ってもよい。
図14は、更新領域情報のその他の例を示す図である。具体的に図14(a)は、図4に示すバウンディングボックス402〜404を、縦4ピクセル、横5ピクセルのピクセル精度(X方向、Y方向ともそれぞれ描画精度の半分のピクセル精度)の2次元座標系にマッピングした更新領域の一例を示す図である。図13(b)は、図13(a)に示す更新領域から生成される更新領域情報の一例を示す図である。
図14(a)に示すように、領域1401、1402は、図5(a)の領域501、502と同じ大きさを有する。これに対し、領域1403、1404は、バウンディングボックスの計算精度を半分にしたため、それぞれ、図5(a)の領域503、504の2倍、4倍の大きさとなる。これに伴い、図14(b)の更新領域情報のエントリ1410のサイズは、図5(b)の更新領域情報のエントリ510のサイズに対し縦が2倍の大きさになる。また、図14(b)の更新領域情報のエントリ1411のサイズは、図5(b)の更新領域情報のエントリ511のサイズに対し縦横共に2倍の大きさになる。
Further, in the present embodiment, the case where the calculation of the bounding box is performed using the same pixel accuracy as the drawing has been described as an example. However, in order to speed up the calculation, the bounding box may be calculated with a pixel accuracy (unit of a plurality of pixels) lower than that of drawing.
FIG. 14 is a diagram illustrating another example of the update area information. Specifically, FIG. 14A is a two-dimensional representation of the bounding boxes 402 to 404 shown in FIG. 4 with pixel accuracy of 4 pixels in the vertical direction and 5 pixels in the horizontal direction (pixel accuracy in the X direction and Y direction are each half of the drawing accuracy). It is a figure which shows an example of the update area mapped on the coordinate system. FIG. 13B is a diagram showing an example of update area information generated from the update area shown in FIG.
As shown in FIG. 14A, the areas 1401 and 1402 have the same size as the areas 501 and 502 in FIG. On the other hand, since the calculation accuracy of the bounding box is halved, the areas 1403 and 1404 are twice and four times larger than the areas 503 and 504 in FIG. 5A, respectively. Accordingly, the size of the update area information entry 1410 in FIG. 14B is twice as large as the size of the update area information entry 510 in FIG. 5B. Also, the size of the update area information entry 1411 in FIG. 14B is twice as large as the size of the update area information entry 511 in FIG. 5B.

尚、前述した実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。   The above-described embodiments are merely examples of implementation in carrying out the present invention, and the technical scope of the present invention should not be construed in a limited manner. That is, the present invention can be implemented in various forms without departing from the technical idea or the main features thereof.

(その他の実施例)
本発明は、以下の処理を実行することによっても実現される。即ち、まず、以上の実施形態の機能を実現するソフトウェア(コンピュータプログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給する。そして、そのシステム或いは装置のコンピュータ(又はCPUやMPU等)が当該コンピュータプログラムを読み出して実行する。
(Other examples)
The present invention is also realized by executing the following processing. That is, first, software (computer program) for realizing the functions of the above embodiments is supplied to a system or apparatus via a network or various storage media. Then, the computer (or CPU, MPU, etc.) of the system or apparatus reads and executes the computer program.

102 更新領域抽出部、103 部分画像復号部、106 符号画像合成部   102 update region extraction unit, 103 partial image decoding unit, 106 code image synthesis unit

Claims (11)

第1の画像の後に入力される第2の画像の描画命令に基づいて、前記第1の画像の領域のうち、前記第2の画像により更新される更新領域を設定する設定手段と、
記憶媒体に記憶されている前記第1の画像の符号画像データのうち前記更新領域における前記第1の画像の符号画像データを復号化し、前記第1の画像の前記更新領域における復号データを生成する復号手段と、
前記復号手段により生成された前記第1の画像の前記更新領域における復号データに対して、前記第2の画像を上書きする描画処理を行い、前記第2の画像の前記更新領域を含む領域の描画データを生成し、前記第2の画像の前記更新領域の描画データを出力する描画手段と、
前記描画手段により出力された前記第2の画像の前記更新領域における描画データを符号化する符号化手段と、
前記記憶媒体に記憶されている、前記第1の画像の前記更新領域とは異なる領域における符号画像データと、前記符号化手段により符号化された前記第2の画像の前記更新領域における描画データとを合成して、前記第2の画像の符号画像データを生成する符号画像合成手段と、
前記符号画像合成手段により生成された前記第2の画像の符号画像データを前記記憶媒体に記憶する記憶手段と、
を有することを特徴とする画像処理装置。
Setting means for setting an update area to be updated by the second image among the areas of the first image based on a drawing instruction of the second image input after the first image;
The encoded image data of the first image in the update area is decoded from the encoded image data of the first image stored in the storage medium, and decoded data in the update area of the first image is generated. Decryption means;
A drawing process for overwriting the second image is performed on the decoded data in the update area of the first image generated by the decoding unit, and the area including the update area of the second image is drawn. Drawing means for generating data and outputting drawing data of the update area of the second image;
Encoding means for encoding drawing data in the update area of the second image output by the drawing means;
Coded image data in an area different from the update area of the first image, and drawing data in the update area of the second image encoded by the encoding means, stored in the storage medium Code image synthesizing means for generating code image data of the second image,
Storage means for storing code image data of the second image generated by the code image synthesis means in the storage medium;
An image processing apparatus comprising:
前記設定手段は、前記更新領域に含まれるオブジェクトを一意に識別する識別情報と、前記更新領域の位置および大きさを特定する情報と、を含む更新領域情報を出力することを特徴とする請求項1に記載の画像処理装置。   The setting means outputs update area information including identification information for uniquely identifying an object included in the update area, and information for specifying a position and a size of the update area. The image processing apparatus according to 1. 前記設定手段は、前記第2の画像の描画命令に含まれるオブジェクトの色情報を参照し、透明なオブジェクトの領域を、前記更新領域として設定せずに、透明でないオブジェクトの領域を前記更新領域として設定することを特徴とする請求項1または2に記載の画像処理装置。   The setting means refers to the color information of the object included in the drawing instruction of the second image, and does not set the transparent object area as the update area, but sets the non-transparent object area as the update area. The image processing apparatus according to claim 1, wherein the image processing apparatus is set. 前記設定手段は、予め設定されたピクセルの単位の矩形の領域の集合を前記更新領域として設定することを特徴とする請求項1〜3の何れか1項に記載の画像処理装置。   The image processing apparatus according to claim 1, wherein the setting unit sets a set of rectangular areas in units of pixels set in advance as the update area. 前記設定手段は、前記描画手段による描画のピクセル精度と同じピクセル精度の矩形、または、前記描画手段による描画のピクセル精度よりも低いピクセル精度の矩形の領域の集合を前記更新領域として設定することを特徴とする請求項4に記載の画像処理装置。   The setting means sets, as the update area, a rectangle having the same pixel accuracy as the pixel precision of drawing by the drawing means, or a set of rectangular areas having a pixel accuracy lower than the pixel precision of drawing by the drawing means. The image processing apparatus according to claim 4. 第1の画像の後に入力される第2の画像の描画命令に基づいて、前記第1の画像の領域のうち、前記第2の画像により更新される更新領域を設定する設定工程と、
記憶媒体に記憶されている前記第1の画像の符号画像データのうち前記更新領域における前記第1の画像の符号画像データを復号化し、前記第1の画像の前記更新領域における復号データを生成する復号工程と、
前記復号工程により生成された前記第1の画像の前記更新領域における復号データに対して、前記第2の画像を上書きする描画処理を行い、前記第2の画像の前記更新領域を含む領域の描画データを生成し、前記第2の画像の前記更新領域の描画データを出力する描画工程と、
前記描画工程により出力された前記第2の画像の前記更新領域における描画データを符号化する符号化工程と、
前記記憶媒体に記憶されている、前記第1の画像の前記更新領域とは異なる領域における符号画像データと、前記符号化工程により符号化された前記第2の画像の前記更新領域における描画データとを合成して、前記第2の画像の符号画像データを生成する符号画像合成工程と、
前記符号画像合成工程により生成された前記第2の画像の符号画像データを前記記憶媒体に記憶する記憶工程と、
を有することを特徴とする画像処理方法。
A setting step of setting an update area to be updated by the second image among the areas of the first image based on a drawing instruction of the second image input after the first image;
The encoded image data of the first image in the update area is decoded from the encoded image data of the first image stored in the storage medium, and decoded data in the update area of the first image is generated. Decryption step;
A drawing process for overwriting the second image is performed on the decoded data in the update area of the first image generated by the decoding step, and the area including the update area of the second image is drawn. A drawing step of generating data and outputting drawing data of the update area of the second image;
An encoding step of encoding drawing data in the update region of the second image output by the drawing step;
Coded image data in a region different from the update region of the first image stored in the storage medium, drawing data in the update region of the second image encoded by the encoding step, and A code image synthesis step for generating code image data of the second image,
A storage step of storing the code image data of the second image generated by the code image synthesis step in the storage medium;
An image processing method comprising:
前記設定工程は、前記更新領域に含まれるオブジェクトを一意に識別する識別情報と、前記更新領域の位置および大きさを特定する情報と、を含む更新領域情報を出力することを特徴とする請求項6に記載の画像処理方法。   The setting step outputs update area information including identification information for uniquely identifying an object included in the update area and information for specifying a position and a size of the update area. 6. The image processing method according to 6. 前記設定工程は、前記第2の画像の描画命令に含まれるオブジェクトの色情報を参照し、透明なオブジェクトの領域を、前記更新領域として設定せずに、透明でないオブジェクトの領域を前記更新領域として設定することを特徴とする請求項6または7に記載の画像処理方法。   The setting step refers to the color information of the object included in the drawing instruction for the second image, and does not set the transparent object area as the update area, but sets the non-transparent object area as the update area. The image processing method according to claim 6, wherein the image processing method is set. 前記設定工程は、予め設定されたピクセルの単位の矩形の領域の集合を前記更新領域として設定することを特徴とする請求項6〜8の何れか1項に記載の画像処理方法。   The image processing method according to claim 6, wherein the setting step sets a set of rectangular areas in units of pixels set in advance as the update area. 前記設定工程は、前記描画工程による描画のピクセル精度と同じピクセル精度の矩形、または、前記描画工程による描画のピクセル精度よりも低いピクセル精度の矩形の領域の集合を前記更新領域として設定することを特徴とする請求項9に記載の画像処理方法。   The setting step includes setting, as the update region, a rectangle having the same pixel accuracy as the pixel accuracy of drawing by the drawing step or a set of rectangular regions having a pixel accuracy lower than the pixel accuracy of drawing by the drawing step. The image processing method according to claim 9, wherein: 請求項6〜10の何れか1項に記載の画像処理方法の各工程をコンピュータに実行させることを特徴とするコンピュータプログラム。   A computer program for causing a computer to execute each step of the image processing method according to claim 6.
JP2013238069A 2013-11-18 2013-11-18 Image processing apparatus, image processing method, and program Active JP6338357B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013238069A JP6338357B2 (en) 2013-11-18 2013-11-18 Image processing apparatus, image processing method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013238069A JP6338357B2 (en) 2013-11-18 2013-11-18 Image processing apparatus, image processing method, and program

Publications (3)

Publication Number Publication Date
JP2015099443A true JP2015099443A (en) 2015-05-28
JP2015099443A5 JP2015099443A5 (en) 2017-01-05
JP6338357B2 JP6338357B2 (en) 2018-06-06

Family

ID=53376031

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013238069A Active JP6338357B2 (en) 2013-11-18 2013-11-18 Image processing apparatus, image processing method, and program

Country Status (1)

Country Link
JP (1) JP6338357B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10896661B2 (en) 2017-07-05 2021-01-19 Samsung Electronics Co., Ltd. Image processing apparatus and method for controlling the same

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013045401A (en) * 2011-08-26 2013-03-04 Mitsubishi Electric Corp Animation drawing device
WO2013102958A1 (en) * 2012-01-06 2013-07-11 三菱電機株式会社 Memory access control device

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013045401A (en) * 2011-08-26 2013-03-04 Mitsubishi Electric Corp Animation drawing device
WO2013102958A1 (en) * 2012-01-06 2013-07-11 三菱電機株式会社 Memory access control device

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10896661B2 (en) 2017-07-05 2021-01-19 Samsung Electronics Co., Ltd. Image processing apparatus and method for controlling the same

Also Published As

Publication number Publication date
JP6338357B2 (en) 2018-06-06

Similar Documents

Publication Publication Date Title
TWI602148B (en) Gradient adjustment for texture mapping to non-orthonormal grid
KR101922482B1 (en) Varying effective resolution by screen location by changing active color sample count within multiple render targets
KR102275712B1 (en) Rendering method and apparatus, and electronic apparatus
JP4850278B2 (en) Content creation support device, content creation support method, and scenario file generation method
TW201813399A (en) Method and apparatus for video encoding or decoding
US9129581B2 (en) Method and apparatus for displaying images
US20140321771A1 (en) Techniques for real-time clearing and replacement of objects
TWI690728B (en) Method for processing projection-based frame that includes projection faces packed in cube-based projection layout with padding
US8749566B2 (en) System and method for an optimized on-the-fly table creation algorithm
JP2009238117A (en) Multi-parallax image generation device and method
WO2019163129A1 (en) Virtual object display control device, virtual object display system, virtual object display control method, and virtual object display control program
CN101097710A (en) Image processor and image processing method
US9047680B2 (en) Information processing apparatus, information processing method, and data structure of content files
JP6338357B2 (en) Image processing apparatus, image processing method, and program
JP3547250B2 (en) Drawing method
JP6513305B2 (en) Video combining apparatus and video combining method
KR20050040712A (en) 2-dimensional graphic decoder including graphic display accelerating function based on commands, graphic display accelerating method therefor and reproduction apparatus
CN109643462B (en) Real-time image processing method based on rendering engine and display device
JP2005322233A (en) Memory efficient method and apparatus for compression encoding large overlaid camera image
US9317891B2 (en) Systems and methods for hardware-accelerated key color extraction
WO2021245875A1 (en) Image compositing device and image compositing method
JP2005266792A (en) Memory efficient method and apparatus for displaying large overlaid camera image
US20110157162A1 (en) Image processing device, image processing method, and program
JP3872056B2 (en) Drawing method
JP6861910B2 (en) Information processing equipment, programs and information processing methods

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20161116

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20161116

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20171016

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20171107

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171215

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20180410

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180508

R151 Written notification of patent or utility model registration

Ref document number: 6338357

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151