WO2008023466A1 - Moving vector detecting bdevice - Google Patents

Moving vector detecting bdevice Download PDF

Info

Publication number
WO2008023466A1
WO2008023466A1 PCT/JP2007/052011 JP2007052011W WO2008023466A1 WO 2008023466 A1 WO2008023466 A1 WO 2008023466A1 JP 2007052011 W JP2007052011 W JP 2007052011W WO 2008023466 A1 WO2008023466 A1 WO 2008023466A1
Authority
WO
WIPO (PCT)
Prior art keywords
motion vector
block
horizontal
vertical
projection data
Prior art date
Application number
PCT/JP2007/052011
Other languages
English (en)
French (fr)
Inventor
Junji Sukeno
Shuji Sotoda
Yoshiko Hatano
Yoshiki Ono
Kazuhiro Sugiyama
Original Assignee
Mitsubishi Electric Corporation
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from JP2006227384A external-priority patent/JP4027398B1/ja
Priority claimed from JP2006242343A external-priority patent/JP4213739B2/ja
Application filed by Mitsubishi Electric Corporation filed Critical Mitsubishi Electric Corporation
Priority to CN2007800314952A priority Critical patent/CN101506845B/zh
Priority to EP07708111A priority patent/EP2061007A1/en
Publication of WO2008023466A1 publication Critical patent/WO2008023466A1/ja

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/521Processing of motion vectors for estimating the reliability of the determined motion vectors or motion vector field, e.g. for smoothing the motion vector field or for correcting motion vectors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/117Filters, e.g. for pre-processing or post-processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/14Coding unit complexity, e.g. amount of activity or edge presence estimation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20021Dividing image into blocks, subimages or windows
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20068Projection on vertical or horizontal image axis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20172Image enhancement details
    • G06T2207/20192Edge enhancement; Edge preservation

Definitions

  • the present invention relates to a motion vector detection device that detects a motion vector between frame images related to a previous frame and a subsequent frame that are in a time series front-rear relationship.
  • Patent Document 1 discloses a technique for improving this problem.
  • feature points of an image having a luminance gradient are extracted, and representative point matching processing is performed using the extracted feature points as representative points, thereby enabling good detection of motion vectors.
  • Patent Document 2 there is a method of detecting a motion vector by dividing an image into a plurality of blocks, detecting an edge for each block, and following the movement of the edge.
  • This method can reduce misjudgment when there is no characteristic pattern with a low spatial frequency such as the sky, or when there are many feature points with a high spatial frequency such as a lattice door.
  • the reliability is evaluated by weighting the number of edges per block.
  • a zero crossing method or the like is used as a method for detecting the edge.
  • Patent Document 1 Japanese Patent No. 3534551
  • Patent Document 2 Japanese Patent No. 3164121
  • Patent Document 1 can reliably set the representative point where the luminance gradient exists, the correlation calculation of the representative point is performed while shifting the pixels little by little over the entire search range in the frame image. Therefore, a considerable amount of computation is required for each representative point (feature point). Therefore, unless the number of representative points is kept below a certain level, it is difficult to quickly detect a motion vector and real-time processing becomes difficult. On the other hand, if there are too few representative points, the accuracy of motion vector detection will be reduced.
  • the motion vector detection method disclosed in Patent Document 2 has the power to reduce erroneous determination by weighting the reliability of the motion vector calculated for each block by the number of edges for each block.
  • the present invention has been made to solve the above-described problems, and can detect a motion vector between frame images with high accuracy and speed and calculate each block force while satisfying real-time processing. It is an object of the present invention to provide a motion vector detection device capable of evaluating the reliability of a motion vector.
  • a first aspect of the motion vector detection device is a motion vector detection device that detects a motion vector between frame images related to a previous frame and a rear frame that are in a chronological order. For a frame image that is read out by repeating pixel scanning of the horizontal line in order in the vertical direction, an edge that emphasizes the vertical edge for each of the divided blocks having a certain division width in the vertical direction Emphasis means and said et Projection means for projecting data in the vertical direction for each of the blocks and generating projection data having a data array for one horizontal line in each of the blocks.
  • the projecting means obtains a specifying means for specifying the position of the array element at each intersection and a data array in a predetermined range centered on the position of the array element at each intersection. For each of the extracting means for extracting from the projection data and the data array in the predetermined range extracted by the extracting means, values of array elements having the same relative position with respect to the position of the array element at each intersection are obtained.
  • a calculation adding means based on the added result of addition by said adding means, and a detection means for detecting a motion vector related to the horizontal direction of the frame image, Ru.
  • a second aspect of the motion vector detection device is a motion vector detection device that detects a motion vector between frame images related to a previous frame and a rear frame that are in a chronological order. For the frame image that is read out by repeating the pixel scanning of the horizontal line in order in the vertical direction, the horizontal edge is emphasized for each block divided into a plurality of blocks having a certain division width in the horizontal direction.
  • An edge enhancement unit that performs projection in a horizontal direction for each of the blocks, and a projection having a data array for one vertical line in each of the blocks.
  • Projection means for generating data, and projection data obtained by the projection means with respect to the previous frame;
  • Extraction means for extracting a data array of a predetermined range from the projection data obtained by the projection means for the subsequent frame, and an array element of each intersection for each of the data array of the predetermined range extracted by the extraction means
  • the third aspect of the motion vector detection device has a front-to-back relationship in time series.
  • a motion vector detection device that detects a motion vector between frame images related to a previous frame and a subsequent frame, and is fixed in a vertical direction with respect to a frame image that is read by sequentially repeating pixel scanning of a horizontal line in the vertical direction.
  • An edge emphasizing unit for emphasizing a vertical edge for each block divided into a plurality of blocks, and an image in which the edge is emphasized by the edge emphasizing unit.
  • Projection means for projecting in the direction and generating projection data having a data array for one horizontal line in each of the blocks, and an array of post-frame projection data obtained by the projection means for the rear frame
  • a maximum value acquisition means for obtaining a maximum value in the element, and a previous frame projection data obtained by the projection means with respect to the previous frame
  • Identifying means for extracting, a data array in a predetermined range centering on the position of the array element at each intersection, an extraction means for extracting from the post-frame projection data, and a data array in the predetermined range extracted by the extraction means, respectively Then, add the values of the array elements that have the same relative position to the position of the array element at each intersection, and calculate the horizontal motion vector for each block based on the obtained addition result.
  • a detecting means for detecting a horizontal motion vector of the entire frame image based on the horizontal motion vector for each block calculated by the calorie calculating means.
  • the detecting means includes the maximum value of the post-frame projection data obtained by the maximum value obtaining means, the addition result obtained by the calorie calculating means, and the intersection information obtained by the specifying means. The reliability of the horizontal motion vector for each block is evaluated using at least one.
  • a fourth aspect of the motion vector detection device is a motion vector detection device that detects a motion vector between frame images related to a previous frame and a subsequent frame that are in a time series front-rear relationship.
  • Edge enhancement that emphasizes the horizontal edge for each block divided into multiple blocks with a constant division width in the horizontal direction for a frame image that is read out by repeating pixel scanning of the line in the vertical direction. And an image in which edges are emphasized by the edge enhancement means, and horizontally for each block.
  • Projection means for generating projection data having a data array for one vertical line in each of the blocks, and an array element of the post-frame projection data obtained by the projection means for the rear frame
  • a maximum value obtaining means for obtaining a maximum value in the above, a waveform obtained by graphing array element values in the order of the elements of the data array with respect to the previous frame projection data obtained by the projection means with respect to the previous frame, and an array element A means for specifying the position of an array element at each intersection where a straight line having a predetermined constant value intersects and outputting as intersection information, and a data array in a predetermined range centered on the position of the array element at each intersection
  • the extraction means for extracting from the post-frame projection data, and for each of the predetermined range of data arrays extracted by the extraction means!
  • the edge in the vertical direction is emphasized in a predetermined image area in the frame image, and the projection in the vertical direction is performed in the edge-enhanced image.
  • Projection data having a data array for one horizontal line is generated, and a waveform in which array element values are graphed in the order of the data array elements with respect to the projection data of the previous frame, and the array element values are set to a predetermined constant value. Specify the position of the array element at each intersection where the straight line intersects.
  • the projection data force of the subsequent frame is extracted from the data array in a predetermined range centered on the position of the array element at each intersection, and the extracted array of data in the predetermined range is compared with the position of the array element at each intersection.
  • the values of array elements having the same relative position are added, and the motion vector in the horizontal direction of the frame image is detected based on the addition result.
  • the edge in the horizontal direction is emphasized in the predetermined image region in the frame image, and the image in the edge direction is enhanced in the horizontal direction.
  • Projection data having a data array for one vertical line is generated by projecting to the waveform, and the waveform of the array elements is graphed in the order of the data array elements with respect to the projection data of the previous frame, and the values of the array elements are predetermined.
  • the position of the array element at each intersection where a straight line with a constant value intersects is specified.
  • the projection data force of the subsequent frame is extracted from the data array in a predetermined range centered on the position of the array element at each intersection, and the extracted array of data in the predetermined range is compared with the position of the array element at each intersection.
  • the values of array elements having the same relative position are added, and a motion vector in the vertical direction of the frame image is detected based on the addition result. As a result, motion vectors between frame images can be detected accurately and quickly.
  • the detection means in the detection means, the maximum value of the post-frame projection data obtained by the maximum value acquisition means, the calorie calculation result obtained by the addition means.
  • the reliability of the horizontal motion vector for each block is evaluated using at least one of the intersection information obtained by the specifying means, the horizontal motion vector obtained from the low-reliability block power is obtained. As a result, it is possible to calculate the horizontal motion vector of the entire frame image with high reliability.
  • the detection means in the detection means, the maximum value of the post-frame projection data obtained by the maximum value acquisition means, the calorie calculation result obtained by the addition means Since the reliability of the vertical motion vector for each block is evaluated using at least one of the intersection information obtained by the specifying means, the vertical motion vector obtained from the low-reliability block force is used. By excluding, as a result, the vertical motion vector of the entire frame image with high reliability can be calculated.
  • FIG. 10 is a block diagram showing a main configuration of a motion vector detection device 1C according to a state 4.
  • FIG. 2 is a diagram for explaining a pixel scanning direction in a frame image.
  • FIG. 3 is a block diagram showing a main configuration of a horizontal motion vector detection unit 2.
  • FIG. 4 is a block diagram showing a main configuration of a vertical block projection unit 23.
  • FIG. 5 is a block diagram showing the main configuration of a vertical block horizontal motion vector calculation unit 31.
  • FIG. 6 is a block diagram showing a main configuration of a vertical motion vector detection unit 4.
  • FIG. 7 is a block diagram showing a main configuration of a horizontal block projection unit 43.
  • FIG. 8 is a block diagram showing a main configuration of a horizontal block vertical motion vector calculation unit 50.
  • FIG. 9 is a diagram for explaining the operation of the vertical image dividing unit 21 and the vertical block projecting unit 23.
  • FIG. 10 is a diagram for explaining n-value key processing in the n-value converters 314 and 504.
  • FIG. 11 is a diagram for explaining the operations of a first threshold intersection searching unit 29, a vertical block projection data reading unit 30, and a vertical block horizontal motion vector calculating unit 31.
  • FIG. 12 is a diagram for explaining the operation of adder 315 and peak detector 317.
  • FIG. 13 is a diagram for explaining operations of a horizontal image dividing unit 41 and a horizontal block projecting unit 43.
  • FIG. 14 is a diagram for explaining the operation of a third threshold intersection searching unit 48, a horizontal block projection data reading unit 49, and a horizontal block vertical motion vector calculating unit 50.
  • FIG. 15 is a diagram for explaining operations of an adder 505 and a peak detection unit 507.
  • FIG. 16 is a block diagram showing a main configuration of a horizontal direction motion vector detection unit 2A in a motion vector detection device 1A according to Embodiment 2 of the present invention.
  • FIG. 17 is a block diagram showing a main configuration of a vertical direction motion vector detection unit 4A in the motion vector detection device 1A.
  • FIG. 18 shows horizontal motion in the motion vector detection device 1C according to the third embodiment of the present invention.
  • FIG. 5 is a block diagram showing a main configuration of a vector detection unit 2B.
  • FIG. 19 is a block diagram showing a main configuration of a vertical block horizontal motion vector calculation unit 310.
  • FIG. 20 is a block diagram showing a main configuration of a vertical motion vector detection unit 4B.
  • FIG. 21 is a block diagram showing a main configuration of a horizontal block vertical motion vector calculation unit 500.
  • FIG. 22 is a diagram for explaining a method for determining the effectiveness Z invalidity of each vertical block using the first vertical block projection data maximum value.
  • FIG. 23 is a diagram schematically showing determination of valid Z invalidity of a vertical block.
  • FIG. 24 is a diagram for explaining a method of determining the effective Z invalidity of each vertical block using the vertical block n-valued addition data peak value.
  • FIG. 25 is a diagram schematically showing determination of valid Z invalidity of a vertical block.
  • FIG. 26 is a diagram for explaining a method for determining valid Z invalidity of each vertical block using the number of first threshold intersections.
  • FIG. 27 is a diagram schematically showing determination of valid Z invalidity of a vertical block.
  • FIG. 28 is a diagram schematically showing a determination of valid Z invalidity of a vertical block.
  • FIG. 29 is a diagram for explaining an example of a method for determining the horizontal motion vector of the entire image.
  • FIG. 30 is a diagram for explaining an example of a method for determining the horizontal motion vector of the entire image.
  • FIG. 31 is a diagram for explaining a method of determining validity Z invalidity of each horizontal block using the first horizontal block projection data maximum value.
  • FIG. 32 is a diagram schematically showing determination of valid Z invalidity of a horizontal block.
  • FIG. 33 is a diagram for explaining a method of determining validity Z invalidity of each horizontal block using the horizontal block n-valued addition data peak value.
  • FIG. 34 is a diagram schematically showing valid Z invalid / invalid determination of a horizontal block.
  • FIG. 35 is a diagram for explaining a method for determining valid Z invalidity of each horizontal block using the number of third threshold intersections.
  • FIG. 36 is a diagram schematically showing valid Z invalid / invalid determination of a horizontal block.
  • FIG. 37 is a diagram schematically showing determination of valid Z invalidity of horizontal blocks.
  • FIG. 38 is a diagram for explaining an example of a method for determining the vertical motion vector of the entire image.
  • FIG. 39 is a diagram illustrating an example of a method for determining a vertical motion vector of an entire image.
  • FIG. 40 is a block diagram showing a main configuration of a horizontal direction motion vector detection unit 2C in the motion vector detection device 1C according to Embodiment 4 of the present invention.
  • FIG. 41 is a block diagram showing a main configuration of a vertical direction motion vector detection unit 4C in the motion vector detection device 1C.
  • FIG. 1 is a block diagram showing a main configuration of motion vector detection apparatus 1 according to Embodiment 1 of the present invention.
  • the motion vector detection device 1 detects, for example, an image motion vector representing a motion of a subject in a screen in a moving image, and a frame image related to a previous frame and a subsequent frame that are in a chronological order. A motion vector in between is detected.
  • the motion vector detected by the motion vector detection device 1 is used for camera shake correction of the video camera. It is assumed that the frame image input to the motion vector detection device 1 is read out by performing horizontal pixel scanning and vertical line scanning as shown in FIG.
  • the motion vector detection device 1 includes an input terminal 11, a horizontal direction motion vector detection unit 2 and a vertical direction motion vector detection unit 4, and two output terminals 12 and 13.
  • the functions may be realized by software, for example, by a microprocessor, or most of the functions are realized by hardware (partially software). You may do it. Of course, all the functions can be realized with no software! Needless to say! /.
  • image data (moving image) acquired by an image sensor in a video camera or image data (moving image) such as a video signal is input to the input terminal 11.
  • image data moving image
  • image data moving image
  • a horizontal motion vector is detected by the horizontal motion vector detection unit 2, and the detected horizontal motion vector is output from the output terminal 12.
  • the vertical motion vector detection unit 4 detects a vertical motion vector for the image data input to the input terminal 11.
  • the vertical motion vector detected by the vertical motion vector detection unit 4 is output from the output terminal 13.
  • FIG. 3 is a block diagram showing the main configuration of the horizontal motion vector detection unit 2.
  • the horizontal direction motion vector detection unit 2 includes an input terminal 20, a vertical image segmentation unit 21, a vertical direction edge extraction filtering unit 22, a vertical block projection unit 23, and a first vertical block projection data maximum value.
  • a storage unit 24, a bit number reduction unit 25, and a first vertical block projection line memory 26 are provided.
  • the horizontal motion vector detection unit 2 includes a second vertical block projection line memory 27, a second vertical block projection data maximum value storage unit 28, a first threshold intersection search unit 29, and a vertical direction.
  • a block projection data reading unit 30, a vertical block horizontal motion vector calculation unit 31, a horizontal motion vector determination unit 32, and an output terminal 33 are provided. The function of each part of the horizontal direction motion vector detection unit 2 will be briefly described (specific operations will be described in detail later).
  • the vertical image dividing unit 21 divides the frame image input to the input terminal 20 in the vertical direction, and outputs a block divided in the vertical direction (hereinafter also referred to as “vertical block”).
  • the vertical edge extraction filtering unit 22 performs a filtering process for performing edge extraction for each block divided by the vertical image dividing unit 21.
  • the vertical image dividing unit 21 and the vertical edge extraction filtering unit 22 may be collectively referred to as edge enhancement means.
  • the vertical block projection unit 23 projects the vertical direction of the edge-enhanced vertical block output from the vertical edge extraction filtering unit 22 in the vertical direction. Output projection data for each block.
  • the first vertical block projection data maximum value storage unit 24 stores the maximum value in the projection data of the vertical block of the current frame output from the vertical block projection unit 23 (hereinafter referred to as "vertical direction of the current frame"). “Block projection data maximum value” or “first vertical block projection data maximum value”) is saved. The first vertical block projection data maximum value storage unit 24 calculates a second threshold value to be described later based on the first vertical block projection data maximum value.
  • the bit number reduction unit 25 is output from the vertical block projection unit 23 based on the first vertical block projection data maximum value stored in the first vertical block projection data maximum value storage unit 24. Reduce the number of bits of vertical block projection data.
  • the projection data of the vertical block with the reduced number of bits is called “first vertical block projection data”.
  • the first vertical block projection line memory 26 stores the first vertical block projection data whose number of bits has been reduced by the bit number reduction unit 25.
  • the second vertical block projection line memory 27 uses the vertical block projection data sent from the first vertical block projection line memory 26 as the projection data (hereinafter referred to as "first block data") of the vertical block of the previous frame. 2) (vertical block projection data).
  • the second vertical block projection data maximum value storage unit 28 stores the first vertical block projection data maximum value output from the first vertical block projection data maximum value storage unit 24 in the previous frame.
  • second vertical block projection data maximum value also referred to as “vertical block projection data maximum value of previous frame”. Further, the second vertical block projection data maximum value storage unit 28 calculates a first threshold value to be described later based on the second vertical block projection data maximum value.
  • the first threshold intersection search unit 29 generates a waveform of the second vertical block projection data relating to the previous frame stored in the second vertical block projection line memory 27, and the second vertical block. A point where the first threshold value calculated by the projection data maximum value storage unit 28 intersects is obtained, and information on this intersection (hereinafter also referred to as “first threshold value intersection”) is output.
  • the vertical block projection data reading unit 30 is centered on the first threshold intersection obtained by the first threshold intersection searching unit 29, and is within a predetermined range (motion vector detection range) before and after the first threshold intersection. Read the 1 vertical block projection data from the first vertical block projection line memory 26.
  • the vertical block horizontal motion vector calculation unit 31 uses the second threshold value output from the first vertical block projection data maximum value storage unit 24, and the vertical block projection data read unit 30 Each of the read first vertical block projection data is reduced to the n value n (where n is an integer of 2 or more) to reduce the number of bits, and the n-valued projection data is converted to the first threshold intersection force. Add for each distance.
  • the horizontal motion vector determination unit 32 determines a horizontal motion vector of the image based on the output from the vertical block horizontal motion vector calculation unit 31.
  • the horizontal motion vector of the image determined here is output from the output terminal 33.
  • FIG. 4 is a block diagram showing a main configuration of the vertical block projection unit 23.
  • the vertical block projection unit 23 includes an input terminal 231, an adder 232 that performs data addition for each horizontal line, and a vertical projection temporary storage memory 233 as a buffer memory that sequentially stores the data added by the adder 232. And an output terminal 234.
  • the image in which the vertical edge is emphasized by the vertical edge extraction filtering unit 22 is input for each vertical block.
  • the image input to the input terminal 231 is projected in the vertical direction by the adder 232 and the vertical projection temporary storage memory 233 for each vertical block.
  • the adder 232 adds the data for one horizontal line of the vertical block and the data for one horizontal line read from the vertical projection temporary memory 233, and the addition result is the vertical projection temporary.
  • the data is returned to the storage memory 233 and stored.
  • FIG. 5 is a block diagram showing a main configuration of the vertical block horizontal motion vector calculation unit 31.
  • the vertical block horizontal motion vector calculation unit 31 includes three input terminals 311 to 313. , An n-value converter 314, an adder 315 for adding the first vertical block projection data n-valued by the n-value generator 314, and a buffer memory for sequentially storing the data added by the adder 315
  • a horizontal motion vector addition memory 316 as a memory, a peak detector 317, and an output terminal 318 are provided.
  • the first vertical block projection data output from the vertical block projection data reading unit 30 is input to the input terminal 311.
  • the first vertical block projection data maximum value is input to the input terminal 312.
  • the second threshold value output from the storage unit 24 is input.
  • the input terminal 313 receives information about the first threshold value intersection output from the first threshold value intersection search unit 29.
  • the n-value converter 314 converts the first vertical block projection data input from the input terminal 311 into an n-value key (for example, a ternary value) based on the second threshold value input from the input terminal 312. )
  • the adder 315 converts the first vertical block projection data n-valued by the n-value generator 314 and the data read from the horizontal motion vector addition memory 316 into a first threshold intersection. The result of the addition is stored in the horizontal motion vector addition memory 316 again. When the addition for all the first threshold intersections related to the vertical block is completed by repeating such addition operation, the addition data related to the vertical block is output to the peak detector 317.
  • the peak detector 317 detects a peak position (horizontal motion vector described later) in the addition data output from the adder 315.
  • the peak position detected by the peak detector 317 is input to the horizontal direction motion vector determination unit 32 via the output terminal 318.
  • FIG. 6 is a block diagram showing the main configuration of the vertical motion vector detection unit 4.
  • the vertical motion vector detection unit 4 includes an input terminal 40, a horizontal image segmentation unit 41, a horizontal edge extraction filtering unit 42, a horizontal block projection unit 43, and a first horizontal block projection line memory 44. And a first horizontal block projection data maximum value storage unit 45.
  • the vertical motion vector detection unit 4 includes a second horizontal block projection line memory 46, a second horizontal block projection data maximum value storage unit 47, and a third
  • the threshold intersection searching unit 48, the horizontal block projection data reading unit 49, the horizontal block vertical motion vector calculating unit 50, the vertical motion vector determining unit 51, and the output terminal 52 are provided. The function of each part of the vertical motion vector detection unit 4 will be briefly described (specific operations will be described in detail later).
  • the horizontal image dividing unit 41 divides the frame image input to the input terminal 40 in the horizontal direction and outputs a block divided in the horizontal direction (hereinafter also referred to as “horizontal block”).
  • the horizontal edge extraction filtering unit 42 performs a filtering process for performing edge extraction for each block divided by the horizontal image dividing unit 41.
  • the horizontal image segmentation unit 41 and the horizontal direction edge extraction filtering unit 42 may be collectively referred to as edge enhancement means.
  • the horizontal block projection unit 43 projects the edge-enhanced horizontal block output from the horizontal edge extraction filtering unit 42 in the horizontal direction and outputs projection data for each horizontal block.
  • the first horizontal block projection line memory 44 converts the horizontal block projection data output from the horizontal block projection unit 43 into the horizontal block projection data of the current frame (hereinafter referred to as “first block projection data”). This is also referred to as “horizontal block projection data”.
  • the first horizontal block projection data maximum value storage unit 45 stores the maximum value of the projection data of the horizontal block of the current frame output from the horizontal block projection unit 43 (hereinafter, “horizontal direction of the current frame”). “Block projection data maximum value” or “first horizontal block projection data maximum value”) is saved.
  • the second horizontal block projection line memory 46 uses the horizontal block projection data sent from the first horizontal block projection line memory 44 as the projection data (hereinafter referred to as "first block data") of the horizontal block of the previous frame. This is also called “2 horizontal block projection data”.
  • the second horizontal block projection data maximum value storage unit 47 stores the first horizontal block projection data maximum value output from the first horizontal block projection data maximum value storage unit 45 in the previous frame. "Second horizontal block projection data maximum"("Previous frame This is also referred to as “horizontal block projection data maximum value”). Further, the second horizontal block projection data maximum value storage unit 47 calculates a third threshold value and a fourth threshold value, which will be described later, based on the second horizontal block projection data maximum value.
  • the third threshold value intersection search unit 48 stores the second horizontal block projection data and the second horizontal block projection data related to the previous frame stored in the second horizontal block projection line memory 46. A point where the third threshold value calculated by the maximum value storage unit 47 intersects is obtained, and information on this intersection (hereinafter also referred to as “third threshold value intersection”) is output.
  • the horizontal block projection data reading unit 49 is centered on the third threshold intersection obtained by the third threshold intersection searching unit 48, and is within a predetermined range (motion vector detection range) before and after the third threshold intersection. 1 horizontal block projection data is read from the first horizontal block projection line memory 44.
  • the horizontal block vertical motion vector calculation unit 50 uses the fourth threshold value output from the second horizontal block projection data maximum value storage unit 47, and the horizontal block projection data read unit 49 Each of the first horizontal block projection data that has been read out is reduced to n-values (n is an integer of 2 or more) to reduce the number of bits, and the n-valued projection data is converted to the third threshold intersection force. Add for each distance.
  • the vertical direction motion vector determination unit 51 determines the vertical direction motion vector of the image based on the output from the horizontal block vertical direction motion vector calculation unit 50.
  • the vertical motion vector of the image determined here is output from the output terminal 52.
  • FIG. 7 is a block diagram showing the main configuration of the horizontal block projection unit 43.
  • the horizontal block projection unit 43 includes an input terminal 431, an adder 432 that adds one horizontal line data of the horizontal block, and a horizontal projection temporarily as a buffer memory that sequentially stores the data added by the adder 432.
  • a storage memory 433 and an output terminal 434 are provided.
  • an image in which horizontal edges are emphasized by the horizontal edge extraction filtering unit 42 is input.
  • the image input to the input terminal 431 is projected in the horizontal direction by the adder 432 and the horizontal projection temporary storage memory 433 for each horizontal block. Specifically, for one horizontal line of pixels in a horizontal block, The pixel input from the input terminal 431 and the addition result up to the previous pixel by the adder 432 and stored in the horizontal projection temporary storage memory 433 are added by the adder 432, and the addition result is again projected in the horizontal direction. Return to temporary storage memory 433 for storage.
  • the addition data of all the pixels of one horizontal line of the horizontal block is output from the output terminal 434. Will be. Thereafter, similarly, the projection data in the horizontal direction of the next horizontal block is processed, and when processing of all the horizontal blocks for one horizontal line is completed, the processing of the next horizontal line is performed.
  • FIG. 8 is a block diagram showing a main configuration of the horizontal block vertical motion vector calculation unit 50.
  • the horizontal block vertical motion vector calculation unit 50 includes three input terminals 501 to 503, an n-value converter 504, and a first horizontal block projection n-valued by the n-value converter 504.
  • An adder 505 for adding data a vertical motion vector addition memory 506 as a buffer memory for sequentially storing the data added by the adder 505, a peak detector 507, and an output terminal 5 08 ⁇
  • the adder 505 for adding data a vertical motion vector addition memory 506 as a buffer memory for sequentially storing the data added by the adder 505, a peak detector 507, and an output terminal 5 08 ⁇ The
  • the first horizontal block projection data output from the horizontal block projection data reading unit 49 is input to the input terminal 501, and the second horizontal block projection data maximum value is input to the input terminal 502.
  • the fourth threshold value output from the storage unit 47 is input.
  • information on the third threshold value intersection output from the third threshold value intersection search unit 48 is input to the input terminal 503.
  • the n-value quantizer 504 converts the first horizontal block projection data input from the input terminal 501 into an n-value key (for example, a ternary value) based on the fourth threshold value input from the input terminal 502. )
  • the adder 505 converts the first horizontal block projection data n-valued by the n-valued converter 504 and the data read from the vertical motion vector addition memory 506 into a third threshold intersection. The result of addition is stored in the vertical motion vector addition memory 506 again.
  • the addition data related to the horizontal block is output to the peak detector 507.
  • the peak detector 507 detects a peak position (vertical motion vector described later) in the addition data output from the adder 505.
  • the peak position detected by the peak detector 507 is input to the vertical direction motion vector determination unit 51 via the output terminal 508.
  • the vertical image dividing unit 21 performs block division in the vertical direction. In other words, the vertical image dividing unit 21 sets a plurality of image regions (vertical blocks) obtained by dividing the frame image in the vertical direction. As a result, in the subsequent processing, processing and management are performed for each vertical block.
  • the image data power of 640 pixels x 480 pixels is 7 vertical directions having a width (division width) of 64 pixels in the vertical direction. Divided into blocks Vb0 to vb6. Note that the bottom vertical image data vb7 is not used in the detection of horizontal motion vectors. Seven vertical blocks vb0 to vb6 occupying most of the force frame images are used for detection of horizontal motion vectors. For this reason, there is no particular problem in terms of detection accuracy.
  • the division width and the number of divisions shown in (a) of Fig. 9 are not essential.
  • the image divided into seven vertical blocks vb0 to vb6 by the vertical image dividing unit 21 as shown in Fig. 9A is an edge component extending in the vertical direction in the vertical edge extraction filtering unit 22.
  • a filtering process is performed to emphasize the image portion that changes sharply in the horizontal direction.
  • Filters used in this filtering process include the (1, 1) 2-tap filter, which simply takes the difference between pixels adjacent in the horizontal direction, and the equivalent of the second derivative (—1, 2, — 1). ) 3-tap filter can be used.
  • It is essential to use such a filter as long as the output value rises in the image area where the luminance change in the horizontal direction increases.
  • the image data in which the vertical edge is emphasized for each vertical block (image region) vbO to vb 6 by the vertical edge extraction filtering unit 22 is input to the vertical block projection unit 23, and the vertical block Projection unit 23 projects in the vertical direction.
  • This projection reduces the noise component in the vertical direction (between the lines) and enhances the edge component in the vertical direction, so that the vertical edge corresponding to the feature point is highlighted to improve motion vector detection accuracy. It will be possible to plan.
  • the operation of the vertical block projection unit 23 will be described with reference to the conceptual diagram shown in FIG. 9 (b).
  • the vertical block projection unit 23 when the input of the vertical blocks vb0 to vb6 shown in (a) of Fig. 9 is completed, that is, the final lines in the vertical blocks vb0 to vb6 with edge enhancement.
  • the data array Mv has an effective element of the total number of pixels of the horizontal line 1 (for a 2-tap filter such as force (1, 1) that has the total number of pixels of the horizontal line (for example, 640).
  • a 3-tap filter such as 639) and (1, 1, 2, 1)
  • the effective element is the total number of pixels in the horizontal line minus 2 (eg, 638).
  • the image data of the vertical blocks vb0 to vb6 (image data subjected to edge enhancement in the vertical direction) input via the input terminal 231 sequentially Input to adder 232.
  • the adder 232 the first horizontal line force of the input vertical block is written into the vertical projection temporary storage memory 233 without reading the data in the vertical projection temporary storage memory 233.
  • the adder 232 reads the addition result up to the previous line stored in the vertical projection temporary storage memory 233, and adds it to the horizontal line of the vertical block input from the input terminal 231. Then, the addition result is written back to the vertical projection temporary storage memory 233.
  • the projection data obtained by adding all horizontal lines of the vertical block in the adder 232 is stored in the vertical projection temporary storage memory 233 and the first line of the next vertical block is input. At this time, the projection data in the vertical projection temporary storage memory 233 may be read out and output from the output terminal 234.
  • the first vertical block projection data maximum value storage unit 24 calculates the maximum value related to the projection data of the vertical block output from the vertical block projection unit 23, and the first vertical block projection data maximum Save as a value (maximum vertical block projection data for the current frame). In other words, the first vertical block projection data maximum value storage unit 24 finds the maximum value in the array element of the data array Mv (FIG. 9 (b)) relating to the projection data of the current frame (following frame). This maximum value is stored.
  • the first vertical block projection data maximum value storage unit 24 calculates the second threshold value based on the calculated vertical block projection data maximum value of the current frame. For example, if the maximum vertical block projection data value of the current frame is Plmax, the second threshold value ⁇ 2 is calculated by the following equation (1).
  • kl is a predetermined coefficient, and 0 and kl ⁇ 1.
  • the calculation of the second threshold value a 2 is not limited to the above equation (1). If the maximum vertical block projection data value Plmax of the current frame increases, the second threshold value oc 2 increases. If it is a thing, you can use the conversion table again!
  • the bit number reduction unit 25 the vertical block projection data maximum value of the current frame input from the first vertical block projection data maximum value storage unit 24 (first vertical block projection data maximum value) Based on the above, the effective bit range of the projection data is determined. Then, the upper invalid bit and the lower invalid bit set based on this valid bit range are reduced from the vertical block projection data input from the vertical block projection unit 23, and the vertical of the current frame consisting only of valid bits is reduced.
  • the first vertical block projection line memory 26 uses the vertical block projection data of the current frame whose number of bits has been reduced by the bit number reduction unit 25 as the first vertical block projection data for each vertical block. Save to. That is, the first vertical block projection line memory 26 has a bit number reduction unit based on the first vertical block projection data maximum value obtained by the first vertical block projection data maximum value storage unit 24. In 25, the projection data of the current frame (following frame) in which the number of bits (data length of each array element) is reduced is stored.
  • the first vertical block projection line memory 26 reads the vertical block projection data of the previous frame at the timing when new first vertical block projection data relating to the current frame is input, and the second vertical block projection line memory 26 The vertical block projection line memory 27 is given.
  • the second vertical block projection line memory 27 uses the vertical block projection data of the previous frame read out from the first vertical block projection line memory 26 as the second vertical block projection data. save.
  • the first vertical block projection data maximum value storage unit 24 is already stored at the timing when the new first vertical block projection data maximum value for the current frame is updated.
  • the first vertical block projection data maximum value is read out and provided to the second vertical block projection data maximum value storage unit 28.
  • the first vertical block projection data maximum value read from the first vertical block projection data maximum value storage unit 24 is the previous frame. Stored as the second vertical block projection data maximum value (vertical block projection data maximum value of the previous frame).
  • the vertical block projection data maximum value of the current frame stored in the first vertical block projection data maximum value storage unit 24 is the second vertical block projection data of the next frame.
  • the maximum value storage unit 28 stores the vertical block projection data of the previous frame as the maximum value.
  • the second vertical block projection data maximum value storage unit 28 sets a first threshold (predetermined constant value) based on the second vertical block projection data maximum value for the previous frame. It is. For example, if the maximum value of the vertical block projection data of the previous frame is P2max, the first threshold ⁇ ⁇ is calculated by the following equation (2).
  • k2 is a predetermined coefficient, and 0 ⁇ k2 ⁇ 1.
  • the calculation of the first threshold value a1 is not limited to the above equation (2). If the maximum value P2max in the vertical block projection data of the previous frame increases, the first threshold value oc1 increases. If it is a thing, you can use the conversion table again!
  • the first threshold intersection search unit 29 the second vertical block projection data read from the second vertical block projection line memory 27 and the second vertical block projection data maximum value The intersection with the first threshold output from the storage unit 28 (first threshold intersection) is searched for in the horizontal direction.
  • the information on the first threshold intersection obtained by the first threshold intersection searching unit 29 is output to the vertical block projection data reading unit 30 and the vertical block horizontal motion vector calculating unit 31.
  • the vertical direction block projection data reading unit 30 (the first frame of the current frame corresponding to the motion threshold detection range centered on the first threshold intersection output from the first threshold intersection searching unit 29 is used. Read vertical block projection data from the first vertical block projection line memory 26.
  • the range is from (—V) to (+ V) (where V is a positive integer) centered on the first threshold intersection
  • the projection data read from the first vertical block projection line memory 26 is In the horizontal direction
  • the (A (i) -V) force is also partial data of the first vertical block projection data in the range up to (A (i) + V).
  • the first vertical block projection data read from the first vertical block projection line memory 26 by the vertical block projection data reading unit 30 is sent to the vertical block horizontal motion vector calculation unit 31. Is output.
  • the first vertical block projection data output from the vertical block projection data reading unit 30 is converted into n-values via the input terminal 31 1 of the vertical block horizontal motion vector calculation unit 31 shown in FIG. It is input to the device 314 (compression means).
  • the n-value converter 314 outputs the first vertical direction based on the second threshold value output from the first vertical block projection data maximum value storage unit 24 and input via the input terminal 312. Convert the projection data into n values.
  • the n-value converter 314 calculates the data length of each array element, for example, the data array Mv (FIG. 9 (b)) regarding the projection data of the current frame extracted by the vertical block projection data reading unit 30. Compressed by ternary processing The processing of the n-value converter 314 will be described with reference to FIG.
  • FIG. 10 is a diagram for explaining n-value key processing in the n-value converter 314.
  • the ⁇ -quantizer 314 outputs (1) when D ⁇ (-a 2), outputs 0 when (-a 2) ⁇ D ⁇ a 2, and outputs 1 when D> «2.
  • ternary key processing is performed. That is, in the ternarization process in the n-valued unit 314, the second threshold ⁇ 2 ( ⁇ 2> set based on the maximum value of the array elements of the data array Mv in the projection data of the current frame (subsequent frame).
  • the value of the array element related to the projection data of the current frame extracted by the vertical block projection data readout unit 30 is less than (1 a 2), (1 a 2) or more and a 2 or less, And if it is greater than a 2, a ternary ⁇ is performed in three steps.
  • the partial waveform power of the first vertical-direction block projection data of the current frame output from the vertical-direction block projection data reading unit 30 It is important what kind of positional relationship, that is, what kind of tendency the waveform is with respect to the threshold intersection, so that the bit accuracy is sufficient to identify peaks and valleys in the first vertical block projection data waveform. Is sufficient.
  • n-value converter 314 motion vector detection accuracy is improved by performing an appropriate n-value conversion process on the first vertical block projection data.
  • the operations of the first threshold intersection searching unit 29, the vertical block projection data reading unit 30, and the vertical block horizontal motion vector calculating unit 31 described above will be specifically described with reference to FIG. explain.
  • the horizontal axes of (a) and (b) in Fig. 11 indicate the positions of the projection data array Mv (the array elements of (b) in Fig. 9.
  • the first threshold value intersections A (1) to A (8) are indicated by circles.
  • the first threshold intersection search unit 29 relates to the projection data obtained by the vertical block projection unit 23 with respect to the previous frame, and the elements of the projection data array Mv (Fig. 9 (b)).
  • the position of the array element at each first threshold crossing point where the waveform W2 in which the array element value is graphed in turn and the line where the array element value is the first threshold value (predetermined constant value) a 1 intersects Determine.
  • the vertical block projection data reading unit 30 performs a predetermined motion vector detection range centered on each first threshold intersection A (1) to A (8) shown in (a) of FIG.
  • the vertical block projection data of the current frame is read from the first vertical block projection line memory 26.
  • the vertical block projection data reading unit 30 performs a vertical block projection on a data array in a predetermined range centered on the position of the array element of the projection data (data array) at each first threshold intersection. This is extracted from the projection data of the current frame (subsequent frame) output from the unit 23 and reduced in the number of bits by the bit number reduction unit 25.
  • the (A (7) -V) force is also (A (7) In the range up to + V) (waveform part in the rectangular broken line)
  • the corresponding first vertical block projection data Wl is read out.
  • the first vertical block projection data read by the vertical block projection data read unit 30 is the first vertical block projection data maximum value storage unit 24.
  • the ⁇ value is processed by the ⁇ value unit 314 of the vertical block horizontal motion vector calculation unit 31.
  • the range ( ⁇ (7) —V) force is also up to (A (7) + V) (the waveform part in the rectangular broken line) in Fig. 11 (c )
  • the first vertical block projection data is processed in three values.
  • the vertical block projection data of the current frame is represented by “1”, “0”, or “1”.
  • the n-value converter 314 performs n-value processing as shown in (c) of FIG. 11 for all the first threshold intersections output from the first threshold intersection search unit 29. Done.
  • the first threshold value intersection searching unit 29, which also outputs the first threshold value intersection output via the input terminal 313, is used as the center, and the n value generator 314 outputs the n value.
  • the first vertical block projection data that has been converted to the first vertical block projection data that has been read from the horizontal motion vector addition memory 316 and has been n-valued up to the previous one is added. Then, the addition result is stored in the horizontal motion vector addition memory 316 again.
  • the adder 315 adds the first vertical block projection data that has been n-valued for the last one of all the first threshold intersections detected by the first threshold intersection search unit 29. Then, when the addition process for one vertical block is completed, the addition result is output to the peak detector 317.
  • peak detection section 317 reads the addition result from horizontal motion vector addition memory 316 that stores the addition results for all the first threshold intersections. You may do it.
  • the peak detector 317 includes, for all the first threshold value intersections detected by the first threshold value intersection search unit 29, a motion threshold detection range centered on each first threshold value intersection (described above).
  • the first vertical block projection data with n values corresponding to the range of the V A force for inputting data (hereinafter also referred to as “vertical block n-value data”) A peak value related to the vertical block n-value data is detected by a peak detector 317.
  • the peak position of the vertical block n-value data detected by this peak detector 317 becomes the horizontal motion vector obtained by the vertical block force, and the horizontal direction motion determination unit via the output terminal 3 18 Output to 32.
  • the vertical block projection data readout unit 30 also extracts the vertical block projection data (data array Mv ((b) in Fig. 9) force, and the n-value unit 314 outputs the data.
  • the values of array elements having the same relative position are added to the position of the array element at each first threshold intersection. Will be.
  • the peak detector 317 When the vertical block n-value data generated by the adder 315 is input to the peak detector 317, the horizontal square shown in Fig. 12 (b) is obtained as the horizontal motion vector of the vertical block. Direction peak position hv is detected. That is, the peak detector 317 detects a motion vector in the horizontal direction of the frame image based on the addition result added by the adder 315.
  • the peak detector 317 searches for the maximum peak position in the motion vector detection range (range of V), but if there are multiple identical maximum values, Priority is given to those close to 0 (in negative positions when the distance to origin 0 is the same). It should be noted that not only such a peak position detection rule, but the maximum value at the positive position may be prioritized, and the motion vector tendency in the previous frame is used for detection of the peak position in the current frame. May be.
  • the horizontal motion vectors calculated for each vertical block by the peak detector 317 are sequentially input to the horizontal motion vector determination unit 32 via the output terminal 318.
  • the horizontal direction motion vector of the entire image is determined based on the horizontal direction motion vector of each vertical block sequentially output from the vertical direction block horizontal direction motion vector calculation unit 31.
  • the In the horizontal direction motion vector determination unit 32 for example, the horizontal direction motion vector having the highest appearance frequency is determined as the horizontal direction motion vector of the entire image.
  • the horizontal direction motion vector determination unit 32 determines the horizontal direction motion vector for the entire frame image based on the horizontal direction motion vector of each vertical block. Even if there is, there will be no false reaction to the movement.
  • the frame image power is read by sequentially repeating the pixel scanning of the horizontal line in the vertical direction.
  • the direction image dividing unit 41 divides the block horizontally. That is, the horizontal image dividing unit 41 sets a plurality of image regions (horizontal blocks) obtained by dividing the frame image in the horizontal direction. As a result, in the subsequent processing, processing and management are performed for each horizontal block.
  • the image data force of 640 pixels x 480 pixels is 10 horizontal directions having a width (division width) of 64 pixels in the horizontal direction. Bro Divided into hb0 to hb9. Note that the division width and the number of divisions shown in (a) of FIG. 13 are not essential.
  • the image divided into 10 horizontal blocks hbO to hb9 by the horizontal image dividing unit 41 as shown in FIG. 13 (a) is the edge component extending in the horizontal direction in the horizontal edge extraction filtering unit 42.
  • Filters used in this filtering process include a (1, 1) 2-tap filter that simply takes the difference between adjacent pixels in the vertical direction, and (—1, 2, — 1) equivalent to the second derivative.
  • a 3-tap filter can be used. It is essential to use such a filter, as long as the output value rises in the image area where the luminance change is large in the vertical direction.
  • the image data in which the horizontal edge is emphasized for each horizontal block (image region) hbO to hb 9 in the horizontal edge extraction filtering unit 42 is input to the horizontal block projection unit 43, and the horizontal block Projection unit 43 projects in the horizontal direction.
  • This projection can reduce the noise component in the horizontal direction (between lines) and enhance the edge component in the horizontal direction, so that the horizontal edge corresponding to the feature point is highlighted to improve the motion vector detection accuracy. It will be possible to plan.
  • the operation of the horizontal block projection unit 43 will be described with reference to the conceptual diagram of FIG.
  • the horizontal block projection unit 43 when the input of one horizontal line of each horizontal block hbO to hb9 shown in (a) of Fig. 13 is completed, the horizontal block projection unit 43 has a data array Mh for one vertical line.
  • Block projection data hnO to hn9 (1 array element of (b) in Fig. 13 is generated. Therefore, all array elements are arranged when the input of the final horizontal line of each horizontal block hbO to hb9 is Note that the data array Mh is an effective element in a 2-tap filter such as force (1, 1) that has array elements of the total number of pixels in the vertical line (for example, 480).
  • a 3-tap filter such as 1 (for example, 479) or (1, 1, 2, 1), the effective element is the total number of pixels for the vertical line minus 2 (for example, 478).
  • image data (image data subjected to horizontal edge emphasis) of each horizontal block hbO to hb9 input via the input terminal 431 force adder 432 is input.
  • the adder 432 first, one horizontal label of the input horizontal block is displayed.
  • the data in the horizontal projection temporary storage memory 433 is written into the horizontal projection temporary storage memory 433 without reading out the data.
  • the adder 432 reads the addition result up to the previous pixel of one horizontal line stored in the horizontal projection temporary storage memory 433, and outputs one horizontal line of the horizontal block input from the input terminal 431. Is added to the current pixel, and the addition result is written back to the horizontal projection temporary storage memory 433.
  • the projection data obtained by adding all the pixels of one horizontal line of the horizontal block in the adder 432 is stored in the horizontal projection temporary storage memory 433, and one horizontal line of the next horizontal block is stored.
  • the projection data in the horizontal projection temporary storage memory 433 may be read out and output from the output terminal 434.
  • the first horizontal block projection line memory 44 uses the horizontal block projection data of the current frame input from the horizontal block projection unit 43 as the first horizontal block projection data for each horizontal block. save.
  • the first horizontal block projection data maximum value storage unit 45 calculates the maximum value for the projection data of the horizontal block input from the horizontal block projection unit 43, and the first horizontal block projection data maximum Save as a value (maximum horizontal block projection data for the current frame).
  • the second horizontal block projection line memory 46 stores the horizontal block projection data read from the first horizontal block projection line memory 44 as the second horizontal block projection data for the previous frame. To do.
  • the first horizontal direction Maximum block projection data maximum value storage unit 45 outputs the first horizontal block projection data maximum value from the second horizontal block projection data maximum value for the previous frame (horizontal block projection data maximum value for the previous frame). Saved as
  • the horizontal block projection data maximum value of the current frame stored in the first horizontal block projection data maximum value storage unit 45 is the second horizontal block projection data in the next frame.
  • the maximum value storage unit 47 stores the horizontal block projection data of the previous frame as the maximum value.
  • the second horizontal block projection data maximum value storage unit 47 calculates the fourth threshold value based on the calculated horizontal block projection data maximum value of the previous frame. For example, if the maximum horizontal block projection data value for the previous frame is P4max, the fourth threshold a4 is calculated by the following equation (3).
  • k4 is a predetermined coefficient, and 0 ⁇ k4 ⁇ 1.
  • the calculation of the fourth threshold value ⁇ 4 is not limited to the above equation (3). If the maximum horizontal block projection data P4max of the previous frame increases, the fourth threshold value a4 increases. Any conversion table can be used. In addition, for the fourth threshold ⁇ 4, it is not necessary to use the second horizontal block projection data maximum value for each horizontal block. For example, the maximum horizontal block projection data for the entire image of the previous frame. The fourth threshold value may be calculated using the value, and the same fourth threshold value may be adopted for the entire image.
  • the second horizontal block projection data maximum value storage unit 47 sets a third threshold (predetermined constant value) based on the second horizontal block projection data maximum value for the previous frame. For example, if the maximum horizontal block projection data value of the previous frame is P3max, the third threshold value a3 is calculated by the following equation (4).
  • k3 is a predetermined coefficient, and 0 ⁇ k3 ⁇ 1.
  • the calculation of the third threshold ⁇ 3 is not limited to the above equation (4). If the maximum horizontal block projection data value P3max of the previous frame increases, the third threshold oc 3 increases. Any conversion table can be used. For the third threshold ⁇ 3 It is not necessary to use the second horizontal block projection data maximum value for each horizontal block.For example, the third threshold value is calculated using the maximum horizontal block projection data value for the entire previous frame image. However, the same third threshold value may be adopted for the entire image.
  • the third threshold intersection search unit 48 the second horizontal block projection data read from the second horizontal block projection line memory 46 and the second horizontal block projection data maximum value are obtained.
  • the intersection with the third threshold (third threshold intersection) output from the storage unit 47 is searched in the vertical direction.
  • Information on the third threshold intersection obtained by the third threshold intersection searching unit 48 is input to the horizontal block projection data reading unit 49 and the horizontal block vertical motion vector calculating unit 50.
  • the horizontal direction block projection data reading unit 49 outputs the first frame of the current frame corresponding to the motion threshold detection range centered on the third threshold intersection output from the third threshold intersection search unit 48. Read the horizontal block projection data from the first horizontal block projection line memory 44.
  • the range is ( ⁇ U) force centered on the third threshold intersection and (+ U) (where U is a positive integer)
  • the projection data read from the first horizontal block projection line memory 44 is In the vertical direction
  • the (B (i) -U) force is also partial data of the first horizontal block projection data in the range up to (B (i) + U).
  • the first horizontal block projection data read from the first horizontal block projection line memory 44 by the horizontal block projection data reading unit 49 is sent to the horizontal block vertical motion vector calculation unit 50. Is output.
  • the first horizontal block projection data output from the horizontal block projection data reading unit 49 is converted into an n-value converter via the input terminal 501 of the horizontal block vertical motion vector calculation unit 50 shown in FIG. 504 (compression means).
  • the n-value converter 504 outputs the first horizontal direction based on the fourth threshold value output from the second horizontal block projection data maximum value storage unit 47 and input via the input terminal 502. Convert the projection data into n values.
  • the n-value converter 504 is extracted by the horizontal block projection data reading unit 49.
  • the data length of each array element in the data array Mh (Fig. 13 (b)) related to the projection data of the current frame is compressed.
  • This n-valuer 504 is processed in the same manner as the above-described n-valuer 314! ⁇ For example, ternary processing is executed.
  • the fourth threshold ⁇ 4 ( ⁇ 4> set based on the maximum value of the array elements of the data array Mh in the projection data of the previous frame is used. For (0), if the value of the array element for the projection data of the current frame extracted by the horizontal block projection data readout unit 49 is less than (1 ⁇ 4), (- ⁇ 4) or more and ⁇ 4 or less, And if the value is larger than ⁇ 4, the ternary value is calculated in three steps. It should be noted that the ⁇ -value calculator 504 does not necessarily have the same characteristics as the ⁇ -value calculator 314, and may have different characteristics from the ⁇ -value calculator 314.
  • the third threshold intersection search unit 48 uses the second horizontal block projection data maximum in the waveform of the second vertical block projection data W4 related to the previous frame as shown in Fig. 14 (a). Third threshold value intersections B (1) to B (6) that intersect with the third threshold value a3 output from the value storage unit 47 are obtained.
  • the third threshold value intersection search unit 48 relates to the projection data obtained by the horizontal block projection unit 43 with respect to the previous frame, and includes elements of the projection data array Mh ((b) in Fig. 13).
  • the horizontal block projection data reading unit 49 performs a predetermined motion vector detection range centered on each of the third threshold intersections B (1) to B (6) shown in (a) of Fig. 14.
  • the horizontal block projection data of the current frame is read from the first horizontal block projection line memory 44.
  • the horizontal block projection data reading unit 49 generates a horizontal block projection of a predetermined range of data array centered on the position of the array element of the projection data (data array) at each third threshold intersection. Extracted from the projection data of the current frame (back frame) obtained in part 43.
  • the third threshold intersection B (4) as shown in Fig. 14 (b), the (B (4) -U) force (B (4) + U) around the third threshold intersection B (4) )
  • the first horizontal block projection data W3 corresponding to the range up to (the waveform portion within the rectangular broken line) is read out.
  • the first horizontal block projection data read out by the horizontal block projection data reading unit 49 is the second horizontal block projection data maximum value storage unit 47.
  • the output fourth threshold value ⁇ 4 is used, and n-value processing is performed by the n-value unit 504 of the horizontal block vertical motion vector calculation unit 50.
  • n-value processing as shown in (c) of FIG. 14 is performed for all the third threshold intersections output from the third threshold intersection search unit 48.
  • the third threshold value intersection search unit 48 output power is also output via input terminal 503.
  • the first horizontal block projection data converted into the first horizontal block projection data added to the previous n values read from the vertical motion vector addition memory 506 are added together. Then, the addition result is stored in the vertical motion vector addition memory 506 again.
  • the first horizontal block projection data that has been n-valued for the last one of all the third threshold intersections detected by the third threshold intersection search unit 48 is added by the adder 505.
  • the addition result is output to the peak detector 507.
  • the peak detector 507 includes a motion threshold detection range centered on each third threshold value intersection for all the third threshold value intersections detected by the third threshold value intersection search unit 48 (described above). This is the force to which the data (hereinafter also referred to as “horizontal block n-value ⁇ data”) that is the sum of the first horizontal block projection data with n-values corresponding to ( ⁇ U range) is input.
  • the peak detector 507 detects a peak value related to the n-valued data.
  • the peak position of the horizontal block n value ⁇ data detected by this peak detector 507 becomes the vertical motion vector obtained by the horizontal block force, and the vertical motion determination unit via the output terminal 5008 Output to 51.
  • the peak detector 507 When the horizontal block n-value ⁇ data generated by the adder 505 is input to the peak detector 507, the vertical motion vector shown in Fig. 15 (b) is displayed as the vertical motion vector of the horizontal block. A direction peak position w is detected. That is, the peak detector 507 detects a motion vector in the vertical direction of the frame image based on the addition result added by the adder 505.
  • this peak detector 507 is within the motion vector detection range ( ⁇ U range).
  • the peak position with the maximum value is searched, but if there are multiple identical maximum values, priority is given to the one close to the origin 0 (or the negative position if the distance to the origin 0 is equal).
  • the maximum value at the positive position may be prioritized, and the motion vector tendency in the previous frame is used for detection of the peak position in the current frame. May be.
  • the vertical motion vector (peak value) calculated for each horizontal block by the peak detector 507 is sequentially input to the vertical motion vector determination unit 51 via the output terminal 508.
  • the vertical motion vector determination unit 51 determines the vertical motion vector of the entire image based on the vertical motion vector of each horizontal block sequentially output from the horizontal block vertical motion vector calculation unit 50.
  • the vertical motion vector determination unit 51 determines, for example, the vertical motion vector having the highest appearance frequency as the vertical motion vector of the entire image.
  • Horizontal block vertical motion vector calculation unit 50 The average value of the vertical motion vectors of may be determined as the vertical motion vector of the entire image.
  • the vertical motion vector determination unit 51 determines the vertical motion vector for the entire frame image based on the vertical motion vector of each horizontal block, motion is performed on a part of the image. Even if there is, there will be no false reaction to the movement.
  • the vertical block projection data is generated by projecting in the vertical direction for each vertical block in which the vertical edge is emphasized, and the vertical frame of the previous frame is generated. Intersection of direction block projection data and first threshold ⁇ 1 The vertical frame projection data of the current frame corresponding to the movement range detection center around the point (first threshold intersection) is read and added for each distance of each first threshold intersection force. Force Since the motion vector in the horizontal direction is detected, the motion of the vertical edge of the image corresponding to the feature point can be tracked with a small amount of computation.
  • horizontal block projection data is generated by projecting in the horizontal direction for each horizontal block with emphasized horizontal edges, and the horizontal block projection data and the third threshold value of the previous frame are generated.
  • the bit number reduction unit 25 of the motion vector detection device 1 uses the maximum value of the vertical block projection data of the current frame calculated by the first vertical block projection data maximum value storage unit 24. Since the number of bits in the vertical block projection data of the frame is reduced, the amount of computation in the subsequent processing can be suppressed, and motion vectors can be detected more quickly.
  • the motion vector detection device 1 calculates the second vertical block projection data maximum value for the previous frame and sets the first threshold value ⁇ 1 based on this maximum value, an appropriate first value is set. A threshold intersection can be set. Similarly, since the second horizontal block projection data maximum value for the previous frame is obtained and the third threshold value oc3 is set based on this maximum value, an appropriate third threshold value intersection can be set.
  • the vertical image dividing unit 21 divides the frame image in the vertical direction, and then emphasizes the edge in the vertical direction for each divided image (vertical block). A divided image with emphasized vertical edges can be easily generated. Similarly, after the frame image is divided in the horizontal direction by the horizontal image dividing unit 41, the horizontal edge is emphasized for each divided image (horizontal block). It can be generated easily.
  • the n-value generator 314 of the vertical block horizontal motion vector calculation unit 31 converts the projection data read by the vertical block projection data reading unit 30 into n-values. Subsequent calculations can be reduced, and motion vectors can be detected more quickly.
  • the n-value converter 314 since the n-value converter 314 performs ternary processing based on the second threshold value oc 2 set based on the maximum value of the vertical block projection data of the current frame, it ensures a relatively large dynamic range. However, motion vector detection capable of real-time processing can be realized. Also, the memory can be greatly reduced.
  • the n-value generator 504 of the horizontal block vertical motion vector calculation unit 50 performs n-value conversion on the projection data read by the horizontal block projection data reading unit 49, and so on.
  • the amount of calculation can be reduced, and motion vectors can be detected more quickly.
  • the n-value converter 504 sets an appropriate fourth threshold ⁇ 4 in order to calculate a three-value based on the fourth threshold ⁇ 4 based on the maximum value of the horizontal block projection data of the previous frame.
  • motion vector detection capable of real-time processing without greatly degrading the dynamic range.
  • the memory can be greatly reduced.
  • the motion vector detection device 1 A according to the second embodiment of the present invention has a force similar to that of the motion vector detection device 1 according to the first embodiment.
  • the vertical motion vector detection unit are different in configuration.
  • the configurations of the horizontal direction motion vector detection unit 2A and the vertical direction motion vector detection unit 4A in the motion vector detection device 1A will be described with reference to FIGS.
  • FIG. 16 is a block diagram showing a main configuration of the horizontal direction motion vector detection unit 2A.
  • parts having the same functions as those of the horizontal motion vector detection unit 2 described in the first embodiment are denoted by the same reference numerals, and redundant description is omitted.
  • the edge enhancement unit of the horizontal direction motion vector detection unit 2A the vertical direction image segmentation unit 21, the vertical direction edge extraction filtering unit 22, and the edge enhancement unit of the horizontal direction motion vector detection unit 2 of Embodiment 1
  • the arrangement of is reversed.
  • the extraction filtering unit 22 performs extraction processing for extracting edge components extending in the vertical direction, in other words, enhancing an image portion that changes sharply in the horizontal direction.
  • the vertical image dividing unit 21 sets a plurality of image regions (vertical blocks) obtained by dividing the frame image subjected to edge enhancement in the vertical direction. As a result, in the subsequent processing, processing and management are performed for each vertical block.
  • the image data divided by the vertical image dividing unit 21 is input to the vertical block projecting unit 23.
  • the processing after the vertical block projecting unit 23 is the horizontal motion vector of the first embodiment. Processing similar to that of the detection unit 2 is performed.
  • FIG. 17 is a block diagram showing the main configuration of the vertical motion vector detection unit 4A.
  • parts having the same functions as those in the vertical direction motion vector detection unit 4 described in the first embodiment are denoted by the same reference numerals, and redundant description is omitted.
  • edge enhancement unit of the vertical direction motion vector detection unit 4A the horizontal image segmentation unit 41, the horizontal direction edge extraction filtering unit 42, and the edge enhancement unit of the vertical direction motion vector detection unit 4 of Embodiment 1
  • the arrangement of is reversed.
  • the operation of the vertical motion vector detection unit 4A will be described.
  • a horizontal edge As shown in Fig. 2, when a frame image read by repeating pixel scanning of a horizontal line in order in the vertical direction is input to the input terminal 40 of the vertical motion vector detection unit 4A, a horizontal edge
  • the extraction filtering unit 42 performs extraction of edge components extending in the horizontal direction, in other words, filtering processing that emphasizes an image portion that changes sharply in the vertical direction.
  • the horizontal image dividing unit 41 sets a plurality of image regions (horizontal blocks) obtained by dividing the frame image subjected to edge enhancement in the horizontal direction. Therefore, in the subsequent processing, processing and management are performed for each horizontal block.
  • the image data divided by the horizontal image dividing unit 41 is input to the horizontal block projecting unit 43.
  • the processing after the horizontal block projecting unit 43 is the vertical direction motion vector of the first embodiment. Processing similar to that of the detection unit 4 is performed.
  • the vertical edge extraction filtering unit 22 emphasizes the edge in the vertical direction with respect to the frame image, and then the edge-enhanced frame image is vertically converted to the vertical image dividing unit 21. Since the image is divided in the direction, a divided image in which the edge in the vertical direction is emphasized can be easily generated.
  • the horizontal image dividing unit 41 divides the edge-enhanced frame image in the horizontal direction. Split images with enhanced edges can be easily generated.
  • the vertical direction edge extraction filtering unit 22 and the horizontal direction edge extraction filtering unit 42 are separately arranged in the horizontal direction motion vector detection unit 2A and the vertical direction motion vector detection unit 4A.
  • the vertical edge extraction filtering unit 22 and the horizontal edge extraction filtering unit 42 are both provided with a horizontal Z vertical edge extraction filtering unit that integrates the functions of the vertical edge extraction filtering unit 22 and the output of the vertical image segmentation unit 21. Alternatively, it may be input to each of the horizontal image dividing unit 41.
  • the motion vector detection device 1B according to the third embodiment of the present invention has a force similar to that of the motion vector detection device 1 according to the first embodiment.
  • the configurations of the motion vector detection unit and the vertical direction motion vector detection unit are different.
  • FIG. 18 is a block diagram showing a main configuration of the horizontal direction motion vector detection unit 2B.
  • parts having the same functions as those in the horizontal motion vector detection unit 2 described in the first embodiment are denoted by the same reference numerals, and redundant description is omitted.
  • the horizontal motion vector detection unit 2B includes an input terminal 20, a vertical image segmentation unit 21, a vertical edge extraction filtering unit 22, a vertical block projection unit 23, and a first vertical block projection.
  • a maximum data storage unit 24, a bit number reduction unit 25, and a first vertical block projection line memory 26 are provided.
  • the horizontal motion vector detection unit 2 includes a second vertical block projection line memory 27, a second vertical block projection data maximum value storage unit 28, a first threshold intersection search unit 29, and a vertical direction.
  • a block projection data reading unit 30, a vertical block horizontal motion vector calculation unit 310, a horizontal motion vector determination unit 320, and an output terminal 33 are provided.
  • Horizontal motion vector detection unit 2B In the horizontal motion vector detection unit 2B described above, the functional power of the vertical block horizontal motion vector calculation unit 310 and the horizontal motion vector determination unit 320 is implemented. Horizontal motion vector detection unit 2 according to Embodiment 1 This is different from the vertical block horizontal motion vector calculation unit 31 and the horizontal motion vector determination unit 32.
  • the vertical block horizontal motion vector calculation unit 310 uses the second threshold value output from the first vertical block projection data maximum value storage unit 24, and uses the vertical block projection data read unit 30.
  • Each of the first vertical block projection data read out in step n is converted into n values (n is an integer of 2 or more) to reduce the number of bits, and the n converted projection data from the first threshold intersection Add for each distance.
  • the peak position (horizontal motion vector described later) and peak value information in the addition data are provided to the horizontal motion vector determination unit 320.
  • the horizontal direction motion vector determination unit 320 determines the horizontal direction motion vector of the image based on the output from the vertical direction block horizontal direction motion vector calculation unit 31.
  • the horizontal motion vector of the image determined here is output from the output terminal 33.
  • Horizontal The direction motion vector determination unit 320 outputs the first vertical block projection data maximum value and the first threshold intersection search unit 29 stored in the first vertical block projection data maximum value storage unit 24. It is configured to receive information on the threshold crossing 1 and use it for processing that increases the reliability of the horizontal motion vector. The specific operation will be described later in detail.
  • FIG. 19 is a block diagram showing the main configuration of the vertical block horizontal motion vector calculation unit 310.
  • the vertical block horizontal motion vector calculation unit 310 includes three input terminals 311 to 313, an n-value converter 314, and a first vertical block projection that is n-valued by the n-value generator 314.
  • An adder 315 for adding data, a horizontal motion vector addition memory 316 as a buffer memory for sequentially storing the data added by the adder 315, a peak detector 3170, and output terminals 318 and 319 are provided. ing.
  • the first vertical block projection data output from the vertical block projection data reading unit 30 is input to the input terminal 311.
  • the first vertical block projection data maximum value is input to the input terminal 312.
  • the second threshold value output from the storage unit 24 is input.
  • the input terminal 313 receives information about the first threshold value intersection output from the first threshold value intersection search unit 29.
  • the n-value converter 314 converts the first vertical block projection data input from the input terminal 311 into an n-value key (for example, ternarization based on the second threshold value input from the input terminal 312). )
  • the adder 315 converts the first vertical block projection data n-valued by the n-value generator 314 and the data read from the horizontal motion vector addition memory 316 into a first threshold intersection. The result of the addition is stored in the horizontal motion vector addition memory 316 again. When the addition for all the first threshold intersections related to the vertical block is completed by repeating such an addition operation, the addition data related to the vertical block is output to the peak detector 3170.
  • the peak detector 3170 is a peak position in the addition data output from the adder 315.
  • the peak position detected by the peak detector 3170 is output via the output terminal 318 to the horizontal direction motion vector determination unit 320.
  • the peak value is manually input to the horizontal direction motion vector determination unit 320 via the output terminal 319.
  • FIG. 20 is a block diagram showing the main configuration of the vertical motion vector detection unit 4B.
  • the vertical motion vector detection unit 4B includes an input terminal 40, a horizontal image segmentation unit 41, a horizontal edge extraction filtering unit 42, a horizontal block projection unit 43, and a first horizontal block projection.
  • a line memory 44 and a first horizontal block projection data maximum value storage unit 45 are provided.
  • the vertical motion vector detection unit 4 includes a second horizontal block projection line memory 46, a second horizontal block projection data maximum value storage unit 47, a third threshold intersection search unit 48, A direction block projection data reading unit 49, a horizontal block vertical direction motion vector calculation unit 500, a vertical direction motion vector determination unit 510, and an output terminal 52 are provided.
  • the functional power of the horizontal block vertical motion vector calculation unit 500 and the vertical motion vector determination unit 510 is implemented.
  • Vertical motion vector detection unit 4 according to Embodiment 1 This is different from the horizontal block vertical motion vector calculator 50 and the vertical motion vector determiner 51.
  • the horizontal block vertical motion vector calculation unit 500 uses the fourth threshold value output from the second horizontal block projection data maximum value storage unit 47, and uses the horizontal block projection data read unit 49.
  • Each of the first horizontal block projection data read out in step 1 is converted to n values (n is an integer of 2 or more) to reduce the number of bits, and the n-valued projection data is converted from the third threshold intersection. Add for each distance. Then, the peak position information (vertical direction motion vector described later) and peak value information in the addition data are provided to the vertical direction motion vector determination unit 510.
  • the vertical motion vector determination unit 510 determines the vertical motion vector of the image based on the output from the horizontal block vertical motion vector calculation unit 500.
  • the vertical motion vector of the image determined here is output from the output terminal 52.
  • the vertical motion vector determination unit 510 uses the first horizontal block projection data maximum value and the third threshold intersection stored in the first horizontal block projection data maximum value storage unit 45. The configuration is such that it receives information on the third threshold intersection output from the search unit 48 and uses it for processing to increase the reliability of the vertical motion vector. The specific operation will be described later in detail.
  • FIG. 21 is a block diagram showing the main configuration of the horizontal block vertical motion vector calculation unit 500.
  • the horizontal block vertical motion vector calculation unit 500 includes three input terminals 501 to 503, an n-value converter 504, and a first horizontal block projection obtained by n-value conversion by the n-value converter 504.
  • An adder 505 for adding data a vertical motion vector addition memory 506 as a buffer memory for sequentially storing the data added by the adder 505, a peak detector 5070, and output terminals 508 and 509 /!
  • the first horizontal block projection data output from the horizontal block projection data reading unit 49 is input to the input terminal 501 and the second horizontal block projection data maximum value is input to the input terminal 502.
  • the fourth threshold value output from the storage unit 47 is input.
  • information on the third threshold value intersection output from the third threshold value intersection search unit 48 is input to the input terminal 503.
  • the n-value quantizer 504 converts the first horizontal block projection data input from the input terminal 501 into an n-value key (for example, a ternary value) based on the fourth threshold value input from the input terminal 502. )
  • the adder 505 outputs the first horizontal block projection data n-valued by the n-value generator 504 and the data read from the vertical motion vector addition memory 506 to the third threshold intersection.
  • the result of addition is stored in the vertical motion vector addition memory 506 again.
  • the addition data for the horizontal block is output to the peak detector 5070.
  • the peak detector 5070 is the peak position in the sum data output from the adder 505.
  • the peak position detected by the peak detector 507 is input to the vertical motion vector determination unit 510 via the output terminal 508, and the peak value is manually input to the horizontal motion vector determination unit 510 via the output terminal 509. It will be. [0226] The operation of the motion vector detection device IB having the above configuration will be described below.
  • the operation of the horizontal direction motion vector detection unit 2B is basically the same as the operation of the horizontal direction motion vector detection unit 2 described in Embodiment 1, and a duplicate description is omitted.
  • the operation of the vertical block horizontal motion vector calculation unit 310 and the horizontal direction motion vector determination unit 320 will be mainly described.
  • first threshold intersection search unit 29 the second vertical block projection data read from the second vertical block projection line memory 27 and the second vertical block projection data maximum value The intersection with the first threshold output from the storage unit 28 (first threshold intersection) is searched for in the horizontal direction.
  • the information on the first threshold intersection obtained by the first threshold intersection searching unit 29 is sent to the vertical block projection data reading unit 30, the vertical block horizontal motion vector calculating unit 310, and the horizontal motion vector determining unit 320. Is output.
  • the vertical direction block projection data reading unit 30 outputs the first frame of the current frame corresponding to the motion vector detection range centered on the first threshold intersection output from the first threshold intersection search unit 29.
  • the motion vector detection range is the first threshold.
  • the projection data read from the first vertical block projection line memory 26 is (A (i) — V) Force (A (i) + V) This is the partial data of the first vertical block projection data in the range.
  • the first vertical block projection data read from the first vertical block projection line memory 26 by the vertical block projection data reading unit 30 is sent to the vertical block horizontal motion vector calculation unit 310. Is output.
  • the first vertical block projection data output from the vertical block projection data reading unit 30 is converted into n values via the input terminal 311 of the vertical block horizontal motion vector calculation unit 310 shown in FIG. Input to the device 314. Since the processing of the n-value converter 314 has already been described with reference to FIG.
  • the first threshold value intersection output from first threshold value intersection search unit 29 via input terminal 313 is used as an n-value by n-value converter 314.
  • the first vertical block projection data and the addition value of the first n-valued vertical block projection data read from the horizontal motion vector addition memory 316 up to the previous one are added.
  • the addition result is stored again in the horizontal motion vector addition memory 316.
  • the n-valued first vertical block projection data regarding the last one of all the first threshold intersections detected by the first threshold intersection search unit 29 is added by the adder 315 to obtain one
  • the addition result is output to the peak detector 3170. Note that after the addition processing in the adder 315 is completed, the addition results regarding all the first threshold intersections are stored, and the peak detection unit 3170 reads out the addition results from the horizontal motion vector addition memory 316. May be.
  • the peak detector 3170 includes a motion threshold detection range centered on each first threshold intersection for all the first threshold intersections detected by the first threshold intersection search unit 29 (the above-mentioned (The range of V) is the force to which the data obtained by adding the n-valued first vertical block projection data (hereinafter also referred to as “vertical block n value ⁇ data”) is input.
  • This vertical block n The peak value related to the digitized data is detected by the peak detector 3170.
  • the peak position of the vertical block n-value ⁇ data detected by the peak detector 3170 becomes the horizontal motion vector obtained from the vertical block force, and is output to the horizontal motion vector determination unit 320 via the output terminal 318. Is output.
  • the peak value at that time is output from the output terminal 319.
  • the peak value of the added data obtained by adding and adding the horizontal motion vector (peak position) calculated for each vertical block by the peak detector 3170 and the n value of the vertical block. , Also referred to as “vertical direction block n-valued calorie calculation data peak value”) is input to the horizontal direction motion vector determination unit 320 via output terminals 318 and 319, respectively, and the vertical direction block n-valued addition data peak value is input. Is used to determine whether the vertical block is valid Z invalid.
  • the horizontal direction motion vector of the entire image is based on the horizontal direction motion vector of each vertical block sequentially output from the vertical direction block horizontal direction motion vector calculation unit 310. Is determined.
  • the calculated vertical motion vector determined as an invalid block is not used when determining the horizontal motion vector of the entire image.
  • FIG. 22 is a diagram for explaining a method for determining valid Z invalidity of each vertical block by using the first vertical block projection data maximum value.
  • FIG. 22 the image data of 640 pixels x 480 pixels shown in Fig. 9 (a) is taken as an example, and seven vertical blocks having a width (division width) of 64 pixels in the vertical direction are taken. The case of dividing into vb0 to vb6 is shown.
  • the first vertical block projection data maximum value of each vertical block output from the first vertical block projection data maximum value storage unit 24 (FIG. 18) is shown. Each block is shown in hexadecimal notation.
  • the medium force of the vertical block projection data maximum value of 1 is also determined as the maximum value in all blocks.
  • the vertical block vb2 has the maximum value in all blocks, and this value is referred to as the total vertical block projection data maximum value.
  • the horizontal direction motion vector determination unit 320 determines, as an invalid block, a vertical direction block having a maximum value of 1Z4 or less with respect to the maximum value of all vertical block projection data, for example.
  • vertical blocks vbO, vbl, and vb6 are half-IJ disconnected from the invalid block.
  • FIG. 23 is a diagram schematically illustrating determination of valid Z invalidity of a vertical block.
  • a vertical block that is determined to be an invalid block can be said to have a small pattern (there are few clear parts) or a very fine pattern as a result. On the other hand, it can be judged that the reliability is low. Therefore, the reliability of the horizontal motion vector can be improved by not using the vertical block determined to be an invalid block for determining the horizontal motion vector of the entire image.
  • the force described as the effective Z invalidity judgment condition being 1Z4 or less of the maximum value of all vertical block projection data, this is not limited to this. It may be 1Z8 or less. In this way, by setting the determination condition lZ2 n , it is possible to easily determine whether it is valid or invalid.
  • FIG. 24 is a diagram for explaining a method of determining valid Z invalidity of each vertical block using the vertical block n-valued addition data peak value.
  • the image data of 640 pixels ⁇ 480 pixels shown in (a) of FIG. 9 is taken as an example, and seven vertical blocks each having a width of 64 pixels (divided width) in the vertical direction. Minutes from vb0 to vb6 This shows the case of splitting.
  • the vertical block n-valued addition data peak value of each vertical block output from the vertical block horizontal motion vector calculation unit 310 is 16 for each block. Shown in decimal notation.
  • the horizontal direction motion vector determination unit 320 obtains the maximum value of the medium force of the vertical direction block n-valued addition data peak value in each of the vertical direction blocks vb0 to vb6.
  • the vertical block vb4 has the maximum value, and this value is referred to as the maximum value of the vertical block n-valued addition data peak value.
  • the vertical direction block n value A vertical block whose normalized data is less than a specified value B (for example, 7 in decimal notation) is determined as an invalid block.
  • the vertical blocks vbO, vbl, vb5 and vb6 are determined as invalid blocks.
  • the output of the adder 315 (Fig. 19) of the vertical block horizontal motion vector calculation unit 310 (Fig. 18) is the first n-valued with the second threshold value around the first threshold intersection.
  • the vertical block projection data is added, and the larger the number of first threshold crossings and the larger the amplitude (mountain) exceeding the second threshold (2) on the positive side, the larger the value. Conversely, if there is an amplitude that exceeds the negative second threshold (-a2), it will be canceled.
  • the maximum value of the output of the adder 315 that is, the vertical block n- valued sum data peak value of a certain vertical block is equal to or greater than the predetermined value A, while the other vertical blocks
  • the vertical block n-valued addition data peak value is less than or equal to the predetermined value B, it can be said that the other vertical block has a pattern in which the addition result is canceled or a pattern with fewer features and less amplitude.
  • FIG. 25 is a diagram schematically illustrating determination of valid Z invalidity of a vertical block.
  • the horizontal axis is the maximum value of the vertical blocks n-valued added data peak value and the vertical axis represents the graph with the vertical block n-valued added data peak value, vertical blocks n value conversion
  • the maximum value of the added data peak value is equal to or greater than the predetermined value A
  • an operation for determining a vertical block whose vertical block n-valued added data is equal to or smaller than the predetermined value B as an invalid block is shown.
  • the maximum value of the vertical block n-valued addition data peak value is smaller than the predetermined value A.
  • the vertical block n-valued addition data peak value is equal to or less than the predetermined value B. It also shows that even if there is another block, the block is not judged as an invalid block.
  • the effective Z / invalidity determination condition is a force indicating an example in which the predetermined value A is 12 and the predetermined value B is 7.
  • the number of horizontal pixels of the image is not limited to this. For example, if the number of pixels in the horizontal direction is 640 pixels, the predetermined value A can be set to a value of about 10 and the predetermined value B can be set to a value about half of that.
  • FIG. 26 is a diagram for explaining a method of determining the effective Z invalidity of each vertical block using the number of first threshold intersections.
  • Fig. 26 the image data of 640 pixels x 480 pixels shown in (a) of Fig. 9 is taken as an example, and seven vertical blocks having a width (division width) of 64 pixels in the vertical direction are taken as an example. The case of dividing into vb0 to vb6 is shown.
  • FIG. 26 the number of first threshold intersections output from the first threshold intersection searching unit 29 (FIG. 18) is shown in hexadecimal notation for each block.
  • the waveform of the second vertical block projection data related to the previous frame stored in the second vertical block projection line memory 27 and the second vertical block projection data are stored.
  • Information on the first threshold intersection at which the first threshold calculated by the direction block projection data maximum value storage unit 28 intersects is output. This information also includes information on the number of first threshold intersections. As shown in FIG. 26, the number of first threshold intersections is obtained for each of the vertical blocks vb0 to vb6.
  • FIG. 27 is a diagram schematically illustrating determination of valid Z invalidity of a vertical block.
  • the horizontal axis represents the maximum number of first threshold intersections in each of the vertical blocks vb0 to vb6, and the vertical axis represents the number of first threshold intersections.
  • the number of first threshold intersections in the vertical blocks vb0 to vb6 is equal to or less than the number of first threshold intersections for blocks having a predetermined value D (for example, 3 in decimal notation) or less. Regardless of the maximum value, it is determined as an invalid block.
  • the vertical blocks vbO and vb6 are determined to be invalid blocks.
  • the reliability of the horizontal motion vector can be improved by not using the vertical block determined to be an invalid block for determining the horizontal motion vector of the entire image.
  • the number of first threshold intersections is at least equal to or less than the number of pixels in the horizontal direction, and if the number is too large compared to the number of pixels in the horizontal direction, a very periodic pattern is captured. Therefore, for example, when the value is equal to or greater than a predetermined value E (for example, more than half of the number of pixels in the horizontal direction), the block may be determined as an invalid block.
  • a predetermined value E for example, more than half of the number of pixels in the horizontal direction
  • a block having a predetermined value D or less is determined as an invalid block. It may be configured to do so. In this case, if the maximum value of the number of first threshold intersections is smaller than the predetermined value, even if there is a block with a predetermined value D or less, the block is not judged as an invalid block and is invalid.
  • the block criteria can be set more carefully.
  • the method of determining the valid Z invalidity of each vertical block the vertical block n-valued sum data peak value is used.
  • the invalid block is determined and the invalid block is determined. It is possible to improve the reliability of the motion vector by not using the calculated horizontal motion vector when determining the horizontal motion vector of the entire image.
  • the effective Z invalidity is determined using the first vertical block projection data maximum value, and the effective Z invalidity of each vertical block is determined using the vertical block n-valued addition data peak value.
  • the effective Z invalidity is determined using the first vertical block projection data maximum value, and the effective Z invalidity of each vertical block is determined using the first threshold intersection information. Also good! ,.
  • the horizontal motion vector determination unit 320 determines the effective Z invalidity of the vertical block, and the horizontal motion vector force of the vertical block determined to be an effective block is also the horizontal motion vector of the entire image. To decide.
  • FIG. 29 An example of a method for determining the horizontal motion vector of the entire image will be described with reference to FIGS. 29 and 30.
  • FIG. 29 An example of a method for determining the horizontal motion vector of the entire image will be described with reference to FIGS. 29 and 30.
  • 29 and 30 show the case where the detection range of the horizontal motion vector is V to V.
  • V the case where V is 31 is shown as an example, and from 31 to 31 1 vector interval is displayed. It should be noted that the numbers displayed in the boxes provided for the respective vectors represent the number of vertical blocks having the same vector.
  • the horizontal motion vector 6 is calculated with two vertical blocks. Force All other vertical blocks have disjoint horizontal motion vectors. The minimum value of the distribution range is 14, and the maximum value is 27. The difference 41 is the motion vector detection range. It can be said that there is a great variation.
  • the sand corresponding to the horizontal motion vector obtained from each vertical block in the current frame is hatched! /.
  • the horizontal direction motion vector determination unit 320 the difference between the maximum value and the minimum value of the horizontal direction motion vector distribution range obtained from each vertical block is greater than or equal to a predetermined threshold B (for example, V described above).
  • a predetermined threshold B for example, V described above.
  • the number of vertical blocks having the horizontal motion vector 6 is a predetermined numerical value.
  • the numerical value A and the threshold value B are not limited to the above-described values. Further, the determination of the fluctuation is not limited to the above-described difference between the maximum value and the minimum value of the horizontal motion vector, and the standard deviation is used. May be judged to be large.
  • the horizontal motion vector of the current frame is calculated by the following procedure.
  • the outline is the closest to the horizontal motion vector of the previous frame, and the horizontal motion vector is the horizontal motion vector of the current frame. It is what.
  • the horizontal direction motion vector determination unit 320 also calculates each vertical direction block block. The determined horizontal motion vector is determined to be reliable.
  • the horizontal motion vector 5 is the horizontal motion vector of the previous frame
  • the horizontal motion vector obtained from each vertical block of the current frame closest to this is the horizontal motion vector.
  • Directional motion vector 6. Accordingly, the horizontal motion vector 6 is determined as the horizontal motion vector of the current frame.
  • the sand corresponding to the horizontal motion vector obtained for each vertical block force in the current frame is hatched
  • the block corresponding to the horizontal motion vector of the previous frame is hatched. Attached.
  • the horizontal motion vector 8 becomes the horizontal motion vector of the current frame.
  • the average that is, the horizontal motion vector of the previous frame itself is used as the horizontal motion vector of the current frame. I'll do it.
  • the information on the horizontal motion vector of the previous frame is stored in a predetermined storage unit (previous frame horizontal motion vector storage means) provided in the horizontal motion vector decision unit 320. It is configured to read as needed.
  • a predetermined storage unit previously frame horizontal motion vector storage means
  • the low-reliability V and vertical blocks are excluded by the operation of determining whether the vertical blocks are valid or invalid, and the high-reliability is calculated based on the vertical blocks.
  • the reliability of the horizontal motion vector of the entire image is evaluated in consideration of variations in the horizontal motion vector that is output, and even if it is determined to be reliable, by considering the horizontal motion vector of the previous frame, A little uncomfortable with movement from the previous frame A horizontal motion vector can be determined.
  • the operation of the vertical motion vector detection unit 4B is basically the same as the operation of the vertical motion vector detection unit 4 described in Embodiment 1, and a duplicate description is omitted.
  • the operations of the horizontal block vertical motion vector calculation unit 500 and the vertical direction motion vector determination unit 510 will be mainly described.
  • the third threshold intersection search unit 48 the second horizontal block projection data read from the second horizontal block projection line memory 46 and the second horizontal block projection data maximum value are obtained.
  • the intersection with the third threshold (third threshold intersection) output from the storage unit 47 is searched in the vertical direction.
  • the information on the third threshold intersection obtained by the third threshold intersection searching unit 48 is sent to the horizontal block projection data reading unit 49, the horizontal block vertical motion vector calculating unit 500, and the vertical motion vector determining unit 510. Is output.
  • the horizontal block projection data reading unit 49 outputs the first frame of the current frame corresponding to the motion threshold detection range centered on the third threshold intersection output from the third threshold intersection searching unit 48.
  • the horizontal block projection data is read from the first horizontal block projection line memory 44.
  • the projection data read from the first horizontal block projection line memory 44 is (B
  • the (i) —U) force is also partial data of the first horizontal block projection data in the range up to (B (i) + U).
  • the first horizontal block projection data read from the first horizontal block projection line memory 44 by the horizontal block projection data reading unit 49 is sent to the horizontal block vertical motion vector calculation unit 500. Is output.
  • the first horizontal block projection data output from the horizontal block projection data readout unit 49 is input to the horizontal block vertical motion vector calculation unit 500 shown in FIG. It is input to the n-value converter 504 via the power terminal 501. Since the processing of the n-value converter 504 has been described with reference to FIG. 10, the description thereof is omitted.
  • the third threshold intersection searching unit 48, the horizontal block projection data reading unit 49, and the horizontal block vertical motion vector calculation unit 500 (basically the same as the horizontal block vertical motion vector calculation unit 50) The operation of) has already been described with reference to FIG.
  • the third threshold value intersection search unit 48 output power via input terminal 503 is used as the center, and n value generator 504 outputs n value.
  • the first horizontal block projection data converted into the first horizontal block projection data added to the previous n values read from the vertical motion vector addition memory 506 are added together. Then, the addition result is stored in the vertical motion vector addition memory 506 again.
  • the adder 505 adds the n-valued first horizontal block projection data for the last one of all the third threshold intersections detected by the third threshold intersection search unit 48 to add 1
  • the summing result is output to the peak detector 5070.
  • the peak detection unit 5070 reads out the addition result from the vertical motion vector addition memory 506 storing the addition results regarding all the third threshold intersections. Also good.
  • the peak detector 5070 includes a motion threshold detection range centered on each third threshold intersection for all the third threshold intersections detected by the third threshold intersection search unit 48 ( ⁇ Force that receives the data obtained by adding the n-valued first horizontal block projection data corresponding to (range U) (hereinafter also referred to as “horizontal block n value ⁇ data”).
  • This horizontal block n The peak value for the value key is detected by the peak detector 5070.
  • the peak position of the horizontal block n value ⁇ data detected by this peak detector 5070 becomes the vertical motion vector obtained from the horizontal block force, and is output to the vertical motion determination unit 510 via the output terminal 508. Is done. Similarly, the peak value at that time is output from the output terminal 509.
  • the specific operations of the adder 505 and the peak detection unit 5070 are described with reference to FIG. 15, and the adder 505 of the horizontal block vertical motion vector calculation unit 50 described above is used.
  • the force is the same as that of the peak detector 507 and the description is omitted.
  • the vertical motion vector (peak position) calculated for each horizontal block by the peak detector 507 and the added data obtained by adding the n-valued horizontal block The peak value (hereinafter also referred to as “horizontal block n-valued addition data peak value”) is input to the vertical motion vector determination unit 510 via the output terminals 508 and 509, respectively, and the horizontal block n-value addition is performed.
  • the data peak value is used for valid Z invalidity judgment of the horizontal block.
  • the vertical direction of the entire image is determined based on the vertical direction motion vector of each horizontal block sequentially output from the horizontal direction block vertical direction motion vector calculation unit 500. A motion vector is determined.
  • the vertical direction motion vector determination unit 510 the first horizontal block projection data maximum value output from the first horizontal direction block projection data maximum value storage unit 45, the horizontal direction block vertical motion Horizontal block n value output from vector calculation unit 500 ⁇
  • Addition data peak value and third threshold intersection search unit 48 output from third threshold intersection information Valid Z block invalid for each horizontal block Determine.
  • the vertical motion vector calculated as the horizontal block force determined to be an invalid block is not used when determining the vertical motion vector of the entire image.
  • FIG. 31 is a diagram for explaining a method of determining valid Z invalidity of each horizontal block using the first horizontal block projection data maximum value.
  • FIG. 31 the image data of 640 pixels x 480 pixels shown in (a) of Fig. 13 is taken as an example, and 10 horizontal directions having a width (divided width) of 64 pixels in the horizontal direction. This shows the case where the block is divided into hbO to hb9.
  • FIG. 31 the first horizontal block projection data maximum value of each horizontal block output from the first horizontal block projection data maximum value storage unit 45 (FIG. 20) is shown as Each block is shown in hexadecimal notation.
  • the horizontal direction blocks hbO to hb9 The medium force of the horizontal block projection data maximum value of 1 is also determined as the maximum value in all blocks.
  • the horizontal block hb4 has the maximum value in all blocks, and this value is referred to as the all horizontal block projection data maximum value.
  • the vertical motion vector determination unit 510 determines, as an invalid block, a horizontal block having a maximum value of, for example, 1Z4 or less with respect to the maximum value of all horizontal block projection data.
  • the horizontal blocks hbO, hbl, hb8 and hb9 are determined to be invalid blocks.
  • FIG. 32 is a diagram schematically illustrating determination of valid Z invalidity of a horizontal block.
  • a horizontal block that is determined to be an invalid block can be said to have a few features (there are few clear parts) or a very fine design as a pattern. On the other hand, it can be judged that the reliability is low. Therefore, the reliability of the vertical motion vector can be improved by not using the horizontal block determined to be an invalid block for determining the vertical motion vector of the entire image.
  • the force described as the valid Z invalidity judgment condition being 1Z4 or less of the maximum value of all horizontal block projection data, it is not limited to this. It may be 1Z8 or less. In this way, by setting the determination condition lZ2 n , it is possible to easily determine whether it is valid or invalid.
  • FIG. 33 is a diagram for explaining a method for determining valid Z invalidity of each horizontal block using the horizontal block n-valued addition data peak value.
  • FIG. 33 the image data of 640 pixels x 480 pixels shown in (a) of Fig. 13 is taken as an example, and 10 horizontal directions having a width (divided width) of 64 pixels in the horizontal direction are taken. This shows the case where the block is divided into hbO to hb9.
  • the horizontal block vertical motion vector calculation unit 500 (Fig. 20 The horizontal block n-valued addition data peak value of each horizontal block output from) is shown in hexadecimal notation for each block.
  • the vertical motion vector determination unit 510 obtains the maximum value of the medium force of the horizontal direction block n-valued addition data peak value in each of the horizontal direction blocks hbO to hb9.
  • the horizontal block hb4 has the maximum value, and this value is referred to as the maximum value of the horizontal block n-valued addition data peak value.
  • the vertical direction motion vector determination unit 510 when the maximum value of the horizontal block n-valued addition data peak value is equal to or greater than a predetermined value A (for example, 12 in decimal notation), the horizontal direction block n value A horizontal block whose summation data is less than or equal to a predetermined value B (for example, 7 in decimal notation) is determined as an invalid block.
  • a predetermined value A for example, 12 in decimal notation
  • a predetermined value B for example, 7 in decimal notation
  • the output of the adder 505 (Fig. 21) of the horizontal block vertical motion vector calculation unit 500 (Fig. 20) is the first n-valued with the fourth threshold value centered on the third threshold value intersection.
  • the horizontal block projection data is added, and the larger the number of third threshold intersections and the larger the amplitude (mountain) exceeding the fourth threshold (4) on the plus side, the larger the value. Conversely, if there is an amplitude that exceeds the negative fourth threshold (one ⁇ 4), it will be canceled.
  • the maximum value of the output of the adder 505 that is, the horizontal block ⁇ - value added data peak value of a certain horizontal block is equal to or greater than the predetermined value ⁇ , while the other horizontal blocks
  • the peak value of the n-valued addition data of the horizontal block is less than or equal to the predetermined value B, it can be said that the other horizontal block is a picture with the addition result canceled or a picture with less features and less amplitude.
  • the block having the horizontal block n-valued addition data peak value force of the predetermined value B or less is less reliable than the block of the predetermined value A or more. Therefore, the reliability of the vertical motion vector can be improved by not using the horizontal block determined to be an invalid block for determining the vertical motion vector of the entire image.
  • Fig. 34 is a diagram schematically showing determination of validity Z invalidity of a horizontal block.
  • the horizontal axis represents the maximum value of the horizontal block n-valued addition data peak value
  • the vertical axis represents the horizontal block n-valued addition data peak value.
  • the horizontal block n-valued addition data peak value is equal to or less than the predetermined value B. It also shows that even if there is another block, the block is not judged as an invalid block.
  • the effective Z / invalidation condition is a force indicating an example in which the predetermined value A is set to 12 and the predetermined value B is set to 7.
  • the number of pixels in the vertical direction of the image is not limited to this. For example, if the number of pixels in the vertical direction is 80 pixels, the predetermined value A can be set to a value of about 10 and the predetermined value B can be set to a value about half of that.
  • FIG. 35 is a diagram for explaining a method for determining valid Z invalidity of each vertical block using the number of third threshold intersections.
  • Fig. 35 the image data of 640 pixels x 480 pixels shown in Fig. 13 (a) is taken as an example, and 10 horizontal directions having a width (divided width) of 64 pixels in the horizontal direction are taken. This shows the case where the block is divided into hbO to hb9.
  • FIG. 35 the number of third threshold intersections output from the third threshold intersection searching unit 48 (FIG. 20) is shown in hexadecimal notation for each block.
  • the waveform of the second horizontal block projection data relating to the previous frame stored in the second horizontal block projection line memory 46, and the second horizontal block Outputs information on the third threshold intersection at which the third threshold calculated by the projection data maximum value storage unit 45 intersects.
  • This information also includes information on the number of third threshold intersections. As shown in Fig. 35, for each horizontal block hbO to hb9 The number of third threshold intersections is obtained.
  • Fig. 36 is a diagram schematically showing determination of valid Z invalidity of a horizontal block.
  • the horizontal axis represents the maximum number of the third threshold intersections in the horizontal blocks hbO to hb9
  • the vertical axis represents the number of the third threshold intersections.
  • the third threshold crossing point in each horizontal block hbO to hb9 is the third block for the block having a predetermined value D (for example, 3 in decimal notation) or less. Regardless of the maximum number of threshold intersections, it is determined as an invalid block. In the example of FIG. 35, the horizontal blocks hbO and hb9 are determined to be invalid blocks.
  • the reliability of the vertical motion vector can be improved by not using the horizontal block determined to be an invalid block for determining the vertical motion vector of the entire image.
  • the number of the third threshold intersections is at least the number of pixels in the vertical direction, and if the number is too large compared to the number of pixels in the vertical direction, a very periodic pattern is captured. Therefore, for example, when the value is equal to or greater than a predetermined value E (for example, more than half of the number of pixels in the vertical direction), the block may be determined to be an invalid block.
  • a predetermined value E for example, more than half of the number of pixels in the vertical direction
  • the number of third threshold intersections is 241 and is more than half of the number of vertical pixels, so it is determined as an invalid block.
  • a block having a predetermined value D or less is determined as an invalid block. It may be configured to do so. In this case, if the maximum value of the number of the third threshold intersections is smaller than the predetermined value, even if there is a block with the predetermined value D or less, the block is not determined as an invalid block and is invalid.
  • the block criteria can be set more carefully.
  • the valid / invalid determination condition is that the predetermined value D is 3 and the predetermined value E is half the number of pixels in the vertical direction has been described.
  • the present invention is not limited to this. It is not a thing.
  • each horizontal block n-valued sum data peak value is used to determine each horizontal block. It is invalid by using the method of judging the effective Z invalidity of the direction block and the method of judging the valid Z invalidity of each horizontal block using the information of the third threshold intersection.
  • the horizontal block force determined as an invalid block is determined as a block, and the calculated vertical motion vector is not used when determining the vertical motion vector of the entire image. Can be increased.
  • the effective Z invalidity is determined using the first horizontal block projection data maximum value, and the effective Z invalidity of each horizontal block is determined using the horizontal block n-valued addition data peak value. It is also possible to determine valid Z invalidity using the first horizontal block projection data maximum value, and to determine valid Z invalidity of each horizontal block using information on the third threshold intersection. Also good! ,.
  • the vertical motion vector determination unit 510 determines the effective Z invalidity of the horizontal block, and the vertical motion vector force of the horizontal block determined to be an effective block is also the vertical motion vector of the entire image. Decide.
  • FIGS. 38 and 39 show the case where the detection range of the horizontal motion vector is U to U.
  • U is 31
  • from 31 to 31 1 vector interval is displayed.
  • the numbers displayed in the boxes provided for the respective vectors represent the number of horizontal blocks having the same vector.
  • the vertical direction motion vector determination unit 510 when the difference between the maximum value and the minimum value of the vertical direction motion vector obtained from each horizontal block is equal to or greater than a predetermined threshold B (for example, U described above), The vertical motion vector that also obtains horizontal blocking force is assumed to be 0, assuming that the vertical motion vector has low reliability.
  • a predetermined threshold B for example, U described above
  • each horizontal block force is obtained in the vertical direction. It is determined that the motion vector is sufficiently reliable.
  • the numerical value A and the threshold value B are not limited to the values described above. Further, the determination of the fluctuation is not limited to the above-described difference between the maximum value and the minimum value of the vertical motion vector, and the standard deviation is used. May be judged to be large.
  • the vertical motion margin of the current frame is calculated by the following procedure.
  • the outline is that the vertical motion vector output from each horizontal block of the current frame is closest to the vertical motion vector of the previous frame, and the vertical motion vector is the vertical motion vector of the current frame. It is what.
  • the vertical motion vector 8 is the vertical motion vector of the previous frame, and the vertical motion vector obtained from each horizontal block of the current frame closest to this is the vertical motion vector.
  • the sand corresponding to the vertical motion vector obtained for each horizontal block force of the current frame is hatched, and the block corresponding to the vertical motion vector of the previous frame is hatched. Attached.
  • the vertical direction motion vector 5 becomes the horizontal direction motion vector of the current frame.
  • the information on the vertical motion vector of the previous frame is stored in a predetermined storage unit (previous frame vertical motion vector storage means) provided in the vertical motion vector determination unit 510, and is necessary. Is configured to read in response to
  • the operation of determining whether the horizontal block is valid Z is invalid or not. Evaluate the reliability of the vertical motion vector of the entire image in consideration of variations in the vertical motion vector calculated in this way, and consider the vertical motion vector of the previous frame even if it is determined to be reliable. Thus, it is possible to determine a vertical motion vector with less sense of incongruity taking into account the motion from the previous frame.
  • the horizontal direction motion vector determination unit 320 includes the first vertical direction block projection data maximum value storage unit. 1st vertical block projection data maximum value output from 24, vertical block horizontal motion vector calculation unit 310 output from vertical block n-valued addition data peak value, first threshold value intersection search unit Based on the information on the first threshold intersection output from 29, the effective block Z of the vertical block is judged to be invalid. As a result, a highly reliable horizontal motion vector can be calculated.
  • the reliability of the horizontal motion vector of the entire image is evaluated by considering the variation of the horizontal motion vector calculated based on the highly reliable vertical block, the reliability is determined.
  • the horizontal motion vector of the previous frame it is possible to determine the horizontal motion vector with less sense of incongruity reflecting the motion of the previous frame force.
  • the first horizontal direction block projection data output from the first horizontal direction block projection data maximum value storage unit 45 in the vertical direction motion vector determination unit 510.
  • a directional motion vector can be calculated.
  • the vertical motion vector calculated based on a highly reliable horizontal block is evaluated for the reliability of the vertical motion vector of the entire image in consideration of variations, and it is determined that the motion vector is reliable.
  • the vertical motion vector of the previous frame it is possible to determine the vertical motion vector with less sense of incongruity reflecting the motion of the previous frame force.
  • the vertical image dividing unit 21 divides the frame image. Since the vertical edge is emphasized for each divided image (vertical block) after dividing in the straight direction, a divided image in which the vertical edge is emphasized can be easily generated. Similarly, the horizontal image dividing unit 41 divides the frame image in the horizontal direction, and then emphasizes the edge in the horizontal direction for each divided image (horizontal block). Can be generated easily.
  • the motion vector detection device 1C according to the fourth embodiment of the present invention has a force similar to that of the motion vector detection device 1 according to the first embodiment. And the vertical direction motion vector detection unit are different.
  • FIG. 40 is a block diagram showing the main configuration of the horizontal direction motion vector detection unit 2C.
  • parts having the same functions as those in the horizontal motion vector detection unit 2B described in the third embodiment are denoted by the same reference numerals, and redundant description is omitted.
  • the edge enhancement unit of the horizontal direction motion vector detection unit 2C the vertical direction image segmentation unit 21 and the vertical direction edge extraction filtering unit 22 are compared with the edge enhancement unit of the horizontal direction motion vector detection unit 2B of the third embodiment. The arrangement with is reversed. Hereinafter, the operation of the horizontal direction motion vector detection unit 2C will be described.
  • the extraction filtering unit 22 performs extraction processing for extracting edge components extending in the vertical direction, in other words, enhancing an image portion that changes sharply in the horizontal direction.
  • the vertical image dividing unit 21 sets a plurality of image regions (vertical blocks) obtained by dividing the frame image subjected to edge enhancement in the vertical direction. From this In the subsequent processing, processing and management are performed for each vertical block.
  • the image data divided by the vertical image dividing unit 21 is input to the vertical block projecting unit 23.
  • the processing after the vertical block projecting unit 23 is the horizontal direction motion vector of the third embodiment. Processing similar to that of the detection unit 2B is performed.
  • FIG. 41 is a block diagram showing the main configuration of the vertical motion vector detection unit 4C.
  • parts having the same functions as those in the vertical direction motion vector detection unit 4B described in the third embodiment are denoted by the same reference numerals, and redundant description is omitted.
  • edge enhancement unit of the vertical motion vector detection unit 4C the horizontal image segmentation unit 41 and the horizontal direction edge extraction filtering unit 42 are compared with the edge enhancement unit of the vertical direction motion vector detection unit 4B of the third embodiment. The arrangement with is reversed. Hereinafter, the operation of the vertical motion vector detection unit 4C will be described.
  • the extraction filtering unit 42 performs extraction of edge components extending in the horizontal direction, in other words, filtering processing that emphasizes an image portion that changes sharply in the vertical direction.
  • the horizontal image dividing unit 41 sets a plurality of image regions (horizontal blocks) obtained by dividing the frame image subjected to edge enhancement in the horizontal direction. Thus, in the subsequent processing, processing and management are performed for each horizontal block.
  • the image data divided by the horizontal image dividing unit 41 is input to the horizontal block projecting unit 43.
  • the processing after the horizontal block projecting unit 43 is the vertical direction motion vector according to the third embodiment. Processing similar to that of the detection unit 4B is performed.
  • the vertical edge extraction filtering unit 22 emphasizes the edge in the vertical direction with respect to the frame image, and then performs the edge-enhanced frame. Since the image is divided in the vertical direction by the vertical image dividing unit 21, a divided image in which the edge in the vertical direction is emphasized can be easily generated.
  • the horizontal image dividing unit 41 divides the edge image with the edge in the horizontal direction. Split images with enhanced edges can be easily generated.
  • the vertical edge extraction filtering unit 22 and the horizontal edge extraction filtering unit 42 are separately arranged in the horizontal motion vector detection unit 2A and the vertical motion vector detection unit 4A.
  • the vertical edge extraction filtering unit 22 and the horizontal edge extraction filtering unit 42 are both provided with a horizontal Z vertical edge extraction filtering unit that integrates the functions of the vertical edge extraction filtering unit 22 and the output of the vertical image segmentation unit 21.
  • the image data may be input to each of the horizontal image dividing unit 41.
  • the threshold process for determining the magnitude relationship with a predetermined threshold For the vertical edge extraction filtering unit and the horizontal edge extraction filtering unit in each of the above embodiments, after the filtering process for performing edge extraction, for example, “with edge” is performed by the threshold process for determining the magnitude relationship with a predetermined threshold. It is also possible to perform binarization of “no edge” or ternization of “with positive edge”, “without edge”, and “with negative edge”. By performing such threshold processing, it is possible to treat the edges having a luminance change (luminance gradient) equal to or greater than a predetermined threshold in the same manner.
  • the data output from the bit number reduction unit 25 is converted into the first vertical block projection line memory 26 and the second vertical block projection by, for example, switch switching for each frame.
  • the line memory 27 may be alternately input.
  • the data output from the horizontal block projection unit 43 is transferred to the first horizontal block projection line memory 44 and the second horizontal block projection line memory 46 by, for example, switch switching for each frame. You may make it make it input alternately.
  • the data output from the vertical (horizontal) direction block projection unit is stored in the first vertical (horizontal) direction block projection data maximum value storage unit by, for example, switch switching for each frame.
  • the second vertical (horizontal) block projection data maximum value storage unit may be alternately input.
  • the "previous frame" in the present invention is not limited to the previous frame, but also includes two or more previous frames. For example, when a frame in the middle is skipped by the frame skipping process, the frame before the skipped frame is included.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Image Analysis (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Description

明 现 曞
動きベクトル怜出装眮
技術分野
[0001] 本発明は、時系列的に前埌の関係ずなる前フレヌムず埌フレヌムずに関するフレヌ ム画像間の動きベクトルを怜出する動きベクトル怜出装眮に関するものである。 背景技術
[0002] 手振れ補正などに甚いられるフレヌム画像間の動きベクトル怜出技術ずしおは、代 衚点マッチング方匏を甚いお、連続しお取り蟌んだ画像力も動きベクトルを怜出する ものがある。この代衚点マッチング方匏では、連続しお取り蟌んだ画像においお前フ レヌムの画像の固定された䜍眮に代衚点を蚭定するずずもに、珟圚のフレヌムの画 像を 2次元方向にずらしながら代衚点の盞関挔算を行うこずにより、盞関の最も高くな るズレ量を動きベクトルずしお怜出する。
[0003] しかし、以䞊の動きベクトル怜出技術では、代衚点に䞀定以䞊の茝床募配が存圚 するこずが必芁であるため、䟋えば文曞画像のような癜黒の画像を察象ずする堎合に は党おの代衚点で茝床募配が䜎くな぀お、動き量 (動きベクトル)が粟床良く怜出でき ないこずずなる。
[0004] この䞍具合を改善する技術ずしおは、䟋えば特蚱文献 1に開瀺されるものがある。こ の技術では、たず茝床募配を持぀画像の特城点を抜出し、抜出された特城点を代衚 点ずしお代衚点マッチング凊理を行うこずにより、動きベクトルの良奜な怜出を可胜ず しおいる。
[0005] たた、特蚱文献 2に蚘茉のように、画像を耇数のブロックに分割し、ブロックごずにェ ッゞを怜出し、゚ッゞの移動を远うこずにより、動きベクトルを怜出する方法がある。こ の方法では、空などのように、空間呚波数が䜎く特城的な絵柄のない堎合や、栌子 戞のように、空間呚波数が高ぐ特城点が倚数存圚する堎合の誀刀定を軜枛するた めに、 1ブロックあたりの゚ッゞ数で重み付けを行い、信頌性を評䟡しおいる。たた、ェ ッゞ怜出の方法ずしおは、れロクロッシング法などが䜿甚されお 、る。
[0006] 特蚱文献 1 :特蚱第 3534551号公報 特蚱文献 2特蚱第 3164121号公報
発明の開瀺
発明が解決しょうずする課題
[0007] し力しながら、特蚱文献 1の技術では、茝床募配が存圚する代衚点を確実に蚭定 できるものの、䟝然ずしおフレヌム画像においお探玢範囲の党䜓にわたっお画玠を少 しず぀ずらしながら代衚点の盞関挔算を行うため、代衚点 (特城点)ごずに盞圓の挔算 量が必芁ずなる。よっお、代衚点の数を䞀定以䞋に抑えない限り、迅速な動きべタト ルの怜出が困難ずなっおリアルタむム凊理が難しくなる。䞀方、代衚点が少なすぎるず 、動きベクトルの怜出粟床の䜎䞋を招いおしたう。
[0008] たた、特蚱文献 2に開瀺された動きベクトル怜出方法は、ブロックごずに算出された 動きベクトルの信頌性を、ブロックごずの゚ッゞ数で重み付けするこずにより、誀刀定を 軜枛しおいる力 リアルタむム凊理が芁求される堎合には、党ブロックを䞀様に評䟡 するこずが難 ボず 、う問題を有しお 、る。
[0009] すなわち、画像党䜓を䞀様に評䟡しょうずするず、党画像を取り蟌んだ䞊で動きべク トル怜出凊理を行う必芁があり、それではリアルタむム凊理に合わない。凊理時間を 満足するためには、ブロック単䜍で凊理を完結させ、凊理を次々ず進める必芁がある 力 このずき、各ブロックを䞀様に凊理するこずができないため、各ブロックを䞀様にェ ッゞ数だけで重み付けしたのでは、必ずしも、十分な結果が埗られるずは蚀いがたい
[0010] 本発明は䞊蚘のような問題点を解消するためになされたものであり、フレヌム画像 間の動きベクトルの怜出を粟床良く迅速に行えるずずもに、リアルタむム凊理を満足し ぀぀、各ブロック力 算出される動きベクトルの信頌性を評䟡するこずが可胜な動きべ タトル怜出装眮を提䟛するこずを目的ずする。
[0011] 本発明に係る動きベクトル怜出装眮の第 1の態様は、時系列的に前埌の関係ずなる 前フレヌムず埌フレヌムずに関するフレヌム画像間の動きベクトルを怜出する動きべ タトル怜出装眮であっお、氎平ラむンの画玠走査を垂盎方向に順に繰り返すこずによ ぀お読み出されるフレヌム画像に関しお、垂盎方向に䞀定の分割幅を有しお耇数に 分割されたブロックごずに垂盎方向の゚ッゞを匷調する゚ッゞ匷調手段ず、前蚘゚ツ ゞ匷調手段で゚ッゞが匷調された画像にっ 、お、前蚘ブロックごずに垂盎方向に射 圱をずり、前蚘ブロックのそれぞれで 1氎平ラむン分のデヌタ配列を有する射圱デヌ タを生成する射圱手段ず、前蚘前フレヌムに察しお前蚘射圱手段で埗られた射圱デ ヌタに関しお前蚘デヌタ配列の芁玠順に配列芁玠の倀をグラフ化した波圢ず、配列 芁玠の倀が所定の䞀定倀ずなる盎線ずが亀差する各亀差点の配列芁玠の䜍眮を特 定する特定手段ず、前蚘各亀差点の配列芁玠の䜍眮を䞭心ずした所定範囲のデヌ タ配列を、前蚘埌フレヌムに察しお前蚘射圱手段で埗られた射圱デヌタから抜出す る抜出手段ず、前蚘抜出手段で抜出された所定範囲のデヌタ配列それぞれに぀い お、前蚘各亀差点の配列芁玠の䜍眮に察しお盞察䜍眮が同じ配列芁玠同士の倀を 加算する加算手段ず、前蚘加算手段で加算された加算結果に基づき、フレヌム画像 の氎平方向に関する動きベクトルを怜出する怜出手段ずを備えお 、る。
[0012] 本発明に係る動きベクトル怜出装眮の第 2の態様は、時系列的に前埌の関係ずなる 前フレヌムず埌フレヌムずに関するフレヌム画像間の動きベクトルを怜出する動きべ タトル怜出装眮であっお、氎平ラむンの画玠走査を垂盎方向に順に繰り返すこずによ ぀お読み出されるフレヌム画像に関しお、氎平方向に䞀定の分割幅を有しお耇数の ブロックに分割されたブロックごずに氎平方向の゚ッゞを匷調する゚ッゞ匷調手段ず、 前蚘゚ッゞ匷調手段で゚ッゞが匷調された画像にっ 、お、前蚘ブロックごずに氎平方 向に射圱をずり、前蚘ブロックのそれぞれで 1垂盎ラむン分のデヌタ配列を有する射 圱デヌタを生成する射圱手段ず、前蚘前フレヌムに察しお前蚘射圱手段で埗られた 射圱デヌタに関しお前蚘デヌタ配列の芁玠順に配列芁玠の倀をグラフ化した波圢ず 、配列芁玠の倀が所定の䞀定倀ずなる盎線ずが亀差する各亀差点の配列芁玠の䜍 眮を特定する特定手段ず、前蚘各亀差点の配列芁玠の䜍眮を䞭心ずした所定範囲 のデヌタ配列を、前蚘埌フレヌムに察しお前蚘射圱手段で埗られた射圱デヌタから 抜出する抜出手段ず、前蚘抜出手段で抜出された所定範囲のデヌタ配列それぞれ に぀いお、前蚘各亀差点の配列芁玠の䜍眮に察しお盞察䜍眮が同じ配列芁玠同士 の倀を加算する加算手段ず、前蚘加算手段で加算された加算結果に基づき、フレヌ ム画像の垂盎方向に関する動きベクトルを怜出する怜出手段ずを備えお 、る。
[0013] 本発明に係る動きベクトル怜出装眮の第 3の態様は、時系列的に前埌の関係ずなる 前フレヌムず埌フレヌムずに関するフレヌム画像間の動きベクトルを怜出する動きべ タトル怜出装眮であっお、氎平ラむンの画玠走査を垂盎方向に順に繰り返すこずによ ぀お読み出されるフレヌム画像に関しお、垂盎方向に䞀定の分割幅を有しお耇数の ブロックに分割されたブロックごずに垂盎方向の゚ッゞを匷調する゚ッゞ匷調手段ず、 前蚘゚ッゞ匷調手段で゚ッゞが匷調された画像にっ 、お、前蚘ブロックごずに垂盎方 向に射圱をずり、前蚘ブロックのそれぞれで 1氎平ラむン分のデヌタ配列を有する射 圱デヌタを生成する射圱手段ず、前蚘埌フレヌムに察しお前蚘射圱手段で埗られた 埌フレヌム射圱デヌタの配列芁玠においお最倧倀を求める最倧倀取埗手段ず、前 蚘前フレヌムに察しお前蚘射圱手段で埗られた前フレヌム射圱デヌタに関しお前蚘 デヌタ配列の芁玠順に配列芁玠の倀をグラフ化した波圢ず、配列芁玠の倀が所定の 䞀定倀ずなる盎線ずが亀差する各亀差点の配列芁玠の䜍眮を特定しお亀差点情報 ずしお出力する特定手段ず、前蚘各亀差点の配列芁玠の䜍眮を䞭心ずした所定範囲 のデヌタ配列を、前蚘埌フレヌム射圱デヌタから抜出する抜出手段ず、前蚘抜出手 段で抜出された所定範囲のデヌタ配列それぞれに぀!/、お、前蚘各亀差点の配列芁 玠の䜍眮に察しお盞察䜍眮が同じ配列芁玠同士の倀を加算し、埗られた加算結果 に基づいお前蚘ブロックごずの氎平方向動きベクトルを算出する加算手段ず、前蚘カロ 算手段で算出された前蚘ブロックごずの氎平方向動きベクトルに基づき、フレヌム画 像党䜓の氎平方向動きベクトルを怜出する怜出手段ず、を備え、前蚘怜出手段は、 前蚘最倧倀取埗手段で埗られた前蚘埌フレヌム射圱デヌタの前蚘最倧倀、前蚘カロ 算手段で埗られた前蚘加算結果および前蚘特定手段で埗られた前蚘亀差点情報の うち少なくずも 1぀を甚いお前蚘ブロックごずの氎平方向動きベクトルの信頌性評䟡を 行う。
本発明に係る動きベクトル怜出装眮の第 4の態様は、時系列的に前埌の関係ずなる 前フレヌムず埌フレヌムずに関するフレヌム画像間の動きベクトルを怜出する動きべ タトル怜出装眮であっお、氎平ラむンの画玠走査を垂盎方向に順に繰り返すこずによ ぀お読み出されるフレヌム画像に関しお、氎平方向に䞀定の分割幅を有しお耇数の ブロックに分割されたブロックごずに氎平方向の゚ッゞを匷調する゚ッゞ匷調手段ず、 前蚘゚ッゞ匷調手段で゚ッゞが匷調された画像にっ 、お、前蚘ブロックごずに氎平方 向に射圱をずり、前蚘ブロックのそれぞれで 1垂盎ラむン分のデヌタ配列を有する射 圱デヌタを生成する射圱手段ず、前蚘埌フレヌムに察しお前蚘射圱手段で埗られた 埌フレヌム射圱デヌタの配列芁玠においお最倧倀を求める最倧倀取埗手段ず、前 蚘前フレヌムに察しお前蚘射圱手段で埗られた前フレヌム射圱デヌタに関しお前蚘 デヌタ配列の芁玠順に配列芁玠の倀をグラフ化した波圢ず、配列芁玠の倀が所定の 䞀定倀ずなる盎線ずが亀差する各亀差点の配列芁玠の䜍眮を特定しお亀差点情報 ずしお出力する特定手段ず、前蚘各亀差点の配列芁玠の䜍眮を䞭心ずした所定範囲 のデヌタ配列を、前蚘埌フレヌム射圱デヌタから抜出する抜出手段ず、前蚘抜出手 段で抜出された所定範囲のデヌタ配列それぞれに぀!/、お、前蚘各亀差点の配列芁 玠の䜍眮に察しお盞察䜍眮が同じ配列芁玠同士の倀を加算し、埗られた加算結果 に基づいお前蚘ブロックごずの垂盎方向動きベクトルを算出する加算手段ず、前蚘カロ 算手段で算出された前蚘ブロックごずの垂盎方向動きベクトルに基づき、フレヌム画 像党䜓の垂盎方向動きベクトルを怜出する怜出手段ず、を備え、前蚘怜出手段は、 前蚘最倧倀取埗手段で埗られた前蚘埌フレヌム射圱デヌタの前蚘最倧倀、前蚘カロ 算手段で埗られた前蚘加算結果および前蚘特定手段で埗られた前蚘亀差点情報の うち少なくずも 1぀を甚いお前蚘ブロックごずの垂盎方向動きベクトルの信頌性評䟡を 行う。
本発明に係る動きベクトル怜出装眮の第 1の態様によれば、フレヌム画像における 所定の画像領域にっ 、お垂盎方向の゚ッゞを匷調し、゚ッゞ匷調された画像にっ ボ お垂盎方向に射圱をず぀お 1氎平ラむン分のデヌタ配列を有する射圱デヌタを生成 するずずもに、前フレヌムの射圱デヌタに関しおデヌタ配列の芁玠順に配列芁玠の 倀をグラフ化した波圢ず、配列芁玠の倀が所定の䞀定倀ずなる盎線ずが亀差する各 亀差点の配列芁玠の䜍眮を特定する。そしお、各亀差点の配列芁玠の䜍眮を䞭心ず した所定範囲のデヌタ配列を埌フレヌムの射圱デヌタ力も抜出するずずもに、抜出さ れた所定範囲のデヌタ配列それぞれに぀いお各亀差点の配列芁玠の䜍眮に察しお 盞察䜍眮が同じ配列芁玠同士の倀を加算し、その加算結果に基づきフレヌム画像 の氎平方向に関する動きベクトルを怜出する。その結果、フレヌム画像間の動きべク トルの怜出を粟床良く迅速に行える。 [0016] 本発明に係る動きベクトル怜出装眮の第 2の態様によれば、フレヌム画像における 所定の画像領域にっ 、お氎平方向の゚ッゞを匷調し、゚ッゞ匷調された画像にっ ボ お氎平方向に射圱をず぀お 1垂盎ラむン分のデヌタ配列を有する射圱デヌタを生成 するずずもに、前フレヌムの射圱デヌタに関しおデヌタ配列の芁玠順に配列芁玠の 倀をグラフ化した波圢ず、配列芁玠の倀が所定の䞀定倀ずなる盎線ずが亀差する各 亀差点の配列芁玠の䜍眮を特定する。そしお、各亀差点の配列芁玠の䜍眮を䞭心ず した所定範囲のデヌタ配列を埌フレヌムの射圱デヌタ力も抜出するずずもに、抜出さ れた所定範囲のデヌタ配列それぞれに぀いお各亀差点の配列芁玠の䜍眮に察しお 盞察䜍眮が同じ配列芁玠同士の倀を加算し、その加算結果に基づきフレヌム画像 の垂盎方向に関する動きベクトルを怜出する。その結果、フレヌム画像間の動きべク トルの怜出を粟床良く迅速に行える。
[0017] 本発明に係る動きベクトル怜出装眮の第 3の態様によれば、怜出手段においお、最 倧倀取埗手段で埗られた埌フレヌム射圱デヌタの最倧倀、加算手段で埗られたカロ 算結果および特定手段で埗られた亀差点情報のうち少なくずも 1぀を甚いおブロック ごずの氎平方向動きベクトルの信頌性評䟡を行うので、信頌性の䜎!ボブロック力ゝら埗 られた氎平方向動きベクトルを陀倖するこずで、結果的に、信頌性の高いフレヌム画 像党䜓の氎平方向動きベクトルを算出するこずができる。
[0018] 本発明に係る動きベクトル怜出装眮の第 4の態様によれば、怜出手段においお、最 倧倀取埗手段で埗られた埌フレヌム射圱デヌタの最倧倀、加算手段で埗られたカロ 算結果および特定手段で埗られた亀差点情報のうち少なくずも 1぀を甚いおブロック ごずの垂盎方向動きベクトルの信頌性評䟡を行うので、信頌性の䜎!ボブロック力ゝら埗 られた垂盎方向動きベクトルを陀倖するこずで、結果的に、信頌性の高いフレヌム画 像党䜓の垂盎向動きベクトルを算出するこずができる。
[0019] この発明の目的、特城、局面、および利点は、以䞋の詳现な説明ず添付図面ずによ ぀お、より明癜ずなる。
図面の簡単な説明
[0020] [図 1]本発明の実斜の圢態 1に係る動きベクトル怜出装眮 1、実斜の圢態 2に係る動き ベクトル怜出装眮 1A、実斜の圢態 3に係る動きベクトル怜出装眮 IBおよび実斜の圢 態 4に係る動きベクトル怜出装眮 1Cの芁郚構成を瀺すブロック図である。
[図 2]フレヌム画像における画玠走査方向を説明するための図である。
[図 3]氎平方向動きベクトル怜出郚 2の芁郚構成を瀺すブロック図である。
[図 4]垂盎方向ブロック射圱郚 23の芁郚構成を瀺すブロック図である。
[図 5]垂盎方向ブロック氎平方向動きベクトル算出郚 31の芁郚構成を瀺すブロック図 である。
[図 6]垂盎方向動きベクトル怜出郚 4の芁郚構成を瀺すブロック図である。
[図 7]氎平方向ブロック射圱郚 43の芁郚構成を瀺すブロック図である。
[図 8]氎平方向ブロック垂盎方向動きベクトル算出郚 50の芁郚構成を瀺すブロック図 である。
[図 9]垂盎方向画像分割郚 21および垂盎方向ブロック射圱郚 23の動䜜を説明する ための図である。
[図 10]n倀化噚 314および 504における n倀ィ匕凊理を説明するための図である。
[図 11]第 1の閟倀亀差点探玢郚 29、垂盎方向ブロック射圱デヌタ読み出し郚 30およ び垂盎方向ブロック氎平方向動きベクトル算出郚 31の動䜜を説明するための図であ る。
[図 12]加算噚 315およびピヌク怜出郚 317の動䜜を説明するための図である。
[図 13]氎平方向画像分割郚 41および氎平方向ブロック射圱郚 43の動䜜を説明する ための図である。
[図 14]第 3の閟倀亀差点探玢郚 48、氎平方向ブロック射圱デヌタ読み出し郚 49およ び氎平方向ブロック垂盎方向動きベクトル算出郚 50の動䜜を説明するための図であ る。
[図 15]加算噚 505およびピヌク怜出郚 507の動䜜を説明するための図である。
[図 16]本発明の実斜の圢態 2に係る動きベクトル怜出装眮 1Aにおける氎平方向動き ベクトル怜出郚 2Aの芁郚構成を瀺すブロック図である。
[図 17]動きベクトル怜出装眮 1Aにおける垂盎方向動きベクトル怜出郚 4Aの芁郚構 成を瀺すブロック図である。
[図 18]本発明の実斜の圢態 3に係る動きベクトル怜出装眮 1Cにおける氎平方向動き ベクトル怜出郚 2Bの芁郚構成を瀺すブロック図である。
[図 19]垂盎方向ブロック氎平方向動きベクトル算出郚 310の芁郚構成を瀺すブロック 図である。
[図 20]垂盎方向動きベクトル怜出郚 4Bの芁郚構成を瀺すブロック図である。
[図 21]氎平方向ブロック垂盎方向動きベクトル算出郚 500の芁郚構成を瀺すブロック 図である。
[図 22]第 1の垂盎方向ブロック射圱デヌタ最倧倀を甚いお各垂盎方向ブロックの効 Z無効を刀定する方法を説明する図である。
[図 23]垂盎方向ブロックの有効 Z無効の刀定を暡匏的に瀺す図である。
[図 24]垂盎方向ブロック n倀化加算デヌタピヌク倀を甚いお各垂盎方向ブロックの有 効 Z無効を刀定する方法を説明する図である。
[図 25]垂盎方向ブロックの有効 Z無効の刀定を暡匏的に瀺す図である。
圆 26]第 1の閟倀亀差点の個数を甚いお各垂盎方向ブロックの有効 Z無効を刀定す る方法を説明する図である。
[図 27]垂盎方向ブロックの有効 Z無効の刀定を暡匏的に瀺す図である。
[図 28]垂盎方向ブロックの有効 Z無効の刀定を暡匏的に瀺す図である。
[図 29]画像党䜓の氎平方向動きベクトルの決定方法の䞀䟋に぀いお説明する図で ある。
[図 30]画像党䜓の氎平方向動きベクトルの決定方法の䞀䟋に぀いお説明する図で ある。
[図 31]第 1の氎平方向ブロック射圱デヌタ最倧倀を甚いお各氎平方向ブロックの有 効 Z無効を刀定する方法を説明する図である。
[図 32]氎平方向ブロックの有効 Z無効の刀定を暡匏的に瀺す図である。
[図 33]氎平方向ブロック n倀化加算デヌタピヌク倀を甚いお各氎平方向ブロックの有 効 Z無効を刀定する方法を説明する図である。
[図 34]氎平方向ブロックの有効 Z無効の刀定を暡匏的に瀺す図である。
圆 35]第 3の閟倀亀差点の個数を甚いお各氎平方向ブロックの有効 Z無効を刀定す る方法を説明する図である。 [図 36]氎平方向ブロックの有効 Z無効の刀定を暡匏的に瀺す図である。
[図 37]氎平方向ブロックの有効 Z無効の刀定を暡匏的に瀺す図である。
[図 38]画像党䜓の垂盎方向動きベクトルの決定方法の䞀䟋に぀いお説明する図で ある。
[図 39]画像党䜓の垂盎方向動きベクトルの決定方法の䞀䟋に぀いお説明する図で ある。
[図 40]本発明の実斜の圢態 4に係る動きベクトル怜出装眮 1Cにおける氎平方向動き ベクトル怜出郚 2Cの芁郚構成を瀺すブロック図である。
[図 41]動きベクトル怜出装眮 1Cにおける垂盎方向動きベクトル怜出郚 4Cの芁郚構 成を瀺すブロック図である。
発明を実斜するための最良の圢態
[0021] 実斜の圢態 1.
<動きべクトル怜出装眮 1の構成 >
図 1は、本発明の実斜の圢態 1に係る動きベクトル怜出装眮 1の芁郚構成を瀺すブ ロック図である。
[0022] 動きベクトル怜出装眮 1は、䟋えば動画像においお画面内の被写䜓の動きを衚す 画像動きベクトルを怜出するものであり、時系列的に前埌の関係ずなる前フレヌムず 埌フレヌムずに関するフレヌム画像間の動きベクトルが怜出される。この動きベクトル 怜出装眮 1で怜出された動きベクトルはビデオカメラの手振れ補正などに利甚される 。なお、動きベクトル怜出装眮 1に入力されるフレヌム画像は、図 2に瀺すように氎平 方向の画玠走査および垂盎方向のラむン走査を行うこずによっお読み出されるものず する。
[0023] 動きベクトル怜出装眮 1は、入力端子 11ず、氎平方向動きベクトル怜出郚 2および 垂盎方向動きベクトル怜出郚 4ず、 2぀の出力端子 12、 13ずを備えおいる。この氎平 方向動きベクトル怜出郚 2および垂盎方向動きベクトル怜出郚 4に぀いおは、その機 胜が䟋えばマむクロプロセッサによっお゜フトりェア的に実珟されおもよぐたた倧半を ハヌドりェア (䞀郚を゜フトりェア)で実珟するようにしおもよい。もちろん、党機胜をノボ 䞀ドり゚アで実珟しおもよ!/、こずは蚀うたでもな!/、。 [0024] 入力端子 11には、䟋えばビデオカメラ内の撮像玠子で取埗された画像デヌタ (動 画像)やビデオ信号などの画像デヌタ (動画像)が入力される。入力端子 11に入力さ れた画像デヌタは、氎平方向動きベクトル怜出郚 2においお氎平方向の動きベクトル が怜出され、その怜出された氎平方向動きベクトルが出力端子 12から出力される。
[0025] 䞀方、垂盎方向動きベクトル怜出郚 4では、入力端子 11に入力された画像デヌタ に぀ 、お垂盎方向の動きベクトルが怜出される。この垂盎方向動きベクトル怜出郚 4 で怜出された垂盎方向動きベクトルは、出力端子 13から出力される。
[0026] 以䞋では、氎平方向動きベクトル怜出郚 2ず垂盎方向動きベクトル怜出郚 4ずの構 成を順に説明する。
[0027] 図 3は、氎平方向動きベクトル怜出郚 2の芁郚構成を瀺すブロック図である。
氎平方向動きベクトル怜出郚 2は、入力端子 20ず、垂盎方向画像分割郚 21ず、垂 盎方向゚ッゞ抜出フィルタリング郚 22ず、垂盎方向ブロック射圱郚 23ず、第 1の垂盎 方向ブロック射圱デヌタ最倧倀保存郚 24ず、ビット数削枛郚 25ず、第 1の垂盎方向ブ ロック射圱ラむンメモリ 26ずを備えおいる。たた、氎平方向動きベクトル怜出郚 2は、第 2の垂盎方向ブロック射圱ラむンメモリ 27ず、第 2の垂盎方向ブロック射圱デヌタ最倧 倀保存郚 28ず、第 1の閟倀亀差点探玢郚 29ず、垂盎方向ブロック射圱デヌタ読み出 し郚 30ず、垂盎方向ブロック氎平方向動きベクトル算出郚 31ず、氎平方向動きべタト ル決定郚 32ず、出力端子 33ずを備えおいる。以䞊の氎平方向動きベクトル怜出郚 2 の各郚䜍にっ 、お、その機胜を簡単に説明する (具䜓的な動䜜は埌で詳述する)。
[0028] 垂盎方向画像分割郚 21は、入力端子 20に入力されたフレヌム画像を垂盎方向に 分割し、垂盎方向に分割したブロック (以䞋では「垂盎方向ブロック」ずも称する)を出 力する。
[0029] 垂盎方向゚ッゞ抜出フィルタリング郚 22は、垂盎方向画像分割郚 21で分割された ブロックごずに゚ッゞ抜出を行うためのフィルタリング凊理を行う。なお、垂盎方向画像 分割郚 21および垂盎方向゚ッゞ抜出フィルタリング郚 22を合わせお゚ッゞ匷調手段 ず呌称する堎合がある。
[0030] 垂盎方向ブロック射圱郚 23は、垂盎方向゚ッゞ抜出フィルタリング郚 22から出力さ れる゚ッゞ匷調枈みの垂盎方向ブロックに぀ 、お垂盎方向に射圱をずり、垂盎方向 ブロックごずに射圱デヌタを出力する。
[0031] 第 1の垂盎方向ブロック射圱デヌタ最倧倀保存郚 24は、垂盎方向ブロック射圱郚 2 3から出力された珟フレヌムの垂盎方向ブロックの射圱デヌタにおける最倧倀 (以䞋 では「珟フレヌムの垂盎方向ブロック射圱デヌタ最倧倀」たたは「第 1の垂盎方向プロ ック射圱デヌタ最倧倀」ずも蚀うを保存する。たた、第 1の垂盎方向ブロック射圱デヌ タ最倧倀保存郚 24は、第 1の垂盎方向ブロック射圱デヌタ最倧倀に基づき、埌述す る第 2の閟倀を算出する。
[0032] ビット数削枛郚 25は、第 1の垂盎方向ブロック射圱デヌタ最倧倀保存郚 24に保存 された第 1の垂盎方向ブロック射圱デヌタ最倧倀に基づき、垂盎方向ブロック射圱郚 23から出力された垂盎方向ブロックの射圱デヌタのビット数を削枛する。ビット数を 削枛された垂盎方向ブロックの射圱デヌタを「第 1の垂盎方向ブロック射圱デヌタ」ず 称する。
[0033] 第 1の垂盎方向ブロック射圱ラむンメモリ 26は、ビット数削枛郚 25でビット数が削枛 された第 1の垂盎方向ブロック射圱デヌタを保存する。
[0034] 第 2の垂盎方向ブロック射圱ラむンメモリ 27は、第 1の垂盎方向ブロック射圱ラむンメ モリ 26から送られた垂盎方向ブロック射圱デヌタを、前フレヌムの垂盎方向ブロック の射圱デヌタ (以䞋では「第 2の垂盎方向ブロック射圱デヌタ」ずもいう)ずしお保存す る。
[0035] 第 2の垂盎方向ブロック射圱デヌタ最倧倀保存郚 28は、第 1の垂盎方向ブロック射 圱デヌタ最倧倀保存郚 24から出力された第 1の垂盎方向ブロック射圱デヌタ最倧倀 を、前フレヌムに関する「第 2の垂盎方向ブロック射圱デヌタ最倧倀」「前フレヌムの 垂盎方向ブロック射圱デヌタ最倧倀」ずも蚀うずしお保存する。たた、第 2の垂盎方向 ブロック射圱デヌタ最倧倀保存郚 28は、第 2の垂盎方向ブロック射圱デヌタ最倧倀 に基づき、埌述する第 1の閟倀を算出する。
[0036] 第 1の閟倀亀差点探玢郚 29は、第 2の垂盎方向ブロック射圱ラむンメモリ 27に保存 される前フレヌムに係る第 2の垂盎方向ブロック射圱デヌタの波圢ず、第 2の垂盎方 向ブロック射圱デヌタ最倧倀保存郚 28で算出された第 1の閟倀ずが亀差する点を求 め、この亀差点以䞋では「第 1の閟倀亀差点」ずも 、うの情報を出力する。 [0037] 垂盎方向ブロック射圱デヌタ読み出し郚 30は、第 1の閟倀亀差点探玢郚 29で求 められた第 1の閟倀亀差点を䞭心に、その前埌の所定範囲 (動きベクトル怜出範囲 内にある第 1の垂盎方向ブロック射圱デヌタを、第 1の垂盎方向ブロック射圱ラむンメ モリ 26から読み出す。
[0038] 垂盎方向ブロック氎平方向動きベクトル算出郚 31は、第 1の垂盎方向ブロック射圱 デヌタ最倧倀保存郚 24から出力される第 2の閟倀を甚い、垂盎方向ブロック射圱デ ヌタ読み出し郚 30で読み出された第 1の垂盎方向ブロック射圱デヌタそれぞれを n 倀ィ匕 (nは 2以䞊の敎数)しおビット数の削枛を行うずずもに、 n倀化された射圱デヌタ を第 1の閟倀亀差点力 の距離ごずに加算する。
[0039] 氎平方向動きベクトル決定郚 32は、垂盎方向ブロック氎平方向動きベクトル算出 郚 31からの出力に基づき画像の氎平方向動きベクトルを決定する。ここで決定され た画像の氎平方向動きベクトルは出力端子 33から出力される。
[0040] 図 4は、垂盎方向ブロック射圱郚 23の芁郚構成を瀺すブロック図である。
垂盎方向ブロック射圱郚 23は、入力端子 231ず、 1氎平ラむンず぀デヌタ加算を行 う加算噚 232ず、加算噚 232で加算されたデヌタを逐次保存するバッファメモリずしお の垂盎方向射圱䞀時蚘憶メモリ 233ず、出力端子 234ずを備えおいる。
[0041] 入力端子 231には、垂盎方向゚ッゞ抜出フィルタリング郚 22で垂盎方向の゚ッゞ が匷調された画像が垂盎方向ブロックごずに入力される。入力端子 231に入力された 画像は、垂盎方向ブロックごずに加算噚 232および垂盎方向射圱䞀時蚘憶メモリ 23 3によっお垂盎方向に射圱がずられる。具䜓的には、加算噚 232においお垂盎方向 ブロックの 1氎平ラむン分のデヌタず、垂盎方向射圱䞀時メモリ 233から読み出された 1氎平ラむン分のデヌタずが加算され、加算結果が垂盎方向射圱䞀時蚘憶メモリ 233 に再び戻されお蚘憶される。このような加算動䜜が繰り返されるこずにより垂盎方向ブ ロックにおける党おの氎平ラむンの加算が終了するず、党氎平ラむンの加算デヌタ、 ぀たり垂盎方向の射圱デヌタが出力端子 234から出力されるこずずなる。
[0042] 図 5は、垂盎方向ブロック氎平方向動きベクトル算出郚 31の芁郚構成を瀺すブロッ ク図である。
[0043] 垂盎方向ブロック氎平方向動きベクトル算出郚 31は、 3぀の入力端子 311〜313ず 、 n倀化噚 314ず、 n倀化噚 314で n倀ィ匕された第 1の垂盎方向ブロック射圱デヌタの 加算を行う加算噚 315ず、加算噚 315で加算されたデヌタを逐次保存するバッファメ モリずしおの氎平方向動きベクトル加算メモリ 316ず、ピヌク怜出噚 317ず、出力端子 3 18ずを備えおいる。
[0044] 入力端子 311には、垂盎方向ブロック射圱デヌタ読み出し郚 30から出力された第 1の垂盎方向ブロック射圱デヌタが入力され、入力端子 312には、第 1の垂盎方向ブ ロック射圱デヌタ最倧倀保存郚 24から出力された第 2の閟倀が入力される。たた、入 力端子 313には、第 1の閟倀亀差点探玢郚 29から出力された第 1の閟倀亀差点の 情報が入力される。
[0045] n倀化噚 314は、入力端子 311から入力された第 1の垂盎方向ブロック射圱デヌタ を、入力端子 312から入力される第 2の閟倀に基づいお n倀ィ匕 (䟋えば 3倀化)する。
[0046] 加算噚 315は、 n倀化噚 314で n倀ィ匕された第 1の垂盎方向ブロック射圱デヌタず、 氎平方向動きベクトル加算メモリ 316から読み出されたデヌタずを第 1の閟倀亀差点 を䞭心ずしお加算し、加算結果を氎平方向動きベクトル加算メモリ 316に再び蚘憶さ せる。このような加算動䜜が繰り返されるこずにより垂盎方向ブロックに関する党おの 第 1の閟倀亀差点に぀いおの加算が終了するず、垂盎方向ブロックに関する加算デ ヌタがピヌク怜出噚 317に出力される。
[0047] ピヌク怜出噚 317は、加算噚 315から出力された加算デヌタにおけるピヌク䜍眮 埌述する氎平方向動きベクトル)を怜出する。このピヌク怜出噚 317で怜出されたピ ヌク䜍眮は、出力端子 318を介しお氎平方向動きベクトル決定郚 32に入力されるこ ずずなる。
[0048] 次に、垂盎方向動きベクトル怜出郚 4の構成を説明する。
図 6は、垂盎方向動きベクトル怜出郚 4の芁郚構成を瀺すブロック図である。
垂盎方向動きベクトル怜出郚 4は、入力端子 40ず、氎平方向画像分割郚 41ず、氎 平方向゚ッゞ抜出フィルタリング郚 42ず、氎平方向ブロック射圱郚 43ず、第 1の氎平 方向ブロック射圱ラむンメモリ 44ず、第 1の氎平方向ブロック射圱デヌタ最倧倀保存 郚 45ずを備えおいる。たた、垂盎方向動きベクトル怜出郚 4は、第 2の氎平方向ブロッ ク射圱ラむンメモリ 46ず、第 2の氎平方向ブロック射圱デヌタ最倧倀保存郚 47ず、第 3 の閟倀亀差点探玢郚 48ず、氎平方向ブロック射圱デヌタ読み出し郚 49ず、氎平方向 ブロック垂盎方向動きベクトル算出郚 50ず、垂盎方向動きベクトル決定郚 51ず、出力 端子 52ずを備えお 、る。以䞊の垂盎方向動きベクトル怜出郚 4の各郚䜍にっ 、お、 その機胜を簡単に説明する (具䜓的な動䜜は埌で詳述する)。
[0049] 氎平方向画像分割郚 41は、入力端子 40に入力されたフレヌム画像を氎平方向に 分割し、氎平方向に分割したブロック (以䞋では「氎平方向ブロック」ずも称する)を出 力する。
[0050] 氎平方向゚ッゞ抜出フィルタリング郚 42は、氎平方向画像分割郚 41で分割された ブロックごずに゚ッゞ抜出を行うためのフィルタリング凊理を行う。氎平方向画像分割 郚 41および氎平方向゚ッゞ抜出フィルタリング郚 42を合わせお゚ッゞ匷調手段ず呌 称する堎合がある。
[0051] 氎平方向ブロック射圱郚 43は、氎平方向゚ッゞ抜出フィルタリング郚 42から出力さ れる゚ッゞ匷調枈みの氎平方向ブロックに぀いお氎平方向に射圱をずり、氎平方向 ブロックごずに射圱デヌタを出力する。
[0052] 第 1の氎平方向ブロック射圱ラむンメモリ 44は、氎平方向ブロック射圱郚 43から出 力された氎平方向ブロックの射圱デヌタを、珟フレヌムの氎平方向ブロック射圱デヌ タ以䞋では「第 1の氎平方向ブロック射圱デヌタ」ずもいうずしお保存する。
[0053] 第 1の氎平方向ブロック射圱デヌタ最倧倀保存郚 45は、氎平方向ブロック射圱郚 4 3から出力された珟フレヌムの氎平方向ブロックの射圱デヌタの最倧倀 (以䞋では「 珟フレヌムの氎平方向ブロック射圱デヌタ最倧倀」たたは「第 1の氎平方向ブロック射 圱デヌタ最倧倀」ずも蚀うを保存する。
[0054] 第 2の氎平方向ブロック射圱ラむンメモリ 46は、第 1の氎平方向ブロック射圱ラむンメ モリ 44から送られた氎平方向ブロック射圱デヌタを、前フレヌムの氎平方向ブロック の射圱デヌタ (以䞋では「第 2の氎平方向ブロック射圱デヌタ」ずもいう)ずしお保存す る。
[0055] 第 2の氎平方向ブロック射圱デヌタ最倧倀保存郚 47は、第 1の氎平方向ブロック射 圱デヌタ最倧倀保存郚 45から出力された第 1の氎平方向ブロック射圱デヌタ最倧倀 を、前フレヌムに関する「第 2の氎平方向ブロック射圱デヌタ最倧倀」「前フレヌムの 氎平方向ブロック射圱デヌタ最倧倀」ずも蚀うずしお保存する。たた、第 2の氎平方向 ブロック射圱デヌタ最倧倀保存郚 47は、第 2の氎平方向ブロック射圱デヌタ最倧倀 に基づき、埌述する第 3の閟倀および第 4の閟倀を算出する。
[0056] 第 3の閟倀亀差点探玢郚 48は、第 2の氎平方向ブロック射圱ラむンメモリ 46に保存 される前フレヌムに係る第 2の氎平方向ブロック射圱デヌタず、第 2の氎平方向ブロッ ク射圱デヌタ最倧倀保存郚 47で算出された第 3の閟倀ずが亀差する点を求め、この 亀差点 (以䞋では「第 3の閟倀亀差点」ずも 、うの情報を出力する。
[0057] 氎平方向ブロック射圱デヌタ読み出し郚 49は、第 3の閟倀亀差点探玢郚 48で求 められた第 3の閟倀亀差点を䞭心に、その前埌の所定範囲 (動きベクトル怜出範囲 内にある第 1の氎平方向ブロック射圱デヌタを、第 1の氎平方向ブロック射圱ラむンメ モリ 44から読み出す。
[0058] 氎平方向ブロック垂盎方向動きベクトル算出郚 50は、第 2の氎平方向ブロック射圱 デヌタ最倧倀保存郚 47から出力される第 4の閟倀を甚い、氎平方向ブロック射圱デ ヌタ読み出し郚 49で読み出された第 1の氎平方向ブロック射圱デヌタそれぞれを n 倀ィ匕 (nは 2以䞊の敎数)しおビット数の削枛を行うずずもに、 n倀化された射圱デヌタ を第 3の閟倀亀差点力 の距離ごずに加算する。
[0059] 垂盎方向動きベクトル決定郚 51は、氎平方向ブロック垂盎方向動きベクトル算出 郚 50からの出力に基づき画像の垂盎方向動きベクトルを決定する。ここで決定され た画像の垂盎方向動きベクトルは出力端子 52から出力される。
[0060] 図 7は、氎平方向ブロック射圱郚 43の芁郚構成を瀺すブロック図である。
氎平方向ブロック射圱郚 43は、入力端子 431ず、氎平方向ブロックの 1氎平ラむン デヌタの加算を行う加算噚 432ず、加算噚 432で加算されたデヌタを逐次保存する ノ ッファメモリずしおの氎平方向射圱䞀時蚘憶メモリ 433ず、出力端子 434ずを備えお いる。
[0061] 入力端子 431には、氎平方向゚ッゞ抜出フィルタリング郚 42で氎平方向の゚ッゞ が匷調された画像が入力される。入力端子 431に入力された画像は、氎平方向プロ ックごずに加算噚 432および氎平方向射圱䞀時蚘憶メモリ 433によっお氎平方向に 射圱がずられる。具䜓的には、氎平方向ブロック内の 1氎平ラむンの画玠に぀いお、 入力端子 431から入力された画玠ず、前画玠たでに加算噚 432で加算され氎平方向 射圱䞀時蚘憶メモリ 433に蚘憶された加算結果を、加算噚 432で加算し、その加算 結果を再び氎平方向射圱䞀時蚘憶メモリ 433に戻し蚘憶する。このような加算動䜜 が繰り返されるこずにより氎平方向ブロックにおける 1氎平ラむンの加算が終了するず、 その氎平方向ブロックの 1氎平ラむンの党画玠の加算デヌタ、぀たり氎平方向の射圱 デヌタが出力端子 434から出力されるこずずなる。以䞋、同様にしお、次の氎平方向 ブロックの氎平方向の射圱デヌタが凊理され、 1氎平ラむンに぀いお党おの氎平方向 ブロックの凊理が終了するず、次の 1氎平ラむンの凊理がなされる。
[0062] 図 8は、氎平方向ブロック垂盎方向動きベクトル算出郚 50の芁郚構成を瀺すブロッ ク図である。
[0063] 氎平方向ブロック垂盎方向動きベクトル算出郚 50は、 3぀の入力端子 501〜503ず 、 n倀化噚 504ず、 n倀化噚 504で n倀ィ匕された第 1の氎平方向ブロック射圱デヌタの 加算を行う加算噚 505ず、加算噚 505で加算されたデヌタを逐次保存するバッファメ モリずしおの垂盎方向動きベクトル加算メモリ 506ず、ピヌク怜出噚 507ず、出力端子 5 08ずを備えお ボる。
[0064] 入力端子 501には、氎平方向ブロック射圱デヌタ読み出し郚 49から出力された第 1の氎平方向ブロック射圱デヌタが入力され、入力端子 502には、第 2の氎平方向ブ ロック射圱デヌタ最倧倀保存郚 47から出力された第 4の閟倀が入力される。たた、入 力端子 503には、第 3の閟倀亀差点探玢郚 48から出力された第 3の閟倀亀差点の 情報が入力される。
[0065] n倀化噚 504は、入力端子 501から入力された第 1の氎平方向ブロック射圱デヌタ を、入力端子 502から入力される第 4の閟倀に基づいお n倀ィ匕 (䟋えば 3倀化)する。
[0066] 加算噚 505は、 n倀化噚 504で n倀ィ匕された第 1の氎平方向ブロック射圱デヌタず、 垂盎方向動きベクトル加算メモリ 506から読み出されたデヌタずを第 3の閟倀亀差点 を䞭心ずしお加算し、加算結果を垂盎方向動きベクトル加算メモリ 506に再び蚘憶さ せる。このような加算動䜜が繰り返されるこずにより氎平方向ブロックに関する党おの 第 3の閟倀亀差点に぀いおの加算が終了するず、氎平方向ブロックに関する加算デ ヌタがピヌク怜出噚 507に出力される。 [0067] ピヌク怜出噚 507は、加算噚 505から出力された加算デヌタにおけるピヌク䜍眮 埌述する垂盎方向動きベクトル)を怜出する。このピヌク怜出噚 507で怜出されたピ ヌク䜍眮は、出力端子 508を介しお垂盎方向動きベクトル決定郚 51に入力されるこ ずずなる。
[0068] 以䞊のような構成を有する動きベクトル怜出装眮 1の動䜜に぀いお、以䞋で説明す る。
[0069] <動きべタトル怜出装眮 1の動䜜 >
たず、動きベクトル怜出装眮 1においお画像の氎平方向の動きベクトルを怜出する 氎平方向動きベクトル怜出郚 2の動䜜を説明する。
[0070] 図 2のように氎平ラむンの画玠走査を垂盎方向に順に繰り返すこずによっお読み出 されるフレヌム画像が、図 3に瀺す氎平方向動きベクトル怜出郚 2の入力端子 20に 入力されるず、垂盎方向画像分割郚 21で垂盎方向にブロック分割される。すなわち、 垂盎方向画像分割郚 21においおは、フレヌム画像においお垂盎方向に分割しお埗 られる耇数の画像領域 (垂盎方向ブロック)が蚭定される。これにより、以降の凊理で は、垂盎方向ブロックごずに凊理および管理が行われるこずずなる。
[0071] 垂盎方向画像分割郚 21では、䟋えば図 9の (a)に瀺すように 640画玠 X 480画玠 の画像デヌタ力 垂盎方向に 64画玠の幅 (分割幅)を有した 7個の垂盎方向ブロック V b0〜vb6に分割される。なお、垂盎方向の最䞋段の画像デヌタ vb7は氎平方向動き ベクトルの怜出においお利甚されないこずずなる力 フレヌム画像の倧郚分を占める 7 ぀の垂盎方向ブロック vb0〜vb6が氎平方向動きベクトルの怜出に䜿甚されるため、 怜出粟床の面で特に問題はないず考えられる。ここで、図 9の (a)に瀺す分割幅およ び分割数ずするのは必須ではな 、。
[0072] 垂盎方向画像分割郚 21で図 9の (a)のように 7個の垂盎方向ブロック vb0〜vb6に 分割された画像は、垂盎方向゚ッゞ抜出フィルタリング郚 22においお垂盎方向に延 びる゚ッゞ成分の抜出、換蚀すれば氎平方向に急峻に倉化する画像郚分を匷調す るようなフィルタリング凊理が斜される。このフィルタリング凊理で甚いられるフィルタず しおは、単玔に氎平方向に隣接する画玠ずの差分を取る (1, 1)の 2タップフィルタや 、 2次埮分に盞圓する (—1,2,— 1)の 3タップフィルタなどの䜿甚が可胜である。なお、 このようなフィルタを䜿甚するのは必須でなぐ氎平方向に茝床倉化が倧きくなる画 像郚分にぉ 、お出力倀が䞊昇するフィルタであれば良 、。
[0073] 垂盎方向゚ッゞ抜出フィルタリング郚 22で各垂盎方向ブロック (画像領域) vbO〜vb 6ごずに垂盎方向の゚ッゞが匷調された画像デヌタは、垂盎方向ブロック射圱郚 23 に入力され、垂盎方向ブロック射圱郚 23で垂盎方向に射圱される。この射圱により、 垂盎方向の (ラむン間で)ノむズ成分を䜎枛でき、たた垂盎方向の゚ッゞ成分をより匷 調できるため、特城点に察応する垂盎方向゚ッゞを際立たせお動きベクトル怜出粟 床の向䞊を図れるこずずなる。垂盎方向ブロック射圱郚 23の動䜜に぀いお、図 9の (b) に瀺す抂念図を参照し぀぀説明する。
[0074] 垂盎方向ブロック射圱郚 23では、図 9の (a)に瀺す各垂盎方向ブロック vb0〜vb6 の入力が完了した時点、぀たり゚ッゞ匷調された各垂盎方向ブロック vb0〜vb6にお ける最終ラむンの最終画玠が入力された時点で、 1氎平ラむン分のデヌタ配列 Mvを 有する垂盎方向ブロック射圱デヌタ Μη0〜Μη6(図 9の (b))それぞれの党配列芁玠が 生成される。なお、デヌタ配列 Mvは、氎平ラむンの党画玠数 (䟋えば 640)の配列芁 玠を有しおいる力 1, 1)のような 2タップフィルタでは有効芁玠が氎平ラむンの党 画玠数 1(䟋えば 639)、䞀 1, 2, 1)のような 3タップフィルタでは有効芁玠が氎平 ラむンの党画玠数— 2(䟋えば 638)ずなる。
[0075] 具䜓的には、図 4に瀺すように入力端子 231を介しお入力された各垂盎方向ブロッ ク vb0〜vb6の画像デヌタ (垂盎方向の゚ッゞ匷調が斜された画像デヌタ)力 順次 に加算噚 232に入力される。加算噚 232では、たず入力された垂盎方向ブロックの 先頭の氎平ラむン力 垂盎方向射圱䞀時蚘憶メモリ 233内のデヌタを読み出すこず なぐ垂盎方向射圱䞀時蚘憶メモリ 233に曞き蟌たれる。次に、加算噚 232では、垂 盎方向射圱䞀時蚘憶メモリ 233に蚘憶されおいる前ラむンたでの加算結果を読み出 し、入力端子 231から入力される垂盎方向ブロックの氎平 1ラむンずの加算を行っお、 その加算結果を垂盎方向射圱䞀時蚘憶メモリ 233に曞き戻す。
[0076] そしお、垂盎方向ブロックにおける最終の氎平ラむンが加算噚 232に入力されるず、 垂盎方向射圱䞀時蚘憶メモリ 233に保存された前ラむンたでの加算結果を読み出し 、入力端子 231から入力される垂盎方向ブロックの最終ラむンずの加算を行っお、そ の加算結果、぀たり垂盎方向ブロックの党おの氎平ラむンが加算されたデヌタを垂盎 方向ブロックの射圱デヌタずしお、出力端子 234から第 1の垂盎方向ブロック射圱デ ヌタ最倧倀保存郚 24ずビット数削枛郚 25ずに出力する。
[0077] なお、加算噚 232においお垂盎方向ブロックの党氎平ラむンが加算された射圱デ ヌタを垂盎方向射圱䞀時蚘憶メモリ 233にヌ䞔蚘憶させ、次の垂盎方向ブロックの 先頭ラむンが入力される際に、垂盎方向射圱䞀時蚘憶メモリ 233内の射圱デヌタを 読み出しお出力端子 234から出力するようにしおも良 、。
[0078] 第 1の垂盎方向ブロック射圱デヌタ最倧倀保存郚 24では、垂盎方向ブロック射圱 郚 23から出力された垂盎方向ブロックの射圱デヌタに関する最倧倀を算出し、第 1 の垂盎方向ブロック射圱デヌタ最倧倀 (珟フレヌムの垂盎方向ブロック射圱デヌタ最 倧倀)ずしお保存する。すなわち、第 1の垂盎方向ブロック射圱デヌタ最倧倀保存郚 2 4は、珟フレヌム埌フレヌムの射圱デヌタに関するデヌタ配列 Mv (図 9 (b) )の配 列芁玠にお 、お最倧倀を求め、この最倧倀を蚘憶する。
[0079] たた、第 1の垂盎方向ブロック射圱デヌタ最倧倀保存郚 24では、算出された珟フレ ヌムの垂盎方向ブロック射圱デヌタ最倧倀に基づき、第 2の閟倀を算出する。䟋え ば、珟フレヌムの垂盎方向ブロック射圱デヌタ最倧倀を Plmaxずするず、第 2の閟倀 α 2は次の匏1)で算出される。
[0080] a 2 = Plmax X kl (1)
ここで、 klは予め定められた係数で、 0く kl < 1である。
[0081] なお、第 2の閟倀 a 2の挔算は、䞊匏 (1)に限るものではなぐ珟フレヌムの垂盎方 向ブロック射圱デヌタ最倧倀 Plmaxが倧きくなれば第 2の閟倀 oc 2が倧きくなるもの であれば良ぐたた倉換テヌブルを䜿甚しおも良!、。
[0082] ビット数削枛郚 25では、第 1の垂盎方向ブロック射圱デヌタ最倧倀保存郚 24から 入力された珟フレヌムの垂盎方向ブロック射圱デヌタ最倧倀 (第 1の垂盎方向ブロッ ク射圱デヌタ最倧倀に基づき射圱デヌタの有効ビットレンゞを決定する。そしお、こ の有効ビットレンゞに基づき蚭定される䞊䜍無効ビットおよび䞋䜍無効ビットを垂盎 方向ブロック射圱郚 23から入力された垂盎方向ブロック射圱デヌタから削枛し、有効 ビットのみで構成される珟フレヌムの垂盎方向ブロック射圱デヌタを第 1の垂盎方向 ブロック射圱ラむンメモリ 26に出力する。
[0083] 第 1の垂盎方向ブロック射圱ラむンメモリ 26は、ビット数削枛郚 25によっおビット数 が䜎枛された珟フレヌムの垂盎方向ブロック射圱デヌタを、第 1の垂盎方向ブロック 射圱デヌタずしお垂盎方向ブロックごずに保存する。すなわち、第 1の垂盎方向ブロッ ク射圱ラむンメモリ 26には、第 1の垂盎方向ブロック射圱デヌタ最倧倀保存郚 24で求 められた第 1の垂盎方向ブロック射圱デヌタ最倧倀に基づきビット数削枛郚 25にお V、おビット数 (各配列芁玠のデヌタ長が削枛された珟フレヌム (埌フレヌムの射圱 デヌタが蚘憶される。
[0084] 第 1の垂盎方向ブロック射圱ラむンメモリ 26は、珟フレヌムに関する新たな第 1の垂 盎方向ブロック射圱デヌタが入力されるタむミングで、前フレヌムの垂盎方向ブロック 射圱デヌタを読み出し、第 2の垂盎方向ブロック射圱ラむンメモリ 27に䞎える。
[0085] 第 2の垂盎方向ブロック射圱ラむンメモリ 27は、第 1の垂盎方向ブロック射圱ラむンメ モリ 26から読み出された前フレヌムの垂盎方向ブロック射圱デヌタを、第 2の垂盎方 向ブロック射圱デヌタずしお保存する。
[0086] 同様に、第 1の垂盎方向ブロック射圱デヌタ最倧倀保存郚 24は、珟フレヌムに関 する新たな第 1の垂盎方向ブロック射圱デヌタ最倧倀が曎新されるタむミングで、既 に保存されおいる第 1の垂盎方向ブロック射圱デヌタ最倧倀を読み出し、第 2の垂盎 方向ブロック射圱デヌタ最倧倀保存郚 28に䞎える。
[0087] 第 2の垂盎方向ブロック射圱デヌタ最倧倀保存郚 28では、第 1の垂盎方向ブロック 射圱デヌタ最倧倀保存郚 24から読み出された第 1の垂盎方向ブロック射圱デヌタ最 倧倀力 前フレヌムに関する第 2の垂盎方向ブロック射圱デヌタ最倧倀 (前フレヌム の垂盎方向ブロック射圱デヌタ最倧倀ずしお保存される。
[0088] 換蚀すれば、第 1の垂盎方向ブロック射圱デヌタ最倧倀保存郚 24に保存された珟 フレヌムの垂盎方向ブロック射圱デヌタ最倧倀は、次のフレヌムでは、第 2の垂盎方 向ブロック射圱デヌタ最倧倀保存郚 28に前フレヌムの垂盎方向ブロック射圱デヌタ 最倧倀ずしお保存されるこずずなる。
[0089] 第 2の垂盎方向ブロック射圱デヌタ最倧倀保存郚 28は、前フレヌムに関する第 2の 垂盎方向ブロック射圱デヌタ最倧倀に基づき、第 1の閟倀 (所定の䞀定倀)が蚭定さ れる。䟋えば、前フレヌムの垂盎方向ブロック射圱デヌタ最倧倀を P2maxずするず、 第 1の閟倀 α ΐは次の匏2)で算出される。
[0090] a 1 = P2max X k2 (2)
ここで、 k2は予め定められた係数で、 0< k2< 1である。
[0091] なお、第 1の閟倀 a 1の挔算は、䞊匏 (2)に限るものではなぐ前フレヌムの垂盎方 向ブロック射圱デヌタ最倧倀 P2maxが倧きくなれば第 1の閟倀 oc 1が倧きくなるもの であれば良ぐたた倉換テヌブルを䜿甚しおも良!、。
[0092] 第 1の閟倀亀差点探玢郚 29では、第 2の垂盎方向ブロック射圱ラむンメモリ 27から 読み出された第 2の垂盎方向ブロック射圱デヌタず、第 2の垂盎方向ブロック射圱デ ヌタ最倧倀保存郚 28から出力された第 1の閟倀ずの亀差点 (第 1の閟倀亀差点)ã‚’æ°Ž 平方向に探玢する。この第 1の閟倀亀差点探玢郚 29で埗られた第 1の閟倀亀差点 の情報は、垂盎方向ブロック射圱デヌタ読み出し郚 30ず垂盎方向ブロック氎平方向 動きベクトル算出郚 31ずに出力される。
[0093] 垂盎方向ブロック射圱デヌタ読み出し郚 30は、第 1の閟倀亀差点探玢郚 29から出 力された第 1の閟倀亀差点を䞭心ずした動きべ倖ル怜出範囲に察応した珟フレヌム の (第 1の)垂盎方向ブロック射圱デヌタを第 1の垂盎方向ブロック射圱ラむンメモリ 26 から読み出す。
[0094] すなわち、第 1の閟倀亀差点を A(i) (ただし i= 1 ,2, · · · ρで、 ρは怜出された第 1の閟 倀亀差点の総数)ずし、動きべ倖ル怜出範囲を第 1の閟倀亀差点を䞭心ずした (—V) から (+ V) (ただし Vは正の敎数)の範囲ずするず、第 1の垂盎方向ブロック射圱ラむン メモリ 26から読み出される射圱デヌタは、氎平方向においお (A(i)— V)力も (A(i) +V) たでの範囲にある第 1の垂盎方向ブロック射圱デヌタの郚分デヌタずなる。
[0095] この垂盎方向ブロック射圱デヌタ読み出し郚 30によっお第 1の垂盎方向ブロック射 圱ラむンメモリ 26から読み出された第 1の垂盎方向ブロック射圱デヌタは、垂盎方向 ブロック氎平方向動きベクトル算出郚 31に出力される。
[0096] 垂盎方向ブロック射圱デヌタ読み出し郚 30から出力された第 1の垂盎方向ブロック 射圱デヌタは、図 5に瀺す垂盎方向ブロック氎平方向動きベクトル算出郚 31の入力 端子 31 1を介しお n倀化噚 314 (圧瞮手段に入力される。 [0097] この n倀化噚 314では、第 1の垂盎方向ブロック射圱デヌタ最倧倀保存郚 24から出 力され、入力端子 312を介しお入力された第 2の閟倀に基づき、第 1の垂盎方向プロ ック射圱デヌタを n倀化する。
[0098] すなわち、 n倀化噚 314は、垂盎方向ブロック射圱デヌタ読み出し郚 30で抜出され た珟フレヌムの射圱デヌタに関するデヌタ配列 Mv (図 9の (b))各配列芁玠のデヌタ 長を、䟋えば 3倀化凊理しお圧瞮する。この n倀化噚 314の凊理に぀いお、図 10を参 照し぀぀説明する。
[0099] 図 10は、 n倀化噚 314における n倀ィ匕凊理を説明するための図である。なお、図 10 では、 n= 3ずなる 3倀化凊理の䞀䟋を瀺しお!/、る。
[0100] n倀化噚 314に入力される第 1の垂盎方向ブロック射圱デヌタを D、入力端子 312 を介しお入力される第 2の閟倀を α 2( α 2は正の敎数)ずするず、 η倀化噚 314では、 D< (- a 2)のずき (侀 1)を出力し、 (- a 2)≀D≀ a 2のずき 0を出力するずずもに、 D > « 2のずき 1を出力するこずで 3倀ィ匕凊理が行われる。すなわち、 n倀化噚 314にお ける 3倀化凊理では、珟フレヌム (埌フレヌム)の射圱デヌタにおけるデヌタ配列 Mv の配列芁玠の最倧倀に基づき蚭定される第 2の閟倀 α 2( α 2 >0)に関しお、垂盎方 向ブロック射圱デヌタ読み出し郚 30で抜出された珟フレヌムの射圱デヌタに関する 配列芁玠の倀力 䞀 a 2)より小さい堎合、䞀 a 2)以䞊で a 2以䞋の堎合、および a 2より倧きい堎合の 3段階による 3倀ィ匕が行われる。
[0101] この n倀化噚 314での n倀ィ匕凊理に぀いおは、垂盎方向ブロック射圱デヌタ読み出 し郚 30から出力される珟フレヌムの第 1の垂盎方向ブロック射圱デヌタの郚分波圢 力 第 1の閟倀亀差点に察しおどのような䜍眮関係、぀たりどのような傟向の波圢ずな ぀おいるのかが重芁であるため、第 1の垂盎方向ブロック射圱デヌタの波圢においお 山や谷が刀別できるだけのビット粟床を確保すれば十分である。
[0102] 䞀方、 n倀化噚 314においおビット数の削枛を行わずに、垂盎方向ブロック射圱デ ヌタ読み出し郚 30から出力された第 1の垂盎方向ブロック射圱デヌタの倀そのもの を採甚する堎合には、第 1の垂盎方向ブロック射圱デヌタ D > ひ 2に察応する倧きな 振幅の山や、 Dく䞀 a 2)に察応する倧きな振幅の谷に、画像の特城が衚れる小さ な振幅の山や谷が埋没しおしたう恐れがあり䞍適切である。さらに、䞀 o; 2)≀D≀ a 2に察応する小さな山や谷は、ノむズの圱響を受けやすく数も倚いため、これに画像 の特城が衚れる適床な振幅の山や谷が埋もれるこずずなる。
[0103] よっお、 n倀化噚 314では、第 1の垂盎方向ブロック射圱デヌタに察しお適切な n倀 化凊理を斜すこずにより、動きベクトルの怜出粟床の向䞊を図っおいる。
[0104] 以䞊で説明した第 1の閟倀亀差点探玢郚 29、垂盎方向ブロック射圱デヌタ読み出 し郚 30および垂盎方向ブロック氎平方向動きベクトル算出郚 31の動䜜に぀いお、図 11を参照し぀぀具䜓的に説明する。なお、図 11の (a)および (b)の暪軞は、射圱デヌ タのデヌタ配列 Mv (図 9の (b》の配列芁玠の䜍眮を瀺しおいる。たた、図 11の (a)では 、第 1の閟倀亀差点 A(1)〜A(8)それぞれを䞞印で衚しおいる。
[0105] 第 1の閟倀亀差点探玢郚 29では、図 11の (a)に瀺すように前フレヌムに関する第 2 の垂盎方向ブロック射圱デヌタ W2の波圢においお、第 2の垂盎方向ブロック射圱デ ヌタ最倧倀保存郚 28から出力された第 1の閟倀《1ず亀差する第 1の閟倀亀差点 A( 1)〜A(8)が求められる。
[0106] すなわち、第 1の閟倀亀差点探玢郚 29は、前フレヌムに察しお垂盎方向ブロック射 圱郚 23で埗られた射圱デヌタに関しお射圱デヌタのデヌタ配列 Mv (図 9の (b))の 芁玠順に配列芁玠の倀をグラフ化した波圢 W2ず、配列芁玠の倀が第 1の閟倀 (所定 の䞀定倀) a 1ずなる盎線ずが亀差する各第 1の閟倀亀差点の配列芁玠の䜍眮を特 定する。
[0107] 次に、垂盎方向ブロック射圱デヌタ読み出し郚 30では、図 11の (a)に瀺す各第 1の 閟倀亀差点 A(1)〜A(8)を䞭心ずした所定の動きベクトル怜出範囲に぀いお第 1の垂 盎方向ブロック射圱ラむンメモリ 26から珟フレヌムの垂盎方向ブロック射圱デヌタが 読み出される。
[0108] すなわち、垂盎方向ブロック射圱デヌタ読み出し郚 30は、各第 1の閟倀亀差点に おける射圱デヌタ (デヌタ配列)の配列芁玠の䜍眮を䞭心ずした所定範囲のデヌタ配 列を、垂盎方向ブロック射圱郚 23から出力されビット数削枛郚 25によりビット数が削 枛された珟フレヌム (埌フレヌム)の射圱デヌタから抜出する。
[0109] 䟋えば第 1の閟倀亀差点 A(7)に関しおは、図 11の (b)に瀺すように第 1の閟倀亀差 点 A(7)を䞭心に (A(7)— V)力も (A(7) +V)たでの範囲 (矩圢の砎線内の波圢郚分)に 察応する第 1の垂盎方向ブロック射圱デヌタ Wlが読み出される。
[0110] そしお、垂盎方向ブロック射圱デヌタ読み出し郚 30によっお読み出された第 1の垂 盎方向ブロック射圱デヌタは、第 1の垂盎方向ブロック射圱デヌタ最倧倀保存郚 24 力 出力された第 2の閟倀 α 2を甚いお、垂盎方向ブロック氎平方向動きベクトル算 出郚 31の η倀噚 314で η倀ィ匕凊理される。
[0111] 䟋えば第 1の閟倀亀差点 Α(7)に関しおは、図 11の (b)に瀺す第 2の閟倀 a 2および (䞀《2)に察する第 1の垂盎方向ブロック射圱デヌタ W1の倧小関係に基づき、第 1 の閟倀亀差点 Α(7)を䞭心に (Α(7)— V)力も (A(7)+V)たでの範囲 (矩圢の砎線内の 波圢郚分)に぀いお、図 11の (c)のように第 1の垂盎方向ブロック射圱デヌタが 3倀ィ匕 凊理される。これにより、珟フレヌムの垂盎方向ブロック射圱デヌタが「䞀 1」、「0」た たは「 1」で衚されるこずずなる。
[0112] n倀化噚 314では、第 1の閟倀亀差点探玢郚 29から出力される党おの第 1の閟倀 亀差点にっ 、お、図 11の (c)に瀺すような n倀ィ匕凊理が行われる。
[0113] 次に、加算噚 315(図 5)では、入力端子 313を介しお第 1の閟倀亀差点探玢郚 29 力も出力された第 1の閟倀亀差点を䞭心に、 n倀化噚 314で n倀化された第 1の垂盎 方向ブロック射圱デヌタず、氎平方向動きベクトル加算メモリ 316から読み出された 1 ぀前たでの n倀ィ匕された第 1の垂盎方向ブロック射圱デヌタの加算倀ずを加算し、そ の加算結果を氎平方向動きべクトル加算メモリ 316に再び蚘憶させる。
[0114] そしお、第 1の閟倀亀差点探玢郚 29で怜出された党おの第 1の閟倀亀差点のうち 最埌のものに関する n倀ィ匕された第 1の垂盎方向ブロック射圱デヌタを加算噚 315で 加算しお、 1぀の垂盎方向ブロックに぀いおの加算凊理を終了する際には、その加 算結果をピヌク怜出噚 317に出力するようにする。
[0115] なお、加算噚 315での加算凊理終了埌に、党おの第 1の閟倀亀差点に関する加算 結果を蚘憶しおいる氎平方向動きベクトル加算メモリ 316から、その加算結果をピヌ ク怜出郚 317が読み出すようにしおも良い。
[0116] ピヌク怜出噚 317には、第 1の閟倀亀差点探玢郚 29で怜出された党おの第 1の閟 倀亀差点に぀いお各第 1の閟倀亀差点を䞭心ずした動きべ倖ル怜出範囲 (䞊述した 士 Vの範囲に察応する n倀ィ匕枈みの第 1の垂盎方向ブロック射圱デヌタを加算した デヌタ以䞋では「垂盎方向ブロック n倀ィ匕デヌタ」ずもいうが入力される力 この垂 盎方向ブロック n倀化デヌタに関するピヌク倀がピヌク怜出噚 317で怜出される。
[0117] このピヌク怜出噚 317においお怜出される垂盎方向ブロック n倀ィ匕デヌタのピヌク 䜍眮が、その垂盎方向ブロック力 埗られる氎平方向動きベクトルずなり、出力端子 3 18を介しお氎平方向動き決定郚 32に出力される。
[0118] 以䞊で説明した加算噚 315およびピヌク怜出郚 317の動䜜に぀いお、図 12を参照 し぀぀具䜓的に説明する。なお、図 12の (a)では、図 11の (a)に瀺す第 1の閟倀亀差 点 A(1)〜A(8)を䞭心ずした動きベクトル怜出範囲 (士 Vの範囲)においお第 1の垂盎 方向ブロック射圱デヌタを 3倀ィ匕したものを抂念的に瀺しおいる。
[0119] 加算噚 315においお、図 12の (a)に瀺す第 1の閟倀亀差点 A(1)〜A(8)呚蟺の 3倀 化デヌタが順次に入力されるず、これらのデヌタが加算され、図 12の (b)に瀺すような 垂盎方向ブロック n倀ィ匕デヌタが生成される。
[0120] 具䜓的には、加算噚 315においお垂盎方向ブロック射圱デヌタ読み出し郚 30によ り垂盎方向ブロック射圱デヌタ (デヌタ配列 Mv (図 9の (b)》力も抜出され、 n倀噚 314 でデヌタ長が圧瞮された珟フレヌムに係る動きベクトル怜出範囲 (所定範囲)のデヌ タ配列それぞれに぀いお、各第 1の閟倀亀差点の配列芁玠の䜍眮に察しお盞察䜍 眮が同じ配列芁玠同士の倀が加算されるこずずなる。
[0121] 加算噚 315で生成された垂盎方向ブロック n倀ィ匕デヌタがピヌク怜出噚 317に入 力されるず、その垂盎方向ブロックの氎平方向動きベクトルずしお図 12の (b)に瀺す氎 平方向のピヌク䜍眮 hvが怜出される。すなわち、ピヌク怜出噚 317では、加算噚 31 5で加算された加算結果に基づき、フレヌム画像の氎平方向に関する動きベクトルが 怜出される。
[0122] このピヌク怜出噚 317では、原則的に動きベクトル怜出範囲士 Vの範囲におい お最倧倀ずなるピヌク䜍眮が探玢されるが、同䞀の最倧倀が耇数ある堎合には、原 点 0に近いもの (原点 0たでの距離が等しい堎合には負の䜍眮のもの)を優先する。な お、このようなピヌク䜍眮の怜出ルヌルに限らず、正の䜍眮にある最倧倀を優先しお も良ぐたた前フレヌムにおける動きベクトルの傟向を珟フレヌムのピヌク䜍眮の怜出 に利甚するようにしおも良い。 [0123] ピヌク怜出噚 317で垂盎方向ブロックごずに算出された氎平方向動きベクトルは、 順次に出力端子 318を介しお氎平方向動きベクトル決定郚 32に入力される。
[0124] 氎平方向動きベクトル決定郚 32では、垂盎方向ブロック氎平方向動きベクトル算出 郚 31から順次に出力される各垂盎方向ブロックの氎平方向動きベクトルに基づき、 画像党䜓の氎平方向動きベクトルが決定される。この氎平方向動きベクトル決定郚 3 2では、䟋えば最も出珟頻床が高い氎平方向動きベクトルを画像党䜓の氎平方向動 きベクトルずしお決定する。
[0125] なお、最も出珟頻床が高い氎平方向動きベクトルを画像党䜓の氎平方向動きべタト ルずしお決定するのは必須でなぐ垂盎方向ブロック氎平方向動きベクトル算出郚 31 力も出力される各垂盎方向ブロックの氎平方向動きベクトルの平均倀を、画像党䜓の 氎平方向動きベクトルずしお決定するようにしおも良 、。
[0126] 以䞊のように氎平方向動きベクトル決定郚 32では、各垂盎方向ブロックの氎平方 向動きベクトルに基づいおフレヌム画像党䜓に関する氎平方向の動きベクトルを決 定するため、画像の䞀郚で動きがあった堎合でも、その動きぞの誀反応を抑制できる こずずなる。
[0127] なお、フレヌム画像党䜓に関する氎平方向動きベクトルの怜出にあたっおは、必ず しもフレヌム画像党䜓を䜿う必芁はなぐフレヌム画像の䞀郚力 氎平方向動きべク トルを怜出し、それをフレヌム画像党䜓に関する氎平方向動きベクトルずしおも良い。
[0128] 次に、動きベクトル怜出装眮 1においお画像の垂盎方向の動きベクトルを怜出する 垂盎方向動きベクトル怜出郚 4の動䜜を説明する。
[0129] 図 2のように氎平ラむンの画玠走査を垂盎方向に順に繰り返すこずによっお読み出 されるフレヌム画像力 図 6に瀺す垂盎方向動きベクトル怜出郚 4の入力端子 40に 入力されるず、氎平方向画像分割郚 41で氎平方向にブロック分割される。すなわち、 氎平方向画像分割郚 41においおは、フレヌム画像においお氎平方向に分割しお埗 られる耇数の画像領域 (氎平方向ブロック)が蚭定される。これにより、以降の凊理で は、氎平方向ブロックごずに凊理や管理が行われるこずずなる。
[0130] 氎平方向画像分割郚 41では、䟋えば図 13の (a)に瀺すように 640画玠 X 480画玠 の画像デヌタ力 氎平方向に 64画玠の幅 (分割幅)を有した 10個の氎平方向ブロッ ク hb0〜hb9に分割される。なお、図 13の (a)に瀺す分割幅および分割数ずするのは 必須ではない。
[0131] 氎平方向画像分割郚 41で図 13の (a)のように 10個の氎平方向ブロック hbO〜hb9 に分割された画像は、氎平方向゚ッゞ抜出フィルタリング郚 42においお氎平方向に 延びる゚ッゞ成分の抜出、換蚀すれば垂盎方向に急峻に倉化する画像郚分を匷調 するようなフィルタリング凊理が斜される。このフィルタリング凊理で甚いられるフィルタ ずしおは、単玔に垂盎方向に隣接する画玠ずの差分を取る (1, 1)の 2タップフィルタ や、 2次埮分に盞圓する (—1,2,— 1)の 3タップフィルタなどの䜿甚が可胜である。な お、このようなフィルタを䜿甚するのは必須でなぐ垂盎方向に茝床倉化が倧きくなる 画像郚分にぉ 、お出力倀が䞊昇するフィルタであれば良 、。
[0132] 氎平方向゚ッゞ抜出フィルタリング郚 42で各氎平方向ブロック (画像領域) hbO〜hb 9ごずに氎平方向の゚ッゞが匷調された画像デヌタは、氎平方向ブロック射圱郚 43 に入力され、氎平方向ブロック射圱郚 43で氎平方向に射圱される。この射圱により、 氎平方向の (ラむン間で)ノむズ成分を䜎枛でき、たた氎平方向の゚ッゞ成分をより匷 調できるため、特城点に察応する氎平方向゚ッゞを際立たせお動きベクトル怜出粟 床の向䞊を図れるこずずなる。氎平方向ブロック射圱郚 43の動䜜に぀いお、図 13の b)の抂念図を参照し぀぀説明する。
[0133] 氎平方向ブロック射圱郚 43では、図 13の (a)に瀺す各氎平方向ブロック hbO〜hb9 の 1氎平ラむンの入力が完了した時点で、 1垂盎ラむン分のデヌタ配列 Mhを有する 氎平方向ブロック射圱デヌタ hnO〜hn9(図 13の (b》の 1配列芁玠が生成される。し たがっお、党配列芁玠が揃うのは、各氎平方向ブロック hbO〜hb9の最終の氎平ラむ ンの入力が完了した時点である。なお、デヌタ配列 Mhは、垂盎ラむンの党画玠数 䟋えば 480)の配列芁玠を有しおいる力 (1, 1)のような 2タップフィルタでは有効芁 玠が垂盎ラむンの党画玠数 1(䟋えば 479)、䞀 1, 2, 1)のような 3タップフィルタ では有効芁玠が垂盎ラむンの党画玠数— 2(䟋えば 478)ずなる。
[0134] 具䜓的には、図 7に瀺すように入力端子 431を介しお入力された各氎平方向ブロッ ク hbO〜hb9の画像デヌタ (氎平方向の゚ッゞ匷調が斜された画像デヌタ)力 加算 噚 432に入力される。加算噚 432では、たず入力された氎平方向ブロックの 1氎平ラ むンの先頭では、氎平方向射圱䞀時蚘憶メモリ 433内のデヌタを読み出すこずなぐ 氎平方向射圱䞀時蚘憶メモリ 433に曞き蟌たれる。
[0135] 次に、加算噚 432では、氎平方向射圱䞀時蚘憶メモリ 433に蚘憶されおいる 1æ°Žå¹³ ラむンの前画玠たでの加算結果を読み出し、入力端子 431から入力される氎平方向 ブロックの 1氎平ラむンの珟画玠ずの加算を行っお、その加算結果を氎平方向射圱䞀 時蚘憶メモリ 433に曞き戻す。
[0136] そしお、氎平方向ブロックにおける 1氎平ラむンの最終画玠が加算噚 432に入力さ れるず、氎平方向射圱䞀時蚘憶メモリ 433に保存された前画玠たでの加算結果を読 み出し、入力端子 431から入力される氎平方向ブロックの 1氎平ラむンの最終画玠ず の加算を行っお、その加算結果、぀たり氎平方向ブロックの 1氎平ラむンの党画玠が 加算されたデヌタを氎平方向ブロックの 1氎平ラむンに関する射圱デヌタずしお、出 力端子 434から第 1の氎平方向ブロック射圱ラむンメモリ 44ず第 1の氎平方向ブロック 射圱デヌタ最倧倀保存郚 45ずに出力する。
[0137] なお、加算噚 432においお氎平方向ブロックの 1氎平ラむンの党画玠が加算された 射圱デヌタを氎平方向射圱䞀時蚘憶メモリ 433にヌ䞔蚘憶させ、次の氎平方向プロ ックの 1氎平ラむンの先頭画玠が入力される際に、氎平方向射圱䞀時蚘憶メモリ 433 内の射圱デヌタを読み出しお出力端子 434から出力するようにしおも良い。
[0138] 第 1の氎平方向ブロック射圱ラむンメモリ 44では、氎平方向ブロック射圱郚 43から 入力された珟フレヌムの氎平方向ブロック射圱デヌタを、第 1の氎平方向ブロック射 圱デヌタずしお氎平方向ブロックごずに保存する。
[0139] 第 1の氎平方向ブロック射圱デヌタ最倧倀保存郚 45では、氎平方向ブロック射圱 郚 43から入力された氎平方向ブロックの射圱デヌタに関する最倧倀を算出し、第 1 の氎平方向ブロック射圱デヌタ最倧倀 (珟フレヌムの氎平方向ブロック射圱デヌタ最 倧倀)ずしお保存する。
[0140] 第 2の氎平方向ブロック射圱ラむンメモリ 46は、第 1の氎平方向ブロック射圱ラむンメ モリ 44から読み出された氎平方向ブロック射圱デヌタを、前フレヌムに関する第 2の 氎平方向ブロック射圱デヌタずしお保存する。
[0141] 同様に、第 2の氎平方向ブロック射圱デヌタ最倧倀保存郚 47では、第 1の氎平方 向ブロック射圱デヌタ最倧倀保存郚 45から出力された第 1の氎平方向ブロック射圱 デヌタ最倧倀が、前フレヌムに関する第 2の氎平方向ブロック射圱デヌタ最倧倀 (前 フレヌムの氎平方向ブロック射圱デヌタ最倧倀ずしお保存される。
[0142] 換蚀すれば、第 1の氎平方向ブロック射圱デヌタ最倧倀保存郚 45に保存された珟 フレヌムの氎平方向ブロック射圱デヌタ最倧倀は、次のフレヌムでは、第 2の氎平方 向ブロック射圱デヌタ最倧倀保存郚 47に前フレヌムの氎平方向ブロック射圱デヌタ 最倧倀ずしお保存されるこずずなる。
[0143] たた、第 2の氎平方向ブロック射圱デヌタ最倧倀保存郚 47では、算出された前フレ ヌムの氎平方向ブロック射圱デヌタ最倧倀に基づき、第 4の閟倀を算出する。䟋え ば、前フレヌムの氎平方向ブロック射圱デヌタ最倧倀を P4maxずするず、第 4の閟倀 a 4は次の匏 (3)で算出される。
[0144] « 4 = P4max X k4 (3)
ここで、 k4は予め定められた係数で、 0<k4く 1である。
[0145] なお、第 4の閟倀 α 4の挔算は、䞊匏3)に限るものではなぐ前フレヌムの氎平方 向ブロック射圱デヌタ最倧倀 P4maxが倧きくなれば第 4の閟倀 a 4が倧きくなるもの であれば良ぐたた倉換テヌブルを䜿甚しおも良い。たた、第 4の閟倀《4に぀いおは 、氎平方向ブロック毎の第 2の氎平方向ブロック射圱デヌタ最倧倀を䜿甚するのは必 須でなぐ䟋えば前フレヌムの画像党䜓に぀いおの氎平方向ブロック射圱デヌタの 最倧倀を甚いお第 4の閟倀を算出し、画像党䜓で同じ第 4の閟倀を採甚しおも良い。
[0146] 第 2の氎平方向ブロック射圱デヌタ最倧倀保存郚 47は、前フレヌムに関する第 2の 氎平方向ブロック射圱デヌタ最倧倀に基づき、第 3の閟倀 (所定の䞀定倀)が蚭定さ れる。䟋えば、前フレヌムの氎平方向ブロック射圱デヌタ最倧倀を P3maxずするず、 第 3の閟倀 a 3は次の匏 (4)で算出される。
[0147] « 3 = P3max X k3 (4)
ここで、 k3は予め定められた係数で、 0<k3< 1である。
[0148] なお、第 3の閟倀 α 3の挔算は、䞊匏 (4)に限るものではなぐ前フレヌムの氎平方 向ブロック射圱デヌタ最倧倀 P3maxが倧きくなれば第 3の閟倀 oc 3が倧きくなるもの であれば良ぐたた倉換テヌブルを䜿甚しおも良い。たた、第 3の閟倀《3に぀いおは 、氎平方向ブロック毎の第 2の氎平方向ブロック射圱デヌタ最倧倀を䜿甚するのは必 須でなぐ䟋えば前フレヌムの画像党䜓に぀いおの氎平方向ブロック射圱デヌタの 最倧倀を甚いお第 3の閟倀を算出し、画像党䜓で同じ第 3の閟倀を採甚しおも良い。
[0149] 第 3の閟倀亀差点探玢郚 48では、第 2の氎平方向ブロック射圱ラむンメモリ 46から 読み出された第 2の氎平方向ブロック射圱デヌタず、第 2の氎平方向ブロック射圱デ ヌタ最倧倀保存郚 47から出力された第 3の閟倀ずの亀差点 (第 3の閟倀亀差点)を垂 盎方向に探玢する。この第 3の閟倀亀差点探玢郚 48で埗られた第 3の閟倀亀差点 の情報は、氎平方向ブロック射圱デヌタ読み出し郚 49ず氎平方向ブロック垂盎方向 動きベクトル算出郚 50ずに入力される。
[0150] 氎平方向ブロック射圱デヌタ読み出し郚 49は、第 3の閟倀亀差点探玢郚 48から出 力された第 3の閟倀亀差点を䞭心ずした動きべ倖ル怜出範囲に察応した珟フレヌム の (第 1の)氎平方向ブロック射圱デヌタを第 1の氎平方向ブロック射圱ラむンメモリ 44 から読み出す。
[0151] すなわち、第 3の閟倀亀差点を B(i) (ただし i= l,2, ' · 'qで、 qは怜出された第 3の閟 倀亀差点の総数)ずし、動きべ倖ル怜出範囲を第 3の閟倀亀差点を䞭心ずした (—U) 力も (+U) (ただし Uは正の敎数)の範囲ずするず、第 1の氎平方向ブロック射圱ラむン メモリ 44から読み出される射圱デヌタは、垂盎方向においお (B(i)— U)力も (B(i) + U) たでの範囲にある第 1の氎平方向ブロック射圱デヌタの郚分デヌタずなる。
[0152] この氎平方向ブロック射圱デヌタ読み出し郚 49によっお第 1の氎平方向ブロック射 圱ラむンメモリ 44から読み出された第 1の氎平方向ブロック射圱デヌタは、氎平方向 ブロック垂盎方向動きベクトル算出郚 50に出力される。
[0153] 氎平方向ブロック射圱デヌタ読み出し郚 49から出力された第 1の氎平方向ブロック 射圱デヌタは、図 8に瀺す氎平方向ブロック垂盎方向動きベクトル算出郚 50の入力 端子 501を介しお n倀化噚 504 (圧瞮手段に入力される。
[0154] この n倀化噚 504では、第 2の氎平方向ブロック射圱デヌタ最倧倀保存郚 47から出 力され、入力端子 502を介しお入力された第 4の閟倀に基づき、第 1の氎平方向プロ ック射圱デヌタを n倀化する。
[0155] すなわち、 n倀化噚 504は、氎平方向ブロック射圱デヌタ読み出し郚 49で抜出され た珟フレヌムの射圱デヌタに関するデヌタ配列 Mh (図 13(b))の各配列芁玠のデヌ タ長を圧瞮する。この n倀化噚 504の凊理に぀いおは、䞊述した n倀化噚 314ず同様 の凊理を行ボ、䟋えば 3倀化凊理が実行される。
[0156] すなわち、 n倀化噚 504における 3倀ィ匕凊理では、前フレヌムの射圱デヌタにおけ るデヌタ配列 Mhの配列芁玠の最倧倀に基づき蚭定される第 4の閟倀 α 4( α 4 >0) に関しお、氎平方向ブロック射圱デヌタ読み出し郚 49で抜出された珟フレヌムの射 圱デヌタに関する配列芁玠の倀力 䞀 α 4)より小さい堎合、 (- α 4)以䞊で《4以䞋 の堎合、および α 4より倧きい堎合の 3段階による 3倀ィ匕が行われる。なお、 η倀化噚 504においおは、 η倀化噚 314ず同じ特性を有するのは必須でなぐ η倀ィ匕噚 314ず 異なる特性を有しおも良い。
[0157] 以䞊で説明した第 3の閟倀亀差点探玢郚 48、氎平方向ブロック射圱デヌタ読み出 し郚 49および氎平方向ブロック垂盎方向動きベクトル算出郚 50の動䜜に぀いお、図 14を参照し぀぀具䜓的に説明する。なお、図 14の (a)および (b)の暪軞は、射圱デヌ タのデヌタ配列 Mh (図 13の (b》の配列芁玠の䜍眮を瀺しおいる。たた、図 14の (a)で は、第 3の閟倀亀差点 B(1)〜B(6)それぞれを䞞印で衚しおいる。
[0158] 第 3の閟倀亀差点探玢郚 48では、図 14の (a)に瀺すように前フレヌムに関する第 2 の垂盎方向ブロック射圱デヌタ W4の波圢においお、第 2の氎平方向ブロック射圱デ ヌタ最倧倀保存郚 47から出力された第 3の閟倀 a 3ず亀差する第 3の閟倀亀差点 B( 1)〜B(6)が求められる。
[0159] すなわち、第 3の閟倀亀差点探玢郚 48は、前フレヌムに察しお氎平方向ブロック射 圱郚 43で埗られた射圱デヌタに関しお射圱デヌタのデヌタ配列 Mh (図 13の (b))の 芁玠順に配列芁玠の倀をグラフ化した波圢 W4ず、配列芁玠の倀が第 3の閟倀 (所定 の䞀定倀) a 3ずなる盎線ずが亀差する各第 3の閟倀亀差点の配列芁玠の䜍眮を特 定する。
[0160] 次に、氎平方向ブロック射圱デヌタ読み出し郚 49では、図 14の (a)に瀺す各第 3の 閟倀亀差点 B(1)〜B(6)を䞭心ずした所定の動きベクトル怜出範囲に぀いお第 1の氎 平方向ブロック射圱ラむンメモリ 44から珟フレヌムの氎平方向ブロック射圱デヌタが 読み出される。 [0161] すなわち、氎平方向ブロック射圱デヌタ読み出し郚 49は、各第 3の閟倀亀差点に おける射圱デヌタ (デヌタ配列)の配列芁玠の䜍眮を䞭心ずした所定範囲のデヌタ配 列を、氎平方向ブロック射圱郚 43で埗られた珟フレヌム (埌フレヌム)の射圱デヌタか ら抜出する。 䟋えば第 3の閟倀亀差点 B(4)に関しおは、図 14(b)に瀺すように第 3の 閟倀亀差点 B(4)を䞭心に (B(4)— U)力 (B(4) + U)たでの範囲 (矩圢の砎線内の波 圢郚分)に察応する第 1の氎平方向ブロック射圱デヌタ W3が読み出される。
[0162] そしお、氎平方向ブロック射圱デヌタ読み出し郚 49によっお読み出された第 1の氎 平方向ブロック射圱デヌタは、第 2の氎平方向ブロック射圱デヌタ最倧倀保存郚 47 力 出力された第 4の閟倀《4を甚いお、氎平方向ブロック垂盎方向動きベクトル算 出郚 50の n倀噚 504で n倀ィ匕凊理される。
[0163] 䟋えば第 3の閟倀亀差点 B(4)に関しおは、図 14の (b)に瀺す第 4の閟倀 a 4および ( α 4)に察する第 1の氎平方向ブロック射圱デヌタ W3の倧小関係に基づき、第 3の 閟倀亀差点 Β(4)を䞭心に (B(4)— U)力 (B(4) + U)たでの範囲 (矩圢の砎線内の波 圢郚分)に぀いお、図 14の (c)のように第 1の氎平方向ブロック射圱デヌタが 3倀ィ匕凊 理される。これにより、珟フレヌムの氎平方向ブロック射圱デヌタが「䞀 1」、 「0」たた は「1」で衚されるこずずなる。
[0164] n倀化噚 504では、第 3の閟倀亀差点探玢郚 48から出力される党おの第 3の閟倀 亀差点に぀いお、図 14の (c)に瀺すような n倀ィ匕凊理が行われる。
[0165] 次に、加算噚 505(図 8)では、入力端子 503を介しお第 3の閟倀亀差点探玢郚 48 力も出力された第 3の閟倀亀差点を䞭心に、 n倀化噚 504で n倀化された第 1の氎平 方向ブロック射圱デヌタず、垂盎方向動きベクトル加算メモリ 506から読み出された 1 ぀前たでの n倀ィ匕された第 1の氎平方向ブロック射圱デヌタの加算倀ずを加算し、そ の加算結果を垂盎方向動きベクトル加算メモリ 506に再び蚘憶させる。
[0166] そしお、第 3の閟倀亀差点探玢郚 48で怜出された党おの第 3の閟倀亀差点のうち 最埌のものに関する n倀ィ匕された第 1の氎平方向ブロック射圱デヌタを加算噚 505で 加算しお 1぀の氎平方向ブロックに぀いおの加算凊理を終了する際には、その加算 結果をピヌク怜出噚 507に出力するようにする。
[0167] なお、加算噚 505での加算凊理終了埌に、党おの第 3の閟倀亀差点に関する加算 結果を蚘憶しお 、る垂盎方向動きベクトル加算メモリ 506から、その加算結果をピヌ ク怜出郚 507が読み出すようにしおも良い。
[0168] ピヌク怜出噚 507には、第 3の閟倀亀差点探玢郚 48で怜出された党おの第 3の閟 倀亀差点に぀いお各第 3の閟倀亀差点を䞭心ずした動きべ倖ル怜出範囲 (䞊述した ±Uの範囲に察応する n倀ィ匕枈みの第 1の氎平方向ブロック射圱デヌタを加算した デヌタ以䞋では「氎平方向ブロック n倀ィ匕デヌタ」ずもいうが入力される力 この氎 平方向ブロック n倀化デヌタに関するピヌク倀がピヌク怜出噚 507で怜出される。
[0169] このピヌク怜出噚 507においお怜出される氎平方向ブロック n倀ィ匕デヌタのピヌク 䜍眮が、その氎平方向ブロック力 埗られる垂盎方向動きベクトルずなり、出力端子 5 08を介しお垂盎方向動き決定郚 51に出力される。
[0170] 以䞊で説明した加算噚 505およびピヌク怜出郚 507の動䜜に぀いお、図 15を参照 し぀぀具䜓的に説明する。なお、図 15の (a)では、図 14の (a)に瀺す第 3の閟倀亀差 点 B(1)〜B(6)を䞭心ずした動きベクトル怜出範囲 (±Uの範囲)においお第 1の氎平 方向ブロック射圱デヌタを 3倀ィ匕したものを抂念的に瀺しおいる。
[0171] カロ算噚 505においお、図 15の (a)に瀺す第 3の閟倀亀差点 B(1)〜B(6)呚蟺の 3倀 化デヌタが順次に入力されるず、これらのデヌタが加算され、図 15の (b)に瀺すような 氎平方向ブロック n倀ィ匕デヌタが生成される。具䜓的には、加算噚 505においお氎 平方向ブロック射圱デヌタ読み出し郚 49により氎平方向ブロック射圱デヌタ (デヌタ 配列 Mh (図 13の (b)))力 抜出され n倀噚 504でデヌタ長が圧瞮された珟フレヌムに 係る動きベクトル怜出範囲 (所定範囲)のデヌタ配列それぞれに぀いお、各第 3の閟 倀亀差点の配列芁玠の䜍眮に察しお盞察䜍眮が同じ配列芁玠同士の倀が加算され るこずずなる。
[0172] 加算噚 505で生成された氎平方向ブロック n倀ィ匕デヌタがピヌク怜出噚 507に入 力されるず、その氎平方向ブロックの垂盎方向動きベクトルずしお図 15の (b)に瀺す垂 盎方向のピヌク䜍眮 wが怜出される。すなわち、ピヌク怜出噚 507では、加算噚 50 5で加算された加算結果に基づき、フレヌム画像の垂盎方向に関する動きベクトルが 怜出される。
[0173] このピヌク怜出噚 507では、原則的に動きベクトル怜出範囲±Uの範囲におい お最倧倀ずなるピヌク䜍眮が探玢されるが、同䞀の最倧倀が耇数ある堎合には、原 点 0に近いもの (原点 0たでの距離が等しい堎合には負の䜍眮のもの)を優先する。な お、このようなピヌク䜍眮の怜出ルヌルに限らず、正の䜍眮にある最倧倀を優先しお も良ぐたた前フレヌムにおける動きベクトルの傟向を珟フレヌムのピヌク䜍眮の怜出 に利甚するようにしおも良い。
[0174] ピヌク怜出噚 507で氎平方向ブロックごずに算出された垂盎方向動きベクトル (ピヌ ク倀は、順次に出力端子 508を介しお垂盎方向動きベクトル決定郚 51に入力され る。
[0175] 垂盎方向動きベクトル決定郚 51では、氎平方向ブロック垂盎方向動きベクトル算出 郚 50から順次に出力される各氎平方向ブロックの垂盎方向動きベクトルに基づき、 画像党䜓の垂盎方向動きベクトルが決定される。この垂盎方向動きベクトル決定郚 5 1では、䟋えば最も出珟頻床が高い垂盎方向動きベクトルを画像党䜓の垂盎方向動 きベクトルずしお決定する。
[0176] なお、最も出珟頻床が高い垂盎方向動きベクトルを画像党䜓の垂盎方向動きべタト ルずしお決定するのは必須でなぐ氎平方向ブロック垂盎方向動きベクトル算出郚 50 力も出力される各氎平方向ブロックの垂盎方向動きベクトルの平均倀を、画像党䜓の 垂盎方向動きベクトルずしお決定するようにしおも良 、。
[0177] 以䞊のように垂盎方向動きベクトル決定郚 51では、各氎平方向ブロックの垂盎方 向動きベクトルに基づいおフレヌム画像党䜓に関する垂盎方向の動きベクトルを決 定するため、画像の䞀郚で動きがあった堎合でも、その動きぞの誀反応を抑制できる こずずなる。
[0178] なお、フレヌム画像党䜓に関する垂盎方向動きベクトルの怜出にあたっおは、必ず しもフレヌム画像党䜓を䜿う必芁はなぐフレヌム画像の䞀郚力 垂盎方向動きべク トルを怜出し、それをフレヌム画像党䜓に関する垂盎方向動きベクトルずしおも良い。
[0179] <効果 >
以䞊の動きベクトル怜出装眮 1の動䜜により、垂盎方向の゚ッゞが匷調された各垂 盎方向ブロックに぀ 、お垂盎方向に射圱をず぀お垂盎方向ブロック射圱デヌタを生 成するずずもに、前フレヌムの垂盎方向ブロック射圱デヌタず第 1の閟倀 α 1ずの亀差 点 (第 1の閟倀亀差点)を䞭心ずした動きべ倖ル怜出範囲に察応した珟フレヌムの垂 盎方向ブロック射圱デヌタを読み出しお各第 1の閟倀亀差点力 の距離ごずに加算 し、その加算結果力 氎平方向に関する動きベクトルを怜出するため、特城点に盞 圓する画像の垂盎方向゚ッゞの動きを少ない挔算量で远跡できる。
[0180] 同様に、氎平方向の゚ッゞが匷調された各氎平方向ブロックに぀いお氎平方向に 射圱をず぀お氎平方向ブロック射圱デヌタを生成するずずもに、前フレヌムの氎平方 向ブロック射圱デヌタず第 3の閟倀 a 3ずの亀差点 (第 3の閟倀亀差点)を䞭心ずした動 きベクトル怜出範囲に察応した珟フレヌムの氎平方向ブロック射圱デヌタを読み出し お各第 3の閟倀亀差点力もの距離ごずに加算し、その加算結果力も垂盎方向に関す る動きベクトルを怜出するため、特城点に盞圓する画像の氎平方向゚ッゞの動きを少 ない挔算量で远跡できる。その結果、氎平方向および垂盎方向に関する動きべタト ルの怜出を粟床良く迅速に行える。
[0181] たた、動きベクトル怜出装眮 1のビット数削枛郚 25では、第 1の垂盎方向ブロック射 圱デヌタ最倧倀保存郚 24で求められた珟フレヌムの垂盎方向ブロック射圱デヌタ の最倧倀に基づき珟フレヌムの垂盎方向ブロック射圱デヌタのビット数を削枛するた め、以降の凊理における挔算量を抑制でき、動きベクトルの怜出を䞀局迅速に行え る。
[0182] たた、動きベクトル怜出装眮 1では、前フレヌムに関する第 2の垂盎方向ブロック射 圱デヌタ最倧倀を求め、この最倧倀に基づき第 1の閟倀 α 1を蚭定するため、適切 な第 1の閟倀亀差点を蚭定できる。同様に、前フレヌムに関する第 2の氎平方向プロ ック射圱デヌタ最倧倀を求め、この最倧倀に基づき第 3の閟倀 oc 3を蚭定するため、 適切な第 3の閟倀亀差点を蚭定できる。
[0183] たた、動きベクトル怜出装眮 1では、垂盎方向画像分割郚 21でフレヌム画像を垂盎 方向に分割した埌に、各分割画像 (垂盎方向ブロック)に぀ 、お垂盎方向の゚ッゞを 匷調するため、垂盎方向の゚ッゞが匷調された分割画像を簡易に生成できる。同様 に、氎平方向画像分割郚 41でフレヌム画像を氎平方向に分割した埌に、各分割画 像 (氎平方向ブロック)に぀いお氎平方向の゚ッゞを匷調するため、氎平方向の゚ッゞ が匷調された分割画像を簡易に生成できる。 [0184] たた、動きベクトル怜出装眮 1では、垂盎方向ブロック氎平方向動きベクトル算出郚 31の n倀化噚 314においお垂盎方向ブロック射圱デヌタ読み出し郚 30で読み出さ れた射圱デヌタを n倀化するため、以降の挔算量を䜎枛でき、動きベクトルの怜出を より迅速に行える。特に、 n倀化噚 314では、珟フレヌムの垂盎方向ブロック射圱デ ヌタの最倧倀に基づき蚭定される第 2の閟倀 oc 2に基づき 3倀ィ匕するため、ダむナミツ クレンゞを比范的倧きく確保し぀぀、リアルタむム凊理可胜な動きベクトル怜出が実珟 できる。たた、メモリも倧幅に削枛するこずができる。
[0185] 同様に、氎平方向ブロック垂盎方向動きベクトル算出郚 50の n倀化噚 504におい お氎平方向ブロック射圱デヌタ読み出し郚 49で読み出された射圱デヌタを n倀ィ匕す るため、以降の挔算量を䜎枛でき、動きベクトルの怜出をより迅速に行える。特に、 n 倀化噚 504では、前フレヌムの氎平方向ブロック射圱デヌタの最倧倀に基づき蚭定 される第 4の閟倀《4に基づき 3倀ィ匕するため、適切な第 4の閟倀《4を蚭定でき、ダ むナミックレンゞを倧きく損なうこずなぐリアルタむム凊理可胜な動きベクトル怜出が実 珟できる。たた、メモリも倧幅に削枛するこずができる。
[0186] 実斜の圢態 2.
<動きべクトル怜出装眮 1 Aの構成 >
図 1に瀺すように、本発明の実斜の圢態 2に係る動きベクトル怜出装眮 1 Aに぀いお は、実斜の圢態 1の動きベクトル怜出装眮 1ず類䌌の構成を有しおいる力 氎平方向 動きベクトル怜出郚ず垂盎方向動きベクトル怜出郚ずの構成が異なっおいる。この動 きベクトル怜出装眮 1Aにおける氎平方向動きベクトル怜出郚 2Aおよび垂盎方向動 きベクトル怜出郚 4Aの構成に぀いお図 16および図 17を参照しお説明する。
[0187] 図 16は、氎平方向動きベクトル怜出郚 2Aの芁郚構成を瀺すブロック図である。な お、図 16では、実斜の圢態 1で説明した氎平方向動きベクトル怜出郚 2ず同様の機 胜を有する郚䜍には同䞀の笊号を付し、重耇する説明は省略する。
[0188] 氎平方向動きベクトル怜出郚 2Aの゚ッゞ匷調手段では、実斜の圢態 1の氎平方向 動きベクトル怜出郚 2の゚ッゞ匷調手段に察しお垂盎方向画像分割郚 21ず垂盎方向 ゚ッゞ抜出フィルタリング郚 22ずの配眮が逆転しおいる。
[0189] <動きべタトル怜出装眮 1Aの動䜜 > たず、氎平方向動きベクトル怜出郚 2Aの動䜜に぀いお説明する。
[0190] 図 2に瀺すように氎平ラむンの画玠走査を垂盎方向に順に繰り返すこずによっお読 み出されるフレヌム画像が、氎平方向動きベクトル怜出郚 2Aの入力端子 20に入力 されるず、垂盎方向゚ッゞ抜出フィルタリング郚 22にお 、お垂盎方向に延びる゚ッゞ 成分の抜出、換蚀すれば氎平方向に急峻に倉化する画像郚分を匷調するようなフィ ルタリング凊理が斜される。
[0191] 垂盎方向゚ッゞ抜出フィルタリング郚 22で垂盎方向の゚ッゞが匷調されたフレヌム 画像が垂盎方向画像分割郚 21に入力されるず、垂盎方向にブロック分割される。す なわち、垂盎方向画像分割郚 21では、゚ッゞ匷調が斜されたフレヌム画像を垂盎方 向に分割しお埗られる耇数の画像領域 (垂盎方向ブロック)が蚭定される。これにより、 以降の凊理では、垂盎方向ブロックごずに凊理および管理が行われるこずずなる。
[0192] 垂盎方向画像分割郚 21で分割された画像デヌタは、垂盎方向ブロック射圱郚 23 に入力される力 この垂盎方向ブロック射圱郚 23以降の凊理は、実斜の圢態 1の氎 平方向動きベクトル怜出郚 2ず同様の凊理が行われる。
[0193] 図 17は、垂盎方向動きベクトル怜出郚 4Aの芁郚構成を瀺すブロック図である。な お、図 17では、実斜の圢態 1で説明した垂盎方向動きベクトル怜出郚 4ず同様の機 胜を有する郚䜍には同䞀の笊号を付し、重耇する説明は省略する。
[0194] 垂盎方向動きベクトル怜出郚 4Aの゚ッゞ匷調手段では、実斜の圢態 1の垂盎方向 動きベクトル怜出郚 4の゚ッゞ匷調手段に察しお氎平方向画像分割郚 41ず氎平方向 ゚ッゞ抜出フィルタリング郚 42ずの配眮が逆転しおいる。以䞋では、この垂盎方向動 きベクトル怜出郚 4Aの動䜜に぀いお説明する。
[0195] 図 2に瀺すように氎平ラむンの画玠走査を垂盎方向に順に繰り返すこずによっお読 み出されるフレヌム画像が、垂盎方向動きベクトル怜出郚 4Aの入力端子 40に入力 されるず、氎平方向゚ッゞ抜出フィルタリング郚 42においお氎平方向に延びる゚ッゞ 成分の抜出、換蚀すれば垂盎方向に急峻に倉化する画像郚分を匷調するようなフィ ルタリング凊理が斜される。
[0196] 氎平方向゚ッゞ抜出フィルタリング郚 42で氎平方向の゚ッゞが匷調されたフレヌム 画像が氎平方向画像分割郚 41に入力されるず、氎平方向にブロック分割される。す なわち、氎平方向画像分割郚 41では、゚ッゞ匷調が斜されたフレヌム画像を氎平方 向に分割しお埗られる耇数の画像領域 (氎平方向ブロック)が蚭定される。これ〖こより、 以降の凊理では、氎平方向ブロックごずに凊理および管理が行われるこずずなる。
[0197] 氎平方向画像分割郚 41で分割された画像デヌタは、氎平方向ブロック射圱郚 43 に入力される力 この氎平方向ブロック射圱郚 43以降の凊理は、実斜の圢態 1の垂 盎方向動きベクトル怜出郚 4ず同様の凊理が行われる。
[0198] <効果 >
以䞊の動きベクトル怜出装眮 1Aの動䜜により、実斜の圢態 1ず同様の効果を奏す る。
[0199] そしお、動きベクトル怜出装眮 1Aでは、垂盎方向゚ッゞ抜出フィルタリング郚 22で フレヌム画像に察する垂盎方向の゚ッゞを匷調した埌に、゚ッゞ匷調されたフレヌム 画像を垂盎方向画像分割郚 21にお ボお垂盎方向に分割するため、垂盎方向の゚ツ ゞが匷調された分割画像を簡易に生成できる。
[0200] 同様に、氎平方向゚ッゞ抜出フィルタリング郚 42でフレヌム画像に察する氎平方向 の゚ッゞを匷調した埌に、゚ッゞ匷調されたフレヌム画像を氎平方向画像分割郚 41 においお氎平方向に分割するため、氎平方向の゚ッゞが匷調された分割画像を簡 易に生成できる。
[0201] なお、動きベクトル怜出装眮 1Aにおいおは、垂盎方向゚ッゞ抜出フィルタリング郚 22ず氎平方向゚ッゞ抜出フィルタリング郚 42ずを別々に氎平方向動きベクトル怜出 郚 2Aおよび垂盎方向動きベクトル怜出郚 4Aに配眮するのは必須でなぐ垂盎方向 ゚ッゞ抜出フィルタリング郚 22および氎平方向゚ッゞ抜出フィルタリング郚 42の双方 の機胜を䞀䜓ィ匕した氎平 Z垂盎方向゚ッゞ抜出フィルタリング郚を蚭けお、その出力 を垂盎方向画像分割郚 21および氎平方向画像分割郚 41それぞれに入力させるよう にしおも良い。
[0202] 実斜の圢態 3.
く動きベクトル怜出装眮 1Bの構成〉
図 1に瀺すように、本発明の実斜の圢態 3に係る動きベクトル怜出装眮 1Bに぀いお は、実斜の圢態 1の動きベクトル怜出装眮 1ず類䌌の構成を有しおいる力 氎平方向 動きベクトル怜出郚ず垂盎方向動きベクトル怜出郚ずの構成が異なっおいる。
[0203] 以䞋、動きベクトル怜出装眮 1Bにおける氎平方向動きベクトル怜出郚 2Bおよび垂 盎方向動きベクトル怜出郚 4Bの構成に぀いお説明する。
[0204] 図 18は、氎平方向動きベクトル怜出郚 2Bの芁郚構成を瀺すブロック図である。な お、図 18では、実斜の圢態 1で説明した氎平方向動きベクトル怜出郚 2ず同様の機 胜を有する郚䜍には同䞀の笊号を付し、重耇する説明は省略する。
[0205] 氎平方向動きベクトル怜出郚 2Bは、入力端子 20ず、垂盎方向画像分割郚 21ず、垂 盎方向゚ッゞ抜出フィルタリング郚 22ず、垂盎方向ブロック射圱郚 23ず、第 1の垂盎 方向ブロック射圱デヌタ最倧倀保存郚 24ず、ビット数削枛郚 25ず、第 1の垂盎方向ブ ロック射圱ラむンメモリ 26ずを備えおいる。たた、氎平方向動きベクトル怜出郚 2は、第 2の垂盎方向ブロック射圱ラむンメモリ 27ず、第 2の垂盎方向ブロック射圱デヌタ最倧 倀保存郚 28ず、第 1の閟倀亀差点探玢郚 29ず、垂盎方向ブロック射圱デヌタ読み出 し郚 30ず、垂盎方向ブロック氎平方向動きベクトル算出郚 310ず、氎平方向動きべク トル決定郚 320ず、出力端子 33ずを備えおいる。
[0206] 以䞊の氎平方向動きベクトル怜出郚 2Bにおいおは、垂盎方向ブロック氎平方向動 きベクトル算出郚 310および氎平方向動きベクトル決定郚 320の機胜力 実斜の圢 態 1の氎平方向動きベクトル怜出郚 2の、垂盎方向ブロック氎平方向動きベクトル算 出郚 31および氎平方向動きベクトル決定郚 32ずは異なっおいる。
[0207] すなわち、垂盎方向ブロック氎平方向動きベクトル算出郚 310は、第 1の垂盎方向 ブロック射圱デヌタ最倧倀保存郚 24から出力される第 2の閟倀を甚い、垂盎方向ブ ロック射圱デヌタ読み出し郚 30で読み出された第 1の垂盎方向ブロック射圱デヌタ それぞれを n倀化 (nは 2以䞊の敎数)しおビット数の削枛を行うずずもに、 n倀化された 射圱デヌタを第 1の閟倀亀差点からの距離ごずに加算する。そしお、加算デヌタにお けるピヌク䜍眮 (埌述する氎平方向動きベクトルずピヌク倀の情報を氎平方向動き ベクトル決定郚 320に䞎える。
[0208] たた、氎平方向動きベクトル決定郚 320は、垂盎方向ブロック氎平方向動きべタト ル算出郚 31からの出力に基づき画像の氎平方向動きベクトルを決定する。ここで決 定された画像の氎平方向動きベクトルは出力端子 33から出力される。なお、氎平方 向動きベクトル決定郚 320は、第 1の垂盎方向ブロック射圱デヌタ最倧倀保存郚 24 に保存された、第 1の垂盎方向ブロック射圱デヌタ最倧倀および第 1の閟倀亀差点 探玢郚 29から出力される第 1の閟倀亀差点の情報を受けお、氎平方向動きベクトル の信頌性を高める凊理に䜿甚する構成ずなっおいる。なお、具䜓的な動䜜は埌で詳 述する。
[0209] 図 19は、垂盎方向ブロック氎平方向動きベクトル算出郚 310の芁郚構成を瀺すブ ロック図である。
[0210] 垂盎方向ブロック氎平方向動きベクトル算出郚 310は、 3぀の入力端子 311〜313 ず、 n倀化噚 314ず、 n倀化噚 314で n倀ィ匕された第 1の垂盎方向ブロック射圱デヌタ の加算を行う加算噚 315ず、加算噚 315で加算されたデヌタを逐次保存するバッファ メモリずしおの氎平方向動きベクトル加算メモリ 316ず、ピヌク怜出噚 3170ず、出力端 子 318および 319ずを備えおいる。
[0211] 入力端子 311には、垂盎方向ブロック射圱デヌタ読み出し郚 30から出力された第 1の垂盎方向ブロック射圱デヌタが入力され、入力端子 312には、第 1の垂盎方向ブ ロック射圱デヌタ最倧倀保存郚 24から出力された第 2の閟倀が入力される。たた、入 力端子 313には、第 1の閟倀亀差点探玢郚 29から出力された第 1の閟倀亀差点の 情報が入力される。
[0212] n倀化噚 314は、入力端子 311から入力された第 1の垂盎方向ブロック射圱デヌタ を、入力端子 312から入力される第 2の閟倀に基づいお n倀ィ匕 (䟋えば 3倀化)する。
[0213] 加算噚 315は、 n倀化噚 314で n倀ィ匕された第 1の垂盎方向ブロック射圱デヌタず、 氎平方向動きベクトル加算メモリ 316から読み出されたデヌタずを第 1の閟倀亀差点 を䞭心ずしお加算し、加算結果を氎平方向動きベクトル加算メモリ 316に再び蚘憶さ せる。このような加算動䜜が繰り返されるこずにより垂盎方向ブロックに関する党おの 第 1の閟倀亀差点に぀いおの加算が終了するず、垂盎方向ブロックに関する加算デ ヌタがピヌク怜出噚 3170に出力される。
[0214] ピヌク怜出噚 3170は、加算噚 315から出力された加算デヌタにおけるピヌク䜍眮
(埌述する氎平方向動きベクトルずピヌク倀ずを怜出する。このピヌク怜出噚 3170で 怜出されたピヌク䜍眮は、出力端子 318を介しお氎平方向動きベクトル決定郚 320 に入力され、ピヌク倀は出力端子 319を介しお氎平方向動きベクトル決定郚 320に 人力されるこずずなる。
[0215] 次に、垂盎方向動きベクトル怜出郚 4Bの構成を説明する。
図 20は、垂盎方向動きベクトル怜出郚 4Bの芁郚構成を瀺すブロック図である。
[0216] 垂盎方向動きベクトル怜出郚 4Bは、入力端子 40ず、氎平方向画像分割郚 41ず、氎 平方向゚ッゞ抜出フィルタリング郚 42ず、氎平方向ブロック射圱郚 43ず、第 1の氎平 方向ブロック射圱ラむンメモリ 44ず、第 1の氎平方向ブロック射圱デヌタ最倧倀保存 郚 45ずを備えおいる。たた、垂盎方向動きベクトル怜出郚 4は、第 2の氎平方向ブロッ ク射圱ラむンメモリ 46ず、第 2の氎平方向ブロック射圱デヌタ最倧倀保存郚 47ず、第 3 の閟倀亀差点探玢郚 48ず、氎平方向ブロック射圱デヌタ読み出し郚 49ず、氎平方向 ブロック垂盎方向動きベクトル算出郚 500ず、垂盎方向動きベクトル決定郚 510ず、出 力端子 52ずを備えおいる。
[0217] 以䞊の垂盎方向動きベクトル怜出郚 4Bにおいおは、氎平方向ブロック垂盎方向動 きベクトル算出郚 500および垂盎方向動きベクトル決定郚 510の機胜力 実斜の圢 態 1の垂盎方向動きベクトル怜出郚 4の、氎平方向ブロック垂盎方向動きベクトル算 出郚 50および垂盎方向動きベクトル決定郚 51ずは異なっおいる。
[0218] すなわち、氎平方向ブロック垂盎方向動きベクトル算出郚 500は、第 2の氎平方向 ブロック射圱デヌタ最倧倀保存郚 47から出力される第 4の閟倀を甚い、氎平方向ブ ロック射圱デヌタ読み出し郚 49で読み出された第 1の氎平方向ブロック射圱デヌタ それぞれを n倀化 (nは 2以䞊の敎数)しおビット数の削枛を行うずずもに、 n倀化された 射圱デヌタを第 3の閟倀亀差点からの距離ごずに加算する。そしお、加算デヌタにお けるピヌク䜍眮 (埌述する垂盎方向動きベクトル)ずピヌク倀の情報を垂盎方向動き ベクトル決定郚 510に䞎える。
[0219] たた、垂盎方向動きベクトル決定郚 510は、氎平方向ブロック垂盎方向動きべタト ル算出郚 500からの出力に基づき画像の垂盎方向動きベクトルを決定する。ここで 決定された画像の垂盎方向動きベクトルは出力端子 52から出力される。なお、垂盎 方向動きベクトル決定郚 510は、第 1の氎平方向ブロック射圱デヌタ最倧倀保存郚 4 5に保存された、第 1の氎平方向ブロック射圱デヌタ最倧倀および第 3の閟倀亀差点 探玢郚 48から出力される第 3の閟倀亀差点の情報を受けお、垂盎方向動きベクトル の信頌性を高める凊理に䜿甚する構成ずなっおいる。なお、具䜓的な動䜜は埌で詳 述する。
[0220] 図 21は、氎平方向ブロック垂盎方向動きベクトル算出郚 500の芁郚構成を瀺すブ ロック図である。
[0221] 氎平方向ブロック垂盎方向動きベクトル算出郚 500は、 3぀の入力端子 501〜503 ず、 n倀化噚 504ず、 n倀化噚 504で n倀ィ匕された第 1の氎平方向ブロック射圱デヌタ の加算を行う加算噚 505ず、加算噚 505で加算されたデヌタを逐次保存するバッファ メモリずしおの垂盎方向動きベクトル加算メモリ 506ず、ピヌク怜出噚 5070ず、出力端 子 508および 509ずを備えお!/、る。
[0222] 入力端子 501には、氎平方向ブロック射圱デヌタ読み出し郚 49から出力された第 1の氎平方向ブロック射圱デヌタが入力され、入力端子 502には、第 2の氎平方向ブ ロック射圱デヌタ最倧倀保存郚 47から出力された第 4の閟倀が入力される。たた、入 力端子 503には、第 3の閟倀亀差点探玢郚 48から出力された第 3の閟倀亀差点の 情報が入力される。
[0223] n倀化噚 504は、入力端子 501から入力された第 1の氎平方向ブロック射圱デヌタ を、入力端子 502から入力される第 4の閟倀に基づいお n倀ィ匕 (䟋えば 3倀化)する。
[0224] 加算噚 505は、 n倀化噚 504で n倀ィ匕された第 1の氎平方向ブロック射圱デヌタず、 垂盎方向動きベクトル加算メモリ 506から読み出されたデヌタずを第 3の閟倀亀差点 を䞭心ずしお加算し、加算結果を垂盎方向動きベクトル加算メモリ 506に再び蚘憶さ せる。このような加算動䜜が繰り返されるこずにより氎平方向ブロックに関する党おの 第 3の閟倀亀差点に぀いおの加算が終了するず、氎平方向ブロックに関する加算デ ヌタがピヌク怜出噚 5070に出力される。
[0225] ピヌク怜出噚 5070は、加算噚 505から出力された加算デヌタにおけるピヌク䜍眮
(埌述する垂盎方向動きベクトルずピヌク倀ずを怜出する。このピヌク怜出噚 507で 怜出されたピヌク䜍眮は、出力端子 508を介しお垂盎方向動きベクトル決定郚 510 に入力され、ピヌク倀は出力端子 509を介しお氎平方向動きベクトル決定郚 510に 人力されるこずずなる。 [0226] 以䞊のような構成を有する動きベクトル怜出装眮 IBの動䜜に぀いお、以䞋で説明 する。
[0227] <動きべタトル怜出装眮 1Bの動䜜 >
<氎平方向動きベクトル怜出郚 2Bの動䜜 >
たず、動きベクトル怜出装眮 1Bにおいお画像の氎平方向の動きベクトルを怜出す る氎平方向動きベクトル怜出郚 2Bの動䜜を説明する。
[0228] なお、氎平方向動きベクトル怜出郚 2Bの動䜜は、基本的には、実斜の圢態 1にお いお説明した氎平方向動きベクトル怜出郚 2の動䜜ず同じであり、重耇する説明は省 略するものずし、垂盎方向ブロック氎平方向動きベクトル算出郚 310および氎平方向 動きベクトル決定郚 320の動䜜を䞭心に説明する。
[0229] 第 1の閟倀亀差点探玢郚 29では、第 2の垂盎方向ブロック射圱ラむンメモリ 27から 読み出された第 2の垂盎方向ブロック射圱デヌタず、第 2の垂盎方向ブロック射圱デ ヌタ最倧倀保存郚 28から出力された第 1の閟倀ずの亀差点 (第 1の閟倀亀差点)ã‚’æ°Ž 平方向に探玢する。この第 1の閟倀亀差点探玢郚 29で埗られた第 1の閟倀亀差点 の情報は、垂盎方向ブロック射圱デヌタ読み出し郚 30、垂盎方向ブロック氎平方向 動きベクトル算出郚 310および氎平方向動きベクトル決定郚 320に出力される。
[0230] 垂盎方向ブロック射圱デヌタ読み出し郚 30は、第 1の閟倀亀差点探玢郚 29から出 力された第 1の閟倀亀差点を䞭心ずした動きべ倖ル怜出範囲に察応した珟フレヌム の (第 1の)垂盎方向ブロック射圱デヌタを第 1の垂盎方向ブロック射圱ラむンメモリ 26 から読み出す。すなわち、第 1の閟倀亀差点を A(i) (ただし i= 1,2, · · ·ρで、 ρは怜出 された第 1の閟倀亀差点の総数)ずし、動きベクトル怜出範囲を第 1の閟倀亀差点を 䞭心ずした (侀 V)から (+ V) (ただし Vは正の敎数)の範囲ずするず、第 1の垂盎方向ブ ロック射圱ラむンメモリ 26から読み出される射圱デヌタは、氎平方向においお (A(i)— V)力 (A(i)+V)たでの範囲にある第 1の垂盎方向ブロック射圱デヌタの郚分デヌタ ずなる。
[0231] この垂盎方向ブロック射圱デヌタ読み出し郚 30によっお第 1の垂盎方向ブロック射 圱ラむンメモリ 26から読み出された第 1の垂盎方向ブロック射圱デヌタは、垂盎方向 ブロック氎平方向動きベクトル算出郚 310に出力される。 [0232] 垂盎方向ブロック射圱デヌタ読み出し郚 30から出力された第 1の垂盎方向ブロック 射圱デヌタは、図 19に瀺す垂盎方向ブロック氎平方向動きベクトル算出郚 310の入 力端子 311を介しお n倀化噚 314に入力される。この n倀化噚 314の凊理に぀いおは 、図 10を甚いお説明枈みであるので、説明は省略する。
[0233] たた、第 1の閟倀亀差点探玢郚 29、垂盎方向ブロック射圱デヌタ読み出し郚 30お よび垂盎方向ブロック氎平方向動きベクトル算出郚 310 (垂盎方向ブロック氎平方向 動きベクトル算出郚 31ず基本的に同じ)の動䜜に぀いおは、図 11を甚いお説明枈み であるので、説明は省略する。
[0234] 加算噚 315(図 19)では、入力端子 313を介しお第 1の閟倀亀差点探玢郚 29から出 力された第 1の閟倀亀差点を䞭心に、 n倀化噚 314で n倀化された第 1の垂盎方向ブ ロック射圱デヌタず、氎平方向動きベクトル加算メモリ 316から読み出された 1぀前た での n倀化された第 1の垂盎方向ブロック射圱デヌタの加算倀ずを加算し、その加算 結果を氎平方向動きベクトル加算メモリ 316に再び蚘憶させる。そしお、第 1の閟倀 亀差点探玢郚 29で怜出された党おの第 1の閟倀亀差点のうち最埌のものに関する n 倀化された第 1の垂盎方向ブロック射圱デヌタを加算噚 315で加算しお 1぀の垂盎 方向ブロックに぀いおの加算凊理を終了する際には、その加算結果をピヌク怜出噚 3170に出力するようにする。なお、加算噚 315での加算凊理終了埌に、党おの第 1 の閟倀亀差点に関する加算結果を蚘憶しお 、る氎平方向動きベクトル加算メモリ 31 6から、その加算結果をピヌク怜出郚 3170が読み出すようにしおも良い。
[0235] ピヌク怜出噚 3170には、第 1の閟倀亀差点探玢郚 29で怜出された党おの第 1の 閟倀亀差点に぀いお各第 1の閟倀亀差点を䞭心ずした動きべ倖ル怜出範囲 (䞊述 した士 Vの範囲に察応する n倀化枈みの第 1の垂盎方向ブロック射圱デヌタを加算 したデヌタ以䞋では「垂盎方向ブロック n倀ィ匕デヌタ」ずも蚀うが入力される力 この 垂盎方向ブロック n倀化デヌタに関するピヌク倀がピヌク怜出噚 3170で怜出される 。このピヌク怜出噚 3170においお怜出される垂盎方向ブロック n倀ィ匕デヌタのピヌク 䜍眮が、その垂盎方向ブロック力 埗られる氎平方向動きベクトルずなり、出力端子 3 18を介しお氎平方向動きベクトル決定郚 320に出力される。同様に、そのずきのピヌ ク倀は出力端子 319から出力される。 [0236] なお、加算噚 315およびピヌク怜出郚 3170の具䜓的な動䜜に぀いおは、図 12を 甚いお説明した、垂盎方向ブロック氎平方向動きベクトル算出郚 31の加算噚 315お よびピヌク怜出郚 317ず同様なので説明は省略する力 ピヌク怜出噚 3170で垂盎 方向ブロックごずに算出された氎平方向動きベクトル (ピヌク䜍眮ず、垂盎方向ブロッ クの n倀ィ匕され加算された加算デヌタのピヌク倀 (以䞋、「垂盎方向ブロック n倀化カロ 算デヌタピヌク倀」ずも蚀うは、それぞれ出力端子 318および 319を介しお氎平方 向動きベクトル決定郚 320に入力され、垂盎方向ブロック n倀化加算デヌタピヌク倀 は、垂盎方向ブロックの有効 Z無効刀定に䜿甚される。
[0237] 氎平方向動きベクトル決定郚 320では、垂盎方向ブロック氎平方向動きベクトル算 出郚 310から順次に出力される各垂盎方向ブロックの氎平方向動きベクトルに基づ き、画像党䜓の氎平方向動きベクトルが決定される。
[0238] このずき、第 1の垂盎方向ブロック射圱デヌタ最倧倀保存郚 24から出力される第 1 の垂盎方向ブロック射圱デヌタ最倧倀、垂盎方向ブロック氎平方向動きベクトル算出 郚 310から出力される垂盎方向ブロック n倀化加算デヌタピヌク倀および第 1の閟倀 亀差点探玢手段 29から出力される第 1の閟倀亀差点の情報に基づいお各垂盎方向 ブロックの有効 Z無効を刀定する。そしお、無効ブロックず刀定された垂盎方向ブロッ タカ 算出された氎平方向動きベクトルは画像党䜓の氎平方向動きベクトルを決定 する際には䜿甚しないものずする。
[0239] <垂盎方向ブロックの有効 Z無効の刀定動䜜 >
<第 1の垂盎方向ブロック射圱デヌタ最倧倀を甚いる堎合 > 以䞋、各垂盎方向ブロックの有効 Z無効を刀定する方法に぀いお説明する。
[0240] 図 22は、第 1の垂盎方向ブロック射圱デヌタ最倧倀を甚いお各垂盎方向ブロック の有効 Z無効を刀定する方法を説明する図である。
[0241] 図 22においおは、図 9の (a)に瀺した 640画玠 X 480画玠の画像デヌタを䟋に採り 、垂盎方向に 64画玠の幅 (分割幅)を有した 7個の垂盎方向ブロック vb0〜vb6に分 割した堎合を瀺しおいる。
[0242] たた、図 22においおは、第 1の垂盎方向ブロック射圱デヌタ最倧倀保存郚 24 (図 1 8)から出力される各垂盎方向ブロックの第 1の垂盎方向ブロック射圱デヌタ最倧倀を 、各ブロックごずに 16進数衚蚘で瀺しおいる。
[0243] 氎平方向動きベクトル決定郚 320では、各垂盎方向ブロック vb0〜vb6における第
1の垂盎方向ブロック射圱デヌタ最倧倀の䞭力も党ブロック䞭の最倧倀を求める。図
22の䟋では、垂盎方向ブロック vb2が党ブロック䞭の最倧倀を有しおおり、この倀を 党垂盎方向ブロック射圱デヌタ最倧倀ず呌称する。
[0244] たた、氎平方向動きベクトル決定郚 320では、党垂盎方向ブロック射圱デヌタ最倧 倀に察しお、䟋えば 1Z4以䞋の最倧倀しか有さない垂盎方向ブロックを無効ブロッ クずしお刀断する。図 22の䟋では、垂盎方向ブロック vbO、 vblおよび vb6が無効ブロ ックず半 IJ断される。
[0245] 図 23は、垂盎方向ブロックの有効 Z無効の刀定を暡匏的に瀺す図である。
[0246] 図 23においおは、暪軞を党垂盎方向ブロック射圱デヌタ最倧倀ずし、瞊軞を第 1の 垂盎方向ブロック射圱デヌタ最倧倀ずしたグラフを衚しおおり、原点を起点ずした傟き 1/4 (S = l/4)の盎線を境にしお、有効ブロックず無効ブロックずに分かれるこずが 衚されおいる。
[0247] 無効ブロックず刀断される垂盎方向ブロックは、絵柄ずしお特城の少ないくっきりず した箇所が少ない、あるいは、非垞に现かい絵柄であるず蚀うこずができ、結果ずしお 、他の有効ブロックに察しお信頌性が䜎いず刀断できるものである。埓っお、無効プロ ックず刀断される垂盎方向ブロックに぀いおは、画像党䜓の氎平方向動きベクトルの 決定には䜿甚しないこずで、氎平方向動きベクトルの信頌性を高めるこずができる。
[0248] なお、䞊蚘にぉ 、おは、有効 Z無効の刀定条件を、党垂盎方向ブロック射圱デヌ タ最倧倀の 1Z4以䞋ずしお説明した力 これに限るものではなぐ堎合によっおは 1 Z2以䞋、あるいは 1Z8以䞋ずしおも良い。このように、刀定条件 lZ2nで蚭定するこ ずにより、有効、無効の刀定を簡単に行うこずが可胜である。
[0249] <垂盎方向ブロック n倀化加算デヌタピヌク倀を甚いる堎合〉
図 24は、垂盎方向ブロック n倀化加算デヌタピヌク倀を甚 ボお各垂盎方向ブロック の有効 Z無効を刀定する方法を説明する図である。
[0250] 図 24においおは、図 9の (a)に瀺した 640画玠 X 480画玠の画像デヌタを䟋に採り 、垂盎方向に 64画玠の幅 (分割幅)を有した 7個の垂盎方向ブロック vb0〜vb6に分 割した堎合を瀺しおいる。
[0251] たた、図 24においおは、垂盎方向ブロック氎平方向動きベクトル算出郚 310 (図 18 )から出力される各垂盎方向ブロックの垂盎方向ブロック n倀化加算デヌタピヌク倀を 、各ブロックごずに 16進数衚蚘で瀺しおいる。
[0252] 氎平方向動きベクトル決定郚 320では、各垂盎方向ブロック vb0〜vb6における垂 盎方向ブロック n倀化加算デヌタピヌク倀の䞭力も最倧倀を求める。図 24の䟋では、 垂盎方向ブロック vb4が最倧倀を有しおおり、この倀を垂盎方向ブロック n倀化加算 デヌタピヌク倀の最倧倀ず呌称する。
[0253] たた、氎平方向動きベクトル決定郚 320では、垂盎方向ブロック n倀化加算デヌタ ピヌク倀の最倧倀が所定倀 A (䟋えば、 10進数衚蚘で 12)以䞊のずき、垂盎方向ブ ロック n倀化加算デヌタが所定倀 B (䟋えば、 10進数衚蚘で 7)以䞋の垂盎方向プロ ックを無効ブロックずしお刀断する。図 24の䟋では、垂盎方向ブロック vbO、 vbl、 vb5 および vb6が無効ブロックず刀断される。
[0254] 垂盎方向ブロック氎平方向動きベクトル算出郚 310 (図 18)の加算噚 315 (図 19) の出力は、第 1の閟倀亀差点を䞭心に、第 2の閟倀で n倀化された第 1の垂盎方向ブ ロック射圱デヌタを加算したものであり、第 1の閟倀亀差点が倚ぐか぀、プラス偎の 第 2の閟倀ひ 2)を超える振幅山が倚いほど倧きな倀ずなる。逆に、マむナス偎の 第 2の閟倀― a 2)を超える振幅があれば打ち消されるこずになる。
[0255] 蚀い換えれば、加算噚 315の出力の最倧倀、぀たり、ある垂盎方向ブロックの垂盎 方向ブロック n倀化加算デヌタピヌク倀が所定倀 A以䞊であり、その䞀方で、他の垂 盎方向ブロックの垂盎方向ブロック n倀化加算デヌタピヌク倀が所定倀 B以䞋である ずき、圓該他の垂盎方向ブロックにおいおは加算結果が打ち消される絵柄、あるいは 、特城が少なぐ振幅が少ない絵柄であるず蚀える。
[0256] 埓っお、垂盎方向ブロック n倀化加算デヌタピヌク倀力 所定倀 B以䞋のブロックは 、所定倀 A以䞊のブロックに比べお、信頌性が䜎いず刀断でき、結果ずしお、他の有 効ブロックに察しお信頌性が䜎いず刀断できるものである。埓っお、無効ブロックず刀 断される垂盎方向ブロックに぀いおは、画像党䜓の氎平方向動きベクトルの決定に は䜿甚しないこずで、氎平方向動きベクトルの信頌性を高めるこずができる。 [0257] 図 25は、垂盎方向ブロックの有効 Z無効の刀定を暡匏的に瀺す図である。
図 25においおは、暪軞を垂盎方向ブロック n倀化加算デヌタピヌク倀の最倧倀ずし 、瞊軞を垂盎方向ブロック n倀化加算デヌタピヌク倀ずしたグラフを衚しおおり、垂盎 方向ブロック n倀化加算デヌタピヌク倀の最倧倀が所定倀 A以䞊のずきは、垂盎方 向ブロック n倀化加算デヌタが所定倀 B以䞋の垂盎方向ブロックを無効ブロックずしお 刀断する動䜜が衚されお 、る。
[0258] たた、図 25においおは、垂盎方向ブロック n倀化加算デヌタピヌク倀の最倧倀が所 定倀 Aよりも小さ 、堎合には、垂盎方向ブロック n倀化加算デヌタピヌク倀が所定倀 B以䞋のブロックが存圚しおも、圓該ブロックに぀いおは無効ブロックず刀断しないず いう動䜜も衚されおいる。
[0259] 䟋えば、図 24を䟋に採れば、垂盎方向ブロック n倀化加算デヌタピヌク倀の最倧 倀が 7である堎合は、垂盎方向ブロック vbO、 vbl、 vb5および vb6は無効ブロックずは 刀断されない。これは、垂盎方向ブロック n倀化加算デヌタピヌク倀が最倧倀である ブロックに察しお、盞察的には信頌性が䜎いずは蚀えないからである。
[0260] なお、䞊蚘においおは、有効 Z無効の刀定条件を、所定倀 Aを 12ずし、所定倀 Bを 7ずする䟋を瀺した力 これに限定されるものではなぐ画像の氎平方向画玠数に䟝 存し、䟋えば氎平方向画玠数が 640画玠である堎合には、所定倀 Aは 10皋床の倀 に蚭定し、所定倀 Bはその半分前埌の倀に蚭定すれば良 、。
[0261] く第 1の閟倀亀差点の個数を甚いる堎合〉
図 26は、第 1の閟倀亀差点の個数を甚 、お各垂盎方向ブロックの有効 Z無効を刀 定する方法を説明する図である。
[0262] 図 26においおは、図 9の (a)に瀺した 640画玠 X 480画玠の画像デヌタを䟋に採り 、垂盎方向に 64画玠の幅 (分割幅)を有した 7個の垂盎方向ブロック vb0〜vb6に分 割した堎合を瀺しおいる。
[0263] たた、図 26においおは、第 1の閟倀亀差点探玢郚 29 (図 18)から出力される第 1の 閟倀亀差点の個数を、各ブロックごずに 16進数衚蚘で瀺しお 、る。
[0264] 第 1の閟倀亀差点探玢郚 29では、第 2の垂盎方向ブロック射圱ラむンメモリ 27に保 存される前フレヌムに係る第 2の垂盎方向ブロック射圱デヌタの波圢ず、第 2の垂盎 方向ブロック射圱デヌタ最倧倀保存郚 28で算出された第 1の閟倀ずが亀差する第 1 の閟倀亀差点の情報を出力するが、圓該情報には第 1の閟倀亀差点の個数に぀い おの情報も含たれおおり、図 26に瀺すように、各垂盎方向ブロック vb0〜vb6ごずに 第 1の閟倀亀差点の個数が埗られる。
[0265] 図 27は、垂盎方向ブロックの有効 Z無効の刀定を暡匏的に瀺す図である。
図 27においおは、暪軞を各垂盎方向ブロック vb0〜vb6における第 1の閟倀亀差 点の個数の最倧倀ずし、瞊軞を第 1の閟倀亀差点の個数ずしたグラフを衚しおおり、 氎平方向動きベクトル決定郚 320では、各垂盎方向ブロック vb0〜vb6における第 1 の閟倀亀差点の個数が、所定倀 D (䟋えば、 10進数衚蚘で 3)以䞋のブロックに぀い おは、第 1の閟倀亀差点の個数の最倧倀に関わりなく無効ブロックず刀断する。図 26 の䟋では、垂盎方向ブロック vbOおよび vb6が無効ブロックず刀断される。
[0266] 無効ブロックず刀断される垂盎方向ブロックに぀いおは、画像党䜓の氎平方向動き ベクトルの決定には䜿甚しないこずで、氎平方向動きベクトルの信頌性を高めるこずが できる。
[0267] 䞀方で、第 1の閟倀亀差点の個数は少なくずも氎平方向の画玠数以䞋であり、氎平 方向の画玠数ず比范しお䜙りにも個数が倚い堎合は非垞に呚期的な絵柄を捉えお いるず蚀えるので、䟋えば、所定倀 E以䞊 (䟋えば、氎平方向画玠数の半分以䞊ず なっおいるような堎合には、そのブロックを無効ブロックず刀断するように構成しおも良 い。
[0268] たた、図 28に瀺すように、第 1の閟倀亀差点の個数の最倧倀が所定倀 C ( >D)以 䞊である堎合にのみ、所定倀 D以䞋のブロックに぀いおは無効ブロックず刀断するよ うに構成しおも良い。この堎合、第 1の閟倀亀差点の個数の最倧倀が所定倀じよりも 小さい堎合には、所定倀 D以䞋のブロックが存圚しおも、圓該ブロックに぀いおは無 効ブロックずは刀断されず、無効ブロックの刀定基準をより现力べ蚭定できる。
[0269] なお、䞊蚘にお ボおは、有効 Z無効の刀定条件を、所定倀 Dを 3ずし、所定倀 Eを 氎平方向画玠数の半分ずする䟋を瀺したが、これに限定されるものではない。
[0270] 以䞊説明した第 1の垂盎方向ブロック射圱デヌタ最倧倀を甚いお各垂盎方向プロ ックの有効 Z無効を刀定する方法、垂盎方向ブロック n倀化加算デヌタピヌク倀を甚 いお各垂盎方向ブロックの有効 Z無効を刀定する方法および第 lの閟倀亀差点の 情報を甚いお各垂盎方向ブロックの有効 Z無効を刀定する方法を甚いるこずで、無 効ブロックを刀定し、無効ブロックずされた垂盎方向ブロック力 算出された氎平方向 動きベクトルは、画像党䜓の氎平方向動きベクトルを決定する際には䜿甚しないよう にするこずで、動きベクトルの信頌性を高めるこずができる。
[0271] たた、以䞊説明した 3぀の刀定方法は、単独で甚いおも良いが組み合わせお甚い おも良い。
[0272] 䟋えば、第 1の垂盎方向ブロック射圱デヌタ最倧倀を甚いお有効 Z無効を刀定す るずずもに、垂盎方向ブロック n倀化加算デヌタピヌク倀を甚 、お各垂盎方向ブロック の有効 Z無効を刀定しおも良いし、第 1の垂盎方向ブロック射圱デヌタ最倧倀を甚 いお有効 Z無効を刀定するずずもに、第 1の閟倀亀差点の情報を甚いお各垂盎方向 ブロックの有効 Z無効を刀定しおも良、。
[0273] このような組み合わせにより、無効ブロックを確実に遞択するこずができ、動きべタト ルの信頌性をさらに高めるこずができる。
[0274] <氎平方向動きベクトルの決定方法 >
氎平方向動きベクトル決定郚 320では、䞊蚘のように垂盎方向ブロックの有効 Z無 効を刀定し、有効ブロックず刀定された垂盎方向ブロックに぀いお、その氎平方向動 きベクトル力も画像党䜓の氎平方向動きベクトルを決定する。
[0275] このずき、同じ氎平方向動きベクトルを有する垂盎方向ブロックを集め、ヒストグラム を䜜成する。
[0276] 以䞋、図 29および図 30を甚いお、画像党䜓の氎平方向動きベクトルの決定方法の 䞀䟋に぀いお説明する。
[0277] 図 29および図 30においおは、氎平方向動きベクトルの怜出範囲を Vないし Vず する堎合を瀺しおおり、ここでは、䞀䟋ずしお Vが 31の堎合を瀺しおおり、 31から 3 1たで 1ベクトル間隔で衚瀺されおいる。なお、各ベクトルに察応しお蚭けたボックス内 に衚瀺された数字は、同じベクトルを有する垂盎方向ブロックの個数を衚しお 、る。
[0278] 図 29に瀺すように、各垂盎方向ブロックに぀いお算出された氎平方向動きベクトル のうち、氎平方向動きベクトル 6に぀いおは 2぀の垂盎方向ブロックで算出されおいる 力 他の垂盎方向ブロックでは党おバラバラの氎平方向動きベクトルずなっおおり、そ の分垃範囲の最小倀は 14、最倧倀は 27ずなっおおり、その差 41ずなっお動きべク トル怜出範囲に察しお非垞にバラツキがあるず蚀える。なお、図 29においおは、珟フ レヌムの各垂盎方向ブロックから埗られた氎平方向動きベクトルに察応するブロック に砂地のハッチングを付しお!/、る。
[0279] 氎平方向動きベクトル決定郚 320では、各垂盎方向ブロックから埗られた氎平方向 動きベクトルの分垃範囲の最倧倀ず最小倀の差が予め定めた閟倀 B (䟋えば、䞊述 した V)以䞊のずき、各垂盎方向ブロック力 埗られる氎平方向動きベクトルは信頌性 が䜎いずしお、氎平方向動きベクトルを 0ずする。
[0280] このような凊理を行うこずで、画像党䜓の氎平方向動きベクトルの信頌性を高めるこ ずがでさる。
[0281] 䞀方、氎平方向動きベクトル 6を有する垂盎方向ブロックの個数が予め定めた数倀
A (䟋えば 3)以䞊である堎合には、各垂盎方向ブロックから埗られる氎平方向動きべ タトルは十分信頌できるず刀断する。
[0282] 同様に、各垂盎方向ブロックから埗られた氎平方向動きベクトルの最倧倀ず最小倀 の差が閟倀 Bより小さい堎合にも、各垂盎方向ブロック力 埗られた氎平方向動きべ タトルは十分信頌できるず刀断する。
[0283] なお、数倀 A、閟倀 Bは䞊述した倀に限るものではな 、。たた、ノ ラツキの刀断も䞊 述した氎平方向動きベクトルの最倧倀ず最小倀の差で刀断するこずに限定されず、暙 準偏差を甚いお、䟋えば、暙準偏差が閟倀 B以䞊のずき、バラツキが倧きいず刀断し おも良い。
[0284] 䞊述した凊理の結果、各垂盎方向ブロックから埗られた氎平方向動きベクトルが十 分信頌できるず刀断できた堎合、次の手順で珟フレヌムの氎平方向動きべ倖ルを算 出する。
[0285] その抂芁は、珟フレヌムの各垂盎方向ブロックから出力された氎平方向動きべタト ルのうち、前フレヌムの氎平方向動きベクトルに最も近 、氎平方向動きベクトルを珟 フレヌムの氎平方向動きベクトルずするものである。
[0286] 図 30においおは、各垂盎方向ブロック力 埗られた氎平方向動きベクトルの分垃 範囲の最倧倀ず最小倀の差が 11である堎合を瀺しおおり、閟倀 B (䟋えば V= 31)よ りも小さいため、氎平方向動きベクトル決定郚 320では、各垂盎方向ブロックカも算 出された氎平方向動きベクトルは信頌性があるものず刀断する。
[0287] ここで、図 30においおは氎平方向動きベクトル 5が前フレヌムの氎平方向動きべク トルであり、これに最も近い珟フレヌムの各垂盎方向ブロックから埗られた氎平方向 動きベクトルは、氎平方向動きベクトル 6である。埓っお、氎平方向動きベクトル 6が珟 フレヌムの氎平方向動きベクトルず決定される。なお、図 30においおは、珟フレヌム の各垂盎方向ブロック力 埗られた氎平方向動きベクトルに察応するブロックに砂地 のハッチングを付し、前フレヌムの氎平方向動きベクトルに察応するブロックに斜線 のハッチングを付しお 、る。
[0288] ここで、耇数の垂盎方向ブロックの出力結果が同じ氎平方向動きベクトルずなった 堎合、すなわち、ある氎平方向動きベクトルの個数が 2以䞊ずなった堎合、個数 1の 氎平方向動きベクトルは信頌性が䜎 、ものずしお陀倖し、その䞊で前フレヌムの氎平 方向動きベクトルに最も近い氎平方向動きベクトルを求め、その氎平方向動きべタト ルを珟フレヌムの氎平方向動きベクトルずしおも良い。
[0289] この方法を採る堎合、図 30の䟋では、氎平方向動きベクトル 8が珟フレヌムの氎平 方向動きベクトルずなる。
[0290] なお、前フレヌムの氎平方向動きベクトルに最も近い氎平方向動きベクトルが 2぀ 存圚する堎合には、その平均、぀たり、前フレヌムの氎平方向動きベクトルそのもの を珟フレヌムの氎平方向動きベクトルずすれば良 、。
[0291] ここで、前フレヌムの氎平方向動きベクトルの情報は、氎平方向動きべクトノレ決定 郚 320内に蚭けられた所定の蚘憶郚前フレヌム氎平方向動きベクトル保存手段に 保存しおおき、必芁に応じお読み出すように構成されお 、る。
[0292] 以䞊説明したように、垂盎方向ブロックの有効 Z無効の刀定動䜜により信頌性の䜎 V、垂盎方向ブロックを陀倖した䞊で、信頌性の高!、垂盎方向ブロックに基づ 、お算 出される氎平方向動きベクトルに぀いおバラツキを考慮しお画像党䜓の氎平方向動 きベクトルの信頌性を評䟡し、信頌できるず刀断した堎合にも、前フレヌムの氎平方 向動きベクトルを考慮するこずで、前フレヌムからの動きを加味した違和感の少な ボ 氎平方向動きベクトルを決定するこずができる。
[0293] <垂盎方向動きベクトル怜出郚 4Bの動䜜 >
次に、動きベクトル怜出装眮 1Bにおいお画像の垂盎方向の動きベクトルを怜出す る垂盎方向動きベクトル怜出郚 4Bの動䜜を説明する。
[0294] なお、垂盎方向動きベクトル怜出郚 4Bのの動䜜は、基本的には、実斜の圢態 1に おいお説明した垂盎方向動きベクトル怜出郚 4の動䜜ず同じであり、重耇する説明は 省略するものずし、氎平方向ブロック垂盎向動きベクトル算出郚 500および垂盎方向 動きベクトル決定郚 510の動䜜を䞭心に説明する。
[0295] 第 3の閟倀亀差点探玢郚 48では、第 2の氎平方向ブロック射圱ラむンメモリ 46から 読み出された第 2の氎平方向ブロック射圱デヌタず、第 2の氎平方向ブロック射圱デ ヌタ最倧倀保存郚 47から出力された第 3の閟倀ずの亀差点 (第 3の閟倀亀差点)を垂 盎方向に探玢する。この第 3の閟倀亀差点探玢郚 48で埗られた第 3の閟倀亀差点 の情報は、氎平方向ブロック射圱デヌタ読み出し郚 49、氎平方向ブロック垂盎方向 動きベクトル算出郚 500および垂盎方向動きベクトル決定郚 510に出力される。
[0296] 氎平方向ブロック射圱デヌタ読み出し郚 49は、第 3の閟倀亀差点探玢郚 48から出 力された第 3の閟倀亀差点を䞭心ずした動きべ倖ル怜出範囲に察応した珟フレヌム の (第 1の)氎平方向ブロック射圱デヌタを、第 1の氎平方向ブロック射圱ラむンメモリ 4 4から読み出す。すなわち、第 3の閟倀亀差点を B(i) (ただし i= l,2, ' · 'qで、 qは怜出 された第 3の閟倀亀差点の総数)ずし、動きベクトル怜出範囲を第 3の閟倀亀差点を 䞭心ずした (侀 U)から (+U) (ただし Uは正の敎数)の範囲ずするず、第 1の氎平方向ブ ロック射圱ラむンメモリ 44から読み出される射圱デヌタは、垂盎方向においお (B(i)— U)力も (B(i) + U)たでの範囲にある第 1の氎平方向ブロック射圱デヌタの郚分デヌタ ずなる。
[0297] この氎平方向ブロック射圱デヌタ読み出し郚 49によっお第 1の氎平方向ブロック射 圱ラむンメモリ 44から読み出された第 1の氎平方向ブロック射圱デヌタは、氎平方向 ブロック垂盎方向動きベクトル算出郚 500に出力される。
[0298] 氎平方向ブロック射圱デヌタ読み出し郚 49から出力された第 1の氎平方向ブロック 射圱デヌタは、図 21に瀺す氎平方向ブロック垂盎方向動きベクトル算出郚 500の入 力端子 501を介しお n倀化噚 504に入力される。この n倀化噚 504の凊理に぀いおは 、図 10を甚いお説明枈みであるので、説明は省略する。
[0299] たた、第 3の閟倀亀差点探玢郚 48、氎平方向ブロック射圱デヌタ読み出し郚 49お よび氎平方向ブロック垂盎方向動きベクトル算出郚 500 (氎平方向ブロック垂盎方向 動きベクトル算出郚 50ず基本的に同じ)の動䜜に぀いおは、図 14を甚いお説明枈み であるので、説明は省略する。
[0300] 次に、加算噚 505(図 21)では、入力端子 503を介しお第 3の閟倀亀差点探玢郚 48 力も出力された第 3の閟倀亀差点を䞭心に、 n倀化噚 504で n倀化された第 1の氎平 方向ブロック射圱デヌタず、垂盎方向動きベクトル加算メモリ 506から読み出された 1 ぀前たでの n倀ィ匕された第 1の氎平方向ブロック射圱デヌタの加算倀ずを加算し、そ の加算結果を垂盎方向動きベクトル加算メモリ 506に再び蚘憶させる。そしお、第 3 の閟倀亀差点探玢郚 48で怜出された党おの第 3の閟倀亀差点のうち最埌のものに 関する n倀化された第 1の氎平方向ブロック射圱デヌタを加算噚 505で加算しお 1぀ の氎平方向ブロックに぀ 、おの加算凊理を終了する際には、その加算結果をピヌク 怜出噚 5070に出力するようにする。なお、加算噚 505での加算凊理終了埌に、党お の第 3の閟倀亀差点に関する加算結果を蚘憶しおいる垂盎方向動きベクトル加算メ モリ 506から、その加算結果をピヌク怜出郚 5070が読み出すようにしおも良い。
[0301] ピヌク怜出噚 5070には、第 3の閟倀亀差点探玢郚 48で怜出された党おの第 3の 閟倀亀差点に぀いお各第 3の閟倀亀差点を䞭心ずした動きべ倖ル怜出範囲 (䞊述 した ± Uの範囲に察応する n倀化枈みの第 1の氎平方向ブロック射圱デヌタを加算 したデヌタ以䞋では「氎平方向ブロック n倀ィ匕デヌタ」ずも蚀うが入力される力 この 氎平方向ブロック n倀ィ匕デヌタに関するピヌク倀がピヌク怜出噚 5070で怜出される 。このピヌク怜出噚 5070においお怜出される氎平方向ブロック n倀ィ匕デヌタのピヌク 䜍眮が、その氎平方向ブロック力 埗られる垂盎方向動きベクトルずなり、出力端子 5 08を介しお垂盎方向動き決定郚 510に出力される。同様に、そのずきのピヌク倀は 出力端子 509から出力される。
[0302] なお、加算噚 505およびピヌク怜出郚 5070の具䜓的な動䜜に぀いおは、図 15を 甚いお説明した、氎平方向ブロック垂盎方向動きベクトル算出郚 50の加算噚 505お よびピヌク怜出郚 507ず同様なので説明は省略する力 ピヌク怜出噚 507で氎平方 向ブロックごずに算出された垂盎方向動きベクトル (ピヌク䜍眮ず、氎平方向ブロック の n倀化され加算された加算デヌタのピヌク倀 (以䞋、「氎平方向ブロック n倀化加算 デヌタピヌク倀」ずも蚀うは、それぞれ出力端子 508および 509を介しお垂盎方向 動きベクトル決定郚 510に入力され、氎平方向ブロック n倀化加算デヌタピヌク倀は 、氎平方向ブロックの有効 Z無効刀定に䜿甚される。
[0303] 垂盎方向動きベクトル決定郚 510 (図 20)では、氎平方向ブロック垂盎方向動きべ タトル算出郚 500から順次に出力される各氎平方向ブロックの垂盎方向動きベクトル に基づき、画像党䜓の垂盎方向動きベクトルが決定される。
[0304] このずき、垂盎方向動きベクトル決定郚 510では、第 1の氎平方向ブロック射圱デヌ タ最倧倀保存郚 45から出力される第 1の氎平方向ブロック射圱デヌタ最倧倀、氎平 方向ブロック垂盎方向動きベクトル算出郚 500から出力される氎平方向ブロック n倀 ィ匕加算デヌタピヌク倀および第 3の閟倀亀差点探玢郚 48から出力される第 3の閟倀 亀差点の情報に基づいお各氎平方向ブロックの有効 Z無効を刀定する。そしお、無 効ブロックず刀定された氎平方向ブロック力 算出された垂盎方向動きベクトルは画 像党䜓の垂盎方向動きベクトルを決定する際には䜿甚しな 、ものずする。
[0305] <氎平方向ブロックの有効 Z無効の刀定動䜜 >
<第 1の氎平方向ブロック射圱デヌタ最倧倀を甚いる堎合 > 以䞋、各氎平方向ブロックの有効 Z無効を刀定する方法に぀いお説明する。
[0306] 図 31は、第 1の氎平方向ブロック射圱デヌタ最倧倀を甚いお各氎平方向ブロック の有効 Z無効を刀定する方法を説明する図である。
[0307] 図 31においおは、図 13の (a)に瀺した 640画玠 X 480画玠の画像デヌタを䟋に採 り、氎平方向に 64画玠の幅 (分割幅)を有した 10個の氎平方向ブロック hbO〜hb9に 分割した堎合を瀺しおいる。
[0308] たた、図 31においおは、第 1の氎平方向ブロック射圱デヌタ最倧倀保存郚 45 (図 2 0)から出力される各氎平方向ブロックの第 1の氎平方向ブロック射圱デヌタ最倧倀を 、各ブロックごずに 16進数衚蚘で瀺しおいる。
[0309] 垂盎方向動きベクトル決定郚 510では、各氎平方向ブロック hbO〜hb9における第 1の氎平方向ブロック射圱デヌタ最倧倀の䞭力も党ブロック䞭の最倧倀を求める。図 31の䟋では、氎平方向ブロック hb4が党ブロック䞭の最倧倀を有しおおり、この倀を 党氎平方向ブロック射圱デヌタ最倧倀ず呌称する。
[0310] たた、垂盎方向動きベクトル決定郚 510では、党氎平方向ブロック射圱デヌタ最倧 倀に察しお、䟋えば 1Z4以䞋の最倧倀しか有さない氎平方向ブロックを無効ブロッ クずしお刀断する。図 31の䟋では、氎平方向ブロック hbO、 hbl、 hb8およひ hb9が無 効ブロックず刀断される。
[0311] 図 32は、氎平方向ブロックの有効 Z無効の刀定を暡匏的に瀺す図である。
[0312] 図 32においおは、暪軞を党氎平方向ブロック射圱デヌタ最倧倀ずし、瞊軞を第 1の 氎平方向ブロック射圱デヌタ最倧倀ずしたグラフを衚しおおり、原点を起点ずした傟き 1/4 (S = l/4)の盎線を境にしお、有効ブロックず無効ブロックずに分かれるこずが 衚されおいる。
[0313] 無効ブロックず刀断される氎平方向ブロックは、絵柄ずしお特城の少ないくっきりず した箇所が少ない、あるいは、非垞に现かい絵柄であるず蚀うこずができ、結果ずしお 、他の有効ブロックに察しお信頌性が䜎いず刀断できるものである。埓っお、無効プロ ックず刀断される氎平方向ブロックに぀いおは、画像党䜓の垂盎方向動きベクトルの 決定には䜿甚しないこずで、垂盎方向動きベクトルの信頌性を高めるこずができる。
[0314] なお、䞊蚘にお 、おは、有効 Z無効の刀定条件を、党氎平方向ブロック射圱デヌ タ最倧倀の 1Z4以䞋ずしお説明した力 これに限るものではなぐ堎合によっおは 1 Z2以䞋、あるいは 1Z8以䞋ずしおも良い。このように、刀定条件 lZ2nで蚭定するこ ずにより、有効、無効の刀定を簡単に行うこずが可胜である。
[0315] <氎平方向ブロック n倀化加算デヌタピヌク倀を甚いる堎合 >
図 33は、氎平方向ブロック n倀化加算デヌタピヌク倀を甚 ボお各氎平方向ブロック の有効 Z無効を刀定する方法を説明する図である。
[0316] 図 33においおは、図 13の (a)に瀺した 640画玠 X 480画玠の画像デヌタを䟋に採 り、氎平方向に 64画玠の幅 (分割幅)を有した 10個の氎平方向ブロック hbO〜hb9に 分割した堎合を瀺しおいる。
[0317] たた、図 33においおは、氎平方向ブロック垂盎方向動きベクトル算出郚 500 (図 20 )から出力される各氎平方向ブロックの氎平方向ブロック n倀化加算デヌタピヌク倀を 、各ブロックごずに 16進数衚蚘で瀺しおいる。
[0318] 垂盎方向動きベクトル決定郚 510では、各氎平方向ブロック hbO〜hb9における氎 平方向ブロック n倀化加算デヌタピヌク倀の䞭力も最倧倀を求める。図 33の䟋では、 氎平方向ブロック hb4が最倧倀を有しおおり、この倀を氎平方向ブロック n倀化加算 デヌタピヌク倀の最倧倀ず呌称する。
[0319] たた、垂盎方向動きベクトル決定郚 510では、氎平方向ブロック n倀化加算デヌタ ピヌク倀の最倧倀が所定倀 A (䟋えば、 10進数衚蚘で 12)以䞊のずき、氎平方向ブ ロック n倀化加算デヌタが所定倀 B (䟋えば、 10進数衚蚘で 7)以䞋の氎平方向プロ ックを無効ブロックずしお刀断する。図 33の䟋では、垂盎方向ブロック hbO、 hbl、 hb 7、 hb8および hb9が無効ブロックず刀断される。
[0320] 氎平方向ブロック垂盎方向動きベクトル算出郚 500 (図 20)の加算噚 505 (図 21) の出力は、第 3の閟倀亀差点を䞭心に、第 4の閟倀で n倀化された第 1の氎平方向ブ ロック射圱デヌタを加算したものであり、第 3の閟倀亀差点が倚ぐか぀、プラス偎の 第 4の閟倀ひ 4)を超える振幅山が倚いほど倧きな倀ずなる。逆に、マむナス偎の 第 4の閟倀䞀 α 4)を超える振幅があれば打ち消されるこずになる。
[0321] 蚀い換えれば、加算噚 505の出力の最倧倀、぀たり、ある氎平方向ブロックの氎平 方向ブロック η倀化加算デヌタピヌク倀が所定倀 Α以䞊であり、その䞀方で、他の氎 平方向ブロックの氎平方向ブロック n倀化加算デヌタピヌク倀が所定倀 B以䞋である ずき、圓該他の氎平方向ブロックにおいおは加算結果が打ち消される絵柄、あるいは 、特城が少なぐ振幅が少ない絵柄であるず蚀える。
[0322] 埓っお、氎平方向ブロック n倀化加算デヌタピヌク倀力 所定倀 B以䞋のブロックは 、所定倀 A以䞊のブロックに比べお、信頌性が䜎いず刀断できる。埓っお、無効ブロッ クず刀断される氎平方向ブロックに぀いおは、画像党䜓の垂盎方向動きベクトルの決 定には䜿甚しないこずで、垂盎方向動きベクトルの信頌性を高めるこずができる。
[0323] 図 34は、氎平方向ブロックの有効 Z無効の刀定を暡匏的に瀺す図である。
図 34においおは、暪軞を氎平方向ブロック n倀化加算デヌタピヌク倀の最倧倀ずし 、瞊軞を氎平方向ブロック n倀化加算デヌタピヌク倀ずしたグラフを衚しおおり、氎平 方向ブロック n倀化加算デヌタピヌク倀の最倧倀が所定倀 A以䞊のずきは、氎平方 向ブロック n倀化加算デヌタが所定倀 B以䞋の氎平方向ブロックを無効ブロックずしお 刀断する動䜜が衚されお 、る。
[0324] たた、図 34においおは、氎平方向ブロック n倀化加算デヌタピヌク倀の最倧倀が所 定倀 Aよりも小さ 、堎合には、氎平方向ブロック n倀化加算デヌタピヌク倀が所定倀 B以䞋のブロックが存圚しおも、圓該ブロックに぀いおは無効ブロックず刀断しないず いう動䜜も衚されおいる。
[0325] 䟋えば、図 33を䟋に採れば、氎平方向ブロック n倀化加算デヌタピヌク倀の最倧 倀が 7である堎合は、垂盎方向ブロック hbO、 hbl、 hb7、 hb8および hb9は無効ブロ ックずは刀断されない。これは、氎平方向ブロック n倀化加算デヌタピヌク倀が最倧倀 であるブロックに察しお、盞察的には信頌性が䜎いずは蚀えないからである。
[0326] なお、䞊蚘においおは、有効 Z無効の刀定条件を、所定倀 Aを 12ずし、所定倀 Bを 7ずする䟋を瀺した力 これに限定されるものではなぐ画像の垂盎方向画玠数に䟝 存し、䟋えば垂盎方向画玠数力 80画玠である堎合には、所定倀 Aは 10皋床の倀 に蚭定し、所定倀 Bはその半分前埌の倀に蚭定すれば良 、。
[0327] く第 3の閟倀亀差点の個数を甚いる堎合〉
図 35は、第 3の閟倀亀差点の個数を甚いお各垂盎方向ブロックの有効 Z無効を刀 定する方法を説明する図である。
[0328] 図 35においおは、図 13の (a)に瀺した 640画玠 X 480画玠の画像デヌタを䟋に採 り、氎平方向に 64画玠の幅 (分割幅)を有した 10個の氎平方向ブロック hbO〜hb9に 分割した堎合を瀺しおいる。
[0329] たた、図 35においおは、第 3の閟倀亀差点探玢郚 48 (図 20)から出力される第 3の 閟倀亀差点の個数を、各ブロックごずに 16進数衚蚘で瀺しお 、る。
[0330] 第 3の閟倀亀差点探玢郚 48では、第 2の氎平方向ブロック射圱ラむンメモリ 46に保 存される前フレヌムに係る第 2の氎平方向ブロック射圱デヌタの波圢ず、第 2の氎平 方向ブロック射圱デヌタ最倧倀保存郚 45で算出された第 3の閟倀ずが亀差する第 3 の閟倀亀差点の情報を出力するが、圓該情報には第 3の閟倀亀差点の個数に぀い おの情報も含たれおおり、図 35に瀺すように、各氎平方向ブロック hbO〜hb9ごずに 第 3の閟倀亀差点の個数が埗られる。
[0331] 図 36は、氎平方向ブロックの有効 Z無効の刀定を暡匏的に瀺す図である。
図 36においおは、暪軞を各氎平方向ブロック hbO〜hb9における第 3の閟倀亀差 点の個数の最倧倀ずし、瞊軞を第 3の閟倀亀差点の個数ずしたグラフを衚しおおり、 垂盎方向動きベクトル決定郚 510 (図 20)では、各氎平方向ブロック hbO〜hb9にお ける第 3の閟倀亀差点の個数が、所定倀 D (䟋えば、 10進数衚蚘で 3)以䞋のブロッ クに぀いおは、第 3の閟倀亀差点の個数の最倧倀に関わりなく無効ブロックず刀断す る。図 35の䟋では、氎平方向ブロック hbOおよび hb9が無効ブロックず刀断される。
[0332] 無効ブロックず刀断される氎平方向ブロックに぀いおは、画像党䜓の垂盎方向動き ベクトルの決定には䜿甚しないこずで、垂盎方向動きベクトルの信頌性を高めるこずが できる。
[0333] 䞀方で、第 3の閟倀亀差点の個数は少なくずも垂盎方向の画玠数以䞋であり、垂盎 方向の画玠数ず比范しお䜙りにも個数が倚い堎合は非垞に呚期的な絵柄を捉えお いるず蚀えるので、䟋えば、所定倀 E以䞊 (䟋えば、垂盎方向画玠数の半分以䞊ず なっおいるような堎合には、そのブロックを無効ブロックず刀断するように構成しおも良 い。䟋えば、図 35の氎平方向ブロック hb4では、第 3の閟倀亀差点の個数が 241で あり、垂盎方向画玠数の半分以䞊あるので、無効ブロックず刀断される。
[0334] たた、図 37に瀺すように、第 3の閟倀亀差点の個数の最倧倀が所定倀 C ( >D)以 䞊である堎合にのみ、所定倀 D以䞋のブロックに぀いおは無効ブロックず刀断するよ うに構成しおも良い。この堎合、第 3の閟倀亀差点の個数の最倧倀が所定倀じよりも 小さい堎合には、所定倀 D以䞋のブロックが存圚しおも、圓該ブロックに぀いおは無 効ブロックずは刀断されず、無効ブロックの刀定基準をより现力べ蚭定できる。
[0335] なお、䞊蚘にぉ 、おは、有効 Z無効の刀定条件を、所定倀 Dを 3ずし、所定倀 Eを 垂盎方向画玠数の半分ずする䟋を瀺したが、これに限定されるものではない。
[0336] 以䞊説明した第 1の氎平方向ブロック射圱デヌタ最倧倀を甚 、お各氎平方向プロ ックの有効 Z無効を刀定する方法、氎平方向ブロック n倀化加算デヌタピヌク倀を甚 いお各氎平方向ブロックの有効 Z無効を刀定する方法および第 3の閟倀亀差点の 情報を甚いお各氎平方向ブロックの有効 Z無効を刀定する方法を甚いるこずで無効 ブロックを刀定し、無効ブロックずされた氎平方向ブロック力 算出された垂盎方向動 きベクトルは、画像党䜓の垂盎方向動きベクトルを決定する際には䜿甚しないように するこずで、動きベクトルの信頌性を高めるこずができる。
[0337] たた、以䞊説明した 3぀の刀定方法は、単独で甚いおも良!、が組み合わせお甚い おも良い。
[0338] 䟋えば、第 1の氎平方向ブロック射圱デヌタ最倧倀を甚いお有効 Z無効を刀定す るずずもに、氎平方向ブロック n倀化加算デヌタピヌク倀を甚 、お各氎平方向ブロック の有効 Z無効を刀定しおも良いし、第 1の氎平方向ブロック射圱デヌタ最倧倀を甚 いお有効 Z無効を刀定するずずもに、第 3の閟倀亀差点の情報を甚いお各氎平方向 ブロックの有効 Z無効を刀定しおも良、。
[0339] このような組み合わせにより、無効ブロックを確実に遞択するこずができ、動きべタト ルの信頌性をさらに高めるこずができる。
[0340] <垂盎方向動きベクトルの決定方法 >
垂盎方向動きベクトル決定郚 510では、䞊蚘のように氎平方向ブロックの有効 Z無 効を刀定し、有効ブロックず刀定された氎平方向ブロックに぀いお、その垂盎方向動 きベクトル力も画像党䜓の垂盎方向動きベクトルを決定する。
[0341] このずき、同じ垂盎方向動きベクトルを有する氎平方向ブロックを集め、ヒストグラム を䜜成する。
[0342] 以䞋、図 38および図 39を甚いお、画像党䜓の垂盎方向動きベクトルの決定方法の 䞀䟋に぀いお説明する。
[0343] 図 38および図 39においおは、氎平方向動きベクトルの怜出範囲を Uないし Uず する堎合を瀺しおおり、ここでは、䞀䟋ずしお Uが 31の堎合を瀺しおおり、 31から 3 1たで 1ベクトル間隔で衚瀺されおいる。なお、各ベクトルに察応しお蚭けたボックス内 に衚瀺された数字は、同じベクトルを有する氎平方向ブロックの個数を衚しお 、る。
[0344] 図 38に瀺すように、各氎平方向ブロックに぀いお算出された垂盎方向動きベクトル のうち、垂盎方向動きベクトル 3および垂盎方向動きベクトル 2に぀いおは 2぀の氎 平方向ブロックで算出されおいる力 S、他の氎平方向ブロックでは党おバラバラの垂盎 方向動きベクトルずなっおおり、その分垃範囲の最小倀は 26、最倧倀は 8ずなっお おり、その差 34ずなっお動きベクトル怜出範囲に察しお非垞にバラツキがあるず蚀える 。なお、図 38においおは、珟フレヌムの各氎平方向ブロックから埗られた垂盎方向 動きベクトルに察応するブロックに砂地のハッチングを付しおいる。
[0345] 垂盎方向動きベクトル決定郚 510では、各氎平方向ブロックから埗られた垂盎方向 動きベクトルの最倧倀ず最小倀の差が予め定めた閟倀 B (䟋えば、䞊述した U)以䞊 のずき、各氎平方向ブロック力も埗られる垂盎方向動きベクトルは信頌性が䜎いずしお 、垂盎方向動きベクトルを 0ずする。
[0346] このような凊理を行うこずで、画像党䜓の氎平方向動きベクトルの信頌性を高めるこ ずがでさる。
[0347] 䞀方、垂盎方向動きベクトル 3および垂盎方向動きベクトル 2を有する氎平方向 ブロックの個数が予め定めた数倀 A (䟋えば 3)以䞊である堎合には、各氎平方向ブ ロック力 埗られる垂盎方向動きベクトルは十分信頌できるず刀断する。
[0348] 同様に、各氎平方向ブロックから埗られた垂盎方向動きベクトルの最倧倀ず最小倀 の差が閟倀 Bより小さい堎合にも、各氎平方向ブロック力 埗られた垂盎方向動きべ タトルは十分信頌できるず刀断する。
[0349] なお、数倀 A、閟倀 Bは䞊述した倀に限るものではな 、。たた、ノ ラツキの刀断も䞊 述した垂盎方向動きベクトルの最倧倀ず最小倀の差で刀断するこずに限定されず、暙 準偏差を甚いお、䟋えば、暙準偏差が閟倀 B以䞊のずき、バラツキが倧きいず刀断し おも良い。
[0350] 䞊述した凊理の結果、各氎平方向ブロック力 埗られた垂盎方向動きベクトルが十 分信頌できるず刀断できた堎合、次の手順で珟フレヌムの垂盎方向動きべ倖ルを算 出する。
[0351] その抂芁は、珟フレヌムの各氎平方向ブロックから出力された垂盎方向動きべタト ルのうち、前フレヌムの垂盎方向動きベクトルに最も近 、垂盎方向動きベクトルを珟 フレヌムの垂盎方向動きベクトルずするものである。
[0352] 図 39においおは、各氎平方向ブロック力 埗られた垂盎方向動きベクトルの分垃 範囲の最倧倀ず最小倀の差が 9である堎合を瀺しおおり、閟倀 B (䟋えば U= 31)より も小さいため、垂盎方向動きベクトル決定郚 510では、各氎平方向ブロックから算出 された垂盎方向動きベクトルは信頌性があるものず刀断する。
[0353] ここで、図 39においおは垂盎方向動きベクトル 8が前フレヌムの垂盎方向動きべク トルであり、これに最も近い珟フレヌムの各氎平方向ブロックから埗られた垂盎方向 動きベクトルは、垂盎方向動きベクトル 6である。埓っお、垂盎方向動きベクトル 6が珟 フレヌムの垂盎方向動きベクトルず決定される。なお、図 39においおは、珟フレヌム の各氎平方向ブロック力 埗られた垂盎方向動きベクトルに察応するブロックに砂地 のハッチングを付し、前フレヌムの垂盎方向動きベクトルに察応するブロックに斜線 のハッチングを付しお 、る。
[0354] ここで、耇数の氎平方向ブロックの出力結果が同じ垂盎方向動きベクトルずなった 堎合、すなわち、ある垂盎方向動きベクトルの個数が 2以䞊ずなった堎合、個数 1の 垂盎方向動きベクトルは信頌性が䜎 、ものずしお陀倖し、その䞊で前フレヌムの垂盎 方向動きベクトルに最も近い垂盎方向動きベクトルを求め、その垂盎方向動きべタト ルを珟フレヌムの垂盎方向動きベクトルずしおも良い。
[0355] この方法を採る堎合、図 39の䟋では、垂盎方向動きベクトル 5が珟フレヌムの氎平 方向動きベクトルずなる。
[0356] なお、前フレヌムの垂盎方向動きベクトルに最も近い垂盎方向動きベクトルが 2぀ 存圚する堎合には、その平均、぀たり、前フレヌムの垂盎方向動きベクトルそのもの を珟フレヌムの垂盎方向動きベクトルずすれば良!、。
[0357] ここで、前フレヌムの垂盎方向動きベクトルの情報は、垂盎方向動きベクトル決定 郚 510内に蚭けられた所定の蚘憶郚前フレヌム垂盎方向動きベクトル保存手段に 保存しおおき、必芁に応じお読み出すように構成されお 、る。
[0358] 以䞊説明したように、氎平方向ブロックの有効 Z無効の刀定動䜜により信頌性の䜎 V、氎平方向ブロックを陀倖した䞊で、信頌性の高!、氎平方向ブロックに基づ!/、お算 出される垂盎方向動きベクトルに぀いおバラツキを考慮しお画像党䜓の垂盎方向動 きベクトルの信頌性を評䟡し、信頌できるず刀断した堎合にも、前フレヌムの垂盎方 向動きベクトルを考慮するこずで、前フレヌムからの動きを加味した違和感の少な ボ 垂盎方向動きベクトルを決定するこずができる。
[0359] <効果 > 以䞊に説明したように、実斜の圢態 3に係る動きベクトル怜出装眮 IBの氎平方向 動きベクトル怜出郚 2Bにおいおは、氎平方向動きベクトル決定郚 320においお、第 1 の垂盎方向ブロック射圱デヌタ最倧倀保存郚 24から出力される第 1の垂盎方向プロ ック射圱デヌタ最倧倀、垂盎方向ブロック氎平方向動きベクトル算出郚 310から出力 される垂盎方向ブロック n倀化加算デヌタピヌク倀、第 1の閟倀亀差点探玢郚 29から 出力される第 1の閟倀亀差点の情報に基づいお、垂盎方向ブロックの有効 Z無効の 刀断を行うため、信頌性の䜎い垂盎方向ブロック力 埗られた氎平方向動きベクトル を陀倖するこずができ、結果的に、信頌性の高い氎平方向動きベクトルを算出するこ ずがでさる。
[0360] たた、信頌性の高い垂盎方向ブロックに基づいお算出される氎平方向動きベクトル に぀いおバラツキを考慮しお画像党䜓の氎平方向動きベクトルの信頌性を評䟡し、 信頌できるず刀断した堎合にも、前フレヌムの氎平方向動きベクトルを考慮するこずで 、前フレヌム力 の動きをカ卩味した違和感の少な 、氎平方向動きベクトルを決定する こずができる。
[0361] たた、垂盎方向動きベクトル怜出郚 4Bにおいおは、垂盎方向動きベクトル決定郚 5 10においお、第 1の氎平方向ブロック射圱デヌタ最倧倀保存郚 45から出力される第 1の氎平方向ブロック射圱デヌタ最倧倀、氎平方向ブロック垂盎方向動きベクトル算 出郚 500から出力される氎平方向ブロック n倀化加算デヌタピヌク倀、第 3の閟倀亀 差点探玢郚 48から出力される第 3の閟倀亀差点の情報に基づいお、氎平方向ブロッ クの有効 Z無効の刀断を行うため、信頌性の䜎 、氎平方向ブロック力 埗られた垂 盎方向動きベクトルを陀倖するこずができ、結果的に、信頌性の高い垂盎方向動きべ タトルを算出するこずができる。
[0362] たた、信頌性の高い氎平方向ブロックに基づいお算出される垂盎方向動きベクトル に぀いおバラツキを考慮しお画像党䜓の垂盎方向動きベクトルの信頌性を評䟡し、 信頌できるず刀断した堎合にも、前フレヌムの垂盎方向動きベクトルを考慮するこずで 、前フレヌム力 の動きをカ卩味した違和感の少な 、垂盎方向動きベクトルを決定する こずができる。
[0363] たた、動きベクトル怜出装眮 1Bでは、垂盎方向画像分割郚 21でフレヌム画像を垂 盎方向に分割した埌に、各分割画像 (垂盎方向ブロック)に぀ 、お垂盎方向の゚ッゞ を匷調するため、垂盎方向の゚ッゞが匷調された分割画像を簡易に生成できる。同 様に、氎平方向画像分割郚 41でフレヌム画像を氎平方向に分割した埌に、各分割 画像 (氎平方向ブロック)に぀いお氎平方向の゚ッゞを匷調するため、氎平方向の゚ツ ゞが匷調された分割画像を簡易に生成できる。
[0364] 実斜の圢態 4.
<動きベクトル怜出装眮の構成 >
図 1に瀺すように、本発明の実斜の圢態 4に係る動きベクトル怜出装眮 1Cに぀いお は、実斜の圢態 1の動きベクトル怜出装眮 1ず類䌌の構成を有しおいる力 氎平方向 動きベクトル怜出郚ず垂盎方向動きベクトル怜出郚ずの構成が異なっおいる。
[0365] 以䞋、動きベクトル怜出装眮 1Cにおける氎平方向動きベクトル怜出郚 2Cおよび垂 盎方向動きベクトル怜出郚 4Cの構成に぀いお図 40および図 41を参照しお説明する 。 図 40は、氎平方向動きベクトル怜出郚 2Cの芁郚構成を瀺すブロック図である。 なお、図 40では、実斜の圢態 3で説明した氎平方向動きベクトル怜出郚 2Bず同様の 機胜を有する郚䜍には同䞀の笊号を付し、重耇する説明は省略する。
[0366] 氎平方向動きベクトル怜出郚 2Cの゚ッゞ匷調手段では、実斜の圢態 3の氎平方向 動きベクトル怜出郚 2Bの゚ッゞ匷調手段に察しお垂盎方向画像分割郚 21ず垂盎方 向゚ッゞ抜出フィルタリング郚 22ずの配眮が逆転しおいる。以䞋では、この氎平方向 動きベクトル怜出郚 2Cの動䜜に぀いお説明する。
[0367] 図 2に瀺すように氎平ラむンの画玠走査を垂盎方向に順に繰り返すこずによっお読 み出されるフレヌム画像が、氎平方向動きベクトル怜出郚 2Cの入力端子 20に入力 されるず、垂盎方向゚ッゞ抜出フィルタリング郚 22にお 、お垂盎方向に延びる゚ッゞ 成分の抜出、換蚀すれば氎平方向に急峻に倉化する画像郚分を匷調するようなフィ ルタリング凊理が斜される。
[0368] 垂盎方向゚ッゞ抜出フィルタリング郚 22で垂盎方向の゚ッゞが匷調されたフレヌム 画像が垂盎方向画像分割郚 21に入力されるず、垂盎方向にブロック分割される。す なわち、垂盎方向画像分割郚 21では、゚ッゞ匷調が斜されたフレヌム画像を垂盎方 向に分割しお埗られる耇数の画像領域 (垂盎方向ブロック)が蚭定される。これ〖こより、 以降の凊理では、垂盎方向ブロックごずに凊理および管理が行われるこずずなる。
[0369] 垂盎方向画像分割郚 21で分割された画像デヌタは、垂盎方向ブロック射圱郚 23 に入力される力 この垂盎方向ブロック射圱郚 23以降の凊理は、実斜の圢態 3の氎 平方向動きベクトル怜出郚 2Bず同様の凊理が行われる。
[0370] 図 41は、垂盎方向動きベクトル怜出郚 4Cの芁郚構成を瀺すブロック図である。な お、図 41では、実斜の圢態 3で説明した垂盎方向動きベクトル怜出郚 4Bず同様の機 胜を有する郚䜍には同䞀の笊号を付し、重耇する説明は省略する。
[0371] 垂盎方向動きベクトル怜出郚 4Cの゚ッゞ匷調手段では、実斜の圢態 3の垂盎方向 動きベクトル怜出郚 4Bの゚ッゞ匷調手段に察しお氎平方向画像分割郚 41ず氎平方 向゚ッゞ抜出フィルタリング郚 42ずの配眮が逆転しおいる。以䞋では、この垂盎方向 動きベクトル怜出郚 4Cの動䜜に぀いお説明する。
[0372] 図 2に瀺すように氎平ラむンの画玠走査を垂盎方向に順に繰り返すこずによっお読 み出されるフレヌム画像が、垂盎方向動きベクトル怜出郚 4Cの入力端子 40に入力 されるず、氎平方向゚ッゞ抜出フィルタリング郚 42においお氎平方向に延びる゚ッゞ 成分の抜出、換蚀すれば垂盎方向に急峻に倉化する画像郚分を匷調するようなフィ ルタリング凊理が斜される。
[0373] 氎平方向゚ッゞ抜出フィルタリング郚 42で氎平方向の゚ッゞが匷調されたフレヌム 画像が氎平方向画像分割郚 41に入力されるず、氎平方向にブロック分割される。す なわち、氎平方向画像分割郚 41では、゚ッゞ匷調が斜されたフレヌム画像を氎平方 向に分割しお埗られる耇数の画像領域 (氎平方向ブロック)が蚭定される。これ〖こより、 以降の凊理では、氎平方向ブロックごずに凊理および管理が行われるこずずなる。
[0374] 氎平方向画像分割郚 41で分割された画像デヌタは、氎平方向ブロック射圱郚 43 に入力される力 この氎平方向ブロック射圱郚 43以降の凊理は、実斜の圢態 3の垂 盎方向動きベクトル怜出郚 4Bず同様の凊理が行われる。
[0375] 以䞊の動きベクトル怜出装眮 1Cの動䜜により、実斜の圢態 3ず同様の効果を奏する
[0376] そしお、動きベクトル怜出装眮 1Cでは、垂盎方向゚ッゞ抜出フィルタリング郚 22で フレヌム画像に察する垂盎方向の゚ッゞを匷調した埌に、゚ッゞ匷調されたフレヌム 画像を垂盎方向画像分割郚 21にお ボお垂盎方向に分割するため、垂盎方向の゚ツ ゞが匷調された分割画像を簡易に生成できる。
[0377] 同様に、氎平方向゚ッゞ抜出フィルタリング郚 42でフレヌム画像に察する氎平方向 の゚ッゞを匷調した埌に、゚ッゞ匷調されたフレヌム画像を氎平方向画像分割郚 41 においお氎平方向に分割するため、氎平方向の゚ッゞが匷調された分割画像を簡 易に生成できる。
[0378] なお、動きベクトル怜出装眮 1Cにおいおは、垂盎方向゚ッゞ抜出フィルタリング郚 22ず氎平方向゚ッゞ抜出フィルタリング郚 42ずを別々に氎平方向動きベクトル怜出 郚 2Aおよび垂盎方向動きベクトル怜出郚 4Aに配眮するのは必須でなぐ垂盎方向 ゚ッゞ抜出フィルタリング郚 22および氎平方向゚ッゞ抜出フィルタリング郚 42の双方 の機胜を䞀䜓ィ匕した氎平 Z垂盎方向゚ッゞ抜出フィルタリング郚を蚭けお、その出力 を垂盎方向画像分割郚 21および氎平方向画像分割郚 41それぞれに入力させるよう にしおも良い。
[0379] <倉圢䟋>
䞊蚘の各実斜の圢態における垂盎方向゚ッゞ抜出フィルタリング郚および氎平方 向゚ッゞ抜出フィルタリング郚に぀いおは、゚ッゞ抜出を行うフィルタリング凊理埌に、 所定の閟倀ずの倧小関係を刀別する閟倀凊理により䟋えば「゚ッゞあり」「゚ッゞなし」 の 2倀化や、「正の゚ッゞあり」「゚ッゞなし」「負の゚ッゞあり」の 3倀化を行うようにしお も良い。このような閟倀凊理を行うこずにより、所定の閟倀以䞊の茝床倉化 (茝床募配) を有する゚ッゞを同䞀に扱うこずが可胜ずなる。
[0380] 䞊蚘の各実斜の圢態においおは、ビット数削枛郚 25から出力されるデヌタを、䟋え ばフレヌムごずのスィッチ切替えによっお第 1の垂盎方向ブロック射圱ラむンメモリ 26 ず第 2の垂盎方向ブロック射圱ラむンメモリ 27ずに亀互に入力させるようにしおも良い。
[0381] たた、氎平方向ブロック射圱郚 43から出力されるデヌタを、䟋えばフレヌムごずのス むッチ切替えによっお第 1の氎平方向ブロック射圱ラむンメモリ 44ず第 2の氎平方向ブ ロック射圱ラむンメモリ 46ずに亀互に入力させるようにしおも良い。
[0382] 同様に、垂盎 (æ°Žå¹³)方向ブロック射圱郚から出力されるデヌタを、䟋えばフレヌムご ずのスィッチ切替えによっお第 1の垂盎 (æ°Žå¹³)方向ブロック射圱デヌタ最倧倀保存郚 ず第 2の垂盎 (æ°Žå¹³)方向ブロック射圱デヌタ最倧倀保存郚ずに亀互に入力させるよう にしおも良い。
[0383] 本発明における「前フレヌム」には、埌フレヌム (䟋えば珟圚のフレヌム)に察しお 1 ぀だけ前のフレヌムに限らず、 2぀以䞊前のフレヌムも含たれる。䟋えば、フレヌム間 匕き凊理により途䞭のフレヌムがスキップされおいる堎合には、スキップされたフレヌ ムの前のフレヌムが含たれる。
[0384] この発明は詳现に説明されたが、䞊蚘した説明は、すべおの局面においお、䟋瀺 であっお、この発明がそれに限定されるものではない。䟋瀺されおいない無数の倉圢 䟋力 この発明の範囲力 倖れるこずなく想定され埗るものず解される。

Claims

請求の範囲
[1] 時系列的に前埌の関係ずなる前フレヌムず埌フレヌムずに関するフレヌム画像間の 動きベクトルを怜出する動きベクトル怜出装眮であっお、
氎平ラむンの画玠走査を垂盎方向に順に繰り返すこずによっお読み出されるフレヌ ム画像に関しお、垂盎方向に䞀定の分割幅を有しお耇数に分割されたブロックごずに 垂盎方向の゚ッゞを匷調する゚ッゞ匷調手段21, 22)ず、
前蚘゚ッゞ匷調手段21, 22)で゚ッゞが匷調された画像に぀いお、前蚘ブロック ごずに垂盎方向に射圱をずり、前蚘ブロックのそれぞれで 1氎平ラむン分のデヌタ配 列を有する射圱デヌタを生成する射圱手段 (23)ず、
前蚘前フレヌムに察しお前蚘射圱手段23)で埗られた射圱デヌタに関しお前蚘 デヌタ配列の芁玠順に配列芁玠の倀をグラフ化した波圢ず、配列芁玠の倀が所定の 䞀定倀ずなる盎線ずが亀差する各亀差点の配列芁玠の䜍眮を特定する特定手段 (2 9)ず、
前蚘各亀差点の配列芁玠の䜍眮を䞭心ずした所定範囲のデヌタ配列を、前蚘埌フ レヌムに察しお前蚘射圱手段で埗られた射圱デヌタ力 抜出する抜出手段 (30)ず、 前蚘抜出手段30)で抜出された所定範囲のデヌタ配列それぞれに぀いお、前蚘 各亀差点の配列芁玠の䜍眮に察しお盞察䜍眮が同じ配列芁玠同士の倀を加算する 加算手段 (31)ず、
前蚘加算手段31)で加算された加算結果に基づき、フレヌム画像の氎平方向に 関する動きベクトルを怜出する怜出手段32)ず、を備える動きベクトル怜出装眮。
[2] 請求項 1蚘茉の動きベクトル怜出装眮においお、
前蚘射圱デヌタの配列芁玠にぉ 、お最倧倀を求める最倧倀取埗手段24)ず、 前蚘最倧倀取埗手段で求められた最倧倀に基づき前蚘射圱デヌタに関する各配 列芁玠のデヌタ長を削枛する削枛手段 (25)ず、
前蚘埌フレヌムに぀ 、お前蚘削枛手段25)でデヌタ長が削枛された射圱デヌタ を蚘憶する蚘憶手段26)ず、をさらに備え、
前蚘特定手段29)は、
前蚘前フレヌムに぀ 、お前蚘削枛手段25)でデヌタ長が削枛された射圱デヌタ に関しお前蚘デヌタ配列の芁玠順に配列芁玠の倀をグラフ化した波圢ず、配列芁玠 の倀が所定の䞀定倀ずなる盎線ずが亀差する各亀差点の配列芁玠の䜍眮を特定す る䜍眮特定手段、を有するずずもに、
前蚘抜出手段30)は、
前蚘䜍眮特定手段で特定された各亀差点の配列芁玠の䜍眮を䞭心ずした所定範 囲のデヌタ配列を、前蚘蚘憶手段26)に蚘憶されるデヌタ長が削枛された埌フレ ヌムの射圱デヌタ力も抜出する手段を有する、動きベクトル怜出装眮。
[3] 請求項 1蚘茉の動きベクトル怜出装眮においお、
前蚘加算手段 (31)は、
前蚘抜出手段30)で抜出された所定範囲のデヌタ配列に関する各配列芁玠のデ 䞀タ長を圧瞮する圧瞮手段 (314)ず、
前蚘圧瞮手段によりデヌタ長が圧瞮された所定範囲のデヌタ配列それぞれに぀い お、前蚘各亀差点の配列芁玠の䜍眮に察しお盞察䜍眮が同じ配列芁玠同士の倀を 加算する手段 (315)を有する、動きベクトル怜出装眮。
[4] 請求項 3蚘茉の動きベクトル怜出装眮においお、
前蚘圧瞮手段314)は、
前蚘抜出手段で抜出された所定範囲のデヌタ配列に関する各配列芁玠の倀を 3 倀化凊理し、
前蚘 3倀化凊理では、前蚘埌フレヌムの射圱デヌタにおける配列芁玠の最倧倀に 基づき蚭定される閟倀 Th(Th>0)に関しお、前蚘抜出手段30)で抜出された射圱 デヌタに関する配列芁玠の倀力 䞀 Th)より小さい堎合、― Th)以䞊で Th以䞋の 堎合、および Thより倧きい堎合の 3段階による 3倀ィ匕が行われる、動きベクトル怜出 装眮。
[5] 時系列的に前埌の関係ずなる前フレヌムず埌フレヌムずに関するフレヌム画像間の 動きベクトルを怜出する動きベクトル怜出装眮であっお、
氎平ラむンの画玠走査を垂盎方向に順に繰り返すこずによっお読み出されるフレヌ ム画像に関しお、氎平方向に䞀定の分割幅を有しお耇数のブロックに分割されたブ ロックごずに氎平方向の゚ッゞを匷調する゚ッゞ匷調手段 (42)ず、 前蚘゚ッゞ匷調手段で゚ッゞが匷調された画像にっ 、お、前蚘ブロックごずに氎平 方向に射圱をずり、前蚘ブロックのそれぞれで 1垂盎ラむン分のデヌタ配列を有する 射圱デヌタを生成する射圱手段 (43)ず、
前蚘前フレヌムに察しお前蚘射圱手段 (43)で埗られた射圱デヌタに関しお前蚘 デヌタ配列の芁玠順に配列芁玠の倀をグラフ化した波圢ず、配列芁玠の倀が所定の 䞀定倀ずなる盎線ずが亀差する各亀差点の配列芁玠の䜍眮を特定する特定手段 (4 8)ず、
前蚘各亀差点の配列芁玠の䜍眮を䞭心ずした所定範囲のデヌタ配列を、前蚘埌フ レヌムに察しお前蚘射圱手段で埗られた射圱デヌタ力 抜出する抜出手段 (49)ず、 前蚘抜出手段 (49)で抜出された所定範囲のデヌタ配列それぞれに぀ 、お、前蚘 各亀差点の配列芁玠の䜍眮に察しお盞察䜍眮が同じ配列芁玠同士の倀を加算する 加算手段 (50)ず、
前蚘加算手段50)で加算された加算結果に基づき、フレヌム画像の垂盎方向に 関する動きベクトルを怜出する怜出手段51)ず、を備える、動きベクトル怜出装眮。
[6] 請求項 5蚘茉の動きベクトル怜出装眮においお、
前蚘加算手段50)は、
前蚘抜出手段 (49)で抜出された所定範囲のデヌタ配列に関する各配列芁玠のデ 䞀タ長を圧瞮する圧瞮手段 (504)ず、
前蚘圧瞮手段によりデヌタ長が圧瞮された所定範囲のデヌタ配列それぞれに぀い お、前蚘各亀差点の配列芁玠の䜍眮に察しお盞察䜍眮が同じ配列芁玠同士の倀を 加算する手段 (505)を有する、動きベクトル怜出装眮。
[7] 請求項 6蚘茉の動きベクトル怜出装眮においお、
前蚘圧瞮手段504)は、
前蚘抜出手段で抜出された所定範囲のデヌタ配列に関する各配列芁玠の倀を 3 倀化凊理し、
前蚘 3倀化凊理では、前蚘前フレヌムの射圱デヌタにおける配列芁玠の最倧倀に 基づき蚭定される閟倀 Th(Th>0)に関しお、前蚘抜出手段で抜出された射圱デヌ タに関する配列芁玠の倀が、䞀 Th)より小さい堎合、― Th)以䞊で Th以䞋の堎合、 および Thより倧きい堎合の 3段階による 3倀ィ匕が行われる、動きベクトル怜出装眮。
[8] 請求項 1たたは請求項 5に蚘茉の動きベクトル怜出装眮においお、
前蚘前フレヌムに関する射圱デヌタの配列芁玠における最倧倀を求める、最倧倀 特定手段 (28, 47)を備える、動きベクトル怜出装眮。
[9] 時系列的に前埌の関係ずなる前フレヌムず埌フレヌムずに関するフレヌム画像間の 動きベクトルを怜出する動きベクトル怜出装眮であっお、
氎平ラむンの画玠走査を垂盎方向に順に繰り返すこずによっお読み出されるフレヌ ム画像に関しお、垂盎方向に䞀定の分割幅を有しお耇数のブロックに分割されたブ ロックごずに垂盎方向の゚ッゞを匷調する゚ッゞ匷調手段21, 22)ず、
前蚘゚ッゞ匷調手段21, 22)で゚ッゞが匷調された画像に぀いお、前蚘ブロック ごずに垂盎方向に射圱をずり、前蚘ブロックのそれぞれで 1氎平ラむン分のデヌタ配 列を有する射圱デヌタを生成する射圱手段 (23)ず、
前蚘埌フレヌムに察しお前蚘射圱手段23)で埗られた埌フレヌム射圱デヌタの配 列芁玠においお最倧倀を求める最倧倀取埗手段24)ず、
前蚘前フレヌムに察しお前蚘射圱手段23)で埗られた前フレヌム射圱デヌタに関 しお前蚘デヌタ配列の芁玠順に配列芁玠の倀をグラフ化した波圢ず、配列芁玠の倀 が所定の䞀定倀ずなる盎線ずが亀差する各亀差点の配列芁玠の䜍眮を特定しお亀 差点情報ずしお出力する特定手段 (29)ず、
前蚘各亀差点の配列芁玠の䜍眮を䞭心ずした所定範囲のデヌタ配列を、前蚘埌フ レヌム射圱デヌタ力 抜出する抜出手段30)ず、
前蚘抜出手段30)で抜出された所定範囲のデヌタ配列それぞれに぀いお、前蚘 各亀差点の配列芁玠の䜍眮に察しお盞察䜍眮が同じ配列芁玠同士の倀を加算し、 埗られた加算結果に基づいお前蚘ブロックごずの氎平方向動きベクトルを算出する加 算手段 (310)ず、
前蚘加算手段310)で算出された前蚘ブロックごずの氎平方向動きベクトルに基づ き、フレヌム画像党䜓の氎平方向動きベクトルを怜出する怜出手段320)ず、を備え 前蚘怜出手段320)は、 前蚘最倧倀取埗手段24)で埗られた前蚘埌フレヌム射圱デヌタの前蚘最倧倀、 前蚘加算手段 (310)で埗られた前蚘加算結果および前蚘特定手段 (29)で埗られ た前蚘亀差点情報のうち少なくずも 1぀を甚いお前蚘ブロックごずの氎平方向動きべ タトルの信頌性評䟡を行う、動きベクトル怜出装眮。
[10] 請求項 9蚘茉の動きベクトル怜出装眮においお、
前蚘怜出手段320)は、
前蚘埌フレヌム射圱デヌタの前蚘最倧倀を甚いお前蚘ブロックごずの氎平方向動 きベクトルの信頌性評䟡を行う堎合、
前蚘耇数のブロックのそれぞれにお 、お埗られた、前蚘埌フレヌム射圱デヌタの 前蚘最倧倀の䞭力 党ブロック䞭の最倧倀を求め、該党ブロック䞭の最倧倀に察し お、予め定めた比率以䞋の前蚘最倧倀を有する前蚘ブロックに぀いおは無効ブロッ クずし、該無効ブロック力も算出された前蚘ブロックごずの氎平方向動きベクトルは、前 蚘フレヌム画像党䜓の氎平方向動きベクトルの怜出には䜿甚しない、動きベクトル怜 出装眮。
[11] 請求項 9蚘茉の動きベクトル怜出装眮においお、
前蚘怜出手段320)は、
前蚘加算結果を甚いお前蚘ブロックごずの氎平方向動きベクトルの信頌性評䟡を 行う堎合、
前蚘耇数のブロックのそれぞれにおいお埗られた前蚘加算結果のピヌク倀の䞭か ら最倧ピヌク倀を求め、該最倧ピヌク倀が予め定めた第 1の所定倀以䞊である堎合 は、予め定めた第 2の所定倀以䞋の前蚘最倧倀を有する前蚘ブロックに぀いおは無 効ブロックずし、該無効ブロック力も算出された前蚘ブロックごずの氎平方向動きべタト ルは、前蚘フレヌム画像党䜓の氎平方向動きベクトルの怜出には䜿甚しない、動き ベクトル怜出装眮。
[12] 請求項 9蚘茉の動きベクトル怜出装眮においお、
前蚘怜出手段320)は、
前蚘亀差点情報を甚いお前蚘ブロックごずの氎平方向動きベクトルの信頌性評䟡 を行う堎合、前蚘亀差点情報のうち亀差点数の情報を䜿甚し、 前蚘耇数のブロックのそれぞれにおいお埗られた前蚘亀差点数のうち、予め定め た第 1の所定倀以䞋および予め定めた第 2の所定倀以䞊の前蚘亀差点数を有する 前蚘ブロックに぀いおは無効ブロックずし、該無効ブロック力も算出された前蚘ブロッ クごずの氎平方向動きベクトルは、前蚘フレヌム画像党䜓の氎平方向動きベクトルの 怜出には䜿甚しない、動きベクトル怜出装眮。
[13] 請求項 9蚘茉の動きベクトル怜出装眮においお、
前蚘怜出手段320)は、
前蚘亀差点情報を甚いお前蚘ブロックごずの氎平方向動きベクトルの信頌性評䟡 を行う堎合、前蚘亀差点情報のうち亀差点数の情報を䜿甚し、
前蚘耇数のブロックのそれぞれにおいお埗られた前蚘亀差点数の䞭から最倧倀を 求め、該最倧倀が予め定めた第 1の所定倀以䞊である堎合は、予め定めた第 2の所 定倀以䞋および予め定めた第 3の所定倀以䞊の前蚘亀差点数を有する前蚘ブロッ クに぀いおは無効ブロックずし、該無効ブロック力 算出された前蚘ブロックごずの氎 平方向動きベクトルは、前蚘フレヌム画像党䜓の氎平方向動きベクトルの怜出には 䜿甚しない、動きベクトル怜出装眮。
[14] 請求項 10ないし請求項 13の䜕れかに蚘茉の動きベクトル怜出装眮においお、 前蚘怜出手段320)は、
前蚘ブロックごずの氎平方向動きベクトルの信頌性評䟡によっお有効ブロックず刀断 された前蚘ブロック力 算出された前蚘ブロックごずの氎平方向動きベクトルに぀いお 分垃範囲を求め、該分垃範囲が予め定めた閟倀以䞊の堎合は、前蚘フレヌム画像 党䜓の氎平方向動きベクトルをれロずする、動きベクトル怜出装眮。
[15] 請求項 14蚘茉の動きベクトル怜出装眮においお、
前蚘怜出手段320)は、
前蚘前フレヌムの前蚘フレヌム画像党䜓の氎平方向動きベクトルを保存する前フ レヌム氎平方向動きベクトル保存手段を有し、
前蚘有効ブロックず刀断された前蚘ブロック力 算出された前蚘ブロックごずの氎平 方向動きベクトルのうち、前蚘前フレヌムの前蚘フレヌム画像党䜓の氎平方向動き ベクトルに最も近いものを、前蚘埌フレヌムの前蚘フレヌム画像党䜓の氎平方向動 きベクトルずする、動きベクトル怜出装眮。
時系列的に前埌の関係ずなる前フレヌムず埌フレヌムずに関するフレヌム画像間の 動きベクトルを怜出する動きベクトル怜出装眮であっお、
氎平ラむンの画玠走査を垂盎方向に順に繰り返すこずによっお読み出されるフレヌ ム画像に関しお、氎平方向に䞀定の分割幅を有しお耇数のブロックに分割されたブ ロックごずに氎平方向の゚ッゞを匷調する゚ッゞ匷調手段 (42)ず、
前蚘゚ッゞ匷調手段 (42)で゚ッゞが匷調された画像にっ 、お、前蚘ブロックごずに 氎平方向に射圱をずり、前蚘ブロックのそれぞれで 1垂盎ラむン分のデヌタ配列を有 する射圱デヌタを生成する射圱手段 (43)ず、
前蚘埌フレヌムに察しお前蚘射圱手段 (43)で埗られた埌フレヌム射圱デヌタの配 列芁玠においお最倧倀を求める最倧倀取埗手段 (45)ず、
前蚘前フレヌムに察しお前蚘射圱手段 (43)で埗られた前フレヌム射圱デヌタに関 しお前蚘デヌタ配列の芁玠順に配列芁玠の倀をグラフ化した波圢ず、配列芁玠の倀 が所定の䞀定倀ずなる盎線ずが亀差する各亀差点の配列芁玠の䜍眮を特定しお亀 差点情報ずしお出力する特定手段 (48)ず、
前蚘各亀差点の配列芁玠の䜍眮を䞭心ずした所定範囲のデヌタ配列を、前蚘埌フ レヌム射圱デヌタ力 抜出する抜出手段 (49)ず、
前蚘抜出手段 (49)で抜出された所定範囲のデヌタ配列それぞれに぀ 、お、前蚘 各亀差点の配列芁玠の䜍眮に察しお盞察䜍眮が同じ配列芁玠同士の倀を加算し、 埗られた加算結果に基づいお前蚘ブロックごずの垂盎方向動きベクトルを算出する加 算手段 (500)ず、
前蚘加算手段500)で算出された前蚘ブロックごずの垂盎方向動きベクトルに基づ き、フレヌム画像党䜓の垂盎方向動きベクトルを怜出する怜出手段510)ず、を備え 前蚘怜出手段510)は、
前蚘最倧倀取埗手段 (45)で埗られた前蚘埌フレヌム射圱デヌタの前蚘最倧倀、 前蚘加算手段 (500)で埗られた前蚘加算結果および前蚘特定手段 (48)で埗られ た前蚘亀差点情報のうち少なくずも 1぀を甚いお前蚘ブロックごずの垂盎方向動きべ タトルの信頌性評䟡を行う、動きベクトル怜出装眮。
[17] 請求項 16蚘茉の動きベクトル怜出装眮においお、
前蚘怜出手段510)は、
前蚘埌フレヌム射圱デヌタの前蚘最倧倀を甚いお前蚘ブロックごずの垂盎方向動 きベクトルの信頌性評䟡を行う堎合、
前蚘耇数のブロックのそれぞれにお 、お埗られた、前蚘埌フレヌム射圱デヌタの 前蚘最倧倀の䞭力 党ブロック䞭の最倧倀を求め、該党ブロック䞭の最倧倀に察し お、予め定めた比率以䞋の前蚘最倧倀を有する前蚘ブロックに぀いおは無効ブロッ クずし、該無効ブロック力 算出された前蚘ブロックごずの垂盎方向動きベクトルは、前 蚘フレヌム画像党䜓の垂盎方向動きベクトルの怜出には䜿甚しない、動きベクトル怜 出装眮。
[18] 請求項 16蚘茉の動きベクトル怜出装眮においお、
前蚘怜出手段510)は、
前蚘加算結果を甚いお前蚘ブロックごずの垂盎方向動きベクトルの信頌性評䟡を 行う堎合、
前蚘耇数のブロックのそれぞれにお 、お埗られた、前蚘埌フレヌム射圱デヌタの 前蚘最倧倀の䞭力 党ブロック䞭の最倧倀を求め、該党ブロック䞭の最倧倀に察し お、予め定めた比率以䞋の前蚘最倧倀を有する前蚘ブロックに぀いおは無効ブロッ クずし、該無効ブロック力 算出された前蚘ブロックごずの垂盎方向動きベクトルは、前 蚘フレヌム画像党䜓の垂盎方向動きベクトルの怜出には䜿甚しない、動きベクトル怜 出装眮。
[19] 請求項 16蚘茉の動きベクトル怜出装眮においお、
前蚘怜出手段510)は、
前蚘亀差点情報を甚いお前蚘ブロックごずの垂盎方向動きベクトルの信頌性評䟡 を行う堎合、前蚘亀差点情報のうち亀差点数の情報を䜿甚し、
前蚘耇数のブロックのそれぞれにおいお埗られた前蚘亀差点数のうち、予め定め た第 1の所定倀以䞋および予め定めた第 2の所定倀以䞊の前蚘亀差点数を有する 前蚘ブロックに぀いおは無効ブロックずし、該無効ブロック力も算出された前蚘ブロッ クごずの垂盎方向動きベクトルは、前蚘フレヌム画像党䜓の垂盎方向動きベクトルの 怜出には䜿甚しない、動きベクトル怜出装眮。
[20] 請求項 16蚘茉の動きベクトル怜出装眮においお、
前蚘怜出手段510)は、
前蚘亀差点情報を甚いお前蚘ブロックごずの垂盎方向動きベクトルの信頌性評䟡 を行う堎合、前蚘亀差点情報のうち亀差点数の情報を䜿甚し、
前蚘耇数のブロックのそれぞれにおいお埗られた前蚘亀差点数の䞭から最倧倀を 求め、該最倧倀が予め定めた第 1の所定倀以䞊である堎合は、予め定めた第 2の所 定倀以䞋および予め定めた第 3の所定倀以䞊の前蚘亀差点数を有する前蚘ブロッ クに぀いおは無効ブロックずし、該無効ブロック力 算出された前蚘ブロックごずの垂 盎方向動きベクトルは、前蚘フレヌム画像党䜓の垂盎方向動きベクトルの怜出には 䜿甚しない、動きベクトル怜出装眮。
[21] 請求項 17ないし請求項 20の䜕れかに蚘茉の動きベクトル怜出装眮においお、 前蚘怜出手段510)は、
前蚘ブロックごずの垂盎方向動きベクトルの信頌性評䟡によっお有効ブロックず刀断 された前蚘ブロック力 算出された前蚘ブロックごずの垂盎方向動きベクトルに぀いお 分垃範囲を求め、該分垃範囲が予め定めた閟倀以䞊の堎合は、前蚘フレヌム画像 党䜓の垂盎方向動きベクトルをれロずする、動きベクトル怜出装眮。
[22] 請求項 21蚘茉の動きベクトル怜出装眮においお、
前蚘怜出手段は、
前蚘前フレヌムの前蚘フレヌム画像党䜓の垂盎方向動きベクトルを保存する前フ レヌム垂盎方向動きベクトル保存手段を有し、
前蚘有効ブロックず刀断された前蚘ブロックから算出された前蚘ブロックごずの垂盎 方向動きベクトルのうち、前蚘前フレヌムの前蚘フレヌム画像党䜓の垂盎方向動き ベクトルに最も近いものを、前蚘埌フレヌムの前蚘フレヌム画像党䜓の垂盎方向動 きベクトルずする、動きベクトル怜出装眮。
[23] 請求項 1たたは請求項 9蚘茉の動きベクトル怜出装眮においお、
前蚘゚ッゞ匷調手段21、 22)は、 前蚘フレヌム画像を垂盎方向に分割しお埗られる耇数の画像領域のそれぞれを、 前蚘ブロックずしお蚭定する画像分割手段 (21)ず、
前蚘耇数のブロックのそれぞれに぀ 、お垂盎方向の゚ッゞを匷調する匷調手段2 2)ず、を有する、動きべ倖ル怜出装眮。
[24] 請求項 1たたは請求項 9蚘茉の動きベクトル怜出装眮においお、
前蚘゚ッゞ匷調手段21、 22)は、
前蚘フレヌム画像に぀いお垂盎方向の゚ッゞを匷調する匷調手段22)ず、 前蚘匷調手段22)で゚ッゞが匷調された前蚘フレヌム画像を垂盎方向に分割し お埗られる耇数の画像領域のそれぞれを、前蚘ブロックずしお蚭定する画像分割手 段 (21)ず、を有する、動きべ倖ル怜出装眮。
[25] 請求項 5たたは請求項 16に蚘茉の動きベクトル怜出装眮においお、
前蚘゚ッゞ匷調手段 (41, 42)は、
前蚘フレヌム画像を氎平方向に分割しお埗られる耇数の画像領域のそれぞれを、 前蚘ブロックずしお蚭定する画像分割手段 (41)ず、
前蚘耇数のブロックのそれぞれに぀ 、お氎平方向の゚ッゞを匷調する匷調手段 (4 2)ず、を有する、動きべ倖ル怜出装眮。
[26] 請求項 5たたは請求項 16に蚘茉の動きベクトル怜出装眮においお、
前蚘゚ッゞ匷調手段 (41, 42)は、
前蚘フレヌム画像に぀いお氎平方向の゚ッゞを匷調する匷調手段 (42)ず、 前蚘匷調手段 (42)で゚ッゞが匷調された前蚘フレヌム画像を氎平方向に分割し お埗られる耇数の画像領域のそれぞれを、前蚘ブロックずしお蚭定する画像分割手 段 (41)ずを、有する動きべ倖ル怜出装眮。
PCT/JP2007/052011 2006-08-24 2007-02-06 Moving vector detecting bdevice WO2008023466A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN2007800314952A CN101506845B (zh) 2006-08-24 2007-02-06 运劚矢量检测装眮
EP07708111A EP2061007A1 (en) 2006-08-24 2007-02-06 Moving vector detecting bdevice

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2006-227384 2006-08-24
JP2006227384A JP4027398B1 (ja) 2006-08-24 2006-08-24 動きベクトル怜出装眮
JP2006242343A JP4213739B2 (ja) 2006-09-07 2006-09-07 動きベクトル怜出装眮
JP2006-242343 2006-09-07

Publications (1)

Publication Number Publication Date
WO2008023466A1 true WO2008023466A1 (en) 2008-02-28

Family

ID=39106560

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2007/052011 WO2008023466A1 (en) 2006-08-24 2007-02-06 Moving vector detecting bdevice

Country Status (2)

Country Link
EP (1) EP2061007A1 (ja)
WO (1) WO2008023466A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010003094A (ja) * 2008-06-19 2010-01-07 Fujitsu Ltd 画像凊理装眮、画像凊理方法、及びプログラム
CN111292354A (zh) * 2020-01-22 2020-06-16 绎沃移劚通信有限公叞 误检测抑制方法及电子讟倇

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107274364B (zh) * 2017-06-06 2020-01-31 䞭科创蟟蜯件股仜有限公叞 䞀种囟像增区方法及装眮

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002279430A (ja) * 2001-03-14 2002-09-27 Lg Electronics Inc 動きベクトル怜出回路
JP2004343483A (ja) * 2003-05-16 2004-12-02 Acutelogic Corp 手振れ補正装眮および方法、手振れ怜出装眮
JP2006268413A (ja) * 2005-03-24 2006-10-05 Mitsubishi Electric Corp 画像動きベクトル怜出装眮

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002279430A (ja) * 2001-03-14 2002-09-27 Lg Electronics Inc 動きベクトル怜出回路
JP2004343483A (ja) * 2003-05-16 2004-12-02 Acutelogic Corp 手振れ補正装眮および方法、手振れ怜出装眮
JP2006268413A (ja) * 2005-03-24 2006-10-05 Mitsubishi Electric Corp 画像動きベクトル怜出装眮

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010003094A (ja) * 2008-06-19 2010-01-07 Fujitsu Ltd 画像凊理装眮、画像凊理方法、及びプログラム
CN111292354A (zh) * 2020-01-22 2020-06-16 绎沃移劚通信有限公叞 误检测抑制方法及电子讟倇

Also Published As

Publication number Publication date
EP2061007A1 (en) 2009-05-20

Similar Documents

Publication Publication Date Title
US7149355B2 (en) Image processing apparatus, image processing method, image processing program, and computer-readable record medium storing image processing program
JP4339925B2 (ja) 文曞画像凊理方法、文曞画像凊理装眮、文曞画像凊理プログラムおよび蚘憶媒䜓
US20040036924A1 (en) Image processing apparatus, image processing method, and storage medium of image processing program
US7474354B2 (en) Image angle detection device and scan line interpolation device having the same
JP2013045178A (ja) 画像凊理装眮、画像凊理方法及びプログラム
US20050152604A1 (en) Template matching method and target image area extraction apparatus
US20100026903A1 (en) Motion vector detection device, motion vector detection method, and program
JP2996657B2 (ja) 階調パタヌン敎合による動き怜出装眮及びその方法
US5296940A (en) Image processing method and apparatus for converting gray-scale images into binary images
CN108510425B (zh) 基于ippvo和䌘化mhm的可逆氎印方法
US20020047907A1 (en) Image processing apparatus and storage medium for storing image processing program
WO2008023466A1 (en) Moving vector detecting bdevice
KR100943595B1 (ko) 영상신혞의 랔러링 판닚장치 및 방법
JP4027398B1 (ja) 動きベクトル怜出装眮
JP4213739B2 (ja) 動きベクトル怜出装眮
US20040052428A1 (en) Image processing system
JP4083782B1 (ja) 動きベクトル怜出装眮
CN105611214A (zh) 䞀种基于倚方向检测的线性插倌场内去隔行方法
JP4261922B2 (ja) 文曞画像凊理方法、文曞画像凊理装眮、文曞画像凊理プログラムおよび蚘憶媒䜓
JP4313820B2 (ja) 動きベクトル怜出装眮
JP5103436B2 (ja) 画像凊理装眮、画像凊理方法及び画像凊理プログラム
JPH10124665A (ja) 画像凊理方法および画像凊理装眮
WO2008065764A1 (en) Motion vector detecting device
JP2797655B2 (ja) 画像凊理方法およびその装眮
JP2007287024A (ja) 領域怜出装眮

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 200780031495.2

Country of ref document: CN

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

Ref document number: 07708111

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

NENP Non-entry into the national phase

Ref country code: RU

WWE Wipo information: entry into national phase

Ref document number: 2007708111

Country of ref document: EP