WO2023100250A1 - 動き取得装置、動き取得方法及び動き取得プログラム - Google Patents

動き取得装置、動き取得方法及び動き取得プログラム Download PDF

Info

Publication number
WO2023100250A1
WO2023100250A1 PCT/JP2021/043902 JP2021043902W WO2023100250A1 WO 2023100250 A1 WO2023100250 A1 WO 2023100250A1 JP 2021043902 W JP2021043902 W JP 2021043902W WO 2023100250 A1 WO2023100250 A1 WO 2023100250A1
Authority
WO
WIPO (PCT)
Prior art keywords
motion
acceleration
rotation axis
penlight
information
Prior art date
Application number
PCT/JP2021/043902
Other languages
English (en)
French (fr)
Inventor
和可菜 大城
誉宗 巻口
隆二 山本
Original Assignee
日本電信電話株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 日本電信電話株式会社 filed Critical 日本電信電話株式会社
Priority to JP2023564307A priority Critical patent/JPWO2023100250A1/ja
Priority to PCT/JP2021/043902 priority patent/WO2023100250A1/ja
Publication of WO2023100250A1 publication Critical patent/WO2023100250A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01PMEASURING LINEAR OR ANGULAR SPEED, ACCELERATION, DECELERATION, OR SHOCK; INDICATING PRESENCE, ABSENCE, OR DIRECTION, OF MOVEMENT
    • G01P13/00Indicating or recording presence, absence, or direction, of movement
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01PMEASURING LINEAR OR ANGULAR SPEED, ACCELERATION, DECELERATION, OR SHOCK; INDICATING PRESENCE, ABSENCE, OR DIRECTION, OF MOVEMENT
    • G01P15/00Measuring acceleration; Measuring deceleration; Measuring shock, i.e. sudden change of acceleration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer

Definitions

  • One aspect of the present invention relates to a motion capturing device, a motion capturing method, and a motion capturing program.
  • Non-Patent Document 1 the spectator is given a VR (Virtual Reality) controller, which is an object to acquire motion, and the spectator's motion is estimated based on the motion of this VR controller and reproduced in the VR space.
  • VR Virtual Reality
  • one 6-axis sensor (acceleration + angular velocity) to estimate the posture angle of the motion capture object.
  • the spectator acquires the difference in the movement of the object, such as when the target is shaken around the wrist and when the object is shaken around the elbow. Therefore, the motion of the motion capture object cannot be accurately presented.
  • the present invention has been made in view of the above circumstances, and its object is to provide a motion acquisition apparatus capable of acquiring the difference in motion of a motion acquisition target without detecting it from the outside of the motion acquisition target. , to provide a motion acquisition method and a motion acquisition program.
  • a motion acquisition device includes two acceleration sensors, one angular velocity sensor, an information acquisition section, and a motion analysis section.
  • Two acceleration sensors and one angular velocity sensor are arranged on a motion capture object that is rotated about a rotation axis.
  • the information acquisition unit acquires acceleration information detected by two acceleration sensors and angular velocity information detected by one angular velocity sensor.
  • the motion analysis unit estimates the distance from the motion acquisition target to the rotation axis and the posture angle of the motion acquisition target based on the acceleration information and the angular velocity information acquired by the information acquisition unit.
  • only two acceleration sensors and one angular velocity sensor arranged on the motion acquisition target are used to estimate the rotation axis of the motion acquisition target in addition to the posture angle of the motion acquisition target. It is possible to provide a motion acquisition device, a motion acquisition method, and a motion acquisition program that enable acquisition of differences in motion of a motion acquisition target without external detection of the object.
  • FIG. 1 is a block diagram showing an example of an overview of a distribution system to which a motion acquisition device according to the first embodiment of the invention is applied.
  • FIG. 2 is a block diagram showing an example of the configuration of the motion acquisition device according to the first embodiment.
  • FIG. 3 is a schematic diagram showing an example of a motion capture target as an input device in FIG.
  • FIG. 4 is a block diagram showing an example of the configuration of the distribution server in FIG. 2.
  • FIG. 5 is a schematic diagram showing the movement of the penlight when the penlight is swung from an attitude angle of 0 degrees to an attitude angle of 45 degrees around a rotation axis outside the penlight.
  • FIG. 5 is a schematic diagram showing the movement of the penlight when the penlight is swung from an attitude angle of 0 degrees to an attitude angle of 45 degrees around a rotation axis outside the penlight.
  • FIG. 6 is a schematic diagram showing the movement of the penlight when the penlight is swung from an attitude angle of 0 degrees to an attitude angle of 45 degrees about the rotation axis in the penlight.
  • FIG. 7 is a flow chart showing a processing routine in the motion acquisition device.
  • FIG. 8 is a schematic diagram showing the relationship between the position of the rotation axis and the acceleration vector of each acceleration sensor included in the motion capture target.
  • FIG. 9 is a diagram showing each acceleration vector in the same coordinate system.
  • FIG. 10 is a diagram showing the relationship between the world coordinate system and the coordinate system of the motion capture target.
  • FIG. 11 is a diagram for explaining the swing direction when the coordinate system of the motion capture target is fixed with respect to the world coordinate system.
  • FIG. 12 is a diagram for explaining variables used for rotation axis estimation when the rotation axis is outside the motion acquisition target.
  • FIG. 13 is a diagram for explaining variables used for estimating the rotation axis when the rotation axis is inside the motion capture target.
  • FIG. 14 is a diagram for explaining variables used for posture angle calculation when the rotation axis is outside the motion acquisition target.
  • FIG. 15 is a diagram for explaining variables used for posture angle calculation when the rotation axis is inside the motion acquisition target.
  • FIG. 16 is a diagram for explaining a method of reflecting the rotation axis position in the image display of the motion capture target when the rotation axis is outside the motion capture target.
  • FIG. 17 is a diagram for explaining a method of reflecting the rotation axis position in the image display of the motion capture target when the rotation axis is inside the motion capture target.
  • FIG. 18 is a diagram for explaining a method of reflecting an attitude angle in video display of a motion capture target.
  • FIG. 19 is a block diagram showing an example of the configuration of a motion acquisition device according to the second embodiment of the invention.
  • FIG. 20 is a schematic diagram showing an example of a motion capture target as an input device in FIG.
  • FIG. 21 is a flow chart showing a processing routine in the motion acquisition device according to the second embodiment.
  • FIG. 22 is a diagram for explaining variables used for rotation axis estimation when the rotation axis is outside the motion acquisition target.
  • FIG. 23 is a diagram for explaining variables used for estimating the rotation axis when the rotation axis is inside the motion capture target.
  • FIG. 24 is a block diagram showing an example of the configuration of a motion acquisition device according to the third embodiment of the invention.
  • FIG. 25 is a schematic diagram showing an example of the arrangement positions of the geomagnetic sensors on the motion capture target.
  • FIG. 26 is a block diagram showing another example of the configuration of the motion acquisition device according to the third embodiment.
  • FIG. 1 is a block diagram showing an example of an overview of a distribution system to which a motion acquisition device according to the first embodiment of the invention is applied.
  • the distribution system is a system in which a distribution server SV distributes video of a performer PE to a plurality of audience members AU1, AU2, AU3, . . . , AUn via a network NW such as the Internet.
  • a photographing device PC and a display device PD are arranged in the live venue where the performer PE is performing.
  • the imaging device PC can include multiple cameras.
  • AUn are provided with display devices AD1, AD2, AD3, . . .
  • a description will be given as an AD and an input device AI.
  • a live video of the performer PE is captured by the camera PC and transmitted to the distribution server SV via the network NW.
  • the distribution server SV distributes the live video captured by the camera PC to the display device AD of each audience member AU via the network NW, and causes the display device AD to display the live video.
  • the distribution server SV may create and distribute VR video based on the live video captured by the imaging device PC.
  • the display device AD of the audience AU can be an HMD (Head Mounted Display) worn on the head of the audience AU.
  • the input device AI of the audience AU transmits an input signal to the distribution server SV via the network NW.
  • the distribution server SV analyzes the movement of the input device AI based on the input signal. Based on the analyzed movement, the distribution server SV transmits a video reproducing the movement of the input device AI to the display device PD of the performer PE.
  • the display device PD may be a plurality of large displays surrounding the performer PE, or AR (Augmented Reality) glasses.
  • the distribution server SV can include the video of the input device AI of the other audience AU in the VR video for the audience AU watching the VR video.
  • FIG. 2 is a block diagram showing an example of the configuration of the motion acquisition device 1 according to the first embodiment.
  • the motion acquisition device 1 includes an input device AI of each audience member AU, a distribution server SV, a display device PD of the performer PE and/or a display device AD of each audience member AU, as shown in FIG.
  • the input device AI is a motion capture target and includes two acceleration sensors 2A and 2B.
  • the distribution server SV also includes an information acquisition unit 3 , a motion analysis unit 4 and a video display unit 5 .
  • FIG. 3 is a schematic diagram showing an example of a motion acquisition target as the input device AI.
  • the input device AI is provided in the form of a penlight 6 held by the audience AU.
  • Two accelerometers 2A and 2B are spaced apart from each other on an elongated cylindrical rigid body that constitutes the penlight 6.
  • the arrangement form may be one that is attached to the surface of the penlight 6, but considering that it will be swung by the audience AU, that is, rotated around a certain rotation axis AX, the penlight 6 It is desirable to be housed inside.
  • the separation direction is the radial direction of rotation, that is, the longitudinal direction of the cylindrical penlight 6 .
  • the two acceleration sensors 2A and 2B are arranged at both ends of the cylindrical penlight 6 along its longitudinal axis.
  • the two acceleration sensors 2A and 2B are oriented so that the directions of the three detection axes (x-axis, y-axis, z-axis) are aligned, and the z-axis direction is the longitudinal direction of the cylindrical penlight 6. , is placed on the penlight 6 .
  • the information acquisition unit 3 has a function of acquiring acceleration information detected by the two acceleration sensors 2A and 2B of each penlight 6 via the network NW.
  • the motion analysis unit 4 determines whether the rotation axis AX is between the two acceleration sensors 2A and 2B. It has a function of estimating which one it is, the distance from the acceleration sensor to the rotation axis AX, and the attitude angle of each penlight 6 . Any one of the two acceleration sensors 2A and 2B of each penlight 6 may be used as an acceleration sensor for estimating the distance to the rotation axis AX. As indicated by the one-dot chain line arrow and the two-dot chain line arrow in FIG. 3, the directions of the acceleration vectors from the two acceleration sensors 2A and 2B differ depending on whether the rotation axis AX is inside or outside the penlight 6. .
  • the motion analysis unit 4 can estimate the position of the rotation axis AX based on the acceleration information. The details of the method of estimating the rotation axis AX and the posture angle in the motion analysis unit 4 will be described later.
  • the image display unit 5 Based on the distance to the rotation axis AX analyzed by the motion analysis unit 4, the posture angle of each penlight 6, and whether the rotation axis AX is inside or outside the penlight 6, the image display unit 5 displays each It has a function of generating an image for displaying the image of the penlight 6 as an image. Furthermore, the image display unit 5 has a function of transmitting the generated image to the display device PD of the performer PE and/or the display device AD of each audience member AU via the network NW and displaying it there. .
  • FIG. 4 is a block diagram showing an example of the configuration of the distribution server SV.
  • the distribution server SV is composed of, for example, a PC (Personal Computer) or the like, and has a processor 11A such as a CPU (Central Processing Unit).
  • the processor 11A may be multi-core/multi-threaded and capable of executing multiple processes in parallel.
  • the motion acquisition device has a program memory 11B, a data memory 12, and a communication interface 13 connected to the processor 11A via a bus 14.
  • FIG. 1 is a block diagram showing an example of the configuration of the distribution server SV.
  • the distribution server SV is composed of, for example, a PC (Personal Computer) or the like, and has a processor 11A such as a CPU (Central Processing Unit).
  • the processor 11A may be multi-core/multi-threaded and capable of executing multiple processes in parallel.
  • the motion acquisition device has a program memory 11B, a data memory 12, and a communication interface 13 connected to the processor 11A via
  • the program memory 11B includes, as storage media, non-volatile memories such as HDD (Hard Disk Drive) and SSD (Solid State Drive) that can be written and read at any time, and non-volatile memories such as ROM (Read Only Memory). are used in combination.
  • the program memory 11B stores programs necessary for the processor 11A to execute various processes.
  • the program includes the motion acquisition program according to the first embodiment in addition to the OS (Operating System).
  • OS Operating System
  • the processor 11A executing this motion acquisition program, the information acquisition section 3, the motion analysis section 4, and the image display section 5 can be realized as processing function sections by software. Note that these processing functions may be implemented in a variety of other forms, including integrated circuits such as ASICs (Application Specific Integrated Circuits) and FPGAs (field-programmable gate arrays).
  • the data memory 12 is storage that uses, as a storage medium, a combination of a non-volatile memory that can be written and read at any time, such as an HDD or SSD, and a volatile memory such as a RAM (Random Access Memory).
  • the data memory 12 is used to store data acquired and created in the process of performing various processes.
  • the storage area of the data memory 12 includes, for example, a setting information storage section 121, a reception information storage section 122, a rotation axis information storage section 123, an attitude angle information storage section 124, an image storage section 125, and a temporary storage section 126.
  • the setting information storage unit 121 is a storage area for storing setting information previously acquired by the processor 11A.
  • the setting information includes, for example, the virtual position of each audience AU in the live venue where the performer PE is performing, that is, the positional relationship between the performer PE and the audience AU, the coordinate system of the screen of the display device AD and the coordinate system of the penlight 6 in each audience AU. , the distance between the two acceleration sensors 2A and 2B in each input device AI, and the like.
  • the received information storage unit 122 stores the acquired acceleration information when the processor 11A functions as the information acquisition unit 3 and acquires the acceleration information from the acceleration sensors 2A and 2B arranged in the penlights 6 of the spectators AU. This is a storage area for
  • the processor 11A functions as the movement analysis unit 4, and the rotation axis information storage unit 123 stores information about the rotation axis AX for each spectator AU. This is a storage area for storing the analysis result when analyzing whether it is inside or outside the light 6 .
  • the posture angle information storage unit 124 is a storage area for storing the analysis result when the processor 11A functions as the motion analysis unit 4 and analyzes the posture angle of the penlight 6 for each spectator AU.
  • the video storage unit 125 is a storage area for storing the generated video when the processor 11A functions as the video display unit 5 and generates video for video display of the images of the penlights 6 of the spectators AU. is.
  • a temporary storage unit 126 is used by the processor 11A to function as the information acquisition unit 3, the motion analysis unit 4, and the video display unit 5, and to temporarily store various data such as intermediate data generated during various processes. storage area.
  • each processing function unit of the motion acquisition device 1 can be realized by the processor 11A, which is a computer, and the motion acquisition program pre-stored in the program memory 11B.
  • the motion acquisition program pre-stored in the program memory 11B.
  • the motion capture program thus provided can be stored in the program memory 11B.
  • the provided motion acquisition program is stored in the data memory 12, which is a storage, and executed by the processor 11A as necessary, so that the processor 11A can function as each processing function unit.
  • the communication interface 13 is a wired or wireless communication unit for connecting with the network NW.
  • the distribution server SV can have an input/output interface that interfaces with the input device and the output device.
  • the input device includes, for example, a keyboard, a pointing device, and the like for the supervisor of the distribution server SV to input instructions to the processor 11A.
  • the input device may include a reader for reading data to be stored in the data memory 12 from a memory medium such as a USB memory, or a disk device for reading such data from a disk medium.
  • the output device includes a display for displaying output data to be presented to the user from the processor 11A, a printer for printing the data, and the like.
  • FIG. 5 is a schematic diagram showing the movement of the penlight 6 when the penlight 6 is swung from an attitude angle of 0 degrees to an attitude angle of 45 degrees about the rotation axis AX on the outside of the penlight 6.
  • FIG. FIG. 6 is a schematic diagram showing the movement of the penlight 6 when the penlight 6 is swung from the attitude angle of 0 degrees to the attitude angle of 45 degrees about the rotation axis AX inside the penlight 6 .
  • 5 shows a case where the penlight 6 is swung with the elbow as the rotation axis AX, for example, and FIG.
  • the penlight 6 shows a case where the penlight 6 is swung with the wrist as the rotation axis AX, for example.
  • the size of the trajectory of the movement of the penlight 6 differs due to the difference in the position of the rotation axis AX. Therefore, the image of the penlight displayed on the display device PD and/or AD by the image display unit 5 reproduces this difference in trajectory, and provides the performer PE and/or the audience AU with images with different visual impressions. Is required.
  • FIG. 7 is a flow chart showing a processing routine in the motion acquisition device 1 according to the first embodiment.
  • the processor 11A of the motion capturing device 1 can perform the processing shown in this flow chart by executing a motion capturing program pre-stored in the program memory 11B, for example.
  • the processor 11A executes the motion acquisition program in response to the reception of the delivery viewing start instruction from the audience AU by the communication interface 13 via the network NW.
  • the processing routine shown in this flowchart indicates processing corresponding to one input device AI, and the processor 11A can concurrently perform similar processing for each of a plurality of input devices AI.
  • the processor 11A operates as the information acquisition unit 3 and acquires acceleration information (step S11). That is, the processor 11A receives the acceleration information transmitted via the network NW from the two acceleration sensors 2A and 2B arranged in the penlight 6, which is the input device AI, through the communication interface 13, and stores the information in the data memory. 12 is stored in the received information storage unit 122 .
  • the processor 11A determines whether or not the spectator AU is waving the penlight 6 from the acceleration information stored in the received information storage unit 122 (step S12). For example, processor 11A can determine this by determining whether the sum of squares of acceleration in the x and y directions exceeds a threshold. If it is determined that the spectator AU has not waved the penlight 6, the processor 11A proceeds to the process of step S11.
  • the processor 11A determines whether the rotation axis AX is inside or outside the penlight 6 (step S13). For example, processor 11A can determine this according to the angle formed by the acceleration vector. The details of this determination method will be described later.
  • the processor 11A causes the rotation axis information storage section 123 of the data memory 12 to store the determination result.
  • the processor 11A uses the setting information stored in the setting information storage unit 121 and the acceleration information stored in the received information storage unit 122 to calculate the rotation plane, which is the swinging direction of the penlight 6 (step S14). The details of this calculation method will be described later.
  • the processor 11A causes the rotation axis information storage section 123 of the data memory 12 to store the calculation result.
  • the processor 11A determines whether the setting information stored in the setting information storage unit 121, the acceleration information stored in the reception information storage unit 122, and the rotation axis AX stored in the rotation axis information storage unit 123 are inside and outside the penlight 6.
  • the distance from the acceleration sensor 2A or 2B to the rotation axis AX is calculated using the result of determination as to which is which (step S15).
  • the method of calculating this distance differs depending on whether the rotation axis AX is inside or outside the penlight 6 . The details of this calculation method will be described later.
  • the processor 11A causes the rotation axis information storage section 123 of the data memory 12 to store the calculation result.
  • the processor 11A calculates the attitude angle of the penlight 6 using the setting information stored in the setting information storage unit 121 and the distance from the acceleration sensor 2A or 2B to the rotation axis AX stored in the rotation axis information storage unit 123. ⁇ is calculated (step S16). The details of this calculation method will be described later.
  • the processor 11A causes the attitude angle information storage unit 124 of the data memory 12 to store the calculation result.
  • the processor 11A causes the image of the penlight 6 to be displayed on the display device PD of the performer PE and/or the display device AD of each audience member AU (step S17). That is, the processor 11A is configured to display the penlight 6 based on the information about the rotation axis AX stored in the rotation axis information storage unit 123 and the posture angle ⁇ stored in the posture angle information storage unit 124. A video is generated and stored in the video storage unit 125 . At this time, the processor 11A generates an image reflecting the movements of the penlights 6 of the other spectators AU in addition to the penlights 6, which are objects for which the movement is acquired by the processing shown in this flow chart. Then, the processor 11A transmits the video stored in the video storage unit 125 to the display device PD and/or AD via the network NW using the communication interface 13 to display the video there.
  • the processor 11A determines whether or not to end the process (step S18). The processor 11A can make this determination based on whether or not the communication interface 13 has received an instruction to finish viewing distribution from the audience AU via the network NW. When determining not to end the process, the processor 11A proceeds to the process of step S11. On the other hand, if the processor 11A determines to end the processing, it ends the processing routine shown in this flowchart.
  • step S13 the processor 11A determines whether or not the rotation axis AX is between the two acceleration sensors 2A and 2B. judge.
  • FIG. 8 is a schematic diagram showing the relationship between the position of the rotation axis AX and the acceleration vectors of the acceleration sensors 2A and 2B provided in the penlight 6, which is the motion acquisition object.
  • FIG. 9 is a diagram showing each acceleration vector in the same coordinate system.
  • the rotation axis AX is inside the penlight 6 .
  • the acceleration vector aA detected by the acceleration sensor 2A and the acceleration vector aB detected by the acceleration sensor 2B are in opposite directions.
  • the rotation axis AX is outside the penlight 6 .
  • the acceleration vector aA detected by the acceleration sensor 2A and the acceleration vector aB detected by the acceleration sensor 2B are in the same direction.
  • the angle ⁇ between the acceleration vector aA and the acceleration vector aB is as follows.
  • the processor 11A determines whether the rotation axis AX is inside or outside the penlight 6 based on the value of ⁇ . in particular,
  • the processor 11A determines that the rotation axis AX is outside the penlight 6,
  • the processor 11A determines that the rotation axis AX is inside the penlight 6 .
  • step S14 the processor 11A calculates a rotation plane, which is the swing direction of the penlight 6 projected onto the XY plane, in the world coordinate system (XYZ). There are two calculation methods for the calculation.
  • FIG. 10 is a diagram showing the relationship between the world coordinate system (XYZ) and the coordinate system (xyz) of the penlight 6, which is the motion capture target.
  • the spectator AU swings the penlight 6 vertically or horizontally, so that the processor 11A transforms the screen coordinate system, which is the world coordinate system (XYZ), and the penlight coordinate system. is defined in advance.
  • the processor 11A obtains the angle T formed with the X-axis of the world coordinate system and sets it as one of the setting values. It is stored in the information storage unit 121 .
  • FIG. 11 is a diagram for explaining the swing direction when the coordinate system (xyz) of the penlight 6, which is the motion capture target, is fixed with respect to the world coordinate system (XYZ).
  • the coordinate system (xyz) of the penlight 6 which is the motion capture target
  • XYZ world coordinate system
  • the processor 11A compares the x-direction acceleration and the y-direction acceleration, and when the x-axis direction acceleration is small, calculates that the penlight 6 is swung vertically, that is, the y-axis direction is the swing direction. If the acceleration in the y-axis direction is small, the processor 11A calculates that the penlight 6 is swung sideways, that is, the swing direction is the x-axis direction.
  • the processor 11A calculates the distance from the acceleration sensor 2A or 2B to the rotation axis AX.
  • the calculation method differs depending on whether the rotation axis AX is inside or outside the penlight 6 .
  • FIG. 12 is a diagram for explaining variables used for estimating the rotation axis when the rotation axis AX is outside the penlight 6, which is the motion acquisition target.
  • r X Length to rotation axis AX (variable to be obtained) and That is, here, it is assumed that the processor 11A obtains the length rX from the acceleration sensor 2B of the two acceleration sensors 2A and 2B to the rotation axis AX.
  • the length r of the penlight 6 is stored in the setting information storage unit 121 as one of setting values.
  • D A Distance that the acceleration sensor 2A has moved after ⁇ t [sec]
  • D B Distance that the acceleration sensor 2B has moved after ⁇ t [sec]
  • VA Velocity of the acceleration sensor 2A at time t V B : Let the velocity of the acceleration sensor 2B at time t be.
  • linear acceleration is acceleration excluding gravitational acceleration, and can be obtained, for example, by applying a high-pass filter to acceleration data obtained by an acceleration sensor.
  • D A V A ⁇ t+( ⁇ A [t] ⁇ t 2 )/2
  • D B V B ⁇ t+( ⁇ B [t] ⁇ t 2 )/2 becomes.
  • both the velocities VA and VB can be assumed to be 0 when focusing on the switching timing of the penlight 6.
  • FIG. 13 is a diagram for explaining variables used for estimating the rotation axis when the rotation axis AX is inside the penlight 6 that is the motion acquisition target.
  • P A [t] Position of acceleration sensor 2A at time t
  • P B [t] Position of acceleration sensor 2B at time t
  • r X Length of penlight 6 (known)
  • the processor 11A will be described as determining the length rX from the acceleration sensor 2B of the two acceleration sensors 2A and 2B to the rotation axis AX.
  • D A Distance that the acceleration sensor 2A has moved after ⁇ t [sec]
  • D B Distance that the acceleration sensor 2B has moved after ⁇ t [sec]
  • ⁇ A [t] Linear acceleration of the acceleration sensor 2A observed at time t
  • ⁇ B [t] Linear acceleration of the acceleration sensor 2B observed at time t
  • VA Velocity of the acceleration sensor 2A at time t
  • V B Velocity of the acceleration sensor 2A at time t
  • D B V B ⁇ t+( ⁇ B [t] ⁇ t 2 )/2 becomes.
  • FIG. 14A and 14B are diagrams for explaining variables used for calculating the attitude angle when the rotation axis AX is outside the penlight 6, which is the motion acquisition target.
  • FIG. 6 is a diagram for explaining variables used for attitude angle calculation when the position is inside 6;
  • the posture angle ⁇ is defined as the angle formed by the XY plane of the world coordinate system (XYZ) and the longitudinal direction of the penlight 6. Also, here, the acceleration in the x-axis direction and the acceleration in the y-axis direction are compared, and the larger value is used. A case where the x-axis direction acceleration is large will be described below.
  • the sum of the gravitational acceleration and the acceleration due to movement is detected by each of the acceleration sensors 2A and 2B.
  • the x-axis direction of the acceleration acquired by the acceleration sensor 2A is a Ax
  • the z-axis direction is a Az
  • the x-axis direction of the acceleration acquired by the acceleration sensor 2B is a Bx
  • the z-axis direction is a Bz
  • the attitude angle of the penlight on the XZ plane (rotation around the Y axis, pitch PI) is ⁇ and
  • the distances from the rotation axis AX to the acceleration sensors 2A and 2B are (r+ rX ) and rX , respectively.
  • 11A is the attitude angle ⁇
  • the processor 11A sets the attitude angle ⁇ as
  • step S17 the processor 11A causes the image of the penlight 6 to be displayed on the display device PD of the performer PE and/or the display device AD of each audience member AU.
  • FIG. 16 is a diagram for explaining a method of reflecting the position of the rotation axis in the image display of the penlight 6 when the rotation axis AX is outside the penlight 6, which is the movement acquisition target
  • FIG. 4 is a diagram for explaining a method of reflecting the rotation axis position in the image display of the penlight 6 when the rotation axis AX is inside the penlight 6.
  • FIG. 16 and 17 show a penlight image 6D , which is an image of the penlight 6 drawn with respect to the position AXD of the rotation axis AX, which is not actually displayed in the image display.
  • the processor 11A fixes the position AXD of the rotation axis AX in the image display, and draws the penlight image 6D according to the distance rX to the rotation axis AX calculated in the z-axis direction of the penlight coordinate system. change position. As a result, the movement of the penlight image 6D can be distinguished and displayed depending on whether the spectator AU rotates the penlight 6 about the wrist or the elbow.
  • FIG. 18 is a diagram for explaining a method of reflecting the attitude angle in the image display of the penlight 6, which is the motion acquisition target.
  • the processor 11A draws the penlight image 6D based on the pitch angle (attitude angle ⁇ calculated in step S16) and yaw angle (swing direction ⁇ calculated in step S14) in the world coordinate system (XYZ). Thereby, the posture angle of the penlight 6 can be reproduced.
  • two acceleration sensors 2A and 2B are arranged on the penlight 6, which is a movement acquisition object rotated around the rotation axis AX, to acquire information.
  • the unit 3 acquires acceleration information detected by these two acceleration sensors 2A and 2B, and the motion analysis unit 4 rotates from one of the acceleration sensors 2A or 2B based on the acceleration information acquired by the information acquisition unit 3.
  • the distance to the axis AX and the attitude angle of the penlight 6 are estimated. Therefore, according to the first embodiment, only the two acceleration sensors 2A and 2B are used to estimate the rotation axis AX in addition to the attitude angle of the penlight 6. It is possible to obtain the light without detecting it from the outside of the light 6 .
  • the two acceleration sensors 2A and 2B are arranged on the penlight 6 so as to be spaced apart in the radial direction of rotation. Therefore, depending on the direction difference between the acceleration information from the acceleration sensor 2A and the acceleration information from the acceleration sensor 2B, it is determined whether the rotation axis AX is between the two acceleration sensors 2A and 2B. is inside or outside the penlight 6 can be determined.
  • the motion analysis unit 4 calculates the swinging direction of the penlight 6 in the world coordinate system, which is the reference coordinate system, based on the acceleration information, and based on the acceleration information and the distance between the two acceleration sensors 2A and 2B , the distance from one acceleration sensor to the rotation axis AX is calculated, and based on the distance between the two acceleration sensors 2A and 2B, the calculated swing direction of the penlight 6, and the calculated distance to the rotation axis AX , the attitude angle of the penlight 6 is calculated. Therefore, the distance to the rotation axis AX and the attitude angle of the penlight 6 can be calculated based on the acceleration information from the two acceleration sensors 2A and 2B.
  • the motion analysis unit 4 determines whether the rotation axis AX is between the two acceleration sensors 2A and 2B based on the acceleration information acquired by the information acquisition unit 3, and determines whether the rotation axis AX is between the two acceleration sensors 2A and 2B.
  • Calculation methods for calculating the distance to the rotation axis AX and calculating the attitude angle of the penlight 6 are different depending on whether it is between 2A and 2B. Therefore, by using a calculation method according to the position of the rotation axis AX, the distance to the rotation axis AX and the posture angle of the penlight 6 can be calculated with high accuracy.
  • the motion analysis unit 4 determines whether or not the rotation axis AX is between the two acceleration sensors 2A and 2B based on the acceleration information acquired by the information acquisition unit 3, and displays the image.
  • the unit 5 calculates the image of the penlight 6 based on the distance to the rotation axis AX, the attitude angle of the penlight 6, and the determination result as to whether the rotation axis AX is between the two acceleration sensors 2A and 2B. Images are displayed on the display devices PD and/or AD. Therefore, it is possible to provide an image display that reproduces the movement of the penlight 6 .
  • FIG. 19 is a block diagram showing an example of the configuration of the motion acquisition device 1 according to the second embodiment of the invention.
  • the input device AI includes a gyro sensor 7 that detects angular velocity.
  • FIG. 20 is a schematic diagram showing an example of a motion acquisition target as the input device AI.
  • the input device AI is provided in the form of a penlight 6 held by the audience AU.
  • the gyro sensor 7 is installed at the same position as one of the two acceleration sensors 2A and 2B.
  • the gyro sensor 7 is installed at the same position as the acceleration sensor 2A.
  • the gyro sensor 7 is installed so that its three axes (x-axis, y-axis, z-axis) are aligned with the three axes of the acceleration sensor 2A.
  • FIG. 21 is a flow chart showing a processing routine in the motion acquisition device 1 according to the second embodiment.
  • the processor 11A of the motion capturing device 1 can perform the processing shown in this flow chart by executing a motion capturing program pre-stored in the program memory 11B, for example.
  • the processor 11A executes the motion acquisition program in response to the reception of the delivery viewing start instruction from the audience AU by the communication interface 13 via the network NW.
  • the processing routine shown in this flowchart indicates processing corresponding to one input device AI, and the processor 11A can concurrently perform similar processing for each of a plurality of input devices AI.
  • the processor 11A operates as the information acquisition unit 3 and acquires acceleration information and angular velocity information (step S21). That is, the processor 11A receives the acceleration information from the two acceleration sensors 2A and 2B and the angular velocity information from the gyro sensor 7 respectively arranged in the penlight 6 which is the input device AI, which are transmitted via the network NW. , is received by the communication interface 13 and stored in the received information storage unit 122 of the data memory 12 .
  • the processor 11A determines whether or not the spectator AU is waving the penlight 6 from the acceleration information (step S12). If it is determined that the spectator AU has not waved the penlight 6, the processor 11A proceeds to the process of step S21.
  • the processor 11A determines whether or not the rotation axis AX is between the two acceleration sensors 2A and 2B as in the first embodiment. Also in the embodiment, it is determined whether the rotation axis AX is inside or outside the penlight 6 (step S13).
  • the processor 11A uses the setting information stored in the setting information storage unit 121 and the acceleration information stored in the reception information storage unit 122 to determine the swinging direction of the penlight 6. is calculated (step S14).
  • the processor 11A calculates the attitude angle ⁇ of the penlight 6 using the acceleration information and angular velocity information stored in the received information storage unit 122 (step S22). The details of this calculation method will be described later.
  • the processor 11A causes the attitude angle information storage unit 124 of the data memory 12 to store the calculation result.
  • the processor 11A determines whether the setting information stored in the setting information storage unit 121, the acceleration information stored in the reception information storage unit 122, and the rotation axis AX stored in the rotation axis information storage unit 123 are inside and outside the penlight 6.
  • the distance from the penlight 6 to the rotation axis AX is calculated using the determination result as to which is which (step S23).
  • the method of calculating this distance differs depending on whether the rotation axis AX is inside or outside the penlight 6 . The details of this calculation method will be described later.
  • the processor 11A causes the rotation axis information storage section 123 of the data memory 12 to store the calculation result.
  • the processor 11A causes the display device PD of the performer PE and/or the display device AD of each audience member AU to display the image of the penlight 6 (step S17).
  • the processor 11A determines whether or not to end the process, as in the first embodiment (step S18). If the processor 11A determines not to end the process, it proceeds to the process of step S11, and if it determines to end the process, it ends the processing routine shown in this flowchart.
  • the processor 11A calculates the posture angle ⁇ of the penlight 6.
  • the posture angle ⁇ is defined as the angle between the XY plane of the world coordinate system (XYZ) and the longitudinal direction of the penlight 6 .
  • the processor 11A calculates the pitch rotation angle p as follows:
  • the calculated pitch rotation angle p corresponds to the posture angle ⁇ on the XZ plane.
  • This method of calculating the attitude angle ⁇ based on the acceleration information can calculate the attitude angle ⁇ with higher accuracy when the motion acquisition target moves at a low frequency than when the object moves at a high frequency. .
  • the processor 11A sets roll/pitch/yaw rotation angles as ( ⁇ r , ⁇ p , ⁇ y ),
  • the calculated pitch rotation angle ⁇ p corresponds to the posture angle ⁇ on the XZ plane.
  • This method of calculating the posture angle ⁇ based on the angular velocity information can calculate the posture angle ⁇ with higher accuracy when the motion acquisition target moves at high frequencies compared to when the motion acquisition target moves at low frequencies. .
  • a complementary filter that calculates a weighted sum of an angle calculated by applying a low-pass filter to acceleration information and an angle calculated by applying a high-pass filter to angular velocity information is used.
  • the processor 11A can accurately calculate the posture angle ⁇ both when the robot is stationary and when it is in motion by using the acceleration information and the angular velocity information.
  • this embodiment is not limited to complementary filters, and other filters such as Kalman filters and gradient filters may be used.
  • step S23 the processor 11A calculates the distance from the lower end of the penlight 6, which is the motion acquisition object, to the rotation axis AX, where the acceleration sensor 2B is arranged in this embodiment. Also in the second embodiment, the calculation method differs depending on whether the rotation axis AX is between the two acceleration sensors 2A and 2B, that is, whether the rotation axis AX is inside or outside the penlight 6. FIG.
  • FIG. 22 is a diagram for explaining variables used for estimating the rotation axis when the rotation axis AX is outside the penlight 6, which is the motion capture target.
  • the acceleration in the x-axis direction and the y-axis direction are compared and the larger value is used.
  • a case where the x-axis direction acceleration is large will be described below.
  • the longitudinal axis of the penlight 6 in motion be the xz coordinate system, which is an instantaneous stationary coordinate system. Accelerations a x and a z in the x-axis direction and z-axis direction from the acceleration sensor 2A or 2B can be obtained by adding the values transformed into the coordinate system.
  • the length rX from the acceleration sensor 2B arranged at the lower end of the penlight 6 to the rotation axis AX can be calculated.
  • FIG. 23 is a diagram for explaining variables used for estimating the rotation axis when the rotation axis AX is inside the penlight 6 that is the motion acquisition target.
  • the acceleration in the x-axis direction and the y-axis direction are compared and the larger value is used.
  • a case where the x-axis direction acceleration is large will be described below.
  • the longitudinal axis of the penlight 6 in motion be the xz coordinate system, which is an instantaneous stationary coordinate system. Accelerations a x and a z in the x-axis direction and z-axis direction from the acceleration sensor 2A or 2B can be obtained by adding the values transformed into the coordinate system.
  • the accelerations a Ax and a Az obtained by the acceleration sensor 2A and the accelerations a Bx and a Bz obtained by the acceleration sensor 2B are calculated by taking into consideration the gravitational acceleration g as Considering
  • the length rX from the acceleration sensor 2B arranged at the lower end of the penlight 6 to the rotation axis AX can be calculated.
  • two acceleration sensors 2A and 2B and one angular velocity sensor are applied to the penlight 6, which is a movement acquisition object that is rotated about the rotation axis AX.
  • a certain gyro sensor 7 is arranged, the information acquisition unit 3 acquires the acceleration information detected by these two acceleration sensors 2A and 2B and the angular velocity information detected by one gyro sensor 7, and the motion analysis unit 4
  • the distance from the penlight 6 to the rotation axis AX and the attitude angle of the penlight 6 are estimated based on the acceleration information and the angular velocity information acquired by the information acquisition unit 3 .
  • the two acceleration sensors 2A and 2B and one gyro sensor 7 are used to estimate the rotation axis AX in addition to the attitude angle of the penlight 6. can be acquired without detecting the difference in movement from the outside of the penlight 6.
  • the two acceleration sensors 2A and 2B are spaced apart in the radial direction of rotation and arranged in the penlight 6, and one gyro sensor 7 is located at the same position as one of the two acceleration sensors 2A and 2B. placed. Therefore, depending on the direction difference between the acceleration information from the acceleration sensor 2A and the acceleration information from the acceleration sensor 2B, it is determined whether the rotation axis AX is between the two acceleration sensors 2A and 2B. is inside or outside the penlight 6 can be determined.
  • the motion analysis unit 4 calculates the swing direction of the penlight 6 in the world coordinate system, which is the reference coordinate system, based on the acceleration information, and calculates the attitude angle of the penlight 6 based on the acceleration information and the angular velocity information. Then, the distance from the penlight 6 to the rotation axis AX is calculated based on the calculated swinging direction of the penlight 6, the acceleration information, and the distance between the two acceleration sensors 2A and 2B. Therefore, based on the acceleration information from the two acceleration sensors 2A and 2B and the angular velocity information from one gyro sensor 7, the distance to the rotation axis AX and the attitude angle of the penlight 6 can be calculated.
  • the motion analysis unit 4 determines whether the rotation axis AX is between the two acceleration sensors 2A and 2B based on the acceleration information acquired by the information acquisition unit 3, and determines whether the rotation axis AX is between the two acceleration sensors 2A and 2B.
  • the calculation method for calculating the distance to the rotation axis AX differs depending on whether the distance is between 2A and 2B. Therefore, by using a calculation method according to the position of the rotation axis AX, the distance to the rotation axis AX can be calculated with high accuracy.
  • the motion analysis unit 4 determines that the rotation axis AX is between the two acceleration sensors 2A and 2B based on the acceleration information acquired by the information acquisition unit 3. Based on the distance to the rotation axis AX, the posture angle of the penlight 6, and the determination result as to whether the rotation axis AX is between the two acceleration sensors 2A and 2B to display the image of the penlight 6 on the display device PD and/or AD. Therefore, it is possible to provide an image display that reproduces the movement of the penlight 6 .
  • FIG. 24 is a block diagram showing an example of the configuration of the motion acquisition device 1 according to the third embodiment of the invention.
  • the input device AI includes a geomagnetic sensor 8 that is a direction sensor.
  • FIG. 25 is a schematic diagram showing an example of a motion acquisition target as the input device AI.
  • the input device AI is provided in the form of a penlight 6 held by the audience AU.
  • one geomagnetic sensor 8 is installed at the end of the penlight 6 in such a direction that the xy plane of the geomagnetic sensor 8 lies on a plane perpendicular to the longitudinal direction of the penlight 6 .
  • a geomagnetic sensor 8 acquires the strength of the geomagnetism. Assuming that the center of the circle of the output distribution map when the geomagnetic sensor 8 is rotated horizontally is (P x , P y ) and the strength of the geomagnetism acquired by the geomagnetic sensor 8 is (X, Y), the angle from magnetic north is: It is required as follows.
  • the processor 11A selects the measurement timing by one of the following methods. ⁇ When the pitch angle (attitude angle ⁇ ) is 90 degrees (after calculating the attitude angle) ⁇ Intermediate time between the two switching timings of swinging the penlight 6 ⁇ Timing of maximum speed (calculated from acceleration) The processor 11A operating as the motion analysis unit 4 can know the orientation of the penlight 6 based on the strength of the geomagnetism acquired by the geomagnetic sensor 8. FIG.
  • the processor 11A can calculate the angle formed by the front of the screen and the front of the penlight 6 (angle T in FIG. 10) can be determined. That is, it becomes possible to define the transformation between the world coordinate system (XYZ) of the screen and the coordinate system (xyz) of the penlight 6 .
  • FIG. 26 is a block diagram showing another example of the configuration of the motion acquisition device 1 according to the third embodiment of the invention.
  • the geomagnetic sensor 8 can be applied not only to the first embodiment, but also to the motion acquisition device 1 according to the second embodiment.
  • xy detection is performed in the direction orthogonal to the longitudinal direction of the penlight 6, which is the radial direction of rotation.
  • a geomagnetic sensor 8, which is a direction sensor, is arranged at the end of the penlight 6 in the longitudinal direction so that a plane exists. Therefore, according to the third embodiment, the load on the audience AU can be reduced by using the output of the geomagnetic sensor 8, which is the direction sensor.
  • a swing movement centered on the wrist and elbow was described as an example, but it is possible to detect not only a swing movement but also a movement such as raising the arm and making a circular motion above the head centering on the shoulder. Needless to say.
  • the motion capture target is not limited to the shape of the penlight 6, and may be of any shape as long as the spectator AU can hold it.
  • the motion capture target can take a form other than the one held by the audience AU.
  • the motion acquisition target can be in the form of being worn on the body such as the arm of the audience AU.
  • the movement acquisition target is rotated or rotated with the elbow or shoulder serving as the rotation axis or the rotation axis, it is similar to the case where the rotation axis AX is outside the penlight 6 described in the above embodiment. can be handled.
  • live distribution between the performer PE and the audience AU was explained as an example. is of course.
  • the method described in each embodiment can be executed by a computer (computer) as a processing program (software means), such as a magnetic disk (floppy (registered trademark) disk, hard disk, etc.), an optical disk (CD-ROM, DVD, MO, etc.), semiconductor memory (ROM, RAM, flash memory, etc.), or the like, or may be transmitted and distributed via a communication medium.
  • the programs stored on the medium also include a setting program for configuring software means (including not only execution programs but also tables and data structures) to be executed by the computer.
  • a computer that realizes this apparatus reads a program recorded on a recording medium, and optionally constructs software means by a setting program. The operation is controlled by this software means to execute the above-described processes.
  • the term "recording medium” as used herein is not limited to those for distribution, and includes storage media such as magnetic disks, semiconductor memories, etc. provided in computers or devices connected via a network.
  • the present invention is not limited to the above-described embodiments as they are, and can be embodied by modifying the constituent elements without departing from the gist of the invention at the implementation stage.
  • various inventions can be formed by appropriate combinations of the plurality of constituent elements disclosed in the above embodiments. For example, some components may be deleted from all the components shown in the embodiments. Furthermore, constituent elements of different embodiments may be combined as appropriate.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

動き取得対象物の外部から検出することなく動き取得対象物の動きの違いを取得できるようにする。動き取得装置は、二つの加速度センサと、一つの角速度センサと、情報取得部と、運動解析部と、を備える。二つの加速度センサ及び一つの角速度センサは、回動軸を中心に回動される動き取得対象物に配置される。情報取得部は、二つの加速度センサが検出した加速度情報及び一つの角速度センサが検出した角速度情報を取得する。運動解析部は、情報取得部が取得した加速度情報及び角速度情報に基づいて、動き取得対象物から回動軸までの距離と、動き取得対象物の姿勢角と、を推定する。

Description

動き取得装置、動き取得方法及び動き取得プログラム
 この発明の一態様は、動き取得装置、動き取得方法及び動き取得プログラムに関する。
 遠隔でのオンラインイベント等では、現地でのイベントと比較して、演者と観客の間の反応、或いは、観客と観客の間の反応の共有が困難である。
 既存の動画ストリーミングサービスでは、テキストチャットによる反応の共有が可能である。しかしながら、演者が演奏中に文字を読むことや、観客が文字を打ち、読むことは、コンテンツそのものへの集中を阻害してしまうという問題がある。
 このような問題に対して、非言語な身体動作によって観客の反応を共有する方法が考えられる。例えば、暗いコンサート会場で観客の動きを最も反映する要素として、ペンライトの動きがある。このようなペンライト等の動き取得対象物の動きを、取得して再現することができれば、演者-観客間、観客-観客間の反応共有が期待できる。
 例えば、非特許文献1では、観客に動き取得対象物であるVR(Virtual Reality:仮想現実感)コントローラを持たせ、このVRコントローラの動きに基づいて観客の動きを推定し、VR空間上に再現する手法を提案している。この方法では、VRコントローラの絶対位置と姿勢角情報を、環境中に設置した赤外線送受信機によってセンシングしている。従って、送受信機の機器が必要で、当該機器の設置及びキャリブレーションにもコストがかかる点、設置場所の確保が必要な点、利用範囲がセンシング可能範囲内に限られる点、等が問題になる。
 そこで、環境中の外部センサを必要とせずに、観客が把持する動き取得対象物が備えるセンサだけで、観客の動きを取得するシンプルな実装方法として、動き取得対象物に1つの6軸センサ(加速度+角速度)を設置し、動き取得対象物の姿勢角を推定する方法が考えられる。しかしながら、推定した姿勢角をVR空間でそのまま再現するだけでは、観客が、動き取得対象物を、手首を軸にして振った場合と、肘を軸として振った場合といった、動きの違いを取得することができず、正確に動き取得対象物の動きを提示することができない。
 姿勢角に加え、加速度センサで取得される加速度を積分することで動き取得対象物の絶対位置を計算し、上記を補うことも原理的には可能であるが、加速度センサのみでは、ノイズによって絶対位置を十分な精度で取得することができない。
山下ら,"仮想現実感を用いた遠隔音楽ライブシステムKSA2",情報処理学会研究報告2018
 この発明は、上記事情に着目してなされたもので、その目的とするところは、動き取得対象物の外部から検出することなく、動き取得対象物の動きの違いの取得が可能な動き取得装置、動き取得方法及び動き取得プログラムを提供することにある。
 上記課題を解決するために、この発明の一態様に係る動き取得装置は、二つの加速度センサと、一つの角速度センサと、情報取得部と、運動解析部と、を備える。二つの加速度センサ及び一つの角速度センサは、回動軸を中心に回動される、動き取得対象物に配置される。情報取得部は、二つの加速度センサが検出した加速度情報及び一つの角速度センサが検出した角速度情報を取得する。運動解析部は、情報取得部が取得した加速度情報及び角速度情報に基づいて、動き取得対象物から回動軸までの距離と、動き取得対象物の姿勢角と、を推定する。
 この発明の一態様によれば、動き取得対象物に配置された二つの加速度センサと一つの角速度センサだけで、動き取得対象物の姿勢角に加えて回動軸を推定するので、動き取得対象物の外部から検出することなく、動き取得対象物の動きの違いの取得が可能となる動き取得装置、動き取得方法及び動き取得プログラムを提供することができる。
図1は、この発明の第1実施形態に係る動き取得装置が適用される配信システムの概要の一例を示すブロック図である。 図2は、第1実施形態に係る動き取得装置の構成の一例を示すブロック図である。 図3は、図2中の入力装置としての動き取得対象物の一例を示す模式図である。 図4は、図2中の配信サーバの構成の一例を示すブロック図である。 図5は、ペンライト外の回動軸を中心にしてペンライトを姿勢角0度から姿勢角45度へ振った場合のペンライトの動きを示す模式図である。 図6は、ペンライト内の回動軸を中心にしてペンライトを姿勢角0度から姿勢角45度へ振った場合のペンライトの動きを示す模式図である。 図7は、動き取得装置における処理ルーチンを示すフローチャートである。 図8は、回動軸の位置と動き取得対象物が備える各加速度センサの加速度ベクトルとの関係を示す模式図である。 図9は、各加速度ベクトルを同一座標系で示す図である。 図10は、ワールド座標系と動き取得対象物の座標系との関係を示す図である。 図11は、ワールド座標系に対して動き取得対象物の座標系を固定した場合の振り方向を説明するための図である。 図12は、回動軸が動き取得対象物外にある場合の回動軸推定に用いる変数を説明するための図である。 図13は、回動軸が動き取得対象物内にある場合の回動軸推定に用いる変数を説明するための図である。 図14は、回動軸が動き取得対象物外にある場合の姿勢角算出に用いる変数を説明するための図である。 図15は、回動軸が動き取得対象物内にある場合の姿勢角算出に用いる変数を説明するための図である。 図16は、回動軸が動き取得対象物外にある場合の動き取得対象物の映像表示における回動軸位置の反映方法を説明するための図である。 図17は、回動軸が動き取得対象物内にある場合の動き取得対象物の映像表示における回動軸位置の反映方法を説明するための図である。 図18は、動き取得対象物の映像表示における姿勢角の反映方法を説明するための図である。 図19は、この発明の第2実施形態に係る動き取得装置の構成の一例を示すブロック図である。 図20は、図17中の入力装置としての動き取得対象物の一例を示す模式図である。 図21は、第2実施形態に係る動き取得装置における処理ルーチンを示すフローチャートである。 図22は、回動軸が動き取得対象物外にある場合の回動軸推定に用いる変数を説明するための図である。 図23は、回動軸が動き取得対象物内にある場合の回動軸推定に用いる変数を説明するための図である。 図24は、この発明の第3実施形態に係る動き取得装置の構成の一例を示すブロック図である。 図25は、動き取得対象物における地磁気センサの配置位置の一例を示す模式図である。 図26は、第3実施形態に係る動き取得装置の構成の別の一例を示すブロック図である。
 以下、図面を参照してこの発明に係わる実施形態を説明する。 
 [第1実施形態]
 図1は、この発明の第1実施形態に係る動き取得装置が適用される配信システムの概要の一例を示すブロック図である。配信システムは、配信サーバSVが、演者PEの映像を、複数の観客AU1,AU2,AU3,…,AUnにインターネット等のネットワークNWを介して配信するシステムである。演者PEが演じているライブ会場には、撮影装置PCと表示装置PDとが配置される。ここで、撮影装置PCは、複数台のカメラを含むことができる。また、観客AU1,AU2,AU3,…,AUnは、表示装置AD1,AD2,AD3,…,ADnと、入力装置AI1,AI2,AI3,…,AInと、を備える。以下、観客AU1,AU2,AU3,…,AUn、表示装置AD1,AD2,AD3,…,ADn、及び入力装置AI1,AI2,AI3,…,AInを、特に区別すること無く、観客AU、表示装置AD、及び入力装置AIとして、説明を行う。
 演者PEのライブ映像は、撮影装置PCによって撮影されて、ネットワークNWを介して配信サーバSVに送信される。配信サーバSVは、撮影装置PCで撮影したライブ映像を、ネットワークNWを介して各観客AUの表示装置ADに配信し、表示装置ADに表示させる。ここで、配信サーバSVは、撮影装置PCで撮影したライブ映像に基づいて、VR映像を作成して配信するものとしても良い。この場合、観客AUの表示装置ADは、観客AUが頭部に装着するHMD(Head Mounted Display)であることができる。
 また、観客AUの入力装置AIは、入力信号をネットワークNWを介して配信サーバSVに送信する。配信サーバSVは、入力信号に基づいて入力装置AIの動きを解析する。そして、配信サーバSVは、解析した動きに基づいて、入力装置AIの動きを再現した映像を、演者PEの表示装置PDに送信する。例えば、表示装置PDは、演者PEを取り囲む複数台の大型ディスプレイであっても良いし、AR(Augmented Reality:拡張現実感)グラスであっても良い。また、配信サーバSVは、VR映像を見ている観客AUに対しては、そのVR映像に他の観客AUの入力装置AIの映像を含ませることもできる。
 図2は、第1実施形態に係る動き取得装置1の構成の一例を示すブロック図である。動き取得装置1は、図2に示されるように、各観客AUの入力装置AIと、配信サーバSVと、演者PEの表示装置PD及び/又は各観客AUの表示装置ADと、を含む。ここで、入力装置AIは、動き取得対象物であり、二つの加速度センサ2A,2Bを含む。また、配信サーバSVは、情報取得部3、運動解析部4及び映像表示部5を含む。
 図3は、入力装置AIとしての動き取得対象物の一例を示す模式図である。図3に示されるように、本実施形態では、入力装置AIは、観客AUが把持するペンライト6の形態で提供される。このペンライト6を構成する細長い円柱形状の剛体に、二つの加速度センサ2A,2Bが離間して配置される。配置形態は、ペンライト6表面に貼り付けられるものであっても構わないが、観客AUによって振られる、つまり或る回動軸AXを中心に回動されることを考慮すると、ペンライト6の内部に収容されることが望ましい。また、離間の方向は、回動の径方向つまり円柱形状のペンライト6の長手方向である。さらに、離間の間隔は、距離を離せば離すほど動きの解析精度が良くなるため、できるだけ広くすることが望ましい。本実施形態では、二つの加速度センサ2A,2Bは、円柱形状ペンライト6の長手軸上の両端に配置される。なお、二つの加速度センサ2A,2Bは、その検出の3軸(x軸,y軸,z軸)方向が揃う向きであって、z軸方向が円柱形状ペンライト6の長手方向となるように、ペンライト6に配置される。
 情報取得部3は、ネットワークNWを介して各ペンライト6の二つの加速度センサ2A,2Bが検出した加速度情報を取得する機能を有する。
 運動解析部4は、情報取得部3が取得した加速度情報に基づいて、回動軸AXが二つの加速度センサ2Aと2Bの間であるか否か、つまり回動軸AXがペンライト6の内外何れであるのかと、加速度センサから回動軸AXまでの距離と、各ペンライト6の姿勢角と、を推定する機能を有している。なお、回動軸AXまでの距離の推定対象となる加速度センサは、各ペンライト6の二つの加速度センサ2A,2Bの内の任意の一方であって良い。図3に一点鎖線の矢印と二点鎖線の矢印によって示されるように、回動軸AXがペンライト6の内外何れであるのかによって、二つの加速度センサ2A,2Bからの加速度ベクトルの方向が異なる。すなわち、回動軸AXがペンライト6の内側に存在する場合は、二つの加速度センサ2A,2Bには、一点鎖線の矢印によって示されるように、逆方向に加速度がかかる。これに対して、回動軸AXがペンライト6の外側に存在する場合は、二つの加速度センサ2A,2Bには、二点鎖線の矢印によって示されるように、同じ方向に加速度がかかる。よって、運動解析部4は、加速度情報に基づいて、回動軸AXの位置を推定することができる。運動解析部4における回動軸AX及び姿勢角の推定方法の詳細については後述する。
 映像表示部5は、運動解析部4が解析した回動軸AXまでの距離、各ペンライト6の姿勢角、及び回動軸AXがペンライト6の内外何れであるのか、に基づいて、各ペンライト6の像を映像表示するための映像を生成する機能を有している。さらに、映像表示部5は、ネットワークNWを介して、その生成した映像を演者PEの表示装置PD及び/又は各観客AUの表示装置ADに送信して、そこに表示させる機能を有している。
 図4は、配信サーバSVの構成の一例を示すブロック図である。
図に示されるように、配信サーバSVは、例えばPC(Personal Computer)等からなり、例えば、CPU(Central Processing Unit)等のプロセッサ11Aを有する。プロセッサ11Aは、マルチコア/マルチスレッドのものであって良く、複数の処理を並行して実行することができる。そして、動き取得装置は、このプロセッサ11Aに対し、プログラムメモリ11B、データメモリ12、及び通信インタフェース13を、バス14を介して接続したものとなっている。
 プログラムメモリ11Bは、記憶媒体として、例えば、HDD(Hard Disk Drive)やSSD(Solid State Drive)等の随時書込み及び読出しが可能な不揮発性メモリと、ROM(Read Only Memory)等の不揮発性メモリとを組み合わせて使用したものである。プログラムメモリ11Bは、プロセッサ11Aが各種処理を実行するために必要なプログラムを格納する。プログラムは、OS(Operating System)に加えて、第1実施形態に係る動き取得プログラムを含む。プロセッサ11Aがこの動き取得プログラムを実行することで、ソフトウェアによる処理機能部として、上記情報取得部3、運動解析部4及び映像表示部5を実現することができる。なお、これらの処理機能部は、ASIC(Application Specific Integrated Circuit)やFPGA(field-programmable gate array)などの集積回路を含む、他の多様な形式で実現されても良い。
 データメモリ12は、記憶媒体として、例えば、HDDまたはSSD等の随時書込み及び読出しが可能な不揮発性メモリと、RAM(Random Access Memory)等の揮発性メモリとを組み合わせて使用したストレージである。データメモリ12は、各種処理を行う過程で取得及び作成されたデータを記憶するために用いられる。データメモリ12の記憶領域は、例えば、設定情報記憶部121、受信情報記憶部122、回動軸情報記憶部123、姿勢角情報記憶部124、映像記憶部125及び一時記憶部126を備える。
 設定情報記憶部121は、プロセッサ11Aが予め取得した設定情報を記憶するための記憶領域である。設定情報は、例えば、演者PEが演じているライブ会場における各観客AUの仮想位置つまり演者PEと観客AUの位置関係、各観客AUにおける表示装置ADのスクリーンの座標系とペンライト6の座標系との関係、各入力装置AIにおける二つの加速度センサ2A,2B間の距離、等を含む。
 受信情報記憶部122は、プロセッサ11Aが情報取得部3として機能して、各観客AUのペンライト6に配置された加速度センサ2A,2Bから加速度情報を取得した際、その取得した加速度情報を記憶するための記憶領域である。
 回動軸情報記憶部123は、プロセッサ11Aが運動解析部4として機能して、各観客AUについて、回動軸AXについての情報、つまり、回動軸AXまでの距離及び回動軸AXがペンライト6の内外何れであるのかを解析した際に、その解析結果を記憶するための記憶領域である。
 姿勢角情報記憶部124は、プロセッサ11Aが運動解析部4として機能して、各観客AUについてペンライト6の姿勢角を解析した際、その解析結果を記憶するための記憶領域である。
 映像記憶部125は、プロセッサ11Aが映像表示部5として機能して、各観客AUのペンライト6の像を映像表示するための映像を生成した際、その生成した映像を記憶するための記憶領域である。
 一時記憶部126は、プロセッサ11Aが上記情報取得部3、運動解析部4及び映像表示部5として機能して、各種の処理を行う途中で生成する途中データ等の各種データを一時記憶するための記憶領域である。
 なお、前述したように、動き取得装置1の各処理機能部は、コンピュータであるプロセッサ11Aと、プログラムメモリ11Bに予め記憶された動き取得プログラムと、によって実現されることができる。しかしながら、この動き取得プログラムを、非一時的なコンピュータ可読媒体に記録して、或いは、ネットワークNWを通して、動き取得装置1に提供することも可能である。こうして提供された動き取得プログラムは、プログラムメモリ11Bに格納されることができる。また、提供された動き取得プログラムは、ストレージであるデータメモリ12に格納されて、必要に応じてプロセッサ11Aで実行されることで、プロセッサ11Aが各処理機能部として機能することも可能である。
 通信インタフェース13は、ネットワークNWと接続するための有線または無線通信部である。
 なお、特に図示はしていないが、配信サーバSVは、入力装置及び出力装置とのインタフェースである入出力インタフェースを備えることができる。入力装置は、例えば、配信サーバSVの監理者がプロセッサ11Aに対して指示を入力するためのキーボードやポインティングデバイス等を含む。さらに、入力装置は、データメモリ12に格納するべきデータを、USBメモリ等のメモリ媒体から読み出すためのリーダや、そのようなデータをディスク媒体から読み出すためのディスク装置を含み得る。また、出力装置は、プロセッサ11Aからのユーザに提示するべき出力データを表示するディスプレイや、それを印刷するプリンタ等を含む。
 次に、以上のように構成された動き取得装置1の処理動作を説明する。 
 図5は、ペンライト6の外側の回動軸AXを中心にしてペンライト6を姿勢角0度から姿勢角45度へ振った場合のペンライト6の動きを示す模式図である。また、図6は、ペンライト6の内側の回動軸AXを中心にしてペンライト6を姿勢角0度から姿勢角45度へ振った場合のペンライトの動きを示す模式図である。図5は、例えば肘を回動軸AXとしてペンライト6を振った場合であり、図6は、例えば手首を回動軸AXとしてペンライト6を振った場合である。図5及び図6に破線の矢印で示されるように、姿勢角は同じであっても、回動軸AXの位置の違いによって、ペンライト6の動きの軌跡の大きさが異なる。よって、映像表示部5が表示装置PD及び/又はADに表示させるペンライトの映像は、この軌跡の違いを再現し、演者PE及び/又は観客AUに、見た目の印象が異なる映像を提供することが必要となる。
 図7は、第1実施形態に係る動き取得装置1における処理ルーチンを示すフローチャートである。動き取得装置1のプロセッサ11Aは、例えばプログラムメモリ11Bに予め記憶された動き取得プログラムを実行することで、このフローチャートに示す処理を行うことができる。プロセッサ11Aは、通信インタフェース13によりネットワークNWを経由して観客AUからの配信閲覧開始指示の受信に応答して、動き取得プログラムを実行する。なお、このフローチャートに示す処理ルーチンは、一つの入力装置AIに対応する処理を示しており、プロセッサ11Aは、複数の入力装置AIのそれぞれについて、同様の処理を併行して実施することができる。
 プロセッサ11Aは、情報取得部3として動作して、加速度情報を取得する(ステップS11)。すなわち、プロセッサ11Aは、入力装置AIであるペンライト6に配置された二つの加速度センサ2A,2BからネットワークNWを経由して送信されてくる加速度情報を、通信インタフェース13により受信して、データメモリ12の受信情報記憶部122に記憶させる。
 プロセッサ11Aは、この受信情報記憶部122に記憶された加速度情報から、観客AUがペンライト6を振っているか否か判定する(ステップS12)。例えば、プロセッサ11Aは、x,y方向の加速度の二乗和が閾値を超えるか否か判断することにより、これを判定することができる。観客AUがペンライト6を振っていないと判定した場合、プロセッサ11Aは、上記ステップS11の処理に移行する。
 観客AUがペンライト6を振っていると判定した場合、プロセッサ11Aは、回動軸AXがペンライト6の内外のどちらであるかを判定する(ステップS13)。例えば、プロセッサ11Aは、加速度ベクトルのなす角に応じて、これを判定することができる。この判定手法の詳細については後述する。プロセッサ11Aは、判定結果をデータメモリ12の回動軸情報記憶部123に記憶させる。
 プロセッサ11Aは、設定情報記憶部121に記憶された設定情報と受信情報記憶部122に記憶された加速度情報を用いて、ペンライト6の振り方向である回動面を算出する(ステップS14)。この算出手法の詳細については、後述する。プロセッサ11Aは、算出結果をデータメモリ12の回動軸情報記憶部123に記憶させる。
 プロセッサ11Aは、設定情報記憶部121に記憶された設定情報、受信情報記憶部122に記憶された加速度情報、及び回動軸情報記憶部123に記憶された回動軸AXがペンライト6の内外何れであるのかの判定結果を用いて、加速度センサ2A又は2Bから回動軸AXまでの距離を算出する(ステップS15)。回動軸AXがペンライト6の内外何れであるのかによって、この距離の算出手法が異なる。この算出手法の詳細については後述する。プロセッサ11Aは、算出結果をデータメモリ12の回動軸情報記憶部123に記憶させる。
 プロセッサ11Aは、設定情報記憶部121に記憶された設定情報と回動軸情報記憶部123に記憶された加速度センサ2A又は2Bから回動軸AXまでの距離を用いて、ペンライト6の姿勢角αを算出する(ステップS16)。この算出手法の詳細については後述する。プロセッサ11Aは、算出結果をデータメモリ12の姿勢角情報記憶部124に記憶させる。
 プロセッサ11Aは、ペンライト6の映像を演者PEの表示装置PD及び/又は各観客AUの表示装置ADに表示させる(ステップS17)。すなわち、プロセッサ11Aは、回動軸情報記憶部123に記憶された回動軸AXについての情報と姿勢角情報記憶部124に記憶された姿勢角αに基づいて、ペンライト6を表示するための映像を生成し、映像記憶部125に記憶させる。このとき、プロセッサ11Aは、このフローチャートに示す処理による動きの取得対象物であるペンライト6に加えて、他の観客AUのペンライト6の動きも反映させた映像を生成する。そして、プロセッサ11Aは、映像記憶部125に記憶された映像を、通信インタフェース13によりネットワークNWを経由して表示装置PD及び/又はADに送信することで、そこに表示させる。
 プロセッサ11Aは、処理を終了するか否か判断する(ステップS18)。プロセッサ11Aは、通信インタフェース13によりネットワークNWを経由して観客AUからの配信閲覧終了指示を受信したか否かにより、この判断を行うことができる。処理を終了しないと判断した場合、プロセッサ11Aは、上記ステップS11の処理に移行する。これに対して、処理を終了すると判断した場合、プロセッサ11Aは、このフローチャートに示す処理ルーチンを終了する。
 以降に各ステップの処理の詳細を説明する。 
 <回動軸内外判定>
 ステップS13において、プロセッサ11Aは、回動軸AXが二つの加速度センサ2Aと2Bの間であるか否か、本実施形態では、回動軸AXがペンライト6の内外のどちらであるか、を判定する。図8は、回動軸AXの位置と動き取得対象物であるペンライト6が備える加速度センサ2A,2Bの加速度ベクトルとの関係を示す模式図である。図9は、各加速度ベクトルを同一座標系で示す図である。
 観客AUが例えば手首を軸にしてペンライト6を振ると、回動軸AXはペンライト6の内側となる。この場合、加速度センサ2Aが検出する加速度ベクトルaと、加速度センサ2Bが検出する加速度ベクトルaとは、逆方向となる。また、観客AUが例えば肘を軸にしてペンライト6を振ると、回動軸AXはペンライト6の外側となる。この場合、加速度センサ2Aが検出する加速度ベクトルaと、加速度センサ2Bが検出する加速度ベクトルaとは、同方向となる。
 加速度ベクトルaと加速度ベクトルをaのなす角θは、以下のようになる。
Figure JPOXMLDOC01-appb-M000001
 プロセッサ11Aは、このθの値により、回動軸AXがペンライト6の内外のどちらであるかを判定する。具体的には、
Figure JPOXMLDOC01-appb-M000002
のとき、プロセッサ11Aは、回動軸AXはペンライト6の外側にあると判断し、
Figure JPOXMLDOC01-appb-M000003
のとき、プロセッサ11Aは、回動軸AXはペンライト6の内側にあると判断する。
 <回動面算出>
 ステップS14において、プロセッサ11Aは、ワールド座標系(XYZ)における、XY平面に射影したペンライト6の振り方向である回動面を算出する。その算出には、二つの算出手法がある。
 (パターン1)
 図10は、ワールド座標系(XYZ)と動き取得対象物であるペンライト6の座標系(xyz)との関係を示す図である。図7に示す処理の開始前に、観客AUにペンライト6を縦振り又は横振りしてもらうことで、プロセッサ11Aは、ワールド座標系(XYZ)であるスクリーン座標系とペンライト座標系の変換を予め規定する。例えば、ペンライト6を横振り、すなわちx軸方向にペンライト6を振ってもらい、プロセッサ11Aは、そのときワールド座標系のX軸とのなす角度Tを求めて、設定値の一つとして設定情報記憶部121に記憶しておく。
 このステップS14では、プロセッサ11Aは、加速度ベクトルのxy成分を基に、ペンライト座標系での振り方向、すなわちx軸とのなす角度Sを求める。そして、プロセッサ11Aは、ペンライト座標系(xyz)での振り方向を、スクリーン座標系(XYZ)での振り方向βに変換する。具体的には、β=S-Tにより、振り方向βを求める。
 (パターン2)
 図11は、ワールド座標系(XYZ)に対して動き取得対象物であるペンライト6の座標系(xyz)を固定した場合の振り方向を説明するための図である。表示装置ADのスクリーンに対してペンライト6の正面を固定し、縦振り・横振りの面がy-z平面・x-z平面に固定される状況を考える。ペンライト座標系のx軸周りの回動であるロールROは縦振り、y軸周りの回動であるピッチPIは横振りである。ここでは、ペンライト6の捻りであるz軸周りの回動は考慮しない。
 プロセッサ11Aは、x方向加速度とy方向加速度を比較し、x軸方向加速度が小さい場合には、ペンライト6は縦振りされている、すなわち、y軸方向が振り方向であると算出する。また、y軸方向加速度が小さい場合には、プロセッサ11Aは、ペンライト6は横振りされている、すなわち、x軸方向が振り方向であると算出する。
 <回動軸距離算出>
 ステップS15において、プロセッサ11Aは、加速度センサ2A又は2Bから回動軸AXまでの距離を算出する。回動軸AXがペンライト6の内外何れであるのかによって、算出手法が異なる。
 (回動軸AXがペンライト6の外側にある場合)
 図12は、回動軸AXが動き取得対象物であるペンライト6の外側にある場合の回動軸推定に用いる変数を説明するための図である。変数として、
   P[t]:時刻tにおける加速度センサ2Aの位置
   P[t]:時刻tにおける加速度センサ2Bの位置
   r:ペンライト6の長さ(既知)
   r:回動軸AXまでの長さ(求めたい変数)
とする。すなわち、ここでは、プロセッサ11Aが、二つの加速度センサ2A,2Bの内の加速度センサ2Bから回動軸AXまでの長さrを求めるものとして説明する。なお、ペンライト6の長さrは、設定値の一つとして設定情報記憶部121に記憶しておく。
 ここで、
   D:Δt[sec]後に加速度センサ2Aが移動した距離
   D:Δt[sec]後に加速度センサ2Bが移動した距離
とすると、三角形<AX・P[t]・P[t+1]>と三角形<AX・P[t]・P[t+1]>は相似関係なので、
   D:D=(r+r):r
   D(r+r)=D
   Dr+D=D
   (D-D)r=D
   ∴r=Dr/(D-D
である。よって距離D,Dが求まれば、長さrが求まる。
 ここで、
   γ[t]:時刻tで観測される加速度センサ2Aの線形加速度
   γ[t]:時刻tで観測される加速度センサ2Bの線形加速度
   V:時刻tの加速度センサ2Aの速度
   V:時刻tの加速度センサ2Bの速度
とする。なお、線形加速度とは、重力加速度を除いた加速度のことであり、例えば、加速度センサで得られた加速度データに対してハイパスフィルタを適用することで求めることができる。
 これらγ,γ,V,Vを用いると、距離D,Dは、
   D=VΔt+(γ[t]Δt)/2
   D=VΔt+(γ[t]Δt)/2
となる。
 速度V,Vを加速度センサ2A,2Bから精度良く求めることは困難であるが、ペンライト6の切り返しのタイミングに着目すると、速度V,Vともに0と考えることができる。
 ここで、切り返しの時刻tを、加速度γ[t-1]とγ[t]、γ[t-1]とγ[t]の符号が逆転する時刻と定義する。また、静止状態からの動きだしの際は、γ[t-1]=γ[t-1]=0:ペンライト6が静止、γ[t]γ[t]が0でない場合も算出できる。
 時刻tのとき、V=0、V=0であるから、
   D=(γ[t]Δt)/2
   D=(γ[t]Δt)/2
となり、プロセッサ11Aは、
   r=Dr/(D-D
によって、加速度センサ2Bから回動軸AXまでの長さrを算出することができる。
 (回動軸AXがペンライト6の内側にある場合)
 図13は、回動軸AXが動き取得対象物であるペンライト6の内側にある場合の回動軸推定に用いる変数を説明するための図である。変数として、
   P[t]:時刻tにおける加速度センサ2Aの位置
   P[t]:時刻tにおける加速度センサ2Bの位置
   r:ペンライト6の長さ(既知)
   r:回動軸AXまでの長さ(求めたい変数)
とする。ここでも、プロセッサ11Aが、二つの加速度センサ2A,2Bの内の加速度センサ2Bから回動軸AXまでの長さrを求めるものとして説明する。
 ここで、
   D:Δt[sec]後に加速度センサ2Aが移動した距離
   D:Δt[sec]後に加速度センサ2Bが移動した距離
とすると、三角形<AX・P[t]・P[t+1]>と三角形<AX・P[t]・P[t+1]>は相似関係なので、
   D:D=(r-r):r
   D(r-r)=D
   Dr-D=D
   (D+D)r=D
   ∴r=Dr/(D+D
である。よって距離D,Dが求まれば、長さrが求まる。
 ここで、
   γ[t]:時刻tで観測される加速度センサ2Aの線形加速度
   γ[t]:時刻tで観測される加速度センサ2Bの線形加速度
   V:時刻tの加速度センサ2Aの速度
   V:時刻tの加速度センサ2Bの速度
とすると、距離D,Dは、
   D=VΔt+(γ[t]Δt)/2
   D=VΔt+(γ[t]Δt)/2
となる。
 時刻tのとき、V=0、V=0とすると、
   D=(γ[t]Δt)/2
   D=(γ[t]Δt)/2
となり、プロセッサ11Aは、
   r=Dr/(D+D
によって、加速度センサ2Bから回動軸AXまでの長さrを算出することができる。
 <姿勢角算出>
 ステップS16において、プロセッサ11Aは、ペンライト6の姿勢角αを算出する。図14は、回動軸AXが動き取得対象物であるペンライト6の外側にある場合の姿勢角算出に用いる変数を説明するための図であり、図15は、回動軸AXがペンライト6の内側にある場合の姿勢角算出に用いる変数を説明するための図である。
 ここで、姿勢角αを、ワールド座標系(XYZ)のXY平面とペンライト6の長手方向のなす角度と定義する。また、ここでは、加速度のx軸方向とy軸方向を比較して、大きい方の値を使う。以下では、x軸方向加速度が大きい場合について説明する。
 重力加速度と運動による加速度の和が、加速度センサ2A,2Bそれぞれで検出される。ここで、
   加速度センサ2Aで取得した加速度のx軸方向をaAx,z軸方向をaAz
   加速度センサ2Bで取得した加速度のx軸方向をaBx,z軸方向をaBz
  ペンライトのXZ平面での姿勢角(Y軸周り回動、ピッチPI)をα
とする。
 図14に示されるようにペンライト6の外側に回動軸AXがある場合には、回動軸AXから加速度センサ2A,2Bまでの距離はそれぞれ(r+r),rであるので、プロセッサ11Aは、姿勢角αを、
Figure JPOXMLDOC01-appb-M000004
により算出する。
 また、図15に示されるようにペンライト6の内側に回動軸AXがある場合には、回動軸AXから加速度センサ2A,2Bまでの距離はそれぞれ(r-r),rであるので、プロセッサ11Aは、姿勢角αを、
Figure JPOXMLDOC01-appb-M000005
により算出する。
 <映像表示>
 ステップS17において、プロセッサ11Aは、ペンライト6の映像を演者PEの表示装置PD及び/又は各観客AUの表示装置ADに表示させる。
 (回動軸AX位置の反映)
 図16は、回動軸AXが動き取得対象物であるペンライト6の外側にある場合の、ペンライト6の映像表示における回動軸位置の反映方法を説明するための図であり、図17は、回動軸AXがペンライト6の内側にある場合のペンライト6の映像表示における回動軸位置の反映方法を説明するための図である。図16及び図17においては、映像表示における、実際には表示されない回動軸AXの位置AXに関して描画される、ペンライト6の映像であるペンライト像6を示している。
 プロセッサ11Aは、映像表示における回動軸AXの位置AXを固定とし、ペンライト座標系のz軸方向に算出した回動軸AXまでの距離rに応じて、ペンライト像6の描画位置を変化させる。これにより、観客AUがペンライト6を、手首を軸に回動運動した場合と、肘を軸に回動運動した場合とで、ペンライト像6の動きを区別して表示できる。
 (姿勢角(α,β)の反映)
 図18は、動き取得対象物であるペンライト6の映像表示における姿勢角の反映方法を説明するための図である。
 プロセッサ11Aは、ワールド座標系(XYZ)でのピッチ角(ステップS16で算出した姿勢角α)及びヨー角(ステップS14で求めた振り方向β)に基づいて、ペンライト像6を描画する。これにより、ペンライト6の姿勢角を再現することができる。
 以上詳述したように、この発明の第1実施形態では、回動軸AXを中心に回動される動き取得対象物であるペンライト6に二つの加速度センサ2A,2Bを配置し、情報取得部3が、これら二つの加速度センサ2A,2Bが検出した加速度情報を取得し、運動解析部4が、情報取得部3が取得した加速度情報に基づいて、一方の加速度センサ2A又は2Bから回動軸AXまでの距離と、ペンライト6の姿勢角と、を推定する。 
 よって、第1実施形態によれば、二つの加速度センサ2A,2Bだけを用いて、ペンライト6の姿勢角に加えて回動軸AXも推定するので、ペンライト6の動きの違いを、ペンライト6の外部から検出することなく、取得することが可能となる。
 なお、二つの加速度センサ2A,2Bは、回動の径方向に離間して、ペンライト6に配置される。 
 よって、加速度センサ2Aからの加速度情報と加速度センサ2Bからの加速度情報との向きの違いにより、回動軸AXが二つの加速度センサ2Aと2Bの間であるか否か、つまり、回動軸AXがペンライト6の内外のどちらであるか、を判定できるようになる。
 また、運動解析部4は、加速度情報に基づいて、基準座標系であるワールド座標系におけるペンライト6の振り方向を算出し、加速度情報及び二つの加速度センサ2A,2Bの間の距離に基づいて、一方の加速度センサから回動軸AXまでの距離を算出し、二つの加速度センサ2A,2Bの間の距離、算出したペンライト6の振り方向及び算出した回動軸AXまでの距離に基づいて、ペンライト6の姿勢角を算出する。 
 よって、二つの加速度センサ2A,2Bからの加速度情報に基づいて、回動軸AXまでの距離とペンライト6の姿勢角を算出することができる。
 また、運動解析部4は、情報取得部3が取得した加速度情報に基づいて、回動軸AXが二つの加速度センサ2A,2Bの間であるか判定し、回動軸AXが二つの加速度センサ2A,2Bの間である場合とそうでない場合とで、回動軸AXまでの距離の算出及びペンライト6の姿勢角の算出における算出法が異なる。 
 よって、回動軸AXの位置に応じた算出法を用いることで、精度良く回動軸AXまでの距離及びペンライト6の姿勢角を算出することができる。
 また、この第1実施形態では、運動解析部4は、情報取得部3が取得した加速度情報に基づいて、回動軸AXが二つの加速度センサ2A,2Bの間であるか判定し、映像表示部5が、回動軸AXまでの距離、ペンライト6の姿勢角、及び回動軸AXが二つの加速度センサ2A,2Bの間であるかの判定結果に基づいて、ペンライト6の像を表示装置PD及び/又はADに映像表示する。 
 よって、ペンライト6の動きを再現した映像表示を提供することができる。
 [第2実施形態]
 次に、この発明の第2実施形態を説明する。以下の説明において、第1実施形態と同様の部分については、第1実施形態で用いた参照符号と同一の参照符号を付すことで、その説明を省略する。
 図19は、この発明の第2実施形態に係る動き取得装置1の構成の一例を示すブロック図である。第2実施形態においては、第1実施形態の構成に加えて、入力装置AIが、角速度を検出するジャイロセンサ7を備える。
 図20は、入力装置AIとしての動き取得対象物の一例を示す模式図である。第2実施形態においても、入力装置AIは、観客AUが把持するペンライト6の形態で提供されるものとする。ジャイロセンサ7は、二つの加速度センサ2A,2Bの内の一方と同位置に設置される。例えば、図20に示されるように、ジャイロセンサ7は、加速度センサ2Aと同位置に設置される。この場合、ジャイロセンサ7は、その3軸(x軸,y軸,z軸)が加速度センサ2Aの3軸と揃う向きに設置される。
 図21は、第2実施形態に係る動き取得装置1における処理ルーチンを示すフローチャートである。動き取得装置1のプロセッサ11Aは、例えばプログラムメモリ11Bに予め記憶された動き取得プログラムを実行することで、このフローチャートに示す処理を行うことができる。プロセッサ11Aは、通信インタフェース13によりネットワークNWを経由して観客AUからの配信閲覧開始指示の受信に応答して、動き取得プログラムを実行する。なお、このフローチャートに示す処理ルーチンは、一つの入力装置AIに対応する処理を示しており、プロセッサ11Aは、複数の入力装置AIのそれぞれについて、同様の処理を併行して実施することができる。
 プロセッサ11Aは、情報取得部3として動作して、加速度情報と角速度情報を取得する(ステップS21)。すなわち、プロセッサ11Aは、ネットワークNWを経由して送信されてくる、入力装置AIであるペンライト6にそれぞれ配置された二つの加速度センサ2A,2Bからの加速度情報とジャイロセンサ7からの角速度情報を、通信インタフェース13により受信して、データメモリ12の受信情報記憶部122に記憶させる。
 プロセッサ11Aは、第1実施形態と同様に、加速度情報から、観客AUがペンライト6を振っているか否か判定する(ステップS12)。観客AUがペンライト6を振っていないと判定した場合、プロセッサ11Aは、上記ステップS21の処理に移行する。
 観客AUがペンライト6を振っていると判定した場合、プロセッサ11Aは、第1実施形態と同様に、回動軸AXが2つの加速度センサ2Aと2Bの間であるか否か、つまり、本実施形態においても、回動軸AXがペンライト6の内外のどちらであるか、を判定する(ステップS13)。
 プロセッサ11Aは、第1実施形態と同様に、設定情報記憶部121に記憶された設定情報と受信情報記憶部122に記憶された加速度情報を用いて、ペンライト6の振り方向である回動面を算出する(ステップS14)。
 プロセッサ11Aは、受信情報記憶部122に記憶された加速度情報及び角速度情報を用いて、ペンライト6の姿勢角αを算出する(ステップS22)。この算出手法の詳細については後述する。プロセッサ11Aは、算出結果をデータメモリ12の姿勢角情報記憶部124に記憶させる。
 プロセッサ11Aは、設定情報記憶部121に記憶された設定情報、受信情報記憶部122に記憶された加速度情報、及び回動軸情報記憶部123に記憶された回動軸AXがペンライト6の内外何れであるのかの判定結果を用いて、ペンライト6から回動軸AXまでの距離を算出する(ステップS23)。回動軸AXがペンライト6の内外何れであるのかによって、この距離の算出手法が異なる。この算出手法の詳細については後述する。プロセッサ11Aは、算出結果をデータメモリ12の回動軸情報記憶部123に記憶させる。
 プロセッサ11Aは、第1実施形態と同様に、ペンライト6の映像を演者PEの表示装置PD及び/又は各観客AUの表示装置ADに表示させる(ステップS17)
 プロセッサ11Aは、第1実施形態と同様に、処理を終了するか否か判断する(ステップS18)。プロセッサ11Aは、処理を終了しないと判断した場合には、上記ステップS11の処理に移行し、処理を終了すると判断した場合には、このフローチャートに示す処理ルーチンを終了する。
 以降にステップS22及びS23の処理の詳細を説明する。 
 <姿勢角算出>
 ステップS22において、プロセッサ11Aは、ペンライト6の姿勢角αを算出する。ここで、姿勢角αを、ワールド座標系(XYZ)のXY平面とペンライト6の長手方向のなす角度と定義する。
 (加速度情報のみで求める場合)
 加速度センサ2A又は2Bで取得した加速度のx軸方向をa,z軸方向をaとすると、プロセッサ11Aは、ピッチ回動角pを、
Figure JPOXMLDOC01-appb-M000006
により算出することができる。
 算出したピッチ回動角pがXZ平面における姿勢角αに相当する。この加速度情報に基づく姿勢角αの算出手法は、動き取得対象物が低周波な動きをする場合には、高周波な動きをする場合に比較して、姿勢角αを精度高く算出することができる。
 (角速度情報のみで求める場合)
 ジャイロセンサ7で取得した角速度情報を(ω,ω,ω)としたとき、ある微小時間δtにおける各x,y,z軸周りの回動角(δφ,δθ,δψ)は、
   (δφ,δθ,δψ)=(ωδt,ωδt,ωδt)
と表せる。
 プロセッサ11Aは、ロール・ピッチ・ヨー回動角を(δ,δ,δ)として、
Figure JPOXMLDOC01-appb-M000007
により、ピッチ回動角δを算出することができる。ただし、Cθ=cosθ、Sθ=sinθを表す。
 算出したピッチ回動角δがXZ平面における姿勢角αに相当する。この角速度情報に基づく姿勢角αの算出手法は、動き取得対象物が高周波な動きをする場合には、低周波な動きをする場合に比較して、姿勢角αを精度高く算出することができる。
 (加速度情報と角速度情報で求める場合)
 上記の加速度情報のみ、角速度情報のみでは、姿勢角αの精度が悪いため、センサフュージョンにより、精度を高めることができる。
 例えば、加速度情報にローパスフィルタをかけて算出した角度と、角速度情報にハイパスフィルタをかけて算出した角度との重みづけ和を計算する相補フィルタを利用する。具体的には、プロセッサ11Aは、
   補正後の姿勢角=k*(角速度情報から算出した姿勢角)+(1-k)*(加速度情報から算出した姿勢角)
により、補正した姿勢角αを算出する。
 このように、プロセッサ11Aは、加速度情報と角速度情報を用いることで、静止している場合と運動している場合の両方で、姿勢角αを精度良く算出することができる。
 なお、本実施形態は、相補フィルタに限定するものではなく、カルマンフィルタ、勾配フィルタ、等の他のフィルタを利用して良い。
 <回動軸距離算出>
 ステップS23において、プロセッサ11Aは、動き取得対象物であるペンライト6から、本実施形態では加速度センサ2Bが配置されたペンライト6の下端から回動軸AXまでの距離を算出する。第2実施形態においても、回動軸AXが二つの加速度センサ2Aと2Bの間であるか否か、つまり、回動軸AXがペンライト6の内外何れであるのかによって、算出手法が異なる。
 (回動軸AXがペンライト6の外側にある場合)
 図22は、回動軸AXが動き取得対象物であるペンライト6の外側にある場合の回動軸推定に用いる変数を説明するための図である。ここでは、加速度のx軸方向とy軸方向を比較して、大きい方の値を使う。以下では、x軸方向加速度が大きい場合について説明する。
 運動中のペンライト6の長手軸を瞬時の静止座標系であるxz座標系とし、その座標系で微小角ε動いた状態でのxz座標系での加速度(ε=0)と、重力をxz座標系に変換したものを加えると、加速度センサ2A又は2Bからのx軸方向,z軸方向の加速度a,aが得られる。
 ここで、
Figure JPOXMLDOC01-appb-M000008
とすると、ε=0ならば、
Figure JPOXMLDOC01-appb-M000009
である。
 重力加速度gも考慮した上で、加速度センサ2Aで取得した加速度aAx,aAz及び加速度センサ2Bで取得した加速度aBx,aBzを考えると、
Figure JPOXMLDOC01-appb-M000010
となる。
 よって、プロセッサ11Aは、上記式(3)及び式(5)より、
Figure JPOXMLDOC01-appb-M000011
として、ペンライト6の下端に配置されている加速度センサ2Bから回動軸AXまでの長さrを算出することができる。
 (回動軸AXがペンライト6の内側にある場合)
 図23は、回動軸AXが動き取得対象物であるペンライト6の内側にある場合の回動軸推定に用いる変数を説明するための図である。ここでは、加速度のx軸方向とy軸方向を比較して、大きい方の値を使う。以下では、x軸方向加速度が大きい場合について説明する。
 運動中のペンライト6の長手軸を瞬時の静止座標系であるxz座標系とし、その座標系で微小角ε動いた状態でのxz座標系での加速度(ε=0)と、重力をxz座標系に変換したものを加えると、加速度センサ2A又は2Bからのx軸方向,z軸方向の加速度a,aが得られる。
 ここで、上記式(1)及び式(2)より、重力加速度gも考慮した上で、加速度センサ2Aで取得した加速度aAx,aAz及び加速度センサ2Bで取得した加速度aBx,aBzを考えると、
Figure JPOXMLDOC01-appb-M000012
となる。
 よって、プロセッサ11Aは、上記式(8)及び式(10)より、
Figure JPOXMLDOC01-appb-M000013
として、ペンライト6の下端に配置されている加速度センサ2Bから回動軸AXまでの長さrを算出することができる。
 以上詳述したように、この発明の第2実施形態では、回動軸AXを中心に回動される動き取得対象物であるペンライト6に二つの加速度センサ2A,2Bと一つの角速度センサであるジャイロセンサ7とを配置し、情報取得部3が、これら二つの加速度センサ2A,2Bが検出した加速度情報と一つのジャイロセンサ7が検出した角速度情報とを取得し、運動解析部4が、情報取得部3が取得した加速度情報及び角速度情報に基づいて、ペンライト6から回動軸AXまでの距離と、ペンライト6の姿勢角と、を推定する。 
 よって、第2実施形態によれば、二つの加速度センサ2A,2Bと一つのジャイロセンサ7とだけを用いて、ペンライト6の姿勢角に加えて回動軸AXも推定するので、ペンライト6の動きの違いを、ペンライト6の外部から検出することなく、取得することが可能となる。
 なお、二つの加速度センサ2A,2Bは、回動の径方向に離間して、ペンライト6に配置され、一つのジャイロセンサ7は、二つの加速度センサ2A,2Bの内の一方と同位置に配置される。 
 よって、加速度センサ2Aからの加速度情報と加速度センサ2Bからの加速度情報との向きの違いにより、回動軸AXが二つの加速度センサ2Aと2Bの間であるか否か、つまり、回動軸AXがペンライト6の内外のどちらであるか、を判定できるようになる。
 また、運動解析部4は、加速度情報に基づいて、基準座標系であるワールド座標系におけるペンライト6の振り方向を算出し、加速度情報及び角速度情報に基づいて、ペンライト6の姿勢角を算出し、算出したペンライト6の振り方向、加速度情報及び二つの加速度センサ2A,2Bの間の距離に基づいて、ペンライト6から回動軸AXまでの距離を算出する。 
 よって、二つの加速度センサ2A,2Bからの加速度情報と一つのジャイロセンサ7からの角速度情報に基づいて、回動軸AXまでの距離とペンライト6の姿勢角を算出することができる。
 また、運動解析部4は、情報取得部3が取得した加速度情報に基づいて、回動軸AXが二つの加速度センサ2A,2Bの間であるか判定し、回動軸AXが二つの加速度センサ2A,2Bの間である場合とそうでない場合とで、回動軸AXまでの距離の算出における算出法が異なる。 
 よって、回動軸AXの位置に応じた算出法を用いることで、精度良く回動軸AXまでの距離を算出することができる。
 また、この第2実施形態においても第1実施形態と同様に、運動解析部4は、情報取得部3が取得した加速度情報に基づいて、回動軸AXが二つの加速度センサ2A,2Bの間であるか判定し、映像表示部5が、回動軸AXまでの距離、ペンライト6の姿勢角、及び回動軸AXが二つの加速度センサ2A,2Bの間であるかの判定結果に基づいて、ペンライト6の像を表示装置PD及び/又はADに映像表示する。 
 よって、ペンライト6の動きを再現した映像表示を提供することができる。
 [第3実施形態]
 次に、この発明の第3実施形態を説明する。以下の説明において、第1実施形態と同様の部分については、第1実施形態で用いた参照符号と同一の参照符号を付すことで、その説明を省略する。
 図24は、この発明の第3実施形態に係る動き取得装置1の構成の一例を示すブロック図である。第3実施形態においては、第1実施形態の構成に加えて、入力装置AIが、方位センサである地磁気センサ8を備える。
 図25は、入力装置AIとしての動き取得対象物の一例を示す模式図である。第3実施形態においても、入力装置AIは、観客AUが把持するペンライト6の形態で提供されるものとする。地磁気センサ8は、図25に示されるように、ペンライト6の長手方向と直交する面に地磁気センサ8のxy平面が存在するような向きで、ペンライト6の端に一つ設置される。
 地磁気センサ8は、地磁気の強さを取得する。地磁気センサ8を水平回転させたときの出力分布図の円中心を(P,P)、地磁気センサ8が取得した地磁気の強さを(X,Y)とすると、磁北からの角度は、以下のように求められる。
Figure JPOXMLDOC01-appb-M000014
 なお、上記の式は、地磁気センサ8のxy平面が鉛直方向と直交する場合にのみ使用可能なため、プロセッサ11Aは、下記の何れかの方法で測定タイミングを選択する。 
  ・ピッチ角(姿勢角α)が90度のとき(姿勢角計算後)
  ・ペンライト6の振りの二つの切り返しタイミングの中間時刻
  ・速度が最大のタイミング(加速度から算出)
 運動解析部4として動作するプロセッサ11Aは、地磁気センサ8が取得した地磁気の強さに基づいてペンライト6の方位を知ることができる。予め表示装置ADのスクリーンが位置する方角を取得して、設定情報記憶部121に記憶しておくことで、プロセッサ11Aは、スクリーン正面とペンライト6の正面のなす角度(図10の角度T)を判別することできる。すなわち、スクリーンのワールド座標系(XYZ)とペンライト6の座標系(xyz)の変換を規定できるようになる。
 これにより、第1実施形態の回動面算出処理において説明したような、観客AUにペンライト6を振ってもらうことでスクリーン座標系とペンライト6の座標系の変換を求める操作(キャリブレーション)や、ペンライト6の正面の向きを固定する操作が不要となり、観客AUへの負担を減らすことができる。
 図26は、この発明の第3実施形態に係る動き取得装置1の構成の別の一例を示すブロック図である。このように、地磁気センサ8は、第1実施形態だけでなく、第2実施形態に係る動き取得装置1にも同様に適用可能である。
 以上詳述したように、この発明の第3実施形態では、第1又は第2実施形態の構成に加えて、回動の径方向であるペンライト6の長手方向に直交する方向に検出のxy平面が存在するように、ペンライト6の長手方向における端部に配置された方位センサである地磁気センサ8をさらに備えている。 
 よって、第3実施形態によれば、方位センサである地磁気センサ8の出力を利用することで、観客AUへの負担を減らすことができる。
 [他の実施形態]
 なお、この発明は上記実施形態に限定されるものではない。
 例えば、上記実施形態は、手首と肘を中心とした振りの動きを例に説明したが、振りだけで無く、腕を上げて肩を中心に頭上で円運動させるような動きも検出可能なことは言うまでも無い。
 また、動き取得対象物は、ペンライト6の形状に限定するものではなく、観客AUが把持できるものであれば、どの様な形態であっても良い。さらには、動き取得対象物は、観客AUが把持する形態以外も取り得る。例えば、動き取得対象物は、観客AUの腕などの身体に装着する形態とすることができる。この場合、肘や肩が回動軸又は回転軸となって動き取得対象物が回動又は回転されるので、上記実施形態で説明した回動軸AXがペンライト6の外側にある場合と同様に扱うことができる。
 また、上記実施形態は、演者PEと観客AUの間のライブ配信を例に説明したが、例えば、ペンライト6を竹刀に見立てた剣道のバーチャル対戦等、様々なアプリケーションへの応用が可能なことは勿論である。
 また、フローチャートを参照して説明した各処理の流れは、説明した手順に限定されるものではなく、いくつかのステップの順序が入れ替えられても良いし、いくつかのステップが同時併行で実施されても良いし、いくつかのステップの処理内容が修正されても良い。
 また、各実施形態に記載した手法は、計算機(コンピュータ)に実行させることができる処理プログラム(ソフトウェア手段)として、例えば磁気ディスク(フロッピー(登録商標)ディスク、ハードディスク等)、光ディスク(CD-ROM、DVD、MO等)、半導体メモリ(ROM、RAM、フラッシュメモリ等)等の記録媒体に格納し、また通信媒体により伝送して頒布することもできる。なお、媒体側に格納されるプログラムには、計算機に実行させるソフトウェア手段(実行プログラムのみならずテーブル、データ構造も含む)を計算機内に構成させる設定プログラムをも含む。本装置を実現する計算機は、記録媒体に記録されたプログラムを読み込み、また場合により設定プログラムによりソフトウェア手段を構築し、このソフトウェア手段によって動作が制御されることにより上述した処理を実行する。なお、本明細書でいう記録媒体は、頒布用に限らず、計算機内部或いはネットワークを介して接続される機器に設けられた磁気ディスク、半導体メモリ等の記憶媒体を含むものである。
 要するにこの発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除しても良い。さらに、異なる実施形態に亘る構成要素を適宜組み合わせても良い。
 1…動き取得装置
 2A,2B…加速度センサ
 3…情報取得部
 4…運動解析部
 5…映像表示部
 6…ペンライト
 6…ペンライト像
 7…ジャイロセンサ
 8…地磁気センサ
 11A…プロセッサ
 11B…プログラムメモリ
 12…データメモリ
 121…設定情報記憶部
 122…受信情報記憶部
 123…回動軸情報記憶部
 124…姿勢角情報記憶部
 125…映像記憶部
 13…通信インタフェース
 14…バス
 AD,AD1,AD2,AD3,ADn,PD…表示装置
 AI,AI1,AI2,AI3,AIn…入力装置
 AU,AU1,AU2,AU3,AYn…観客
 AX…回動軸
 AX…回動軸の位置
 PC…撮影装置
 PE…演者
 SV…配信サーバ
 NW…ネットワーク

 

Claims (8)

  1.  回動軸を中心に回動される動き取得対象物に配置された二つの加速度センサ及び一つの角速度センサと、
     前記二つの加速度センサが検出した加速度情報及び前記一つの角速度センサが検出した角速度情報を取得する情報取得部と、
     前記情報取得部が取得した前記加速度情報及び前記角速度情報に基づいて、前記動き取得対象物から前記回動軸までの距離と、前記動き取得対象物の姿勢角と、を推定する運動解析部と、
     を具備する動き取得装置。
  2.  前記二つの加速度センサは、前記回動の径方向に離間して、前記動き取得対象物に配置され、
     前記一つの角速度センサは、前記二つの加速度センサの内の一方と同位置に配置される、請求項1に記載の動き取得装置。
  3.  前記運動解析部は、
      前記加速度情報に基づいて、基準座標系における前記動き取得対象物の振り方向を算出し、
      前記加速度情報及び前記角速度情報に基づいて、前記動き取得対象物の前記姿勢角を算出し、
      前記算出した前記動き取得対象物の前記振り方向、前記加速度情報及び前記二つの加速度センサの間の距離に基づいて、前記動き取得対象物から前記回動軸までの距離を算出する、請求項1または2に記載の動き取得装置。
  4.  前記運動解析部は、
      前記情報取得部が取得した前記加速度情報に基づいて、前記回動軸が前記二つの加速度センサの間であるか判定し、
      前記回動軸が前記二つの加速度センサの間である場合とそうでない場合とで、前記回動軸までの前記距離の算出における算出法が異なる請求項3に記載の動き取得装置。
  5.  前記回動の径方向に直交する方向に、検出のxy平面が存在するように、前記動き取得対象物に配置された方位センサをさらに具備する、請求項1乃至4の何れかに記載の動き取得装置。
  6.  前記運動解析部は、前記情報取得部が取得した前記加速度情報に基づいて、前記回動軸が前記二つの加速度センサの間であるか判定し、
     前記動き取得装置は、前記回動軸までの前記距離、前記動き取得対象物の前記姿勢角、及び前記回動軸が前記二つの加速度センサの間であるかの判定結果に基づいて、前記動き取得対象物の像を映像表示する映像表示部をさらに具備する、請求項1乃至5の何れかに記載の動き取得装置。
  7.  回動軸を中心に回動される動き取得対象物の動きを取得する動き取得装置における動き取得方法であって、
     前記動き取得対象物にそれぞれ配置された二つの加速度センサが検出した加速度情報及び一つの角速度センサが検出した角速度情報を取得することと、
     前記取得した前記加速度情報及び前記角速度情報に基づいて、前記動き取得対象物から前記回動軸までの距離と、前記動き取得対象物の姿勢角と、を推定することと、
     を含む動き取得方法。
  8.  請求項1乃至6の何れか一項に記載の動き取得装置の各部による処理をコンピュータに実行させる動き取得プログラム。

     
PCT/JP2021/043902 2021-11-30 2021-11-30 動き取得装置、動き取得方法及び動き取得プログラム WO2023100250A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2023564307A JPWO2023100250A1 (ja) 2021-11-30 2021-11-30
PCT/JP2021/043902 WO2023100250A1 (ja) 2021-11-30 2021-11-30 動き取得装置、動き取得方法及び動き取得プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2021/043902 WO2023100250A1 (ja) 2021-11-30 2021-11-30 動き取得装置、動き取得方法及び動き取得プログラム

Publications (1)

Publication Number Publication Date
WO2023100250A1 true WO2023100250A1 (ja) 2023-06-08

Family

ID=86611728

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2021/043902 WO2023100250A1 (ja) 2021-11-30 2021-11-30 動き取得装置、動き取得方法及び動き取得プログラム

Country Status (2)

Country Link
JP (1) JPWO2023100250A1 (ja)
WO (1) WO2023100250A1 (ja)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08219869A (ja) * 1995-02-13 1996-08-30 Sony Corp 振動検出装置
JP2004502951A (ja) * 2000-07-06 2004-01-29 レニショウ パブリック リミテッド カンパニー 座標測定マシン(cmm)の振動に起因した座標測定誤差を補正する方法および装置
WO2009072504A1 (ja) * 2007-12-07 2009-06-11 Sony Corporation 制御装置、入力装置、制御システム、制御方法及びハンドヘルド装置
US20100095773A1 (en) * 2008-10-20 2010-04-22 Shaw Kevin A Host System and Method for Determining an Attitude of a Device Undergoing Dynamic Acceleration
JP2013250065A (ja) * 2012-05-30 2013-12-12 Mitsubishi Electric Corp 角加速度検出装置及び検出方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08219869A (ja) * 1995-02-13 1996-08-30 Sony Corp 振動検出装置
JP2004502951A (ja) * 2000-07-06 2004-01-29 レニショウ パブリック リミテッド カンパニー 座標測定マシン(cmm)の振動に起因した座標測定誤差を補正する方法および装置
WO2009072504A1 (ja) * 2007-12-07 2009-06-11 Sony Corporation 制御装置、入力装置、制御システム、制御方法及びハンドヘルド装置
US20100095773A1 (en) * 2008-10-20 2010-04-22 Shaw Kevin A Host System and Method for Determining an Attitude of a Device Undergoing Dynamic Acceleration
JP2013250065A (ja) * 2012-05-30 2013-12-12 Mitsubishi Electric Corp 角加速度検出装置及び検出方法

Also Published As

Publication number Publication date
JPWO2023100250A1 (ja) 2023-06-08

Similar Documents

Publication Publication Date Title
US10600150B2 (en) Utilizing an inertial measurement device to adjust orientation of panorama digital images
KR101707600B1 (ko) 멀티미디어 클립에 대한 비디오 안정화 적용
JP4422777B2 (ja) 移動体姿勢検出装置
BR112016010442B1 (pt) Aparelho e método de geração de imagem, e, unidade de armazenamento
US10841570B2 (en) Calibration device and method of operating the same
US20150206337A1 (en) Method and apparatus for visualization of geo-located media contents in 3d rendering applications
US20130120224A1 (en) Recalibration of a flexible mixed reality device
JP6098874B2 (ja) 撮像装置および画像処理装置
US20150009187A1 (en) Method and apparatus for motion sensing of a handheld device relative to a stylus
WO2020045100A1 (ja) 測位装置および測位方法
JP6645245B2 (ja) 全天球撮影システム
JP2002054912A (ja) 形状計測システムと撮像装置と形状計測方法及び記録媒体
CN110324594A (zh) 一种投影画面防抖方法、装置及投影仪
Hausamann et al. Evaluation of the Intel RealSense T265 for tracking natural human head motion
US10558261B1 (en) Sensor data compression
Hausamann et al. Positional head-eye tracking outside the lab: an open-source solution
JP4077385B2 (ja) 画像処理を用いたグローバル座標取得装置
US20200401181A1 (en) Headset clock synchronization
JP2005038321A (ja) ヘッドマウントディスプレイ装置
JP2021506457A (ja) 画像に基づく追跡と慣性プローブ追跡との結合
WO2023100250A1 (ja) 動き取得装置、動き取得方法及び動き取得プログラム
WO2023100249A1 (ja) 動き取得装置、動き取得方法及び動き取得プログラム
US20230300290A1 (en) Information display system, information display method, and non-transitory recording medium
US10341562B1 (en) Systems and methods for translational motion correction
JP6790206B1 (ja) 制御装置、制御方法、プログラム、及び記録媒体

Legal Events

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

Ref document number: 21966336

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2023564307

Country of ref document: JP