WO2014080440A1 - Information processing device, control method, and control program - Google Patents

Information processing device, control method, and control program Download PDF

Info

Publication number
WO2014080440A1
WO2014080440A1 PCT/JP2012/007487 JP2012007487W WO2014080440A1 WO 2014080440 A1 WO2014080440 A1 WO 2014080440A1 JP 2012007487 W JP2012007487 W JP 2012007487W WO 2014080440 A1 WO2014080440 A1 WO 2014080440A1
Authority
WO
WIPO (PCT)
Prior art keywords
image data
time
information processing
processing
processing apparatus
Prior art date
Application number
PCT/JP2012/007487
Other languages
French (fr)
Japanese (ja)
Inventor
松井 一樹
健一 堀尾
Original Assignee
富士通株式会社
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 富士通株式会社 filed Critical 富士通株式会社
Priority to PCT/JP2012/007487 priority Critical patent/WO2014080440A1/en
Publication of WO2014080440A1 publication Critical patent/WO2014080440A1/en

Links

Images

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/003Details of a display terminal, the details relating to the control arrangement of the display terminal and to the interfaces thereto
    • G09G5/006Details of the interface to the display terminal
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2310/00Command of the display device
    • G09G2310/04Partial updating of the display screen
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2340/00Aspects of display data processing
    • G09G2340/02Handling of images in compressed format, e.g. JPEG, MPEG

