Video processing system, integrated circuit, system for displaying video, system for generating video, method for configuring a video processing system, and computer program product

A video processing system may include a video input and a video output for outputting manipulated video images. The system may have a video processing chain connecting the video input to the video output. The chain may include a series connection of two or more video processing components. The components may each include a component input for receiving video images and a component output for outputting processed video images. A control input may be present for controlling the video processing component to be in an enabled or a disabled state. The video processing component may be arranged to obtain in the enabled state the processed video images by performing a respective processing operation on the received video images; and to obtain in the disabled state the processed video images by forwarding the received video images to the component output without performing the processing operation.

FIELD OF THE INVENTION

This invention relates to a video processing system, to an integrated circuit, to a system for displaying video, to a system for generating video, to a method for configuring a video processing system, and to a computer program product.

BACKGROUND OF THE INVENTION

Video processing systems are known in the art. For example, personal computers with graphic cards are known. Typically, the graphics card is provided with a set of video processing algorithms and is able to execute a selected video processing algorithm. A software application running on the personal computer can invoke and control the execution of one or more video processing algorithms in a certain order, for instance to capture a video from a camera.

A disadvantage of the known video processing systems is, however, that the video processing system has to be implemented again for each different application. For example, the software application has to select the algorithms, define their order and ensure a transfer of the processed video images from one algorithm to another. Also, the algorithms are application specific requiring the development of a large number of different algorithms for the different possible applications.

SUMMARY OF THE INVENTION

The present invention provides a video processing system, an integrated circuit, a system for displaying video, a system for generating video, a method for configuring a video processing system, and a computer program product as described in the accompanying claims.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

Referring toFIG. 1, an example of a video processing system10is illustrated. The video processing system10may, as illustrated, include one or more video inputs11,12and one or more video outputs13-15. At the video inputs11,12data representing one or more video images may be received. The video images may for instance be unprocessed video images, e.g. from a camera30, or be processed video images, such as video images presented at an output330of a video decoder33. At the video outputs13-15manipulated video images may be outputted. As illustrated, the video processing system10may include one or more video processing chains16,21,25which connect a respective video input11,12to one or more of the video outputs13-15. The chain16,21,25may include a series connection of at least two video processing components17-20;22-24;26-29.

The respective video processing components17-20;22-24;26-29may include a component input170,180,190,200,220,230,240,260,270,280,290and a component output171,181,191,201;221,231,241;261,271,281,291. At the component input, video images may be received by the respective component. Processed video images may be outputted at the component output.

As illustrated, each of the video processing components17-20;22-24;26-29may further include a control input172,182,192,202,222,232,242,262,272,282,292. Via the control input the video processing component may be controlled to be in an enabled or a disabled state. Furthermore, one or more parameters of a processing operation to be performed by the video processing component may be controlled via the control input, such as e.g. the resolution of an image, the output format or other parameters. As shown inFIG. 1, the control inputs may for instance be connected to a mode controller36which can control the state of the individual video processing components17-21;22-24;26-29.

In the enabled state, the respective video processing component17-20;22-24;26-29may obtain the processed video images by performing a respective processing operation on the received video images.

In the disabled state, the processed video images are inputted to a node downstream of the video processing component without being subjected to the processing operation. Thus, the video images received by a video processing component in the disabled state are received by the component or output positioned downstream and directly adjacent of the respective disabled component without being subjected to the processing operation. Accordingly, by setting the mode of the video processing components in a chain16,21,25, the respective chain16,21,25can perform a selected sequence of video processing operations. Thereby, the video processing system10can be used for a large variety of applications, while the need for a complete overhaul of the video processing system10for each application may be obviated.

The video processing chains may be implemented in any manner suitable for the specific implementation. As shown inFIG. 1, the video processing chain16,21,25may be implemented as a chain in which the video images pass through (at least a part of) the video processing component without being subject to the processing operation thereof. For instance, the video processing component17-20;22-24;26-29may be transparent in the disabled mode or the video processing component17-20;22-24;26-29may obtain the processed video images by forwarding the received video images to the component output without performing the processing operation.

As shown inFIG. 2the video processing chain16,21,25may also be implemented as a chain which includes one or more bypasses paths B17-B20which can be used to bypass a disabled video processing component. In the example ofFIG. 2, at the input of switching devices S17-S20the video images for a video processing component can be received. The switching devices S17-S20are connected with a first output to the video processing component and with a second output, via the bypass path B17-B20, to a downstream video processing component which is positioned, in a video processing direction, downstream of this video processing component or to the end of the chain16. In the example ofFIG. 2, for example, the bypass paths B17-B20connect a switch output positioned upstream of the video processing component to a, directly adjacent, downstream node (the node being inFIG. 2the input of a downstream switching device S18-S20or the chain output13). The switching device S17-S20can be controlled via the control input172,182,192,202to connect its input to a selected one of its outputs. Accordingly, the switching device S17-S20can either input received images into a video processing component (in which case the video processing component is enabled) or to input the video images into a video processing component downstream thereof via a bypass B17-B20(in which case the video processing component is disabled).

The switching devices may be implemented in any manner suitable for the specific implementation. The switching device may for instance be implemented as a hardware or software device which copies the data presented at its input to its output, a device which re-routes the data flow while bypassing the processing of the respective video processing components. The switching device may also be implemented as a direct memory access (DMA) mechanism which is used by the mode controller to transfer data between blocs and which is dynamically reprogrammed to bypass the disabled components. However, the switching devices may also be implemented in a different manner.

As shown inFIG. 1, a video input11may be connectable to a camera30and the video processing system may include a first video output14connectable to a display device34, such as a liquid crystal display, a cathode ray monitor, a projection system or other device for visually outputting images, and a second video output13connectable to a video coding or video storage device31. The two or more video processing chains may then include a first chain21, such as a preview or viewfinder chain, connecting the video input11to the first video output14. The first chain21may be arranged to pre-process the video images received at the video input in a manner suitable to be outputted by the display device.

As shown inFIG. 1, for instance, the first chain may resize the video images and/or adjust the colours and/or rotate or mirror the video images, such that they can be displayed together with video images from another chain at the same display in a manner convenient for a user of the display. For instance, the video images outputted by the first chain may be manipulated such that they have the same orientation and/or colour spectrum as the video images from the other chain or be resized such that they are (much) smaller than the video images from the other chain.

The second chain may connect the video input11to the second video output13and for example pre-process video images received at the video input in a manner suitable for the video coding device or a video storage device. For instance, the second chain may digitally zoom in the video images and/or reduce the dimensions of the video images and/or adjust the colour spectrum of the images and/or change the orientation of the video images before they are transmitted to e.g. a video encoder31downstream of the second chain16.

The video processing system10may for instance include two or more video outputs13-15and two or more video processing chains16,21,25, each of the chains connecting a video input to a respective one of the video outputs. In the example ofFIG. 1, for instance, chains15,21connect the same video input11to different video outputs13resp.14. As shown inFIG. 1, the video processing system10may for example include a pre-processing chain16. The pre-processing chain may for instance connect a video acquiring device, such as a video camera, to an input310of a video encoder31or to a video storage device, as illustrated inFIG. 1with the video capture chain16. The chain may for example be a post-processing chain which for instance connects a source of processed video images, such as a video decoder33, to a visual output device such as a display34.

As illustrated with the arrows inFIG. 1, the video processing chain may include a video processing component positioned upstream (in a processing direction of the video images) in a chain16,21,25which is connected with the respective output171,181,191;221,231;261,271,281to the input181,191,201;221,231,241;271,281,291of a downstream video processing component18-20;22-24;26-29. As illustrated inFIG. 1, the chains16,21,25may include a most upstream video pre-processing component17;22;26connected to the respective video input11,12and a most downstream video pre-processing component20,24,29which is connected to a respective video output13-15.

As shown in the example with a post-processing chain25, the video processing system10may include a linear, un-branched chain, in which each upstream component is connected to a single downstream component, as for example illustrated with a downsize component28. However, the video processing system may also or alternatively include a branched chain, as illustrated with a viewfinder chain21which is a branch of a pre-processing chain16. Thereby, video components17-19can be shared by two or more chains and hence the amount of components in the video processing system10may be reduced. In the branched chain16,21, one or more upstream components may be connected to two or more downstream components, as e.g. illustrated with a mirror and flip component20and a downsize component22.

In the enable mode, for instance, an upstream component may perform a processing operation on the received video images at its input and transmit the processed video images to the input of a downstream, directly adjacent video processing component in the chain16,21,25. In case the upstream component is in the disabled mode, the upstream component may simply forward the received video images and hence be regarded as transparent. The downstream component may then perform, when in the enabled mode, its respective video processing operation and thereafter transmit the, thus processed, video images further. Thus, the video processing system10may be configured to perform a desired sequence of two or more video processing operations by simply putting the components for the desired operations in the enabled mode and the putting the components for the not-desired operations in the disabled mode.

The video processing chains may include any video processing components suitable for the specific implementation. As shown in the example ofFIG. 1, the pre-processing chain16may for instance include, in the processing direction, a digital zoom component17, a downsize component18, a colour space conversion component19and a rotate, mirror and flip component20. It has been found such a pre-processing chain can be used in a large variety of applications.

The view-finder chain21may for example be connected to the output of the colour space conversion component19. The view-finder chain21may include, in addition to the colour space conversion component19and the other components in the pre-processing chain16upstream of the colour space conversion component19, a downsize component22, a colour space conversion component23and a rotate, mirror and flip component24. It has been found such a view-finder chain21can be used in a large variety of applications.

The post-processing chain25may for instance include, in the processing direction, a post-filtering component26(which may filter, e.g. deblocking or deringing, an image after decompression to enhance the image, for example to remove artefacts caused by image compression), a colour space conversion component27, a downsize component28and a rotate, mirror and flip component29. It has been found such a post-processing chain25can be used in a large variety of applications. It will be appreciated that video processing components, such as a colour space conversion component or a rotate, mirror and flip component, are known in the art and for sake of briefness the components are not described in full detail.

The video processing components may be disabled or enabled depending on the specific application. Tables 1 show examples of mode selection of for the video processing components in the example ofFIG. 1for different scenarios of use of a combined video generating and displaying system, such as a mobile phone or other apparatus with a camera and a display. As can be derived form table 1, the video processing system10may be adjusted in a simple manner for the specific application, such as for instance for processes with different orientation of an image capturing device and/or display device.

For example, scenarios 1 and 2 may relate to an image and video capture process with a simultaneous display of the captured image or video in a viewfinder window (e.g. to allow an operator to view the image or video that is being captured), without displaying video from other sources. Scenarios 3 and 4 may relate to a process in which at the same time images or videos are being captured and video received from a source is being displayed.

In table 1, scenario 1 represents a case in which a camera is positioned at a side opposite to the display, with the display in portrait mode. Scenario 2 represents a case in which a camera can be either at the same side as the display or at a side opposite to the display, with the display in portrait mode. Scenario 3 represents a case in which a camera is positioned at the same side as the display, with the display in portrait mode and with a connection to a source of processed video images, such as to a voice and video over IP network (V2IP), a video decoder or other source of processed video images. Scenario 4 represents a case in which a camera is positioned at the same side as the display, with the display in landscape mode and with a connection to a source of processed video images, such as to a voice and video over IP network (V2IP), a video decoder or other source of processed video images.

FIG. 2schematically shows an example of a combined system500for displaying and acquiring video. As shown, the system500may include a display34connected to an output of the video processing system10, at which the video images can be visually outputted. The system500may further include a camera30which can capture video images. The camera30may for instance be connected to the video input to which a pre-processing chain16is connected and the output of the pre-processing chain16may for instance be connected to a video encoder, a video storage device (which may include volatile or non-volatile memory, such as hard disk, a flash memory or other) or a network such as a V2IP network.

In the foregoing specification, the invention has been described with reference to specific examples of embodiments of the invention. It will, however, be evident that various modifications and changes may be made therein without departing from the broader spirit and scope of the invention as set forth in the appended claims. For example, the video processing system10may be implanted as an integrated circuit. Also, for example, downstream of the video processing system10, further processing devices may be provided, such as a device32that is connected with inputs320,321to different video processing chains21,25and combines separate video images from different sources into a single video image in order to output the video images simultaneously at an output322of the device32. Also, the viewfinder chain21in the example ofFIG. 1may be implemented as a chain separate from the pre-processing chain and e.g. be directly connected to camera30, via the video input11. Furthermore, one or more of the chains16,21,25may be used to process a single image. For instance, the pre-processing chain16may process a picture taken with a (digital) camera while viewfinder chain21display video in order to enable an operator of the system10to select a the picture.

Also, the invention is not limited to physical devices or units implemented in non-programmable hardware but can also be applied in programmable devices or units able to perform the desired device functions by operating in accordance with suitable program code. The invention may also be implemented in a computer program for running on a computer system, at least including code portions for performing functions of a video processing system when run on a programmable apparatus, such as a computer system or enabling a programmable apparatus to perform functions of a device or system according to the invention. Such a computer program may be provided on a data carrier, such as a CD-rom or diskette, stored with data loadable in a memory of a computer system, the data representing the computer program. The data carrier may further be a data connection, such as a telephone cable or a wireless connection.

Furthermore, the devices may be physically distributed over a number of apparatuses, while functionally operating as a single device. For example, the video processing components may be implemented as discrete hardware components connected in a manner suitable to form the video processing system. Also, unless specified otherwise, the elements may be connected in any manner suitable to transfer the video images from or to the respective elements. The connections may for example be direction connections or indirect connections. For instance, although the video processing system10and the display34are connected in the example ofFIG. 3, further processing components may be present between the video processing system10and the display34, such as the device32. Also, for instance, the video storage device31may be connected with an output to the post-processing chain25, for instance to enable a visual output of a picture taken with a camera on a display of said camera.