Abstract:
A method of transmitting image data from a first node to a second node during a communication event, wherein the second node comprises a display for displaying image data at the second node, includes receiving at the first node, information indicating at least one display characteristic with which image data received at the second node will be displayed on the display; inputting image data at the first node; determining a processing step to be applied to the inputted image data to generate adapted image data, such that at least one characteristic of the adapted image data is optimized for the at least one display characteristic; applying the processing step to generate the adapted image data; and transmitting the adapted image data to the second terminal.

Description:
RELATED APPLICATIONS 
     
         
         
           
             This application claims priority under 35 U.S.C. §119 or 365 to Great Britain Application No. 0819389.8, filed Oct. 22, 2008 and PCT/IB08/001353, filed Mar. 12, 2008. The entire teachings of the above applications are incorporated herein by reference. 
           
         
       
    
     FIELD OF THE INVENTION 
     The present invention relates to a method and system for transmitting and receiving data in a communication system. More particularly, the present invention relates to a method and apparatus for transmitting and receiving image data to be output to a user on a display. 
     BACKGROUND OF THE INVENTION 
     In a communication system a communication network is provided, which can link together at least two communication terminals so that the terminals can send information to each other in a call or other communication event. Information may include speech, text, images or video. 
     Digital communication systems are based on the transmission of digital signals. Analogue signals such as light waves are input into a recording device such as a camera and recorded by an image sensor such as a charged coupled device (CCD) in the camera. Data recorded by the image sensor is then converted into digital data by an analogue to digital converter. The digital signal is then encoded and placed into data packets for transmission over a communication network. 
     Each data packet includes a header portion and a payload portion. The header portion of the data packet contains data for transmitting and processing the data packet. This information may include an identification number and source address that uniquely identifies the packet, a header checksum used to detect processing errors and the destination address. The payload portion of the data packet includes the encoded video data intended for transmission. 
     The transmission of high quality images, such as those with a high resolution, may require large amounts of data to be encoded and transmitted via the communication network, particularly during real time communication events such as video calls and video streaming. This consumes a large amount of CPU (Central Processing Unit) resource of the transmitting terminal and of the receiving terminal which in turn increases the power consumption of the terminals. The transmission of large amounts of data will also consume the bandwidth of network, thereby increasing introducing packet loss and delay. 
     The transmission of high quality images may require complex compression methods to encode the data, such encoding methods may again consume a large amount of CPU resource. 
     A further problem with transmitting high quality images is that this can overload the CPU resources of the terminals thereby adversely affecting the operation of the terminal to display the image and perform other processing functions. 
     The burden on the CPU resources of the terminals may be alleviated by sending data at a low resolution. However this can also adversely affect the quality of the displayed image. This is particularly noticeable to a user when the display screen on which the image is displayed is large and has a high resolution. 
     It is therefore an aim of the present invention to overcome the above identified problems by efficiently encoding and transmitting information over the network without affecting the perceived quality of the image displayed at the receiving terminal. 
     It is a further aim of the invention to improve the perceived quality of the image data when it is displayed at a receiving terminal. 
     SUMMARY OF THE INVENTION 
     According to a first aspect of the present invention there is provided a method of transmitting image data from a first node to a second node during a communication event, wherein the second node comprises a display for displaying image data at the second node, said method comprising;
         receiving at the first node, information indicating at least one display characteristic with which image data received at the second node will be displayed on said display;   inputting image data at the first node;
 