Definitions

  • the present invention relates to an information processing apparatus, a control method, and a control program.
  • the thin client system is a system for causing a server to execute an application based on operation information from the client, for example, and displaying the execution result of the application on the client.
  • the client since the thin client system causes the server to execute the application, the client may have only a minimum function, for example, a communication function and an input function.
  • the response time until the execution result of the application resulting from the operation instruction of the client is actually displayed on the client may be affected.
  • the compression method for moving images uses a compression technique peculiar to moving images such as motion vectors, inter-frame prediction, and motion compensation, a huge amount of calculation is required as compared with the compression method for still images. For this reason, the response time until the operation instruction of the client is reflected on the display screen of the client cannot be sufficiently shortened.
  • the disclosed technology provides an information processing apparatus, an image transmission program, an image display program, and an image display method that improve an operation response of a client.
  • an information processing apparatus that causes the terminal device to display an execution result based on the operation instruction from the terminal device, the execution is performed based on an index related to a response time to the operation instruction from the terminal device.
  • An information processing apparatus includes a determination unit that determines a processing method related to the data amount of the resulting image data, and a transmission unit that transmits image data processed by the determined processing method to the terminal device.
  • the operational response of the client can be improved.
  • FIG. 1 is a schematic diagram of a hardware configuration of a server device according to an embodiment.
  • FIG. 2 is a schematic diagram of a hardware configuration of the client terminal according to the embodiment.
  • FIG. 3 is a schematic diagram of functional blocks of the thin client system according to the embodiment.
  • FIG. 4 is a schematic diagram illustrating an example of division of image data according to an embodiment.
  • FIG. 5 is a schematic diagram illustrating a procedure for determining the change frequency of image data according to an embodiment.
  • FIG. 6 is a schematic diagram illustrating a correction procedure for a mesh assembly according to an embodiment.
  • FIG. 7 is a schematic diagram illustrating a procedure for synthesizing a candidate for a frequently changed region according to an embodiment.
  • FIG. 1 is a schematic diagram of a hardware configuration of a server device according to an embodiment.
  • FIG. 2 is a schematic diagram of a hardware configuration of the client terminal according to the embodiment.
  • FIG. 3 is a schematic diagram of functional blocks of the thin client system according to the embodiment
  • FIG. 8 is a schematic diagram illustrating a notification procedure of attribute information of a frequently changed region according to an embodiment.
  • FIG. 9 is a schematic diagram of a still image compression time table and a moving image compression table according to an embodiment.
  • FIG. 10 is a flowchart of image transmission processing by the server device according to the embodiment.
  • FIG. 11 is a flowchart of compression method determination processing by the server device according to the embodiment.
  • FIG. 12 is a schematic diagram illustrating a specific example of compression method determination processing by the server device according to the embodiment.
  • FIG. 13 is a flowchart of image display processing by the client terminal according to the embodiment.
  • FIG. 1 is a schematic diagram of a hardware configuration of a server device 10 according to an embodiment.
  • the server apparatus 10 includes a CPU (Central Processing Unit) 101, a main memory 102, an auxiliary memory 103, an operation device 104, a display 105, and a communication module 106 as hardware modules. . These hardware modules are interconnected by a bus 107.
  • CPU Central Processing Unit
  • main memory 102 main memory
  • auxiliary memory 103 main memory
  • operation device 104 operation device
  • display 105 display
  • communication module 106 communication module
  • CPU 101 controls various hardware modules of server device 10. Furthermore, the CPU 101 executes various functions by reading various programs stored in the auxiliary memory 103 into the main memory 102 and executing the various programs read into the main memory 102. Details of the various functions will be described later.
  • the main memory 102 stores various programs executed by the CPU 101. Further, the main memory 102 is used as a work area for the CPU 101 and stores various data necessary for processing by the CPU 101. For example, a RAM (Random Access Memory) may be used as the main memory 102.
  • a RAM Random Access Memory
  • the auxiliary memory 103 stores various programs for operating the server device 10. Examples of the various programs include an application program such as a server control program 1000 executed by the server device 10 and an OS 1100 that is an execution environment of the application program.
  • the server control program 1000 provides the server-side remote screen control unit 15 according to the present embodiment.
  • a non-volatile memory such as a hard disk or a flash memory may be used.
  • the communication module 106 receives operation information from the client terminal 20 and transmits image data and attribute information as an execution result of the application program to the client terminal 20. Further, the communication module 106 receives the data transfer rate from the server device 10 to the client terminal 20 calculated by the client terminal 20.
  • FIG. 2 is a schematic diagram of a hardware configuration of the client terminal 20 according to the embodiment.
  • the client terminal 20 includes a CPU 201, a main memory 202, an auxiliary memory 203, a display 204, a communication module 205, and an operation device 206 as hardware modules. These hardware modules are interconnected by a bus 207.
  • the CPU 201 controls various hardware modules of the client terminal 20. Furthermore, the CPU 201 executes various functions by reading various programs stored in the auxiliary memory 203 into the main memory 202 and executing the various programs read into the main memory 202. Details of the various functions will be described later.
  • the main memory 202 stores various programs executed by the CPU 201. Further, the main memory 202 is used as a work area for the CPU 201 and stores various data necessary for processing by the CPU 201. For example, a RAM or the like may be used as the main memory 202.
  • the auxiliary memory 203 stores various programs for operating the client terminal 20. Examples of the various programs include an application program such as a client control program 2000 executed by the client terminal 20 and an OS 2100 that is an execution environment of the application program.
  • the client control program 2000 provides the client side remote screen control unit 23.
  • a nonvolatile memory such as a hard disk or a flash memory may be used.
  • the display 204 displays image data such as an execution result of the application program by the CPU 201 and an execution result of the application program by the server device 10, for example.
  • the communication module 205 transmits, for example, operation information received from the operation device 206 to the server device 10 and receives image data and attribute information generated by the server device 10. Further, the communication module 205 transmits the data transfer rate from the server device 10 to the client terminal 20 to the server device 10.
  • the operation device 206 acquires an operation instruction from the user of the client terminal 20.
  • the operation device 206 for example, a keyboard, a mouse, a pointing device, or the like may be used.
  • FIG. 3 is a schematic diagram of functional blocks of the thin client system 30 according to the embodiment.
  • the thin client system 30 includes a server device 10 and a client terminal 20, and controls the server device 10 to control a screen displayed by the client terminal 20. That is, the thin client system 30 operates the server device 10 based on an operation instruction from the client terminal 20 and causes the client terminal 20 to display an execution result of the application program by the server device 10 and retained data.
  • one client terminal 20 is connected to one server apparatus 10, but the number of client terminals 20 connected to the server apparatus 10 is not particularly limited.
  • the server device 10 and the client terminal 20 are connected via a network 40 so that they can communicate with each other.
  • the network 40 is not limited to wired or wireless, and any type of communication network such as the Internet, LAN (Local Area Network), VPN (Virtual Private Network), or the like may be used.
  • a communication protocol between the server device 10 and the client terminal 20 is not particularly limited, but for example, a VNC (Virtual Network Computing) RFB (Remote Frame Buffer) protocol may be used.
  • the server apparatus 10 is installed with an application program for remote screen control for the server, that is, a server control program 1000, and provides a service for remotely controlling a screen to be displayed on the client terminal 20.
  • the server control program 1000 provides a remote screen control service as a basic function. For example, when the server apparatus 10 acquires operation information from the client terminal 20, the server apparatus 10 causes an application program operating on the server apparatus 10 to execute a process requested by the operation information based on the server control program 1000. Further, the server device 10 generates screen information for displaying the execution result of the application program, that is, image data based on the server control program 1000, and transmits the image data to the client terminal 20. At this time, if there is image data that has been displayed on the client terminal 20 before the generation of the image data, the server device 10 changes the image data of the change area from the image data, the image data and attributes of the update rectangle in the present embodiment. Information is transmitted to the client terminal 20.
  • the server apparatus 10 converts image data in an area where the change frequency exceeds the frequency threshold among image data to be displayed on the client terminal 20, that is, image data in the high-frequency change area, And compressed to the client terminal 20.
  • the server device 10 divides the image data for displaying the execution result of the application program by the server device 10 into a plurality of regions, and the image data of the region where the change frequency exceeds the frequency threshold, that is, the high-frequency change region And attribute information is transmitted to the client terminal 20.
  • an MPEG method such as MPEG-2 (Moving Picture Experts Group IV-Exp2) or MPEG-4 (Moving Picture Experts Group IV- 4) may be used.
  • the compression method according to the present invention is not limited to the data compression of the MPEG method, and any compression encoding method such as Motion-JPEG (Joint Photographic Experts Group) may be used as long as it is a compression method for moving images. May be used.
  • Motion-JPEG Joint Photographic Experts Group
  • the client terminal 20 is installed with an application program for remote screen control for clients, that is, a client control program 2000, and enjoys the provision of a remote screen control service by the server device 10.
  • a fixed terminal such as a personal computer, or a mobile terminal such as a mobile phone, a PHS (Personal Handyphone System), or a PDA (Personal Digital Assistant) may be used.
  • a PHS Personal Handyphone System
  • PDA Personal Digital Assistant
  • the client terminal 20 notifies the server device 10 of the operation information received by the operation device 206 based on the client control program 2000. For example, the client terminal 20 sends the mouse click, double click, drag, mouse cursor movement direction and movement amount, mouse wheel rotation amount, keyboard pressing key type, and the like as operation information to the server device 10. Notice.
  • the client terminal 20 displays the image data transmitted from the server device 10 on the display 204 of the client terminal 20 based on the client control program 2000. For example, when the update rectangle image data and attribute information are received from the server device 10, the client terminal 20 displays the update rectangle image data at the position specified by the attribute information in the size specified by the attribute information. . Further, when the image data and attribute information of the frequently changed area are received from the server device 10, the client terminal 20 designates the image data of the frequently changed area in the position designated by the attribute information by the attribute information. Display in size.
  • the server device 10 includes an OS execution control unit 11, an application execution control unit 12, a graphic driver 13, a frame buffer 14, and a server-side remote screen control unit 15.
  • the OS execution control unit 11, the application execution control unit 12, the graphic driver 13, and the frame buffer 14 are all realized by reading the OS 1100 into the main memory 102 and executing the OS 1100 read into the main memory 102.
  • the server-side remote screen control unit 15 is realized by the CPU 101 reading the server control program 1000 into the main memory 102 and executing the server control program 1000 read into the main memory.
  • the OS execution control unit 11 controls execution of the OS 1100.
  • the OS execution control unit 11 detects an application program activation instruction and a command to the application program from the operation information acquired by the operation information acquisition unit 151. Specifically, when a request operation for starting an application program is detected, the OS execution control unit 11 instructs the application execution control unit 12 to start the application program associated with the icon. When a request operation for command execution to the application program is detected, the OS execution control unit 11 instructs the application execution control unit 12 to execute the command.
  • the application execution control unit 12 controls the execution of the application program based on an instruction from the OS execution control unit 11.
  • the instruction from the OS execution control unit 11 is an application program activation instruction or an application program command execution instruction.
  • the application execution control unit 12 instructs the graphic driver 13 to draw the display image of the execution result by the application program in the frame buffer 14. At this time, the application execution control unit 12 also instructs the graphic driver 13 to draw the display image.
  • the graphic driver 13 draws a display image in the frame buffer 14 based on an instruction from the application execution control unit 12. Specifically, when a drawing instruction is received from the application execution control unit 12, the graphic driver 13 bitmaps the display image of the execution result by the application program to the drawing position specified by the application program in the frame buffer 14. Draw in format.
  • the frame buffer 14 stores bitmap-format image data drawn by the graphic driver 13.
  • a random access memory such as a video random access memory (VRAM), a read only memory (ROM), a semiconductor memory element such as a flash memory, or a storage device such as a hard disk or an optical disk is used. May be.
  • the server-side remote screen control unit 15 includes an operation information acquisition unit 151, an image generation unit 152, a change frequency determination unit 153, a high frequency change region identification unit 154, an encoder 155, an image transmission unit 156, and a compression method determination unit 157. .
  • the operation information acquisition unit 151 acquires operation information from the client terminal 20.
  • operation information for example, mouse click, double click, drag, mouse cursor movement direction and movement amount, mouse wheel rotation amount, keyboard pressing key type, and the like may be used.
  • the image generation unit 152 generates image data to be displayed on the display 204 of the client terminal 20. Specifically, when bitmap format image data is stored in the frame buffer 14, the image generation unit 152 obtains image data of the immediately previous frame (previous frame) and image data of the latest frame (current frame). Compare. The image data of the immediately previous frame is the image data that was displayed on the client terminal 20 immediately before, and the image data of the latest frame is the image data that is newly stored in the frame buffer 14. Furthermore, the image generation unit 152 generates a rectangular update region that includes a change pixel from the image data of the immediately preceding frame, that is, an update rectangle. The image generation unit 152 generates an update rectangle transmission packet in order to transfer the update rectangle image data to the client terminal 20.
  • the update rectangle transmission packet includes the update rectangle image data compressed by the still image compression method, the attribute information specifying the display position and display size of the image data, the packet transmission time by the server device 10, and the like. .
  • the change frequency determination unit 153 divides the image data drawn in the frame buffer 14 into a plurality of regions, and determines the change frequency between frames for each region. For example, the change frequency determination unit 153 accumulates the update rectangle attribute information generated by the image generation unit 152 in the work memory for a predetermined period.
  • the attribute information information specifying the position and size of the update rectangle, for example, the coordinates of the upper left vertex of the update rectangle, and the width and height of the update rectangle may be used.
  • the accumulation period for accumulating the update rectangle attribute information is not particularly limited, but may be one second, for example.
  • the change frequency determination unit 153 uses the change frequency determination map obtained by dividing the image data to be displayed on the client terminal 20 into a mesh shape, thereby changing the change frequency. Is determined.
  • FIG. 4 is a schematic diagram illustrating an example of division of image data according to an embodiment.
  • the change frequency determination map 50 is divided into a plurality of meshes 51.
  • Each mesh 51 includes a plurality of pixels 52.
  • each mesh 51 includes 8 ⁇ 8 (64 pixels) 52.
  • the change frequency determination unit 153 develops the update rectangle on the change frequency determination map 50 based on the update rectangle attribute information stored in the work memory, that is, the position and size of the update rectangle. Furthermore, every time the update rectangle is developed on the change frequency determination map, the change frequency determination unit 153 adds the number of changes of the mesh 51 where the update rectangles overlap even a little.
  • FIG. 5 is a schematic diagram for explaining a procedure for determining the change frequency of image data according to an embodiment.
  • the change frequency determination unit 153 adds the number of updates of the mesh 51 in the shaded portion one by one.
  • the initial value of the number of changes of each mesh 51 is set to 0, as a result of the development of the update rectangle A1, the number of changes of the shaded portion is changed from “0” to “ 1 ".
  • the change frequency determination unit 153 adds the number of updates of the mesh 51 in the shaded portion one by one. At this time, since the number of changes of the mesh 51 in the shaded portion is 1, the number of changes in the shaded portion is changed from “1” to “1” as described in each mesh 51 as a result of the development of the update rectangle A2. 2 ”.
  • the change frequency determination unit 153 calculates the number of changes per predetermined period, that is, the change frequency, and the change frequency is increased.
  • a mesh 51 exceeding the threshold is acquired. For example, when the frequency threshold value is “4”, the mesh 51 of the shaded portion is acquired as shown in FIG.
  • the frequency threshold value may be a numerical value set by the developer of the server control program 1000 or a numerical value directly input by the end user.
  • the high-frequency change area identifying unit 154 identifies “high-frequency change areas” from areas where the change frequency of the image data to be displayed on the client terminal 20 exceeds the threshold value. Specifically, when the change frequency determination unit 153 acquires a mesh whose number of changes exceeds the frequency threshold, the high frequency change region identification unit 154 includes a plurality of meshes acquired by the change frequency determination unit 153. Then, meshes connected to each other (adjacent) are connected to generate a so-called mesh connected body. At this time, a mesh may be added to the mesh connection body and corrected to the minimum rectangle including the mesh connection body. In this embodiment, a mesh connected body corrected to the minimum rectangle is used.
  • FIG. 6 is a schematic diagram illustrating a correction procedure for a mesh assembly according to an embodiment.
  • an interpolation mesh 55 for interpolating the lost region 54 is added to the mesh connected body 53 as shown in FIG.
  • a new mesh connected body 56 corrected to a minimum rectangle including the mesh connected body 53 is generated.
  • the new mesh connected body 56 becomes a candidate for the frequently changed region.
  • the high frequency change area identifying unit 154 detects a plurality of new mesh connected bodies 56, that is, a plurality of high frequency change area candidates
  • the interval (distance) d of the high frequency change area candidates is determined in advance. Determine if it is less than the given distance threshold.
  • the frequently changed area identifying unit 154 includes a minimum that includes the candidates for the frequently changed area. Generate a rectangle.
  • FIG. 7 is a schematic diagram illustrating a procedure for synthesizing a candidate for a frequently changed region according to an embodiment.
  • the high-frequency change area identifying unit 154 adds the complement area C to the high-frequency change area candidates B1 and B2, and generates a minimum rectangle that includes both the high-frequency change area candidates B1 and B2.
  • the high-frequency change area identifying unit 154 identifies the minimum rectangle that includes both the high-frequency change area candidates B1 and B2 as the high-frequency change area.
  • the frequently changed region identifying unit 154 changes each of the frequently changed region candidates B1 and B2 to the frequently changed region. Identify as a region.
  • the frequently changed area identifying unit 154 transmits the attribute information of the frequently changed area, that is, the position and size of the frequently changed area to the client terminal 20.
  • FIG. 8 is a schematic diagram for explaining a notification procedure of attribute information of a frequently changed region according to an embodiment.
  • FIG. 8A is a display image to be displayed on the client terminal 20, and FIGS. These show a change frequency determination map for determining the change frequency of the image data drawn in the frame buffer 14.
  • the display image displayed on the client terminal 20 includes a mouse cursor 61, a browser screen 62, and a moving image playback screen 63.
  • the display image changes with time, and as shown in FIG. 8B, an update rectangle 64 resulting from the movement of the mouse cursor 61 and an update rectangle 65 resulting from the change in the moving image playback screen 63 , Is acquired.
  • an update rectangle resulting from the browser screen 62 is not detected.
  • the frequently changed area identifying unit 154 As shown in FIG.
  • the attribute information of the change area 66 that is, the coordinates (x, y) of the upper left vertex of the high frequency change area 66 and the width w and height h of the high frequency change area 66 are transmitted to the client terminal 20.
  • the high-frequency change area identifying unit 154 determines whether or not the update rectangle is included in the high-frequency change area stored in the work memory, that is, the moving image reproduction area, every time an update rectangle is generated by the image generation unit 152. When the update rectangle is not included in the high-frequency change area, the high-frequency change area identification unit 154 instructs the image transmission unit 156 to transmit the image data and attribute information of the update rectangle. When the update rectangle is included in the high-frequency change area, the high-frequency change area identification unit 154 does not instruct the image transmission unit 156 to transmit the image data and attribute information of the update rectangle. When the update rectangle is caused by the movement of the mouse cursor drawn by the OS execution control unit 11, the image data and attribute information of the update rectangle caused by the mouse cursor may be transmitted exceptionally.
  • the frequently changed area identifying unit 154 determines whether or not the attribute information of the frequently changed area is registered in the work memory every time the bitmap format image data is drawn in the frame buffer 14. When the attribute information of the frequently changed area is registered, the frequently changed area identifying unit 154 acquires the image data of the frequently changed area among the image data drawn in the frame buffer 14.
  • the encoder 155 compresses the update rectangle image data generated by the image generation unit 152 or the image data of the high-frequency change area acquired by the high-frequency change area identification unit 154 using a compression method for still images or moving images, respectively.
  • Encode For example, when compressing image data in the frequently changed area, the encoder 155 starts encoding the image data in the frequently changed area when the image data in the frequently changed area reaches the number of frames that can be streamed.
  • a compression method for moving images for example, an MPEG method such as MPEG-2 or MPEG-4 or a Motion-JPEG method may be used.
  • the encoder 155 may update the still image compression time table Ta or the moving image compression time table Tb based on the compression history by the still image or moving image compression method. For example, each time image data in an update rectangle or frequently changed area is compressed by a still image or moving image compression method, the relationship between the number of pixels in the update rectangle or frequently changed area and the compression time is recorded. When a plurality of relationships are acquired, the still image compression time table Ta or the moving image compression time table Tb is updated.
  • the image transmission unit 156 transmits the update rectangle image data and attribute information compressed by the encoder 155 to the client terminal 20.
  • update rectangle image data for example, an RFB protocol in VNC may be used as a communication protocol.
  • the image transmission unit 156 transmits the image data and attribute information of the frequently changed region compressed by the encoder 155 to the client terminal 20.
  • RTP Real-time Transport Protocol
  • the compression method determination unit 157 includes a transfer rate acquisition unit 1571, a processing order determination unit 1572, a response time estimation unit 1573, a compression method selection unit 1574, and a processing time storage unit 1575.
  • the transfer rate acquisition unit 1571 acquires the data transfer rate calculated by the client terminal 20.
  • the data transfer rate is a data amount per unit time of data transferred from the server device 10 to the client terminal 20.
  • the processing order determination unit 1572 assigns the processing order of the compression method determination process to each of the high frequency change areas identified by the high frequency change area identification unit 154. Specifically, the processing order determination unit 1572 assigns the processing order in descending order of the area (number of pixels) of the frequently changed region.
  • the response time estimation unit 1573 is based on the data transfer rate acquired by the transfer rate acquisition unit 1571 and the still image compression time table Ta or the moving image compression table Tb stored in the processing time storage unit 1575.
  • the time required from the start of image data compression to the acquisition of image data by the client terminal 20 is calculated.
  • the required time calculated here is the response time.
  • the response time is an example of an index related to response time.
  • the response time is the time from when the client terminal 20 receives an operation instruction from the operation device 206 to when the execution result of the application program resulting from the operation instruction is reflected on the display screen of the client terminal 20.
  • the time until the server device 10 acquires the operation information received by the client terminal 20 is not affected by the size of the image data, and is considerably smaller than the compression time of the image data. Then, the time excluding this is set as the response time.
  • the compression method selection unit 1574 selects a compression method for image data from a compression method for still images or a compression method for moving images for each high-frequency change area. To do.
  • FIG. 9 is a schematic diagram of a still image compression table Ta and a moving image compression time table Tb according to an embodiment.
  • the still image compression time table Ta records the relationship between the number of pixels (area) and the processing time when image data is compressed by a still image compression method.
  • the moving image compression time table Tb stores the relationship between the number of pixels (area) and the processing time when image data is compressed by a moving image compression method.
  • the compression time by the compression method for moving images is significantly longer than the compression time by the compression method for still images.
  • the still image compression time table Ta and the moving image compression time table Tb are updated every time the encoder 155 compresses the image data.
  • the client terminal 20 includes an operation information receiving unit 21, a display unit 22, and a client-side remote screen control unit 23.
  • Both the operation information reception unit 21 and the display unit 22 are realized by the CPU 201 reading the OS 2100 into the main memory 202 and executing the OS 2100 read into the memory 202.
  • the client-side remote screen control unit 23 is realized by the CPU 201 reading the client control program 2000 into the main memory 202 and executing the client control program 2000 read into the main memory 202.
  • the operation information reception unit 21 receives various information acquired from the operation device 206, for example, an instruction input to the client-side remote screen control unit 23.
  • the display unit 22 causes the display 204 to display the update rectangle or the image data of the frequently changed region transmitted from the server device 10 based on the instruction from the display control unit 234. At this time, the display unit 22 determines the display position and display size of the image data based on the position and size included in the attribute information.
  • the client-side remote screen control unit 23 includes an operation information notification unit 231, an image reception unit 232, a decoder 233, a display control unit 234, and a transfer rate calculation unit 235.
  • the operation information notifying unit 231 notifies the server device 10 of the operation information received by the operation information receiving unit 21.
  • the operation information notification unit 231 uses, for example, the left and right mouse clicks, double clicks, drags, the movement direction and movement amount of the mouse cursor, the rotation amount of the mouse hole, the type of the key pressed on the keyboard as the operation information as the server device. 10 is notified.
  • the image receiving unit 232 receives the update rectangle or the frequently changed area image data and attribute information transmitted from the server device 10.
  • the attribute information includes the position and size of the update rectangle or the frequently changed area. Since the image data and the attribute information are packetized, the image receiving unit 232 extracts the image data and the attribute information from the packet.
  • the decoder 233 restores (decodes) the update rectangle or the frequently changed area image data received by the image receiving unit 232 by a designated compression method, that is, a still image compression method or a moving image compression method.
  • a designated compression method that is, a still image compression method or a moving image compression method.
  • the decoder 233 according to the present embodiment restores image data using a designated compression method, but the present invention is not limited to this.
  • a dedicated decoder may be prepared for each compression method.
  • the display control unit 234 instructs the display unit 22 to display the image data restored by the decoder 233 based on the attribute information received by the image receiving unit 232. Specifically, the display control unit 234 notifies the display unit 22 of an instruction to display image data having a size specified by the attribute information at a position specified by the attribute information.
  • the transfer rate calculation unit 235 analyzes the packet of the image data received by the image reception unit 232 and calculates the data transfer rate from the server device 10 to the client terminal 20. Specifically, the transfer rate calculation unit 235 obtains the packet transmission time by the server device 10 from the image data packet, and the difference between the packet reception time by the client terminal 20 and the packet transmission time by the server device 10; That is, the data transfer time is calculated. Further, the transfer rate calculation unit 235 obtains the data amount of the image data based on the packet received from the server device 10 and divides this by the data transfer time, so that the data transfer amount per unit time, that is, the data Calculate the transfer rate.
  • FIG. 10 is a flowchart of image transmission processing by the server device 10 according to the embodiment.
  • the image generation unit 152 When the image data is drawn in the frame buffer 14, as shown in FIG. 10, the image generation unit 152 generates an update rectangle that includes the changed portion from the image data displayed on the client terminal 20 immediately before (step S101). ).
  • the image generation unit 152 generates a packet for transmitting the update rectangle image data based on the update rectangle image data, that is, the image data of the region included in the update rectangle (step S102).
  • the change frequency determination unit 153 stores the update rectangle generated by the image generation unit 152 in the work memory (step S103).
  • the change frequency determination unit 153 determines whether or not the elapsed time from the start of accumulation of the update rectangle has exceeded a predetermined time threshold (step S104).
  • the frequent change area identification unit 154 determines that the update rectangle generated by the image generation unit 152 Then, it is determined whether or not it is included in the high frequency change area stored in the work memory (step S115).
  • the change frequency determination unit 153 determines the position and size of each update rectangle accumulated in the work memory. Based on the above, the update rectangle is developed on the change frequency determination map (step S105).
  • the change frequency determination unit 153 acquires a mesh whose change frequency exceeds a predetermined frequency threshold, that is, a high-frequency mesh among the meshes of the change frequency determination map (step S106).
  • the high-frequency change area identifying unit 154 determines whether there is a high-frequency mesh whose change frequency exceeds the frequency threshold (step S107).
  • the high-frequency change area identifying unit 154 determines that there is no high-frequency change area, and The number of changes for each mesh of the map for change frequency determination stored in the memory is cleared (step S114).
  • the high-frequency change region identifying unit 154 connects the high-frequency mesh to generate a mesh connected body.
  • the mesh connected body may be corrected to a minimum rectangle including the mesh connected body.
  • a mesh connected body corrected to the minimum rectangle is used.
  • the high-frequency change area identifying unit 154 uses the high-frequency mesh as a mesh connected body.
  • the high-frequency change area identification unit 154 determines whether or not there are a plurality of mesh connected bodies in the change frequency determination map (step S109).
  • the high-frequency change area identifying unit 154 determines that the mutual distance is smaller than a predetermined distance threshold value. It is determined whether a body exists (step S110).
  • the high-frequency change area identifying unit 154 combines these mesh connected bodies (step S110). S111). Further, the high-frequency change area identifying unit 154 identifies an area where a plurality of mesh connected bodies are combined as a high-frequency change area. At this time, a minimum rectangle including a plurality of mesh connected bodies may be used as the high frequency change region.
  • the high-frequency change area identification unit 154 determines whether the area of the high-frequency change area is smaller than a predetermined area threshold (step S112).
  • the high-frequency change area identifying unit 154 displays the mesh connected body as a high-frequency change area. Further, it is determined whether or not the area of the frequently changed region is smaller than the area threshold (step S112).
  • the frequent change region identifying unit 154 identifies each mesh connected body as a frequent change region, and further determines whether the area of the frequent change region is smaller than the area threshold (step). S112).
  • the image transmitting unit 156 transmits the attribute information of the frequently changed region to the client terminal 20 ( Step S113).
  • the compression method determination unit 157 performs “compression method determination processing” (step S118). However, when the high-frequency change region combines a plurality of mesh connected bodies to generate the high-frequency change region, the compression method determination unit 157 determines each mesh connected body (high frequency change region candidate) before combining. Is re-identified as a frequently changed region. Details of the “compression method determination process” will be described later.
  • the high-frequency change area identifying unit 154 clears the number of changes for each mesh of the change frequency determination map accumulated in the work memory (step S114).
  • the high-frequency change area identifying unit 154 includes the update rectangle generated by the image generation unit 152 in the high-frequency change area stored in the work memory, that is, the area transmitted as a moving image by the image transmission unit 156. Is determined (step S115).
  • the encoder 155 compresses the image data of the update rectangle using the still image compression method (step S116).
  • the image transmission unit 156 transmits the updated rectangular image data and attribute information compressed by the still image compression method to the client terminal 20 (step S117).
  • step S115 when it is determined that the update rectangle is included in the high frequency change area (Yes in step S115), the encoder 155 selects the image data of the high frequency change area, that is, among the image data drawn in the frame buffer 14, The image data in the region included in the high-frequency change region is compressed by the moving image compression method (step S119).
  • the image transmission unit 156 transmits the image data of the frequently changed region compressed by the moving image compression method to the client terminal 20 (step S120). Note that the attribute information of the frequently changed region is transmitted to the client terminal 20 in advance.
  • FIG. 11 is a flowchart of compression method determination processing by the server device 10 according to the embodiment.
  • the response time estimation unit 1573 is configured to perform the frequent change of the processing target from the frequently changed region identified by the frequently changed region identifying unit 154 based on the processing order determined by the processing order determining unit 1572.
  • a region is selected (step S201).
  • the response time estimation unit 1573 determines whether the area (number of pixels) of the frequently changed region to be processed is smaller than a predetermined area threshold (number of pixels) (step S202). .
  • the response time estimation unit 1573 selects the high-frequency change area to be processed as a moving image area.
  • the estimated response time when compressed by the compression method is calculated (step S203).
  • the estimated response time here is the sum of the compression time of the image data in the high-frequency change area to be processed and the transfer time of the compressed image data from the server device 10 to the client terminal 20.
  • the response time estimation unit 1573 determines the processing target high frequency change region based on the area of the processing target high frequency change region and the moving image compression time table Tb stored in the processing time storage unit 1575.
  • a processing time for compression by the compression method for moving images, that is, a moving image compression time is acquired.
  • the response time estimation unit 1573 40 [msec] is acquired as the moving image compression time of the image data in the high-frequency change area.
  • the response time estimation unit 1573 calculates the data transfer time when the data amount of the image data compressed by the moving image compression method is transferred at the data transfer rate acquired from the transfer rate acquisition unit 1571.
  • the response time estimation unit 1573 adds the moving image compression time and the data transfer time to calculate the estimated response time of the frequently changed region to be processed.
  • the compression method selection unit 1574 adds the newly calculated estimated response time to the estimated response time accumulated value stored in the work memory, and updates the estimated response time accumulated value (step S204). ).
  • the processing order of the high-frequency change area to be processed is No. 1, since the integrated value of the estimated response time is not stored in the work memory, the newly calculated estimated response time is used as the estimated response time. It is updated as the integrated value.
  • the compression method selection unit 1574 determines whether or not the integrated value of the estimated response time is smaller than a predetermined time threshold value (step S205).
  • the time threshold here is set to the minimum time during which the user of the client terminal 20 recognizes the response delay to the operation instruction, which is 150 [msec] in this embodiment.
  • the compression method selection unit 1574 determines that the frequent change is identified by the frequent change region identifying unit 154. It is determined whether or not there is a high-frequency change area that has not been selected as a processing target so far, that is, an unselected high-frequency change area (step S206).
  • the response time estimation unit 1573 again determines the unselected high-frequency change identified by the high-frequency change area identification unit 154.
  • a high-frequency change area to be processed is selected from the area (step S201).
  • the compression method selecting unit 1574 is a compression method for all the frequently changed regions identified by the frequently changed region identifying unit 154. Then, a compression method for moving images is selected (step S207).
  • the encoder 155 compresses the image data of all the frequently changed areas identified by the frequently changed area identifying unit 154 by the compression method selected by the compression method selecting unit 1574, that is, the moving image compression method. (Step S208).
  • the image transmission unit 156 transmits the image data of the frequently changed region compressed by the encoder 155 to the client terminal 20 (step S209). At this time, the image transmission unit 156 also transmits attribute information of each frequently changed region to the client terminal 20.
  • the response time estimation is performed.
  • the unit 1573 calculates an estimated response time when the image data of the high-frequency change area to be processed and the image data of the unselected high-frequency change area are compressed by the still image compression method (step S210). .
  • the response time estimation unit 1573 includes the area (number of pixels) of the high-frequency change region to be processed and the unselected high-frequency change region, and the still image compression time table Ta stored in the processing time storage unit 1575.
  • the response time estimation unit 1573 10 [msec] is acquired as the still image compression time of the image data in the frequently changed area. Note that the response time estimation unit 1573 similarly acquires the still image compression time of the image data of the unselected high frequency change area.
  • the response time estimation unit 1573 calculates the data transfer time when the data amount of the image data compressed by the still image compression method is transferred at the data transfer rate acquired from the transfer rate acquisition unit 1571.
  • the response time estimation unit 1573 generates a still image compression time for the image data in the high-frequency change area to be processed, a still image compression time for the image data in the unselected high-frequency change area, and a high-frequency change in the process target.
  • the estimated response time is calculated by adding the data transfer time of the image data compressed by the still image compression method in the region and the unselected high-frequency change region.
  • the compression method selection unit 1574 adds the newly calculated estimated response time to the accumulated value of the estimated response time stored in the work memory, and updates the accumulated value of the estimated response time (step S211). ).
  • the compression method selection unit 1574 determines whether or not the integrated value of the estimated response time is smaller than a predetermined time threshold value (step S212).
  • the compression method selection unit 1574 when it is determined that the integrated value of the estimated response time is smaller than the time threshold value (Yes in step S212), the compression method selection unit 1574, except for the high-frequency change region to be processed, As the compression method for the image data in the frequency change area, a compression method for moving images is selected, and the compression method for the image data in the high-frequency change area to be processed and the image data in the unselected high-frequency change area is static. A compression method for the image is selected (step S213).
  • the encoder 155 compresses all the high-frequency change areas identified by the high-frequency change area identification unit 154 by the compression method (for still image / moving image) selected by the compression method selection unit 1574 ( Step S208).
  • the image transmission unit 156 transmits the image data of the frequently changed area compressed by the still image / moving image compression method to the client terminal 20 (step S209).
  • FIG. 12 is a schematic diagram illustrating a specific example of compression method determination processing by the server device 10 according to the embodiment.
  • the compression method determination unit 157 starts the compression method determination process.
  • the moving image compression time Trd for compressing the image data of the high-frequency change region R by the compression method for moving images increases, and the estimated response time The time threshold is expected to be exceeded. For this reason, a compression method determination process is performed to shorten the response time in advance.
  • mesh connected bodies M1 and M2 (candidates for high-frequency change areas) included in the high-frequency change area R are re-identified as high-frequency change areas R1 and R2, and the high-frequency change area R1 , R2 are calculated by the moving image compression times T1d and T2d for compressing them by the moving image compression method.
  • the target area to be compressed by the compression method for moving images is changed (reduced) from the high-frequency change area R to the high-frequency connectors R1 and R2.
  • the total value of the moving image compression times T1d and T2d is shorter than the moving image compression time Trd for compressing the image data in the high-frequency change region R by the compression method for moving images.
  • the compression method determination unit 157 calculates a still image compression time T2s for compressing the image data in the high-frequency change area R2 by the still image compression method. Since the compression method of the high-frequency change area R2 is changed from the compression method for moving images to the compression method for still images, the calculation amount of the compression process is reduced. Therefore, the still image compression time T2s is longer than the moving image compression time T2d. Significantly shortened.
  • the total value of the moving image compression time T1d and the still image compression time T2s is further reduced, and the transfer time Tds is added to the moving image compression time T1d and the still image compression time T2s.
  • the estimated response time does not exceed the time threshold.
  • the compression method for still images has a low compression rate
  • the amount of image data after compression is larger than the compression method for moving images. For this reason, if a still image compression method is used, the transfer time of image data increases.
  • the estimated response time can be shortened because the decrease in the compression time is greater than the increase in the transfer time.
  • the compression method determination unit 157 selects the moving image compression method as the compression method for the image data in the high-frequency change region R1, and also selects the still image compression method as the compression method for the image data in the high-frequency change region R2. select.
  • the high-frequency change areas are compressed as still images, but the high-frequency change areas that are compressed by the still image compression method in a range in which the estimated response time does not exceed the time threshold. Keep to a minimum. For this reason, an increase in the amount of data transferred from the server device 10 to the client terminal 20 can be suppressed.
  • FIG. 13 is a flowchart of image display processing by the client terminal 20 according to the embodiment.
  • the operation information receiving unit 21 receives operation information input by, for example, a mouse or a keyboard (step S301).
  • the operation information notifying unit 231 transmits the operation information received by the operation information receiving unit 21 to the server device 10 (step S302).
  • the image receiving unit 232 determines whether data has been received from the server device 10 (step S303).
  • step S303 when it is determined that data has been received from the server device 10 (Yes in step S303), it is determined whether the data from the server device 10 is moving image data (step S304).
  • the decoder 233 restores the moving image data from the server device 10 by a moving image compression method (step S305). .
  • step S304 when it is not determined that the data from the server device 10 is moving image data (No in step S304), that is, when it is determined that the data from the server device 10 is still image data, the decoder 233 Still image data is restored by a still image compression method (step S306).
  • the display control unit 234 controls the display unit 22 based on the attribute information transmitted from the server device 10, and the image data (still image data / moving image data) restored by the decoder 233 is transmitted to the client terminal 20. Are displayed on the display 204 (step S307).
  • the transfer rate calculation unit 235 determines the difference between the transmission time of the packet of the image data (still image data / moving image data) received by the image reception unit 232 and the reception time when the client terminal 20 receives the packet. Then, based on the data amount of the image data, a data transfer amount per unit time, that is, a data transfer rate is calculated (step S308).
  • the transfer rate calculation unit 235 notifies the server device 10 of the data transfer rate (step S309).
  • the operation information reception unit 21 waits until operation information from, for example, a mouse or a keyboard is received (step S310). Even when it is not determined that data has been received from the server device 10 (No in step S303), the operation information receiving unit 21 waits until operation information is received (step S310).
  • the calculation and notification of the data transfer speed are performed after the display of the image data, but the present invention is not limited to this.
  • the calculation and notification of the data transfer rate may be performed at an arbitrary timing as long as the image data is received from the server device 10.
  • either the still image compression method or the moving image compression method is selected as the compression method for the frequently changed region based on the estimated response time calculated in advance. Specifically, when the estimated response time exceeds the time threshold value, the compression method for still images is selected as the compression method for the high-frequency change area, not the compression method for moving images. Since the still image compression method requires less calculation amount than the moving image compression method, the processing time of the server device 10 is shortened. For this reason, since the response time from when the operation instruction of the client terminal 20 is received until the execution result of the server device 10 is displayed on the client terminal 20 is shortened, the operation response of the client terminal 20 can be improved.
  • the still image compression method is used only when the estimated response time exceeds the time threshold, not the still image compression method. Is used. For this reason, when the estimated response time does not exceed the time threshold, that is, when the operation response is good, the moving image compression method is used. Therefore, the amount of data transferred from the server device 10 to the client terminal 20 does not increase due to the selection of the still image compression method.
  • the transfer rate calculation unit 235 of the client terminal 20 calculates the data transfer rate based on the packet transmission time and reception time and the data amount of the packet image data.
  • the present embodiment is not limited to this. For example, if the data transfer rate is managed by the OS 1100, the client terminal 20 may directly acquire the data transfer rate. *
  • the still image compression method and the moving image compression method are exemplified, but the present invention is not limited to this. Any compression method may be used as long as the compression rate is different.
  • the amount of image data is reduced by compressing the image data.
  • processing other than compression processing may be used.
  • the response time is defined as the time required from the start of compression of the image data in the frequently changed area to the acquisition of the image data by the client terminal 20.
  • the response time is particularly limited as long as it constitutes a part of the time from the operation instruction from the client terminal 20 until the execution result of the application program by the server device 10 is displayed on the client terminal 20. It is not a thing.
  • the time from the operation instruction of the client terminal 20 until the client terminal 20 receives the execution result of the application program by the server device 10 may be set as the response time.
  • the response time may be the compression time of the image data in the high-frequency change area. These response times are also examples of response time.
  • Server device information processing device
  • Client terminal terminal device
  • Terminal device Terminal device
  • Image transmission unit transmission unit
  • transmission unit transmission unit
  • Compression method determination unit determination unit

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

In order to improve a client operation response in, for example, a thin-client system, an information processing device for displaying an execution result based on an operation instruction from a terminal device on the terminal device is equipped with: a determination unit for determining a processing method pertaining to the data quantity of the image data of the execution result, on the basis of an indicator pertaining to response time to the operation instruction from the terminal device; and a transmission unit for transmitting image data processed using the determined processing method to the terminal device.

Description

情報処理装置、制御方法、制御プログラムInformation processing apparatus, control method, and control program
 本発明は、情報処理装置、制御方法、制御プログラムに関する。 The present invention relates to an information processing apparatus, a control method, and a control program.
 シンクライアントシステムは、例えばクライアントからの操作情報に基づき、サーバにアプリケーションを実行させ、該アプリケーションの実行結果をクライアントに表示させるシステムである。 The thin client system is a system for causing a server to execute an application based on operation information from the client, for example, and displaying the execution result of the application on the client.
 このように、シンクライアントシステムは、サーバにアプリケーションを実行させるので、クライアントには、最低限の機能、例えば通信機能や入力機能だけを持たせれば良い。 As described above, since the thin client system causes the server to execute the application, the client may have only a minimum function, for example, a communication function and an input function.
 このため、シンクライアントシステムは、例えばCAD(Computer-Aided Design)のように精細な画像を処理するアプリケーション、さらにはシミュレーションなどの動画を処理するアプリケーション、などを利用するエンジニアリング分野に普及しはじめている。 For this reason, thin client systems are beginning to spread in the engineering field using applications that process fine images, such as CAD (Computer-Aided Design), and applications that process moving images such as simulations.
 ところが、例えばサーバが動画などの大容量のデータを処理する場合、クライアントの操作指示に起因するアプリケーションの実行結果が実際にクライアントに表示されるまでの応答時間に影響が生じることがある。 However, for example, when the server processes a large amount of data such as a moving image, the response time until the execution result of the application resulting from the operation instruction of the client is actually displayed on the client may be affected.
 このような問題は、シンクライアントシステムのクライアント及びサーバ間での画面更新に大容量のデータ送信が発生する場合に共通するものである。サーバが動画を処理する場合に限定して生じる問題ではない。 Such a problem is common when large-capacity data transmission occurs in screen update between the client and server of the thin client system. This is not a problem that arises only when the server processes video.
 このことから、クライアントの操作応答を改善する技術として、画像データの変更頻度がしきい値を超える領域、即ち高頻度変更領域については、動画用の圧縮方式により画像データを圧縮して、クライアントに送信する技術が提案されている。 For this reason, as a technique for improving the operation response of the client, in the area where the change frequency of the image data exceeds the threshold value, that is, in the high-frequency change area, the image data is compressed by the moving image compression method, Transmission techniques have been proposed.
特開2011-238014号公報JP 2011-238014 A
 しかしながら、動画用の圧縮方式は、例えば動きベクトル、フレーム間予測、動き補償など、動画特有の圧縮技術を使用する為、静止画用の圧縮方式に比べて、膨大な計算量が必要となる。このため、クライアントの操作指示がクライアントの表示画面に反映されるまでの応答時間を充分に短縮することができていない。 However, since the compression method for moving images uses a compression technique peculiar to moving images such as motion vectors, inter-frame prediction, and motion compensation, a huge amount of calculation is required as compared with the compression method for still images. For this reason, the response time until the operation instruction of the client is reflected on the display screen of the client cannot be sufficiently shortened.
 開示の技術は、クライアントの操作応答を向上させる情報処理装置、画像送信プログラム、画像表示プログラム及び画像表示方法を提供する。 The disclosed technology provides an information processing apparatus, an image transmission program, an image display program, and an image display method that improve an operation response of a client.
 本願の開示によれば、端末装置からの操作指示に基づいた実行結果を前記端末装置に表示させる情報処理装置に於いて、前記端末装置からの操作指示への応答時間に関する指標に基づき、前記実行結果の画像データのデータ量に関する処理方式を決定する決定部と、前記決定された処理方式により処理された画像データを前記端末装置に送信する送信部と、を備える情報処理装置が提供される。  According to the disclosure of the present application, in the information processing apparatus that causes the terminal device to display an execution result based on the operation instruction from the terminal device, the execution is performed based on an index related to a response time to the operation instruction from the terminal device. An information processing apparatus is provided that includes a determination unit that determines a processing method related to the data amount of the resulting image data, and a transmission unit that transmits image data processed by the determined processing method to the terminal device. *
 本発明によれば、クライアントの操作応答を向上させることができる。 According to the present invention, the operational response of the client can be improved.
図1は、一実施形態にかかるサーバ装置のハードウェア構成の概略図である。FIG. 1 is a schematic diagram of a hardware configuration of a server device according to an embodiment. 図2は、一実施形態にかかるクライアント端末のハードウェア構成の概略図である。FIG. 2 is a schematic diagram of a hardware configuration of the client terminal according to the embodiment. 図3は、一実施形態にかかるシンクライアントシステムの機能ブロックの概略図である。FIG. 3 is a schematic diagram of functional blocks of the thin client system according to the embodiment. 図4は、一実施形態にかかる画像データの分割例を説明する概略図である。FIG. 4 is a schematic diagram illustrating an example of division of image data according to an embodiment. 図5は、一実施形態にかかる画像データの変更頻度の判別手順を説明する概略図である。FIG. 5 is a schematic diagram illustrating a procedure for determining the change frequency of image data according to an embodiment. 図6は、一実施形態にかかるメッシュ連結体の補正手順を説明する概略図である。FIG. 6 is a schematic diagram illustrating a correction procedure for a mesh assembly according to an embodiment. 図7は、一実施形態にかかる高頻度変更領域の候補の合成手順を説明する概略図である。FIG. 7 is a schematic diagram illustrating a procedure for synthesizing a candidate for a frequently changed region according to an embodiment. 図8は、一実施形態にかかる高頻度変更領域の属性情報の通知手順を説明する概略図である。FIG. 8 is a schematic diagram illustrating a notification procedure of attribute information of a frequently changed region according to an embodiment. 図9は、一実施形態にかかる静止画圧縮時間テーブル及び動画圧縮テーブルの概略図である。FIG. 9 is a schematic diagram of a still image compression time table and a moving image compression table according to an embodiment. 図10は、一実施形態にかかるサーバ装置による画像送信処理のフローチャートである。FIG. 10 is a flowchart of image transmission processing by the server device according to the embodiment. 図11は、一実施形態にかかるサーバ装置による圧縮方式決定処理のフローチャートである。FIG. 11 is a flowchart of compression method determination processing by the server device according to the embodiment. 図12は、一実施形態にかかるサーバ装置による圧縮方式決定処理の具体例を説明する模式図である。FIG. 12 is a schematic diagram illustrating a specific example of compression method determination processing by the server device according to the embodiment. 図13は、一実施形態にかかるクライアント端末による画像表示処理のフローチャートである。FIG. 13 is a flowchart of image display processing by the client terminal according to the embodiment.
 以下、図面を参照しながら、一実施形態を説明する。 Hereinafter, an embodiment will be described with reference to the drawings.
 (サーバ装置10のハードウェア構成)
 図1は、一実施形態にかかるサーバ装置10のハードウェア構成の概略図である。
(Hardware configuration of server device 10)
FIG. 1 is a schematic diagram of a hardware configuration of a server device 10 according to an embodiment.
  図1に示すように、本実施形態にかかるサーバ装置10は、CPU(Central Processing Unit)101、メインメモリ102、補助メモリ103、操作デバイス104、ディスプレイ105、通信モジュール106、をハードウェアモジュールとして備える。これらのハードウェアモジュールは、バス107により相互接続されている。 As shown in FIG. 1, the server apparatus 10 according to the present embodiment includes a CPU (Central Processing Unit) 101, a main memory 102, an auxiliary memory 103, an operation device 104, a display 105, and a communication module 106 as hardware modules. . These hardware modules are interconnected by a bus 107.
 CPU101は、サーバ装置10の各種ハードウェアモジュールを制御する。さらに、CPU101は、補助メモリ103に格納された各種プログラムをメインメモリ102に読み込むとともに、該メインメモリ102に読み込んだ各種プログラムを実行することで、各種機能を実行する。各種機能の詳細は、後述することとする。 CPU 101 controls various hardware modules of server device 10. Furthermore, the CPU 101 executes various functions by reading various programs stored in the auxiliary memory 103 into the main memory 102 and executing the various programs read into the main memory 102. Details of the various functions will be described later.
 メインメモリ102は、CPU101により実行される各種プログラムを格納する。さらに、メインメモリ102は、CPU101のワークエリアとして使用され、CPU101による処理に必要な各種データを記憶する。メインメモリ102としては、例えばRAM(Random Access Memory)などを用いても良い。 The main memory 102 stores various programs executed by the CPU 101. Further, the main memory 102 is used as a work area for the CPU 101 and stores various data necessary for processing by the CPU 101. For example, a RAM (Random Access Memory) may be used as the main memory 102.
 補助メモリ103は、サーバ装置10を動作させる各種プログラムを格納する。各種プログラムとしては、例えば、サーバ装置10により実行されるサーバ制御プログラム1000などのアプリケーションプログラムや、該アプリケーションプログラムの実行環境であるOS1100などがある。サーバ制御プログラム1000は、本実施形態にかかるサーバ側リモート画面制御部15を提供する。補助メモリ103としては、例えば、ハードディスクやフラッシュメモリ等の不揮発メモリを使用しても良い。 The auxiliary memory 103 stores various programs for operating the server device 10. Examples of the various programs include an application program such as a server control program 1000 executed by the server device 10 and an OS 1100 that is an execution environment of the application program. The server control program 1000 provides the server-side remote screen control unit 15 according to the present embodiment. As the auxiliary memory 103, for example, a non-volatile memory such as a hard disk or a flash memory may be used.
 通信モジュール106は、クライアント端末20からの操作情報を受信するとともに、アプリケーションプログラムの実行結果の画像データ及び属性情報をクライアント端末20に送信する。さらに、通信モジュール106は、クライアント端末20により算出された、サーバ装置10からクライアント端末20へのデータ転送速度を受信する。 The communication module 106 receives operation information from the client terminal 20 and transmits image data and attribute information as an execution result of the application program to the client terminal 20. Further, the communication module 106 receives the data transfer rate from the server device 10 to the client terminal 20 calculated by the client terminal 20.
 (クライアント端末20のハードウェア構成)
 図2は、一実施形態にかかるクライアント端末20のハードウェア構成の概略図である。
(Hardware configuration of client terminal 20)
FIG. 2 is a schematic diagram of a hardware configuration of the client terminal 20 according to the embodiment.
 図2に示すように、本実施形態にかかるクライアント端末20は、CPU201、メインメモリ202、補助メモリ203、ディスプレイ204、通信モジュール205、操作デバイス206、をハードウェアモジュールとして備える。これらのハードウェアモジュールは、バス207により相互接続されている。 As shown in FIG. 2, the client terminal 20 according to the present embodiment includes a CPU 201, a main memory 202, an auxiliary memory 203, a display 204, a communication module 205, and an operation device 206 as hardware modules. These hardware modules are interconnected by a bus 207.
 CPU201は、クライアント端末20の各種ハードウェアモジュールを制御する。さらに、CPU201は、補助メモリ203に格納された各種プログラムをメインメモリ202に読み込むとともに、該メインメモリ202に読み込んだ各種プログラムを実行することで、各種機能を実行する。各種機能の詳細は、後述することとする。 The CPU 201 controls various hardware modules of the client terminal 20. Furthermore, the CPU 201 executes various functions by reading various programs stored in the auxiliary memory 203 into the main memory 202 and executing the various programs read into the main memory 202. Details of the various functions will be described later.
 メインメモリ202は、CPU201により実行される各種プログラムを格納する。さらに、メインメモリ202は、CPU201のワークエリアとして使用され、CPU201による処理に必要な各種データを記憶する。メインメモリ202としては、例えばRAMなどを用いても良い。 The main memory 202 stores various programs executed by the CPU 201. Further, the main memory 202 is used as a work area for the CPU 201 and stores various data necessary for processing by the CPU 201. For example, a RAM or the like may be used as the main memory 202.
 補助メモリ203は、クライアント端末20を動作させる各種プログラムを格納する。各種プログラムとしては、例えば、クライアント端末20により実行されるクライアント制御プログラム2000などのアプリケーションプログラムや、該アプリケーションプログラムの実行環境であるOS2100などがある。クライアント制御プログラム2000は、クライアント側リモート画面制御部23を提供する。補助メモリ203としては、例えば、ハードディスクやフラッシュメモリ等の不揮発メモリを使用しても良い。 The auxiliary memory 203 stores various programs for operating the client terminal 20. Examples of the various programs include an application program such as a client control program 2000 executed by the client terminal 20 and an OS 2100 that is an execution environment of the application program. The client control program 2000 provides the client side remote screen control unit 23. As the auxiliary memory 203, for example, a nonvolatile memory such as a hard disk or a flash memory may be used.
 ディスプレイ204は、例えばCPU201によるアプリケーションプログラムの実行結果や、サーバ装置10によるアプリケーションプログラムの実行結果などの画像データを表示する。 The display 204 displays image data such as an execution result of the application program by the CPU 201 and an execution result of the application program by the server device 10, for example.
 通信モジュール205は、例えば操作デバイス206から受け付けた操作情報を、サーバ装置10に送信するとともに、サーバ装置10により生成された画像データ及び属性情報などを受信する。さらに、通信モジュール205は、サーバ装置10からクライアント端末20へのデータ転送速度を、サーバ装置10に送信する。 The communication module 205 transmits, for example, operation information received from the operation device 206 to the server device 10 and receives image data and attribute information generated by the server device 10. Further, the communication module 205 transmits the data transfer rate from the server device 10 to the client terminal 20 to the server device 10.
 操作デバイス206は、クライアント端末20のユーザからの操作指示を取得する。操作デバイス206としては、例えばキーボード、マウス、ポインティングデバイスなどを使用しても良い。 The operation device 206 acquires an operation instruction from the user of the client terminal 20. As the operation device 206, for example, a keyboard, a mouse, a pointing device, or the like may be used.
 (シンクライアントシステム30の概要)
 図3は、一実施形態にかかるシンクライアントシステム30の機能ブロックの概略図である。
