The invention relates particularly to improving the image quality of a video recording recorded at a low bitrate.
When a video camera is moved too rapidly during the recording process, the result is blur in the video image. When looking at a video image, too rapid motion during the recording is shown as disturbing. Typically the image is blurred and details cannot be distinguished, because the image is not sharp. Usually this kind of video recording is useless. Therefore already the instructions advise the user how to move the camera during the recording process, and point out that too rapid motion is recorded as blurred.
Typically a blurred video recording is rejected as useless, and it is replaced by a new recording. Thus the cameraman has a chance, through trial and error, next time pay more attention to the moving of the camera and to the speed of the motion, and further to try and reduce such moving of the camera that is excessive or too rapid from the point of view of the final video recording.
Generally the user realizes that too rapid motion has a negative effect on the final image when he reads the warnings in the instructions, or when he moves his video camera too rapidly when shooting and sees that the quality of the recorded image is poor. Although the camera motion during the shooting process affects image quality, the user detects the effects of the motion only when looking at the final picture.
The object of the present invention is to help the user shoot and record higher-quality video image.
This object is achieved so that the user is given an indication of such camera motion during the recording process that is too rapid and weakens the image quality.
The invention is characterized by what is set forth in the characterizing parts of the independent claims. Other embodiments of the invention are described in the dependent claims.
In a method according to the embodiments of the invention, in order to facilitate the controlling of the image quality in a video recording carried out by a video camera, the motion of the video camera is observed during the recording process, and any such detected motion of the video camera that weakens the image quality of the video recording is indicated to the user. The motion of the video camera is observed in an image processing step. According to an embodiment, when controlling the motion of a video camera according to the embodiments, motion vectors already produced in the image processing are made use of. According to an embodiment of the invention, the magnitude and direction of the motion vectors are compared, and in case a difference is detected to be larger than a given predetermined threshold value, i.e. there is detected too rapid motion that weakens the image quality of the video recording in question, there is generated an indication to the user of the detected video camera motion that weakens the image quality.
A device according to an embodiment of the invention, provided with a video camera for shooting the video recording, includes means for observing the motion of the video camera during the recording process, and means for indicating to the user such motion that weakens the image quality of the video recording in process. A device according to an embodiment of the invention is a video camera provided with means for performing the methods according to the embodiments of the invention. A device according to an embodiment is provided with means for comparing the magnitude and/or direction of the motion vectors. In addition, the device according to the embodiment comprises a source encoder for generating motion vectors and a memory unit for recording the data. In the memory unit, there is typically saved data generated in the image processing, such as the data of the motion vectors. In addition, the memory unit may contain a code for running the methods according to the embodiments of the invention. According to another embodiment, the device includes software for running the methods according to the embodiments of the invention. The software comprises program means for observing the motion of a video camera during the recording process, and means for indicating to the user such motion of the video camera that weakens the image quality of the video recording in question.
According to the embodiments of the invention, too rapid motion of the camera that weakens the image quality is indicated to the user immediately during the shooting process. The lower the bitrate by which the camera records successive images, the more the motion is in the final image seen as disturbing blurriness. Hence the embodiments of the invention are particularly useful when shooting video recordings at low bitrates. The observation of the video camera motion takes place already in the image processing step, which means that the user obtains indication of too rapid motion already during the shooting, and can thus influence the final video recording already in the shooting step, and not only after seeing the final poor-quality picture. This is particularly useful when shooting unique targets or situations that cannot be repeated and rerecorded. The arrangement according to a preferred embodiment of the invention can be realized easily, because new devices are not needed. The method according to the embodiments of the invention can be realized by means of a software component or by a program code saved in the memory. According to an embodiment, video camera motion is observed by means of motion vectors. Motion vectors are generally used in image processing, which means that they are calculated for the images in any case. Thus the use of motion vectors in the various embodiments does not typically increase the power or capacity requirements of the device, because the motion vectors are already generated as part of the image processing.
Let us now observe embodiments of the invention with reference to the appended drawings, where
Said drawings are referred to in the following description of the embodiments of the invention, and in the further specification, the drawings constitute part of the description. The drawings illustrates examples of embodiments where the invention can be applied. Naturally also other embodiments can be utilized, and structural and functional modifications can be made in the embodiments without departing from the scope of the invention.
When the motion vectors under observation are selected in step 103, the motion vectors are mutually compared in step 104. There is typically defined a threshold value for the direction and magnitude of the motion vectors, as well as for the differences between their points of observation, and the motion vectors are compared with said threshold values. When observing video image, the motion between successive images is fairly small, because the image density per unit of time is fairly high. On the basis of this, there is defined a threshold value, and when said threshold value is surpassed, the motion in question is more probably the motion of the camera than the motion of a target shown in the image. In this embodiment, in step 105 it is for example observed whether the motion vector magnitude surpasses a given predetermined threshold value. In case the magnitude is higher than the defined threshold value, we proceed to step 107, where an indication of too rapid camera motion is given to the user. In step 105 the camera motion can also be detected on the basis that the magnitude of the motion vectors on different sides of the image is equal. In that case the motion in question is more probably the motion of the camera than that of a recorded target. In case the value detected in step 105 does not surpass the threshold value, and disturbing camera motion is not detected, we proceed to step 106, where the directions of the motion vectors, as well as differences in the directions, are observed. In case the directions of the motion vectors observed at different points of the image differ more than for a given predetermined threshold value, the phenomenon in question is probably the motion of a given target shown in the image. On the other hand, camera motion is focused with the same magnitude and in the same direction on the whole image area, i.e. the directions of the motion vectors do not remarkably differ. In case the directions of the motion vectors under observation, located in different parts of the image, are the same at a given accuracy, the phenomenon in question is probably camera motion. If said motion is detected to be so fast that it disturbs the produced image, this is indicated to the user according to step 107. When the user has been given an indication by generating by the device an effect detectable for the user that indicates too rapid camera motion, the system proceeds to step 108. In case disturbing motion was not detected in steps 105 or 106, the execution proceeds to step 108. In step 108 it is observed whether the user is still recording with his video camera. If the user has finished shooting, the process according to the embodiments of the invention is terminated in step 109. In case the camera is active and shooting is going on, the execution proceeds to step 103 and select the next motion vectors under observation.
The recorded video data, i.e. signal, is fed in through the input side. First the signal is source encoded by a wave form encoder 202, where a lossy video signal compression is carried out. An entropy encoder 203 converts the output from the wave form encoder 202 into a binary sequence. The entropy encoder 203 also produces motion vectors. Thus, the comparison of the motion vectors according to the embodiment of the invention is carried out after this image processing step, when the motion vector is produced. Already produced motion vectors can be utilized when observing excessive motion of the video camera according to the embodiments of the invention.
The source encoded binary sequence can be for example saved in the memory unit 204 of the device. Typically also the produced motion vectors are saved in the memory unit 204. The memory unit 204 can be the memory unit of the device, and a certain part of it can be allocated for the use of the source encoding block 201. The source encoding block 201 can also include its own separate memory unit. Motion vectors can be saved for instance so that the data is stored for a certain time. Typically a certain amount of memory is reserved for the motion vectors, and when said memory section is full, the next new motion vector is saved so that it replaces the oldest previous vector. According to an embodiment of the invention, the memory unit 204 also includes a set of instructions, for example a command set to be run, a software or a program code for performing the methods according to the embodiments of the invention.
Some devices also include a feature for transmitting video data to another device. In that case the binary sequence is transmitted to a transmission encoder 205 that encapsulates the compressed video data according to the applied transmission protocol, and the encapsulated video data is transmitted along the transmission channel 206 to the receiver. In the arrangement of
The signal coming from the video camera to the source encoder is also called a video sequence. A video sequence is composed of a series of still images. According to an embodiment of the invention, the still images in a video recording composed of still images are compared in order to detect motion of the video camera. In case in the still images to be compared, either successive still images or still images taken at certain intervals, there is detected a difference that can be seen in the final video image, this is indicated to the user already during the recording process. Still images can be observed in the video sequence processing step, as part of image processing. In the image processing step, the video sequence is typically compressed by reducing redundant elements that do not affect the final image quality. The redundancy in a video sequence can be classified as a spatial, timewise or spectral redundancy. Spatial redundancy refers to corrections between adjacent pixels in the same image. Timewise redundancy is based on the fact that the targets shown in the previous image are probably shown also in the current image. Spectral redundancy refers to corrections between the various color components of the image.
Timewise redundancy can be reduced by producing motion compensated data. This kind of data describes the relative motion between the previous image and the current image. The current image is typically created so that it is forecast on the basis of the previous image. The technique used in the method is generally called motion compensated forecast or motion compensation. This method can also be utilized so that only certain parts or areas in the image are forecast on the basis of the previous image.
According to an embodiment, camera motion can be detected by means of external sensors, for example acceleration sensors. Signals from external sensors are observed for detecting camera motion. Typically for example acceleration has a threshold value, and when said threshold value is surpassed, the image quality is weakened remarkably and visibly. Detected too rapid motion is indicated to the user according to the embodiments.
Protocols related to digital video data define the form of the video data and include video data compression algorithms. Generally known protocols are for example MPEG (Motion Picture Experts Group) protocols and H.261, H.263 and H.264 based on discreet cosine transform. When compressing video data, i.e. during the encoding process, the protocols define how the redundant image areas of the previous frames are made use of. In a much used compression technique, for the encoded frame part, there is produced a motion vector that indicates the point where the corresponding image element was located in the previous image. An advantage in the use of motion vectors is that the quantity of the transmitted or saved data is remarkably reduced, because only the difference between two images must be saved. Consequently, motion vectors are generally used in image processing.
For processing video data, a signal is typically divided into frames with a certain size.
A motion vector can be forecast for the macro block to be encoded. The motion vector of the macro block can be forecast on the basis of the motion vectors of the macro blocks located adjacent thereto, either immediately, orthogonally and/or diagonally. In addition to the motion vectors of the already verified adjacent frames, or instead of them, the forecast can take into account the motion vectors of those macro blocks that in the previous framework are placed adjacent to the macro block located in the respective place. According to an embodiment, a macro block motion vector is forecast on the basis of selected reference motion vectors. According to another embodiment, an average is calculated from the reference motion vectors. According to a third embodiment, a median is calculated from the reference motion vectors. The reference motion vectors can also be weighted when evaluating the next motion vector. When a motion vector is forecast for the macro block to be encoded, the forecast can be used as a motion vector for the macro block to be encoded, or it can be used as a starting point for the encoding process, where the final motion vector for the macro block is defined. Every macro block does not necessarily have a motion vector. In that case, there is typically used a predetermined standard value, or the value of the motion vector of the macro block that in the previous frame was located on the corresponding spot.
According to an embodiment of the invention, the motion vectors of still images, generated by the source encoder, are compared so that all motion vectors of an image are mutually compared. In case the direction and length of the observed motion vectors is roughly the same, the phenomenon in question is camera motion. According to another embodiment of the invention, the motion vectors of still images, generated by the source encoder, are compared so that the motion vectors of still images taken at certain intervals are observed. According to an embodiment of the invention, the motion vectors of still images are compared block by block, so that the motion vectors of a certain block in the still image are mutually compared. According to an embodiment, the motion vectors of the still images are compared so that the motion vectors of a certain target shown in the still images are mutually compared. By observing the motion vectors according to the embodiments, it is detected already in the recording step whether the image includes so much motion that the video recording cannot be shown as a sharp image. According to the embodiments, an indication is given to the user to the effect that the resulting video recording is not sharp, but the image quality is poor and blurry. According to the embodiments, the user receives this indication, when excessive, disturbing motion is detected. Said motion can be due to the motion of the camera or the motion of the recorded target.
According to an embodiment, motion vectors saved in the signal processing block or in the memory unit 404 of the device are observed by comparing their magnitude and/or direction. According to an embodiment, the memory unit 404 includes, in addition to the motion vector data, a program code, according to which the motion vectors under observation are selected, and on the basis of which the motion vectors are compared. According to an embodiment, in case the direction and/or magnitude of all of the motion vectors under observation is the same at a given accuracy, the program code includes a command to indicate this to the user in a defined way. According to an embodiment, in case the magnitude and/or direction of the motion vectors under observation turns out to be higher than a predetermined threshold value, the program code includes a command to indicate this to the user in a defined way. The motion vectors are processed according to the commands and instructions of the program code by the processor 406. When an indication should be given to the user of too rapid motion, i.e. too big a difference between two motion vectors under observation, the processor 406 transmits a command for indicating excessive motion to the user. Generally the detected too rapid motion is indicated to the user so that there is produced a sound effect by sound reproduction means, a light effect by a light unit, a vibration effect by a vibration unit and/or a graphic effect on the display. The processor 406 can transmit a command for example to the light driver 407 for switching on the light unit 408 of the device or a signal light, to the display driver 409 for indicating the motion on the display unit 410 or to the loudspeaker 411 for producing a sound signal. Corresponding blocks by which an indication of detected too rapid motion can be given to the user during the video recording process are for example a vibration unit that is controlled through a vibration driver, or the sound reproduction means of the device, such as MIDI (Musical Instrument Digital Interface) or MP (MediaPlayer).
According to another embodiment, the arrangement includes software 405 by which the procedures according to the various embodiments of the invention are carried out by the processor 406. The software 405 for facilitating the observation of image quality includes program means for observing the motion of a video camera during the recording process, and program means for giving to the user, already during the recording process, an indication of too rapid video camera motion that weakens the image quality of the video recording in question. The software 405 includes program means for comparing the motion vectors and program means for giving an indication to the user, in case the magnitude and/or direction of the compared motion vectors selected from a still image is the same at a given accuracy and/or in case it is higher than a given predetermined threshold value. Generally the processing is carried out by a processor 406. An arrangement according to the embodiments of the invention can be realized by means of already produced motion vectors and a program code stored in the memory unit, or alternatively by means of a separate software component. Any additional devices are not needed. The arrangement according to the invention for indicating excessive camera motion during a video recording can be applied particularly in devices provided with a small camera typically having a low bitrate. Small cameras and low bitrates generally occur in portable devices, such as mobile phones, pen micros (PDA, Personal Digital Assistant), communicators and corresponding mobile devices.
Number | Date | Country | Kind |
---|---|---|---|
20045340 | Sep 2004 | FI | national |
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/FI05/50315 | 9/14/2005 | WO | 00 | 3/14/2007 |