WO2024062642A1 - 情報処理装置、方法、プログラム、およびシステム - Google Patents

情報処理装置、方法、プログラム、およびシステム Download PDF

Info

Publication number
WO2024062642A1
WO2024062642A1 PCT/JP2023/003889 JP2023003889W WO2024062642A1 WO 2024062642 A1 WO2024062642 A1 WO 2024062642A1 JP 2023003889 W JP2023003889 W JP 2023003889W WO 2024062642 A1 WO2024062642 A1 WO 2024062642A1
Authority
WO
WIPO (PCT)
Prior art keywords
subject
body surface
base image
line segment
point
Prior art date
Application number
PCT/JP2023/003889
Other languages
English (en)
French (fr)
Inventor
祥子 山岸
謙次郎 小林
Original Assignee
株式会社Shosabi
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 株式会社Shosabi filed Critical 株式会社Shosabi
Priority to US18/344,971 priority Critical patent/US20240104775A1/en
Publication of WO2024062642A1 publication Critical patent/WO2024062642A1/ja

Links

Classifications

    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/103Detecting, measuring or recording devices for testing the shape, pattern, colour, size or movement of the body or parts thereof, for diagnostic purposes
    • A61B5/107Measuring physical dimensions, e.g. size of the entire body or parts thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/80Creating or modifying a manually drawn or painted image using a manual input device, e.g. mouse, light pen, direction keys on keyboard
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras

Definitions

  • the present disclosure relates to an information processing device, method, program, and system.
  • Patent Document 1 describes that a reference surface (in the case of a human, equivalent to a body surface with respect to a joint position) is determined based on the position of a deformation node (node for controlling the deformation of the basic model) of a past basic model (corresponding to a human skeleton). It is disclosed to configure.
  • Patent Document 1 requires a large amount of calculation because it performs a process of configuring a reference surface for a 3D model.
  • the purpose of the present disclosure is to provide a technique for efficiently analyzing the state of the body surface.
  • a program includes a means for estimating a plurality of joint points corresponding to joints of a subject's body based on a result of sensing the body surface of the subject; means for setting, for at least one of a plurality of joint points, a type 1 line segment passing through the joint point in a two-dimensional base image; function as a means of identifying intersections where
  • FIG. 1 is a block diagram showing the configuration of an information processing system according to the present embodiment.
  • FIG. 2 is a block diagram showing a configuration of a client device according to the present embodiment.
  • FIG. 2 is a block diagram showing the configuration of a server according to the present embodiment.
  • FIG. 2 is an explanatory diagram of one aspect of the present embodiment.
  • FIG. 3 is a diagram showing the overall flow of information processing according to the present embodiment.
  • 6 is a flowchart of the analysis process of FIG. 5.
  • FIG. 7 is an explanatory diagram of estimation of joint points in FIG. 6;
  • FIG. 7 is an explanatory diagram of setting of complementary points in FIG. 6;
  • FIG. 7 is an explanatory diagram of setting of auxiliary lines in FIG. 6;
  • FIG. 6 is a flowchart of the analysis process of FIG. 5.
  • Fig. 1 is a block diagram showing the configuration of the information processing system according to this embodiment.
  • the information processing system 1 includes a client device 10 and a server 30 .
  • the client device 10 and the server 30 are connected via a network (for example, the Internet or an intranet) NW.
  • NW a network
  • the client device 10 is an example of an information processing device that sends a request to the server 30.
  • the client device 10 is, for example, a smartphone, a tablet terminal, or a personal computer.
  • the user of the client device 10 may be the same person as the subject whose body surface is to be sensed, which will be described later, or may be a different person.
  • the user may be a person (eg, a trainer, a chiropractor, a medical professional, etc.) who provides health promotion services to a target person.
  • the server 30 is an example of an information processing device that provides the client device 10 with a response in response to a request sent from the client device 10.
  • Server 30 is, for example, a server computer.
  • FIG. 2 is a block diagram showing the configuration of the client device of this embodiment.
  • the client device 10 includes a storage device 11, a processor 12, an input/output interface 13, and a communication interface 14.
  • the client device 10 is connected to a display 21 and a sensor 22.
  • the storage device 11 is configured to store programs and data.
  • the storage device 11 is, for example, a combination of ROM (Read Only Memory), RAM (Random Access Memory), and storage (for example, flash memory or hard disk).
  • the programs include, for example, the following programs.
  • ⁇ OS (Operating System) program ⁇ Application program that executes information processing (e.g., a web browser or an application for analyzing the state of the body surface)
  • the data includes, for example, the following data. ⁇ Databases referenced in information processing ⁇ Data obtained by executing information processing (that is, execution results of information processing)
  • the processor 12 is a computer that implements the functions of the client device 10 by activating a program stored in the storage device 11.
  • the processor 12 is, for example, at least one of the following. ⁇ CPU (Central Processing Unit) ⁇ GPU (Graphic Processing Unit) ⁇ ASIC (Application Specific Integrated Circuit) ⁇ FPGA (Field Programmable Array)
  • the input/output interface 13 acquires information (for example, user instructions or sensing results) from an input device connected to the client device 10 and transmits information (for example, an image) to an output device connected to the client device 10. configured to output.
  • the input device is, for example, a sensor 22, a keyboard, a pointing device, a touch panel, or a combination thereof.
  • the output device is, for example, a display 21, a speaker, or a combination thereof.
  • the communication interface 14 is configured to control communication between the client device 10 and an external device (for example, the server 30).
  • the display 21 is configured to display images (still images or moving images).
  • the display 21 is, for example, a liquid crystal display or an organic EL display.
  • the sensor 22 senses the subject's body surface.
  • the sensor 22 typically corresponds to an optical sensor that performs two-dimensional or three-dimensional sensing using light (which may include a laser), but is not limited to an optical sensor.
  • the sensor 22 transmits the sensing result to the client device 10.
  • the senor 22 includes a depth sensor (for example, LiDAR (light detection and ranging)).
  • the sensor 22 generates point cloud data by sensing.
  • an image includes point cloud data.
  • the senor 22 includes one RGB camera. In this case, the sensor 22 generates a two-dimensional image by performing sensing.
  • the senor 22 includes multiple RGB cameras. In this case, the sensor 22 generates a plurality of two-dimensional images (from different viewpoints) by sensing. Note that, according to the stereo matching technique, it is possible to calculate the depth of corresponding points between a plurality of two-dimensional images.
  • FIG. 3 is a block diagram showing the configuration of the server of this embodiment.
  • the server 30 includes a storage device 31, a processor 32, an input/output interface 33, and a communication interface 34.
  • the storage device 31 is configured to store programs and data.
  • the storage device 31 is, for example, a combination of ROM, RAM, and storage (eg, flash memory or hard disk).
  • the programs include, for example, the following programs. ⁇ OS program ⁇ Application program that executes information processing
  • the data includes, for example, the following data: - Databases referenced in information processing - Results of information processing
  • the processor 32 is a computer that implements the functions of the server 30 by activating a program stored in the storage device 31.
  • the processor 32 is, for example, at least one of the following. ⁇ CPU ⁇ GPU ⁇ ASIC ⁇ FPGA
  • the input/output interface 33 is configured to obtain information (e.g., a user's instruction) from an input device connected to the server 30 , and to output information (e.g., an image) to an output device connected to the server 30 .
  • the input device is, for example, a keyboard, a pointing device, a touch panel, or a combination thereof.
  • the output device is, for example, a display.
  • the communication interface 34 is configured to control communication between the server 30 and an external device (for example, the client device 10).
  • FIG. 4 is an explanatory diagram of one aspect of this embodiment.
  • the server 30 performs most of the information processing (especially analysis processing), but the client device 10 may perform all or part of the information processing described below. That is, the client device 10 may analyze the sensing results of the subject and present the analysis results to the subject. Alternatively, the first client device 10 analyzes the sensing results of the target person, the server 30 acquires the analysis results (and stores them as necessary), and gives the second user (for example, a trainer) different from the target person the analysis results. It may also be presented via the client device 10 of.
  • the sensor 22 senses the body surface of the subject TR10.
  • the client device 10 acquires the sensing result SR11 from the sensor 22 and transmits it to the server 30.
  • the server 30 estimates a plurality of joint points (specifically, the positions of each joint) corresponding to the joints of the subject TR10.
  • the server 30 acquires a two-dimensional base image representing the body surface of the subject TR10.
  • the base image may be generated based on the sensing result SR11, or may be the sensing result SR11 itself.
  • the sensing result SR11 corresponds to point cloud data
  • a two-dimensional image of the point cloud data viewed from an arbitrary viewpoint may be generated.
  • the viewpoint may be predetermined or may be selected by the user.
  • the base image may be generated by the client device 10, the server 30, or other devices not shown.
  • the sensing result SR11 corresponds to an RGB image
  • the RGB image can be used as the base image.
  • the server 30 sets an auxiliary line (an example of a "first type line segment") passing through the joint point in the base image.
  • the server 30 identifies an intersection where the set auxiliary line intersects with the body surface of the subject TR10 depicted in the base image.
  • the server 30 transmits the result of identifying the intersection, or the result of performing further calculations based on the identification result, to the client device 10 as an analysis result AR12 of the state of the body surface of the subject TR10.
  • the client device 10 displays a screen based on the analysis result AR12 on the display 21.
  • the user can grasp the condition of the subject TR10's body surface by checking this screen in real time or in retrospect.
  • the server 30 can efficiently analyze the condition of the body surface of the subject TR10 by performing various processes on the two-dimensional base image.
  • FIG. 5 is a diagram showing the overall flow of information processing in this embodiment.
  • FIG. 6 is a flowchart of the analysis process of FIG.
  • FIG. 7 is an explanatory diagram of estimation of joint points in FIG. 6.
  • FIG. 8 is an explanatory diagram of the setting of complementary points in FIG. 6.
  • FIG. 9 is an explanatory diagram of the setting of the auxiliary line in FIG. 6.
  • FIG. 10 is a specific illustration of the intersection in FIG. 6.
  • FIG. 11 is a specific illustration of the body line in FIG. 6.
  • the information processing of this embodiment can be started, for example, by a user or a target person performing an operation on the client device 10 to call up the information processing.
  • the client device 10 performs body surface sensing (S110). Specifically, the client device 10 causes the sensor 22 to sense the surface of the subject's body. The client device 10 acquires the sensing results.
  • the client device 10 further acquires information regarding sensing conditions (for example, the position or orientation (orientation) of the sensor 22 (e.g., external parameters), the internal parameters of the sensor 22, the position or orientation (orientation) of the subject, or the sensing date and time). You may.
  • sensing conditions for example, the position or orientation (orientation) of the sensor 22 (e.g., external parameters), the internal parameters of the sensor 22, the position or orientation (orientation) of the subject, or the sensing date and time). You may.
  • the client device 10 may further acquire information (for example, ID) that can identify the target person.
  • ID information that can identify the target person.
  • the analysis results can be associated with the subject, so that, for example, the analysis results of the subject's body surface can be accumulated over a long period of time and compared over time.
  • the sensor 22 may perform sensing at one point in time or may perform sensing at multiple points in time. For example, the sensor 22 may perform sensing multiple times within a predetermined period (for example, 5 seconds) and transmit these sensing results to the client device 10. Alternatively, the sensor 22 may perform sensing a plurality of times while a predetermined exercise unit (for example, one rep or one set of exercise) is performed, and transmit these sensing results to the client device 10.
  • a predetermined exercise unit for example, one rep or one set of exercise
  • the client device 10 executes an analysis request (S110). Specifically, the client device 10 generates an analysis request including the sensing results obtained in step S110, and transmits it to the server 30.
  • the analysis request may further include at least one of the following: ⁇ Information about sensing conditions ⁇ Viewpoint corresponding to the base image (e.g., front, back, left, right, top, bottom, or a combination thereof) ⁇ Information that can identify the target person ⁇ Information that can identify the content of the analysis
  • the server 30 performs analysis (S130). Specifically, the server 30 receives the analysis request transmitted in step S110.
  • the client device 10 performs an analysis regarding the state of the subject's body surface in response to the analysis request.
  • the server 30 executes joint point estimation (S1301). Specifically, the server 30 estimates a plurality of joint points corresponding to the joints of the subject's body based on the sensing results included in the analysis request obtained from the client device 10. As a first example of step S1301, the server 30 identifies points corresponding to each joint in the point cloud data as a sensing result, acquires the position (three-dimensional coordinates) of the identified point, and identifies the joint points. presume.
  • the server 30 estimates joint points by applying a learned model to input data based on an RGB image as a sensing result.
  • the trained model infers joint positions based on input data.
  • the learned model can be constructed by supervised learning using learning data including input data based on an RGB image for learning and correct labels indicating positions of joints in the image.
  • the server 30 estimates joint points by applying a learned model to input data based on a two-dimensional image (base image) IM20 including the subject's body surface BI21. Thereby, the server 30 determines a plurality of joint points JP22. In FIGS. 7 to 11, the estimated joint point JP22 is plotted as a double circle symbol.
  • step S1301 the server 30 executes base image acquisition (S1302). Specifically, the server 30 acquires a base image corresponding to the analysis request acquired from the client device 10.
  • the server 30 generates a base image based on the sensing results (for example, point cloud data) included in the analysis request. For example, the server 30 generates a base image representing the subject's body surface by rendering the point cloud data as a two-dimensional image when viewed from an arbitrary viewpoint. Furthermore, by generating the base image, the joint points (that is, the two-dimensional coordinates of the joint points) in the base image that correspond to the joint point estimation results (that is, the three-dimensional positions of the joint points) in step S1301 are identified. Ru.
  • step S1302 the server 30 acquires the sensing result (for example, an RGB image) included in the analysis request as a base image.
  • the server 30 uses the joint point estimation result in step S1301 as the joint point estimation result in the base image.
  • the server 30 executes complementary point setting (S1303). Specifically, the server 30 sets one or more complementary points between the plurality of joint points estimated in step S1301 on the base image acquired in step S1302. As an example, the server 30 connects two joint points that are adjacent to each other (that is, connected via bones) in the structure of the human body (skeletal structure) with a line segment, and fills in the middle of the line segment. Set a point. Complementary points may be set on each line segment at predetermined intervals, or may be set according to the number assigned to each line segment.
  • the complementary points may be set in three-dimensional space.
  • the setting of complementation points (S1303) is performed prior to the acquisition of the base image (S1302). Then, by generating a base image in step S1302, a complementary point (that is, two-dimensional coordinates of the complementary point) in the base image that corresponds to the complementary point set in step S1303 is specified.
  • the server 30 connects two adjacent joint points JP22 with line segments in the base image IM20, and sets complementary points IP23 on the line segments at equal intervals.
  • the set complement point IP24 is plotted as a white circle symbol.
  • auxiliary line setting (S1304). Specifically, the server 30 creates an auxiliary line passing through at least one of the joint points estimated in step S1301 or the complementary points set in step S1303 in the base image acquired in step S1302. Set.
  • the direction of the auxiliary line is specified with respect to the line segment (an example of a "second type line segment") that connects the point through which the auxiliary line passes and other adjacent points (joint points or complementary points) in the structure of the human body. It is determined to form an angle of .
  • the predetermined angle is, for example, 90 degrees, but is not limited to this.
  • the server 30 sets, for each of the joint points JP22 and the complementary points IP23 in the base image IM20, an auxiliary line SL24 that forms an angle of 90 degrees with a line segment connecting the point and another adjacent point in the human body structure.
  • the auxiliary line SL24 is drawn as a dashed line.
  • the server 30 executes intersection identification (S1305). Specifically, the server 30 determines, in the base image acquired in step S1302, that the auxiliary line set in step S1304 corresponds to the body surface of the subject expressed in the base image (that is, the boundary between the subject's body and the outside world). ) to identify the intersection.
  • the server 30 identifies an intersection point SP25 where the auxiliary line SL24 intersects with the subject's body surface in the base image IM20.
  • the identified intersection point SP25 is plotted with a black circle symbol.
  • the server 30 executes body line identification (S1306). Specifically, the server 30 identifies a line segment connecting the plurality of intersections identified in step S1305 as the subject's body line (an example of a "third type line segment").
  • the server 30 identifies, in the base image IM20, a line segment connecting multiple intersections SP25 as the subject's body line BL26.
  • the body line BL26 is not limited to a polygonal line, but may be expressed by a curved line.
  • a plurality of intersections SP25 or a curve (for example, a spline curve) passing through the vicinity thereof can be specified as the body line BL26.
  • the server 30 performs posture evaluation (S1307). Specifically, the server 30 evaluates the posture of the subject based on the result of identifying the body line in step S1306. As a first example of step S1307, the server 30 calculates the angle between two consecutive line segments that make up the body line. Furthermore, the server 30 may compare the calculated angle with a threshold. As a second example of step S1307, the server 30 calculates the angle between the line segments that make up the body line and a reference line. The reference line may be determined according to, for example, the type of exercise performed by the subject. Furthermore, the server 30 may compare the calculated angle with a threshold.
  • the server 30 treats the posture evaluation result in step S1307 (in addition, the execution result of each step as necessary) as the analysis result of the condition of the subject's body surface, and ends the process in step S130.
  • the server 30 may omit execution of step S1307.
  • the server 30 treats the body line identification result in step S1306 (in addition, the execution result of each step as necessary) as the analysis result of the subject's body surface condition, and performs the processing in step S130. can be terminated.
  • the server 30 may omit execution of steps S1306 to S1307.
  • the server 30 treats the intersection identification result in step S1305 (in addition, the execution result of each step as necessary) as the analysis result of the condition of the subject's body surface, and ends the process in step S130. can do.
  • step S131 the server 30 executes an analysis response (S131). Specifically, the server 30 generates an analysis response including the analysis result in step S130, and transmits it to the client device 10. This allows the server 30 to visualize the analysis results in step S130.
  • the client device 10 executes screen display (S112). Specifically, the client device 10 receives the analysis response transmitted in step S131. The client device 10 displays a screen based on the analysis response on the display 21.
  • the client device 10 displays a screen including the intersection identification result in step S1305 on the display 21.
  • the client device 10 displays, for example, on the display 21 a screen in which an intersection is superimposed on a base image.
  • the client device 10 displays on the display 21 a screen including the body line identification results in step S1306.
  • the client device 10 displays, for example, on the display 21 a screen in which a body line is superimposed on a base image.
  • the client device 10 displays a screen including the posture evaluation result in step S1307 on the display 21.
  • the client device 10 displays, for example, a screen on the display 21 that visually represents the posture evaluation result (eg, using numbers, text, icons, etc.).
  • the client device 10 may display on the display 21 a screen that visually expresses the evaluation result in association with the body line superimposed on the base image.
  • step S112 can be combined. For example, both an intersection and a body line may be superimposed on the base image. Furthermore, at least one of joint points, complementary points, or auxiliary lines may be superimposed on the base image. In addition, instead of the base image, the various types of information mentioned above may be used for sensing results (e.g., point cloud data) or for three-dimensional images (e.g., avatars) that are generated based on the sensing results and represent the body surface of the subject. May be superimposed.
  • sensing results e.g., point cloud data
  • three-dimensional images e.g., avatars
  • the client device 10 may re-perform sensing of the body surface (S110), or may terminate the information processing of this embodiment. By repeating steps S110 to S112, the user can check the analysis result of the condition of the subject's body surface in real time.
  • the server 30 of this embodiment estimates a plurality of joint points corresponding to the joints of the subject's body based on the results of sensing the subject's body surface.
  • the server 30 sets an auxiliary line passing through at least one of the plurality of estimated joint points in a two-dimensional base image representing the body surface of the subject, and connects the auxiliary line and the target in the base image. Identify the intersection point where the object intersects with the person's body surface. In other words, since the state of the subject's body surface is analyzed by processing a two-dimensional base image, the amount of calculation required for analysis can be suppressed.
  • the server 30 may set one or more complementary points between the plurality of estimated joint points in the base image. For each of the set one or more complementary points, the server 30 sets a predetermined angle to the line segment connecting the complementary point and any of the other complementary points or joint points adjacent to the complementary point. None, and an auxiliary line passing through the complementary point may also be set.
  • the server 30 may further specify, in the base image, an intersection where an auxiliary line passing through the complementation point intersects with the subject's body surface. This increases the number of specifiable intersections, making it possible to analyze the condition of the subject's body surface in more detail.
  • the server 30 may evaluate the subject's posture based on the identified intersection. Thereby, the user can appropriately grasp the condition of the subject's body surface.
  • the server 30 may identify multiple intersections for the multiple set auxiliary lines, identify body lines connecting the multiple intersections, and calculate the angle formed by the body lines. Thereby, the user can quantitatively grasp the shape (inclination, degree of bending, etc.) of the subject's body surface.
  • the server 30 may visualize the identified intersection. This allows the user to visually grasp the shape of the subject's body surface.
  • the server 30 may superimpose the intersection on the result of sensing the body surface of the subject, or on a two-dimensional or three-dimensional image that is generated based on the result and represents the body surface of the subject. This allows the user to visually grasp the correspondence between each intersection and the body parts of the subject and the shape of the subject's body surface.
  • the server 30 detects a plurality of intersections and a plurality of intersections with respect to the result of sensing the body surface of the subject or a two-dimensional or three-dimensional image generated based on the result and representing the body surface of the subject.
  • the connecting body line may be overlapped. This allows the user to visually grasp the correspondence between each intersection and body line and the body parts of the subject, and the shape of the subject's body surface.
  • the predetermined angle may be 90 degrees. Thereby, it is possible to specify a valid intersection point for the joint point or complementary point.
  • Modification example 1 Modification 1 will be explained.
  • Modification 1 is an example in which a plurality of auxiliary lines are set for each joint point instead of setting complementary points.
  • the server 30 executes steps S1301 to S1302 in the same manner as in FIG. After step S1302, the server 30 executes setting of auxiliary lines (S1304) (that is, skips setting of complementary points (S1303)). Specifically, in the base image acquired in step S1302, for at least one of the joint points estimated in step S1301, the server 30 generates a plurality of auxiliary lines that pass through the joint point and have different directions from each other. Set. The direction of each auxiliary line is determined so as to form a predetermined angle with respect to a line segment connecting a point through which the auxiliary line passes and another adjacent joint point in the structure of the human body.
  • the predetermined angle includes, for example, 90 degrees, but is not limited thereto. As an example, the predetermined angle may include 90 degrees and an angle that is increased or decreased by a predetermined angle (for example, 1 degree) from 90 degrees.
  • the number of auxiliary lines and the angular difference between auxiliary lines may be specified by the user.
  • step S1304 the server 30 executes steps S1305 to S1307 similarly to FIG. 6.
  • Modification 1 multiple intersections can be obtained for one joint point without setting complementary points. In other words, it is possible to efficiently analyze the state of the body surface corresponding to the subject's joints while suppressing the amount of calculation.
  • the server 30 can perform both the setting of complementary points and the setting of a plurality of auxiliary lines.
  • the server 30 may set a plurality of auxiliary lines for the complement point.
  • Modification example 2 Modification 2 will be explained. Modification 2 is an example in which intersections are associated with any part of the body or between parts.
  • the server 30 converts one or more of the intersections specified in step S1305 to any part of the human body. , or between parts (parts that are adjacent to each other in the structure of the human body).
  • the server 30 identifies a region corresponding to each joint point estimated in step S1301. Parts corresponding to joint points are defined in advance.
  • the site may be any of the following: ⁇ Head, center of shoulders, right (left) shoulder, right (left) elbow, right (left) wrist, thoracolumbar region, center of pelvis, right (left) pelvis, right (left) knee, right (left) ankle, right ( Left) foot/right (left) toe
  • the server 30 associates the intersection with the part corresponding to the joint point.
  • the server 30 connects the intersection to the relevant part. Associate.
  • the server 30 connects the intersection to It is associated with either the first site, the second site, or between the first site and the second site.
  • the server 30 may select and associate such an intersection with either the first site or the second site, depending on the distance from the intersection to each joint point.
  • the server 30 fixes the intersection to either the first part, the second part, or between the first part and the second part, depending on the distance from the intersection to each joint point. It may also be associated with
  • server 30 associates body parts or one or more intersection points between parts.
  • the server 30 sets intersections (and body lines connecting the intersections) corresponding to arbitrary parts or parts (hereinafter referred to as "parts of interest") in a manner different from other intersections (and other body lines) (for example, it may be displayed (eg, highlighted) by color, transparency, or symbol shape or size. Thereby, visibility of the state of the region of interest in the subject's body can be improved.
  • the region of interest may be specified by the user or the subject, or may be predetermined according to the type of exercise performed by the subject.
  • the server 30 also determines, for example, the angle of the body line between the intersections associated with the shoulder (shoulder center, right shoulder, left shoulder, or at least one between these parts), such as "shoulder curve".
  • the information may be presented to the user along with information indicating the body part to be affected. This allows the user to easily understand which part the presented analysis results relate to.
  • the storage device 11 may be connected to the client device 10 via the network NW.
  • Display 21 may be built into client device 10 .
  • the storage device 31 may be connected to the server 30 via the network NW.
  • each step of the above information processing can be executed by either the client device 10 or the server 30.
  • a process described as being performed by one device may be performed by another device, or a process described as being performed by interaction between multiple devices may be performed by a single device (e.g., client device 10).
  • step S1303 how to set complementary points between joint points in step S1303 (that is, the set interval or the set number in each line segment connecting joint points) is determined in advance.
  • how to set the complement points may be determined according to user instructions.
  • the user instructs the client device 10 about the part (hereinafter referred to as the "first part") whose completion point setting is to be controlled and the content of the control.
  • Such user instructions may be received by an object such as a slide bar that allows for easy and intuitive adjustment of the coarseness and fineness of interpolation point settings, for example.
  • Client device 10 transmits user instructions to server 30 .
  • User instructions may be included in the analysis request.
  • the server 30 specifies a first part in response to a user instruction, and specifies a parameter that controls the number of complementary points set among a plurality of joint points associated in advance with the first part based on the structure of the human body. (For example, the set interval or set number of complementary points for line segments connecting joint points) is determined. Then, in step S1303, the server 30 sets one or more complementary points between the plurality of joint points associated with the first part according to the determined parameters. Thereby, for example, the user can obtain detailed analysis results by increasing the number of complementary points set at the region of interest.
  • the user can reduce the amount of calculation for analysis (S130) by reducing the number of complementary points set in parts of no interest, and reduce the delay from body shape sensing (S110) to screen display (S112). .
  • the server 30 may repeatedly analyze the same sensing result (S130) so that the user can try various complementary point settings.
  • the sensing result may be a plurality of point cloud data taken in different photographing directions.
  • the base image can be generated based on the result of three-dimensional alignment of the plurality of point cloud data (hereinafter referred to as "synthesized point cloud data"). That is, as an example, the server 30 may generate a base image representing the body surface of the subject by rendering the composite point cloud data as a two-dimensional image when viewed from an arbitrary viewpoint.
  • the means for setting the first type line segment includes, for each of the one or more complementary points, a second type line that connects the complementary point and any of the other complementary points or joint points adjacent to the complementary point. Further setting a first type line segment that makes a predetermined angle with respect to the minute and passes through the complementary point, The identifying means further identifies, in the base image, an intersection where the first type line segment passing through the complementary point intersects with the body surface of the subject.
  • the identifying means identifies a plurality of intersections for a plurality of set first type line segments
  • the means for evaluating the posture identifies a third type line segment that connects a plurality of intersections, and calculates an angle formed by the third type line segment.
  • appendix 5 The program according to appendix 2, which causes the computer to further function as means for visualizing the identified intersection (S131).
  • the visualization means superimposes the intersection on a result of sensing the subject's body surface or a two-dimensional or three-dimensional image that is generated based on the result and represents the subject's body surface. 6.
  • the identifying means identifies a plurality of intersections for a plurality of set first type line segments, further causing the computer to function as a means (S1306) for identifying a third type line segment connecting a plurality of intersections;
  • Appendix 8 means for causing the computer to determine, in response to a user instruction, a parameter for controlling the number of complementary points to be set between a plurality of joint points associated with a first part of a human body;
  • the means for setting complementary points sets one or more complementary points between the plurality of joint points associated with the first part according to the determined parameters.
  • Appendix 11 further causing the computer to function as a means for associating one or more points of intersection with at least one region of the human body; The program described in Appendix 1.
  • Appendix 12 The result of sensing the subject's body surface is multiple point cloud data taken in different shooting directions.
  • the base image is generated based on the results of three-dimensional alignment of multiple point cloud data.
  • a system (1) comprising a first computer (30) and a second computer (10),
  • the first computer is means for acquiring the results of sensing the subject's body surface from the second computer (S130); means for estimating a plurality of joint points corresponding to the joints of the subject's body based on the results of sensing the subject's body surface (S1301); means for setting, for at least one of the plurality of joint points, a first type line segment passing through the joint point in a two-dimensional base image representing the body surface of the subject (S1304); In the base image, means for identifying an intersection where the first type line segment and the subject's body surface intersect (S1305); A system equipped with.
  • Information processing system 10 Client device 11 : Storage device 12 : Processor 13 : Input/output interface 14 : Communication interface 21 : Display 22 : Sensor 30 : Server 31 : Storage device 32 : Processor 33 : Input/output interface 34 : Communication interface

Landscapes

  • Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Biomedical Technology (AREA)
  • Surgery (AREA)
  • Pathology (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • Heart & Thoracic Surgery (AREA)
  • Medical Informatics (AREA)
  • Molecular Biology (AREA)
  • Biophysics (AREA)
  • Animal Behavior & Ethology (AREA)
  • General Health & Medical Sciences (AREA)
  • Public Health (AREA)
  • Veterinary Medicine (AREA)
  • Dentistry (AREA)
  • Measurement Of The Respiration, Hearing Ability, Form, And Blood Characteristics Of Living Organisms (AREA)
  • Image Analysis (AREA)
  • Processing Or Creating Images (AREA)

Abstract

本開示の一態様のプログラムは、コンピュータを、対象者の身体表面をセンシングした結果に基づき、当該対象者の身体の関節に対応する複数の関節点を推定する手段、対象者の身体表面を表現する2次元のベース画像において、複数の関節点のうち少なくとも1つについて、当該関節点を通る第1種線分を設定する手段、ベース画像において、第1種線分と対象者の身体表面とが交差する交差点を特定する手段、として機能させる。

Description

情報処理装置、方法、プログラム、およびシステム
 本開示は、情報処理装置、方法、プログラム、およびシステムに関する。
 人を健康状態に導くための様々なサービス(例えば、トレーナーによる指導、整体、など)において、対象者の身体の曲がり具合や姿勢などの情報は有用である。人体の点群データまたは画像から関節の位置を推定する技術が知られている。しかしながら、関節の位置の推定結果のみからは、例えば身体が丸まっていないかなどを判別することは困難であり、身体表面の状態(例えば、形状または位置)を把握可能な技術が望まれる。
 特許文献1には、過去の基礎モデル(人の骨格相当)の変形ノード(基礎モデルの変形を制御するためのノード)位置に基づき参照表面(人の場合、関節位置に対する体表面に相当)を構成することが開示されている。
国際公開第2019/167760号
 特許文献1に記載の技術は、3Dモデルを対象として参照表面を構成する処理を行うため、計算量が大きくなる。
 本開示の目的は、身体表面の状態を効率的に分析するための技術を提供することである。
 本開示の一態様のプログラムは、コンピュータを、対象者の身体表面をセンシングした結果に基づき、当該対象者の身体の関節に対応する複数の関節点を推定する手段、対象者の身体表面を表現する2次元のベース画像において、複数の関節点のうち少なくとも1つについて、当該関節点を通る第1種線分を設定する手段、ベース画像において、第1種線分と対象者の身体表面とが交差する交差点を特定する手段、として機能させる。
本実施形態の情報処理システムの構成を示すブロック図である。 本実施形態のクライアント装置の構成を示すブロック図である。 本実施形態のサーバの構成を示すブロック図である。 本実施形態の一態様の説明図である。 本実施形態の情報処理の全体フローを示す図である。 図5の分析処理のフローチャートである。 図6の関節点の推定の説明図である。 図6の補完点の設定の説明図である。 図6の補助線の設定の説明図である。 図6の交差点の特定の説明図である。 図6のボディラインの特定の説明図である。
 以下、本発明の一実施形態について、図面に基づいて詳細に説明する。なお、実施形態を説明するための図面において、同一の構成要素には原則として同一の符号を付し、その繰り返しの説明は省略する。
(1)情報処理システムの構成
 情報処理システムの構成について説明する。図1は、本実施形態の情報処理システムの構成を示すブロック図である。
 図1に示すように、情報処理システム1は、クライアント装置10と、サーバ30とを備える。
 クライアント装置10及びサーバ30は、ネットワーク(例えば、インターネット又はイントラネット)NWを介して接続される。
 クライアント装置10は、サーバ30にリクエストを送信する情報処理装置の一例である。クライアント装置10は、例えば、スマートフォン、タブレット端末、又は、パーソナルコンピュータである。クライアント装置10のユーザは、後述する身体表面のセンシングが行われる対象者と同一人物であってもよいし、異なる人物であってもよい。例えば、ユーザは、対象者に対して健康増進のためのサービスを提供する者(例えば、トレーナー、整体師、医療関係者、など)であってもよい。
 サーバ30は、クライアント装置10から送信されたリクエストに応じたレスポンスをクライアント装置10に提供する情報処理装置の一例である。サーバ30は、例えば、サーバコンピュータである。
(1-1)クライアント装置の構成
 クライアント装置の構成について説明する。図2は、本実施形態のクライアント装置の構成を示すブロック図である。
 図2に示すように、クライアント装置10は、記憶装置11と、プロセッサ12と、入出力インタフェース13と、通信インタフェース14とを備える。クライアント装置10は、ディスプレイ21と、センサ22とに接続される。
 記憶装置11は、プログラム及びデータを記憶するように構成される。記憶装置11は、例えば、ROM(Read Only Memory)、RAM(Random Access Memory)、及び、ストレージ(例えば、フラッシュメモリ又はハードディスク)の組合せである。
 プログラムは、例えば、以下のプログラムを含む。
・OS(Operating System)のプログラム
・情報処理を実行するアプリケーション(例えば、ウェブブラウザ、または身体表面の状態を分析するためのアプリケーション)のプログラム
 データは、例えば、以下のデータを含む。
・情報処理において参照されるデータベース
・情報処理を実行することによって得られるデータ(つまり、情報処理の実行結果)
 プロセッサ12は、記憶装置11に記憶されたプログラムを起動することによって、クライアント装置10の機能を実現するコンピュータである。プロセッサ12は、例えば、以下の少なくとも1つである。
 ・CPU(Central Processing Unit)
 ・GPU(Graphic Processing Unit)
 ・ASIC(Application Specific Integrated Circuit)
 ・FPGA(Field Programmable Array)
 入出力インタフェース13は、クライアント装置10に接続される入力デバイスから情報(例えば、ユーザの指示、またはセンシング結果)を取得し、かつ、クライアント装置10に接続される出力デバイスに情報(例えば画像)を出力するように構成される。
 入力デバイスは、例えば、センサ22、キーボード、ポインティングデバイス、タッチパネル、又は、それらの組合せである。
 出力デバイスは、例えば、ディスプレイ21、スピーカ、又は、それらの組合せである。
 通信インタフェース14は、クライアント装置10と外部装置(例えばサーバ30)との間の通信を制御するように構成される。
 ディスプレイ21は、画像(静止画、または動画)を表示するように構成される。ディスプレイ21は、例えば、液晶ディスプレイ、または有機ELディスプレイである。
 センサ22は、対象者の身体表面をセンシングする。センサ22は、典型的には光(レーザを含み得る)を用いて2次元または3次元のセンシングを行う光学センサに相当するが、光学センサには限られない。センサ22は、センシング結果をクライアント装置10へ送信する。
 一例として、センサ22は、深度センサ(例えば、LiDAR(light detection and ranging))を含む。この場合に、センサ22は、センシングを行うことで点群データを生成する。以降の説明において、画像とは点群データを含むこととする。
 別の例として、センサ22は、1つのRGBカメラを含む。この場合に、センサ22は、センシングを行うことで2次元画像を生成する。
 さらなる別の例として、センサ22は、複数のRGBカメラを含む。この場合に、センサ22は、センシングを行うことで、複数の(視点の異なる)2次元画像を生成する。なお、ステレオマッチング技術によれば、複数の2次元画像の間で対応する点について、深度を計算することが可能である。
(1-2)サーバの構成
 サーバの構成について説明する。図3は、本実施形態のサーバの構成を示すブロック図である。
 図3に示すように、サーバ30は、記憶装置31と、プロセッサ32と、入出力インタフェース33と、通信インタフェース34とを備える。
 記憶装置31は、プログラム及びデータを記憶するように構成される。記憶装置31は、例えば、ROM、RAM、及び、ストレージ(例えば、フラッシュメモリ又はハードディスク)の組合せである。
 プログラムは、例えば、以下のプログラムを含む。
・OSのプログラム
・情報処理を実行するアプリケーションのプログラム
 データは、例えば、以下のデータを含む。
・情報処理において参照されるデータベース
・情報処理の実行結果
 プロセッサ32は、記憶装置31に記憶されたプログラムを起動することによって、サーバ30の機能を実現するコンピュータである。プロセッサ32は、例えば、以下の少なくとも1つである。
 ・CPU
 ・GPU
 ・ASIC
 ・FPGA
 入出力インタフェース33は、サーバ30に接続される入力デバイスから情報(例えばユーザの指示)を取得し、かつ、サーバ30に接続される出力デバイスに情報(例えば画像)を出力するように構成される。
 入力デバイスは、例えば、キーボード、ポインティングデバイス、タッチパネル、又は、それらの組合せである。
 出力デバイスは、例えば、ディスプレイである。
 通信インタフェース34は、サーバ30と外部装置(例えばクライアント装置10)との間の通信を制御するように構成される。
(2)実施形態の一態様
 本実施形態の一態様について説明する。図4は、本実施形態の一態様の説明図である。
 以降の説明では、サーバ30が情報処理(特に分析処理)の大部分を行う例を示すが、以下に説明する情報処理の全部または一部をクライアント装置10が行ってもよい。つまり、クライアント装置10が、対象者のセンシング結果の分析を行い、分析結果を対象者本人に提示してもよい。或いは、第1のクライアント装置10が、対象者のセンシング結果の分析を行い、サーバ30が分析結果を取得(および必要に応じて蓄積)し、対象者とは異なるユーザ(例えばトレーナ)に第2のクライアント装置10を介して提示してもよい。
 図4に示すように、センサ22は、対象者TR10の身体表面のセンシングを行う。クライアント装置10は、センサ22からセンシング結果SR11を取得し、サーバ30へ送信する。
 サーバ30は、センシング結果SR11に基づいて、対象者TR10の関節に対応する複数の関節点(具体的には、各関節の位置)を推定する。
 サーバ30は、対象者TR10の身体表面を表現する2次元のベース画像を取得する。ベース画像は、センシング結果SR11に基づいて生成されてもよいし、センシング結果SR11そのものであってもよい。例えばセンシング結果SR11が点群データに相当する場合に、かかる点群データを任意の視点から見た2次元画像が生成されてよい。視点は、予め定められていてもよいし、ユーザが選択できるようにしてもよい。ベース画像は、クライアント装置10、サーバ30、または図示しない他の装置によって生成されてよい。或いは、センシング結果SR11がRGB画像に相当する場合に、当該RGB画像を、ベース画像として用いることができる。
 サーバ30は、推定した複数の関節点のうち少なくとも1つについて、ベース画像において、当該関節点を通る補助線(「第1種線分」の一例)を設定する。
 サーバ30は、設定した補助線と、ベース画像に表現された対象者TR10の身体表面とが交差する交差点を特定する。サーバ30は、当該交差点の特定結果、または当該特定結果に基づくさらなる演算を行った結果を、対象者TR10の身体表面の状態の分析結果AR12として、クライアント装置10へ送信する。
 クライアント装置10は、分析結果AR12に基づく画面をディスプレイ21に表示する。ユーザは、かかる画面をリアルタイムで、または振り返りとして確認することで、対象者TR10の身体表面の状態を把握できる。サーバ30は、2次元のベース画像上で各種の処理を行うことで、対象者TR10の身体表面の状態を効率的に分析することができる。
(3)情報処理
 本実施形態の情報処理について説明する。図5は、本実施形態の情報処理の全体フローを示す図である。図6は、図5の分析処理のフローチャートである。図7は、図6の関節点の推定の説明図である。図8は、図6の補完点の設定の説明図である。図9は、図6の補助線の設定の説明図である。図10は、図6の交差点の特定の説明図である。図11は、図6のボディラインの特定の説明図である。
 本実施形態の情報処理は、例えばユーザまたは対象者が、当該情報処理を呼び出すための操作をクライアント装置10に対して行うことで開始し得る。
 図5に示すように、クライアント装置10は、身体表面のセンシング(S110)を実行する。
 具体的には、クライアント装置10は、センサ22に、対象者の身体表面をセンシングさせる。クライアント装置10は、センシング結果を取得する。
 クライアント装置10は、センシング条件(例えば、センサ22の位置もしくは姿勢(向き)(例えば外部パラメータ)、センサ22の内部パラメータ、対象者の位置もしくは姿勢(向き)、またはセンシング日時)に関する情報をさらに取得してもよい。
 また、クライアント装置10は、対象者を特定可能な情報(例えば、ID)をさらに取得してもよい。これにより、分析結果を対象者に関連付けることができるので、例えば対象者の身体表面の分析結果を長期間に亘って蓄積し、経時的な比較を行うことができる。
 ステップS110において、センサ22は、1時点におけるセンシングを行ってもよいし、複数時点に亘るセンシングを行ってもよい。例えば、センサ22は、所定期間内(例えば5秒間)に複数回のセンシングを行い、これらのセンシング結果をクライアント装置10へ送信してもよい。或いは、センサ22は、所定の運動単位(例えば1レップ、または1セットの運動)が行われている間に複数回のセンシングを行い、これらのセンシング結果をクライアント装置10へ送信してもよい。
 ステップS110の後に、クライアント装置10は、分析要求(S110)を実行する。
 具体的には、クライアント装置10は、ステップS110において取得したセンシング結果を含む分析要求を生成し、サーバ30へ送信する。分析要求は、さらに以下の少なくとも1つを含むこともできる。
・センシング条件に関する情報
・ベース画像に対応する視点(例えば、正面、背面、左面、右面、上面、下面またはそれらの組み合わせ)
・対象者を特定可能な情報
・分析の内容を特定可能な情報
 ステップS111の後に、サーバ30は、分析(S130)を実行する。
 具体的には、サーバ30は、ステップS110において送信された分析要求を受信する。クライアント装置10は、分析要求に応じて、対象者の身体表面の状態に関する分析を行う。
 以下、サーバ30が行う分析処理の一例について詳細に説明する。なお、前述のとおり、分析処理の一部または全部はクライアント装置10によって実行され得る。
 図6に示すように、サーバ30は、関節点の推定(S1301)を実行する。
 具体的には、サーバ30は、クライアント装置10から取得した分析要求に含まれるセンシング結果に基づいて、対象者の身体の関節に対応する複数の関節点を推定する。
 ステップS1301の第1例として、サーバ30は、センシング結果としての点群データにおいて、各関節に対応する点を特定し、特定した点の位置(3次元座標)を取得することで、関節点を推定する。
 ステップS1301の第2例として、サーバ30は、センシング結果としてのRGB画像に基づく入力データに、学習済みモデルを適用することで、関節点を推定する。学習済みモデルは、入力データに基づいて、関節の位置の推論を行う。学習済みモデルは、学習用のRGB画像に基づく入力データと、当該画像における関節の位置を示す正解ラベルとを含む学習データを用いた教師あり学習によって構築可能である。
 例えば図7に示すように、サーバ30は、対象者の身体表面BI21を含む2次元画像(ベース画像)IM20に基づく入力データに、学習済みモデルを適用することで関節点を推定する。これにより、サーバ30は、複数の関節点JP22を決定する。図7~図11において、推定された関節点JP22は、二重丸のシンボルでプロットされている。
 ステップS1301の後に、サーバ30は、ベース画像の取得(S1302)を実行する。
 具体的には、サーバ30は、クライアント装置10から取得した分析要求に対応するベース画像を取得する。
 ステップS1302の第1例として、サーバ30は、分析要求に含まれるセンシング結果(例えば点群データ)に基づいてベース画像を生成する。例えば、サーバ30は、点群データを任意の視点から見た場合の2次元画像としてレンダリングすることで、対象者の身体表面を表現するベース画像を生成する。さらに、ベース画像を生成することで、ステップS1301における関節点の推定結果(つまり、関節点の3次元位置)に対応する、ベース画像における関節点(つまり、関節点の2次元座標)が特定される。
 ステップS1302の第2例として、サーバ30は、分析要求に含まれるセンシング結果(例えばRGB画像)をベース画像として取得する。この場合に、サーバ30は、ステップS1301における関節点の推定結果を、ベース画像における関節点の推定結果として用いる。
 ステップS1302の後に、サーバ30は、補完点の設定(S1303)を実行する。
 具体的には、サーバ30は、ステップS1302において取得したベース画像上において、ステップS1301において推定された複数の関節点の間に1以上の補完点を設定する。一例として、サーバ30は、人体の構造(骨格構造)において互いに隣接する(つまり、骨を介して接続されている)2つの関節点の間を線分で接続し、当該線分の途中に補完点を設定する。補完点は、各線分上に所定の間隔で設定されてもよいし、各線分に対して割り当てられた数に従って設定されてもよい。
 なお、分析要求に含まれるセンシング結果が例えば点群データである場合に、補完点は3次元空間で設定されてもよい。この場合に、補完点の設定(S1303)は、ベース画像の取得(S1302)に先立って行われる。そして、ステップS1302においてベース画像を生成することで、ステップS1303において設定された補完点に対応する、ベース画像における補完点(つまり、補完点の2次元座標)が特定される。
 例えば図8に示すように、サーバ30は、ベース画像IM20において、隣接する2つの関節点JP22の間をそれぞれ線分で接続し、当該線分上に等間隔で補完点IP23を設定する。図8~図11において、設定された補完点IP24は、白丸のシンボルでプロットされている。
 ステップS1303の後に、サーバ30は、補助線の設定(S1304)を実行する。
 具体的には、サーバ30は、ステップS1302において取得したベース画像において、ステップS1301において推定された関節点、またはステップS1303において設定した補完点のうち少なくとも1つの点について、当該点を通る補助線を設定する。補助線の向きは、当該補助線の通る点と人体の構造において隣接する他の点(関節点または補完点)とを接続する線分(「第2種線分」の一例)に対して所定の角度をなすように定められる。所定の角度は例えば90度であるがこれに限られない。
 例えば図9に示すように、サーバ30は、ベース画像IM20において、関節点JP22および補完点IP23のそれぞれについて、当該点と人体の構造において隣接する他の点とを結ぶ線分に対して90度をなす補助線SL24を設定する。図9~図11において、補助線SL24は、破線で描かれている。
 ステップS1304の後に、サーバ30は、交差点の特定(S1305)を実行する。
 具体的には、サーバ30は、ステップS1302において取得したベース画像において、ステップS1304において設定した補助線が、ベース画像に表現された対象者の身体表面(つまり、対象者の身体と外界との境界)と交差する交差点を特定する。
 例えば図10に示すように、サーバ30は、ベース画像IM20において、補助線SL24が対象者の身体表面と交差する交差点SP25を特定する。図10~図11において、特定された交差点SP25は、黒丸のシンボルでプロットされている。
 ステップS1305の後に、サーバ30は、ボディラインの特定(S1306)を実行する。
 具体的には、サーバ30は、ステップS1305において特定した複数の交差点同士を接続する線分を対象者のボディライン(「第3種線分」の一例)として特定する。
 例えば図11に示すように、サーバ30は、ベース画像IM20において、複数の交差点SP25同士を接続する線分を対象者のボディラインBL26として特定する。なお、ボディラインBL26は、折れ線に限られず曲線によって表現されてもよい。例えば複数の交差点SP25、またはその付近を通る曲線(例えばスプライン曲線)をボディラインBL26として特定可能である。
 ステップS1306の後に、サーバ30は、姿勢の評価(S1307)を実行する。
 具体的には、サーバ30は、ステップS1306におけるボディラインの特定結果に基づいて、対象者の姿勢を評価する。ステップS1307の第1例として、サーバ30は、ボディラインを構成する2つの連続する線分がなす角度を算出する。さらに、サーバ30は、算出した角度を閾値と比較してもよい。ステップS1307の第2例として、サーバ30は、ボディラインを構成する線分が基準線に対してなす角度を算出する。基準線は、例えば対象者が行った運動の種目に応じて決定され得る。さらに、サーバ30は、算出した角度を閾値と比較してもよい。
 サーバ30は、ステップS1307における姿勢の評価結果(加えて、必要に応じて各ステップの実行結果)を、対象者の身体表面の状態の分析結果として扱い、ステップS130の処理を終了する。
 なお、分析処理の第1変形例として、サーバ30は、ステップS1307の実行を省略してもよい。この場合に、サーバ30は、ステップS1306におけるボディラインの特定結果(加えて、必要に応じて各ステップの実行結果)を、対象者の身体表面の状態の分析結果として扱い、ステップS130の処理を終了することができる。
 分析処理の第2変形例として、サーバ30は、ステップS1306~S1307の実行を省略してもよい。この場合に、サーバ30は、ステップS1305における交差点の特定結果(加えて、必要に応じて各ステップの実行結果)を、対象者の身体表面の状態の分析結果として扱い、ステップS130の処理を終了することができる。
 ステップS130の後に、サーバ30は、分析応答(S131)を実行する。
 具体的には、サーバ30は、ステップS130における分析結果を含む分析応答を生成し、クライアント装置10へ送信する。これにより、サーバ30は、ステップS130における分析結果を可視化することができる。
 ステップS131の後に、クライアント装置10は、画面表示(S112)を実行する。
 具体的には、クライアント装置10は、ステップS131において送信された分析応答を受信する。クライアント装置10は、分析応答に基づく画面をディスプレイ21に表示する。
 ステップS112の第1例として、クライアント装置10は、ステップS1305における交差点の特定結果を含む画面をディスプレイ21に表示する。クライアント装置10は、例えばベース画像に交差点が重畳された画面をディスプレイ21に表示する。
 ステップS112の第2例として、クライアント装置10は、ステップS1306におけるボディラインの特定結果を含む画面をディスプレイ21に表示する。クライアント装置10は、例えばベース画像にボディラインが重畳された画面をディスプレイ21に表示する。
 ステップS112の第3例として、クライアント装置10は、ステップS1307における姿勢の評価結果を含む画面をディスプレイ21に表示する。クライアント装置10は、例えば姿勢の評価結果を視覚的に(例えば、数字、テキスト、アイコンなどを用いて)表現する画面をディスプレイ21に表示する。或いは、クライアント装置10は、ベース画像に重畳されたボディラインと対応付けて評価結果を視覚的に表現する画面をディスプレイ21に表示してもよい。
 ステップS112の第1例~第3例は組み合わせ可能である。例えば、ベース画像に、交差点およびボディラインの両方が重畳されてもよい。さらに、関節点、補完点、または補助線の少なくとも1つがベース画像に重畳されてもよい。また、ベース画像の代わりにセンシング結果(例えば点群データ)、または当該センシング結果に基づいて生成され対象者の身体表面を表現する3次元の画像(例えばアバター)に対して、上記各種の情報が重畳されてもよい。
 ステップS112の後に、クライアント装置10は、身体表面のセンシング(S110)を再実行してもよいし、本実施形態の情報処理を終了してもよい。ステップS110~S112を繰り返すことで、ユーザは対象者の身体表面の状態の分析結果をリアルタイムに確認することができる。
(4)小括
 以上説明したように、本実施形態のサーバ30は、対象者の身体表面をセンシングした結果に基づき、当該対象者の身体の関節に対応する複数の関節点を推定する。サーバ30は、対象者の身体表面を表現する2次元のベース画像において、推定した複数の関節点のうち少なくとも1つについて、当該関節点を通る補助線を設定し、ベース画像において補助線と対象者の身体表面とが交差する交差点を特定する。つまり、2次元のベース画像の処理により対象者の身体表面の状態を分析するので、分析に必要な計算量を抑制することができる。
 サーバ30は、ベース画像において、推定された複数の関節点の間に1以上の補完点を設定してもよい。サーバ30は、設定した1以上の補完点のそれぞれについて、当該補完点と、当該補完点と隣接する他の補完点または関節点のいずれかとの間を接続する線分に対して所定の角度をなし、かつ当該補完点を通る補助線をさらに設定してもよい。サーバ30は、ベース画像において、補完点を通る補助線と対象者の身体表面とが交差する交差点をさらに特定してもよい。これにより、特定可能な交差点の数を増やし、対象者の身体表面の状態をより詳細に分析することができる。
 サーバ30は、特定された交差点に基づいて対象者の姿勢の評価を行ってもよい。これにより、ユーザは、対象者の身体表面の状態を適切に把握できる。
 サーバ30は、設定された複数の補助線に対して複数の交差点を特定し、当該複数の交差点同士を接続するボディラインを特定し、当該ボディラインがなす角度を算出してもよい。これにより、ユーザは、対象者の身体表面の形状(傾き、曲がり具合、など)を定量的に把握できる。
 サーバ30は、特定された交差点を可視化してもよい。これにより、ユーザは、対象者の身体表面の形状を視覚的に把握することができる。
 サーバ30は、対象者の身体表面をセンシングした結果、または当該結果に基づいて生成され対象者の身体表面を表現する2次元または3次元の画像に対して交差点を重畳してもよい。これにより、ユーザは、各交差点と対象者の身体の部位との対応関係、および対象者の身体表面の形状を視覚的に把握することができる。
 サーバ30は、対象者の身体表面をセンシングした結果、または当該結果に基づいて生成され対象者の身体表面を表現する2次元または3次元の画像に対して複数の交差点と当該複数の交差点同士を接続するボディラインとを重畳してもよい。これにより、ユーザは、各交差点およびボディラインと対象者の身体の部位との対応関係、および対象者の身体表面の形状を視覚的に把握することができる。
 所定の角度は90度であってよい。これにより、関節点または補完点に対して妥当な交差点を特定することができる。
(5)変形例
 本実施形態の変形例について説明する。
(5-1)変形例1
 変形例1について説明する。変形例1は、補完点を設定する代わりに、各関節点に対して複数の補助線を設定する例である。
 具体的には、サーバ30は、図6と同様にステップS1301~S1302を実行する。
 ステップS1302の後に、サーバ30は、補助線の設定(S1304)を実行する(つまり、補完点の設定(S1303)をスキップする)。
 具体的には、サーバ30は、ステップS1302において取得したベース画像において、ステップS1301において推定された関節点のうち少なくとも1つの点について、当該関節点を通り、かつ互いの向きの異なる複数の補助線を設定する。各補助線の向きは、当該補助線の通る点と人体の構造において隣接する他の関節点とを結ぶ線分に対して所定の角度をなすように定められる。所定の角度は例えば90度を含むが、これに限られない。一例として、所定の角度は、90度と、90度に対して所定の角度(例えば1度)ずつ増減させた角度とを含み得る。補助線の数、および補助線間の角度差はユーザによって指定されてもよい。
 ステップS1304の後に、サーバ30は、図6と同様にステップS1305~S1307を実行する。
 変形例1によれば、補完点を設定せずとも、1つの関節点に対して複数の交差点を得ることができる。つまり、計算量を抑制しながら、対象者の関節に対応する身体表面の状態を効率的に分析することができる。
 なお、変形例1は、本実施形態と組み合わせ可能である。つまり、サーバ30は、補完点の設定と、複数の補助線の設定との双方を行うことができる。この場合に、サーバ30は、補完点に対して複数の補助線を設定してもよい。
(5-2)変形例2
 変形例2について説明する。変形例2は、交差点を、身体のいずれの部位、または部位間に関連付ける例である。
 具体的には、本実施形態の情報処理では、交差点の特定(S1305)後に、ボディラインの特定(S1306)および姿勢の評価(S1307)を実行する。本変形例2の情報処理では、これらの処理に代えて、またはこれらの処理に加えて、サーバ30は、ステップS1305に特定した交差点のうち1つまたは複数を、人間の身体のいずれかの部位、または部位間(人体の構造において互いに隣接する部位間)に対して関連付ける。
 具体的には、サーバ30は、ステップS1301において推定した各関節点に対応する部位を特定する。関節点に対応する部位は予め定義されている。例えば、部位は、以下のいずれかであってよい。
・頭
・肩中央
・右(左)肩
・右(左)肘
・右(左)手首
・胸腰
・骨盤中央
・右(左)骨盤
・右(左)膝
・右(左)足首
・右(左)足
・右(左)つま先
 また、部位間として、例えば肩中央-右肩間、胸腰-骨盤中央間、などの組み合わせがあり得る。
 サーバ30は、交差点が補助線によっていずれかの関節点に接続されている場合に、当該交差点を、当該関節点に対応する部位に関連付ける。
 サーバ30は、交差点が補助線によっていずれかの補完点に接続されていて、かつ当該補完点が同一の部位に対応する関節点の間に設定されている場合に、当該交差点を、当該部位に関連付ける。
 サーバ30は、交差点が補助線によっていずれかの補完点に接続されていて、かつ当該補完点が第1部位と第2部位との間の関節点に設定されている場合に、当該交差点を、第1部位、第2部位、または第1部位と第2部位との間、のいずれかに関連付ける。第1例として、サーバ30は、かかる交差点を、当該交差点から各関節点までの距離に応じて、第1部位、または第2部位のいずれかを選択して関連付けてもよい。第2例として、サーバ30は、かかる交差点を、当該交差点から各関節点までの距離に応じて、第1部位、第2部位、または第1部位と第2部位との間のいずれかに固定的に関連付けてもよい。
 このようにして、サーバ30は、身体の部位、または部位間に1以上の交差点を関連付ける。
 サーバ30は、任意の部位または部位間(以下、「関心部位」という)に対応する交差点(および当該交差点同士を接続するボディライン)を、他の交差点(および他のボディライン)と異なる態様(例えば、色、透明度、またはシンボルの形状もしくはサイズ)で表示(例えば強調表示)してもよい。これにより、対象者の身体のうち関心部位の状態の視認性を高めることができる。関心部位は、ユーザまたは対象者によって指定されてもよいし、対象者が行う運動の種目に応じて予め定められてもよい。
 また、サーバ30は、例えば、肩(肩中央、右肩、左肩、またはこれらの部位間の少なくとも1つ)に関連付けられる交差点間のボディラインの角度を、例えば「肩のまがり」のように関連する部位を表す情報とともに、ユーザに提示してもよい。これにより、ユーザは、提示された分析結果がどの部位に関する情報であるかを容易に把握することができる。
(6)その他の変形例
 記憶装置11は、ネットワークNWを介して、クライアント装置10と接続されてもよい。ディスプレイ21は、クライアント装置10に内蔵されてもよい。記憶装置31は、ネットワークNWを介して、サーバ30と接続されてもよい。
 上記説明では、各処理において各ステップを特定の順序で実行する例を示したが、各ステップの実行順序は、依存関係がない限りは説明した例に制限されない。上記の情報処理の各ステップは、クライアント装置10及びサーバ30の何れでも実行可能である。例えば、いずれかの装置によって行われるとして説明された処理が別の装置によって行われたり、複数の装置のやり取りによって行われるとして説明された処理が単一の装置(例えばクライアント装置10)によって行われたりしてもよい。
 上記説明では、ステップS1303において関節点同士の間にどのように補完点を設定するか(つまり、関節点同士を接続する各線分における設定間隔または設定数)が予め定められている例を述べた。しかしながら、補完点をどのように設定するか(例えば粗く設定するか密に設定するか)はユーザ指示に応じて決定されてよい。具体的には、ユーザは、補完点の設定を制御する対象となる部位(以下、「第1部位」)と、その制御内容とをクライアント装置10に対して指示する。かかるユーザ指示は、例えば補間点の設定の粗密を直感的に調整しやすいスライドバーなどのオブジェクトによって受け付けられてよい。クライアント装置10は、ユーザ指示をサーバ30へ送信する。ユーザ指示は、分析要求に含められてもよい。サーバ30は、ユーザ指示に応じて第1部位を特定し、当該第1部位に人体の構造に基づいて予め関連付けられている複数の関節点の間で設定される補完点の数を制御するパラメータ(例えば、関節点同士を接続する線分に対する補完点の設定間隔または設定数)を決定する。そして、サーバ30は、ステップS1303において、決定されたパラメータに従って、第1部位に関連付けられる複数の関節点の間に1以上の補完点を設定する。これにより、例えば、ユーザは、関心のある部位に設定される補完点を増やすことで詳細な分析結果を得ることができる。或いは、ユーザは、関心のない部位に設定される補完点を減らすことで分析(S130)の計算量を抑え、身体形状のセンシング(S110)~画面表示(S112)までのディレイを減らすことができる。なお、ユーザが様々な補完点の設定を試せるように、サーバ30は同一のセンシング結果に対して繰り返し分析(S130)を行ってもよい。
 上記説明では、センシング結果としての点群データに基づいてベース画像を生成する例を述べた。しかしながら、センシング結果は、撮影方向の異なる複数の点群データであってもよい。この場合に、ベース画像は、これら複数の点群データを3次元位置合わせした結果(以下、「合成点群データ」という)に基づいて生成され得る。つまり、一例として、サーバ30は、合成点群データを任意の視点から見た場合の2次元画像としてレンダリングすることで、対象者の身体表面を表現するベース画像を生成してもよい。これにより、第1の点群データの死角を第2の点群データによって補い、様々な視点に対して十分な数の点を確保できるので、例えば対象者の正面方向のベース画像に加えて、対象者の側面方向のベース画像、対象者の上面方向のベース画像、またはこれらの組み合わせを生成し、多視点から対象者の身体表面の状態を効率的に分析することができる。
(7)付記
 実施形態および変形例で説明した事項を、以下に付記する。
 (付記1)
 コンピュータ(30)を、
 対象者の身体表面をセンシングした結果に基づき、当該対象者の身体の関節に対応する複数の関節点を推定する手段(S1301)、
 対象者の身体表面を表現する2次元のベース画像において、複数の関節点のうち少なくとも1つについて、当該関節点を通る第1種線分を設定する手段(S1304)、
 ベース画像において、第1種線分と対象者の身体表面とが交差する交差点を特定する手段(S1305)、
 として機能させるプログラム。
 (付記2)
 コンピュータを、ベース画像において、推定された複数の関節点の間に1以上の補完点を設定する手段(S1303)、として機能させ、
 第1種線分を設定する手段は、1以上の補完点のそれぞれについて、当該補完点と、当該補完点と隣接する他の補完点または関節点のいずれかとの間を接続する第2種線分に対して所定の角度をなし、かつ当該補完点を通る第1種線分をさらに設定し、
 特定する手段は、ベース画像において、補完点を通る第1種線分と対象者の身体表面とが交差する交差点をさらに特定する、
 付記1に記載のプログラム。
 (付記3)
 コンピュータを、特定された交差点に基づいて対象者の姿勢の評価を行う手段(S1307)、としてさらに機能させる、
 付記2に記載のプログラム。
 (付記4)
 特定する手段は、設定された複数の第1種線分に対して複数の交差点を特定し、
 姿勢の評価を行う手段は、複数の交差点同士を接続する第3種線分を特定し、当該第3種線分がなす角度を算出する、
 付記3に記載のプログラム。
 (付記5)
 コンピュータを、特定された交差点を可視化する手段(S131)、としてさらに機能させる、付記2に記載のプログラム。
 (付記6)
 可視化する手段は、対象者の身体表面をセンシングした結果、または当該結果に基づいて生成され対象者の身体表面を表現する2次元または3次元の画像に対して、交差点を重畳する、
 付記5に記載のプログラム。
 (付記7)
 特定する手段は、設定された複数の第1種線分に対して複数の交差点を特定し、
 コンピュータを、複数の交差点同士を接続する第3種線分を特定する手段(S1306)、としてさらに機能させ、
 可視化する手段は、対象者の身体表面をセンシングした結果、または当該結果に基づいて生成され対象者の身体表面を表現する2次元または3次元の画像に対して、複数の交差点と当該複数の交差点同士を接続する第3種線分とを重畳する、
 付記6に記載のプログラム。
 (付記8)
 コンピュータを、ユーザ指示に応じて、人間の身体の第1部位に関連付けられる複数の関節点の間で設定される補完点の数を制御するパラメータを決定する手段、
 補完点を設定する手段は、決定されたパラメータに従って、第1部位に関連付けられる複数の関節点の間に1以上の補完点を設定する、
 付記2に記載のプログラム。
 (付記9)
 所定の角度は、90度である、
 付記2に記載のプログラム。
 (付記10)
 複数の関節点のうち少なくとも1つについて、当該関節点を通り、かつ向きの異なる複数の第1種線分を設定し、
 特定する手段は、ベース画像において、複数の関節点の各々に設定された全ての第1種線分に対して交差点を特定する、
 付記1に記載のプログラム。
 (付記11)
 コンピュータを、人間の身体の少なくとも1つの部位に対して1以上の交差点を関連付ける手段、としてさらに機能させる、
 付記1に記載のプログラム。
 (付記12)
 対象者の身体表面をセンシングした結果は、撮影方向の異なる複数の点群データであり、
 ベース画像は、複数の点群データを3次元位置合わせした結果に基づいて生成される、
 付記1に記載のプログラム。
 (付記13)
 コンピュータ(30)によって実行される方法であって、
 対象者の身体表面をセンシングした結果に基づき、当該対象者の身体の関節に対応する複数の関節点を推定するステップ(S1301)と、
 対象者の身体表面を表現する2次元のベース画像において、複数の関節点のうち少なくとも1つについて、当該関節点を通る第1種線分を設定するステップ(S1304)と、
 ベース画像において、第1種線分と対象者の身体表面とが交差する交差点を特定するステップ(S1305)と
 を具備する方法。
 (付記14)
 対象者の身体表面をセンシングした結果に基づき、当該対象者の身体の関節に対応する複数の関節点を推定する手段(S1301)と、
 対象者の身体表面を表現する2次元のベース画像において、複数の関節点のうち少なくとも1つについて、当該関節点を通る第1種線分を設定する手段(S1304)と、
 ベース画像において、第1種線分と対象者の身体表面とが交差する交差点を特定する手段(S1305)と
 を具備する情報処理装置(30)。
 (付記15)
 第1コンピュータ(30)および第2コンピュータ(10)を具備するシステム(1)であって、
 第1コンピュータは、
  第2コンピュータから対象者の身体表面をセンシングした結果を取得する手段(S130)、
  対象者の身体表面をセンシングした結果に基づき、当該対象者の身体の関節に対応する複数の関節点を推定する手段(S1301)、
  対象者の身体表面を表現する2次元のベース画像において、複数の関節点のうち少なくとも1つについて、当該関節点を通る第1種線分を設定する手段(S1304)、
  ベース画像において、第1種線分と対象者の身体表面とが交差する交差点を特定する手段(S1305)、
 を備える、システム。
 以上、本発明の実施形態について詳細に説明したが、本発明の範囲は上記の実施形態に限定されない。また、上記の実施形態は、本発明の主旨を逸脱しない範囲において、種々の改良や変更が可能である。また、上記の実施形態及び変形例は、組合せ可能である。
1     :情報処理システム
10    :クライアント装置
11    :記憶装置
12    :プロセッサ
13    :入出力インタフェース
14    :通信インタフェース
21    :ディスプレイ
22    :センサ
30    :サーバ
31    :記憶装置
32    :プロセッサ
33    :入出力インタフェース
34    :通信インタフェース

Claims (15)

  1.  コンピュータを、
     対象者の身体表面をセンシングした結果に基づき、当該対象者の身体の関節に対応する複数の関節点を推定する手段、
     前記対象者の身体表面を表現する2次元のベース画像において、前記複数の関節点のうち少なくとも1つについて、当該関節点を通る第1種線分を設定する手段、
     前記ベース画像において、前記第1種線分と前記対象者の身体表面とが交差する交差点を特定する手段、
     として機能させるプログラム。
  2.  前記コンピュータを、前記ベース画像において、推定された前記複数の関節点の間に1以上の補完点を設定する手段、として機能させ、
     前記第1種線分を設定する手段は、前記1以上の補完点のそれぞれについて、当該補完点と、当該補完点と隣接する他の補完点または関節点のいずれかとの間を接続する第2種線分に対して所定の角度をなし、かつ当該補完点を通る第1種線分をさらに設定し、
     前記特定する手段は、前記ベース画像において、前記補完点を通る前記第1種線分と前記対象者の身体表面とが交差する交差点をさらに特定する、
     請求項1に記載のプログラム。
  3.  前記コンピュータを、特定された前記交差点に基づいて前記対象者の姿勢の評価を行う手段、としてさらに機能させる、
     請求項2に記載のプログラム。
  4.  前記特定する手段は、設定された複数の前記第1種線分に対して複数の前記交差点を特定し、
     前記姿勢の評価を行う手段は、前記複数の交差点同士を接続する第3種線分を特定し、当該第3種線分がなす角度を算出する、
     請求項3に記載のプログラム。
  5.  前記コンピュータを、前記特定された交差点を可視化する手段、としてさらに機能させる、請求項2乃至請求項4のいずれかに記載のプログラム。
  6.  前記可視化する手段は、前記対象者の身体表面をセンシングした結果、または当該結果に基づいて生成され前記対象者の身体表面を表現する2次元または3次元の画像に対して、前記交差点を重畳する、
     請求項5に記載のプログラム。
  7.  前記特定する手段は、設定された複数の前記第1種線分に対して複数の前記交差点を特定し、
     前記コンピュータを、前記複数の交差点同士を接続する第3種線分を特定する手段、としてさらに機能させ、
     前記可視化する手段は、前記対象者の身体表面をセンシングした結果、または当該結果に基づいて生成され前記対象者の身体表面を表現する2次元または3次元の画像に対して、前記複数の交差点と当該複数の交差点同士を接続する第3種線分とを重畳する、
     請求項6に記載のプログラム。
  8.  前記コンピュータを、ユーザ指示に応じて、人間の身体の第1部位に関連付けられる複数の関節点の間で設定される補完点の数を制御するパラメータを決定する手段、
     前記補完点を設定する手段は、決定された前記パラメータに従って、前記第1部位に関連付けられる複数の関節点の間に1以上の補完点を設定する、
     請求項2乃至請求項7のいずれかに記載のプログラム。
  9.  前記所定の角度は、90度である、
     請求項2乃至請求項8のいずれかに記載のプログラム。
  10.  前記複数の関節点のうち少なくとも1つについて、当該関節点を通り、かつ向きの異なる複数の第1種線分を設定し、
     前記特定する手段は、前記ベース画像において、前記複数の関節点の各々に設定された全ての前記第1種線分に対して前記交差点を特定する、
     請求項1に記載のプログラム。
  11.  前記コンピュータを、人間の身体の少なくとも1つの部位に対して1以上の前記交差点を関連付ける手段、としてさらに機能させる、
     請求項1乃至請求項10のいずれかに記載のプログラム。
  12.  前記対象者の身体表面をセンシングした結果は、撮影方向の異なる複数の点群データであり、
     前記ベース画像は、前記複数の点群データを3次元位置合わせした結果に基づいて生成される、
     請求項1乃至請求項11のいずれかに記載のプログラム。
  13.  コンピュータによって実行される方法であって、
     対象者の身体表面をセンシングした結果に基づき、当該対象者の身体の関節に対応する複数の関節点を推定するステップと、
     前記対象者の身体表面を表現する2次元のベース画像において、前記複数の関節点のうち少なくとも1つについて、当該関節点を通る第1種線分を設定するステップと、
     前記ベース画像において、前記第1種線分と前記対象者の身体表面とが交差する交差点を特定するステップと
     を具備する方法。
  14.  対象者の身体表面をセンシングした結果に基づき、当該対象者の身体の関節に対応する複数の関節点を推定する手段と、
     前記対象者の身体表面を表現する2次元のベース画像において、前記複数の関節点のうち少なくとも1つについて、当該関節点を通る第1種線分を設定する手段と、
     前記ベース画像において、前記第1種線分と前記対象者の身体表面とが交差する交差点を特定する手段と
     を具備する情報処理装置。
  15.  第1コンピュータおよび第2コンピュータを具備するシステムであって、
     前記第1コンピュータは、
      前記第2コンピュータから対象者の身体表面をセンシングした結果を取得する手段、
      前記対象者の身体表面をセンシングした結果に基づき、当該対象者の身体の関節に対応する複数の関節点を推定する手段、
      前記対象者の身体表面を表現する2次元のベース画像において、前記複数の関節点のうち少なくとも1つについて、当該関節点を通る第1種線分を設定する手段、
      前記ベース画像において、前記第1種線分と前記対象者の身体表面とが交差する交差点を特定する手段、
     を備える、システム。
PCT/JP2023/003889 2022-09-22 2023-02-07 情報処理装置、方法、プログラム、およびシステム WO2024062642A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US18/344,971 US20240104775A1 (en) 2022-09-22 2023-06-30 Information processing apparatus, method, and system

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2022150834A JP7261342B1 (ja) 2022-09-22 2022-09-22 情報処理装置、方法、プログラム、およびシステム
JP2022-150834 2022-09-22

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US18/344,971 Continuation US20240104775A1 (en) 2022-09-22 2023-06-30 Information processing apparatus, method, and system

Publications (1)

Publication Number Publication Date
WO2024062642A1 true WO2024062642A1 (ja) 2024-03-28

Family

ID=86006860

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2023/003889 WO2024062642A1 (ja) 2022-09-22 2023-02-07 情報処理装置、方法、プログラム、およびシステム

Country Status (2)

Country Link
JP (2) JP7261342B1 (ja)
WO (1) WO2024062642A1 (ja)

Citations (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05266149A (ja) * 1992-01-23 1993-10-15 Asahi Chem Ind Co Ltd 型紙の組立形状視覚化方法および装置
WO2002040941A1 (fr) * 2000-11-15 2002-05-23 National Institute Of Advanced Industrial Science And Technology Système de distribution d'informations d'empreintes de pied
JP2004501432A (ja) * 2000-05-12 2004-01-15 ソシエテ・シビル・ティ ピイ シー・インターナショナル 3次元デジタルによる衣服設計方法
JP2007066094A (ja) * 2005-08-31 2007-03-15 Matsushita Electric Ind Co Ltd 姿勢推定装置および姿勢推定方法
US20070135737A1 (en) * 2003-03-17 2007-06-14 Vastano Gaetano F Method for physiological volume measurement and analysis for body volume visualization
JP2008032489A (ja) * 2006-07-27 2008-02-14 Kanazawa Inst Of Technology 人体の3次元形状データ生成方法および3次元形状データ生成装置
CN101958007A (zh) * 2010-09-20 2011-01-26 南京大学 一种采用草绘的三维动画姿态建模方法
JP2012059082A (ja) * 2010-09-09 2012-03-22 Seiren Co Ltd 3次元形状の骨格モデル作成方法及び装置並びに3次元形状の寸法測定方法及び装置
JP2013069262A (ja) * 2011-09-21 2013-04-18 National Cheng Kung Univ デジタル人体モデルの特徴データ構造
JP3207832U (ja) * 2016-09-07 2016-12-08 一般社団法人日本姿勢検定協会 姿勢検査用具
WO2017141958A1 (ja) * 2016-02-15 2017-08-24 学校法人慶應義塾 脊柱配列推定装置、脊柱配列推定方法及び脊柱配列推定プログラム
CN107292948A (zh) * 2016-04-12 2017-10-24 香港理工大学 一种人体建模方法、装置及电子设备
CN108230455A (zh) * 2018-01-31 2018-06-29 东南大学 一种基于骨骼驱动的虚拟服装变形仿真方法
WO2020026677A1 (ja) * 2018-07-31 2020-02-06 株式会社ニコン 検出装置、処理装置、検出方法、及び処理プログラム
WO2022034771A1 (ja) * 2020-08-11 2022-02-17 株式会社三菱ケミカルホールディングス プログラム、方法、情報処理装置
WO2022054366A1 (ja) * 2020-09-09 2022-03-17 高木 りか 姿勢評価プログラム、姿勢評価装置、姿勢評価方法、及び姿勢評価システム

Patent Citations (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05266149A (ja) * 1992-01-23 1993-10-15 Asahi Chem Ind Co Ltd 型紙の組立形状視覚化方法および装置
JP2004501432A (ja) * 2000-05-12 2004-01-15 ソシエテ・シビル・ティ ピイ シー・インターナショナル 3次元デジタルによる衣服設計方法
WO2002040941A1 (fr) * 2000-11-15 2002-05-23 National Institute Of Advanced Industrial Science And Technology Système de distribution d'informations d'empreintes de pied
US20070135737A1 (en) * 2003-03-17 2007-06-14 Vastano Gaetano F Method for physiological volume measurement and analysis for body volume visualization
JP2007066094A (ja) * 2005-08-31 2007-03-15 Matsushita Electric Ind Co Ltd 姿勢推定装置および姿勢推定方法
JP2008032489A (ja) * 2006-07-27 2008-02-14 Kanazawa Inst Of Technology 人体の3次元形状データ生成方法および3次元形状データ生成装置
JP2012059082A (ja) * 2010-09-09 2012-03-22 Seiren Co Ltd 3次元形状の骨格モデル作成方法及び装置並びに3次元形状の寸法測定方法及び装置
CN101958007A (zh) * 2010-09-20 2011-01-26 南京大学 一种采用草绘的三维动画姿态建模方法
JP2013069262A (ja) * 2011-09-21 2013-04-18 National Cheng Kung Univ デジタル人体モデルの特徴データ構造
WO2017141958A1 (ja) * 2016-02-15 2017-08-24 学校法人慶應義塾 脊柱配列推定装置、脊柱配列推定方法及び脊柱配列推定プログラム
CN107292948A (zh) * 2016-04-12 2017-10-24 香港理工大学 一种人体建模方法、装置及电子设备
JP3207832U (ja) * 2016-09-07 2016-12-08 一般社団法人日本姿勢検定協会 姿勢検査用具
CN108230455A (zh) * 2018-01-31 2018-06-29 东南大学 一种基于骨骼驱动的虚拟服装变形仿真方法
WO2020026677A1 (ja) * 2018-07-31 2020-02-06 株式会社ニコン 検出装置、処理装置、検出方法、及び処理プログラム
WO2022034771A1 (ja) * 2020-08-11 2022-02-17 株式会社三菱ケミカルホールディングス プログラム、方法、情報処理装置
WO2022054366A1 (ja) * 2020-09-09 2022-03-17 高木 りか 姿勢評価プログラム、姿勢評価装置、姿勢評価方法、及び姿勢評価システム

Also Published As

Publication number Publication date
JP2024045823A (ja) 2024-04-03
JP2024046583A (ja) 2024-04-03
JP7261342B1 (ja) 2023-04-19

Similar Documents

Publication Publication Date Title
US11468612B2 (en) Controlling display of a model based on captured images and determined information
US20200380594A1 (en) Virtual try-on system, virtual try-on method, computer program product, and information processing device
JP5579014B2 (ja) 映像情報処理装置および方法
KR100722229B1 (ko) 사용자 중심형 인터페이스를 위한 가상현실 상호작용 인체모델 즉석 생성/제어 장치 및 방법
JP6930995B2 (ja) 立体画像生成システム、立体画像生成方法及び立体画像生成プログラム
JP2009297240A (ja) 学習支援装置および学習支援方法
US11331006B2 (en) System and method for human motion detection and tracking
US11156830B2 (en) Co-located pose estimation in a shared artificial reality environment
CN115115810A (zh) 一种基于空间姿态捕捉的多人协同病灶定位与增强展示方法
KR101586010B1 (ko) 증강 현실 기반 가상 피팅을 위한 의상의 물리적 시뮬레이션 장치 및 방법
JP6770208B2 (ja) 情報処理装置
WO2024062642A1 (ja) 情報処理装置、方法、プログラム、およびシステム
KR102310964B1 (ko) 근골격계 증상을 진단하기 위한 전자 장치, 방법, 및 시스템
Narváez et al. Kushkalla: a web-based platform to improve functional movement rehabilitation
US20240104775A1 (en) Information processing apparatus, method, and system
WO2022081745A1 (en) Real-time rendering of 3d wearable articles on human bodies for camera-supported computing devices
JP7482471B2 (ja) 学習モデルの生成方法
JP7473012B2 (ja) 画像処理装置、画像処理方法、及びプログラム
WO2019132780A1 (en) System and method for obtaining data associated with an injury
JP7296164B1 (ja) 情報処理装置、方法、コンテンツ作成プログラム、およびコンテンツ再生プログラム
JP2020528804A (ja) 医療画像の表示
JP7298763B2 (ja) 画像評価装置、画像評価方法及びコンピュータプログラム
JP3613579B2 (ja) 移動物体の運動計測方法ならびにそのための運動計測装置および記憶媒体
CA3127544A1 (en) Recording medium recorded with cardiopulmonary resuscitation training program, cardiopulmonary resuscitation training method, apparatus, and system
RU2021124165A (ru) Способ визуализации динамической анатомической структуры

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: 23867774

Country of ref document: EP

Kind code of ref document: A1