WO2011013299A1 - 移動体検出装置及び移動体検出方法 - Google Patents

移動体検出装置及び移動体検出方法 Download PDF

Info

Publication number
WO2011013299A1
WO2011013299A1 PCT/JP2010/004378 JP2010004378W WO2011013299A1 WO 2011013299 A1 WO2011013299 A1 WO 2011013299A1 JP 2010004378 W JP2010004378 W JP 2010004378W WO 2011013299 A1 WO2011013299 A1 WO 2011013299A1
Authority
WO
WIPO (PCT)
Prior art keywords
distance
unit
region
movement
geodetic
Prior art date
Application number
PCT/JP2010/004378
Other languages
English (en)
French (fr)
Inventor
岩崎正宏
登一生
Original Assignee
パナソニック株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by パナソニック株式会社 filed Critical パナソニック株式会社
Priority to EP10804052.8A priority Critical patent/EP2461292B1/en
Priority to JP2010536277A priority patent/JP4643766B1/ja
Priority to CN201080003380.4A priority patent/CN102227750B/zh
Priority to US12/976,169 priority patent/US8300892B2/en
Publication of WO2011013299A1 publication Critical patent/WO2011013299A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/292Multi-camera tracking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/215Motion-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20021Dividing image into blocks, subimages or windows
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30196Human being; Person
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30241Trajectory