determining a processing step to be applied to the inputted image data to generate adapted image data, such that at least one characteristic of the adapted image data is optimised for said at least one display characteristic;
   applying the processing step to generate the adapted image data; and   transmitting the adapted image data to the second terminal.       

     According to a second aspect of the present invention there is provided a method of transmitting image data from a first node to a second node during a communication event, wherein the second node comprises a display for displaying image data at the second node, said method comprising;
         receiving at the first node, information indicating at least one display characteristic with which image data received at the second node will be displayed on said display; inputting image data at the first node;   determining a processing step to be applied to the inputted image data to generate adapted image data, such that an acceptable quality threshold is met when the adapted image data is displayed with the display characteristic;   applying the processing step to generate the adapted image data; and   transmitting the adapted image data to the second terminal,       

     According to a third aspect of the invention there is provided a transmitting terminal arranged to transmit image data to a receiving terminal during a communication event, wherein the receiving terminal comprises a display for displaying image data, said transmitting terminal comprising:
         a receiver for receiving information indicating at least one display characteristic with which image data received at the receiving terminal will be displayed on said display;   an image inputting system for inputting image data at the transmitting terminal; a control block for determining a processing step to be applied to the inputted image data to generate adapted image data, such that at least one characteristic of the adapted image data is optimised for said at least one display characteristic;   a processing block for applying the processing step to generate the adapted image data; and   a transmitter for transmitting the adapted image data to the second terminal.       

     According to a fourth aspect of the present invention there is provided a receiving terminal for receiving image data transmitted from a transmitting terminal during a communication event, said receiving terminal comprising:
         a display for displaying image data received by the receiving terminal, a display reporter unit arranged to determine information indicating a display characteristic with which image data received at the second node will be displayed on said display; and   a transmitter for transmitting said information indicating said display characteristic to the transmitting terminal, such that the transmitting terminal may adapt the image data to be transmitted to the receiving terminal in order to optimise at least one characteristic of the image for said at least one display characteristic.       

     One advantage of embodiments of the present invention is that the resolution of the image may be adapted to increase only when this is necessary to maintain an acceptable level of quality of the displayed image. 
     Furthermore the data in the encoded image may be optimised according to the manner in which it is displayed at the receiving terminal. 
    
    
     
       BRIEF DESCRIPTION OF DRAWINGS 
       For a better understanding of the present invention and to show how the same may be carried into effect, embodiments of the present invention will now be described with reference to the following drawings: 
         FIG. 1  shows a communication network; 
         FIG. 2  shows a first user terminal and a second user terminal in more detail; 
         FIG. 3  shows transmitting circuitry of a user terminal in accordance with an embodiment of the invention; 
         FIG. 4  shows receiving circuitry of a user terminal in accordance with an embodiment of the invention; 
         FIG. 5  shows a flowchart according to an embodiment of the invention; 
         FIG. 6  shows a display screen having dimensions h×w; 
         FIG. 7  shows a flowchart according to a further embodiment of the invention; 
         FIG. 8  shows a flowchart according to a further embodiment of the invention; 
         FIG. 9  is a diagram showing the aspect ratio of an image display area; 
         FIG. 10  is a diagram showing the aspect ratio of an image; 
         FIG. 11  is a diagram showing the aspect ratio of an encoded image. 
         FIG. 12  is a diagram showing transmitting circuitry according to a further embodiment of the invention; and 
         FIG. 13  shows a flowchart according to a further embodiment of the invention. 
     
    
    
     DETAILED DESCRIPTION OF THE INVENTION 
       FIG. 1  shows a first node  100  and a second node  112  connected to a communication network  104 . In the described embodiment, the first node  100  is a first user terminal operated by User A, and the second node  112  is a second user terminal  112  is operated by User B. In an alternative embodiment the first node  100  may be a server arranged to provide media content to the user terminal  112 . In one embodiment of the invention the communication network  104  is the internet. 
     The user terminals  100 ,  112 , may be a personal computer, a gaming device, a personal digital assistant, a suitably enabled mobile phone, a television, or another device able to output image data on an integrated or peripheral display. The terminals may be connected to the network via a wired or wireless connection that employs a particular access technology such as Ethernet, WiFi, WiMax (Worldwide Interoperability for Microwave Access), or 3G (third generation). 
     A communication event, such as a video call, may be set up between the first user terminal  100  and the second user terminal  112 . During the video call, video data is transmitted between the user terminals via the communication network  104 . 
     Reference will now be made to  FIG. 2 .  FIG. 2  shows the first user terminal  100  and the second user terminal in more detail. The first user terminal  100  comprises: an image input system  202  for capturing image data; transmitting circuitry  200  for transmitting the image data via the network  104 ; receiving circuitry  201  for receiving image data from the network  104 ; a display screen  203  for displaying the image data and a user interface (UI) device  213  for receiving an input from User A. Similarly the second user terminal contains transmitting circuitry  200 ′, receiving circuitry  201 ′, an image input system  202 ′, a display screen  203 ′ and a UI device  213 ′. 
     The following description will describe the transmission of image data from the first user terminal  100  to the second user terminal  112 . However it should be readily appreciated that the second user terminal may also be arranged to transmit image data to the first user terminal in accordance with the method described below. 
     The transmitting circuitry of first user terminal  100  is arranged to receive image data from the image input system  202  and to transmit the image data to the second user terminal  112 . 
     In a preferred embodiment of the invention the image input system  202 ,  202 ′ is a video camera. Video data is transmitted from the first user terminal  100  to the second user terminal  112 , via the network  104 . The receiving circuitry  201 ′ of the second user terminal  112  is arranged to receive the video data from the network  104  and to output the video data on the display screen  203 . 
       FIG. 3  shows the transmitting circuitry  200 ,  200 ′ in more detail. The transmitting circuitry comprises an analogue to digital converter  204 , an encoder  205 , a packetiser  206  and a control block  207 . 
       FIG. 4  shows the receiving circuitry  201 ,  201 ′ in more detail. The receiving circuitry comprises a jitter buffer  208 , a decoder  209 , a renderer  210 , a display reporter unit  212  and a frame buffer  211 . 
     The analogue to digital converter  204  in the first user terminal  100 , receives an analogue representation of an image captured by an image sensor of the video camera  202 . The analogue to digital converter  204  is arranged to convert the image into a digital signal. The digital signal is then encoded by the encoder  205  under the control of the control block  207 . The operation of the control block will be described in detail herein after. 
     The packetiser  206  receives the encoded video data from the encoder  205 . and places the encoded video data into data packets. The data packets are then transmitted to the second terminal  112  via the network  104 . 
     Data packets received at the second terminal  112  via the communication network are input into the jitter buffer  208 . The jitter buffer  208  buffers data packets received from the network  104  and outputs the buffered data packets to the decoder  209 . The decoder  209  is arranged to decode the encoded video data and to provide the decoded data to the renderer  210 . The renderer is arranged to write information to the frame buffer  211 . Video data written into the frame buffer is displayed on the display screen  203 . 
     The inventors of the present invention have found that information relating to the how the image is displayed at the receiving terminal may advantageously be used at the transmitting terminal to control how the image is encoded. 
     For example, information relating to how the image is displayed may be used to optimise an encoding parameter used to encode the image such that an acceptable level of perceived quality for the image displayed is achieved. 
     For example the resolution at which the image is encoded may be controlled to be equivalent to the resolution at which the image is displayed at the receiving terminal. 
     According to exemplary embodiments of the invention, information relating to the manner in which the image data is displayed at the second user terminal  112  is reported by the display reporter unit  212  to the first user terminal  100 . The control block  207  at the first user terminal may then control the encoder to adapt the image sent to the second terminal in dependence on the reported manner in which the image data is displayed. 
     Embodiments described hereinafter refer in general to adapting the resolution of the image sent to the second terminal in dependence on the display information. However it should be appreciated that in further embodiments of the invention the control block may be arranged to adapt, for example, the resolution, the bit rate, the frame rate or the compression complexity of the image data transmitted to the second terminal. 
     According to one embodiment of the invention, the display reporter unit  212  may be arranged to report the resolution of the display screen  203 ′ of the second terminal  112 , to the first terminal  100 . In response, the control block of the first terminal may determine the resolution at which the image should be encoded. The controller may determine that if the resolution is above a predetermined threshold the image should be encoded at a high resolution, whereas if the resolution is below a predetermined threshold the image should be encoded at a low resolution. 
     According to a further embodiment of the invention image data may be adapted according to the size of the area in which the image is displayed. This will be exemplified with reference to the flowchart shown in  FIG. 5 . 
     In step S 1  a communication event such as a video call is set up between the first user terminal and the second user terminal. 
     In step S 2  the display reporter unit  212  in the second terminal is arranged to determine information relating to the manner in which data received from the first user terminal will be displayed, hereinafter referred to as ‘display information’. For example the display reporter unit  212  may determine information relating to the dimensions of the display screen  203 . In this case the display reporter unit  212  in the second user terminal may be arranged to report the physical height h and the width w of the display screen, as shown in  FIG. 6 . In a preferred embodiment the display reporter unit  212  is also arranged to determine the resolution of the display screen, The dimensions and resolution of the display screen may be retrieved from a local memory of the second user terminal. 
     In step S 3  the display information is reported from the display reporter unit  212  of the second user terminal, to the first terminal. The display information transmitted from the second terminal may be sent together with video data that is transmitted to the first user terminal from the second user terminal. 
     In step S 4  the display information provided from the second user terminal is provided to the control block  207  of the first user terminal. The control block is arranged to determine the resolution that is appropriate for the manner in which the image data is displayed. 
     The resolution may be determined using an algorithm that computes the required resolution as a function of the display information. 
     For example the required resolution of the transmitted image may be calculated according to Equation (1)
 
image resolution= K ( h,w )×screen resolution  (1)
 
     Where the image resolution is the total number of pixels in the image; where the screen resolution is the total number of pixels in the screen and where K is a value between 0 and 1, such that the resolution of the transmitted image does not exceed the resolution of the display. The value of K may approach 1 for larger values of screen height (h) and width (w). K may be derived empirically based on perception quality evaluation testing. 
     Alternatively the required resolution may be determined by a look up table stored in a memory accessible to the control block. The look up table will define an acceptable transmitted image resolution for a given display resolution and area. 
     In step S 5  the control block is arranged to control the encoder to encode the data at the required resolution. This may be achieved, for example by reducing the frame rate or increasing the bit rate available to the encoder. The maximum resolution that may be applied to the image may be limited to the resolution of the image provided from the video camera. 
     In an alternative embodiment of the invention the image data may be displayed in a portion of the display screen  203 , in a graphical display window, wherein the dimensions of the graphical display window may be controlled by the user of the second user terminal. 
     As shown in  FIG. 4 , the renderer block receives an input from the user interface (UI) device  213  of the second terminal to control the size of the window in which the image data is displayed. The UI device of the second terminal may be a keyboard, mouse, touch screen or any other interface means suitable for controlling the dimensions of the display window. This embodiment of the invention is described with reference to the flow chart shown in  FIG. 7 . 
     In step S 11  a communication event such as a video call is set up between the first terminal and the second terminal. 
     In step S 12  the display reporter unit is arranged to determine the size of the window. This may be determined for example from the renderer  210  or reported from a module used to generate the graphical window (not shown). 
     In step S 13  the display reporter unit is arranged to report the display information to the first user terminal. 
     In step S 14  the reporting module is arranged to monitor the renderer to determine whether the size of the display window has changed since the size of the display window was reported to the first terminal in step S 13 . 
     In step S 15 , if it is determined that the display window has changed size, the reporting module is arranged to transmit updated dimensions of the display window to the first user terminal  100  such that the encoder may be controlled to adapt the resolution at which the image data is encoded. 
       FIG. 8  shows a flowchart describing the method steps implemented in the receiver in response to receiving display information transmitted according the method described in relation to  FIG. 7 . 
     In step S 21  the first user terminal receives display information relating to the dimensions of the window in which the image data is to be displayed. 
     In step S 22  the control block is arranged to determine the required resolution of the image to be transmitted, such that an acceptable quality threshold is met when the image is displayed in a window with the reported window dimensions. The required resolution may be determined according to an algorithm or look up table. 
     In step S 23  the control block is arranged to control the encoder to encode the data at the required resolution. 
     In step S 24  the control block receives updated display window dimensions from the second user terminal  112 . 
     In step S 25  the control block is arranged to determine if the area of the display window has increased or decreased. 
     In step S 26  if it is determined that the area of the display window has increased, the control block is arranged to control the encoder to increase the resolution at which the image data is encoded. 
     In step S 27 , if it is determined that the area of the display window has decreased, the control block is arranged to control the encoder to decrease the resolution at which the image data is encoded. 
     In one embodiment of the invention, User B of the second terminal may control the proportion of the image displayed in the display window such that User B may zoom in and out of the received image data. 
     According to an embodiment of the invention the display reporter unit is arranged to report the proportion of the image that is displayed in the display. According to this embodiment of the invention the control block is arranged to determine the magnification applied to the image from the reported display window dimensions and the proportion of the image displayed in the display window, The required resolution is then determined using an algorithm or a look up table. For example, if it is determined that the magnification applied at the renderer to the actual size of the image transmitted is more than 1 the data is encoded with a high resolution. Conversely, if it is determined that the magnification applied to the actual size of the image is less than one the encoder is controlled to encode the image with a lower resolution. 
     In a further embodiment of the invention, when only a portion of the image is displayed in the graphical display window the display reporter unit  212  is arranged to provide an indication of the location of the portion of the image displayed within the complete image. For example the display reporter unit  212  may be arranged to report coordinates defining the location of the displayed portion of the image. In this case the encoder may be controlled to encode only the identified area at the higher resolution. The remaining portions of the image may be encoded at a lower bit rate or cropped before the image is transmitted, such that the total bit rate required to encode the image is not necessarily increased. 
     In a further embodiment of the invention the display reporter unit  212  is arranged to report information indicating the colour depth of the screen. This describes the number of bits used to represent colour for one pixel. In response to receiving the colour depth information from the second terminal, the first terminal is arranged to control the encoded image data to be optimised for the reported colour depth. For example if the reported colour depth of the display is high the image may be encoded with a high colour depth, for example wherein more bits are used to represent colour than if the reported colour depth of the screen is low. 
     In a further embodiment of the invention the display reporter unit  212  is arranged to report information indicating the screens ability to represent light nuances. In response to receiving this information from the second terminal, the first terminal is arranged to control the encoded image data to be optimised for the screens ability to represent light. For example if the screen is able to represent light at a high quality, the image may be encoded to preserve light nuances, wherein for example more bits are used represent levels of light than if the screen is only able to represent light nuances at a lower quality. 
     Reference is now made to  FIG. 12  which shows the transmitting circuitry of the user terminal according to a further embodiment of the invention. As shown in  FIG. 12  the transmitting circuitry  200 ′″ further comprises an adaptation block  908  that is arranged to process the signal before it is input into the encoder. 
     In one embodiment of the invention the control unit may be arranged to control the adaptation block  908  in response to receiving information relating to the aspect ratio of the window in which the image is displayed at the second terminal. This will be described with reference to the flowchart shown in  FIG. 13 . 
     In step S 31  the display reporter unit determines the aspect ratio of the area in which the image is displayed. This may be the area of a graphical window selected by a user, or the fixed aspect ratio of the display screen. 
     In step S 32  the display reporter unit is arranged to report the aspect ratio of the display area to the first terminal. 
     In step S 33  the control block is arranged to compare the aspect ratio of the area in which the image will be displayed to the aspect ratio of the image received from the video camera to determine if the aspect ratios are equivalent. 
     In step S 34  if it is determined that the aspect ratio of the image received from the camera is different from the aspect ratio of the display area, the control block is arranged to control the adaptation block  908  to add black areas to the image received from the camera such that the entire image has the same aspect ratio as the reported display area and the image provided from the camera retains its aspect ratio. 
     For example if the aspect ratio of the display screen is 2:4 as shown in  FIG. 9  and the aspect ratio of the camera image is 2:2 as shown in  FIG. 10  the adaptation block is arranged to add black areas  901  and  902  to the entire encoded image  903  such that the aspect ratio of the entire encoded image is 2:4. 
     In step S 35  if it is determined that the aspect ratio of the image received from the video camera is equivalent to the aspect ratio of the display area the image is not adapted by the encoder. 
     In this case the image may be displayed at the second terminal with the correct aspect ratio without the need for the receiving circuitry in the second terminal to apply further image processing steps. This is particularly advantageous where the receiving circuitry in the receiving terminal is not capable of adapting the aspect ratio of the received image locally. 
     In an alternative embodiment of the invention the adaptation block may be arranged to adapt the image such that the image is a monochrome image in response to receiving display information indicating that the image will be displayed in monochrome. 
     According to a further embodiment of the invention the image input system comprises a screen sharing module. The screen sharing module is arranged to capture as image data the image displayed on display screen  203  at the first user terminal. The image data captured from the screen may then be transmitted to the second user terminal in accordance with any of the methods described above. 
     Display information may be reported from the second terminal explicitly, for example as an absolute value or a range. However display information may also be reported implicitly, for example the second terminal may report a device identity or software version identity from which the first terminal can derive information relating to the display  203 ′ at the second terminal. In this case information relating to how the image data should be adapted for the display at the second terminal is pre-stored in a local memory of the first terminal. 
     In an alternative embodiment of the invention the adaptation block  908  may form part of the encoder. 
     In embodiments of the present invention the required processing may be implemented as hardware or by using appropriately adapted software executed on a processor. Software for implementing the invention may be stored on and provided by means of a carrier medium such as a carrier disc, card or tape, A possibility is to download the software via a network such as the Internet. This is an implementation preference. 
     While this invention has been particularly shown and described with reference to preferred embodiments, it will be understood to those skilled in the art that various changes in form and detail may be made without departing from the scope of the invention as defined in the claims.