(Outline of thin client system 30)
FIG. 3 is a schematic diagram of functional blocks of the thin client system 30 according to the embodiment.
 図3に示すように、本実施形態にかかるシンクライアントシステム30は、サーバ装置10及びクライアント端末20を備え、クライアント端末20が表示する画面をサーバ装置10に制御させるシステムである。即ち、シンクライアントシステム30は、クライアント端末20からの操作指示に基づき、サーバ装置10を動作させ、該サーバ装置10によるアプリケーションプログラムの実行結果や保持データなどをクライアント端末20に表示させる。 As shown in FIG. 3, the thin client system 30 according to the present embodiment includes a server device 10 and a client terminal 20, and controls the server device 10 to control a screen displayed by the client terminal 20. That is, the thin client system 30 operates the server device 10 based on an operation instruction from the client terminal 20 and causes the client terminal 20 to display an execution result of the application program by the server device 10 and retained data.
 なお、本実施形態では、1つのサーバ装置10に1つのクライアント端末20を接続しているが、サーバ装置10に接続されるクライアント端末20の個数は、特に限定されるものではない。 In the present embodiment, one client terminal 20 is connected to one server apparatus 10, but the number of client terminals 20 connected to the server apparatus 10 is not particularly limited.
 サーバ装置10及びクライアント端末20は、ネットワーク40を介して相互に通信可能に接続される。ネットワーク40は、有線または無線に限定されるものではなく、例えばインターネット、LAN(Local Area Network)、VPN(Virtual Private Network)など、任意の種類の通信網を使用しても良い。サーバ装置10及びクライアント端末20間の通信プロトコルは、特に限定されるものではないが、例えばVNC(Virtual Network Computing)のRFB(Remote Frame Buffer)プロトコルを使用しても良い。 The server device 10 and the client terminal 20 are connected via a network 40 so that they can communicate with each other. The network 40 is not limited to wired or wireless, and any type of communication network such as the Internet, LAN (Local Area Network), VPN (Virtual Private Network), or the like may be used. A communication protocol between the server device 10 and the client terminal 20 is not particularly limited, but for example, a VNC (Virtual Network Computing) RFB (Remote Frame Buffer) protocol may be used.
 サーバ装置10は、サーバ向けのリモート画面制御用のアプリケーションプログラム、即ちサーバ制御プログラム1000がインストールされ、クライアント端末20に表示させる画面をリモート制御するサービスを提供する。 The server apparatus 10 is installed with an application program for remote screen control for the server, that is, a server control program 1000, and provides a service for remotely controlling a screen to be displayed on the client terminal 20.
 サーバ制御プログラム1000は、基本機能として、リモート画面制御サービスを提供する。例えば、サーバ装置10がクライアント端末20から操作情報を取得した場合、サーバ装置10は、サーバ制御プログラム1000に基づき、操作情報により要求された処理を、サーバ装置10で動作するアプリケーションプログラムに実行させる。さらに、サーバ装置10は、サーバ制御プログラム1000に基づき、アプリケーションプログラムの実行結果を表示する画面の情報、即ち画像データを生成して、画像データをクライアント端末20に送信する。このとき、画像データの生成前にクライアント端末20に表示させていた画像データがあれば、サーバ装置10は、該画像データからの変更領域の画像データ、本実施形態では更新矩形の画像データ及び属性情報をクライアント端末20に送信する。 The server control program 1000 provides a remote screen control service as a basic function. For example, when the server apparatus 10 acquires operation information from the client terminal 20, the server apparatus 10 causes an application program operating on the server apparatus 10 to execute a process requested by the operation information based on the server control program 1000. Further, the server device 10 generates screen information for displaying the execution result of the application program, that is, image data based on the server control program 1000, and transmits the image data to the client terminal 20. At this time, if there is image data that has been displayed on the client terminal 20 before the generation of the image data, the server device 10 changes the image data of the change area from the image data, the image data and attributes of the update rectangle in the present embodiment. Information is transmitted to the client terminal 20.
 さらに、サーバ装置10は、サーバ制御プログラム1000に基づき、クライアント端末20に表示させる画像データのうち、変更頻度が頻度しきい値を超える領域の画像データ、即ち高頻度変更領域の画像データを、動画用の圧縮方式により圧縮して、クライアント端末20に送信する。例えば、サーバ装置10は、サーバ装置10によるアプリケーションプログラムの実行結果を表示する画像データを複数の領域に分割して、変更頻度が頻度しきい値を超えた領域、即ち高頻度変更領域の画像データ及び属性情報をクライアント端末20に送信する。圧縮方式としては、例えばMPEG-2(Moving Picture Experts Group - 2)やMPEG-4(Moving Picture Experts Group - 4)などのMPEG方式を使用しても良い。但し、本発明にかかる圧縮方式は、MPEG方式のデータ圧縮に限定されるものではなく、動画用の圧縮方式であれば、任意の圧縮符号化方式、例えばMotion-JPEG(Joint Photographic Experts Group)などを使用しても良い。 Furthermore, based on the server control program 1000, the server apparatus 10 converts image data in an area where the change frequency exceeds the frequency threshold among image data to be displayed on the client terminal 20, that is, image data in the high-frequency change area, And compressed to the client terminal 20. For example, the server device 10 divides the image data for displaying the execution result of the application program by the server device 10 into a plurality of regions, and the image data of the region where the change frequency exceeds the frequency threshold, that is, the high-frequency change region And attribute information is transmitted to the client terminal 20. As a compression method, for example, an MPEG method such as MPEG-2 (Moving Picture Experts Group IV-Exp2) or MPEG-4 (Moving Picture Experts Group IV- 4) may be used. However, the compression method according to the present invention is not limited to the data compression of the MPEG method, and any compression encoding method such as Motion-JPEG (Joint Photographic Experts Group) may be used as long as it is a compression method for moving images. May be used.
 クライアント端末20は、クライアント向けのリモート画面制御用のアプリケーションプログラム、即ちクラアント制御プログラム2000がインストールされ、サーバ装置10によるリモート画面制御サービスの提供を享受する。クライアント端末20としては、パーソナルコンピュータなどの固定端末や、携帯電話機、PHS(Personal Handyphone System)、PDA(Personal Digital Assistant)などの移動体端末を使用しても良い。 The client terminal 20 is installed with an application program for remote screen control for clients, that is, a client control program 2000, and enjoys the provision of a remote screen control service by the server device 10. As the client terminal 20, a fixed terminal such as a personal computer, or a mobile terminal such as a mobile phone, a PHS (Personal Handyphone System), or a PDA (Personal Digital Assistant) may be used.
 クライアント端末20は、クライアント制御プログラム2000に基づき、操作デバイス206により受け付けた操作情報をサーバ装置10に通知する。例えば、クライアント端末20は、マウスのクリック、ダブルクリック、ドラッグや、マウスカーソルの移動方向及び移動量、さらにはマウスホイールの回転量、キーボードの押下キーの種別など、を操作情報としてサーバ装置10に通知する。 The client terminal 20 notifies the server device 10 of the operation information received by the operation device 206 based on the client control program 2000. For example, the client terminal 20 sends the mouse click, double click, drag, mouse cursor movement direction and movement amount, mouse wheel rotation amount, keyboard pressing key type, and the like as operation information to the server device 10. Notice.
 さらに、クライアント端末20は、クライアント制御プログラム2000に基づき、サーバ装置10から送信された画像データをクライアント端末20のディスプレイ204に表示させる。例えば、サーバ装置10から更新矩形の画像データ及び属性情報を受信した場合、クライアント端末20は、更新矩形の画像データを、属性情報により指定される位置に、属性情報により指定されるサイズで表示する。さらに、サーバ装置10から高頻度変更領域の画像データ及び属性情報を受信した場合、クライアント端末20は、高頻度変更領域の画像データを、属性情報により指定される位置に、属性情報により指定されるサイズで表示する。 Further, the client terminal 20 displays the image data transmitted from the server device 10 on the display 204 of the client terminal 20 based on the client control program 2000. For example, when the update rectangle image data and attribute information are received from the server device 10, the client terminal 20 displays the update rectangle image data at the position specified by the attribute information in the size specified by the attribute information. . Further, when the image data and attribute information of the frequently changed area are received from the server device 10, the client terminal 20 designates the image data of the frequently changed area in the position designated by the attribute information by the attribute information. Display in size.
 (サーバ装置10の機能詳細)
 図3に示すように、本実施形態にかかるサーバ装置10は、OS実行制御部11、アプリ実行制御部12、グラフィックドライバ13、フレームバッファ14、サーバ側リモート画面制御部15、を備える。
(Detailed functions of server device 10)
As illustrated in FIG. 3, the server device 10 according to the present embodiment includes an OS execution control unit 11, an application execution control unit 12, a graphic driver 13, a frame buffer 14, and a server-side remote screen control unit 15.
 OS実行制御部11、アプリ実行制御部12、グラフィックドライバ13、フレームバッファ14は、何れもOS1100をメインメモリ102に読み込むとともに、該メインメモリ102に読み込んだOS1100を実行することで実現される。 The OS execution control unit 11, the application execution control unit 12, the graphic driver 13, and the frame buffer 14 are all realized by reading the OS 1100 into the main memory 102 and executing the OS 1100 read into the main memory 102.
 サーバ側リモート画面制御部15は、CPU101がサーバ制御プログラム1000をメインメモリ102に読み込むとともに、該メインメモリに読み込んだサーバ制御プログラム1000を実行することで実現される。 The server-side remote screen control unit 15 is realized by the CPU 101 reading the server control program 1000 into the main memory 102 and executing the server control program 1000 read into the main memory.
 [OS実行制御部11]
 OS実行制御部11は、OS1100実行を制御する。例えば、OS実行制御部11は、操作情報取得部151により取得された操作情報からアプリケーションプログラムの起動指示やアプリケーションプログラムへのコマンドを検出する。具体的には、アプリケーションプログラムの起動の要求操作が検出された場合、OS実行制御部11は、該アイコンに紐付けられたアプリケーションプログラムの起動をアプリ実行制御部12に指示する。アプリケーションプログラムへのコマンド実行の要求操作が検出された場合、OS実行制御部11は、該コマンド実行をアプリ実行制御部12に指示する。
[OS execution control unit 11]
The OS execution control unit 11 controls execution of the OS 1100. For example, the OS execution control unit 11 detects an application program activation instruction and a command to the application program from the operation information acquired by the operation information acquisition unit 151. Specifically, when a request operation for starting an application program is detected, the OS execution control unit 11 instructs the application execution control unit 12 to start the application program associated with the icon. When a request operation for command execution to the application program is detected, the OS execution control unit 11 instructs the application execution control unit 12 to execute the command.
 [アプリ実行制御部12]
 アプリ実行制御部12は、OS実行制御部11からの指示に基づき、アプリケーションプログラムの実行を制御する。OS実行制御部11からの指示としては、アプリケーションプログラムの起動指示もしくはアプリケーションプログラムのコマンドの実行指示である。さらに、アプリ実行制御部12は、アプリケーションプログラムによる実行結果の表示用イメージの、フレームバッファ14への描画を、グラフィックドライバ13に指示する。このとき、アプリ実行制御部12は、表示用イメージの描画位置もグラフィックドライバ13に指示する。
[Application execution control unit 12]
The application execution control unit 12 controls the execution of the application program based on an instruction from the OS execution control unit 11. The instruction from the OS execution control unit 11 is an application program activation instruction or an application program command execution instruction. Further, the application execution control unit 12 instructs the graphic driver 13 to draw the display image of the execution result by the application program in the frame buffer 14. At this time, the application execution control unit 12 also instructs the graphic driver 13 to draw the display image.
 [グラフィックドライバ13]
 グラフィックドライバ13は、アプリ実行制御部12からの指示に基づき、表示用イメージをフレームバッファ14に描画する。具体的には、アプリ実行制御部12から描画指示を受け付けた場合、グラフィックドライバ13は、アプリケーションプログラムによる実行結果の表示用イメージを、フレームバッファ14の、アプリケーションプログラムにより指定された描画位置にビットマップ形式で描画する。
[Graphic driver 13]
The graphic driver 13 draws a display image in the frame buffer 14 based on an instruction from the application execution control unit 12. Specifically, when a drawing instruction is received from the application execution control unit 12, the graphic driver 13 bitmaps the display image of the execution result by the application program to the drawing position specified by the application program in the frame buffer 14. Draw in format.
 [フレームバッファ14]
 フレームバッファ14は、グラフィックドライバ13により描画されたビットマップ形式の画像データを記憶する。フレームバッファ14としては、例えばVRAM(Video Random Access Memory)などのRAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリなどの半導体メモリ素子、もしくは、ハードディスクや光ディスクなどの記憶装置を使用しても良い。
[Frame buffer 14]
The frame buffer 14 stores bitmap-format image data drawn by the graphic driver 13. As the frame buffer 14, for example, a random access memory (RAM) such as a video random access memory (VRAM), a read only memory (ROM), a semiconductor memory element such as a flash memory, or a storage device such as a hard disk or an optical disk is used. May be.
 [サーバ側リモート画面制御部15]
 サーバ側リモート画面制御部15は、操作情報取得部151、画像生成部152、変更頻度判別部153、高頻度変更領域識別部154、エンコーダ155、画像送信部156、圧縮方式決定部157、を含む。
[Server-side remote screen control unit 15]
The server-side remote screen control unit 15 includes an operation information acquisition unit 151, an image generation unit 152, a change frequency determination unit 153, a high frequency change region identification unit 154, an encoder 155, an image transmission unit 156, and a compression method determination unit 157. .
 (操作情報取得部151)
 操作情報取得部151は、クライアント端末20からの操作情報を取得する。操作情報としては、例えば、マウスのクリック、ダブルクリック、ドラッグや、マウスカーソルの移動方向及び移動量、さらにはマウスホイールの回転量、キーボードの押下キーの種別などを使用しても良い。
(Operation Information Acquisition Unit 151)
The operation information acquisition unit 151 acquires operation information from the client terminal 20. As the operation information, for example, mouse click, double click, drag, mouse cursor movement direction and movement amount, mouse wheel rotation amount, keyboard pressing key type, and the like may be used.
 (画像生成部152)
 画像生成部152は、クライアント端末20のディスプレイ204に表示させる画像データを生成する。具体的には、フレームバッファ14にビットマップ形式の画像データが格納された場合、画像生成部152は、直前フレーム(前回フレーム)の画像データと、最新フレーム(今回フレーム)の画像データと、を比較する。なお、直前フレームの画像データは、直前にクライアント端末20に表示させていた画像データ、最新フレームの画像データは、新規にフレームバッファ14に格納された画像データである。さらに、画像生成部152は、直前フレームの画像データからの変更画素を包含する矩形の更新領域、即ち更新矩形を生成する。画像生成部152は、更新矩形の画像データをクライアント端末20に転送するために、更新矩形送信用のパケットを生成する。更新矩形送信用のパケットは、静止画用の圧縮方式により圧縮された更新矩形の画像データ、画像データの表示位置及び表示サイズを指定する属性情報、及びサーバ装置10によるパケット送信時刻、などを含む。
(Image generation unit 152)
The image generation unit 152 generates image data to be displayed on the display 204 of the client terminal 20. Specifically, when bitmap format image data is stored in the frame buffer 14, the image generation unit 152 obtains image data of the immediately previous frame (previous frame) and image data of the latest frame (current frame). Compare. The image data of the immediately previous frame is the image data that was displayed on the client terminal 20 immediately before, and the image data of the latest frame is the image data that is newly stored in the frame buffer 14. Furthermore, the image generation unit 152 generates a rectangular update region that includes a change pixel from the image data of the immediately preceding frame, that is, an update rectangle. The image generation unit 152 generates an update rectangle transmission packet in order to transfer the update rectangle image data to the client terminal 20. The update rectangle transmission packet includes the update rectangle image data compressed by the still image compression method, the attribute information specifying the display position and display size of the image data, the packet transmission time by the server device 10, and the like. .
 (変更頻度判別部153)
 変更頻度判別部153は、フレームバッファ14に描画された画像データを複数の領域に分割して、それぞれの領域ごとにフレーム間の変更頻度を判別する。例えば、変更頻度判別部153は、画像生成部152により生成された更新矩形の属性情報をワークメモリに所定期間にわたり蓄積する。属性情報としては、更新矩形の位置及びサイズを指定する情報、例えば更新矩形の左上の頂点の座標と、更新矩形の幅及び高さと、を使用しても良い。更新矩形の属性情報を蓄積する蓄積期間は、特に限定されるものではないが、例えば1秒間としても良い。更新矩形の画像データの蓄積開始から所定期間が経過した場合、変更頻度判別部153は、クライアント端末20に表示させる画像データをメッシュ状に分割した変更頻度判別用のマップを使用して、変更頻度を判別する。
(Change frequency determination unit 153)
The change frequency determination unit 153 divides the image data drawn in the frame buffer 14 into a plurality of regions, and determines the change frequency between frames for each region. For example, the change frequency determination unit 153 accumulates the update rectangle attribute information generated by the image generation unit 152 in the work memory for a predetermined period. As the attribute information, information specifying the position and size of the update rectangle, for example, the coordinates of the upper left vertex of the update rectangle, and the width and height of the update rectangle may be used. The accumulation period for accumulating the update rectangle attribute information is not particularly limited, but may be one second, for example. When a predetermined period has elapsed since the start of accumulation of the update rectangle image data, the change frequency determination unit 153 uses the change frequency determination map obtained by dividing the image data to be displayed on the client terminal 20 into a mesh shape, thereby changing the change frequency. Is determined.
 図4は、一実施形態にかかる画像データの分割例を説明する概略図である。 FIG. 4 is a schematic diagram illustrating an example of division of image data according to an embodiment.
 図4に示すように、変更頻度判別用のマップ50は、複数のメッシュ51に分割される。各メッシュ51は、複数の画素52を含む。本実施形態では、各メッシュ51は、8×8(64個)の画素52を含む。 As shown in FIG. 4, the change frequency determination map 50 is divided into a plurality of meshes 51. Each mesh 51 includes a plurality of pixels 52. In the present embodiment, each mesh 51 includes 8 × 8 (64 pixels) 52.
 ここで、変更頻度判別部153は、ワークメモリに蓄積された更新矩形の属性情報、即ち更新矩形の位置及びサイズに基づき、変更頻度判別用のマップ50に更新矩形を展開する。さらに、変更頻度判別部153は、変更頻度判別用のマップに更新矩形を展開するたびに、更新矩形が僅かでも重複するメッシュ51の変更回数を1つずつ加算する。 Here, the change frequency determination unit 153 develops the update rectangle on the change frequency determination map 50 based on the update rectangle attribute information stored in the work memory, that is, the position and size of the update rectangle. Furthermore, every time the update rectangle is developed on the change frequency determination map, the change frequency determination unit 153 adds the number of changes of the mesh 51 where the update rectangles overlap even a little.
 図5は、一実施形態にかかる画像データの変更頻度の判別手順を説明する概略図である。 FIG. 5 is a schematic diagram for explaining a procedure for determining the change frequency of image data according to an embodiment.
 図5(a)に示すように、変更頻度判別用のマップ50に更新矩形A1が展開された場合、更新矩形A1は、網掛部分のメッシュ51(9個)に重複する。このため、変更頻度判別部153は、網掛部分のメッシュ51の更新回数を1つずつ加算する。本実施形態では、各メッシュ51の変更回数の初期値を0とする為、更新矩形A1の展開の結果、網掛部分の変更回数は、各メッシュ51内に表記するように、「0」から「1」に変更される。 As shown in FIG. 5A, when the update rectangle A1 is developed in the change frequency determination map 50, the update rectangle A1 overlaps the mesh 51 (9 pieces) in the shaded portion. For this reason, the change frequency determination unit 153 adds the number of updates of the mesh 51 in the shaded portion one by one. In this embodiment, since the initial value of the number of changes of each mesh 51 is set to 0, as a result of the development of the update rectangle A1, the number of changes of the shaded portion is changed from “0” to “ 1 ".
 次に、図5(b)に示すように、変更頻度判別用のマップ50に更新矩形A2が展開された場合、更新矩形A2は、網掛部分のメッシュ51(6個)に重複する。このため、変更頻度判別部153は、網掛部分のメッシュ51の更新回数を1つずつ加算する。このとき、網掛部分のメッシュ51の変更回数は、何れも1である為、更新矩形A2の展開の結果、網掛部分の変更回数は、各メッシュ51内に表記するように、「1」から「2」に変更される。 Next, as shown in FIG. 5B, when the update rectangle A2 is developed in the change frequency determination map 50, the update rectangle A2 overlaps with the meshes 51 (six pieces) in the shaded portion. For this reason, the change frequency determination unit 153 adds the number of updates of the mesh 51 in the shaded portion one by one. At this time, since the number of changes of the mesh 51 in the shaded portion is 1, the number of changes in the shaded portion is changed from “1” to “1” as described in each mesh 51 as a result of the development of the update rectangle A2. 2 ”.
 このように、変更頻度判別用のマップ50に更新矩形A1、A2、…を展開するたびに、各メッシュ51の変更回数を更新する。ワークメモリに蓄積された全ての更新矩形が変更頻度判別用のマップ50に展開されたら、変更頻度判別部153は、所定期間あたりの変更回数、即ち変更頻度を算出して、変更頻度が頻度しきい値を超えるメッシュ51を取得する。例えば、頻度しきい値を「4」とした場合、図5(c)に示すように、網掛部分のメッシュ51が取得されることになる。頻度しきい値は、サーバ制御プログラム1000の開発者により設定される数値でも良いし、エンドユーザにより直接入力させる数値でも良い。 Thus, each time the update rectangles A1, A2,... Are developed in the change frequency determination map 50, the number of changes of each mesh 51 is updated. When all the update rectangles accumulated in the work memory are expanded in the change frequency determination map 50, the change frequency determination unit 153 calculates the number of changes per predetermined period, that is, the change frequency, and the change frequency is increased. A mesh 51 exceeding the threshold is acquired. For example, when the frequency threshold value is “4”, the mesh 51 of the shaded portion is acquired as shown in FIG. The frequency threshold value may be a numerical value set by the developer of the server control program 1000 or a numerical value directly input by the end user.
 (高頻度変更領域識別部154)
 高頻度変更領域識別部154は、クライアント端末20に表示させる画像データの、変更頻度がしきい値を超える領域から「高頻度変更領域」を識別する。具体的には、変更頻度判別部153により変更回数が頻度しきい値を超えるメッシュが取得された場合、高頻度変更領域識別部154は、変更頻度判別部153により取得された複数のメッシュのうち、相互に連続(隣接)するメッシュを連結して、所謂メッシュ連結体を生成する。このとき、メッシュ連結体に別途メッシュを追加して、該メッシュ連結体を包含する最小矩形に補正しても良い。本実施形態では、最小矩形に補正されたメッシュ連結体を使用する。
