CN107609593B - Three-dimensional space handwritten character dimension reduction method based on longest track projection - Google Patents

Three-dimensional space handwritten character dimension reduction method based on longest track projection Download PDF

Info

Publication number
CN107609593B
CN107609593B CN201710833980.7A CN201710833980A CN107609593B CN 107609593 B CN107609593 B CN 107609593B CN 201710833980 A CN201710833980 A CN 201710833980A CN 107609593 B CN107609593 B CN 107609593B
Authority
CN
China
Prior art keywords
line segment
dimensional
point
plane
length
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201710833980.7A
Other languages
Chinese (zh)
Other versions
CN107609593A (en
Inventor
李瑞梅
张钰
章田
王建利
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou Dianzi University
Original Assignee
Hangzhou Dianzi University
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 Hangzhou Dianzi University filed Critical Hangzhou Dianzi University
Priority to CN201710833980.7A priority Critical patent/CN107609593B/en
Publication of CN107609593A publication Critical patent/CN107609593A/en
Application granted granted Critical
Publication of CN107609593B publication Critical patent/CN107609593B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

The invention discloses a three-dimensional space handwritten character dimension reduction method based on longest track projection. The traditional dimension reduction method has defects in the dimension reduction of three-dimensional handwritten character recognition. The invention comprises the following steps in sequence: the method comprises the steps of obtaining three-dimensional coordinates of a moving fingertip, generating a three-dimensional track, projecting the three-dimensional coordinates to three standard planes respectively, sequentially connecting two-dimensional coordinate points to generate a two-dimensional track, calculating the length of the two-dimensional track on each plane, deleting the length of a superposed part in the two-dimensional track, comparing the lengths of the three two-dimensional tracks obtained in different planes, selecting the longest track, defining the plane where the longest track is located as an optimal projection plane, and defining the two-dimensional projection track in the optimal projection plane as a two-dimensional handwritten character after dimension reduction. The method can obtain the 2D image in the fixed direction, reduce the cost of calculation and storage and obtain a better visual effect; in the three-dimensional hand-written character recognition, direction adjustment is not needed, and the recognition rate of the hand-written characters in the three-dimensional space is improved.

Description

Three-dimensional space handwritten character dimension reduction method based on longest track projection
Technical Field
the invention belongs to the technical field of dimension reduction, and particularly relates to a dimension reduction method for three-dimensional space handwritten characters based on longest track projection.
Background
In many practical applications, such as machine learning, image classification, image processing, and pattern recognition, the dimensionality of the raw data is always high. High dimensional data requires a high memory, and is cumbersome to process and expensive to calculate. This problem is so-called "dimension cursing". To solve this problem, many dimension reduction methods have been proposed. To date, the conventional dimension reduction method still has some disadvantages and shortcomings. The Principal Component Analysis (PCA) method has the disadvantages that the 2D character direction after dimensionality reduction is random, and a better visual effect cannot be obtained; in the three-dimensional space handwritten character recognition, the direction of the 2D image needs to be adjusted and then the image recognition is carried out, otherwise, the error recognition rate of the 2D image is increased. The Linear Discriminant Analysis (LDA) is limited in that data after dimension reduction can only be projected to C-1 dimension at most (C is the number of categories of original data), and handwritten characters belong to one category, so that LDA cannot be used for dimension reduction of three-dimensional handwritten characters.
Disclosure of Invention
the invention aims to provide a three-dimensional space handwritten character dimension reduction method based on longest track projection aiming at the defects and shortcomings of the existing dimension reduction method, the method can obtain a 2D image in a fixed direction, the cost of calculation and storage is obviously reduced, and a better visual effect can be obtained; in the three-dimensional space handwritten character recognition, a direction adjustment algorithm is not needed, the recognition process is effectively simplified, and the recognition rate of the three-dimensional space handwritten character is improved to a certain extent.
The technical scheme adopted by the invention for solving the technical problem is as follows:
The invention comprises the following steps in sequence: the method comprises the steps of obtaining three-dimensional coordinates of a moving fingertip, generating a three-dimensional track, projecting the three-dimensional coordinates to three standard planes (XOY, XOZ and YOZ), sequentially connecting two-dimensional coordinate points to generate a two-dimensional track, calculating the length of the two-dimensional track on each plane, deleting the length of a superposed part in the two-dimensional track, comparing the lengths of the three two-dimensional tracks obtained in different planes, selecting the longest track, defining the plane where the longest track is located as an optimal projection plane, and defining the two-dimensional projection track in the optimal projection plane as a two-dimensional handwritten character after dimension reduction.
The method comprises the following specific steps:
Step 1, acquiring three-dimensional coordinates of finger tip moving in space by utilizing Leap motion somatosensory controller, wherein the three-dimensional coordinates are Ai(x, y, z) to indicate that i is 1,2, …, n is the last point of the finger tip movement in space acquired by the Leap motion somatosensory controller; and then sequentially connecting three-dimensional coordinates generated by the movement of the finger tips in the three-dimensional space to generate a three-dimensional handwritten character track.
Step 2, respectively converting the three-dimensional coordinate A based on a three-dimensional space rectangular coordinate system built in the Leap motion somatosensory controlleri(x, y, z) are projected onto three standard planes XOY, XOZ, YOZ. Projected on the XOY planethe latter dots are denoted by Bi(x, y); on the XOZ plane, the point after projection is Ci(x, z); on the YOZ plane, points after projection are represented by Di(y, z).
Step 3, sequentially connecting the two-dimensional coordinate points projected on the plane XOY into a line segment BiBi+1I-1, 2, …, n-1; two-dimensional coordinate points projected on the XOZ are sequentially connected into a line segment CiCi+1I-1, 2, …, n-1; two-dimensional coordinate points projected on the plane YOZ are sequentially connected into a line segment DiDi+1I-1, 2, …, n-1; thereby generating three two-dimensional trajectories.
Step 4, calculating the lengths of the three two-dimensional tracks, specifically as follows:
4.1 calculating the length of the two-dimensional trajectory on the XOY planeCalculating the length of the two-dimensional trajectory on the XOZ planeCalculating the length of a two-dimensional trajectory on the YOZ planeWherein, | BiBi+1L is line segment BiBi+1Length, | CiCi+1L is a line segment CiCi+1Length, | DiDi+1L is line segment DiDi+1length of (d). If B isiAnd Bi+1Is the coincidence point, | BiBi+10, |; if CiAnd Ci+1Is the coincidence point, | CiCi+10, |; if D isiAnd Di+1Is the coincidence point, then | DiDi+1|=0。
4.2 calculate line segment BiBi+1If there are values of a and B that are all 1,2, …, n-1, and a ≠ B, then the slope of (i) is 1,2, …, n-1, so that the segment B is a segment BaBa+1and line segment BbBb+1And line segment BaBbAll of the slopes of (a) are equal,Step 4.2.1 is performed, otherwise step 4.3 is entered.
4.2.1 according to point BbPoint Bb+1Point BaPoint Ba+1X-axis coordinate and y-axis coordinate of (A), decision point BbAnd Bb+1And line segment BaBa+1To calculate the actual length of the two-dimensional trajectory on the XOY plane, as follows:
If BbAnd Bb+1Are all on line segment BaBa+1And the actual length L 'of the two-dimensional track on the XOY plane'B=LB-|BbBb+1L, wherein | BbBb+1L is BbBb+1Length of (d);
If BbAnd Bb+1Are all not on line segment BaBa+1On the other hand, the actual length of the two-dimensional track on the XOY plane is L'B=LB-|BaBa+1l, wherein | BaBa+1L is line segment BaBa+1Length of (d);
③ if BbOn line segment BaBa+1Upper, Bb+1Not on line segment BaBa+1Go up, then decision point BaWhether or not it is on line segment BbBb+1the above step (1); if point BaOn line segment BbBb+1On the other hand, the actual length of the two-dimensional track on the XOY plane is L'B=LB-|BaBbL, wherein | BaBbL is line segment BaBbOtherwise the actual length of the two-dimensional trajectory in the XOY plane is L'B=LB-|Ba+1BbL, wherein | Ba+1BbL is line segment Ba+1BbLength of (d);
Fourthly if Bb+1On line segment BaBa+1Upper, Bbnot on line segment BaBa+1Go up, then decision point BaWhether or not it is on line segment BbBb+1The above step (1); if point BaOn line segment BbBb+1On the other hand, the actual length of the two-dimensional track on the XOY plane is L'B=LB-|BaBb+1L, wherein | BaBb+1L is line segment BaBb+1Otherwise the actual length of the two-dimensional trajectory in the XOY plane is L'B=LB-|Ba+1Bb+1L, wherein | Ba+1Bb+1L is line segment Ba+1Bb+1Length of (d);
4.3 calculate line segment CiCi+1If there are values of a and b that are all 1,2, …, n-1, and a ≠ b, then the segment C has a slope of 1,2, …, n-1, such that a is not equal to baCa+1And line segment CbCb+1and CaCbIf the slopes are all equal, step 4.3.1 is performed, otherwise step 4.4 is performed.
4.3.1 according to point CbPoint Cb+1Point CaPoint Ca+1X-axis coordinate and z-axis coordinate of (a), decision point CbAnd Cb+1And line segment CaCa+1To calculate the actual length of the two-dimensional trajectory on the XOZ plane, as follows:
If CbAnd Cb+1Are all on line segment CaCa+1And then the actual length L 'of the two-dimensional track on the XOZ plane'C=LC-|CbCb+1L, wherein | CbCb+1L is CbCb+1Length of (d);
② if CbAnd Cb+1Are all out of line segment CaCa+1on the other hand, the actual length of the two-dimensional track on the XOZ plane is L'C=LC-|CaCa+1L, wherein | CaCa+1L is a line segment CaCa+1length of (d);
③ if CbOn line segment CaCa+1To above, Cb+1Out of line segment CaCa+1Go up, then the point C is determinedaWhether or not it is on line segment CbCb+1The above step (1); if point CaOn line segment CbCb+1On the other hand, the actual length of the two-dimensional track on the XOZ plane is L'C=LC-|CaCbl, wherein | CaCbL is a line segmentCaCbOtherwise the actual length of the two-dimensional trajectory in the XOZ plane is L'C=LC-|Ca+1CbL, wherein | Ca+1CbL is a line segment Ca+1CbLength of (d);
Fourthly if Cb+1On line segment CaCa+1To above, CbOut of line segment CaCa+1Go up, then the point C is determinedaWhether or not it is on line segment CbCb+1The above step (1); if point CaOn line segment CbCb+1On the other hand, the actual length of the two-dimensional track on the XOZ plane is L'C=LC-|CaCb+1L, wherein | CaCb+1L is a line segment CaCb+1Otherwise the actual length of the two-dimensional trajectory in the XOZ plane is L'C=LC-|Ca+1Cb+1L, wherein | Ca+1Cb+1L is a line segment Ca+1Cb+1Length of (d);
4.4 calculate line segment DiDi+1If there are values of a and b that are all 1,2, …, n-1, and a ≠ b, then segment D is formed byaDa+1And line segment DbDb+1And line segment DaDbIf the slopes are all equal, step 4.4.1 is performed, otherwise step 4.5 is performed.
4.4.1 according to point Dbpoint Db+1Point DaPoint Da+1Y-axis coordinate and z-axis coordinate of (D), and a determination point DbAnd Db+1And line segment DaDa+1To calculate the actual length of the two-dimensional trajectory on the YOZ plane, as follows:
If DbAnd Db+1Are all on line segment DaDa+1And the actual length L 'of the two-dimensional track on the YOZ plane'D=LD-|DbDb+1L, where l DbDb+1L is DbDb+1Length of (d);
If DbAnd Db+1Are all out of line segment DaDa+1Upper, then two-dimensional locus on YOZ planeIs L'D=LD-|DaDa+1L, where l DaDa+1L is line segment DaDa+1Length of (d);
(D if)bOn line segment DaDa+1To above, Db+1Out of line segment DaDa+1go up, then the point D is determinedaWhether or not it is on line segment DbDb+1The above step (1); if point DaOn line segment DbDb+1And L 'represents the actual length of the two-dimensional track on the YOZ plane'D=LD-|DaDbl, where l DaDbL is line segment DaDbOtherwise the actual length of the two-dimensional trajectory in the YOZ plane is L'D=LD-|Da+1DbL, where l Da+1DbL is line segment Da+1DbLength of (d);
Fourthly, if Db+1On line segment DaDa+1To above, DbOut of line segment DaDa+1Go up, then the point D is determinedaWhether or not it is on line segment DbDb+1The above step (1); if point DaOn line segment DbDb+1And L 'represents the actual length of the two-dimensional track on the YOZ plane'D=LD-|DaDb+1L, where l DaDb+1L is line segment DaDb+1Otherwise the actual length of the two-dimensional trajectory in the YOZ plane is L'D=LD-|Da+1Db+1l, where l Da+1Db+1L is line segment Da+1Db+1length of (d);
4.5 repeat steps 4.2, 4.3 and 4.4 until there are no values for a, B that are all 1,2, …, n-1, and a ≠ B, such that segment BaBa+1And line segment BbBb+1And line segment BaBbAll slopes of (C) are equal, or so that the line segment CaCa+1And line segment CbCb+1And line segment CaCbAll slopes of (A) are equal, or so that the line segment DaDa+1And line segment DbDb+1And line segment DaDbAll slopes of (a) are equal.
Step 5, if L'B、L′COr L'DIf there is no assignment, then use L separatelyB、LCAnd LDto assign a value; comparison of L'B、L′CAnd L'DAnd (3) defining the plane where the longest two-dimensional projection track is located as the optimal projection plane of the three-dimensional track, wherein the two-dimensional projection track in the optimal projection plane is the two-dimensional handwritten character after dimension reduction.
The invention has the following beneficial effects:
The method can accurately reduce the dimension of the three-dimensional hand-written character, ensure that the 2D image in the fixed direction can be obtained after dimension reduction, obviously reduce the cost of calculation and storage, and obtain better visual effect; in the three-dimensional space handwritten character recognition, a direction adjustment algorithm is not needed, the recognition process is effectively simplified, and the recognition rate of the three-dimensional space handwritten character is improved to a certain extent.
Detailed Description
The present invention is further described below.
A three-dimensional space handwritten character dimension reduction method based on longest track projection comprises the following specific steps:
Step 1, acquiring three-dimensional coordinates of finger tip moving in space by utilizing Leap motion somatosensory controller, wherein the three-dimensional coordinates are Ai(x, y, z) to indicate that i is 1,2, …, n is the last point of the finger tip movement in space acquired by the Leap motion somatosensory controller; and then sequentially connecting three-dimensional coordinates generated by the movement of the finger tips in the three-dimensional space to generate a three-dimensional handwritten character track.
Step 2, respectively processing a three-dimensional coordinate A based on a three-dimensional space rectangular coordinate system built in the Leap motion somatosensory controlleri(x, y, z) are projected onto three standard planes XOY, XOZ, YOZ. On the XOY plane, the point after projection is Bi(x, y); on the XOZ plane, the point after projection is Ci(x, z); on the YOZ plane, points after projection are represented by Di(y, z).
Step (ii) of3. Two-dimensional coordinate points projected on the plane XOY are sequentially connected into a line segment BiBi+1I-1, 2, …, n-1; two-dimensional coordinate points projected on the XOZ are sequentially connected into a line segment CiCi+1I-1, 2, …, n-1; two-dimensional coordinate points projected on the plane YOZ are sequentially connected into a line segment DiDi+1I-1, 2, …, n-1; thereby generating three two-dimensional trajectories.
Step 4, calculating the lengths of the three two-dimensional tracks, specifically as follows:
4.1 calculating the length of the two-dimensional trajectory on the XOY planeCalculating the length of the two-dimensional trajectory on the XOZ planeCalculating the length of a two-dimensional trajectory on the YOZ planeWherein, | BiBi+1L is line segment BiBi+1Length, | CiCi+1L is a line segment CiCi+1Length, | DiDi+1l is line segment DiDi+1Length of (d). If B isiand Bi+1Is the coincidence point, | BiBi+10, |; if CiAnd Ci+1Is the coincidence point, | CiCi+10, |; if D isiAnd Di+1Is the coincidence point, then | DiDi+1|=0。
4.2 calculate line segment BiBi+1If there are values of a and B that are all 1,2, …, n-1, and a ≠ B, then the slope of (i) is 1,2, …, n-1, so that the segment B is a segment BaBa+1And line segment BbBb+1And line segment BaBbIf the slopes are all equal, step 4.2.1 is performed, otherwise step 4.3 is performed.
4.2.1 according to point BbPoint Bb+1Point BaPoint Ba+1The x-axis coordinate and the y-axis coordinate of the point are divided by line segment scalingFormula decision point BbAnd Bb+1And line segment BaBa+1In a positional relationship (e.g., point B)bAnd point Ba+1Coincide with, or satisfyAnd λ is greater than or equal to 0, point BbOn line segment BaBa+1Upper, xa、yaAre respectively point BaX-axis coordinate and y-axis coordinate of (2), xa+1、ya+1Are respectively point Ba+1X-axis coordinate and y-axis coordinate of (2), xb、ybAre respectively point BbX-axis coordinate and y-axis coordinate of (A), when lambda is less than-1, point BbIs located on line segment BaBa+1On the extension line of (A) and close to the point Ba+1When-1 < lambda < 0, point BbIs located on line segment BaBa+1On the extension line of (A) and close to the point Ba) Therefore, the actual length of the two-dimensional track on the XOY plane is calculated as follows:
If BbAnd Bb+1Are all on line segment BaBa+1And the actual length L 'of the two-dimensional track on the XOY plane'B=LB-|BbBb+1l, wherein | BbBb+1L is BbBb+1Length of (d);
If BbAnd Bb+1Are all not on line segment BaBa+1On the other hand, the actual length of the two-dimensional track on the XOY plane is L'B=LB-|BaBa+1L, wherein | BaBa+1L is line segment BaBa+1Length of (d);
③ if BbOn line segment BaBa+1Upper, Bb+1Not on line segment BaBa+1In the above, the line segment constant ratio point-dividing formula is also adopted to determine the point BaWhether or not it is on line segment BbBb+1The above step (1); if point BaOn line segment BbBb+1On the other hand, the actual length of the two-dimensional track on the XOY plane is L'B=LB-|BaBbL, wherein | BaBbL is line segment BaBbOtherwise the actual length of the two-dimensional trajectory in the XOY plane is L'B=LB-|Ba+1BbL, wherein | Ba+1BbL is line segment Ba+1BbLength of (d);
Fourthly if Bb+1on line segment BaBa+1Upper, BbNot on line segment BaBa+1In the above, the line segment constant ratio point-dividing formula is also adopted to determine the point BaWhether or not it is on line segment BbBb+1The above step (1); if point BaOn line segment BbBb+1On the other hand, the actual length of the two-dimensional track on the XOY plane is L'B=LB-|BaBb+1L, wherein | BaBb+1L is line segment BaBb+1Otherwise the actual length of the two-dimensional trajectory in the XOY plane is L'B=LB-|Ba+1Bb+1L, wherein | Ba+1Bb+1L is line segment Ba+1Bb+1Length of (d);
4.3 calculate line segment CiCi+1If there are values of a and b that are all 1,2, …, n-1, and a ≠ b, then the segment C has a slope of 1,2, …, n-1, such that a is not equal to baCa+1And line segment CbCb+1And line segment CaCbIf the slopes are all equal, step 4.3.1 is performed, otherwise step 4.4 is performed.
4.3.1 according to point CbPoint Cb+1Point CaPoint Ca+1x-axis coordinate and z-axis coordinate of (a), decision point CbAnd Cb+1And line segment CaCa+1To calculate the actual length of the two-dimensional trajectory on the XOZ plane, as follows:
If Cband Cb+1Are all on line segment CaCa+1And then the actual length L 'of the two-dimensional track on the XOZ plane'C=LC-|CbCb+1L, wherein | CbCb+1L is CbCb+1length of (d);
② if CbAnd Cb+1Are all out of line segment CaCa+1Upper, then XOZ is flatL 'is the actual length of the on-plane two-dimensional trajectory'C=LC-|CaCa+1L, wherein | CaCa+1L is a line segment CaCa+1length of (d);
③ if CbOn line segment CaCa+1To above, Cb+1Out of line segment CaCa+1Go up, then the point C is determinedaWhether or not it is on line segment CbCb+1The above step (1); if point Caon line segment CbCb+1on the other hand, the actual length of the two-dimensional track on the XOZ plane is L'C=LC-|CaCbL, wherein | CaCbL is a line segment CaCbOtherwise the actual length of the two-dimensional trajectory in the XOZ plane is L'C=LC-|Ca+1CbL, wherein | Ca+1CbL is a line segment Ca+1CbLength of (d);
Fourthly if Cb+1On line segment CaCa+1To above, CbOut of line segment CaCa+1Go up, then the point C is determinedaWhether or not it is on line segment CbCb+1The above step (1); if point CaOn line segment CbCb+1On the other hand, the actual length of the two-dimensional track on the XOZ plane is L'C=LC-|CaCb+1L, wherein | CaCb+1L is a line segment CaCb+1Otherwise the actual length of the two-dimensional trajectory in the XOZ plane is L'C=LC-|Ca+1Cb+1l, wherein | Ca+1Cb+1L is a line segment Ca+1Cb+1length of (d);
4.4 calculate line segment DiDi+1If there are values of a and b that are all 1,2, …, n-1, and a ≠ b, then segment D is formed byaDa+1And line segment DbDb+1And line segment DaDbIf the slopes are all equal, step 4.4.1 is performed, otherwise step 4.5 is performed.
4.4.1 according to point Dbpoint Db+1Point DaPoint Da+1Y-axis coordinate ofAnd z-axis coordinate, decision point DbAnd Db+1And line segment DaDa+1To calculate the actual length of the two-dimensional trajectory on the YOZ plane, as follows:
If DbAnd Db+1Are all on line segment DaDa+1And the actual length L 'of the two-dimensional track on the YOZ plane'D=LD-|DbDb+1L, where l DbDb+1L is DbDb+1Length of (d);
If DbAnd Db+1Are all out of line segment DaDa+1And L 'represents the actual length of the two-dimensional track on the YOZ plane'D=LD-|DaDa+1L, where l DaDa+1L is line segment DaDa+1Length of (d);
(D if)bOn line segment DaDa+1To above, Db+1Out of line segment DaDa+1Go up, then the point D is determinedaWhether or not it is on line segment DbDb+1The above step (1); if point DaOn line segment DbDb+1And L 'represents the actual length of the two-dimensional track on the YOZ plane'D=LD-|DaDbL, where l DaDbL is line segment DaDbOtherwise the actual length of the two-dimensional trajectory in the YOZ plane is L'D=LD-|Da+1DbL, where l Da+1Dbl is line segment Da+1DbLength of (d);
Fourthly, if Db+1On line segment DaDa+1to above, DbOut of line segment DaDa+1Go up, then the point D is determinedaWhether or not it is on line segment DbDb+1The above step (1); if point DaOn line segment DbDb+1And L 'represents the actual length of the two-dimensional track on the YOZ plane'D=LD-|DaDb+1L, where l DaDb+1l is line segment DaDb+1Otherwise the actual length of the two-dimensional trajectory in the YOZ plane is L'D=LD-|Da+1Db+1L, where l Da+1Db+1L is line segment Da+1Db+1length of (d);
4.5 repeat steps 4.2, 4.3 and 4.4 until there are no values for a, B that are all 1,2, …, n-1, and a ≠ B, such that segment BaBa+1And line segment BbBb+1And line segment BaBbAll slopes of (C) are equal, or so that the line segment CaCa+1And line segment CbCb+1And line segment CaCbAll slopes of (A) are equal, or so that the line segment DaDa+1And line segment DbDb+1And line segment DaDball slopes of (a) are equal.
step 5, if L'B、L′Cor L'Dif there is no assignment, then use L separatelyB、LCand LDTo assign a value; comparison of L'B、L′CAnd L'DAnd (3) defining the plane where the longest two-dimensional projection track is located as the optimal projection plane of the three-dimensional track, wherein the two-dimensional projection track in the optimal projection plane is the two-dimensional handwritten character after dimension reduction.

Claims (1)

1. A three-dimensional space handwritten character dimension reduction method based on longest track projection is characterized in that: the method comprises the following specific steps:
Step 1, acquiring three-dimensional coordinates of finger tip moving in space by utilizing Leap motion somatosensory controller, wherein the three-dimensional coordinates are Ai(x, y, z) to indicate that i is 1,2, …, n is the last point of the finger tip movement in space acquired by the Leap motion somatosensory controller; then sequentially connecting three-dimensional coordinates generated by the movement of the finger tips in the three-dimensional space to generate a three-dimensional handwritten character track;
Step 2, respectively processing a three-dimensional coordinate A based on a three-dimensional space rectangular coordinate system built in the Leap motion somatosensory controlleri(x, y, z) projected onto three standard planes XOY, XOZ, YOZ; on the XOY plane, the point after projection is Bi(x, y); on the XOZ plane, the point after projection is Ci(x, z) fromRepresents; on the YOZ plane, points after projection are represented by Di(y, z);
Step 3, sequentially connecting the two-dimensional coordinate points projected on the plane XOY into a line segment BiBi+1I-1, 2, …, n-1; two-dimensional coordinate points projected on the XOZ are sequentially connected into a line segment CiCi+1I-1, 2, …, n-1; two-dimensional coordinate points projected on the plane YOZ are sequentially connected into a line segment DiDi+1I-1, 2, …, n-1; thereby generating three two-dimensional tracks;
Step 4, calculating the lengths of the three two-dimensional tracks, specifically as follows:
4.1 calculating the length of the two-dimensional trajectory on the XOY planeCalculating the length of the two-dimensional trajectory on the XOZ planeCalculating the length of a two-dimensional trajectory on the YOZ planeWherein, | BiBi+1L is line segment BiBi+1Length, | CiCi+1L is a line segment CiCi+1Length, | DiDi+1L is line segment DiDi+1Length of (d); if B isiAnd Bi+1Is the coincidence point, | BiBi+10, |; if CiAnd Ci+1Is the coincidence point, | CiCi+10, |; if D isiAnd Di+1Is the coincidence point, then | DiDi+1|=0;
4.2 calculate line segment BiBi+1If there are values of a and B that are all 1,2, …, n-1, and a ≠ B, then the slope of (i) is 1,2, …, n-1, so that the segment B is a segment BaBa+1And line segment BbBb+1And line segment BaBbIf the slopes are equal, the step 4.2.1 is carried out, otherwise, the step 4.3 is carried out;
4.2.1 according to point BbPoint Bb+1Point BaPoint Ba+1X-axis coordinate and y-axis coordinate of (A), decision point BbAnd Bb+1And line segment BaBa+1To calculate the actual length of the two-dimensional trajectory on the XOY plane, as follows:
If BbAnd Bb+1Are all on line segment BaBa+1And the actual length L 'of the two-dimensional track on the XOY plane'B=LB-|BbBb+1l, wherein | BbBb+1L is BbBb+1Length of (d);
if BbAnd Bb+1Are all not on line segment BaBa+1On the other hand, the actual length of the two-dimensional track on the XOY plane is L'B=LB-|BaBa+1L, wherein | BaBa+1L is line segment BaBa+1Length of (d);
③ if BbOn line segment BaBa+1Upper, Bb+1Not on line segment BaBa+1Go up, then decision point BaWhether or not it is on line segment BbBb+1the above step (1); if point BaOn line segment BbBb+1On the other hand, the actual length of the two-dimensional track on the XOY plane is L'B=LB-|BaBbL, wherein | BaBbL is line segment BaBbOtherwise the actual length of the two-dimensional trajectory in the XOY plane is L'B=LB-|Ba+1BbL, wherein | Ba+1Bbl is line segment Ba+1BbLength of (d);
Fourthly if Bb+1On line segment BaBa+1Upper, BbNot on line segment BaBa+1Go up, then decision point BaWhether or not it is on line segment BbBb+1The above step (1); if point BaOn line segment BbBb+1On the other hand, the actual length of the two-dimensional track on the XOY plane is L'B=LB-|BaBb+1L, wherein | BaBb+1L is line segment BaBb+1Otherwise the actual length of the two-dimensional trajectory in the XOY plane is L'B=LB-|Ba+1Bb+1L, wherein | Ba+1Bb+1L is line segment Ba+1Bb+1Length of (d);
4.3 calculate line segment CiCi+1If there are values of a and b that are all 1,2, …, n-1, and a ≠ b, then the segment C has a slope of 1,2, …, n-1, such that a is not equal to baCa+1And line segment CbCb+1And line segment CaCbIf the slopes are equal, the step 4.3.1 is carried out, otherwise, the step 4.4 is carried out;
4.3.1 according to point CbPoint Cb+1Point CaPoint Ca+1X-axis coordinate and z-axis coordinate of (a), decision point CbAnd Cb+1And line segment CaCa+1To calculate the actual length of the two-dimensional trajectory on the XOZ plane, as follows:
If CbAnd Cb+1Are all on line segment CaCa+1And then the actual length L 'of the two-dimensional track on the XOZ plane'C=LC-|CbCb+1L, wherein | CbCb+1L is CbCb+1length of (d);
② if Cband Cb+1Are all out of line segment CaCa+1On the other hand, the actual length of the two-dimensional track on the XOZ plane is L'C=LC-|CaCa+1L, wherein | CaCa+1L is a line segment CaCa+1Length of (d);
③ if CbOn line segment CaCa+1To above, Cb+1Out of line segment CaCa+1Go up, then the point C is determinedaWhether or not it is on line segment CbCb+1the above step (1); if point CaOn line segment CbCb+1On the other hand, the actual length of the two-dimensional track on the XOZ plane is L'C=LC-|CaCbL, wherein | CaCbL is a line segment CaCbOtherwise the actual length of the two-dimensional trajectory in the XOZ plane is L'C=LC-|Ca+1CbL, wherein | Ca+1CbL is a line segment Ca+1CbLength of (d);
Fourthly if Cb+1On line segment CaCa+1To above, CbOut of line segment CaCa+1Go up, then the point C is determinedaWhether or not it is on line segment CbCb+1The above step (1); if point CaOn line segment CbCb+1On the other hand, the actual length of the two-dimensional track on the XOZ plane is L'C=LC-|CaCb+1L, wherein | CaCb+1L is a line segment CaCb+1Otherwise the actual length of the two-dimensional trajectory in the XOZ plane is L'C=LC-|Ca+1Cb+1L, wherein | Ca+1Cb+1L is a line segment Ca+1Cb+1Length of (d); 4.4 calculate line segment DiDi+1If there are values of a and b that are all 1,2, …, n-1, and a ≠ b, then segment D is formed byaDa+1And line segment DbDb+1And line segment DaDbIf the slopes are equal, the step 4.4.1 is carried out, otherwise, the step 4.5 is carried out;
4.4.1 according to point DbPoint Db+1Point DaPoint Da+1y-axis coordinate and z-axis coordinate of (D), and a determination point DbAnd Db+1And line segment DaDa+1to calculate the actual length of the two-dimensional trajectory on the YOZ plane, as follows:
If DbAnd Db+1Are all on line segment DaDa+1And the actual length L 'of the two-dimensional track on the YOZ plane'D=LD-|DbDb+1L, where l DbDb+1L is DbDb+1Length of (d);
If DbAnd Db+1are all out of line segment DaDa+1And L 'represents the actual length of the two-dimensional track on the YOZ plane'D=LD-|DaDa+1L, where l DaDa+1L is line segment DaDa+1Length of (d);
(D if)bOn line segment DaDa+1to above, Db+1Out of line segment DaDa+1Go up, then the point D is determinedaWhether or not it is on line segment DbDb+1The above step (1); if point DaOn line segment DbDb+1and L 'represents the actual length of the two-dimensional track on the YOZ plane'D=LD-|DaDbL, where l DaDbL is line segment DaDbOtherwise the actual length of the two-dimensional trajectory in the YOZ plane is L'D=LD-|Da+1DbL, where l Da+1DbL is line segment Da+1Dblength of (d);
Fourthly, if Db+1On line segment DaDa+1To above, DbOut of line segment DaDa+1go up, then the point D is determinedaWhether or not it is on line segment DbDb+1The above step (1); if point DaOn line segment DbDb+1And L 'represents the actual length of the two-dimensional track on the YOZ plane'D=LD-|DaDb+1L, where l DaDb+1L is line segment DaDb+1Otherwise the actual length of the two-dimensional trajectory in the YOZ plane is L'D=LD-|Da+1Db+1L, where l Da+1Db+1L is line segment Da+1Db+1Length of (d);
4.5 repeat steps 4.2, 4.3 and 4.4 until there are no values for a, B that are all 1,2, …, n-1, and a ≠ B, such that segment BaBa+1And line segment BbBb+1And line segment BaBbAll slopes of (C) are equal, or so that the line segment CaCa+1And line segment CbCb+1and line segment CaCball slopes of (A) are equal, or so that the line segment DaDa+1And line segment DbDb+1And line segment DaDbThe slopes of (a) and (b) are all equal;
Step 5, if L'B、L′COr L'DWithout endowmentValues, then respectively, are LB、LCAnd LDTo assign a value; comparison of L'B、L′CAnd L'DAnd (3) defining the plane where the longest two-dimensional projection track is located as the optimal projection plane of the three-dimensional track, wherein the two-dimensional projection track in the optimal projection plane is the two-dimensional handwritten character after dimension reduction.
CN201710833980.7A 2017-09-15 2017-09-15 Three-dimensional space handwritten character dimension reduction method based on longest track projection Active CN107609593B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710833980.7A CN107609593B (en) 2017-09-15 2017-09-15 Three-dimensional space handwritten character dimension reduction method based on longest track projection

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710833980.7A CN107609593B (en) 2017-09-15 2017-09-15 Three-dimensional space handwritten character dimension reduction method based on longest track projection

Publications (2)

Publication Number Publication Date
CN107609593A CN107609593A (en) 2018-01-19
CN107609593B true CN107609593B (en) 2019-12-10

Family

ID=61060305

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710833980.7A Active CN107609593B (en) 2017-09-15 2017-09-15 Three-dimensional space handwritten character dimension reduction method based on longest track projection

Country Status (1)

Country Link
CN (1) CN107609593B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108563988B (en) * 2018-03-06 2021-12-03 上海数迹智能科技有限公司 Fingertip track identification and classification method
CN109191365B (en) * 2018-06-27 2022-11-25 杭州电子科技大学 Three-dimensional space handwritten character dimension reduction method based on directed cuboid

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1512298A (en) * 2002-12-26 2004-07-14 �ʼҷ����ֵ��ӹɷ����޹�˾ Method for three dimension hand writing identification and its system
CN102135820A (en) * 2011-01-18 2011-07-27 浙江大学 Planarization pre-processing method
CN102810015A (en) * 2011-05-31 2012-12-05 中兴通讯股份有限公司 Input method and terminal based on space motion
CN102810008A (en) * 2012-05-16 2012-12-05 北京捷通华声语音技术有限公司 Air input system, method and air input acquisition equipment
CN107122768A (en) * 2017-05-31 2017-09-01 吉林大学 A kind of three-dimensional pen type identification preprocess method

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7961909B2 (en) * 2006-03-08 2011-06-14 Electronic Scripting Products, Inc. Computer interface employing a manipulated object with absolute pose detection component and a display

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1512298A (en) * 2002-12-26 2004-07-14 �ʼҷ����ֵ��ӹɷ����޹�˾ Method for three dimension hand writing identification and its system
CN102135820A (en) * 2011-01-18 2011-07-27 浙江大学 Planarization pre-processing method
CN102810015A (en) * 2011-05-31 2012-12-05 中兴通讯股份有限公司 Input method and terminal based on space motion
CN102810008A (en) * 2012-05-16 2012-12-05 北京捷通华声语音技术有限公司 Air input system, method and air input acquisition equipment
CN107122768A (en) * 2017-05-31 2017-09-01 吉林大学 A kind of three-dimensional pen type identification preprocess method

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
基于三维加速度传感器的空间手写识别预处理技术研究;赖英超;《中国优秀硕士学位论文全文数据库 信息科技辑》;20120715(第07期);第1-52页 *
基于主元分析的空间手写平面化预处理;谭啸峰等;《机电工程》;20110828;第28卷(第8期);第965-969页 *

Also Published As

Publication number Publication date
CN107609593A (en) 2018-01-19

Similar Documents

Publication Publication Date Title
CN107169411B (en) A kind of real-time dynamic gesture identification method based on key frame and boundary constraint DTW
CN107609593B (en) Three-dimensional space handwritten character dimension reduction method based on longest track projection
CN109664300A (en) A kind of windy lattice calligraphic copying method of robot for feeling study based on power
CN102999152A (en) Method and system for gesture recognition
CN109543644B (en) Multi-modal gesture recognition method
CN103020085A (en) Implementation method and application of dynamic personalized calligraphy character library
CN111125403B (en) Aided design drawing method and system based on artificial intelligence
CN108628455B (en) Virtual sand painting drawing method based on touch screen gesture recognition
CN103902100B (en) Stroke segmentation method based on velocity characteristic for intelligence Freehandhand-drawing input
CN106815833B (en) A kind of matching process suitable for IC package equipment deformable object
CN106200964B (en) The method for carrying out human-computer interaction is identified in a kind of virtual reality based on motion track
Wang et al. A mechanical part sorting method based on fast template matching
Yang et al. Animating the brush-writing process of Chinese calligraphy characters
CN102135820B (en) Planarization pre-processing method
Jeong et al. Hand gesture user interface for transforming objects in 3d virtual space
Xu et al. Fully deformable network for multiview face image synthesis
CN109191365B (en) Three-dimensional space handwritten character dimension reduction method based on directed cuboid
Shankar et al. Sketching in three dimensions: A beautification scheme
Yu et al. CatFormer: Category-Level 6D Object Pose Estimation with Transformer
Yunusov et al. Instance Segmentation Challenge Track Technical Report, VIPriors Workshop at ICCV 2021: Task-Specific Copy-Paste Data Augmentation Method for Instance Segmentation
CN108170270A (en) A kind of gesture tracking method of VR helmets
CN101719019B (en) Double-purpose Chinese character searching numerical code input method for computer and mobile phone
TWI709894B (en) Gesture feature processing method and touch control module using the same
CN107122768A (en) A kind of three-dimensional pen type identification preprocess method
CN110032957B (en) Gesture spatial domain matching method based on skeleton node information

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant