WO2010095190A1 - 情報処理装置および情報処理方法 - Google Patents

情報処理装置および情報処理方法 Download PDF

Info

Publication number
WO2010095190A1
WO2010095190A1 PCT/JP2009/005583 JP2009005583W WO2010095190A1 WO 2010095190 A1 WO2010095190 A1 WO 2010095190A1 JP 2009005583 W JP2009005583 W JP 2009005583W WO 2010095190 A1 WO2010095190 A1 WO 2010095190A1
Authority
WO
WIPO (PCT)
Prior art keywords
gesture
contour
head
information processing
image
Prior art date
Application number
PCT/JP2009/005583
Other languages
English (en)
French (fr)
Inventor
池上渉一
Original Assignee
株式会社ソニー・コンピュータエンタテインメント
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 株式会社ソニー・コンピュータエンタテインメント filed Critical 株式会社ソニー・コンピュータエンタテインメント
Priority to US13/147,859 priority Critical patent/US8509484B2/en
Priority to EP09840297.7A priority patent/EP2400370B1/en
Publication of WO2010095190A1 publication Critical patent/WO2010095190A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/017Gesture based interaction, e.g. based on a set of recognized hand gestures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • G06F3/012Head tracking input arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/277Analysis of motion involving stochastic approaches, e.g. using Kalman filters
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/161Detection; Localisation; Normalisation
    • G06V40/162Detection; Localisation; Normalisation using pixel segmentation or colour matching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/174Facial expression recognition
    • G06V40/176Dynamic expression
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30196Human being; Person
    • G06T2207/30201Face

Definitions

  • the present invention relates to information processing technology, and more particularly, to an information processing apparatus including a user interface for performing processing in accordance with a user input and an information processing method executed therein.
  • the imaging apparatus when used as a user interface, it is generally possible to detect the state of the user's face using a face detection technique. For example, a face part is detected by matching a reference image prepared in advance with an image of a detected face area or extracting a feature point, and a change with time is acquired.
  • the present invention has been made in view of such problems, and an object of the present invention is to provide an information processing technique including a user interface capable of accurate input by a gesture of a human head.
  • An aspect of the present invention relates to an information science device.
  • This information processing apparatus captures a candidate curve for the contour of an object in each image frame included in a moving image captured by the imaging apparatus, and an image frame at a previous time.
  • a tracking processing unit that estimates the contour of the object in each image frame by observing the likelihood of each candidate curve by determining based on the estimated contour of the target object, and an object contour estimated by the tracking processing unit.
  • the parameters representing the direction of the object or the position of the object are obtained by performing image analysis on the internal area, and the time change of the direction of the object or the position of the object estimated by the parameter is set for each gesture in advance.
  • a gesture detection unit that determines whether or not the gesture has been made by comparing with a reference, and the gesture detection unit does not make a gesture. When it is determined that, characterized in that it comprises an output data generating unit for generating output data subjected to processing corresponding to the gesture.
  • This information processing method includes a step of capturing a motion of a target object as a moving image, and a target object obtained by estimating a candidate curve of a contour of the target object in each image frame included in the captured moving image in an image frame at a previous time.
  • a step of estimating the contour of the object in each image frame by observing the likelihood of each candidate curve, and performing an image analysis on the inner area of the estimated contour of the object Obtaining a parameter representing the direction of the object or the position of the object, and comparing the temporal change in the direction of the object or the position of the object estimated by the parameter with a reference set in advance for each gesture,
  • FIG. 1 shows a configuration example of an information processing system to which this embodiment can be applied.
  • the information processing system 10 includes an imaging device 12 that captures an image of a user 18, an information processing device 14 that detects a user's gesture and performs information processing in accordance with the gesture, and a display device that outputs image data obtained as a result of processing by the information processing device 16 is included.
  • connection between the information processing device 14 and the imaging device 12 or the display device 16 may be wired or wireless, and may be via various networks. Alternatively, any two or all of the imaging device 12, the information processing device 14, and the display device 16 may be combined and integrally provided. Further, the imaging device 12 does not necessarily have to be mounted on the display device 16. In the following description, it is assumed that the imaging device 12 images the user 18 facing the display device 16 from the front, but the same processing can be performed by simple coordinate conversion even if the imaging direction is different. it can. A plurality of users 18 may be provided depending on the contents processed by the information processing apparatus 14.
  • the imaging device 12 acquires image data including the user 18 at a predetermined frame rate.
  • the acquired moving image data is input to the information processing apparatus 14.
  • the information processing apparatus 14 acquires a time change of the face direction or the head direction of the user 18 from the moving image data acquired from the imaging apparatus 12.
  • a head gesture is detected by acquiring a temporal change in the face direction of the user 18, and the result is used for various processes.
  • visual tracking of the head contour is performed. A specific method will be described in detail later.
  • the process which the information processing apparatus 14 performs using it can be considered variously, and the content is not limited.
  • an aspect of detecting a gesture that shakes his / her head while paying attention to the head will be mainly described.
  • a gesture using a body part such as a palm or a leg or the whole body or a user. It can also be detected in the same way with gestures caused by the movement of objects.
  • FIG. 2 is a diagram for explaining the direction in which the head rotates when a human makes a gesture using the head.
  • the user 18 shakes his / her head, it can be considered as rotation in the Yaw axis direction.
  • it can be considered as rotation in the Pitch axis direction
  • the neck is bent, it can be considered as rotation of the Roll axis.
  • rotation about at least one of these rotation axes is detected by acquiring the orientation of the face with respect to the time of each image frame.
  • these three types of changes can be used for selection input from a maximum of three types of options.
  • the information processing device 14 can use a change in the orientation of the face instead of a general input device such as a mouse, tracking ball, analog stick,
  • information processing in a wide range of fields can be performed.
  • the swinging performed by the association determined for each information processing is also referred to as a “gesture” in a broad sense.
  • An example of processing executed by the information processing apparatus 14 will be described later.
  • the display device 16 acquires the image data generated by reflecting the result of the information processing device 14 detecting the gesture of the user 18 and outputs it as an image.
  • the movement of the head contour is first tracked. Specifically, visual tracking processing using a particle filter is performed on an image including the user 18 imaged by the imaging device 12.
  • the visual tracking of the head contour is a technique for estimating the head contour of each image frame of a moving image in a time evolution manner. Also, it is unlikely that the head contour will change significantly between image frames even if the orientation of the face changes. As a result, even if the face direction changes with time, the influence on the gesture detection accuracy is small.
  • Face detection technology generally used as face area image processing is basically processing for still images, and using it for time change detection results in detection results for multiple still images. It is nothing but connecting.
  • the face detection process itself does not consider the relevance to the previous image frame except for the efficiency of the process, so there are situations where multiple people are included in the image or people move. It is easy to include an error when detecting an event that occurs in a finite time such that a change in the number of times can be considered.
  • the tracking process of the head contour itself is time-developed, so that individual movements can be accurately captured from the relevance to the previous image frame.
  • FIG. 3 is a diagram for explaining a visual tracking method when a person is tracked.
  • the person image 150 is one of the image frames constituting the image stream of the captured moving image, and the person 152 to be tracked is shown.
  • the person 152 corresponds to the user 18 in FIG.
  • an ⁇ -shaped curve 154 that approximates the shape of the head contour of the person 152 is described in a known expression.
  • the person image 150 including the person 152 is subjected to edge extraction processing to obtain an edge image.
  • the curve 154 is translated, expanded, contracted, and rotated, and an edge in the vicinity thereof is searched for. Identify the value.
  • the tracking of the person 152 progresses by repeating the above processing for each frame.
  • the edge generally refers to a portion having an abrupt change in image density or color.
  • a probability distribution prediction technique using a particle filter is introduced.
  • the number of samplings of the curve 154 is increased or decreased according to the probability distribution of the object in the parameter space in the immediately preceding frame, and the tracking candidates are narrowed down.
  • the ⁇ -shaped curve 154 is described as a B-spline curve.
  • a B-spline curve is defined by n control points (Q0,..., Qn) and n knots (s0,..., Sn). These parameters are set in advance so as to form a basic curve shape, in this case, an ⁇ -shaped curve.
  • the curve obtained by the setting at this time is hereinafter referred to as template Qt.
  • the template Qt is an ⁇ shape, but the shape is changed depending on the tracking target. That is, if the tracking target is a ball, the shape is circular, and if the tracking target is a palm, the shape is a hand.
  • a shape space vector x is prepared as a conversion parameter for changing the template state.
  • the shape space vector x is composed of the following six parameters.
  • (shift x , shift y ) is a translation amount in the (x, y) direction
  • (extend x , extend y ) is a magnification
  • is a rotation angle.
  • the template can be translated, expanded, contracted, and rotated by appropriately changing the six parameters constituting the shape space vector x, and the candidate curve Q can be changed variously depending on the combination.
  • the edges of the person 152 in the vicinity of each knot Explore are estimated by obtaining the likelihood of each candidate curve from the distance to the edge or the like.
  • FIG. 4 is a diagram for explaining a probability density distribution estimation method using a particle filter.
  • the change of a certain parameter x1 is shown on the horizontal axis, but actually the same processing is performed in the 6-dimensional space. Is called.
  • the image frame whose probability density distribution is to be estimated is the image frame at time t.
  • a particle is a materialization of the value of the parameter x1 to be sampled and the sampling density. For example, in the region of the parameter x1, where the probability density was high at time t-1, sampling is performed by increasing the particle density. In the range where the probability density is low, sampling is not performed by reducing the number of particles. Thereby, for example, many candidate curves are generated near the edge of the person 152, and matching is performed efficiently.
  • the predetermined motion model is, for example, a Gaussian motion model, an autoregressive prediction motion model, or the like.
  • the former is a model in which the probability density at time t is Gaussian distributed around each probability density at time t-1.
  • the latter is a method that assumes a second-order or higher-order autoregressive prediction model acquired from sample data. For example, it is estimated from a change in past parameters that a person 152 is moving at a certain speed. In the example of FIG. 2, the motion in the positive direction of the parameter x1 is estimated by the autoregressive prediction type motion model, and each particle is changed in that way.
  • the likelihood of each candidate curve is obtained by searching for the edge of the person 152 in the vicinity of the candidate curve determined by each particle using the edge image at time t, and the probability density distribution at time t is obtained.
  • Estimate (S116) As described above, the probability density distribution at this time is a discrete representation of the true probability density distribution 400 as shown in S116. Thereafter, by repeating this, the probability density distribution at each time is represented in the parameter space. For example, if the probability density distribution is unimodal, that is, if the tracked object is unique, the final parameter is the weighted sum of each parameter value using the obtained probability density. Thus, a curve estimated as the contour of the tracking target is obtained.
  • the probability density distribution p (x t i ) at time t estimated in S116 is calculated as follows.
  • Equation 3 The probability density distribution obtained by Equation 3 is obtained for each parameter of the shape space vector. Therefore, the shape space vector at each time can be estimated by obtaining a weighted average of particles from the probability density distribution.
  • the internal region of the ⁇ -shaped head contour defined by the shape space vector at each time obtained in this way is composed of a face region and a hair region. Therefore, a change in the orientation of the face is detected by acquiring a change in the face area of the head contour.
  • the face area of the head area is specified by texture matching in each image frame, and the change in area and direction of change are acquired.
  • any of the characteristics of the image such as color, edge, and frequency distribution may be used in addition to the texture. In this case, if the area is oscillating, it is determined that the face is oscillating, and that the user 18 is shaking his / her head. If the region expands and contracts in the vertical direction, the pitch angle changes, and if the region expands and contracts in the horizontal direction, the Yaw angle changes.
  • Integrating these changes can detect “positive” and “negative” gestures.
  • the change in the Roll angle can be specified by the change in the rotation angle ⁇ among the shape space vectors in the visual tracking process described above, thereby detecting the “question” gesture that causes the neck to bend.
  • the head gesture can be detected with high accuracy in this embodiment, it can be combined with various applications using the gesture.
  • FIG. 5 shows the configuration of the information processing apparatus 14 in detail.
  • the information processing device 14 includes an image acquisition unit 20 that acquires input image data input from the imaging device 12, a tracking processing unit 26 that performs the visual tracking process described above, and an internal region of the head contour obtained as a result of tracking.
  • a gesture detection unit 28 that detects a gesture from image data
  • an output data generation unit 30 that executes an application such as a game using the detected gesture and generates output data such as image data
  • a display device for the generated output data
  • the output control part 32 which controls the output to 16 etc. is included.
  • each element described as a functional block for performing various processes can be constituted by a CPU, a memory, and other LSIs in terms of hardware, and in terms of software. It is realized by a program for performing image processing. Therefore, it is understood by those skilled in the art that these functional blocks can be realized in various forms by hardware only, software only, or a combination thereof, and is not limited to any one.
  • the image acquisition unit 20 acquires a user's image from the imaging device 12 in real time regardless of wired or wireless.
  • the tracking processing unit 26 tracks the user's head contour by the visual tracking method described above.
  • the gesture detection unit 28 detects a gesture as described above based on the data of the head contour at the time of each image frame obtained as a result of tracking by the tracking processing unit 26.
  • the face region in the head region at each time is specified by texture matching, and the time change of the direction in the Pitch axis direction and the Yaw axis direction is determined using the time change of the area of the face region and the direction of the change. To get.
  • techniques other than texture matching can be used.
  • face detection processing may be performed on the head region.
  • the detection results such as the relative position of each part or the position of a specific part are recorded for each time, thereby obtaining the time change of the Pitch angle and the Yaw angle. May be.
  • the movement direction and the movement amount of the inner region of the head contour may be globally analyzed by using an optical flow or Lucas-Kanade algorithm (klt) technique generally used in the field of computer vision.
  • klt Lucas-Kanade algorithm
  • the internal region of the head contour at each time is matched with the internal region of the head contour in the temporally previous image frame such as the immediately preceding image frame, and the amount of movement or area of the target location in the internal region is changed.
  • Such image analysis such as matching and optical flow can detect the rotation of the head itself, so that it is possible to detect a gesture even when the face area is small, such as when shooting from a position close to the back of the user. .
  • the parameters representing the orientation of the face or the orientation of the head are acquired in each image frame and the time change is recorded, and when a predetermined criterion set in advance for each gesture is satisfied, It is determined that a gesture has been performed.
  • the output data generation unit 30 When the gesture detection unit 28 determines that a gesture has been performed, the output data generation unit 30 performs processing corresponding to the result and generates output data such as image data. As described above, since the present embodiment can be applied to various applications, the output data generation unit 30 may not only generate image data but also perform processing according to each application. For example, a gesture detected by the gesture detection unit 28 and a process corresponding to the gesture may be associated in advance, and the output data generation unit 30 may perform a process corresponding to the gesture.
  • FIG. 6 shows the configuration of the tracking processing unit 26 in detail.
  • the tracking processing unit 26 observes the likelihood of a candidate curve defined by each particle, an image processing unit 40 that generates an edge image from input image data, a sampling unit 42 that performs sampling in a parameter space by generating and annihilating particles.
  • the observation unit 46 includes a result acquisition unit 50 that integrates observation results and estimates a shape space vector, and a parameter storage unit 48 that stores parameters defining an ⁇ -shaped template.
  • the image processing unit 40 performs edge extraction processing for each image frame of the input image data to generate an edge image.
  • a general edge extraction algorithm such as a canny edge filter or a Sobel filter can be used.
  • the image processing unit 40 may include a foreground extractor (not shown) that uses a background difference, and the tracking is performed by extracting the foreground including the tracking target from the input image as preprocessing of the edge extraction processing.
  • the target edge may be extracted efficiently.
  • the sampling unit 42 generates and extinguishes particles based on the probability density distribution in the space of the shape space vector x estimated for the previous image frame at time t-1. Then, a predetermined motion model is applied to all particles to cause the particles to transition in the space.
  • the observation unit 46 observes the likelihood of the candidate curve determined by each particle generated, disappeared, and transitioned by the sampling unit 42.
  • the likelihood is determined by searching for an edge in the vicinity of each candidate curve on the edge image generated by the image processing unit 40 and estimating the distance to the edge for each candidate curve.
  • the candidate curve is obtained by applying a parameter defining each particle to the ⁇ -shaped template read from the parameter storage unit 48.
  • the result acquisition unit 50 calculates a probability density distribution as shown in Equation 3 in the space of the shape space vector x based on the likelihood observed by the observation unit 46, and thereby weights each parameter.
  • the data is returned to the sampling unit 42 for use in the tracking process at the next time t + 1.
  • the result acquisition unit 50 When there are a plurality of tracking targets, the result acquisition unit 50 further performs tracking for each tracking target using a template prepared for each. Further, a case where a plurality of tracking targets overlap is detected based on the tracking result, and the tracking target hidden behind is taken out of the tracking processing target at a predetermined timing. As a result, even if the observation likelihood is temporarily lowered due to the tracking target moving behind another tracking target, it is possible to avoid outputting an inappropriate tracking result.
  • FIG. 7 shows the configuration of the gesture detection unit 28 in detail.
  • the gesture detection unit 28 is a tracking result acquisition unit 52 that acquires a curve of the head contour at each time estimated as a result of visual tracking, and a predetermined direction that represents the face direction by analyzing an image of the internal region of the head contour.
  • a face area analysis unit 54 that calculates a parameter
  • a history storage unit 56 that accumulates the parameter and stores it as a history
  • a determination criterion storage unit 58 that stores a criterion for determining that a gesture has been made in response to a temporal change in the parameter
  • the “parameter indicating the face orientation” is simply referred to as “face orientation angle” for each axis.
  • face orientation angle for each axis.
  • the angles of the pitch axis and the Yaw axis of the face or a predetermined part can be obtained by a general method.
  • the roll axis angle ⁇ representing the rotation can be used as the roll axis angle.
  • the face orientation can be inferred from the face area obtained by texture matching without using the face detection method as described above.
  • the “face orientation angle” can be appropriately replaced with another parameter depending on the method for specifying the face orientation.
  • the tracking result acquisition unit 52 acquires curve data representing the head contour estimated by the tracking processing unit 26 for each image frame. As described above, this is a result obtained by weighting and averaging the parameters of the shape space vector defining each particle with the probability density distribution.
  • the face area analysis unit 54 applies predetermined processing such as texture matching and face detection processing to the internal region of the head contour, and acquires a face orientation angle in each image frame. The acquired results are sequentially accumulated in the history storage unit 56 for each rotation axis.
  • the gesture determination unit 60 determines the face orientation angle up to that point from the history of the face orientation angle stored in the history storage unit 56 and the new analysis result. Is compared with the criterion set in the criterion storage unit 58 to determine whether or not a gesture has been made. The determination result is notified to the output data generation unit 30.
  • FIG. 8 shows an example of the change over time of the face orientation angle of a certain rotation axis stored in the history storage unit 56.
  • the horizontal axis is the time axis
  • the vertical axis is the face angle
  • the face angle at the neutral position without a gesture is the angle “0”. It should be noted that parameters for the face orientation angle at the neutral position are acquired in advance according to the method for obtaining the face orientation angle.
  • the face orientation angle from the neutral position may be obtained directly by using face detection, matching, etc. for the face orientation angle in each image frame, or by detecting the movement of the texture from the previous image frame. You may make it ask for change.
  • the relative angle change may be corrected by obtaining the angle from the neutral position by further comparing with the image of the face area at the neutral position.
  • the face history angle is acquired for each rotation axis in the same history.
  • a determination criterion for determining a gesture is set and stored in advance with respect to the change in face orientation angle as shown in FIG.
  • a threshold value is set for the amplitude of the face orientation angle
  • a threshold value is set for the vibration duration time.
  • the former is represented as “ ⁇ ⁇ 1”
  • the latter is represented as “T”.
  • an angular vibration having an amplitude exceeding the threshold value “ ⁇ ⁇ 1” is observed for a time “T” or more, it is determined that a gesture has been made.
  • the correspondence relationship between the rotation axis and the gesture may be stored in the determination criterion storage unit 58.
  • “Yes” is associated with Pitch axis vibration
  • “No” is associated with Yaw axis vibration.
  • Angular vibration can be detected by performing frequency analysis using Fast Fourier Transform (FFT) or the like.
  • FFT Fast Fourier Transform
  • a threshold value may be further provided for the number of appearances of the peak, and it may be determined that a gesture has been made when a peak exceeding the threshold value “ ⁇ ⁇ 1” appears within the predetermined time “T” a predetermined number of times.
  • T a predetermined time
  • the determination criterion may be variously set according to processing performed by the output data generation unit 30 later. For example, in the case of detecting an operation in which the angle changes greatly once with respect to any of the rotation axes, such as nodding only once or squeezing the neck, only the threshold value of the angle needs to be set.
  • FIG. 8 shows the temporal change of the face angle when the face angle at the neutral position is “0”.
  • the absolute value of the angle does not have to be strictly acquired.
  • the “change amount” acquired here may be the amount of movement or the change in the area of interest obtained by matching with the previous image frame, in addition to the change amount of the angle.
  • a threshold value may be provided for a peak of speed to be used as a determination criterion.
  • FIG. 9 is a flowchart showing a processing procedure of the information processing apparatus 14.
  • a case where the swing of the user's Pitch axis (vertical direction) and Yaw axis (horizontal direction) is detected as a “YES” (positive) and “NO” (negative) gesture, respectively, and used for the game.
  • YES positive
  • NO negative
  • the imaging device 12 starts imaging of the user and displays an initial screen on the display device 16 (S8).
  • the tracking processing unit 26 sequentially reads the images taken by the imaging device 12 and starts visual tracking of the head contour (S10).
  • the tracking result acquisition unit 52 of the gesture detection unit 28 acquires curve data of the head contour of the image frame at the current time t as a tracking result (S12).
  • the face area analysis unit 54 of the gesture detection unit 28 attempts to specify a face area and acquire a face orientation angle for the internal area of the obtained head outline (S14). If the face area cannot be specified for some reason or the face orientation angle cannot be obtained (N in S14), the head contour of the image frame at the next time t + 1 is acquired (S15, S12).
  • the face angle data is stored in the history storage unit 56 (S16). At this time, the angle with respect to each rotation axis is stored in association with the ID of the image frame or time t.
  • the gesture determination unit 60 of the gesture detection unit 28 first determines whether or not the determination criterion is satisfied on the Yaw axis in light of the determination criterion set in the determination criterion storage unit 58 (S18). If the criterion is satisfied (Y in S18), it is determined that the user has made a “NO” gesture (S20).
  • the standard is not satisfied on the Yaw axis (N in S18)
  • Y in S22 it is known that gestures in which a person shakes his head are more clearly performed in the horizontal direction than in the vertical direction. Therefore, the calculation load due to the determination of the Pitch axis can be reduced by determining the vibration of the Yaw axis first and quickly confirming the Y branch in S18.
  • the present embodiment is not limited to this. For example, the determination for two rotating shafts may be performed in parallel.
  • the head contour of the image frame at the next time t + 1 is acquired (S15, S12), and the same processing is repeated (S14 to S14).
  • S24 When a plurality of humans are to be imaged, the processes of S14 to S24 are repeated for each head outline. If it is determined that any gesture has been made (S20 or S24), the output data generation unit 30 performs processing corresponding to the gesture, and the image data generated as a result is displayed under the control of the output control unit 32. It is displayed on the device 16 (S26).
  • the flowchart in FIG. 9 focuses on the user's gesture detection, and thus other processing is omitted.
  • the latest image displayed in S26 such as an object in the image moving even if there is no gesture, is displayed. There may be movement. If it is not necessary to end the process because the game itself is ended or the user issues an end instruction (N in S28), the time t + 1 of the next image frame is set as the current time t (S30), and S12 to S26. Repeat the process up to. If it is necessary to terminate the process (Y in S28), the process is terminated.
  • the gesture determination process of S18 and S22 determines that a gesture has been made when the vibration of the face angle continues for the duration T as described above.
  • the probability that the vibration is a gesture increases with the duration after the vibration starts without actually waiting for the threshold value T.
  • a gesture of “NO” or “YES” is likely to be made at a predetermined timing before the threshold T, for example, after 70% of the threshold T has elapsed. May be.
  • a part of processing to be performed after it is finally determined that a gesture has been made for example, generation of image data to be updated may be speculatively performed.
  • the subsequent processing is started using the result of the speculative processing, and if the vibration disappears before the threshold value T elapses, the speculative processing is performed. Discard the result. By doing so, the responsiveness of subsequent processing and output to the gesture is improved.
  • FIG. 10 shows an example of an image displayed on the display device 16 in the game to be processed in the flowchart of FIG.
  • a plurality of participants answer “YES” or “NO” to a question displayed on the display device 16. If the answer is “YES”, a rule is given so that the head is swung several times vertically, and if “NO”, the head is swung several times horizontally.
  • a game screen 70 is displayed on the display device 16.
  • the game screen 70 has a configuration simulating a television quiz program, and displays respondent seats 74 for the number of participants. Then, from the image including the participant photographed by the imaging device 12, the part of the head region of each participant obtained as a result of visual tracking is cut out, and the participant's face images 76 a and 76 b are placed on each respondent seat 74. , 76c. Then, the participant who sees the question displayed in the question area 72 responds according to the swinging condition of the head based on the above-described rules.
  • the gesture detection unit 28 determines whether each participant has made a “YES” gesture or a “NO” gesture, and notifies the output data generation unit 30 of the gesture.
  • the output data generation unit 30 can display the character string “YES” or “NO”, which is the content of the gesture, on the respondent seat 74 as an answer of each participant. Furthermore, a display indicating whether each answer is correct or incorrect may be displayed, or a score may be displayed behind the respondent's seat. By displaying such a screen, the user can enjoy the game as if he / she became an answerer of the quiz program. Since the answer is made by the gesture of the head, it is not necessary to prepare a controller for each participant, and a large number of people can participate.
  • the present invention can be applied to various games such as displaying an intention on an avatar representing yourself in the virtual world displayed on the display device 16 and communicating with other users.
  • a mouse can be substituted by replacing one with a left click of the mouse and the other with a right click.
  • input is possible with an intuitive operation, and a space for using the mouse is not necessary, so that various information processing can be performed in a small space.
  • a gesture has been made by tracking the user's head area in a time-developed manner using visual tracking technology and monitoring the orientation of the face area of the head area. judge. As a result, it is possible to follow a continuous change with respect to time of human movement in consideration of the relevance with the previous image frame. As a result, even if face detection processing is applied that makes it difficult to maintain detection accuracy for faces that are not facing the front, the face orientation angle can be acquired without failing face detection, and gesture detection is performed with high accuracy. be able to.
  • gesture detection can be easily performed by applying a process that can acquire a parameter representing a face direction, such as texture matching, without using face detection.
  • a method for specifying the orientation of the face can be appropriately selected according to the brightness of the image, the number of people who take images, and the like.
  • the head region is specified in consideration of the relevance with the previous image and gesture detection is performed, even if the user moves or bends and the head region deviates greatly, the change Since it is absorbed in the contour tracking process, the face orientation angle can be continuously acquired. Also, movements other than such gestures do not significantly affect the face angle value. Even if the user puts his hand on his face or wears a mask, there is no significant change in the outline of the head, so the tracking process and, in turn, the gesture detection process can be maintained without significant influence, and the accuracy of gesture detection can be maintained. is there.
  • the head outline can be continuously tracked for each person, so that the correspondence between the person and the gesture is naturally performed.
  • gesture detection is performed on each tracked head outline, so it may be confused with another person's face in the middle of the gesture, resulting in false detection of the gesture. Hateful. As a result, it can be easily applied to a game where a plurality of people can participate, and can be developed into various applications.
  • a gesture can be detected by the same processing based on a temporal change in the face position.
  • the position of the face in the vertical and horizontal planes relative to the imaging device is determined by image analysis such as a translation parameter of a shape space vector that defines the head contour obtained by visual tracking and face detection for the inner region of the head contour. Can be specified.
  • the position in the depth direction with respect to the imaging apparatus can be specified from the magnification parameter of the shape space vector that defines the head contour, the size of the face region, and the like.
  • each gesture is detected by setting a reference for detecting the gesture with respect to the temporal change of the face position. For example, it is possible to correspond to a surprise gesture when the face is pulled away from the imaging apparatus, a gesture that the person is interested when the face is approached and the face approaches the image apparatus. Furthermore, if we focus on the ⁇ -shaped shape that represents the head contour in visual tracking, we can detect gestures such as shrugging and stretching the neck. Further, if such a change in position is used for pointing among the functions of the mouse described above, all of left and right clicks and pointing can be realized by the movement of the face.
  • the head region is identified by visual tracking, and then the gesture of shaking the head is identified by identifying the temporal change of the face direction.
  • the state of the eyes and mouth is not limited to the face direction. May be obtained.
  • face detection processing is performed on the internal region of the head contour obtained by visual tracking to acquire the state of the target portion, for example, the degree of eyelid or mouth opening. Then, by blinking the time change, blinking and speech are detected.
  • the state of the part is specified after faithfully following the temporal change of the head region and thus the face region, so that detection with high accuracy is possible.
  • Information processing system 10 Information processing system, 12 Imaging device, 14 Information processing device, 16 Display device, 20 Image acquisition unit, 26 Tracking processing unit, 28 Gesture detection unit, 30 Output data generation unit, 32 Output control unit, 40 Image processing unit, 42 Sampling unit, 46 observation unit, 50 result acquisition unit, 52 tracking result acquisition unit, 54 face area analysis unit, 56 history storage unit, 58 determination criterion storage unit, 60 gesture determination unit.
  • the present invention can be used for information processing apparatuses such as computers, game machines, and image processing apparatuses.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Image Analysis (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

 撮像装置12が取得したユーザの姿を含む動画像のデータを、情報処理装置14の画像取得部20が取得する。追跡処理部26は、パーティクルフィルタによる視覚追跡を動画像に対し行い、ユーザの頭部輪郭を推定する。ジェスチャ検出部28は、頭部輪郭の内部領域における顔の領域を特定し、顔の向きを表すパラメータを取得して履歴化する。顔の向きの時間変化が所定の基準を満たしたとき、ジェスチャがなされたと判定する。出力データ生成部30は、ジェスチャの検出結果に応じた出力データを生成する。出力制御部32は生成された出力データを、例えば表示装置16に表示するよう制御する。

Description

情報処理装置および情報処理方法
 本発明は情報処理技術に関し、特にユーザの入力に応じた処理を行うためのユーザインターフェースを含む情報処理装置およびそこで実行される情報処理方法に関する。
 近年、ゲーム装置や電化製品などを含む電子機器や情報処理装置は、その機能が著しく高度化している。それに伴い、ユーザインターフェースによってユーザが行うことのできる入力体系は複雑化している。そのような複雑な入力体系にあっても容易な入力が可能となるように、ユーザインターフェースには様々な工夫がなされてきた。例えば、コントローラにおけるボタンの割り付けを工夫したり、タッチパネルを利用したりするほか、ユーザを撮像する装置をインターフェースとして取得した画像を解析することにより、ユーザの顔の向きの変化に応じた処理を行う技術も提案されている(例えば特許文献1参照)。
 このように撮像装置をユーザインターフェースとする場合、一般的には顔検出技術を利用してユーザの顔の状態などを検出することができる。例えばあらかじめ準備した基準画像と検出した顔領域の画像とをマッチングしたり特徴点を抽出したりすることにより顔の部位を検出し、その時間変化を取得する。
特開2008-112360号公報
 情報処理技術の進歩によって、電子機器や情報処理装置を利用する環境、ユーザ、処理内容なども多様化し、それらの要因に応じて、望まれるユーザインターフェースも異なってくる。したがってそのようなニーズに合致させて、ユーザインターフェースの態様もさらに多様化させる必要がある。特に、多くのボタンなどによって複雑な入力を行わずともより自然な動きで入力が可能なユーザインターフェースが望まれている。
 本発明はこのような課題に鑑みてなされたものであり、その目的は、人の頭部のジェスチャによって正確な入力が可能なユーザインターフェースを含む情報処理技術を提供することにある。
 本発明のある態様は情報理装置に関する。この情報処理装置は、対象物の動きを動画像として撮像する撮像装置と、撮像装置が撮像した動画像に含まれる各画像フレームにおける対象物の輪郭の候補曲線を、前の時刻の画像フレームにおいて推定した対象物の輪郭に基づいて定め、各候補曲線の尤度を観測することにより、各画像フレームにおける対象物の輪郭を推定する追跡処理部と、追跡処理部が推定した対象物の輪郭の内部領域について画像解析を行うことにより対象物の向きまたは対象物の位置を表すパラメータを取得し、パラメータによって推定される対象物の向きまたは対象物の位置の時間変化を、あらかじめジェスチャごとに設定した基準と照合することにより、当該ジェスチャがなされたか否かを判定するジェスチャ検出部と、ジェスチャ検出部がジェスチャがなされたと判定したとき、当該ジェスチャに対応した処理を行い出力データを生成する出力データ生成部と、を備えることを特徴とする。
 本発明の別の態様は情報処理方法に関する。この情報処理方法は、対象物の動きを動画像として撮像するステップと、撮像した動画像に含まれる各画像フレームにおける対象物の輪郭の候補曲線を、前の時刻の画像フレームにおいて推定した対象物の輪郭に基づいて定め、各候補曲線の尤度を観測することにより、各画像フレームにおける対象物の輪郭を推定するステップと、推定した対象物の輪郭の内部領域について画像解析を行うことにより対象物の向きまたは対象物の位置を表すパラメータを取得するステップと、パラメータによって推定される対象物の向きまたは対象物の位置の時間変化を、あらかじめジェスチャごとに設定した基準と照合することにより、当該ジェスチャがなされたか否かを判定するステップと、ジェスチャがなされたと判定されたとき、当該ジェスチャに対応した処理を行い出力データを生成するステップと、を含むことを特徴とする。
 なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システム、コンピュータプログラム、コンピュータプログラムを記録した記録媒体などの間で変換したものもまた、本発明の態様として有効である。
 本発明によれば、人の頭部のジェスチャを利用して多様な処理を精度よく行うことができる。
本実施の形態を適用できる情報処理システムの構成例を示す図である。 人間が頭部を用いたジェスチャをする際に頭部が回転する方向を説明するための図である。 人物を追跡対象とした場合の視覚追跡手法を説明するための図である。 パーティクルフィルタを用いた確率密度分布推定の手法を説明する図である。 本実施の形態における情報処理装置の構成を詳細に示す図である。 本実施の形態における追跡処理部の構成を詳細に示す図である。 本実施の形態におけるジェスチャ検出部の構成を詳細に示す図である。 本実施の形態において履歴記憶部に記憶される顔向き角度の時間変化の例を示す図である。 本実施の形態の報処理装置の処理手順を示すフローチャートである。 図9のフローチャートで処理対象としたゲームにおいて表示装置に表示する画像の例を示す図である。
 図1は本実施の形態を適用できる情報処理システムの構成例を示す。情報処理システム10は、ユーザ18を撮像する撮像装置12、ユーザのジェスチャを検出しそれに応じた情報処理を行う情報処理装置14、情報処理装置が処理した結果得られた画像データを出力する表示装置16を含む。
 情報処理装置14と、撮像装置12あるいは表示装置16との接続は、有線、無線を問わず、また種々のネットワークを介していてもよい。あるいは撮像装置12、情報処理装置14、表示装置16のうちいずれか2つ、または全てが組み合わされて一体的に装備されていてもよい。また、撮像装置12は必ずしも表示装置16の上に搭載されていなくてもよい。以後の説明では、撮像装置12は表示装置16に対峙したユーザ18を正面から撮像することを前提とするが、撮像する方向が異なっていても、簡単な座標変換により同様の処理を行うことができる。またユーザ18は情報処理装置14で処理される内容によって複数でもよい。
 撮像装置12はユーザ18を含む画像のデータを、所定のフレームレートで取得する。取得された動画像データは情報処理装置14に入力される。情報処理装置14は、撮像装置12から取得した動画像データからユーザ18の顔の向きあるいは頭部の向きの時間変化を取得する。本実施の形態では、ユーザ18の顔の向きの時間変化を取得することにより頭部のジェスチャを検出し、その結果を様々な処理に利用する。ここで、頭部のジェスチャを精度よく検出するために、頭部輪郭の視覚追跡を行う。具体的な手法は後に詳述する。また、ジェスチャを検出したあと、それを利用して情報処理装置14が実行する処理は様々考えられ、その内容は限定されない。また本実施の形態では頭部に着目して首を振るジェスチャを検出する態様を主に述べるが、頭部に限らず手のひら、足などの体の部位または体全体を用いたジェスチャや、ユーザに持たせた物の動きによるジェスチャなどでも同様に検出できる。
 図2は人間が頭部を用いたジェスチャをする際に頭部が回転する方向を説明するための図である。ユーザ18が首を横に振った場合、それはYaw軸方向の回転と考えることができる。同様にうなずいた場合はPitch軸方向の回転、首をかしげた時はRoll軸の回転と考えることができる。本実施の形態では、これらの回転軸のうち少なくとも1つの軸に対する回転を、各画像フレームの時刻に対する顔の向きを取得することにより検出する。そして、例えばPitch軸方向の回転角の変化をうなずき(肯定)、Yaw軸方向の回転角の変化を首を横に振る(否定)、Roll軸方向の回転角の変化を首をかしげる(わからない)という意志を表現するジェスチャと捉えると、そのような意志を反映させることのできるゲームや情報処理を行うことができる。
 また、単にそれらの3種類の変化を最大3種類の選択肢からの選択入力に利用することもできる。この場合、あらかじめ首を振る向きと処理とを対応づけておくことにより、情報処理装置14は、マウス、トラッキングボール、アナログスティックなど一般的な入力装置に代えて顔の向きの変化を利用でき、さらに幅広い分野の情報処理を行うことができる。以後の説明では、一般的に用いるジェスチャの他、このように情報処理ごとに定めた対応づけによって行う首振りも広義の「ジェスチャ」とする。情報処理装置14が実行する処理の例は後に述べる。表示装置16は、情報処理装置14がユーザ18のジェスチャを検出した結果を反映させて生成した画像データを取得し、画像として出力する。
 次に情報処理装置14が行う、ユーザ18の顔の向きの時間変化の検出原理を説明する。本実施の形態では、顔の向きの時間変化を精度よく検出するため、まず頭部輪郭の動きを追跡する。具体的には、パーティクルフィルタを用いた視覚追跡処理を、撮像装置12が撮像したユーザ18を含む画像に対して実行する。頭部輪郭の視覚追跡は、動画像の各画像フレームの頭部輪郭を時間発展的に推定していく技術である。また、顔の向きが変化しても画像フレーム間でその頭部輪郭が大幅に変化することは考えにくい。結果として、顔の向きが時間変化してもジェスチャ検出精度への影響が少ない。
 本実施の形態では上述のとおり、「顔の向きの時間変化」という時間幅を有する行為を入力として利用する。顔領域の画像処理として一般的に用いられる顔検出技術は、基本的に静止画に対する処理であり、それを時間変化の検出に利用するということは、結局、複数の静止画についての検出結果をつなげていくことに他ならない。顔検出の処理自体は、処理の効率化という観点以外に、基本的には前の画像フレームとの関連性を考慮しないため、複数の人が画像に含まれていたり人が移動したりといった状況の変化が考えられるような有限の時間で発生した事象を検出するときは誤差を含みやすい。本実施の形態によれば、頭部輪郭の追跡処理自体が時間発展的であるため、前の画像フレームとの関連性から個々人の動きを精度よく捉えることができる。
 図3は人物を追跡対象とした場合の視覚追跡手法を説明するための図である。人物画像150は撮像した動画像の画像ストリームを構成する画像フレームのひとつであり、追跡対象である人物152が写っている。当該人物152が、図1におけるユーザ18に対応する。
 この人物152の動きを追跡するために、人物152の頭部輪郭の形状を近似するΩ形の曲線154を既知の表現で記述する。一方、人物152を含む人物画像150にはエッジ抽出処理を施し、エッジ画像を取得しておく。そして曲線154を規定するパラメータを変化させることにより当該曲線154を並進、伸縮、回転させて、その近傍にあるエッジを探索することにより、人物152の頭部輪郭と最もマッチすると推定されるパラメータの値を特定する。以上の処理をフレームごとに繰り返すことにより人物152の追跡が進捗する。ここでエッジとは一般的には画像の濃度や色に急な変化を有する箇所のことである。
 規定するパラメータの値を様々にした曲線154と人物152の頭部輪郭とのマッチングを行うために、パーティクルフィルタによる確率分布予測技術を導入する。すなわち、ひとつ前のフレームにおけるパラメータ空間上の対象物の確率分布に応じて曲線154のサンプリング数を増減させ、追跡候補の絞り込みを行う。これにより存在確率の高い部分に対しては重点的に探索を行うことができ、精度のよいマッチングが効率的に行える。
 対象物の輪郭に着目した追跡に対するパーティクルフィルタの適用手法は、例えば非特許文献(ICondensation: Unifying low-level and high-level tracking in a stochastic framework, Michael Isard and Andrew Blake, Proc 5th European Conf. Computer Vision, 1998)に詳述されている。ここでは本実施の形態に係る点に着目して説明する。
 まずΩ形の曲線154を、Bスプライン曲線で記述する。Bスプライン曲線はn個の制御点(Q0,・・・,Qn)とn個のノット(s0,・・・,sn)とから定義される。そして基本となる曲線形状、この場合はΩ形の曲線となるように、それらのパラメータをあらかじめ設定しておく。このときの設定によって得られる曲線を以後、テンプレートQtと呼ぶ。なお、図2で示した人物画像150における人物152の追跡を行う場合は、テンプレートQtはΩ形であるが、その形状は追跡対象によって変化させる。すなわち追跡対象がボールであれば円形、手のひらであれば手の形状などとなる。
 次にテンプレートの状態を変化させるための変換パラメータとして、形状空間ベクトルxを準備する。形状空間ベクトルxは以下のような6つのパラメータで構成される。
Figure JPOXMLDOC01-appb-M000001
 ここで(shift,shift)は(x,y)方向への並進量、(extend,extend)は倍率、θは回転角である。そして形状空間ベクトルxをテンプレートQtに作用させるための作用行列Wを用いると、変形後の曲線、すなわち候補曲線Qは以下のように記述できる。
Figure JPOXMLDOC01-appb-M000002
 式2を用いれば、形状空間ベクトルxを構成する6つのパラメータを適宜変化させることにより、テンプレートを並進、伸縮、回転させることができ、組み合わせによって候補曲線Qを種々変化させることができる。
 そして、制御点、およびノットの間隔といったテンプレートQtのパラメータや、形状空間ベクトルxを構成する6つのパラメータを変化させることによって表現される複数の候補曲線について、各ノットの近傍にある人物152のエッジを探索する。その後、エッジとの距離などから各候補曲線の尤度を求めることにより、形状空間ベクトルxを構成する6つのパラメータで定義される6次元空間における確率密度分布を推定する。
 図4はパーティクルフィルタを用いた確率密度分布推定の手法を説明する図である。同図では理解を簡単にするために、形状空間ベクトルxを構成する6つのパラメータのうち、あるパラメータx1の変化を横軸に表しているが、実際には6次元空間において同様の処理が行われる。ここで確率密度分布を推定したい画像フレームが時刻tの画像フレームであるとする。
 まず、時刻tの画像フレームのひとつ前のフレームである時刻t-1の画像フレームにおいて推定された、パラメータx1軸上の確率密度分布を用いて(S110)、時刻tにおけるパーティクルを生成する(S112)。それまでにフィルタリングを行い、すでにパーティクルが存在する場合は、その分裂、および消滅を決定する。S110において表した確率密度分布は、パラメータ空間上の座標に対応して離散的に求められたものであり、円が大きいほど確率密度が高いことを表している。
 パーティクルはサンプリングするパラメータx1の値とサンプリング密度とを実体化したものであり、例えば時刻t-1において確率密度が高かったパラメータx1の領域は、パーティクル密度を高くすることで重点的にサンプリングを行い、確率密度の低かった範囲はパーティクルを少なくすることでサンプリングをあまり行わない。これにより、例えば人物152のエッジ近傍において候補曲線を多く発生させて、効率よくマッチングを行う。
 次に所定の運動モデルを用いて、パーティクルをパラメータ空間上で遷移させる(S114)。所定の運動モデルとは例えば、ガウシアン型運動モデル、自己回帰予測型運動モデルなどである。前者は、時刻tにおける確率密度は時刻t-1における各確率密度の周囲にガウス分布している、とするモデルである。後者は、サンプルデータから取得した2次以上の自己回帰予測モデルを仮定する手法で、例えば人物152がある速度で等速運動をしているといったことを過去のパラメータの変化から推定する。図2の例では、自己回帰予測型運動モデルによりパラメータx1の正方向への動きが推定され、各パーティクルをそのように遷移させている。
 次に、各パーティクルで決定される候補曲線の近傍にある人物152のエッジを、時刻tのエッジ画像を用いて探索することにより、各候補曲線の尤度を求め、時刻tにおける確率密度分布を推定する(S116)。前述のとおり、このときの確率密度分布はS116に示すように、真の確率密度分布400を離散的に表したものになる。以降、これを繰り返すことにより、各時刻における確率密度分布がパラメータ空間において表される。例えば確率密度分布が単峰性であった場合、すなわち追跡対象が唯一であった場合は、得られた確率密度を用いて各パラメータの値に対し重み付けした和を最終的なパラメータとすることにより、追跡対象の輪郭と推定される曲線が得られることになる。
 S116において推定される時刻tにおける確率密度分布p(xt i)は以下のように計算される。
Figure JPOXMLDOC01-appb-M000003
 ここでiはパーティクルに一意に与えられた番号、p(xt i|xt i, ut-1)は所定の運動モデル、p(yt|xt i)は尤度である。式3で得られる確率密度分布は、形状空間ベクトルの各パラメータに対して得られる。したがって当該確率密度分布でパーティクルの加重平均を求めることにより、各時刻の形状空間ベクトルが推定できる。
 このようにして得られた各時刻の形状空間ベクトルが定めるΩ形の頭部輪郭の内部領域は、およそ顔領域および髪の毛の領域で構成される。そこで当該頭部輪郭の顔領域の変化を取得することにより、顔の向きの変化を検出する。例えば、テクスチャマッチングにより頭部領域のうち顔領域を各画像フレームで特定し、その面積の変化と変化の方向を取得する。なお顔領域の特定は、テクスチャ以外に、色、エッジ、周波数分布など画像が有する特徴のいずれを利用してもよい。この場合、面積が振動していれば顔の向きが振動している、ひいてはユーザ18が首を振っていると判定する。領域が縦方向に伸縮していればPitch角、横方向に伸縮していればYaw角の変化である。
 これらの変化を統合すれば、「肯定」、「否定」のジェスチャを検出できる。またRoll角の変化は、上述の視覚追跡処理における形状空間ベクトルのうち、回転角θの変化で特定でき、これにより首をかしげる「疑問」のジェスチャを検出できる。このように、本実施の形態では頭部のジェスチャを精度よく検出することができるため、それを利用した様々なアプリケーションと組み合わせることができる。
 図5は情報処理装置14の構成を詳細に示している。情報処理装置14は、撮像装置12から入力される入力画像データを取得する画像取得部20、上述の視覚追跡処理を実行する追跡処理部26、追跡の結果得られた頭部輪郭の内部領域の画像データからジェスチャを検出するジェスチャ検出部28、検出したジェスチャを利用したゲームなどのアプリケーションを実行し画像データなどの出力データを生成する出力データ生成部30、および、生成された出力データの表示装置16などへの出力を制御する出力制御部32を含む。
 図5および以後の図6、7において、様々な処理を行う機能ブロックとして記載される各要素は、ハードウェア的には、CPU、メモリ、その他のLSIで構成することができ、ソフトウェア的には、画像処理を行うプログラムなどによって実現される。したがって、これらの機能ブロックがハードウェアのみ、ソフトウェアのみ、またはそれらの組合せによっていろいろな形で実現できることは当業者には理解されるところであり、いずれかに限定されるものではない。
 画像取得部20は、有線、無線を問わず撮像装置12からユーザの画像をリアルタイムで取得する。追跡処理部26は、上述の視覚追跡の手法によりユーザの頭部輪郭を追跡する。ジェスチャ検出部28は、追跡処理部26の追跡の結果得られる各画像フレームの時刻における頭部輪郭のデータに基づき、上述のようにジェスチャを検出する。なお上述の説明では、各時刻の頭部領域における顔領域をテクスチャマッチングにより特定し、顔領域の面積の時間変化とその変化の方向を用いて、Pitch軸方向、Yaw軸方向の向きの時間変化を取得するとした。一方、テクスチャマッチング以外の手法を用いることもできる。
 例えば、頭部領域について顔検出処理を施してもよい。この場合、頭部輪郭の内部に顔が検出されたら、各部位の相対位置、あるいは特定の部位の位置などの検出結果を各時刻について記録することにより、Pitch角、Yaw角の時間変化を取得してもよい。あるいは、コンピュータビジョンの分野で一般的に用いられるオプティカルフローやLucas-Kanadeアルゴリズム(klt)の技術を用いて、頭部輪郭の内部領域の移動方向と移動量を大域的に解析してもよい。
 または、各時刻の頭部輪郭の内部領域と、直前の画像フレームなど時間的に前の画像フレームにおける頭部輪郭の内部領域とをマッチングし、内部領域中の注目箇所の移動量や面積の変化量とその方向から頭部領域の向きの変化を取得してもよい。このようなマッチングやオプティカルフローなどの画像解析では、頭部そのものの回転を検出することができるため、ユーザの背後に近い位置から撮影した場合など顔領域が少ない場合でもジェスチャの検出が可能である。いずれの場合であっても、顔の向き、あるいは頭部の向きを表すパラメータを各画像フレームで取得してその時間変化を記録し、あらかじめジェスチャごとに設定した所定の基準を満たした場合に、ジェスチャが行われたと判定する。
 出力データ生成部30は、ジェスチャ検出部28がジェスチャが行われたと判定した場合に、その結果に対応する処理を行い、画像データなどの出力データを生成する。上述のように本実施の形態は様々なアプリケーションへの応用が可能であるため、出力データ生成部30は、画像データを生成するばかりでなく各アプリケーションに応じた処理を行ってよい。例えば、ジェスチャ検出部28が検出するジェスチャと、それに応じた処理とをあらかじめ対応づけておき、出力データ生成部30は当該ジェスチャに対応する処理を行うようにしてもよい。
 図6は追跡処理部26の構成を詳細に示している。追跡処理部26は、入力画像データからエッジ画像などを生成する画像処理部40、パーティクルの生成および消滅によってパラメータ空間におけるサンプリングを行うサンプリング部42、各パーティクルが規定する候補曲線の尤度を観測する観測部46、観測の結果を統合し、形状空間ベクトルを推定する結果取得部50、Ω形のテンプレートを規定するパラメータを記憶するパラメータ記憶部48を含む。
 画像処理部40は、入力画像データの画像フレームごとにエッジ抽出処理を施し、エッジ画像を生成する。ここではキャニーエッジフィルタや、ソーベルフィルタなど一般的なエッジ抽出アルゴリズムを用いることができる。また画像処理部40は、背景差分を利用した前景抽出器(図示せず)を実装していてもよく、エッジ抽出処理の前処理として入力画像から追跡対象を含む前景を抽出することにより、追跡対象のエッジを効率的に抽出するようにしてもよい。
 サンプリング部42は、一つ前の時刻t-1における画像フレームに対して推定された、形状空間ベクトルxの空間での確率密度分布に基づきパーティクルの生成および消滅の処理を行う。そして全パーティクルに対し所定の運動モデルを適用して、パーティクルを当該空間上で遷移させる。
 観測部46は、サンプリング部42が生成・消滅、遷移させた各パーティクルが定める候補曲線の尤度を観測する。尤度は上述のように、画像処理部40が生成したエッジ画像上で、各候補曲線の近傍にあるエッジを探索し、当該エッジまでの距離を候補曲線ごとに見積もることによって決定する。候補曲線は上述のように、パラメータ記憶部48から読み出したΩ形のテンプレートに対し、各パーティクルを規定するパラメータを作用させることによって得られる。
 結果取得部50は、観測部46が観測した尤度に基づき式3で示すような確率密度分布を形状空間ベクトルxの空間において算出し、それにより各パラメータを重み付け平均する。また次の時刻t+1における追跡処理に使用するため、サンプリング部42にそのデータを返す。
 追跡対象が複数存在する場合、結果取得部50はさらに、それぞれに用意したテンプレートを用いて、追跡対象ごとに追跡を行う。また複数の追跡対象が重なるような場合を追跡結果によって検出し、後ろに隠れる追跡対象については所定のタイミングで追跡処理対象からはずすなどの措置を講じる。これにより追跡対象が別の追跡対象の背後に回ったことによって観測尤度が一時的に低下しても、不適当な追跡結果を出力するのを避けることができる。
 図7はジェスチャ検出部28の構成を詳細に示している。ジェスチャ検出部28は、視覚追跡の結果推定された各時刻の頭部輪郭の曲線を取得する追跡結果取得部52、頭部輪郭の内部領域の画像を解析することにより顔の向きを表す所定のパラメータを算出する顔領域解析部54、当該パラメータを蓄積し履歴として記憶する履歴記憶部56、当該パラメータの時間変化に対しジェスチャがなされたと判定する基準を記憶する判定基準記憶部58、当該パラメータの時間変化を判定基準に照らしジェスチャがなされたか否かを判定するジェスチャ判定部60を含む。
 以後、「顔の向きを表すパラメータ」は単に各軸についての「顔向き角度」と呼ぶ。例えば頭部輪郭の内部領域に顔検出処理を施す場合、顔あるいは所定の部位のPitch軸、Yaw軸の角度は一般的な手法により取得することができる。またRoll軸の角度は上述のとおり、形状空間ベクトルのパラメータのうち回転を表すパラメータθを用いることができる。一方、上述のように顔検出の手法を用いずとも、テクスチャマッチングによって得られる顔の面積などによっても顔の向きを類推することができる。このように、顔の向きを特定するための手法に応じて「顔向き角度」は適宜別のパラメータに置き換えることができる。
 追跡結果取得部52は、追跡処理部26が各画像フレームに対し推定した頭部輪郭を表す曲線のデータを取得する。これは上述のように、各パーティクルを規定する形状空間ベクトルのパラメータを確率密度分布で重み付け平均して得られた結果である。顔領域解析部54は、頭部輪郭の内部領域に対しテクスチャマッチング、顔検出処理などあらかじめ定めた処理を適用し、各画像フレームにおける顔向き角度を取得する。取得した結果は回転軸ごとに履歴記憶部56に順に蓄積していく。
 ジェスチャ判定部60は、顔領域解析部54が顔向き角度について解析する都度、それまで履歴記憶部56に記憶された顔向き角度の履歴と新たな解析結果とから、その時点までの顔向き角度の時間変化と、判定基準記憶部58に設定した判定基準とを照合し、ジェスチャがなされたか否かを判定する。判定結果は出力データ生成部30に通知する。
 図8は、履歴記憶部56に記憶される、ある回転軸の顔向き角度の時間変化の例を示している。同図は横軸を時間軸、縦軸を顔向き角度とし、ジェスチャのないニュートラルポジションでの顔向き角度を角度「0」としている。なお顔向き角度を求める手法に応じて、ニュートラルポジション時の顔向き角度のパラメータをあらかじめ取得しておく。
 ニュートラルポジションからの顔向き角度は、各画像フレームにおける顔向き角度を顔検出やマッチングなどを用いて直接求めてもよいし、前の画像フレームからのテクスチャの移動を検出することにより相対的な角度変化を求めるようにしてもよい。このとき、さらにニュートラルポジション時の顔領域の画像と比較することによってニュートラルポジションからの角度を取得することにより相対的な角度変化を補正するようにしてもよい。
 また顔向き角度は各回転軸に対して同様の履歴を取得しておく。判定基準記憶部58には、ジェスチャと判定するための判定基準を、同図のような顔向き角度の変化に対しあらかじめ設定して格納しておく。例えば、顔向き角度の振幅に対してしきい値を設定し、さらに振動の継続時間に対してしきい値を設定する。図8の例では、前者を「±θ1」、後者を「T」として表している。この場合、しきい値「±θ1」を超える振幅を有する角度の振動が時間「T」以上観測されたら、ジェスチャがなされたと判定する。
 なお回転軸とジェスチャとの対応関係を判定基準記憶部58に格納しておいてもよい。例えば、Pitch軸の振動であれば「肯定」、Yaw軸の振動であれば「否定」と対応づける。角度の振動は高速フーリエ変換(FFT:Fast Fourier Transform)などを用いて周波数解析を行うことにより検出することができる。あるいは、ピークの出現回数にさらにしきい値を設け、所定時間「T」内にしきい値「±θ1」を超えるピークが、所定回数出現したらジェスチャがなされたと判定してもよい。図8の例では、始めの段階では小さな動きが見られるものの、その振幅はしきい値「±θ1」には至っていない。このような動きは、ユーザが意志をもって行ったジェスチャではないと判断する。
 一方後半には、しきい値「±θ1」を超える4つのピーク「A」、「B」、「C」、「D」が、継続時間のしきい値Tの間、継続して観測できる。このとき、最初のピーク「A」からしきい値Tを経過した時点でジェスチャがなされたと判定する。この例では角度の振動を観測しているため、例えば「肯定」を示すうなずきと「否定」を示す首を横に振るジェスチャを検出することができる。一方、判定基準は後に出力データ生成部30が行う処理によって様々に設定してよい。例えば、一回だけうなずく、首をかしげるなど、いずれかの回転軸に対し一回だけ大きく角度が変化し戻る動作を検出する場合は、角度のしきい値のみを設定すればよい。
 図8の例は、ニュートラルポジションにおける顔向き角度を「0」としたときの顔向き角度の時間変化を示しているが、上述のように、厳密に角度の絶対値を取得しなくてもよい。例えば、前の時刻の画像フレームからの変化量から単位時間当たりの変化量とその方向、すなわち速度ベクトルが概ね取得できれば、その時間変化から向きや位置の振動が検出できる。ここで取得する「変化量」は、角度の変化量以外に、前の画像フレームとのマッチングによって得られた注目箇所の移動量、面積の変化などでもよい。このように「速度ベクトルの時間変化」に基づきジェスチャを検出する場合は、例えば速度のピークに対ししきい値を設け、判定基準としてもよい。
 次にこれまで述べた構成によって実現できる動作を説明する。図9は情報処理装置14の処理手順を示すフローチャートである。ここではユーザのPitch軸(縦方向)およびYaw軸(横方向)の首振りを、それぞれ「YES」(肯定)、「NO」(否定)のジェスチャとして検出し、それをゲームに利用する場合を例に説明する。
 まずユーザが当該ゲームのソフトウェアを起動させると、撮像装置12が当該ユーザの撮像を開始するとともに表示装置16に初期画面を表示する(S8)。一方、追跡処理部26は撮像装置12が撮像した画像を逐次読み込んで頭部輪郭の視覚追跡を開始する(S10)。ジェスチャ検出部28の追跡結果取得部52は、追跡の結果として、現在時刻tにおける画像フレームの頭部輪郭の曲線データを取得する(S12)。次にジェスチャ検出部28の顔領域解析部54は、得られた頭部輪郭の内部領域に対し顔領域特定、顔向き角度の取得を試みる(S14)。何らかの原因で顔領域が特定できなかったり顔向き角度が得られない場合は(S14のN)、次の時刻t+1の画像フレームの頭部輪郭を取得する(S15、S12)。
 顔領域が特定でき、顔向き角度も得られた場合は(S14のY)、当該顔向き角度のデータを履歴記憶部56に格納する(S16)。この際、画像フレームのIDあるいは時刻tと対応させて、各回転軸に対する角度を格納する。次にジェスチャ検出部28のジェスチャ判定部60は、判定基準記憶部58に設定された判定基準に照らし、まずYaw軸で判定基準を満たしたか否かを判定する(S18)。基準を満たした場合は(S18のY)、ユーザが「NO」のジェスチャをしたと判定する(S20)。
 Yaw軸で基準を満たしていなければ(S18のN)、次にPitch軸で判定基準を満たしたか否かを判定する(S22)。基準を満たした場合(S22のY)、ユーザが「YES」のジェスチャをしたと判定する(S24)。一般的に、人が首を振るジェスチャは、縦方向の動きより横方向の動きの方が明確に行われることがわかっている。そのため、Yaw軸の振動を先に判定してS18のYの分岐を早く確定させることにより、Pitch軸の判定による計算負荷を軽減させることができる。ただし本実施の形態はこれに限らず、例えば2つの回転軸に対する判定を並列に行ってもよい。
 いずれの回転軸でも判定基準を満たさない場合は(S18のN、S22のN)、次の時刻t+1の画像フレームの頭部輪郭を取得し(S15、S12)、同様の処理を繰り返す(S14~S24)。なお複数の人間が撮像対象となっている場合は、それぞれの頭部輪郭についてS14~S24の処理を繰り返す。いずれかのジェスチャがなされたと判定されたら(S20またはS24)、出力データ生成部30は当該ジェスチャに対応する処理を行い、その結果生成された画像データは、出力制御部32の制御のもと表示装置16に表示される(S26)。
 なお図9のフローチャートは、ユーザのジェスチャ検出に主眼を置いているため、その他の処理は省略しているが、ジェスチャがなくても画像内のオブジェクトが動くなど、S26で表示する最新画像には動きがあってもよい。ゲーム自体が終了したりユーザが終了指示を出したり、といったことにより処理を終了する必要がなければ(S28のN)、次の画像フレームの時刻t+1を現在時刻tとして(S30)、S12からS26までの処理を繰り返す。処理終了の必要が生じたら(S28のY)、そこで処理を終了する。
 図9のフローチャートにおいてS18およびS22のジェスチャ判定の処理は、上述のように、継続時間のしきい値Tだけ顔向き角度の振動が継続した時点でジェスチャがなされたと判定する。このとき実際には、しきい値Tまで待たずとも、振動が開始した後、その継続時間とともに当該振動がジェスチャである確率が増えていく。この性質を利用して、しきい値Tより前の所定のタイミング、例えばしきい値Tの70%の時間経過後などで、「NO」または「YES」のジェスチャがなされそうであることを先読みしてもよい。そしてこの段階で、ジェスチャがなされたと最終的に判定された後にすべき処理、例えば更新する画像データの生成などの処理の一部を投機的に行っておいてもよい。
 この場合、しきい値Tまで振動が継続すれば、投機的に行っていた処理の結果を利用してその後の処理を開始し、しきい値T経過前に振動がなくなれば投機的な処理の結果は破棄する。このようにすることで、ジェスチャに対するその後の処理や出力の応答性が向上する。
 次に本実施の形態で実現できるアプリケーションの例を説明する。図10は図9のフローチャートで処理対象としたゲームにおいて、表示装置16に表示する画像の例を示している。このゲームは、複数の参加者が表示装置16に表示された質問に「YES」か「NO」で答えるものである。答えが「YES」であれば首を縦に数回振り、「NO」であれば首を横に数回振るようにルールづけをしておく。ゲーム中、表示装置16にはゲーム画面70を表示する。
 ゲーム画面70は、テレビのクイズ番組を模した構成を有し、参加者の人数分の回答者席74が表示される。そして撮像装置12が撮影した参加者を含む画像のうち、視覚追跡の結果得られた各参加者の頭部領域の部分を切り取り、各回答者席74の上に参加者の顔画像76a、76b、76cとして表示する。そして質問領域72に表示した質問を見た参加者が、上述のルールに基づき、首の振り具合によって回答する。ジェスチャ検出部28は各参加者が「YES」のジェスチャをしたか「NO」のジェスチャをしたかを判定し、出力データ生成部30に通知する。
 視覚追跡とジェスチャ検出は実際には撮像装置12が撮像した画像上で処理が行われているため、頭部領域の画像とジェスチャの内容とは対応がとれている。したがって出力データ生成部30は、ジェスチャの内容である「YES」または「NO」の文字列を、各参加者の回答として回答者席74に表示することができる。さらに各回答に対して正解か不正解かを表す表示を行ってもよいし、回答者席の背後に得点を表示するなどしてもよい。このような画面を表示することで、ユーザは、あたかも自分がクイズ番組の回答者になったような感覚でゲームを楽しむことができる。回答は頭部のジェスチャによって行うため、参加者一人一人にコントローラを用意する必要がなく、多人数の参加が可能である。
 このように、首を振るジェスチャの本来の意味を利用することで、ユーザにとってより自然な動きで装置への入力が可能となるため、特にゲームなどをリラックスした状態で楽しむことができる。クイズ以外でも、表示装置16に表示された仮想世界における自分を表すアバターに意思表示をさせて他のユーザとコミュニケーションをとるなど、様々なゲームに応用することができる。
 また、少なくとも2方向の首振りを検出することができるため、一方をマウスの左クリック、他方を右クリックに置き換えることにより、マウスの代替物とすることができる。この場合も直感的な動作で入力が可能であるうえ、マウスを使用するためのスペースが必要なくなるため、省スペースで様々な情報処理を行うことができる。
 以上述べた本実施の形態によれば、ユーザの頭部領域を視覚追跡技術により時間発展的に追跡し、当該頭部領域のうち顔領域の向きを監視することによりジェスチャがなされたか否かを判定する。これにより、人の動作という時間に対する連続的な変化を、前の画像フレームとの関連性を踏まえつつ追うことができる。結果として、正面を向いていない顔では検出精度を維持しづらい顔検出処理を適用しても、顔の検出に失敗することなく顔向き角度を取得することができ、ジェスチャ検出を高精度に行うことができる。また、顔検出を用いずに、テクスチャマッチングなど顔の向きを表すパラメータを取得できる処理を適用することにより、容易にジェスチャ検出を行える。また画像の明るさや撮像する人数などに応じて顔の向きを特定する手法を適宜選択することができる。
 マッチングで頭部輪郭の内部領域を大域的に捉える場合は、頭部領域の面積変化などにより、顔の向きに関わらず撮像装置に対する頭部の角度変化のみを捉えることもできる。これを利用すれば、撮像装置に対して横向きのユーザが首をかしげたジェスチャをうなずきと認識させるなど検出のバリエーションが増え、アプリケーションに望まれる態様を容易に実現することができる。
 また、前の画像との関連性を考慮して頭部領域を特定したうえでジェスチャ検出を行うため、ユーザが移動したり屈んだりして頭部領域が大きくずれても、当該変化は頭部輪郭の追跡処理において吸収されるため、顔向き角度の取得を継続して行うことができる。またそのようなジェスチャ以外の動きが顔向き角度の値に大きく影響してしまうことがない。ユーザが手を顔にあてたりマスクをしていたりしても、頭部輪郭に大きな変化はないため、追跡処理、ひいてはジェスチャの検出処理は大きな影響を受けることなくジェスチャ検出の精度維持が可能である。
 さらに複数の人を同時に撮影しても、頭部輪郭はそれぞれの人に対して連続して追跡できるため、人とジェスチャとの対応づけが自然に行われる。また人が動いて接近したり交錯しても、追跡した各頭部輪郭に対してジェスチャ検出を行うため、ジェスチャの途中で別人の顔と混同し、ジェスチャを誤検出してしまうといったことが起こりにくい。結果として、複数の人が参加できるゲームなどへの適用が容易であり、様々なアプリケーションへの発展が可能である。
 以上、本発明を実施の形態をもとに説明した。上記実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
 例えば本実施の形態では、顔向き角度の時間変化に基づきジェスチャを検出する例について説明したが、顔の位置の時間変化に基づいても同様の処理でジェスチャを検出することができる。この場合、視覚追跡によって得られた頭部輪郭を規定する形状空間ベクトルの並進量のパラメータや、頭部輪郭の内部領域に対する顔検出などの画像解析によって、撮像装置に対する縦横の平面における顔の位置を特定することができる。さらに頭部輪郭を規定する形状空間ベクトルの倍率パラメータや顔領域の大きさなどから撮像装置に対する奥行き方向の位置を特定することができる。
 そして顔の位置の時間変化に対しジェスチャを検出する基準を設定することにより、各ジェスチャを検出する。例えば顔を引いて撮像装置から離れた場合は驚きのジェスチャ、身を乗り出して顔が画像装置に近づいた場合は興味があるというジェスチャなどと対応させることができる。さらに視覚追跡で頭部輪郭を表すΩ形の形状そのものに着目すれば、首をすくめる、伸ばすといったジェスチャも検出できる。またこのような位置の変化を上述のマウスの機能のうちポインティングに利用すれば、左右のクリックとポインティングを顔の動きで全て実現することができる。
 また本実施の形態では、頭部領域を視覚追跡により特定したあと、顔の向きの時間変化を特定して首を振るジェスチャを検出したが、顔の向きに限らず、目や口の状態変化を取得してもよい。この場合、視覚追跡により得られた頭部輪郭の内部領域に対し、顔検出処理を行って対象部位の状態、例えばまぶたや口の開き具合を取得する。そしてその時間変化を履歴化することにより、まばたきや発話を検出する。この場合も、本実施の形態と同様、頭部領域、ひいては顔領域の時間変化を忠実に追ったうえで部位の状態を特定するため、高い精度での検出が可能である。
 10 情報処理システム、 12 撮像装置、 14 情報処理装置、 16 表示装置、 20 画像取得部、 26 追跡処理部、 28 ジェスチャ検出部、 30 出力データ生成部、 32 出力制御部、 40 画像処理部、 42 サンプリング部、 46 観測部、 50 結果取得部、 52 追跡結果取得部、 54 顔領域解析部、 56 履歴記憶部、 58 判定基準記憶部、 60 ジェスチャ判定部。
 以上のように本発明はコンピュータ、ゲーム機、画像処理装置などの情報処理装置に利用可能である。

Claims (14)

  1.  対象物の動きを動画像として撮像する撮像装置と、
     前記撮像装置が撮像した動画像に含まれる各画像フレームにおける対象物の輪郭の候補曲線を、前の時刻の画像フレームにおいて推定した対象物の輪郭に基づいて定め、各候補曲線の尤度を観測することにより、各画像フレームにおける対象物の輪郭を推定する追跡処理部と、
     前記追跡処理部が推定した対象物の輪郭の内部領域について画像解析を行うことにより対象物の向きまたは対象物の位置を表すパラメータを取得し、前記パラメータによって推定される対象物の向きまたは対象物の位置の時間変化を、あらかじめジェスチャごとに設定した基準と照合することにより、当該ジェスチャがなされたか否かを判定するジェスチャ検出部と、
     前記ジェスチャ検出部がジェスチャがなされたと判定したとき、当該ジェスチャに対応した処理を行い出力データを生成する出力データ生成部と、
     を備えることを特徴とする情報処理装置。
  2.  前記ジェスチャ検出部は前記対象物の向きの時間変化として、3方向の回転軸に対する対象物の向きの角度変化をそれぞれ推定することを特徴とする請求項1に記載の情報処理装置。
  3.  前記ジェスチャ検出部は、各画像フレームにおいて推定された対象物の輪郭の内部領域の画像と、それより前の画像フレームにおいて推定された対象物の内部領域の画像とをマッチングすることにより、対象物の向きまたは位置の変化を取得することを特徴とする請求項1または2に記載の情報処理装置。
  4.  前記ジェスチャ検出部は、画像フレーム間における前記内部領域の注目箇所の移動量をマッチングにより取得し、対象物の向きを取得することを特徴とする請求項3に記載の情報処理装置。
  5.  前記追跡処理部はユーザの頭部の輪郭を推定し、
     前記ジェスチャ検出部は、前記頭部の輪郭の内部領域にテクスチャマッチングを施すことにより顔領域を特定し、当該顔領域の面積の変化および変化する方向に基づき、頭部の向きの時間変化を推定することを特徴とする請求項1または2に記載の情報処理装置。
  6.  前記追跡処理部はユーザの頭部の輪郭を推定し、
     前記ジェスチャ検出部は、推定される頭部の向きの時間変化において、頭部の向きの角度の縦方向の振動が、所定のしきい値を超える振幅で所定時間分、継続したとき、頷くジェスチャがなされたと判定することを特徴とする請求項2に記載の情報処理装置。
  7.  前記追跡処理部はユーザの頭部の輪郭を推定し、
     前記ジェスチャ検出部は、推定される頭部の向きの時間変化において、頭部の向きの角度の横方向の振動が、所定のしきい値を超える振幅で所定時間分、継続したとき、首を横に振るジェスチャがなされたと判定することを特徴とする請求項2に記載の情報処理装置。
  8.  前記追跡処理部はユーザの頭部の輪郭を推定し、
     前記ジェスチャ検出部は、推定される頭部の向きの時間変化において、単位時間当たりの頭部の向きの変化量および変化の方向を表す速度ベクトルが所定の基準を満たしたとき、ジェスチャがなされたと判定することを特徴とする請求項2に記載の情報処理装置。
  9.  前記追跡処理部はユーザの頭部の輪郭を推定し、
     前記ジェスチャ検出部は、推定される頭部の向きの時間変化において、頭部の向きの角度の横方向の振動が所定の基準を満たしたか否かを確認して、首を横に振るジェスチャの有無を判定し、当該首を横に振るジェスチャがなされなかったと判定された場合に、頭部の向きの角度の縦方向の振動が所定の基準を満たしたか否かを確認して、頷くジェスチャの有無を判定することを特徴とする請求項2に記載の情報処理装置。
  10.  前記撮像装置は複数のユーザの動きを撮像し、
     前記追跡処理部は各画像フレームにおける頭部輪郭をユーザごとに推定し、
     前記ジェスチャ検出部は推定された各頭部輪郭に対しジェスチャがなされたか否かを判定することを特徴とする請求項1に記載の情報処理装置。
  11.  前記出力データ生成部は、複数のユーザに対し前記追跡処理部が推定した頭部輪郭の内部領域の画像と、各頭部輪郭に対しジェスチャがなされたか否かを判定した結果に応じた画像とを、ユーザごとに対応させて表示した画像のデータを生成することを特徴とする請求項10に記載の情報処理装置。
  12.  対象物の動きを動画像として撮像するステップと、
     撮像した動画像に含まれる各画像フレームにおける対象物の輪郭の候補曲線を、前の時刻の画像フレームにおいて推定した対象物の輪郭に基づいて定め、各候補曲線の尤度を観測することにより、各画像フレームにおける対象物の輪郭を推定するステップと、
     推定した対象物の輪郭の内部領域について画像解析を行うことにより対象物の向きまたは対象物の位置を表すパラメータを取得するステップと、
     前記パラメータによって推定される対象物の向きまたは対象物の位置の時間変化を、あらかじめジェスチャごとに設定した基準と照合することにより、当該ジェスチャがなされたか否かを判定するステップと、
     ジェスチャがなされたと判定されたとき、当該ジェスチャに対応した処理を行い出力データを生成するステップと、
     を含むことを特徴とする情報処理方法。
  13.  対象物の動きを動画像として撮像する機能と、
     撮像した動画像に含まれる各画像フレームにおける対象物の輪郭の候補曲線を、前の時刻の画像フレームにおいて推定した対象物の輪郭に基づいて定め、各候補曲線の尤度を観測することにより、各画像フレームにおける対象物の輪郭を推定する機能と、
     推定した対象物の輪郭の内部領域について画像解析を行うことにより対象物の向きまたは対象物の位置を表すパラメータを取得する機能と、
     前記パラメータによって推定される対象物の向きまたは対象物の位置の時間変化を、あらかじめジェスチャごとに設定した基準と照合することにより、当該ジェスチャがなされたか否かを判定する機能と、
     ジェスチャがなされたと判定されたとき、当該ジェスチャに対応した処理を行い出力データを生成する機能と、
     をコンピュータに実現させることを特徴とするコンピュータプログラム。
  14.  対象物の動きを動画像として撮像する機能と、
     撮像した動画像に含まれる各画像フレームにおける対象物の輪郭の候補曲線を、前の時刻の画像フレームにおいて推定した対象物の輪郭に基づいて定め、各候補曲線の尤度を観測することにより、各画像フレームにおける対象物の輪郭を推定する機能と、
     推定した対象物の輪郭の内部領域について画像解析を行うことにより対象物の向きまたは対象物の位置を表すパラメータを取得する機能と、
     前記パラメータによって推定される対象物の向きまたは対象物の位置の時間変化を、あらかじめジェスチャごとに設定した基準と照合することにより、当該ジェスチャがなされたか否かを判定する機能と、
     ジェスチャがなされたと判定されたとき、当該ジェスチャに対応した処理を行い出力データを生成する機能と、
     をコンピュータに実現させることを特徴とするコンピュータプログラムを記録した、コンピュータにて読み取り可能な記録媒体。
PCT/JP2009/005583 2009-02-19 2009-10-23 情報処理装置および情報処理方法 WO2010095190A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US13/147,859 US8509484B2 (en) 2009-02-19 2009-10-23 Information processing device and information processing method
EP09840297.7A EP2400370B1 (en) 2009-02-19 2009-10-23 Information processing device and information processing method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2009037206A JP5483899B2 (ja) 2009-02-19 2009-02-19 情報処理装置および情報処理方法
JP2009-037206 2009-02-19

Publications (1)

Publication Number Publication Date
WO2010095190A1 true WO2010095190A1 (ja) 2010-08-26

Family

ID=42633492

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2009/005583 WO2010095190A1 (ja) 2009-02-19 2009-10-23 情報処理装置および情報処理方法

Country Status (4)

Country Link
US (1) US8509484B2 (ja)
EP (1) EP2400370B1 (ja)
JP (1) JP5483899B2 (ja)
WO (1) WO2010095190A1 (ja)

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FI20075454A0 (sv) * 2007-06-15 2007-06-15 Virtual Air Guitar Company Oy Statistisk objektföljning i datorvision
JP2012098771A (ja) * 2010-10-29 2012-05-24 Sony Corp 画像処理装置および方法、並びに、プログラム
US8705812B2 (en) 2011-06-10 2014-04-22 Amazon Technologies, Inc. Enhanced face recognition in video
KR101880998B1 (ko) 2011-10-14 2018-07-24 삼성전자주식회사 이벤트 기반 비전 센서를 이용한 동작 인식 장치 및 방법
KR20130070340A (ko) * 2011-12-19 2013-06-27 한국전자통신연구원 모션인식에서 광흐름 처리 가속기 및 방법
JP5999105B2 (ja) * 2012-01-17 2016-09-28 ソニー株式会社 情報処理装置および方法、並びにプログラム
JP5505434B2 (ja) * 2012-02-09 2014-05-28 株式会社デンソー 脇見判定装置
US20140046922A1 (en) * 2012-08-08 2014-02-13 Microsoft Corporation Search user interface using outward physical expressions
FR2995113B1 (fr) * 2012-08-31 2014-09-12 Etienne Jean Frejaville Dispositif pour le declenchement d'une instruction logicielle par detection d'un mouvement de rotation de tete
TWI490792B (zh) * 2012-10-22 2015-07-01 Pixart Imaging Inc 使用者辨識及確認裝置、方法以及使用該裝置之車用中央控制系統
CN103809733B (zh) * 2012-11-07 2018-07-20 北京三星通信技术研究有限公司 人机交互系统和方法
US9684372B2 (en) * 2012-11-07 2017-06-20 Samsung Electronics Co., Ltd. System and method for human computer interaction
JP2014131140A (ja) * 2012-12-28 2014-07-10 Yamaha Corp 通信システム、avレシーバ、および通信アダプタ装置
JP5846138B2 (ja) * 2013-02-18 2016-01-20 カシオ計算機株式会社 被写体追跡装置、被写体追跡方法及びプログラム
DE102013207177A1 (de) * 2013-04-19 2014-10-23 Robert Bosch Gmbh Verfahren zum Ansteuern eines Geräts
US9339210B2 (en) * 2013-05-08 2016-05-17 Koninklijke Philips N.V. Device for obtaining a vital sign of a subject
CN106170820A (zh) * 2014-02-26 2016-11-30 株式会社索思未来 图像识别系统以及半导体集成电路
KR101644586B1 (ko) * 2014-11-18 2016-08-02 상명대학교서울산학협력단 인체 미동에 의한 hrp 기반 사회 관계성 측정 방법 및 시스템
JP6649063B2 (ja) * 2015-12-02 2020-02-19 東芝デバイス&ストレージ株式会社 車両後方表示装置及び表示制御装置
EP3396869B1 (en) 2015-12-24 2020-12-16 Sony Interactive Entertainment Inc. Main beam direction determination device, main beam direction determination method, and program
JP6727921B2 (ja) 2016-05-18 2020-07-22 ソニーモバイルコミュニケーションズ株式会社 情報処理装置、情報処理システム、情報処理方法
JP6789668B2 (ja) 2016-05-18 2020-11-25 ソニーモバイルコミュニケーションズ株式会社 情報処理装置、情報処理システム、情報処理方法
JP6208837B1 (ja) * 2016-10-12 2017-10-04 株式会社エイチアイ ユーザインタフェースを制御する方法、プログラム及び装置
US10817066B2 (en) * 2016-12-05 2020-10-27 Google Llc Information privacy in virtual reality
US11069112B2 (en) * 2017-11-17 2021-07-20 Sony Interactive Entertainment LLC Systems, methods, and devices for creating a spline-based video animation sequence
CN108416632B (zh) * 2018-03-26 2022-09-13 施永兵 一种动态视频的识别方法
CN110730115B (zh) * 2019-09-11 2021-11-09 北京小米移动软件有限公司 语音控制方法及装置、终端、存储介质
KR102497805B1 (ko) * 2020-07-31 2023-02-10 주식회사 펫타버스 인공지능 기반 반려동물 신원확인 시스템 및 방법
CN112631430B (zh) * 2020-12-30 2022-08-16 安徽鸿程光电有限公司 手势运动轨迹处理方法、装置、设备及介质
CN114265499A (zh) * 2021-12-17 2022-04-01 交控科技股份有限公司 应用于客服终端的交互方法和系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007328746A (ja) * 2006-06-09 2007-12-20 Sony Computer Entertainment Inc 対象物追跡装置および対象物追跡方法
JP2008015942A (ja) * 2006-07-07 2008-01-24 Sony Computer Entertainment Inc ユーザインタフェースプログラム、装置および方法、情報処理システム
JP2008112360A (ja) 2006-10-31 2008-05-15 Sony Computer Entertainment Inc ユーザインタフェイス装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE602004006190T8 (de) * 2003-03-31 2008-04-10 Honda Motor Co., Ltd. Vorrichtung, Verfahren und Programm zur Gestenerkennung
US7308112B2 (en) * 2004-05-14 2007-12-11 Honda Motor Co., Ltd. Sign based human-machine interaction
CN1293446C (zh) * 2005-06-02 2007-01-03 北京中星微电子有限公司 一种非接触式目控操作系统和方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007328746A (ja) * 2006-06-09 2007-12-20 Sony Computer Entertainment Inc 対象物追跡装置および対象物追跡方法
JP2008015942A (ja) * 2006-07-07 2008-01-24 Sony Computer Entertainment Inc ユーザインタフェースプログラム、装置および方法、情報処理システム
JP2008112360A (ja) 2006-10-31 2008-05-15 Sony Computer Entertainment Inc ユーザインタフェイス装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
MICHAEL ISARD, ANDREW BLAKE, PROC 5THEUROPEAN CONF. COMPUTER VISION, 1998
See also references of EP2400370A4

Also Published As

Publication number Publication date
EP2400370A1 (en) 2011-12-28
EP2400370B1 (en) 2018-08-29
US8509484B2 (en) 2013-08-13
JP2010191826A (ja) 2010-09-02
US20110317874A1 (en) 2011-12-29
JP5483899B2 (ja) 2014-05-07
EP2400370A4 (en) 2014-06-11

Similar Documents

Publication Publication Date Title
JP5483899B2 (ja) 情報処理装置および情報処理方法
JP5635736B2 (ja) 情報処理装置および情報処理方法
CN111316291B (zh) 用生成式对抗神经网络分割和去噪深度图像用于识别应用
US8824802B2 (en) Method and system for gesture recognition
WO2010073432A1 (ja) 画像処理装置および画像処理方法
JP4766495B2 (ja) 対象物追跡装置および対象物追跡方法
Urtasun et al. Monocular 3D tracking of the golf swing
US8428306B2 (en) Information processor and information processing method for performing process adapted to user motion
Martin et al. Scangan360: A generative model of realistic scanpaths for 360 images
JP5595655B2 (ja) 画像処理装置および画像処理方法
CN110363133B (zh) 一种视线检测和视频处理的方法、装置、设备和存储介质
Monir et al. Rotation and scale invariant posture recognition using Microsoft Kinect skeletal tracking feature
bin Mohd Sidik et al. A study on natural interaction for human body motion using depth image data
Li et al. Real-time gaze estimation using a kinect and a HD webcam
JP5468773B2 (ja) 画像処理装置および画像処理方法
CN114513694A (zh) 评分确定方法、装置、电子设备和存储介质
WO2016021152A1 (ja) 姿勢推定方法および姿勢推定装置
US11361467B2 (en) Pose selection and animation of characters using video data and training techniques
CN115294623B (zh) 一种人体全身动作捕捉方法、装置、存储介质及终端
CN112667088B (zh) 基于vr行走平台的手势应用识别方法及系统
Varia et al. A refined 3d dataset for the analysis of player actions in exertion games
CN114187611A (zh) 一种注意力分析方法、系统、电子设备以及存储介质
CN116704406A (zh) 基于视线焦点的运球抢断行为检测方法及系统
CN117648035A (zh) 一种虚拟手势的控制方法及装置
CN118092647A (zh) 一种基于动态手势识别的三维模型处理方法及装置

Legal Events

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

Ref document number: 09840297

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2009840297

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 13147859

Country of ref document: US