Definitions

  • the present invention relates to an apparatus for detecting a moving object in an image, and more particularly to a moving object such as a person who moves while changing its shape based on motion information of an image from a moving image composed of a plurality of images.
  • the present invention relates to an apparatus for detecting a moving body by extracting a region that specifies all or part of a region.
  • a method for extracting candidate areas from an image, and an extracted target There is a method combined with a method of applying an object model prepared in advance to an object candidate region.
  • a silhouette image of a target object such as a person is extracted from a plurality of images as a target object candidate area, and a model related to the target object such as a person in which the part of the target is parameterized in advance from knowledge about the target object
  • a method of applying the model to the extracted silhouette image using the above is disclosed.
  • a parameterized model can be applied to a moving body such as a person who moves while changing its shape, so that it is possible to detect the moving body and extract a region.
  • Non-Patent Document 1 an image obtained by photographing a fixed subject from a plurality of viewpoints is input, and a Euclidean distance representing similarity between images is calculated based on a luminance value of each image, and a geodetic survey is performed on the calculated Euclidean distance.
  • a method is disclosed in which, after performing distance conversion, by performing dimensional compression, it is possible to project an image taken from a similar viewpoint so as to be a short distance in a two-dimensional space.
  • PCA Principal Component Analysis
  • Non-Patent Document 1 needs to perform geodetic distance conversion and dimension compression using a matrix having the number of elements of N 2 when the total number of data handled is N. Therefore, it is known that there is a problem that the amount of calculation becomes enormous when the number of data N is large.
  • Non-Patent Document 2 and Non-Patent Document 3 the number of landmark points smaller than the number of data points is set from among the data points, the matrix is generated using the set landmark points, and geodetic distance conversion is performed.
  • a method for reducing the amount of calculation by performing dimension compression has been proposed.
  • Patent Document 1 has a problem in that a moving body cannot be correctly extracted, particularly in a scene where a moving body such as a person passes around the street.
  • the region extraction method represented by Patent Document 1 needs to extract a target object candidate region from an image.
  • the target object candidate area cannot be correctly extracted, it is impossible to accurately apply the model obtained by parameterizing the target object to the target object candidate area.
  • it is difficult to correctly extract an object candidate region in a crowded scene.
  • there is a problem that a plurality of moving objects are erroneously extracted as target object areas as one moving object, or an area in which no moving object to be extracted exists does not exist as a candidate object area.
  • a first object of the present invention is to solve the problem that the region extraction of Patent Document 1 is not performed correctly.
  • the property described in the following Non-Patent Document 1 that can efficiently represent non-linearly distributed data is used.
  • Non-Patent Document 1 In the image processing technique represented by Non-Patent Document 1, it is possible to project image data into a low-dimensional space that is efficiently compressed by performing nonlinear processing using the distance between images as an input. Furthermore, data distributed continuously and nonlinearly can be efficiently expressed by geodetic distance conversion and dimensional compression.
  • the main purpose of Non-Patent Document 1 is to visualize the similarity between images by projecting a plurality of still images to a low-dimensional space. A method for correctly extracting a moving object while responding to a change in posture is not disclosed. There is also a problem that the amount of calculation becomes enormous as the number of input data increases.
  • Non-Patent Document 1 represented by Non-Patent Document 2 and Non-Patent Document 3, it was not selected as a data point existing between the landmark points, that is, the landmarks.
  • linear interpolation is performed using landmark points.
  • a moving body such as a person whose shape changes has a different movement depending on the part even if it is the same moving body, so that the movements of the head and feet are different.
  • a second object of the present invention is to solve the problem of calculation amount in Non-Patent Document 1.
  • the object of the present invention is to solve these two problems, and the present invention can be applied to an image including a moving body such as a person who moves while changing its shape, even if the posture or size of the moving body is large. It is an object of the present invention to provide a moving body detection apparatus and the like that can extract a region at high speed and without being affected by the influence.
  • an embodiment of a moving body detection apparatus is a movement that detects a moving body in a moving image by extracting all or a part of the area of the moving body in the moving image.
  • a body detection apparatus comprising: an image input unit that accepts a plurality of pictures constituting a moving picture; and a block composed of one or more pixels that constitute the accepted picture, between two different pictures.
  • a motion analysis unit that detects a motion of an image, calculates a plurality of movement trajectories obtained by connecting the detected motions for the plurality of pictures, and divides the plurality of calculated movement trajectories into a plurality of subsets.
  • an area dividing unit that sets a part of the movement trajectory as a common point in the plurality of subsets, and representing the similarity between the plurality of movement trajectories
  • an embodiment of a vector data classification device is a vector data classification device that classifies a plurality of vector data into a class that is a collection of similar vector data,
  • a vector data input unit for receiving a plurality of vector data, and dividing the received plurality of vector data into a plurality of subsets used for calculating a geodetic distance, and at least one of the plurality of divided subsets
  • a region dividing unit that sets a part of the vector data included in the common point, a distance calculating unit that calculates a distance representing similarity between a plurality of vector data for each of the divided subsets; The calculated distance is traced from one movement locus to another movement locus while following the movement locus as a relay point.
  • Approximate geodetic distance that spans the subset by integrating the geodetic distance conversion unit that converts the geodetic distance that is the distance of the route and the geodetic distance that shares the common point among the converted geodetic distances And an approximate geodetic distance calculation unit for calculating a block, and using the calculated approximate geodetic distance to perform clustering that identifies blocks having similar vector data as one region, at least for the moving image And a data classification unit for generating one class.
  • the present invention can be realized not only as the mobile object detection apparatus and the vector data classification apparatus, but also as a mobile object detection method and vector data classification method using the respective constituent elements as steps, a program for causing a computer to execute the steps, It can also be realized as a computer-readable recording medium such as a CD-ROM storing the program.
  • the moving object can be detected at high speed and correctly without being affected by the posture or size of the moving object even for an image including a moving object such as a person who moves while changing its shape.
  • a region can be extracted from the region.
  • FIG. 1 is a diagram showing a basic configuration of a moving object detection apparatus according to Embodiment 1 of the present invention.
  • FIG. 2 is a hardware configuration diagram in the case where the moving object detection apparatus according to Embodiment 1 of the present invention is realized by software.
  • FIG. 3 is a flowchart showing the basic operation of the moving object detection device according to Embodiment 1 of the present invention.
  • FIG. 4 is a diagram illustrating a processing example of the motion analysis unit according to Embodiment 1 of the present invention.
  • 5 (a) to 5 (d) are diagrams showing a processing example of the area dividing unit in the first embodiment of the present invention.
  • FIGS. 6 (a) to 6 (c) are diagrams showing an example of the effect of the geodetic distance of the geodetic distance conversion unit in the first embodiment of the present invention.
  • FIGS. 7A and 7B are diagrams illustrating an example of the effect of the geodetic distance of the geodetic distance conversion unit in the first embodiment of the present invention.
  • FIG. 8 is a diagram illustrating a processing example of the approximate geodesic distance calculation unit according to Embodiment 1 of the present invention.
  • FIGS. 9A to 9C are diagrams showing a processing example of the region extraction unit in the first embodiment of the present invention.
  • 10 (a) to 10 (c) are diagrams showing a processing example of the area dividing unit in the first modification of the first embodiment of the present invention.
  • FIG. 11 is a flowchart showing the basic operation of the moving object detection device according to the second modification of the first embodiment of the present invention.
  • FIG. 12 is a diagram showing a dimension compression result of the region extraction unit in the second modification of the first embodiment of the present invention.
  • FIGS. 13A and 13B are diagrams showing the moving object detection results of the region extraction unit in the second modification of the first embodiment of the present invention.
  • FIG. 14 is a diagram illustrating a dimension compression result of the region extraction unit in the second modification of the first embodiment of the present invention.
  • FIG. 15 is a diagram showing a basic configuration in a third modification of the first embodiment of the present invention.
  • FIG. 16 is a flowchart showing the basic operation of the moving object detection device according to the third modification of the first embodiment of the present invention.
  • FIG. 17 (a) to 17 (e) are diagrams showing a processing example of the region extraction unit in the third modification of the first embodiment of the present invention.
  • FIG. 18 is a diagram showing a basic configuration in the fourth modification of the first embodiment of the present invention.
  • FIGS. 19A and 19B are diagrams showing a display example of the image display unit in the fourth modification of the first embodiment of the present invention.
  • FIG. 20 is a diagram illustrating a configuration example of the moving object detection device according to the fifth modification of the first embodiment of the present invention.
  • FIG. 21 is a diagram showing an example of recording / transmission data in the fifth modification example of the first embodiment of the present invention.
  • FIG. 22 is a diagram illustrating a configuration example of the moving object detection device according to the second embodiment of the present invention.
  • FIG. 23 is a flowchart showing the basic operation of the moving object detection device according to the second embodiment of the present invention.
  • FIG. 24 is a diagram illustrating an example of motion prediction according to Embodiment 2 of the present invention.
  • FIG. 25 is a diagram illustrating a configuration example of the moving object detection device according to the third embodiment of the present invention.
  • FIGS. 26A and 26B are diagrams showing an example of the camera arrangement of the moving object detection device according to the third embodiment of the present invention.
  • FIG. 27 is a flowchart showing the basic operation of the moving object detection device according to the third embodiment of the present invention.
  • FIGS. 28A and 28B are diagrams showing a processing example of the area dividing unit in the third embodiment of the present invention.
  • FIG. 29 is a diagram illustrating a configuration example of the moving object detection device according to the fourth embodiment of the present invention.
  • FIG. 30 is a flowchart showing the basic operation of the moving object detection device according to the fourth embodiment of the present invention.
  • FIGS. 31A to 31C are diagrams showing examples of figures that can be separated by the method according to the second embodiment of the present invention.
  • FIG. 32 is a diagram illustrating a configuration example of a moving object detection device according to a modification of the embodiment of the present invention.
  • One embodiment of a moving body detection apparatus is a moving body detection apparatus that detects a moving body in a moving image by extracting all or a part of the area of the moving body in the moving image,
  • An image input unit that accepts a plurality of pictures constituting an image, and a motion of an image between two different pictures for each block composed of one or more pixels that constitute the accepted picture, and is detected.
  • a motion analysis unit that calculates a plurality of movement trajectories obtained by connecting the motions of the plurality of pictures, and divides the calculated plurality of movement trajectories into a plurality of subsets, and a part of the plurality of divided subsets.
  • An area dividing unit that sets the movement trajectory as a shared point, and a distance calculation unit that calculates a distance representing the similarity between the plurality of moving trajectories for each of the divided subsets By integrating the calculated geodetic distance to the geodetic distance and the geodetic distance sharing the common point among the converted geodetic distances, the approximate geodesic across the subset Using the approximate geodetic distance calculation unit that calculates the distance and the calculated approximate geodetic distance, clustering that identifies blocks having similar movement trajectories as the same region is performed on the moving image.
  • a region extracting unit that extracts at least one region.
  • the approximate geodetic distance across the subset is calculated by integrating the geodetic distances using the shared points, so if the movement trajectory is not divided into subsets
  • the geodetic distances for the combinations between all two movement trajectories are calculated with a smaller calculation amount, and high-speed moving object detection becomes possible. That is, since the amount of calculation required for geodesic distance calculation can be reduced, a moving body can be detected at high speed. Furthermore, it is not necessary to hold or learn advance information such as shape information relating to a moving body to be extracted in advance.
  • the image input unit accepts the plurality of pictures for each of a plurality of moving images from a plurality of cameras
  • the motion analysis unit displays the plurality of movement trajectories for each of the plurality of moving images.
  • the region dividing unit holds the plurality of movement trajectories calculated for each of the plurality of moving images as the plurality of divided subsets, and the region extracting unit performs the clustering. At least one region may be extracted for the plurality of moving images. Thereby, the video obtained from a plurality of cameras can be processed in an integrated manner.
  • the region dividing unit converts the plurality of movement trajectories into the plurality of subsets in a space related to the position of the block on the image corresponding to the movement trajectory. It may be divided. Thereby, it becomes easy to divide the movement locus located near the position on the image as one subset.
  • geodesic distance calculation can be performed at higher speed.
  • the region dividing unit may divide the plurality of movement loci into the plurality of subsets according to a space division designated by the user for the picture.
  • the movement trajectory is expressed by a multidimensional vector
  • the region dividing unit displays the plurality of movement trajectories on a multidimensional vector space expressing the multidimensional vector.
  • the region dividing unit performs the division so that a part of a nearby subset overlaps, and sets a movement trajectory included in the overlapping region as the common point.
  • the region dividing unit may set, for each of the plurality of subsets, a movement locus close to a boundary with another subset among the movement locus belonging to the subset as the shared point. Good.
  • the geodetic distance is fast and accurate Can be calculated.
  • the geodetic distance can be calculated at high speed and accurately.
  • the geodetic distance conversion unit is calculated by the motion analysis unit by connecting small distances that satisfy a predetermined condition among the distances calculated by the distance calculation unit. It is preferable to convert each of the distances calculated by the distance calculation unit into a geodetic distance by obtaining a shortest path that reaches one other movement locus from the one movement locus that has been determined. Specifically, the geodetic distance conversion unit is predetermined for each of a plurality of movement trajectories included in the plurality of subsets, in order from the smallest of a plurality of distances from the movement trajectory to another movement trajectory.
  • Each of the distances calculated by the distance calculation unit is converted into a geodetic distance by selecting the number of distances and performing non-linearization to change the unselected distance to infinity and then obtaining the shortest path. Is preferred.
  • the distance selected by the threshold and the distance not selected are in a non-linear relationship, the similarity / dissimilarity between the movement trajectories is emphasized compared to the linear distance, like a person. It becomes possible to correctly express the movement of the object connected by the joint.
  • the geodetic distance conversion unit for each of a plurality of movement trajectories included in the plurality of subsets, out of a plurality of distances from the movement trajectory to another movement trajectory, a distance below a predetermined threshold value
  • Each of the distances calculated by the distance calculation unit may be converted into a geodetic distance by obtaining the shortest path after making a non-linearization by selecting and changing the distance not selected to infinity.
  • the region extraction unit detects at least one discontinuous point in the geodetic distance distribution calculated by the approximate geodetic distance calculation unit, and detects the detected defect. It is preferable to perform the clustering so that the movement trajectories separated by a geodetic distance smaller than the continuous points form one cluster. As a result, movement trajectories separated by a distance smaller than the discontinuous points form one cluster, and the number of generated clusters can be controlled by changing the discontinuous point conditions.
  • the region extraction unit performs dimensional compression by obtaining eigenvalues and eigenvectors for the geodetic distance calculated by the approximate geodetic distance calculation unit,
  • the clustering may be performed on a dimensionally compressed space.
  • the geodetic distance conversion unit generates a plurality of determination criteria for converting the distance into the geodetic distance, and each of the generated plurality of determination criteria
  • the geodetic distance corresponding to each of the plurality of judgment criteria is generated by converting the distance into the geodetic distance using the judgment criteria, and the approximate geodesic distance calculation unit
  • the integration is performed on the geodetic distances corresponding to each of the plurality of geodetic distances, and the region extracting unit extracts the region by performing the clustering on the integrated approximate geodetic distances corresponding to each of the plurality of determination criteria.
  • an area extraction candidate generation unit that generates the area extraction result as an area extraction candidate and an instruction about the number of classes are acquired.
  • a region extraction candidate from which a number of regions close to the acquired number of classes is extracted is selected from a plurality of region extraction candidates generated by the region extraction candidate generation unit, and the selected region extraction candidate is selected by the region extraction unit.
  • An area extraction candidate selection unit that outputs as a result of extraction can be used.
  • clustering is performed for each of the plurality of judgment criteria generated in advance, so that a desired number of clusters is generated from the plurality of clustering.
  • the geodetic distance conversion unit generates a plurality of threshold values as the plurality of determination criteria, and the distance calculation unit calculates each of the generated plurality of threshold values. It is preferable to generate a geodetic distance corresponding to each of the plurality of determination criteria by connecting distances smaller than the threshold among the distances. As a result, the similarity of the movement trajectory is determined by using the geodetic distance obtained by connecting the small distances. Therefore, compared with the clustering using the Euclidean distance that is a linear distance, the continuity regarding the similarity between the movement trajectories is improved. Clustering in consideration is performed, and it is reliably discriminated whether each block in the picture belongs to the same object (or part) or separate object (or part).
  • the moving body detection device further includes an image display unit that displays the region extraction result obtained by the region extraction unit on a picture received by the image input unit.
  • an image display unit that displays the region extraction result obtained by the region extraction unit on a picture received by the image input unit.
  • the moving body detection device further identifies a region in the picture received by the image input unit in correspondence with a result of region extraction by the region extraction unit, and for each identified region, a corresponding region extraction is performed. It is good also as a structure provided with the recording and transmission part which records and hold
  • the recording and transmission part which records and hold
  • the image input unit receives a moving image including two or more moving objects
  • the region extracting unit detects the two or more moving objects by extracting the region of the two or more moving objects. May be. Thereby, it is possible to correctly detect a plurality of moving objects not only for one moving body that moves while changing its shape but also for an image including a plurality of moving bodies.
  • the moving body detection device further calculates a movement locus representing the area from the movement locus of the block included in the area extracted by the area extraction unit, and predicts that the area moves according to the calculated movement locus.
  • a motion prediction unit that predicts the motion of the moving body.
  • Another embodiment of the present invention is a vector data classification device that classifies a plurality of vector data into a class that is a collection of similar vector data, a vector data input unit that receives the plurality of vector data, The received plurality of vector data is divided into a plurality of subsets used for calculation of geodetic distance, and a part of the vector data included in at least one of the plurality of divided subsets is used as a common point For each of the plurality of divided subsets to be set, a distance calculation unit that calculates a distance representing the similarity between a plurality of vector data, and the calculated distance as a relay point Geodetic distance conversion that converts the distance from one movement locus to another one while following the locus.
  • an approximate geodetic distance calculation unit that calculates an approximate geodetic distance that spans the subset by integrating the geodetic distances that share the common point among the converted geodesic distances, and the calculated approximate
  • a data classifying unit that generates at least one class for the moving image by performing clustering that identifies blocks having similar vector data as one region using a simple geodetic distance.
  • Similar vector data is grouped and classified. For example, when vector data related to three-dimensional motion is input, an articulated object such as a person composed of a plurality of parts having different motions is moved. Even in the case of detection as a body, it is classified as one region, so that accurate region extraction is performed and a moving body is reliably detected. That is, it is possible to correctly classify a moving body such as a person who moves while changing its shape, that is, extract a region.
  • the approximate geodetic distance across the subsets is calculated by integrating the geodetic distances using the shared points, so when the vector data is not divided into subsets In comparison, geodesic distances for all combinations of two vector data are calculated with a smaller amount of calculation, and high-speed data classification becomes possible.
  • Embodiment 1 First, the mobile body detection apparatus and mobile body detection method according to Embodiment 1 of the present invention will be described.
  • FIG. 1 is a diagram showing a configuration of the moving object detection apparatus 100 according to the first embodiment.
  • the moving body detection apparatus 100 includes an image input unit 101, a motion analysis unit 102, a region division unit 103, a distance calculation unit 104, a geodetic distance conversion unit 105, an approximate geodetic distance calculation unit 106, and a region An extraction unit 107 and an output unit 108 are provided. And this moving body detection apparatus 100 detects the moving body in a moving image by extracting the area
  • the image input unit 101 is a processing unit that receives input of a plurality of temporally different images (pictures) constituting a moving image, and is, for example, a video camera or a communication interface connected to the video camera.
  • the motion analysis unit 102 performs image motion between two different pictures (for example, two temporally adjacent pictures) for each block including one or more pixels constituting the picture received by the image input unit 101. Is a processing unit that calculates a movement trajectory by connecting the detected motions for a plurality of pictures.
  • the area dividing unit 103 is a processing unit that divides the movement trajectory calculated by the motion analysis unit 102 into a plurality of subsets, and sets a part of the movement trajectories as shared points in the plurality of divided subsets.
  • the area dividing unit 103 sets a common point so that at least some of the movement trajectories overlap or are connected between the subsets. That is, in the present embodiment, the area dividing unit 103 divides a plurality of movement trajectories into a plurality of subsets in a space related to a position on an image. For example, a plurality of movement trajectories are divided into a plurality of subsets in a space related to the position on the image so that blocks having close positions on the picture corresponding to the movement trajectory belong to the same subset. Divide into
  • the distance calculation unit 104 is similar to the combination of the two movement tracks in the plurality of movement tracks included in the subset. It is a processing part which calculates the distance showing.
  • the distance calculation unit 104 captures the movement trajectory of the block i included in the subset calculated by the motion analysis unit 102 and the subset other than the block i in order to capture the shape change of the moving object in the image.
  • a distance representing the similarity of motion between the blocks is calculated using the movement trajectory of the included block. For example, when the movement trajectory of N blocks is targeted, the calculated distance is a distance matrix composed of N ⁇ N distances.
  • the distance between the blocks changes depending on the movement, in particular, an object such as a person that moves while changing its shape like a joint object. It is possible to express movement as a distance matrix.
  • the movement locus of the block i is referred to as the movement locus i.
  • the “distance” in this specification includes not only the distance between two points in a two-dimensional space but also the arithmetic distance between multidimensional data, and a single value or a set of a plurality of values. (Distance matrix).
  • the geodetic distance conversion unit 105 is a processing unit that performs geodetic distance conversion on the distance matrix in each subset calculated by the distance calculation unit 104.
  • the approximate geodetic distance calculation unit 106 calculates an approximate geodetic distance by integrating the geodetic distances across the subsets using the shared points among the geodetic distances converted by the geodetic distance conversion unit 105. It is a processing unit that calculates an approximate geodetic distance for a combination of two movement trajectories in a plurality of movement trajectories calculated by the motion analysis unit 102 by performing processing. That is, the approximate geodetic distance calculation unit 106 calculates an approximate geodetic distance that spans between the subsets by integrating the geodetic distance matrices in the respective subsets calculated by the geodetic distance conversion unit 105.
  • the reason why the “approximate” geodetic distance is calculated is that the geodetic distance across the subsets is compared to the case where the geodetic distances are calculated using all the movement trajectories belonging to the subsets. This is because the geodesic distance is generally calculated using the movement trajectory set as the common point.
  • the region extraction unit 107 is a processing unit that performs region extraction by specifying a region composed of blocks having similar movement trajectories based on the distance calculated by the approximate geodesic distance calculation unit 106.
  • the image input unit 101 performs clustering that identifies blocks having movement loci that are separated by a geodetic distance smaller than a certain threshold among the geodetic distances integrated by the approximate geodetic distance calculation unit 106 as one region. At least one region is extracted from the received moving image. More specifically, in the present embodiment, this region extraction unit 107 uses the distance matrix calculated by the distance calculation unit 104 to use the distance between the subsets obtained by the geodetic distance conversion unit 105 and the approximate geodetic distance calculation unit 106.
  • Discontinuity in the distribution of the distance between the trajectories is detected from the geodetic distance across the two, and the discontinuous points are also arranged so that the trajectories separated by a distance smaller than the detected discontinuity become one cluster.
  • the moving trajectories that are continuously distributed to each other are clustered to detect a moving object in the image and extract an area of the image, and as a result, detect a moving object in the image and extract an area of the image.
  • the output unit 108 is a processing unit that outputs a detection result of a moving object in a moving image performed by the region extraction unit 107 or a region extraction result of the image, a writing unit to a memory or a hard disk, a display device, or the like.
  • Unit 107 and output unit 108) are, as shown in FIG. 2, a CPU 1005, a RAM 1007, a ROM 1006, a communication interface 1004 for connecting to the camera 1001, an I / O port (video card 1009, etc.), a hard disk 1008, and a display 1003.
  • the program may be realized by software such as a program executed on a computer 1002 provided with the above, or may be realized by hardware such as an electronic circuit.
  • the components other than the input / output device such as the display device may be realized by a program and data (that is, software) executed by a computer, an electronic circuit, It may be realized by hardware such as a memory and a recording medium, or may be realized by mixing them.
  • the functional elements of the present invention are realized by executing a program using computer hardware resources such as a CPU, a memory, and an input / output circuit. . That is, the CPU reads out (takes out) data to be processed from the memory or the input / output circuit, and temporarily stores (outputs) the operation result in the memory or the input / output circuit.
  • the function is realized.
  • the present invention when the present invention is realized by hardware, it may be realized by a one-chip semiconductor integrated circuit, or may be realized by mounting a plurality of semiconductor chips on one circuit board. It may be realized as one device in which all the components are housed in one housing, or may be realized by cooperation of a plurality of devices connected by a transmission path.
  • the present invention can be realized by a server / client system by providing the storage unit in the present embodiment in a server device and providing the processing unit in the present embodiment in a client device that wirelessly communicates with the server device. Good.
  • step S201 the image input unit 101 receives a plurality of pictures.
  • step S202 the motion analysis unit 102 calculates a block motion from at least two pictures.
  • pixel motion is calculated as an example of calculating block motion.
  • pixel unit processing will be described as an example of block unit processing.
  • Non-Patent Document 4 the method disclosed in Non-Patent Document 4 or Non-Patent Document 5 can be used to calculate a motion vector by optical flow calculation.
  • P. Anandan “A Computational Framework and an Algorithm for the Measurement of Visual Motion”, International Journal of Computer Vision, Vol. 2, pp. 283-310, 1989 Vladimir Kolmogorov and Ramin Zabih, “Computing Visual Correspondence with Occlusions via Graph Cuts”, International Conference on Computer Vision, 2001
  • the motion vector (u i t , v i t ) of the pixel i is estimated using the pictures input at time t and time t + 1.
  • the frames do not necessarily have to be continuous.
  • the motion of the pixels may be obtained using pictures input at time t and time t + n.
  • n is an integer of 1 or more.
  • an affine parameter may be estimated as the pixel motion instead of the two-dimensional motion vector. At this time, motion information may be obtained for all pixels.
  • the image may be divided into grids to obtain motion information only for pixels on the grid at regular intervals, or as described above, the image may be divided into blocks and each block may be obtained. You may also ask for motion information. Furthermore, when a motion vector is calculated using the method disclosed in Non-Patent Document 4, since the reliability can be calculated, only pixels having motion information with high reliability may be used. Further, when the motion vector is calculated using the method disclosed in Non-Patent Document 5, the occlusion can be estimated. For this reason, only the motion information of pixels that are not shielded may be used.
  • a method of calculating a motion vector assuming affine deformation of a block may be used instead of the method of calculating a motion vector assuming the translational movement of the block.
  • the method disclosed in Non-Patent Document 6 below can be used. Jianbo Shi and Carlo Tomasi, “Good Features to Track”, IEEE Conference on Computer Vision and Pattern Recognition, pp 593-600, 1994.
  • the above method estimates the affine parameter A i t corresponding to the motion in the vicinity of the pixel i of the picture input at time t and time t + 1.
  • pixel positions x i t and x i t + 1 on the picture at time t and time t + 1 have the following relationship.
  • the above method can estimate the motion of the pixel i with higher accuracy than the method of calculating a motion vector assuming a translational movement, particularly for an object that rotates.
  • step S203 the motion analysis unit 102 uses the motion information calculated in step S202 to calculate the movement trajectory i from the pixel motion for a plurality of temporally different pictures.
  • the movement locus of the pixel i is referred to as a movement locus i.
  • the motion of the pixel i is tracked using the motion information 302 calculated in step S202 from the pixel i303 of the input image 301 at time t.
  • the movement locus i (here, x i ) is calculated using the pixel position (x i t , y i t ) on the picture at the time t when the pixel i passes.
  • T is the number of pictures used to calculate the movement trajectory. Furthermore, in the expression 2, it is possible not to perform the following processing for a movement trajectory having no movement or a movement trajectory having a small movement.
  • the area dividing unit 103 divides the space related to the position of the image 401 into areas as P subsets 402 as shown in FIG.
  • the subset 402 is also a set of movement trajectories corresponding to the divided image regions (positions on the image).
  • the subsets are set or the common points are set so that the subsets have a common point (movement trajectory that logically belongs to both subsets).
  • a part of the space related to the position of the image 401 is set to overlap and belongs to the overlapping region.
  • the movement trajectory corresponding to the image region may be set as a shared point, or the movement trajectory corresponding to the position on the image close to the boundary of the subset as shown in FIG.
  • the shared points 403 may be set, or as shown in FIG. 5D, the subsets may be set spatially at high density, and the shared points 403 may be set spatially sparse.
  • FIG. 5 (a), FIG. 5 (c), FIG. By making it square as shown in (d), there is an effect of making it difficult to be affected by the rotation of the subject or the camera.
  • a subject that is long in the vertical direction such as a person
  • the shape of the person can be extracted more accurately by using a vertically long rectangle as shown in FIG.
  • an animal such as a dog
  • the amount of calculation is further reduced by reducing the overlap.
  • the size of the subset at the top of the image is made smaller than the subset at the bottom of the image, so that the subject at the bottom of the image is large and the subject at the top of the image is small.
  • the effect of reducing the subset at the top of the image instead of the square can also be realized by dividing the subset into trapezoids. The number and size of each subset will be described later.
  • the movement locus corresponding to the image area is obtained by dividing the movement locus i into a subset based on the position on the image in the divided image area, for example, When the position (x i 1 , y i 1 ) on the image belongs to the subset p, the movement shown in the above equation 2 through the position (x i 1 , y i 1 ) on the image at time 1 Assign trajectory i to subset p. Further, when the position (x i t , y i t ) on the image at a certain time t belongs to the subset p, the movement trajectory i passing through (x i t , y i t ) is assigned to the subset p. You may do it. Furthermore, the time average position on the image of the movement trajectory is calculated by calculating the time average for the movement trajectory i of Equation 2 above.
  • the movement locus i may be assigned to the subset p to which the time average position belongs.
  • the shared point is a movement locus corresponding to the image region (position on the image). As described above, each of the movement trajectories is divided into a plurality of subsets by dividing the image into P pieces based on the image regions (positions on the image). Will be divided.
  • the distance calculation unit 104 calculates, for each subset p divided in step S204, a distance matrix including similarity of pixel motion using the movement trajectory i belonging to the subset p. .
  • the linear distance f p (i, j) representing the similarity between the movement trajectory i and the movement trajectory j can be calculated by the following equations 3 to 13. It should be noted that the distances represented by Equations 3 to 13 may include a nonlinear function, but in order to distinguish from the geodetic distance calculated by the nonlinear transformation and the route searching method described later, This is called a linear distance.
  • the movement trajectory i and the movement trajectory j belong to the same subset p, and the following calculation is performed for each subset p.
  • w is a weighting coefficient, which is a parameter set by the designer.
  • w is a weighting coefficient, which is a parameter set by the designer.
  • the linear distance f p (i, j) may be defined as:
  • ptn ij and mtn ij are the time average value of the distance between the moving trajectories and the time fluctuation component of the distance between the moving trajectories, and the definitions thereof will be shown below.
  • the time variation component of the distance between moving tracks shown in Equation 6 is changed to the linear distance f p ( i, j).
  • the fluctuation component of the distance between the movement trajectories shown in Expression 6 indicates the similarity of the movements of the pixels, so that not only the rigid body in which the relationship between the distances between the pixels does not change with time but also the joint object. Etc. can be captured.
  • the same effect can be expected by using time-variable components such as Expression 8 to Expression 13 instead of Expression 6.
  • u t i is a motion vector from time t to t + 1 (u i t, v i t), ⁇ u t i ⁇ u t i> is the inner product.
  • the following calculation may be used as the time variation component.
  • step S206 the geodetic distance conversion unit 105 uses the threshold R for the linear distance f p (i, j) in the subset p calculated by the above formula 3 or the above formula 4 as follows: Nonlinear processing is performed to calculate f ′ p (i, j).
  • the R movement trajectories j are selected in ascending order of the linear distance f p (i, j) to the movement trajectory i, and the distance to the selected movement trajectory j is selected without being changed.
  • the distance from the missing movement locus j is changed to infinity.
  • the linear distance is selected in ascending order, but the threshold value R may be set as in the following equation.
  • the geodetic distance conversion unit 105 selects a predetermined number (R) of movement trajectories in ascending order of distance for each of a plurality of movement trajectories belonging to the subset p calculated by the motion analysis unit 102, After non-linearizing the distance to the unselected movement trajectory to infinity, each of the plurality of distances may be converted into a geodetic distance, or belongs to the subset p calculated by the motion analysis unit 102 For each of the plurality of movement trajectories, after selecting a movement trajectory whose distance is equal to or less than a predetermined threshold and performing non-linearization to change the distance from the unselected movement trajectory to infinity, each of the plurality of distances is changed. You may convert into geodesic distance.
  • the distance non-linearization is not limited to the above function, and any distance can be used as long as the nonlinear transformation is performed on the distances related to the movement trajectory i and the movement trajectory j.
  • linear distance f p (i, j) is weighted by multiplying the weight calculated by using Expression 16 and Expression 17 as follows, and then the processing of Expression 14 or Expression 15 is performed. Also good.
  • NN indicates that processing is performed on points that are close to the movement trajectory and belong to the same subset p.
  • a movement trajectory within a certain distance from the movement trajectories j and i, or The calculation is performed using N movement trajectories in ascending order of distance. That is, N a and N b are the number of movement trajectories belonging to the same subset p and within a certain distance, or N. Note that z is set by the designer.
  • dispersion may be used as in the following equation.
  • the geodetic distance g p (i, j) is calculated using the non-linearized distance f ′ p (i, j) as in the following equation.
  • min (x, y) is a function that returns the smaller of the values x and y.
  • s is a movement trajectory s, which is a relay point for tracing from the movement trajectory i to the movement trajectory j.
  • the relay point s in f ′ p (i, s) + f ′ p (s, j) is not limited to one point.
  • p corresponds to each subset. This method is a shortest path search method called the Dijkstra method, and is described in Non-Patent Document 7 below.
  • the geodetic distance conversion unit 105 connects one of the distances calculated by the distance calculation unit 104 with a small distance that satisfies a predetermined condition, thereby calculating one movement locus calculated by the motion analysis unit 102.
  • Each of the distances calculated by the distance calculation unit 104 is converted into a geodetic distance by obtaining the shortest route from one to the other movement locus.
  • FIG. 6A shows a two-dimensional data distribution.
  • each data point corresponds to the movement trajectory i shown in the above equation 3 or 4.
  • the distance between the data point i and the data point j is the distance between the data point i and the data point k. Smaller than.
  • FIG. 6B shows a two-dimensional data distribution.
  • the distance between the data point i and the data point j is not the Euclidean distance but the geodetic distance, for example, by performing the processing of Expression 15 and Expression 17 above. This is the distance that the data point is traced as indicated by an arrow. As a result, unlike the case where the Euclidean distance is used, the distance between the data point i and the data point j is larger than the distance between the data point i and the data point k.
  • the distance between the movement trajectories at time t as shown in the above equation 5 is taken as an example.
  • the fluctuation component of the distance between the movement trajectories as the similarity of the movement of the pixels as shown in the above equation 3, not only the shape of the joint object etc. but also the shape change Can also be captured.
  • FIG. 7A shows an example of the case where the non-linearization process of Expressions 14 to 17 is not performed.
  • the distance between the head pixel i 602 and the hand tip pixel j 603 is a distance indicated by a linear distance 601.
  • the threshold value R is appropriately set by performing nonlinear processing such as Expression 14 to Expression 17, as shown in FIG. 7B
  • the distance to j603 is a distance (that is, a geodetic distance) as a linear sum as indicated by an arrow from the pixel k604 to the pixel j.
  • the linear distance 601 cannot continuously represent the shape of joints of joint objects such as a person as data, whereas the geodetic distance expresses continuity using the shape of joints as a distance. It becomes possible.
  • the geodesic distance calculation method is not limited to the method that requires the nonlinear processing of Equation 14 to Equation 17.
  • the distance in the linear distance and the geodetic distance is in a relationship opposite to the similarity, and the distance is small when the similarity is high, and the distance is large when the similarity is small. Therefore, when using the similarity instead of the distance described above, the reciprocal of the similarity is used as the distance, or the value obtained by subtracting the similarity from the value equal to or greater than the maximum value of the similarity is used as the distance. It may be converted into a distance so as to satisfy the conflicting relationship.
  • step S207 the approximate geodetic distance calculation unit 106 calculates an approximate geodetic distance across the subsets by integrating the geodetic distance matrix g p (i, j) in each subset. Specifically, the integration process is performed as follows using the shared point set in step S204.
  • c is a common point and is a movement trajectory belonging to both the subset p and the subset q. That is, the movement trajectory is overlapped between a plurality of subsets.
  • the shared point does not necessarily belong to two subsets, and may belong to three or more subsets.
  • i and h are indexes corresponding to movement trajectories belonging to different subsets p and q, respectively.
  • the shared point c is not limited to one point as in the example shown in FIG.
  • the present invention is not limited to two sets of subsets p and q. If a plurality of shared points are used and the geodetic distance is added so as to straddle each subset, with respect to Equation 21 above. A geodetic distance spanning between two or more subsets can be calculated.
  • the linear distance f c (c i , c j ) has an effect of connecting the shared points.
  • f c (c i , c j ) may be calculated for all shared points, or a distance between at least one shared point that is spatially close may be obtained.
  • it is not limited to the two sets of subsets p and q, and the geodetic distance so as to straddle each of the subsets using the linear distance connecting the plurality of shared points with respect to Equation 22 above.
  • step S204 the subsets are divided into different subsets a and b.
  • step S205 geodesic distances in the respective subsets (for example, geodetic distance 704 in subset a and geodetic distance 705 in subset b) are calculated. To do. Then, in step S207, by performing the integration process using the shared point 703, for example, a movement locus i corresponding to the head point and a movement locus j corresponding to the toe point in FIG. An approximate geodetic distance g (i, j) across the subsets can be obtained.
  • the geodetic survey is performed with the same accuracy as the case where the process of dividing into the subsets is not performed by performing the integration process.
  • the distance can be calculated.
  • the geodetic distance can be calculated with a small amount of calculation compared to the case where the geodetic distance is calculated without being divided into subsets. Specifically, it is shown in Non-Patent Document 3 that the amount of calculation required for geodetic distance calculation is O (N 2 logN), where N is the number of movement trajectories.
  • the approximate calculation amount for the distance calculation and integration is as follows.
  • M is the number of subsets
  • C is the number of all sharing points, that is, the total number of sharing points between the partial areas shown in FIG. C 2 logC is the amount of calculation required for the geodetic distance integration processing in the above equation 21.
  • N the number of movement trajectories
  • the amount of calculation is approximately 0, compared with the case where it is not divided into subsets. .11 times.
  • the amount of calculation reduction can be estimated by using two variables, the number M of subsets and the common point C. When accuracy is important, it is desirable to take many overlapping areas.
  • the number C of all shared points it is preferable to increase the number C of all shared points. Furthermore, when importance is attached to the calculation amount, it is preferable to increase the number M of subsets. However, considering the accuracy, the number C of all shared points also needs to be increased accordingly. It is necessary to decide on the balance between movement and accuracy. As described above, by integrating geodetic distances using shared points, geodetic distance calculation processing can be performed at high speed.
  • step S208 the region extraction unit 107 uses the geodetic distance g (i, j) integrated by the approximate geodetic distance calculation unit 106 to detect discontinuous points, and from blocks having similar movement trajectories. Region extraction is performed by specifying the region to be configured.
  • g (i, j) is infinite.
  • An example of the geodetic distance obtained for the threshold value R will be described with reference to FIGS. 9 (a) to 9 (c).
  • FIG. 9 (a) shows the movement trajectories a to h
  • FIG. 9 (a) shows the movement trajectories a to h
  • FIG. 9 (b) is a conceptual diagram of a multidimensional space expressing the movement trajectories a to h shown in FIG. 9 (a).
  • the number of the movement trajectories a to h shown in FIG. 9A is eight, actually, the movement trajectory corresponding to each pixel may be used, or the movement trajectory obtained in units of blocks may be used. It may be used.
  • one point (point a to point h) in the multidimensional space shown in FIG. 9B corresponds to one moving locus shown in the above equation 2. In other words, this is a result of tracking pixels not only over an area on one picture but over a plurality of pictures that differ in time.
  • the distance between the points does not correspond to the Euclidean distance between the vectors, but corresponds to the geodetic distance calculated from the above equations 20 and 21 (however, Except infinity).
  • FIG. 9C An example of clustering shown in FIG. 9C will be described.
  • the distance between the movement locus a and the movement locus b shown in the above equation 3 or 4 is f (a, b)
  • the threshold value is set as R
  • g p (e, f) is infinite even if the geodetic distance is obtained by the above equation 20.
  • the result g (e, f) obtained by integrating the geodetic distances by the above formula 21 or 22 is also infinite. Therefore, the region extraction unit 107 determines that the distance between the movement locus e and the movement locus f is a discontinuous point. As a result, the geodesic distance between the movement trajectories a to d and the movement trajectory e does not pass through discontinuous points, and thus does not take an infinite value. Conversely, the movement trajectories f to h and the movement trajectories a to e The geodetic distance to each movement locus is infinite because it passes through the discontinuous point g (e, f).
  • the set of the movement trajectory i and the movement trajectory j whose geodetic distance does not become infinite is the same cluster, and when it is infinite, it is a different cluster.
  • the two clusters of ⁇ 1 and ⁇ 2 can be separated.
  • the movement trajectories a to h in FIG. 9C the movement trajectories a to e regarding the upper body belong to the cluster ⁇ 1
  • the movement trajectories f to h regarding the lower body belong to the cluster ⁇ 2 . That is, the result of separation into clusters is the result of direct region extraction.
  • each region obtained as a result of performing region extraction without using a movement trajectory having no motion corresponds to each moving body. It is not necessary to distinguish from region extraction for extracting each mobile region.
  • region extraction is performed using a movement trajectory that does not move, for example, the region having the maximum size can be used as the background, and other regions can be used as the detection result of the moving object.
  • the method for detecting the moving object from the result is not limited to this.
  • clustering is performed based on the distance between pixels or the similarity of movement trajectories, whereby similar movement trajectories are collected and region extraction is performed.
  • a region that is close in distance and moves similarly is recognized as one region, and as a result of temporally tracking the region of the object moving in the moving image, regardless of the posture of the joint object, It is possible to detect a moving object or a part of the moving object in a moving image and extract an area of an image including the moving object.
  • the geodetic distance across the subset is calculated by integrating the geodetic distance using the shared points, so compared to the case where the movement trajectory is not divided into subsets. With a small amount of calculation, geodesic distances for all combinations of two moving trajectories are calculated, and high-speed moving object detection is possible.
  • the region extraction that is, the detection of the moving object is performed at high speed without being affected by the posture or size of the moving object. It can be performed.
  • the moving body detection apparatus has the same configuration except for the processing of the area dividing unit 103 as compared with the first embodiment, description of the same components is omitted.
  • the processing in the area dividing unit 103 is the processing in the area dividing unit 103.
  • the space related to the position of the image 401 is divided into regions as P subsets 402, but here, the movement trajectory as shown in Equation 2 above, that is, multidimensional Divide into P subsets on the vector space. That is, in the present modification, the region dividing unit 103 performs a multi-dimensional vector space representing a movement trajectory (multi-dimensional vector) so that similar movement trajectories belong to the same subset. A plurality of movement trajectories are divided into a plurality of subsets.
  • steps S201 to S203 are the same as those in the first embodiment, description thereof will be omitted.
  • step S204 the region dividing unit 103 divides the moving trajectory calculated by the above equation 2 as shown in FIG. 10 (a) to FIG. 10 (c), that is, into a subset on the multidimensional vector space.
  • FIG. 10A shows a movement locus 901
  • FIG. 10B is a conceptual diagram of a multidimensional vector space expressing the movement locus 901 shown in FIG. 10A.
  • a multidimensional vector one point in the multidimensional vector space
  • FIG. 10B shows the result of tracking pixels over a plurality of pictures that differ not only in the area on one picture but also in time.
  • the region dividing unit 103 divides the multidimensional vector space into a plurality of partial regions.
  • the subset 903 is a set of points existing in the divided multidimensional vector space, that is, a movement locus.
  • the black circle is a shared point 904.
  • a part of the multidimensional vector space is set so as to overlap, and the movement trajectory belonging to the overlapping region may be used as the shared point.
  • the movement trajectory that is close at the boundary of the subset in the multidimensional vector space may be set as the shared points 904, the subsets may be set spatially dense, and the shared points 904 may be set spatially sparse.
  • a rectangular parallelepiped as shown in FIG. 10 (c) (in fact, it is multidimensional, so an n-dimensional rectangular parallelepiped). It may be a polyhedron. Moreover, it is desirable to set so as to include all the movement trajectories by a plurality of subsets.
  • step S204 calculation is performed as follows for all the movement trajectories.
  • i and j are all the movement trajectories calculated by Equation 2.
  • Equation 7 the distance matrix f (i, j) between the movement trajectories calculated by the above equation 24 is regarded as several row vectors of movement trajectories. That is, the i-th row vector corresponds to the movement locus i.
  • Each row vector can be considered as a multidimensional vector. Therefore, conceptually, the row vector of the distance matrix between the movement trajectories can be expressed as a point on the multidimensional space shown in FIG. Therefore, in the same manner as described in the above embodiment, the movement trajectory can be divided into subsets on the multidimensional vector space using the subsets as shown in FIG.
  • PCA Principal Component Analysis
  • a movement trajectory that is, the above-described multidimensional vector, in a multidimensional space expressing a multidimensional vector.
  • the multidimensional vector space can be compressed to a lower dimension.
  • the movement trajectory can be divided into subsets in the two-dimensional space by the same processing as dividing into subsets in the image space. Is possible.
  • step S206 and subsequent steps may be performed in the same manner as in the first embodiment, description thereof is omitted.
  • clustering is performed based on the distance between pixels or the similarity of the movement trajectories, whereby similar movement trajectories are collected and region extraction is performed.
  • a region that is close in distance and moves similarly is recognized as one region, and as a result of temporally tracking the region of the object moving in the moving image, regardless of the posture of the joint object, It is possible to detect a moving object or a part of the moving object in a moving image and extract an area of an image including the moving object.
  • the region extraction that is, the detection of the moving object is performed at high speed without being affected by the posture or size of the moving object. It can be performed.
  • the moving body detection apparatus has the same configuration except for the processing of the region extraction unit 107 as compared with the first embodiment, the description of the same components is omitted.
  • This area extraction unit 107 dimensionally compresses a geodetic distance matrix, and clustering movement trajectories in the dimension-compressed space, thereby extracting a region. It is a point to detect a moving body.
  • steps S201 to S207 are the same as those in the first embodiment, description thereof is omitted.
  • step S1001 the region extraction unit 107 performs dimensional compression of the geodetic distance matrix calculated in step S207.
  • Dimensional compression can be realized by obtaining Eigensystem after performing Young-Householder conversion. This is a method for efficiently projecting data distributed in a multi-dimensional space to a low-dimensional space, and noise in input data (here, an error is included in motion information when calculating the movement trajectory of Equation 2 above). Data can be expressed robustly.
  • the region extraction unit 107 generates a non-linear distance matrix.
  • a Young-Householder transformation is performed on the above equation 25 by multiplying the centering matrix H from both sides. This is performed in order to convert the distance matrix into a distance matrix having the center of gravity as the origin, whereas the distance matrix is a distance matrix composed of distances between points.
  • I is a unit matrix
  • N is the number of movement trajectories shown in Equation 2 above.
  • the region extraction unit 107 calculates Q eigenvectors (eigenvectors) e q for ⁇ (G) and the corresponding eigen value (eigenvalues) ⁇ q for dimensional compression.
  • e i q is the i-th element of the q-th eigen vector e q .
  • the number Q of eigen vectors may be determined experimentally according to the scene to be used, or may be determined based on the contribution rate a q calculated from the eigen value ⁇ q as follows.
  • Q is the number of eigen vectors used, that is, the number of dimensions of the compressed space.
  • N is the number of all eigen vectors. Therefore, Q when the contribution rate a Q becomes a certain value or more may be set as the number of eigen vectors.
  • the movement trajectory i shown in the above equation 2 can be associated with the data z i q on the non-linearly dimensionally compressed space stretched by the eigen vector e q .
  • FIG. 12 shows the result of projecting the movement trajectory i when a human walking image is input into a non-linearly dimensionally compressed space.
  • the horizontal and vertical axes are eigen vector e 1 and e 2 , respectively.
  • Points are projected on a two-dimensional (z i 1, z i 2 ) is obtained by projection of g i.
  • the point (z i 1 , z i 2 ) It can be understood that it corresponds to i.
  • the number of dimensions of the compression space is two-dimensional. However, the number of dimensions is not necessarily two-dimensional, and data can be projected with higher accuracy with a higher number of dimensions.
  • step S1002 the region extraction unit 107 performs detection of the moving body and region extraction by performing clustering on the data projected in the compressed space as shown in FIG. 12 in step S1001. Do.
  • the segment area is expressed as follows.
  • the segment area is an extracted area, that is, coincides with the detection result of the moving object.
  • M is the number of segment areas and is determined empirically according to the scene to be used. However, it is different from M in Equation 23 above.
  • Each segment area ⁇ m is a parameter
  • I an average value of the coordinate values of the data belonging to the segment area ⁇ m in the compression space
  • Z m is a covariance matrix relating to the coordinate values of the data belonging to the segment area ⁇ m .
  • the initial value may be determined at random, or the coordinate value of the intersection may be set as the initial value by dividing the compressed space by a grid at equal intervals.
  • C m is the number of data belonging to the segment area ⁇ m in the compressed space.
  • the region extraction unit 107 obtains a segment region ⁇ m to which the data z i on the compressed space belongs using the following distance function.
  • ⁇ m (z i ) indicates the distance between the data z i on the compression space corresponding to the movement locus i and each segment region ⁇ m .
  • Each data belongs to the segment area ⁇ m in which ⁇ m (z i ) has the minimum value.
  • ⁇ m (z i ) is the Mahalanobis distance
  • ⁇ m (z i ) may be used in place of ⁇ m (z i ).
  • p ( ⁇ m ) may be a constant value, or may be set in advance based on the shape and area ratio of the person part when segmenting a predetermined moving body such as a person.
  • ⁇ m is a weighting factor for the segment region ⁇ m .
  • the region extraction unit 107 uses the data z i belonging to the segment region ⁇ m from the calculation result of the above equation 35, and sets the parameter of the region ⁇ m as follows.
  • the region extraction unit 107 can obtain the segment region ⁇ m to which each data on the compression space belongs by repeating the distance calculation and the parameter update of the above Equations 35 to 38 for a specified number of times.
  • other clustering methods such as k-means and competitive learning may be used.
  • the segment area ⁇ 1 is the head of the person
  • the segment area ⁇ 2 is the upper body
  • the segment area ⁇ 3 is the arm
  • the segment area ⁇ 4 corresponds to the lower part of the body
  • segment areas ⁇ 5 and ⁇ 7 correspond to the thigh
  • segment areas ⁇ 6 and ⁇ 8 correspond to the lower leg.
  • the segment area ⁇ 9 mainly corresponds to a part of the background.
  • the segment area on the compression space corresponds not only to the area on one image but also to a plurality of temporally continuous images. It is the result of tracking. That is, as a result of temporally tracking the region of an object moving in the image by performing segmentation on the compressed space, detection of the moving object (part of the moving object) in the image, and detection of the image including the subject Extraction can be done.
  • the threshold value R is set to a value larger than that for the purpose of segmentation of the part by using the formula 14 or the formula 15.
  • the correspondence of the segment areas ⁇ 1 and ⁇ 2 on the compressed space on the image will be described.
  • the segment area ⁇ 1 corresponds to the movement of the bicycle on the image
  • the segment area ⁇ 2 corresponds to the walking of the person on the image.
  • the segment area in the compressed space corresponds to not only the area on one image but also a plurality of temporally continuous images. It is a result. That is, by performing segmentation on the compression space, each moving object can be detected as a result of temporally tracking the area of the moving object.
  • a motion detection error or the like is performed by performing clustering after performing dimensional compression based on the distance between pixels or the similarity of movement trajectories.
  • Objects that are robust against noise and similar movement trajectories are grouped together and region extraction is performed, so that objects that are close in distance and have similar movement are recognized as one area and move in the moving image
  • the region extraction that is, the detection of the moving object is performed at high speed without being affected by the posture or size of the moving object. It can be performed.
  • a region extraction candidate is generated, and a candidate closest to the predetermined number of moving objects is selected from the candidates.
  • An example of performing region extraction by selection will be described.
  • FIG. 15 is a diagram illustrating a configuration of the moving object detection device 100a according to the third modification of the first embodiment.
  • the moving object detection device 100 a includes an image input unit 101, a motion analysis unit 102, a region division unit 103, a distance calculation unit 104, a geodetic distance conversion unit 105 a, an approximate geodetic distance calculation unit 106 a, and a region An extraction unit 107a and an output unit 108 are provided.
  • the region extraction unit 107a includes a region extraction candidate generation unit 1401 and a region extraction candidate selection unit 1402.
  • the moving body detection apparatus 100a detects the moving body in the moving image by performing region extraction that specifies all or a part of the moving body in the moving image.
  • the image input unit 101, the motion analysis unit 102, the region division unit 103, and the distance calculation unit 104 are the same as those in the first embodiment, description thereof will be omitted.
  • the geodetic distance conversion unit 105a generates a plurality of determination criteria for the distance matrix in each subset calculated by the distance calculation unit 104, and uses the determination criteria for each of the generated plurality of determination criteria. It is a processing unit that generates a geodetic distance corresponding to each of a plurality of determination criteria by performing conversion.
  • the approximate geodesic distance calculation unit 106a calculates an approximate geodetic distance across the subsets by integrating the geodetic distance matrices in the respective subsets calculated by the geodetic distance conversion unit for each of the plurality of determination criteria. It is a processing unit.
  • the region extraction candidate generation unit 1401 is a region obtained by clustering a plurality of movement trajectories calculated by the motion analysis unit 102 from a geodetic distance matrix integrated for each of a plurality of determination criteria by the approximate geodetic distance calculation unit 106a. It is a processing unit that performs extraction and generates a result of the region extraction as a region extraction candidate. Specifically, the region extraction candidate generation unit 1401 detects discontinuous points in the distribution of distances between moving trajectories using a threshold, and one moving trajectory separated by a geodetic distance smaller than the detected discontinuous point is one. Region extraction candidates for each of the plurality of threshold values are generated by clustering the movement trajectories distributed continuously so as to form a cluster.
  • the area extraction candidate selection unit 1402 acquires an instruction about the number of classes by referring to a predetermined numerical value or accepting an instruction from the outside such as a user, and the number of areas close to the acquired number of classes.
  • the region extraction candidates divided into two are selected from a plurality of region extraction candidates generated by the region extraction candidate generation unit 1401, and the selected region extraction candidates are extracted from the movement trajectory calculated by the motion analysis unit 102. It is a processing part which outputs as a result.
  • the region extraction candidate selection unit 1402 selects a region extraction result closest to the instructed class number from the region extraction candidates generated by the region extraction candidate generation unit 1401 for each of a plurality of threshold values. . That is, a region extraction result with a threshold corresponding to the instructed number of classes is selected.
  • the output unit 108 is the same as that in the first embodiment. Thereby, the final detection of the moving body and the region extraction result can be obtained.
  • Steps S201 to S205 are the same as those in the first embodiment, and a description thereof will be omitted.
  • step S206a the geodetic distance conversion unit 105a uses the K thresholds R k as a plurality of determination criteria for the linear distance f p (i, j) in the subset p calculated by the above equation 3 or 4. , And using these K threshold values R k , a non-linearization process is performed on each threshold value as follows to calculate f ′ k p (i, j).
  • R k movement trajectories j are selected in ascending order of the linear distance from the movement trajectory i, the distance from the selected movement trajectory j is not changed, and the unselected movement trajectory j Change the distance to infinity.
  • the linear distance is selected in ascending order, but the threshold value R k may be set as in the following equation.
  • the geodetic distance conversion unit 105a uses the K thresholds R k for the linear distance matrix for each of the plurality of movement trajectories belonging to the subset p calculated by the distance calculation unit 104, and the distance is calculated. After selecting a predetermined number of movement trajectories in ascending order and making it non-linear to change the distance from the unselected movement trajectory to infinity, each of a plurality of distances may be converted into a geodetic distance. After selecting a movement trajectory whose distance is equal to or less than a predetermined threshold, and making the distance from the movement trajectory not selected to infinity, each of the plurality of distances may be converted into a geodetic distance Good.
  • the distance non-linearization is not limited to the above function, and any distance can be used as long as the nonlinear transformation is performed on the distances related to the movement trajectory i and the movement trajectory j.
  • the linear distance f p (i, j) is multiplied by the weight calculated using Expression 17 and Expression 18, and then weighted.
  • the processing of 39 or the above equation 40 may be performed.
  • a geodetic distance is calculated using the non-linearized distance f ′ k (i, j) as in the following equation.
  • min (x, y) is a function that returns the smaller of the values x and y.
  • s is a movement trajectory s, which is a relay point for tracing from the movement trajectory i to the movement trajectory j.
  • the relay point s in f ′ k p (i, s) + f ′ k p (s, j) is not limited to one point.
  • p corresponds to a subset
  • k corresponds to a plurality of threshold values R k .
  • step S207a the approximate geodesic distance calculation unit 106a approximates the subsets by integrating the geodetic distance matrix g k p (i, j) in each subset p for each threshold value R k. Calculate geodetic distance. Specifically, the integration process is performed as follows using the shared point set in step S204.
  • c is a shared point and is a movement locus belonging to both the subset p and the subset q. That is, the movement trajectory is overlapped between a plurality of subsets.
  • the shared point does not necessarily belong to two subsets, and may belong to three or more subsets.
  • i and h are movement trajectories belonging to different subsets p and q, respectively.
  • the shared point c is not limited to one point as in the example shown in FIG.
  • it is not limited to two sets of subsets p and q, but a geodetic distance across two or more subsets can be calculated.
  • calculation for connecting the common points may be performed for each threshold value.
  • step S208a the region extraction candidate generation unit 1401 performs clustering by detecting discontinuous points using the integrated geodetic distance matrix g k (i, j) corresponding to each threshold value R k. Do.
  • FIG. 17A shows the movement trajectories a to h
  • FIG. 17B is a conceptual diagram of the multidimensional space expressing the movement trajectories a to h shown in FIG.
  • movement loci is eight (movement loci a to h), in actuality, a movement locus corresponding to each pixel may be used, or a movement locus obtained in units of blocks may be used.
  • one point in the multidimensional space expressing the movement locus shown in FIG. 17B corresponds to one movement locus shown in Expression 2, respectively.
  • this is a result of tracking pixels not only over an area on one picture but over a plurality of pictures that differ in time.
  • the distance between points corresponds to a geodetic distance, not a Euclidean distance between vectors.
  • the threshold value R k is a sufficiently large value, for example, when the threshold value R k is larger than the maximum value of f p (i, j), the geodetic distance g k (i , J) does not become infinite in all combinations of i and j. That is, since there is no discontinuous point, it can be determined that there is one cluster.
  • the threshold value R k is sufficiently small, specifically, when the threshold value R k is smaller than the minimum value of f p (i, j), g k p (i , J) becomes infinite. That is, the number of clusters is the same as the number of movement trajectories.
  • the movement trajectories f to h and the movement trajectories a to e The geodetic distance to each movement locus is infinite because it passes through the discontinuous point g 1 (e, f).
  • the set of the movement trajectory i and the movement trajectory j whose geodetic distance does not become infinite is the same cluster, and when it is infinite, it is a different cluster.
  • FIG. 17D it can be separated into two clusters of ⁇ 1 and ⁇ 2 . Further, as shown in FIG.
  • the geodesic distance that is infinite calculated in the approximate geodesic distance calculating step (S207a) is g It is assumed that 2 (c, d), g 2 (e, f), and g 2 (f, g). In this case, it is determined that there are discontinuous points between the movement locus c and the movement locus d, between the movement locus e and the movement locus f, and between the movement locus f and the movement locus g, respectively. As in the case of clustering shown in FIG.
  • a group in which the geodesic distance is infinite and a group in which the geodesic distance is not infinite are rearranged, and a total of four clusters of ⁇ 1 , ⁇ 2 , ⁇ 3 , ⁇ 4 To separate.
  • a set of movement trajectories where the geodetic distance is not infinite can be determined as the same cluster by making it continuous, and a set of movement trajectories where the geodetic distance is infinite is made discontinuous, Clusters can be separated based on discontinuities.
  • the region extraction candidate generation unit 1401 specifies the Nth smallest distance from the movement locus for each of the plurality of movement tracks calculated by the motion analysis unit 102, and increases the order of the specified plurality of distances. May be generated as a plurality of threshold values for generating a plurality of region extraction candidates.
  • the region extraction candidate selection unit 1402 has the number of clusters closest to the preset number of classes (or the number of classes instructed from outside) from the plurality of clustering results performed in step S208a. Select the clustering result.
  • the clustering result at the threshold R 2 (FIG. 17E) is selected.
  • the clustering result when the threshold R 1 is selected (FIG. 17 (d))
  • the output unit 108 outputs the result of labeling the movement trajectory .
  • the number of thresholds is not limited to two, and any number of thresholds may be prepared. If there are not the same number of clustering results as the set number of classes, the cluster with the closest number of clusters may be selected, or the closest number of clusters out of the set number of classes. The clustering result that becomes the closest cluster number may be selected from among the class numbers larger than the set class number. Furthermore, by setting a plurality of classes and performing processing, the region extracted as the upper body in FIG. 17D is as shown in FIG. 17D and the clustering example shown in FIG. In FIG. 17E, it can be extracted as a head and an arm. That is, hierarchical region extraction can be performed. This has the effect of making it possible to extract a region that reflects the structure of the subject. For example, when analyzing motion or walking in sports, for example, moving the center of gravity of the region from detailed part analysis, depending on the number of classes. In addition, it is possible to simultaneously perform coarse subject motion analysis, such as motion analysis of only the upper body.
  • clustering is performed for a plurality of threshold values based on discontinuous points calculated using geodetic distances, and by selecting the clustering result closest to the specified number of classes, detection and region extraction are performed as a result. It can be performed.
  • clustering is performed based on the distance between pixels or the similarity of the movement trajectory, thereby collecting similar movement trajectories and extracting regions.
  • the distance is close and the similar moving part is recognized as one region. It is possible to detect a moving body or a part of the moving body in a moving image and extract an area of an image including the moving body.
  • clustering is performed using multiple thresholds based on the similarity of moving trajectories, which is particularly problematic when there are moving objects of various sizes in the image or when some of the moving objects are hidden. There is no detection error of the person candidate area, and the area extraction failure caused by the mistake.
  • the region extraction that is, the detection of the moving object is performed at high speed without being affected by the posture or size of the moving object. It can be performed.
  • the output unit 108a includes an image display unit 1701 in addition to the function of the output unit 108 in the first embodiment.
  • the image display unit 1701 is a processing unit that displays the region extraction result obtained by the region extraction unit 107 on the moving image (picture) received by the image input unit 101, and includes, for example, a display such as an LCD and the like. It consists of the display control unit.
  • FIGS. 19A and 19B are diagrams showing display examples by the image display unit 1701. FIG.
  • each moving object may be displayed in different colors, or as shown in FIG. 19 (b), it may be displayed separately for each part. That is, as can be seen from FIG. 19, the mobile body detection device 100b according to the present modification can detect a plurality of mobile bodies by the above-described region extraction (FIG. 19 (a)), or one mobile body. Can be detected, that is, a region can be extracted for one moving body (FIG. 19B).
  • the movement trajectory i shown in Equation 2 corresponds to one of the regions ⁇ m except for the outlier. Therefore, if a pixel on the picture is selected based on the movement trajectory i belonging to the region ⁇ m and color coding or the like is performed based on the region label m, the extracted region can be displayed on the image.
  • the moving object detection device 100b in the fourth modification example it is possible to correctly extract a region even for a moving image including a person who moves while changing its shape, as described in the first embodiment.
  • by displaying the extracted area on the moving image there is an effect that it becomes easy for the user to distinguish each moving body or a part of the moving body, and also its movement.
  • an alarm unit may be provided to notify the extraction by sound instead of the image display. It is also possible to combine the alarm unit and the image display unit.
  • the output unit 108b includes a recording / transmission unit 1901 in addition to the function of the output unit 108 in the first embodiment.
  • the recording / transmission unit 1901 identifies the region in the picture received by the image input unit 101 based on the region extraction result in the region extraction unit 107, and for each identified region, the corresponding region extraction result is It is a processing unit that records (or holds) itself in a recording medium such as a built-in or external memory or a hard disk, or transmits it to the outside via a communication interface and a transmission path. That is, this recording / transmission unit 1901 separately records and transmits the result image obtained by extracting the area according to the area label ⁇ m as in the case of image display.
  • motion information it is also possible to compress the motion information by averaging the motion information belonging to each area as follows. Normally, it is necessary to hold motion information for each pixel, but if the following processing is performed, it is only necessary to hold one motion for one region. For example, when the motion vector (u i t , v i t ) of the pixel i is used as the motion information, the motion information averaged for each extracted region can be calculated.
  • C m is the number of pixels belonging to the region ⁇ m or the number of movement trajectories.
  • FIG. 21 shows an example of the data structure in the case where the region extraction is performed with respect to the processing result of FIG. 19A by inputting t images from time T, and the segment region is recorded and transmitted using the result. And each region labeled theta m as an identifier, the pixel position and the pixel value of the picture at the time T that belong to theta 3 from each of the regions labeled theta 1, Then, the motion vector u m T from the time T corresponding to each region label to time T + t , V m T , u m T + 1 , v m T + 1 ,. . .
  • each region label may be attached to one picture at time T and transmitted.
  • an average value of pixel positions moved based on the affine motion may be calculated instead of the above equations 43 and 44.
  • the moving object detection device 100c in the fifth modification it is possible to record and transmit an area while compressing pixel motion information.
  • one piece of motion information is used for each region.
  • the picture at time T is restored from the pixel position and pixel value corresponding to each region label shown in FIGS. 19 (a) and 19 (b). Furthermore, it is possible to restore the picture from time T + 1 to T + t by moving each pixel at time T using the pixel movement trajectory information.
  • the restored image is the background image. May be overwritten. Accordingly, there is an effect that the information can be restored as a picture with a low calculation amount by using the information transmitted and recorded efficiently.
  • Embodiment 2 Next, a moving body detection apparatus and a moving body detection method according to Embodiment 2 of the present invention will be described.
  • a mobile body detection apparatus to which a function for predicting the movement of a mobile body is added based on the result of detection and area extraction of the mobile body using the mobile body detection method described in Embodiment 1. explain.
  • FIG. 22 is a diagram illustrating a configuration of the moving object detection device 100d according to the second embodiment.
  • the moving body detection apparatus 100d in the present embodiment includes an image input unit 101, a motion analysis unit 102, a region division unit 103, a distance calculation unit 104, a geodetic distance conversion unit 105, and an approximate geodetic distance calculation unit.
  • 106 by adding a motion prediction unit 2101 to the region extraction unit 107 and the output unit 108c, it has a function of predicting the motion of the moving object.
  • the motion prediction unit 2101 receives a region extraction result, calculates a representative trajectory from the movement trajectory of the pixels included in each region, and predicts the motion of the moving object based on the representative trajectory.
  • the output unit 108c outputs information related to the position of the moving body and the position of the moving body part predicted by the motion prediction unit 2101 in addition to the function of the output unit 108 in the first embodiment.
  • FIG. 23 shows a flowchart of processing according to the second embodiment. Since steps S201 to S208 are the same as those in the first embodiment, the description thereof is omitted.
  • step S2201 the motion prediction unit 2101 uses the region extraction result performed in step S208 to obtain a cluster representative point and its representative locus as follows.
  • the movement trajectory of the pixel belonging to the region ⁇ m is
  • the motion prediction unit 2101 obtains a representative movement locus for each cluster region ⁇ m .
  • an average movement locus is calculated as a representative movement locus.
  • Weighting or the like may be performed every time, or a pixel movement locus corresponding to the center of gravity of the cluster on the image may be used as a representative movement locus.
  • C m is the number of pixels belonging to the region ⁇ m or the number of pixel trajectories.
  • FIG. 24 shows an example in which a representative movement trajectory is obtained for each cluster region ⁇ m based on Expression 45 above. However, for ease of viewing, only the representative movement trajectories relating to the cluster region ⁇ 1 corresponding to the head and the cluster region ⁇ 8 corresponding to the legs are shown in the figure. Each x in the figure corresponds to time t.
  • the pixel position is shown. Furthermore, as shown in Equation 3 and Equation 4 above, region extraction by clustering in a non-linear space is performed in consideration of the similarity of pixel motion. Compared with the method for obtaining the above, since it is possible to calculate using only the movement trajectory of the pixel having similar motion, the representative movement trajectory can be obtained with higher accuracy. In this way, by obtaining a representative movement trajectory for each cluster region, it is possible to accurately and easily represent the movement of each part.
  • step S2202 the motion prediction unit 2101 predicts the position of the moving body at a time earlier than time T from the representative movement trajectory calculated in step S2201.
  • the representative movement trajectory is as follows:
  • u m t is a motion vector and can be expressed as follows.
  • the motion predicting unit 2101 for each moving body part, indicates the moving body part position pos m (at time T + t ′), as indicated by the dashed arrow and ⁇ in FIG. T + t ′) can be predicted as follows:
  • the part of the moving body is taken as an example, but it is also possible to predict the position for each moving body from the detection example shown in FIG.
  • the output unit 108c outputs the position of the moving body and the position of the moving body part predicted in step S2202. Thereby, prediction in consideration of acceleration is possible. There is an effect that the position of the moving body can be predicted by reflecting the acceleration when the movement is rapidly accelerated or stopped suddenly. Further, an affine parameter may be used instead of the motion vector. Since the affine parameter can express a motion including a rotational motion and is suitable for a rotational motion of an arm or a leg, the position of the joint object can be predicted more accurately.
  • the moving object detection apparatus 100d in the present embodiment since the movement trajectories of pixels with similar motion can be calculated as the same cluster, the representative movement trajectory can be obtained with high accuracy. In particular, it is possible to express the movement of each part with respect to a joint object, etc., and it is possible to predict the position of a moving body part with high accuracy without setting a human candidate area as preprocessing. There is.
  • a moving body detection apparatus will be described in which the moving body detection method described in Embodiment 1 is extended when a moving body is detected and a region is extracted from a plurality of camera images.
  • FIG. 25 is a diagram illustrating a configuration of the moving object detection device 100e according to the third embodiment.
  • the moving body detection apparatus 100e in the present embodiment includes an image input unit 101a having a multi-camera image input unit 2401, a motion analysis unit 102a, a region division unit 103a, a distance calculation unit 104a, and a geodetic distance conversion.
  • Part 105b approximate geodesic distance calculation part 106b, area extraction part 107b, and output part 108d.
  • the moving body detection apparatus 100e in the present embodiment basically has the same function as in the first embodiment.
  • a description will be given focusing on differences from the first embodiment.
  • the image input unit 101a includes a multi-camera image input unit 2401 in addition to the function of the image input unit 101 in the first embodiment.
  • the multi-camera image input unit 2401 accepts input of video from a plurality of cameras and partially overlapping imaging areas.
  • the shooting conditions of the video input to the multi-camera image input unit 2401 are not limited to the camera arrangement and number as shown in FIGS. 26 (a) and 26 (b). What is necessary is just to arrange
  • the motion analysis unit 102a is a processing unit that calculates a movement trajectory for each block including one or more pixels constituting a picture obtained from each camera received by the multi-camera image input unit 2401, as in the first embodiment. It is. In addition, a plurality of camera images may be integrated based on the overlapping shooting area to form one image. In that case, since the integrated image can be processed as one image by the same method as in the first embodiment, the following description is omitted.
  • the region dividing unit 103a is a processing unit that sets at least one of the movement trajectories in the overlapping photographing region as a shared point.
  • the region dividing unit 103a divides a plurality of movement trajectories calculated for each of the moving images of the plurality of cameras so that the movement trajectory obtained from the image obtained from the camera p corresponds to the subset p.
  • Each camera image may be divided into subsets as in the first embodiment. Since the processing in this case is the same as that of the first embodiment, the following description is omitted.
  • the distance calculation unit 104a is a processing unit that calculates a distance representing the similarity between a plurality of movement trajectories for the movement trajectories calculated from images obtained from the respective cameras.
  • a block of a block i included in the subset calculated by the motion analysis unit 102a and a block of a block included in the subset other than i are used. It is a process part which calculates the distance showing the similarity of a motion of. For example, when the movement trajectory of N blocks is used, the calculated distance is an N ⁇ N distance matrix.
  • the distance between the blocks changes depending on the movement, in particular, an object such as a person that moves while changing its shape like a joint object. It is possible to express movement as a distance matrix.
  • the geodetic distance conversion unit 105b is a processing unit that performs geodetic distance conversion on the distance matrix in the subset corresponding to each camera image calculated by the distance calculation unit 104a.
  • the approximate geodetic distance calculation unit 106b integrates the geodetic distance matrix in each subset calculated by the geodetic distance conversion unit 105b, that is, the subset corresponding to each camera image, using the common points, that is, between the subsets. It is a processing unit that calculates an approximate geodetic distance that spans between camera images.
  • the region extraction unit 107b is a processing unit that performs region extraction by specifying a region composed of blocks having similar movement trajectories based on the approximate geodetic distance calculated by the approximate geodetic distance calculation unit 106b. is there.
  • the output unit 108d outputs a result of region extraction, that is, subject detection by integrating a plurality of camera images performed by the region extraction unit 107.
  • step S201b the multi-camera image input unit 2401 accepts a plurality of pictures from a plurality of cameras as shown in FIGS. 26 (a) and 26 (b).
  • step S202b the motion analysis unit 102a calculates a block motion from at least two pictures obtained from the respective cameras.
  • the processing here is not described because it is only necessary to perform the processing in step S202 of the first embodiment for each picture obtained from each camera.
  • step S203b the motion analysis unit 102a performs the same processing as that in step S203 described in the first embodiment using the motion information calculated in step S202b.
  • the movement trajectory is calculated.
  • the difference from the first embodiment is that the process of step S203 is performed for each of a plurality of camera images, and thus the following description is omitted.
  • Equation 2 is rewritten as Equation 49 below to distinguish the movement trajectory obtained from each camera image.
  • p_i is the movement trajectory i of the image obtained from each camera p.
  • step S204b the area dividing unit 103a sets P subsets according to the camera image as shown in FIGS. 28 (a) and 28 (b).
  • the subset is a set of movement trajectories obtained from each camera image.
  • FIG. 28 (a) corresponds to FIG. 26 (a)
  • FIG. 28 (b) corresponds to FIG. 26 (b).
  • the area dividing unit 103a sets a shared point 2704 on the overlapping shooting area 2703 in the camera image 2701 and the camera image 2702.
  • the number of cameras is not limited to two.
  • the shared points 2704 are set on the respective overlapping photographing regions 2703. May be.
  • the overlapping photographing area is an area on the image when the same place is photographed at least partially from a plurality of cameras placed at different positions. Further, at least one shared point may be set on the overlapping photographing area.
  • the following processing may be performed by regarding the images obtained from the plurality of cameras p and the subset p obtained by dividing the corresponding movement trajectory.
  • the same processing as that in step S204 of the first embodiment may be performed, and thus the description thereof is omitted.
  • step S205b the distance calculation unit 104a calculates a distance matrix by regarding the movement locus calculated for each image obtained by the camera p in step S204b as a movement locus belonging to the subset p.
  • the subsequent processing in this step may be performed considering the images obtained from the plurality of cameras p and their movement trajectories as the subset p divided in the first embodiment.
  • step S205 of Embodiment 1 since the same processing as step S205 of Embodiment 1 may be performed, description thereof is omitted.
  • step S206b the geodetic distance conversion unit 105b considers the movement trajectory calculated for each image obtained by the camera p in step S205b as a subset p and calculates a geodetic distance. Since the subsequent processing in this step is the same as that in step S206 in the first embodiment, description thereof is omitted.
  • step S207b the approximate geodesic distance calculation unit 106b integrates the geodetic distance matrix calculated for each image obtained by the camera p in step S206b.
  • the same processing as that in step S207 of the first embodiment may be performed using the shared points on the overlapping imaging region. Therefore, explanation is omitted.
  • step S208b the region extraction unit 107b uses the geodetic distance integrated by the approximate geodetic distance calculation unit 106b to detect a region composed of blocks having similar movement trajectories by detecting discontinuous points. Region extraction is performed by specifying. Since the processing here is the same as that in step S208 of the first embodiment, description thereof is omitted.
  • an image including a moving object such as a person who moves while changing a shape by inputting a plurality of camera images, or between different camera images. Even for a moving body that moves so as to straddle, it is possible to extract a region at high speed and correctly, that is, to detect the moving body, without being affected by the posture or size of the moving body.
  • FIG. 29 is a diagram showing a configuration of a data classification device 2800 in the fourth embodiment.
  • the data classification device 2800 includes a vector data input unit 2801, a region division unit 103, a distance calculation unit 104, a geodetic distance conversion unit 105, an approximate geodetic distance calculation unit 106, a data classification unit 2802, and an output. Part 2803.
  • the multi-dimensional vector data such as the movement trajectory described above is input and the data is classified.
  • the vector data input unit 2801 is a processing unit that receives vector data.
  • the vector data may be, for example, data indicating a three-dimensional position obtained from a stereo camera, a CG, or the like, or may be data indicating the change over time.
  • the area dividing unit 103 divides the multidimensional vector obtained by the vector data input unit 2801 into P subsets in the space of the multidimensional vector, as in the first modification of the first embodiment.
  • a part of vector data included in one of the divided subsets (for example, at least one of the subsets with respect to the adjacent subset) is set as a common point.
  • the configurations of the distance calculation unit 104, the geodetic distance conversion unit 105, and the approximate geodetic distance calculation unit 106 are the same as those of the first embodiment and the first modification of the first embodiment, the description thereof is omitted. That is, in these embodiments and modifications, the data to be processed is a “movement trajectory”, but the present embodiment is different only in that the data to be processed is “vector data”. The processing contents in the processing unit are the same.
  • the data classification unit 2802 classifies data by clustering similar multi-dimensional vector data, similarly to the region extraction unit 107 in the first embodiment.
  • the distance distribution between the multidimensional vectors is calculated based on the approximate geodetic distance obtained by the geodetic distance conversion unit 105 and the approximate geodetic distance calculation unit 106. Detect continuity and cluster multidimensional vectors that are continuously distributed based on discontinuous points so that multidimensional vectors separated by a distance smaller than the detected discontinuous points form one cluster. Thus, the multidimensional vector data is classified.
  • the result of the data classification unit 2802 is written to a memory, a hard disk, or the like by the output unit 2803 or displayed on a display panel or the like.
  • the constituent elements other than the input / output device such as the display device among the constituent elements are executed by the computer 1002 shown in FIG.
  • Program and data that is, software
  • hardware such as an electronic circuit, a memory, and a recording medium, or a mixture thereof.
  • the vector data input unit 2801 receives a plurality of vector data.
  • the vector data may be anything as long as it is a multidimensional vector composed of a plurality of elements as shown in Equation 2 above.
  • the movement trajectory may be processed as multidimensional vector data in the first modification of the first embodiment.
  • the data classification device 2800 in the fourth embodiment if not only the movement trajectory but also data representing a three-dimensional position obtained from a range finder or a stereo camera, for example, is input as a multidimensional vector, 3 A three-dimensional subject can also be classified based on the three-dimensional position.
  • the input multidimensional vector data can be any vector data that can be analyzed by the multidimensional scaling method, and the geodetic distance conversion enables more accurate classification even for highly nonlinear data. And there is an effect that processing can be performed at high speed.
  • FIGS. 31A to 31C show examples of figures that can be separated when the method of the first embodiment is used.
  • the method of the first embodiment it is possible to extract regions into the graphic ⁇ 1 and the graphic ⁇ 2 , respectively.
  • the condition is that all the pixels belonging to the graphic ⁇ 1 have the same movement, and all the pixels belonging to the graphic ⁇ 2 have the same movement.
  • steps S205 and S207 in the first embodiment geodetic distance conversion having the characteristics shown in FIG. 6 is performed.
  • a distance obtained by tracing (tracing) the movement locus from the movement locus can be calculated. Therefore, the distance along the shape can be calculated for the curved shape so as to be common to FIGS. 31 (a) to 31 (c).
  • step S208 clustering is performed using a discontinuous point between the movement locus where the geodetic distance is infinite. For this reason, when there is a distance equal to or greater than the threshold between the movement trajectory, it is possible to extract the areas of the graphic ⁇ 1 and the graphic ⁇ 2 based on the discontinuous points.
  • this embodiment it is possible to extract a region based on a discontinuous point when there is a moving object including a curved shape and there are certain discontinuous points.
  • step S205 in order not to perform the process of tracing (tracing) data unless geodetic distance conversion is performed, it is determined whether or not the distance between adjacent movement trajectories is discontinuous or continuous. I can't. For this reason, in the example shown in FIG. 31, it is difficult to extract a region based on a discontinuous point when the mobile object includes a curved shape and has a certain discontinuous point.
  • clustering considering the continuity regarding the similarity between the movement trajectories is performed by clustering using the geodetic distance as compared with the clustering using the Euclidean distance that is a linear distance. Even if the regions have complicated relations, it is reliably discriminated whether they belong to the same object (or part) or separate objects (or parts).
  • the mobile body detection apparatus and method and the data classification apparatus and method according to the present invention have been described based on the embodiments and the modified examples thereof, the present invention is limited to these embodiments and modified examples. Is not to be done. Within the scope of the present invention, the embodiments realized by various modifications conceived by those skilled in the art for each embodiment, and any combination of the components in each embodiment and modification are realized. Forms are also included in the present invention.
  • a moving body detection apparatus configured by adding a recording / transmission unit 1901 in the fifth modification and a motion prediction unit 2101 in the second embodiment to the fourth modification of the first embodiment is also included in the present invention. include.
  • the mobile body detection device may include an area division unit 103b included in the mobile body detection device 103f shown in FIG. 32, instead of the area division unit in the above embodiment.
  • the area dividing unit 103b includes two processing units (manually supporting the process of dividing the movement trajectory calculated by the motion analyzing unit 102 into a plurality of subsets.
  • the manual setting unit 1031 divides the movement trajectory calculated by the motion analysis unit 102 into a plurality of subsets according to the space division specified by the user for the picture received by the image input unit 101. For example, when the user designates an area where a moving object is expected to exist (or moves) on a picture using a mouse or the like, the manual setting unit 1031 selects the area as one subset (that is, The movement trajectory corresponding to the block included in the area is divided into one subset). For example, when the flow line of the moving body is along a passage, the passage may be a single region.
  • the automatic setting unit 1032 automatically divides the movement trajectory calculated by the motion analysis unit 102 into a plurality of subsets without the user's input.
  • the automatic setting unit 1032 refers to the motion detected by the motion analysis unit 102 so that a region having a motion with a magnitude exceeding a preset threshold is a single region, and the other regions are a plurality of regions.
  • the movement trajectory is automatically divided into a plurality of subsets by dividing into subsets.
  • the motion detected by the motion analysis unit 102 may be accumulated over time so that a region with a large accumulated value becomes one region.
  • the shooting area is known in advance. For this reason, it is often possible to specify in advance the region through which the moving object passes on the image. In such a case, there is an effect that a decrease in detection accuracy can be prevented.
  • the region where the moving object exists is divided into a plurality of subsets by such an area dividing unit 103b, it is possible to avoid a risk that the accuracy of geodesic distance calculation is lowered. Can be prevented.
  • the present invention is an apparatus for detecting all or part of a moving object in a moving image, that is, a person who moves while changing its shape based on the movement of a block composed of one or more pixels in a plurality of images.
  • a moving body detection device that detects a moving body in an image by extracting an area including an image of the moving body
  • a moving body detection device incorporated in an AV device such as a motion analysis device, a monitoring device, a video camera, or a TV Etc.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Image Analysis (AREA)

Abstract

形状が変化しながら移動する人物等の被写体を含む画像に対しても、被写体の姿勢あるいは大きさの影響を受けずに、正しく領域抽出することができる移動体検出装置を提供する。その移動体検出装置(100)は、動画像を受け付ける画像入力部(101)と、画像の動きから複数の移動軌跡を算出する動き解析部(102)と、移動軌跡を複数の部分集合に分割するとともに、分割された複数の部分集合において一部の移動軌跡を共有点として設定する領域分割部(103)と、分割された複数の部分集合のそれぞれについて移動軌跡間の類似性を表す距離を算出する距離計算部(104)と、算出された距離を測地距離に変換する測地距離変換部(105)と、共有点を共有する測地距離を統合することで、部分集合にまたがる測地距離を算出する近似測地距離算出部(106)と、算出された近似的な測地距離をクラスタリングする領域抽出部(107)とを備える。

Description

移動体検出装置及び移動体検出方法
 本発明は、画像中の移動体を検出する装置等に関し、特に複数枚の画像から構成される動画像から、画像の動き情報に基づいて、形状が変化しながら移動する人物等の移動体の全部又は一部の領域を特定する領域抽出をすることによって移動体を検出する装置に関する。
 形状が変化しながら移動する人物等の移動体を検出したり、移動体を含む画像領域を抽出したりする技術の1つとして、画像から対象物の候補領域を抽出する手法と、抽出した対象物の候補領域に対しあらかじめ用意した対象物モデルを当てはめる手法とを組合せた方法がある。例えば、特許文献1では、対象物候補領域として複数の画像から人物等の対象物のシルエット画像を抽出し、前記対象物に関する知識から対象物の部位をあらかじめパラメータ化した人物等の対象物に関するモデルを用いて、抽出したシルエット画像に対してそのモデルを当てはめる方法が開示されている。これによって、形状が変化しながら移動する人物等の移動体に対してパラメータ化したモデルを当てはめることができるため、移動体の検出及び領域抽出が可能となる。
 また、非特許文献1では、固定された1つの被写体を複数の視点から撮影した画像を入力として、各画像の輝度値に基づいて画像間の類似性を表すユークリッド距離を計算し、それに対し測地距離変換を行った後、次元圧縮を行うことによって、類似した視点から撮影した画像が2次元空間上で近距離となるように射影することを可能にする方法が開示されている。ここでは、従来のPCA(Principal Component Analysis)等の線形次元圧縮方法と比較して、測地距離変換によって、より低次元に圧縮可能であり、さらに、非線形に分布するデータに対しても取扱いが可能なことが示されている。
 ここで、非特許文献1は、取り扱う全データ数をNとした場合に、N2の要素数を持つマトリクスを用いて、測地距離変換および次元圧縮を行う必要がある。そのため、データ数Nが大きい場合に、計算量が膨大になるという問題があることが知られている。
 これに対し、非特許文献2および非特許文献3では、データ点の中からデータ点数よりも少ない数のランドマーク点を設定し、設定したランドマーク点を用いて前記マトリクスを生成し測地距離変換および次元圧縮を行うことによって、計算量を削減する方法が提示されている。
特開平8-214289号公報
Joshua Tenenbaum, Vin de Silva, John Langford,"A Global Geometric Framework for Nonlinear Dimensionality Reduction", Science, VOL290, pp.2319-2322, 22 December, 2000 Vin de Silva and Joshua B. Tenenbaum,"Global Versus Local Methods in Nonlinear Dimensionality Reduction",Neural Information Processing Systems 15, 705-712, 2002 Vin de Silva and Joshua B. Tenenbaum,"Sparse Multidimensional Scaling using Landmark Points",Technical Report, Stanford University, June 2004
 しかしながら、上記特許文献1の技術では、特に街頭等、人物等の移動体が行き交うシーンにおいて、正しく移動体を抽出することができないという問題がある。上記特許文献1に代表される領域抽出手法は、前述のように画像から対象物候補領域を抽出する必要がある。この時、正しく対象物候補領域を抽出できなければ、対象物をパラメータ化したモデルを正確に対象物候補領域に当てはめることが不可能になる。特に、混雑したシーンにおいては、対象物候補領域を正しく抽出することは困難である。例えば、複数の移動体を1つの移動体として誤って対象物候補領域として抽出したり、抽出対象となる移動体が存在しない領域を対象物候補領域として誤って抽出したりするといった問題がある。さらに、対象物候補領域を正しく抽出できたとしても以下のような課題がある。つまり、特に人物等の多関節物体を対象物とした場合、対象物の様々な姿勢あるいは大きさに起因する画像上での見えのバリエーションが非常に大きいため、対象物モデルのパラメータ化を行う際に膨大な数のパラメータが必要となる。このことは、モデルの当てはめミスを誘発する。そのため、実際とは異なる姿勢に対応する対象物モデルが当てはめられることにより、領域抽出が正しく行われないといった問題がある。
 そこで本発明の第1の目的は、特許文献1の領域抽出が正しく行われないという問題を解決することである。そのための手段として、以下の非特許文献1に記載される手法の非線形に分布するデータを効率良く表現可能な性質を利用する。
 非特許文献1に代表される画像処理手法では、画像間の距離を入力として非線形処理を行うことにより、効率良く圧縮された低次元空間に画像データを射影することができる。さらには、測地距離変換と次元圧縮により連続的かつ非線形に分布するデータを効率良く表現することができる。しかしながら、非特許文献1の主な目的は、複数の静止画像を低次元空間に射影することで画像間の類似性を可視化することにあり、形状が変化する人物等の多関節物体における様々な姿勢変化に対応しながら、正しく移動体を抽出する方法は開示されていない。また、入力データ数が多くなると計算量が膨大になるといった問題もある。さらに、非特許文献2および非特許文献3に代表される、非特許文献1における計算量の削減方法では、ランドマーク点とランドマーク点の間に存在するデータ点、つまりランドマークとして選ばなかった点に関して、ランドマーク点を用いて線形補間を行うものである。特に、形状が変化する人物等の移動体は、頭と足の動きが異なるように、同一の移動体であっても部位によって動きが異なる。例えば、頭と足にランドマーク点がある場合、ランドマーク点間の線形補間を行うと、腕や膝の関節動き等の動きを適切に捉えることができない。そのため、形状が変化する人物等の多関節物体における様々な姿勢変化に対応しながら、正しく移動体を抽出することが難しい。さらに、あらかじめ被写体が抽出されていない段階において、人物等の多関節物体に対してランドマーク点を適切に設定することは難しい。
 そこで本発明の第2の目的は、非特許文献1における計算量の問題を解決することである。つまり、本発明の目的は、これら2つの問題点を解決することにあり、本発明は、形状が変化しながら移動する人物等の移動体を含む画像に対しても、移動体の姿勢あるいは大きさの影響を受けずに、高速かつ正しく領域抽出することができる移動体検出装置等を提供することを目的とする。
 上記目的を達成するために、本発明に係る移動体検出装置の一実施形態は、動画像中の移動体の全部又は一部の領域を抽出することによって動画像中の移動体を検出する移動体検出装置であって、動画像を構成する複数枚のピクチャを受け付ける画像入力部と、受け付けられた前記ピクチャを構成する1個以上の画素からなるブロックごとに、異なる2枚のピクチャ間での画像の動きを検出し、検出した動きを前記複数枚のピクチャについて連結した移動軌跡を複数算出する動き解析部と、算出された前記複数の移動軌跡を複数の部分集合に分割するとともに、分割された複数の部分集合において一部の移動軌跡を共有点として設定する領域分割部と、分割された前記複数の部分集合のそれぞれについて、複数の移動軌跡間の類似性を表す距離を算出する距離計算部と、算出された前記距離を、測地距離に変換する測地距離変換部と、変換された前記測地距離のうち、前記共有点を共有する測地距離を統合することで、前記部分集合にまたがる近似的な測地距離を算出する近似測地距離算出部と、算出された近似的な測地距離を用いて、類似する移動軌跡をもつブロックどうしを同一の領域として特定するクラスタリングを行うことによって、前記動画像に対して少なくとも一つの領域を抽出する領域抽出部とを備えることを特徴とする。
 また、上記目的を達成するために、本発明に係るベクトルデータ分類装置の一実施形態は、複数のベクトルデータを、類似するベクトルデータの集まりであるクラスに分類するベクトルデータ分類装置であって、複数のベクトルデータを受け付けるベクトルデータ入力部と、受け付けられた前記複数のベクトルデータを、測地距離の計算に利用される複数の部分集合に分割するとともに、分割された複数の部分集合の少なくとも一つに含まれる一部のベクトルデータを共有点として設定する領域分割部と、分割された前記複数の部分集合のそれぞれについて、複数のベクトルデータ間の類似性を表す距離を算出する距離計算部と、算出された前記距離を、中継点としての移動軌跡をたどりながら一の移動軌跡から他の一の移動軌跡にたどりつく経路の距離である測地距離に変換する測地距離変換部と、変換された前記測地距離のうち、前記共有点を共有する測地距離を統合することで、前記部分集合にまたがる近似的な測地距離を算出する近似測地距離算出部と、算出された近似的な測地距離を用いて、類似するベクトルデータをもつブロックどうしを一つの領域として特定するクラスタリングを行うことによって、前記動画像に対して少なくとも一つのクラスを生成するデータ分類部とを備えることを特徴とする。
 なお、本発明は、上記移動体検出装置及びベクトルデータ分類装置として実現できるだけでなく、上記各構成要素をステップとする移動体検出方法及びベクトルデータ分類方法、上記各ステップをコンピュータに実行させるプログラム、そのプログラムを格納したCD-ROM等のコンピュータ読み取り可能な記録媒体等として実現することもできる。
 上記の方法及び装置等により、形状が変化しながら移動する人物等の移動体を含む画像に対しても、移動体の姿勢あるいは大きさの影響を受けずに、高速かつ正しく移動体を検出及び部位を領域抽出することができる。さらに、検出と領域抽出を行った結果を用いて、移動体の移動予測等を行うことも可能である。
図1は、本発明の実施の形態1における移動体検出装置の基本構成を示す図である。 図2は、本発明の実施の形態1における移動体検出装置をソフトウェアで実現する場合におけるハードウェア構成図である。 図3は、本発明の実施の形態1における移動体検出装置の基本動作を示すフローチャートである。 図4は、本発明の実施の形態1における動き解析部の処理例を示す図である。 図5(a)~(d)は、本発明の実施の形態1における領域分割部の処理例を示す図である。 図6(a)~(c)は、本発明の実施の形態1における測地距離変換部の測地距離の効果の一例を示す図である。 図7(a)及び(b)は、本発明の実施の形態1における測地距離変換部の測地距離の効果の一例を示す図である。 図8は、本発明の実施の形態1における近似測地距離算出部の処理例を示す図である。 図9(a)~(c)は、本発明の実施の形態1における領域抽出部の処理例を示す図である。 図10(a)~(c)は、本発明の実施の形態1の第1変形例における領域分割部の処理例を示す図である。 図11は、本発明の実施の形態1の第2変形例における移動体検出装置の基本動作を示すフローチャートである。 図12は、本発明の実施の形態1の第2変形例における領域抽出部の次元圧縮結果を示す図である。 図13(a)及び(b)は、本発明の実施の形態1の第2変形例における領域抽出部の移動体検出結果を示す図である。 図14は、本発明の実施の形態1の第2変形例における領域抽出部の次元圧縮結果を示す図である。 図15は、本発明の実施の形態1の第3変形例における基本構成を示す図である。 図16は、本発明の実施の形態1の第3変形例における移動体検出装置の基本動作を示すフローチャートである。 図17(a)~(e)は、本発明の実施の形態1の第3変形例における領域抽出部の処理例を示す図である。 図18は、本発明の実施の形態1の第4変形例における基本構成を示す図である。 図19(a)及び(b)は、本発明の実施の形態1の第4変形例における画像表示部の表示例を示す図である。 図20は、本発明の実施の形態1の第5変形例における移動体検出装置の構成例を示す図である。 図21は、本発明の実施の形態1の第5変形例における記録・送信データの一例を示す図である。 図22は、本発明の実施の形態2における移動体検出装置の構成例を示す図である。 図23は、本発明の実施の形態2における移動体検出装置の基本動作を示すフローチャートである。 図24は、本発明の実施の形態2における動き予測の一例を示す図である。 図25は、本発明の実施の形態3における移動体検出装置の構成例を示す図である。 図26(a)及び(b)は、本発明の実施の形態3における移動体検出装置のカメラ配置の例を示す図である。 図27は、本発明の実施の形態3における移動体検出装置の基本動作を示すフローチャートである。 図28(a)及び(b)は、本発明の実施の形態3における領域分割部の処理例を示す図である。 図29は、本発明の実施の形態4における移動体検出装置の構成例を示す図である。 図30は、本発明の実施の形態4における移動体検出装置の基本動作を示すフローチャートである。 図31(a)~(c)は、本発明の実施の形態2の方法によって分離可能な図形の一例を示す図である。 図32は、本発明の実施の形態の変形例における移動体検出装置の構成例を示す図である。
 本発明に係る移動体検出装置の一実施形態は、動画像中の移動体の全部又は一部の領域を抽出することによって動画像中の移動体を検出する移動体検出装置であって、動画像を構成する複数枚のピクチャを受け付ける画像入力部と、受け付けられた前記ピクチャを構成する1個以上の画素からなるブロックごとに、異なる2枚のピクチャ間での画像の動きを検出し、検出した動きを前記複数枚のピクチャについて連結した移動軌跡を複数算出する動き解析部と、算出された前記複数の移動軌跡を複数の部分集合に分割するとともに、分割された複数の部分集合において一部の移動軌跡を共有点として設定する領域分割部と、分割された前記複数の部分集合のそれぞれについて、複数の移動軌跡間の類似性を表す距離を算出する距離計算部と、算出された前記距離を、測地距離に変換する測地距離変換部と、変換された前記測地距離のうち、前記共有点を共有する測地距離を統合することで、前記部分集合にまたがる近似的な測地距離を算出する近似測地距離算出部と、算出された近似的な測地距離を用いて、類似する移動軌跡をもつブロックどうしを同一の領域として特定するクラスタリングを行うことによって、前記動画像に対して少なくとも一つの領域を抽出する領域抽出部とを備える。
 これにより、類似する移動軌跡がまとめられて分類が行われるので、動きの異なる複数の部位からなる人物等の多関節物体を移動体として検出する場合であっても、一つの領域として認識されるので、正確な領域抽出が行われ、移動体が確実に検出される。つまり、形状が変化しながら移動する人物等の移動体に対しても正しく領域抽出し、これによって画像中の移動体を高速かつ確実に検出することが可能である。
 また、部分集合ごとに測地距離を算出した後に、共有点を用いた測地距離の統合によって、部分集合にまたがる近似的な測地距離を算出しているので、移動軌跡を部分集合に分割しない場合に比べ、より少ない計算量で、全ての2つの移動軌跡間の組み合わせに対する測地距離が算出され、高速な移動体検出が可能となる。つまり、測地距離計算にかかる計算量を減らすことができるため、高速に移動体を検出することができる。さらに、あらかじめ抽出すべき移動体に関する形状情報等の事前情報を保持、または学習しておく必要がない。
 ここで、前記画像入力部は、複数のカメラによる複数の動画像のそれぞれについて、前記複数枚のピクチャを受け付け、前記動き解析部は、前記複数の動画像のそれぞれについて、前記複数の移動軌跡を算出し、前記領域分割部は、前記複数の動画像のそれぞれについて算出された複数の移動軌跡を、分割された前記複数の部分集合として保持し、前記領域抽出部は、前記クラスタリングを行うことで、前記複数の動画像に対して少なくとも一つの領域を抽出してもよい。これにより、複数のカメラから得られた映像を統合的に処理することができる。さらに、類似する移動軌跡がまとめられて分類が行われるので、動きの異なる複数の部位からなる人物等の多関節物体を移動体として検出する場合であっても、一つの領域として認識されるので、正確な領域抽出が行われ、移動体が確実に検出される。さらに、複数のカメラ映像間をまたがるように移動する移動体や、形状が変化しながら移動する人物等の移動体に対しても正しく領域抽出し、これによって画像中の移動体を高速かつ確実に検出することが可能である。
 なお、部分集合に分割する方法として、前記領域分割部は、移動軌跡に対応する前記ピクチャ上でのブロックの画像上での位置に関する空間上で、前記複数の移動軌跡を前記複数の部分集合に分割してもよい。これにより、画像上での位置において近傍に位置する移動軌跡を一つの部分集合として分割しやすくなる。特に画像特有の問題として、被写体は空間的に繋がったものである場合が多いため、測地距離計算をより高速に行うことができる。
 このとき、前記領域分割部は、前記ピクチャに対してユーザが指定した空間分割に従って、前記複数の移動軌跡を前記複数の部分集合に分割してもよい。これにより、移動体が存在するおよその領域をユーザが知っている場合には、ユーザがその領域を指定することができるので、移動体が存在する領域が複数の部分集合に分割されてしまうことによって、測地距離計算の精度が下がる危険性を回避することができ、移動体の検出精度の劣化を防ぐことができる。
 また、部分集合に分割する別の方法として、前記移動軌跡は、多次元ベクトルで表現され、前記領域分割部は、前記多次元ベクトルを表現する多次元ベクトル空間上で、前記複数の移動軌跡を前記複数の部分集合に分割してもよい。これにより、多次元ベクトル空間上で近傍に位置する移動軌跡もしくはベクトルデータを一つの部分集合として分割しやすくなるため、測地距離計算をより高速に行うことができる。
 さらに、共有点の設定方法としては、前記領域分割部は、近傍の部分集合の一部が重複するように前記分割をするとともに、重複した領域に含まれる移動軌跡を前記共有点として設定したり、前記領域分割部は、前記複数の部分集合のそれぞれについて、当該部分集合に属する移動軌跡のうち、他の部分集合との境界に近接する移動軌跡を、前記共有点として設定したりしてもよい。画像上での近傍領域が重複もしくは接続するように共有点を持つことによって、画像上で離れた位置に存在する移動軌跡であっても、前記共有点を用いることによって、高速かつ正確に測地距離を計算することが可能になる。また、多次元ベクトル空間上での近傍領域が重複もしくは接続するように共有点を持つことによって、前記多次元ベクトル空間上で離れた多次元ベクトルであっても、前記共有点を用いることによって、高速かつ正確に測地距離を計算することが可能になる。
 また、測地距離への変換に関しては、前記測地距離変換部は、前記距離計算部で算出された距離のうち、予め定められた条件を満たす小さい距離を連結することで、前記動き解析部で算出された一の移動軌跡から他の一の移動軌跡にたどりつく最短経路を求めることにより、前記距離計算部で算出された距離のそれぞれを測地距離に変換するのが好ましい。具体的には、前記測地距離変換部は、前記複数の部分集合に含まれる複数の移動軌跡のそれぞれについて、当該移動軌跡から他の移動軌跡までの複数の距離のうち、小さい順に予め定められた個数の距離を選択し、選択しなかった距離を無限大に変更する非線形化をした後に、前記最短経路を求めることにより、前記距離計算部で算出された距離のそれぞれを測地距離に変換するのが好ましい。これにより、閾値により選択された距離と選択されなかった距離とが非線形な関係となるため、線形距離と比較して、移動軌跡間の類似/非類似が強調されることとなり、人物のように関節で繋がった物体の動きを正しく表現することが可能となる。
 また、前記測地距離変換部は、前記複数の部分集合に含まれる複数の移動軌跡のそれぞれについて、当該移動軌跡から他の移動軌跡までの複数の距離のうち、予め定められた閾値以下の距離を選択し、選択しなかった距離を無限大に変更する非線形化をした後に、前記最短経路を求めることにより、前記距離計算部で算出された距離のそれぞれを測地距離に変換してもよい。これにより、閾値により選択された距離と選択されなかった距離とが非線形な関係となるため、線形距離と比較して、移動軌跡間の類似/非類似が強調されることとなり、人物のように関節で繋がった物体の動きを正しく表現することが可能となる。
 また、領域抽出の具体的な手法の一つとして、前記領域抽出部は、前記近似測地距離算出部で算出された測地距離の分布における少なくとも一つ以上の不連続点を検出し、検出した不連続点よりも小さい測地距離だけ離れた移動軌跡どうしが一つのクラスタとなるように、前記クラスタリングを行うのが好ましい。これによって、不連続点よりも小さい距離だけ離れた移動軌跡どうしが一つのクラスタとなるので、不連続点の条件を変えることで、生成されるクラスタ数を制御することができる。
 また、領域抽出の具体的な手法の他の一つとして、前記領域抽出部は、前記近似測地距離算出部で算出された測地距離に対して、固有値および固有ベクトルを求めることによって次元圧縮を行い、次元圧縮した空間上で前記クラスタリングを行ってもよい。これにより、測地距離に対して次元圧縮を行うことで、ノイズや動き検出誤りに対して頑健な被写体検出が可能となる。
 さらに、領域抽出の具体的な手法の他の一つとして、前記測地距離変換部は、前記距離を前記測地距離に変換するための複数の判断基準を生成し、生成した複数の判断基準のそれぞれについて、当該判断基準を用いて前記距離を前記測地距離に変換することで、前記複数の判断基準のそれぞれに対応する測地距離を生成し、前記近似測地距離算出部は、前記複数の判断基準のそれぞれに対応する測地距離に対して前記統合を行い、前記領域抽出部は、前記複数の判断基準のそれぞれに対応する統合された近似的な測地距離に対して前記クラスタリングを行って領域を抽出することで、前記複数の判断基準のそれぞれに対応させて、前記領域抽出の結果を領域抽出候補として生成する領域抽出候補生成部と、クラス数についての指示を取得し、取得したクラス数に近い個数の領域が抽出された領域抽出候補を、前記領域抽出候補生成部で生成された複数の領域抽出候補から選択し、選択した領域抽出候補を、当該領域抽出部による領域抽出の結果として出力する領域抽出候補選択部とを有する構成とすることができる。これによって、予め生成した複数の判断基準のそれぞれについてクラスタリングが行われるので、それら複数のクラスタリングから、所望の個数のクラスタが生成される。
 なお、複数の判断基準の具体例については、前記測地距離変換部は、前記複数の判断基準として、複数の閾値を生成し、生成した複数の閾値のそれぞれについて、前記距離計算部で算出された距離のうち、当該閾値よりも小さい距離を連結することで、前記複数の判断基準のそれぞれに対応する測地距離を生成するのが好ましい。これにより、小さい距離が連結された測地距離を用いて移動軌跡の類似性が判断されるので、直線的な距離であるユークリッド距離を用いたクラスタリングに比べ、移動軌跡間の類似性に関する連続性を考慮したクラスタリングが行われ、ピクチャにおける各ブロックが同一の物体(又は部位)に属するか別個の物体(又は部位)に属するかが確実に弁別される。
 また、前記移動体検出装置はさらに、前記領域抽出部で得られた領域抽出の結果を、前記画像入力部で受け付けたピクチャに重ねて表示する画像表示部を備えるのが好ましい。これにより、領域抽出した部位を画像上に表示することによって、スポーツにおけるフォームの修正あるいはリハビリテーションにおける歩行の矯正等に応用が可能である。
 また、前記移動体検出装置はさらに、前記領域抽出部での領域抽出の結果に対応させて、前記画像入力部で受け付けたピクチャにおける領域を特定し、特定した領域ごとに、対応する領域抽出の結果を、記録して保持する、又は、伝送路を介して外部に送信する記録・送信部を備える構成としてもよい。これにより、検出した移動体画像を抽出した領域に基づいてそれぞれ別々に保持することによって、各移動体画像の中から必要な部分の画像のみを選択して保存したり、外部に出力したりすることによって、図形要素として効率的な保存及び出力が可能になる。そのため、携帯電話等、処理能力の限られた機器に保存及び送信する場合に有効に作用する。
 また、前記画像入力部は、2つ以上の移動体が含まれる動画像を受け付け、前記領域抽出部では、前記2以上の移動体について前記領域抽出をすることで、2以上の移動体を検出してもよい。これにより、形状が変化しながら移動する一つの移動体だけでなく、複数の移動体を含む画像に対しても、正しく複数の移動物体を検出することが可能である。
 また、前記移動体検出装置はさらに、前記領域抽出部で抽出された領域に含まれるブロックの移動軌跡から、当該領域を代表する移動軌跡を算出し、算出した移動軌跡に従って当該領域が移動すると予測することで、前記移動体の動きを予測する動き予測部を備えるのが好ましい。これにより、複数のブロックの移動軌跡を代表する軌跡を用いて移動体の動きを予測することにより、ノイズ耐性の高い動き予測が可能となる。
 また、本発明の他の一実施形態は、複数のベクトルデータを、類似するベクトルデータの集まりであるクラスに分類するベクトルデータ分類装置であって、複数のベクトルデータを受け付けるベクトルデータ入力部と、受け付けられた前記複数のベクトルデータを、測地距離の計算に利用される複数の部分集合に分割するとともに、分割された複数の部分集合の少なくとも一つに含まれる一部のベクトルデータを共有点として設定する領域分割部と、分割された前記複数の部分集合のそれぞれについて、複数のベクトルデータ間の類似性を表す距離を算出する距離計算部と、算出された前記距離を、中継点としての移動軌跡をたどりながら一の移動軌跡から他の一の移動軌跡にたどりつく経路の距離である測地距離に変換する測地距離変換部と、変換された前記測地距離のうち、前記共有点を共有する測地距離を統合することで、前記部分集合にまたがる近似的な測地距離を算出する近似測地距離算出部と、算出された近似的な測地距離を用いて、類似するベクトルデータをもつブロックどうしを一つの領域として特定するクラスタリングを行うことによって、前記動画像に対して少なくとも一つのクラスを生成するデータ分類部とを備える。
 これにより、類似するベクトルデータがまとめられて分類が行われるので、例えば、3次元の動きに関するベクトルデータを入力とした場合には、動きの異なる複数の部位からなる人物等の多関節物体を移動体として検出する場合であっても、一つの領域として分類されるので、正確な領域抽出が行われ、移動体が確実に検出される。つまり、形状が変化しながら移動する人物等の移動体に対しても正しく分類、すなわち領域抽出することが可能である。
 また、部分集合ごとに測地距離を算出した後に、共有点を用いた測地距離の統合によって、部分集合にまたがる近似的な測地距離を算出しているので、ベクトルデータを部分集合に分割しない場合に比べ、より少ない計算量で、全ての2つのベクトルデータ間の組み合わせに対する測地距離が算出され、高速なデータ分類が可能となる。
 以下、本発明の実施の形態について、図面を用いて詳細に説明する。
 (実施の形態1)
 まず、本発明の実施の形態1に係る移動体検出装置及び移動体検出方法について説明する。
 図1は、実施の形態1における移動体検出装置100の構成を示す図である。図1に示されるように、この移動体検出装置100は、画像入力部101、動き解析部102、領域分割部103、距離計算部104、測地距離変換部105、近似測地距離算出部106、領域抽出部107、出力部108を備える。そして、この移動体検出装置100は、動画像中の移動体の全部又は一部の領域を特定する領域抽出をすることによって動画像中の移動体を検出する。
 画像入力部101は、動画像を構成する時間的に異なる複数枚の画像(ピクチャ)の入力を受け付ける処理部であり、例えば、ビデオカメラ、あるいは、ビデオカメラと接続された通信インターフェース等である。
 動き解析部102は、画像入力部101で受け付けたピクチャを構成する1個以上の画素からなるブロックごとに、異なる2枚(例えば、時間的に隣接する2枚)のピクチャ間での画像の動きを検出し、検出した動きを複数枚のピクチャについて連結することで、移動軌跡を算出する処理部である。
 領域分割部103は、動き解析部102によって算出された移動軌跡を複数の部分集合に分割するとともに、分割された複数の部分集合において一部の移動軌跡を共有点として設定する処理部である。ここでは、この領域分割部103は、それらの部分集合間で少なくとも一部の移動軌跡が重複するか、もしくは、接続されるように共有点を設定する。つまり、本実施の形態では、領域分割部103は、画像上での位置に関する空間上で、複数の移動軌跡を複数の部分集合に分割する。例えば、移動軌跡に対応するピクチャ上でのブロックの位置が近いものどうしが同一の部分集合に属することになるように、画像上での位置に関する空間上で、複数の移動軌跡を複数の部分集合に分割する。
 距離計算部104は、領域分割部103によって分割された複数の部分集合のそれぞれについて、当該部分集合に含まれる複数の移動軌跡における2つの移動軌跡の組み合わせに対して、当該移動軌跡間の類似性を表す距離を算出する処理部である。ここでは、この距離計算部104は、画像において移動する物体の形状変化を捉えるために、動き解析部102で算出した部分集合に含まれるブロックiの移動軌跡と、ブロックi以外の当該部分集合に含まれるブロックの移動軌跡とを用いて、ブロックどうしの動きの類似性を表す距離を算出する。例えば、N個のブロックの移動軌跡を対象とした場合、算出される距離はN×N個の距離からなる距離マトリクスとなる。ここでは、ブロックの動きの類似性を評価する距離を計算することによって、ブロック間の距離が動きによって変化する移動体、特に、関節物体のように形状が変化しながら移動する人物等の物体の動きを距離マトリクスとして表現することが可能である。なお、以降の説明では、ブロックiの移動軌跡を移動軌跡iと呼ぶこととする。このように、本明細書における「距離」は、2次元空間における2点間の距離だけでなく、多次元のデータ間の算術的な距離を含み、1つの値、あるいは、複数の値の集合(距離マトリクス)である。
 測地距離変換部105は、距離計算部104で算出した各部分集合における距離マトリクスに対して、測地距離変換を行う処理部である。
 近似測地距離算出部106は、測地距離変換部105で変換された測地距離のうち、共有点を用いて、前記部分集合にまたがる測地距離を統合することで、近似的な測地距離を算出するという処理を行うことにより、動き解析部102で算出された複数の移動軌跡における2つの移動軌跡の組み合わせについての近似的な測地距離を算出する処理部である。つまり、近似測地距離算出部106は、測地距離変換部105で算出された各部分集合における測地距離マトリクスを統合することによって、部分集合間をまたがる近似的な測地距離を算出する。ここで、「近似的」な測地距離が算出される理由は、部分集合にまたがる測地距離については、それらの部分集合に属する全ての移動軌跡を用いて測地距離を算出する場合と比較して、共有点として設定された移動軌跡を用いて概括的に測地距離が算出されるからである。
 領域抽出部107は、近似測地距離算出部106で算出された距離に基づいて、類似する移動軌跡をもつブロックから構成される領域を特定することによって、領域抽出をする処理部であり、ここでは、近似測地距離算出部106で統合された測地距離のうち、一定の閾値より小さい測地距離だけ離れた移動軌跡をもつブロックどうしを一つの領域として特定するクラスタリングを行うことで、画像入力部101で受け付けられた動画像に対して少なくとも一つの領域を抽出する。より詳しくは、本実施の形態では、この領域抽出部107は、距離計算部104で算出した距離マトリクスを用いて、測地距離変換部105及び近似測地距離算出部106にて得られた部分集合間をまたがる測地距離から、移動軌跡間の距離の分布における不連続性を検出し、検出した不連続点よりも小さい距離だけ離れた移動軌跡どうしが一つのクラスタとなるように、不連続点をもとにそれぞれ連続的に分布する移動軌跡をクラスタリングすることによって、画像中の移動体の検出と画像の領域抽出を行い、その結果として、画像中の移動体の検出と画像の領域抽出を行う。
 出力部108では、領域抽出部107で行った動画像中の移動体の検出結果もしくは、画像の領域抽出結果を出力する処理部、メモリやハードディスク等への書き込み部、ディスプレイ装置等である。
 なお、この移動体検出装置100を構成する各構成要素(画像入力部101、動き解析部102、領域分割部103、距離計算部104、測地距離変換部105、近似測地距離算出部106、領域抽出部107、出力部108)は、図2に示されるように、CPU1005、RAM1007、ROM1006、カメラ1001と接続するための通信インターフェース1004、I/Oポート(ビデオカード1009等)、ハードディスク1008、ディスプレイ1003等を備えるコンピュータ1002上で実行されるプログラム等のソフトウェアで実現されてもよいし、電子回路等のハードウェアで実現されてもよい。つまり、本実施の形態における構成要素のうち、ディスプレイ装置等の入出力装置を除く構成要素については、コンピュータで実行されるプログラム及びデータ(つまり、ソフトウェア)で実現してもよいし、電子回路、メモリ及び記録媒体等のハードウェアで実現してもよいし、それらの混在で実現してもよい。
 本発明がソフトウェアで実現される場合には、CPU、メモリ及び入出力回路等のコンピュータのハードウェア資源を利用してプログラムが実行されることによって本発明の機能要素が実現されることは言うまでもない。つまり、CPUが処理対象のデータをメモリや入出力回路から読み出して(取り出して)演算したり、演算結果を一時的にメモリや入出力回路に格納(出力)したりすることによって、各種処理部の機能が実現される。
 また、本発明がハードウェアで実現される場合には、1チップの半導体集積回路で実現されてもよいし、複数の半導体チップが一つの回路基板に実装されて実現されてもよいし、一つの匡体に全ての構成要素が収納された一つの装置として実現されてもよいし、伝送路で接続された複数の装置による連携によって実現されてもよい。たとえば、本実施の形態における記憶部をサーバ装置に設け、本実施の形態における処理部を、そのサーバ装置と無線通信するクライアント装置に設けることで、本発明をサーバ・クライアント方式で実現してもよい。
 以下、他の実施の形態における移動体検出装置についても同様である。
 以下に、本発明の移動体検出方法、つまり、移動体検出装置100の動作として、図3のフローチャートを用いて移動する移動体を検出、領域抽出する例について詳細に説明する。
 まず、ステップS201にて、画像入力部101は、複数枚のピクチャを受け付ける。
 次に、ステップS202にて、動き解析部102は、少なくとも2枚のピクチャからブロックの動きを算出する。なお、ここでは、ブロックの動きを算出する一例として、画素の動きを算出する。以下、本実施の形態では、ブロック単位の処理の一例として、画素単位の処理を説明する。なお、複数の画素からなるブロック単位で処理をする場合には、(i)画素に対応するデータをブロック内で合計したり、(ii)ブロック内の平均値を求めたり、(iii)ブロック内の中心値を求めることで、ブロックに対応するデータ(代表値)を求め、得られた代表値を用いて画素単位の処理と同様に処理すればよい。なお、本明細書で、「ブロックの動き」及び「画素の動き」とは、それぞれ、「画像のブロック単位での動き」及び「画像の画素単位での動き」を意味する。
 まず、画素の動きをオプティカルフロー計算により算出する例について説明する。オプティカルフロー計算による動きベクトルの算出は、非特許文献4もしくは非特許文献5で開示された手法を用いることができる。
P.Anandan,"A Computational Framework and an Algorithm for the Measurement of Visual Motion",International Journal of Computer Vision, Vol.2, pp.283-310,1989 Vladimir Kolmogorov and Ramin Zabih,"Computing Visual Correspondence with Occlusions via Graph Cuts",International Conference on Computer Vision,2001
 例えば、ステップS201にてT枚のピクチャが入力されたと仮定すると、時刻tと時刻t+1に入力されたピクチャを用いて、画素iの動きベクトル(ui t,vi t)を推定する。ここでは、必ずしもフレームが連続している必要はなく、例えば、時刻tと時刻t+nに入力されたピクチャを用いて画素の動きを求めてもよい。ただし、nは1以上の整数である。さらに、画素の動きとして、前記2次元動きベクトルの代わりにアフィンパラメータを推定してもよい。この時、すべての画素について動き情報を求めてもよい。また、より高速に処理を行いたい場合には、画像をグリッドに区切って一定間隔のグリッド上の画素についてのみ動き情報を求めてもよいし、上述したように、画像をブロックに区切ってブロックごとに動き情報を求めてもよい。さらに、非特許文献4で開示された手法を用いて動きベクトルを算出する場合は、その信頼度を計算することができるため、信頼度の高い動き情報を持つ画素のみを用いてもよい。また、非特許文献5で開示された手法を用いて動きベクトルを算出する場合は、オクルージョンを推定することができる。そのため、遮蔽(しゃへい)されていない画素の動き情報のみを用いてもよい。
 さらに、画素の動きを算出する手法として、前記したブロックの並進移動を仮定して動きベクトルを算出する方法の代わりに、ブロックのアフィン変形を仮定して動きベクトルを算出する方法を用いてもよい。アフィン変形を仮定して動きベクトルを算出する方法は、以下の非特許文献6で開示された手法を用いることができる。
Jianbo Shi and Carlo Tomasi,"Good Features to Track",IEEE Conference on Computer Vision and Pattern Recognition,pp593-600,1994
 上記手法は、時刻tと時刻t+1に入力されたピクチャの画素i近傍の動きに相当するアフィンパラメータAi tを推定する。画素iについて、時刻tと時刻t+1におけるピクチャ上での画素位置xi tとxi t+1は次の関係がある。
Figure JPOXMLDOC01-appb-M000001
 上記手法は、特に回転運動をする物体に対して、並進移動を仮定して動きベクトルを算出する手法を用いる場合よりも、高精度に画素iの動きを推定することができる。
 次に、ステップS203にて、動き解析部102は、ステップS202で算出した動き情報を用いて、時間的に異なる複数枚のピクチャに対して前記画素の動きから移動軌跡iを算出する。以下、画素iの移動軌跡を移動軌跡iと呼ぶこととする。図4に示すように、時刻tにおける入力画像301の画素i303からステップS202で算出した動き情報302を用いて、画素iの動きを追跡する。この時、画素iが通った時刻tにおけるピクチャ上での画素位置(xi t,yi t)を用いて、以下のように移動軌跡i(ここでは、xi)を算出する。
Figure JPOXMLDOC01-appb-M000002
 ここで、Tは移動軌跡の算出に用いたピクチャの枚数である。さらに、式2において、動きの無い移動軌跡、もしくは動きの小さい移動軌跡については、以下の処理を行わないようにすることも可能である。
 次に、ステップS204にて領域分割部103は、図5に示すように画像401の位置に関する空間をP個の部分集合402として領域に分割する。ここで、部分集合402は、分割された画像領域(画像上の位置)に対応する移動軌跡の集合でもある。この時、部分集合どうしが共通点(両部分集合に論理的に属することとなる移動軌跡)をもつように、部分集合を設定する、または、共通点を設定する。具体的には、部分集合402の設定において、図5(a)や図5(b)に示すように、画像401の位置に関する空間において、一部を重複するように設定し、重複領域に属する画像領域(画像上の位置)に対応する移動軌跡を共有点として設定してもよいし、図5(c)のように、部分集合の境界において近接する画像上の位置に対応する移動軌跡を共有点403として設定してもよいし、図5(d)のように、部分集合を空間的に高密度に設定し、共有点403を空間的に疎に設定してもよい。さらに、ここでは、部分集合に分割する際において、図5に示したような長方形で行う必要は必ずしもなく、正方形や横長の長方形でもよいし、円や楕円、多角形であっても構わない。また、複数の部分集合によって、画像全体を包含するように設定するのが望ましい。例えば、抽出したい被写体の形状や動きが事前に予測できないような場合やカメラの天地方向が変化するような回転が生じるような場合においては、図5(a)、図5(c)、図5(d)に示したように正方形とすることで、被写体やカメラの回転による影響を受けにくくする効果がある。また、特に人物等、縦方向に長い被写体を抽出したい場合には、図5(b)に示すような縦長の長方形にすることで、人物の形状をより正確に抽出できる。さらには、同様に、犬などの動物の場合は、その形状を反映して、横長の長方形とすることが望ましい。そして、より計算量を減らしたい場合には、図5(c)に示すように重複領域の代わりに境界に隣接する移動軌跡を共有点と設定することによって、重複を減らすことで計算量をより削減できる効果がある。さらには、パースの効果を反映するために、画像上部の部分集合の大きさを画像下部の部分集合よりも小さくすることによって、画像下部の被写体が大きく、画像上部の被写体が小さいような場合においても、より高精度な抽出を実現できる効果がある。もちろん、正方形ではなく、画像上部の部分集合を小さくする効果は、部分集合の分割を台形によって行うことによっても実現できる。また、各部分集合の数やサイズについては、後述する。
 ここで、画像領域(画像上の位置)に対応する移動軌跡とは、分割された画像領域における画像上の位置に基づいて移動軌跡iを部分集合に分割することによって得られるものであり、例えば、画像上の位置(xi 1,yi 1)が部分集合pに属する場合は、時刻1において、画像上の位置(xi 1,yi 1)を通った上記式2に示した移動軌跡iを部分集合pに割り当てる。さらに、一定の時刻tにおける画像上の位置(xi t,yi t)が部分集合pに属する場合は、(xi t,yi t)を通った移動軌跡iを部分集合pに割り当てるようにしてもよい。さらには、上記式2の移動軌跡iに対して時間平均を計算することで、移動軌跡の画像上での時間平均位置
Figure JPOXMLDOC01-appb-M000003
を算出し、その時間平均位置が属する部分集合pに移動軌跡iを割り当ててもよい。 共有点についても同様に画像領域(画像上の位置)に対応する移動軌跡である。このように、それぞれ画像領域(画像上で位置)に基づいてP個に分割し、その結果から、それぞれの移動軌跡を部分集合pに割り当てることによって、それぞれの移動軌跡は、複数の部分集合に分割されることになる。
 次に、ステップS205にて、距離計算部104は、ステップS204にて分割した部分集合pごとに、部分集合pに属する移動軌跡iを用いて画素の動きの類似性を含む距離マトリクスを算出する。移動軌跡iと移動軌跡jとの類似性を表す線形距離fp(i,j)は以下の式3~式13により算出できる。なお、式3~式13に代表されるような距離は、非線形な関数を含んでいても良いが、後述する非線形な変換と経路を探索する方法により算出される測地距離と区別するために、線形距離とよぶこととする。ここで、移動軌跡iと移動軌跡jは、共に同じ部分集合pに属するものとし、それぞれの部分集合pに対して、以下の計算を行う。
Figure JPOXMLDOC01-appb-M000004
 ここで、wは重み係数であり、設計者が設定するパラメータである。さらに、式3に代えて、線形距離fp(i,j)の定義を次式のようにしてもよい。
Figure JPOXMLDOC01-appb-M000005
 また、ptnij,mtnijは、それぞれ、移動軌跡間距離の時間平均値、移動軌跡間距離の時間変動成分であり、その定義については以下に示す。
Figure JPOXMLDOC01-appb-M000006
Figure JPOXMLDOC01-appb-M000007
 ここで、
Figure JPOXMLDOC01-appb-M000008
 上記のように、式3に示されるように、式5に示した移動軌跡間距離の時間平均値に加えて、式6に示した移動軌跡間距離の時間変動成分を前記線形距離fp(i,j)の要素とする。特に式6に示した移動軌跡間距離の変動成分は、画素の動きの類似性を示すものであり、これによって、画素間のなす距離の関係が時間的に変化しない剛体だけでなく、関節物体等の形状変化を捉えることができる。また、式6の代わりに式8から式13のような時間変動成分を用いることで、同様の効果が期待できる。
Figure JPOXMLDOC01-appb-M000009
 ここで、
Figure JPOXMLDOC01-appb-M000010
であり、ut iは、時刻tからt+1への動きベクトル(ui t,vi t)であり、<ut i・ut i>は内積である。
 また、時間変動成分として、以下のような計算を用いてもよい。
Figure JPOXMLDOC01-appb-M000011
 ここで、
Figure JPOXMLDOC01-appb-M000012
Figure JPOXMLDOC01-appb-M000013
 ここで、
Figure JPOXMLDOC01-appb-M000014
である。
次に、ステップS206で、測地距離変換部105は、上記式3もしくは上記式4で算出した部分集合pにおける線形距離fp(i,j)に対して閾値Rを用いて、以下のように非線形化処理を行いf'p(i,j)を算出する。
Figure JPOXMLDOC01-appb-M000015
 移動軌跡iに着目した時に移動軌跡iとの線形距離fp(i,j)が小さい順にR個の移動軌跡jを選択し、選択された移動軌跡jとの距離は変更せず、選択されなかった移動軌跡jとの距離を無限大に変更する。なお、ここでは、線形距離が小さい順に選択したが、次式のように閾値Rを設定してもよい。
Figure JPOXMLDOC01-appb-M000016
 つまり、測地距離変換部105は、動き解析部102で算出された部分集合pに属する複数の移動軌跡のそれぞれについて、距離が小さい順に予め定められた個数(R個)の移動軌跡を選択し、選択されなかった移動軌跡との距離を無限大に変更する非線形化をした後に、複数の距離のそれぞれを測地距離に変換してもよいし、動き解析部102で算出された部分集合pに属する複数の移動軌跡のそれぞれについて、距離が予め定められた閾値以下の移動軌跡を選択し、選択されなかった移動軌跡との距離を無限大に変更する非線形化をした後に、複数の距離のそれぞれを測地距離に変換してもよい。
 なお、距離の非線形化に関しては、上記の関数に限定されるものではなく、移動軌跡iと移動軌跡jに関する距離に対して非線形変換を行うものであれば何でもよい。
 さらには、線形距離fp(i,j)に対して、以下のように式16及び式17を用いて計算した重みを掛け算して重み付けを行った後に式14もしくは式15の処理を行ってもよい。
Figure JPOXMLDOC01-appb-M000017
 ここで、NNは移動軌跡の近傍点かつ同一の部分集合pに属する点について処理することを示し、移動軌跡a及びbに対して、移動軌跡j及びiからそれぞれ一定距離以内にある移動軌跡もしくは、距離が小さい順にN個の移動軌跡を用いて計算することを示す。すなわち、Na、Nbは、それぞれ同一の部分集合pに属しており、かつ一定距離以内にある移動軌跡の数もしくは、前記Nである。なお、zは設計者が設定する。
 また、式16の代わりに次式のように分散を用いてもよい。
Figure JPOXMLDOC01-appb-M000018
 ここで、
Figure JPOXMLDOC01-appb-M000019
Figure JPOXMLDOC01-appb-M000020
であり、NNについては、式16の場合と同じである。
 式16や式17の重みを用いてfp(i,j)を変換することによって、移動軌跡i及びjと類似した移動軌跡が空間的に密集している場合(距離が近い移動軌跡の場合)には、fp(i,j)を相対的に小さく、また、空間的に疎な場合(距離が遠い移動軌跡の場合)には、密集している場合と比較してfp(i,j)が相対的に大きくなる。つまり、距離計算部104で算出された距離を測地距離に変換するときに、領域分割部103で分割された部分集合p内の複数の移動軌跡の分布における密集度が大きいほど小さい測地距離となるような重み付けをしたうえで、測地距離への変換をする。これによって、画素の移動軌跡の分布の密集度を考慮した距離変換が可能になる。
 次に、非線形化された距離f'p(i,j)を用いて、次式のように測地距離gp(i,j)を算出する。
Figure JPOXMLDOC01-appb-M000021
 なお、min(x,y)は、値xと値yのうち小さい方を返す関数である。また、sは、移動軌跡sであり、移動軌跡iから移動軌跡jに辿(たど)りつくための中継点である。ここで、f'p(i,s)+f'p(s,j)における中継点sは1点に限るものではない。なお、pはそれぞれの部分集合に対応する。この方法は、ダイクストラ法と呼ばれる最短経路探索手法であり、以下の非特許文献7に記載されている。このように、測地距離変換部105は、距離計算部104で算出された距離のうち、予め定められた条件を満たす小さい距離を連結することで、動き解析部102で算出された一の移動軌跡から他の一の移動軌跡にたどりつく最短経路を求めることにより、距離計算部104で算出された距離のそれぞれを測地距離に変換する。
E.W.Dijkstra, "A note on two problems in connexion with graphs", Numerische Mathematik, pp.269-271, 1959
 ここで、上記式14及び式15に示した非線形化処理について、図6(a)~図6(c)の概念図を用いて説明する。ここでは、式15について説明するが、他の非線形化処理を行っても同様の効果が期待できる。まず、図6(a)は2次元のデータ分布を示す。ここで、それぞれのデータ点は、上記式3もしくは上記式4に示した移動軌跡iに相当する。上記式14から式17の非線形化処理を行わない場合には、図6(b)に示したように、データ点iとデータ点jとの距離は、データ点iとデータ点kとの距離よりも小さくなる。しかしながら、図6(c)に示すように、例えば上記式15の処理及び上記式17の処理を行うことによって、データ点iとデータ点jとの距離は、ユークリッド距離ではなく、測地距離と呼ばれるデータ点を矢印のように辿(たど)った距離となる。結果として、ユークリッド距離を用いる場合と異なり、データ点iとデータ点jとの距離は、データ点iとデータ点kとの距離よりも大きくなる。
 ここで、このような上記式14から式17に示した測地距離変換の意義を図7(a)及び図7(b)の概念図を用いて説明する。
 ここでは、線形距離fp(i,j)と測地距離gp(i,j)の違いを分かりやすく説明するため、上記式5に示すような時刻tにおける移動軌跡間距離を例とする。実際には、移動軌跡間距離に加えて、上記式3に示したように画素の動きの類似性として移動軌跡間距離の変動成分を用いることにより、関節物体等の形状だけではなく形状変化をも捉えることができる。図7(a)は、上記式14から式17の非線形化処理を行わない場合の例である。例えば、頭部の画素i602と手先部の画素j603との距離は、線形距離601に示す距離となる。一方、上記式14から式17のような非線形処理を行うことによって、閾値Rが適切に設定されていれば、図7(b)に示されるように、頭部の画素i602と手先部の画素j603との距離は、画素k604を通って画素jにたどり着くまでの矢印で示したような線形和としての距離(つまり、測地距離)となる。そのため、線形距離601では人物のような関節物体の関節が繋がった形状をデータとして連続的に表現できないのに対して、測地距離によれば、関節が繋がった形状を距離として連続性を表現することが可能となる。なお、測地距離の計算方法は、上記式14から式17の非線形処理を必要とする方法に限定されるものではない。また、線形距離および測地距離における距離は、類似度と相反する関係にあり、類似度が高いときは、距離は小さく、類似度が小さいときは、距離が大きくなる。そのため、前述した距離の代わりに類似度を用いる場合は、類似度の逆数を距離として用いたり、類似度の最大値以上の値から類似度を引いた値を距離として用いたりすることで、上記の相反する関係を満たすように距離に変換して用いても良い。
 次に、ステップS207にて、近似測地距離算出部106は、各部分集合における測地距離マトリクスgp(i,j)を統合することによって、部分集合にまたがる近似的な測地距離を算出する。具体的には、ステップS204にて設定された共有点を用いて、以下のように統合処理を行う。
Figure JPOXMLDOC01-appb-M000022
 ここで、cは共有点であり、部分集合pおよび部分集合qの両方に属する移動軌跡である。つまり、複数の部分集合間で重複している移動軌跡である。なお、共有点は、必ずしも2つの部分集合に属するものではなく、3つ以上の部分集合に属しても構わない。また、iとhは、それぞれ、異なる部分集合pおよびqに属する移動軌跡に対応するインデックスである。なお、共有点cは、図5に示した例のように1点に限るものではない。
Figure JPOXMLDOC01-appb-M000023
は、少なくとも1つ以上の共有点cについて、上記式21を計算し、その中で最小値を選択する関数である。ここでは、部分集合pとqの2つの組に限定されるものではなく、上記式21に対して、共有点を複数用いて、それぞれの部分集合をまたぐように測地距離を加算していけば、2つ以上の部分集合間にまたがる測地距離を算出することができる。
 さらに、図5(c)のように、部分集合の境界において近接する画像上の位置に対応する移動軌跡を共有点403とした場合や、図5(d)のように空間的に疎に分布する共有点を持つ場合には、共有点ciに対応する移動軌跡と共有点cjに対応する移動軌跡との線形距離fc(ci,cj)を計算して、下記式22のように統合処理を行えばよい。
Figure JPOXMLDOC01-appb-M000024
 ここで、線形距離fc(ci,cj)は、共有点間を接続する効果がある。なお、fc(ci,cj)は、すべての共有点に対して計算してもよいし、空間的に近傍の少なくとも1つ以上の共有点間の距離を求めてもよい。
Figure JPOXMLDOC01-appb-M000025
は、少なくとも2つ以上の共有点ci、cjについて、上記式22を計算し、その中で最小値を選択する関数である。ここでは、部分集合pとqの2つの組に限定されるものではなく、上記式22に対して複数の共有点間を接続する線形距離を用いて、それぞれの部分集合をまたぐように測地距離を加算していけば、2つ以上の部分集合間をまたがる近似的な測地距離を算出することができる。
 このように、共有点cを用いて部分集合に分割し測地距離計算を行ったgp(i,j)を、共有点cを用いて統合し、部分集合をまたがる近似的な測地距離g(i,h)を算出することによって、ステップS203で算出したすべての移動軌跡に対する測地距離g(i,j)を高速に得ることができる。このような手法による効果について、図8を用いて説明する。図8では、2つの部分集合を例として説明するが、本発明においては、部分集合の数はいくつでも構わない。ステップS204にて、異なる部分集合aとbに分割され、ステップS205にて、それぞれの部分集合における測地距離(例えば、部分集合a内の測地距離704、部分集合b内の測地距離705)を計算する。そして、ステップS207にて、共有点703を用いて統合処理を行うことで、例えば、図8の頭部の点に対応する移動軌跡iと足先の点に対応する移動軌跡jのように、部分集合間をまたがる近似的な測地距離g(i,j)を得ることができる。
 ここで、たとえステップS204にて、一つの被写体が二つ以上の異なる部分集合に分割されたとしても、統合処理を行うことで、部分集合に分割する処理を行わない場合と同等の精度で測地距離を計算することができる。
 さらに、部分集合に分割せずに測地距離計算を行った場合と比べて、少ない計算量で測地距離計算を行うことができる。具体的には、移動軌跡の数をNとすると、測地距離計算に掛かる計算量はO(N2logN)となることが上記非特許文献3に示されているが、本実施の形態による測地距離計算および統合に掛かる計算量の概算は、次式のようになる。
Figure JPOXMLDOC01-appb-M000026
 ここで、Mは部分集合の数、Cは全共有点の数、すなわち図5に示した各部分領域間の共有点の数の合計である。C2logCは、上記式21で測地距離の統合処理に掛かる計算量である。例えば、移動軌跡の数NをVGA画像サイズと同じ640×480として、さらに、Mを10、CをNの10%とした時には、計算量は、部分集合に分割しない場合と比べて、およそ0.11倍となる。画像サイズもしくは、移動軌跡の数が分かっている場合においては、部分集合の数Mと共有点Cとの2つの変数によって、計算量の削減量を見積もることができる。精度を重視する場合には、重複領域を多くとることが望ましい。そのため、全共有点の数Cを大きくすると良い。さらに、計算量を重視する場合には、部分集合の数Mを大きくすると良いが、精度を考慮すると全共有点の数Cも、それに合わせて大きくする必要があるため、処理する対象の形状や動き、また、精度とのバランスで決定する必要がある。以上のように、共有点を用いて測地距離を統合することで、高速に測地距離計算の処理が可能となる。
 次に、ステップS208で、領域抽出部107は、近似測地距離算出部106で統合した測地距離g(i,j)を用いて、不連続点を検出することによって類似する移動軌跡をもつブロックから構成される領域を特定することによって領域抽出を行う。ここでは、g(i,j)が無限大となる移動軌跡iと移動軌跡jの間が不連続点である。閾値Rに対して得た測地距離の例を図9(a)~図9(c)を用いて説明する。ここで、図9(a)は、移動軌跡a~hを示し、図9(b)は、図9(a)に示した移動軌跡a~hを表現する多次元空間の概念図である。なお、図9(a)に示される移動軌跡a~hの数を8本としたが、実際には、各画素に対応する移動軌跡を用いてもよいし、ブロック単位で求めた移動軌跡を用いてもよい。ここで、図9(b)に示される多次元空間における1点(点a~点h)が、それぞれ、上記式2に示した一つの移動軌跡に対応する。すなわち、1枚のピクチャ上の領域だけではなく時間的に異なる複数枚のピクチャに渡って画素を追跡した結果である。さらに、図9(b)に示される多次元空間上で、点と点との距離は、ベクトル間のユークリッド距離ではなく、上記式20および式21から算出された測地距離に対応する(ただし、無限大は除く)。
 図9(c)に示されるクラスタリングの例について説明する。ここで、図9(b)の多次元空間において、上記式3もしくは上記式4に示した移動軌跡aと移動軌跡bとの距離をf(a,b)とした時に、f(e,f)>f(c,d)>f(f,g)>f(b,c)である。ここでは、閾値をRとして設定した場合に、距離f(e,f)だけが閾値Rよりも大きな値を持つとする。この場合、上記式20によって測地距離を求めてもgp(e,f)は無限大となる。そのため、上記式21もしくは式22によって、測地距離を統合した結果g(e,f)も無限大となる。そこで、領域抽出部107は、移動軌跡eと移動軌跡fとの間を不連続点と判定する。この結果、移動軌跡aからdと移動軌跡eとの測地距離は不連続点を通らないため無限大の値を取らず、逆に移動軌跡fからhの各移動軌跡と移動軌跡aからeの各移動軌跡との測地距離は、不連続点g(e,f)を通るためそれぞれ無限大となる。このように、測地距離が無限大とならない移動軌跡iと移動軌跡jの組は同じクラスタとし、無限大となる場合は別のクラスタとする。これによって、図9(c)に示されるようにθ1、θ2の2つのクラスタに分離することができる。図9(c)の移動軌跡a~hにおいて、上半身に関する移動軌跡a~eはクラスタθ1に属し、下半身に関する移動軌跡f~hはクラスタθ2に属している。すなわち、クラスタに分離した結果は、直接的に領域抽出を行った結果となる。
 さらに、後述するように、パラメータを変更して、上記ステップS201からS208の処理を行うことによって、複数の移動体を別々に抽出することも可能である。なお、本明細書において、例えば、動きの無い移動軌跡を用いずに領域抽出を行った結果の各領域は、それぞれの移動体に対応するため、各移動体の検出と、画像中の複数の移動体領域をそれぞれ抽出する領域抽出とは、特に区別する必要は無い。さらに、動きの無い移動軌跡も用いて領域抽出を行った場合、例えば最大の大きさを持つ領域を背景とし、それ以外を移動体の検出結果とすることも可能であるが、領域抽出を行った結果から移動体を検出する方法はこの限りではない。
 以上のようにして、本実施の形態における移動体検出装置100によれば、画素間の距離あるいは移動軌跡の類似性に基づいてクラスタリングを行うことによって、類似する移動軌跡がまとめられて領域抽出が行われるので、距離が近く、かつ類似する動きをする部位が一つの領域として認識され、動画像中を移動する物体の領域を時間的に追跡した結果として、関節物体の姿勢によらずに、動画像中の移動体もしくは、移動体の部位の検出、移動体を含む画像の領域抽出をすることができる。また、前処理として人物候補領域を設定する必要がなく、さらに、あらかじめ抽出すべき移動体に関する形状情報等の事前情報を保持、または学習しておく必要がない。また、移動軌跡の類似性に基づいて閾値を用いてクラスタリングを行うため、画像中でさまざまな大きさの移動体が存在する場合や、移動体の一部が隠れている場合に特に問題となる人物候補領域の検出ミス、それに起因する領域抽出の失敗がない。
 また、部分集合ごとに測地距離を算出した後に、共有点を用いた測地距離の統合によって、部分集合にまたがる測地距離を算出しているので、移動軌跡を部分集合に分割しない場合に比べ、より少ない計算量で、全ての2つの移動軌跡間の組み合わせに対する測地距離が算出され、高速な移動体検出が可能となる。
 以上のようにして、形状が変化しながら移動する人物等の移動体を含む画像に対しても、移動体の姿勢あるいは大きさの影響を受けずに、高速かつ正しく領域抽出、つまり移動体検出を行うことができる。
 (実施の形態1の第1変形例)
 次に、本発明の実施の形態1の第1変形例における移動体検出装置について説明する。
 ここでは、部分集合への分割を実施の形態1とは異なる方法で行う例について説明する。
 このような第1変形例に係る移動体検出装置は、実施の形態1と比べて、領域分割部103の処理を除いて、同じ構成であるため、同一構成要素の説明は省略する。
 実施の形態1と異なる点は、領域分割部103での処理である。実施の形態1では、図5に示したように画像401の位置に関する空間をP個の部分集合402として領域に分割したが、ここでは、上記式2に示したような移動軌跡、すなわち多次元ベクトルの空間上でP個の部分集合に分割する。つまり、本変形例では、領域分割部103は、移動軌跡が類似するものどうしが同一の部分集合に属することになるように、移動軌跡(多次元ベクトル)を表現する多次元ベクトル空間上で、複数の移動軌跡を複数の部分集合に分割する。
 ここでは、図3に示した処理のフローチャートに沿って説明する。まず、ステップS201からS203までは実施の形態1と同じであるため、説明を省略する。
 次に、ステップS204にて、領域分割部103は、図10(a)~図10(c)に示すように上記式2で算出した移動軌跡、つまり多次元ベクトルの空間上で部分集合に分割する。ここで、図10(a)は、移動軌跡901を示し、図10(b)は、図10(a)に示した移動軌跡901を表現する多次元ベクトル空間の概念図である。ここで、移動軌跡を表す多次元ベクトル(多次元ベクトル空間における一点)が、それぞれ上記式2に示した1つの移動軌跡に対応する。すなわち、図10(b)は、1枚のピクチャ上の領域だけではなく時間的に異なる複数枚のピクチャに渡って画素を追跡した結果である。そして、図10(c)の部分集合903に示すように、領域分割部103は、多次元ベクトル空間を複数の部分領域に分割する。ここで、部分集合903は、分割された多次元ベクトル空間に存在する点、すなわち移動軌跡の集合である。この時、黒丸は、共有点904である。部分集合903の設定においては、多次元ベクトル空間において一部を重複するように設定し、重複領域に属する移動軌跡を共有点としてもよいし、図5(c)で説明したのと同様に、多次元ベクトル空間における部分集合の境界において近接する移動軌跡を共有点904としてもよいし、部分集合を空間的に高密度に設定し、共有点904を空間的に疎に設定してもよい。さらにここでは、部分集合に分割する際において、図10(c)に示したような直方体(実際は、多次元であるのでn次元直方体)で行う必要は必ずしもなく、超球や超楕円、n次元多面体などであっても構わない。また、複数の部分集合によって、すべての移動軌跡を包含するように設定するのが望ましい。
 さらに、ステップS204における別の方法について説明する。まず、すべての移動軌跡に対して、以下のように計算を行う。
Figure JPOXMLDOC01-appb-M000027
 ここで、iおよびjは、式2で算出したすべての移動軌跡である。ptnijとmtnijについては、上記式5から式7に示してある。次に、上記式24にて算出した移動軌跡間距離マトリクスf(i,j)を移動軌跡数個の行ベクトルと捉える。すなわち、i行目の行ベクトルは、移動軌跡iと対応する。そして、それぞれの行ベクトルは、多次元ベクトルと考えることができる。そのため、移動軌跡間距離マトリクスの行ベクトルは、概念的には、図10(b)に示した多次元空間上の点として表すことができる。そのため、上記実施の形態で説明したのと同様に、図10(c)に示すような部分集合を用いて、多次元ベクトル空間上で移動軌跡を部分集合に分割することができる。
 さらに、多次元ベクトルを表現する多次元空間において、移動軌跡、つまり前述した多次元ベクトルを用いて、PCA(Principal Component Analysis)を行ってもよい。PCAを行うことによって、多次元ベクトル空間をより、低次元に圧縮することができる。例えば、2次元に圧縮した場合には、図5に示したように、画像空間上で部分集合に分割することと同様の処理によって、2次元空間上で移動軌跡を部分集合に分割することが可能である。
 ステップS206以降については、実施の形態1と同様の処理を行えばよいため、説明を省略する。
 以上のようにして、本第1変形例における移動体検出装置によれば、画素間の距離あるいは移動軌跡の類似性に基づいてクラスタリングを行うことによって、類似する移動軌跡がまとめられて領域抽出が行われるので、距離が近く、かつ類似する動きをする部位が一つの領域として認識され、動画像中を移動する物体の領域を時間的に追跡した結果として、関節物体の姿勢によらずに、動画像中の移動体もしくは、移動体の部位の検出、移動体を含む画像の領域抽出をすることができる。また、前処理として人物候補領域を設定する必要がなく、さらに、あらかじめ抽出すべき移動体に関する形状情報等の事前情報を保持、または学習しておく必要がない。また移動軌跡の類似性に基づいて閾値を用いてクラスタリングを行うため、画像中でさまざまな大きさの移動体が存在する場合や、移動体の一部が隠れている場合に特に問題となる人物候補領域の検出ミス、それに起因する領域抽出の失敗がない。
 以上のようにして、形状が変化しながら移動する人物等の移動体を含む画像に対しても、移動体の姿勢あるいは大きさの影響を受けずに、高速かつ正しく領域抽出、つまり移動体検出を行うことができる。
 (実施の形態1の第2変形例)
 次に、本発明の実施の形態1の第2変形例における移動体検出装置について説明する。
 ここでは、領域抽出部107における領域抽出を異なる方法で行う例について説明する。
 このような第2変形例に係る移動体検出装置は、実施の形態1と比べて、領域抽出部107の処理を除いて、同じ構成であるため、同一構成要素の説明は省略する。
 実施の形態1と異なる点は、領域抽出部107であり、この領域抽出部107が測地距離マトリクスを次元圧縮し、その次元圧縮された空間上で移動軌跡をクラスタリングすることによって、領域抽出、つまり移動体の検出を行う点である。
 ここでは、図11に示した処理のフローチャートに沿って説明する。まず、ステップS201からS207までは実施の形態1と同じであるため、説明を省略する。
 ステップS1001では、領域抽出部107にて、ステップS207で算出した測地距離マトリクスの次元圧縮を行う。次元圧縮は、Young-Householder変換を行った後、Eigen systemを求めることで実現できる。これは、多次元空間に分布するデータを低次元空間に効率良く射影するための方法であり、入力データのノイズ(ここでは、上記式2の移動軌跡を算出する際に動き情報に誤差が含まれる場合に相当する)に対して頑健なデータの表現が可能となる。
 つまり、領域抽出部107は、非線形化された距離マトリクスを
Figure JPOXMLDOC01-appb-M000028
として、次のように上記式25に対して中心化行列Hを両側からかけるYoung-Householder変換を行う。これは、距離マトリクスが点間距離からなる距離行列であるのに対して、重心を原点とした距離マトリクスに変換するために行うものである。
Figure JPOXMLDOC01-appb-M000029
 ただし、Hは中心化行列であり、
Figure JPOXMLDOC01-appb-M000030
である。Iは単位行列、Nは、上記式2に示した移動軌跡の数である。
 また、
Figure JPOXMLDOC01-appb-M000031
である。
 次に、領域抽出部107は、次元圧縮を行うために、τ(G)に対するQ個のeigen vector(固有ベクトル)eqおよびそれに対応するeigen value(固有値)λqを算出する。
 これにより、
Figure JPOXMLDOC01-appb-M000032
とすると、giを次元圧縮された空間上に射影した結果は、データzi qとして以下のように表すことができる。
Figure JPOXMLDOC01-appb-M000033
 なお、ei qは、q番目のeigen vector eqのi番目の要素である。eigen vectorの数Qは、利用するシーンに応じて実験的に決定しても良いし、以下のようにeigen value λqから寄与率aqを算出し、それに基づいて決定しても良い。
Figure JPOXMLDOC01-appb-M000034
 Qは利用するeigen vectorの数、すなわち圧縮された空間の次元数である。Nは全eigen vectorの数である。そこで、寄与率aQが一定値以上となる時のQをeigen vectorの数とすれば良い。
 以上のように、上記式2に示した移動軌跡iを、eigen vector eqで張られる非線形に次元圧縮された空間上のデータzi qと対応付けることができる。
 図12に人物の歩行画像を入力とした場合の移動軌跡iが非線形に次元圧縮された空間に射影された結果を示す。横軸、縦軸は、それぞれ、eigen vector e1,e2である。2次元上に射影された点(zi 1,zi 2)は、giを射影したものである。ここで、圧縮空間上のデータzi qと画像上での画素iの時間的移動軌跡xiとは一対一の対応関係にあるため、点(zi 1,zi 2)は、移動軌跡iに対応していると捉えることができる。なお、ここでは結果を可視化するために圧縮空間の次元数を2次元としたが、必ずしも2次元である必要は無いし、高い次元数の方がより高い精度でデータを射影することができる。
 次に、ステップS1002では、領域抽出部107は、ステップS1001にて図12に示したような圧縮された空間に射影されたデータに対して、クラスタリングを行うことで移動体の検出と領域抽出を行う。
 まず、セグメント領域を次のように表現する。ここで、セグメント領域とは、抽出される領域であり、つまり移動体の検出結果と一致する。
Figure JPOXMLDOC01-appb-M000035
 ここで、Mは、セグメント領域数であり利用するシーンに応じて経験的に決定する。ただし、上記式23におけるMとは異なる。
 それぞれのセグメント領域θmは、パラメータ
Figure JPOXMLDOC01-appb-M000036
で表現する。ここで、
Figure JPOXMLDOC01-appb-M000037
は、圧縮空間におけるセグメント領域θmに属するデータの座標値の平均値、Zmは、セグメント領域θmに属するデータの座標値に関する共分散行列である。
Figure JPOXMLDOC01-appb-M000038
の初期値はランダムに決定しても良いし、圧縮された空間中をグリッドで等間隔に分割する等して、その交点の座標値を初期値としても良い。
 なお、
Figure JPOXMLDOC01-appb-M000039
は、以下のように表すことができる。
Figure JPOXMLDOC01-appb-M000040
Figure JPOXMLDOC01-appb-M000041
 ここで、Cmは圧縮された空間上でセグメント領域θmに属するデータ数である。
 以下、具体的な計算方法について説明する。まず、領域抽出部107は、次式の距離関数を用いて、圧縮された空間上のデータziが属するセグメント領域θmを求める。
Figure JPOXMLDOC01-appb-M000042
 ここで、ψm(zi)は、移動軌跡iに対応する圧縮空間上のデータziとそれぞれのセグメント領域θmとの距離を示すものである。各データは、ψm(zi)が最小値をとるセグメント領域θmに属することになる。なお、φm(zi)はマハラノビス距離であり、
Figure JPOXMLDOC01-appb-M000043
である。また、φm(zi)をψm(zi)の代わりとして用いても構わない。
 さらに、p(ωm)は、一定値としても構わないし、人物など決まった移動体のセグメンテーションを行う場合はあらかじめ、人物部位の形状や面積比等をもとに設定しておいても良い。ωmは、セグメント領域θmに対する重み係数である。
 次に、領域抽出部107は、上記式35の計算結果から、セグメント領域θmに属するデータziを用いて、以下のように領域θmのパラメータ
Figure JPOXMLDOC01-appb-M000044
を更新する。
Figure JPOXMLDOC01-appb-M000045
Figure JPOXMLDOC01-appb-M000046
 ここで、
Figure JPOXMLDOC01-appb-M000047
は、セグメント領域θmに属する圧縮された空間上のデータである。また、ω=1としても良いし、入力データの平均値からのずれ具合によって調整しても良い。このように、領域抽出部107は、上記式35から式38の距離計算およびパラメータ更新を規定回数繰り返すことによって、圧縮空間上の各データが属するセグメント領域θmを得ることができる。なお、上記に加えて、k-mean、競合学習など、他のクラスタリング方法を用いても構わない。
 図13(a)及び図13(b)に人物の歩行画像を入力とした場合にM=9として圧縮空間上のデータをセグメンテーションした例を示す。圧縮空間上でのセグメント領域θ1からθ9について画像上での対応を見ると、セグメント領域θ1は人物の頭部、セグメント領域θ2は胴体上部、セグメント領域θ3は腕、セグメント領域θ4は胴体下部、セグメント領域θ5及びθ7は大腿部、セグメント領域θ6及びθ8は、下腿部に対応している。なお、セグメント領域θ9は主に背景の一部に対応する。
 ここで、図13(b)の矢印で示すように、圧縮空間上のセグメント領域に対応するのは、1枚の画像上の領域だけではなく時間的に連続した複数枚の画像に渡って画素を追跡した結果である。すなわち、圧縮された空間上でセグメンテーションを行うことによって、画像中を移動する物体の領域を時間的に追跡した結果として、画像中の移動体(移動体の部位)の検出、被写体を含む画像の抽出をすることができる。
 さらには、上記の説明と同じ方法でパラメータを変更することで、複数の移動体を検出することもできる。具体的には上記式14もしくは上記式15を用い、閾値Rを、部位のセグメンテーションを目的とする時よりも大きな値に設定する。
 図14に、人物一人が歩行し自転車1台が走行している画像を入力とした場合に、圧縮された圧縮空間に射影しM=2としてセグメンテーションを行った結果の一例を示す。圧縮された空間上でのセグメント領域θ1とθ2の画像上での対応について説明する。セグメント領域θ1は画像上では自転車の動きに対応し、セグメント領域θ2は画像上では人物の歩行に対応している。以上のように、低次元に圧縮された空間上でセグメンテーションを行うことで、簡単かつ安定に自転車の動きと人物の動きとを分けて検出(つまり、領域抽出)することができる。
 なお、ここでは上記式2に示されるような、動きのない画素についての移動軌跡は入力として用いていないため、移動している物体である歩行者と自転車の2つのみが圧縮空間上に射影されている。もちろん、動きのない移動軌跡を入力として用いても構わない。ここで、実施の形態1と同様に圧縮された空間上のセグメント領域に対応するのは、1枚の画像上の領域だけではなく時間的に連続した複数枚の画像に渡って画素を追跡した結果である。すなわち、圧縮空間上でセグメンテーションを行うことによって、移動体の領域を時間的に追跡した結果としてそれぞれの移動体を検出することができる。
 以上のようにして、本第2変形例における移動体検出装置によれば、画素間の距離あるいは移動軌跡の類似性に基づいて、次元圧縮を行った後にクラスタリングを行うことによって、動き検出ミス等のノイズに対して頑健で、かつ類似する移動軌跡がまとめられて領域抽出が行われるので、距離が近く、かつ類似する動きをする部位が一つの領域として認識され、動画像中を移動する物体の領域を時間的に追跡した結果として、関節物体の姿勢によらずに、動画像中の移動体もしくは、移動体の部位の検出、移動体を含む画像の領域抽出をすることができる。また、前処理として人物候補領域を設定する必要がなく、さらに、あらかじめ抽出すべき移動体に関する形状情報等の事前情報を保持、または学習しておく必要がない。また移動体の一部が隠れている場合に特に問題となる人物候補領域の検出ミス、それに起因する領域抽出の失敗がない。
 以上のようにして、形状が変化しながら移動する人物等の移動体を含む画像に対しても、移動体の姿勢あるいは大きさの影響を受けずに、高速かつ正しく領域抽出、つまり移動体検出を行うことができる。
 (実施の形態1の第3変形例)
 次に、本発明の実施の形態1の第3変形例における移動体検出装置について説明する。
 ここでは、実施の形態1で説明した領域抽出に対して、複数の判断基準を設けることによって、領域抽出の候補を生成し、その候補の中からあらかじめ定めた移動体の数に最も近い候補を選択することによって領域抽出を行う例について説明する。
 図15は、実施の形態1の第3変形例における移動体検出装置100aの構成を示す図である。図15に示されるように、この移動体検出装置100aは、画像入力部101、動き解析部102、領域分割部103、距離計算部104、測地距離変換部105a、近似測地距離算出部106a、領域抽出部107a、及び、出力部108を備える。領域抽出部107aは、領域抽出候補生成部1401と領域抽出候補選択部1402を有する。そして、この移動体検出装置100aは、動画像中の移動体の全部又は一部の領域を特定する領域抽出をすることによって動画像中の移動体を検出する。
 まず、画像入力部101、動き解析部102、領域分割部103、距離計算部104については、実施の形態1と同じであるため、説明を省略する。
 測地距離変換部105aは、距離計算部104で算出した各部分集合における距離マトリクスに対して、判断基準を複数個生成し、生成した複数の判断基準のそれぞれについて、当該判断基準を用いて測地距離変換を行うことで、複数の判断基準のそれぞれに対応する測地距離を生成する処理部である。
 近似測地距離算出部106aは、前記複数の判断基準ごとに、測地距離変換部で算出された各部分集合における測地距離マトリクスを統合することによって、部分集合間をまたがる近似的な測地距離を算出する処理部である。
 領域抽出候補生成部1401は、近似測地距離算出部106aで、複数個の判断基準のそれぞれについて統合された測地距離マトリクスから、動き解析部102で算出された複数の移動軌跡をクラスタリングすることによって領域抽出をし、その領域抽出の結果を領域抽出候補として生成する処理部である。具体的には、この領域抽出候補生成部1401は、移動軌跡間の距離の分布における不連続点を閾値によって検出し、検出した不連続点よりも小さい測地距離だけ離れた移動軌跡どうしが一つのクラスタとなるように、連続に分布する移動軌跡をクラスタリングすることによって、前記複数の閾値のそれぞれに対する領域抽出の候補を生成する。
 領域抽出候補選択部1402は、予め定められた数値を参照したり、ユーザ等の外部からの指示を受け付けたりすることで、クラス数についての指示を取得し、取得したクラス数に近い個数の領域に分割された領域抽出候補を、領域抽出候補生成部1401で生成された複数の領域抽出候補から選択し、選択した領域抽出候補を、動き解析部102で算出された移動軌跡から領域抽出を行った結果として出力する処理部である。具体的には、この領域抽出候補選択部1402は、領域抽出候補生成部1401で生成した、複数の閾値のそれぞれに対する領域抽出の候補から、指示されたクラス数に最も近い領域抽出結果を選択する。すなわち、指示されたクラス数に応じた閾値による領域抽出結果を選択することになる。
 出力部108は、実施の形態1と同様である。これにより、最終的な移動体の検出と領域抽出結果を得ることができる。
 以下に、本第3変形例における発明の移動体検出方法、つまり、移動体検出装置100aの動作として、図16のフローチャートを用いて移動する移動体を検出、領域抽出する例について詳細に説明する。ステップS201からS205までは、実施の形態1と同様であるため説明を省略する。
 ステップS206aにて、測地距離変換部105aは、上記式3もしくは上記式4で算出した部分集合pにおける線形距離fp(i,j)に対して、複数の判断基準としてK個の閾値Rkを生成し、それらK個の閾値Rkを用いて、それぞれの閾値に対して以下のように非線形化処理を行いf'k p(i,j)を算出する。
Figure JPOXMLDOC01-appb-M000048
 移動軌跡iに着目した時に移動軌跡iとの線形距離が小さい順にRk個の移動軌跡jを選択し、選択された移動軌跡jとの距離は変更せず、選択されなかった移動軌跡jとの距離を無限大に変更する。なお、ここでは、線形距離が小さい順に選択したが、次式のように閾値Rkを設定してもよい。
Figure JPOXMLDOC01-appb-M000049
 つまり、測地距離変換部105aは、距離計算部104で算出された部分集合pに属する複数の移動軌跡のそれぞれについての線形距離マトリクスに対して、それぞれK個の閾値Rkを用いて、距離が小さい順に予め定められた個数の移動軌跡を選択し、選択されなかった移動軌跡との距離を無限大に変更する非線形化をした後に、複数の距離のそれぞれを測地距離に変換してもよいし、距離が予め定められた閾値以下の移動軌跡を選択し、選択されなかった移動軌跡との距離を無限大に変更する非線形化をした後に、複数の距離のそれぞれを測地距離に変換してもよい。
 なお、距離の非線形化に関しては、上記の関数に限定されるものではなく、移動軌跡iと移動軌跡jに関する距離に対して非線形変換を行うものであれば何でもよい。
 さらには、線形距離fp(i,j)に対して、実施の形態1で説明したように、上記式17及び上記式18を用いて計算した重みを掛け算して重み付けを行った後に上記式39もしくは上記式40の処理を行ってもよい。
 次に、非線形化された距離f'k(i,j)を用いて、次式のように測地距離を算出する。
Figure JPOXMLDOC01-appb-M000050
 なお、min(x,y)は、値xと値yのうち小さい方を返す関数である。また、sは、移動軌跡sであり、移動軌跡iから移動軌跡jに辿(たど)りつくための中継点である。ここで、f'k p(i,s)+f'k p(s,j)における中継点sは1点に限るものではない。なお、pは部分集合、kは複数の閾値Rkに対応する。
 次に、ステップS207aにて、近似測地距離算出部106aは、閾値Rkごとに、各部分集合pにおける測地距離マトリクスgk p(i,j)を統合することで部分集合をまたがる近似的な測地距離を算出する。具体的には、ステップS204にて設定された共有点を用いて、以下のように統合処理を行う。
Figure JPOXMLDOC01-appb-M000051
 ここで、cは共有点であり部分集合pおよび部分集合qの両方に属する移動軌跡である。つまり、複数の部分集合間で重複している移動軌跡である。なお、共有点は、必ずしも2つの部分集合に属するものではなく、3つ以上の部分集合に属しても構わない。また、iとhは、それぞれ異なる部分集合pおよびqに属する移動軌跡である。なお、共有点cは、図5に示した例のように1点に限るものではない。
Figure JPOXMLDOC01-appb-M000052
は、少なくとも1つ以上の共有点cについて、上記式42を計算し、その中で最小値を選択する関数である。ここでは、部分集合pとqの2つの組に限定されるものではなく、2つ以上の部分集合間をまたがる測地距離を算出することができる。もちろん、上記式22に示したように、各閾値に対してそれぞれ共有点間を接続する計算を行っても構わない。
 次に、ステップS208aでは、領域抽出候補生成部1401にて、それぞれの閾値Rkに対応する統合した測地距離マトリクスgk(i,j)を用いて、不連続点を検出することによってクラスタリングを行う。ここでは、gk(i,j)が無限大となる移動軌跡iと移動軌跡jの間が不連続点である。複数の閾値Rkに対して得た測地距離変換の結果の例を図17(a)~図17(e)を用いて説明する。ここで、図17(a)は、移動軌跡a~hを示し、図17(b)は、図17(a)に示した移動軌跡a~hを表現する多次元空間の概念図である。なお、移動軌跡の数を8本(移動軌跡a~h)としたが、実際には、各画素に対応する移動軌跡を用いてもよいし、ブロック単位で求めた移動軌跡を用いてもよい。ここで、図17(b)に示される移動軌跡を表現する多次元空間における1点が、それぞれ式2に示した一つの移動軌跡に対応する。すなわち、1枚のピクチャ上の領域だけではなく時間的に異なる複数枚のピクチャに渡って画素を追跡した結果である。さらに、多次元空間上で、点と点との距離は、ベクトル間のユークリッド距離ではなく、測地距離に対応する。
 閾値Rkが十分に大きな値である場合、例えば、fp(i,j)の最大値よりも閾値Rkが大きい場合には、図17(c)に示すように測地距離gk(i,j)は、すべてのi,jの組合せにおいて無限大にならない。すなわち、不連続点が1点もないためクラスタは1個と判断できる。一方、閾値Rkが十分に小さい場合、具体的には、fp(i,j)の最小値よりも閾値Rkが小さい場合には、すべてのi,jの組合せにおいてgk p(i,j)が無限大となる。すなわち、クラスタ数は移動軌跡の数と同数となる。ここでは、閾値Rkをfp(i,j)の最大値と最小値の間の値に設定して、それぞれクラスタリングを行うことが効率的である。図17(d)に示されるクラスタリングの例について説明する。ここでは、閾値をR1として設定した場合に、近似測地距離算出ステップ(S207a)で求めた測地距離g1(e,f)は無限大となる。そこで、移動軌跡eと移動軌跡fとの間を不連続点と判定する。この結果、移動軌跡aからdと移動軌跡eとの測地距離は不連続点を通らないため無限大の値を取らず、逆に移動軌跡fからhの各移動軌跡と移動軌跡aからeの各移動軌跡との測地距離は、不連続点g1(e,f)を通るためそれぞれ無限大となる。このように、測地距離が無限大とならない移動軌跡iと移動軌跡jの組は同じクラスタとし、無限大となる場合は別のクラスタとする。これによって、図17(d)のようにθ1、θ2の2つのクラスタに分離することができる。さらに、図17(e)に示すように、閾値をR2(ただし、R1>R2)とした場合に、近似測地距離算出ステップ(S207a)で算出した無限大となる測地距離は、g2(c,d),g2(e,f),g2(f,g)であったとする。この場合には、それぞれ、移動軌跡cと移動軌跡dとの間、移動軌跡eと移動軌跡fとの間、移動軌跡fと移動軌跡gとの間が不連続点であると判定し、図17(d)に示されるクラスタリングの場合と同様に測地距離が無限大となる組と無限大にならない組とを整理して、θ1、θ2、θ3、θ4の合計4つのクラスタに分離する。以上の処理によって、測地距離が無限大とならない移動軌跡の組は連続とすることで同じクラスタと判定することができ、測地距離が無限大となる移動軌跡の組は不連続とすることによって、不連続点をもとにクラスタを分離することができる。
 つまり、領域抽出候補生成部1401は、動き解析部102で算出された複数の移動軌跡のそれぞれについて、当該移動軌跡との距離がN番目に小さい距離を特定し、特定した複数の距離について大きい順から選択した複数の値を、複数の領域抽出候補を生成するための複数の閾値として生成してもよい。
 次に、ステップS1501にて、領域抽出候補選択部1402は、ステップS208aで行った複数のクラスタリング結果から、あらかじめ設定したクラス数(あるいは、外部から指示されたクラス数)に最も近いクラスタ数となったクラスタリング結果を選択する。図17(a)~図17(e)に示される例で説明すると、クラス数M=4と設定した場合には、閾値R2の時のクラスタリング結果(図17(e))が選択される。また、クラス数M=2と設定した場合には、閾値R1の時のクラスタリング結果(図17(d))が選択され、出力部108にて、各移動軌跡にラベル付けした結果を出力する。
 なお、本第3変形例では、移動軌跡に対して上記式3もしくは上記式4のような距離を計算することによって、画素の位置と動きの類似性とを考慮した領域抽出が可能になる。そのため、図17に示されるクラスタリングの例では、クラス数M=2と設定した場合には、下半身の動きが上半身の動きと大きく異なることが反映されて、上半身と下半身とが別々のクラスタとして領域抽出でき、クラス数M=4と設定した場合には、M=2の場合に加えて、頭部の動きと腕の動きの違い、上腿と下腿との動きの違いが反映され、頭部、腕、上腿(じょうたい)、下腿(かたい)を別々のクラスタとして領域抽出することができる。なお、ここでは、閾値の数は2個に限るものではなく、何種類用意してもかまわない。また、設定したクラス数と同数のクラスタリング結果がない場合には、最も近いクラスタ数となったものを選択してもよいし、設定したクラス数よりも小さいクラス数の中から一番近いクラスタ数となったクラスタリング結果を選択してもよいし、同様に、設定したクラス数よりも大きいクラス数の中から一番近いクラスタ数となったクラスタリング結果を選択してもよい。さらには、複数のクラス数を設定して処理を行うことによって、図17(d)及び図17(e)に示されるクラスタリング例のように、図17(d)で上半身として抽出された領域は、図17(e)では、頭部、腕として抽出することができる。すなわち、階層的な領域抽出を行うことも可能になる。これにより、被写体の構造を反映した領域抽出も可能になるという効果があるため、例えば、スポーツにおける動作や歩行を解析する場合に、クラス数によって、詳細なパーツの分析から、例えば領域重心の移動や、上半身のみの動き分析などの粗い被写体の動き分析をも同時に行うことが可能になる。
 さらに、本方法は、同様の方法によって、一つの移動体のボディパーツの検出、領域抽出だけでなく、複数人が存在するシーンにおいて、それぞれの移動体を検出、領域抽出することも可能である。
 このように、複数の閾値に対して、測地距離を用いて算出した不連続点をもとにクラスタリングを行い、規定したクラス数に最も近いクラスタリング結果を選択することによって、結果として検出及び領域抽出を行うことができる。
 以上のようにして、本第3変形例における移動体検出装置100aによれば、画素間の距離あるいは移動軌跡の類似性に基づいてクラスタリングを行うことによって、類似する移動軌跡がまとめられて領域抽出が行われるので、距離が近く、かつ類似する動きをする部位が一つの領域として認識され、動画像中を移動する物体の領域を時間的に追跡した結果として、関節物体の姿勢によらずに、動画像中の移動体もしくは、移動体の部位の検出、移動体を含む画像の領域抽出をすることができる。また、前処理として人物候補領域を設定する必要がなく、さらに、あらかじめ抽出すべき移動体に関する形状情報等の事前情報を保持、または学習しておく必要がない。また移動軌跡の類似性に基づいて複数の閾値を用いてクラスタリングを行うため、画像中でさまざまな大きさの移動体が存在する場合や、移動体の一部が隠れている場合に特に問題となる人物候補領域の検出ミス、それに起因する領域抽出の失敗がない。
 以上のようにして、形状が変化しながら移動する人物等の移動体を含む画像に対しても、移動体の姿勢あるいは大きさの影響を受けずに、高速かつ正しく領域抽出、つまり移動体検出を行うことができる。
 (実施の形態1の第4変形例)
 次に、本発明の実施の形態1の第4変形例における移動体検出装置について説明する。ここでは、実施の形態1において移動体を検出及び部位を領域抽出した結果を画像として表示する機能を付加した例について説明する。このような第4変形例に係る移動体検出装置100bは、図18に示す構成図のように、基本的には実施の形態1と同じ構成を備えるが、実施の形態1における出力部108に代えて、画像表示部1701を有する出力部108aを備え、この特徴により、領域抽出部107によって抽出した領域を画像としてモニタ等に表示することが可能である。
 出力部108aは、実施の形態1における出力部108の機能に加えて、画像表示部1701を有する。この画像表示部1701は、領域抽出部107で得られた領域抽出の結果を、画像入力部101で受け付けた動画像(ピクチャ)に重ねて表示する処理部であり、例えば、LCD等のディスプレイ及びその表示制御部からなる。図19(a)及び図19(b)は、画像表示部1701による表示例を示す図である。ここでは、図19(a)に第3変形例で抽出した結果である、M=3として移動体をそれぞれ領域抽出した例を、図19(b)にM=8として、1つの移動体の領域抽出を行った例を示す。このように、領域θmに対応する画像上での領域を色分け等して、抽出された領域をそれぞれ区別できるようにしてモニタ等に表示する。図19(a)のように移動体ごとに色分けして表示してもよいし、図19(b)のように、部位ごとに別個に表示してもよい。つまり、図19から分かるように、本変形例に係る移動体検出装置100bは、上述した領域抽出によって、複数の移動体を検出することもできるし(図19(a))、一つの移動体を構成する複数の部分を検出する、つまり、一つの移動体に対して領域を抽出することもできる(図19(b))。
 ここで、上記式2に示した移動軌跡iは、アウトライアを除いて領域θmのいずれかに対応する。そのため、領域θmに属する移動軌跡iに基づいてピクチャ上の画素を選択し、領域ラベルmに基づいて色分け等を行えば容易に抽出した領域を画像上に表示することができる。これによって、本第4変形例における移動体検出装置100bによれば、実施の形態1で説明した、形状が変化しながら移動する人物等を含む動画像に対しても正しく領域抽出できるという効果に加えて、抽出した領域を動画像上に表示することで、ユーザがそれぞれの移動体もしくは移動体の部位、さらにはその動きを区別しやすくなるという効果がある。また、他の方法として、画像表示部の代わりに、領域が規定の数以上抽出された場合に、画像表示の代わりに、音によって抽出したことを知らせる警報部を設けても良いし、さらには、警報部と画像表示部とを組合せることも可能である。
 (実施の形態1の第5変形例)
 次に、本発明の実施の形態1の第5変形例における移動体検出装置について説明する。ここでは、実施の形態1において移動体を検出及び部位を領域抽出した結果をそれぞれ抽出した領域ごとに記録・送信する機能を付加した例について説明する。このような第5変形例に係る移動体検出装置100cは、図20に示す構成図のように、基本的には実施の形態1と同じ構成を備えるが、実施の形態1における出力部108に代えて、記録・送信部1901を有する出力部108bを備える。
 出力部108bは、実施の形態1における出力部108の機能に加えて、記録・送信部1901を有する。この記録・送信部1901は、領域抽出部107での領域抽出の結果に基づいて、画像入力部101で受け付けたピクチャにおける領域を特定し、特定した領域ごとに、対応する領域抽出の結果を、内蔵又は外付けのメモリやハードディスク等の記録媒体に記録(あるいは、自ら保持)する、又は、通信インターフェース及び伝送路等を介して外部に送信する処理部である。つまり、この記録・送信部1901は、画像表示の場合と同様に、領域抽出した結果画像を領域ラベルθmに応じてそれぞれ別々に記録・送信する。また、各領域に属する動き情報を以下のように平均化することで、動き情報を圧縮することも可能である。通常であれば画素ごとに動き情報を保持する必要があるが、以下の処理を行えば1つの領域に対して1つの動きを保持するだけでよい。例えば、動き情報として画素iの動きベクトル(ui t,vi t)を用いた場合には、以下のように抽出された領域ごとに平均化した動き情報を計算することができる。
Figure JPOXMLDOC01-appb-M000053
Figure JPOXMLDOC01-appb-M000054
 ここで、Cmは、領域θmに属する画素数もしくは移動軌跡の数である。
Figure JPOXMLDOC01-appb-M000055
は、それぞれ、領域θmに属する画素の動きベクトルである。図21に、図19(a)の処理結果について時刻Tからt枚の画像を入力として領域抽出を行い、その結果を用いて、セグメント領域を記録、送信する場合のデータ構造例を示す。識別子として各領域ラベルθmと、各領域ラベルθ1からθ3に属する時刻Tにおけるピクチャの画素位置と画素値、そして、各領域ラベルに対応する時刻Tから時刻T+tまでの動きベクトルum T,vm T,um T+1,vm T+1,...,um T+t,vm T+tを記録、送信する。もちろん、画像の画素位置と画素値を用いる代わりに、時刻Tにおける1枚のピクチャに対して、画素ごとに各領域ラベルを付けて送信してもかまわない。これにより、動き情報を領域数分送信するだけで済むために、ピクチャをt枚送信する場合と比べて、効率よく記録、送信することができるといった効果がある。特には、領域数が画素数に比べて少なければ少ないほど効率がよい。
 なお、アフィン動きを用いて動き情報を圧縮する場合は、上記式43及び上記式44の代わりに、アフィン動きに基づいて移動した画素位置の平均値を計算するとよい。
 以上のようにして、本第5変形例における移動体検出装置100cによれば、画素の動き情報を圧縮しながら領域の記録、送信が可能である。これによって、実施の形態1で説明した、形状が変化しながら移動する人物等を含む動画像に対しても正しく領域抽出できるという効果に加えて、それぞれの領域に対して1つの動き情報を用いることで高い符号化効率を実現できるという効果がある。
 さらには、別途、セグメント領域復元部を設けることによって、送信、記録した情報を復元することも可能である。具体的には、図19(a)及び図19(b)に示した各領域ラベルに対応する画素位置と画素値から、時刻Tのピクチャを復元する。さらに、画素の移動軌跡情報を用いて、時刻Tの各画素を移動させることによって、時刻T+1からT+tのピクチャを復元することが可能である。ここで、固定カメラを用いる場合には、画素の移動軌跡情報が0でない情報のみを用い、さらにセグメント領域復元部にて背景画像をあらかじめ取得、保持しておくことで、復元した画像を背景画像に上書きしてもよい。これにより、効率よく送信、記録された情報を用いて、低計算量でピクチャとして復元できるといった効果がある。
 (実施の形態2)
 次に、本発明の実施の形態2に係る移動体検出装置及び移動体検出方法について説明する。
 本実施の形態では、実施の形態1で説明した移動体検出方法を用いて、移動体を検出及び領域抽出を行った結果から、移動体の動きを予測する機能を付加した移動体検出装置について説明する。
 図22は、実施の形態2における移動体検出装置100dの構成を示す図である。図22に示すように、本実施の形態における移動体検出装置100dは、画像入力部101、動き解析部102、領域分割部103、距離計算部104、測地距離変換部105、近似測地距離算出部106、領域抽出部107、出力部108cに、動き予測部2101を付加することによって、移動体の動きを予測する機能を有する。
 動き予測部2101は、領域抽出した結果を入力とし、各領域に含まれる画素の移動軌跡から代表軌跡を算出し、前記代表軌跡をもとに移動体の動きを予測する。
 出力部108cは、実施の形態1における出力部108の機能に加えて、動き予測部2101で予測した移動体の位置や移動体部位の位置に関する情報を出力する。
 図23に実施の形態2による処理のフローチャートを示す。ステップS201からS208までは、実施の形態1と同様であるため説明を省略する。
 ステップS2201では、動き予測部2101は、ステップS208で行った領域抽出結果を用いて、以下のようにクラスタの代表点及びその代表軌跡を求める。
 ここで、領域θmに属する画素の移動軌跡を
Figure JPOXMLDOC01-appb-M000056
と表現することとする。次式のように、動き予測部2101は、クラスタ領域θmごとに代表の移動軌跡を求める。ここでは、代表の移動軌跡として、平均移動軌跡を算出する例について説明するが、下記の計算に対して画素の移動軌跡
Figure JPOXMLDOC01-appb-M000057
ごとに重み付け等を行ってもよいし、画像上でのクラスタの重心に対応する画素の移動軌跡を代表の移動軌跡としてもよい。
Figure JPOXMLDOC01-appb-M000058
 ここで、Cmは、領域θmに属する画素数もしくは画素の移動軌跡の数である。
 図24に上記式45に基づいてクラスタ領域θmごとに代表の移動軌跡を求める例を示す。ただし、見やすさを考慮して、本図では、頭部に対応するクラスタ領域θ1と脚部に対応するクラスタ領域θ8に関する代表の移動軌跡のみを示している。図中の×は、それぞれ時刻tに対応する
Figure JPOXMLDOC01-appb-M000059
の要素であり画素位置を示している。さらに、上記式3や上記式4に示したように、非線形空間上でのクラスタリングによる領域抽出は、画素動きの類似性を考慮して行われるため、単純に近接した画素の移動軌跡の時間平均を求めるような方法と比較して、動きが類似した画素の移動軌跡のみを用いて算出できるため、より高精度に代表の移動軌跡を求めることができる。このように、クラスタ領域ごとに代表の移動軌跡を求めることによって、部位ごとの動きを正確かつ簡便に表現することができる。
 次に、ステップS2202では、動き予測部2101は、ステップS2201にて算出した代表の移動軌跡から、時刻Tより先の時刻における移動体の位置を予測する。その具体例として、初めに、代表の移動軌跡から加速度を算出し、T+1以降の移動体の位置を予測する例について説明する。3枚以上の時系列画像が入力された場合は、次式のように代表の移動軌跡
Figure JPOXMLDOC01-appb-M000060
ごとに加速度ベクトルsmを得ることができる。
Figure JPOXMLDOC01-appb-M000061
 ここで、um tは動きベクトルであり、次式のように表すことができる。
Figure JPOXMLDOC01-appb-M000062
 上記式46の加速度ベクトルを用いて、動き予測部2101は、図24にて破線の矢印及び○で示したように、移動体の部位ごとに、時刻T+t'における移動体の部位位置posm(T+t')を以下のように予測することができる。ここでは、移動体の部位を例として挙げたが、図19に示した検出例から、次式のように移動体ごとの位置を予測することも可能である。
Figure JPOXMLDOC01-appb-M000063
 そして、出力部108cにて、ステップS2202で予測した移動体の位置や移動体部位の位置を出力する。これにより、加速度を加味した予測が可能である。動きが急激に早くなったり、急激に止まったりといった場合に、その加速度を反映して移動体の位置を予測することができるといった効果がある。また、動きベクトルの代わりにアフィンパラメータを用いてもかまわない。アフィンパラメータは、回転運動を含む動きの表現が可能であり、腕あるいは足の回旋運動の表現に適しているため、特に関節物体の位置をより正確に予測することができる。
 さらに、前述した動きベクトルと加速度の代わりに、代表の移動軌跡xmに対して直接N次関数をフィッティングすることも可能である。T枚の時系列に並んだ画像を入力とした場合、
Figure JPOXMLDOC01-appb-M000064
に含まれるT個の画像上での位置情報に対してN次の関数でフィティングすることができる。これにより、フィッティングした関数の値に沿うように、時刻(T+t')における画像上での位置posm(T+t')を推定することが可能である。具体的には、関数でフィッティングすることによって、より滑らかな動きを表現することが可能となるため、より高精度な予測が可能となる。特には、フィッティングした関数に沿った予測が可能であるため、フィッティングした関数が本来の動きが近い場合に動き予測の精度が高い。もちろん、これらの画像上での位置予測は、時間的内挿にも利用可能である。
 以上のように、本実施の形態における移動体検出装置100dによれば、動きが類似した画素の移動軌跡を同一のクラスタとして算出できるため、高精度に代表の移動軌跡を求めることができる。特に関節物体等に対して部位ごとの動きを表現することが可能であり、前処理として人物候補領域を設定することなく、高精度に移動体の部位位置を予測することが可能であるという効果がある。
 (実施の形態3)
 次に、本発明の実施の形態3に係る移動体検出装置及び移動体検出方法について説明する。
 本実施の形態では、実施の形態1で説明した移動体検出方法を、複数のカメラ映像に対して移動体を検出及び領域抽出を行う場合に拡張した移動体検出装置について説明する。
 図25は、実施の形態3における移動体検出装置100eの構成を示す図である。図25に示すように、本実施の形態における移動体検出装置100eは、複数カメラ画像入力部2401を有する画像入力部101a、動き解析部102a、領域分割部103a、距離計算部104a、測地距離変換部105b、近似測地距離算出部106b、領域抽出部107b、出力部108dからなる。なお、本実施の形態における移動体検出装置100eは、基本的には、実施の形態1と同じ機能を有する。以下、実施の形態1と異なる点を中心に説明する。
 画像入力部101aは、実施の形態1における画像入力部101の機能に加えて、複数カメラ画像入力部2401を有する。この複数カメラ画像入力部2401は、図26(a)及び図26(b)に示すように、複数のカメラからの映像であって、かつ、撮影領域が一部重複した映像の入力を受け付ける処理部であり、例えば、ビデオカメラ、あるいは、ビデオカメラと接続された通信インターフェース等である。なお、複数カメラ画像入力部2401に入力される映像の撮影条件としては、図26(a)及び図26(b)に示されるようなカメラ配置や個数を限定するものではなく、カメラ映像間で重複撮影領域が設定されるように配置されていればよい。
 動き解析部102aは、複数カメラ画像入力部2401で受け付けたそれぞれのカメラから得られたピクチャを構成する1個以上の画素からなるブロックごとに実施の形態1と同様に移動軌跡を算出する処理部である。また、複数のカメラ画像を重複撮影領域をもとに統合して、1つの画像としても構わない。その場合は、統合した画像を1つの画像として実施の形態1と同じ方法により処理を行うことができるので、以下の説明は省略する。
 領域分割部103aは、重複撮影領域における移動軌跡の少なくとも1つを共有点として設定する処理部である。ここでは、領域分割部103aは、カメラpから得られた画像から得られる移動軌跡が部分集合pに対応するように、複数のカメラの動画像のそれぞれについて算出された複数の移動軌跡を、分割された複数の部分集合として記憶する。なお、各カメラ画像を実施の形態1と同様に部分集合に分割しても構わない。この場合の処理については、実施の形態1と同じであるので、以下の説明を省略する。
 距離計算部104aは、各カメラから得られた画像から算出された移動軌跡について、それぞれ複数の移動軌跡間の類似性を表す距離を算出する処理部である。移動する物体の形状変化を捉えるために、動き解析部102aで算出した前記部分集合に含まれるブロックiの移動軌跡と、i以外の前記部分集合に含まれるブロックの移動軌跡とを用いて、ブロックの動きの類似性を表す距離を算出する処理部である。例えば、N個のブロックの移動軌跡を用いた場合、算出される距離はN×Nの距離マトリクスとなる。ここでは、ブロックの動きの類似性を評価する距離を計算することによって、ブロック間の距離が動きによって変化する移動体、特に、関節物体のように形状が変化しながら移動する人物等の物体の動きを距離マトリクスとして表現することが可能である。
 測地距離変換部105bは、距離計算部104aで算出した各カメラ画像に対応する部分集合における距離マトリクスに対して、それぞれ測地距離変換を行う処理部である。
 近似測地距離算出部106bは、測地距離変換部105bで算出された各部分集合、つまり各カメラ映像に対応する部分集合における測地距離マトリクスを共有点を用いて統合することによって、部分集合間、つまりカメラ映像間をまたがる近似的な測地距離を算出する処理部である。
 領域抽出部107bは、近似測地距離算出部106bで算出された近似的な測地距離に基づいて、類似する移動軌跡をもつブロックから構成される領域を特定することによって、領域抽出をする処理部である。
 出力部108dは、実施の形態1における出力部108の機能に加えて、領域抽出部107で行った複数のカメラ画像を統合して領域抽出、つまり被写体の検出を行った結果を出力する。
 以下に、本発明の移動体検出方法、つまり移動体検出装置100eの動作として、図27のフローチャートを用いて移動する移動体を検出、領域抽出する例について説明する。
 まず、ステップS201bにて、複数カメラ画像入力部2401は、図26(a)及び図26(b)に示すように複数のカメラからそれぞれ複数枚のピクチャを受け付ける。
 次に、ステップS202bにて、動き解析部102aは、それぞれのカメラから得られた少なくとも2枚のピクチャからブロックの動きを算出する。ここでの処理は、各カメラから得られたピクチャに対してそれぞれ実施の形態1のステップS202の処理を行えばよいため、説明を省略する。
 次に、ステップS203bにて、動き解析部102aは、ステップS202bで算出した動き情報を用いて実施の形態1で説明したステップS203と同じ処理を行うことで、カメラ画像ごとに上記式2に示した移動軌跡を算出する。実施の形態1と異なるのは、複数のカメラ映像に対して、それぞれステップS203の処理を行う点であるため、以下の説明を省略する。なお、便宜上、各カメラ画像から得られた移動軌跡を区別するため、上記式2を以下の式49のように書き換える。
Figure JPOXMLDOC01-appb-M000065
 ここで、p_iは、各カメラpから得られた画像の移動軌跡iである。
 次に、ステップS204bにて、領域分割部103aは、図28(a)及び図28(b)に示すように、カメラ画像に応じてP個の部分集合とする。ここで、部分集合とは、各カメラ画像にから得られた移動軌跡の集合である。なお、図28(a)は図26(a)に、図28(b)は図26(b)にそれぞれ対応する。この時、例えば、図28(a)に示すように、領域分割部103aは、カメラ画像2701とカメラ画像2702において、重複撮影領域2703上に共有点2704を設定する。もちろん、本発明は、図28(b)に示すように、カメラの数は2個に限定されるものではなく、カメラ画像2710~2713において、それぞれの重複撮影領域2703上に共有点2704を設定してもよい。ここで、重複撮影領域とは、複数の異なる位置に置かれたカメラから少なくとも一部、同一の場所が撮影されている場合における、画像上での領域である。さらに、共有点は、前記重複撮影領域上に少なくとも1点以上設定すればよい。以下の処理は、複数のカメラpから得られた画像およびそれに対応する移動軌跡を分割した部分集合pと考えて処理を行えばよい。以下、実施の形態1のステップS204と同じ処理を行えばよいため、説明を省略する。
 次に、ステップS205bにて、距離計算部104aは、ステップS204bにてカメラpで得られた画像ごとに計算された移動軌跡を部分集合pに属する移動軌跡と考えて、距離マトリクスを算出する。本ステップにおける以降の処理は、複数のカメラpから得られた画像およびその移動軌跡を実施の形態1で分割した部分集合pと考えて処理を行えばよい。以下、実施の形態1のステップS205と同じ処理を行えばよいため、説明を省略する。
 次に、ステップS206bにて、測地距離変換部105bは、ステップS205bにてカメラpで得られた画像ごとに計算された移動軌跡を部分集合pと考えて、測地距離を計算する。本ステップにおける以降の処理は、実施の形態1のステップS206と同じであるため、説明を省略する。
 次に、ステップS207bにて、近似測地距離算出部106bは、ステップS206bにてカメラpで得られた画像ごとに計算された測地距離マトリクスを統合する。ここでは、図28に示したように重複撮影領域上の共有点を用いて、実施の形態1のステップS207と同じ処理を行えばよい。そのため、説明は省略する。
 次に、ステップS208bにて、領域抽出部107bは、近似測地距離算出部106bで統合した測地距離を用いて、不連続点を検出することによって類似する移動軌跡をもつブロックから構成される領域を特定することによって領域抽出を行う。ここでの処理についても、実施の形態1のステップS208と同じ処理を行えばよいため、説明を省略する。
 以上のようにして、実施の形態3における移動体検出装置100eによれば、複数のカメラ画像を入力として、形状が変化しながら移動する人物等の移動体を含む画像や、異なるカメラ画像間をまたがるように移動する移動体に対しても、移動体の姿勢あるいは大きさの影響を受けずに、高速かつ正しく領域抽出、つまり移動体検出を行うことができる。
 (実施の形態4)
 次に、本発明の実施の形態4に係る移動体検出装置及びその方法の応用例であるデータ分類装置及びその方法について説明する。
 図29は、実施の形態4におけるデータ分類装置2800の構成を示す図である。図29に示されるように、このデータ分類装置2800は、ベクトルデータ入力部2801、領域分割部103、距離計算部104、測地距離変換部105、近似測地距離算出部106、データ分類部2802、出力部2803を備える。ここでは、上述した移動軌跡等の多次元のベクトルデータを入力として、そのデータを分類する。
 ベクトルデータ入力部2801は、ベクトルデータを受け付ける処理部である。ベクトルデータは、例えば、ステレオカメラやCG等から得られた3次元位置を示すデータであってもよいし、その時間変化を表すデータであってもよい。
 領域分割部103は、ベクトルデータ入力部2801で得られた多次元ベクトルについて、実施の形態1の第1変形例と同じように、多次元ベクトルの空間上でP個の部分集合に分割するとともに、分割された複数の部分集合の一つ(例えば、隣接する部分集合に対して、当該部分集合の少なくとも一方)に含まれる一部のベクトルデータを共有点として設定する。
 以下、距離計算部104、測地距離変換部105、近似測地距離算出部106の構成は、実施の形態1および実施の形態1の第1変形例と同じであるため、説明を省略する。つまり、これらの実施の形態及び変形例においては、処理対象のデータが「移動軌跡」であったが、本実施の形態では、処理対象のデータが「ベクトルデータ」である点だけが異なり、各処理部での処理内容は同一である。
 データ分類部2802は、実施の形態1における領域抽出部107と同様に、類似する多次元ベクトルデータをクラスタリングすることによって、データを分類する。ここでは、距離計算部104で算出した距離マトリクスを用いて、測地距離変換部105、近似測地距離算出部106にて得られた近似的な測地距離から、多次元ベクトル間の距離の分布における不連続性を検出し、検出した不連続点よりも小さい距離だけ離れた多次元ベクトルどうしが一つのクラスタとなるように、不連続点をもとにそれぞれ連続的に分布する多次元ベクトルをクラスタリングすることによって、多次元ベクトルデータを分類する。データ分類部2802での結果は、出力部2803によって、メモリやハードディスク等へ書き込まれたり、ディスプレイパネル等に表示されたりする。
 なお、本実施の形態におけるデータ分類装置についても、移動体検出装置と同様に、各構成要素のうち、ディスプレイ装置等の入出力装置を除く構成要素については、図2に示されるコンピュータ1002で実行されるプログラム及びデータ(つまり、ソフトウェア)で実現してもよいし、電子回路、メモリ及び記録媒体等のハードウェアで実現してもよいし、それらの混在で実現してもよい。
 以下に、本発明のベクトルデータの分類方法、つまり、データ分類装置2800の動作として、図30のフローチャートを用いて多次元ベクトルデータを分類する例について説明する。
 まず、ステップS2901にて、ベクトルデータ入力部2801は、複数のベクトルデータを受け付ける。ここで、ベクトルデータとは、上記式2に示すような複数の要素からなる多次元ベクトルであれば何でもよい。
 ステップS204からステップS208までは、実施の形態1の第1変形例において、移動軌跡を多次元ベクトルデータとして処理を行えばよい。
 このように、本実施の形態4におけるデータ分類装置2800によれば、移動軌跡だけでなく、例えばレンジファインダやステレオカメラから得られた3次元位置を表すデータを多次元ベクトルとして入力すれば、3次元位置に基づいて3次元の被写体を分類することもできる。さらに、入力としての多次元ベクトルデータは、多次元尺度構成法で分析可能なベクトルデータであれば何でもよく、測地距離変換を行うことで、非線形性の高いデータに対しても分類がより高精度になり、かつ高速に処理ができるという効果がある。
 (実施の形態1の補足)
 ここでは、実施の形態1で説明した方法を用いた場合に、領域抽出可能な移動体の性質について補足する。図31(a)~図31(c)に実施の形態1の方法を用いた場合に分離可能な図形の一例を示す。実施の形態1の方法を用いることで、それぞれ図形θ1と図形θ2とに領域抽出することが可能である。ここでは、図31(a)から図31(c)に示したそれぞれの図形θ1と図形θ2の移動方向は、同一であっても、異なっていてもかまわない。ただし、図形θ1に属する画素はすべて同じ動きであり、かつ図形θ2に属する画素はすべて同じ動きであることが条件である。
 実施の形態1におけるステップS205およびS207では、図6に示したような特徴を持つ測地距離変換を行う。これによって、通常のユークリッド距離とは異なり、移動軌跡から移動軌跡を辿(たど)った距離を算出することができるという特徴がある。そのため、図31(a)から図31(c)に共通するように湾曲した形状に対して、その形状に沿った距離を算出することができる。
 さらに、ステップS208では、測地距離が無限大となる移動軌跡と移動軌跡の間を不連続点としてクラスタリングを行う。このため、移動軌跡と移動軌跡の間に閾値以上の距離がある場合には、その不連続点をもとに、それぞれ図形θ1と図形θ2とを領域抽出することが可能である。
 以上のように、本実施の形態を用いれば、湾曲した形状を含む移動体でかつ一定の不連続点がある場合に、不連続点をもとに領域を抽出することが可能である。
 一方で、ステップS205およびS207の処理を行わない場合には、図形θ1に属する移動軌跡と図形θ2に属する移動軌跡との距離がユークリッド距離で算出されるため、図6で説明した場合と同様に、点iと点jの距離は、点iと点kの距離より大きくなる。すなわち、同一クラスに属している点間の距離が別クラスに属している点間の距離よりも大きくなる。さらに、ステップS205の処理にて、測地距離変換を行わないとデータを辿(たど)る処理を行わないために、隣接する移動軌跡と移動軌跡の間が不連続か連続かを判断することができない。そのため、図31に示すような例では、湾曲した形状を含む移動体でかつ一定の不連続点がある場合に、不連続点をもとに領域を抽出することは難しい。
 よって、実施の形態1では、このような測地距離を用いたクラスタリングにより、直線的な距離であるユークリッド距離を用いたクラスタリングに比べ、移動軌跡間の類似性に関する連続性を考慮したクラスタリングが行われ、入り組んだ複雑な関係の領域どうしであっても、同一の物体(又は部位)に属するか別個の物体(又は部位)に属するかが確実に弁別される。
 以上、本発明に係る移動体検出装置及びその方法、データ分類装置及びその方法について、実施の形態及びその変形例に基づいて説明したが、本発明は、これらの実施の形態及び変形例に限定されるものではない。本発明の趣旨を逸脱しない範囲で、各実施の形態に対して当業者が思いつく各種変形を施して実現される形態や、各実施の形態及び変形例における構成要素を任意に組合せて実現される形態も本発明に含まれる。
 たとえば、実施の形態1の第4変形例に対して、同第5変形例における記録・送信部1901及び実施の形態2における動き予測部2101を追加して構成される移動体検出装置も本発明に含まれる。
 また、本発明に係る移動体検出装置は、上記実施の形態における領域分割部に代えて、図32に示される移動体検出装置103fが備える領域分割部103bを備えてもよい。この領域分割部103bは、実施の形態1における領域分割部103の機能に加えて、動き解析部102によって算出された移動軌跡を複数の部分集合に分割する処理を支援する2つの処理部(手動設定部1031、自動設定部1032)を有する。
 手動設定部1031は、画像入力部101が受け付けたピクチャに対してユーザが指定した空間分割に従って、動き解析部102によって算出された移動軌跡を複数の部分集合に分割する。たとえば、手動設定部1031は、ユーザがマウス等を用いて、ピクチャ上で、移動体が存在する(あるいは、移動する)と予想される領域を指定すると、その領域を、一つの部分集合(つまり、その領域に含まれるブロックに対応する移動軌跡を一つの部分集合)に分割する。例えば、移動体の動線が通路に沿っている場合等には、その通路が一つの領域になるようにするとよい。
 一方、自動設定部1032は、動き解析部102によって算出された移動軌跡を、ユーザの入力を介さずに、自動で、複数の部分集合に分割する。たとえば、自動設定部1032は、動き解析部102で検出された動きを参照し、予め設定された閾値を超える大きさの動きをもつ領域が一つの領域となるようにし、その他の領域を複数の部分集合に分割することで、上記移動軌跡を複数の部分集合に自動分割する。また、動き解析部102で検出された動きを時間的に累積して、累積値の大きい領域を一つの領域となるようにしてもよい。
 例えば、監視システム等における固定されたカメラ(パン、チルト、ズームを含む)においては、撮影領域が予め分かっている。そのため、画像上において移動体が通る領域も予め特定することができる場合が多い。このような時に、特に検出精度の低下を防ぐことができるという効果がある。
 このような領域分割部103bにより、移動体が存在する領域が複数の部分集合に分割されてしまうことによって、測地距離計算の精度が下がる危険性を回避することができるため、移動体の検出精度の低下を防ぐことができる。
 本発明は、動画像中の移動体の全部又は一部を検出する装置、つまり、複数枚の画像における1個以上の画素からなるブロックの動きに基づいて、形状が変化しながら移動する人物等の移動体を含む画像を領域抽出することによって画像中の移動体を検出する移動体検出装置として、例えば、運動解析装置、監視装置、ビデオカメラあるいはTV等のAV機器に内蔵させる移動体検出装置等として利用することが可能である。
 100、100a~100f 移動体検出装置
 101、101a 画像入力部
 102、102a 動き解析部
 103、103a、103b 領域分割部
 104、104a 距離計算部
 105、105a、105b 測地距離変換部
 106、106a、106b 近似測地距離算出部
 107、107a、107b 領域抽出部
 108、108a~108d、2803 出力部
 1031 手動設定部
 1032 自動設定部
 1401 領域抽出候補生成部
 1402 領域抽出候補選択部
 1701 画像表示部
 1901 記録・送信部
 2101 動き予測部
 2401 複数カメラ画像入力部
 2800 データ分類装置
 2801 ベクトルデータ入力部
 2802 データ分類部

Claims (21)

  1.  動画像中の移動体の全部又は一部の領域を抽出することによって動画像中の移動体を検出する移動体検出装置であって、
     動画像を構成する複数枚のピクチャを受け付ける画像入力部と、
     受け付けられた前記ピクチャを構成する1個以上の画素からなるブロックごとに、異なる2枚のピクチャ間での画像の動きを検出し、検出した動きを前記複数枚のピクチャについて連結した移動軌跡を複数算出する動き解析部と、
     算出された前記複数の移動軌跡を複数の部分集合に分割するとともに、分割された複数の部分集合において一部の移動軌跡を共有点として設定する領域分割部と、
     分割された前記複数の部分集合のそれぞれについて、複数の移動軌跡間の類似性を表す距離を算出する距離計算部と、
     算出された前記距離を、測地距離に変換する測地距離変換部と、
     変換された前記測地距離のうち、前記共有点を共有する測地距離を統合することで、前記部分集合にまたがる近似的な測地距離を算出する近似測地距離算出部と、
     算出された近似的な測地距離を用いて、類似する移動軌跡をもつブロックどうしを同一の領域として特定するクラスタリングを行うことによって、前記動画像に対して少なくとも一つの領域を抽出する領域抽出部と
     を備える移動体検出装置。
  2.  前記画像入力部は、複数のカメラによる複数の動画像のそれぞれについて、前記複数枚のピクチャを受け付け、
     前記動き解析部は、前記複数の動画像のそれぞれについて、前記複数の移動軌跡を算出し、
     前記領域分割部は、前記複数の動画像のそれぞれについて算出された複数の移動軌跡を、分割された前記複数の部分集合として保持し、
     前記領域抽出部は、前記クラスタリングを行うことで、前記複数の動画像に対して少なくとも一つの領域を抽出する
     請求項1記載の移動体検出装置。
  3.  前記領域分割部は、移動軌跡に対応する前記ピクチャ上でのブロックの画像上での位置に関する空間上で、前記複数の移動軌跡を前記複数の部分集合に分割する
     請求項1記載の移動体検出装置。
  4.  前記領域分割部は、前記ピクチャに対してユーザが指定した空間分割に従って、前記複数の移動軌跡を前記複数の部分集合に分割する
     請求項3記載の移動体検出装置。
  5.  前記移動軌跡は、多次元ベクトルで表現され、
     前記領域分割部は、前記多次元ベクトルを表現する多次元ベクトル空間上で、前記複数の移動軌跡を前記複数の部分集合に分割する
     請求項1記載の移動体検出装置。
  6.  前記領域分割部は、近傍の部分集合の一部が重複するように前記分割をするとともに、重複した領域に含まれる移動軌跡を前記共有点として設定する
     請求項3~5のいずれか1項に記載の移動体検出装置。
  7.  前記領域分割部は、前記複数の部分集合のそれぞれについて、当該部分集合に属する移動軌跡のうち、他の部分集合との境界に近接する移動軌跡を、前記共有点として設定する
     請求項3~5のいずれか1項に記載の移動体検出装置。
  8.  前記測地距離変換部は、前記距離計算部で算出された距離のうち、予め定められた条件を満たす小さい距離を連結することで、前記動き解析部で算出された一の移動軌跡から他の一の移動軌跡にたどりつく最短経路を求めることにより、前記距離計算部で算出された距離のそれぞれを測地距離に変換する
     請求項1記載の移動体検出装置。
  9.  前記測地距離変換部は、前記複数の部分集合に含まれる複数の移動軌跡のそれぞれについて、当該移動軌跡から他の移動軌跡までの複数の距離のうち、小さい順に予め定められた個数の距離を選択し、選択しなかった距離を無限大に変更する非線形化をした後に、前記最短経路を求めることにより、前記距離計算部で算出された距離のそれぞれを測地距離に変換する
     請求項8記載の移動体検出装置。
  10.  前記測地距離変換部は、前記複数の部分集合に含まれる複数の移動軌跡のそれぞれについて、当該移動軌跡から他の移動軌跡までの複数の距離のうち、予め定められた閾値以下の距離を選択し、選択しなかった距離を無限大に変更する非線形化をした後に、前記最短経路を求めることにより、前記距離計算部で算出された距離のそれぞれを測地距離に変換する
     請求項8記載の移動体検出装置。
  11.  前記領域抽出部は、前記近似測地距離算出部で算出された測地距離の分布における少なくとも一つ以上の不連続点を検出し、検出した不連続点よりも小さい測地距離だけ離れた移動軌跡どうしが一つのクラスタとなるように、前記クラスタリングを行う
     請求項1記載の移動体検出装置。
  12.  前記領域抽出部は、前記近似測地距離算出部で算出された測地距離に対して、固有値および固有ベクトルを求めることによって次元圧縮を行い、次元圧縮した空間上で前記クラスタリングを行う
     請求項1記載の移動体検出装置
  13.  前記測地距離変換部は、前記距離を前記測地距離に変換するための複数の判断基準を生成し、生成した複数の判断基準のそれぞれについて、当該判断基準を用いて前記距離を前記測地距離に変換することで、前記複数の判断基準のそれぞれに対応する測地距離を生成し、
     前記近似測地距離算出部は、前記複数の判断基準のそれぞれに対応する測地距離に対して前記統合を行い、
     前記領域抽出部は、
     前記複数の判断基準のそれぞれに対応する統合された近似的な測地距離に対して前記クラスタリングを行って領域を抽出することで、前記複数の判断基準のそれぞれに対応させて、前記領域抽出の結果を領域抽出候補として生成する領域抽出候補生成部と、
     クラス数についての指示を取得し、取得したクラス数に近い個数の領域が抽出された領域抽出候補を、前記領域抽出候補生成部で生成された複数の領域抽出候補から選択し、選択した領域抽出候補を、当該領域抽出部による領域抽出の結果として出力する領域抽出候補選択部とを有する
     請求項1に記載の移動体検出装置。
  14.  前記測地距離変換部は、前記複数の判断基準として、複数の閾値を生成し、生成した複数の閾値のそれぞれについて、前記距離計算部で算出された距離のうち、当該閾値よりも小さい距離を連結することで、前記複数の判断基準のそれぞれに対応する測地距離を生成する
     請求項13記載の移動体検出装置。
  15.  前記移動体検出装置はさらに、前記領域抽出部で得られた領域抽出の結果を、前記画像入力部で受け付けたピクチャに重ねて表示する画像表示部を備える
     請求項1~14のいずれか1項に記載の移動体検出装置。
  16.  前記移動体検出装置はさらに、前記領域抽出部での領域抽出の結果に対応させて、前記画像入力部で受け付けたピクチャにおける領域を特定し、特定した領域ごとに、対応する領域抽出の結果を、記録して保持する、又は、伝送路を介して外部に送信する記録・送信部を備える
     請求項1~15のいずれか1項に記載の移動体検出装置。
  17.  前記画像入力部は、2つ以上の移動体が含まれる動画像を受け付け、
     前記領域抽出部では、前記2以上の移動体について前記領域抽出をすることで、2以上の移動体を検出する
     請求項1~16のいずれか1項に記載の移動体検出装置。
  18.  前記移動体検出装置はさらに、前記領域抽出部で抽出された領域に含まれるブロックの移動軌跡から、当該領域を代表する移動軌跡を算出し、算出した移動軌跡に従って当該領域が移動すると予測することで、前記移動体の動きを予測する動き予測部を備える
     請求項1~17のいずれか1項に記載の移動体検出装置。
  19.  複数のベクトルデータを、類似するベクトルデータの集まりであるクラスに分類するベクトルデータ分類装置であって、
     複数のベクトルデータを受け付けるベクトルデータ入力部と、
     受け付けられた前記複数のベクトルデータを、測地距離の計算に利用される複数の部分集合に分割するとともに、分割された複数の部分集合の少なくとも一つに含まれる一部のベクトルデータを共有点として設定する領域分割部と、
     分割された前記複数の部分集合のそれぞれについて、複数のベクトルデータ間の類似性を表す距離を算出する距離計算部と
     算出された前記距離を、中継点としての移動軌跡をたどりながら一の移動軌跡から他の一の移動軌跡にたどりつく経路の距離である測地距離に変換する測地距離変換部と
     変換された前記測地距離のうち、前記共有点を共有する測地距離を統合することで、前記部分集合にまたがる近似的な測地距離を算出する近似測地距離算出部と、
     算出された近似的な測地距離を用いて、類似するベクトルデータをもつブロックどうしを一つの領域として特定するクラスタリングを行うことによって、前記動画像に対して少なくとも一つのクラスを生成するデータ分類部と
     を備えるベクトルデータ分類装置。
  20.  動画像中の移動体の全部又は一部の領域を抽出することによって動画像中の移動体を検出する移動体検出方法であって、
     動画像を構成する複数枚のピクチャを受け付ける画像入力ステップと、
     受け付けられた前記ピクチャを構成する1個以上の画素からなるブロックごとに、異なる2枚のピクチャ間での画像の動きを検出し、検出した動きを前記複数枚のピクチャについて連結した移動軌跡を複数算出する動き解析ステップと、
     算出された前記複数の移動軌跡を複数の部分集合に分割するとともに、分割された複数の部分集合において一部の移動軌跡を共有点として設定する領域分割ステップと、
     分割された前記複数の部分集合のそれぞれについて、複数の移動軌跡間の類似性を表す距離を算出する距離計算ステップと、
     算出された前記距離を、中継点としての移動軌跡をたどりながら一の移動軌跡から他の一の移動軌跡にたどりつく経路の距離である測地距離に変換する測地距離変換ステップと、
     変換された前記測地距離のうち、前記共有点を共有する測地距離を統合することで、前記部分集合にまたがる近似的な測地距離を算出する近似測地距離算出ステップと、
     算出された近似的な測地距離を用いて、類似する移動軌跡をもつブロックどうしを同一の領域として特定するクラスタリングを行うことによって、前記動画像に対して少なくとも一つの領域を抽出する領域抽出ステップと
     を含む移動体検出方法。
  21.  動画像中の移動体の全部又は一部の領域を抽出することによって動画像中の移動体を検出するためのプログラムであって、
     請求項20記載の移動体検出方法に含まれるステップをコンピュータに実行させる
     プログラム。
PCT/JP2010/004378 2009-07-31 2010-07-05 移動体検出装置及び移動体検出方法 WO2011013299A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
EP10804052.8A EP2461292B1 (en) 2009-07-31 2010-07-05 Mobile body detection apparatus and mobile body detection method
JP2010536277A JP4643766B1 (ja) 2009-07-31 2010-07-05 移動体検出装置及び移動体検出方法
CN201080003380.4A CN102227750B (zh) 2009-07-31 2010-07-05 移动体检测装置及移动体检测方法
US12/976,169 US8300892B2 (en) 2009-07-31 2010-12-22 Moving object detection apparatus and moving object detection method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2009-178788 2009-07-31
JP2009178788 2009-07-31

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US12/976,169 Continuation US8300892B2 (en) 2009-07-31 2010-12-22 Moving object detection apparatus and moving object detection method

Publications (1)

Publication Number Publication Date
WO2011013299A1 true WO2011013299A1 (ja) 2011-02-03

Family

ID=43528973

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2010/004378 WO2011013299A1 (ja) 2009-07-31 2010-07-05 移動体検出装置及び移動体検出方法

Country Status (5)

Country Link
US (1) US8300892B2 (ja)
EP (1) EP2461292B1 (ja)
JP (1) JP4643766B1 (ja)
CN (1) CN102227750B (ja)
WO (1) WO2011013299A1 (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102739957A (zh) * 2011-03-31 2012-10-17 卡西欧计算机株式会社 能够确定被摄体的运动的图像处理装置及图像处理方法
CN106354333A (zh) * 2016-09-30 2017-01-25 南京仁光电子科技有限公司 一种提高触控系统跟踪精确度的方法
JP2018124689A (ja) * 2017-01-31 2018-08-09 株式会社日立製作所 移動物体検出装置、移動物体検出システム、及び移動物体検出方法
KR20210146109A (ko) * 2020-05-26 2021-12-03 동명대학교산학협력단 다중 영상데이터의 학습을 통한 연속적 객체 위치 추적 장치 및 그 방법
CN114004645A (zh) * 2021-10-29 2022-02-01 浙江省民营经济发展中心(浙江省广告监测中心) 融媒体广告智慧监测平台和电子设备
WO2022102038A1 (ja) 2020-11-12 2022-05-19 富士通株式会社 情報処理装置、生成方法、および生成プログラム
KR20230122297A (ko) * 2022-02-14 2023-08-22 이정호 인공지능 기반의 수중 위치 보정 방법

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102378992B (zh) * 2009-12-28 2014-12-24 松下电器产业株式会社 关节状区域检测装置及其方法
EP2447882B1 (en) * 2010-10-29 2013-05-15 Siemens Aktiengesellschaft Method and device for assigning sources and sinks to routes of individuals
US8855361B2 (en) * 2010-12-30 2014-10-07 Pelco, Inc. Scene activity analysis using statistical and semantic features learnt from object trajectory data
AU2011265430B2 (en) * 2011-12-21 2015-03-19 Canon Kabushiki Kaisha 3D reconstruction of partially unobserved trajectory
US10095954B1 (en) * 2012-01-17 2018-10-09 Verint Systems Ltd. Trajectory matching across disjointed video views
TWI588778B (zh) * 2012-01-17 2017-06-21 國立臺灣科技大學 動作辨識方法
US9336302B1 (en) 2012-07-20 2016-05-10 Zuci Realty Llc Insight and algorithmic clustering for automated synthesis
TWI482468B (zh) * 2012-11-23 2015-04-21 Inst Information Industry 物體偵測裝置、方法及其電腦可讀取紀錄媒體
CN103841312B (zh) * 2012-11-27 2017-03-01 财团法人资讯工业策进会 物体侦测装置及方法
JP6381918B2 (ja) * 2013-01-23 2018-08-29 キヤノンメディカルシステムズ株式会社 動作情報処理装置
JP6072892B2 (ja) * 2013-02-27 2017-02-01 日立オートモティブシステムズ株式会社 撮像装置及び車両制御装置
JP6110174B2 (ja) * 2013-03-26 2017-04-05 株式会社メガチップス 画像検出装置及び制御プログラム並びに画像検出方法
US10235605B2 (en) * 2013-04-10 2019-03-19 Microsoft Technology Licensing, Llc Image labeling using geodesic features
US10191956B2 (en) * 2014-08-19 2019-01-29 New England Complex Systems Institute, Inc. Event detection and characterization in big data streams
GB2523253B (en) * 2015-01-23 2017-04-12 Visidon Oy Image processing method
US9990857B2 (en) * 2015-07-01 2018-06-05 Grafty, Inc. Method and system for visual pedometry
CN107798272B (zh) * 2016-08-30 2021-11-02 佳能株式会社 快速多目标检测与跟踪系统
US11205103B2 (en) 2016-12-09 2021-12-21 The Research Foundation for the State University Semisupervised autoencoder for sentiment analysis
CN107015017B (zh) * 2017-03-02 2020-08-11 惠州Tcl移动通信有限公司 一种基于速度计算的速度提示方法及系统
US10733755B2 (en) * 2017-07-18 2020-08-04 Qualcomm Incorporated Learning geometric differentials for matching 3D models to objects in a 2D image
JP6943294B2 (ja) * 2017-12-14 2021-09-29 富士通株式会社 技認識プログラム、技認識方法および技認識システム
US10896531B1 (en) * 2018-05-18 2021-01-19 Tableau Software, Inc. Using visual distortion to emphasize targeted regions of data visualizations according to geodesic curves
CN109063714A (zh) * 2018-08-06 2018-12-21 浙江大学 基于深度神经网络的帕金森病运动迟缓视频检测模型的构建方法
US11488374B1 (en) * 2018-09-28 2022-11-01 Apple Inc. Motion trajectory tracking for action detection
US10937169B2 (en) * 2018-12-18 2021-03-02 Qualcomm Incorporated Motion-assisted image segmentation and object detection
CN110426178B (zh) * 2019-07-23 2020-09-29 中国科学院软件研究所 一种基于尾流示踪的风场测量方法及系统
CN116648596A (zh) * 2020-12-22 2023-08-25 松下知识产权经营株式会社 成像装置
CN115082545B (zh) * 2022-06-08 2023-02-07 国网黑龙江省电力有限公司大庆供电公司 应用于电力现场的安全系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08214289A (ja) 1994-12-06 1996-08-20 Olympus Optical Co Ltd 時系列画像解析装置及びその解析方法
JPH1166319A (ja) * 1997-08-21 1999-03-09 Omron Corp 移動体検出方法及び装置並びに移動体認識方法及び装置並びに人間検出方法及び装置
JP4456181B1 (ja) * 2008-10-27 2010-04-28 パナソニック株式会社 移動体検出方法及び移動体検出装置

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3612360B2 (ja) * 1995-04-10 2005-01-19 株式会社大宇エレクトロニクス 移動物体分割法を用いた動画像の動き推定方法
US6643387B1 (en) * 1999-01-28 2003-11-04 Sarnoff Corporation Apparatus and method for context-based indexing and retrieval of image sequences
JP4226730B2 (ja) * 1999-01-28 2009-02-18 株式会社東芝 物体領域情報生成方法及び物体領域情報生成装置並びに映像情報処理方法及び情報処理装置
JP2000222584A (ja) * 1999-01-29 2000-08-11 Toshiba Corp 映像情報記述方法、映像検索方法及び映像検索装置
US6859554B2 (en) * 2001-04-04 2005-02-22 Mitsubishi Electric Research Laboratories, Inc. Method for segmenting multi-resolution video objects
US20030123704A1 (en) * 2001-05-30 2003-07-03 Eaton Corporation Motion-based image segmentor for occupant tracking
US8614741B2 (en) * 2003-03-31 2013-12-24 Alcatel Lucent Method and apparatus for intelligent and automatic sensor control using multimedia database system
CN101334845B (zh) * 2007-06-27 2010-12-22 中国科学院自动化研究所 一种基于轨迹序列分析和规则归纳的视频行为识别方法
US8212210B2 (en) * 2008-02-04 2012-07-03 Flir Systems Ab IR camera and method for presenting IR information

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08214289A (ja) 1994-12-06 1996-08-20 Olympus Optical Co Ltd 時系列画像解析装置及びその解析方法
JPH1166319A (ja) * 1997-08-21 1999-03-09 Omron Corp 移動体検出方法及び装置並びに移動体認識方法及び装置並びに人間検出方法及び装置
JP4456181B1 (ja) * 2008-10-27 2010-04-28 パナソニック株式会社 移動体検出方法及び移動体検出装置

Non-Patent Citations (8)

* Cited by examiner, † Cited by third party
Title
E. W. DIJKSTRA: "A note on two problems in connexion with graphs", NUMERISCHE MATHEMATIK, 1959, pages 269 - 271, XP000837527, DOI: doi:10.1007/BF01386390
JIANBO SHI, CARLO TOMASI: "Good Features to Track", IEEE CONFERENCE ON COMPUTER VISION AND PATTERN RECOGNITION, 1994, pages 593 - 600, XP010099247, DOI: doi:10.1109/CVPR.1994.323794
JOSHUA TENENBAUM, VIN DE SILVA, JOHN LANGFORD: "A Global Geometric Framework for Nonlinear Dimensionality Reduction", SCIENCE, vol. 290, 22 December 2000 (2000-12-22), pages 2319 - 2322
P. ANANDAN: "A Computational Framework and an Algorithm for the Measurement of Visual Motion", INTERNATIONAL JOURNAL OF COMPUTER VISION, vol. 2, 1989, pages 283 - 310, XP008055537, DOI: doi:10.1007/BF00158167
See also references of EP2461292A4
VIN DE SILVA, JOSHUA B, TENENBAUM: "Global Versus Local Methods in Nonlinear Dimensionality Reduction", NEURAL INFORMATION PROCESSING SYSTEMS, vol. 15, 2002, pages 705 - 712
VIN DE SILVA, JOSHUA B. TENENBAUM: "Sparse Multidimensional Scaling using Landmark Points", TECHNICAL REPORT, STANFORD UNIVERSITY, June 2004 (2004-06-01)
VLADIMIR KOLMOGOROV, RAMIN ZABIH: "Computing Visual Correspondence with Occlusions via Graph Cuts", INTERNATIONAL CONFERENCE ON COMPUTER VISION, 2001

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102739957A (zh) * 2011-03-31 2012-10-17 卡西欧计算机株式会社 能够确定被摄体的运动的图像处理装置及图像处理方法
CN106354333A (zh) * 2016-09-30 2017-01-25 南京仁光电子科技有限公司 一种提高触控系统跟踪精确度的方法
JP2018124689A (ja) * 2017-01-31 2018-08-09 株式会社日立製作所 移動物体検出装置、移動物体検出システム、及び移動物体検出方法
KR20210146109A (ko) * 2020-05-26 2021-12-03 동명대학교산학협력단 다중 영상데이터의 학습을 통한 연속적 객체 위치 추적 장치 및 그 방법
KR102425213B1 (ko) 2020-05-26 2022-07-25 동명대학교 산학협력단 다중 영상데이터의 학습을 통한 연속적 객체 위치 추적 장치 및 그 방법
WO2022102038A1 (ja) 2020-11-12 2022-05-19 富士通株式会社 情報処理装置、生成方法、および生成プログラム
CN114004645A (zh) * 2021-10-29 2022-02-01 浙江省民营经济发展中心(浙江省广告监测中心) 融媒体广告智慧监测平台和电子设备
KR20230122297A (ko) * 2022-02-14 2023-08-22 이정호 인공지능 기반의 수중 위치 보정 방법
KR102601155B1 (ko) * 2022-02-14 2023-11-10 이정호 인공지능 기반의 수중 위치 보정 방법

Also Published As

Publication number Publication date
US20110091073A1 (en) 2011-04-21
JP4643766B1 (ja) 2011-03-02
CN102227750B (zh) 2014-06-25
JPWO2011013299A1 (ja) 2013-01-07
EP2461292B1 (en) 2018-09-26
CN102227750A (zh) 2011-10-26
US8300892B2 (en) 2012-10-30
EP2461292A4 (en) 2013-07-24
EP2461292A1 (en) 2012-06-06

Similar Documents

Publication Publication Date Title
JP4643766B1 (ja) 移動体検出装置及び移動体検出方法
JP4456181B1 (ja) 移動体検出方法及び移動体検出装置
JP4782901B2 (ja) 移動体検出装置および移動体検出方法
JP4542207B1 (ja) 移動体検出方法および移動体検出装置
JP5054206B2 (ja) 画像処理方法及び画像処理装置
US8705861B2 (en) Context processor for video analysis system
JP5404918B2 (ja) 移動軌跡算出方法およびその装置、ならびに領域分割方法
JP5001260B2 (ja) オブジェクト追跡方法及びオブジェクト追跡装置
JP4668360B2 (ja) 移動体検出方法及び移動体検出装置
Benedek et al. An integrated 4D vision and visualisation system
KR102629213B1 (ko) 경사 촬영 동영상 이동물체 탐지 방법 및 장치
JP4966946B2 (ja) 時空間画像分離装置、時空間画像分離方法および時空間画像分離プログラム
JP4660736B2 (ja) 動画像時間分割処理方法および装置
Khazaeli et al. Kinect applications in construction: From tracking to reconstruction
Benedek et al. 4D Scene Reconstruction in Multi-Target Scenarios

Legal Events

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

Ref document number: 201080003380.4

Country of ref document: CN

ENP Entry into the national phase

Ref document number: 2010536277

Country of ref document: JP

Kind code of ref document: A

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

Ref document number: 10804052

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2010804052

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: DE