Acceleration motion identify method and system thereofA kind of acceleration motion recognition system and its method and technology field
The present invention relates to a kind of acceleration motion recognition system and its method, more particularly to a kind of acceleration motion recognition system and its method based on non-gyroscope technology.Background technology
At present, most of motion identification device can be respectively with optics sensing localization method and acceleration of motion sensing location algorithm, although both approaches can realize basic operating position fixing and identification, certain technical limitation is all respectively present.Action recognition based on optical sensing localization method
The Wii game machines produced using Nintendo, as representative, are us referring to U.S. Patent Publication No.
2008/0119269 A1;Entitled " GAME SYSTEM AND STORAGE MEDIUM STORING GAME PROGRAM " patent document, the power difference and the relative distance in two incident points of signal produced by it receives the infrared generator from equipment two ends using the infrared receiver sensor in equipment, calculate the movement locus of two dimension.But this implementation method has some intrinsic deficiencies:Due to must respectively install a RF transmitter at operation equipment two ends, and in order to ensure to receive two incident points distance resolution enough on sensor, two sensors must separate a certain distance, cause the larger-size defect of equipment.And limited by the signal intensity resolution ratio of infrared receiver sensor, equipment only can reach enough precision in the range of 1 meter to 5 meters, it is impossible to adapt to closely operation and more than 5 meters of the remote-controlled operation in 1 meter.The action recognition positioned based on magnet in earth's magnetic field
Magnet alignment system and method using U.S. Sixense is representative.System constitutes an orthogonal magnetic system of coordinates using the magnetic base station of 1/50 geomagnetic field intensity of generation with earth's magnetic field, when control device is moved in this magnetic system of coordinates, relative coordinate and spatial attitude of the object in magnetic system of coordinates can be reflected in real time, there is higher positioning precision and real-time.The deficiency that this method is present, which is that system bulk is larger, not to be convenient for carrying, and the effective range in magnetic field is limited by the transmission power intensity for producing magnetic field base station, and inapplicable and common computer user.Action recognition based on acceleration of motion sensor and gyroscope
Movement recognition system and method using South Korea Samsung Samsung is representative, and referring to United States Patent (USP), public No. Jian is the A1 of US 2008/0049102;Entitled " MOTION DETECTION SYSTEM AND METHOD " patent document, in order to obtain 6 complete dimension movable informations, (3-dimensional is moved and 3-dimensional is rotated for it), system acquisition data must use acceleration transducer and gyroscope simultaneously, or with two acceleration transducers of fixed intervals distance(One of simulation gyroscope), to obtain 6 required dimension movable informations.But this method is there is also certain limitation, be mainly reflected in it is following some:
(1) due to having used gyroscope, manufacturing process, small product size and the part category of equipment have considerable restraint, under this approach, if using only a 3-axis acceleration sensor, system can not separate acceleration of gravity and acceleration of motion, also the rotation information of equipment in motion can not be provided, it is impossible to calculate the track of motion.
(2) due to the limitation of this kind of system data Processing Algorithm, the error that sensor can not be filtered out is transmitted to the small size vibrations of acceleration transducer and gyroscope with other, the initiating process of the normal motion of equipment can not be detected, need to utilize other button auxiliary, i.e. user needs to unclamp a specific button after pinning when beginning and end is acted, carry out the starting of marker motion, although the mark problem of the action starting so solved, but require the operation of user key-press, the action recognition experience of no additional operations can not be realized, it have impact on the using effect of user.
(3) due to being limited by manufacturing process, the cost of gyroscope is higher, and volume is larger, and data reliability is very low in the case where acceleration change is violent.The content of the invention
It is an object of the invention to provide a kind of acceleration motion recognition system and method based on non-gyroscope technology, it can separate acceleration of gravity and acceleration of motion, and provide motionThe rotation information of middle equipment, calculates the track of motion.Another object of the present invention is to provide a kind of acceleration motion recognition system and method based on non-gyroscope technology, it is without optical sensor and infrared, radiofrequency launcher, without additional mechanical linkage, the error that sensor can be filtered out is transmitted to the small size vibrations of acceleration transducer and gyroscope with other, the initiating process of the normal motion of equipment is detected, and reduces manufacturing cost and improves the reliability of system.The present invention is acceleration motion recognition system and method based on non-gyroscope technology, valid data signal of the one of which core algorithm based on 3-axis acceleration sensor, pass through the minimum optimized algorithm of moving corner, one section is solved completely to act during from start to end, the minimum angles and direction vector rotated around certain direction, and utilize the direction vector and the size of corner of the axle solved, rotative component is separated on each sampled point, the posture of every bit and acceleration of gravity are set up into corresponding mapping, remove influence of the acceleration of gravity to signal under different postures, obtain accurate movement acceleration information;And the matched filtering combined to acceleration signal is handled, static detection and action start-stop recognizer are obtained, the high-precision action recognition without artificial external intervention is realized.This acceleration motion recognition system and method based on non-gyroscope technology simultaneously, it would however also be possible to employ other algorithms are realized.After the beginning that motion is perceived by stationary motion detection module, first group stationary posture of the data-at-rest before starting as initialization will be moved first, and the acceleration information in the next shorter set time is removed acceleration of gravity with the data of this posture, obtain acceleration of motion numerical value, movement velocity and the track in this period, and matched with limited group of movement instruction among pattern match data storehouse, draw the direction of motion of one group of determination.At the end of stationary motion detection module detects motion, stationary posture using at the end of is used as second group of stationary posture, and the data deduplication power acceleration in the shorter set time before terminating to motion, obtain acceleration of motion numerical value, movement velocity and the track in this period, and matched again with limited group of movement instruction among pattern match data storehouse, draw the direction of motion of another group of determination.After front and rear two groups of direction of motion is calculated, the change in direction is split and is assigned to every bit in complete movement data by system, and movement velocity is modified,Finally obtain complete movement velocity and track.A kind of typical technical scheme application is that human action is perceived(Body-sensing)Game control, the hardware based on 3-axis acceleration sensor is fixed on to palm, leg and other articular portions of user, when user begins to do one and have the action of certain sense from static Jian(Such as swing the bat batting)Stationary motion detection module is by handling signal, isolate the data that acceleration transducer during entire motion is collected, pass through above-mentioned non-gyroscope acceleration action recognition algorithm, after handling data, obtain the movement locus of whole motion process, on track the speed of every and equipment with respect to cartesian coordinate system(Terrestrial gravitation coordinate system)Posture.Brief description of the drawings
Fig. 1 is the structure chart of the acceleration motion recognition system of the present invention;
Fig. 2 is the structure chart of the data acquisition transport module of acceleration motion recognition system;Fig. 3 is the structure chart of the driver module of acceleration motion recognition system;
Fig. 4 is the structure chart of static-motion detection block of acceleration motion recognition system;Fig. 5 is the attitudes vibration figure of the human body regular motion of acceleration motion recognition system;Fig. 6 is that the posture of the accelerometer of acceleration motion recognition system is represented with the coordinate system connected firmly on accelerometer;
Fig. 7 is the structure chart of the acceleration of gravity separation module of acceleration motion recognition system;Fig. 8 is the action matching application interface of acceleration motion recognition system;
Fig. 9 is the action display module of acceleration motion recognition system.Embodiment
It can be better seen in the detailed description that the above and some other purpose, function and advantage combination the figures above of the present invention is made.It refer to Fig. 1, Fig. 1 is the structure chart of the motion recognition system of the present invention, as seen from Figure 1, this motion recognition system is made up of 6 parts totally data acquisition transport module, data reception module, driver module, data processing module, pattern matching module and action display module, and wherein data acquisition transport module, data processing module, action matching module are to beThe core of system.The data acquisition transport module of the present invention includes 3-axis acceleration sensor, microprocessor and data transmission module.The data acquisition transport module is mainly responsible for the data for gathering 3-axis acceleration sensor according to certain host-host protocol, data reception module is transmitted data to by wired or wireless channel, simultaneously on microprocessor by data from the data that acceleration transducer is read cached in microprocessor when, data are encrypted, then by the data transfer of encryption to data transmission module, and the data of encryption are sent to data reception module by data transmission module.Compared to optics motion recognition system and existing acceleration sensor system, the realization of data acquisition transport module is more succinct, to the usage experience, system bulk and complexity of user, is all greatly improved.After data reception module demodulates the wired or wireless data received, driver module is uploaded to.Driver module registers device port, and the data buffer storage after demodulation, afterwards using the cryptographic protocol and key corresponded in data acquisition module, data is decrypted order.Acceleration information after decryption is transferred to data processing module.After data processing module, pattern matching module, action display module processing, calculate the operation after speed, track and the action matching of motion, driver module is transmitted back to respectively, driven by the display driving in driver module and human-computer interaction device, system application interface is provided to upper strata.It should be noted that data can not also be encrypted for data acquisition transport module.So, without decryption filtration drive processing in driven by program module.Data are after encryption/decryption filtration drive processing, by static-motion detection block of the data transfer after decryption into data processing module(Or the data received from data reception module are directly directly sent to static-motion detection block).Among static-motion detection block, module is by calculating the size and corresponding variance of signal, and the data whether signal belongs in Large Amplitude Motion state procedure are judged by static-motion detection algorithm (hereinafter specifically describing), and the partial data in motion process is stored.By the information notification action display module of initial motion, the gravity for moving all sampled points in valid data is accelerated by acceleration of gravity separation module afterwardsDegree component is separated with acceleration of motion, the acceleration produced by space motion of each sampled point in cartesian coordinate system is calculated, and every bit posture residing in Cartesian coordinates is calculated in the distribution situation of three axles using every bit acceleration of gravity(In survey module and acceleration of gravity separation module are picked up in static-motion, it all employ new algorithm and achieve more preferable effect).Data after acceleration of gravity separating treatment are sent to pattern matching module, human action data in various scenes and in the mapping ensemblen of operational order, carry out matched and searched, and the operational order after matching is sent to human-computer interaction device's driving is used for realizing in application program and click on the operational order such as impact enemy in operational order, or amusement game such as selection.The human motion acceleration information after acceleration of gravity separating treatment is sent to action display module simultaneously, together with the initial motion information of the human motion from static-motion detection block, passes through the equation of motion
V=VQ+ a*t (speed-initial velocity+acceleration * times), S-Vcn+0.5*a*t2(* acceleration * times square displacement-initial velocity * times+0.5) calculates movement velocity and track (example for cartesian coordinate system, the present invention can also use other algorithms), and the result of speed and track is sent to the display driving of computer, human action is shown in real time.Each module is specifically described below in conjunction with the accompanying drawings structurally and functionally:
(1) data acquisition transport module
Fig. 2 is the structure chart of data acquisition transport module, and the module is mainly made up of three parts:By bus communication between 3-axis acceleration sensor, microprocessor and data transmission module, each module, the function of wherein each submodule is as follows:
3-axis acceleration sensor
With the acceleration information in the range of fixed frequency F collection scholar N (g), (g represents the size of normal acceleration of gravity to 3-axis acceleration sensor, gather the moving acceleration data in the range of negative N times of acceleration of gravity to positive N times of acceleration of gravity), and memory address space fixed in acceleration transducer is updated with fixed frequency F, every group of data respectively by X Y the acceleration magnitude of Z axis and the temperature of sampled point constitute, and by data storage cell of the every group of data storage in 3-axis acceleration sensor.Microcontroller
Using the single-chip microcomputer or arm processor of low-power consumption, it is communicatively coupled by EBI with acceleration sensor module.In addition miniature control unit is same goes to read the data storage cell of acceleration transducer with fixed frequency F, every group of data are encrypted according to the public keys and AES in chip simultaneously, and the data storage cell by encrypted data in microcontroller is cached.And encrypted data are sent to data transmission module.Data transmission module
Support wired and wireless two kinds of communications modes.USB, serial ports, parallel port, live wire can be used in wireline interface(Fire wire) etc. various protocols.Wave point utilizes radio frequency baseband chip, supports the 100Kbps of remote and low-power consumption data transfer.Bluetooth, infrared, Zigbee and other simple transport protocols can be used.
(2) data reception module
By data receiver and specified memory region is cached to, and notifies driver module to read.The transformat of same corresponding data transport module, supports wired and wireless two kinds of communications modes.
(3) driver module
Referring to accompanying drawing 3, it is driver module structure chart, and driver module structure is broadly divided into three layers:Data/address bus drives;Encrypting and decrypting filtration drive;Human-computer interaction device drives and figure shows driving.Data/address bus drives
Data/address bus driving is responsible for that sensor acceleration information and interrupt control instruction are read and transmitted from hardware bus, according to the difference of data transfer mode, it is divided into wire transmission and wireless radio frequency transmission, corresponding data/address bus driving is respectively wireline equipment driving and the driving of wireless receiving end.After demodulating data is read, data/address bus driving is by data buffer storage into calculator memory.Encryption/decryption filtration drive
Because all data can all be encrypted according to the AES in hardware microprocessor and public keys(For example with RSA cryptographic algorithms and key), in encrypting and decrypting filtration drive, data deciphering is carried out with corresponding private cipher key, and the data after decryption are verified.When data fit is required and data volume reaches the thresholding that triggering is sent, static-motion detection block is sent data to.Human-computer interaction device drives
After being disposed, the operational order that matching is obtained is sent to human-computer interaction device's driving by pattern matching module, human-computer interaction device drives the input equipment driving model requirement for following operating system Plays, there is provided the general controls interface of application program-oriented method, so analog mouse, keyboard and game action the function of control device can be recognized on the pattern manipulation interface of computer operating system.Display driving
Action display module is the acceleration magnitude for coming from entire motion that static-motion detection block and acceleration of gravity separation module respectively obtain and initial motion, calculate the movement velocity under cartesian coordinate system and track, display driving is sent to, display driving is responsible for showing the motion of human body on the computer screen.
(4) data processing module
Data processing module includes static-motion detection block and acceleration of gravity separation module, the action that motion recognition system can be recognized accurately, all meet human body process static again after variable motion by inactive state, because meeting the exercise data starting of this process, terminating the data that two parts belong to less stationary state, middle each group of data is the sampled data of the 3-axis acceleration sensor in variable motion.Referring to accompanying drawing 1.In traditional motion recognition system based on acceleration sensing and gyroscope, the technology of detection stationary motion has larger week limit, mainly due to the data of sensorThe constant error of intrinsic vibration and sensor itself by object is influenceed, it is impossible to which whether the athletic performance to user occurs to make correct judgement.The system fully utilizes signal transacting and machine learning correlation technique, static-motion state detection can reach more than 90% precision in terms of static-motion detection is handled.Fig. 4 gives static-motion detection block workflow diagram.It can be seen from figure 4 that static-motion detection block has two states, i.e., (status identifier is Π, and Π=0 represents pre- static, Π=1, represents pre- motion for pre- inactive state and pre- motion state.It is not to represent that data must belong to inactive state or motion state, but is used as interim system detectio status indicator).Continuous Ν frame data are packaged into one group by driver module, are sent to static-motion detection block.When now static-motion detection block detection state Π is pre- inactive state, into Rule of judgment i, if the variance of this group of data is more than threshold θ, system detectio state Π enters pre- motion state.Now previous group Ν frame data are cached together with the data Cun Chudao of the pre- motion state of this group, and the data of this section of pre- motion state are bypassed into acceleration of gravity separation module, it is sent directly to act display module, notification action display module starts the drafting of motion original state simultaneously, i.e. in human body setting in motion, system is completed without waiting for motion, can just be shown the initial direction of motion and speed.When static-motion detection block state Π is changed into pre- motion state(When the preceding paragraph is it has been mentioned that enter pre- motion state)Rule of judgment ii is jumped to, if data variance now is more than threshold θ, or the average of data and the mould of normal acceleration of gravity g differences more than Δ, this data continues to be sent to caching.If two conditions of this group of data are all unsatisfactory for, i.e., intra-class variance is less than threshold value Θ and data mean value and the mould of normal acceleration of gravity g differences are less than Δ, and system enters pre- inactive state.(Θ and Δ value, are that, by testing the empirical value drawn to human action, the 3-axis acceleration sensor of use is different, and the value of Θ and Δ is also differed.The BMA150 sensors of such as Bosch, Θ and Δ herein take 0.25 (ra/s respectively2)2And 2m/s2) when entering pre- inactive state, whether static-motion detection block carries out last judgement to data length in caching, that is, detect data length more than (what is acted holds with frequency F in T timeThe continuous time is greater than T, and such as Τ can take 0.5 second)The size of the data of sampling, and judge that the mould in data with the presence or absence of one group of its average of data and the difference of normal acceleration of gravity is more than the acceleration amplitude Ω of effective exercise.If the two conditions are not all met, system empties the data among caching;If meeting two conditions simultaneously, system transmits data to acceleration of gravity separation module, while notifying graphics module to wait the transmission of valid data.(Ω is that, by testing the empirical value drawn to human action, the 3-axis acceleration sensor of use is different, and Ω value is also differed.The BMA150 sensors of such as Bosch, Ω herein takes lm/s2) whole static-motion detection block is based on the analysis design in experiment to exercise data characteristic, it is capable of detecting when that the duration is more than T human motion, and extraneous high-frequency vibration, human vas flowing and the noise of heartbeat and the unconscious shake of some human bodies can be filtered out from signal.Meanwhile, note that action display module prepares to draw initial motion direction when entering pre- motion state, reached higher real-time.Acceleration of gravity separation module
Because the data that acceleration transducer is gathered are made up of acceleration of gravity and acceleration of motion linear superposition, to expect human motion relevant information, it is necessary to obtain simple moving acceleration data.Acceleration of gravity separation module can W realize data that acceleration of gravity is sampled from 3-axis acceleration sensor in separate, obtain simple moving acceleration data.Algorithm(One)The motion that-acceleration motion recognition system is caught is made up of 3 d-line motion and three-dimensional spinning motion, make and motion is accurately identified, identifying system will calculate the track of motion and the posture of every bit, this needs to solve a sextuple equation, the data of sensor are made up of acceleration of gravity vector acceleration of motion vector linear, additive simultaneously, need with acceleration of gravity vector linearly to subtract each other sensor gathered data, can just obtain acceleration of motion vector.And individually 3-axis acceleration sensor can only provide three-dimensional acceleration data in real time, it is impossible to obtain the unique solution of motion, this is also the reason for conventional motion detecting system has to use rotator inertia gyroscope.From the point of view of more detailed, legacy system need using rotator inertia gyroscope comeThe system space posture of each sampling instant is provided, so that acceleration of gravity vector be separated with acceleration of motion vector.And the system is only with single 3-axis acceleration sensor, common athletic posture and track just can be calculated, because this motion recognition system is primarily directed to human motion characteristic, it is proposed that following constraints and algorithm:
Constraints one:The joint motions of people are to pass through acceleration from static, then decelerate to static composition(Referred to herein as athletic performance unit), then complicated motion is also to be produced by repetition process above.Therefore system is calculated for each group of complete athletic performance unit, and the valid data of system acquisition are processed as following form by stationary motion detection module:The beginning and end of data includes the data of one group of inactive state respectively, and middle each group of data is the valid data that 3-axis acceleration sensor sampling is obtained in human motion.Constraints two:Human cinology's research has shown that the natural action of people is to optimize labour-saving mode the most, and this is also what reform of nature environment was formed.Therefore system utilizes the inactive state data of each group of complete athletic performance starting and ending(Scalar value is approximate with gravity acceleration g, and now only terrestrial gravitation acts on acceleration transducer), calculate the system space posture that motion Jian begins and terminate and be respectively labeled as posture and start(Posture-Start) and posture terminate(Posture _ End), conversion of the two kinds of postures of system postulation in whole motion herein is angle of the user along some corresponding axis of rotation minimum, i.e. human body is issued to identical movement effects in the minimum method of acting, fixed rotating shaft and minimum corner this two are assumed to be the sextuple transcendental equation that system solution only has three-dimensional data input, there is provided the constraints of two extra dimensions, the solution of sextuple transcendental equation can be obtained.Therefore this movement recognition system and method, can just calculate regular motion track and the posture of human body using only 3-axis acceleration sensor.Referring to accompanying drawing 5, it is the human body regular motion track and posture obtained using 3-axis acceleration sensor.When accelerometer horizontal positionedWhen, direction " ^ ' the ^ that set up fixed coordinate system one accelerated according to its measurement.When accelerometer appearance
)— Y Y 7
When state changes, coordinate system is rotated with accelerometer, is obtainedj j j.In fixed coordinate system.― ^ζ' ' under, the measured value of acceleration of gravity is equal to acceleration of gravity vector in o- xiYiZ. ^ coordinates.Obviously the acceleration of gravity that now measures is
When accelerometer exists.When static under-posture, the acceleration of gravity of measurementTransformation matrix
.Then had according to coordinate transform,
So obtain:
So can so obtain
a.
cos(Zi, Zj) =
G defines one group of parameter RPY angle according to the standard notation of coordinate transform(α, Α, expression-^ΖCoordinate system is first around itΖAxle turns, further around its F axle ^, finally around its Z axis;Obtain.So obtain by fixed coordinate system o mono-XjYjZJ is arrived0—X'YiZI conversionAnother of matrix is expressed as follows.Then an equation group can be equally obtained, accelerometer posture can be obtained by solving this equation.But this solution of equations has multigroup.When accelerometer initial attitude and final carriage have solve more, problem becomes very complicated.Therefore, problem, fixed initial attitude are simplified.It is assumed to be horizontal positioned or vertical placement.
Alternatively, it is also possible to think from0—xjYjZjTo o-i conversion be around
X γζ k = (kv, k„, k_
Under a fixed vector '-y^-y--=, angle of rotation is obtained, and transformation matrix ^ ^ another method for expressing is: kxkxv rs(0)sk{<9)+cos(0) kykxvefs{6) ~ sin( k:kxvers{0) +kySvc (9) wind Κ, θ)=kxkyvers(0)+k:s 9) kykyvers(0)+coe e) k,kyvers{e)-kxsvc e)When known initial attitude, there are many solutions in the final carriage after matrix equation is solved.Now
()=1,2,
Individual final carriage, can find one it is corresponding
Order:.Then accelerometer is got in return by change conversion by initial attitude and obtains final whole appearance posture state..This this all cocoa with to think in each and every one whole process journey, become conversion and change all be around around "jAxle is carried out.Then whole rotation process can be with difference into much around a succession of low-angle of ^' progress
Algorithm is as follows:The posture of accelerometer is represented with the coordinate system connected firmly on accelerometer, it is assumed that initial attitude is7^ terminates posture.Schematic diagram is referring to accompanying drawing 6.From Fig. 6 as can be seen that the acceleration of initial time measurement is T N2009/000770
.The acceleration of end time measurement is lxN 'ayN a. N
.Assuming that initial attitude to termination posture ^ transformation matrix are
, the transformation matrix for terminating posture ^ to initial attitude is shellfish IJ:
N On-1
0R = NR
SN bis-Assuming that the RPY angles for terminating posture changing to initial attitude are(α, then cacfi, c asfisy mono- sacy, c as cy+sasyThe easy of sa c β, sasfisy+cacy, sasficy mono-
Equation group-
This equation group has many solutions, for each group of equation group(tt, A substitutions attitude matrix 'R, it is inverted, matrix is obtained.70 assume by initial attitude ^.Transform to posture be equivalent to fixed in coordinate system unit to
=(k k k ) n
λ"y'jRotate ^ angles to obtain, shellfish IJ
Then obtain equation below group:
nx +o y +azz = (kx + k + kz )vers6 + 3c0Then-sin is obtained<9=scholar ^ ~ ayf +{ax ~nzf + {ny-oJ
K bis-.:kTwo-":k =ny -°X
x 2sin6> 'y(9 ' ' " 2sin^ ill solution situations because equation is present, system requirements deviates 0 and 180 ° to 2 sin in practice, because equation now can not accurate Fast Convergent.
Equation group(1) solution has multigroup, and unique one group of ^ can be obtained to each group of solution,).Then ^=Ι^η(6>'), it is corresponding to exist(,).If accelerometer is in the obtained acceleration information of sampling every time, the influence value of acceleration of gravity is followed successively by=(/, ^''^-_)= () '·Ν.During each sampled point, the posture of accelerometer is7^ '= (),2' ' ' ^, from7^ is to initial attitude7^ transformation matrix is.^.Obviously
00R=/ (unit matrix).Then o of & bis-R~lSo。
Using estimating each transformation matrix.', the method used here is to assertIn each sampled point, the acceleration collected is
Then remove after the influence that gravity is produced on each axle, acceleration of motion is the & of two ^ mono-.A ' now is the information under posture η, it is necessary to be transformed into initial attitude rflUnder, then in each sampled point, acceleration information under initial attitude for-
= ( =Q!R (/ mono- g i)=0R aI-g o are as shown in fig. 7, the complete movement data from static-motion detection block is used twice in acceleration of gravity separation module.It is primarily used for the minimum corner and corresponding rotor shaft direction for calculating motion, obtain calculating acceleration of gravity in the component of X/Y/Z axles, each sample point data [a from the complete movement data from static-motion detection block using ^ after the pose transformation matrix of each data sampling pointx,ay,az] middle separation, the acceleration information in actual complete human body's motion process is obtained, finally using the acceleration information in actual complete human body's motion process, movement velocity is calculated by an integrating meter, then movement locus is calculated by an integrating meter.The distribution situation for the acceleration of gravity that acceleration of gravity is produced in the component of X/Y/Z axles with centrifugal force is calculated using ^ simultaneously, the spatial attitude of each data sampling point moment equipment is calculated.Acceleration, speed in final actual complete human body's motion process, displacement, together with the spatial attitude of equipment, have collectively constituted complete movement data.Algorithm(Two):
Except above-mentioned algorithm(One)Sunset is foretold, and is separated in the data that can also be gathered acceleration of gravity from sensor by other algorithms.Detected by static-motion detection block after the motion Jian beginnings, first group stationary posture μ 1 of the data-at-rest before starting as initialization will be moved first, and with this posture μ sensing data, as gravity acceleration g l in posture μ x/y/z axles component (gxl, gyl, gzl), and the 3-axis acceleration data (axi in the next shorter set time, ayi, azi component (the gxl of the x/y/z axles of gravity acceleration g l now) is removed, gyl, gzl)
(Axi,Ayi,Azi) = (axi,ayi,azi) - (gxl,gyl,gzl)
(Axi, Ayi, Azi) is the acceleration of motion numerical value in this period, movement velocity and track are calculated, and is matched with limited group of movement instruction among pattern match data storehouse, the direction of motion al (kxl of one group of determination are drawn, kyl, kzl).
(Axj, Ayj, Azj)=(axj, ayj, azj)-(gx2, gy2, gz2);
At the end of static-motion detection block detects motion, stationary posture using at the end of is used as second group of stationary posture μ 2, and with this posture μ 2 3-axis acceleration sensor data, as gravity acceleration g 2 in posture μ 2 x/y/z axles component (gx2, gy2, gz2), and the 3-axis acceleration data (axj in the shorter set time before terminating to motion, ayj, azj), go acceleration of gravity (gX2, gy2, gz2),
(Axj, Ayj, Azj) obtains acceleration of motion numerical value, movement velocity and track in this period, and matched again with limited group of movement instruction among pattern match data storehouse, draw the direction of motion cc2 (kx2, ky2, kz2) of another group of determination.After front and rear two groups of direction of motion α and α 2 is calculated, α to α 2 transition matrix Tr is calculated,
(kx2,ky2,kz2) = (kxl,kyl,kzl) * Tr;
M sampled point is had in motion start to finish, the transformation matrices Tr in direction is assigned as M parts of Tri, (Tri)=Tr, the spatial attitude μ of each sampled point moment equipment is calculated.The μ obtained with Tri, carries out conversion amendment to every bit acceleration of motion in complete movement data, obtains finally obtaining entire motion acceleration information, calculates movement velocity by an integrating meter, then calculate movement locus by an integrating meter..Acceleration, speed in final actual complete human body's motion process, displacement, together with the spatial attitude μ of equipment, have collectively constituted complete movement data.
(5) pattern matching module:
Referring to Fig. 8, it is pattern matching module.Pattern matching module utilizes complete movement data incoming after processing.According to computer patterns matching theory, Pattern Matching Module carries out matching degree in operational order database and movement velocity track database and calculates inquiry and set up mapping, corresponding motion action pattern in operational order database is obtained, and operational order is provided to application program.The demand applied for somatic sensation television game, solution in the present invention can be by the speed calculated and trace information, train and test obtained priori data to constitute matching database by data, be limited group of motion action in scene of game by speed and trajectory map.For example:In the game of sports class wave arm, jettisoning, step touches the pattern such as ball;The patterns such as aiming, shooting in first person shooting game, motion i.e. to people's four limbs, head and torso portion on the premise of the traditional logical sum flow of games is not changed is tracked identification, so as to realize no button, the experience of real-time, real somatic sensation television game.The demand of application is controlled for anthropomorphic type machine people, can train and test obtained priori data to constitute matching database by data, human action robot manipulation's instruction is mapped as, for example:Carry arm, arm, drop arm etc. are waved, solution of the invention can greatly simplify the volume of control device, strengthen the fluency and simulation quality of interactive controlling so that people greatly improves for the control ability of robot and experience.For haptic interaction application, the present invention can be used for acquisition operations terminal angle information, will countThe attitude information calculated is mapped in virtual scene, and dynamic realtime collision detection is carried out with virtual scene, realizes that real tactile is interacted.For traditional personal computer desktop application scene, the present invention can realize the control function of mouse in two dimensional surface and 3 D stereo visual field, the operating function of existing conventional mouse can be not only substituted completely, and more adapts to the application demand of following 3 D stereo desktop environment.
(6) display module is acted
Referring to accompanying drawing 9, it is action display module.Action display module has two parallel data processing modules:Pre- action display module and complete action display module in real time, corresponding input data respectively from static-motion detection block pre- exercise data, and acceleration of gravity separation module entire motion speed, track data.Real-time pre- action display module is that the previous group data-at-rest for entering stationary motion detection module after pre- motion state and the exercise data currently organized carry out simply going acceleration of gravity processing (to assume the original state in motion, acceleration of gravity is constant in three axle X/Y/Z distribution, will above component of the X/Y/Z acceleration information value as gravity acceleration g on three axles under inactive state, the acceleration information received is subtracted to the component on three axles of gravity acceleration g), calculating speed, track obtains the direction of first motion, and transmit data to display driving to start to draw.The purpose so designed is that when user uses equipment setting in motion, the direction of initial motion and speed are to show, to wait until after complete release that being handled by acceleration of gravity separation module to show without data.So give a kind of Consumer's Experience effect of approximate real time property of user.Complete action display module is responsible for the acceleration information by acceleration of gravity separation module according to sampling time interval, calculate speed and movement locus, the data that calculating is obtained are sent to display driving, and drafting and the motion of reconstruction user in three-dimensional animation.Programmable system application interface(On Fig. 1)
Referring to Fig. 1, system architecture and algorithm solution designed by the present invention, in face of developerThere is provided programmable system application interface, possess good autgmentability and application.Application scenarios, establishment model matching database need to be only directed to, and hardware plan is provided, then any competent Jian originator can be convenient to use the interface and be programmed, for developing types of applications(Somatic sensation television game, Robot remote device, 3D desktop controls etc.), thus the present invention possesses good commercial application prospect.With reference to the description above, we can obtain beneficial effects of the present invention, it accurately can position and recognize the action of human body, it is convenient to provide action recognition in game control, robot control, computer desktop operation, the data acquisition transport module of the identifying system is only with 3-axis acceleration sensor, the limitation of the volume and cost brought using gyroscope is avoided, and has all reached in real-time and precision good effect.Major technique in the present invention is that these points -1, non-gyroscope remove acceleration of gravity algorithm
(1) valid data signal based on 3-axis acceleration sensor, pass through the minimum optimized algorithm of moving corner, during solving one section of complete action from start to end, the minimum angles rotated around certain direction, and utilize the direction vector and the size of corner of the axle solved, rotative component is separated on each sampled point, the posture of every bit and acceleration of gravity are set up into corresponding mapping, remove influence of the acceleration of gravity to signal under different postures, accurate movement acceleration information is obtained, then calculates speed and the track of motion.
(2) valid data signal based on 3-axis acceleration sensor, before motion is started, data-at-rest after end is used as two groups of stationary postures that are initial and terminating, and the acceleration information closed in the shorter set time is removed acceleration of gravity with the data of this posture, obtain acceleration of motion numerical value, movement velocity and the track in this period, and matched with the movement instruction of the limited quantity among pattern match data storehouse, draw the direction of motion of determination.After front and rear two groups of direction of motion is calculated, the change in direction is split and corrects each spot speed and track in complete movement data by system, obtains movable information.Matched filtering processing is carried out to acceleration signal, continuous data are used according to the correspondence of Rule of judgment I/II in Fig. 4, that is the detection of Rule of judgment I triggering motion beginning states, the detection of Rule of judgment II triggering motion done states, slightly trembling and interference that object inherently shakes for human hand is avoided, so as to recognize the algorithm of static detection and action start-stop.The acceleration motion recognition system of the present invention and the concrete application of method are described below.Game action identification equipment:
The present invention can be used in computer game or family game machine game, the identification of two dimension and three-dimensional motion.When user makes the action of simulation of real scenes, the action that the game action identification equipment of acceleration action recognition technology with non-gyroscope technology makes user by calculate reconstruct on computers come, and with game control instruction set up mapping.Recognized for two dimensional motion in game, for example for the selection of playing card in snipsnapsnorum, equipment can be worn on above the back of the hand by user, when user or so translates, the playing card held in hand among game can be selected, when user wishes to get or need to choose the playing card specified, user only needs to quickly move the hand with equipment forward or backward, you can allow computer to identify corresponding operation.This mode is closer to the hand motion played cards in real scene.For three-dimensional motion identification, the racked swing for example played tennis, equipment can be worn on above the back of the hand by user, and it can select to hold tennis racket or other any objects, when user makes once complete racked swing according to the prompting of game picture, game action identification equipment separates the valid data during swinging the bat by static-motion detection block, and process system-computed obtains user and brandishes the relevant informations such as the complete trajectory of racket, speed.Pattern matching module calculates direction, strength and the rotation batted according to movement velocity, trace information.Equipment with 3D mouse function:
Traditional mouse is, by machinery or optics parsing, to obtain the translation of user on the horizontal level on two dimensional surface.The mouse of acceleration action recognition technology with non-gyroscope technology is setIt is standby, with the pinpoint function in three dimensions.When user by the hand for holding equipment into three dimensions, some direction is moved when, the cursor of mouse can also be moved.For traditional two-dimensional operation interface, three-dimensional motion can be converted into the projection of two dimensional surface by equipment and system, the action clicked on for mouse right and left key, user can move up and down by quick whipping palm or in the direction perpendicular to two dimensional surface, it is possible to realize corresponding click function.Meanwhile, the mouse of the acceleration action recognition technology with non-gyroscope technology will not be limited as traditional machinery or optical mouse by contact surface.Mouse with the technology of the present invention can on any surface, or even aerial control computer desktop cursor of mouse.Robot motion control input equipment:
The demand of application is controlled for anthropomorphic type machine people, human action can be mapped as robot manipulation's instruction, for example by user by the mobile arm with robot motion control input equipment:Carry arm, wave arm, drop arm etc..When user wants to be controlled the major beat of robot, it is no longer necessary to input the instruction of large amount of complex, it is thus only necessary to make corresponding action, it is possible to which control machine people makes consistent complicated arm action.Robot motion control input equipment with the technology of the present invention, relative to traditional solutions such as 6 dimension machine driving input equipments, the volume of control device can be greatly simplified, strengthen the fluency and simulation quality of interactive controlling so that people greatly improves for the control ability of robot and experience.It will be apparent to one skilled in the art that numerous modifications and variations can be carried out in the present invention, without departing from the spirit and scope of the present invention.Therefore, the invention is intended to cover the modifications and variations of the invention in appended claims and its equivalent scope.