WO2011080900A1 - 移動体検出装置および移動体検出方法 - Google Patents

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

Info

Publication number
WO2011080900A1
WO2011080900A1 PCT/JP2010/007480 JP2010007480W WO2011080900A1 WO 2011080900 A1 WO2011080900 A1 WO 2011080900A1 JP 2010007480 W JP2010007480 W JP 2010007480W WO 2011080900 A1 WO2011080900 A1 WO 2011080900A1
Authority
WO
WIPO (PCT)
Prior art keywords
subclass
distance
subclasses
movement
unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
PCT/JP2010/007480
Other languages
English (en)
French (fr)
Inventor
正宏 岩崎
一生 登
亜矢子 甲本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Corp
Original Assignee
Panasonic Corp
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 Panasonic Corp filed Critical Panasonic Corp
Priority to JP2011518621A priority Critical patent/JP4782901B2/ja
Priority to CN2010800154122A priority patent/CN102396001A/zh
Priority to EP10840760.2A priority patent/EP2521093B1/en
Priority to US13/170,354 priority patent/US8582822B2/en
Publication of WO2011080900A1 publication Critical patent/WO2011080900A1/ja
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/215Motion-based segmentation
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/223Analysis of motion using block-matching
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/20Movements or behaviour, e.g. gesture recognition
    • G06V40/23Recognition of whole body movements, e.g. for sport training
    • G06V40/25Recognition of walking or running movements, e.g. gait recognition
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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 OR CALCULATING; 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 image processing technique for detecting a moving body by specifying a region of the moving body in an image.
  • the present invention relates to a moving object detection device that detects a moving object at high speed based on motion information in a moving image even when the moving object is an object that changes its shape like a person.
  • a region extraction technique for detecting a moving body by extracting a moving body area in an image from an image including a moving body image (hereinafter simply referred to as a “moving body”) has been widely performed. It has been broken.
  • the technology for extracting the area of the moving object is a focus control in a digital video camera or a digital still camera, an image quality improvement process, a safe driving support system for an automobile, or a collision with a person in a robot. It is a basic technology commonly used for avoidance control or warning for collision avoidance.
  • the extracted moving body region candidate is compared with a previously prepared moving body model.
  • Non-Patent Document 1 an image obtained by photographing a fixed single moving body from a plurality of viewpoints is input, and a vector in which pixel values in each image are arranged and a vector in which pixel values in other images are arranged. Calculate the Euclidean distance between and. Then, a method is disclosed in which, after the calculated Euclidean distance is converted into a geodetic distance, dimensional compression is performed so that an image taken from a similar viewpoint can be projected at a short distance in a two-dimensional space. ing. Compared to the conventional linear dimension compression method such as PCA (Principal Component Analysis), it is possible to compress to a lower dimension by geodetic distance conversion, and to handle non-linearly distributed data. It has been shown.
  • PCA Principal Component Analysis
  • the above-described conventional region extraction technique is, for example, a case where the moving body is partially shielded by other moving bodies, such as a scene where a moving body such as a plurality of persons moves around the street or the like.
  • a moving body cannot be correctly extracted, for example, when the mobile body includes a significantly different moving body.
  • Non-Patent Document 1 image data can be projected onto a low-dimensional space that is efficiently compressed by performing nonlinear processing using the distance between images as an input. As a result, resistance to noise can be expected. Furthermore, continuous and non-linearly distributed data 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 images into a low-dimensional space, and various postures in a multi-joint object such as a person whose shape changes A method for correctly detecting a moving object while responding to a change is not disclosed.
  • Non-Patent Document 1 deals with the case of the total number of data N, using a matrix having a number of elements N 2, it is necessary to perform the geodesic distance transformation and dimensionality reduction. 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 the geodetic distance is set. Methods have been proposed to reduce the amount of computation by performing transformations and dimensional compression.
  • An area extraction apparatus using this area extraction technology includes an image input unit, a motion analysis unit that detects a motion from temporally different images, and calculates a movement trajectory by temporally connecting the detected motions; Distance calculating means for calculating a distance representing the similarity between the movement trajectories, and area dividing means for converting the distance into a geodetic distance and classifying the movement trajectory from the obtained geodetic distance to extract a region. .
  • this region extraction technique utilizes the property that data distributed continuously and nonlinearly can be efficiently expressed as a property by geodetic distance conversion processing described in Non-Patent Document 1.
  • this region extraction technique has a problem that the amount of calculation becomes enormous as the number of input data increases as in the technique of Non-Patent Document 1.
  • the landmarks are not related to the data points existing between the landmark points, that is, the points not selected as the landmarks. Linear interpolation is performed using points.
  • a moving body such as a person whose shape changes has a different movement depending on a part even if it is the same moving body so that the movements of the head and the feet are different.
  • An object of the present invention is to provide a moving object detection apparatus and the like that can extract a region 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 moving person.
  • a mobile object detection device performs a region division that identifies all or a part of a moving object in a moving image, thereby moving the moving object in the moving image.
  • a moving body detection apparatus for detecting comprising: an image input unit that receives a plurality of pictures constituting a moving image; and the moving image is configured for each block including one or more pixels that constitute the received picture Detecting a motion of the block between the two pictures, and connecting the detected motion with respect to the plurality of pictures to calculate a plurality of movement trajectories; A subclass classification unit that classifies the movement trajectory into a plurality of subclasses, each of which is a set of similar movement trajectories, and, for each subclass, a movement trajectory belonging to the subclass and another subclass.
  • the distance between subclasses is calculated based on the linear distance calculated for all pairs of movement trajectories, and the approximate geodesic distance between subclasses is calculated using the distance between subclasses. Further, since the distance between subclasses includes the minimum value of the linear distance between moving trajectories belonging to different subclasses as a distance, it is unlikely to change even when a multi-joint object moves. Furthermore, since the class according to the present invention corresponds to the moving object region in the image, the moving object can be detected as a result.
  • a region can be extracted quickly and correctly without being affected by the posture or size of the moving object.
  • the present invention can be realized not only as the above-described moving body detection apparatus, but also a moving body detection method using a characteristic processing unit included in the moving body detection apparatus as a step, a program for causing a computer to execute the above steps, and the program It can also be realized as a computer-readable recording medium such as a CD-ROM in which is stored. It goes without saying that such a program can be distributed via a communication network such as the Internet.
  • an image including a moving body such as a person who moves while changing its shape with a small amount of calculation while maintaining the property of geodesic distance that can efficiently represent data distributed continuously and nonlinearly.
  • a moving body such as a person who moves while changing its shape with a small amount of calculation while maintaining the property of geodesic distance that can efficiently represent data distributed continuously and nonlinearly.
  • 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 movement trajectory calculation unit according to Embodiment 1 of the present invention.
  • FIG. 5 is a diagram illustrating a processing example of the subclass classification unit according to Embodiment 1 of the present invention.
  • FIG. 6 is a diagram showing an example of the effect of the geodetic distance in the first embodiment of the present invention.
  • 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 Embodi
  • FIG. 7 is a diagram illustrating an example of the effect of the approximate sub-class geodesic distance in the first embodiment of the present invention.
  • FIG. 8 is a diagram showing an example of a method for calculating the approximate sub-class geodesic distance in the first embodiment of the present invention.
  • FIG. 9 is a diagram illustrating a processing example of the area dividing unit according to Embodiment 1 of the present invention.
  • FIG. 10 is a diagram illustrating a basic configuration of the moving object detection device according to the second embodiment of the present invention.
  • FIG. 11 is a flowchart showing the basic operation of the moving object detection device according to the second embodiment of the present invention.
  • FIG. 12 is a diagram illustrating a processing example of the subclass classification unit according to Embodiment 2 of the present invention.
  • FIG. 13 is a flowchart showing the basic operation of the moving object detection device according to the third embodiment of the present invention.
  • FIG. 14 is a conceptual diagram showing the nature of the approximate sub-class geodesic distance in Embodiment 3 of the present invention.
  • FIG. 15 is a diagram illustrating a processing example of the image input unit according to the third embodiment of the present invention.
  • FIG. 16 is a diagram illustrating a basic configuration of the moving object detection device according to the first modification of the first to third embodiments of the present invention.
  • FIG. 17 is a diagram showing an example of recording / transmission data in the first modification of the first to third embodiments of the present invention.
  • FIG. 18 is a diagram illustrating a configuration example of the moving object detection device according to the second modification of the first to third embodiments of the present invention.
  • FIG. 19 is a flowchart showing the basic operation of the moving object detection device according to the second modification of Embodiments 1 to 3 of the present invention.
  • FIG. 20 is a diagram showing an example of motion prediction according to Embodiment 2 of the present invention.
  • FIG. 21 is a block diagram showing a functional configuration of a mobile object detection data generation device according to a third modification of the present invention.
  • FIG. 22 is a diagram showing a data structure of information recorded on the recording medium.
  • FIG. 23 is a diagram for explaining the picture size (X, Y) and the number of pictures (T).
  • FIG. 24 is a diagram for explaining the number of movement tracks (N).
  • FIG. 25 is a diagram for explaining the number of subclasses (S).
  • FIG. 26 is a diagram for explaining a movement trajectory vector with a subclass label.
  • FIG. 27 is a diagram illustrating a specific example of information recorded on the recording medium.
  • FIG. 28 is a block diagram showing a functional configuration of the moving object
  • a moving object detection apparatus detects a moving object in a moving image by performing region division that specifies all or a part of the moving object in the moving image.
  • An image input unit that accepts a plurality of pictures constituting a moving picture and a block composed of one or more pixels constituting the accepted picture, between two pictures constituting the moving picture.
  • the movement trajectory calculation unit for calculating a plurality of movement trajectories by detecting the movement of the block at, and connecting the detected movements for the plurality of pictures, and the calculated movement trajectories, respectively.
  • a subclass classifying unit that classifies a plurality of subclasses that are similar sets of movement loci, and, for each subclass, a movement trajectory belonging to the subclass and a movement trajectory belonging to another subclass.
  • Approximate geodesic distance calculation between subclasses that uses the distance between subclasses, which is the distance including the minimum value of the linear distance between the subclasses, and calculates the approximate geodesic distance between subclasses representing the similarity between the subclass and the other subclasses
  • a region dividing unit that executes region division by specifying a set of subclasses of similar movement trajectories as one class based on the calculated approximate geodesic distance between subclasses.
  • the inter-subclass approximate geodesic distance calculating unit, for each subclass, as an inter-subclass approximate geodesic distance between the subclass and another subclass, an intrasubclass distance representing similarity of movement trajectories belonging to the subclass, Then, a distance obtained by adding the intra-subclass distance of the other subclass and the intersubclass distance between the subclass and the other subclass is calculated.
  • the geodetic distance can be approximated with higher accuracy. Accordingly, it is possible to correctly extract a region of a moving body such as a person who moves while changing the shape with a small amount of calculation, thereby detecting the moving body in the image at high speed and with certainty.
  • the inter-subclass approximate geodesic distance calculation unit calculates, for each subclass, an average value, a mode value, or a median value of linear distances between movement trajectories belonging to the subclass as the intra-subclass distance of the subclass. It is good.
  • the region dividing unit further calculates a distance obtained by normalizing the inter-subclass approximate geodesic distance between two subclasses by the intra-subclass distance, and the inter-subclass approximation. It may be calculated as a geodesic distance.
  • the inter-subclass approximate geodesic distance calculation unit when the minimum value is larger than a predetermined threshold, by performing non-linearization to change the inter-subclass approximate geodesic distance to infinity, the inter-subclass approximate geodesic distance It is good also as a structure which calculates.
  • the inter-subclass approximate geodesic distance calculating unit includes an intersubclass approximate geodesic distance between the first subclass and the second subclass, an intersubclass approximate geodesic distance between the first subclass and the third subclass, and The intersubclass approximate geodesic distance sum between the third subclass and the second subclass is compared, and the smaller value is used as the intersubclass approximation between the first subclass and the second subclass. It is good also as a structure calculated as geodesic distance.
  • the region dividing unit performs region division by specifying a group of subclasses having similar movement trajectories as a class indicating one region based on a temporal change in the approximate geodesic distance between the subclasses. Also good. As described above, by determining whether the subclass labels are integrated or not integrated based on the temporal change in the approximate geodesic distance between the subclasses, it is possible to detect the movement of the joint object or the like as one moving body.
  • the region dividing unit is configured when the value indicating the time change of the approximate geodesic distance between the subclasses between two subclasses is equal to or less than a predetermined time change threshold. It is desirable to perform region division by determining that the two subclasses belong to the same class. Thereby, when the time change of the approximate geodesic distance between subclasses is small, it can be determined as the same moving body such as a joint motion or a rigid body.
  • the area dividing unit when a value indicating a time change of the approximate geodesic distance between the subclasses between two subclasses is larger than a predetermined time change threshold, It is desirable to perform region segmentation by determining that the two subclasses belong to different classes. Thereby, when the time change of the approximate geodesic distance between subclasses is large, it can be determined as separate moving bodies.
  • the sub-class approximate geodesic distance calculation unit calculates, for each subclass, an average value of a predetermined number of distances from the smallest of the distances between the movement locus belonging to the subclass and the movement locus belonging to another subclass. The distance between the subclasses between the subclass and the other subclass may be used.
  • the inter-subclass approximate geodesic distance calculation unit calculates, for each subclass, an average value of distances that are equal to or less than a predetermined threshold among distances between a movement locus belonging to the subclass and a movement locus belonging to another subclass. The distance between the subclasses between a subclass and the other subclass may be used. With this configuration, an approximate geodesic distance between subclasses that is less susceptible to noise can be calculated.
  • a more preferable aspect of the present invention is that the subclass classification unit classifies the plurality of movements by classifying similar movement loci among the calculated movement loci into the same subclass.
  • the trajectory is classified into a plurality of subclasses.
  • the subclass classification unit performs a process of classifying a combination of the most similar movement trajectories among the calculated movement trajectories into the same subclass, a predetermined number of times or the number of subclasses defined by the plurality of movement trajectories.
  • the plurality of movement trajectories are classified into a plurality of subclasses by repeatedly executing until they are classified into a plurality of subclasses.
  • by classifying similar movement trajectories into the same subclass it is possible to reduce the amount of calculation of the approximate geodesic distance between subclasses as compared to the case where the trajectory is not classified into subclasses.
  • the subclass classification unit includes edge information and color information of the picture from at least one picture among the plurality of pictures received by the image input unit. And using at least one of the luminance information, the picture is divided into a plurality of areas, and the movement trajectories passing through the divided areas are classified into the same subclass. It is also possible to classify the movement trajectory into subclasses using spatial information of the image such as edges, luminance, and color.
  • the above-described moving body detection device further performs region division on the at least one picture among the plurality of pictures received by the image input unit by the region dividing unit.
  • an output unit is provided that performs image processing so as to have a display mode different from that of the other identified areas, and outputs a picture including the area subjected to the image processing.
  • the moving body is displayed on the image, so that the user can easily recognize each subject. There is.
  • the above-described moving body detection device further includes a result of region division executed by the region dividing unit on at least one picture among the plurality of pictures received by the image input unit.
  • a recording / transmission unit is provided for writing the picture to which the image is assigned to the recording device or transmitting the picture to the outside through a transmission path.
  • the detected moving body image is stored separately based on the extracted area, so that only the necessary part of the image can be selected from each moving body image and stored or output to the outside.
  • efficient storage and output as graphic elements becomes possible. Therefore, it works effectively when storing and transmitting to a device having limited processing capability such as a mobile phone.
  • the above-described moving body detection device further calculates a representative movement locus representing the class among the movement locus constituting the class specified by the region dividing unit, and according to the calculated representative movement locus, It is good also as a thing provided with the motion estimation part which estimates the motion of the said mobile body by estimating that the area
  • Predicting the motion of a moving object using a trajectory that represents the trajectory of a plurality of blocks enables motion prediction with high noise resistance.
  • a computer-readable recording medium is a computer-readable recording medium in which data having a data structure including header information and body information is recorded.
  • the number of subclasses that is the number of subclasses, and the body information includes the number of pictures constituting the moving image, the data indicating the movement locus of the movement locus number obtained from the moving image, Data indicating the subclass to which the movement trajectory belongs, and a sub for each subclass representing the similarity between the subclass and the other subclass And a class between the approximate geodesic distance.
  • an apparatus that receives these data and performs area division can secure information necessary for area division. It becomes possible.
  • the apparatus side can perform area division with a small amount of memory compared to the case where the geodesic distance between movement trajectories is included. There is.
  • a moving object detection data generation device includes an image input unit that receives a plurality of pictures constituting a moving image, and one or more pixels that constitute the accepted picture. For each block, a movement trajectory calculation that detects a movement of the block between two pictures constituting the moving image and calculates a plurality of movement trajectories by connecting the detected movements with respect to the plurality of pictures.
  • a subclass classification unit that classifies the calculated plurality of movement trajectories into a plurality of subclasses, each of which is a set of similar movement trajectories, and each subclass belongs to a movement trajectory belonging to the subclass and another subclass Using the distance between subclasses, which is the distance that includes the minimum value of the linear distance to the movement trajectory, between the subclass and the other subclasses
  • An approximate geodesic distance calculation unit between subclasses that calculates an approximate geodesic distance between subclasses representing similarity, and a data output unit that outputs data including at least the approximate geodesic distance between subclasses calculated by the approximate geodesic distance between subclasses Prepare.
  • the data output unit outputs data including approximate geodesic distance between subclasses. For this reason, other devices that receive this data can perform area division with a small amount of memory.
  • a mobile object detection device is a mobile object that detects a mobile object in a moving image by performing region division that specifies all or part of the region of the moving object in the moving image.
  • a movement track belonging to a subclass which is at least a movement class belonging to a subclass that is a set of similar movement paths in a moving image and a movement path belonging to a subclass that is a set of similar movement paths in the moving image different from the subclass.
  • a data input unit that accepts input of data including an approximate geodesic distance between subclasses that express similarity between the subclasses, and a subclass that includes similar movement trajectories based on the approximate geodesic distance between the subclasses accepted by the data input unit
  • An area dividing unit that performs area division is specified by specifying a group of as one class.
  • FIG. 1 is a diagram illustrating a configuration of a moving object detection apparatus 100 according to an embodiment.
  • the moving body detection apparatus 100 includes an image input unit 101, a movement trajectory calculation unit 102, a subclass classification unit 103, an intersubclass approximate geodesic distance calculation unit 104, a region division unit 105, and an output unit 106.
  • the moving body detection apparatus 100 is an apparatus that detects a moving body in a moving image by performing region division that identifies all or a part of the moving body in the moving image.
  • the moving object detection apparatus 100 performs class classification (clustering) for specifying all or a part of the moving object in a moving image using a movement locus that is a locus of corresponding points between two or more pictures. It is a device that detects a moving body in a moving image by executing.
  • a picture is also referred to as an image.
  • the image input unit 101 is a processing unit that accepts input of a plurality of pictures having different shooting times in a moving image, and is, for example, a video camera or a communication interface connected to the video camera.
  • the image input unit 101 may acquire a moving image from a memory in which the moving image is stored.
  • the movement trajectory calculation unit 102 detects the motion of the image between the two pictures constituting the moving image for each block composed of one or more pixels constituting the picture received by the image input unit 101, and detects the detected motion. It is a processing unit that calculates a plurality of movement trajectories by connecting motions for a plurality of pictures.
  • a block is a unit for calculating a movement locus, and is a group of one or more pixels.
  • the subclass classification unit 103 is a processing unit that classifies the plurality of movement trajectories calculated by the movement trajectory calculation unit 102 into a plurality of subclasses, each of which is a set of similar movement trajectories. That is, the subclass classification unit 103 performs classification so that similar movement trajectories belong to the same subclass with respect to the plurality of movement trajectories calculated by the movement trajectory calculation unit 102, and the subclass that is the classification result for each movement trajectory. Label.
  • the inter-subclass approximate geodesic distance calculation unit 104 is a processing unit that calculates a distance representing the similarity between subclasses using the movement trajectory labeled by the subclass classification unit 103.
  • the subclass classification unit 103 uses the subclass intra-class distance and the subclass distance to approximate the subclass.
  • An approximate geodesic distance between subclasses that is a geodetic distance is calculated. That is, the inter-subclass approximate geodesic distance calculation unit 104 uses, for each subclass, an intersubclass distance that is a distance including the minimum value of the linear distance between a movement locus belonging to the subclass and a movement locus belonging to another subclass.
  • an approximate geodesic distance between subclasses representing the similarity between the subclass and another subclass is calculated.
  • the geodetic distance is a distance of a route from one movement locus to another movement locus while following the movement locus as a relay point.
  • the intra-subclass distance is a distance calculated using the movement trajectory labeled in the same subclass, and is a distance representing similarity between movement trajectories belonging to the same subclass.
  • the distance between subclasses is a distance including the minimum value of the linear distance between the movement trajectories belonging to two different subclasses.
  • the distance between subclasses may be used as the approximate geodesic distance between subclasses without using the distance between subclasses.
  • the distance represents similarity. For example, the similarity is low when the distance is large, and the similarity is high when the distance is small.
  • the approximate geodesic distance between subclasses calculated is a distance matrix of S rows and S columns (S ⁇ S).
  • S ⁇ S the distance matrix of S rows and S columns
  • the distance for evaluating the similarity of the movement trajectory belonging to two different subclasses changes.
  • the movement of an object such as a moving person can be expressed as an approximate geodetic distance matrix. This makes it possible to extract a subject that is robust against the movement of the joint object.
  • the “distance” in this specification includes not only a distance between two points in a two-dimensional space but also an arithmetic distance between multi-dimensional data, as will be described later. Is a set of values (distance matrix).
  • the area dividing unit 105 executes area division by specifying a set of subclasses of similar movement trajectories as one class based on the approximate inter-subclass geodesic distance calculated by the intersubclass approximate geodetic distance calculating unit 104. Is a processing unit. That is, based on the inter-subclass approximate geodesic distance calculated by the inter-subclass approximate geodesic distance calculator 104, the region dividing unit 105 determines whether to integrate / unintegrate a collection of subclasses having similar movement trajectories. Then, the moving object in the moving image is detected by classifying the subclasses into classes.
  • a class is a set of subclasses.
  • the output unit 106 outputs the detection result of the moving body in the moving image performed by the region dividing unit 105. Specifically, the output unit 106 displays, for example, different displays for each region of the moving object detected by the region dividing unit 105 with respect to at least one picture among the plurality of pictures received by the image input unit 101. Image processing is performed so as to be an aspect, and a picture including a region subjected to image processing is output to a display device or the like.
  • area means a detection technique for extracting an image area where a specific target object exists, and a class classification technique for classifying an image area (movement trajectory) for each object without distinguishing the target object. Of both. Since the detection technique and the classification technique have many common parts, they are not distinguished in the present invention.
  • each component constituting the above-described moving body detection apparatus 100 (image input unit 101, movement trajectory calculation unit 102, subclass classification unit 103, subclass approximate geodesic distance calculation unit 104, region division unit 105, output unit 106). May be realized by software such as a program executed on a computer, or may be realized by hardware such as an electronic circuit or an integrated circuit.
  • FIG. 2 is a diagram showing a hardware configuration of the moving object detection device in the present embodiment realized by software.
  • the camera 201 captures and outputs an image.
  • the computer 202 acquires an image from the camera 201 and performs a moving body detection process to generate an image that displays the moving body detection result.
  • a display 203 acquires and displays an image generated by the computer 202.
  • the computer 202 includes an I / F 204, a CPU 205, a ROM 206, a RAM 207, an HDD 208, and a video card 209.
  • a program for operating the computer 202 is stored in the ROM 206 or the HDD 208 in advance.
  • the program is read out from the ROM 206 or HDD 208 to the RAM 207 and expanded by the CPU 205 as a processor.
  • the CPU 205 executes each coded instruction in the program expanded in the RAM 207.
  • the I / F 204 captures an image captured by the camera 201 into the RAM 207 in accordance with the execution of the program.
  • the video card 209 outputs an image generated according to the execution of the program, and the display 203 displays the image.
  • the computer program is not limited to the ROM 206 or the HDD 208, which is a semiconductor, and may be stored, for example, on an optical disk. Further, it may be transmitted via a wired or wireless network, broadcast, or the like, and taken into the RAM 207 of the computer.
  • FIG. 3 is a flowchart showing the operation of the moving object detection apparatus 100 in the present embodiment.
  • steps S301 to S306 correspond to the respective processing units in FIG.
  • the image input unit 101 uses the image input step S301
  • the movement locus calculation unit 102 uses the movement locus calculation step S302
  • the subclass classification unit 103 uses the subclass classification step S303
  • the subclass approximate geodesic distance calculation unit 104 uses the subclass approximate geodesic distance.
  • the calculation step S304, the region dividing unit 105, the region dividing step S305, and the output unit 106 execute the image output step S306.
  • image input step S ⁇ b> 301 the image input unit 101 acquires a plurality of pictures constituting a moving image from the camera 201.
  • T pictures have been input.
  • the movement trajectory calculation unit 102 calculates motion information between a plurality of input pictures, and generates and outputs a movement trajectory.
  • a method of calculating motion information between a plurality of (T) pictures here, the correspondence in the other T-1 pictures on the basis of the pixel at point I on one picture of the plurality of pictures.
  • the pixel to be searched is searched. Note that the position of the corresponding small rectangular area may be searched based on I small rectangular areas (blocks) instead of the pixel at the point I. For example, as shown in FIG.
  • the movement trajectory calculation unit 102 scans (broken line) the small rectangular area 404 (block) at the time t on the picture at the time t + 1, and the pixel value in the small rectangular area at the time t and the small rectangular area at the time t + 1.
  • the pixel coordinate (coordinate indicated by the solid arrow) when the sum of the differences from the pixel values in the region is the smallest is estimated as the corresponding pixel coordinate.
  • pixel coordinates indicating the center position of the block may be used.
  • the range for scanning the small rectangular area 404 may be determined in advance.
  • the scale for evaluating the difference between the blocks is not limited to the sum of the differences in pixel values, and any other scale may be used as long as it indicates the difference in pixel values in the blocks to be compared. .
  • an average square error between the pixel value in the small rectangular area at time t and the pixel value in the small rectangular area at time t + 1 may be used, or is not easily affected by an outlier (outlier) such as median.
  • a value may be used.
  • the movement trajectory calculation unit 102 obtains coordinates corresponding to each other between two adjacent pictures as shown in FIG. For the picture, the corresponding point of point I is calculated. Note that the two pictures used to obtain the corresponding coordinates are not necessarily adjacent to each other. For example, one or more other pictures may be sandwiched between two pictures.
  • Non-Patent Document 4 As another specific method for calculating corresponding points between a plurality of pictures as described above, a method shown in Non-Patent Document 4 or Non-Patent Document 5 may be used.
  • the movement trajectory calculation unit 102 obtains a movement trajectory corresponding to each pixel from a set of pixel coordinates of corresponding points, which is motion information over T pictures of the pixel at the point I. I book is generated.
  • the movement trajectory x i of the pixel i uses the coordinate value (x 1 i , y 1 i ) of a certain pixel i on the picture of the first frame and the pixel coordinate (x t i , y t i ) of the corresponding point.
  • the following equation 1 is shown.
  • T is the number of pictures used to calculate the movement trajectory.
  • Movement trajectory x i is the T input images 401 at time t + (T-1) from the time t, the motion from the pixel i403 on picture of the first frame, the pixel corresponding to the pixel i403 on other pictures It is a vector composed of a collection of pixel coordinates calculated from information 402.
  • subclass classification unit 103 classifies the I movement trajectories shown in Equation 1 into S subclasses.
  • the classification into subclasses will be described with reference to FIG.
  • FIG. 5A it is assumed that the subjects 501A and 501B included in the picture of the first frame have moved to the positions of the subjects 502B and 502B in the Nth frame, respectively.
  • the movement trajectories of the subjects 501A and 501B at that time are indicated by a plurality of movement trajectories 503A and 503B, respectively.
  • FIG. 5A only a part of the movement trajectory is shown for simplification of description.
  • ⁇ Classification into subclasses is not limited as long as similar movement trajectories can be classified into the same subclass, and various methods can be used. For example, using the I movement trajectories shown in Equation 1 as an input, pp. If the k-means method as shown in 526-528 is used and the number of subclasses is set to S, as shown in FIG. 5B, the movement trajectory vector is set as a subclass on the multidimensional space formed by the movement trajectory vector. Can be classified.
  • a circle in FIG. 5B indicates a point on the multidimensional space corresponding to each movement locus in FIG. For the sake of explanation, the points corresponding to the movement trajectory are shown on a three-dimensional space diagram.
  • the space where the movement trajectory vector exists is actually a multidimensional space represented by Equation 1 and having a dimension number of 2 ⁇ T. is there. Therefore, as shown in FIG. 5C, in the multidimensional space, similar movement trajectories can be classified into the same subclass, and I movement trajectories can be classified into S subclasses.
  • a dendrogram-based clustering algorithm such as shown at 550-555 can also be used.
  • the process of sequentially setting the pair of moving tracks having the highest similarity (the shortest distance) as the same subclass is repeated until the number of subclasses reaches S, or is performed a prescribed number of times.
  • the similarity of the movement trajectory may be the Euclidean distance between the movement trajectory vectors, or the distance obtained by normalizing the Euclidean distance using the number of movement trajectories belonging to the subclass. It may be used.
  • the similarity (distance) of the movement trajectory pair is calculated, if normalization processing is performed using the number of movement trajectories belonging to the same subclass, the size of each subclass is uniform as shown in FIG. It is easy to become. That is, the variation in the number of movement tracks belonging to each subclass is reduced.
  • the distance or similarity is not limited to the distance or similarity calculated by the above calculation method, but may be any distance or similarity that can determine the similarity between the movement trajectory vectors. In these cases, the smaller the distance, the greater the degree of similarity. That is, here, a process is performed in which pairs of movement trajectories having the highest similarity or the shortest distance are set to the same subclass.
  • the result of classifying the movement locus into subclasses is as shown in FIG. That is, as a result of the subclass label being assigned to each movement trajectory, similar movement trajectories are classified into the same subclass. For example, if the target is a person, a result obtained by finely dividing the body of the person as shown in FIG. 5D can be obtained.
  • the movement locus x i By treatment with clustering algorithm as described above, the movement locus x i, as shown in the following formula 2, will belong to one of the subclasses Dj. That is, the label of the subclass Dj is given to each movement trajectory.
  • Classification into subclasses may be performed so that the size of the area corresponding to the subclass is the same as or smaller than the minimum size of the moving object to be detected, and the number of subclasses is assumed in advance. You may classify into a subclass so that it may become more than a number.
  • the subclass approximate geodetic distance calculation unit 104 calculates the subclass approximate geodesic distance using the subclass label assigned in the subclass classification step S303 and the movement trajectory belonging thereto.
  • the merit of calculating the geodetic distance will be described with reference to FIG.
  • the distance between movement trajectories at time t is taken as an example.
  • the linear distance 601 between the head pixel belonging to the subclass Da602 and the hand tip pixel belonging to the subclass Db603 is the distance shown in FIG.
  • geodetic distance as shown in FIG.
  • the geodetic distance between the head pixel belonging to subclass Da602 and the hand pixel belonging to subclass Db603 is a pixel belonging to subclass Dc604 as a relay point. This is the sum of distances as indicated by arrows until the pixel of the hand part belonging to the subclass Db603 is reached. Therefore, in the linear distance 601 shown in FIG. 6A, the shape continuously connected by a joint like a person cannot be continuously expressed as data, whereas the geodetic distance shown in FIG. According to this, there is an effect that it is possible to express continuity with a shape continuously connected by a joint as a distance.
  • Non-Patent Document 7 As an efficient calculation method for searching for the shortest path, for example, the Dijkstra method shown in Non-Patent Document 7 is widely known. However, even if this method is used, the calculation increases as the number of moving tracks increases. Non-patent document 3 reports that the amount is enormous.
  • the inter-subclass approximate geodesic distance calculator 104 calculates the inter-subclass approximate geodesic distance. Calculate geodetic distance.
  • a method for approximating the geodesic distance between subclasses will be described. For example, as shown in FIG. 7A, when the geodetic distance between the movement locus of the pixel i and the movement locus of the pixel j is obtained, even if the Dijkstra method shown in Non-Patent Document 7 is used, the movement of the pixel i is performed.
  • the movement trajectories classified into the same subclass are similar. That is, as shown in FIG. 5 in which the movement locus is classified into subclasses, the movement locus belonging to the same subclass can be considered as a rigid body movement locus that does not cause a large shape change. In the case of a rigid trajectory, it can be considered that the difference between the geodetic distance and the linear distance is small. Therefore, regarding the movement trajectory in the subclass, assuming that the difference between the linear distance and the geodetic distance is small, the average of the geodesic distance is approximated by the average of the linear distances as shown in FIG. That is, the average of the linear distances within the subclass
  • the distance between subclasses which is the distance between movement tracks belonging to different subclasses.
  • An example is given of the case where the distance between subclasses is calculated using the method disclosed in Non-Patent Document 7.
  • the distance connecting the movement locus of the pixel j and the movement locus of the pixel k is necessary to calculate a plurality of candidates (solid line and broken line) and select the minimum distance (solid line) from among them.
  • the movement trajectory in the subclass can be approximated by a linear distance.
  • the minimum distance connecting one subclass and another subclass is defined as the distance between the subclasses.
  • this method there is no need to perform a process of searching for the shortest path that traces between two points through a relay point as shown in FIG. 7A, and between the movement trajectories belonging to the subclass Da and the subclass Db. It is only necessary to obtain the minimum value f min Inter of the linear distance.
  • a plurality of distances are selected in ascending order of the distance between the movement trajectories belonging to each of the subclass Da and the subclass Db, and the average value of the selected distances is set as f min Inter.
  • the median value of the selected distance may be set as f min Inter .
  • the inter-subclass approximate geodesic distance g ′ is not necessarily limited to the above-described formula 4.
  • f min Inter may be used as the inter- subclass approximate geodesic distance g ′.
  • the approximate geodesic distance between the subclasses can be calculated as described above by using the distance within the subclass and the distance between the subclasses.
  • each ellipse indicates a subclass. That is, each ellipse includes a movement locus belonging to each subclass. Further, as shown in FIG. 8A, it is assumed that the subclass Da and the subclass Db are adjacent to each other and the subclass Db and the subclass Dc are adjacent to each other in the multidimensional space. Therefore, the inter-subclass approximate geodesic distance calculation unit 104 calculates the distance between the movement trajectories according to the following equation 5 using the movement trajectories belonging to the same subclass for each subclass.
  • the distance f aa (i, j) between the movement locus of the pixel i belonging to the subclass Da and the movement locus of the pixel j can be calculated by the following equation (5).
  • equation 6 may be used instead of the above equation 5 as an equation for calculating the distance f aa (i, j) between the movement locus of the pixel i belonging to the subclass Da and the movement locus of the pixel j.
  • w is a weighting coefficient, which is a parameter set by the designer.
  • the distance f aa (i, j) between the movement locus of the pixel i belonging to the subclass Da of the above equation 6 and the movement locus of the pixel j is a time average value ptn ij of the distance between movement locus, and the time variation of the distance between movement locuses.
  • the component mtn ij is added.
  • the time variation component mtn ij of the distance between the movement trajectories indicates the similarity of the movement of the pixels, and thereby the joint whose shape changes as well as the rigid body in which the relationship between the distances between the pixels does not change with time. You can also catch objects.
  • the distance calculation according to Expression 5 or 6 is performed for each subclass.
  • the distance is calculated using the movement trajectory belonging to the same subclass.
  • the distance f aa (i, j) between the movement locus of the pixel i and the movement locus of the pixel j belonging to the same subclass is not necessarily limited to the above.
  • the inner product or COS of the movement locus vectors can be expressed as follows. Any scale may be used as long as it represents the distance between the movement trajectories on the pixel and the similarity of movement.
  • N is the number of combinations of the movement trajectories i and j.
  • the mode value and median value of the distance f aa (i, j) between the movement trajectories may be used as the subclass distance.
  • the intra-subclass distance can be calculated from the distance f aa (i, j) between arbitrary movement trajectories from the movement trajectories included in the same subclass, and N is necessarily a combination of all the movement trajectories i and j. There is no. Further, instead of Expression 7, f aa (i, j) in a plurality of combinations of i and j may be calculated, and the maximum value may be used as the subclass distance.
  • the inter-subclass approximate geodesic distance calculation unit 104 calculates the inter-subclass distance according to the following equation 8.
  • Equation 8 calculates the smallest distance among the movement trajectories i and j belonging to different subclasses.
  • the method for calculating the distance between subclasses is not limited to this.
  • N distances of movement trajectories i and j belonging to different subclasses are selected in ascending order and the average value is used as the distance between subclasses.
  • it may be weighted.
  • the median value out of the N may be used as the distance between subclasses.
  • a process for setting the inter- subclass distance f min Inter to infinity may be performed.
  • the threshold is set to When it is about 10.0, good results are obtained.
  • the approximate geodesic distance between subclasses can be calculated by Equation 4 using the distance between subclasses and the distance between subclasses calculated according to Equation 7 and Equation 8.
  • an S ⁇ S subclass intra-subclass distance / subclass approximate geodetic distance matrix G ′ having a subclass represented by the following formula 9 as a component is generated.
  • the diagonal elements of the intra-subclass distance / intersubclass approximate geodesic distance matrix G ′ are subclass intra-distances, and the rest are intersubclass approximate geodesic distances.
  • s i and s j are subclass indexes.
  • f min Inter when f min Inter is larger than a preset threshold value, f min Inter is processed to be infinite, and the approximate geodesic distance between subclasses that has become infinite is expressed as follows: It may be recalculated.
  • min (x, y) is a function that returns the smaller one of the value x and the value y.
  • the subclass Db when calculating the approximate geodesic distance between the subclasses Da and Dc, the subclass Db functions as a relay point for tracing from the subclass Da to the subclass Dc.
  • the number of relay points is not limited to one.
  • the Dijkstra method of Non-Patent Document 4 can be used for the shortest path search between two points in the above-described geodetic distance calculation.
  • the shortest route search can be performed without limiting the number of relay points to one.
  • the order of the calculation amount of the Dijkstra method is represented by N 2 logN, where N is the number of data points.
  • N is the number of data points.
  • the number N of movement trajectories when the Dijkstra method is performed without executing the processing of step S303 and step S304, and the number of subclasses when calculating the approximate geodesic distance between subclasses is M.
  • the calculation amount of the Dijkstra method is reduced to 1/20000.
  • the amount of calculation increases nonlinearly as the number of movement trajectories increases.
  • the increase in the amount of calculation required for subclass label assignment in step S303 is linear with respect to the number of movement trajectories. Therefore, according to the present invention for calculating the approximate geodesic distance when the image size is large or when the movement trajectory is calculated with high density in space, the calculation amount can be reduced particularly under the condition that the number of movement trajectories increases. is there.
  • the area division unit 105 uses the approximate geodesic distance between subclasses to determine whether to integrate or not integrate a collection of similar movement trajectories (subclasses).
  • any method may be used as long as it can determine whether subclasses are integrated or not integrated.
  • the method described in Non-Patent Document 1 can be used.
  • Dimensional compression is applied to the intra-subclass distance / intersubclass approximate geodetic distance matrix G ′ expressed by Equation 9, and subclass integration / non-integration using a clustering technique such as the K-means method on the compressed space. You may judge.
  • the clustering method is not limited to the K-means method. This will be specifically described below.
  • the region dividing unit 105 performs dimensional compression of the intra-subclass distance / subclass approximate geodetic distance matrix G ′ calculated in step S304.
  • Dimensional compression can be realized by obtaining Eigen system after performing Young-Householder transformation. This is a method for efficiently projecting data distributed in a multi-dimensional space to a low-dimensional space, and the noise of the input data (here, the pixel when calculating the temporal movement trajectory of the pixel i in the above equation 2) This corresponds to the case where an error is included in the motion information of i), and data that is robust against noise of the inter- subclass distance f min Inter in the above equation 4 can be expressed.
  • Young-Householder transformation is performed on the intra-subclass distance / subclass approximate geodetic distance matrix G ′ shown in Equation 9 above by multiplying the centering matrix H from both sides as shown in Equation 11 below. 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 an identity matrix
  • N is the number of subclasses.
  • s i and s j are subclass indexes.
  • the region dividing unit 105 in order to perform dimensionality reduction, to calculate the P eigenvectors (eigen vector) e p and the corresponding eigenvalues thereto (eigen value) ⁇ p for tau (G).
  • e p a is the a-th element of the p-th eigenvector e p.
  • the number P of eigenvectors may be determined experimentally depending on the scene to be utilized to calculate the contribution ratio alpha p from the eigenvalue lambda p as follows, it may be determined based on it.
  • P is the number of eigenvectors to be used, that is, the number of dimensions of the compressed space.
  • N is the number of all eigenvectors. Therefore, the number P when the contribution rate ⁇ p becomes a certain value or more may be set as the number of eigenvectors.
  • the temporal movement trajectory of the pixel i shown in Expression 2 is classified into subclasses, and the distance between subclasses and between subclasses generated from the classified subclass and the movement trajectory belonging thereto.
  • the approximation geodesic distance matrix G ' can be obtained data z p a in the space that has been dimensionally compressed spanned by eigenvectors e p.
  • FIG. 9 (a) shows movement trajectories a to h when a walking image of a person is input
  • FIG. 9 (b) shows a dimensional compression of a plurality of subclasses each classed by similar movement trajectories. Shows the result of projection into the space.
  • the vertical and horizontal axes are eigenvectors e 1 and e 2 .
  • a point (z 1 a , z 2 a ) projected onto the two dimensions is a projection of g ′ a shown in Equation 14.
  • the movement trajectory x i ⁇ Da of the pixel i on the image belonging to the subclass Da is the data z p a on the nonlinear space.
  • the number of dimensions of the nonlinear space is two-dimensional in order to visualize the result, but it is not always necessary to be two-dimensional, and higher dimensions are more accurate. Can project data. As for the number of dimensions, it is desirable to set it to 2 dimensions or more and less than the dimension number of the movement trajectory vector shown in Equation 1.
  • the region dividing unit 105 detects a moving body by determining whether the sub-classes are integrated or not integrated with respect to the data projected in the compressed nonlinear space.
  • the class is expressed as follows.
  • the number of classes corresponds to the number of moving objects.
  • M is the number of classes and is determined empirically according to the scene to be used.
  • Each class ⁇ m is a parameter
  • I an average value of the coordinate values of the projected data belonging to the class ⁇ m in the compressed nonlinear space
  • Z m is a covariance matrix relating to the coordinate values of the projected data belonging to the class ⁇ 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 nonlinear space into equal intervals by a grid.
  • C m is the number of data belonging to the class ⁇ m on the compressed nonlinear space.
  • the data z a on compressed nonlinear space Request belongs class theta m.
  • ⁇ m (z a ) indicates the distance between the data z i on the nonlinear space corresponding to the temporal movement locus of the pixel i and each class ⁇ m .
  • Each data belongs to a class ⁇ m in which ⁇ m (z a ) has a minimum value.
  • ⁇ m (z a ) is the Mahalanobis distance, and can be expressed by the following equation (21).
  • ⁇ m (z a ) may be used in place of ⁇ m (z a ).
  • p ( ⁇ m ) may be a constant value, or may be set in advance based on the shape or area ratio of a person part when a predetermined moving body such as a person is extracted. . ⁇ m is a weighting factor for the class ⁇ m .
  • z cm is data on a compressed nonlinear space belonging to the class ⁇ m .
  • the region dividing unit 105 can obtain the class ⁇ m to which each data in the nonlinear space belongs by repeating the distance calculation and the parameter update expressed by the equations 20 to 23 for a specified number of times.
  • clustering methods such as k-means method and competitive learning may be used.
  • the dimensional compression of the subclass distance / subclass approximate geodetic distance matrix G ′ is not an essential process, and the region division is performed by performing clustering from the subclass distance / subclass approximate geodetic distance matrix G ′ by spectral clustering. You can go.
  • spectral clustering the technique of Non-Patent Document 8 can be used.
  • the result of the class determination is performed by the clustering, the movement trajectory belonging to Dd from subclass Da as shown in FIG. 9 (c), are integrated into one class theta 1, mobile belonging subclasses De to Dh locus is integrated into 2 another class theta. Since a class label is given to each movement locus, if the movement locus is grouped for each class label, a subject can be extracted as shown in FIG. Note that the class corresponding to the class in the compressed non-linear space is a result of tracking pixels not only in a region on one image but also in a plurality of temporally continuous images.
  • the region dividing unit 105 detects a subject (subject part) in the image as a result of temporally tracking the region of the object moving in the image by performing segmentation on the compressed nonlinear space. Segmentation of an image including a subject can be performed. Further, since it is not necessary to set a person candidate area as pre-processing, there is no segmentation failure due to a detection error of the person candidate area.
  • the moving object can be detected at high speed and the region can be extracted without being affected by the posture or size of the moving object. Can do. Furthermore, it is also possible to perform movement prediction of a moving body using the results of detection and region extraction.
  • Embodiment 2 Next, the moving body detection apparatus in Embodiment 2 of this invention is demonstrated.
  • FIG. 10 is a diagram illustrating a configuration of the moving object detection device 100a according to the second embodiment.
  • a moving body detection apparatus 100a includes an image input unit 101, a movement trajectory calculation unit 102, a subclass classification unit 103a, an inter-subclass approximate geodesic distance calculation unit 104, an area division unit 105, and an output unit. 106.
  • Such a moving body detection apparatus 100a according to the second embodiment has the same configuration except for the configuration of the moving body detection apparatus 100 according to the first embodiment and the subclass classification unit 103a. Omitted.
  • the subclass classification unit 103a performs a process of classifying similar image regions into the same subclass using brightness, edge information, color, and the like from at least one of the plurality of images received by the image input unit 101. Do. Next, the subclass classification unit 103a gives a subclass label of an image region through which the movement trajectory passes to the movement trajectory calculated by the movement trajectory calculation unit 102. That is, the subclass classification unit 103a classifies the movement trajectory passing through the same image area into the same subclass by attaching the same subclass label.
  • the difference from the first embodiment is that classification into subclasses is performed from image information rather than movement trajectory, and a subclass label is assigned to the movement trajectory based on the information.
  • the subclass classification processing of the image area in the subclass classification unit 103a can be performed without using information regarding the movement trajectory. Therefore, the subclass classification process does not necessarily need to be performed after the process of the movement trajectory calculation unit 102, and both may be processed in parallel, or the image class subclass classification process is performed before the process of the movement trajectory calculation unit 102. You may go.
  • the subclass classification unit 103a performs image region division using at least one of the plurality of images input in the image input step S301.
  • any method may be used as long as it is a method of performing region segmentation by inputting pixel (luminance) values, color information, edge information, and the like and position information thereof.
  • the method of Non-Patent Document 9 can be used.
  • the image area is divided into a plurality of small areas using edge information and smoothness of pixel values in the vicinity of the space.
  • the result is as if the person was finely divided as shown in FIG.
  • one image may be selected from the images and the region may be divided.
  • pixel values and pixel positions may be arranged to form a three-dimensional vector, which may be used as an input to divide the image area by a clustering algorithm such as the k-means method, and of course, color information such as RGB And the pixel position information may be arranged as a five-dimensional vector.
  • the spatial differential vector (two-dimensional) of the pixel value and the pixel position may be arranged as a four-dimensional vector. Any technique that can divide the area may be used.
  • a subclass label is assigned to the movement trajectory based on the relationship between the time of the image selected for performing the area division and the movement locus calculated in the movement locus calculation step S302.
  • the subclass classification unit 103a considers each area that is spatially divided as a subclass, and in each image at time t ′ selected for area division, A subclass label is assigned depending on which subclass the movement locus has passed. For example, the movement trajectories 1 to 4 pass through the subclasses Da to Dd, respectively, at time t ′. Therefore, the subclass classification unit 103a assigns the corresponding subclass labels a to d to the movement trajectories 1 to 4, respectively. If such a process is performed on the corresponding movement trajectory, each movement trajectory x belongs to one of the subclasses Dj as shown in Expression 2. That is, each movement locus is given a label of the subclass Dj, similarly to the processing in the subclass classification step S303 of the first embodiment.
  • a subject (subject part) in an image can be detected from a movement locus. Further, it is not necessary to set a person candidate area as preprocessing. For this reason, there is no segmentation failure caused by a detection error of the person candidate area. Furthermore, since information such as color and brightness can be explicitly used as compared with the first embodiment, for example, when detecting a subject wearing a single-color clothing or the like, a more accurate moving object Can be detected. As described above, according to the second embodiment, with respect to an image including a person or the like that moves while changing its shape stably by performing clustering in a non-linear space without requiring fitting of enormous parameters, It is possible to detect a subject at high speed.
  • the attitude or size of a moving object can be applied to an image that includes a moving object such as a person who moves while changing its shape, while maintaining the property of geodesic distance that can efficiently represent continuously and nonlinearly distributed data.
  • the region can be correctly extracted without being affected by the influence.
  • the moving object can be detected at high speed and the region can be extracted without being affected by the posture or size of the moving object. Can do. Furthermore, it is also possible to perform movement prediction of a moving body using the results of detection and region extraction.
  • Embodiment 3 Next, the moving body detection apparatus in Embodiment 3 of this invention is demonstrated.
  • the integration / non-integration of subclasses is determined based on the time change of the approximate geodesic distance between subclasses.
  • the moving body detection apparatus 100 according to the third embodiment has the same configuration as that of the moving body detection apparatus 100 according to the first embodiment shown in FIG. 1, description of each component will be omitted. However, the contents of the processing executed by the area dividing unit 105 are different from those in the first embodiment.
  • the third embodiment will be described with a focus on differences from the first embodiment.
  • the region dividing unit 105 applies the approximate geodesic distance between subclasses calculated by the processing from S301 to S304 and the image from the time T to 2T for the image from the time 0 to T. Then, using the approximate sub-class geodesic distance calculated in the same manner, the subclass integration / non-integration is determined by the time change.
  • FIG. 14A shows, as an example, the movement of an object consisting of two subclasses Da and Db connected in a joint shape, a geodesic distance ( ⁇ , solid line), an approximate geodesic distance between subclasses ( ⁇ , a broken line), and a Euclidean distance ( ⁇ ). , Broken line).
  • a geodesic distance
  • an approximate geodesic distance between subclasses
  • a broken line
  • the advantage of geodetic distance is that the time fluctuation of the distance is small even for joint objects, and the same property can be realized with a small amount of calculation.
  • the geodesic distance is an average value of geodesic distances between subclasses, and the intersubclass distance is a distance calculated including the minimum linear distance between subclasses. For this reason, as shown in FIG. 14A, the distance as an absolute value differs between the geodetic distance and the approximate sub-class geodesic distance.
  • FIG. 14B shows an example in which two elliptical objects are connected by a joint and move joints. The images are input together every 6 frames in the image input step S301.
  • FIG. 14B shows the results of various distances calculated using 60 frames of images. For example, a distance obtained from an image of 0 to 6 frames is plotted at a position of 0 (frame) on the horizontal axis.
  • the geodesic distance is indicated by ( ⁇ , solid line)
  • the approximate geodesic distance between subclasses is indicated by ( ⁇ , broken line)
  • the Euclidean distance is indicated by ( ⁇ , broken line).
  • each distance has the same properties as FIG. 14A, and the geodesic distance and the sub-class approximate geodesic distance are smaller in temporal variation than the Euclidean distance. That is, since these distances have little time variation with respect to joint movement, the Euclidean distance has an effect that an object that may be classified as a separate subject can be easily determined as the same subject. .
  • the region dividing unit 105 estimates the approximate geodesic distance between subclasses from time T to 2T using the intersubclass approximate geodesic distance calculated from the image from 0 to T and the movement trajectory based on the following Expression 24. .
  • E is an estimated value. Also,
  • T corresponds to the image from time 0 to T
  • 2T corresponds to the intra-subclass distance calculated from the image from time T to 2T
  • the approximate geodesic distance between subclasses
  • Equation 24 the distance between subclasses in Equation 24 is introduced to obtain a normalization effect especially when the size of the moving object changes, and is applied to a scene where there is no change in the size of the moving object in the fixed camera. If so, the following equation may be simply used.
  • the area dividing unit 105 calculates, for the subclasses Da and Db, the absolute value of the difference between the estimated intersubclass approximate geodesic distance and the actual intersubclass approximate geodesic distance from time T to 2T as the following equation: If the time change K of the approximate geodesic distance between subclasses is equal to or less than a preset threshold value, the subclasses are integrated, and if the time change K is larger than the threshold value, the integration is not performed.
  • the region dividing unit 105 performs this process on all subclass pairs to determine whether the subclasses are integrated or not, and generates a final class.
  • the subclasses Da and Db are integrated and can be determined to be the same moving object.
  • the threshold is set to 5 Good results can be obtained with a value of about 0.0.
  • the description has been made assuming that images from time 0 to T and T to 2T are input, but time 0 to T, T to 2T, 2T to 3T,. . . , (N ⁇ 1) T to NT, the subclass integration / non-integration may be determined based on a longer time change.
  • the processing of Expression 26 is performed from time 0 to T, from T to 2T,. . . , (N-1) T to NT, and the average value of the time changes K calculated in Equation 26 may be used as the time change K, or the time average K closer to the current time is larger.
  • the weighted average value obtained by weighting may be used as the time change K.
  • the image input step S301 images from time 0 to NT are input in advance, and the processing of the movement trajectory calculation step S302 and the subclass classification step S303 is performed on the subclass.
  • the approximate geodesic distance calculation step S304 from time 0 to T, from T to 2T,. . . , (N ⁇ 1) T to NT, and the approximate geodesic distance between subclasses is calculated using the divided images.
  • the integration / non-integration of subclasses may be determined based on the temporal change of the inter-subclass approximate geodesic distance as described above.
  • the same class label is added to the movement trajectory belonging to the subclass determined to be the same class. Is granted. For this reason, when the movement trajectories are grouped for the same class label, the subject can be extracted as shown in FIG. As a result, it is possible to detect a moving object (part of the moving object) in the image and segment an image including the moving object. Further, since it is not necessary to set a person candidate area as pre-processing, there is no segmentation failure due to a detection error of the person candidate area. As described above, by performing clustering in a non-linear space without requiring enormous parameter fitting, object detection can be performed at high speed for images including people who move stably while changing their shape. Can be performed.
  • the region can be divided as the same subject even for the movement, enlargement and reduction of the object including the joint. It also moves images that contain moving objects such as people who move while changing the shape with a small amount of calculation while maintaining the property of geodesic distance that can efficiently represent data that is distributed continuously and nonlinearly.
  • the region can be correctly extracted without being affected by the posture or size of the body.
  • the moving body detection apparatus 100c includes an image input unit 101, a movement trajectory calculation unit 102, a subclass classification unit 103, an intersubclass approximate geodesic distance calculation unit 104, and an area. This can be realized by adding a recording / transmission unit 1501 to the dividing unit 105.
  • the recording / transmission unit 1501 specifies a subject region in the picture received by the image input unit 101 based on the result of subject detection by the region dividing unit 105, and indicates the subject region for each specified subject region. It is a processing unit that records information on a recording medium such as a memory or a hard disk, or transmits information to the outside via a communication interface or the like. That is, the recording and transmission unit 1501, similarly to the case where the image display, each separately recorded and transmitted in accordance with image in which the object is detected in the class labels theta m. It is also possible to compress the motion information by averaging the motion information belonging to each class as in the following equations 27 and 28. Normally, it is necessary to hold motion information for each pixel.
  • the recording / transmission unit 1501 calculates the average for each of the divided areas as in the following Expression 27 and Expression 28. Motion information can be calculated.
  • FIG. 17 shows information for classifying the t images from time T as input and indicating the subject area to be identified using the result.
  • the recording / transmission unit 1501 identifies each class label ⁇ m as an identifier, the pixel position and pixel value of the picture at time T belonging to each class label ⁇ 1 , ⁇ 2 , and the time T to time T + t corresponding to each class label.
  • the recording / transmission unit 1501 may transmit each picture with a class label for each pixel with respect to one picture at time T.
  • the recording / transmission unit 1501 may transmit each picture with a class label for each pixel with respect to one picture at time T.
  • the moving body detection device 100d includes an image input unit 101, a movement trajectory calculation unit 102, a subclass classification unit 103, an intersubclass approximate geodesic distance calculation unit 104, and an area division unit 105.
  • a motion predicting unit 1701 and an output unit 1702 are added to have a function of predicting the motion of the moving object.
  • the motion prediction unit 1701 calculates a representative movement locus from the movement locus of the pixels included in each class based on the detection result of the subject, predicts the movement of the moving body based on the representative movement locus, and Predict position and position of moving body part.
  • the output unit 1702 outputs the position of the moving body and the position of the moving body part predicted by the motion prediction unit 1701.
  • FIG. 19 shows a flowchart of processing executed by the mobile object detection device 100d according to the second modification. Steps S301 to S305 are the same as those in the first embodiment, and a description thereof will be omitted.
  • step S1801 the motion prediction unit 1701 obtains the representative point of each class and the representative movement locus from the movement locus belonging to each class based on the result of subject detection in the region dividing unit 105.
  • the movement trajectory of the pixel belonging to the class ⁇ m is expressed as x cm .
  • the motion prediction unit 1701 obtains a representative movement locus for each class ⁇ m based on the following equation 29.
  • an example of calculating an average movement trajectory as a representative movement trajectory will be described.
  • weighting or the like may be performed for each pixel movement trajectory x Cm for the following calculation, or a class on an image may be calculated.
  • a pixel movement locus corresponding to the center of gravity may be used as a representative movement locus.
  • C m is the number of pixels belonging to the class ⁇ m or the number of pixel trajectories.
  • Figure 20 shows an example of obtaining a movement locus of a representative for each class theta m based on Equation 29.
  • FIG. 20 shows only representative movement trajectories relating to the class ⁇ 1 corresponding to a certain moving object and the class ⁇ 2 corresponding to another moving object.
  • x indicates a representative movement locus corresponding to each time t.
  • the pixel position which is an element of is shown. According to this method, it is possible to calculate a representative movement trajectory using only the movement trajectories of pixels with similar movements as compared to a method of simply obtaining the time average of the movement trajectories of adjacent pixels. For this reason, the representative movement trajectory can be obtained with higher accuracy. In this way, by obtaining a representative movement trajectory for each class, it is possible to accurately and easily represent the movement of each subject or each part.
  • step S1802 the motion prediction unit 1701 predicts the position of the moving body at a time earlier than time T from the representative movement trajectory calculated in step S1801.
  • acceleration is calculated from a representative movement locus and the position of the moving body after time T + 1 is predicted.
  • the representative movement trajectory is as shown in Equation 30 below.
  • u t m is a motion vector and can be expressed as the following Expression 31.
  • the motion prediction unit 1701 uses the acceleration vector of Equation 30, the motion prediction unit 1701 calculates the position pos m (T + t ′) of the moving object at time T + t ′ for each moving object, as indicated by the dashed arrow and ⁇ in FIG. Prediction can be made according to Equation 32 below.
  • a mobile object is taken as an example, but by increasing the number of classes in the area dividing unit 105 of the first embodiment or reducing the threshold value in the area dividing unit 105 of the third embodiment, It is also possible to predict the position for each part.
  • the output unit 1702 outputs the position of the moving body and the position of the moving body part predicted in step S1802.
  • the output unit 1702 outputs the position of the moving body and the position of the moving body part predicted in step S1802.
  • the output unit 1702 outputs the position of the moving body and the position of the moving body part predicted in step S1802.
  • 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.
  • An N-order function can be fitted to position information on T images included in.
  • the position pos m (T + t ′) on the image at time (T + t ′) can be estimated along the value of the fitted function.
  • the accuracy of motion prediction is high when the fitted function is close to the original motion.
  • position prediction on these images can also be used for temporal interpolation.
  • the movement trajectories of pixels with similar motion can be calculated as the same class, so that the representative movement trajectory can be obtained with high accuracy.
  • the mobile body detection system includes a mobile body detection data generation device and a mobile body detection device.
  • the mobile object detection data generation apparatus performs processing that requires a large amount of memory.
  • the moving object detection data generating apparatus is realized by a device such as a personal computer having a large memory capacity and a high processing speed.
  • the moving body detection device performs processing that requires a smaller amount of memory compared to the processing in the moving body detection data generation device.
  • the mobile object detection device is realized by a device having a small memory capacity and a low processing speed, such as a mobile phone and a mobile terminal.
  • FIG. 21 is a block diagram illustrating a functional configuration of the mobile object detection data generation device according to the third modification of the first embodiment.
  • the moving object detection data generation apparatus includes an image input unit 101, a movement trajectory calculation unit 102, a subclass classification unit 103, an intersubclass approximate geodesic distance calculation unit 104, and a class determination data output unit 2101.
  • the processing executed from the image input unit 101 to the subclass approximate geodesic distance calculation unit 104 is the same as that shown in the first embodiment.
  • the image input unit 101, the movement trajectory calculation unit 102, the subclass classification unit 103, and the sub-class approximate geodesic distance calculation unit 104 correspond to the image input step S301, the movement trajectory calculation step S302, the subclass classification step S303, and the subclass shown in FIG.
  • the operation of the approximate approximate geodesic distance calculation step S304 is executed. In the following, important parts in this modification will be supplemented.
  • the subclass classification unit 103 classifies the I movement trajectories into S subclasses in a subclass classification step S303. Note that I> S.
  • the geodetic distance is calculated using the Dijkstra method of Non-Patent Document 7, if the number of data points (the number of movement trajectories) is N, the order of the calculation amount is N 2 logN. At this time, since it is necessary to store the distance between arbitrary data points in the memory, the square of the number of movement trajectories, that is, a memory amount of N 2 is required.
  • the approximate geodesic distance calculation unit 104 between subclasses calculates an approximate geodesic distance between subclasses having the same property as the geodetic distance in step S304.
  • subclass between approximate geodesic distance not only reduce the amount of calculation described above, it is also an advantage can be realized in the amount of memory for storing data of the S 2. Note that since N> S, the amount of memory can be greatly reduced. For example, if processing is performed so that 100 similar movement trajectories are classified into one subclass, the amount of memory related to geodetic distance can be reduced to 1/10000.
  • the class determination data output unit 2101 records information described below on a recording medium.
  • the recording medium may be an SD card, USB memory, portable hard disk, CD, DVD or the like.
  • the information recorded on the recording medium includes header information and body information.
  • the header information includes the size (X, Y) of the pictures constituting the moving picture, the number of pictures (T) that is the number of pictures constituting the moving picture, and the number of moving traces that is the number of moving traces obtained from the moving picture. (N) and the number of subclasses (S) that is the number of subclasses that are sets of similar movement trajectories.
  • FIG. 23 is a diagram for explaining the picture size (X, Y) and the number of pictures (T). As shown in FIG. 23, the moving image is composed of T pictures, and the size of each picture is X ⁇ Y pixels.
  • the body information includes the above-mentioned number of pictures constituting a moving image, a moving trajectory vector with a subclass label, and an approximate geodesic distance matrix between subclasses.
  • the movement trajectory vector with a subclass label includes data indicating the movement trajectory of the number of movement trajectories obtained from the moving image and data indicating the subclass to which each movement trajectory belongs.
  • FIG. 26 is a diagram for explaining a movement trajectory vector with a subclass label.
  • FIG. 26 shows five trajectory vectors with subclass labels.
  • the inter-subclass approximate geodesic distance matrix is a matrix that includes an inter-subclass approximate geodesic distance that represents the similarity between the subclass and other subclasses for each subclass, and is the matrix shown in FIG. 8B. .
  • FIG. 27 is a diagram showing a specific example of information recorded on the recording medium.
  • the header information includes picture size (X), picture size (Y), number of pictures (T), number of trajectories (N), number of subclasses (S), 640, 480, 4, 5, 3 are stored.
  • picture size (X), picture size (Y), the number of pictures (T), the number of movement traces (N), and the number of subclasses (S) each numerical value is demonstrated. It is not limited to.
  • the body information includes image data for four pictures, a moving trajectory vector with subclass labels for five moving trajectories, and an approximate geodesic distance matrix between subclasses.
  • the first subclass-labeled movement trajectory vector is (a a1x1 a1y1 a1x2 a1y2 a1x3 a1y3 a1x4 a1y4), and indicates the information on the first subclass-labeled movement trajectory vector in FIG.
  • the inter-subclass approximate geodesic distance matrix stores intra-subclass distances or inter-subclass approximate geodesic distances for all combinations of subclasses.
  • the subclass internal distance f aa Intra between the subclass a and the subclass a is stored in the column (a, a), and the subclass between the subclass a and the subclass b is stored in the column (a, b).
  • the approximate geodesic distance g ab ′ is stored.
  • the information recorded on this recording medium is created by the class determination data creation unit 2101A included in the class determination data output unit 2101.
  • the class determination data creation unit 2101A acquires the picture size (X, Y), the picture size (Y), the number of pictures (T), and the image data from the image input unit 101.
  • the class determination data creation unit 2101A acquires the number of movement tracks from the movement track calculation unit 102.
  • the class determination data creation unit 2101A acquires the number of subclasses (S) from the subclass classification unit 103.
  • the class determination data creation unit 2101A acquires data indicating the movement trajectory from the movement trajectory calculation unit 102 out of the movement trajectory vectors with subclass labels, and acquires data indicating the subclass from the subclass classification unit 103.
  • the class determination data creation unit 2101A obtains the inter-subclass approximate geodetic distance matrix from the inter-subclass approximate geodetic distance calculation unit 104.
  • the class determination data creation unit 2101A aggregates the acquired information and creates information to be recorded on the recording medium.
  • the memory amount is reduced from the storage capacity of N 2 data to S 2 compared to the case where the geodetic distances are stored for all combinations of movement trajectories.
  • the storage capacity can be reduced to (N> S) pieces of data. For this reason, it becomes possible to perform processing using the above-mentioned recording medium, using a moving body detection device having a smaller memory capacity than the moving body detection data generation device.
  • FIG. 28 is a block diagram showing a functional configuration of the moving object detection device.
  • the moving body detection device is a device that detects a moving body in a moving image by performing region division that specifies all or a part of the moving body in the moving image, and includes a class determination data input unit 2102 and A region dividing unit 105 and an output unit 106.
  • the class determination data input unit 2102 reads information recorded on the recording medium from the above-described recording medium.
  • the area dividing unit 105 executes area division based on the data read by the class determination data input unit 2102.
  • the processes executed by the area dividing unit 105 and the output unit 106 are the same as those described in the first embodiment. That is, the region dividing unit 105 and the output unit 106 execute the operations of the region dividing step S305 and the image output step S306 shown in FIG.
  • the class determination data input unit 2102 reads the header information from the recording medium, and secures a memory (storage area) that matches the input image size (X ⁇ Y ⁇ T) for T sheets. Next, the class determination data input unit 2102 secures a memory for storing (2T + 1) ⁇ N data based on the number of movement trajectories N and the number of pictures T.
  • a memory for storing 2T pixel coordinates is required.
  • each movement trajectory vector includes: Since the subclass label is assigned, a memory for storing the subclass label is required.
  • the class determination data input unit 2102 secures a memory for storing S 2 pieces of data necessary for holding the approximate geodesic distance matrix between subclasses based on the number of subclasses S in the header information.
  • the class determination data input unit 2102 reads the information after securing the above memory. Note that since the inter-subclass approximate geodesic distance matrix is a symmetric matrix, in practice, a memory for storing S C 2 data for holding the inter-subclass approximate geodesic distance may be secured.
  • the area division unit 105 uses the approximate geodesic distance between subclasses to determine whether to integrate or not integrate a collection of similar movement trajectories (subclasses). Since the specific method is the same as that of the first embodiment, the description thereof is omitted.
  • the output unit 106 outputs the detection result of the moving object in the moving image performed by the region dividing unit 105. Since the specific method is the same as that of the first embodiment, the description thereof is omitted.
  • the movement locus and the approximate geodesic distance between subclasses are calculated using the moving object detection data generation device and stored in the recording medium. Then, it is possible to extract a subject by performing region division using a moving body detection device via a recording medium.
  • the moving object detection device can secure a memory for information necessary for area division.
  • the sub-class approximate geodetic distance matrix is used as information necessary for area division, area division is performed with a smaller amount of memory compared to the case where area division is performed using a geodetic distance matrix that is a matrix of geodetic distances between moving trajectories. There is an effect that can be performed.
  • a device with a limited memory capacity can be used as the moving object detection device.
  • a mobile device such as a mobile phone
  • the mobile object detection data generation device may output at least data including an approximate geodesic distance between subclasses to a recording medium as minimum data for performing region division in the mobile object detection device.
  • the mobile object detection device may receive data including at least an inter-subclass approximate geodesic distance from the recording medium and perform region division.
  • the output unit 106 is not necessarily provided.
  • the present invention includes a form realized by arbitrarily combining characteristic components in each embodiment.
  • the moving object detection apparatus in the above embodiment includes the image input unit 101 and the movement trajectory calculation unit 102, but the present invention does not require these components. That is, when the movement trajectory of the image in each of the plurality of blocks constituting the moving image is calculated in advance, the mobile body detection device 100 acquires such a movement trajectory from the outside, and acquires the acquired movement trajectory. On the other hand, the processing of steps S303 to S306 may be executed.
  • the present invention is realized as a moving body detection device, it goes without saying that the present invention can be realized as an image processing device that extracts or divides a region of an object having a motion in a moving image.
  • the present invention provides a moving body detection apparatus that detects a moving body in an image by extracting an image including a moving body such as a person who moves while changing its shape based on movement in a plurality of pictures. Further, it can be used as a motion analysis device, a monitoring device, a moving body detection device incorporated in an AV device such as a video camera or a TV.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Psychiatry (AREA)
  • Social Psychology (AREA)
  • Human Computer Interaction (AREA)
  • Image Analysis (AREA)

Abstract

 移動体検出装置(100)は、動画像を構成する複数枚のピクチャを受け付ける画像入力部(101)と、複数枚のピクチャから複数の移動軌跡を算出する移動軌跡算出部(102)と、複数の移動軌跡を、複数のサブクラスに分類するサブクラス分類部(103)と、サブクラスごとに、当該サブクラスに属する移動軌跡と他のサブクラスに属する移動軌跡との間の線形距離の最小値を含む距離であるサブクラス間距離を用いて、当該サブクラスと他のサブクラスとの間の類似性を表すサブクラス間近似測地距離を算出するサブクラス間近似測地距離算出部(104)と、算出されたサブクラス間近似測地距離に基づいて、類似する移動軌跡からなるサブクラスの集まりを1つのクラスとして特定することによって、領域分割を実行する領域分割部(105)とを備える。

Description

移動体検出装置および移動体検出方法
 本発明は、画像中の移動体の領域を特定することによって移動体を検出する画像処理技術に関する。特に、移動体が人物のように形状が変化しながら移動する対象である場合においても、動画像中の動き情報に基づいて高速に移動体を検出する移動体検出装置等に関する。
 従来から、移動体の像(以下、単に「移動体」という。)が含まれる画像から、画像中の移動体の領域を抽出することによって移動体を検出する領域抽出技術の研究開発が広く行われてきている。特に移動体が人である場合にその移動体の領域を抽出する技術は、デジタルビデオカメラもしくはデジタルスチルカメラにおける焦点制御、画質改善処理、自動車の安全運転支援システム、または、ロボットにおける人との衝突回避制御もしくは衝突回避のための警報などに、共通して利用される基礎技術である。
 画像中の移動体の領域を抽出する技術のうち、一般的な手法として、画像から移動体領域の候補を抽出したのち、抽出した移動体領域の候補に対し、予め用意した移動体モデルとの類似度を評価して、類似度が高い領域を移動体領域として抽出する手法がある。
 さらに、歩行する人物等のように、変形しながら移動する移動体の領域を抽出する場合、変形を考慮した移動体モデルを利用する手法がある。例えば、特許文献1の技術では、移動体領域候補として複数の画像から移動体のシルエット画像を抽出する。そして、あらかじめパラメータ化した移動体の変形に関するモデルと、抽出したシルエット画像との類似度を評価し、類似度が高い領域とその領域に対応するモデルのパラメータとを推定する手法が開示されている。これによって、形状が周期的に変化しながら移動する人物に対しても、パラメータ化したモデルを当てはめることができるため、移動体の領域抽出を可能にしている。
 また、非特許文献1の技術では、固定された1つの移動体を複数の視点から撮影した画像を入力として、各画像における画素値を並べたベクトルと、その他の画像の画素値を並べたベクトルとのユークリッド距離を計算する。そして計算されたユークリッド距離を測地距離変換した後、次元圧縮を行うことによって、類似した視点から撮影した画像が2次元空間上で近距離となるように射影することを可能にする方法が開示されている。ここでは、従来のPCA(Principal Component Analysis)等の線形次元圧縮方法と比較して、測地距離変換によって、より低次元に圧縮可能であり、さらに、非線形に分布するデータに対しても取り扱いが可能なことが示されている。
特開平8-214289号公報
Joshua Tenenbaum, Vin de Silva and John Langford, "A Global Geometric Framework for Nonlinear Dimensionality Reduction", Science, VOL290, pp.2319-2322, 22 December, 2000
 しかしながら、上述した従来の領域抽出の技術は、例えば、街頭などで複数の人物等の移動体が行き交うシーンなどのように、移動体が他の移動体によって部分的に遮蔽される場合や、大きさが著しく異なる移動体を含む場合などに、正しく移動体を抽出することができないという問題がある。
 特許文献1に代表される従来の領域抽出手法では、画像から移動体領域の候補を抽出する必要がある。この時、適切に移動体領域候補を抽出できなければ、移動体をパラメータ化したモデルを正確に移動体領域候補に当てはめることが不可能になる。特に、上述のようなシーンにおいては、移動体領域候補を適切に抽出することは困難である。さらに、移動体領域候補を適切に抽出できたとしても以下のような課題がある。つまり、特に人物等の多関節物体を移動体とした場合、移動体のさまざまな姿勢や大きさに起因する画像の変化、バリエーションが非常に大きいため、移動体モデルのパラメータ化を行う際に膨大な数のパラメータが必要となる。このことは、モデルの当てはめ誤りを誘発する。そのため、例えば、複数の移動体を1つの移動体として誤って検出したり、抽出対象となる移動体が存在しない領域を移動体として誤って検出したりするなど、正しく移動体を検出することができないという課題がある。
 一方で、非特許文献1に代表される画像処理手法では、画像間の距離を入力として非線形処理を行うことにより、効率良く圧縮された低次元空間に画像データを射影することができる。これによりノイズに対する耐性が期待できる。さらには、測地距離変換と次元圧縮により、連続的かつ非線形に分布するデータを効率よく表現することができる。しかしながら、非特許文献1の主な目的は、複数の画像を低次元空間に射影することで画像間の類似度を可視化することにあり、形状が変化する人物等の多関節物体におけるさまざまな姿勢変化に対応しながら、正しく移動体を検出する方法は開示されていない。
 ここで、非特許文献1は、取り扱う全データ数をNとした場合に、Nの要素数を持つマトリクスを用いて、測地距離変換および次元圧縮を行う必要がある。そのため、データ数Nが大きい場合に、計算量が膨大になるという問題があることが知られている。
 これに対し、非特許文献2および非特許文献3には、データ点の中からデータ点数よりも少ない数のランドマーク点を設定し、設定したランドマーク点を用いて前記マトリクスを生成し測地距離変換および次元圧縮を行うことによって、計算量を削減する方法が提示されている。
Vin de Silva and Joshua B. Tenenbaum, "Global Versus Local Methods in Nonlinear Dimensionality Reduction", Neural Information Processing Systems 15, pp.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の技術と同様に入力データ数が多くなると計算量が膨大になるといった問題がある。さらに、非特許文献2および非特許文献3に代表される計算量の削減方法では、ランドマーク点とランドマーク点との間に存在するデータ点、つまりランドマークとして選ばなかった点に関して、ランドマーク点を用いて線形補間を行うものである。しかしながら、特に、形状が変化する人物等の移動体は、頭と足の動きが異なるように、同一の移動体であっても部位によって動きが異なる。例えば、頭と足にランドマーク点がある場合やランドマーク点とランドマーク点の間に関節が存在する場合には、ランドマーク点間の線形補間を行うと、腕や膝の関節動き等の動きを適切に捉えることができない。そのため、形状が変化する人物等の多関節物体における様々な姿勢変化に対応しながら、正しく移動体を抽出することが難しい。さらに、あらかじめ被写体が抽出されていない段階において、人物等の多関節物体に対してランドマーク点を適切に設定することは難しい。
 そこで本発明は、上述の課題を解決するためになされたものであり、連続的かつ非線形に分布するデータを効率良く表現可能な測地距離の性質を保ちながら、少ない計算量で、形状が変化しながら移動する人物等の移動体を含む画像に対しても、移動体の姿勢あるいは大きさの影響を受けずに、高速かつ正しく領域抽出することができる移動体検出装置等を提供することを目的とする。
 この課題を解決するために本発明のある局面に係る移動体検出装置は、動画像中の移動体の全部または一部の領域を特定する領域分割を実行することによって動画像中の移動体を検出する移動体検出装置であって、動画像を構成する複数枚のピクチャを受け付ける画像入力部と、受け付けられた前記ピクチャを構成する1個以上の画素からなるブロックごとに、前記動画像を構成する2枚のピクチャ間での当該ブロックの動きを検出し、検出した動きを前記複数枚のピクチャについて連結することにより、複数の移動軌跡を算出する移動軌跡算出部と、算出された前記複数の移動軌跡を、各々が類似する移動軌跡の集合である複数のサブクラスに分類するサブクラス分類部と、サブクラスごとに、当該サブクラスに属する移動軌跡と他のサブクラスに属する移動軌跡との間の線形距離の最小値を含む距離であるサブクラス間距離を用いて、当該サブクラスと前記他のサブクラスとの間の類似性を表すサブクラス間近似測地距離を算出するサブクラス間近似測地距離算出部と、算出された前記サブクラス間近似測地距離に基づいて、類似する移動軌跡からなるサブクラスの集まりを1つのクラスとして特定することによって、領域分割を実行する領域分割部とを備える。
 この構成によると、サブクラス間距離は、全ての移動軌跡のペアについて算出される線形距離に基づいて算出され、サブクラス間近似測地距離は、サブクラス間距離を用いて算出される。また、サブクラス間距離は、それぞれ異なるサブクラスに属する移動軌跡間の線形距離の最小値を距離として含んでいるため、多関節物体の動きが生じた場合であっても、変化しにくい。さらに、本発明によるクラスは画像中の移動体領域と対応するため、その結果として移動体を検出することができる。このため、連続的かつ非線形に分布するデータを効率良く表現可能な測地距離の性質を保ちながら、少ない計算量で、形状が変化しながら移動する人物等の移動体を含む画像に対しても、移動体の姿勢あるいは大きさの影響を受けずに、高速かつ正しく領域抽出することができる。
 なお、本発明は、上記移動体検出装置として実現できるだけでなく、移動体検出装置に含まれる特徴的な処理部をステップとする移動体検出方法、上記各ステップをコンピュータに実行させるプログラム、そのプログラムを格納したCD-ROM等のコンピュータ読み取り可能な記録媒体等として実現することもできる。なお、そのようなプログラムは、インターネット等の通信ネットワークを介して流通させることができるのは、言うまでもない。
 本発明によると、連続的かつ非線形に分布するデータを効率良く表現可能な測地距離の性質を保ちながら、少ない計算量で、形状が変化しながら移動する人物等の移動体を含む画像に対しても、移動体の姿勢あるいは大きさの影響を受けずに、高速かつ正しく領域抽出することができる。
図1は、本発明の実施の形態1における移動体検出装置の基本構成を示す図である。 図2は、本発明の実施の形態1における移動体検出装置をソフトウェアで実現する場合におけるハードウェア構成図である。 図3は、本発明の実施の形態1における移動体検出装置の基本動作を示すフローチャートである。 図4は、本発明の実施の形態1における移動軌跡算出部の処理例を示す図である。 図5は、本発明の実施の形態1におけるサブクラス分類部の処理例を示す図である。 図6は、本発明の実施の形態1における測地距離の効果の一例を示す図である。 図7は、本発明の実施の形態1におけるサブクラス間近似測地距離の効果の一例を示す図である。 図8は、本発明の実施の形態1におけるサブクラス間近似測地距離の計算方法の一例を示す図である。 図9は、本発明の実施の形態1における領域分割部の処理例を示す図である。 図10は、本発明の実施の形態2における移動体検出装置の基本構成を示す図である。 図11は、本発明の実施の形態2における移動体検出装置の基本動作を示すフローチャートである。 図12は、本発明の実施の形態2におけるサブクラス分類部の処理例を示す図である。 図13は、本発明の実施の形態3における移動体検出装置の基本動作を示すフローチャートである。 図14は、本発明の実施の形態3におけるサブクラス間近似測地距離の性質を示す概念図である。 図15は、本発明の実施の形態3における画像入力部の処理例を示す図である。 図16は、本発明の実施の形態1から3の第1変形例における移動体検出装置の基本構成を示す図である。 図17は、本発明の実施の形態1から3の第1変形例における記録・送信データの一例を示す図である。 図18は、本発明の実施の形態1から3の第2変形例における移動体検出装置の構成例を示す図である。 図19は、本発明の実施の形態1から3の第2変形例における移動体検出装置の基本動作を示すフローチャートである。 図20は、本発明の実施の形態2における動き予測の一例を示す図である。 図21は、本発明の第3変形例に係る移動体検出用データ生成装置の機能的な構成を示すブロック図である。 図22は、記録媒体に記録される情報のデータ構成を示す図である。 図23は、ピクチャのサイズ(X,Y)およびピクチャ枚数(T)を説明するための図である。 図24は、移動軌跡数(N)を説明するための図である。 図25は、サブクラス数(S)を説明するための図である。 図26は、サブクラスラベル付移動軌跡ベクトルについて説明するための図である。 図27は、記録媒体に記録される情報の具体例を示す図である。 図28は、移動体検出装置の機能的な構成を示すブロック図である。
 本発明の一実施形態に係る移動体検出装置は、動画像中の移動体の全部または一部の領域を特定する領域分割を実行することによって動画像中の移動体を検出する移動体検出装置であって、動画像を構成する複数枚のピクチャを受け付ける画像入力部と、受け付けられた前記ピクチャを構成する1個以上の画素からなるブロックごとに、前記動画像を構成する2枚のピクチャ間での当該ブロックの動きを検出し、検出した動きを前記複数枚のピクチャについて連結することにより、複数の移動軌跡を算出する移動軌跡算出部と、算出された前記複数の移動軌跡を、各々が類似する移動軌跡の集合である複数のサブクラスに分類するサブクラス分類部と、サブクラスごとに、当該サブクラスに属する移動軌跡と他のサブクラスに属する移動軌跡との間の線形距離の最小値を含む距離であるサブクラス間距離を用いて、当該サブクラスと前記他のサブクラスとの間の類似性を表すサブクラス間近似測地距離を算出するサブクラス間近似測地距離算出部と、算出された前記サブクラス間近似測地距離に基づいて、類似する移動軌跡からなるサブクラスの集まりを1つのクラスとして特定することによって、領域分割を実行する領域分割部とを備える。
 これにより、連続的かつ非線形に分布する移動軌跡が、類似性によりまとめられてクラス分類が行われるので、動きの異なる複数の部位からなる人物等の多関節物体を移動体として検出する場合であっても、一つの領域として判定される。その結果、正確な領域抽出が行われ、移動体が正しく検出される。つまり、形状が変化しながら移動する人物等の移動体に対しても正しく領域抽出し、これによって画像中の移動体を高速かつ確実に検出することが可能である。
 また、移動軌跡をサブクラスに分類し、さらに移動軌跡の類似性を示す測地距離の代わりにサブクラス間近似測地距離を算出することによって、特に関節を持つ物体の動きに対して、より少ない計算量で、測地距離を計算した場合と同様の性質を持った距離を計算することができるため、高速な移動体検出が可能となる。さらに、あらかじめ抽出すべき移動体に関する形状情報等の事前情報を保持、または学習しておく必要がない。
 好ましくは、前記サブクラス間近似測地距離算出部は、サブクラスごとに、当該サブクラスと他のサブクラスとの間の前記サブクラス間近似測地距離として、当該サブクラスに属する移動軌跡の類似性を表すサブクラス内距離と、前記他のサブクラスの前記サブクラス内距離と、当該サブクラスと前記他のサブクラスとの間の前記サブクラス間距離とを加算した距離を算出する。
 サブクラス間近似測地距離として、サブクラス間距離とサブクラス内距離を用いることで、より高精度に測地距離を近似することができる。これにより、少ない計算量で形状が変化しながら移動する人物等の移動体に対しても正しく領域抽出し、これによって画像中の移動体を高速かつ確実に検出することが可能である。
 ここで、前記サブクラス間近似測地距離算出部は、サブクラスごとに、当該サブクラスに属する移動軌跡間の線形距離の平均値、最頻値またはメディアン値を、当該サブクラスの前記サブクラス内距離として算出する構成としてもよい。
 さらに、特に移動体の大きさが変化する場合には、前記領域分割部は、さらに、2つのサブクラス間の前記サブクラス間近似測地距離を前記サブクラス内距離によって正規化した距離を、前記サブクラス間近似測地距離として算出するとしてもよい。サブクラスの空間的な大きさの情報を含むサブクラス内距離によって、サブクラス間近似測地距離を正規化することによって、画像上でのサイズが変化するような移動体もより正確に検出することが可能になる。
 また、前記サブクラス間近似測地距離算出部は、前記最小値が所定の閾値より大きい場合には、前記サブクラス間近似測地距離を無限大に変更する非線形化を行うことにより、前記サブクラス間近似測地距離を算出する構成としてもよい。
 また、前記サブクラス間近似測地距離算出部は、第1のサブクラスと第2のサブクラスとの間のサブクラス間近似測地距離と、前記第1のサブクラスと第3のサブクラスとのサブクラス間近似測地距離および前記第3のサブクラスと前記第2のサブクラスとの間のサブクラス間近似測地距離の和とを比較し、小さいほうの値を前記第1のサブクラスと前記第2のサブクラスとの間のサブクラス間近似測地距離として算出する構成としてもよい。
 また、前記領域分割部は、前記サブクラス間近似測地距離の時間変化に基づいて、類似する移動軌跡からなるサブクラスの集まりを1つの領域を示すクラスとして特定することによって、領域分割を実行する構成としてもよい。このように、サブクラス間近似測地距離の時間変化により、サブクラスラベルの統合・非統合を判定することによって、関節物体等の動きに対しても一つの移動体として検出できる。
 なお、時間変化に基づいてサブクラスラベルを統合するためには、前記領域分割部は、2つのサブクラス間の前記サブクラス間近似測地距離の時間変化を表す値が、所定の時間変化閾値以下の場合に、前記2つのサブクラスが同一のクラスに属すると判定することにより、領域分割を実行するのが望ましい。これにより、サブクラス間近似測地距離の時間変化が小さい場合には、関節動きや剛体のように同一の移動体として判定することが可能になる。
 さらに、時間変化によりサブクラスラベルを統合しないためには、前記領域分割部は、2つのサブクラス間の前記サブクラス間近似測地距離の時間変化を表す値が、所定の時間変化閾値よりも大きい場合に、前記2つのサブクラスが異なるクラスに属すると判定することにより、領域分割を実行するのが望ましい。これにより、サブクラス間近似測地距離の時間変化が大きい場合には、別々の移動体として判定することが可能になる。
 また、前記サブクラス間近似測地距離算出部は、サブクラスごとに、当該サブクラスに属する移動軌跡と他のサブクラスに属する移動軌跡との間の距離のうち、小さいほうから所定個数の距離の平均値を、当該サブクラスと前記他のサブクラスとの間の前記サブクラス間距離としてもよい。また、前記サブクラス間近似測地距離算出部は、サブクラスごとに、当該サブクラスに属する移動軌跡と他のサブクラスに属する移動軌跡との間の距離のうち、所定の閾値以下の距離の平均値を、当該サブクラスと前記他のサブクラスとの間の前記サブクラス間距離としてもよい。この構成により、よりノイズの影響を受けにくいサブクラス間近似測地距離を算出可能である。
 また、サブクラスの生成方法に関して、本発明のより好ましい形態は、前記サブクラス分類部は、算出された前記複数の移動軌跡のうち類似する移動軌跡を同一のサブクラスに分類することによって、前記複数の移動軌跡を複数のサブクラスに分類する構成としたものである。より好ましくは、前記サブクラス分類部は、算出された前記複数の移動軌跡のうち最も類似する移動軌跡の組み合わせを同一のサブクラスに分類する処理を、規定回数または前記複数の移動軌跡が規定のサブクラス数に分類されるまで繰り返し実行することによって、前記複数の移動軌跡を複数のサブクラスに分類する構成としたものである。このように、類似する移動軌跡を同一のサブクラスに分類することによって、サブクラスに分類しない場合と比べ、サブクラス間近似測地距離の計算量を削減することが可能になる。
 さらに、サブクラスの生成方法に関して、別の好ましい形態は、前記サブクラス分類部は、前記画像入力部において受け付けられた前記複数枚のピクチャのうち少なくとも1枚のピクチャから、当該ピクチャのエッジ情報、色情報および輝度情報のうちの少なくとも1つを用いて、当該ピクチャを複数の領域に分割し、分割した各領域を通る移動軌跡を同一のサブクラスに分類することにより、前記複数の移動軌跡を複数のサブクラスに分類する構成としたものであり、エッジ、輝度、色等の画像の空間的な情報を用いて移動軌跡をサブクラスに分類することも可能である。
 好ましくは、上述の移動体検出装置は、さらに、前記画像入力部において受け付けられた前記複数枚のピクチャのうちの少なくとも1枚のピクチャに対して、前記領域分割部により領域分割を実行することにより特定された領域ごとに、他の特定された領域と異なる表示態様となるように画像処理を施し、画像処理が施された領域を含むピクチャを出力する出力部を備える。
 この構成によると、抽出した移動体を画像上に表示することによって、AV、画像監視装置等において、移動体をそれぞれ画像上に表示することによって、ユーザーがそれぞれの被写体を認識しやすくなるといった効果がある。
 さらに好ましくは、上述の移動体検出装置は、さらに、前記画像入力部において受け付けられた前記複数枚のピクチャのうち少なくとも1枚のピクチャに対して、前記領域分割部により実行された領域分割の結果を付与したピクチャを、記録装置に書き込む、または、伝送路を解して外部に送信する記録・送信部を備える。
 この構成によると、検出した移動体画像を抽出した領域に基づいてそれぞれ別々に保持することによって、各移動体画像の中から必要な部分の画像のみを選択して保存したり、外部に出力したりすることによって、図形要素として効率的な保存および出力が可能になる。そのため、携帯電話等、処理能力の限られた機器に保存および送信する場合に有効に作用する。
 また、上述の移動体検出装置は、さらに、前記領域分割部により特定されたクラスを構成する移動軌跡のうち、当該クラスを代表する代表移動軌跡を算出し、算出した前記代表移動軌跡に従って、当該クラスに対応する領域が、ピクチャ間で移動すると予測することにより、前記移動体の動きを予測する動き予測部を備えるものとしてもよい。
 複数のブロックの移動軌跡を代表する軌跡を用いて移動体の動きを予測することにより、ノイズ耐性の高い動き予測が可能となる。
 本発明の他の実施形態に係るコンピュータ読み取り可能な記録媒体は、ヘッダ情報と、ボディ情報とを含むデータ構造を有するデータが記録されたコンピュータ読み取り可能な記録媒体であって、前記ヘッダ情報は、動画像を構成するピクチャのサイズと、前記動画像を構成する前記ピクチャの枚数であるピクチャ枚数と、前記動画像から得られる移動軌跡の数である移動軌跡数と、類似する移動軌跡の集合であるサブクラスの数であるサブクラス数とを含み、前記ボディ情報は、前記動画像を構成する前記ピクチャ枚数のピクチャと、前記動画像から得られる前記移動軌跡数の移動軌跡を示すデータと、各前記移動軌跡が属するサブクラスを示すデータと、サブクラスごとに、当該サブクラスと他のサブクラスとの間の類似性を表すサブクラス間近似測地距離とを含む。
 このように、ピクチャのサイズ、ピクチャ枚数、移動軌跡数、サブクラス数に関する情報をヘッダとして保持することで、これらのデータを受け取って領域分割を行う装置が、領域分割に必要な情報のメモリ確保が可能になる。また、領域分割に必要な情報としてサブクラス間近似測地距離を含んでいるため、移動軌跡間の測地距離を含む場合に比べて、装置側では、少ないメモリ量で領域分割を行うことができるという効果がある。
 本発明のさらに他の実施形態に係る移動体検出用データ生成装置は、動画像を構成する複数枚のピクチャを受け付ける画像入力部と、受け付けられた前記ピクチャを構成する1個以上の画素からなるブロックごとに、前記動画像を構成する2枚のピクチャ間での当該ブロックの動きを検出し、検出した動きを前記複数枚のピクチャについて連結することにより、複数の移動軌跡を算出する移動軌跡算出部と、算出された前記複数の移動軌跡を、各々が類似する移動軌跡の集合である複数のサブクラスに分類するサブクラス分類部と、サブクラスごとに、当該サブクラスに属する移動軌跡と他のサブクラスに属する移動軌跡との間の線形距離の最小値を含む距離であるサブクラス間距離を用いて、当該サブクラスと前記他のサブクラスとの間の類似性を表すサブクラス間近似測地距離を算出するサブクラス間近似測地距離算出部と、少なくとも前記サブクラス間近似測地距離算出部が算出した前記サブクラス間近似測地距離を含むデータを出力するデータ出力部とを備える。
 データ出力部はサブクラス間近似測地距離を含むデータを出力する。このため、このデータを受け取った他の装置では、少ないメモリ量で領域分割を行うことができる。
 本発明のさらに他の実施形態に係る移動体検出装置は、動画像中の移動体の全部または一部の領域を特定する領域分割を実行することによって動画像中の移動体を検出する移動体検出装置であって、少なくとも、動画像中の類似する移動軌跡の集合であるサブクラスに属する移動軌跡と、当該サブクラスとは異なる前記動画像中の類似する移動軌跡の集合であるサブクラスに属する移動軌跡との間の類似性を表すサブクラス間近似測地距離を含むデータの入力を受け付けるデータ入力部と、前記データ入力部で受け付けられた前記サブクラス間近似測地距離に基づいて、類似する移動軌跡からなるサブクラスの集まりを1つのクラスとして特定することによって、領域分割を実行する領域分割部とを備える。
 サブクラス間近似測地距離を含むデータの入力を受け付け、領域分割を実行する。このため、移動軌跡間の測地距離に基づいて領域分割を行う場合と比べて、少ないメモリ量で領域分割を行うことができる。
 以下、本発明の実施の形態について、図面を用いて詳細に説明する。
 (実施の形態1)
 以下、本発明の実施の形態について、図面を用いて説明する。
 図1は、実施の形態における移動体検出装置100の構成を示す図である。図1に示されるように、この移動体検出装置100は、画像入力部101、移動軌跡算出部102、サブクラス分類部103、サブクラス間近似測地距離算出部104、領域分割部105および出力部106を備える。移動体検出装置100は、動画像中の移動体の全部または一部の領域を特定する領域分割を実行することによって動画像中の移動体を検出する装置である。つまり、移動体検出装置100は、2枚以上のピクチャ間の対応点の軌跡である移動軌跡を用いて、動画像中の移動体の全部または一部の領域を特定するクラス分類(クラスタリング)を実行することによって動画像中の移動体を検出する装置である。以下、ピクチャのことを画像ともいう。
 画像入力部101は、動画像を構成する撮影時刻が時間的に異なる複数枚のピクチャの入力を受け付ける処理部であり、例えば、ビデオカメラ、あるいは、ビデオカメラと接続された通信インターフェース等である。また、画像入力部101は、動画像を蓄積したメモリから動画像を取得してもよい。
 移動軌跡算出部102は、画像入力部101で受け付けたピクチャを構成する1個以上の画素からなるブロックごとに、動画像を構成する2枚のピクチャ間での画像の動きを検出し、検出した動きを複数枚のピクチャについて連結することで、複数の移動軌跡を算出する処理部である。ここで、ブロックとは、移動軌跡を算出する単位であり、1個以上の画素の集まりである。
 サブクラス分類部103は、移動軌跡算出部102で算出された複数の移動軌跡を、各々が類似する移動軌跡の集合である複数のサブクラスに分類する処理部である。つまり、サブクラス分類部103は、移動軌跡算出部102で算出された複数の移動軌跡に関して、類似した移動軌跡が同じサブクラスに属するように分類を行い、各移動軌跡に対して、分類結果であるサブクラスのラベルを付与する。
 サブクラス間近似測地距離算出部104は、サブクラス分類部103でラベル付けされた移動軌跡を用いて、サブクラス間の類似度を表す距離を算出する処理部である。本実施の形態では、移動する物体の形状変化を捉えるとともに、距離の計算時間を短縮するために、サブクラス分類部103は、サブクラス内距離とサブクラス間距離とを用いて、サブクラス間の近似的な測地距離であるサブクラス間近似測地距離を算出する。つまり、サブクラス間近似測地距離算出部104は、サブクラスごとに、当該サブクラスに属する移動軌跡と他のサブクラスに属する移動軌跡との間の線形距離の最小値を含む距離であるサブクラス間距離を用いて、当該サブクラスと他のサブクラスとの間の類似性を表すサブクラス間近似測地距離を算出する。ここで、測地距離とは、中継点としての移動軌跡をたどりながら一の移動軌跡から他の一の移動軌跡にたどりつく経路の距離である。また、サブクラス内距離は、同一のサブクラスにラベル付けされた移動軌跡を用いて算出される距離であり、同一のサブクラスに属する移動軌跡間の類似性を表す距離である。サブクラス間距離は、異なる2つのサブクラスに属する移動軌跡間の線形距離の最小値を含んだ距離である。なお、より距離計算の計算量を削減したい場合には、サブクラス内距離を用いずにサブクラス間距離をサブクラス間近似測地距離として代用しても構わない。なお、距離は類似性を表し、例えば、距離が大きい場合は類似性が低く、距離が小さい場合には類似性が高い。
 ここでは、S個のサブクラスを用いた場合、算出されるサブクラス間近似測地距離はS行S列(S×S)の距離マトリクスとなる。このように、異なる2つのサブクラス間に属する移動軌跡の類似性を評価する距離を計算することによって、ブロック間の線形距離が動きによって変化する移動体、特に、関節物体のように形状が変化しながら移動する人物等の物体の動きを、近似測地距離マトリクスとして表現することが可能である。これにより、関節物体の動きに対して頑健な被写体抽出が可能になる。ここで、本明細書における「距離」は、2次元空間における2点間の距離だけでなく、後述するように、多次元のデータ間の算術的な距離を含み、1つの値、あるいは、複数の値の集合(距離マトリクス)である。
 領域分割部105は、サブクラス間近似測地距離算出部104で算出されたサブクラス間近似測地距離に基づいて、類似する移動軌跡からなるサブクラスの集まりを1つのクラスとして特定することによって、領域分割を実行する処理部である。つまり、領域分割部105は、サブクラス間近似測地距離算出部104で算出されたサブクラス間近似測地距離に基づいて、類似する移動軌跡からなるサブクラスの集まりに対して統合・非統合の判断をする。そして、サブクラスをクラスに分類することで、動画像中の移動体を検出する。ここでは、一つのクラスが一つの被写体もしくは被写体の部位に対応するため、クラスに分類することができれば、移動体の領域を特定することになり、移動体を検出できる。なお、クラスはサブクラスの集合である。
 出力部106は、領域分割部105で行った動画像中の移動体の検出結果を出力する。具体的には、出力部106は、画像入力部101で受け付けた複数枚のピクチャのうち少なくとも1枚のピクチャに対して、例えば、領域分割部105により検出された移動体の領域ごとに異なる表示態様となるように、画像処理を施し、画像処理が施された領域を含むピクチャをディスプレイ装置等に出力する。
 なお、本明細書において、「領域」とは、ある特定の対象物が存在する画像領域を抽出する検出技術と、対象物の区別なく物体ごとに画像領域(移動軌跡)を分類するクラス分類技術の両者を含んでいる。なお、検出技術とクラス分類技術とは、共通する部分が多いため、本願発明書においては両者を区別しない。
 なお、上記した移動体検出装置100を構成する各構成要素(画像入力部101、移動軌跡算出部102、サブクラス分類部103、サブクラス間近似測地距離算出部104、領域分割部105、出力部106)は、コンピュータ上で実行されるプログラム等のソフトウェアで実現されてもよいし、電子回路または集積回路等のハードウェアで実現されてもよい。図2は、ソフトウェアによって実現される本実施の形態における移動体検出装置のハードウェア構成を示す図である。図2において、カメラ201は、画像を撮影して出力する。コンピュータ202は、カメラ201から画像を取得して移動体検出処理を行って、移動体検出結果を表示する画像を生成する。ディスプレイ203はコンピュータ202で生成された画像を取得して表示する。コンピュータ202は、I/F204、CPU205、ROM206、RAM207、HDD208およびビデオカード209を含む。コンピュータ202を動作させるプログラムは、ROM206またはHDD208にあらかじめ保持されている。プログラムは、プロセッサであるCPU205によって、ROM206またはHDD208からRAM207に読み出されて展開される。CPU205はRAM207に展開されたプログラム中のコード化された各命令を実行する。I/F204は、プログラムの実行に応じて、カメラ201で撮影された画像を、RAM207へ取り込む。ビデオカード209は、プログラムの実行に応じて生成された画像を出力し、ディスプレイ203がその画像を表示する。
 なお、コンピュータプログラムは、半導体であるROM206またはHDD208に限られず、例えば光ディスクに格納されていてもよい。また、有線や無線のネットワーク、放送などを介して伝送され、コンピュータのRAM207に取り込まれてもよい。
 以下、本実施の形態における移動体検出装置100の動作を、図3を用いて説明する。
 図3は、本実施の形態における移動体検出装置100の動作を表すフローチャートである。
 図3において、7つのステップS301~S306は、それぞれ図1の各処理部に対応している。すわなち、画像入力部101では画像入力ステップS301、移動軌跡算出部102では移動軌跡算出ステップS302、サブクラス分類部103ではサブクラス分類ステップS303、サブクラス間近似測地距離算出部104ではサブクラス間近似測地距離算出ステップS304、領域分割部105では領域分割ステップS305、出力部106では画像出力ステップS306の各動作を実行する。
 画像入力ステップS301において、画像入力部101は、カメラ201から、動画像を構成する複数のピクチャを取得する。ここではT枚のピクチャが入力されたものとする。
 次に、移動軌跡算出ステップS302において、移動軌跡算出部102は、入力された複数のピクチャ間の動き情報を算出し、移動軌跡を生成して出力する。複数(T枚)のピクチャ間の動き情報を算出する手法として、ここでは複数のピクチャのうちのある1つのピクチャ上のI点の画素を基準に、他のT-1枚のピクチャ中の対応する画素を探索する。なお、I点の画素の代わりに、I個の小矩形領域(ブロック)を基準にして、対応する小矩形領域の位置を探索しても良い。例えば、図4(a)に示すように、移動軌跡算出部102は、時刻tと時刻t+1に撮影されたピクチャを用いて、時刻tのピクチャ上の画素iの画素座標(xit,yit)(i=1…I)に対応する、時刻t+1のピクチャ上の画素座標(xit+1,yit+1)を推定する。この時、移動軌跡算出部102は、時刻tにおける小矩形領域404(ブロック)を、時刻t+1のピクチャ上でスキャン(破線)し、時刻tにおける小矩形領域内の画素値と時刻t+1における小矩形領域内の画素値との差の総和が最も小さい時の画素座標(実線矢印の指す座標)を、対応する画素座標として推定する。画素座標は、ブロックの中心位置を示す画素座標を用いればよい。ここで、小矩形領域404をスキャンする範囲は予め決定しておいても構わない。また、ブロック同士の違いを評価する尺度としては、画素値の差の総和に限定されるものではなく、比較するブロック内の画素値の違いを示す尺度であれば他のものであってもよい。例えば、時刻tにおける小矩形領域内の画素値と時刻t+1における小矩形領域内の画素値との平均2乗誤差を用いてもよいし、メディアン等の外れ値(アウトライア)の影響を受けにくい値を用いてもよい。ピクチャが3枚以上ある場合は、移動軌跡算出部102は、図4(b)に示すように、隣接する2枚のピクチャ間で順次対応する座標を求めていくことで、入力したT枚のピクチャについて、I点の対応点を算出する。なお、対応する座標を求めるために用いられる2枚のピクチャは、必ずしも隣接している必要はない。例えば、2枚のピクチャ間に他の1枚以上のピクチャが挟まっていてもよい。
 上記した複数のピクチャ間の対応点を算出する他の具体的な手法としては、非特許文献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
 そして、この移動軌跡算出ステップS302では、移動軌跡算出部102は、I点の画素のT枚のピクチャにわたる動き情報である、対応点の画素座標の組から、画素ごとに対応する移動軌跡を、I本生成する。画素iの移動軌跡xは、第1フレームのピクチャ上のある画素iの座標値(x ,y )と、対応点の画素座標(x ,y )とを用いて、下記式1のように示される。
Figure JPOXMLDOC01-appb-M000001
 ここで、Tは移動軌跡の算出に用いたピクチャの枚数である。
 図4(b)は、移動軌跡xの一例を示す図である。移動軌跡xは、時刻tから時刻t+(T-1)のT枚の入力画像401において、第1フレームのピクチャ上の画素i403から、他のピクチャ上の画素i403に対応する画素への動き情報402から算出した、画素座標の集まりからなるベクトルである。
 次に、サブクラス分類ステップS303において、サブクラス分類部103は、式1に示したI本の移動軌跡をS個のサブクラスに分類する。サブクラスへの分類については、図5を用いて説明する。例えば、図5(a)に示すように、第1フレームのピクチャに含まれる被写体501Aおよび501Bが、第Nフレームにおいて被写体502Bおよび502Bの位置にそれぞれ移動したとする。そのときの被写体501Aおよび501Bの移動軌跡は、各々、複数の移動軌跡503Aおよび503Bで示される。ただし、図5(a)では、説明の簡略化のために移動軌跡の一部分のみを示している。
 サブクラスへの分類は、類似した移動軌跡を同一のサブクラスに分類できれば良いため、さまざまな方法を用いることができる。例えば、式1に示したI本の移動軌跡を入力として、非特許文献6のpp.526-528に示されるようなk-means法を用い、サブクラス数をS個と設定すれば、図5(b)のように、移動軌跡ベクトルが成す多次元空間上で移動軌跡ベクトルをサブクラスとして分類することができる。ここで、図5(b)の○は、破線の矢印で示すように図5(a)の各移動軌跡に対応する多次元空間上の点を示している。説明のため、移動軌跡に対応する点を3次元の空間図上で示しているが、移動軌跡ベクトルが存在する空間は、実際は式1で示される、次元数が2×Tの多次元空間である。そこで、図5(c)に示すように、前記多次元空間上で、類似した移動軌跡を同一のサブクラスとして、I本の移動軌跡をS個のサブクラスに分類することができる。
 さらには、I本の移動軌跡を入力として、非特許文献6のpp.550-555に示すようなデンドログラムをベースとしたクラスタリングアルゴリズムを用いることもできる。ここでは、最も類似度の高い(最も距離が小さい)移動軌跡のペアを順次同一のサブクラスとする処理をサブクラス数がS個になるまで繰り返し行うか、もしくは、規定回数行う。この結果、図5(c)のように、類似した移動軌跡を同一のサブクラスとして、I本の移動軌跡をS個のサブクラスに分類することができる。なお、ここで、移動軌跡の類似度は、移動軌跡ベクトル間のユークリッド距離を用いても良いし、前記ユークリッド距離に対して、サブクラスに属する移動軌跡の数を用いて正規化を行った距離を用いても良い。
 例えば、移動軌跡ペアの類似度(距離)を計算する時に、同一のサブクラスに属する移動軌跡の数を用いて正規化する処理を行えば、図5(d)のように各サブクラスのサイズが均一になりやすい。すなわち、各サブクラスに属する移動軌跡の数のばらつきが小さくなる。なお、距離または類似度は、上記の算出方法により算出される距離または類似度に限定するものではなく、移動軌跡ベクトル間の類似性を判定できる距離または類似度であれば良い。なお、これらの場合は、距離が小さいほど、類似度が大きいということになる。すなわち、ここでは、類似度が最も大きいか、距離が最も小さい移動軌跡のペアを同一のサブクラスとする処理を行う。このように、移動軌跡をサブクラスへ分類した結果は、図5(d)のようになる。すなわち、各移動軌跡にサブクラスのラベルが付与された結果、類似した移動軌跡が同一のサブクラスに分類されることになる。例えば、対象が人物であれば、人物のボディを図5(d)のように細かく分割したような結果を得ることができる。
Richard O.Duda, Peter E.Hart and David G Stork, "Pattern Classification", John Wiley & Sons, Inc., 2001
 上記のようなクラスタリングアルゴリズムを用いた処理により、各移動軌跡xは、下記式2に示すように、それぞれサブクラスDjのいずれかに属することになる。すなわち、各移動軌跡には、サブクラスDjのラベルがそれぞれ付与されることになる。
Figure JPOXMLDOC01-appb-M000002
 なお、サブクラスに対応する領域のサイズが検出したい移動体の最小サイズと同じか、それより小さいサイズになるように、サブクラスへの分類を行っても良いし、サブクラス数が、あらかじめ想定される被写体数よりも多くなるようにサブクラスへの分類を行っても良い。
 次に、サブクラス間近似測地距離算出ステップS304において、サブクラス間近似測地距離算出部104は、サブクラス分類ステップS303にて付与したサブクラスラベルとそれに属する移動軌跡を用いて、サブクラス間近似測地距離を算出する。ここで、測地距離を計算するメリットについて図6を用いて説明する。ここでは、線形距離と測地距離の違いを分かりやすく説明するため、時刻tにおける移動軌跡間距離を例とする。例えば、サブクラスDa602に属する頭部の画素とサブクラスDb603に属する手先部の画素との間の線形距離601は、図6(a)に示す距離となる。一方、測地距離の場合は、図6(b)に示されるように、サブクラスDa602に属する頭部の画素とサブクラスDb603に属する手先部の画素との測地距離は、中継点としてサブクラスDc604に属する画素を通ってサブクラスDb603に属する手先部の画素にたどり着くまでの矢印で示したような距離の和となる。そのため、図6(a)に示される線形距離601では人物のような関節で連続的に繋がった形状をデータとして連続的に表現できないのに対して、図6(b)に示される測地距離によれば、関節で連続的に繋がった形状を距離として連続性を表現することが可能となるという効果がある。
 なお、測地距離の算出時には、図6(a)に示すように、サブクラスDa602に属する頭部の画素とサブクラスDb603に属する手先部の画素との間の直線距離の計算ではなく、図6(b)に示すように、2点間を中継点を通って辿る最短経路を探索する計算が必要になる。最短経路探索のための効率的な計算方法については、例えば非特許文献7に示されるダイクストラ法が広く知られているが、この手法を用いても特に移動軌跡の数が多くなればなるほど、計算量は膨大になることが非特許文献3で報告されている。
E.W.Dijkstra,"A note on two problems in connexion with graphs",Numerische Mathematik,pp.269-271,1959
 そこで、サブクラス間近似測地距離算出ステップS304では、測地距離と同様の性質を有する距離の計算を、より少ない計算量で実現することを目的として、サブクラス間近似測地距離算出部104は、サブクラス間近似測地距離を計算する。ここで、サブクラス間の測地距離を近似する方法について説明する。例えば、図7(a)に示すように、画素iの移動軌跡と画素jの移動軌跡との測地距離を求める場合、非特許文献7に示されるダイクストラ法を用いたとしても、画素iの移動軌跡と画素jの移動軌跡とを繋ぐ距離の候補を複数個(実線および破線)計算し、その中から最小となる距離(実線)を選ぶ必要がある。このため、候補となる距離を計算する過程で多くの計算量が必要となる。
 しかしながら、サブクラス分類ステップS303にて、類似した移動軌跡を同一のサブクラスに分類するため、同一サブクラスに分類された移動軌跡は、類似したものであるとの仮定をすることができる。すなわち、図5に移動軌跡をサブクラスに分類した例を示したように、同一のサブクラス内に属する移動軌跡は、大きな形状変化を起こさない剛体の移動軌跡と考えることができる。そして、剛体の移動軌跡の場合は、測地距離と線形距離との差は小さいと考えることができる。そこで、サブクラス内の移動軌跡については、線形距離と測地距離との差が小さいとして、測地距離の平均を図7(b)に示すような線形距離の平均で近似する。すなわち、サブクラス内の線形距離の平均
Figure JPOXMLDOC01-appb-M000003
とサブクラス内の測地距離の平均
Figure JPOXMLDOC01-appb-M000004
との関係は下記式3のように表せる。
Figure JPOXMLDOC01-appb-M000005
 次に、異なるサブクラスに属する移動軌跡間の距離であるサブクラス間距離について説明する。非特許文献7に開示されている方法を用いてサブクラス間距離を計算する場合について例を挙げる。例えば、図7(a)のサブクラスDaに属する画素jの移動軌跡とサブクラスDbに属する画素kの移動軌跡との測地距離を求める場合、画素jの移動軌跡と画素kの移動軌跡とを繋ぐ距離の候補を複数個(実線および破線)計算し、その中から最小となる距離(実線)を選ぶ必要がある。しかしながら、前述したように、サブクラス内の移動軌跡については、線形距離で近似可能である。このため、一方のサブクラスともう一方のサブクラスとを繋ぐ距離が重要となる。ここでは、図7(b)に示すように、一のサブクラスと他のサブクラスとを繋ぐ最小の距離をサブクラス間の距離として定義する。この方法によれば、図7(a)に示すような、2点間を中継点を通って辿る最短経路を探索する処理を行う必要がなく、サブクラスDaとサブクラスDbにそれぞれ属する移動軌跡間の線形距離の最小値fmin Interを求めるだけで良い。さらには、よりノイズに頑健にするためには、サブクラスDaとサブクラスDbにそれぞれ属する移動軌跡間の距離が小さい順に複数個の距離を選択し、選択された距離の平均値をfmin Interとしても良いし、選択された距離のメディアン値をfmin Interとしても良い。
 そして、図7(b)に示すようにサブクラス間近似測地距離g’は下記式4のように表現できる。
Figure JPOXMLDOC01-appb-M000006
 サブクラス間近似測地距離g’は、必ずしも上記式4に限定されるわけではなく、例えば、fmin Interをサブクラス間近似測地距離g’としても構わない。
 図7(c)に示すように、サブクラス内の距離とサブクラス間の距離とを用いることで、上記のようにサブクラス間近似測地距離を算出することが可能である。
 具体的な計算例について、図8を用いて詳しく説明する。図8(a)において、楕円はそれぞれサブクラスを示す。すなわち、各楕円にはそれぞれのサブクラスに属する移動軌跡が含まれている。また、図8(a)に示すように、多次元空間中でサブクラスDaとサブクラスDbとが隣接し、サブクラスDbとサブクラスDcとが隣接しているものとする。そこで、サブクラス間近似測地距離算出部104は、サブクラスごとに、同一のサブクラス内に属する移動軌跡を用いて、移動軌跡間の距離を下記式5に従い計算する。
 サブクラスDaに属する画素iの移動軌跡と画素jの移動軌跡との距離faa(i,j)は、下記式5により算出できる。
Figure JPOXMLDOC01-appb-M000007
 なお、サブクラスDaに属する画素iの移動軌跡と画素jの移動軌跡との距離faa(i,j)を算出する式として、上記式5の代わりに下記式6を用いてもよい。
Figure JPOXMLDOC01-appb-M000008
 ここで、wは重み係数であり、設計者が設定するパラメータである。上記式6のサブクラスDaに属する画素iの移動軌跡と画素jの移動軌跡との距離faa(i,j)は、移動軌跡間距離の時間平均値ptnijに、移動軌跡間距離の時間変動成分mtnijを加えたものである。特に移動軌跡間距離の時間変動成分mtnijは、画素の動きの類似度を示すものであり、これによって、画素間のなす距離の関係が時間的に変化しない剛体だけでなく、形状変化する関節物体等をも捉えることができる。このように、式5または式6による距離計算をサブクラスごとに行う。図8の例であれば、サブクラスDaからDcのそれぞれについて、同一のサブクラスに属する移動軌跡を用いて距離を計算する。なお、同一のサブクラスに属する画素iの移動軌跡と画素jの移動軌跡との距離faa(i,j)は、必ずしも上記に限られるものではなく、例えば、移動軌跡ベクトル同士の内積やCOSを用いても良く、移動軌跡間の画素上での距離や動きの類似性を表す尺度であれば良い。
 次に、下記式7に従い、サブクラスごとに移動軌跡間の距離faa(i,j)の平均値、すなわちサブクラス内距離を求める。
Figure JPOXMLDOC01-appb-M000009
 ここで、Nは、移動軌跡iとjの組合せの数である。なお、移動軌跡間の距離faa(i,j)の最頻値やメディアン値をサブクラス内距離としてもよい。サブクラス内距離は、同一のサブクラスに含まれる移動軌跡から、任意の移動軌跡間の距離faa(i,j)から算出可能であり、必ずしもNはすべての移動軌跡iとjの組合せである必要はない。また、式7の代わりに、複数のiとjの組合せにおけるfaa(i,j)を算出し、その最大値をサブクラス内距離としても良い。
 次に、サブクラス間近似測地距離算出部104は、サブクラス間距離を以下の式8に従い求める。
Figure JPOXMLDOC01-appb-M000010
 式8は、異なるサブクラスに属する移動軌跡i,jの距離の中で最も小さい距離を算出するものである。さらに、サブクラス間距離の算出方法は、これに限定されるわけではなく、例えば、異なるサブクラスに属する移動軌跡i,jの距離の中で、小さい順にN個選択しその平均値をサブクラス間距離としても良いし、さらにそれに重み付けをしても良い。さらには、上記N個の中からメディアン値をサブクラス間距離としても良い。
 ここで、式8を用いて算出したサブクラス間距離fmin Interがあらかじめ設定した閾値よりも大きい場合には、サブクラス間距離fmin Interを無限大とする処理を行っても良い。例えば、入力画像のサイズを640×480とし、移動軌跡を4×4のグリッドに区切りグリッド上を通過する移動軌跡のみを用いて、サブクラス間距離fmin Interを算出した場合には、前記閾値を10.0程度とすると良好な結果が得られる。もちろん、画像のサイズや移動軌跡の空間的な密度(上記グリッドサイズが大きいほど密度が小さい)によって上記パラメータを調整することが望ましい。
 以上のようにして、式7および式8に従って計算したサブクラス内距離とサブクラス間距離とを用いて、式4によりサブクラス間近似測地距離を算出することができる。
 そして、下記式9に示されるサブクラスを構成要素としたS×Sのサブクラス内距離・サブクラス間近似測地距離マトリクスG’を生成する。ここでは、図8(b)に示すように、サブクラス内距離・サブクラス間近似測地距離マトリクスG’の対角の要素がサブクラス内距離となり、それ以外は、サブクラス間近似測地距離となる。
Figure JPOXMLDOC01-appb-M000011
      
 ここで、s,sは、サブクラスのインデックスである。
 つぎに、前述したように、fmin Interがあらかじめ設定した閾値よりも大きい場合に、fmin Interを無限大とする処理を行い、無限大となったサブクラス間近似測地距離を、次のように再計算しても良い。
Figure JPOXMLDOC01-appb-M000012
 上記式10において、min(x,y)は、値xと値yのうち小さい方を返す関数である。
 図8(a)に示すように、サブクラスDa,Dc間の近似測地距離を計算する場合には、サブクラスDbは、サブクラスDaからサブクラスDcに辿(たど)りつくための中継点として機能する。ここで、中継点は1点に限るものではない。
 上述した測地距離の算出における2点間の最短経路探索には、例えば非特許文献4のダイクストラ法を用いることができる。これにより、中継点の数は1点に限定することなく最短経路探索を行うことができる。ダイクストラ法の計算量のオーダーは、データ点数をNとすると、NlogNで表される。ここで、ステップS303およびステップS304の処理を実行せずにダイクストラ法を行った場合の移動軌跡の数Nとし、サブクラス間近似測地距離を算出する際のサブクラス数をMとする。例えば、100個の類似した移動軌跡が1個のサブクラスに分類されるように処理を行えば、ここでダイクストラ法を用いたとしても、ダイクストラ法の計算量は1/20000に削減されるという効果がある。このように、ダイクストラ法は、移動軌跡の数が増えるほど、非線形的に計算量が増加する。その一方で、ステップS303におけるサブクラスラベル付与に要する計算量の増加は、移動軌跡の数に対して線形である。そのため、画像サイズが大きい場合や、移動軌跡を空間上で高密度に算出する場合において、近似測地距離を算出する本発明によると、移動軌跡の数が増える条件下で特に計算量削減の効果がある。
 次に、領域分割ステップS305において、領域分割部105は、サブクラス間近似測地距離を用いて、類似する移動軌跡(サブクラス)の集まりに対して統合・非統合の判断を行う。ここでは、サブクラスの統合・非統合を判断可能な手法であればどのような方法を用いても良い。例えば、非特許文献1に記載の方法を用いることもできる。式9で表したサブクラス内距離・サブクラス間近似測地距離マトリクスG’に対して、次元圧縮を行い、圧縮された空間上でK-means法などのクラスタリング手法を用いて、サブクラスの統合・非統合を判断しても良い。もちろん、クラスタリング手法はK-means法に限らない。以下に具体的に説明する。
 まず、領域分割部105は、ステップS304で算出したサブクラス内距離・サブクラス間近似測地距離マトリクスG’の次元圧縮を行う。次元圧縮は、Young-Householder変換を行った後、Eigen systemを求めることで実現できる。これは、多次元空間に分布するデータを低次元空間に効率良く射影するための方法であり、入力データのノイズ(ここでは、上記式2の画素iの時間的移動軌跡を算出する際に画素iの動き情報に誤差が含まれる場合に相当する)や、上記式4におけるサブクラス間距離fmin Interのノイズに対して頑健なデータの表現が可能となる。
 つまり、上記式9に示したサブクラス内距離・サブクラス間近似測地距離マトリクスG’に対して、下記式11に示すように、中心化行列Hを両側からかけるYoung-Householder変換を行う。これは、距離マトリクスが点間距離からなる距離行列であるのに対して、重心を原点とした距離マトリクスに変換するために行うものである。
Figure JPOXMLDOC01-appb-M000013
 ただし、Hは中心化行列であり、
Figure JPOXMLDOC01-appb-M000014
である。Iは単位行列、Nはサブクラスの数である。
 また、
Figure JPOXMLDOC01-appb-M000015
である。ここで、s,sは、サブクラスのインデックスである。
 次に、領域分割部105は、次元圧縮を行うために、τ(G)に対するP個の固有ベクトル(eigen vector)eおよびそれに対応する固有値(eigen value)λを算出する。
 これにより、
Figure JPOXMLDOC01-appb-M000016
とすると、g’を次元圧縮された空間上に射影した結果は、データz として以下のように表すことができる。
Figure JPOXMLDOC01-appb-M000017
 なお、e は、p番目の固有ベクトルeのa番目の要素である。固有ベクトルの数Pは、利用するシーンに応じて実験的に決定しても良いし、以下のように固有値λから寄与率αを算出し、それに基づいて決定しても良い。
Figure JPOXMLDOC01-appb-M000018
 ここで、Pは利用する固有ベクトルの数、すなわち圧縮された空間の次元数である。Nは全固有ベクトルの数である。そこで、寄与率αが一定値以上となる時の数Pを固有ベクトルの数とすれば良い。
 以上のように式2から式16に基づく処理により、式2に示した画素iの時間的移動軌跡をサブクラスに分類し、分類されたサブクラスとそれに属する移動軌跡から生成したサブクラス内距離・サブクラス間近似測地距離マトリクスG’とを用いて、固有ベクトルeで張られる次元圧縮された空間上のデータz を得ることができる。
 図9を用いて、領域分割部105の処理の具体例について説明する。
 図9(a)は、人物の歩行画像を入力としたときの、移動軌跡a~hを示し、図9(b)は、各々類似した移動軌跡が分類された複数のサブクラスが、次元圧縮された空間に射影された結果を示す。縦軸、横軸は固有ベクトルe,eである。2次元上に射影された点(z ,z )は、式14に示したg’を射影したものである。ここで、非線形空間上のデータz とサブクラスDaとは一対一の関係にあるため、サブクラスDaに属する画像上での画素iの移動軌跡xDaは非線形空間上のデータz と対応させることが可能である、なお、ここでは結果を可視化するために非線形空間の次元数を2次元としたが、必ずしも2次元である必要は無いし、高い次元数の方がより高い精度でデータを射影することができる。次元数については、2次元以上、式1に示した移動軌跡ベクトルの次元数以下に設定することが望ましい。
 次に、領域分割部105は、圧縮された非線形空間に射影されたデータに対して、サブクラスの統合・非統合を判定することで移動体の検出を行う。
 まず、クラスを次のように表現する。ここで、クラス数は移動体の数に対応する。
Figure JPOXMLDOC01-appb-M000019
 ここで、Mは、クラス数であり利用するシーンに応じて経験的に決定する。
 それぞれのクラスθは、パラメータ
Figure JPOXMLDOC01-appb-M000020
およびパラメータZで表現する。ここで、
Figure JPOXMLDOC01-appb-M000021
は、圧縮された非線形空間におけるクラスθに属する射影されたデータの座標値の平均値、Zは、クラスθに属する射影されたデータの座標値に関する共分散行列である。
Figure JPOXMLDOC01-appb-M000022
の初期値はランダムに決定しても良いし、圧縮された非線形空間中をグリッドで等間隔に分割する等して、その交点の座標値を初期値としても良い。
 なお、
Figure JPOXMLDOC01-appb-M000023
およびZは、以下の式18および式19のように表すことができる。
Figure JPOXMLDOC01-appb-M000024
Figure JPOXMLDOC01-appb-M000025
 ここで、Cは圧縮された非線形空間上でクラスθに属するデータ数である。
 以下、具体的な計算方法について説明する。まず、次式の距離関数を用いて、圧縮された非線形空間上のデータzが属するクラスθを求める。
Figure JPOXMLDOC01-appb-M000026
 ここで、ψ(z)は、画素iの時間的な移動軌跡に対応する非線形空間上のデータzとそれぞれのクラスθとの距離を示すものである。各データは、ψ(z)が最小値をとるクラスθに属することになる。なお、φ(z)はマハラノビス距離であり、次式21で表すことができる。
Figure JPOXMLDOC01-appb-M000027
 また、φ(z)をψ(z)の代わりとして用いても構わない。
 さらに、p(ω)は、一定値としても構わないし、人物など決まった移動体の抽出を行う場合は、あらかじめ、人物部位の形状や面積比等をもとに設定しておいても良い。ωは、クラスθに対する重み係数である。
 次に、式20の計算結果から、クラスθに属するデータzを用いて、以下の式22および式23のようにクラスθのパラメータ
Figure JPOXMLDOC01-appb-M000028
およびZを更新する。
Figure JPOXMLDOC01-appb-M000029
Figure JPOXMLDOC01-appb-M000030
 ここで、zcmは、クラスθに属する圧縮された非線形空間上のデータである。また、ω=1としても良いし、入力データの平均値からのずれ具合によってωの値を調整しても良い。このように、領域分割部105は、式20から式23で示される距離計算およびパラメータ更新を規定回数繰り返すことによって、非線形空間上の各データが属するクラスθを得ることができる。なお、上記の代わりとして、k-means法、競合学習など、他のクラスタリング方法を用いても構わない。なお、サブクラス内距離・サブクラス間近似測地距離マトリクスG’の次元圧縮は必須の処理ではなく、サブクラス内距離・サブクラス間近似測地距離マトリクスG’からスペクトラルクラスタリングによって、クラスタリングを行うことで、領域分割を行っても良い。例えば、スペクトラルクラスタリングについては、非特許文献8の手法を用いることができる。
Arik Azran  and Zoubin Ghahramani,"Spectral Methods for Automatic Multiscale Data Clustering", Proc. IEEE Computer Society Conference on Computer Vision and Pattern Recognition 2006 (CVPR06)
 このようにして、クラスタリングによるクラス判定が行われた結果、図9(c)に示すようにサブクラスDaからDdに属する移動軌跡は、一つのクラスθに統合され、サブクラスDeからDhに属する移動軌跡は、もう一つのクラスθに統合される。各移動軌跡にクラスラベルが付与されるため、クラスラベルごとに移動軌跡をまとめると、図9(d)に示すように被写体を抽出することができる。なお、圧縮された非線形空間上のクラスに対応するのは、1枚の画像上の領域だけではなく時間的に連続した複数枚の画像に渡って画素を追跡した結果である。すなわち、領域分割部105は、圧縮された非線形空間上でセグメンテーションを行うことによって、画像中を移動する物体の領域を時間的に追跡した結果として、画像中の被写体(被写体の部位)の検出、被写体を含む画像のセグメンテーションをすることができる。また、前処理として人物候補領域を設定する必要がないため、人物候補領域の検出ミスに起因するセグメンテーションの失敗がない。
 以上のように、本実施の形態によると膨大なパラメータのフィッティングを必要とせずに、非線形空間でクラスタリングを行うことによって安定に、形状が変化しながら移動する人物等を含む画像に対して、高速に被写体の検出を行うことが可能となる。
 つまり、近似測地距離を算出することによって、近似を行わずに測地距離を算出する場合と比較して、高速に連続的かつ非線形に分布するデータを効率良く表現可能である。また、測地距離の性質を保ちながら、形状が変化しながら移動する人物等の移動体を含む画像に対しても、移動体の姿勢あるいは大きさの影響を受けずに、正しく領域抽出することができる。
 また、形状が変化しながら移動する人物等の移動体を含む画像に対しても、移動体の姿勢あるいは大きさの影響を受けずに、高速かつ正しく移動体を検出および部位を領域抽出することができる。さらに、検出と領域抽出を行った結果を用いて、移動体の移動予測等を行うことも可能である。
 よって、デジタルビデオカメラ等の動画像撮影装置が普及してきた今日において、デジタルカメラの焦点制御や画質改善処理、自動車の安全運転支援システム、ロボットにおける人との衝突回避制御や警報などへの応用技術として、本発明の実用価値は極めて高い。
 (実施の形態2)
 次に、本発明の実施の形態2における移動体検出装置について説明する。
 ここでは、サブクラス分類部103によるサブクラス分類処理を、実施の形態1とは異なる方法で行う例について説明する。図10は、実施の形態2における移動体検出装置100aの構成を示す図である。
 実施の形態2に係る移動体検出装置100aは、画像入力部101と、移動軌跡算出部102と、サブクラス分類部103aと、サブクラス間近似測地距離算出部104と、領域分割部105と、出力部106とを含む。
 このような実施の形態2に係る移動体検出装置100aは、実施の形態1に係る移動体検出装置100とサブクラス分類部103aの構成を除いて、同じ構成であるため、同一構成要素の説明は省略する。
 サブクラス分類部103aは、画像入力部101で受け付けた複数枚の画像のうち少なくとも1枚の画像から、輝度、エッジ情報、色などを用いて、類似した画像領域を同一のサブクラスに分類する処理を行う。次に、サブクラス分類部103aは、移動軌跡算出部102で算出された移動軌跡に対して、移動軌跡が通る画像領域のサブクラスラベルを付与する。つまり、サブクラス分類部103aは、同一の画像領域を通る移動軌跡に同一のサブクラスラベルを付すことにより、同一のサブクラスに分類する。実施の形態1と異なるのは、サブクラスへの分類を移動軌跡ではなく、画像の情報から行い、その情報に基づいて、移動軌跡に対してサブクラスラベルを付与する点である。なお、サブクラス分類部103aにおける画像領域のサブクラス分類処理は、移動軌跡に関する情報を用いずに行うことができる。そのため、必ずしもサブクラス分類処理は、移動軌跡算出部102の処理の後に行う必要はなく、両者を並列に処理してもよいし、画像領域のサブクラス分類処理を移動軌跡算出部102の処理より前に行ってもよい。
 以下、本実施の形態1の第1変形例の移動体検出装置100aの動作を、図11を用いて説明する。
 ステップS301、S302については、実施の形態1と同様であるため、説明を省略する。次に、サブクラス分類ステップS303aにおいて、サブクラス分類部103aは、画像入力ステップS301で入力された複数の画像のうち少なくとも1枚の画像を用いて、画像の領域分割を行う。ここでは、画素(輝度)値や色情報、エッジ情報等とその位置情報などを入力として領域分割を行う手法であれば何でもよく、例えば、非特許文献9の方法を用いることができる。
 非特許文献9の方法では、エッジ情報や空間近傍の画素値のスムーズネスを用いて画像領域を複数の小さな領域に分割する。例えば、対象が人物の場合は、図12(a)のように、人物を細かく分割したような結果となる。ここでは、例えばT枚のフレームの画像が入力された時に、その中から1枚の画像を選択して領域分割を行っても良い。ここで、複数の画像のうちの時間的に中間の画像を用いて領域分割を行うのが望ましいが、画像の選択に制限を加えるものではない。
 他にも、例えば、画素値と画素位置とを並べて3次元ベクトルとし、それを入力として、k-means法などのクラスタリングアルゴリズムにより画像領域を分割しても良いし、もちろん、RGBなどの色情報と画素位置情報とを並べて5次元ベクトルとしても良いし、さらには、エッジ情報として画素値の空間微分ベクトル(2次元)と画素位置とを並べて4次元ベクトルとしても良いし、空間的に画像を領域分割できる手法であれば良い。
 そして、分割された領域をサブクラスとして、領域分割を行うために選択した画像の時刻と移動軌跡算出ステップS302で算出した移動軌跡との関係から、移動軌跡にサブクラスラベルを付与する。
 具体的には、サブクラス分類部103aは、図12(b)に示すように、空間的に領域分割をした各領域をサブクラスと考え、領域分割のために選択した時刻t’の画像において、各移動軌跡がどのサブクラスを通過したかによって、サブクラスラベルを付与する。例えば、移動軌跡1から4は、それぞれ時刻t’において、サブクラスDaからDdをそれぞれ通過する。このため、サブクラス分類部103aは、移動軌跡1から4に、対応するサブクラスラベルaからdをそれぞれ付与する。このような処理を該当する移動軌跡に対して行えば、各移動軌跡xは、式2に示すように、それぞれサブクラスDjのいずれかに属することになる。すなわち、各移動軌跡には、実施の形態1のサブクラス分類ステップS303での処理と同様に、サブクラスDjのラベルがそれぞれ付与されることになる。
 サブクラス間近似測地距離算出ステップS304以降の処理は、実施の形態1と同じであるため、説明を省略する。
 以上のように、実施の形態2によると、移動軌跡から、画像中の被写体(被写体の部位)の検出をすることができる。また、前処理として人物候補領域を設定する必要がない。このため、人物候補領域の検出ミスに起因するセグメンテーションの失敗がない。さらに、実施の形態1と比べて、色や輝度などの情報を明示的に用いることができるため、例えば単一色の服などを着た被写体を検出する場合には、より高精度な移動体の検出が行える。以上のように、実施の形態2によると、膨大なパラメータのフィッティングを必要とせずに、非線形空間でクラスタリングを行うことによって安定に、形状が変化しながら移動する人物等を含む画像に対して、高速に被写体の検出を行うことが可能となる。
 つまり、近似測地距離を算出することによって、近似を行わずに測地距離を算出する場合と比較して、高速に連続的かつ非線形に分布するデータを効率良く表現可能である。また、連続的かつ非線形に分布するデータを効率良く表現可能な測地距離の性質を保ちながら、形状が変化しながら移動する人物等の移動体を含む画像に対しても、移動体の姿勢あるいは大きさの影響を受けずに、正しく領域抽出することができる。
 また、形状が変化しながら移動する人物等の移動体を含む画像に対しても、移動体の姿勢あるいは大きさの影響を受けずに、高速かつ正しく移動体を検出および部位を領域抽出することができる。さらに、検出と領域抽出を行った結果を用いて、移動体の移動予測等を行うことも可能である。
 よって、デジタルビデオカメラ等の動画像撮影装置が普及してきた今日において、デジタルカメラの焦点制御や画質改善処理、自動車の安全運転支援システム、ロボットにおける人との衝突回避制御や警報などへの応用技術として、本発明の実用価値は極めて高い。
 (実施の形態3)
 次に、本発明の実施の形態3における移動体検出装置について説明する。
 実施の形態3では、実施の形態1および2に加えて、サブクラス間近似測地距離の時間変化に基づいて、サブクラスの統合・非統合を判定する。
 このような実施の形態3に係る移動体検出装置100は、図1に示した実施の形態1に係る移動体検出装置100と同じ構成であるため、各構成要素の説明は省略する。ただし、領域分割部105が実行する処理の内容が実施の形態1とは異なる。以下、実施の形態1と異なる点を中心に、実施の形態3について説明する。
 以下、本実施の形態3の移動体検出装置100の動作を、図13を用いて説明する。
 まず、画像入力ステップS301からサブクラス間近似測地距離算出ステップS304までの処理は、実施の形態1と同様であるため、説明を省略する。なお、本実施の形態については、実施の形態1の例をもとに説明するが、実施の形態2で説明した方法にも適用可能である。
 次に、領域分割ステップS305aにおいて、領域分割部105は、時刻0からTまでの画像に対して、S301からS304までの処理で算出したサブクラス間近似測地距離と時刻Tから2Tまでの画像に対して同様に算出したサブクラス間近似測地距離とを用いて、その時間変化により、サブクラスの統合・非統合を判定する。
 図14(a)に、関節状に繋がった2つのサブクラスDa,Dbからなる物体の動きを例として、測地距離(○、実線)、サブクラス間近似測地距離(□、破線)、ユークリッド距離(△、破線)の時間変化を示す。ここでは、物体の動きが、人物の脚や腕のように関節状に繋がった動きであるため、同一の移動体として抽出することが望ましい。ここで、測地距離の時間変化と、サブクラス間近似測地距離の時間変化は大きくないが、一方でユークリッド距離の時間変化は大きく変動することが予想できる。すなわち、連続的に分布するデータを辿る距離を算出することによって、関節物体に対しても距離の時間変動が小さいことが、測地距離の利点であり、さらにそれと同じ性質を少ない計算量で実現可能とするのが、サブクラス間近似測地距離である。測地距離は、サブクラス間の測地距離の平均値であり、サブクラス間距離は、サブクラス間の線形距離の最小値を含んで算出される距離である。このため、図14(a)に示すように、測地距離とサブクラス間近似測地距離とは絶対値としての距離が異なる。しかし、関節物体のような動きに対しても距離の時間変動が小さい、すなわち、関節物体の姿勢変化による影響を受けにくい性質は、測地距離とサブクラス間距離ともに、ユークリッド距離よりも優れている。さらに、実際の実験結果を図14(b)に示す。図14(b)は、楕円状の2つの物体が関節で繋がっており、関節動きをする例を示している。画像は、画像入力ステップS301で6フレームごとにまとめて入力される。図14(b)は、60フレーム分の画像を用いて算出された各種距離の結果である。例えば、0から6フレームの画像から得られた距離は、横軸の0(フレーム)の位置にプロットされている。
 ここで、測地距離を、(○、実線)で示し、サブクラス間近似測地距離を(□、破線)で示し、ユークリッド距離を(△、破線)で示す。図14(b)から分かるとおり、各距離は、図14(a)と同様の性質を示しており、測地距離とサブクラス間近似測地距離は、時間的な変動がユークリッド距離と比較して小さい。すなわち、これらの距離は、関節動きに対して時間変動が少ないため、ユークリッド距離では、別々の被写体として分類される可能性がある物体に対しても、同一の被写体として判定しやすいという効果がある。
 そこで、具体的な、サブクラス間近似測地距離の時間変動によるサブクラスの統合・非統合の判定方法について次式で説明する。
 まず、領域分割部105は、以下の式24に基づいて、時刻0からTの画像および移動軌跡から算出したサブクラス間近似測地距離を用いて、時刻Tから2Tのサブクラス間近似測地距離を推定する。
Figure JPOXMLDOC01-appb-M000031
        
 ここでEは、推定値である。また、
Figure JPOXMLDOC01-appb-M000032
は、サブクラス内距離であり、Tは時刻0からTの画像、2Tは、時刻Tから2Tの画像から算出したサブクラス内距離、およびサブクラス間近似測地距離に対応する。
 なお、式24におけるサブクラス内距離は、特に移動体のサイズが変化した場合に対する正規化の効果を得るために導入したものであり、固定カメラにおいて、移動体のサイズ変動が無いシーンに対して適用する場合には、単純に次式としても良い。
Figure JPOXMLDOC01-appb-M000033
 そして、領域分割部105は、サブクラスDaとDbに対して、推定したサブクラス間近似測地距離と、時刻Tから2Tの実際のサブクラス間近似測地距離との差分の絶対値を次式のように計算し、サブクラス間近似測地距離の時間変化Kがあらかじめ設定した閾値以下であればサブクラスの統合を行い、時間変化Kが閾値よりもおおきければ、統合しない。
Figure JPOXMLDOC01-appb-M000034
 領域分割部105は、この処理を、全てのサブクラスのペアに対して行うことで、サブクラスの統合・非統合を判断し、最終的なクラスを生成する。図14の例であれば、時間変動が閾値以下であれば、サブクラスDaとDbは統合され、同じ移動体であると判定可能である。例えば、入力画像のサイズを640×480とし、移動軌跡を4×4のグリッドに区切り、グリッド上を通過する移動軌跡のみを用いてサブクラス間近似測地距離を算出した場合には、前記閾値を5.0程度とすると良好な結果が得られる。もちろん、画像のサイズや移動軌跡の空間的な密度(上記グリッドサイズが大きいほど密度が小さい)によって上記パラメータを調整することが望ましい。なお、ここでは、説明を容易にするために時刻0からT,Tから2Tの画像が入力されたとして説明を行ったが、時刻0からT、Tから2T,2Tから3T,...,(N-1)TからNTのように、より長い時間の変化に基づいて、サブクラスの統合・非統合を判定しても良い。
 例えば、図15(a)のように、式26の処理を時刻0からT、Tから2T,...,(N-1)TからNTまで、それぞれについて行い、式26においてそれぞれ算出した時間変化Kを平均した値を時間変化Kとしても良いし、現時刻に対してより近い時間平均Kほどより大きな重みを付けて求めた重み付け平均値を時間変化Kとしても良い。
 さらには、画像入力ステップS301にて、図15(b)のように、あらかじめ時刻0からNTの画像を入力し、それに対して、移動軌跡算出ステップS302,サブクラス分類ステップS303の処理を行い、サブクラス間近似測地距離算出ステップS304にて、時刻0からT,Tから2T,...,(N-1)TからNTのように画像を時間的に分割し、分割された画像を用いてそれぞれサブクラス間近似測地距離を計算する。そして、領域分割ステップS305aにて、上述したような、サブクラス間近似測地距離の時間変化によって、サブクラスの統合・非統合を判定しても良い。
 以上のように、実施の形態3によると、サブクラス間近似測地距離の時間変化によるクラスの統合・非統合判定を行うことによって、同一のクラスと判定されたサブクラスに属する移動軌跡に同じクラスラベルが付与される。このため、同一クラスラベルごとに移動軌跡をまとめると、図9(d)に示すように被写体を抽出することができる。その結果として、画像中の移動体(移動体の部位)の検出、移動体を含む画像のセグメンテーションをすることができる。また、前処理として人物候補領域を設定する必要がないため、人物候補領域の検出ミスに起因するセグメンテーションの失敗がない。以上のように、膨大なパラメータのフィッティングを必要とせずに、非線形空間でクラスタリングを行うことによって、安定に、かつ形状が変化しながら移動する人物等を含む画像に対して、高速に被写体の検出を行うことが可能となる。
 つまり、サブクラス間近似測地距離の時間変化を用いることで、関節を含む物体の動きや拡大、縮小に対しても同一の被写体として領域分割できるという効果がある。また、連続的かつ非線形に分布するデータを効率良く表現可能な測地距離の性質を保ちながら、少ない計算量で、形状が変化しながら移動する人物等の移動体を含む画像に対しても、移動体の姿勢あるいは大きさの影響を受けずに、正しく領域抽出することができる。
 また、形状が変化しながら移動する人物等の移動体を含む画像に対しても、移動体の姿勢あるいは大きさの影響を受けずに、正しく移動体を検出および部位を領域抽出することができる。さらに、検出と領域抽出を行った結果を用いて、移動体の移動予測等を行うことも可能である。
 よって、デジタルビデオカメラ等の動画像撮影装置が普及してきた今日において、デジタルカメラの焦点制御や画質改善処理、自動車の安全運転支援システム、ロボットにおける人との衝突回避制御や警報などへの応用技術として、本発明の実用価値は極めて高い。
 (実施の形態1から3の第1変形例)
 次に、本発明の実施の形態1から3の第1変形例における移動体検出装置について説明する。ここでは、実施の形態1から3においてクラス判定を行い、移動体を検出した結果をそれぞれ検出した領域ごとに記録・送信する機能を付加した例について説明する。なお、実施の形態1における変形例について述べるが、実施の形態2、3においても同様に適用可能である。
 図16に示すように、このような第1変形例に係る移動体検出装置100cは、画像入力部101、移動軌跡算出部102、サブクラス分類部103、サブクラス間近似測地距離算出部104、および領域分割部105に、記録・送信部1501を付加することによって実現が可能である。
 記録・送信部1501は、領域分割部105での被写体検出の結果に基づいて、画像入力部101で受け付けたピクチャにおける被写体領域を特定し、特定した被写体領域ごとに、当該被写体領域を示すための情報を、メモリやハードディスク等の記録媒体に記録する、または、通信インターフェース等を介して外部に送信する処理部である。つまり、この記録・送信部1501は、画像表示の場合と同様に、被写体を検出した結果を示す画像をクラスラベルθに応じてそれぞれ別々に記録・送信する。また、各クラスに属する動き情報を以下の式27および式28のように平均化することで、動き情報を圧縮することも可能である。通常であれば画素ごとに動き情報を保持する必要があるが、動き情報の平均化処理を行えば、1つの被写体に対して1つの動き情報を保持するだけでよい。例えば、動き情報として画素iの動きベクトル(u ,v )を用いた場合には、記録・送信部1501は、以下の式27および式28のように分割された領域ごとに平均化した動き情報を計算することができる。
Figure JPOXMLDOC01-appb-M000035
Figure JPOXMLDOC01-appb-M000036
 ここで、Cは、クラスθに属する画素数もしくは移動軌跡の数である。u cm,v cmは、それぞれ、クラスθに属する画素の動きベクトルである。図17は、時刻Tからt枚の画像を入力としてクラス分類を行い、その結果を用いて、特定される被写体領域を示すための情報である。記録・送信部1501は、識別子として各クラスラベルθと、各クラスラベルθ、θに属する時刻Tにおけるピクチャの画素位置と画素値、そして、各クラスラベルに対応する時刻Tから時刻T+tまでの動きベクトルu ,v ,uT+1 ,vT+1 ,…,uT+t ,vT+t を記録、送信する。もちろん、記録・送信部1501は、画像の画素位置と画素値を用いる代わりに、時刻Tにおける1枚のピクチャに対して、画素ごとに各クラスラベルを付けて送信してもかまわない。これにより、動き情報をクラス数分送信するだけで済むために、ピクチャをt枚送信する場合と比べて、効率よく、被写体領域を示すための情報を記録、送信することができるといった効果がある。特に、クラス数が画素数に比べて少なければ少ないほど、効率的に被写体領域を示す情報を記録、送信することができる。
 (実施の形態1から3の第2変形例)
 次に、本発明の実施の形態1から3の第2変形例として、移動体を検出した結果から、移動体の動きを予測する機能を付加した移動体検出装置について説明する。ここでは、実施の形態1に沿って説明するが、実施の形態2、3においても同様に適用可能である。
 図18に示すように、第2変形例に係る移動体検出装置100dは、画像入力部101、移動軌跡算出部102、サブクラス分類部103、サブクラス間近似測地距離算出部104、および領域分割部105に、動き予測部1701および出力部1702を付加することによって移動体の動きを予測する機能を有する。
 動き予測部1701は、被写体を検出した結果から、各クラスに含まれる画素の移動軌跡から代表の移動軌跡を算出し、代表の移動軌跡をもとに移動体の動きを予測し、移動体の位置や移動体部位の位置を予測する。
 出力部1702は、動き予測部1701により予測された移動体の位置や移動体部位の位置を出力する。
 図19に、第2変形例に係る移動体検出装置100dが実行する処理のフローチャートを示す。ステップS301からS305までは、実施の形態1と同様であるため説明を省略する。
 次に、ステップS1801において、動き予測部1701は、領域分割部105での被写体検出の結果に基づいて、各クラスに属する移動軌跡から、各クラスの代表点およびその代表の移動軌跡を求める。
 ここで、クラスθに属する画素の移動軌跡をxcmと表現することとする。動き予測部1701は、次式29に基づいて、クラスθごとに代表の移動軌跡を求める。ここでは、代表の移動軌跡として、平均移動軌跡を算出する例について説明するが、下記の計算に対して画素の移動軌跡xCmごとに重み付け等を行ってもよいし、画像上でのクラスの重心に対応する画素の移動軌跡を代表の移動軌跡としてもよい。
Figure JPOXMLDOC01-appb-M000037
 ここで、Cは、クラスθに属する画素数もしくは画素の移動軌跡の数である。
 図20に式29に基づいてクラスθごとに代表の移動軌跡を求める例を示す。図20には、ある移動体に対応するクラスθと他の移動体に対応するクラスθとにそれぞれ関する代表の移動軌跡のみを示している。図中の×は、それぞれ時刻tに対応する代表の移動軌跡
Figure JPOXMLDOC01-appb-M000038
の要素である画素位置を示している。この方法によると、単純に近接した画素の移動軌跡の時間平均を求めるような方法と比較して、動きが類似した画素の移動軌跡のみを用いて代表の移動軌跡を算出することができる。このため、より高精度に代表の移動軌跡を求めることができる。このように、クラスごとに代表の移動軌跡を求めることによって、被写体ごと、もしくは部位ごとの動きを正確かつ簡便に表現することができる。
 次に、ステップS1802において、動き予測部1701は、ステップS1801にて算出した代表の移動軌跡から、時刻Tより先の時刻における移動体の位置を予測する。初めに、代表の移動軌跡から加速度を算出し、時刻T+1以降の移動体の位置を予測する例について説明する。3枚以上の時系列画像が入力された場合は、次式30のように代表の移動軌跡
Figure JPOXMLDOC01-appb-M000039
ごとに加速度ベクトルsを得ることができる。
Figure JPOXMLDOC01-appb-M000040
 ここで、u は動きベクトルであり、次式31のように表すことができる。
Figure JPOXMLDOC01-appb-M000041
 式30の加速度ベクトルを用いて、図20にて破線の矢印および○で示したように、動き予測部1701は、移動体ごとに、時刻T+t’における移動体の位置pos(T+t’)を以下の式32に従って予測することができる。ここでは、移動体を例として挙げたが、実施の形態1の領域分割部105でクラス数を増やしたり、実施の形態3の領域分割部105で閾値を小さくしたりすることで、移動体の各部位ごとの位置を予測することも可能である。
Figure JPOXMLDOC01-appb-M000042
 そして、出力部1702は、ステップS1802で予測した移動体の位置や移動体部位の位置を出力する。これにより、加速度を加味した動き予測が可能となる。動きが急激に早くなったり、急激に止まったりといった場合に、その加速度を反映して移動体の位置を予測することができるといった効果がある。また、動きベクトルの代わりにアフィンパラメータを用いてもかまわない。アフィンパラメータは、回転運動を含む動きの表現が可能であり、腕あるいは足の回旋運動の表現に適しているため、特に関節物体の位置をより正確に予測することができる。
 さらに、上述した動きベクトルと加速度の代わりに、代表の移動軌跡xに対して直接、N次関数をフィッティングすることも可能である。T枚の時系列に並んだ画像を入力とした場合、代表の移動軌跡
Figure JPOXMLDOC01-appb-M000043
に含まれるT個の画像上での位置情報に対してN次関数をフィッティングすることができる。これにより、フィッティングした関数の値に沿うように、時刻(T+t’)における画像上での位置pos(T+t’)を推定することが可能となる。具体的には、関数をフィッティングすることによって、より滑らかな動きを表現することが可能となるため、より高精度な予測が可能となる。特には、フィッティングした関数に沿った予測が可能であるため、フィッティングした関数が本来の動きに近い場合に動き予測の精度が高い。もちろん、これらの画像上での位置予測は、時間的内挿にも利用可能である。
 以上のように、本変形例によれば、動きが類似した画素の移動軌跡を同一のクラスとして算出できるため、高精度に代表の移動軌跡を求めることができる。特に関節物体等に対して被写体ごと、部位ごとの動きを表現することが可能であり、前処理として人物候補領域を設定することなく、高精度に移動体の部位位置を予測することが可能であるという効果がある。
 (実施の形態1から3の第3変形例)
 次に、本発明の実施の形態1から3の第3変形例における移動体検出システムについて説明する。ここでは、実施の形態1から3における処理について、演算に必要なメモリ量に応じて異なる2つの機器を用いる例について説明する。具体的には、移動体検出システムは、移動体検出用データ生成装置と、移動体検出装置とを含む。移動体検出用データ生成装置は、必要とするメモリ量が大きい処理を行なう。移動体検出用データ生成装置は、パーソナルコンピュータ等をはじめとする、メモリ容量が大きく処理スピードも速い機器で実現される。移動体検出装置は、必要とするメモリ量が移動体検出用データ生成装置での処理と比較して小さい処理を行なう。移動体検出装置は、携帯電話やモバイル端末をはじめとする、メモリ容量が小さく処理スピードも遅い機器で実現される。
 以下、実施の形態1から3の第3変形例について、実施の形態1に沿って図面を用いて説明するが、実施の形態2、3においても同様に適用可能である。
 図21は、実施の形態1の第3変形例における移動体検出用データ生成装置の機能的な構成を示すブロック図である。移動体検出用データ生成装置は、画像入力部101、移動軌跡算出部102、サブクラス分類部103、サブクラス間近似測地距離算出部104およびクラス判定用データ出力部2101を備える。画像入力部101からサブクラス間近似測地距離算出部104までが実行する処理は、実施の形態1に示したものと同様である。つまり、画像入力部101、移動軌跡算出部102、サブクラス分類部103およびサブクラス間近似測地距離算出部104は、図3に示した画像入力ステップS301、移動軌跡算出ステップS302、サブクラス分類ステップS303およびサブクラス間近似測地距離算出ステップS304の動作をそれぞれ実行する。以下に、本変形例において重要な部分を補足する。
 サブクラス分類部103では、サブクラス分類ステップS303にて、I本の移動軌跡をS個のサブクラスに分類する。なお、I>Sである。ここで、前述したように、非特許文献7のダイクストラ法を用いて測地距離を算出する場合には、データ点数(移動軌跡の数)をNとすると計算量のオーダーはNlogNとなる。この時、任意のデータ点間の距離をメモリに格納する必要があるため、移動軌跡数の2乗、すなわちNのメモリ量を必要とする。
 これに対して、サブクラス間近似測地距離算出部104では、ステップS304にて、測地距離と同様の性質を有するサブクラス間近似測地距離を計算する。ここで、サブクラス間近似測地距離は、前述した計算量の削減のみならず、Sのデータを記憶するためのメモリ量で実現できることも利点である。なお、N>Sであるため、メモリ量を大幅に削減することが可能である。例えば、100個の類似した移動軌跡が1個のサブクラスに分類されるように処理を行えば、測地距離に関係するメモリ量を1/10000に削減することが可能である。
 次に、クラス判定用データ出力部2101について説明する。クラス判定用データ出力部2101は、以下に説明する情報を記録媒体に記録する。記録媒体はSDカード、USBメモリ、携帯型ハードディスク、CD、DVD等を用いれば良い。
 図22に示すように、記録媒体に記録される情報は、ヘッダ情報と、ボディ情報とを含む。
 ヘッダ情報は、動画像を構成するピクチャのサイズ(X,Y)と、動画像を構成するピクチャの枚数であるピクチャ枚数(T)と、動画像から得られる移動軌跡の数である移動軌跡数(N)と、類似する移動軌跡の集合であるサブクラスの数であるサブクラス数(S)とを含む。
 図23は、ピクチャのサイズ(X,Y)およびピクチャ枚数(T)を説明するための図である。図23に示すように、動画像は、T枚のピクチャから構成され、各ピクチャのサイズは、X×Y画素である。
 図24は、移動軌跡数(N)を説明するための図である。図24に示すように、動画像から直線または曲線で示されるN個の移動軌跡が得られているものとする。図24の例では、N=12である。
 図25は、サブクラス数(S)を説明するための図である。9つの大きな丸印それぞれが、サブクラスを示し、それぞれの大きな丸に含まれる小さな丸が、同一サブクラス内の移動軌跡を示している。図25の例では、S=9となる。
 ボディ情報は、動画像を構成する上記ピクチャ枚数のピクチャと、サブクラスラベル付移動軌跡ベクトルと、サブクラス間近似測地距離マトリクスとを含む。
 サブクラスラベル付移動軌跡ベクトルは、動画像から得られる移動軌跡数の移動軌跡を示すデータと、各移動軌跡が属するサブクラスを示すデータとを含む。図26は、サブクラスラベル付移動軌跡ベクトルについて説明するための図である。図26には、5つのサブクラスラベル付移動軌跡ベクトルが示されている。例えば、1番上のサブクラスラベル付移動軌跡ベクトルについて説明する。このサブクラスラベル付移動軌跡ベクトルは、移動軌跡が属するサブクラスがサブクラスaであることと、その移動軌跡の4枚のピクチャ(t=1~4)における座標が、(a1x1,a1y1)、(a1x2,a1y2)、(a1x3,a1y3)、(a1x4,a1y4)であることを示すベクトルである。
 サブクラス間近似測地距離マトリクスは、各サブクラスについて、当該サブクラスと他のサブクラスとの間の類似性を表すサブクラス間近似測地距離を含むマトリクスであり、図8(b)に示したマトリクスのことである。
 図27は、記録媒体に記録される情報の具体例を示す図である。同図に示すように、ヘッダ情報には、ピクチャサイズ(X)、ピクチャサイズ(Y)、ピクチャ枚数(T)、移動軌跡数(N)、サブクラス数(S)として、640、480、4、5、3がそれぞれ記憶されている。なお、ここではピクチャサイズ(X)、ピクチャサイズ(Y)、ピクチャ枚数(T)、移動軌跡数(N)、サブクラス数(S)として、具体的な数値を用いて説明するが、それぞれの数値に限定されるものではない。
 また、ボディ情報には、4枚分のピクチャの画像データと、5つの移動軌跡に対するサブクラスラベル付移動軌跡ベクトルと、サブクラス間近似測地距離マトリクスとが含まれる。例えば、1つ目のサブクラスラベル付移動軌跡ベクトルは、(a a1x1 a1y1 a1x2 a1y2 a1x3 a1y3 a1x4 a1y4)であり、上述した図26の1番上のサブクラスラベル付移動軌跡ベクトルの情報を示している。サブクラス間近似測地距離マトリクスは、すべてのサブクラスの組み合わせについて、サブクラス内距離またはサブクラス間近似測地距離が記憶されている。例えば、(a,a)の列には、サブクラスaとサブクラスaとのサブクラス内距離faa Intraが記憶されており、(a,b)の列には、サブクラスaとサブクラスbとのサブクラス間近似測地距離gab´が記憶されている。
 なお、この記録媒体に記録される情報は、クラス判定用データ出力部2101に含まれるクラス判定用データ作成部2101Aによって作成される。例えば、クラス判定用データ作成部2101Aは、ピクチャサイズ(X,Y)、ピクチャサイズ(Y)、ピクチャ枚数(T)および画像データを、画像入力部101から取得する。クラス判定用データ作成部2101Aは、移動軌跡数を、移動軌跡算出部102から取得する。クラス判定用データ作成部2101Aは、サブクラス数(S)を、サブクラス分類部103から取得する。クラス判定用データ作成部2101Aは、サブクラスラベル付移動軌跡ベクトルのうち、移動軌跡を示すデータを、移動軌跡算出部102から取得し、サブクラスを示すデータを、サブクラス分類部103から取得する。クラス判定用データ作成部2101Aは、サブクラス間近似測地距離マトリクスを、サブクラス間近似測地距離算出部104から取得する。クラス判定用データ作成部2101Aは、取得したこれらの情報を集約し、記録媒体に記録される情報を作成する。
 サブクラス間近似測地距離マトリクスを記録媒体に記録するようにしていることより、すべての移動軌跡の組合せについて測地距離を記憶する場合に比べて、メモリ量をN個のデータの記憶容量からS(N>S)個のデータの記憶容量に削減することができる。このため、上記記録媒体を用いて、移動体検出用データ生成装置よりも搭載メモリ量の小さい移動体検出装置を用いて処理を行うことが可能になる。
 次に、移動体検出装置について説明する。図28は、移動体検出装置の機能的な構成を示すブロック図である。移動体検出装置は、動画像中の移動体の全部または一部の領域を特定する領域分割を実行することによって動画像中の移動体を検出する装置であり、クラス判定用データ入力部2102と、領域分割部105と、出力部106とを含む。クラス判定用データ入力部2102は、上述した記録媒体から、当該記録媒体に記録された情報を読み込む。領域分割部105は、クラス判定用データ入力部2102が読み込んだデータに基づいて、領域分割を実行する。領域分割部105および出力部106が実行する処理は、実施の形態1に示したものと同様である。つまり、領域分割部105および出力部106は、図3に示した領域分割ステップS305および画像出力ステップS306の動作をそれぞれ実行する。
 クラス判定用データ入力部2102は、記録媒体からヘッダ情報を読込み、T枚分の入力画像サイズ(X×Y×T)に合わせたメモリ(記憶領域)を確保する。次に、クラス判定用データ入力部2102は、移動軌跡数Nとピクチャ枚数Tから、(2T+1)×Nのデータを記憶するためのメモリを確保する。ここで、各移動軌跡ベクトルが式1に示すように2次元の画素座標からなるベクトルであるため、2Tの画素座標を記憶するためのメモリが必要であり、さらに、各移動軌跡ベクトルには、サブクラスラベルが付与されているため、サブクラスラベルを記憶するためのメモリが必要である。そして、クラス判定用データ入力部2102は、ヘッダ情報におけるサブクラス数Sから、サブクラス間近似測地距離マトリクスの保持に必要なS個のデータを記憶するためのメモリを確保する。クラス判定用データ入力部2102は、上記のメモリを確保した上で、それぞれの情報を読込む。なお、サブクラス間近似測地距離マトリクスは対称行列であるため、実際には、サブクラス間近似測地距離を保持するための個のデータを記憶するためのメモリを確保すればよい。
 次に、領域分割ステップS305において、領域分割部105は、サブクラス間近似測地距離を用いて、類似する移動軌跡(サブクラス)の集まりに対して統合・非統合の判断を行う。具体的な方法については、実施の形態1と同様であるため、説明を省略する。
 また、画像出力ステップS306において、出力部106は、領域分割部105で行った動画像中の移動体の検出結果を出力する。具体的な方法については、実施の形態1と同様であるため、説明を省略する。
 以上のように、移動体検出用データ生成装置を用いて、移動軌跡およびサブクラス間近似測地距離を算出し、記録媒体に保存する。そして、記録媒体を介して、移動体検出装置を用いて領域分割を行うことで被写体を抽出することが可能である。
 このように、ピクチャサイズ、ピクチャ枚数、移動軌跡数、サブクラス数に関する情報をヘッダとして保持することで、移動体検出装置が、領域分割に必要な情報のメモリ確保が可能になる。また、領域分割に必要な情報としてサブクラス間近似測地距離マトリクスを用いているため、移動軌跡間の測地距離のマトリクスである測地距離マトリクス用いて領域分割を行う場合に比べて少ないメモリ量で領域分割を行うことができるという効果がある。
 これにより、メモリ容量に制限があるような機器を移動体検出装置として用いることができるという利点がある。例えば、携帯電話等のモバイル機器において、本変形例における領域抽出の結果を用いることで、特定の被写体に着目してズーム表示を行ったり、追跡を行ったりすることが可能になる。
 なお、移動体検出用データ生成装置は、移動体検出装置において領域分割を行うための最低限のデータとして、少なくともサブクラス間近似測地距離を含むデータを記録媒体に出力するようにしてもよい。また、移動体検出装置は、記録媒体から少なくともサブクラス間近似測地距離を含むデータを受け取り、領域分割を行うようにしても良い。この場合、出力部106は必ずしも備えられていなくても良い。
 以上、本発明に係る移動体検出方法および移動体検出装置について、実施の形態およびその変形例に基づいて説明したが、本発明は、これらの実施の形態および変形例に限定されるものではない。当業者が思いつく各種変形を、本発明の趣旨を逸脱しない範囲で各実施の形態に施して実現される形態も本発明に含まれる。
 また、各実施の形態における特徴的な構成要素を任意に組合せて実現される形態も本発明に含まれる。
 また、上記実施の形態における移動体検出装置は、画像入力部101および移動軌跡算出部102を備えているが、本発明は、これらの構成要素を必須とするものではない。つまり、動画像を構成する複数のブロックのそれぞれにおける画像の移動軌跡が予め算出されている場合には、移動体検出装置100は、外部から、そのような移動軌跡を取得し、取得した移動軌跡に対して、ステップS303~S306の処理を実行してもよい。
 また、本発明は、移動体検出装置として実現したが、動画像において動きをもつオブジェクトの領域を抽出、あるいは、分割する画像処理装置として実現することができるのは言うまでもない。
 本発明は、複数枚のピクチャにおける動きに基づいて、形状が変化しながら移動する人物等の移動体を含む画像を領域抽出することによって画像中の移動体を検出する移動体検出装置として、例えば、運動解析装置、監視装置、ビデオカメラやTV等のAV機器に内蔵させる移動体検出装置等として利用することが可能である。
  100、100a、100c、100d  移動体検出装置
  101  画像入力部
  102  移動軌跡算出部
  103、103a  サブクラス分類部
  104  サブクラス間近似測地距離算出部
  105  領域分割部
  106、1702  出力部
  201  カメラ
  202  コンピュータ
  203  ディスプレイ
  204  I/F
  205  CPU
  206  ROM
  207  RAM
  208  HDD
  209  ビデオカード
  1501  記録・送信部
  1701  動き予測部
  2101  クラス判定用データ出力部
  2101A  クラス判定用データ作成部
  2102  クラス判定用データ入力部

Claims (22)

  1.  動画像中の移動体の全部または一部の領域を特定する領域分割を実行することによって動画像中の移動体を検出する移動体検出装置であって、
     動画像を構成する複数枚のピクチャを受け付ける画像入力部と、
     受け付けられた前記ピクチャを構成する1個以上の画素からなるブロックごとに、前記動画像を構成する2枚のピクチャ間での当該ブロックの動きを検出し、検出した動きを前記複数枚のピクチャについて連結することにより、複数の移動軌跡を算出する移動軌跡算出部と、
     算出された前記複数の移動軌跡を、各々が類似する移動軌跡の集合である複数のサブクラスに分類するサブクラス分類部と、
     サブクラスごとに、当該サブクラスに属する移動軌跡と他のサブクラスに属する移動軌跡との間の線形距離の最小値を含む距離であるサブクラス間距離を用いて、当該サブクラスと前記他のサブクラスとの間の類似性を表すサブクラス間近似測地距離を算出するサブクラス間近似測地距離算出部と、
     算出された前記サブクラス間近似測地距離に基づいて、類似する移動軌跡からなるサブクラスの集まりを1つのクラスとして特定することによって、領域分割を実行する領域分割部と
     を備える移動体検出装置。
  2.  前記サブクラス間近似測地距離算出部は、サブクラスごとに、当該サブクラスと他のサブクラスとの間の前記サブクラス間近似測地距離として、当該サブクラスに属する移動軌跡の類似性を表すサブクラス内距離と、前記他のサブクラスの前記サブクラス内距離と、当該サブクラスと前記他のサブクラスとの間の前記サブクラス間距離とを加算した距離を算出する
     請求項1記載の移動体検出装置。
  3.  前記サブクラス間近似測地距離算出部は、サブクラスごとに、当該サブクラスに属する移動軌跡間の線形距離の平均値、最頻値またはメディアン値を、当該サブクラスの前記サブクラス内距離として算出する
     請求項2記載の移動体検出装置。
  4.  前記領域分割部は、さらに、2つのサブクラス間の前記サブクラス間近似測地距離を前記サブクラス内距離によって正規化した距離を、前記サブクラス間近似測地距離として算出する
     請求項2または3に記載の移動体検出装置。
  5.  前記サブクラス間近似測地距離算出部は、前記最小値が所定の閾値より大きい場合には、前記サブクラス間近似測地距離を無限大に変更する非線形化を行うことにより、前記サブクラス間近似測地距離を算出する
     請求項1~4のいずれか1項に記載の移動体検出装置。
  6.  前記サブクラス間近似測地距離算出部は、第1のサブクラスと第2のサブクラスとの間のサブクラス間近似測地距離と、前記第1のサブクラスと第3のサブクラスとのサブクラス間近似測地距離および前記第3のサブクラスと前記第2のサブクラスとの間のサブクラス間近似測地距離の和とを比較し、小さいほうの値を前記第1のサブクラスと前記第2のサブクラスとの間のサブクラス間近似測地距離として算出する
     請求項5記載の移動体検出装置。
  7.  前記領域分割部は、前記サブクラス間近似測地距離の時間変化に基づいて、類似する移動軌跡からなるサブクラスの集まりを1つの領域を示すクラスとして特定することによって、領域分割を実行する
     請求項1~6のいずれか1項に記載の移動体検出装置。
  8.  前記領域分割部は、2つのサブクラス間の前記サブクラス間近似測地距離の時間変化を表す値が、所定の時間変化閾値以下の場合に、前記2つのサブクラスが同一のクラスに属すると判定することにより、領域分割を実行する
     請求項7記載の移動体検出装置。
  9.  前記領域分割部は、2つのサブクラス間の前記サブクラス間近似測地距離の時間変化を表す値が、所定の時間変化閾値よりも大きい場合に、前記2つのサブクラスが異なるクラスに属すると判定することにより、領域分割を実行する
     請求項7または8に記載の移動体検出装置。
  10.  前記サブクラス間近似測地距離算出部は、サブクラスごとに、当該サブクラスに属する移動軌跡と他のサブクラスに属する移動軌跡との間の距離のうち、小さいほうから所定個数の距離の平均値を、当該サブクラスと前記他のサブクラスとの間の前記サブクラス間距離とする
     請求項1~9のいずれか1項に記載の移動体検出装置。
  11.  前記サブクラス間近似測地距離算出部は、サブクラスごとに、当該サブクラスに属する移動軌跡と他のサブクラスに属する移動軌跡との間の距離のうち、所定の閾値以下の距離の平均値を、当該サブクラスと前記他のサブクラスとの間の前記サブクラス間距離とする
     請求項1~9のいずれか1項に記載の移動体検出装置。
  12.  前記サブクラス分類部は、算出された前記複数の移動軌跡のうち類似する移動軌跡を同一のサブクラスに分類することによって、前記複数の移動軌跡を複数のサブクラスに分類する
     請求項1~11のいずれか1項に記載の移動体検出装置。
  13.  前記サブクラス分類部は、算出された前記複数の移動軌跡のうち最も類似する移動軌跡の組み合わせを同一のサブクラスに分類する処理を、規定回数または前記複数の移動軌跡が規定のサブクラス数に分類されるまで繰り返し実行することによって、前記複数の移動軌跡を複数のサブクラスに分類する
     請求項12記載の移動体検出装置。
  14.  前記サブクラス分類部は、前記画像入力部において受け付けられた前記複数枚のピクチャのうち少なくとも1枚のピクチャから、当該ピクチャのエッジ情報、色情報および輝度情報のうちの少なくとも1つを用いて、当該ピクチャを複数の領域に分割し、分割した各領域を通る移動軌跡を同一のサブクラスに分類することにより、前記複数の移動軌跡を複数のサブクラスに分類する
     請求項1~11のいずれか1項に記載の移動体検出装置。
  15.  さらに、
     前記画像入力部において受け付けられた前記複数枚のピクチャのうちの少なくとも1枚のピクチャに対して、前記領域分割部により領域分割を実行することにより特定された領域ごとに、他の特定された領域と異なる表示態様となるように画像処理を施し、画像処理が施された領域を含むピクチャを出力する出力部を備える
     請求項1~14のいずれか1項に記載の移動体検出装置。
  16.  さらに、
     前記画像入力部において受け付けたられた前記複数枚のピクチャのうち少なくとも1枚のピクチャに対して、前記領域分割部により実行された領域分割の結果を付与したピクチャを、記録装置に書き込む、または、伝送路を介して外部に送信する記録・送信部を備える
     請求項1~15のいずれか1項に記載の移動体検出装置。
  17.  さらに、
     前記領域分割部により特定されたクラスを構成する移動軌跡のうち、当該クラスを代表する代表移動軌跡を算出し、算出した前記代表移動軌跡に従って、当該クラスに対応する領域が、ピクチャ間で移動すると予測することにより、前記移動体の動きを予測する動き予測部を備える
     請求項1~15のいずれか1項に記載の移動体検出装置。
  18.  動画像中の移動体の全部または一部の領域を特定する領域分割を実行することによって動画像中の移動体を検出する移動体検出方法であって、
     動画像を構成する複数枚のピクチャを受け付ける画像入力ステップと、
     受け付けられた前記ピクチャを構成する1個以上の画素からなるブロックごとに、前記動画像を構成する2枚のピクチャ間での当該ブロックの動きを検出し、検出した動きを前記複数枚のピクチャについて連結することで、複数の移動軌跡を算出する移動軌跡算出ステップと、
     算出された前記複数の移動軌跡を、各々が類似する移動軌跡の集合である複数のサブクラスに分類するサブクラス分類ステップと、
     サブクラスごとに、当該サブクラスに属する移動軌跡と他のサブクラスに属する移動軌跡との間の線形距離の最小値を含む距離であるサブクラス間距離を用いて、当該サブクラスと前記他のサブクラスとの間の類似性を表すサブクラス間近似測地距離を算出するサブクラス間近似測地距離算出ステップと、
     算出された前記サブクラス間近似測地距離に基づいて、類似する移動軌跡からなるサブクラスの集まりを1つのクラスとして特定することによって、領域分割を実行する領域分割ステップと
     を含む移動体検出方法。
  19.  動画像中の移動体の全部または一部の領域を特定する領域分割を実行することによって動画像中の移動体を検出するためのプログラムであって、
     請求項18に記載の移動体検出方法に含まれるステップをコンピュータに実行させるためのプログラム。
  20.  ヘッダ情報と、
     ボディ情報と
     を含むデータ構造を有するデータが記録されたコンピュータ読み取り可能な記録媒体であって、
     前記ヘッダ情報は、
     動画像を構成するピクチャのサイズと、
     前記動画像を構成する前記ピクチャの枚数であるピクチャ枚数と、
     前記動画像から得られる移動軌跡の数である移動軌跡数と、
     類似する移動軌跡の集合であるサブクラスの数であるサブクラス数とを含み、
     前記ボディ情報は、
     前記動画像を構成する前記ピクチャ枚数のピクチャと、
     前記動画像から得られる前記移動軌跡数の移動軌跡を示すデータと、
     各前記移動軌跡が属するサブクラスを示すデータと、
     サブクラスごとに、当該サブクラスと他のサブクラスとの間の類似性を表すサブクラス間近似測地距離とを含む
     コンピュータ読み取り可能な記録媒体。
  21.  動画像を構成する複数枚のピクチャを受け付ける画像入力部と、
     受け付けられた前記ピクチャを構成する1個以上の画素からなるブロックごとに、前記動画像を構成する2枚のピクチャ間での当該ブロックの動きを検出し、検出した動きを前記複数枚のピクチャについて連結することにより、複数の移動軌跡を算出する移動軌跡算出部と、
     算出された前記複数の移動軌跡を、各々が類似する移動軌跡の集合である複数のサブクラスに分類するサブクラス分類部と、
     サブクラスごとに、当該サブクラスに属する移動軌跡と他のサブクラスに属する移動軌跡との間の線形距離の最小値を含む距離であるサブクラス間距離を用いて、当該サブクラスと前記他のサブクラスとの間の類似性を表すサブクラス間近似測地距離を算出するサブクラス間近似測地距離算出部と、
     少なくとも前記サブクラス間近似測地距離算出部が算出した前記サブクラス間近似測地距離を含むデータを出力するデータ出力部と
     を備える移動体検出用データ生成装置。
  22.  動画像中の移動体の全部または一部の領域を特定する領域分割を実行することによって動画像中の移動体を検出する移動体検出装置であって、
     少なくとも、動画像中の類似する移動軌跡の集合であるサブクラスに属する移動軌跡と、当該サブクラスとは異なる前記動画像中の類似する移動軌跡の集合であるサブクラスに属する移動軌跡との間の類似性を表すサブクラス間近似測地距離を含むデータの入力を受け付けるデータ入力部と、
     前記データ入力部で受け付けられた前記サブクラス間近似測地距離に基づいて、類似する移動軌跡からなるサブクラスの集まりを1つのクラスとして特定することによって、領域分割を実行する領域分割部と
     を備える移動体検出装置。
PCT/JP2010/007480 2009-12-28 2010-12-24 移動体検出装置および移動体検出方法 Ceased WO2011080900A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2011518621A JP4782901B2 (ja) 2009-12-28 2010-12-24 移動体検出装置および移動体検出方法
CN2010800154122A CN102396001A (zh) 2009-12-28 2010-12-24 移动体检测装置以及移动体检测方法
EP10840760.2A EP2521093B1 (en) 2009-12-28 2010-12-24 Moving object detection device and moving object detection method
US13/170,354 US8582822B2 (en) 2009-12-28 2011-06-28 Moving object detection apparatus and moving object detection method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2009-298301 2009-12-28
JP2009298301 2009-12-28

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US13/170,354 Continuation US8582822B2 (en) 2009-12-28 2011-06-28 Moving object detection apparatus and moving object detection method

Publications (1)

Publication Number Publication Date
WO2011080900A1 true WO2011080900A1 (ja) 2011-07-07

Family

ID=44226327

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2010/007480 Ceased WO2011080900A1 (ja) 2009-12-28 2010-12-24 移動体検出装置および移動体検出方法

Country Status (5)

Country Link
US (1) US8582822B2 (ja)
EP (1) EP2521093B1 (ja)
JP (1) JP4782901B2 (ja)
CN (1) CN102396001A (ja)
WO (1) WO2011080900A1 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8605946B2 (en) 2011-03-22 2013-12-10 Panasonic Corporation Moving object detection apparatus and moving object detection method
KR20160087740A (ko) * 2015-01-14 2016-07-22 삼성전자주식회사 동영상에 포함된 객체의 운동 유형을 결정하기 위한 방법 및 장치
KR20190128500A (ko) * 2018-05-08 2019-11-18 한국전자통신연구원 영상 감시 시스템에서의 실시간 쓰레기 투기 행위 탐지 방법 및 장치
WO2021090467A1 (ja) * 2019-11-08 2021-05-14 日本電信電話株式会社 カメラパラメータ推定装置、カメラパラメータ推定方法及びカメラパラメータ推定プログラム

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012151796A (ja) * 2011-01-21 2012-08-09 Sony Corp 画像処理装置と画像処理方法およびプログラム
US10099614B2 (en) * 2011-11-28 2018-10-16 Magna Electronics Inc. Vision system for vehicle
AU2011265430B2 (en) * 2011-12-21 2015-03-19 Canon Kabushiki Kaisha 3D reconstruction of partially unobserved trajectory
WO2013145589A1 (ja) * 2012-03-26 2013-10-03 パナソニック株式会社 画像処理装置、撮像装置および画像処理方法
US9336302B1 (en) 2012-07-20 2016-05-10 Zuci Realty Llc Insight and algorithmic clustering for automated synthesis
CN102831609B (zh) * 2012-08-10 2014-10-22 清华大学深圳研究生院 一种基于Graphcut的开关式抠图技术
EP2943898A1 (en) * 2013-01-10 2015-11-18 Thomson Licensing Method for identifying objects in an audiovisual document and corresponding device
JP2014207110A (ja) * 2013-04-12 2014-10-30 株式会社日立ハイテクノロジーズ 観察装置および観察方法
TWI486913B (zh) * 2013-06-14 2015-06-01 Vivotek Inc 具網路與錄影功能之安全監控裝置及儲存裝置的偵錯及修復方法
JP6369465B2 (ja) * 2013-07-24 2018-08-08 ソニー株式会社 情報処理装置および方法、並びにプログラム
JP5842110B2 (ja) * 2013-10-10 2016-01-13 パナソニックIpマネジメント株式会社 表示制御装置、表示制御プログラム、および記録媒体
CN104144282B (zh) * 2014-07-17 2017-11-28 西北工业大学 一种适用于空间机器人视觉系统的快速数字稳像方法
US10163000B2 (en) * 2015-01-14 2018-12-25 Samsung Electronics Co., Ltd. Method and apparatus for determining type of movement of object in video
US9766336B2 (en) * 2015-03-16 2017-09-19 Here Global B.V. Vehicle obstruction detection
CN107798272B (zh) * 2016-08-30 2021-11-02 佳能株式会社 快速多目标检测与跟踪系统
CN108073929B (zh) 2016-11-15 2023-11-24 北京三星通信技术研究有限公司 基于动态视觉传感器的物体检测方法及设备
CN106776482B (zh) * 2016-12-01 2019-07-12 河海大学 一种轨迹相似度计算方法
US11205103B2 (en) 2016-12-09 2021-12-21 The Research Foundation for the State University Semisupervised autoencoder for sentiment analysis
RU2688739C2 (ru) 2017-09-04 2019-05-22 ООО "Ай Ти Ви групп" Системы и способы обнаружения тревожных траекторий движения объектов
CN108616445B (zh) * 2018-03-29 2020-06-09 北京微播视界科技有限公司 信息处理方法、装置和存储介质
US11488374B1 (en) * 2018-09-28 2022-11-01 Apple Inc. Motion trajectory tracking for action detection
CN110543539B (zh) * 2019-08-29 2022-09-16 河海大学 一种分布式的路网环境下移动对象轨迹相似性查询方法
TWI730509B (zh) * 2019-11-22 2021-06-11 英業達股份有限公司 影像偵測區域取得方法及空間使用情況的判定方法
CN111203654A (zh) * 2020-01-15 2020-05-29 苏州德创测控技术咨询有限公司 激光焊接轨迹追踪监测系统
CN111428626B (zh) * 2020-03-23 2023-05-23 北京明略软件系统有限公司 一种移动物体的识别方法、装置、及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0373075A (ja) * 1989-08-14 1991-03-28 Nippon Telegr & Teleph Corp <Ntt> 移動物体検出装置
JPH08214289A (ja) 1994-12-06 1996-08-20 Olympus Optical Co Ltd 時系列画像解析装置及びその解析方法
JPH1166319A (ja) * 1997-08-21 1999-03-09 Omron Corp 移動体検出方法及び装置並びに移動体認識方法及び装置並びに人間検出方法及び装置
JP2004246436A (ja) * 2003-02-12 2004-09-02 Toshiba Corp 障害物検出装置および障害物検出方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6859554B2 (en) * 2001-04-04 2005-02-22 Mitsubishi Electric Research Laboratories, Inc. Method for segmenting multi-resolution video objects
US8212210B2 (en) * 2008-02-04 2012-07-03 Flir Systems Ab IR camera and method for presenting IR information
ATE538453T1 (de) * 2008-03-14 2012-01-15 Panasonic Corp Bildverarbeitungsverfahren und bildverarbeitungsvorrichtung
WO2010050110A1 (ja) * 2008-10-27 2010-05-06 パナソニック株式会社 移動体検出方法及び移動体検出装置
US8659603B2 (en) * 2009-03-31 2014-02-25 General Electric Company System and method for center point trajectory mapping

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0373075A (ja) * 1989-08-14 1991-03-28 Nippon Telegr & Teleph Corp <Ntt> 移動物体検出装置
JPH08214289A (ja) 1994-12-06 1996-08-20 Olympus Optical Co Ltd 時系列画像解析装置及びその解析方法
JPH1166319A (ja) * 1997-08-21 1999-03-09 Omron Corp 移動体検出方法及び装置並びに移動体認識方法及び装置並びに人間検出方法及び装置
JP2004246436A (ja) * 2003-02-12 2004-09-02 Toshiba Corp 障害物検出装置および障害物検出方法

Non-Patent Citations (9)

* Cited by examiner, † Cited by third party
Title
ARK AZRAN, ZOUBIN GHAHRAMANI: "Spectral Methods for Automatic Multiscale Data Clustering", PROC. IEEE COMPUTER SOCIETY CONFERENCE ON COMPUTER VISION AND PATTERN RECOGNITION, 2006
E.W. DIJKSTRA: "A note on two problems in connexion with graphs", NUMERISCHE MATHEMATIK, 1959, pages 269 - 271, XP000837527, DOI: doi:10.1007/BF01386390
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 EP2521093A4
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, June 2004 (2004-06-01)
VLADIMIR KOLMOGOROV, RAMIN ZABIH: "Computing Visual Correspondence with Occlusions via Graph Cuts", INTERNATIONAL CONFERENCE ON COMPUTER VISION, 2001
X. REN, J. MALIK: "Learning a Classification Model for Segmentation", INTERNATIONAL CONFERENCE ON COMPUTER VISION, vol. 1, 2003, pages 10 - 17, XP010662236

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8605946B2 (en) 2011-03-22 2013-12-10 Panasonic Corporation Moving object detection apparatus and moving object detection method
KR20160087740A (ko) * 2015-01-14 2016-07-22 삼성전자주식회사 동영상에 포함된 객체의 운동 유형을 결정하기 위한 방법 및 장치
KR102185979B1 (ko) * 2015-01-14 2020-12-02 삼성전자주식회사 동영상에 포함된 객체의 운동 유형을 결정하기 위한 방법 및 장치
KR20190128500A (ko) * 2018-05-08 2019-11-18 한국전자통신연구원 영상 감시 시스템에서의 실시간 쓰레기 투기 행위 탐지 방법 및 장치
KR102153591B1 (ko) * 2018-05-08 2020-09-09 한국전자통신연구원 영상 감시 시스템에서의 실시간 쓰레기 투기 행위 탐지 방법 및 장치
US11048942B2 (en) 2018-05-08 2021-06-29 Electronics And Telecommunications Research Institute Method and apparatus for detecting a garbage dumping action in real time on video surveillance system
WO2021090467A1 (ja) * 2019-11-08 2021-05-14 日本電信電話株式会社 カメラパラメータ推定装置、カメラパラメータ推定方法及びカメラパラメータ推定プログラム
JPWO2021090467A1 (ja) * 2019-11-08 2021-05-14
JP7277829B2 (ja) 2019-11-08 2023-05-19 日本電信電話株式会社 カメラパラメータ推定装置、カメラパラメータ推定方法及びカメラパラメータ推定プログラム
US12198383B2 (en) 2019-11-08 2025-01-14 Nippon Telegraph And Telephone Corporation Camera parameter estimation apparatus, camera parameter estimation method, and camera parameter estimation program

Also Published As

Publication number Publication date
EP2521093A4 (en) 2013-07-31
US20110255747A1 (en) 2011-10-20
JP4782901B2 (ja) 2011-09-28
JPWO2011080900A1 (ja) 2013-05-09
CN102396001A (zh) 2012-03-28
US8582822B2 (en) 2013-11-12
EP2521093A1 (en) 2012-11-07
EP2521093B1 (en) 2018-02-14

Similar Documents

Publication Publication Date Title
JP4782901B2 (ja) 移動体検出装置および移動体検出方法
Portmann et al. People detection and tracking from aerial thermal views
US8340357B2 (en) Moving object detection method and moving object detection apparatus
JP4643766B1 (ja) 移動体検出装置及び移動体検出方法
CN102378992B (zh) 关节状区域检测装置及其方法
JP4542207B1 (ja) 移動体検出方法および移動体検出装置
CN103189898B (zh) 移动体检测装置以及移动体检测方法
EP2548174B1 (en) Method and apparatus for trajectory estimation, and method for segmentation
JP4668360B2 (ja) 移動体検出方法及び移動体検出装置
JP2013206458A (ja) 画像における外観及びコンテキストに基づく物体分類
CN119323742A (zh) 一种用于应急和救援的人类交互行为识别方法及装置
CN113763418B (zh) 一种基于头肩检测的多目标跟踪方法
Ji et al. Visual-based view-invariant human motion analysis: A review
Nair et al. Multi-modal low cost mobile indoor surveillance system on the Robust Artificial Intelligence-based Defense Electro Robot (RAIDER)
Utsumi et al. Selection of SIFT feature points for scene description in robot vision
JP2013235603A (ja) 画像処理装置及び画像処理方法

Legal Events

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

Ref document number: 201080015412.2

Country of ref document: CN

WWE Wipo information: entry into national phase

Ref document number: 2011518621

Country of ref document: JP

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

Ref document number: 10840760

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2010840760

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: DE