WO2023163305A1 - 딥러닝 기반의 보행 패턴 검출 방법 및 이를 수행하는 컴퓨터 프로그램 - Google Patents

딥러닝 기반의 보행 패턴 검출 방법 및 이를 수행하는 컴퓨터 프로그램 Download PDF

Info

Publication number
WO2023163305A1
WO2023163305A1 PCT/KR2022/014152 KR2022014152W WO2023163305A1 WO 2023163305 A1 WO2023163305 A1 WO 2023163305A1 KR 2022014152 W KR2022014152 W KR 2022014152W WO 2023163305 A1 WO2023163305 A1 WO 2023163305A1
Authority
WO
WIPO (PCT)
Prior art keywords
pattern
peak
gait
determining
target
Prior art date
Application number
PCT/KR2022/014152
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 주식회사 리모
Publication of WO2023163305A1 publication Critical patent/WO2023163305A1/ko

Links

Images

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/11Measuring movement of the entire body or parts thereof, e.g. head or hand tremor, mobility of a limb
    • A61B5/112Gait analysis
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/0033Features or image-related aspects of imaging apparatus classified in A61B5/00, e.g. for MRI, optical tomography or impedance tomography apparatus; arrangements of imaging apparatus in a room
    • 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/11Measuring movement of the entire body or parts thereof, e.g. head or hand tremor, mobility of a limb
    • A61B5/1121Determining geometric values, e.g. centre of rotation or angular range of movement
    • 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/11Measuring movement of the entire body or parts thereof, e.g. head or hand tremor, mobility of a limb
    • A61B5/1126Measuring movement of the entire body or parts thereof, e.g. head or hand tremor, mobility of a limb using a particular sensing technique
    • A61B5/1128Measuring movement of the entire body or parts thereof, e.g. head or hand tremor, mobility of a limb using a particular sensing technique using image analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion

Definitions

  • the present invention relates to a gait pattern detection method and a computer program for performing the same, and more particularly, to extract 3D coordinates based on 2D image data, and to extract gait patterns (gait cycle and gait) based on the extracted 3D coordinates. It relates to a method for detecting an event) and a computer program for performing the same.
  • a walking motion is standardized as the most basic motion for musculoskeletal system diagnosis and has a general pattern. That is, the gait cycle is divided into a stance phase and a swing phase, and consists of gait events such as heel strike (or initial contact) and toe off. do.
  • a technical problem to be solved by the present invention is to provide a method and program for detecting a gait pattern of a detection target based on 3D coordinate analysis extracted from 2D image data without equipment for measuring ground reaction force.
  • a computer program stored in a computer readable storage medium includes instructions for causing a processor to perform the following steps, which include obtaining two-dimensional image data of a detection target, and Extracting 3D coordinates based on image data, the 3D coordinates include key points for the left/right hip joint, left/right ankle, and pelvis of the detection subject, the number of steps per minute (cadence) of the detection subject ), extracting a first target angle pattern that is an angle pattern of a left or right hip joint keypoint, and a first reference angle pattern that is an angle pattern corresponding to the number of steps per minute of a detection target among a plurality of pre-collected angle patterns Determining a first target angle pattern and a first reference angle pattern to perform pattern matching (cross-correlate) to generate first filtering data, A target that is a distance pattern between the left and right ankle keypoints in the walking direction Extracting a distance pattern, determining a reference distance pattern, which is a distance pattern corresponding to the number of steps per minute
  • Generating filtering data determining a gait cycle that satisfies both the first and second filtering data, the maximum value of the vertical distance between the pelvis keypoint and the left or right ankle keypoint in the target distance pattern graph within the gait cycle Determining whether the difference between the minimum values is greater than or equal to a reference value, determining whether the gait in the gait cycle is an effective gait when the difference between the maximum value and the minimum value of the vertical distance is greater than or equal to a reference value, and determining that the gait in the gait cycle is an effective gait If determined, determining heel-strike and toe-off points based on the position and slope on the target distance pattern graph in the gait cycle.
  • the target distance pattern graph within the gait cycle includes two positive (+) peaks and one negative (-) peak, and the target distance pattern graph includes (a) the first peak, which is the most adjacent negative peak before the gait cycle, and The interval between the second peak, which is the first positive peak in the gait cycle, (b) the interval between the second peak and the third peak, which is the negative peak in the gait cycle, and (c) the interval between the third peak and the last positive peak in the gait cycle.
  • the maximum and minimum values of the vertical distance in each of the sections (a) to (c) may include the step of determining whether all the differences in are equal to or greater than a reference value.
  • the reference value may be 30 mm (mm).
  • the target distance pattern graph within the gait cycle includes two positive (+) peaks and one negative (-) peak, and the target distance pattern graph includes (a) the first peak, which is the most adjacent negative peak before the gait cycle, and The interval between the second peak, which is the first positive peak in the gait cycle, (b) the interval between the second peak and the third peak, which is the negative peak in the gait cycle, and (c) the interval between the third peak and the last positive peak in the gait cycle.
  • the steps are (a) determining the point where the slope of the forward slope of the target distance pattern graph in the interval is 95% or the slope of the forward slope in the interval of 70% to 95% is 20% of the maximum forward slope as the heel-strike. and determining a section between a heel-strike in section (a) and a heel-strike in section (c) as a final gait cycle.
  • the steps include: extracting a second target angle pattern that is an angle pattern of right or left hip joint keypoints, wherein the right or left hip joint keypoint is a hip joint keypoint on the opposite side of the hip joint that is the target of the first target angle pattern; and a second target angle pattern among the plurality of angle patterns. Determining a second reference angle pattern to be pattern-matched with the target angle pattern and performing pattern matching between the second target angle pattern and the second reference angle pattern to generate third filtered data, The determining of the gait period may include determining a gait period that satisfies all of the first to third filtering data.
  • the computer program includes instructions for causing a processor to perform the following steps, the steps of which are: Obtaining two-dimensional image data of a detection target and extracting 3-dimensional coordinates based on the 2-dimensional image data - the 3-dimensional coordinates include key points for the hip joint, left ankle and right ankle of the detection target -, the angular pattern of the hip joint key points Extracting 1 target angle pattern; determining a first reference angle pattern to be pattern-matched with a first target angle pattern among a plurality of previously collected angle patterns; and the first target angle pattern and the first reference angle pattern.
  • first filtering data by performing pattern matching (cross-correlation), extracting a target distance pattern, which is a distance pattern in the walking direction between the left and right ankle keypoints, and target among a plurality of pre-collected distance patterns. Determining a reference distance pattern for pattern matching with a distance pattern, generating second filtering data by performing pattern matching between the target distance pattern and the reference distance pattern, and satisfying both the first and second filtering data and determining the gait cycle.
  • the steps further include determining the number of steps per minute of the detection target, wherein the determining of the first reference angle pattern comprises determining an angle pattern corresponding to the number of steps per minute of the detection target among a plurality of angle patterns.
  • the step of determining one reference distance pattern may include determining a distance pattern corresponding to the number of steps per minute of the detection target from among a plurality of distance patterns as the reference distance pattern. .
  • the steps include extracting a second target angle pattern that is an angle pattern of a sub hip joint keypoint, wherein the sub hip joint keypoint is a hip joint keypoint opposite to the hip joint keypoint that is the target of the first target angle pattern, and a second target angle pattern among the plurality of angle patterns.
  • Determining a second reference angle pattern to perform pattern matching with and performing pattern matching of the second target angle pattern and the second reference angle pattern to generate third filtering data further comprising:
  • the determining may include determining a gait cycle that satisfies all of the first to third filtering data.
  • the dimensional coordinates further include keypoints for the pelvis of the detection subject, and the steps are based on whether a difference between the maximum value and the minimum value of the vertical distance between the pelvis keypoint and the left or right ankle keypoint in the gait cycle is greater than or equal to a reference value.
  • the step of determining the validity of my gait may be further included.
  • the steps may further include determining heel-strike and toe-off points based on a position and a slope on a graph of a target distance pattern in a gait cycle.
  • the steps may further include determining a modified modified gait period based on the determined heel-strike and toe-off points.
  • the computer program includes instructions for causing a processor to perform the following steps, which steps obtain two-dimensional image data of a detection target and , Extracting 3D coordinates based on 2D image data - 3D coordinates include key points for the left ankle and right ankle of the detection subject - Temporary gait cycle based on 2D image data and 3D coordinates Determining and heel-strike and toe-off based on the temporary gait cycle and the position and slope on the object distance pattern graph, which is the distance pattern in the walking direction between the left and right ankle key points of the detection subject ( and determining a toe-off point.
  • the three-dimensional coordinates further include a keypoint for the pelvis of the detection target, and the steps determine whether the difference between the maximum value and the minimum value of the vertical distance between the pelvis keypoint and the left or right ankle keypoint in the target distance pattern graph is greater than or equal to a reference value. If the difference between the determining step and the maximum value and the minimum value of the vertical distance is greater than or equal to a reference value, further comprising determining that the gait in the temporary gait cycle is an effective gait, wherein the step of determining the heel-strike and toe-off points , can be performed when it is determined that walking in the temporary gait cycle is an effective gait.
  • the target distance pattern graph within the temporary gait cycle includes two positive (+) peaks and one negative (-) peak, and the target distance pattern graph is (a) the negative closest to the temporary gait cycle at the point before the temporary gait cycle.
  • the interval between the first peak, which is a peak, and the second peak which is the first positive peak in the temporal gait period, (b) the interval between the second peak and the third peak, which is a negative peak in the temporal gait period, and (c) the third peak and
  • the reference value may be 30 mm (mm).
  • the target distance pattern graph within the temporary gait cycle includes two positive (+) peaks and one negative (-) peak, and the target distance pattern graph is (a) the negative closest to the temporary gait cycle at the point before the temporary gait cycle.
  • the step of determining the heel-strike and toe-off point includes a section between the fourth peak, which is the last positive peak in the temporary gait period, and determines whether (c) 95% of the forward slope of the target distance pattern graph in the section
  • the method may include determining a point or a point where the slope of the forward slope becomes 20% of the maximum forward slope in the range of 70% to 95% of the point or the forward slope as a heel-strike.
  • Determining the heel-strike and toe-off points may include (c) a point at 85% of the reverse slope of the target distance pattern graph in the section or a slope of the reverse slope in the section of 70% to 85% of the reverse slope A step of determining a point at which 20% of the maximum reverse slope is toe-off may be included.
  • the steps are (a) Hill- 95% of the forward slope of the target distance pattern graph in the interval or the point where the slope of the forward slope becomes 20% of the maximum forward slope in the interval of 70% to 95% of the forward slope.
  • the method may further include determining a strike and determining a section between a heel-strike in section (a) and a heel-strike in section (c) as a final gait cycle.
  • the deep learning-based gait pattern detection method and the computer program performing the method according to an embodiment of the present invention it is possible to detect the gait pattern of a detection target without equipment for measuring ground reaction force.
  • 1 is a diagram for explaining a general gait cycle and gait events.
  • FIGS. 2 and 3 are views for explaining a detection device according to some embodiments of the present invention.
  • 4 and 5 are diagrams for explaining the configuration of a processor of the detection device.
  • FIG. 6 is a diagram for explaining a method for detecting a gait cycle and a gait event according to some embodiments of the present invention.
  • FIG. 7 is a diagram for explaining a method of determining a gait period according to some embodiments of the present invention.
  • FIG. 8 is a diagram for explaining angular patterns of hip joint keypoints according to some embodiments of the present invention.
  • FIG. 9A is a diagram exemplarily representing a graph of a target angle pattern of a detection target
  • FIG. 9B is a diagram exemplarily representing a graph of a reference angle pattern according to the number of steps per minute
  • FIG. 9C is a pattern of a target angle pattern and a reference angle pattern. It is a drawing which expresses the matching result by way of example.
  • FIG. 10 is a diagram for explaining a distance pattern between left/right ankle keypoints according to some embodiments of the present invention.
  • FIG. 11A is a diagram exemplarily representing a target distance pattern graph of a detection target
  • FIG. 11B is a diagram exemplarily representing a reference distance pattern graph according to the number of steps per minute
  • FIG. 11C is a pattern of a target distance pattern and a reference distance pattern. It is a drawing which expresses the matching result by way of example.
  • FIG. 12 is a diagram exemplarily representing a gait cycle and sections (a) to (c) determined according to some embodiments of the present invention.
  • FIG. 13 is a diagram for explaining a method of determining validity of a gait cycle according to some embodiments of the present invention.
  • 14A to 14C are diagrams for explaining a vertical distance between a pelvis key point and an ankle key point.
  • FIG. 15 is a diagram for explaining a method of determining the effectiveness of walking based on the vertical distance of FIG. 14A.
  • 16 is a diagram for explaining a method of determining a gait event according to some embodiments of the present invention.
  • 17 is a diagram for explaining a method of determining a heel-strike point in a distance graph between left/right ankle keypoints.
  • 18 is a diagram for explaining a method of determining a toe-off point in a distance graph between left/right ankle keypoints.
  • a walking motion is standardized as the most basic motion for musculoskeletal system diagnosis and has a general pattern. That is, the gait cycle is divided into a stance phase and a swing phase, and consists of gait events such as heel strike (or initial contact) and toe off. do.
  • FIGS. 2 and 3 are views for explaining a detection device according to some embodiments of the present invention.
  • the detection apparatus 1000 obtains 2D image data (DT_IMAGE) including a walking image of a target subject to be detected, and based on this, the gait cycle of the subject to be detected and/or Detection data (DT_DETECT) including walking events can be output.
  • the 2D image data DT_IMAGE may be data received from a user terminal such as a smart phone or a tablet PC.
  • the 2D image data DT_IMAGE may be obtained from a separate hardware device including a camera.
  • the 2D image data DT_IMAGE may be data directly acquired from a camera module (not shown) mounted in the detection device 1000 .
  • the detection device 1000 performs various processing functions such as functions for generating a neural network, training (or learning) a neural network, or retraining a neural network. It corresponds to a computing device having For example, the detection apparatus 1000 may be implemented in various types of devices such as a personal computer (PC), a server device, and a mobile device.
  • PC personal computer
  • server device a server device
  • mobile device a mobile device
  • a detection device 1000 may include a communication unit 1100, a memory 1200, and a processor 1300.
  • the communication unit 1100 may connect communication between the detection device 1000 and a user terminal or an external device.
  • the communication unit 1100 is a predetermined short-distance communication protocol (eg Wi-Fi (wireless fidelity), BT (Bluetooth), NFC (near field communication), predetermined network communication (eg Internet, LAN (local area network), wire area network (WAN), telecommunication network, cellular network, satellite network, or plain old telephone service (POTS) or wired communication protocol (such as universal serial bus (USB), high definition multimedia interface (HDMI), etc.) can
  • Wi-Fi wireless fidelity
  • BT Bluetooth
  • NFC near field communication
  • predetermined network communication eg Internet, LAN (local area network), wire area network (WAN), telecommunication network, cellular network, satellite network, or plain old telephone service (POTS) or wired communication protocol (such as universal serial bus (USB), high definition multimedia interface (HDMI), etc.
  • USB universal serial bus
  • HDMI high definition multimedia interface
  • the memory 1200 may store commands or data received from or generated by other components of the detection device 1000 .
  • the memory 1200 may include a program memory and a data memory, and a program for controlling a general operation of the detection device 1000 may be stored in the program memory.
  • memory 1200 may include Compact Flash (CF), Secure Digital (SD), Micro Secure Digital (Micro-SD), Mini Secure Digital (Mini-SD), Extreme Digital (xD), Memory Stick, and the like. It may further include an external memory of.
  • the memory 1200 may include a disk storage device such as a hard disk drive (HDD) and a solid state disk (SSD).
  • HDD hard disk drive
  • SSD solid state disk
  • the processor 1300 extracts 3D coordinates based on the 2D image data (DT_IMAGE) of the detection target through the gait detection learning unit 1310 and the gait detection data generator 1320, and based on this, the gait of the detection target It is possible to perform calculations for detecting cycles and gait events.
  • DT_IMAGE 2D image data
  • the processor 1300 may include an artificial intelligence learning model that is learned and driven using an artificial neural network.
  • An artificial neural network is a computing system that mimics the way the human brain processes information.
  • a deep neural network is one method of implementing an artificial neural network, and may include a plurality of layers.
  • a deep neural network has an input layer to which input data is applied, an output layer that outputs result values derived through prediction based on input data based on learning, and a gap between the input layer and the output layer. contains multiple hidden layers.
  • a deep neural network is classified into a convolutional neural network, a recurrent neural network, and the like according to an algorithm used to process information.
  • a method of learning artificial neural networks is called deep learning, and as described above, various algorithms such as convolutional neural networks and recurrent neural networks may be used in deep learning.
  • learning the artificial neural network may refer to determining and updating weights and biases between layers or weights and biases between a plurality of neurons belonging to different layers among adjacent layers.
  • a plurality of hierarchical structures, a plurality of layers, or weights and biases between neurons may be collectively referred to as connectivity of an artificial neural network.
  • learning an artificial neural network can refer to building and learning connectivity.
  • the data bus 1400 may be a circuit that connects the above-described components of the detection device 1000 to each other and transfers communication (eg, a control message) between the above-described components.
  • each component of the processor 1300 may be a processed neural network.
  • the gait detection learning unit 1310 and the gait detection data generator 1320 may be a processed neural network.
  • they are separately shown in the drawings to show that they can be functionally and logically separated, and do not necessarily mean that they are physically implemented as separate components or separate codes.
  • 4 and 5 are diagrams for explaining the configuration of a processor of the detection device.
  • the gait detection learning unit 1310 of the processor 1300 may generate a trained neural network by repeatedly training (learning) a given initial neural network.
  • Creating a trained neural network can mean determining neural network parameters.
  • the parameters may include, for example, various types of data input/output to the neural network, such as input/output activations, weights, and biases of the neural network.
  • the parameters of the neural network can be tuned to compute a more accurate output for a given input.
  • the gait detection learning unit 1310 may transmit the trained neural network to the gait detection data generator 1320 .
  • the gait detection data generator 1320 may be included in a mobile device, an embedded device, or the like.
  • the gait detection data generator 1320 may be dedicated hardware for driving a neural network.
  • the gait detection data generator 1320 may drive a trained neural network as it is or a neural network obtained by processing (eg, quantizing) the trained neural network.
  • the gait detection data generation unit 1320 driving the processed neural network may be implemented in a separate and independent device from the gait detection learning unit 1310 .
  • the gait detection data generating unit 1320 is not limited thereto and may be implemented in the same device as the gait detection learning unit 1310 .
  • the processor 1300 may include a steps per minute determination module 1330, a reference pattern determination module 1340, a gait cycle determination module 1350, and a gait event determination module 1360.
  • the steps per minute determination module 1330, the reference pattern determination module 1340, the gait cycle determination module 1350, and the gait event determination module 1360 each include a gait detection learning unit 1310 and a gait detection unit.
  • a data generator 1320 may be included.
  • the steps per minute determination module 1330, the reference pattern determination module 1340, the gait cycle determination module 1350, and the gait event determination module 1360 may be functionally and logically separated. It is shown separately in the drawings, and does not necessarily mean that it is physically a separate component or implemented as a separate code.
  • the steps per minute determination module 1330 may determine the number of steps per minute (cadence) of the detection target. According to an embodiment, the step per minute determination module 1330 may determine the number of steps per minute of the detection target based on the 2D image data DT_IMAGE. According to another embodiment, the steps per minute determination module 1330 may determine the number of steps per minute of the detection target based on the extracted 3D coordinates.
  • the reference pattern determination module 1340 may determine the reference pattern based on the number of steps per minute of the detection target determined by the step per minute determination module 1330 . For example, the reference pattern determination module 1340 may determine a pattern corresponding to the number of steps per minute of the detection target from among a plurality of patterns stored in the memory 1200 as the reference pattern.
  • the gait cycle determination module 1350 may generate first and second filtering data based on the 3D coordinates, and determine a gait cycle satisfying both the first and second filtering data.
  • the gait event determining module 1360 may determine a gait event within the gait cycle based on the left/right ankle keypoint distances before and after the determined gait cycle.
  • FIG. 6 is a diagram for explaining a method for detecting a gait cycle and a gait event according to some embodiments of the present invention.
  • the detection device 1000 may acquire 2D image data (DT_IMAGE) of a target person to be detected.
  • the 2D image data DT_IMAGE may include a walking image of a detection subject.
  • the detection device 1000 may extract 3D coordinates based on 2D image data.
  • the 3D coordinates may include key points for the left/right hip joints, left/right ankles, and pelvis of the detection target. Each keypoint can be extracted in the form of a point or a line.
  • the detection device 1000 may determine a gait cycle based on the extracted 3D coordinates. The operation of determining the gait cycle will be described later in detail with reference to FIGS. 7 to 12 .
  • the detection apparatus 1000 may determine the validity of the detection target's gait within the determined gait cycle. That is, it may be determined whether a gait within the gait cycle is a valid gait or a gait (or noise) that is not suitable for determining the gait cycle. The operation of determining the effectiveness of walking will be described later in detail with reference to FIGS. 13 to 15 .
  • the detection apparatus 1000 may determine a gait event of the gait cycle, that is, a heel-strike (HS) point and a toe-off (TO) point, when it is determined that the detection subject's gait within the gait cycle is valid. .
  • a gait event of the gait cycle that is, a heel-strike (HS) point and a toe-off (TO) point.
  • Step S3000 of FIG. 6 may include steps S3100 to S3800.
  • the step per minute determination module 1330 may determine the number of steps per minute of the detection target. According to an embodiment, the steps per minute determination module 1330 may determine the number of steps per minute of the detection target based on the 3D coordinates. According to another embodiment, the step per minute determination module 1330 may determine the number of steps per minute of the detection target based on the 2D image data DT_IMAGE.
  • FIG. 8 is a diagram for explaining an angular pattern of a hip joint keypoint according to some embodiments of the present invention
  • FIG. 9a is a diagram exemplarily representing a target angle pattern graph of a detection target
  • FIG. 9b is a reference according to the number of steps per minute
  • 9C is a diagram that exemplarily represents an angle pattern graph
  • FIG. 9C is a diagram that exemplarily represents a result of pattern matching between a target angle pattern and a reference angle pattern.
  • the gait cycle determination module 1350 determines the target angle for the target angle ⁇ TG based on 3-dimensional coordinates, specifically, the left and/or right hip joint keypoints KP_HJ. patterns can be extracted. For convenience of description, it is assumed that a target angle pattern is extracted based on the right hip joint keypoint, and hereinafter, “hip joint keypoint” may mean the right hip joint keypoint.
  • the target angle ⁇ TG may refer to an angle formed between the hip joint keypoint KP_HJ and a direction perpendicular to the ground on the sagittal plane of the subject to be detected.
  • the sagittal plane means a plane that divides the body into left and right sides, and may be expressed as a longitudinal section.
  • the hip joint keypoint (KP_HJ) can be extracted in the form of a line, and the angle formed by the hip joint keypoint (KP_HJ) and the reference line (a line perpendicular to the ground) is defined as the target angle ( ⁇ TG ) It can be.
  • 9A is an example of a target angle pattern graph of a detection target, and it is assumed that a displayed graph among a plurality of graphs is a target angle pattern graph of a detection target.
  • the reference pattern determination module 1340 may determine a pattern for the reference angle ⁇ REF to be cross-correlated with the pattern for the target angle ⁇ TG .
  • 9B is an example of a reference angle pattern, and among a plurality of pre-stored angle patterns, an angle pattern corresponding to the number of steps per minute of a detection target may be determined as the reference angle pattern.
  • the gait cycle determination module 1350 may generate first filtering data based on the target angle pattern and the reference angle pattern.
  • the first filtering data may be generated by performing pattern matching on the determined target angle pattern and the reference angle pattern.
  • FIG. 9C is a diagram illustratively illustrating a pattern matching result of a target angle pattern and a reference angle pattern.
  • the first filtering data may include the pattern matching result and information on the first temporary gait period T TEMP1 . That is, a section with an excellent pattern matching result may be determined as the first temporary gait period T TEMP1 according to a predefined criterion.
  • FIG. 10 is a diagram for explaining a distance pattern between left/right ankle keypoints according to some embodiments of the present invention
  • FIG. 11a is a diagram exemplarily representing a target distance pattern graph of a detection target
  • FIG. 11b is steps per minute
  • 11C is a diagram exemplarily representing a reference distance pattern graph according to numbers
  • FIG. 11C is a diagram exemplarily representing a result of pattern matching between a target distance pattern and a reference distance pattern.
  • the gait cycle determination module 1350 determines 3-dimensional coordinates, specifically, the left ankle keypoint (KP_ANK(L)) and the right ankle keypoint (KP_ANK(R)). Based on this, it is possible to extract a target angle pattern for the target distance D1 TG .
  • the target distance D1 TG means the distance between the left ankle keypoint KP_ANK(L) and the right ankle keypoint KP_ANK(R) of the detection target in the traveling direction.
  • the target distance D1 TG means the distance between the left ankle keypoint KP_ANK(L) and the right ankle keypoint KP_ANK(R) in the direction in which the detection target travels parallel to the ground.
  • 11A is an example of a target-distance pattern graph of a detection target, and it is assumed that one of a plurality of graphs displayed is the detection target-target distance pattern graph.
  • the distance between the left/right ankle keypoints KP_ANK(R) based on the right ankle keypoint KP_ANK(R) of the detection target will be described.
  • the right ankle keypoint KP_ANK(R) has a positive (+) value when located in the front in the forward direction, and a negative (-) value when located behind.
  • this is an example and the present invention can be applied based on the left ankle key point (KP_ANK(L)).
  • the reference pattern determination module 1340 may determine a pattern for the reference distance ( DREF ) to be pattern-matched with a pattern graph for the target distance (D1 TG ).
  • 11B is an example of a pattern for the reference distance D REF , and among a plurality of pre-stored distance patterns, a distance pattern corresponding to the number of steps per minute of the detection target may be determined as the reference distance pattern.
  • the gait cycle determination module 1350 may generate second filtering data based on the target distance pattern and the reference distance pattern.
  • the second filtering data may be generated by performing pattern matching on the determined target distance pattern and the reference distance pattern.
  • 11C is a diagram illustratively illustrating a pattern matching result of a target distance pattern and a reference distance pattern, and the second filtering data may include the pattern matching result and information on the second temporary gait period T TEMP2 . That is, a section with an excellent pattern matching result may be determined as the second temporary gait period T TEMP2 according to a predefined criterion.
  • FIG. 12 is a diagram exemplarily representing a gait cycle and sections (a) to (c) determined according to some embodiments of the present invention.
  • the gait cycle determining module 1350 may determine the gait cycle T.
  • the first temporary gait period T TEMP1 included in the first filtering data determined based on the pattern of the target angle ⁇ TG and the second filtering data included in the second filtering data determined based on the pattern of the target distance D1 TG A section satisfying all of the temporary gait period T TEMP2 may be determined as the gait period T.
  • the determined gait cycle T is expressed in the target distance D1 TG of the detection target, that is, the distance graph between the left ankle keypoint KP_ANK(L) and the right ankle keypoint KP_ANK(R).
  • the gait cycle T may include two positive (+) peaks (Peak2 and Peak4) and one negative (-) peak (Peak3).
  • one negative peak before the gait cycle is defined as the first peak (Peak1)
  • three peaks within the gait cycle are defined as the second peak (Peak2), the third peak (Peak3), and the fourth peak (Peak4).
  • the interval between the first peak (Peak1) and the second peak (Peak2) is (a) interval (Pa)
  • the interval between the second peak (Peak2) and the third peak (Peak3) is (b) interval (Pb)
  • the section between the third peak (Peak3) and the fourth peak (Peak4) is defined as (c) section (Pc).
  • third filtering data is generated by performing pattern matching between an angle pattern of the hip joint keypoint on the opposite side of the hip joint keypoint and a reference angle pattern, which is a target of generating the first filtering data
  • the method may further include determining a gait cycle that satisfies all of the third filtering data. For example, the first filtered data and the first temporary gait cycle are determined based on the right hip joint keypoint, the third filtered data and the third temporary gait cycle are determined based on the left hip joint keypoint, and the first through third filtering data are determined.
  • the accuracy of detection can be further improved by determining a gait period that satisfies all data.
  • FIG. 13 is a diagram for explaining a method of determining the validity of a gait cycle according to some embodiments of the present invention
  • FIGS. 14a to 14c are diagrams for explaining a vertical distance between a pelvis keypoint and an ankle keypoint
  • FIG. 15 is a diagram for explaining a method of determining the effectiveness of walking based on the vertical distance of FIG. 14A.
  • the detection apparatus 1000 may determine the validity of the gait of the detection target within the gait period T.
  • Step S4000 of FIG. 6 may include steps S4100 and S4200.
  • the vertical distance (D2 TG ) between the pelvis keypoint (KP_PV) and the right ankle keypoint (KP_ANK(R)) or the left ankle keypoint (KP_ANK(L)) in the target distance pattern graph ) can be detected.
  • the vertical distance D2 TG may mean an extension direction of a detection target perpendicular to the ground.
  • a distance between the right ankle keypoint (KP_ANK(R)) and the left ankle keypoint (KP_ANK(L)) to an ankle keypoint having a close vertical distance to the pelvis keypoint (KP_PV) is defined as the vertical distance (D2 TG ).
  • the subject of the vertical distance (D2 TG ) measured in a specific section may be preset as the right ankle keypoint (KP_ANK(R)) or the left ankle keypoint (KP_ANK(L)).
  • the vertical distance (D2 TG ) when the distance between the right ankle key point (KP_ANK(R)) and the pelvis key point (KP_PV) of the detection target is set as the vertical distance (D2 TG ), when the right foot is lifted as shown in FIG. 14B, the vertical distance When (D21) is relatively short and the right foot touches the ground, the vertical distance (D22) may be relatively long.
  • step S4200 the validity of walking within the gait cycle T may be determined based on the detected vertical distance D2 TG .
  • 15 shows and describes the maximum value (max) and minimum value (min) of the vertical distance (D2 TG ) in (a) section (Pa), but (b) section (Pb) and (c) section ( Pc) can also be applied in substantially the same way.
  • (diff) is greater than or equal to a predefined reference value
  • the reference value may be 30 mm (mm).
  • the difference between the maximum value (max) and minimum value (min) of the vertical distance (D2 TG ) in each of (a) section (Pa), (b) section (Pb) and (c) section (Pc) ( diff) is greater than or equal to the reference value, it can be determined that the gait in the gait period T is an effective gait.
  • the ankle keypoint that is the target of the vertical distance (D2 TG ) may be set differently.
  • the distance between the right ankle key point (KP_ANK(R)) and the pelvic key point (KP_PV) is measured as the vertical distance (D2 TG ), and in (b) section (Pb), the left
  • the distance between the ankle key point (KP_ANK(L)) and the pelvis key point (KP_PV) is measured as a vertical distance (D2 TG )
  • in (c) section (Pc) the right ankle key point (KP_ANK(R)) and the pelvis key point
  • the distance between KP_PV) can be measured as the vertical distance (D2 TG ).
  • the gait cycle (T) is an invalid gait (eg, first step, direction change). etc.) can be determined. It is possible to determine whether it is the first step by determining the vertical distance (D2 TG ) in the immediately preceding section ((a) section (Pa) of the gait cycle (T), and (b) section included in the gait cycle (T) In the (Pb) and (c) sections (Pc), it is possible to accurately determine whether a step is a valid step by checking whether the swing phase has occurred.
  • FIG. 16 is a diagram for explaining a method for determining a gait event according to some embodiments of the present invention
  • FIG. 17 is a diagram for explaining a method for determining a heel-strike point in a distance graph between left/right ankle keypoints
  • 18 is a diagram for explaining a method of determining a toe-off point in a distance graph between left/right ankle keypoints.
  • the detection apparatus 1000 may determine a walking event within a gait cycle based on a location and a slope of a target distance pattern graph of a detection subject.
  • Step S5000 of FIG. 6 may include steps S5100 to S5300.
  • sections (a) to (c) may be determined in the object distance pattern graph of the detection subject.
  • the content of determining the ranges (Pa, Pb, Pc) of (a) to (c) based on the four peaks (Peak1, Peak2, Peak3, and Peak4) is substantially the same as that described with reference to FIG. 12 .
  • a heel-strike (HS) point may be determined based on the forward position and slope in the section (Pc).
  • an early point may be determined as a heel-strike (HS) point. That is, the heel-strike (HS) point, which is the end point of the gait cycle (T), can be determined using the position and slope of the pattern graph for the target distance (D1 TG ) in (c) section (Pc).
  • (a) the heel-strike (HS) point determined in the section (Pa) and (c) the heel-strike (HS) point determined in the section (Pc) are used as start and end points, respectively, to determine the final gait cycle.
  • a determining step may be further included. That is, an accurate gait cycle can be corrected through gait event detection.
  • a toe-off (TO) point may be determined based on the backward position and slope in the section (Pc).
  • the gait event specifically the toe-off time point, can be more accurately determined using the position and slope of the pattern graph with respect to the target distance D1 TG in the section Pc.
  • phrases such as “at least one of B or C” may include any one of the items listed together in the corresponding one of the phrases, or all possible combinations thereof.
  • Terms such as “first” and “second” may simply be used to distinguish a corresponding component from other corresponding components, and do not limit the corresponding components in other respects (eg, importance or order).
  • module used in this document may include a unit implemented in hardware, software, or firmware, and may be used interchangeably with terms such as logic, logic block, component, or circuit, for example.
  • a module may be an integrally constructed component or a minimal unit of components or a portion thereof that performs one or more functions.
  • the module may be implemented in the form of an application-specific integrated circuit (ASIC).
  • ASIC application-specific integrated circuit
  • Various embodiments of this document may be implemented as software including one or more instructions stored in a storage medium readable by a machine (eg, the detection device 1000).
  • a device eg, the processor 1300 of the detection device 1000
  • the one or more instructions may include code generated by a compiler or code executable by an interpreter.
  • the device-readable storage medium may be provided in the form of a non-transitory storage medium.
  • 'non-temporary' only means that the storage medium is a tangible device and does not contain a signal (e.g. electromagnetic wave), and this term refers to the case where data is stored semi-permanently in the storage medium. It does not discriminate when it is temporarily stored.
  • the method according to various embodiments disclosed in this document may be included and provided in a computer program product.
  • Computer program products may be traded between sellers and buyers as commodities.
  • a computer program product is distributed in the form of a device-readable storage medium (eg compact disc read only memory (CD-ROM)), or through an application store or between two user devices (eg smartphones). It can be distributed (e.g., downloaded or uploaded) directly or online.
  • a device-readable storage medium such as a manufacturer's server, an application store server, or a relay server's memory.
  • each component eg, module or program of the components described above may include a singular object or a plurality of entities.
  • one or more components or operations among the aforementioned components may be omitted, or one or more other components or operations may be added.
  • a plurality of components eg modules or programs
  • the integrated component may perform one or more functions of each of the plurality of components identically or similarly to those performed by a corresponding component of the plurality of components prior to the integration. .
  • operations performed by modules, programs, or other components are executed sequentially, in parallel, iteratively, or heuristically, or one or more of the operations are executed in a different order, omitted, or , or one or more other operations may be added.

Landscapes

  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Public Health (AREA)
  • Medical Informatics (AREA)
  • Biomedical Technology (AREA)
  • General Health & Medical Sciences (AREA)
  • Pathology (AREA)
  • Veterinary Medicine (AREA)
  • Surgery (AREA)
  • Animal Behavior & Ethology (AREA)
  • Biophysics (AREA)
  • Heart & Thoracic Surgery (AREA)
  • Molecular Biology (AREA)
  • Physiology (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • Dentistry (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Radiology & Medical Imaging (AREA)
  • Nuclear Medicine, Radiotherapy & Molecular Imaging (AREA)
  • Geometry (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Measurement Of The Respiration, Hearing Ability, Form, And Blood Characteristics Of Living Organisms (AREA)
  • Evolutionary Computation (AREA)
  • Databases & Information Systems (AREA)
  • Epidemiology (AREA)
  • Primary Health Care (AREA)
  • Data Mining & Analysis (AREA)
  • Signal Processing (AREA)
  • Psychiatry (AREA)
  • Mathematical Physics (AREA)
  • Fuzzy Systems (AREA)

Abstract

본 발명의 일 실시예에 따른 컴퓨터 판독 가능한 저장매체에 저장된 컴퓨터 프로그램은, 지면 반력을 측정하는 장비없이 2차원 영상 데이터로부터 추출한 3차원 좌표 분석에 기초하여 검출 대상자의 보행 패턴을 검출하는 방법 및 프로그램을 제공하기 위해 프로세서로 하여금 이하의 단계들을 수행하게 하기 위한 명령들을 포함하며, 단계들은 검출 대상자의 2차원 영상 데이터를 획득하고, 2차원 영상 데이터에 기초하여 3차원 좌표를 추출하는 단계 -3차원 좌표는 검출 대상자의 좌측/우측 고관절(hip joint), 좌측/우측 발목 및 골반에 대한 키포인트를 포함함 -, 검출 대상자의 분당 걸음수(cadence)를 판단하는 단계를 포함한다.

Description

딥러닝 기반의 보행 패턴 검출 방법 및 이를 수행하는 컴퓨터 프로그램
본 발명은 보행 패턴 검출 방법 및 이를 수행하는 컴퓨터 프로그램에 관한 것으로, 더욱 상세하게는 2차원 영상 데이터에 기초하여 3차원 좌표를 추출하고, 추출된 3차원 좌표에 기초하여 보행 패턴(보행주기 및 보행이벤트)을 검출하는 방법 및 이를 수행하는 컴퓨터 프로그램에 관한 것이다.
최근 고령화에 따라 신경, 근육 손상으로 인한 보행 이상을 호소하는 노령 인구가 증가하고 있다. 이에 따라 근골격계 질환을 간편하게 진단하고 예측할 수 있는 생체 신호 데이터 수집에 관한 방법이 필요한 상황이다.
도 1을 참조하면, 보행 동작은 근골격계 진단을 위한 가장 기본적인 움직임으로 정형화되어 있으며 일반적인 패턴을 가지고 있다. 즉, 보행주기(gait cycle)는 입각기(Stance phase) 및 유각기(Swing phase)로 구분되고, 힐-스트라이크(Heel Strike 또는 Initial contact), 토-오프(Toe off) 등의 보행이벤트로 구성된다.
국내공개특허 제2021-0129862호를 비롯한 종래 보행주기 및 보행이벤트를 검출하기 위한 기술에서는 지면 반력을 측정하는 장비를 이용하여 검출 대상자의 보행주기, 족압 등을 검출하는 기술이 고안되었으나, 이 경우 물리적인 지면 반력을 측정하기 위한 고가의 장비가 요구되고, 이러한 장비가 구비된 공간에서 측정해야 한다는 공간적 제한이 존재한다.
본 발명이 해결하고자 하는 기술적 과제는 지면 반력을 측정하는 장비없이 2차원 영상 데이터로부터 추출한 3차원 좌표 분석에 기초하여 검출 대상자의 보행 패턴을 검출하는 방법 및 프로그램을 제공하는 것이다.
본 발명의 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 해당 기술 분야의 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
본 발명의 일 실시예에 따른 컴퓨터 판독 가능한 저장매체에 저장된 컴퓨터 프로그램은, 프로세서로 하여금 이하의 단계들을 수행하게 하기 위한 명령들을 포함하며, 단계들은 검출 대상자의 2차원 영상 데이터를 획득하고, 2차원 영상 데이터에 기초하여 3차원 좌표를 추출하는 단계, 3차원 좌표는 검출 대상자의 좌측/우측 고관절(hip joint), 좌측/우측 발목 및 골반에 대한 키포인트를 포함함 , 검출 대상자의 분당 걸음수(cadence)를 판단하는 단계, 좌측 또는 우측 고관절 키포인트의 각도 패턴인 제1 대상 각도 패턴을 추출하는 단계, 기수집된 복수의 각도 패턴 중 검출 대상자의 분당 걸음수에 대응하는 각도 패턴인 제1 기준 각도 패턴을 결정하는 단계, 제1 대상 각도 패턴과 제1 기준 각도 패턴의 패턴 매칭(cross-correlate)을 수행하여 제1 필터링 데이터를 생성하는 단계, 좌측 및 우측 발목 키포인트 간 보행 방향으로의 거리 패턴인 대상 거리 패턴을 추출하는 단계, 기수집된 복수의 거리 패턴 중 검출 대상자의 분당 걸음수에 대응하는 거리 패턴인 기준 거리 패턴을 결정하는 단계, 대상 거리 패턴과 기준 거리 패턴의 패턴 매칭을 수행하여 제2 필터링 데이터를 생성하는 단계, 제1 및 제2 필터링 데이터를 모두 만족하는 보행주기를 결정하는 단계, 보행주기 내 대상 거리 패턴 그래프에서의 골반 키포인트와 좌측 또는 우측 발목 키포인트 간 수직 방향 거리의 최대값과 최소값의 차이가 기준값 이상인지 여부를 판단하는 단계, 수직 방향 거리의 최대값과 최소값의 차이가 기준값 이상인 경우, 보행주기에서의 보행이 유효 보행이라고 결정하는 단계 및 보행주기에서의 보행이 유효 보행이라고 결정되는 경우, 보행주기에서의 대상 거리 패턴 그래프 상의 위치 및 기울기에 기초하여 힐-스트라이크(Heel-Strike) 및 토-오프(Toe-Off) 지점을 결정하는 단계를 포함한다.
보행주기 내 대상 거리 패턴 그래프는 2개의 파지티브(+) 피크 및 1개의 네거티브(-) 피크를 포함하고, 대상 거리 패턴 그래프는 (a)보행주기 이전 시점의 가장 인접한 네거티브 피크인 제1 피크와 보행주기 내의 첫번째 파지티브 피크인 제2 피크 사이의 구간, (b)제2 피크와 보행주기 내의 네거티브 피크인 제3 피크 사이의 구간 및 (c)제3 피크와 보행주기 내의 마지막 파지티브 피크인 제4 피크 사이의 구간을 포함하고, 수직 방향 거리의 최대값과 최소값의 차이가 기준값 이상인지 여부를 판단하는 단계는, (a) 내지 (c) 구간 각각에서의 수직 방향 거리의 최대값과 최소값의 차이가 모두 기준값 이상인지 여부를 판단하는 단계를 포함할 수 있다.
기준값은 30mm(미리미터)일 수 있다.
보행주기 내 대상 거리 패턴 그래프는 2개의 파지티브(+) 피크 및 1개의 네거티브(-) 피크를 포함하고, 대상 거리 패턴 그래프는 (a)보행주기 이전 시점의 가장 인접한 네거티브 피크인 제1 피크와 보행주기 내의 첫번째 파지티브 피크인 제2 피크 사이의 구간, (b)제2 피크와 보행주기 내의 네거티브 피크인 제3 피크 사이의 구간 및 (c)제3 피크와 보행주기 내의 마지막 파지티브 피크인 제4 피크 사이의 구간을 포함하고, 힐-스트라이크 및 토-오프 지점을 결정하는 단계는, (c) 구간에서의 대상 거리 패턴 그래프의 정방향 슬로프의 95%인 지점 또는 70% 내지 95%의 구간에서 정방향 슬로프의 기울기가 최대 정방향 기울기의 20%가 되는 지점을 힐-스트라이크로 결정하는 단계 및 (c) 구간에서의 대상 거리 패턴 그래프의 역방향 슬로프의 85%인 지점 또는 70% 내지 85%의 구간에서 역방향 슬로프의 기울기가 최대 역방향 기울기의 20%가 되는 지점을 토-오프로 결정하는 단계를 포함할 수 있다.
단계들은, (a) 구간에서의 대상 거리 패턴 그래프의 정방향 슬로프의 95%인 지점 또는 70% 내지 95%의 구간에서 정방향 슬로프의 기울기가 최대 정방향 기울기의 20%가 되는 지점을 힐-스트라이크로 결정하는 단계 및 (a) 구간에서의 힐-스트라이크 및 (c) 구간에서의 힐-스트라이크 사이의 구간을 최종 보행주기로 결정하는 단계를 더 포함할 수 있다.
단계들은, 우측 또는 좌측 고관절 키포인트의 각도 패턴인 제2 대상 각도 패턴을 추출하는 단계 -우측 또는 좌측 고관절 키포인트는 제1 대상 각도 패턴의 대상인 고관절의 반대측 고관절 키포인트임-, 복수의 각도 패턴 중 제2 대상 각도 패턴과의 패턴 매칭을 수행할 제2 기준 각도 패턴을 결정하는 단계 및 제2 대상 각도 패턴과 제2 기준 각도 패턴의 패턴 매칭을 수행하여 제3 필터링 데이터를 생성하는 단계를 더 포함하되, 보행주기를 결정하는 단계는, 제1 내지 제3 필터링 데이터를 모두 만족하는 보행주기를 결정하는 단계를 포함할 수 있다.
본 발명의 다른 실시예에 따른 컴퓨터 판독 가능한 저장매체에 저장된 컴퓨터 프로그램으로서, 컴퓨터프로그램은 프로세서로 하여금 이하의 단계들을 수행하게 하기 위한 명령들을 포함하며, 단계들은: 검출 대상자의 2차원 영상 데이터를 획득하고, 2차원 영상 데이터에 기초하여 3차원 좌표를 추출하는 단계-3차원 좌표는 검출 대상자의 고관절 (hip joint), 좌측 발목 및 우측 발목에 대한 키포인트를 포함함-, 고관절 키포인트의 각도 패턴인 제1 대상 각도 패턴을 추출하는 단계, 기수집된 복수의 각도 패턴 중 제1 대상 각도 패턴과의 패턴 매칭을 수행할 제1 기준 각도 패턴을 결정하는 단계, 제1 대상 각도 패턴과 제1 기준 각도 패턴의 패턴 매칭(cross- correlate)을 수행하여 제1 필터링 데이터를 생성하는 단계, 좌측 및 우측 발목 키포인트 간 보행 방향으로의 거리 패턴인 대상 거리 패턴을 추출하는 단계, 기수집된 복수의 거리 패턴 중 대상 거리 패턴과의 패턴 매칭을 수행할 기준 거리 패턴을 결정하는 단계, 대상 거리 패턴과 기준 거리 패턴의 패턴 매칭을 수행하여 제2 필터링 데이터를 생성하는 단계 및 제1 및 제2 필터링 데이터를 모두 만족하는 보행주기를 결정하는 단계를 포함한다.
단계들은, 검출 대상자의 분당 걸음수(cadence)를 판단하는 단계를 더 포함하되, 제1 기준 각도 패턴을 결정하는 단계는, 복수의 각도 패턴 중 검출 대상자의 분당 걸음수에 대응하는 각도 패턴을 제1 기준 각도 패턴으로 결정하는 단계를 포함하고, 기준 거리 패턴을 결정하는 단계는, 복수의 거리 패턴 중 검출 대상자의 분당 걸음수에 대응하는 거리 패턴을 기준 거리 패턴으로 결정하는 단계를 포함할 수 있다.
단계들은, 서브 고관절 키포인트의 각도 패턴인 제2 대상 각도 패턴을 추출하는 단계 -서브 고관절 키포인트는 제1 대상 각도 패턴의 대상인 고관절 키포인트의 반대측 고관절 키포인트임-, 복수의 각도 패턴 중 제2 대상 각도 패턴과의 패턴 매칭을 수행할 제2 기준 각도 패턴을 결정하는 단계 및 제2 대상 각도 패턴과 제2 기준 각도 패턴의 패턴 매칭을 수행하여 제3 필터링 데이터를 생성하는 단계를 더 포함하되, 보행주기를 결정하는 단계는, 제1 내지 제3 필터링 데이터를 모두 만족하는 보행주기를 결정하는 단계를 포함할 수 있다.
차원 좌표는 검출 대상자의 골반에 대한 키포인트를 더 포함하고, 단계들은, 보행주기 내 골반 키포인트와 좌측 또는 우측 발목 키포인트간 수직 방향 거리의 최대값과 최소값의 차이가 기준값 이상인지 여부에 기초하여 보행주기 내 보행의 유효성을 판단하는 단계를 더 포함할 수 있다.
단계들은, 보행주기에서의 대상 거리 패턴에 대한 그래프 상의 위치 및 기울기에 기초하여 힐-스트라이크(Heel-Strike) 및 토-오프(Toe-Off) 지점을 결정하는 단계를 더 포함할 수 있다.
단계들은, 결정된 힐-스트라이크 및 토-오프 지점에 기초하여 수정된 수정 보행주기를 결정하는 단계를 더 포함할 수 있다.
본 발명의 다른 실시예에 따른 컴퓨터 판독 가능한 저장매체에 저장된 컴퓨터 프로그램으로서, 컴퓨터프로그램은 프로세서로 하여금 이하의 단계들을 수행하게 하기 위한 명령들을 포함하며, 단계들은 검출 대상자의 2차원 영상 데이터를 획득하고, 2차원 영상 데이터에 기초하여 3차원 좌표를 추출하는 단계-3차원 좌표는 검출 대상자의 좌측 발목 및 우측 발목에 대한 키포인트를 포함함-, 2차원 영상 데이터 및 3차원 좌표에 기초하여 임시 보행주기를 결정하는 단계 및 임시 보행주기와, 검출 대상자의 좌측 및 우측 발목 키포인트 간보행 방향으로의 거리 패턴인 대상 거리 패턴 그래프 상의 위치 및 기울기에 기초하여 힐-스트라이크(Heel-Strike) 및 토-오프(Toe-Off) 지점을 결정하는 단계를 포함한다.
3차원 좌표는 검출 대상자의 골반에 대한 키포인트를 더 포함하고, 단계들은, 대상 거리 패턴 그래프에서의 골반 키포인트와 좌측 또는 우측 발목 키포인트 간 수직 방향 거리의 최대값과 최소값의 차이가 기준값 이상인지 여부를 판단하는 단계 및 수직 방향 거리의 최대값과 최소값의 차이가 기준값 이상인 경우, 임시 보행주기에서의 보행이 유효 보행이라고 결정하는 단계를 더 포함하되, 힐-스트라이크 및 토-오프 지점을 결정하는 단계는, 임시 보행주기에서의 보행이 유효 보행이라고 결정되는 경우에 수행될 수 있다.
임시 보행주기 내 대상 거리 패턴 그래프는 2개의 파지티브(+) 피크 및 1개의 네거티브(-) 피크를 포함하고, 대상 거리 패턴 그래프는 (a)임시 보행주기 이전 시점의 임시 보행주기와 가장 인접한 네거티브 피크인 제1 피크와 임시 보행주기 내의첫번째 파지티브 피크인 제2 피크 사이의 구간, (b)제2 피크와 임시 보행주기 내의 네거티브 피크인 제3 피크 사이의 구간 및 (c)제3 피크와 임시 보행주기 내의 마지막 파지티브 피크인 제4 피크 사이의 구간을 포함하고, 수직 방향 거리의 최대값과 최소값의 차이가 기준값 이상인지 여부를 판단하는 단계는, (a) 내지 (c) 구간 각각에서의 수직 방향 거리의 최대 값과 최소값의 차이가 모두 기준값 이상인지 여부를 판단하는 단계를 포함할 수 있다.
기준값은 30mm(미리미터)일 수 있다.
임시 보행주기 내 대상 거리 패턴 그래프는 2개의 파지티브(+) 피크 및 1개의 네거티브(-) 피크를 포함하고, 대상 거리 패턴 그래프는 (a)임시 보행주기 이전 시점의 임시 보행주기와 가장 인접한 네거티브 피크인 제1 피크와 임시 보행주기 내의첫번째 파지티브 피크인 제2 피크 사이의 구간, (b)제2 피크와 임시 보행주기 내의 네거티브 피크인 제3 피크 사이의 구간 및 (c)제3 피크와 임시 보행주기 내의 마지막 파지티브 피크인 제4 피크 사이의 구간을 포함하고, 힐-스트라이크 및 토-오프 지점을 결정하는 단계는, (c) 구간에서의 대상 거리 패턴 그래프의 정방향 슬로프의 95%인지점 또는 정방향 슬로프의 70% 내지 95%의 구간에서 정방향 슬로프의 기울기가 최대 정방향 기울기의 20%가 되는 지점을 힐-스트라이크로 결정하는 단계를 포함할 수 있다.
힐-스트라이크 및 토-오프 지점을 결정하는 단계는, (c) 구간에서의 대상 거리 패턴 그래프의 역방향 슬로프의 85%인지점 또는 역방향 슬로프의 70% 내지 85%의 구간에서 상기역방향 슬로프의 기울기가 최대 역방향 기울기의 20%가 되는 지점을 토-오프로 결정하는 단계를 포함할 수 있다.
단계들은, (a) 구간에서의 대상 거리 패턴 그래프의 정방향 슬로프의 95%인지점 또는 정방향 슬로프의 70% 내지 95%의 구간에서 정방향 슬로프의 기울기가 최대 정방향 기울기의 20%가 되는 지점을 힐-스트라이크로 결정하는 단계 및 (a) 구간에서의 힐-스트라이크 및 (c) 구간에서의 힐-스트라이크 사이의 구간을 최종 보행 주기로 결정하는 단계를 더 포함할 수 있다.
본 발명의 일 실시예에 따른 딥러닝 기반의 보행 패턴 검출 방법 및 이를 수행하는 컴퓨터 프로그램에 의하면, 지면 반력을 측정하는 장비 없이 검출 대상자의 보행 패턴을 검출할 수 있다.
도 1은 일반적인 보행주기(gait cycle) 및 보행이벤트를 설명하기 위한 도면이다.
도 2 및 도 3은 본 발명의 몇몇 실시예에 따른 검출 장치를 설명하기 위한 도면이다.
도 4 및 도 5는 검출 장치의 프로세서의 구성을 설명하기 위한 도면이다.
도 6은 본 발명의 몇몇 실시예에 따른 보행주기 및 보행이벤트 검출 방법을 설명하기 위한 도면이다.
도 7은 본 발명의 몇몇 실시예에 따라 보행주기를 결정하는 방법을 설명하기 위한 도면이다.
도 8은 본 발명의 몇몇 실시예에 따른 고관절 키포인트의 각도 패턴을 설명하기 위한 도면이다.
도 9a는 검출 대상자의 대상 각도 패턴 그래프를 예시적으로 표현한 도면이고, 도 9b는 분당 걸음수에 따른 기준 각도 패턴 그래프를 예시적으로 표현한 도면이고, 도 9c는 대상 각도 패턴과 기준 각도 패턴의 패턴 매칭 결과를 예시적으로 표현한 도면이다.
도 10은 본 발명의 몇몇 실시예에 따라 좌측/우측 발목 키포인트 사이의 거리 패턴을 설명하기 위한 도면이다.
도 11a는 검출 대상자의 대상 거리 패턴 그래프를 예시적으로 표현한 도면이고, 도 11b는 분당 걸음수에 따른 기준 거리 패턴 그래프를 예시적으로 표현한 도면이고, 도 11c는 대상 거리 패턴과 기준 거리 패턴의 패턴 매칭 결과를 예시적으로 표현한 도면이다.
도 12는 본 발명의 몇몇 실시예에 따라 결정되는 보행주기 및 (a) 내지 (c) 구간을 예시적으로 표현한 도면이다.
도 13은 본 발명의 몇몇 실시예에 따라 보행주기의 유효성을 판단하는 방법을 설명하기 위한 도면이다.
도 14a 내지 도 14c는 골반 키포인트 및 발목 키포인트 사이의 수직 거리를 설명하기 위한 도면이다.
도 15는 도 14a의 수직 거리에 기초하여 보행의 유효성을 판단하는 방법을 설명하기 위한 도면이다.
도 16은 본 발명의 몇몇 실시예에 따른 보행이벤트 결정 방법을 설명하기 위한 도면이다.
도 17은 좌/우 발목 키포인트 간 거리 그래프에서 힐-스트라이크 지점을 결정하는 방법을 설명하기 위한 도면이다.
도 18은 좌/우 발목 키포인트 간 거리 그래프에서 토-오프 지점을 결정하는 방법을 설명하기 위한 도면이다.
이하, 본 발명의 다양한 실시예가 첨부된 도면을 참조하여 기재된다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 실시예의 다양한 변경(modification), 균등물(equivalent), 및/또는 대체물(alternative)을 포함하는 것으로 이해되어야 한다.
최근 고령화에 따라 신경, 근육 손상으로 인한 보행 이상을 호소하는 노령 인구가 증가하고 있다. 이에 따라 근골격계 질환을 간편하게 진단하고 예측할 수 있는 생체 신호 데이터 수집에 관한 방법이 필요한 상황이다.
도 1을 참조하면, 보행 동작은 근골격계 진단을 위한 가장 기본적인 움직임으로 정형화되어 있으며 일반적인 패턴을 가지고 있다. 즉, 보행주기(gait cycle)는 입각기(Stance phase) 및 유각기(Swing phase)로 구분되고, 힐-스트라이크(Heel Strike 또는 Initial contact), 토-오프(Toe off) 등의 보행이벤트로 구성된다.
국내공개특허 제2021-0129862호를 비롯한 종래 보행주기 및 보행이벤트를 검출하기 위한 기술에서는 지면 반력을 측정하는 장비를 이용하여 검출 대상자의 보행주기, 족압 등을 검출하는 기술이 고안되었으나, 이 경우 물리적인 지면 반력을 측정하기 위한 고가의 장비가 요구되고, 이러한 장비가 구비된 공간에서 측정해야 한다는 공간적 제한이 존재한다.
이하에서, 도 2 내지 도 18을 참조하여 본 발명의 몇몇 실시예에 따른 보행주기 및 보행이벤트 검출 방법을 설명한다.
도 2 및 도 3은 본 발명의 몇몇 실시예에 따른 검출 장치를 설명하기 위한 도면이다.
도 2를 참조하면, 본 발명의 몇몇 실시예에 따른 검출 장치(1000)는 검출 대상자의 보행 영상을 포함하는 2차원 영상 데이터(DT_IMAGE)를 획득하고, 이에 기초하여 검출 대상자의 보행주기 및/또는 보행이벤트를 포함하는 검출 데이터(DT_DETECT)를 출력할 수 있다. 예를 들어, 2차원 영상 데이터(DT_IMAGE)는 스마트폰, 태블릿 PC 등의 사용자 단말로부터 수신되는 데이터일 수 있다. 다른 예로서, 2차원 영상 데이터(DT_IMAGE)는 카메라를 구비한 별도의 하드웨어 장비로부터 획득될 수 있다. 또다른 예로서, 2차원 영상 데이터(DT_IMAGE)는 검출 장치(1000)에 실장되는 카메라 모듈(미도시)로부터 직접 획득되는 데이터일 수 있다.
일 실시예에 따른 검출 장치(1000)는 뉴럴 네트워크를 생성하거나, 뉴럴 네트워크를 훈련(train)(또는 학습(learn))하거나, 뉴럴 네트워크를 재훈련(retrain)하는 기능들과 같은 다양한 프로세싱 기능들을 갖는 컴퓨팅 디바이스에 해당된다. 예를 들어, 검출 장치(1000)는 PC(personal computer), 서버 디바이스, 모바일 디바이스 등의 다양한 종류의 디바이스들로 구현될 수 있다.
도 3을 참조하면, 본 발명의 몇몇 실시예에 따른 검출 장치(1000)는 통신부(1100), 메모리(1200) 및 프로세서(1300)를 포함할 수 있다.
통신부(1100)는 검출 장치(1000)와 사용자 단말 또는 외부 장치와의 통신을 연결할 수 있다. 상기 통신부(1100)는 소정의 근거리 통신 프로토콜(예: Wi-Fi(wireless fidelity), BT(Bluetooth), NFC(near field communication), 소정의 네트워크 통신(예: Internet, LAN(local area network), WAN(wire area network), telecommunication network, cellular network, satellite network 또는 POTS(plain old telephone service) 등) 또는 유선 통신 프로토콜(예: USB(universal serial bus), HDMI(high definition multimedia interface) 등)을 지원할 수 있다.
메모리(1200)는 검출 장치(1000)의 다른 구성요소들로부터 수신되거나 다른 구성요소들에 의해 생성된 명령 또는 데이터를 저장할 수 있다. 몇몇 실시예에 따라, 메모리(1200)는 프로그램 메모리 및 데이터 메모리들로 구성될 수 있으며, 프로그램 메모리에는 검출 장치(1000)의 일반적인 동작을 제어하기 위한 프로그램이 저장될 수 있다. 몇몇 실시예에 따라, 메모리(1200)는 CF(Compact Flash), SD(Secure Digital), Micro-SD(Micro Secure Digital), Mini-SD(Mini Secure Digital), xD(Extreme Digital) 및 Memory Stick 등의 외장형 메모리를 더 포함할 수도 있다. 또한, 메모리(1200)는 HDD(Hard Disk Drive) 및 SSD(Solid State Disk) 등과 같은 디스크 저장 장치를 포함할 수도 있다.
프로세서(1300)는 보행 검출 학습부(1310) 및 보행 검출 데이터 생성부(1320)를 통해 검출 대상자의 2차원 영상 데이터(DT_IMAGE)에 기초하여 3차원 좌표를 추출하고, 이에 기초하여 검출 대상자의 보행주기 및 보행이벤트를 검출하는 연산을 수행할 수 있다.
몇몇 실시예에 따라, 프로세서(1300)는 인공 신경망을 활용하여 학습 및 구동되는 인공지능 학습 모델을 포함할 수 있다. 인공 신경망이란 사람의 두뇌가 정보를 처리하는 방식을 모방한 연산 시스템이다.
심층 신경망(Deep Neural Network)은 인공 신경망을 구현하는 하나의 방식으로서, 복수의 레이어(layer)를 포함할 수 있다. 예를 들어, 심층 신경망은 입력 데이터가 인가되는 입력 레이어(Input Layer), 학습을 바탕으로 입력 데이터에 기반한 예측을 통해 도출된 결과 값을 출력하는 출력 레이어(Output Layer) 및 입력 레이어와 출력 레이어 사이에 다중의 은닉 레이어(Hidden Layer)을 포함한다.
심층 신경망은 정보를 처리하기 위해 이용되는 알고리즘에 따라, 컨볼루션 신경망(Convolutional Neural Network), 리커런트 신경망(Recurrent Neural Network) 등으로 분류된다.
인공 신경망을 학습하는 방식을 딥러닝(Deep Learning)이라 하며, 상술한 바와 같이 딥러닝에는 컨볼루션 신경망, 리커런트 신경망 방식과 같이 다양한 알고리즘이 이용될 수 있다.
이 때, 인공 신경망을 학습한다는 것은 계층간 가중치 및 바이어스 또는 인접한 계층 중 서로 다른 레이어에 속하는 복수의 뉴런들 간의 가중치 및 바이어스를 결정하고 갱신하는 것을 나타낼 수 있다.
예를 들어, 복수의 계층적 구조 및 복수의 레이어들, 또는, 뉴런들 간의 가중치 및 바이어스를 총칭하여 인공 신경망의 연결성(connectivity)이라 할 수 있다. 따라서, 인공 신경망을 학습한다는 것은 연결성을 구축하고 학습하는 것을 나타낼 수 있다.
데이터 버스(1400)는 전술한 검출 장치(1000)의 구성요소들을 서로 연결하고, 전술한 구성요소들 간의 통신(예: 제어 메시지)을 전달하는 회로일 수 있다.
몇몇 실시예에 따라, 프로세서(1300)의 각 구성, 즉 보행 검출 학습부(1310) 및 보행 검출 데이터 생성부(1320)는 가공된 뉴럴 네트워크일 수 있다. 또한, 이들은 기능 및 논리적으로 분리될 수 있음을 나타나기 위해 별도로 도면에 표시한 것이며, 물리적으로 반드시 별도의 구성요소이거나 별도의 코드로 구현되는 것을 의미하는 것은 아니다.
도 4 및 도 5는 검출 장치의 프로세서의 구성을 설명하기 위한 도면이다.
도 4를 참조하면, 프로세서(1300)의 보행 검출 학습부(1310)는 주어진 초기 뉴럴 네트워크를 반복적으로 훈련(학습)시킴으로써, 훈련된 뉴럴 네트워크를 생성할 수 있다. 훈련된 뉴럴 네트워크를 생성하는 것은 뉴럴 네트워크 파라미터를 결정하는 것을 의미할 수 있다. 여기서, 파라미터들은 예를 들어 뉴럴 네트워크의 입/출력 액티베이션들, 웨이트들, 바이어스들 등 뉴럴 네트워크에 입/출력되는 다양한 종류의 데이터를 포함할 수 있다. 뉴럴 네트워크의 반복적인 훈련이 진행됨에 따라, 뉴럴 네트워크의 파라미터들은 주어진 입력에 대해 보다 정확한 출력을 연산하기 위해 조정될(tuned) 수 있다.
보행 검출 학습부(1310)는 훈련된 뉴럴 네트워크를 보행 검출 데이터 생성부(1320)로 전달할 수 있다. 보행 검출 데이터 생성부(1320)는 모바일 디바이스, 임베디드(embedded) 디바이스 등에 포함될 수 있다. 보행 검출 데이터 생성부(1320)는 뉴럴 네트워크의 구동을 위한 전용 하드웨어일 수 있다.
보행 검출 데이터 생성부(1320)는 훈련된 뉴럴 네트워크를 그대로 구동하거나, 훈련된 뉴럴 네트워크가 가공(예를 들어, 양자화)된 뉴럴 네트워크를 구동할 수 있다. 가공된 뉴럴 네트워크를 구동하는 보행 검출 데이터 생성부(1320)는, 보행 검출 학습부(1310)와는 별도의 독립적인 디바이스에서 구현될 수 있다. 하지만, 이에 제한되지 않고, 보행 검출 데이터 생성부(1320)는 보행 검출 학습부(1310)와 동일한 디바이스 내에도 구현될 수 있다.
도 5를 참조하면, 프로세서(1300)는 분당 걸음수 판단 모듈(1330), 기준 패턴 결정 모듈(1340), 보행주기 결정 모듈(1350) 및 보행이벤트 결정 모듈(1360)을 포함할 수 있다. 일 실시예에 따라, 분당 걸음수 판단 모듈(1330), 기준 패턴 결정 모듈(1340), 보행주기 결정 모듈(1350) 및 보행이벤트 결정 모듈(1360) 각각은 보행 검출 학습부(1310) 및 보행 검출 데이터 생성부(1320)를 포함할 수 있다. 다른 실시예에 따라, 분당 걸음수 판단 모듈(1330), 기준 패턴 결정 모듈(1340), 보행주기 결정 모듈(1350) 및 보행이벤트 결정 모듈(1360)은 기능 및 논리적으로 분리될 수 있음을 나타나기 위해 별도로 도면에 표시한 것이며, 물리적으로 반드시 별도의 구성요소이거나 별도의 코드로 구현되는 것을 의미하는 것은 아니다.
분당 걸음수 판단 모듈(1330)은 검출 대상자의 분당 걸음수(cadence)를 판단할 수 있다. 일 실시예에 따라, 분당 걸음수 판단 모듈(1330)은 2차원 영상 데이터(DT_IMAGE)에 기초하여 검출 대상자의 분당 걸음수를 판단할 수 있다. 다른 실시예에 따라, 분당 걸음수 판단 모듈(1330)은 추출된 3차원 좌표에 기초하여 검출 대상자의 분당 걸음수를 판단할 수 있다.
기준 패턴 결정 모듈(1340)은 분당 걸음수 판단 모듈(1330)에 의해 결정된 검출 대상자의 분당 걸음수에 기초하여 기준 패턴을 결정할 수 있다. 예를 들어, 기준 패턴 결정 모듈(1340)은 메모리(1200)에 저장된 복수의 패턴 중 검출 대상자의 분당 걸음수에 대응하는 패턴을 기준 패턴으로 결정할 수 있다.
보행주기 결정 모듈(1350)은 3차원 좌표에 기초하여 제1 및 제2 필터링 데이터를 생성하고, 제1 및 제2 필터링 데이터를 모두 만족하는 보행주기를 결정할 수 있다.
보행이벤트 결정 모듈(1360)은 결정된 보행주기 전후의 좌/우측 발목 키포인트 거리에 기초하여 보행주기 내 보행이벤트를 결정할 수 있다.
분당 걸음수 판단 모듈(1330), 기준 패턴 결정 모듈(1340), 보행주기 결정 모듈(1350) 및 보행이벤트 결정 모듈(1360)의 구체적인 동작은 도 6 이하를 참조하여 상세히 후술한다.
도 6은 본 발명의 몇몇 실시예에 따른 보행주기 및 보행이벤트 검출 방법을 설명하기 위한 도면이다.
S1000 단계에서, 검출 장치(1000)는 검출 대상자의 2차원 영상 데이터(DT_IMAGE)를 획득할 수 있다. 2차원 영상 데이터(DT_IMAGE)는 검출 대상자의 보행 영상을 포함할 수 있다.
S2000 단계에서, 검출 장치(1000)는 2차원 영상 데이터에 기초하여 3차원 좌표를 추출할 수 있다. 일 실시예에 따라, 3차원 좌표는 검출 대상자의 좌측/우측 고관절(hip joint), 좌측/우측 발목 및 골반에 대한 키포인트를 포함할 수 있다. 각각의 키포인트는 점(point) 또는 직선(line) 형대로 추출될 수 있다.
S3000 단계에서, 검출 장치(1000)는 추출된 3차원 좌표에 기초하여 보행주기를 결정할 수 있다. 보행주기를 결정하는 동작에 대하여는 도 7 내지 도 12를 참조하여 상세히 후술한다.
S4000 단계에서, 검출 장치(1000)는 결정된 보행주기 내 검출 대상자 보행의 유효성을 판단할 수 있다. 즉, 보행주기 내 보행이 유효한 보행인지 또는 보행주기를 판단함에 적합하지 않은 보행(또는, 노이즈)인지 여부를 판단할 수 있다. 보행의 유효성을 판단하는 동작에 대하여는 도 13 내지 도 15를 참조하여 상세히 후술한다.
S5000 단계에서, 검출 장치(1000)는 보행주기 내 검출 대상자의 보행이 유효한 것으로 판단되는 경우, 보행주기의 보행 이벤트, 즉 힐-스트라이크(HS) 지점 및 토-오프(TO) 지점을 결정할 수 있다. 보행이벤트를 결정하는 동작에 대하여는 도 16 내지 도 18을 참조하여 상세히 후술한다.
도 7은 본 발명의 몇몇 실시예에 따라 보행주기를 결정하는 방법을 설명하기 위한 도면이다. 도 7을 참조하면, 본 발명의 몇몇 실시예에 따른 검출 장치(1000)는 검출 대상자의 영상 데이터에 기초하여 보행주기를 결정할 수 있다. 도 6의 S3000 단계는 S3100 내지 S3800 단계를 포함할 수 있다.
S3100 단계에서, 분당 걸음수 판단 모듈(1330)은 검출 대상자의 분당 걸음수를 판단할 수 있다. 일 실시예에 따라, 분당 걸음수 판단 모듈(1330)은 3차원 좌표에 기초하여 검출 대상자의 분당 걸음수를 판단할 수 있다. 다른 실시예에 따라, 분당 걸음수 판단 모듈(1330)은 2차원 영상 데이터(DT_IMAGE)에 기초하여 검출 대상자의 분당 걸음수를 판단할 수 있다.
도 8은 본 발명의 몇몇 실시예에 따른 고관절 키포인트의 각도 패턴을 설명하기 위한 도면이고, 도 9a는 검출 대상자의 대상 각도 패턴 그래프를 예시적으로 표현한 도면이고, 도 9b는 분당 걸음수에 따른 기준 각도 패턴 그래프를 예시적으로 표현한 도면이고, 도 9c는 대상 각도 패턴과 기준 각도 패턴의 패턴 매칭 결과를 예시적으로 표현한 도면이다.
도 7 내지 도 9c를 참조하면, S3200 단계에서, 보행주기 결정 모듈(1350)은 3차원 좌표, 구체적으로 좌측 및/또는 우측 고관절 키포인트(KP_HJ)에 기초하여 대상 각도(θTG)에 대한 대상 각도 패턴을 추출할 수 있다. 설명의 편의를 위하여, 우측 고관절 키포인트에 기초하여 대상 각도 패턴을 추출한다고 가정하고, 이하에서 "고관절 키포인트"는 우측 고관절 키포인트를 의미할 수 있다. 대상 각도(θTG)는 검출 대상자의 시상면(sagittal plane) 상에서 고관절 키포인트(KP_HJ)가 지면에 수직인 방향과 이루는 각을 의미할 수 있다. 이 때, 시상면이란 신체를 좌와 우로 가르는 면을 의미하고, 종단면으로 표현될 수도 있다. 도시된 바와 같이, 고관절 키포인트(KP_HJ)는 선(line)의 형태로 추출될 수 있고, 이러한 고관절 키포인트(KP_HJ)가 기준선(지면에 수직인 선)과 이루는 각도가 대상 각도(θTG)로 정의될 수 있다. 도 9a는 검출 대상자의 대상 각도 패턴 그래프의 예시로, 복수의 그래프 중 표시된 그래프가 검출 대상자의 대상 각도 패턴 그래프로 가정한다.
S3300 단계에서, 기준 패턴 결정 모듈(1340)은 대상 각도(θTG)에 대한 패턴과 패턴 매칭(cross-correlate)을 수행할 기준 각도(θREF)에 대한 패턴을 결정할 수 있다. 도 9b는 기준 각도 패턴의 예시로, 기저장된 복수의 각도 패턴 중 검출 대상자의 분당 걸음수에 대응되는 각도 패턴을 기준 각도 패턴으로 결정할 수 있다.
S3400 단계에서, 보행주기 결정 모듈(1350)은 대상 각도 패턴 및 기준 각도 패턴에 기초하여 제1 필터링 데이터를 생성할 수 있다. 일 실시예에 따라, 결정된 대상 각도 패턴 및 기준 각도 패턴에 대한 패턴 매칭을 수행하여 제1 필터링 데이터를 생성할 수 있다. 도 9c는 대상 각도 패턴과 기준 각도 패턴의 패턴 매칭 결과를 예시적으로 표현한 도면으로, 제1 필터링 데이터는 패턴 매칭 결과 및 제1 임시 보행주기(TTEMP1)에 대한 정보를 포함할 수 있다. 즉, 기정의된 기준에 따라 패턴 매칭 결과가 우수한 구간을 제1 임시 보행주기(TTEMP1)로 결정할 수 있다.
도 10은 본 발명의 몇몇 실시예에 따라 좌측/우측 발목 키포인트 사이의 거리 패턴을 설명하기 위한 도면이고, 도 11a는 검출 대상자의 대상 거리 패턴 그래프를 예시적으로 표현한 도면이고, 도 11b는 분당 걸음수에 따른 기준 거리 패턴 그래프를 예시적으로 표현한 도면이고, 도 11c는 대상 거리 패턴과 기준 거리 패턴의 패턴 매칭 결과를 예시적으로 표현한 도면이다.
도 7, 도 10 내지 도 11c를 참조하면, S3500 단계에서, 보행주기 결정 모듈(1350)은 3차원 좌표, 구체적으로 좌측 발목 키포인트(KP_ANK(L)) 및 우측 발목 키포인트(KP_ANK(R))에 기초하여 대상 거리(D1TG)에 대한 대상 각도 패턴을 추출할 수 있다. 대상 거리(D1TG)는 검출 대상자의 좌측 발목 키포인트(KP_ANK(L))와 우측 발목 키포인트(KP_ANK(R))의 진행 방향으로의 거리를 의미한다. 즉, 대상 거리(D1TG)는 지면과 평행한 검출 대상자의 진행 방향으로의 좌측 발목 키포인트(KP_ANK(L))와 우측 발목 키포인트(KP_ANK(R))의 거리를 의미한다. 도 11a는 검출 대상자의 대상 거리 패턴 그래프의 예시로, 복수의 그래프 중 어느 하나인 표시된 그래프가 검출 대상자의 대상 거리 패턴 그래프로 가정한다. 설명의 편의를 위하여, 검출 대상자의 우측 발목 키포인트(KP_ANK(R))를 기준으로 좌/우측 발목 키포인트(KP_ANK(R)) 간 거리를 설명한다. 즉, 우측 발목 키포인트(KP_ANK(R))가 진행 방향으로 앞에 위치하는 경우 양(+)의 값을 갖고, 뒤에 위치하는 경우 음(-)의 값은 갖는 것으로 설명된다. 다만, 이는 예시적인 것으로 좌측 발목 키포인트(KP_ANK(L))를 기준으로 본 발명이 적용될 수 있음은 물론이다.
S3600 단계에서, 기준 패턴 결정 모듈(1340)은 대상 거리(D1TG)에 대한 패턴 그래프와 패턴 매칭을 수행할 기준 거리(DREF)에 대한 패턴을 결정할 수 있다. 도 11b는 기준 거리(DREF)에 대한 패턴의 예시로, 기저장된 복수의 거리 패턴 중 검출 대상자의 분당 걸음수에 대응되는 거리 패턴을 기준 거리 패턴으로 결정할 수 있다.
S3700 단계에서, 보행주기 결정 모듈(1350)은 대상 거리 패턴 및 기준 거리 패턴에 기초하여 제2 필터링 데이터를 생성할 수 있다. 일 실시예에 따라, 결정된 대상 거리 패턴 및 기준 거리 패턴에 대한 패턴 매칭을 수행하여 제2 필터링 데이터를 생성할 수 있다. 도 11c는 대상 거리 패턴과 기준 거리 패턴의 패턴 매칭 결과를 예시적으로 표현한 도면으로, 제2 필터링 데이터는 패턴 매칭 결과 및 제2 임시 보행주기(TTEMP2)에 대한 정보를 포함할 수 있다. 즉, 기정의된 기준에 따라 패턴 매칭 결과가 우수한 구간을 제2 임시 보행주기(TTEMP2)로 결정할 수 있다.
도 12는 본 발명의 몇몇 실시예에 따라 결정되는 보행주기 및 (a) 내지 (c) 구간을 예시적으로 표현한 도면이다.
도 7 및 도 12를 참조하면, S3800 단계에서, 보행주기 결정 모듈(1350)은 보행주기(T)를 결정할 수 있다. 대상 각도(θTG)의 패턴에 기초하여 결정된 제1 필터링 데이터에 포함된 제1 임시 보행주기(TTEMP1)와 대상 거리(D1TG)의 패턴에 기초하여 결정된 제2 필터링 데이터에 포함된 제2 임시 보행주기(TTEMP2)를 모두 만족하는 구간을 보행주기(T)로 결정할 수 있다.
도시된 바와 같이, 검출 대상자의 대상 거리(D1TG), 즉 좌측 발목 키포인트(KP_ANK(L))와 우측 발목 키포인트(KP_ANK(R)) 사이의 거리 그래프에 결정된 보행주기(T)가 표현된다. 그래프에서, 보행주기(T)는 2개의 파지티브(+) 피크(Peak2, Peak4)와 1개의 네거티브(-) 피크(Peak3)를 포함할 수 있다. 이후 설명을 위하여 보행주기 이전의 1개의 네거티브 피크를 제1 피크(Peak1)로 정의하고, 보행주기 내의 3개의 피크들을 각각 제2 피크(Peak2), 제3 피크(Peak3) 및 제4 피크(Peak4)로 정의한다. 또한, 제1 피크(Peak1)와 제2 피크(Peak2) 사이의 구간을 (a)구간(Pa), 제2 피크(Peak2)와 제3 피크(Peak3) 사이의 구간을 (b)구간(Pb), 제3 피크(Peak3)와 제4 피크(Peak4) 사이의 구간을 (c)구간(Pc)으로 정의한다.
도시하지는 않았으나, 몇몇 실시예에 따라, 제1 필터링 데이터 생성의 대상이 된 고관절 키포인트의 반대면 고관절 키포인트의 각도 패턴과 기준 각도 패턴의 패턴 매칭을 수행하여 제3 필터링 데이터를 생성하고, 제1 내지 제3 필터링 데이터를 모두 만족하는 보행주기를 결정하는 단계를 더 포함할 수 있다. 예를 들어, 우측 고관절 키포인트에 기초하여 제1 필터링 데이터 및 제1 임시 보행주기를 결정하고, 좌측 고관절 키포인트에 기초하여 제3 필터링 데이터 및 제3 임시 보행주기를 결정하고, 제1 내지 제3 필터링 데이터를 모두 만족하는 보행주기를 결정함으로써 검출의 정확도를 더욱 향상시킬 수 있다.
도 13은 본 발명의 몇몇 실시예에 따라 보행주기의 유효성을 판단하는 방법을 설명하기 위한 도면이고, 도 14a 내지 도 14c는 골반 키포인트 및 발목 키포인트 사이의 수직 거리를 설명하기 위한 도면이고, 도 15는 도 14a의 수직 거리에 기초하여 보행의 유효성을 판단하는 방법을 설명하기 위한 도면이다.
도 13을 참조하면, 본 발명의 몇몇 실시예에 따른 검출 장치(1000)는 보행주기(T) 내에서의 검출 대상자의 보행의 유효성을 판단할 수 있다. 도 6의 S4000 단계는 S4100 및 S4200 단계를 포함할 수 있다.
도 13 및 도 14를 참조하면, S4100 단계에서, 대상 거리 패턴 그래프에서의 골반 키포인트(KP_PV)와 우측 발목 키포인트(KP_ANK(R)) 또는 좌측 발목 키포인트(KP_ANK(L)) 간 수직 거리(D2TG)를 검출할 수 있다. 수직 거리(D2TG)는 지면과 수직인 검출 대상자의 신장 방향을 의미할 수 있다. 일 실시예에 따라, 우측 발목 키포인트(KP_ANK(R)) 및 좌측 발목 키포인트(KP_ANK(L)) 중 골반 키포인트(KP_PV)와의 수직 거리가 가까운 발목 키포인트와의 거리를 수직 거리(D2TG)로 정의할 수 있다. 다른 예로서, 특정 구간에서 측정되는 수직 거리(D2TG)의 대상을 우측 발목 키포인트(KP_ANK(R)) 또는 좌측 발목 키포인트(KP_ANK(L))로 기설정할 수 있다.
예를 들어, 검출 대상자의 우측 발목 키포인트(KP_ANK(R))와 골반 키포인트(KP_PV)와의 거리를 수직 거리(D2TG)로 설정하는 경우, 도 14b에 도시된 바와 같이 우측 발이 들리는 경우에는 수직 거리(D21)가 상대적으로 짧아지고, 우측 발이 지면에 닿아 있는 경우에는 수직 거리(D22)가 상대적으로 길어질 수 있다.
도 13 및 도 15를 참조하면, S4200 단계에서, 검출된 수직 거리(D2TG)에 기초하여 보행주기(T) 내 보행의 유효성을 판단할 수 있다. 도 15에서는 (a)구간(Pa)에서의 수직 거리(D2TG)의 최대값(max) 및 최소값(min)을 기준으로 도시하고 설명하나, (b)구간(Pb) 및 (c)구간(Pc)에서도 실질적으로 동일하게 적용될 수 있다.
일 실시예에 따라, 보행주기(T), 또는 (a)구간(Pa) 내지 (c)구간(Pc)에서의 수직 거리(D2TG)의 최대값(max)과 최소값(min)의 차이값(diff)이 기정의된 기준값 이상인 경우, 보행주기(T)에서의 보행이 유효 보행이라고 결정할 수 있다. 예를 들어, 기준값은 30mm(미리미터)일 수 있다.
다른 예로서, (a)구간(Pa), (b)구간(Pb) 및 (c)구간(Pc) 각각에서 수직 거리(D2TG)의 최대값(max)과 최소값(min)의 차이값(diff)이 기준값 이상인 경우, 보행주기(T)에서의 보행이 유효 보행이라고 결정할 수 있다. 이 때, (a)구간(Pa), (b)구간(Pb) 및 (c)구간(Pc) 각각에서 수직 거리(D2TG)의 대상이 되는 발목 키포인트는 서로 다르게 설정될 수 있다. 예를 들어, (a)구간(Pa)에서는 우측 발목 키포인트(KP_ANK(R))와 골반 키포인트(KP_PV) 사이의 거리가 수직 거리(D2TG)로서 측정되고, (b)구간(Pb)에서는 좌측 발목 키포인트(KP_ANK(L))와 골반 키포인트(KP_PV) 사이의 거리가 수직 거리(D2TG)로서 측정되고, (c)구간(Pc)에서는 다시 우측 발목 키포인트(KP_ANK(R))와 골반 키포인트(KP_PV) 사이의 거리가 수직 거리(D2TG)로서 측정될 수 있다.
본 발명의 몇몇 실시예에 따라, 발목 키포인트(KP_ANK)와 골반 키포인트(KP_PV)의 수직 거리(D2TG)에 기초하여 보행주기(T)가 유효하지 않은 보행(예를 들어, 첫 걸음, 방향 전환 등)인지 여부를 판단할 수 있다. 보행주기(T)의 직전 구간((a)구간(Pa))에서의 수직 거리(D2TG)를 판단하여 첫 걸음인지 여부를 판단할 수 있고, 보행주기(T)에 포함되는 (b)구간(Pb) 및 (c)구간(Pc)에서 유각기(Swing phase)의 발들림이 일어났는지를 확인하여 유효한 걸음인지를 정확하게 판단할 수 있다.
도 16은 본 발명의 몇몇 실시예에 따른 보행이벤트 결정 방법을 설명하기 위한 도면이고, 도 17은 좌/우 발목 키포인트 간 거리 그래프에서 힐-스트라이크 지점을 결정하는 방법을 설명하기 위한 도면이고, 도 18은 좌/우 발목 키포인트 간 거리 그래프에서 토-오프 지점을 결정하는 방법을 설명하기 위한 도면이다.
도 16을 참조하면, 본 발명의 몇몇 실시예에 따른 검출 장치(1000)는 검출 대상자의 대상 거리 패턴 그래프에서의 위치 및 기울기에 기초하여 보행주기 내에서의 보행이벤트를 결정할 수 있다. 도 6의 S5000 단계는 S5100 내지 S5300 단계를 포함할 수 있다.
S5100 단계에서, 검출 대상자의 대상 거리 패턴 그래프에서 (a) 내지 (c) 구간을 결정할 수 있다. 4개의 피크(Peak1, Peak2, Peak3, Peak4)에 기초하여 (a) 내지 (c)구간(Pa, Pb, Pc)을 결정하는 내용은 도 12를 참조하여 설명한 내용과 실질적으로 동일하다.
도 16 및 도 17을 참조하면, S5200 단계에서, (c)구간(Pc)에서의 정방향 위치 및 기울기에 기초하여 힐-스트라이크(HS) 지점을 결정할 수 있다.
일 실시예에 따라, (c)구간(Pc)의 시작 지점, 즉 제3 피크(Peak3)를 시점으로 하여 정방향 그래프 상 위치가 95%인 지점과, 정방향 그래프 상 위치가 70% 내지 95%의 구간에서 정방향 기울기(θHS)가 (c)구간(Pc)에서의 최대 정방향 기울기(θHS)의 20% 이하가 되는 지점 중 빠른 지점을 힐-스트라이크(HS) 지점으로 결정할 수 있다. 즉, 보행주기(T)의 종점인 힐-스트라이크(HS) 지점을 (c)구간(Pc)에서의 대상 거리(D1TG)에 대한 패턴 그래프의 위치 및 기울기를 이용하여 결정할 수 있다.
일 실시예에 따라, (a)구간(Pa)의 시작 지점, 즉 제1 피크(Peak1)를 시점으로 하여 (a)구간(Pa)의 정방향 그래프 상 위치가 95%인 지점과, 정방향 그래프 상 위치가 70% 내지 95%의 구간에서 정방향 기울기(θHS)가 (a)구간(Pa)에서의 최대 정방향 기울기(θHS)의 20% 이하가 되는 지점 중 빠른 지점을 힐-스트라이크(HS) 지점으로 결정할 수 있다. 즉, 보행주기(T)의 시점인 힐-스트라이크(HS) 지점을 (a)구간(Pa)에서의 대상 거리(D1TG)에 대한 패턴 그래프의 위치 및 기울기를 이용하여 결정할 수 있다.
몇몇 실시예에 따라, (a)구간(Pa)에서 결정된 힐-스트라이크(HS) 지점과 (c)구간(Pc)에서 결정된 힐-스트라이크(HS)지점을 각각 시점 및 종점으로 하여 최종 보행주기를 결정하는 단계를 더 포함할 수 있다. 즉, 보행이벤트 검출을 통해 정확한 보행주기를 수정할 수 있다.
도 16 및 도 18을 참조하면, S5300 단계에서, (c)구간(Pc)에서의 역방향 위치 및 기울기에 기초하여 토-오프(TO) 지점을 결정할 수 있다.
일 실시예에 따라, (c)구간(Pc)의 마지막 지점, 즉 제4 피크(Peak4)를 시점으로 하여 역방향 그래프 상 위치가 85%인 지점과, 역방향 그래프 상 위치가 70% 내지 85%의 구간에서 역방향 기울기(θTO)가 (c)구간(Pc)에서의 최대 역방향 기울기(θTO)의 20% 이하가 되는 지점 중 빠른 지점(시간 상으로는 늦은 지점)을 토-오프(TO) 지점으로 결정할 수 있다. 즉, (c)구간(Pc)에서의 대상 거리(D1TG)에 대한 패턴 그래프의 위치 및 기울기를 이용하여 보행이벤트, 구체적으로 토-오프 시점을 더욱 정확하게 결정할 수 있다.
본 문서의 다양한 실시 예들 및 이에 사용된 용어들은 본 문서에 기재된 기술적 특징들을 특정한 실시 예들로 한정하려는 것이 아니며, 해당 실시 예의 다양한 변경, 균등물, 또는 대체물을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 또는 관련된 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다. 아이템에 대응하는 명사의 단수 형은 관련된 문맥상 명백하게 다르게 지시하지 않는 한, 상기 아이템 한 개 또는 복수 개를 포함할 수 있다. 본 문서에서, "A 또는 B", "A 및 B 중 적어도 하나","A 또는 B 중 적어도 하나", "A, B 또는 C", "A, B 및 C 중 적어도 하나" 및 "A, B, 또는 C 중 적어도 하나"와 같은 문구들 각각은 그 문구들 중 해당하는 문구에 함께 나열된 항목들 중 어느 하나, 또는 그들의 모든 가능한 조합을 포함할 수 있다. "제1", "제2"와 같은 용어들은 단순히 해당 구성요소를 다른 해당 구성요소와 구분하기 위해 사용될 수 있으며, 해당 구성요소들을 다른 측면(예: 중요성 또는 순서)에서 한정하지 않는다.
본 문서에서 사용된 용어 "모듈"은 하드웨어, 소프트웨어 또는 펌웨어로 구현된 유닛을 포함할 수 있으며, 예를 들면, 로직, 논리 블록, 부품, 또는 회로와 같은 용어와 상호 호환적으로 사용될 수 있다. 모듈은, 일체로 구성된 부품 또는 하나 또는 그 이상의 기능을 수행하는, 상기 부품의 최소 단위 또는 그 일부가 될 수 있다. 예를 들면, 일 실시 예에 따르면, 모듈은 ASIC(application-specific integrated circuit)의 형태로 구현될 수 있다.
본 문서의 다양한 실시 예들은 기기(machine)(예: 검출 장치(1000)) 의해 읽을 수 있는 저장 매체(storage medium)에 저장된 하나 이상의 명령어들을 포함하는 소프트웨어로서 구현될 수 있다. 예를 들면, 기기(예: 검출 장치(1000)의 프로세서(1300))는, 저장 매체로부터 저장된 하나 이상의 명령어들 중 적어도 하나의 명령을 호출하고, 그것을 실행할 수 있다. 이것은 기기가 상기 호출된 적어도 하나의 명령어에 따라 적어도 하나의 기능을 수행하도록 운영되는 것을 가능하게 한다. 상기 하나 이상의 명령어들은 컴파일러에 의해 생성된 코드 또는 인터프리터에 의해 실행될 수 있는 코드를 포함할 수 있다. 기기로 읽을 수 있는 저장 매체는, 비일시적(non-transitory) 저장 매체의 형태로 제공될 수 있다. 여기서, '비일시적'은 저장 매체가 실재(tangible)하는 장치이고, 신호(signal)(예: 전자기파)를 포함하지 않는다는 것을 의미할 뿐이며, 이 용어는 데이터가 저장 매체에 반영구적으로 저장되는 경우와 임시적으로 저장되는 경우를 구분하지 않는다.
일 실시 예에 따르면, 본 문서에 개시된 다양한 실시 예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory(CD-ROM))의 형태로 배포되거나, 또는 어플리케이션 스토어를 통해 또는 두 개의 사용자 장치들(예: 스마트폰들) 간에 직접, 온라인으로 배포(예: 다운로드 또는 업로드)될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 기기로 읽을 수 있는 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.
다양한 실시 예들에 따르면, 상기 기술한 구성요소들의 각각의 구성요소(예: 모듈 또는 프로그램)는 단수 또는 복수의 개체를 포함할 수 있다. 다양한 실시 예들에 따르면, 전술한 해당 구성요소들 중 하나 이상의 구성요소들 또는 동작들이 생략되거나, 또는 하나 이상의 다른 구성요소들 또는 동작들이 추가될 수 있다. 대체적으로 또는 추가적으로, 복수의 구성요소들(예: 모듈 또는 프로그램)은 하나의 구성요소로 통합될 수 있다. 이런 경우, 통합된 구성요소는 상기 복수의 구성요소들 각각의 구성요소의 하나 이상의 기능들을 상기 통합 이전에 상기 복수의 구성요소들 중 해당 구성요소에 의해 수행되는 것과 동일 또는 유사하게 수행할 수 있다. 다양한 실시 예들에 따르면, 모듈, 프로그램 또는 다른 구성요소에 의해 수행되는 동작들은 순차적으로, 병렬적으로, 반복적으로, 또는 휴리스틱하게 실행되거나, 상기 동작들 중 하나 이상이 다른 순서로 실행되거나, 생략되거나, 또는 하나 이상의 다른 동작들이 추가될 수 있다.

Claims (19)

  1. 컴퓨터 판독 가능한 저장매체에 저장된 컴퓨터 프로그램으로서, 상기 컴퓨터 프로그램은 프로세서로 하여금 이하의 단계들을 수행하게 하기 위한 명령들을 포함하며, 상기 단계들은:
    검출 대상자의 2차원 영상 데이터를 획득하고, 상기 2차원 영상 데이터에 기초하여 3차원 좌표를 추출하는 단계 -상기 3차원 좌표는 상기 검출 대상자의 좌측/우측 고관절(hip joint), 좌측/우측 발목 및 골반에 대한 키포인트를 포함함 -;
    상기 검출 대상자의 분당 걸음수(cadence)를 판단하는 단계;
    상기 좌측 또는 우측 고관절 키포인트의 각도 패턴인 제1 대상 각도 패턴을 추출하는 단계;
    기수집된 복수의 각도 패턴 중 상기 검출 대상자의 분당 걸음수에 대응하는 각도 패턴인 제1 기준 각도 패턴을 결정하는 단계;
    상기 제1 대상 각도 패턴과 상기 제1 기준 각도 패턴의 패턴 매칭(cross-correlate)을 수행하여 제1 필터링 데이터를 생성하는 단계;
    상기 좌측 및 우측 발목 키포인트 간 보행 방향으로의 거리 패턴인 대상 거리 패턴을 추출하는 단계;
    기수집된 복수의 거리 패턴 중 상기 검출 대상자의 분당 걸음수에 대응하는 거리 패턴인 기준 거리 패턴을 결정하는 단계;
    상기 대상 거리 패턴과 상기 기준 거리 패턴의 패턴 매칭을 수행하여 제2 필터링 데이터를 생성하는 단계;
    상기 제1 및 제2 필터링 데이터를 모두 만족하는 보행주기를 결정하는 단계;
    상기 보행주기 내 대상 거리 패턴 그래프에서의 골반 키포인트와 상기 좌측 또는 우측 발목 키포인트 간 수직 방향 거리의 최대값과 최소값의 차이가 기준값 이상인지 여부를 판단하는 단계;
    상기 수직 방향 거리의 최대값과 최소값의 차이가 기준값 이상인 경우, 상기 보행주기에서의 보행이 유효 보행이라고 결정하는 단계; 및
    상기 보행주기에서의 보행이 유효 보행이라고 결정되는 경우, 상기 보행주기에서의 상기 대상 거리 패턴 그래프 상의 위치 및 기울기에 기초하여 힐-스트라이크(Heel-Strike) 및 토-오프(Toe-Off) 지점을 결정하는 단계를 포함하는,
    컴퓨터 판독 가능한 저장매체에 저장된 컴퓨터 프로그램.
  2. 청구항 1에 있어서,
    상기 보행주기 내 상기 대상 거리 패턴 그래프는 2개의 파지티브(+) 피크 및 1개의 네거티브(-) 피크를 포함하고,
    상기 대상 거리 패턴 그래프는 (a)상기 보행주기 이전 시점의 가장 인접한 네거티브 피크인 제1 피크와 상기 보행주기 내의 첫번째 파지티브 피크인 제2 피크 사이의 구간, (b)상기 제2 피크와 상기 보행주기 내의 네거티브 피크인 제3 피크 사이의 구간 및 (c)상기 제3 피크와 상기 보행주기 내의 마지막 파지티브 피크인 제4 피크 사이의 구간을 포함하고,
    상기 수직 방향 거리의 최대값과 최소값의 차이가 기준값 이상인지 여부를 판단하는 단계는, 상기 (a) 내지 (c) 구간 각각에서의 상기 수직 방향 거리의 최대값과 최소값의 차이가 모두 기준값 이상인지 여부를 판단하는 단계를 포함하는,
    컴퓨터 판독 가능한 저장매체에 저장된 컴퓨터 프로그램.
  3. 청구항 2에 있어서,
    상기 기준값은 30mm(미리미터)인,
    컴퓨터 판독 가능한 저장매체에 저장된 컴퓨터 프로그램.
  4. 청구항 1에 있어서,
    상기 보행주기 내 상기 대상 거리 패턴 그래프는 2개의 파지티브(+) 피크 및 1개의 네거티브(-) 피크를 포함하고,
    상기 대상 거리 패턴 그래프는 (a)상기 보행주기 이전 시점의 가장 인접한 네거티브 피크인 제1 피크와 상기 보행주기 내의 첫번째 파지티브 피크인 제2 피크 사이의 구간, (b)상기 제2 피크와 상기 보행주기 내의 네거티브 피크인 제3 피크 사이의 구간 및 (c)상기 제3 피크와 상기 보행주기 내의 마지막 파지티브 피크인 제4 피크 사이의 구간을 포함하고,
    상기 힐-스트라이크 및 토-오프 지점을 결정하는 단계는,
    상기 (c) 구간에서의 상기 대상 거리 패턴 그래프의 정방향 슬로프의 95%인 지점 또는 70% 내지 95%의 구간에서 정방향 슬로프의 기울기가 최대 정방향 기울기의 20%가 되는 지점을 힐-스트라이크로 결정하는 단계; 및
    상기 (c) 구간에서의 상기 대상 거리 패턴 그래프의 역방향 슬로프의 85%인 지점 또는 70% 내지 85%의 구간에서 역방향 슬로프의 기울기가 최대 역방향 기울기의 20%가 되는 지점을 토-오프로 결정하는 단계를 포함하는,
    컴퓨터 판독 가능한 저장매체에 저장된 컴퓨터 프로그램.
  5. 청구항 4에 있어서,
    상기 단계들은,
    상기 (a) 구간에서의 상기 대상 거리 패턴 그래프의 정방향 슬로프의 95%인 지점 또는 70% 내지 95%의 구간에서 정방향 슬로프의 기울기가 최대 정방향 기울기의 20%가 되는 지점을 힐-스트라이크로 결정하는 단계; 및
    상기 (a) 구간에서의 힐-스트라이크 및 상기 (c) 구간에서의 힐-스트라이크 사이의 구간을 최종 보행주기로 결정하는 단계를 더 포함하는,
    컴퓨터 판독 가능한 저장매체에 저장된 컴퓨터 프로그램.
  6. 청구항 1에 있어서,
    상기 단계들은,
    우측 또는 좌측 고관절 키포인트의 각도 패턴인 제2 대상 각도 패턴을 추출하는 단계 -상기 우측 또는 좌측 고관절 키포인트는 상기 제1 대상 각도 패턴의 대상인 고관절의 반대측 고관절 키포인트임-;
    상기 복수의 각도 패턴 중 상기 제2 대상 각도 패턴과의 패턴 매칭을 수행할 제2 기준 각도 패턴을 결정하는 단계; 및
    상기 제2 대상 각도 패턴과 상기 제2 기준 각도 패턴의 패턴 매칭을 수행하여 제3 필터링 데이터를 생성하는 단계를 더 포함하되,
    상기 보행주기를 결정하는 단계는,
    상기 제1 내지 제3 필터링 데이터를 모두 만족하는 보행주기를 결정하는 단계를 포함하는,
    컴퓨터 판독 가능한 저장매체에 저장된 컴퓨터 프로그램.
  7. 컴퓨터 판독 가능한 저장매체에 저장된 컴퓨터 프로그램으로서, 상기 컴퓨터프로그램은 프로세서로 하여금 이하의 단계들을 수행하게 하기 위한 명령들을 포함하며, 상기 단계들은:
    검출 대상자의 2차원 영상 데이터를 획득하고, 상기 2차원 영상 데이터에 기초하여 3차원 좌표를 추출하는 단계-상기 3차원 좌표는 상기 검출 대상자의 고관절 (hip joint), 좌측 발목 및 우측 발목에 대한 키포인트를 포함함-;
    상기 고관절 키포인트의 각도 패턴인 제1 대상 각도 패턴을 추출하는 단계;
    기수집된 복수의 각도 패턴 중 상기 제1 대상 각도 패턴과의 패턴 매칭을 수행할 제1 기준 각도 패턴을 결정하는 단계;
    상기 제1 대상 각도 패턴과 상기 제1 기준 각도 패턴의 패턴 매칭(cross- correlate)을 수행하여 제1 필터링 데이터를 생성하는 단계;
    상기 좌측 및 우측 발목 키포인트 간 보행 방향으로의 거리 패턴인 대상 거리 패턴을 추출하는 단계;
    기수집된 복수의 거리 패턴 중 상기 대상 거리 패턴과의 패턴 매칭을 수행할 기준 거리 패턴을 결정하는 단계;
    상기 대상 거리 패턴과 상기 기준 거리 패턴의 패턴 매칭을 수행하여 제2 필터링 데이터를 생성하는 단계; 및
    상기 제1 및 제2 필터링 데이터를 모두 만족하는 보행주기를 결정하는 단계
    를 포함하는,
    컴퓨터 판독 가능한 저장매체에 저장된 컴퓨터 프로그램.
  8. 청구항 7에 있어서,
    상기 단계들은, 상기 검출 대상자의 분당 걸음수(cadence)를 판단하는 단계를 더 포함하되,
    상기 제1 기준 각도 패턴을 결정하는 단계는, 상기 복수의 각도 패턴 중 상기 검출 대상자의 분당 걸음수에 대응하는 각도 패턴을 상기 제1 기준 각도 패턴으로 결정하는 단계를 포함하고,
    상기 기준 거리 패턴을 결정하는 단계는, 상기 복수의 거리 패턴 중 상기 검출 대상자의 분당 걸음수에 대응하는 거리 패턴을 상기 기준 거리 패턴으로 결정하는 단계를 포함하는,
    컴퓨터 판독 가능한 저장매체에 저장된 컴퓨터 프로그램.
  9. 청구항 7에 있어서,
    상기 단계들은,
    서브 고관절 키포인트의 각도 패턴인 제2 대상 각도 패턴을 추출하는 단계 -상기 서브 고관절 키포인트는 상기 제1 대상 각도 패턴의 대상인 고관절 키포인트의 반대측 고관절 키포인트임-;
    상기 복수의 각도 패턴 중 상기 제2 대상 각도 패턴과의 패턴 매칭을 수행할 제2 기준 각도 패턴을 결정하는 단계; 및
    상기 제2 대상 각도 패턴과 상기 제2 기준 각도 패턴의 패턴 매칭을 수행하여 제3 필터링 데이터를 생성하는 단계를 더 포함하되,
    상기 보행주기를 결정하는 단계는,
    상기 제1 내지 제3 필터링 데이터를 모두 만족하는 보행주기를 결정하는 단계를 포함하는,
    컴퓨터 판독 가능한 저장매체에 저장된 컴퓨터 프로그램.
  10. 청구항 7에 있어서,
    상기 3차원 좌표는 상기 검출 대상자의 골반에 대한 키포인트를 더 포함하고,
    상기 단계들은,
    상기 보행주기 내 상기 골반 키포인트와 상기 좌측 또는 우측 발목 키포인트간 수직 방향 거리의 최대값과 최소값의 차이가 기준값 이상인지 여부에 기초하여 상기 보행주기 내 보행의 유효성을 판단하는 단계를 더 포함하는,
    컴퓨터 판독 가능한 저장매체에 저장된 컴퓨터 프로그램.
  11. 청구항 7에 있어서,
    상기 단계들은,
    상기 보행주기에서의 상기 대상 거리 패턴에 대한 그래프 상의 위치 및 기울기에 기초하여 힐-스트라이크(Heel-Strike) 및 토-오프(Toe-Off) 지점을 결정하는 단계를 더 포함하는,
    컴퓨터 판독 가능한 저장매체에 저장된 컴퓨터 프로그램.
  12. 청구항 11에 있어서,
    상기 단계들은,
    상기 결정된 힐-스트라이크 및 토-오프 지점에 기초하여 수정된 수정 보행주기를 결정하는 단계를 더 포함하는,
    컴퓨터 판독 가능한 저장매체에 저장된 컴퓨터 프로그램.
  13. 컴퓨터 판독 가능한 저장매체에 저장된 컴퓨터 프로그램으로서, 상기 컴퓨터프로그램은 프로세서로 하여금 이하의 단계들을 수행하게 하기 위한 명령들을 포함하며, 상기 단계들은:
    검출 대상자의 2차원 영상 데이터를 획득하고, 상기 2차원 영상 데이터에 기초하여 3차원 좌표를 추출하는 단계-상기 3차원 좌표는 상기 검출 대상자의 좌측 발목 및 우측 발목에 대한 키포인트를 포함함-;
    상기 2차원 영상 데이터 및 상기 3차원 좌표에 기초하여 임시 보행주기를 결정하는 단계; 및
    상기 임시 보행주기와, 상기 검출 대상자의 좌측 및 우측 발목 키포인트 간보행 방향으로의 거리 패턴인 대상 거리 패턴 그래프 상의 위치 및 기울기에 기초하여 힐-스트라이크(Heel-Strike) 및 토-오프(Toe-Off) 지점을 결정하는 단계를 포함하는,
    컴퓨터 판독 가능한 저장매체에 저장된 컴퓨터 프로그램.
  14. 청구항 13에 있어서,
    상기 3차원 좌표는 상기 검출 대상자의 골반에 대한 키포인트를 더 포함하고,
    상기 단계들은,
    상기 대상 거리 패턴 그래프에서의 골반 키포인트와 상기 좌측 또는 우측 발목 키포인트 간 수직 방향 거리의 최대값과 최소값의 차이가 기준값 이상인지 여부를 판단하는 단계; 및
    상기 수직 방향 거리의 최대값과 최소값의 차이가 기준값 이상인 경우, 상기 임시 보행주기에서의 보행이 유효 보행이라고 결정하는 단계를 더 포함하되,
    상기 힐-스트라이크 및 토-오프 지점을 결정하는 단계는, 상기 임시 보행주기에서의 보행이 유효 보행이라고 결정되는 경우에 수행되는,
    컴퓨터 판독 가능한 저장매체에 저장된 컴퓨터 프로그램.
  15. 청구항 14에 있어서,
    상기 임시 보행주기 내 상기 대상 거리 패턴 그래프는 2개의 파지티브(+) 피크 및 1개의 네거티브(-) 피크를 포함하고,
    상기 대상 거리 패턴 그래프는 (a)상기 임시 보행주기 이전 시점의 상기 임시 보행주기와 가장 인접한 네거티브 피크인 제1 피크와 상기 임시 보행주기 내의첫번째 파지티브 피크인 제2 피크 사이의 구간, (b)상기 제2 피크와 상기 임시 보행주기 내의 네거티브 피크인 제3 피크 사이의 구간 및 (c)상기 제3 피크와 상기 임시 보행주기 내의 마지막 파지티브 피크인 제4 피크 사이의 구간을 포함하고,
    상기 수직 방향 거리의 최대값과 최소값의 차이가 기준값 이상인지 여부를 판단하는 단계는, 상기 (a) 내지 (c) 구간 각각에서의 상기 수직 방향 거리의 최대 값과 최소값의 차이가 모두 기준값 이상인지 여부를 판단하는 단계를 포함하는,
    컴퓨터 판독 가능한 저장매체에 저장된 컴퓨터 프로그램.
  16. 청구항 15에 있어서,
    상기 기준값은 30mm(미리미터)인,
    컴퓨터 판독 가능한 저장매체에 저장된 컴퓨터 프로그램.
  17. 청구항 13에 있어서,
    상기 임시 보행주기 내 상기 대상 거리 패턴 그래프는 2개의 파지티브(+) 피크 및 1개의 네거티브(-) 피크를 포함하고,
    상기 대상 거리 패턴 그래프는 (a)상기 임시 보행주기 이전 시점의 상기 임시 보행주기와 가장 인접한 네거티브 피크인 제1 피크와 상기 임시 보행주기 내의첫번째 파지티브 피크인 제2 피크 사이의 구간, (b)상기 제2 피크와 상기 임시 보행주기 내의 네거티브 피크인 제3 피크 사이의 구간 및 (c)상기 제3 피크와 상기 임시 보행주기 내의 마지막 파지티브 피크인 제4 피크 사이의 구간을 포함하고,
    상기 힐-스트라이크 및 토-오프 지점을 결정하는 단계는,
    상기 (c) 구간에서의 상기 대상 거리 패턴 그래프의 정방향 슬로프의 95%인지점 또는 상기 정방향 슬로프의 70% 내지 95%의 구간에서 상기 정방향 슬로프의 기울기가 최대 정방향 기울기의 20%가 되는 지점을 힐-스트라이크로 결정하는 단계를 포함하는,
    컴퓨터 판독 가능한 저장매체에 저장된 컴퓨터 프로그램.
  18. 청구항 17에 있어서,
    상기 힐-스트라이크 및 토-오프 지점을 결정하는 단계는,
    상기 (c) 구간에서의 상기 대상 거리 패턴 그래프의 역방향 슬로프의 85%인지점 또는 상기 역방향 슬로프의 70% 내지 85%의 구간에서 상기역방향 슬로프의 기울기가 최대 역방향 기울기의 20%가 되는 지점을 토-오프로 결정하는 단계를 포함하는,
    컴퓨터 판독 가능한 저장매체에 저장된 컴퓨터 프로그램.
  19. 청구항 18에 있어서,
    상기 단계들은,
    상기 (a) 구간에서의 상기 대상 거리 패턴 그래프의 정방향 슬로프의 95%인지점 또는 상기 정방향 슬로프의 70% 내지 95%의 구간에서 상기 정방향 슬로프의 기울기가 최대 정방향 기울기의 20%가 되는 지점을 힐-스트라이크로 결정하는 단계; 및
    상기 (a) 구간에서의 힐-스트라이크 및 상기 (c) 구간에서의 힐-스트라이크 사이의 구간을 최종 보행 주기로 결정하는 단계를 더 포함하는,
    컴퓨터 판독 가능한 저장매체에 저장된 컴퓨터 프로그램.
PCT/KR2022/014152 2021-11-30 2022-09-22 딥러닝 기반의 보행 패턴 검출 방법 및 이를 수행하는 컴퓨터 프로그램 WO2023163305A1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
KR20210167879 2021-11-30
KR10-2022-0024049 2022-02-24
KR1020220024049A KR20230081560A (ko) 2021-11-30 2022-02-24 딥러닝 기반의 보행 패턴 검출 방법 및 이를 수행하는 컴퓨터 프로그램

Publications (1)

Publication Number Publication Date
WO2023163305A1 true WO2023163305A1 (ko) 2023-08-31

Family

ID=82607241

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2022/014152 WO2023163305A1 (ko) 2021-11-30 2022-09-22 딥러닝 기반의 보행 패턴 검출 방법 및 이를 수행하는 컴퓨터 프로그램

Country Status (2)

Country Link
KR (3) KR20230081560A (ko)
WO (1) WO2023163305A1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230081560A (ko) * 2021-11-30 2023-06-07 주식회사 리모 딥러닝 기반의 보행 패턴 검출 방법 및 이를 수행하는 컴퓨터 프로그램

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010172394A (ja) * 2009-01-27 2010-08-12 Panasonic Electric Works Co Ltd 歩行状態表示装置
KR20100111460A (ko) * 2009-04-07 2010-10-15 연세대학교 산학협력단 모션 센서를 이용한 보행주기 검출시스템과 방법
JP2018206246A (ja) * 2017-06-08 2018-12-27 公益財団法人鉄道総合技術研究所 歩行パターン計測システム及び方法
KR102285632B1 (ko) * 2019-01-03 2021-08-04 한국전자기술연구원 보행패턴을 이용한 건강이상감지 시스템 및 방법
KR102336728B1 (ko) * 2021-03-17 2021-12-08 주식회사 디지털휴먼랩 보행분석시스템
KR102421933B1 (ko) * 2021-11-30 2022-07-19 주식회사 리모 딥러닝 기반의 보행이벤트 검출 방법 및 이를 수행하는 컴퓨터 프로그램

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102565867B1 (ko) 2020-04-21 2023-08-11 한국전자통신연구원 지면 반력 측정 장치 및 방법

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010172394A (ja) * 2009-01-27 2010-08-12 Panasonic Electric Works Co Ltd 歩行状態表示装置
KR20100111460A (ko) * 2009-04-07 2010-10-15 연세대학교 산학협력단 모션 센서를 이용한 보행주기 검출시스템과 방법
JP2018206246A (ja) * 2017-06-08 2018-12-27 公益財団法人鉄道総合技術研究所 歩行パターン計測システム及び方法
KR102285632B1 (ko) * 2019-01-03 2021-08-04 한국전자기술연구원 보행패턴을 이용한 건강이상감지 시스템 및 방법
KR102336728B1 (ko) * 2021-03-17 2021-12-08 주식회사 디지털휴먼랩 보행분석시스템
KR102421933B1 (ko) * 2021-11-30 2022-07-19 주식회사 리모 딥러닝 기반의 보행이벤트 검출 방법 및 이를 수행하는 컴퓨터 프로그램

Also Published As

Publication number Publication date
KR102421932B1 (ko) 2022-07-19
KR102421933B1 (ko) 2022-07-19
KR20230081560A (ko) 2023-06-07

Similar Documents

Publication Publication Date Title
WO2023163305A1 (ko) 딥러닝 기반의 보행 패턴 검출 방법 및 이를 수행하는 컴퓨터 프로그램
WO2016099052A1 (ko) 시각장애인을 위한 3차원 장애물 안내장치와 이를 이용한 주위 정보 안내시스템 및 그 방법
WO2016122069A1 (ko) 타이어 마모도 측정 방법 및 그 장치
WO2013042928A1 (ko) 부분방전 결함유형 판정 방법 및 그 장치
WO2021182713A1 (ko) 낙상 예방을 위한 하이브리드 보행 분석장치 및 그를 포함하는 낙상 예방 관리시스템
WO2021225249A1 (ko) 보행 분석 시스템 및 방법
WO2018097621A1 (ko) 보행 분석 시스템, 방법 및 컴퓨터 판독 가능한 기록매체
WO2011136407A1 (ko) 스테레오 카메라를 이용한 영상인식장치 및 방법
WO2017115887A1 (ko) 동작 인식 기반의 게임을 제공하기 위한 장치, 이를 위한 방법 및 이 방법이 기록된 컴퓨터 판독 가능한 기록매체
WO2022080869A1 (ko) 이미지를 이용한 3차원 지도의 업데이트 방법 및 이를 지원하는 전자 장치
CN109249429B (zh) 一种双足机器人地形分类系统
WO2020116898A2 (ko) 휴대용 심폐 소생기 및 심폐 소생술 제공방법
WO2019098421A1 (ko) 모션 정보를 이용한 객체 복원 장치 및 이를 이용한 객체 복원 방법
WO2017090815A1 (ko) 관절 가동 범위를 측정하는 장치 및 방법
WO2018194227A1 (ko) 딥러닝을 이용한 3차원 터치 인식 장치 및 이를 이용한 3차원 터치 인식 방법
WO2012133962A1 (ko) 스테레오 카메라를 이용한 3차원 동작 인식장치 및 인식방법
WO2011136405A1 (ko) 3d 카메라를 이용한 영상인식장치 및 방법
WO2021025242A1 (ko) 전자 장치 및 그의 실내 환경에서 반사에 의한 객체 허상을 식별하기 위한 방법
KR20210105455A (ko) 보행 보조 시스템
WO2023096133A1 (ko) 경량화된 자세 추정 모델 제공 장치 및 방법
WO2023282389A1 (ko) 두경부 영상 이미지를 이용한 지방량 산출 방법 및 이를 위한 장치
WO2022181919A1 (ko) 가상 현실 기반의 수술 환경을 제공하는 장치 및 방법
WO2019151555A1 (ko) 물체 검출 방법 및 로봇 시스템
WO2021206209A1 (ko) 스마트 팩토리 구축을 위한 마커리스 기반의 ar 구현 방법 및 시스템
WO2017026566A1 (ko) 파이프에 대한 3차원 스캔 장치 및 3차원 스캔 영상 생성 방법

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

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE