US7061980B2 - Method of describing object region data, apparatus for generating object region data, video processing method, and video processing apparatus - Google Patents
Method of describing object region data, apparatus for generating object region data, video processing method, and video processing apparatus Download PDFInfo
- Publication number
- US7061980B2 US7061980B2 US10/319,554 US31955402A US7061980B2 US 7061980 B2 US7061980 B2 US 7061980B2 US 31955402 A US31955402 A US 31955402A US 7061980 B2 US7061980 B2 US 7061980B2
- Authority
- US
- United States
- Prior art keywords
- object region
- data
- frame
- region
- function
- Prior art date
- Legal status (The legal status 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 status listed.)
- Expired - Lifetime, expires
Links
- 238000000034 method Methods 0.000 title abstract description 140
- 238000012545 processing Methods 0.000 title description 121
- 238000003672 processing method Methods 0.000 title description 6
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 claims description 8
- 238000013519 translation Methods 0.000 claims description 7
- 230000009467 reduction Effects 0.000 claims description 6
- 230000008859 change Effects 0.000 claims description 5
- 238000006243 chemical reaction Methods 0.000 abstract description 164
- 230000006870 function Effects 0.000 description 105
- 230000003287 optical effect Effects 0.000 description 33
- 230000008569 process Effects 0.000 description 19
- 239000013598 vector Substances 0.000 description 13
- 238000013500 data storage Methods 0.000 description 10
- 238000004364 calculation method Methods 0.000 description 9
- 230000005484 gravity Effects 0.000 description 7
- 230000008901 benefit Effects 0.000 description 6
- 238000012886 linear function Methods 0.000 description 6
- 238000005070 sampling Methods 0.000 description 6
- 241000270295 Serpentes Species 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000010187 selection method Methods 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 241001465754 Metazoa Species 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000010191 image analysis Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 235000021174 kaiseki Nutrition 0.000 description 1
- 239000007788 liquid Substances 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 210000003660 reticulum Anatomy 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/001—Model-based coding, e.g. wire frame
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/20—Contour coding, e.g. using detection of edges
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/20—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video object coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/537—Motion estimation other than block-based
Definitions
- the present invention relates to an object region data describing method for describing information on an object region in a video, an object region data generating apparatus for generating information on an object region in a video, and a video processor for utilizing and controlling, and searching and retrieving an object in a video as well as a video processing method.
- an object region is expressed as a bit map for each frame, information is compressed within or between the frames and the shape and texture of the object are separately coded.
- This object coding is, however, intended to express an object region having an arbitrary shape and texture in a compact fashion. Due to this, the object thus coded is subjected to inter-frame compression, making it difficult to fetch information on the object region for each frame. Further, if only positional information on the region in the video is to be expressed, this method disadvantageously causes over-specification and takes a lot of processing time for a codec.
- an object of the present invention to provide an object region data describing method and an object region data generating apparatus capable of describing a desired object region with a small quantity of data and facilitating generating the object region and handling the data on the object region.
- a related object of the present invention is to provide an object region data describing method, an object region data generating apparatus, a video processing method and a video processing apparatus which allow a user to easily determine that an object in video data is indicated by a user.
- an object region data description method for describing information on a region of an arbitrary object in video data over a plurality of continuous frames, characterized by comprising expressing a region of a target object in the video data by a conversion parameter indicating region conversion from a predetermined reference object region into the region of the target object, and describing information on the region of the target object based on the conversion parameter and information on the predetermined reference object region.
- the present invention is an object region data description method for describing information on a region of an arbitrary object in video data over a plurality of continuous frames, characterized by comprising expressing a region of a target object in the video data by a conversion parameter indicating region conversion from a predetermined reference object region into the region of the target object, approximating a trajectory of the conversion parameter to a predetermined approximate function, and describing information on the region of the target object based on an approximate function parameter for specifying the predetermined approximate function and information on the reference object region.
- the information on the region of the target object is described by describing the conversion parameter as it is.
- the reference object region is expressed by a bit map.
- the reference object region is expressed by a representative point of an approximate figure of the object region.
- the approximate figure is a rectangle or an ellipse without gradient, a rectangle or an ellipse with gradient or a polygon.
- types of the region conversion and the conversion parameter are selected according to a type of the approximate figure.
- representative points of the approximate figure are ordered in advance.
- the reference object region is selected so that an error between an actual region of the target object and a predicted object region obtained by the conversion parameter may be a minimum.
- a region of the target object in a central frame in a plurality of continuous frames in which the region of the target object exists is selected as the reference object region.
- the conversion parameter for a region of the target object in a frame following the certain frame is obtained; and if the error between the actual region of the target object and the predicted object region obtained by the conversion parameter exceeds a preset threshold value, the reference object region is updated to a new reference object region, the new reference object region is a region of the target object in a new frame.
- a processing for obtaining the conversion parameter for regions of the target object in frames continuous to the frame positioned at the center is executed based on the reference object region; and the processing is executed repeatedly to a plurality of continuous frames in a range in which an error between an actual region of the target object and a predicted object region obtained by the conversion parameter exceeds a preset threshold value.
- the region of the target object is divided into a plurality of regions; and information on the region of the target object is described by expressing the plurality of regions obtained by division by the conversion parameter independently of one another.
- the present invention is a computer readable recording medium storing object region data including information on a single or a plurality of object regions described by the above object region data description method based on the video.
- the present invention is a video processing method for determining whether a specific object is specified on an image screen displaying video data formed of a plurality of continuous frames, characterized by comprising acquiring information on a reference object region corresponding to the object region existing in the frames of the video data, and information on a conversion parameter indicating region conversion from the reference object region into the object region, when an arbitrary position is specified on the image screen displaying the video data; inversely converting the specified position into a position in a frame in which the reference object region exists by the conversion parameter; and determining whether the position obtained by inverse conversion exists inside of the reference object region, and determining whether the object has been specified if it is determined that the position exists inside of the reference object region.
- the reference object region is expressed by a representative point
- the reference object region is expanded on a bit map and it is determined whether the position obtained by the inverse conversion exists inside of the reference object region expanded on the bit map.
- related information related to the object is presented.
- the present invention is an object region data generating apparatus for describing information on an arbitrary object in video data over a plurality of continuous frames, characterized by comprising a first processor configured to express a region of a target object in the video data by a conversion parameter indicating region conversion from a predetermined reference object region into the region of the target object, and a second processor configured to express information on the region of the object based on the conversion parameter and information on the reference object region.
- the present invention is an object region data generating apparatus for describing information on an arbitrary object in video data over a plurality of continuous frames, characterized by comprising a first processor configured to express a region of a target object in the video data by a conversion parameter indicating region conversion from a predetermined reference object region into the region of the target object, a second processor configured to approximates a trajectory of arrangement the conversion parameter along progression of the frames by a predetermined approximate function, wherein information on the region of the target object is described by an approximate function parameter for specifying the predetermined approximate function and information on the reference object region.
- the present invention is a video processing apparatus for determining whether a specific object is specified on an image screen displaying video data formed of a plurality of continuous frames, characterized by comprising a first processor configured to acquire information on a reference object region corresponding to an object region existing in the frames of the video data, and information on a conversion parameter indicating region conversion from the reference object region into the object region, when an arbitrary position is specified on the image screen displaying the video data; a second processor configured to inversely converting the specified position into a position in a frame in which the reference object region exists by the conversion parameter; and a third processor configured to determine whether the position obtained by inverse conversion exists inside of the reference object region, and for determining whether the object has been specified if it is determined that the position exists inside of the reference object region.
- present invention directed to the apparatus is also realized as an invention directed to the method, and that the present invention directed to the method is also realized as an invention directed to the apparatus.
- the present invention directed to either the apparatus or the method can be realized as a computer readable recording medium which stores a computer program for allowing a computer to execute predetermined procedure corresponding to the invention (or for allowing the computer to function as predetermined processors corresponding to the invention or to realize predetermined functions corresponding to the invention).
- the region existing continuously or intermittently in the frames and the region information on an object to be expressed are described by an approximate figure or a bit map for each frame, and at least one object region used for reference is selected in an object region existing time-interval.
- Conversion parameters for converting the reference object region into other object regions are calculated, the conversion parameters are aligned in the order of continuous frames and a trajectory of the parameters is obtained. Alternatively, this trajectory may be expressed with a small quantity of information by an approximate function.
- an object region having time space information is expressed by, for example, information on the reference object region, the approximate function of the conversion parameters and the object region existing time-interval. Further, if information on an object region in an arbitrary frame is obtained, for example, conversion parameters are obtained from the approximate function and a predicted object region modified from the object region by the conversion parameters is obtained from the object region to thereby set the region as an object region to be obtained.
- inverse conversion is executed while using the obtained conversion parameters, and the positional information on the mouse pointer is converted into coordinates in a certain frame in the reference object region. Then, it is determined whether or not the position is inside or outside of the reference object region and whether the position is in the object region of the indicated frame. In this way, it is possible to easily determine whether the point is inside or outside of an object region, thereby making it possible to realize a hypermedia application having good operability.
- the shape and positional information on an object which is moving in a video and changing its shape can be described with small capacity and information on the object region for each frame can be obtained at high speed.
- a mouse pointer such as a hypermedia application
- whether or not the position of the mouse pointer is included in the region of the object can be determined at high speed and operation environment of excellent interactive characteristics can be thereby provided.
- the movement and size of an object region can be easily grasped, and the present invention can be applied to an application for a search and retrieval system or supervising system.
- FIG. 1 shows an example of the constitution of an object region data generating apparatus according to a first embodiment of the present invention
- FIG. 2 is a flow chart showing one example of processing procedure in the first embodiment
- FIG. 3 is an explanatory view for one example of a method of calculating an object region optical flow
- FIG. 4 is an explanatory view for another example of the method of calculating an object region optical flow
- FIG. 5 is an explanatory view for an example of expressing a conversion parameter by an approximate time function
- FIG. 6 shows one example of an object region data description format if the reference object region is expressed by a bit map
- FIG. 7 is a flow chart showing an example of processing procedure in a second embodiment
- FIG. 8 shows an example of the constitution of the object region data generating apparatus in a third embodiment
- FIG. 9 is a flow chart showing another example of processing procedure in the third embodiment.
- FIG. 10 is an explanatory view for an example of approximating the object region by an ellipse
- FIG. 11 is an explanatory view for an example of obtaining the representative points of the approximate ellipse of the object region
- FIG. 12 is an explanatory view for an example of representative points if the approximate figure is a parallelogram
- FIG. 13 is an explanatory view for an example of representative points if the approximate figure is a polygon
- FIGS. 14A , 14 B, 14 C and 14 D show examples of the approximate figures of the object region and representative points
- FIG. 15 shows an example in which an object region having a vacant space is expressed by approximate figures
- FIG. 16 is an explanatory view for a method of making the representative points of an approximate figures of object regions correspond to each other;
- FIG. 17 shows the relationship between the types of approximate figures and conversion models for which conversion parameters can be obtained
- FIG. 18 shows one example of a description format for the object region data if the reference object region is approximated by a figure
- FIG. 19 shows a state in which an object is approximated by a rectangle
- FIG. 20 shows a state in which an oblong object with gradient is approximated by a rectangle without gradient
- FIGS. 21A and 21B show states in which an object is approximated by a rectangle with gradient according to the gradient of the object
- FIG. 22 is a flow chart showing one example of processing procedure for obtaining an approximate rectangle
- FIG. 23 is an explanatory view for a method of obtaining an approximate ellipse from an appropriate rectangle
- FIG. 24 is a flow chart showing one example of processing procedure for obtaining an approximate ellipse from an appropriate rectangle
- FIG. 25 shows one example of the data structure of parameter information in object region data in a fourth embodiment
- FIG. 26 shows one example of the data structure of parameter information where an approximate function is used
- FIG. 27 shows another example of the data structure of object region description information
- FIG. 28 shows one example of the correspondence among function ID, type of function, function parameter, and limit condition
- FIG. 29 is a diagram showing a specific example of the structure of data about a trajecory of representative points
- FIG. 30 is a flow chart showing a specific example of function approximation of the representative points trajecory
- FIG. 31 shows one example of the description format of object region data including sampling information
- FIG. 32 is a flow chart showing one example of processing procedure for selecting a reference object region so as to minimize an error in a fifth embodiment
- FIG. 33 is an explanatory view for one example of processing procedure while a central frame in the object region existing time-interval is set as a reference object region;
- FIG. 34 is a flow chart showing one example of processing procedure while the first frame in the reference object region interval is set as a reference object region;
- FIG. 35 is an explanatory view for one example of processing procedure while the first frame in the reference object region interval is set as a reference object region;
- FIG. 36 is a flow chart showing one example of processing procedure while a central frame in the reference object region interval is set as a reference object region;
- FIGS. 37A and 37B are explanatory views for one example of processing procedure while a central frame in the reference object region interval is set as a reference object region;
- FIG. 38 is an explanatory view for a state in which one object is divided into regions having similar movement by an optical flow in a sixth embodiment
- FIG. 39 shows one example of an object region data description format for describing one object in a plurality of regions
- FIG. 40 shows an example of the constitution of a video processing apparatus in an eighth embodiment
- FIG. 41 is an explanatory view for a method of determining whether a specified point is inside or outside of the object region
- FIG. 42 is a flow chart showing one example of processing procedure for determining whether a specified point is inside or outside of the object region
- FIG. 43 is a flow chart showing one example of an inside/outside determination method when the reference object region is expressed by a bit map
- FIG. 44 is a flow chart showing one example of an inside/outside determination method when the reference object region is expressed by a polygon
- FIG. 45 is an explanatory view for an inside/outside determination method with respect to a polygon and a point
- FIG. 46 is an explanatory view for a method of expanding the reference object region expressed by a polygon to bit map expression.
- FIG. 47 shows an example of displaying hypermedia contents utilizing object region data.
- FIG. 1 shows an example of the constitution of an object region data generating apparatus according to the first embodiment of the present invention.
- this object region data generating apparatus is comprised of a video data storage section 2 , an object region processing section 4 , a conversion parameter calculation section 6 , a function approximation section 8 , and an object region data storage section 10 .
- a graphical user interface for displaying video (moving image) data in, for example, units of frames and for receiving the input of a user's command, is employed (GUI is not shown in FIG. 1 ).
- An object region is a bunch of regions in a video and any matters such as a person, an animal, a plant, an automobile, a building, river, the sun or a cloud (or part of them, e.g., the head of the person, the bon-net of the automobile or the entrance of the building), which can be grasped as an object can be handled.
- the video data storage section 2 stores video data.
- the section 2 is constituted by, for example, a hard disk device, an optical disk device or a semiconductor memory. It is noted that the video data storage section 2 is not necessarily located at the same site as that of the other sections and may be located remotely through the Internet or the like.
- the object region processing section 4 executes a processing for obtaining an object region in a frame serving as a reference (reference object region) and an object region in a frame serving as a target (target object region).
- the conversion parameter calculation section 6 executes a processing for calculating the conversion parameters of the target object region based on the reference object region.
- the function approximation section 8 executes a processing for approximating a time series trajectory by a time function for each conversion parameter of the object region. As will be described later, if the conversion parameters themselves are described, this function approximation section 8 is not necessary.
- the object region data storage section 10 stores object region data including data for expressing a functional formula approximating the time series trajectory for each conversion parameter.
- the reference object region is updated, a section relating to the update processing is not shown in FIG. 1 .
- the video data storage section 2 and the object region data storage section 10 may be constituted by individual storage devices or media. Alternatively, all of or part of these sections may be constituted by a common storage device or medium.
- This object region data generating apparatus can be also realized by executing a software on a computer.
- FIG. 2 shows one example of the processing procedure of the object region data generating apparatus according to this embodiment.
- step S 101 object regions in all frame in a video are inputted (while assuming that object regions are known). If the object regions are manually input through GUI, the contour of an object serving as a processing target in the video is specified by a pointing device such as a mouse or a touch panel. The interior of the contour of the object inputted manually may be set as an object region. Alternatively, after fitting an inputted contour to the contour line of the object in an image by means of a technique using a dynamic outline model referred to as Snakes (see, for example, M. Kass, A. Witkin and D. Terzopolus, “Snakes: Active contour models”, Processings of the 1st International Conference on Computer Vision, pp. 259–268, 1987), the interior of the contour thus fitted may be set as an object region. Instead of manually inputting the contour, object regions may be obtained automatically by executing an image processing. If data relating to the object regions are already present, it is possible to input such data.
- a dynamic outline model referred to as Snakes
- At least one of these object regions is registered as a reference object region.
- a method including generating and storing a binary bit map on which “1” corresponds to the interior of each object region and “0” corresponds to the outside of the region.
- a frame including the reference object region is registered as a reference frame.
- step S 102 a conversion parameter for converting the reference object region into an object region in one frame serving as a processing target (to be referred to as “target object region” hereinafter) is calculated.
- This processing can be realized by a combination of, for example, a processing for calculating an optical flow in the target object region and a processing for converting the optical flow into the conversion parameter.
- the processing for calculating an optical flow in the target object region is to calculate the movement (optical flow) of each pixel (or a block formed of a plurality of pixels) in the object region from the reference frame to a present frame.
- FIG. 3 shows the schematic of a processing example for obtaining an optical flow in the object region in each frame.
- reference symbol 201 denotes a reference frame
- 202 denotes the next frame to the reference frame
- 203 denotes the next frame to the frame 202 .
- Reference symbols 204 , 205 and 206 denote object regions in the respective frames.
- Reference symbol 207 denotes the optical flow of the object region from the frame 201 to the frame 202 .
- Reference symbol 208 denotes the optical flow of the object region from the frame 201 to the frame 203 .
- the optical flow obtaining method can directly associate the reference object region with an object region in an arbitrary frame. This facilitates procedure for calculating an object region in an arbitrary frame and for determining whether a specified coordinates indicate the interior or the exterior of the object.
- each pixel or each block formed of a plurality of pixels in the object region from the reference frame to the current frame is obtained.
- the optical flow of each pixel (or each block formed of a plurality of pixels) in the object region from one frame before the current frame and the current frame may be obtained.
- FIG. 4 shows the schematic of a processing example in the latter case.
- reference symbol 301 denotes a reference frame
- 302 denotes the next frame to the reference frame
- 303 denotes the next frame to the frame 302 .
- Reference symbols 304 , 305 and 306 denote object regions in the respective frames.
- Reference symbol 307 denotes the optical flow of the object region from the frames 301 to 302 .
- Reference symbol 308 denotes the optical flow of the object region from the frame 302 to 303 .
- a processing for calculating a conversion parameter from an optical flow is executed. It is noted that a conversion parameter to be obtained varies according to conversion models which the parameters are based on.
- the mathematical formula (1) corresponds to the enlargement and reduction model
- the mathematical formula (2) corresponds to the rotation model
- the mathematical formula (3) corresponds to the parallel translation model
- the mathematical formula (4) corresponds to the 4-parameter conversion model
- the mathematical formula (5) corresponds to the Affine conversion model
- the mathematical formula (6) corresponds to the projection conversion model
- the mathematical formula (7) corresponds to the parabolic conversion model.
- (x, y) denotes coordinates in the reference object region
- (x′, y′) denotes the coordinates of the corresponding point of the object in the target object region.
- it is assumed that the relationship between corresponding points in the two frames can be expressed using parameters a 0 to a 11 as shown in the formulas. Needless to say, a parametric model other than the above-described models may be prepared.
- a method of least squares can be employed. This method is to determine the conversion parameter so that the sum of the squares of an error generated when a combination of (x, y) and (x′, y′) obtained by optical flow are substituted into the conversion model mathematical formula may become a minimum. This is an old, conventional method and can be easily executed by matrix operation.
- step S 103 the calculated conversion parameter of the object region is converted to (approximated by) a time function.
- the time interval here is one including the frames for which an optical flow is calculated using the same reference object region.
- f i (t) may be a polynomial, a Spline function, a constant or the like.
- FIG. 5 shows a state in which a certain conversion parameter a i calculated from the optical flow is expressed by a function.
- reference symbol 401 denotes a time interval in which a function is to be obtained
- 402 denotes a value of a i calculated from the optical flow
- parameter a i by a function is that the quantity of data for describing object regions can be reduced. If a polynomial of second degree or lower is used as a function, for example, three real numbers suffice to describe all parameter values in a certain time interval since this function can be expressed by three real numbers.
- the conversion parameter a i is determined so that the error between the values of a i in the conversion target time interval and the values calculated by the function f i (t) may become small.
- the parameter can be easily calculated.
- This processing for obtaining an approximate function may be executed every time parameter values relating to the object region in each frame are obtained (e.g., a method of executing approximation and obtaining an approximate error every time parameter values in each frame are obtained, and appropriately dividing an approximate interval so that the approximate error may fall within a certain range).
- this processing may be executed simultaneously for all frames after the reference object region is updated and a reference frame interval is decided.
- step S 103 The processing procedure of step S 103 will be described in detail later.
- step S 104 it is determined whether or not it is necessary to update the reference object region.
- an object region in an arbitrary frame is expressed by the reference object region in the reference frame and the conversion parameter of the reference object region.
- an object region to be expressed differ too greatly in shape from the reference object region, a shape similar to the object region to be expressed cannot be obtained even by moving/deforming the reference object region by the conversion parameter. In that case, it is effective to change the reference object region to an object region in another frame (to update the reference object region). In this embodiment, therefore, it is determined whether or not such a change is necessary in step S 104 .
- the predicted object region means an object region in a certain frame which is calculated from the reference object region by using the conversion parameter.
- a ratio of the area of a common portion to both regions to the area of a part which is not common can be used.
- step S 105 if it is determined at step S 104 that it is necessary to update the reference object region, a reference object region update processing is executed.
- This processing is basically the same as the processing executed in step S 101 . That is to say, in the processing in step S 105 , the processing target frame for which the conversion parameter is calculated in step S 102 is registered as a reference frame, and a binary bit map expressing the reference object region are generated. Further, an object region in the reference frame is registered as a reference object region.
- step S 106 it is determined whether or not a processing for describing the object regions in the video is ended. This determination is based on, for example, whether or not a current object region is at the final frame of the video, whether or not a current object region is at the final frame of an object region existing time-interval, whether or not a user indicates the end of the description processing or the like.
- the processings from steps S 102 to S 104 or S 105 are repeatedly executed for each frame until it is determined that the description processing is ended in step S 106 .
- step S 107 information on the description of the object region (parameter of the function approximating conversion parameter) calculated by the preceding processings is recorded according to a predetermined description format.
- the information is recorded by the object region data storage section 10 such as, for example, a semiconductor memory inside or outside of a computer, a magnetic tape, a magnetic disk or an optical disk.
- FIG. 6 shows one example of an object region description format with respect to one object region in this embodiment.
- reference symbol 501 denotes an object ID which is identification information (e.g., number or symbol) allotted to and peculiar to an object.
- Reference symbol 502 denotes the number of constant reference object region time-intervals which is the number of frame intervals having the same reference object region (N in FIG. 6 ). This number N is also equal to the number of reference frames.
- Reference symbols 503 and 504 denote a start time and an end time of object region existing time-intervals, respectively. Each time is described by time itself or frame number. The length of the object region existing time-interval (a subtraction value of time or frame number) may be used instead of the end time.
- Reference symbol 505 denotes object region description information.
- the object region description information 505 is described for each reference object region interval, i.e., by the number of the constant reference object region time-intervals (N in the example of FIG. 6 ).
- each object region data description information is indicated by reference symbols 506 to 510 shown in FIG. 6 .
- the reference symbols 506 and 507 denote a start time and an end time of the reference object region interval, respectively. Each time is described by a time itself or a frame number. The length of the reference object region interval can be used instead of the end time.
- the reference symbol 508 denotes a conversion model ID. This is intended to specify which model, such as the enlargement and reduction model, the Affine conversion model and the parabolic conversion model, is used to describe the object region.
- Reference symbol 511 denotes the coordinates of an origin to determine where the coordinates of the origin of the conversion model is positioned in an image.
- the origin coordinate data can be omitted if such a rule as to set the position of the center of gravity of the reference object regions to be constantly at an origin, is predetermined.
- the reference symbol 509 denotes reference object region data to specify a reference object region.
- the reference object region data include the time of the reference frame (or frame number), bit map data representing the reference object regions (or a pointer to the bit map data). It is preferable that the bit map data is compressed and then stored since the data size is large unless compressed.
- the reference symbol 510 denotes conversion parameter information.
- the conversion parameter information are described by the number of parameters (M parameters in the example of FIG. 6 ) set by a conversion model (conversion model ID).
- the conversion parameters include an arrangement of parameter values in each frame, information for specifying an approximate function of the parameters (coefficient values) and the like. The conversion parameter information will be described later in detail.
- the object regions changing spatially and/or temporally in the video can be recorded, as simple description data.
- the reference frame is the first frame in a constant reference object interval.
- the reference frame (and reference object region) can be arbitrarily selected. Other reference object region selection methods will be described later (in the fifth embodiment) in detail.
- the second embodiment is basically the same as the first embodiment. Description will be given hereinafter, while focusing on only the differences of the second embodiment from the first embodiment.
- the example of the constitution of an object region data generating apparatus in the second embodiment is the same as that in the first embodiment ( FIG. 1 ).
- FIG. 7 shows one example of the processing procedure of the object region data generating apparatus in this embodiment.
- step S 201 only an object region in the first frame in a frame interval in which object regions exist, is inputted through the GUI.
- the first frame is registered as a reference frame.
- step S 202 a processing for calculating the object regions throughout the frame interval in which object regions exist, is executed.
- Snakes can be utilized.
- step S 203 a conversion parameter for converting a reference object region into an object region in a processing target frame (target object region) is calculated as in the case of step S 102 shown in FIG. 2 .
- This processing can be realized by a processing for obtaining an optical flow and a processing for estimating the conversion parameter from the optical flow as in the case of step S 102 shown in FIG. 2 .
- the conversion parameter is calculated by the shape of the object region.
- the target object region is first expressed by a binary bit map.
- blocks are closely arranged on the contour portion of the bit map in the reference object region and moving vectors of the target object region to the bit map are calculated by template matching for each block.
- the moving vectors thus obtained are used instead of the optical flow, thereby calculating the conversion parameter.
- steps S 204 to S 208 are the same as those in steps S 103 to S 107 described in the first embodiment.
- One example of a description format for object region data in this embodiment is the same as that in the first embodiment ( FIG. 6 ).
- the object region is expressed by the bit map, and the conversion parameter for converting the reference object region into an object region in the processing target frame (target object region) is calculated in the first and second embodiments.
- the third embodiment by contrast, an object region is approximated by an approximate figure and a conversion parameter for converting the respective representative points of the approximate figure of the reference object region into the corresponding representative points of an approximate figure of an object region in a processing target frame (target object region) are calculated.
- the third embodiment is the same as the first and second embodiments except for the parts corresponding to the above difference. Accordingly, description will be given hereinafter while focusing on the difference of the third embodiment from the first and second embodiments.
- FIG. 8 shows an example of the constitution of an object region data generating apparatus in this embodiment.
- this object region data generating apparatus is comprised of the video data storage section 2 , object region processing section 4 , a figure approximation section 5 , the conversion parameter processing section 7 , function approximation section 8 , and object region data storage section 10 .
- a GUI for displaying video (moving image) data in, for example, units of frames and for receiving the input of a user's command and the like is employed (GUI is not shown in FIG. 8 ).
- the figure approximation section 5 executes a processing for approximating an object region by an approximate figure and obtaining the representative points of the approximate figure.
- the conversion parameter calculation section 6 calculates conversion parameters for converting the representative points of the approximate figure of a reference object region in a reference frame serving as a reference into the representative points of the approximate figure of a target object region in a target frame.
- the function approximation section 8 approximates the time series trajectory of each of the conversion parameters for the representative points of the approximate figure of the object region to a time function. As in the case of the first and second embodiments, this function approximation section 8 is not necessary if the conversion parameters themselves are described.
- this object region data generating apparatus can be realized by executing a software on a computer.
- FIG. 9 shows one example of processing procedure for the object region data generating apparatus in this embodiment.
- a step S 301 is the same as step S 101 in FIG. 2 or steps S 201 and S 202 in FIG. 7 .
- object regions are approximated by preset figures throughout the interval in which object regions exist.
- the processing for calculating the object region can be executed in the same manner as that of step S 202 in FIG. 7 .
- an approximate region as small as possible to surround the object region is found.
- various figures such as a rectangle (a square, a rectangle), a parallelogram with or without gradient, an ellipse (including a circle) and a polygon with or without gradient, can be employed.
- various methods such as a method of approximating a region by a circumscribed figure of the region, a method of approximating a region by an inscribed figure of the region, a method of setting the center of gravity of the region to the center of gravity of an approximate figure, a method of making the areas of the region and the approximate figure equal and a method of minimizing the area of a portion on which the region and an approximate figure do not overlap each other, may be employed.
- the type of a figure can be specified by a user for each target object.
- the type of a figure can be automatically selected according to the shape or the like of the object for each target object.
- the processing for obtaining the approximate figure of the object region may be executed for each frame or executed by object regions in several frames before and after the target frame.
- the changes of the size and position of the approximate figure are smoothed among several frames, thereby making it possible to smooth the movement or deformation of the approximate figure or to make the extraction error of the object region inconspicuous.
- the size of the approximate figure may vary according to the frame.
- the approximate figure of the object region is obtained, a processing for extracting representative points expressing this approximate figure is executed. Which points are used as representative points depends on which type of an approximate figure is used. If the approximate figure is, for example, a rectangle, four or three vertexes may be set at representative points. If the approximate figure is a circle, the center and one circumferential point or both end points of the diameter may be used as representative points. Further, if the approximate figure is an ellipse, the vertexes of the circumscribed rectangle of the ellipse, or two focuses and one point on the ellipse (e.g., one point on the short axis of the ellipse) may be used as representative points. If the approximate figure is an arbitrary closed polygon, it is necessary to use the respective vertexes of the polygon as representative points.
- the representative points are extracted in units of frames every time an approximate figure for one frame is obtained.
- the respective representative points are expressed by a horizontal coordinate x and a vertical coordinate y.
- FIG. 10 shows one example of a method of obtaining an approximate ellipse if the object region is expressed by a parallelogram.
- Points A, B, C and D shown in FIG. 10 are the respective vertexes of the parallelogram which is the object region.
- a calculation is first made to determine which is longer, side AB and side BC. Thereafter, a minimum rectangle having the longer side and an opposite side as part of the sides thereof is obtained.
- a rectangle having four vertexes of points A, B′, C and D′ is obtained.
- an approximate ellipse is a circumscribed ellipse which is analogous to the inscribed ellipse of this rectangle and which passes the points A, B′, C and D′.
- the focuses of the ellipse can be easily obtained from two points on the axis and the circumscribed rectangle of the ellipse.
- the representative points F, G, and H of the ellipse are determined. If these points are coupled with those of an ellipse taken out in another frame, ambiguity occurs. That is, there are two combinations to couple the two extracted focuses with those in one frame before this frame. Further, since there are two intersections between the shorter axis and the ellipse, it is impossible to know which intersection corresponds to one extracted point on the ellipse. Considering this, a determination method will be described.
- Fp is made to correspond to F and Gp is made to correspond to G. If the latter is smaller, on the other hand, Fp is made to correspond to G and Gp is made to correspond to F.
- Hp intersection between a shorter axis and an ellipse in one preceding frame
- H′ intersections between the shorter axis and the ellipse in a current frame
- Which to select as a point corresponding to Hp, H or H′, is determined by calculating the following two distances: E ( Hp ⁇ ( Gp+Fp )/2 , H ⁇ ( F+G )/2) and E ( Hp ⁇ ( Gp+Fp )/2 , H′ ⁇ ( F+G )/2).
- intersection H is selected, and if not, the intersection H′ is selected. It is noted that the intersection H between the shorter axis and the ellipse in the first frame may be selected from these two intersections.
- FIG. 12 is a view for explaining representative points if a parallelogram is used as an approximate figure.
- Points A, B, C and D are the vertexes of the parallelogram. If three points out of the four points are determined, the remaining one point is determined unconditionally. Thus, it suffices to use three vertexes among the four vertexes as representative points. In the example of FIG. 12 , the three points of A, B and C are representative points.
- FIG. 13 is a view for explaining representative points if a polygon is used as an approximate figure.
- the order of vertexes are set along an outer circumference.
- the polygon since the polygon has ten vertexes, all of the vertexes from N 1 to N 10 are representative points. In this case, the number of vertexes may be reduced by only the vertexes having an interior angle of 180 degree or less as representative points.
- FIGS. 14A to 14D show examples of the representative pints of several types of figures.
- FIG. 14A shows a rectangle
- FIG. 14B shows an ellipse
- FIG. 14C shows a parallelogram
- FIG. 14D shows a polygon.
- black circles denote representative points.
- the representative points of the approximate figure are ordered so as to clarify the positional relationship among the points.
- orders are indicated by numbers, respectively.
- the representative points of each of the rectangle and the parallelogram are three vertexes among four vertexes (which are ordered clockwise).
- the ellipse has the representative points (ordered clockwise) of a circumscribed rectangle thereof, and the polygon has all vertexes (ordered clockwise) as representative points.
- FIG. 15 shows one example of how to express such a region.
- a region having a vacant space inside is expressed by two polygons.
- the representative points of the figures are vertexes of the outer and inner polygons.
- the vertexes of the outer polygon are ordered clockwise, whereas those of the inner polygon are ordered counterclockwise.
- the vertexes of the outer polygon may be ordered counterclockwise and those of the inner polygon may be ordered clockwise.
- the left side in the forward direction of the representative points is an object region.
- a reference object region and a reference frame are set.
- the reference object region is the approximate figure of an object region in the first frame (reference frame) in an object region existing time-interval.
- the positions of the representative points of the reference region approximate figure are stored, as well.
- FIG. 16 shows one example of how to make the former representative points correspond to the latter representative points.
- reference symbol 1000 denotes the centers of gravity of approximate rectangles.
- the approximate figure 1001 of the reference object region and the approximate figure 1002 of the target object region are obtained.
- FIG. 16 shows a state in which the positions of the centers of gravity are coincident with each other.
- distances d 1 to d 4 between the four vertexes of the figure 1001 and those of the figure 1002 are calculated, respectively and the sums of the distances are obtained from all combinations of the vertexes.
- step S 304 conversion parameters are calculated from the moving vectors of the representative points of the approximate figure of the object region.
- FIG. 17 shows the relationship between the types of figures used for approximation and conversion models for which conversion parameters can be obtained.
- symbol ⁇ denotes a combination capable of calculating parameters
- symbol ⁇ denotes a combination incapable of calculating parameters.
- step S 306 it is determined whether or not it is necessary to update the reference object region.
- the reference object region is first converted by the conversion parameters and a predicted object region in a current frame is calculated. Needless to say, it is possible to calculate the same predicted object region by converting only the representative points of the reference object region using the conversion parameters and constituting a figure specified by the converted representative points. Next, the error between the predicted object region and the approximate figure of the target object region in the current frame is calculated and it is determined whether or not the reference object region needs to be updated by a threshold value.
- step S 307 the reference object region is actually updated after it is determined at step S 306 that the reference object region needs to be updated. While setting the processing target frame as a reference frame, the approximate figure of the object region in the frame is stored as a new reference object region and the coordinate values of the representative points of the reference object region are stored, as well.
- step S 308 it is determined whether or not the description of the object region in the video is ended as in the case of step S 106 shown in FIG. 2 .
- step S 309 information on the object region (function parameters approximating the conversion parameters) calculated as in the same manner as that of step S 107 shown in FIG. 7 is recorded in a predetermined description format.
- FIG. 18 shows one example of a description format for the object region data.
- This description format is the same as that shown in FIG. 6 except for figure information 1109 .
- the figure information 1109 used instead of the reference object region information 509 shown in FIG. 6 is comprised of an ID specifying a figure type and the coordinates of the representative points of the approximate figure of the reference object region.
- Symbol M denotes the number of representative points necessary for a figure specified by the ID.
- the approximate figure of the object region is not specially limited in the above description.
- an approximation method approximating the object region by a rectangle will be described hereinafter.
- a circumscribed rectangle 2802 of an object region 2801 in a frame 2800 as shown in FIG. 19 for example, procedures for subjecting the bit map of the object region to raster scan, updating minimum values for coordinates x and y if they are smaller than those stored so far and updating maximum values therefor if they are larger than the maximum values stored so far while a target pixel is within the object region, are repeatedly executed for the entire pixels, thereby obtaining the minimum and maximum values of the pixel positions indicating the object region for the coordinates x and y, respectively. Consequently, the four vertexes of the rectangle 2802 can be easily obtained.
- the above-described method is excellent in that it is easy to execute.
- an oblong object 3001 exists while being inclined with respect to an image screen 3000 as shown in FIG. 20 , for example, many non-object regions are contained in an approximate rectangle 3002 .
- the size and shape of the rectangle 3002 change accordingly. These respects may possibly be disadvantageous in specifying an object.
- reference symbol 3100 denotes one frame in a video as a processing target frame.
- Reference symbol 3101 denotes the region of an object which is an extraction target.
- Reference symbol 3102 denotes the approximate rectangle of the object region. Unlike the rectangle 2802 shown in FIG. 19 , this approximate figure has a gradient. Also, a non-object region is small in the rectangle and the shape of the rectangle remains constant even if the target rotates.
- FIG. 22 shows one example of processing procedure in this case.
- the principal axis of inertia of the target object region is obtained and an approximate figure is obtained based on the principal axis of inertia thus obtained.
- reference symbol 3103 denotes the center of gravity of the target object region.
- Reference symbol 3104 denotes the principal axis of inertia of the target object region.
- Reference symbol 3105 denotes a straight line perpendicular to the axis 3104 .
- f(x, y) is “1” in the object region and “0” on the outside of the object region.
- inertia moments m 20 , m 02 and m 11 of the object region are obtained (steps S 70 to S 72 ).
- step S 74 a straight line in parallel with the principal axis of inertia and circumscribing the object region and a straight line perpendicular to the principal axis of inertia and circumscribing the object region are obtained (step S 74 ).
- straight lines 3106 and 3107 are in parallel with the principal axis of inertia 3104 .
- the straight lines 3106 and 3107 circumscribes the object region.
- Straight lines 3108 and 3109 are straight lines in parallel with the straight line 3105 , the straight lines 3108 and 3109 circumscribing the object region.
- the rectangle 3102 is formed by the straight lines 3106 , 3107 , 3108 and 3109 (step S 75 ).
- FIG. 23 shows an example of a method of an approximate ellipse from a rectangle when the object region is expressed with the rectangle.
- FIG. 24 shows an example of a process employed in the foregoing case.
- step S 80 the inscribing ellipse and the circumscribing ellipse of the approximate rectangle 3301 are obtained (step S 80 ).
- an ellipse 3302 is an inscribing ellipse of the rectangle 3301 and the ellipse 3303 is an circumscribing ellipse of the rectangle 3301 .
- the size of the inscribing ellipse 3302 is gradually brought closer to that of the circumscribing ellipse 3303 (step S 81 ). Then, an ellipse 3304 for completely including the object region 3300 is obtained (step S 82 ) to employ the ellipse 3304 as the approximate ellipse.
- the unit for enlarging the size of the inscribing ellipse 3302 in each process of the repeated process may previously be determined. The unit may be determined in accordance with the difference between the size of the inscribing ellipse 3302 and that of the circumscribing ellipse 3303 .
- a reverse method may be employed with which the size of the circumscribing ellipse 3303 is brought closer to the size of the inscribing ellipse 3302 .
- the circumscribing ellipse 3303 includes the object region 3300 from the first. Therefore, the ellipse previous to the ellipse with which the portion which is not included in the object region 3300 has first occurred in the repeated process is required to be the approximate ellipse 3304 .
- an ellipse containing the entire object region is obtained.
- an approximate figure may be obtained while minimizing the area of a region portion in which the region of the object region and that of the approximate ellipse do not overlap each other.
- the representative points of the approximate rectangle or the approximate ellipse are obtained.
- Four or three vertexes can be set as the representative points of the rectangle.
- the vertexes of the circumscribed rectangle of the ellipse, or two focuses and one point on the ellipse can be set as representative points.
- the above description concerns the object region data generating apparatus capable of describing a desired object region in the video with the smaller quantity of data by describing the target object region in each frame by using the conversion parameter obtained from the reference object region in the reference frame, and capable of easily generating and handling the object region data.
- the concrete contents of the parameter information (denoted by reference symbol 510 in FIG. 6 and reference symbol 1110 in FIG. 8 ) in the first end third embodiments will be described.
- the parameter information directly or indirectly contain the conversion parameters for the object regions in the respective frames corresponding to the reference object region.
- conversion parameter expression methods such as a method of expressing conversion parameter by a time function and describing information specifying the function, and a method of directly describing a conversion parameter value.
- these expression methods and description formats for the conversion parameter for each of the methods will be described.
- the number of frames 1200 indicates the number of frames of an object region stored in the parameter information.
- M items of such conversion parameter information exist per frame.
- FIG. 26 shows one example of the data structure of conversion parameter information if conversion parameters are approximated by a function.
- a knot frame number 1300 expresses the knot of the Spline function and indicates that data 1302 on the coefficients of a polynomial are effective up to this knot.
- the number of coefficient data on the polynomial varies according to the highest degree of the Spline function (if the highest degree is K, the number of coefficient data is k+1). Due to this, the degree of the polynomial 1301 is referred to.
- the polynomial degree 1301 is followed by polynomial coefficient data 1302 which number corresponds to (polynomial degree+1).
- the Spline function is expressed by different polynomials among knots, polynomials the number of which corresponds to the number of knots are required. Accordingly, data 1303 including the knot frame number 1301 , polynomial coefficients 1302 and the like is described repeatedly a plurality of times. If the knot frame number is equal to the final frame in the constant reference object interval, it means that the data is the last polynomial coefficient data, thus indicating the end of conversion parameters.
- FIG. 27 shows another example of the data structure of object region description information if conversion parameters are approximated by a function.
- the highest degree of a polynomial is the second degree.
- a conversion model ID 1400 specifies the type of a conversion model used to approximate the movement of an object.
- the conversion model ID 1400 can designate Affine conversion or projection conversion.
- Origin coordinates 1412 specify which point in an image is set as an origin if conversion is made according to the conversion model.
- Reference object region information 1401 stores information on the description of the shape of a reference object region as in the case of the above-described example ( 505 in FIG. 6 ).
- the number of knots (N) 1402 represents the number of the knots of a Spline function.
- a frame corresponding to each knot is expressed by a time and stored in a knot time 1403 .
- the number of knot times corresponds to the number of knots, so that they are described as an arrangement 1404 .
- the conversion parameters 1405 for each knot are described as an arrangement 1406 .
- a linear function flag 1407 represents whether only linear functions are used as the Spline function among knots. If polynomials of second degree or higher are used even partially, this flag 1407 is turned off. Use of this flag is advantages in that the quantity of data can be reduced since it is not necessary to describe any function specification information 1408 to be described later, if only the linear functions are used as approximate functions. It is noted that the flag 1407 is not always required.
- a function ID 1409 and a function parameter 1410 which are contained in the function specifying information 1408 represent the degree of a polynomial Spline function and information for specifying the coefficients of the function, respectively.
- FIG. 28 shows one example of the function ID 1409 and the function parameter 1410 .
- symbols ta and tb denote times of continuous knots
- symbol f(t) denotes a Spline function in an interval [ta, tb]
- symbols fa and fb denote the conversion parameters for the knots at times ta and tb, respectively. If a first-degree polynomial is used, only the information on knots suffices and function parameters are not, therefore, described.
- a second-degree polynomial is used, however, one value a a is described in a function parameter as information for specifying coefficients.
- the coefficients of the second degree are used. It is also possible to use other values such as one point other than fa and fb on a quadratic curve.
- the number of function specifying information is ⁇ (the number of knots) ⁇ 1 ⁇ and they are described as an arrangement 1411 .
- the highest degree of the polynomial is the second degree.
- the highest degree of the polynomial can be set to be third degree or higher.
- FIG. 29 is a diagram comparing a description 0000 merely describing a trajectory of the representative points according to the description format of FIG. 25 and a description 0003 describing a trajectory of the representative points in an arrangement structure using the data structure of the present invention ( FIG. 27 ).
- a time stamp is added to the parameter 1201 in the description 0001 in order to easily understand.
- Both the two descriptions are an example of a parallel translation model and describe the trajectory of the conversion parameters a 0 and a 1 .
- Step S 0000 is an initializing process, in which initial values are substituted for a time stamp ts of a start frame and a time stamp te of a final frame of a frame range of interest.
- a time of the first frame is set to ts and a time of the second frame is set to te.
- Step S 0001 is a process for calculating an approximation function fi(t) (linear or secondary polynomial in this example) by reading out the parameter values a i from the parameter data arrangement ( 0000 in FIG. 29 ) and using a least squares method.
- i 0, 1.
- Step S 0002 an absolute value difference between the parameter value calculated by the function fi(t) which has been calculated in step S 0001 and the actual parameter value is obtained for each time in the interval from ts to te, and its maximum value is set to a variable “e”.
- the maximum value “e” is an error area of the object region.
- the error is obtained from a difference between the actual area of the object region and an area of the region obtained by converting the reference object region using the conversion parameter. It is possible to use a ratio of the difference area to the object region area instead of the difference area.
- the value of “e” and a threshold which has been determined in advance are compared with each other. When the value of “e” is larger than the threshold, the process in step S 0004 is performed, otherwise the process in step S 0005 is performed.
- step S 0004 the approximation function which has been calculated for the interval from the frame of the time ts to the frame just before the frame of the time te by method of least squares is registered, and the time stamp applied to the frame just before the frame of the time te is set to ts.
- the function a 0 2.1t 2 ⁇ 12.6t (0 ⁇ t ⁇ 2) of description 0001 in FIG. 29 is registered.
- 0 ⁇ t ⁇ 2 is an effective time interval of the function, and an interval from ts to te when the approximation function has been calculated corresponds to this time interval. This time interval is registered together with the function.
- Step S 0005 is a updating process for te, in which the value of te is updated to the time stamp applied to the frame next to the frame of the time te.
- Step S 0006 is a termination determining process, where it is determined whether or not the time te exceeds the range to be processed, and when the time te does not exceed the range, the processes from step S 0001 are repeated, otherwise the process proceeds to a final process in step S 0007 .
- Example 0003 in FIG. 29 uses a describing format shown in FIG. 27 (portions of the knot time arrangement 1404 , the arrangement 1406 of the parameter 1 , the arrangement of the parameter 2 , . . . , the linear function flag 1 ( 1407 ), the arrangement 1411 of the function specifying information 1 , an the linear function flag 2 ( 1407 )).
- the reason why such a reduction in an amount of data is made possible is because a property where movement of an object in the natural world is ordinarily smooth is utilized. That is, a data arrangement of parameter (conversion parameter) value representing deformation/movement of the object region can be expressed collectively by a polynomial when slight errors are allowed, and the memory capacity can be saved considerably by recording only the parameters specifying this polynomial, as compared with a case where all the parameter values are recorded.
- the conversion model ID 1400 , the origin coordinates 1412 , the reference object region information 1401 , the number of knots 1402 and the like shown in FIG. 27 are required as the whole of the object region data in addition to the items described in description 0003 in FIG. 29 .
- conversion parameters are obtained for all frames with respect to a certain object region.
- Frames for which conversion parameters are obtained may be sampled. For example, one frame out of three frames may be sampled and a reference object region in frame 1 as well as reference object regions in frames, 4 , 7 , . . . may be used.
- the object region data may be approximated by a function by the sampled parameter values as in the case of the above-described examples. In addition, it is not necessary to include information on sampling in the object region data.
- a field on the number of intervals in which the reference object region is fixed may be removed from the data structure of the object region data and only one field on the object region description information may be provided.
- FIG. 32 is a flow chart showing one example of a technique for selecting a reference object region from an object region existing time-interval so that the error of a predicted object region and the actual object region is minimized.
- step S 400 object region data for an arbitrary frame is fetched from the object region existing time-interval as a reference object region.
- step S 401 conversion parameters for converting the reference object region fetched in step S 400 into object regions in other frames in the object region existing time-interval are calculated.
- step S 402 using the reference object region fetched in step S 400 and the conversion parameters calculated in step S 403 , predicted object regions in all frames but the reference frame in the object region existing time-interval are calculated.
- step S 403 the errors between the predicted object regions and the actual object regions obtained in step S 402 are calculated for all frames but the reference frame in the object region existing time-interval, respectively, and the errors thus obtained are added together to obtain a sum of errors.
- step S 404 if the sum errors obtained in step S 403 is smaller than any other sum of the errors obtained before with the other frames used as reference frames, the current reference frame number is stored.
- step S 405 a branch processing is carried out. Namely, if the current reference frame is the final frame in the object region existing time-interval, step S 406 follows. Otherwise, step 400 follows. If the processing is branched to step S 400 , a new frame is set as a reference frame and the same processings are repeated.
- step S 406 the reference frame number with which the sum of errors between the predicted object region and the actual object region stored in step S 404 becomes a minimum, is fetched and the object region in this frame is set as a reference object region.
- the embodiment shown in FIG. 32 has a large quantity of calculation. For that reason, if faster processings are desired, a specific frame may be selected as a reference frame at the expense of accuracy. This specific frame may be the first frame in the object region existing time-interval. However, if a central frame is used as a reference frame, the sum of the errors become a minimum at the longest distance among those between the reference frame and target frames, so that accurate approximation can be, in most cases, expected.
- FIG. 33 is an explanatory view for one example of a technique for selecting a reference object region with the central frame in the object region existing time-interval used as a reference frame.
- a central frame 1703 in the middle of the first frame 1701 and the final frame 1702 in the object region existing time-interval is selected as a reference frame, and conversion parameters for object regions in other frames are obtained.
- FIG. 34 is a flow chart showing one example of a technique for selecting a plurality of reference frames in a real-time manner from the object region existing time-interval.
- FIG. 35 is an explanatory view for this technique. If a real-time processing is execute, it is required to determine reference frames even if a final object region existing time-interval is not fixed.
- step S 500 object region data for one frame is fetched as a reference object region from the object region existing time-interval.
- the object region data in the first frame 1900 is fetched.
- step S 501 a branch processing is executed. Namely, if the current processing frame is the final frame in the object region existing time-interval, the processing is ended. Otherwise, step S 502 follows.
- step S 502 object region data in the next frame to the frame for which the object region is fetched in step S 500 , is fetched as a target object region from the object region existing time-interval, and conversion parameters with reference to the reference object region determined in step S 501 are calculated.
- step S 503 a predicted object region is obtained using the reference object region determined in step S 501 and the conversion parameters calculated in step S 502 .
- step S 504 a branch processing is executed. Namely, it is determined whether the error between the predicted object region obtained in step S 503 and the actual target object region in step S 502 exceeds a threshold value. If the error exceeds the threshold value, step S 505 follows. Otherwise, step S 501 follows.
- step S 501 If the processing is branched to step S 501 and the current frame is not the final frame in the object region existing time-interval, the same processings as those stated above are repeated.
- a group of the frames repeatedly processed corresponds to a time-interval denoted by reference symbol 1901 shown in FIG. 35 with respect to the same reference frame.
- step S 505 the current frame is set as a new reference frame
- step S 501 follows.
- step S 501 the same processings are repeated if the current frame is not the final frame in the object region existing time-interval.
- the new reference frame is the frame denoted by reference symbol 1902 .
- the object region existing time-interval is constituted by a plurality of constant reference object region time-intervals.
- FIG. 36 is a flow chart showing another technique for selecting a plurality of reference frames from an object region existing time-interval.
- FIGS. 37A and 37B are explanatory views for this technique.
- step S 600 object region data on a central frame is fetched as a reference object region from an unprocessed object region existing time-interval.
- the central frame 2101 in the object region existing time-interval 2100 is used as a reference frame.
- step S 601 a branch processing is executed. Namely, it is determined whether or not a currently processed frame is the first frame in the unprocessed object region existing time-interval. If the frame is not the first frame, step S 602 follows. If the frame is the first frame, step S 606 follows.
- step S 602 an object region in one frame before the currently processed frame is fetched and conversion parameters for the reference object region in step S 600 are calculated.
- step S 603 a predicated object region is calculated using the reference object region obtained in step S 600 and the conversion parameters calculated in step S 602 .
- step S 604 a branch processing is executed. Namely, it is determined whether or not the error between the predicted object region calculated in step S 603 and the actual target object region calculated in step S 602 exceeds a threshold value. If the error exceeds the threshold value, step S 601 follows. If the processing is branched to step S 601 and the current frame is not the first frame in the unprocessed object region existing time-interval, then the same processings as those stated above are repeated.
- step S 605 a frame succeeding to the current frame is set as the first frame in the constant reference object region time-interval.
- the error exceeds the threshold value for the object region in the frame 2102 (k-th frame) while the object region in the reference frame 2101 is set as a reference object region, then the (k+1)th frame becomes the first frame in the constant reference object region time-interval.
- step S 606 object region data on a central frame is fetched as a reference object region from an unprocessed object region existing time-interval.
- steps S 607 to S 611 the same processings as those in steps S 601 to S 605 stated above are executed to succeeding frames.
- FIGS. 37A and 37B if the frame just before a frame 2103 becomes the final frame in the constant reference object region time-interval, unprocessed object region existing time-intervals 2105 and 2106 remain.
- step S 612 a branch processing is executed. Namely, if there exists an unprocessed object region existing time-interval, step S 600 follows. If not, the processing is ended. If the processing is branched to step S 600 , a central frame in the unprocessed object region existing time-interval is used as a new reference frame and processings are repeated until the unprocessed object region existing time-interval no longer exists.
- FIG. 37B shows an example in which a central frame 2107 in an unprocessed object region existing time-interval 2105 is processed as a new reference frame and a new constant reference object region time-interval 2108 and an unprocessed object region existing time-interval 2109 are generated.
- one conversion parameter is obtained for one object.
- one object is expressed by a plurality of figures, it is required to execute a processing for dividing the object into a plurality of regions.
- This processing may be executed by any method such as a processing method of directly inputting figures manually. In that case, this processing can be realized by operations including using a pointing device such as a mouse, and allowing regions to be surrounded by rectangles or ellipses on an image or designating regions by the trajectory of the pointing mouse. Further, if input operation is carried out not manually but automatically, there is proposed a method of realizing the processing by, for example, clustering the movement of an object.
- the movements of the respective regions of the object between continuous frames are calculated by a correlation method (see, for example, Gazo Kaiseki Handbook (Image Analysis Handbook), Section II, Chapter 3, Tokyo University Publication, 1991) or a gradient method (see, for example, B. K. P. Horn and B. G. Schunch, “Determining optical flow”, Artificial Intelligence, vol. 17, pp. 185–203, 1981), and only the similar movements among them are gathered to thereby form regions.
- a correlation method see, for example, Gazo Kaiseki Handbook (Image Analysis Handbook), Section II, Chapter 3, Tokyo University Publication, 1991
- a gradient method see, for example, B. K. P. Horn and B. G. Schunch, “Determining optical flow”, Artificial Intelligence, vol. 17, pp. 185–203, 1981
- FIG. 38 shows a state in which regions having a similar optical flow are gathered together and an object is thereby divided into a plurality of regions.
- FIG. 39 shows one example of data structure for describing an object in a plurality of regions.
- the example of FIG. 39 is to expand the data structure ( FIG. 18 ) for describing the object in a single region and data following region ID data 2906 are the same as those in FIG. 18 .
- the number of divided regions is stored in 2902 and data on the respective divided regions are held in 2905 and the following. Further, even a region having a vacant space as shown in FIG. 15 can be handled by the data structure shown in FIG. 39 by expressing the region while the vacant space regarded as one region.
- related information on the object may be added to the object region data.
- a hypermedia application allowing the related information on the object to be presented can be realized by indicating (e.g., by clicking of a mouse) an object in a video by a user looking at the video.
- a video and an object may be freely chosen.
- an object is a character such as an actor (actress) or another character object
- related information is explanations about the actor (actress) or his (her) character or the like
- audience who see the movie can read the explanation about a desired actor (actress) simply by clicking the image of the actor (actress).
- this method is applicable to every electronic contents such as an electronic cyclopedia and an electronic catalog.
- the related information may be characters, voice, a still image, a moving image, an appropriate combination thereof, or data in which the operation of a program or a computer is described. In the former case, information is presented. In the latter case, the program or the like is executed.
- a pointer information such as an address for acquiring the related information may be added to the object region data instead of the related information itself.
- the object can be searched and retrieved based on the keyword.
- characteristic quantities such as shape, texture, activity and color, extracted from the object are described in the related information, the object can be searched and retrieved base on those characteristic quantities.
- a supervising system for example, for supervising a questionable person or the like based on characteristic quantities, such as the shape, texture, activity and color of the object, obtained by analyzing the object region data.
- the creator of the object region data needs to provide it to the user in some way or another. To do so, there may be various methods as follows:
- the above methods mainly concern providing the video data, object region data and related information by means of a recording medium (or media). Alternatively, part of or all of the video data, object region data and related information may be provided through a communication medium.
- FIG. 40 shows an example of the constitution of a video processing apparatus according to this embodiment.
- the video processing apparatus is comprised of a video data display section 301 , a control section 302 , a related information presentation section 303 and a command input section 304 .
- the video data display section 301 displays video data inputted from a recording medium or the like, which is not shown, on a liquid crystal display device, a CRT or the like.
- the command input section 304 allows a user to execute an operation for indicating an object in a video displayed on the liquid display device, the CRT or the like by either a pointing device such as a mouse or a keyboard, and receives the user's input.
- control section 302 determines whether or not the user indicates an object in the video based on, for example, the coordinates indicated on the image screen by the user and object region data inputted from the recording medium or the like which is not shown.
- the related information presentation section 303 presents the related information when the control section 302 determines that the object has been indicated and the related information has been added to the object region data, and acquires and then presents the related information (from the recording medium, a server through the network or the like) based on pointer information on the related information when the pointer information is added to the object region data.
- the related information is data on which the operation of a program or a computer is described, the program is executed.
- a corresponding processing section instead of the related information presentation section 303 is mounted on the information processor.
- this embodiment can be executed by a software.
- a reference object region is denoted by a reference symbol 2201 and a target frame is denoted by a reference symbol 2202 .
- a point indicated by a user is denoted by a reference symbol 2203 and the corresponding position of the point 2203 in the reference frame is denoted by a reference symbol 2204 .
- FIG. 42 shows one example of the processing procedure in this embodiment. It is noted that the flow chart of FIG. 42 only shows a processing for determining whether the point which has been indicated by the pointing device, such as a mouse cursor, in the displayed video during the reproduction of the video, is inside or outside an object region (which processing basically corresponds to that of the control section 302 ).
- the pointing device such as a mouse cursor
- step S 700 a target frame number and the coordinates of the indicated point are acquired. Namely, a calculation is made to determine to which part of an image in the video the coordinates on the image screen indicated by means of the pointing device or the like corresponds. The frame number of the video which is being reproduced at the moment the point is indicated is also acquired. It is noted that not the frame number but a time stamp may be used (in the following description, it is assumed that the frame number is used).
- an object existing in the video in the target frame number is selected from the object region data on the object in the video which data is attached to the video. This selection can be easily executed by referring to the first frame number and a final frame number in the object region data.
- the following processing is executed for each object or sequentially executed until the indicated object is obtained repeatedly or simultaneously or the final object is obtained.
- step S 701 a conversion parameter is calculated from an approximate conversion parameter trajectory for the target object. This conversion parameter indicates conversion from the reference object region into the target object region.
- the time stamp is 1.0 (sec.) in the case of a moving image of 10 frames/sec..
- the parameter values are 0.0 and ⁇ 16.8 for both knots, respectively as well as the function ID is 1 and the function parameter is 4.2.
- step S 702 the indicated point is inversely converted and the position of the converted point in the reference frame is calculated.
- mathematical formula (8) may be employed to obtain the point 2204 from the point 2203 in FIG. 41 .
- step S 703 it is determined whether the point is inside or outside of the reference object region.
- a determination method depends on an available method of expressing the object region. Taking a case of bit map expression and polygon expression, as examples, the determination method will be described hereinafter.
- the determination is made according to procedure shown in FIG. 43 .
- the expression of the reference object region by the bit map may include, for example, expressing the outside of the object region by “1” and the outside thereof by “0”. While referring to bit map information on the position of the point calculated in step S 802 , it is determined that the point is inside the object region when the value is “1” and that the point is outside the object region when the value is “0” in step S 803 .
- the determination is made according to procedure shown in FIG. 44 .
- a point 2501 and vectors 2502 and 2503 coupling adjacent two vertexes of the polygon with the point 2501 are generated.
- the vectors are set to move three-dimensionally and a coordinate z is set at 0.
- the vectors are normalized so that vector length may be 1.
- the outer products of the two vectors and angles between the two vectors are calculated for all the vertexes of the polygon while shifting the vertexes one by one.
- the outer product vector is perpendicular to the polygon and the coordinate z has a value from ⁇ 1 to 1.
- the calculated angles are multiplied by the respective coordinate z of the outer product vector and added together. Then, if the point is inside the polygon, the angle is either ⁇ 360 degrees or 360 degrees. If outside the polygon, the angle has a value other than ⁇ 360 degrees and 360 degrees. In this way, the determination as to whether the point is inside or outside the reference object region can be made.
- the reference object region is expressed by representative points which are ordered, the reference object region is expanded on a bit map first and then a determination can be made.
- the representative points of the reference object region are coupled according to the order to thereby form a polygon.
- the determination method in a case the reference object region is expressed by a polygon is the same as the method already described above.
- straight line formulas indicating all sides of the polygon are calculated. From these formulas, simultaneous inequalities expressing the inside of the polygon are generated.
- FIG. 46 shows, as a simple example, a case where the polygon is a rectangle. If the formulas for the respective sides of the rectangle have been calculated as shown in FIG. 46 , simultaneous inequalities expressing the inside of the polygon are calculated as the following mathematical formula (9):
- the pixel values are set at “1”, and if not, the pixel values are set at “0”, thereby making it possible to expand the representative points to the bit map.
- the determination method by the expanded bit map is the same as the method already described above.
- the related information is acquired based on the pointer information and displayed or the like (in the example of FIG. 40 , the processing is executed by the related information presentation section 303 ). If a program is specified as related information, the specified program is executed and other predetermined specified operations are executed. It is noted that if the related information itself is described on the object region data, the information may be displayed or the like.
- FIG. 47 shows one example in which the explanation of an object in a video is added as related information. If the coordinates indicated by a pointing device 802 while a video 800 is being reproduced is inside the region of (an approximate figure of) an object 801 , related information 803 is displayed.
- This embodiment can be also carried out as a computer readable recording medium which records a program for allowing a computer to execute predetermined means (or for allowing the computer to function as predetermined means or to realize predetermined functions).
- the target object region in the video is described based on the reference object region and conversion parameter, whereby a desired object region in the video can be described with a small quantity of data and the data can be easily handled.
- the determination as to whether an object in the video has been indicated by a user can be easily made.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Signal Processing (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Analysis (AREA)
Abstract
Description
-
- “Enlargement/reduction model” and “Rotation model” as models when the number of parameters is 1;
- “Parallel translation model” as a model when the number of parameters is 2;
- “Composite model of enlargement & reduction/rotation/parallel translation models” (to be referred herein as “4-parameter conversion model”) as a model when the number of parameters is 4;
- “Affine conversion model” as a model when the number of parameters is 6;
- “Projection conversion model” as a model when the number of parameters is 8; and
- “Parabolic conversion model” as a model when the number of parameters is 12.
x′=a0x,
y′=a0y (1)
x′=xcosa 0 −ysina 0,
y′=xcosa 0 +ysina 0 (2)
x′=x+a 0,
y′=y+a 1 (3)
x′=a 0 x+a 1 y+a 2,
y′=a 1 x−a 0 y+a 3 (4)
x′=a 0 x+a 1 y+a 2,
y′=a 3 x+a 4 y+a 5 (5)
x′=(a 0 x+a 1 y+a 2)/(a 3 x+a 4 y+1),
y′=(a 5 x+a 6 y+a 7)/(a 3 x+a 4 y+1) (6)
x′=a 0 x2+a 1 xy+a 2 y 2 +a 3 x+a 4 y+a 5,
y′=a 6 x 2 +a 7 xy+a 8 y 2 +a 9 x+a 10 y+a 11 (7)
a i =f i(t),
where fi(t) is the function of time t.
E(P 0 , P 1)=2×a
C=(P 0 +P 1)/2
E(C, H)=b
e=(1/a)×√{square root over ((a×a−b×b)}
E(P, Q) is the Euclidean distance between points P and Q.
F=C+e×(P 0 −C)
G=C−e×(P 0 −C)
E((Gp−Fp)/2,(G−F)/2) and
E((Gp−Fp)/2,(F−G)/2).
E(Hp−(Gp+Fp)/2, H−(F+G)/2) and
E(Hp−(Gp+Fp)/2, H′−(F+G)/2).
m ij =ΣΣx i y j f(x, y)
m θ=∫∫(x sin θ−y cos θ)2 f(x, y)dx dy
tan2θ+{(m 20 −m 02)/m 11}tan θ−1=0
-
- (1) To record video data, object region data on the video data and related information on the object region data on a single (or plural) recording medium (or media) and to simultaneously provide the data and information.
- (2) To record video data and object region data on the video data on a single (or plural) recording medium (or media) and to simultaneously provide the data, but to provide related information separately or provide no related information (in the latter case, even if the related information is not provided, the user can separately acquire the related information through the network or the like).
- (3) To provide video data independently, to record object region data and related information on a single (or plural) recording medium (or media) separately from the video data and to simultaneously provide the data and information.
- (4) To provide video data, object region data and related information independently of one another.
Claims (7)
f(t)=fa+va(t−ta),
f(t)=fa+va(t−ta)+½aa(t−ta)2,
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/319,554 US7061980B2 (en) | 1999-08-04 | 2002-12-16 | Method of describing object region data, apparatus for generating object region data, video processing method, and video processing apparatus |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP11-221424 | 1999-08-04 | ||
JP22142499 | 1999-08-04 | ||
US09/633,231 US6968004B1 (en) | 1999-08-04 | 2000-08-04 | Method of describing object region data, apparatus for generating object region data, video processing method, and video processing apparatus |
US10/319,554 US7061980B2 (en) | 1999-08-04 | 2002-12-16 | Method of describing object region data, apparatus for generating object region data, video processing method, and video processing apparatus |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/633,231 Division US6968004B1 (en) | 1999-08-04 | 2000-08-04 | Method of describing object region data, apparatus for generating object region data, video processing method, and video processing apparatus |
Publications (2)
Publication Number | Publication Date |
---|---|
US20030086492A1 US20030086492A1 (en) | 2003-05-08 |
US7061980B2 true US7061980B2 (en) | 2006-06-13 |
Family
ID=35344983
Family Applications (4)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/633,231 Expired - Fee Related US6968004B1 (en) | 1999-08-04 | 2000-08-04 | Method of describing object region data, apparatus for generating object region data, video processing method, and video processing apparatus |
US10/319,485 Expired - Fee Related US6917653B2 (en) | 1999-08-04 | 2002-12-16 | Method of describing object region data, apparatus for generating object region data, video processing method, and video processing apparatus |
US10/319,484 Expired - Fee Related US6937660B2 (en) | 1999-08-04 | 2002-12-16 | Method of describing object region data, apparatus for generating object region data, video processing method, and video processing apparatus |
US10/319,554 Expired - Lifetime US7061980B2 (en) | 1999-08-04 | 2002-12-16 | Method of describing object region data, apparatus for generating object region data, video processing method, and video processing apparatus |
Family Applications Before (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/633,231 Expired - Fee Related US6968004B1 (en) | 1999-08-04 | 2000-08-04 | Method of describing object region data, apparatus for generating object region data, video processing method, and video processing apparatus |
US10/319,485 Expired - Fee Related US6917653B2 (en) | 1999-08-04 | 2002-12-16 | Method of describing object region data, apparatus for generating object region data, video processing method, and video processing apparatus |
US10/319,484 Expired - Fee Related US6937660B2 (en) | 1999-08-04 | 2002-12-16 | Method of describing object region data, apparatus for generating object region data, video processing method, and video processing apparatus |
Country Status (1)
Country | Link |
---|---|
US (4) | US6968004B1 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050200759A1 (en) * | 2004-03-09 | 2005-09-15 | Nec Corporation | Digital broadcasting system |
US20070086669A1 (en) * | 2005-10-13 | 2007-04-19 | Berger Adam L | Regions of interest in video frames |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6968004B1 (en) * | 1999-08-04 | 2005-11-22 | Kabushiki Kaisha Toshiba | Method of describing object region data, apparatus for generating object region data, video processing method, and video processing apparatus |
KR100415266B1 (en) * | 2000-05-11 | 2004-01-16 | 가부시끼가이샤 도시바 | Object region information description method, object region information generating device and recording medium |
JP2003018557A (en) * | 2001-07-04 | 2003-01-17 | Monolith Co Ltd | Method and apparatus for processing image |
JP4079690B2 (en) * | 2002-05-23 | 2008-04-23 | 株式会社東芝 | Object tracking apparatus and method |
US20080019568A1 (en) * | 2002-05-23 | 2008-01-24 | Kabushiki Kaisha Toshiba | Object tracking apparatus and method |
JP4217876B2 (en) * | 2002-12-20 | 2009-02-04 | 財団法人生産技術研究奨励会 | Method and apparatus for tracking moving object in image |
JP4088274B2 (en) * | 2004-06-28 | 2008-05-21 | 株式会社東芝 | Metadata structure and editing method |
US20080267499A1 (en) * | 2007-04-30 | 2008-10-30 | General Electric Company | Method and system for automatic detection of objects in an image |
US8059865B2 (en) | 2007-11-09 | 2011-11-15 | The Nielsen Company (Us), Llc | Methods and apparatus to specify regions of interest in video frames |
US10178396B2 (en) | 2009-09-04 | 2019-01-08 | Stmicroelectronics International N.V. | Object tracking |
US9294712B2 (en) | 2013-03-20 | 2016-03-22 | Google Inc. | Interpolated video tagging |
JP6542629B2 (en) * | 2015-09-18 | 2019-07-10 | 川崎重工業株式会社 | Positioning device and method for machining tool |
TWI582710B (en) * | 2015-11-18 | 2017-05-11 | Bravo Ideas Digital Co Ltd | The method of recognizing the object of moving image and the interactive film establishment method of automatically intercepting target image |
US11717268B2 (en) * | 2016-11-29 | 2023-08-08 | Koninklijke Philips N.V. | Ultrasound imaging system and method for compounding 3D images via stitching based on point distances |
CN114047865B (en) * | 2021-11-11 | 2023-04-25 | 四川长虹教育科技有限公司 | Graphic control method |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5700204A (en) * | 1996-06-17 | 1997-12-23 | Teder; Rein S. | Projectile motion parameter determination device using successive approximation and high measurement angle speed sensor |
US6208346B1 (en) * | 1996-09-18 | 2001-03-27 | Fujitsu Limited | Attribute information presenting apparatus and multimedia system |
US6366701B1 (en) * | 1999-01-28 | 2002-04-02 | Sarnoff Corporation | Apparatus and method for describing the motion parameters of an object in an image sequence |
US6490997B1 (en) * | 2001-04-12 | 2002-12-10 | Joseph S. Biermann | Cat climbing and scratching device |
US6917653B2 (en) * | 1999-08-04 | 2005-07-12 | Kabushiki Kaisha Toshiba | Method of describing object region data, apparatus for generating object region data, video processing method, and video processing apparatus |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3169783B2 (en) * | 1995-02-15 | 2001-05-28 | 日本電気株式会社 | Video encoding / decoding system |
US5966469A (en) * | 1995-10-26 | 1999-10-12 | Hyundai Electronics Industries Co., Ltd. | Sequential polygon approximation apparatus for contour and method thereof |
US5854634A (en) * | 1995-12-26 | 1998-12-29 | Imax Corporation | Computer-assisted animation construction system using source poses within a pose transformation space |
JP3168244B2 (en) * | 1996-02-13 | 2001-05-21 | 株式会社セガ | Image generating apparatus and method |
US5982909A (en) * | 1996-04-23 | 1999-11-09 | Eastman Kodak Company | Method for region tracking in an image sequence using a two-dimensional mesh |
US5986675A (en) * | 1996-05-24 | 1999-11-16 | Microsoft Corporation | System and method for animating an object in three-dimensional space using a two-dimensional input device |
US6381369B1 (en) * | 1996-07-17 | 2002-04-30 | Sony Corporation | Image coding apparatus, image coding method, image decoding method, image decoding apparatus, image data transmitting method and recording medium |
DE69716694T2 (en) * | 1996-09-25 | 2003-07-31 | Hyundai Curitel, Inc. | Method and device for video coding with a movable grid of picture elements |
US6414685B1 (en) * | 1997-01-29 | 2002-07-02 | Sharp Kabushiki Kaisha | Method of processing animation by interpolation between key frames with small data quantity |
JPH11167623A (en) * | 1997-12-03 | 1999-06-22 | Canon Inc | Image processor and image processing method |
JP3728942B2 (en) * | 1998-03-24 | 2005-12-21 | ヤマハ株式会社 | Music and image generation device |
US6323879B1 (en) * | 1998-05-14 | 2001-11-27 | Autodesk, Inc. | Method and system for determining the spacing of objects |
-
2000
- 2000-08-04 US US09/633,231 patent/US6968004B1/en not_active Expired - Fee Related
-
2002
- 2002-12-16 US US10/319,485 patent/US6917653B2/en not_active Expired - Fee Related
- 2002-12-16 US US10/319,484 patent/US6937660B2/en not_active Expired - Fee Related
- 2002-12-16 US US10/319,554 patent/US7061980B2/en not_active Expired - Lifetime
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5700204A (en) * | 1996-06-17 | 1997-12-23 | Teder; Rein S. | Projectile motion parameter determination device using successive approximation and high measurement angle speed sensor |
US6208346B1 (en) * | 1996-09-18 | 2001-03-27 | Fujitsu Limited | Attribute information presenting apparatus and multimedia system |
US6366701B1 (en) * | 1999-01-28 | 2002-04-02 | Sarnoff Corporation | Apparatus and method for describing the motion parameters of an object in an image sequence |
US6917653B2 (en) * | 1999-08-04 | 2005-07-12 | Kabushiki Kaisha Toshiba | Method of describing object region data, apparatus for generating object region data, video processing method, and video processing apparatus |
US6490997B1 (en) * | 2001-04-12 | 2002-12-10 | Joseph S. Biermann | Cat climbing and scratching device |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050200759A1 (en) * | 2004-03-09 | 2005-09-15 | Nec Corporation | Digital broadcasting system |
US20070086669A1 (en) * | 2005-10-13 | 2007-04-19 | Berger Adam L | Regions of interest in video frames |
WO2007047493A2 (en) * | 2005-10-13 | 2007-04-26 | Penthera Technologies, Inc. | Regions of interest in video frames |
WO2007047493A3 (en) * | 2005-10-13 | 2009-04-09 | Penthera Technologies Inc | Regions of interest in video frames |
US7876978B2 (en) * | 2005-10-13 | 2011-01-25 | Penthera Technologies, Inc. | Regions of interest in video frames |
Also Published As
Publication number | Publication date |
---|---|
US20030086490A1 (en) | 2003-05-08 |
US6917653B2 (en) | 2005-07-12 |
US6937660B2 (en) | 2005-08-30 |
US6968004B1 (en) | 2005-11-22 |
US20030086492A1 (en) | 2003-05-08 |
US20030086491A1 (en) | 2003-05-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7061980B2 (en) | Method of describing object region data, apparatus for generating object region data, video processing method, and video processing apparatus | |
US7304649B2 (en) | Object region data describing method and object region data creating apparatus | |
US6940997B1 (en) | Method of describing object region data, apparatus for generating object region data, video processing apparatus and video processing method | |
US6999069B1 (en) | Method and apparatus for synthesizing images | |
EP0638875A2 (en) | A 3-dimensional animation generating apparatus and a method for generating a 3-dimensional animation | |
JP2005517319A (en) | Abstract image extracting apparatus and method using object shape information, and moving image summarizing and indexing system using the same | |
JP4031184B2 (en) | Object region information description method, object region information generation device, video information processing method, and video information processing device | |
JP4112819B2 (en) | Object area information generation apparatus and object area information description program | |
US7092547B2 (en) | Image data processing method and article of manufacture | |
Tang et al. | C2F-CCPE: Coarse-to-Fine Cross-View Camera Pose Estimation | |
JP2023013821A (en) | Image processing device, image reproduction device, and program | |
JPH08249449A (en) | Video information retrieval method and video information retrieval device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
FPAY | Fee payment |
Year of fee payment: 4 |
|
FPAY | Fee payment |
Year of fee payment: 8 |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 12TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1553) Year of fee payment: 12 |
|
AS | Assignment |
Owner name: TOSHIBA VISUAL SOLUTIONS CORPORATION, JAPAN Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:KABUSHIKI KAISHA TOSHIBA;REEL/FRAME:045647/0834 Effective date: 20180420 |
|
AS | Assignment |
Owner name: HISENSE VISUAL TECHNOLOGY CO., LTD., CHINA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:TOSHIBA VISUAL SOLUTIONS CORPORATION;REEL/FRAME:051493/0333 Effective date: 20191225 |