正在加载图片...
1:14 Y.Yin et al. of the reference axis pair in principal plane.If v1 and v2 can not meet the condition of right-handed coordinate system,i.e.,satisfying Eq.(8),it means the projected reference axis pair and the projected 2D character contour in the principal plane are reversed.Then,we reverse the above axis pair and 2D contour around zp-axis for calibration,i.e.,updating (p,p)with Eq.(9),as shown in Fig.11(c),Fig.13(c)and Fig.14(c).Otherwise,the 2D contour keeps the same orientation,i.e.,[=[p,p,as shown in Fig.10(c) and Fig.12(c).Here,zp-axis,yp-axis mean the coordinate axes in principal-frame,while (p,p)means the coordinates in principal-frame. v1×v2<0 (8) [,]P=p,-nT (9) Rotating:Unit now,we have introduced the reversal operation to calibrate the 2D contour.However,the contour still has the problem like skew,as shown in Fig.10(c)-Fig. 14(c).At this time,we introduce the calibration axis vc in the principal plane to tune the contour through rotation.For h-Zh plane and yh-Zh plane,Zh-axis is set as the calibration axis ve,while for th-yh plane,yh-axis is set as ve.After that,we use Eq.(10) to calculate the rotation angle of 2D contour,i.e.,the contour rotates Ade anticlockwise to make ve overlap yp-axis.The rotation can be found from Fig.10(c)-Fig.14(c)to Fig. 10(d)-Fig.14(d),respectively.In Eq.(10),vy means yp-axis in principal-frame,while Sgn is a sign function used to determine the rotation angle in anticlockwise(positive)or clockwise (negative).After the calibration with rotation,the coordinates ()of the 2D contour are updated as (based on Eq.(11). △0e=(arccos ve:ug)Sgn(ue×vy) (10) vellvy cos△9。 -sin△9。 sin△0e cos△0e (11) Normalizing:Considering the size difference of gesture contours,we introduce the normalization operation to mitigate the recognition error caused by size difference.Specifically, we use(),i[1,n]to represent the points in the 2D contour after rotation.Then, we use Eq.(12)to update the coordinates of each point,i.e,normalizing the 2D contour. Until now,the 2D contour has been calibrated and will be used for the following character recognition. D=argmaxV(p)2+(p.)2 ie[1,n] (12) = D 5 SYSTEM DESIGN In Fig.16,we show the key components and workflow of our proposed system AirContour. There are three key components:data collection and pre-processing,contour calculation, contour recognition.We first collect sensor data and pre-process the data.We then compute gesture contours in 3D space,and then utilize PCA to select the principal plane to project 3D contours into a 2D plane.After that,we calibrate the 2D contour through reversing, rotating and normalizing operations.Finally,we propose an online approach AC-Vec and an offline approach AC-CNN to recognize 2D contours as characters. ACM Trans.Sensor Netw.,Vol.1,No.1,Article 1.Publication date:January 2019.1:14 Y. Yin et al. of the reference axis pair in principal plane. If 𝑣1 and 𝑣2 can not meet the condition of right-handed coordinate system, i.e., satisfying Eq. (8), it means the projected reference axis pair and the projected 2D character contour in the principal plane are reversed. Then, we reverse the above axis pair and 2D contour around 𝑥𝑝-axis for calibration, i.e., updating (𝑥𝑝𝑖 , 𝑦𝑝𝑖 ) with Eq. (9), as shown in Fig. 11(c), Fig. 13(c) and Fig. 14(c). Otherwise, the 2D contour keeps the same orientation, i.e., [𝑥 𝑣 𝑝𝑖 , 𝑦𝑣 𝑝𝑖 ] 𝑇 = [𝑥𝑝𝑖 , 𝑦𝑝𝑖 ] 𝑇 , as shown in Fig. 10(c) and Fig. 12(c). Here, 𝑥𝑝-axis, 𝑦𝑝-axis mean the coordinate axes in principal-frame, while (𝑥𝑝𝑖 , 𝑦𝑝𝑖 ) means the coordinates in principal-frame. 𝑣1 × 𝑣2 < 0 (8) [𝑥 𝑣 𝑝𝑖 , 𝑦𝑣 𝑝𝑖 ] 𝑇 = [𝑥𝑝𝑖 , −𝑦𝑝𝑖 ] 𝑇 (9) Rotating: Unit now, we have introduced the reversal operation to calibrate the 2D contour. However, the contour still has the problem like skew, as shown in Fig. 10(c)-Fig. 14(c). At this time, we introduce the calibration axis 𝑣𝑐 in the principal plane to tune the contour through rotation. For 𝑥ℎ − 𝑧ℎ plane and 𝑦ℎ − 𝑧ℎ plane, 𝑧ℎ-axis is set as the calibration axis 𝑣𝑐, while for 𝑥ℎ − 𝑦ℎ plane, 𝑦ℎ-axis is set as 𝑣𝑐. After that, we use Eq. (10) to calculate the rotation angle of 2D contour, i.e., the contour rotates ∆𝜃𝑐 anticlockwise to make 𝑣𝑐 overlap 𝑦𝑝-axis. The rotation can be found from Fig. 10(c)-Fig. 14(c) to Fig. 10(d)-Fig. 14(d), respectively. In Eq. (10), 𝑣𝑦 means 𝑦𝑝-axis in principal-frame, while Sgn is a sign function used to determine the rotation angle in anticlockwise (positive) or clockwise (negative). After the calibration with rotation, the coordinates (𝑥 𝑣 𝑝𝑖 , 𝑦𝑣 𝑝𝑖 ) of the 2D contour are updated as (𝑥 ′ 𝑝𝑖 , 𝑦′ 𝑝𝑖 ) based on Eq. (11). ∆𝜃𝑐 = (arccos 𝑣𝑐 · 𝑣𝑦 |𝑣𝑐||𝑣𝑦| ) · Sgn(𝑣𝑐 × 𝑣𝑦). (10) [︂ 𝑥 ′ 𝑝𝑖 𝑦 ′ 𝑝𝑖 ]︂ = [︂ cos ∆𝜃𝑐 − sin ∆𝜃𝑐 sin ∆𝜃𝑐 cos ∆𝜃𝑐 ]︂[︂ 𝑥 𝑣 𝑝𝑖 𝑦 𝑣 𝑝𝑖 ]︂ (11) Normalizing: Considering the size difference of gesture contours, we introduce the normalization operation to mitigate the recognition error caused by size difference. Specifically, we use (𝑥 ′ 𝑝𝑖, 𝑦′ 𝑝𝑖), 𝑖 ∈ [1, 𝑛] to represent the points in the 2D contour after rotation. Then, we use Eq. (12) to update the coordinates of each point, i.e, normalizing the 2D contour. Until now, the 2D contour has been calibrated and will be used for the following character recognition. 𝐷 = arg max 𝑖∈[1,𝑛] √︁ (𝑥 ′ 𝑝𝑖 ) 2 + (𝑦 ′ 𝑝𝑖 ) 2 𝑥 ′ 𝑝𝑖 = 𝑥 ′ 𝑝𝑖 𝐷 , 𝑦′ 𝑝𝑖 = 𝑦 ′ 𝑝𝑖 𝐷 (12) 5 SYSTEM DESIGN In Fig. 16, we show the key components and workflow of our proposed system AirContour. There are three key components: data collection and pre-processing, contour calculation, contour recognition. We first collect sensor data and pre-process the data. We then compute gesture contours in 3D space, and then utilize PCA to select the principal plane to project 3D contours into a 2D plane. After that, we calibrate the 2D contour through reversing, rotating and normalizing operations. Finally, we propose an online approach AC-Vec and an offline approach AC-CNN to recognize 2D contours as characters. ACM Trans. Sensor Netw., Vol. 1, No. 1, Article 1. Publication date: January 2019
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有