(High-frequency change area identification unit 154)
The high-frequency change area identifying unit 154 identifies “high-frequency change areas” from areas where the change frequency of the image data to be displayed on the client terminal 20 exceeds the threshold value. Specifically, when the change frequency determination unit 153 acquires a mesh whose number of changes exceeds the frequency threshold, the high frequency change region identification unit 154 includes a plurality of meshes acquired by the change frequency determination unit 153. Then, meshes connected to each other (adjacent) are connected to generate a so-called mesh connected body. At this time, a mesh may be added to the mesh connection body and corrected to the minimum rectangle including the mesh connection body. In this embodiment, a mesh connected body corrected to the minimum rectangle is used.
 図6は、一実施形態にかかるメッシュ連結体の補正手順を説明する概略図である。 FIG. 6 is a schematic diagram illustrating a correction procedure for a mesh assembly according to an embodiment.
 図6(a)に示すように、メッシュ連結体53に欠損領域54が存在する場合、図6(b)に示すように、欠損領域54を補間する為の補間メッシュ55をメッシュ連結体53に追加して、該メッシュ連結体53を包含する最小矩形に補正された新規メッシュ連結体56を生成する。新規メッシュ連結体56は、高頻度変更領域の候補となる。 As shown in FIG. 6A, when a missing region 54 exists in the mesh connected body 53, an interpolation mesh 55 for interpolating the lost region 54 is added to the mesh connected body 53 as shown in FIG. In addition, a new mesh connected body 56 corrected to a minimum rectangle including the mesh connected body 53 is generated. The new mesh connected body 56 becomes a candidate for the frequently changed region.
 さらに、高頻度変更領域識別部154は、複数の新規メッシュ連結体56、即ち複数の高頻度変更領域の候補を検出した場合、高頻度変更領域の候補の間隔(距離)dが、事前に決められた距離しきい値よりも小さいかどうかを判断する。高頻度変更領域の候補の間隔(距離)dが距離しきい値よりも小さい高頻度変更領域の候補が存在する場合、高頻度変更領域識別部154は、高頻度変更領域の候補を包含する最小矩形を生成する。 Further, when the high frequency change area identifying unit 154 detects a plurality of new mesh connected bodies 56, that is, a plurality of high frequency change area candidates, the interval (distance) d of the high frequency change area candidates is determined in advance. Determine if it is less than the given distance threshold. When there is a candidate for the frequently changed area whose interval (distance) d between the candidates for the frequently changed area is smaller than the distance threshold, the frequently changed area identifying unit 154 includes a minimum that includes the candidates for the frequently changed area. Generate a rectangle.
 図7は、一実施形態にかかる高頻度変更領域の候補の合成手順を説明する概略図である。 FIG. 7 is a schematic diagram illustrating a procedure for synthesizing a candidate for a frequently changed region according to an embodiment.
 図7(a)に示すように、高頻度変更領域の候補B1及びB2の間隔(距離)dが、事前に決められた距離しきい値よりも小さい場合、図7(b)に示すように、高頻度変更領域識別部154は、高頻度変更領域の候補B1及びB2に補完領域Cを追加して、高頻度変更領域の候補B1及びB2の双方を包含する最小矩形を生成する。高頻度変更領域識別部154は、高頻度変更領域の候補B1及びB2の双方を包含する最小矩形を、高頻度変更領域として識別する。 As shown in FIG. 7A, when the distance (distance) d between the candidates B1 and B2 of the frequently changed region is smaller than a predetermined distance threshold, as shown in FIG. The high-frequency change area identifying unit 154 adds the complement area C to the high-frequency change area candidates B1 and B2, and generates a minimum rectangle that includes both the high-frequency change area candidates B1 and B2. The high-frequency change area identifying unit 154 identifies the minimum rectangle that includes both the high-frequency change area candidates B1 and B2 as the high-frequency change area.
 但し、高頻度変更領域B1及びB2の間隔(距離)dが距離しきい値よりも大きい場合、高頻度変更領域識別部154は、高頻度変更領域の候補B1及びB2のそれぞれを、高頻度変更領域として識別する。 However, when the interval (distance) d between the frequently changed regions B1 and B2 is larger than the distance threshold, the frequently changed region identifying unit 154 changes each of the frequently changed region candidates B1 and B2 to the frequently changed region. Identify as a region.
 高頻度変更領域が識別された場合、高頻度変更領域識別部154は、高頻度変更領域の属性情報、即ち高頻度変更領域の位置及びサイズをクライアント端末20へ送信する。 When the frequently changed area is identified, the frequently changed area identifying unit 154 transmits the attribute information of the frequently changed area, that is, the position and size of the frequently changed area to the client terminal 20.
 図8は、一実施形態にかかる高頻度変更領域の属性情報の通知手順を説明する概略図であって、(a)は、クライアント端末20に表示させる表示用イメージ、(b)、(c)は、何れもフレームバッファ14に描画された画像データの変更頻度を判別する為の変更頻度判別用のマップを示している。 FIG. 8 is a schematic diagram for explaining a notification procedure of attribute information of a frequently changed region according to an embodiment. FIG. 8A is a display image to be displayed on the client terminal 20, and FIGS. These show a change frequency determination map for determining the change frequency of the image data drawn in the frame buffer 14.
 図8(a)に示すように、クライアント端末20に表示させる表示用イメージは、マウスカーソル61、ブラウザ画面62、動画再生画面63、を含む。 As shown in FIG. 8A, the display image displayed on the client terminal 20 includes a mouse cursor 61, a browser screen 62, and a moving image playback screen 63.
 ここでは、表示用イメージが経時的に変化して、図8(b)に示すように、マウスカーソル61の移動に起因する更新矩形64と、動画再生画面63の変化に起因する更新矩形65と、が取得されたものとする。但し、ブラウザ画面62は、静止画である為、ブラウザ画面62に起因する更新矩形は検出されないものとする。 Here, the display image changes with time, and as shown in FIG. 8B, an update rectangle 64 resulting from the movement of the mouse cursor 61 and an update rectangle 65 resulting from the change in the moving image playback screen 63 , Is acquired. However, since the browser screen 62 is a still image, an update rectangle resulting from the browser screen 62 is not detected.
 以上の状況から、さらに表示用イメージが継時的に変化して、高頻度変更領域66が取得されると、高頻度変更領域識別部154は、図8(c)に示すように、高頻度変更領域66の属性情報、即ち高頻度変更領域66の左上の頂点の座標(x,y)と、高頻度変更領域66の幅w及び高さhと、をクライアント端末20へ送信する。 From the above situation, when the display image changes over time and the frequently changed area 66 is acquired, the frequently changed area identifying unit 154, as shown in FIG. The attribute information of the change area 66, that is, the coordinates (x, y) of the upper left vertex of the high frequency change area 66 and the width w and height h of the high frequency change area 66 are transmitted to the client terminal 20.
 高頻度変更領域識別部154は、画像生成部152により更新矩形が生成されるたびに、更新矩形がワークメモリに記憶された高頻度変更領域、即ち動画再生領域に含まれるかどうかを判断する。更新矩形が高頻度変更領域に含まれていない場合、高頻度変更領域識別部154は、更新矩形の画像データ及び属性情報の送信を、画像送信部156に指示する。更新矩形が高頻度変更領域に含まれる場合、高頻度変更領域識別部154は、更新矩形の画像データ及び属性情報の送信を、画像送信部156に指示しない。更新矩形がOS実行制御部11により描画されたマウスカーソルの移動に起因する場合、マウスカーソルに起因する更新矩形の画像データ及び属性情報を、例外的に送信させても良い。 The high-frequency change area identifying unit 154 determines whether or not the update rectangle is included in the high-frequency change area stored in the work memory, that is, the moving image reproduction area, every time an update rectangle is generated by the image generation unit 152. When the update rectangle is not included in the high-frequency change area, the high-frequency change area identification unit 154 instructs the image transmission unit 156 to transmit the image data and attribute information of the update rectangle. When the update rectangle is included in the high-frequency change area, the high-frequency change area identification unit 154 does not instruct the image transmission unit 156 to transmit the image data and attribute information of the update rectangle. When the update rectangle is caused by the movement of the mouse cursor drawn by the OS execution control unit 11, the image data and attribute information of the update rectangle caused by the mouse cursor may be transmitted exceptionally.
 また、高頻度変更領域識別部154は、フレームバッファ14にビットマップ形式の画像データが描画されるたびに、ワークメモリに高頻度変更領域の属性情報が登録されているかどうかを判断する。高頻度変更領域の属性情報が登録されている場合、高頻度変更領域識別部154は、フレームバッファ14に描画された画像データのうち、高頻度変更領域の画像データを取得する。 Further, the frequently changed area identifying unit 154 determines whether or not the attribute information of the frequently changed area is registered in the work memory every time the bitmap format image data is drawn in the frame buffer 14. When the attribute information of the frequently changed area is registered, the frequently changed area identifying unit 154 acquires the image data of the frequently changed area among the image data drawn in the frame buffer 14.
 (エンコーダ155)
 エンコーダ155は、画像生成部152により生成された更新矩形の画像データもしくは高頻度変更領域識別部154により取得された高頻度変更領域の画像データを、それぞれ静止画用もしくは動画用の圧縮方式により圧縮(エンコード)する。例えば、高頻度変更領域の画像データを圧縮する場合、エンコーダ155は、高頻度変更領域の画像データがストリームを実施できるフレーム数に到達した段階で高頻度変更領域の画像データのエンコードを開始する。動画用の圧縮方式としては、例えばMPEG-2やMPEG-4などのMPEG方式や、Motion-JPEG方式を使用しても良い。さらに、エンコーダ155は、静止画用もしくは動画用の圧縮方式による圧縮履歴に基づき、静止画圧縮時間テーブルTaもしくは動画圧縮時間テーブルTbを更新しても良い。例えば、静止画用もしくは動画用の圧縮方式により更新矩形もしくは高頻度変更領域の画像データを圧縮するたびに、更新矩形もしくは高頻度変更領域のピクセル数と、圧縮時間と、の関係を記録して、複数の関係を取得したときに、静止画圧縮時間テーブルTaもしくは動画圧縮時間テーブルTbを更新する。
(Encoder 155)
The encoder 155 compresses the update rectangle image data generated by the image generation unit 152 or the image data of the high-frequency change area acquired by the high-frequency change area identification unit 154 using a compression method for still images or moving images, respectively. (Encode). For example, when compressing image data in the frequently changed area, the encoder 155 starts encoding the image data in the frequently changed area when the image data in the frequently changed area reaches the number of frames that can be streamed. As a compression method for moving images, for example, an MPEG method such as MPEG-2 or MPEG-4 or a Motion-JPEG method may be used. Further, the encoder 155 may update the still image compression time table Ta or the moving image compression time table Tb based on the compression history by the still image or moving image compression method. For example, each time image data in an update rectangle or frequently changed area is compressed by a still image or moving image compression method, the relationship between the number of pixels in the update rectangle or frequently changed area and the compression time is recorded. When a plurality of relationships are acquired, the still image compression time table Ta or the moving image compression time table Tb is updated.
 (画像送信部156)
 画像送信部156は、エンコーダ155により圧縮された更新矩形の画像データ及び属性情報をクライアント端末20に送信する。更新矩形の画像データを送信する際、通信プロトコルとして、例えばVNCにおけるRFBプロトコルを使用しても良い。さらに、画像送信部156は、エンコーダ155により圧縮された高頻度変更領域の画像データ及び属性情報をクライアント端末20へ送信する。高頻度変更領域の画像データを送信する際、通信プロトコルには、例えばRTP(Real-time Transport Protocol)を使用しても良い。
(Image transmission unit 156)
The image transmission unit 156 transmits the update rectangle image data and attribute information compressed by the encoder 155 to the client terminal 20. When transmitting update rectangle image data, for example, an RFB protocol in VNC may be used as a communication protocol. Further, the image transmission unit 156 transmits the image data and attribute information of the frequently changed region compressed by the encoder 155 to the client terminal 20. When transmitting the image data of the frequently changed area, for example, RTP (Real-time Transport Protocol) may be used as a communication protocol.
 (圧縮方式決定部157)
 圧縮方式決定部157は、転送速度取得部1571、処理順序決定部1572、応答時間推定部1573、圧縮方式選択部1574、処理時間格納部1575、を含む。
(Compression method determination unit 157)
The compression method determination unit 157 includes a transfer rate acquisition unit 1571, a processing order determination unit 1572, a response time estimation unit 1573, a compression method selection unit 1574, and a processing time storage unit 1575.
 転送速度取得部1571は、クライアント端末20により算出されたデータ転送速度を取得する。データ転送速度は、サーバ装置10からクライアント端末20に転送されるデータの単位時間あたりのデータ量である。 The transfer rate acquisition unit 1571 acquires the data transfer rate calculated by the client terminal 20. The data transfer rate is a data amount per unit time of data transferred from the server device 10 to the client terminal 20.
 処理順序決定部1572は、高頻度変更領域識別部154により識別された高頻度変更領域それぞれに、圧縮方式決定処理の処理順序を割り当てる。具体的には、処理順序決定部1572は、高頻度変更領域の面積(ピクセル数)が大きい方から順に処理順序を付与する。 The processing order determination unit 1572 assigns the processing order of the compression method determination process to each of the high frequency change areas identified by the high frequency change area identification unit 154. Specifically, the processing order determination unit 1572 assigns the processing order in descending order of the area (number of pixels) of the frequently changed region.
 応答時間推定部1573は、転送速度取得部1571により取得されたデータ転送速度と、処理時間格納部1575に格納された静止画圧縮時間テーブルTaもしくは動画圧縮テーブルTbと、に基づき、高頻度変更領域の画像データの圧縮開始からクライアント端末20による画像データの取得までの所要時間を算出する。本実施形態では、ここで算出される所要時間を応答時間とする。なお、応答時間は、応答時間に関する指標の一例である。 The response time estimation unit 1573 is based on the data transfer rate acquired by the transfer rate acquisition unit 1571 and the still image compression time table Ta or the moving image compression table Tb stored in the processing time storage unit 1575. The time required from the start of image data compression to the acquisition of image data by the client terminal 20 is calculated. In the present embodiment, the required time calculated here is the response time. The response time is an example of an index related to response time.
 通常、応答時間は、クライアント端末20が操作デバイス206からの操作指示を受け付けてから、操作指示に起因するアプリケーションプログラムの実行結果がクライアント端末20の表示画面に反映されるまでの時間である。しかし、クライアント端末20が受け付けた操作情報をサーバ装置10が取得するまでの時間は、画像データのサイズの影響を受けず、しかも画像データの圧縮時間などに比べて、かなり小さい為、本実施形態では、これを除いた時間を応答時間とする。 Usually, the response time is the time from when the client terminal 20 receives an operation instruction from the operation device 206 to when the execution result of the application program resulting from the operation instruction is reflected on the display screen of the client terminal 20. However, the time until the server device 10 acquires the operation information received by the client terminal 20 is not affected by the size of the image data, and is considerably smaller than the compression time of the image data. Then, the time excluding this is set as the response time.
 圧縮方式選択部1574は、応答時間推定部1573により算出された推定応答時間に基づき、高頻度変更領域ごとに、画像データの圧縮方式を、静止画用の圧縮方式もしくは動画用の圧縮方式から選択する。 Based on the estimated response time calculated by the response time estimation unit 1573, the compression method selection unit 1574 selects a compression method for image data from a compression method for still images or a compression method for moving images for each high-frequency change area. To do.
 図9は、一実施形態にかかる静止画圧縮テーブルTa及び動画圧縮時間テーブルTbの概略図である。 FIG. 9 is a schematic diagram of a still image compression table Ta and a moving image compression time table Tb according to an embodiment.
 図9(a)に示すように、静止画圧縮時間テーブルTaは、画像データを静止画用の圧縮方式により圧縮するときの、ピクセル数(面積)と処理時間との関係を記録する。図9(b)に示すように、動画圧縮時間テーブルTbは、画像データを動画用の圧縮方式により圧縮するときの、ピクセル数(面積)と処理時間との関係を記憶する。 As shown in FIG. 9A, the still image compression time table Ta records the relationship between the number of pixels (area) and the processing time when image data is compressed by a still image compression method. As shown in FIG. 9B, the moving image compression time table Tb stores the relationship between the number of pixels (area) and the processing time when image data is compressed by a moving image compression method.
 静止画圧縮時間テーブルTa及び動画圧縮時間テーブルTbを比較すると、動画用の圧縮方式による圧縮時間は、静止画用の圧縮方式による圧縮時間よりも大幅に大きいことがわかる。静止画圧縮時間テーブルTa及び動画圧縮時間テーブルTbは、エンコーダ155が画像データを圧縮するたびに更新される。 Comparing the still image compression time table Ta and the moving image compression time table Tb, it can be seen that the compression time by the compression method for moving images is significantly longer than the compression time by the compression method for still images. The still image compression time table Ta and the moving image compression time table Tb are updated every time the encoder 155 compresses the image data.
 (クライアント端末20の機能詳細)
 図3に示すように、本実施形態にかかるクライアント端末20は、操作情報受付部21、表示部22、クライアント側リモート画面制御部23、を備える。
(Detailed functions of client terminal 20)
As illustrated in FIG. 3, the client terminal 20 according to the present embodiment includes an operation information receiving unit 21, a display unit 22, and a client-side remote screen control unit 23.
 操作情報受付部21及び表示部22は、何れもCPU201がメインメモリ202にOS2100を読み込むとともに、該メモリ202に読み込んだOS2100を実行することで実現される。 Both the operation information reception unit 21 and the display unit 22 are realized by the CPU 201 reading the OS 2100 into the main memory 202 and executing the OS 2100 read into the memory 202.
 クライアント側リモート画面制御部23は、CPU201がメインメモリ202にクライアント制御プログラム2000を読み込むとともに、該メインメモリ202に読み込んだクライアント制御プログラム2000を実行することで実現される。 The client-side remote screen control unit 23 is realized by the CPU 201 reading the client control program 2000 into the main memory 202 and executing the client control program 2000 read into the main memory 202.
 操作情報受付部21は、操作デバイス206から取得した各種情報、例えばクライアント側リモート画面制御部23への指示入力を受け付ける。 The operation information reception unit 21 receives various information acquired from the operation device 206, for example, an instruction input to the client-side remote screen control unit 23.
 表示部22は、表示制御部234からの指示に基づき、サーバ装置10から送信された更新矩形もしくは高頻度変更領域の画像データをディスプレイ204に表示させる。このとき、表示部22は、属性情報に含まれる位置及びサイズに基づき、画像データの表示位置及び表示サイズを決定する。 The display unit 22 causes the display 204 to display the update rectangle or the image data of the frequently changed region transmitted from the server device 10 based on the instruction from the display control unit 234. At this time, the display unit 22 determines the display position and display size of the image data based on the position and size included in the attribute information.
 [クライアント側リモート画面制御部23]
 クライアント側リモート画面制御部23は、操作情報通知部231、画像受信部232、デコーダ233、表示制御部234、転送速度算出部235、を含む。
[Client-side remote screen controller 23]
The client-side remote screen control unit 23 includes an operation information notification unit 231, an image reception unit 232, a decoder 233, a display control unit 234, and a transfer rate calculation unit 235.
 操作情報通知部231は、操作情報受付部21が受け付けた操作情報をサーバ装置10に通知する。例えば、操作情報通知部231は、例えばマウスの左右クリック、ダブルクリック、ドラッグや、マウスカーソルの移動方向及び移動量、マウスホールの回転量、キーボードの押下キーの種別などを、操作情報としてサーバ装置10に通知する。 The operation information notifying unit 231 notifies the server device 10 of the operation information received by the operation information receiving unit 21. For example, the operation information notification unit 231 uses, for example, the left and right mouse clicks, double clicks, drags, the movement direction and movement amount of the mouse cursor, the rotation amount of the mouse hole, the type of the key pressed on the keyboard as the operation information as the server device. 10 is notified.
 画像受信部232は、サーバ装置10から送信された更新矩形もしくは高頻度変更領域の画像データ及び属性情報と、を受信する。属性情報は、更新矩形もしくは高頻度変更領域の位置及びサイズを含む。画像データ及び属性情報は、パケット化されている為、画像受信部232は、該パケットから画像データ及び属性情報を抽出する。 The image receiving unit 232 receives the update rectangle or the frequently changed area image data and attribute information transmitted from the server device 10. The attribute information includes the position and size of the update rectangle or the frequently changed area. Since the image data and the attribute information are packetized, the image receiving unit 232 extracts the image data and the attribute information from the packet.
 デコーダ233は、画像受信部232により受信された更新矩形もしくは高頻度変更領域の画像データを、指定された圧縮方式、即ち静止画用の圧縮方式もしくは動画用の圧縮方式により復元(デコード)する。なお、本実施形態にかかるデコーダ233は、画像データを、指定された圧縮方式により復元しているが、本発明は、これに限定されるものではない。例えば、圧縮方式ごとに専用のデコーダを用意しても良い。 The decoder 233 restores (decodes) the update rectangle or the frequently changed area image data received by the image receiving unit 232 by a designated compression method, that is, a still image compression method or a moving image compression method. Note that the decoder 233 according to the present embodiment restores image data using a designated compression method, but the present invention is not limited to this. For example, a dedicated decoder may be prepared for each compression method.
 表示制御部234は、画像受信部232により受信された属性情報に基づき、デコーダ233により復元された画像データの表示を表示部22に指示する。具体的には、表示制御部234は、属性情報により指定される位置に、属性情報により指定されるサイズの画像データを表示させる指示を、表示部22に通知する。 The display control unit 234 instructs the display unit 22 to display the image data restored by the decoder 233 based on the attribute information received by the image receiving unit 232. Specifically, the display control unit 234 notifies the display unit 22 of an instruction to display image data having a size specified by the attribute information at a position specified by the attribute information.
 転送速度算出部235は、画像受信部232により受信された画像データのパケットを解析して、サーバ装置10からクライアント端末20へのデータ転送速度を算出する。具体的には、転送速度算出部235は、画像データのパケットからサーバ装置10によるパケット送信時刻を取得して、クライアント端末20によるパケット受信時刻と、サーバ装置10によるパケット送信時刻と、の差分、即ちデータ転送時間を算出する。さらに、転送速度算出部235は、サーバ装置10から受信したパケットに基づき、画像データのデータ量を取得して、これをデータ転送時間で除算することで、単位時間あたりのデータ転送量、即ちデータ転送速度を算出する。 The transfer rate calculation unit 235 analyzes the packet of the image data received by the image reception unit 232 and calculates the data transfer rate from the server device 10 to the client terminal 20. Specifically, the transfer rate calculation unit 235 obtains the packet transmission time by the server device 10 from the image data packet, and the difference between the packet reception time by the client terminal 20 and the packet transmission time by the server device 10; That is, the data transfer time is calculated. Further, the transfer rate calculation unit 235 obtains the data amount of the image data based on the packet received from the server device 10 and divides this by the data transfer time, so that the data transfer amount per unit time, that is, the data Calculate the transfer rate.
 [サーバ装置10による画像送信処理]
 図10は、一実施形態にかかるサーバ装置10による画像送信処理のフローチャートである。
[Image Transmission Processing by Server Device 10]
FIG. 10 is a flowchart of image transmission processing by the server device 10 according to the embodiment.
 フレームバッファ14に画像データが描画されたら、図10に示すように、画像生成部152は、直前にクライアント端末20に表示させた画像データからの変更箇所を包含する更新矩形を生成する(ステップS101)。 When the image data is drawn in the frame buffer 14, as shown in FIG. 10, the image generation unit 152 generates an update rectangle that includes the changed portion from the image data displayed on the client terminal 20 immediately before (step S101). ).
 次に、画像生成部152は、更新矩形の画像データ、即ち更新矩形に包含される領域の画像データに基づき、更新矩形の画像データを送信する為のパケットを生成する(ステップS102)。 Next, the image generation unit 152 generates a packet for transmitting the update rectangle image data based on the update rectangle image data, that is, the image data of the region included in the update rectangle (step S102).
 次に、変更頻度判別部153は、画像生成部152により生成された更新矩形をワークメモリに蓄積する(ステップS103)。 Next, the change frequency determination unit 153 stores the update rectangle generated by the image generation unit 152 in the work memory (step S103).
 次に、変更頻度判別部153は、更新矩形の蓄積開始からの経過時間が、事前に決められた時間しきい値を超えたかどうかを判断する(ステップS104)。 Next, the change frequency determination unit 153 determines whether or not the elapsed time from the start of accumulation of the update rectangle has exceeded a predetermined time threshold (step S104).
 ここで、更新矩形の蓄積開始からの経過時間が時間しきい値を超えたと判断されない場合(ステップS104のNo)、高頻度変更領域識別部154は、画像生成部152により生成された更新矩形が、ワークメモリに記憶された高頻度変更領域に含まれるかどうかを判断する(ステップS115)。 Here, if it is not determined that the elapsed time from the start of accumulation of the update rectangle has exceeded the time threshold value (No in step S104), the frequent change area identification unit 154 determines that the update rectangle generated by the image generation unit 152 Then, it is determined whether or not it is included in the high frequency change area stored in the work memory (step S115).
 一方、更新矩形の蓄積開始からの経過時間が時間しきい値を超えたと判断された場合(ステップS104のYes)、変更頻度判別部153は、ワークメモリに蓄積された更新矩形それぞれの位置及びサイズに基づき、変更頻度判別用のマップに更新矩形を展開する(ステップS105)。 On the other hand, when it is determined that the elapsed time from the start of accumulation of the update rectangle has exceeded the time threshold value (Yes in step S104), the change frequency determination unit 153 determines the position and size of each update rectangle accumulated in the work memory. Based on the above, the update rectangle is developed on the change frequency determination map (step S105).
 次に、変更頻度判別部153は、変更頻度判別用のマップのメッシュのうち、変更頻度が、事前に決められた頻度しきい値を超えるメッシュ、即ち高頻度メッシュを取得する(ステップS106)。 Next, the change frequency determination unit 153 acquires a mesh whose change frequency exceeds a predetermined frequency threshold, that is, a high-frequency mesh among the meshes of the change frequency determination map (step S106).
 次に、高頻度変更領域識別部154は、変更頻度が頻度しきい値を超える高頻度メッシュが存在するかどうかを判断する(ステップS107)。 Next, the high-frequency change area identifying unit 154 determines whether there is a high-frequency mesh whose change frequency exceeds the frequency threshold (step S107).
 ここで、変更頻度が頻度しきい値を超える高頻度メッシュが存在すると判断されない場合(ステップS107のNo)、高頻度変更領域識別部154は、高頻度変更領域が存在しないと判断して、ワークメモリに蓄積された変更頻度判別用のマップのメッシュごとの変更回数をクリアする(ステップS114)。 Here, if it is not determined that there is a high-frequency mesh whose change frequency exceeds the frequency threshold (No in step S107), the high-frequency change area identifying unit 154 determines that there is no high-frequency change area, and The number of changes for each mesh of the map for change frequency determination stored in the memory is cleared (step S114).
 一方、変更頻度が頻度しきい値を超える高頻度メッシュが存在すると判断された場合(ステップS107のYes)、高頻度変更領域識別部154は、高頻度メッシュを連結して、メッシュ連結体を生成する(ステップS108)。このとき、メッシュ連結体を、該メッシュ連結体を包含する最小矩形に補正しても良い。本実施形態では、最小矩形に補正されたメッシュ連結体を使用する。なお、高頻度メッシュが1つしか存在しない場合、高頻度変更領域識別部154は、高頻度メッシュをメッシュ連結体とする。 On the other hand, if it is determined that there is a high-frequency mesh whose change frequency exceeds the frequency threshold value (Yes in step S107), the high-frequency change region identifying unit 154 connects the high-frequency mesh to generate a mesh connected body. (Step S108). At this time, the mesh connected body may be corrected to a minimum rectangle including the mesh connected body. In this embodiment, a mesh connected body corrected to the minimum rectangle is used. When only one high-frequency mesh exists, the high-frequency change area identifying unit 154 uses the high-frequency mesh as a mesh connected body.
 次に、高頻度変更領域識別部154は、変更頻度判別用のマップに複数のメッシュ連結体が存在するかどうかを判断する(ステップS109)。 Next, the high-frequency change area identification unit 154 determines whether or not there are a plurality of mesh connected bodies in the change frequency determination map (step S109).
 ここで、複数のメッシュ連結体が存在すると判断された場合(ステップS109のYes)、高頻度変更領域識別部154は、相互の距離が、事前に決められた距離しきい値よりも小さいメッシュ連結体が存在するかどうかを判断する(ステップS110)。 Here, when it is determined that there are a plurality of mesh connected bodies (Yes in step S109), the high-frequency change area identifying unit 154 determines that the mutual distance is smaller than a predetermined distance threshold value. It is determined whether a body exists (step S110).
 ここで、相互の距離が距離しきい値よりも小さいメッシュ連結体が存在すると判断された場合(ステップS110のYes)、高頻度変更領域識別部154は、これらのメッシュ連結体を合成する(ステップS111)。さらに、高頻度変更領域識別部154は、複数のメッシュ連結体が合成された領域を高頻度変更領域として識別する。このとき、複数のメッシュ連結体を包含する最小矩形を高頻度変更領域としても良い。 Here, when it is determined that there is a mesh connected body whose mutual distance is smaller than the distance threshold (Yes in step S110), the high-frequency change area identifying unit 154 combines these mesh connected bodies (step S110). S111). Further, the high-frequency change area identifying unit 154 identifies an area where a plurality of mesh connected bodies are combined as a high-frequency change area. At this time, a minimum rectangle including a plurality of mesh connected bodies may be used as the high frequency change region.
 次に、高頻度変更領域識別部154は、高頻度変更領域の面積が、事前に決められた面積しきい値よりも小さいかどうかを判断する(ステップS112)。 Next, the high-frequency change area identification unit 154 determines whether the area of the high-frequency change area is smaller than a predetermined area threshold (step S112).
 一方、複数のメッシュ連結体が存在すると判断されない場合(ステップS109のNo)、即ちメッシュ連結体が1つしか存在しない場合、高頻度変更領域識別部154は、該メッシュ連結体を高頻度変更領域として識別して、さらに、高頻度変更領域の面積が面積しきい値よりも小さいかどうかを判断する(ステップS112)。 On the other hand, when it is not determined that there are a plurality of mesh connected bodies (No in step S109), that is, when there is only one mesh connected body, the high-frequency change area identifying unit 154 displays the mesh connected body as a high-frequency change area. Further, it is determined whether or not the area of the frequently changed region is smaller than the area threshold (step S112).
 さらに、相互の距離が距離しきい値よりも小さいメッシュ連結体が存在すると判断されない場合(ステップS110のNo)、即ち、複数のメッシュ連結体が存在するものの、相互の距離が距離しきい値よりも大きい場合、高頻度変更領域識別部154は、メッシュ連結体それぞれを高頻度変更領域として識別して、さらに、高頻度変更領域の面積が面積しきい値よりも小さいかどうかを判断する(ステップS112)。 Furthermore, when it is not determined that there is a mesh connected body whose mutual distance is smaller than the distance threshold (No in step S110), that is, although there are a plurality of mesh connected bodies, the mutual distance is less than the distance threshold value. Is also larger, the frequent change region identifying unit 154 identifies each mesh connected body as a frequent change region, and further determines whether the area of the frequent change region is smaller than the area threshold (step). S112).
 ここで、高頻度変更領域の面積が面積しきい値よりも小さいと判断された場合(ステップS112のYes)、画像送信部156は、高頻度変更領域の属性情報をクライアント端末20に送信する(ステップS113)。 Here, when it is determined that the area of the frequently changed region is smaller than the area threshold value (Yes in step S112), the image transmitting unit 156 transmits the attribute information of the frequently changed region to the client terminal 20 ( Step S113).
 一方、高頻度変更領域の面積が面積しきい値よりも小さいと判断されない場合(ステップS112のNo)、即ち、高頻度変更領域の面積が面積しきい値と同様もしくはそれよりも大きいと判断された場合、圧縮方式決定部157は、「圧縮方式決定処理」を実施する(ステップS118)。但し、高頻度変更領域が複数のメッシュ連結体を合成して、高頻度変更領域を生成している場合、圧縮方式決定部157は、合成前のメッシュ連結体(高頻度変更領域の候補)それぞれを高頻度変更領域として再識別する。「圧縮方式決定処理」の詳細は、後述する。 On the other hand, if it is not determined that the area of the frequently changed region is smaller than the area threshold value (No in step S112), that is, it is determined that the area of the frequently changed region is the same as or larger than the area threshold value. If so, the compression method determination unit 157 performs “compression method determination processing” (step S118). However, when the high-frequency change region combines a plurality of mesh connected bodies to generate the high-frequency change region, the compression method determination unit 157 determines each mesh connected body (high frequency change region candidate) before combining. Is re-identified as a frequently changed region. Details of the “compression method determination process” will be described later.
 次に、高頻度変更領域識別部154は、ワークメモリに蓄積された変更頻度判別用のマップのメッシュ毎の変更回数をクリアする(ステップS114)。 Next, the high-frequency change area identifying unit 154 clears the number of changes for each mesh of the change frequency determination map accumulated in the work memory (step S114).
 次に、高頻度変更領域識別部154は、画像生成部152により生成された更新矩形が、ワークメモリに記憶された高頻度変更領域、即ち画像送信部156により動画として送信される領域に含まれるかどうかを判断する(ステップS115)。 Next, the high-frequency change area identifying unit 154 includes the update rectangle generated by the image generation unit 152 in the high-frequency change area stored in the work memory, that is, the area transmitted as a moving image by the image transmission unit 156. Is determined (step S115).
 ここで、更新矩形が高頻度変更領域に含まれると判断されない場合(ステップS115のNo)、エンコーダ155は、更新矩形の画像データを、静止画用の圧縮方式により圧縮する(ステップS116)。 Here, when it is not determined that the update rectangle is included in the high-frequency change area (No in step S115), the encoder 155 compresses the image data of the update rectangle using the still image compression method (step S116).
 次に、画像送信部156は、静止画用の圧縮方式により圧縮された更新矩形の画像データ及び属性情報をクライアント端末20に送信する(ステップS117)。 Next, the image transmission unit 156 transmits the updated rectangular image data and attribute information compressed by the still image compression method to the client terminal 20 (step S117).
 一方、更新矩形が高頻度変更領域に含まれると判断された場合(ステップS115のYes)、エンコーダ155は、高頻度変更領域の画像データを、即ちフレームバッファ14に描画された画像データのうち、高頻度変更領域に包含される領域の画像データを、動画用の圧縮方式により圧縮する(ステップS119)。 On the other hand, when it is determined that the update rectangle is included in the high frequency change area (Yes in step S115), the encoder 155 selects the image data of the high frequency change area, that is, among the image data drawn in the frame buffer 14, The image data in the region included in the high-frequency change region is compressed by the moving image compression method (step S119).
 次に、画像送信部156は、動画用の圧縮方式により圧縮された高頻度変更領域の画像データをクライアント端末20へ送信する(ステップS120)。なお、高頻度変更領域の属性情報は、事前にクライアント端末20に送信されている。 Next, the image transmission unit 156 transmits the image data of the frequently changed region compressed by the moving image compression method to the client terminal 20 (step S120). Note that the attribute information of the frequently changed region is transmitted to the client terminal 20 in advance.
 [サーバ装置10による圧縮方式決定処理]
 図11は、一実施形態にかかるサーバ装置10による圧縮方式決定処理のフローチャートである。
[Compression method determination processing by server device 10]
FIG. 11 is a flowchart of compression method determination processing by the server device 10 according to the embodiment.
 図11に示すように、応答時間推定部1573は、処理順序決定部1572により決定された処理順序に基づき、高頻度変更領域識別部154により識別された高頻度変更領域から処理対象の高頻度変更領域を選択する(ステップS201)。 As illustrated in FIG. 11, the response time estimation unit 1573 is configured to perform the frequent change of the processing target from the frequently changed region identified by the frequently changed region identifying unit 154 based on the processing order determined by the processing order determining unit 1572. A region is selected (step S201).
 次に、応答時間推定部1573は、処理対象の高頻度変更領域の面積(ピクセル数)が、事前に決められた面積しきい値(ピクセル数)よりも小さいかどうかを判断する(ステップS202)。 Next, the response time estimation unit 1573 determines whether the area (number of pixels) of the frequently changed region to be processed is smaller than a predetermined area threshold (number of pixels) (step S202). .
 ここで、処理対象の高頻度変更領域の面積が面積しきい値よりも小さいと判断された場合(ステップS202のYes)、応答時間推定部1573は、処理対象の高頻度変更領域を動画用の圧縮方式により圧縮したときの推定応答時間を算出する(ステップS203)。ここでの推定応答時間は、処理対象の高頻度変更領域の画像データの圧縮時間と、圧縮された画像データの、サーバ装置10からクライアント端末20への転送時間と、の合計である。 Here, when it is determined that the area of the high-frequency change area to be processed is smaller than the area threshold (Yes in step S202), the response time estimation unit 1573 selects the high-frequency change area to be processed as a moving image area. The estimated response time when compressed by the compression method is calculated (step S203). The estimated response time here is the sum of the compression time of the image data in the high-frequency change area to be processed and the transfer time of the compressed image data from the server device 10 to the client terminal 20.
 具体的には、応答時間推定部1573は、処理対象の高頻度変更領域の面積と、処理時間格納部1575に格納された動画圧縮時間テーブルTbと、に基づき、処理対象の高頻度変更領域を動画用の圧縮方式により圧縮する為の処理時間、即ち動画圧縮時間を取得する。 Specifically, the response time estimation unit 1573 determines the processing target high frequency change region based on the area of the processing target high frequency change region and the moving image compression time table Tb stored in the processing time storage unit 1575. A processing time for compression by the compression method for moving images, that is, a moving image compression time is acquired.
 例えば、図9(b)に示すように、動画圧縮時間テーブルTbによれば、処理対象の高頻度変更領域のピクセル数が155000[pixel]である場合、応答時間推定部1573は、処理対象の高頻度変更領域の画像データの動画圧縮時間として、40[msec]を取得する。 For example, as shown in FIG. 9B, according to the moving image compression time table Tb, when the number of pixels of the high-frequency change area to be processed is 155000 [pixel], the response time estimation unit 1573 40 [msec] is acquired as the moving image compression time of the image data in the high-frequency change area.
 さらに、応答時間推定部1573は、動画用の圧縮方式により圧縮された画像データのデータ量を、転送速度取得部1571から取得したデータ転送速度で転送したときのデータ転送時間を算出する。 Further, the response time estimation unit 1573 calculates the data transfer time when the data amount of the image data compressed by the moving image compression method is transferred at the data transfer rate acquired from the transfer rate acquisition unit 1571.
 続いて、応答時間推定部1573は、動画圧縮時間と、データ転送時間と、を加算して、処理対象の高頻度変更領域の推定応答時間を算出する。 Subsequently, the response time estimation unit 1573 adds the moving image compression time and the data transfer time to calculate the estimated response time of the frequently changed region to be processed.
 次に、圧縮方式選択部1574は、ワークメモリに保存されている推定応答時間の積算値に、新たに算出された推定応答時間を加算して、推定応答時間の積算値を更新する(ステップS204)。なお、処理対象の高頻度変更領域の処理順序が1番である場合、ワークメモリには、推定応答時間の積算値が保存されていないので、新たに算出された推定応答時間を、推定応答時間の積算値として更新する。 Next, the compression method selection unit 1574 adds the newly calculated estimated response time to the estimated response time accumulated value stored in the work memory, and updates the estimated response time accumulated value (step S204). ). When the processing order of the high-frequency change area to be processed is No. 1, since the integrated value of the estimated response time is not stored in the work memory, the newly calculated estimated response time is used as the estimated response time. It is updated as the integrated value.
 次に、圧縮方式選択部1574は、推定応答時間の積算値が、事前に決められた時間しきい値よりも小さいかどうかを判断する(ステップS205)。ここでの時間しきい値は、クライアント端末20のユーザが操作指示への応答遅延を認識してしまう最小時間、本実施形態では150[msec]に設定される。 Next, the compression method selection unit 1574 determines whether or not the integrated value of the estimated response time is smaller than a predetermined time threshold value (step S205). The time threshold here is set to the minimum time during which the user of the client terminal 20 recognizes the response delay to the operation instruction, which is 150 [msec] in this embodiment.
 ここで、推定応答時間の積算値が時間しきい値よりも小さいと判断された場合(ステップS205のYes)、圧縮方式選択部1574は、高頻度変更領域識別部154により識別された高頻度変更領域のうち、これまで処理対象に選択されていない高頻度変更領域、即ち未選択の高頻度変更領域が存在するかどうかを判断する(ステップS206)。 Here, when it is determined that the integrated value of the estimated response time is smaller than the time threshold value (Yes in step S205), the compression method selection unit 1574 determines that the frequent change is identified by the frequent change region identifying unit 154. It is determined whether or not there is a high-frequency change area that has not been selected as a processing target so far, that is, an unselected high-frequency change area (step S206).
 ここで、未選択の高頻度変更領域が存在すると判断された場合(ステップS206のYes)、応答時間推定部1573は、再度、高頻度変更領域識別部154により識別された未選択の高頻度変更領域から処理対象の高頻度変更領域を選択する(ステップS201)。 Here, when it is determined that there is an unselected high-frequency change area (Yes in step S206), the response time estimation unit 1573 again determines the unselected high-frequency change identified by the high-frequency change area identification unit 154. A high-frequency change area to be processed is selected from the area (step S201).
 一方、未選択の高頻度変更領域が存在すると判断されない場合(ステップS206のNo)、圧縮方式選択部1574は、高頻度変更領域識別部154により識別された全ての高頻度変更領域の圧縮方式として、動画用の圧縮方式を選択する(ステップS207)。 On the other hand, when it is not determined that there is an unselected frequently changed region (No in step S206), the compression method selecting unit 1574 is a compression method for all the frequently changed regions identified by the frequently changed region identifying unit 154. Then, a compression method for moving images is selected (step S207).
 次に、エンコーダ155は、高頻度変更領域識別部154により識別された全ての高頻度変更領域の画像データを、圧縮方式選択部1574により選択された圧縮方式、即ち動画用の圧縮方式により圧縮する(ステップS208)。 Next, the encoder 155 compresses the image data of all the frequently changed areas identified by the frequently changed area identifying unit 154 by the compression method selected by the compression method selecting unit 1574, that is, the moving image compression method. (Step S208).
 次に、画像送信部156は、エンコーダ155により圧縮された高頻度変更領域の画像データをクライアント端末20に送信する(ステップS209)。このとき、画像送信部156は、それぞれの高頻度変更領域の属性情報もクライアント端末20に送信する。 Next, the image transmission unit 156 transmits the image data of the frequently changed region compressed by the encoder 155 to the client terminal 20 (step S209). At this time, the image transmission unit 156 also transmits attribute information of each frequently changed region to the client terminal 20.
 一方、推定応答時間の積算値が時間しきい値よりも小さいと判断されない場合(ステップS205のNo)、即ち推定応答時間の積算値が時間しきい値と同等もしくはそれより大きい場合、応答時間推定部1573は、処理対象の高頻度変更領域の画像データと、未選択の高頻度変更領域の画像データと、を静止画用の圧縮方式により圧縮したときの推定応答時間を算出する(ステップS210)。 On the other hand, when it is not determined that the integrated value of the estimated response time is smaller than the time threshold value (No in step S205), that is, when the integrated value of the estimated response time is equal to or greater than the time threshold value, the response time estimation is performed. The unit 1573 calculates an estimated response time when the image data of the high-frequency change area to be processed and the image data of the unselected high-frequency change area are compressed by the still image compression method (step S210). .
 具体的には、応答時間推定部1573は、処理対象の高頻度変更領域及び未選択の高頻度変更領域の面積(ピクセル数)と、処理時間格納部1575に格納された静止画圧縮時間テーブルTaと、に基づき、処理対象の高頻度変更領域の画像データと、未選択の高頻度変更領域の画像データと、を静止画用の圧縮方式により圧縮する為の処理時間、即ち静止画圧縮時間を、それぞれ取得する。 Specifically, the response time estimation unit 1573 includes the area (number of pixels) of the high-frequency change region to be processed and the unselected high-frequency change region, and the still image compression time table Ta stored in the processing time storage unit 1575. The processing time for compressing the image data of the high-frequency change area to be processed and the image data of the non-selected high-frequency change area by the compression method for still images, that is, the still image compression time, , Get each.
 例えば、図9(a)に示すように、静止画圧縮時間テーブルTaによれば、処理対象の高頻度変更領域のピクセル数が155000[pixel]である場合、応答時間推定部1573は、処理対象の高頻度変更領域の画像データの静止画圧縮時間として、10[msec]を取得する。なお、応答時間推定部1573は、未選択の高頻度変更領域の画像データの静止画圧縮時間も同様に取得する。 For example, as shown in FIG. 9A, according to the still image compression time table Ta, when the number of pixels in the high-frequency change area to be processed is 155000 [pixel], the response time estimation unit 1573 10 [msec] is acquired as the still image compression time of the image data in the frequently changed area. Note that the response time estimation unit 1573 similarly acquires the still image compression time of the image data of the unselected high frequency change area.
 さらに、応答時間推定部1573は、静止画用の圧縮方式により圧縮された画像データのデータ量を、転送速度取得部1571から取得したデータ転送速度で転送したときのデータ転送時間を算出する。 Furthermore, the response time estimation unit 1573 calculates the data transfer time when the data amount of the image data compressed by the still image compression method is transferred at the data transfer rate acquired from the transfer rate acquisition unit 1571.
 続いて、応答時間推定部1573は、処理対象の高頻度変更領域の画像データの静止画圧縮時間と、未選択の高頻度変更領域の画像データの静止画圧縮時間と、処理対象の高頻度変更領域及び未選択の高頻度変更領域の、静止画用の圧縮方式により圧縮された画像データのデータ転送時間と、を加算して、推定応答時間を算出する。 Subsequently, the response time estimation unit 1573 generates a still image compression time for the image data in the high-frequency change area to be processed, a still image compression time for the image data in the unselected high-frequency change area, and a high-frequency change in the process target. The estimated response time is calculated by adding the data transfer time of the image data compressed by the still image compression method in the region and the unselected high-frequency change region.
 次に、圧縮方式選択部1574は、ワークメモリに保存されている推定応答時間の蓄積値に、新たに算出された推定応答時間を加算して、推定応答時間の積算値を更新する(ステップS211)。 Next, the compression method selection unit 1574 adds the newly calculated estimated response time to the accumulated value of the estimated response time stored in the work memory, and updates the accumulated value of the estimated response time (step S211). ).
 次に、圧縮方式選択部1574は、推定応答時間の積算値が、事前に決められた時間しきい値よりも小さいかどうかを判断する(ステップS212)。 Next, the compression method selection unit 1574 determines whether or not the integrated value of the estimated response time is smaller than a predetermined time threshold value (step S212).
 ここで、推定応答時間の積算値が時間しきい値よりも小さいと判断された場合(ステップS212のYes)、圧縮方式選択部1574は、処理対象の高頻度変更領域を除き、既選択の高頻度変更領域の画像データの圧縮方式として、動画用の圧縮方式を選択し、処理対象の高頻度変更領域の画像データと、未選択の高頻度変更領域の画像データと、の圧縮方式として、静止画用の圧縮方式を選択する(ステップS213)。 Here, when it is determined that the integrated value of the estimated response time is smaller than the time threshold value (Yes in step S212), the compression method selection unit 1574, except for the high-frequency change region to be processed, As the compression method for the image data in the frequency change area, a compression method for moving images is selected, and the compression method for the image data in the high-frequency change area to be processed and the image data in the unselected high-frequency change area is static. A compression method for the image is selected (step S213).
 次に、エンコーダ155は、高頻度変更領域識別部154により識別された全ての高頻度変更領域それぞれを、圧縮方式選択部1574により選択された圧縮方式(静止画用/動画用)により圧縮する(ステップS208)。 Next, the encoder 155 compresses all the high-frequency change areas identified by the high-frequency change area identification unit 154 by the compression method (for still image / moving image) selected by the compression method selection unit 1574 ( Step S208).
 次に、画像送信部156は、静止画用/動画用の圧縮方式により圧縮された高頻度変更領域の画像データをクライアント端末20に送信する(ステップS209)。 Next, the image transmission unit 156 transmits the image data of the frequently changed area compressed by the still image / moving image compression method to the client terminal 20 (step S209).
 [圧縮方式決定処理の具体例]
 図12は、一実施形態にかかるサーバ装置10による圧縮方式決定処理の具体例を説明する模式図である。
[Specific example of compression method decision processing]
FIG. 12 is a schematic diagram illustrating a specific example of compression method determination processing by the server device 10 according to the embodiment.
 図12(a)に示すように、高頻度変更領域Rの面積が面積しきい値を超えた場合(ステップS112のNo)、圧縮方式決定部157は、圧縮方式決定処理を開始する。 As shown in FIG. 12A, when the area of the frequently changed region R exceeds the area threshold value (No in step S112), the compression method determination unit 157 starts the compression method determination process.
 即ち、高頻度変更領域Rの面積が面積しきい値を超えると、高頻度変更領域Rの画像データを動画用の圧縮方式により圧縮する為の動画圧縮時間Trdが増加して、推定応答時間が時間しきい値を超えることが予想される。このため、圧縮方式決定処理を実施して、事前に応答時間の短縮をはかる。 That is, when the area of the high-frequency change region R exceeds the area threshold, the moving image compression time Trd for compressing the image data of the high-frequency change region R by the compression method for moving images increases, and the estimated response time The time threshold is expected to be exceeded. For this reason, a compression method determination process is performed to shorten the response time in advance.
 圧縮方式決定処理では、高頻度変更領域Rに包含されるメッシュ連結体M1、M2(高頻度変更領域の候補)それぞれを、高頻度変更領域R1、R2と再識別して、高頻度変更領域R1、R2それぞれを、動画用の圧縮方式により圧縮する為の動画圧縮時間T1d、T2dを算出する。 In the compression method determination process, mesh connected bodies M1 and M2 (candidates for high-frequency change areas) included in the high-frequency change area R are re-identified as high-frequency change areas R1 and R2, and the high-frequency change area R1 , R2 are calculated by the moving image compression times T1d and T2d for compressing them by the moving image compression method.
 図12(a)に示すように、動画用の圧縮方式により圧縮する対象領域を、高頻度変更領域Rから高頻度連結体R1及びR2に変更(削減)したことで、図12(b)に示すように、動画圧縮時間T1d、T2dの合計値は、高頻度変領域Rの画像データを動画用の圧縮方式により圧縮する為の動画圧縮時間Trdよりも減少していることがわかる。 As shown in FIG. 12 (a), the target area to be compressed by the compression method for moving images is changed (reduced) from the high-frequency change area R to the high-frequency connectors R1 and R2. As shown, the total value of the moving image compression times T1d and T2d is shorter than the moving image compression time Trd for compressing the image data in the high-frequency change region R by the compression method for moving images.
 しかし、動画用の圧縮方式により圧縮された高頻度変更領域R1、R2の画像データを転送する際の転送時間Tddを、動画圧縮時間T1d、T2dに加算すると、推定応答時間が時間しきい値を超える。従って、圧縮方式決定部157は、さらに応答時間を削減する為、高頻度変更領域R2の画像データを静止画用の圧縮方式により圧縮する為の静止画圧縮時間T2sを算出する。高頻度変更領域R2の圧縮方式を動画用の圧縮方式から静止画用の圧縮方式に変更したことで、圧縮処理の計算量が減少する為、静止画圧縮時間T2sは、動画圧縮時間T2dよりも大幅に短縮される。このため、図12(b)に示すように、動画圧縮時間T1d及び静止画圧縮時間T2sの合計値は、さらに削減され、動画圧縮時間T1d及び静止画圧縮時間T2sに転送時間Tdsを加算しても、推定応答時間は、時間しきい値を超えなくなる。 However, if the transfer time Tdd for transferring the image data of the high-frequency change areas R1 and R2 compressed by the moving image compression method is added to the moving image compression times T1d and T2d, the estimated response time is set to the time threshold value. Exceed. Therefore, in order to further reduce the response time, the compression method determination unit 157 calculates a still image compression time T2s for compressing the image data in the high-frequency change area R2 by the still image compression method. Since the compression method of the high-frequency change area R2 is changed from the compression method for moving images to the compression method for still images, the calculation amount of the compression process is reduced. Therefore, the still image compression time T2s is longer than the moving image compression time T2d. Significantly shortened. For this reason, as shown in FIG. 12B, the total value of the moving image compression time T1d and the still image compression time T2s is further reduced, and the transfer time Tds is added to the moving image compression time T1d and the still image compression time T2s. However, the estimated response time does not exceed the time threshold.
 なお、静止画用の圧縮方式は、圧縮率が低い為、圧縮後の画像データのデータ量は、動画用の圧縮方式よりも増加する。このため、静止画用の圧縮方式を使用すれば、画像データの転送時間は増加することとなる。しかし、通信の帯域が充分に確保されている場合、転送時間の増加よりも圧縮時間の減少の方が大きい為、推定応答時間を短縮することができる。 Note that since the compression method for still images has a low compression rate, the amount of image data after compression is larger than the compression method for moving images. For this reason, if a still image compression method is used, the transfer time of image data increases. However, when the communication band is sufficiently secured, the estimated response time can be shortened because the decrease in the compression time is greater than the increase in the transfer time.
 従って、圧縮方式決定部157は、高頻度変更領域R1の画像データの圧縮方式として動画用の圧縮方式を選択するとともに、高頻度変更領域R2の画像データの圧縮方式として静止画用の圧縮方式を選択する。 Therefore, the compression method determination unit 157 selects the moving image compression method as the compression method for the image data in the high-frequency change region R1, and also selects the still image compression method as the compression method for the image data in the high-frequency change region R2. select.
 なお、本実施形態では、全ての高頻度変更領域を静止画圧縮するのではなく、推定応答時間が時間しきい値を超えない範囲で、静止画用の圧縮方式により圧縮する高頻度変更領域を最小限に留める。このため、サーバ装置10からクライアント端末20へのデータ転送量の増加を抑制することができる。 In the present embodiment, not all the high-frequency change areas are compressed as still images, but the high-frequency change areas that are compressed by the still image compression method in a range in which the estimated response time does not exceed the time threshold. Keep to a minimum. For this reason, an increase in the amount of data transferred from the server device 10 to the client terminal 20 can be suppressed.
 [クライアント端末20による画像表示処理]
 図13は、一実施形態にかかるクライアント端末20による画像表示処理のフローチャートである。
[Image Display Processing by Client Terminal 20]
FIG. 13 is a flowchart of image display processing by the client terminal 20 according to the embodiment.
 図13に示すように、先ず、操作情報受付部21は、例えばマウスやキーボードにより入力される操作情報を受け付ける(ステップS301)。 As shown in FIG. 13, first, the operation information receiving unit 21 receives operation information input by, for example, a mouse or a keyboard (step S301).
 次に、操作情報通知部231は、操作情報受付部21が受け付けた操作情報をサーバ装置10に送信する(ステップS302)。 Next, the operation information notifying unit 231 transmits the operation information received by the operation information receiving unit 21 to the server device 10 (step S302).
 次に、画像受信部232は、サーバ装置10からデータを受信したかどうかを判断する(ステップS303)。 Next, the image receiving unit 232 determines whether data has been received from the server device 10 (step S303).
 ここで、サーバ装置10からデータを受信したと判断された場合(ステップS303のYes)、サーバ装置10からのデータが動画データであるかどうかを判断する(ステップS304)。 Here, when it is determined that data has been received from the server device 10 (Yes in step S303), it is determined whether the data from the server device 10 is moving image data (step S304).
 ここで、サーバ装置10からのデータが動画データであると判断された場合(ステップS304のYes)、デコーダ233は、サーバ装置10からの動画データを動画用の圧縮方式により復元する(ステップS305)。 Here, when it is determined that the data from the server device 10 is moving image data (Yes in step S304), the decoder 233 restores the moving image data from the server device 10 by a moving image compression method (step S305). .
 一方、サーバ装置10からのデータが動画データであると判断されない場合(ステップS304のNo)、即ちサーバ装置10からのデータが静止画データであると判断された場合、デコーダ233は、サーバ装置10からの静止画データを静止画用の圧縮方式により復元する(ステップS306)。 On the other hand, when it is not determined that the data from the server device 10 is moving image data (No in step S304), that is, when it is determined that the data from the server device 10 is still image data, the decoder 233 Still image data is restored by a still image compression method (step S306).
 次に、表示制御部234は、サーバ装置10から送信された属性情報に基づき、表示部22を制御して、デコーダ233により復元された画像データ(静止画データ/動画データ)を、クライアント端末20のディスプレイ204に表示させる(ステップS307)。 Next, the display control unit 234 controls the display unit 22 based on the attribute information transmitted from the server device 10, and the image data (still image data / moving image data) restored by the decoder 233 is transmitted to the client terminal 20. Are displayed on the display 204 (step S307).
 次に、転送速度算出部235は、画像受信部232により受信された画像データ(静止画データ/動画データ)のパケットの送信時刻と、クライアント端末20が該パケットを受信した受信時刻と、の差分と、画像データのデータ量と、に基づき、単位時間あたりのデータ転送量、即ちデータ転送速度を算出する(ステップS308)。 Next, the transfer rate calculation unit 235 determines the difference between the transmission time of the packet of the image data (still image data / moving image data) received by the image reception unit 232 and the reception time when the client terminal 20 receives the packet. Then, based on the data amount of the image data, a data transfer amount per unit time, that is, a data transfer rate is calculated (step S308).
 次に、転送速度算出部235は、サーバ装置10にデータ転送速度を通知する(ステップS309)。 Next, the transfer rate calculation unit 235 notifies the server device 10 of the data transfer rate (step S309).
 次に、操作情報受付部21は、例えばマウスやキーボードからの操作情報を受け付けるまで待機する(ステップS310)。又、サーバ装置10からデータを受信したと判断されない場合も(ステップS303のNo)、操作情報受付部21は、操作情報を受け付けるまで待機する(ステップS310)。 Next, the operation information reception unit 21 waits until operation information from, for example, a mouse or a keyboard is received (step S310). Even when it is not determined that data has been received from the server device 10 (No in step S303), the operation information receiving unit 21 waits until operation information is received (step S310).
 なお、本実施形態では、データ転送速度の算出及び通知を、画像データの表示後に実施しているが、本発明は、これに限定されるものではない。例えば、サーバ装置10からの画像データの受信後であれば、任意のタイミングでデータ転送速度の算出及び通知を実施しても良い。 In the present embodiment, the calculation and notification of the data transfer speed are performed after the display of the image data, but the present invention is not limited to this. For example, the calculation and notification of the data transfer rate may be performed at an arbitrary timing as long as the image data is received from the server device 10.
 本実施形態によれば、事前に算出された推定応答時間に基づき、高頻度変更領域の圧縮方式として、静止画用の圧縮方式及び動画用の圧縮方式の何れかを選択する。具体的には、推定応答時間が時間しきい値を超える場合、高頻度変更領域の圧縮方式として、動画用の圧縮方式ではなく、静止画用の圧縮方式を選択する。静止画用の圧縮方式は、動画用の圧縮方式に比べて、圧縮処理に必要な計算量が少ない為、サーバ装置10による処理時間が短縮する。このため、クライアント端末20の操作指示を受け付けてからサーバ装置10の実行結果がクライアント端末20に表示されるまでの応答時間が短縮するので、クライアント端末20の操作応答を向上させることができる。 According to the present embodiment, either the still image compression method or the moving image compression method is selected as the compression method for the frequently changed region based on the estimated response time calculated in advance. Specifically, when the estimated response time exceeds the time threshold value, the compression method for still images is selected as the compression method for the high-frequency change area, not the compression method for moving images. Since the still image compression method requires less calculation amount than the moving image compression method, the processing time of the server device 10 is shortened. For this reason, since the response time from when the operation instruction of the client terminal 20 is received until the execution result of the server device 10 is displayed on the client terminal 20 is shortened, the operation response of the client terminal 20 can be improved.
 しかも、常時、高頻度変更領域の画像データの圧縮方式として、静止画用の圧縮方式を使用するのではなく、あくまでも推定応答時間が時間しきい値を超えた場合のみ、静止画用の圧縮方式を使用する。このため、推定応答時間が時間しきい値を超えない場合、即ち操作応答が良好である場合には、動画用の圧縮方式を使用する。従って、静止画用の圧縮方式の選択に起因して、やみくもにサーバ装置10からクライアント端末20へのデータ転送量が増加することもない。 In addition, as a compression method for image data in the frequently changed region, the still image compression method is used only when the estimated response time exceeds the time threshold, not the still image compression method. Is used. For this reason, when the estimated response time does not exceed the time threshold, that is, when the operation response is good, the moving image compression method is used. Therefore, the amount of data transferred from the server device 10 to the client terminal 20 does not increase due to the selection of the still image compression method.
 なお、以上の実施形態では、クライアント端末20の転送速度算出部235がパケットの送信時刻及び受信時刻と、パケットの画像データのデータ量と、に基づき、データ転送速度を算出している。しかし、本実施形態は、これに限定されるものではない。例えば、OS1100によりデータ転送速度が管理されているのであれば、クライアント端末20が該データ転送速度を直接的に取得しても良い。  In the above embodiment, the transfer rate calculation unit 235 of the client terminal 20 calculates the data transfer rate based on the packet transmission time and reception time and the data amount of the packet image data. However, the present embodiment is not limited to this. For example, if the data transfer rate is managed by the OS 1100, the client terminal 20 may directly acquire the data transfer rate. *
 また、以上の実施形態では、静止画用の圧縮方式及び動画用の圧縮方式を例示しているが、本発明は、これに限定されるものではない。圧縮率が異なれば、あらゆる圧縮方式を使用しても良い。 In the above embodiment, the still image compression method and the moving image compression method are exemplified, but the present invention is not limited to this. Any compression method may be used as long as the compression rate is different.
 さらに、本実施形態では、画像データを圧縮処理することで、画像データのデータ量を減らしているが、データ量を減らすことができれば、圧縮処理以外の処理を使用しても良い。 Furthermore, in this embodiment, the amount of image data is reduced by compressing the image data. However, if the amount of data can be reduced, processing other than compression processing may be used.
 本実施形態では、高頻度変更領域の画像データの圧縮開始からクライアント端末20による画像データの取得までの所要時間を応答時間としている。しかし、応答時間は、クライアント端末20からの操作指示から、サーバ装置10によるアプリケーションプログラムの実行結果がクライアント端末20に表示されるまでの時間の一部を構成するものであれば、特に限定されるものではない。例えば、クライアント端末20の操作指示から、クライアント端末20がサーバ装置10によるアプリケーションプログラムの実行結果を受信するまでの時間を応答時間としても良い。さらに、高頻度変更領域の画像データの圧縮時間を応答時間としても良い。これらの応答時間も、応答時間に関する指標の一例である。 In this embodiment, the response time is defined as the time required from the start of compression of the image data in the frequently changed area to the acquisition of the image data by the client terminal 20. However, the response time is particularly limited as long as it constitutes a part of the time from the operation instruction from the client terminal 20 until the execution result of the application program by the server device 10 is displayed on the client terminal 20. It is not a thing. For example, the time from the operation instruction of the client terminal 20 until the client terminal 20 receives the execution result of the application program by the server device 10 may be set as the response time. Further, the response time may be the compression time of the image data in the high-frequency change area. These response times are also examples of response time.
10:サーバ装置(情報処理装置)
20:クライアント端末(端末装置)
156:画像送信部(送信部)
157:圧縮方式決定部(決定部)
10: Server device (information processing device)
20: Client terminal (terminal device)
156: Image transmission unit (transmission unit)
157: Compression method determination unit (determination unit)

Claims (11)

  1.  端末装置からの操作指示に基づいた実行結果を前記端末装置に表示させる情報処理装置に於いて、
     前記端末装置からの操作指示への応答時間に関する指標に基づき、前記実行結果の画像データのデータ量に関する処理方式を決定する決定部と、
     前記決定された処理方式により処理された画像データを前記端末装置に送信する送信部と、
     を備える情報処理装置。
    In the information processing apparatus for causing the terminal device to display an execution result based on an operation instruction from the terminal device,
    A determination unit that determines a processing method related to a data amount of the image data of the execution result based on an index related to a response time to an operation instruction from the terminal device;
    A transmission unit that transmits image data processed by the determined processing method to the terminal device;
    An information processing apparatus comprising:
  2.  請求項1に記載の情報処理装置に於いて、
     前記決定部は、前記応答時間に関する指標に基づき、第1の方式と、前記第1の方式よりも前記画像データの処理後のデータ量が少ない第2の方式と、の何れかを、前記処理方式として選択する、情報処理装置。
    In the information processing apparatus according to claim 1,
    The determination unit performs either the first method or the second method in which the amount of data after processing the image data is smaller than that of the first method based on the response time index. Information processing device to select as a method.
  3.  請求項2に記載の情報処理装置に於いて、
     前記決定部は、
     前記画像データを前記第1の方式により処理する為の処理時間を取得し、
     前記画像データの、前記第1の方式による処理後のデータ量を前記端末装置に送信する為の送信時間を算出し、
     前記処理時間及び前記送信時間に基づき、前記応答時間に関する指標を算出する、情報処理装置。
    In the information processing apparatus according to claim 2,
    The determination unit
    Obtaining a processing time for processing the image data by the first method;
    Calculating a transmission time for transmitting the amount of data of the image data after processing according to the first method to the terminal device;
    An information processing apparatus that calculates an index related to the response time based on the processing time and the transmission time.
  4.  請求項2又は3に記載の情報処理装置に於いて、
     前記応答時間に関する指標が前記応答時間の増加に付随して増加する指標である場合、
     前記決定部は、前記応答時間に関する指標がしきい値を超えた場合、前記第2の方式を、前記処理方式として選択する、情報処理装置。
    In the information processing apparatus according to claim 2 or 3,
    When the index related to the response time is an index that increases with an increase in the response time,
    The information processing apparatus, wherein the determination unit selects the second method as the processing method when an index related to the response time exceeds a threshold value.
  5.  請求項1に記載の情報処理装置に於いて、さらに、
     前記実行結果の画像データに基づき、前記画像データ間の変更領域を取得する取得部を備え、
     前記取得部が複数の変更領域を検出した場合、
     前記決定部は、
     前記応答時間に関する指標に基づき、前記変更領域ごとに、第1の方式と、前記第1の方式よりも前記画像データの処理後のデータ量が少ない第2の方式と、の何れかを、前記処理方式として選択する、情報処理装置。
    The information processing apparatus according to claim 1, further comprising:
    An acquisition unit that acquires a change area between the image data based on the image data of the execution result,
    When the acquisition unit detects a plurality of change areas,
    The determination unit
    Based on the index related to the response time, for each of the change areas, either the first method or the second method having a smaller data amount after processing the image data than the first method, Information processing apparatus to be selected as a processing method.
  6.  請求項5に記載の情報処理装置に於いて、
     前記決定部は、
     前記複数の変更領域の画像データを第1の方式により処理する為の総処理時間を取得し、
     前記複数の変更領域の画像データの、前記第1の方式による処理後の総データ量を前記端末装置に送信する為の送信時間を算出し、
     前記総処理時間及び前記送信時間に基づき、前記応答時間に関する指標を算出する、情報処理装置。
    The information processing apparatus according to claim 5,
    The determination unit
    Obtaining a total processing time for processing the image data of the plurality of change areas by the first method;
    Calculating a transmission time for transmitting the total amount of data after processing according to the first method of the image data of the plurality of change areas to the terminal device;
    An information processing apparatus that calculates an index related to the response time based on the total processing time and the transmission time.
  7.  請求項6に記載の情報処理装置に於いて、
     前記応答時間に関する指標が前記応答時間の増加に付随して増加する指標である場合、
     前記決定部は、前記応答時間に関する指標がしきい値を超えた場合、前記第2の方式を、前記複数の変更領域の少なくとも何れかの画像データの処理方式として選択する、情報処理装置。
    The information processing apparatus according to claim 6,
    When the index related to the response time is an index that increases with an increase in the response time,
    The information processing apparatus, wherein the determination unit selects the second method as a processing method of at least any one of the plurality of change areas when an index related to the response time exceeds a threshold value.
  8.  請求項5に記載の情報処理装置に於いて、
     前記決定部は、
     前記変更領域ごとに、前記変更領域の画像データを第1の方式により処理する為の処理時間を取得し、
     前記変更領域ごとに取得された処理時間を積算して、前記複数の変更領域の画像データを前記第1の方式により処理する為の総処理時間を算出し、
     前記複数の変更領域の画像データの、前記第1の方式による処理後の総データ量を前記端末装置に送信する為の送信時間を算出し、
     前記総処理時間及び前記送信時間の合計時間を算出し、
     前記合計時間がしきい値を超えた場合、前記処理時間が算出された変更領域のうち、最後に処理時間が算出された変更領域を除いた変更領域の画像データの処理方式として、前記第1の方式を選択し、前記複数の変更領域のうち、前記第1の方式が選択された変更領域を除いた変更領域の画像データの処理方式として、前記第1の方式よりも前記画像データの処理後のデータ量が少ない第2の方式を選択する、情報処理装置。
    The information processing apparatus according to claim 5,
    The determination unit
    For each change area, obtain a processing time for processing the image data of the change area by the first method,
    The total processing time for processing the image data of the plurality of change areas by the first method is calculated by accumulating the processing time acquired for each change area,
    Calculating a transmission time for transmitting the total amount of data after processing according to the first method of the image data of the plurality of change areas to the terminal device;
    Calculate the total time of the total processing time and the transmission time,
    When the total time exceeds a threshold value, the first processing method for processing image data in the change area excluding the change area for which the processing time was calculated last, out of the change areas for which the processing time has been calculated, As the processing method of the image data of the change area excluding the change area for which the first method is selected from among the plurality of change areas, the processing of the image data is more than the first method. An information processing apparatus that selects a second method with a small amount of data later.
  9.  請求項8に記載の情報処理装置に於いて、
     前記決定部は、前記複数の変更領域のうち、面積が大きい方から順に、前記処理時間を取得する、情報処理装置。
    In the information processing apparatus according to claim 8,
    The determination unit is an information processing apparatus that acquires the processing time in order from a larger area among the plurality of change regions.
  10.  端末装置からの操作指示に基づいた実行結果を前記端末装置に表示させる情報処理装置の制御方法に於いて、
     前記端末装置からの操作指示への応答時間に関する指標に基づき、前記実行結果の画像データのデータ量に関する処理方式を決定し、
     前記決定された処理方式により処理された画像データを前記端末装置に送信する、情報処理装置の制御方法。
    In the control method of the information processing apparatus for causing the terminal device to display the execution result based on the operation instruction from the terminal device,
    Based on an index related to a response time to an operation instruction from the terminal device, a processing method related to a data amount of the image data of the execution result is determined,
    A method for controlling an information processing apparatus, which transmits image data processed by the determined processing method to the terminal apparatus.
  11.  端末装置からの操作指示に基づいた実行結果を前記端末装置に表示させる情報処理装置の制御プログラムに於いて、
     前記制御プログラムは、前記情報処理装置に、
     前記端末装置からの操作指示への応答時間に関する指標に基づき、前記実行結果の画像データのデータ量に関する処理方式を決定させ、
     前記決定された処理方式により処理された画像データを前記端末装置に送信させる、情報処理装置の制御プログラム。
    In the control program of the information processing apparatus for causing the terminal device to display the execution result based on the operation instruction from the terminal device,
    The control program is stored in the information processing apparatus.
    Based on an index related to a response time to an operation instruction from the terminal device, the processing method related to the data amount of the image data of the execution result is determined,
    A control program for an information processing apparatus that causes the terminal apparatus to transmit image data processed by the determined processing method.
PCT/JP2012/007487 2012-11-21 2012-11-21 Information processing device, control method, and control program WO2014080440A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/JP2012/007487 WO2014080440A1 (en) 2012-11-21 2012-11-21 Information processing device, control method, and control program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2012/007487 WO2014080440A1 (en) 2012-11-21 2012-11-21 Information processing device, control method, and control program

Publications (1)

Publication Number Publication Date
WO2014080440A1 true WO2014080440A1 (en) 2014-05-30

Family

ID=50775648

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2012/007487 WO2014080440A1 (en) 2012-11-21 2012-11-21 Information processing device, control method, and control program

Country Status (1)

Country Link
WO (1) WO2014080440A1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10124429A (en) * 1996-10-16 1998-05-15 Brother Ind Ltd Multimedia information communication system
JP2002073467A (en) * 2000-09-05 2002-03-12 Kddi Research & Development Laboratories Inc Control method for image conversion system
JP2007025073A (en) * 2005-07-13 2007-02-01 Sony Corp Data transmission method, data transmission apparatus, data receiving apparatus, and program
JP2010061542A (en) * 2008-09-05 2010-03-18 Sony Corp Communication terminal, communication method, signal processor, signal processing method and communication system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10124429A (en) * 1996-10-16 1998-05-15 Brother Ind Ltd Multimedia information communication system
JP2002073467A (en) * 2000-09-05 2002-03-12 Kddi Research & Development Laboratories Inc Control method for image conversion system
JP2007025073A (en) * 2005-07-13 2007-02-01 Sony Corp Data transmission method, data transmission apparatus, data receiving apparatus, and program
JP2010061542A (en) * 2008-09-05 2010-03-18 Sony Corp Communication terminal, communication method, signal processor, signal processing method and communication system

Similar Documents

Publication Publication Date Title
JP5471794B2 (en) Information processing apparatus, image transmission program, and image display method
US20130155075A1 (en) Information processing device, image transmission method, and recording medium
JP5471903B2 (en) Information processing apparatus, image transmission program, and image display method
US9124813B2 (en) Information processing device using compression ratio of still and moving image data
EP2449550B1 (en) Method and apparatus for providing mobile device interoperability
JP5685840B2 (en) Information processing apparatus, image transmission program, and image display method
JP5664289B2 (en) Information processing apparatus, image transmission program, and image display method
JP5899897B2 (en) Information processing apparatus, information processing method, and program
US9666166B2 (en) Information processing apparatus, method, and recording medium
US9300818B2 (en) Information processing apparatus and method
US9001131B2 (en) Information processing device, image transmission method and image transmission program
US8411972B2 (en) Information processing device, method, and program
JP6003049B2 (en) Information processing apparatus, image transmission method, and image transmission program
JP2017169001A (en) Transmission device, transmission method and transmission program for display screen data
US20160155429A1 (en) Information processing apparatus and terminal device
WO2014080440A1 (en) Information processing device, control method, and control program
JP5593514B2 (en) Screen frame encoding method and electronic device using the same
JP2015097063A (en) Information processing device, screen control program, and screen control method

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 12888794

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 12888794

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP