Movement vector detecting apparatus

Abstract: A movement vector detecting apparatus comprising: a movement vector detecting circuit for dividing an input image into a plurality of blocks and for detecting a movement vector every block; and a movement vector calculating circuit for extracting areas which perform the same movement from the movement vectors from the movement vector detecting circuit and for calculating movement vector values in such areas by executing a weight averaging process according to position information which occupies in the area of each of the blocks. A video camera having such a movement vector detecting apparatus is provided.

Description: The present invention relates to the improvement of a movement vector detecting apparatus which is provided for an encoding apparatus for encoding a moving image signal or an image vibration correcting apparatus for correcting the effects of camera vibration in a moving image signal. Hitherto, known movement vector detecting methods for an encoding apparatus or an image vibration correcting apparatus include a time space gradient method, a correlation method based on the correlation arithmetic operation, and a block matching method as disclosed in U.S.P. No. 3,890,462, JP-B-60-46878, or the like. The time space gradient method is described in detail in B.K/P. Horn et al., "Artificial Intelligence 17", pages 185 to 203, 1981. The matching arithmetic operation is described in detail in Morio Ogami et al., "Information Processing", Vol. 17, No. 7, pages 634 to 640. July, 1976. The time space gradient method is a method whereby a movement amount of an image is expressed by d/Δ from a luminance difference d between frames (or fields) and a luminance difference Δ between pixels in a picture plane. According to this method, the luminance difference d between frames (or fields) is normalized by a signal Δ in a manner such that a signal which is obtained from a camera corresponds to a time average of-a field period and, as a movement amount of the image is large, an edge becomes dull and the luminance difference A between pixels decreases. On the other hand, according to the block matching method (also called a template matching method), an input image signal is divided into blocks of an appropriate size (for instance, 8 pixels x 8 lines), a difference between the present pixel and the pixel in a predetermined range of the preceding frame (or field) is calculated on a block unit basis, and the block of the preceding frame (or field) in which the sum of the absolute value of such a difference becomes minimum is searched. A relative deviation of the relevent block indicates a movement vector of such a block. According to the above conventional methods, however, when there are a plurality of different movements in the picture plane, only movement vectors of low reliability can be detected from the block which lies over the boundary of such different movements because of a mismatching of the corresponding point due to the appearance or hiding of an object to be photographed or an influence by the different movements of the other objects to be photographed. There is a problem in that an encoding precision of the encoding apparatus or a correction precision of the image vibration correcting apparatus remarkably deteriorates due to the erroneous movement vectors which are detected from such a block. It is the first object of the present invention to provide a movement vector detecting apparatus which can improve a detection precision of a movement vector in consideration of the above problems. According to the present invention, there is disclosed apparatus for calculating movement vectors for use in correcting movement in an image due to camera vibration comprising: a) movement vector detecting means operable to divide an input image into a plurality of blocks and to detect respective movement vectors defining image movement in each of the blocks; and b) movement vector calculating means operable to determine a movement detection area for movement detection consisting of a set of the blocks in which correlated image motion is determined to be present on the basis of the movement vectors and to calculate an average movement vector defining average image movement in the movement detection area based on the movement vectors of the blocks constituting the movement detection area; characterised in that the movement vector calculating means comprises movement vector evaluating means operable to evaluate for each block positioned in the movement detection area the reliability of the respective movement vector and to determine therefrom a respective weight coefficient, the movement vector calculating means being further operable to calculate the average movement vector by executing a weight averaging process in which the contribution of each movement vector is weighted according to its respective weight coefficient. The second object of the invention is to provide a video camera with an image vibration correcting apparatus which has the above movement vector detection apparatus and can detect and correct with high precision the effects of image vibration due to camera vibration. According to a preferred embodiment of the present invention, there is disclosed a video camera in which movement vector calculating means is constructed so as to calculate a movement vector value by performing a weighting process according to the position information of blocks which occupy areas in which the same motion is performed according to a spatial or time-dependent adjacency criterion for each block, thereby enabling a high accurate movement vector detection to be performed. The third object of the invention is to provide an image vibration correcting apparatus which detects image vibration by detecting a movement vector of an image, wherein by always optimizing a target area to execute the vibration correction, the correction operation can be performed at a high precision and a high reliability. To accomplish the above objects, according to a preferred embodiment of the invention, there is disclosed an image vibration correcting apparatus comprising: movement vector detecting means for detecting a respective movement vector for each block which is obtained by dividing an image into a plurality of blocks; vibration amount detecting means for detecting a vibration amount on the basis of movement vector information of an area composed of a set of blocks corresponding to an indicated target area which is obtained from the movement vector detecting means; correcting means for correcting a vibration; and driving means for correcting the vibration by driving the correcting means in accordance with the information from the vibration amount detecting means, wherein the apparatus further comprises boundary detecting means for detecting a boundary in the image and target area deciding means for deciding the area to be subjected to vibration correction on the basis of the boundary information from the boundary detecting means and the information from the movement vector detecting means and for communicating data defining target area to the vibration amount detecting means. According to another preferred embodiment of the invention, there is disclosed a vibration correcting apparatus comprising: movement vector detecting means for detecting a movement vector for each block which is obtained by dividing an image into a plurality of blocks; vibration amount detecting means for detecting a vibration amount on the basis of movement vector information of a set of blocks corresponding to an indicated target area which is obtained from the movement vector detecting means; correcting means for correcting vibration; and driving means for correcting the vibration by driving the correcting means in accordance with the information from the vibration amount detecting means, wherein the apparatus further comprises target area deciding means for applying different weights to the information from the movement vector detecting means, for adding the weighted information for a predetermined time, for determining the target area to be subjected to the vibration correction on the basis of each addition value, and for communicating data defining the target area to the vibration amount detecting means. Further another object of the invention is to provide a video camera having the above image vibration correcting apparatus. The above and other objects and features of the present invention will become apparent from the following detailed description and the appended claims with reference to the accompanying drawings. Fig. 1 is a block diagram showing a construction of a video camera having therein an image vibration correcting apparatus to which the first embodiment of the present invention is applied; Figs. 2A to 2C are diagrams showing a flow from the input of an image signal to the judgment of a target area; Fig. 3 is a diagram showing a binary map indicative of a target area in the first embodiment of the invention; Fig. 4 is a diagram showing an example of a convolution mask which is put on the target area in Fig. 3; Fig. 5 is a diagram showing another example of a convolution mask which is put on the target area in Fig. 3; Fig. 6 is a weight coefficient distribution diagram showing the reliability in the target area in the first embodiment of the invention; Fig. 7 is a weight coefficient distribution diagram when a whole picture plane becomes a target according to the second embodiment of the present invention; Fig. 8 is a diagram showing a reliability evaluation function according to the total number of weight coefficients in the second embodiment of the invention; Fig. 9 is a diagram showing an example of a convolution mask which is put on a target area according to the third embodiment of the invention; Fig. 10 is a weight coefficient distribution diagram when the mask of Fig. 9 has been convoluted to the target area map of Fig. 3; Fig. 11 is a block diagram of a video camera having therein an apparatus of the fourth embodiment according to the present invention; Fig. 12 is a diagram showing an example of a field image which is time-sequentially continuous in a tracking photographing mode; Fig. 13 is an optical flow which is obtained as a result of an arithmetic operation of two picture planes which are time-sequentially continuous; Fig. 14 is a diagram showing the result in the case where the optical flow of Fig. 13 has been added for a predetermined time; Fig. 15 is a block diagram of a video camera having therein an apparatus of the fifth embodiment according to the present invention; Fig. 16 is a model diagram of an edge existing in an image; Fig. 17 is a diagram showing a waveform when the edge of Fig. 16 has been subjected to a first order differentiation; Fig. 18 is a diagram showing a waveform when the edge of Fig. 16 has been subjected to a second order differentiation; Fig. 19 is a block diagram of a video camera having therein an apparatus of the sixth embodiment according to the present invention; Fig. 20 is a diagram showing a magnitude of a remaining component when a vibration state has been modeled by a cosine curve and added for a predetermined time; and Fig. 21 is a diagram showing a magnitude of a remaining component when a vibration state has been modeled by a sine curve and added for a predetermined time. The present invention will be described in detail hereinbelow on the basis of embodiments with reference to the drawings. Fig. 1 is a block diagram showing a construction of a video camera having therein an image vibration correcting apparatus to which the first embodiment according to the invention has been applied. In Fig. 1, reference numeral 10 denotes an object to be photographed; 20 an image pickup lens; 30 an image pickup element comprising, for example, a two-dimensional CCD; 40 a sample and hold (S/H) circuit to read out an output signal from the image pickup element 30 such as a two-dimensional CCD; 50 an automatic gain control (AGC) circuit to keep a signal level constant; 60 an analog/digital (A/D) converter; 70 a delay circuit to delay a color difference line-sequential signal from the image pickup element 30 such as a two-dimensional CCD by only a period of time of two horizontal scans; 80 a color signal processing circuit; 90 a digital/analog (D/A) converter to convert a color signal into a digital signal; and 95 a color signal output terminal. Reference numeral 100 denotes a low pass filter (LPF) to eliminate a color signal component which is mixed into a luminance signal; 110 an enhancer to enhance a high frequency component in the luminance signal; 120 a gamma corrector; 130 a movement vector detection circuit; 140 a microcomputer to judge the reliability of each block which is obtained by dividing a picture plane to detect a movement vector into a plurality of blocks; 150 a memory read-out control circuit; 160 a memory to store an image of a field or a frame; 170 a D/A converter to convert the digital signal into a luminous signal output; and 180 a luminance signal output terminal. The operation of the video camera with the above construction will now be described. The object 10 is projected onto the image pickup element 30 by the image pickup lens 20 and is photoelectrically converted into an electric signal by the image pickup element. The S/H circuit 40 samples and reads out an output signal of the image pickup element 30. The AGC circuit 50 automatically controls a gain of the output signal of the S/H circuit. The A/D converter 60 A/D converts an output signal of the AGC circuit 50. The delay circuit 70 of the two-horizontal scan period of time separates the color difference line-sequential signal from the image pickup element 30 into a "1H" delay signal and a "0H + 2H" delay signal and supplies to a luminance signal processing section (circuit after the LPF 100) and the color signal processing circuit 80. The color signal processing circuit 80 produces a color signal. The color signal is converted into the analog signal by the D/A converter 90 and is outputted from the color signal output terminal 95. On the other hand, the signal sent to the luminance signal processing section is first supplied to the LPF 100. The LPF 100 eliminates a carrier component from the color difference sequential signal and separates the luminance signal. The enhancer 110 executes a process to enhance a high frequency component such as an edge of the object or the like in order to improve a picture quality. Ordinarily, a secondary differentiation of a video signal is added to an original signal. The gamma corrector 120 prevents the saturation in a highlight portion and widens a dynamic range. The movement vector detection circuit 130 can be constructed by a circuit based on the foregoing time space gradient method or a circuit based on the foregoing matching arithmetic operation. In the embodiment, however, it is necessary to use a detecting method which can execute processes in a real-time manner. The memory 160 is a delay circuit to delay the luminance signal by a predetermined time (in the embodiment, one field time). The memory 160 stores the luminance signal which is preceding by one field and enables an arithmetic operation based on the time space gradient method or a correlation arithmetic operation with the present field to be performed. The microcomputer 140 first extracts a target area comprising a set of blocks and which is a target for correction and generates a target movement vector due to vibration from the distribution (optical flow) of the movement vectors corresponding to blocks in the set and which are detected by the movement vector detection circuit 130. The microcomputer 140, further, executes a weighting process to each block according to the degree to which the block is surrounded by other blocks of the set and calculates a movement amount of the image at that moment. The memory read-out control circuit 150 controls the read-out position of memory 160 so as to offset (or correct) the target movement vector calculated by the microcomputer 140. The luminance signal read out from the memory 160 is converted into the analog signal by the D/A converter 170 and is outputted from the luminance signal output terminal 180. A method of evaluating the reliability of the movement vectors which are executed in the microcomputer 140 will now be described with reference to Figs. 2 to 6. Figs. 2A to 2C are diagrams showing a flow from the input of the image signal to the judgment of an area (hereinafter, referred to as a target area) to be subjected to image vibration correction at that moment. Fig. 2A shows an input image which is divided into (8 x 6) blocks. Fig. 2B shows the result of the detection of the movement vectors performed for each block. A distribution diagram of such movement vectors is generally called an optical flow diagram. In Fig. 2B, it will be undersood that areas which largely perform two different motions exists in the central portion and a peripheral portion of the picture plane. Fig. 2C shows the result in which the target area has been extracted from the optical flow diagram. As a method of extracting the target area from the movement vectors, there is a time direction adding method of movement vectors of each block disclosed in Japanese Patent Application No. 63-269554 which has already been filed or the like. Fig. 3 shows a binary target area map (effective area) in which "1 value" is allocated to the extracted areas and "0 value" is allocated to the area out of the target. Generally, the target area map is multiplied to the detected movement vectors and the effective area is extracted and the movement vectors in the effective area are simple averaged by a uniform weight, thereby obtaining a movement amount of the image. Fig. 4 shows an example of a convolution mask which is put on the target area map as shown in Fig. 3. The mask of Fig. 4 denotes that in the case where blocks adjacent to the present target blocks in the vertical and lateral directions exist, a weight of 1 unit is given to the present target blocks, respectively. When there are non-target blocks adjacent in an oblique direction relative to a particular target block a weight of 0.5 units is given to the target block. In this way, the weight is raised according to the number of other blocks which surround the present target blocks. The reason why the weight for target blocks with non-target blocks neighbouring in the oblique direction is low is based on the characteristic that movement of the image signal generally has a small amount of oblique component. The convolution is executed for only the effective blocks (blocks in which the value "1" has been inserted) as a target. Or, the target area map is subjected to the AND arithmetic operation to the result in which the convolution has been performed to the whole picture plane, and the value of the non-target area (invalid area) is held to "0". Fig. 5 shows an example in case of expanding the convolution mask from "3 x 3" shown in Fig. 4 to "5 x 5". A size of convolution mask or weight coefficients in the mask (namely, a method of allocating weight values) can be also switched in accordance with image pickup conditions. Fig. 6 shows the result in the case where the mask of Fig. 4 has been convoluted to the effective area of the target area map of Fig. 3. Coefficient values shown in Fig. 6 show the reliabilities of the movement vectors which are detected from the relevant block. it is sufficient to execute an averaging process of the movement vectors in accordance with the weights. The read-out position of the image from the memory is decided by using the movement vectors obtained by the above processes and a corrected image in which the unpleasant vibration component has been corrected is outputted from a luminance signal output terminal 180. (Second embodiment) According to the above first embodiment, the weight averaging process of the movement vectors has been executed to the effective area of the target area map in accordance with the result in which a certain mask has been convoluted. In the second embodiment, however, the reliability of the target movement vector itself obtained in the first embodiment is newly evaluated by using the total number of weight coefficients obtained as a result of the convolution of a certain mask, namely, by using the total number of weight units. The second embodiment can be also used together with the first embodiment. Fig. 7 shows the result in which the convolution mask of Fig. 4 was put in the case where it is determined that all of the "8 x 6" blocks in the picture plane are effective. In this case, the total value of all weight coefficients in Fig. 7 is equal to 282 and is the upper limit of the such a total number. Since the reliability of the movement vectors which are detected from the relevant area is high as the area of the target area is large, the reliability of the target movement vector can be newly evaluated from the magnitude of the total value of weight coefficients. Fig. 8 shows a reliability evaluation function according to the total value of weight coefficients. When the total number of units is small, the extracted area is small or the extracted areas separately exist. In any of the above two cases, since the possibility that the movement vectors were erroneously detected is high, a small coefficient less than "1" is multiplied, thereby suppressing an influence on the subsequent processes. Now, assuming that the number of blocks-in the picture plane is equal to "M x N", the distribution of the weight coefficients is expressed as follows. 0 ≦ (the total number of units) ≦ 7MN - 4M - 4N + 2 The above processes are executed by the microcomputer 140 in Fig. 1. (Third embodiment) In the above first and second embodiments, the reliability has been evaluated by using the information of the spatial arrangement of the target blocks as a criterion. According to the third embodiment, however, such a concept is expanded in a time base direction. Generally, a correlation in the time direction of a moving image is high. For instance, when the object is traced and photographed, the position which the object occupies in the picture plane is strongly restricted at the position located in the preceding picture plane (preceding field) and the.possibility of the object appearing in every field without positional correlation is extremely small. Namely, the possibility of the effective area in the present picture plane appearing at a position near the area which has been regarded as an effective area in the preceding picture plane is high. Therefore, each block which has been judged as an effective area. in the present picture plane defines the centre location of a convolution mask having a gentle weight coefficient distribution and an AND operation is executed between such a map and the target area map which will be obtained in the next picture plane. Thus, it is possible to evaluate the reliability utilizing the correlation in the time direction of the positions in the picture plane of a certain area. An embodying procedure will now be described with reference to Figs. 9 and 10. Fig. 9 shows a convolution mask which is put on the target area map obtained in the present picture plane. Since it is considered that a deviation of the position of an object between images occurs at the same probability in every direction of 360°, the weight coefficient distribution of the mask is also isotropic. Fig. 10 shows the result in which the mask shown in Fig. 9 has been convoluted to the target area map shown in Fig. 3. By executing an AND arithmetic operation between the weight coefficient distribution shown in Fig. 10 and the target area map which will be obtained in the next picture plane, the reliability of each block can be easily evaluated. The above processes are executed by the microcomputer 140 in Fig. 1. According to the foregoing embodiment, the reliability of the movement vector which is detected is evaluated by the spatial or time-dependent adjacency degree (approach degree) of each block and the weighting process according to the reliability evaluation is executed to the movement vector. Therefore, it is possible to improve the precision of the moving image encoding apparatus or image vibration correcting apparatus whose precision has remarkably been deteriorated by movement vectors of low reliabilities which are detected from hlocks including boundary portions of the target in which different motions inherently exist. According to the above embodiment as described above, the apparatus comprises: the movement vector detecting means for dividing an input image into a plurality of blocks and for detecting respective movement vectors for each block; and the movement vector calculating means for extracting target areas in which the same motion is performed from the movement vectors from the movement vector detecting means and for calculating the average movement vector values of such target areas by executing the weight averaging process according to the position information occupied by each of the blocks or the movement vector calculating means for extracting the target areas in which the same motion is performed from the movement vectors from the movement vector detecting means and for calculating the movement vector values in such target areas by executing the weight averaging process according to the position of each block in the input image, wherein the average movement vector value is calculated by executing the weighting process according to the position information which occupies in the areas in which the same motion is performed of each block or the position information which occupies in the input image of each block, namely, according to the spatial or time-dependent adjacency degree of each block. Consequently, the detection precision of the movement vector can be improved. The fourth to sixth embodiments of the present invention will now be described. These embodiments are based as a prerequisite on the vibration correcting apparatus in which average movement vector information of the area corresponding to the designated target area on the picture plane is detected and the vibration amount is detected on the basis of the average movement vector information and the vibration correcting means is made operative to thereby correct the effects of vibration. The determination of the target area to detect the vibration is optimized. Prior to explaining these embodiments, the background of such a kind of vibration correcting apparatus will be first described. In a photographing optical apparatus such as camera, video camera, electronic camera, or the like, camera vibration makes it hard to see the image and becomes a cause of malfunction irrespective of whether the apparatus is a measuring instrument for an industrial use or an apparatus for a public use. Particularly, when photographing during walking, photographing from a moving vehicle, or photographing at a location where there is much vibration, vibration of the picture plane easily occurs. Therefore, various kinds of methods of correcting picture plane vibration have conventionally been proposed. For instance, according to the vibration correcting camera disclosed in JP-A-61-248681, an incident image is converted into an electric signal by an image pickup system comprising a lens system and a photoelectric converting element. The electric signal is further subjected to predetermined signal processes by the circuit at the next stage and is converted into the television image signal and supplied to a monitor apparatus. The TV image signal is also supplied to an image vibration detecting circuit. By getting a correlation between two picture planes which are separated from each other by a predetermined time interval, the magnitude and direction of the image vibration is detected. On the basis of the result of the detection, the lens system is driven and controlled in such a direction as to offset the image vibration. On the other hand, according to "Picture Plane Vibration Correcting Apparatus", The Japan Society of Television, Technical Report Vol. 11, No. 3, pages 43 to 48, PPOE, 87 - 12, May. 1987, between two picture planes which are separated from each other by a predetermined time interval, correlation is obtained for every small area (hereinafter, referred to as block) which is obtained by equivalently dividing the picture plane into 140 small areas, thereby detecting the magnitude and direction of the image vibration with respect.to the whole picture plane. The results of the detection are subjected to a decision by majority, namely, the area of the maximum area in which the detected movement vectors are preferably arranged is selected as a target area for vibration correction, thereby judging the magnitude and direction of the picture plane vibration. The area corresponding to the preceding picture plane is extracted from the memory in which the input image has been stored so as to offset picture plane vibration. Enlarging and interpolating processes are executed and the resultant data is outputted as an output image. Further, according to "Tracking Area Deciding Method" which has already been filed by the same applicant as the present invention in JP-A-2-117276, a tracking area is automatically judged by accumulating the movement vectors detected for every block for a predetermined time, and the optical correcting system (variable vertical angle prism) put in front of the lens system is driven so as to correct the average movement vector detected in the tracking area, thereby suppressing the picture plane vibration. The vibration correction process denotes a function to correct the camera vibration. The term "tracking" denotes a function of the camera to track a moving object. The principle processes and control methods of those functions are equal. In the above example, however, there is a problem such that an outline of the area to be tracked is obscure because of a deterioration in precision of the movement vectors in the boundary area of the area to be tracked and the precision of the movement vectors indicative of the picture plane vibration is deteriorated by movement vectors of low reliability which are generated from those blocks including the outline portion. Even in cases other than image tracking for instance, when the operator wants to perform vibration correction to a background existing in a peripheral portion in the picture plane when some moving object or motion object exists in the central portion, the above problem occurs in the boundary region of such an object. The causes of such a problem are based on the hiding or appearance of the image in the outline portion of the object to be photographed in association with the movement or motion of the object. In such a case, since there is no guarantee of the correspondence between the front and after images, only movement vectors of low reliability can be obtained. As another problem, according to the vibration correcting camera disclosed in JP-A-61-248681 as a first example mentioned above, the magnitude and direction of the image vibration are detected by obtaining a correlation between the images which are separated from each other by a predetermined time. Therefore, it is desirable to preserve one picture in one image. It is difficult to apply such a technique to the case where a partial motion or modification occurs in the image or the case where the background continuously changes in the tracking photographing mode. Therefore, such a technique can be used in only a limited application field. According to "Picture Plane Vibration Correcting Apparatus" as a second example mentioned above, on the other hand, since the area (hereinafter, referred to as a target area) to be at present subjected to vibration correction is determined by a method of decision by majority in a still image photographing mode such that the operator wants to track a small object or to perform vibration correction to the background, in the case where the object to be photographed is larger than the background portion and the movement vectors of the object are preferably arranged, or the like, the wrong area for photographic purposes is subjected to vibration correction. According to "Tracking Area Deciding Method" as a third example mentioned above, the picture plane is divided into a plurality of areas (blocks) and the movement vectors detected for every block are accumulated for a predetermined time, thereby deciding the target area for vibration correction. Therefore, such a method is good even for a partial motion in the image and can realise vibration correction of the highest fidelity according to the will of the photographer. There is, however, a case where the accumulation value which is obtained by accumulating the movement vectors detected from the target area for a predetermined time is insufficiently small. Such a phenomenon occurs particularly in the case where the period of time is longer than the accumulation time and low frequency vibration has occurred. In such a case, the division of the target area/non-target area cannot be correctly performed. It is the first object of the embodiment is to provide a vibration correcting apparatus which can accurately perform vibration correction of an object to be tracked and, further, the vibration correction of the background without being influenced by the moving object or motion object. The second object of the embodiment is to provide a vibration correcting apparatus which can accurately execute the vibration correction in any photographing situation. According to the embodiment, therefore, the apparatus comprises: boundary detecting means for detecting a boundary in an image; and target area deciding means for deciding an area to be subjected to the vibration correction on the basis of boundary information from the boundary detecting means and information from movement vector detecting means and for communicating data defining the target area to vibration amount detecting means, wherein the boundary in a picture plane is detected by a movement vector distribution or a Laplacian arithmetic operation of an input image and the area to be subjected to the vibration correction is determined by the detected boundary and the movement vector distribution. On the other hand, the apparatus has target area deciding means for applying different weights to the information from the movement vector detecting means, for adding the weighted information for a predetermined time, for deciding the area to be subjected to the vibration correction on the basis of the addition values, and for communicating data defining the target area to the vibration amount detecting means. The target area is determined from the magnitudes of the addition values which are obtained by applying different weights to the movement vector information. (Fourth embodiment) Fig. 11 is a block diagram showing a video camera having therein a vibration correcting apparatus according to the fourth embodiment of the present invention. In the diagram, reference numeral 110 denotes an object to be photographed; 111 a variable vertical angle prism which can change the optical axis direction; 112 an image pickup lens; 113 an image pickup element comprising, for example, a two-dimensional CCD; and 114 a signal processing circuit to execute a gamma correction, a blanking process, an adding process of a sync signal, and the like to an output image signal from the image pickup element 113. A television signal of, for instance, the NTSC standard is outputted from an output terminal 115. Y denotes a luminance signal. H. SYNC indicates a horizontal sync signal. V. SYNC denotes a vertical sync signal. Reference numeral 116 denotes a delay circuit to delay the luminance signal Y by a predetermined time. For example, the delay circuit 116 is constructed by a field memory of the FIFO (First-in First-out) type. Reference numeral 117 denotes a block division pulse generation circuit to generate a gate pulse to divide an image signal which is being scanned into predetermined blocks set on a picture plane. Reference numerals 118 and 119 denote division circuits each for dividing the luminance signal Y in accordance with the output pulses from the block division pulse generation circuit 117. Each of the division circuits 118 and 119 generates the input luminance signal Y in a lump every block set on the picture plane. Practically speaking, each division circuit comprises a gate circuit section whose opening and closing operations are controlled by the output pulse of the generation circuit 117 and a memory section to store a passage signal of the gate circuit section. Reference numeral 120 denotes a movement vector detection circuit for comparing the signal of the present picture plane and the signal of the picture plane of a predetermined time outputted from the delay circuit 116 and for obtaining the movement vector for each divided block. Reference numeral 121 denotes a memory to store the movement vector information in each section on the picture plane and 122 indicates a Laplacian operation circuit to calculate a Laplacian of the movement vector. Reference numeral 123 denotes atarget area decision circuit to decide the area to be subjected to the vibration correction by using the Laplacian of the movement vector which has been calculated on the basis of the Laplacian operation circuit 122; 124 a vibration amount detection circuit to detect a vibration amount from the luminance signal Y. For instance, the vibration amount detection circuit 124 is constructed by a correlation arithmetic operation circuit to perform a representative point matching or the like or an arithmetic operation circuit of the time space gradient method. Reference numeral 125 denotes a driving circuit to drive an actuator 126, which will be explained hereinlater, in accordance with an output of the vibration amount detection circuit 124. Reference numeral 126 denotes the actuator to change a degree of vertical state for the optical axis of the variable vertical angle prism 111. By changing the vertical angle of the prism 111, the angle of deviation of the outgoing optical axis to the incident optical axis of the prism 111 can be controlled. In the above construction, the object image which passed through the prism 111 and lens 112 enters the image pickup element 113, by which it is photoelectrically converted into the electric image signal. The image signal is supplied to the signal processing circuit 114 and is subjected to the gamma correction, blanking process, adding process of the sync signal, and the like. The luminance signal Y which is outputted from the signal processing circuit 114 is directly supplied to the division circuit 119. The luminance signal Y is also delayed by the delay circuit 116 by the time of one field period (about 16.7 msec) and is sent to the division circuit 118. Thus, the division circuits 118 and 119 divide the preceding picture plane into "M x N" blocks in accordance with the output pulses of the block division pulse generation circuit 117. The movement vector detection circuit 120 can be constructed by a circuit based on the time space gradient method or a circuit based on the matching arithmetic operation. However, it is necessary to use a circuit construction which can execute the processes in a real-time manner in the embodiment. The time space gradient method has been described in B.K.P. Horn et al., "Artificial Intelligence 17", pages 185 to 203, 1981. The matching arithmetic operation has been described in Morio Ogami et al., "Information Processing", Vol. 17, No. 17, pages 634 to 640, July, 1976. The operations from the movement vector detection circuit 120 to the target area decision circuit 123 will now be practically explained with reference to Figs. 12 to 14. A distribution of the movement vectors indicative of a speed field of a whole picture plane is called an optical flow. Fig. 12 shows an example of field picture planes which are time-sequentially continuous when they have been photographed in the tracking mode. Fig. 13 shows an example of an optical flow which is obtained as a result of the arithmetic operation between the two picture planes which are time-sequentially continuous. A movement vector indicative of the vibration occurring during the tracking photographing operation can be observed from a region (1) in the central portion of the picture plane where an object (car) exists. On the other hand, a movement vector in a background portion (2) is obtained by synthesizing the movement vector indicative of a flow of the image in association with the tracking photographing operation and the movement vector due to the vibration. From only Fig. 13, it is impossible to correctly decide which one of the regions is to be set to the target area. The movement vector in a lower edge portion (3) in Fig. 13 is a vector which has been outputted from a region where enough image information doesn't exist in the input image and the reliability is extremely low and such a vector can be regarded as noise. Before the present invention is put into practical use, areas lacking in which image information need to be eliminated. Fig. 14 is a diagram showing an example of the result in which the optical flow as shown in Fig. 13 has been accumulated for a predetermined time (1.3 seconds in this example). In Fig. 14, a region of an object (car) having a small accumulated value can be observed in the central portion of the picture plane. In this example, the photographer tries to arrange an object in the central portion of the picture plane. By accumulating the optical flow for a predetermined time, a target to be photographed can now be judged by the photographer. This is based on an idea such that "Since the photographer tries to keep the image in the target area, the image in the target area swings at random around the position at which the photographer tries to centralise the image". The result of accumulating the movement vectors detected in the target area converges to a small value because of the,random characteristics of the movement vectors. On the other hand, this doesn't occur in the non-target area, so that the division between the target area and the non-target area can be performed from the magnitude of the accumulation value of the movement vectors. The movement vectors detected by the movement vector detection circuit 120 are accumulated into the memory 121 for a predetermined time. After that, the accumulation value is supplied to the Laplacian operation circuit 122. In the Laplacian operation circuit 122, the Laplacian of the movement vectors detected by the movement vector detection circuit 120 is calculated, thereby identifying those blocks exhibiting a large change in movement vector. The calculation of the Laplacian is defined by the following equations. ▿ 2 u = ∂ 2 u/∂x 2 + ∂ 2 u/∂y 2 ▿ 2 v = ∂ 2 v/∂x 2 + ∂ 2 v/∂y 2 where, u and v denote speeds in the x direction and y direction. Since areas in which the result of the Laplacian arithmetic operation is large corresponds to a portion in which the movement vector suddenly changes, blocks for which accurate movement vectors cannot be detected can be identified in principle from the magnitude of the result of the Laplacian operation. In the target area decision circuit 123, the target area for which the photographer currently wants to perform the vibration correction is accurately decided from the distribution of the result of the Laplacian arithmetic operation. The target area is first coarsely determined from the distribution of the accumulation values of the movement vectors which are detected for the whole area of the picture plane for a predetermined time. Further, the area in which the accurate movement vectors were detected is selected from the result of the Laplacian operation. In the vibration amount detection circuit 124, the movement vectors in the area selected by the target area decision circuit 123 are calculated. Specifically speaking, among the movement vectors detected by the movement vector detection circuit 120, the average of the movement vectors which are outputted from the blocks corresponding to the target area can be also obtained. Or, the movement vectors can be also again newly accurately detected in the target area. The vibration amount detected by the vibration amount detection circuit 124, namely, the picture plane vibration amount is supplied to the driving circuit 125. The actuator 126 is driven by the driving circuit 125 and an appropriate angle of deviation is given to the prism 111 and the vibration amount is optically corrected. (Fifth embodiment) According to the above fourth embodiment, the Laplacian of the optical flow has been calculated to determine the target area. However, the Laplacian of the input image itself can be also calculated and such a case will now be described hereinbelow as a fifth embodiment. Fig. 15 is a block diagram of a video camera having therein a vibration correcting apparatus according to the fifth embodiment of the present invention. Fig. 15 differs from Fig. 11 with respect to a point that the image signal (luminance signal Y) from the signal processing circuit 114 is supplied to the memory 121 in place of the signal from the movement vector detection circuit 120. The input image is once stored in the memory 121 and the Laplacian operation is executed to the input image by the Laplacian operation circuit 122. Effects of the Laplacian will now be described with reference to Figs. 16 to 18. Fig. 16 is a model diagram of an edge existing in the image. Fig. 17 is a diagram showing the result in which the edge of Fig. 16 has been first order differentiated. Fig. 18 is a diagram showing the result in which the result of Fig. 17 has further been first order differentiated. Therefore, Fig. 18 shows the result of the second order differentiation in Fig. 16, that is, the Laplacian. A zero intersection point shown in Fig. 18 is generally called a zero crossing point and shows an edge portion of the image. The edge corresponds to the location at which the hiding or appearance of the image mentioned in the foregoing first embodiment occurs. In the Laplacian operation circuit 122, the Laplacian of an image is calculated. In the target area decision circuit 123, blocks including zero crossing points are found out from the result of the output of the Laplacian operation circuit 122 and the movement vectors detected by the movement vector detection circuit 120 and are set into a non-target area. The other areas are determined as a target area. In the vibration amount detection circuit 124, the movement vectors in the area decided by the target area decision circuit 123 is calculated in a manner similar to the first embodiment. Specifically speaking, among the movement vectors detected by the movement vector detection circuit 120, the average of the movement vectors which are outputted from the blocks corresponding to the target area can be also obtained or the movement vectors can be also again newly accurately detected in the target area. The vibration amount detected by the vibration amount detection circuit 124, namely, the picture plane vibration amount is supplied to the driving circuit 125. The actuator 126 is driven by the driving circuit 125. An appropriate angle of deviation is given to the prism 111 and the vibration amount is optically corrected. According to the above fourth and fifth embodiments, the boundary of the target area that is presumed from the distribution of the addition values of the movement vectors or the distribution of the addition values of the input image can be clarified by a simple arithmetic operation. Thus, the vibration correction can be performed to the background portion without being influenced by the moving object or motion object. On the contrary, the vibration correction of an object to be tracked can be also similarly stably performed. The method of determining the target area mentioned above can be widely applied to not only the TV camera for photographing but also an industrial TV camera, monitoring camera, or the like. There is practically a remarkable advantage. (Sixth embodiment) Fig. 19 is a block diagram of a video camera having therein a vibration correcting apparatus according to the sixth embodiment of the present invention. In Fig. 19, the same portions as those in Fig. 11 are designated by the same reference numerals. In Fig. 19, reference numerals 201 and 202 denote memories. Appropriate weights are applied to the movement vectors in each portion on the picture plane detected by the movement vector detection circuit 120 and the resultant weighted values are accumulated and stored into those memories. Reference numeral 203 denotes a comparison and integration processing circuit to compare and integrated various weight addition values of the movement vectors. Reference numeral 204 indicates a a target area decision circuit to determine the target area from an output of the comparison and integration processing circuit 138 and an output of the movement vector detection circuit 120. The operation in the above construction will now be described. The object image which passed through the prism 111 and the lens 112 enters the image pickup element 113, by which it is photoelectrically converted into the electric image signal. The image signal is supplied to the signal processing circuit 114 and is subjected to processes such as gamma correction, blanking process, adding process of a sync signal, and the like. The luminance signal Y which is outputted from the signal processing circuit 114 is directly supplied to the division circuit 119. The luminance signal Y is also delayed by the delay circuit 116 by the time of one field period (about 16.7 msec) and the delayed signal is supplied to the division circuit 118. The division circuits 118 and 119 divide the preceding picture plane into "M x N" blocks in accordance with output pulses from the block division pulse generation circuit 117. The movement vector detection circuit 120 can be constructed by the circuit based on the time space gradient method or the circuit based on the matching arithmetic operation. However, it is necessary to use a circuit construction which can execute the processes in a real-time manner in the embodiment. The operation of the movement vector detection circuit 120 and the target area decision circuit 123 will be further described with reference to Figs. 12 to 14 again. Fig. 12 is a diagram showing an example of field picture planes which are time-sequentially continuous when they have been photographed in the tracking mode. Fig. 13 shows an example of an optical flow which is obtained as a result of the arithmetic operation between the two picture planes which are time-sequentially continuous. The movement vectors indicative of the vibration occurring during the tracking photographing operation can be observed from the region (1) in the central portion of the picture plane where the object (car) exists. On the other hand, the movement vectors in the background portion (2) are obtained by synthesizing the movement vectors indicative of the flow of the image in association with the tracking photographing operation and the movement vectors due to the vibration. From only Fig. 13, it is impossible to correctly decide which one of the regions is a target area. The movement vectors in the lower edge portion (3) in Fig. 13 are vectors outputted from the area in which there is insufficient image information in the input image and the reliability of information is extremely low, so that those movement vectors can be regarded as noise. Before the invention is put into practical use, the area image information needs to be eliminated. Fig. 14 is a diagram showing an example of the result of accumulating the optical flow as shown in Fig. 13 for a predetermined time (1.3 seconds here). In Fig. 14, the area of the object (car) having small accumulated value can be observed in the central portion of the picture plane. In the example, the photographer tries to arrange the object to be photographed in the central portion of the picture plane. By accumulating the optical flow for a predetermined time, it is possible to judge a target which the photographer is currently trying to photograph. Such a method is based on the idea that "Since the photographer tries to maintain the image in the target area, the image in the target area swings at random around the position at which the photographer tries to centralise the image". The result of accumulating the movement vectors detected in the target area converges to a small value because of the random characteristics of the movement vectors. On the other hand, such a conversion doesn't occur in the non-target area. Thus, the target area and the non-target area can be distinguished from the magnitude of the accumulation of the movement vectors. The movement vectors detected by the movement vector detection circuit 120 are accumulated into the memories 201 and 202 for a predetermined time. After that, they are supplied to the comparison and integration processing circuit 203. The operations of the memories 201 and 202 will now be described in detail with reference to Figs. 20 and 21. Fig. 20 shows the accumulation result when a vibration state has been modeled by a cosine curve of an amplitude "1" and the modeled values have been added for a predetermined time (T), namely, a magnitude of the remaining component. An axis of ordinate indicates a remaining component amount which has been standardized for the accumulation time T. An axis of abscissa indicates a vibration frequency. In Fig. 20, a solid line 1 ○ shows a remaining component when the movement vectors have been added by a uniform weight for a predetermined time. A broken line 2 ○ indicates a remaining component when a weight function which is convex in the upward direction and whose weight is large as a time point is close to the present time has been multiplied to the movement vectors and the resultant movement vectors have been added. A short broken line 3 ○ shows a remaining component when the movement vectors have been added by using a weight function whose weight increases at regular intervals as a time point is close to the present time. A long broken line 4 ○ shows a remaining component when the movement vectors have been added by using a weight function which is convex in the upward direction and whose weight is large as a time point is close to the present time. Fig. 21 shows a magnitude of a remaining component when a vibration state has been modeled by a sine curve of an amplitude "1" and the modeled values have been added for a predetermined time (T). The contents of Fig. 21 will be understood in a manner similar to Fig. 20. Fig. 20 shows the case where the DC component exists and corresponds to the panning operation or the operation in the tracking photographing mode. On the other hand, Fig. 21 shows the case where no DC component exists and corresponds to the operation in the still photographing mode (state in which the photographer sets the camera main body into a still state and tries to photograph). It will be obviously understood from Figs. 20 and 21 that in a region of a high vibration frequency, there is not so large difference between the methods of applying weights and that, on the contrary, in a region of a low vibration frequency, a large difference occurs in the appearance of the remaining component in dependence on the method of applying the weight. The memories 201 and 202 are memories to realize, for example, four kinds of weight adding methods as shown in Figs. 20 and 21 appropriate to different photographing modes. That is, in those diagrams, in case of adding by a uniform load (weight) as shown by the solid line 1 ○, there is a large difference between the time addition value of the movement vectors due to the vibration of a low frequency and the time addition value of the movement vectors by the vibration of a high frequency, so that the area division is appropriate to a photographing situation in which the DC component exists. On the contrary, in case of adding by using the load which becomes significant in an exponential function manner as the data is close to the latest data as shown by the long broken line 4 ○, the time addition value of the movement vectors by vibrations of almost all of the frequencies is set to a small value and is appropriate to a still photographing situation having no DC component. However, since the photographing state cannot previously been known, in the comparison and integration processing circuit 203, the time addition values (namely, remaining components) of the movement vectors outputted from the memories 201 and 202 to accumulate the movement vectors with different weights are compared and integrated, thereby first presuming the present photographing situation. Subsequently, for instance, in the case where it is presumed that the present photographing situation is a tracking photographing state, a more significance is paid to the weight addition result shown by the solid line 1 ○ in Figs. 20 and 21 and the addition result is outputted. On the contrary, in the case where it is presumed that the present state is the still photographing state, more significance is paid to the weight addition result shown by the long broken line 4 ○ in Figs. 20 and 21 and the addition result is outputted. Or, the memory which adaptively outputs in accordance with the photographing situation can be also switched. In the case where the photographing state cannot be classified to any one of those situations, the average between the states shown by the solid line 1 ○ and long broken line 4 ○ in Figs. 20 and 21 can be also set. The intermediate weight addition as shown by the broken line 2 ○ and short broken line 3 ○ in Figs. 20 and 21 can be also performed. In the target area decision circuit 204, the target area is accurately decided from the relative magnitudes of the accumulated values of the movement vectors which are outputted from the comparison and integration processing circuit 203. In the vibration amount detection circuit 124, the movement vectors in the area determined by the target area decision circuit 204 are arithmetically processed. Practically speaking, among the movement vectors detected by the movement vector detection circuit 120, the average of the movement vectors which are outputted from the blocks corresponding to the target area can also be used. Or, the movement vectors can be also again newly accurately detected in the target area. The vibration amount detected by the vibration amount detection circuit 124, namely, the picture plane vibration amount, is supplied to the driving circuit 125 in a manner similar to that mentioned above. The actuator 126 is driven by the driving circuit 125. An appropriate angle of deviation is added to the prism 111 and the vibration amount is optically corrected. According to the sixth embodiment, by providing a plurality of memories to apply different weights to the movement vectors and to accumulate and add the weighted movement vectors, the target area can be accurately determined in every photographing situation. In the embodiment as well, the target area determining method can be widely applied to not only the photographing TV camera but also the industrial TV camera, monitoring camera, or the like. There is a remarkable advantage in the practical use. As described above, according to each of the above embodiments, the apparatus comprises: the boundary detecting means for detecting a boundary in an image; and the target area deciding means for deciding the area to be subjected to the vibration correction on the basis of the boundary information from the boundary detecting means and the information from the movement vector detecting means and for communicating data defining the target area to the vibration amount detecting means, wherein the boundary in the picture plane is detected by the movement vector distribution or the Laplacian arithmetic operation of the input image. The area to be subjected to the vibration correction is determined by the detected boundary and the movement vector distribution. Therefore, the vibration correction of the object to be tracked, further, the vibration correction of the background, can be accurately performed without being influenced by the moving object. On the other hand, the apparatus has target area deciding means for applying different weights to the information from the movement vector detecting means, for adding the weighted information for a predetermined time, for determining the area to be subjected to the vibration correction on the basis of the accumulated values, and for communicating data defining the target area to the vibration amount detecting means. The target area is determined from the magnitudes of the accumulated values which are obtained by multiplying different weights to the movement vector information. Consequently, accurate vibration correction can be executed under every photographing situation.

Claims: Apparatus for calculating movement vectors for use in correcting movement in an image due to camera vibration comprising: a) movement vector detecting means (130) operable to divide an input image into a plurality of blocks and to detect respective movement vectors defining image movement in each of the blocks; and b) movement vector calculating means (140) operable to determine a movement detection area for image movement detection consisting of a set of the blocks in which correlated image motion is determined to be present on the basis of the movement vectors and to calculate an average movement vector defining average image movement in the movement detection area based on the movement vectors of the blocks constituting the movement detection area; characterised in that the movement vector calculating means comprises movement vector evaluating means (140) operable to evaluate for each block positioned in the movement detection area the reliability of the respective movement vector and to determine therefrom a respective weight coefficient, the movement vector calculating means being further operable to calculate the average movement vector by executing a weight averaging process in which the contribution of each movement vector is weighted according to its respective weight coefficient. Apparatus as claimed in claim 1 wherein the movement vector evaluating means is operable to determine the weight coefficient of each block of the set according to a degree to which the block is surrounded by other blocks of the set constituting the movement detection area. An apparatus according to claim 2 wherein the weight coefficient of each block of the set is determined as being an accumulation of weight units allocated on the basis of one unit for each other block of the set adjacent in a lateral or vertical direction and 0.5 units for each other block of the set adjacent in an oblique direction. An apparatus according to claim 1, wherein said movement vector evaluating means is operable to evaluate the reliability of the movement vector of each block of the set by calculating a correlation between image data sampled at different times and to determine the weight coefficient of each block according to the amount of correlation. Apparatus as claimed in any preceding claim comprising average movement vector evaluating means (140) operable to evaluate the reliability of the average target movement vector on the basis of a total value of the weight coefficients accumulated during said weight averaging process. An apparatus according to claim 1, wherein said average movement vector evaluating means is operable according to a predetermined evaluation function defined such that when the total value of weight coefficients is small, leading to the possibility of an erroneous detection, the average movement vector is multiplied by a multiplier less than 1, to thereby reduce its influence. An apparatus according to claim 6, wherein assuming that the number of blocks in the picture plane is set to M x N, the distribution of weight coefficients is such that 0 ≤ total value of weight coefficients ≤ 7MN - 4M - 4N + 2 An apparatus according to any preceding claim, further having image pickup means (30) operable to photoelectrically convert an object image formed on an image pickup surface and to output an image pickup signal whereby said input image is an image formed on the image pickup surface of said image pickup means, and said movement vector detecting means detects the movement vectors from the image pickup signal. An apparatus according to claim 1, wherein said movement vector detecting means obtains the movement vectors from a luminance signal which is obtained by eliminating a colour signal component from the image pickup signal. An apparatus according to any preceding claim, wherein said movement vector detecting means generates a distribution (optical flow) of the movement vectors on the picture plane. An apparatus according to claim 1, wherein said movement vector calculating means is operable to determine the blocks defining the movement detection area from said optical flow and is operable to calculate a movement amount of the image at that moment in a real-time manner. An apparatus according to claim 1, wherein said movement vector calculating means is operable to execute a convolution mask arithmetic operation to output signals from said blocks constituting the movement detection area, thereby applying the weights to said signals. An apparatus according to any preceding claim, wherein said movement vector calculating means is constituted by a microcomputer (140). An apparatus according to any preceding claim, further having correcting means (111) for correcting image movement due to camera vibration on the basis of an output of the movement vector calculating means(120). An apparatus according to claim 14, wherein said correcting means is operable to variably change a read-out position when image information is read out from the image memory on the basis of an output of said movement vector calculating means, thereby offsetting the movement of the image. An apparatus according to claim 14, wherein said correcting means is a variable angle prism (111) of the camera. A method for correcting movement in an image due to camera vibration comprising: a) dividing an input image into a plurality of blocks by operation of a movement vector detecting means (130) and detecting respective movement vectors defining image movement in each of the blocks; and b) determining by operation of a movement vector calculating means (140) a movement detection area consisting of a set of the blocks in which correlated image motion is determined to be present on the basis of the movement vectors and calculating an average movement vector defining average image movement in the movement detection area based on the movement vectors of the blocks constituting the movement detection area; characterised in that the movement vector calculating means comprises movement vector evaluating means operable to evaluate for each block positioned in the movement detection area the reliability of the respective movement vector and determines therefrom a respective weight coefficient, the movement vector calculating means further calculating the average movement vector by executing a weight averaging process in which the contribution of each movement vector is weighted according to its respective weight coefficient.

Inventors: KONDO TOSHIAKI, SEKINE MASAYOSHI, KONDO, TOSHIAKI, SEKINE, MASAYOSHI, KONDO, TOSHIAKI, C/O CANON KABUSHIKI KAISHA, SEKINE, MASAYOSHI, C/O CANON KABUSHIKI KAISHA
Applicants: CANON KK, CANON KABUSHIKI KAISHA
Application year: 1993
Main classification: G06T7
IPC codes: H04N5, G06T7