WO2022080844A1 - 스켈레톤 분석을 이용한 객체 추적 장치 및 방법 - Google Patents

스켈레톤 분석을 이용한 객체 추적 장치 및 방법 Download PDF

Info

Publication number
WO2022080844A1
WO2022080844A1 PCT/KR2021/014078 KR2021014078W WO2022080844A1 WO 2022080844 A1 WO2022080844 A1 WO 2022080844A1 KR 2021014078 W KR2021014078 W KR 2021014078W WO 2022080844 A1 WO2022080844 A1 WO 2022080844A1
Authority
WO
WIPO (PCT)
Prior art keywords
information
skeleton
tracking
frame
interest
Prior art date
Application number
PCT/KR2021/014078
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 WO2022080844A1 publication Critical patent/WO2022080844A1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/277Analysis of motion involving stochastic approaches, e.g. using Kalman filters
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/269Analysis of motion using gradient-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20036Morphological image processing
    • G06T2207/20044Skeletonization; Medial axis transform
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/12Bounding box
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V2201/00Indexing scheme relating to image or video recognition or understanding
    • G06V2201/03Recognition of patterns in medical or anatomical images
    • G06V2201/033Recognition of patterns in medical or anatomical images of skeletal patterns

Definitions

  • the present invention relates to an apparatus and method for tracking an object using skeleton analysis, and more particularly, by analyzing the joints of an object corresponding to a person in a frame of an image to generate skeleton information, and then based on the skeleton information for each object generated in an existing frame to detect the same object by comparing it with the prediction information for each object generated for the change of the joint point and scale of the object at the position predicted in the next frame, and update the tracking information for the same object to accurately track the same object It relates to an object tracking device and method using skeleton analysis that supports it.
  • the present invention identifies the joint of an object corresponding to a person through image analysis and obtains skeleton information while calculating the predicted information on the size of the object and the position of a specific joint at the expected position of the object based on the skeleton information, Reliability in object tracking by tracking the object in a way that judges the same object through comparison of the skeleton information obtained from the next image and the prediction information to accurately detect and track the same object without depending on the visual characteristics of the image
  • the purpose is to support to increase the
  • an object of the present invention is to support to further increase the accuracy and reliability of the determination of the same object by additionally comparing the visual characteristics of the object determined as the same object in the previous image and the current image based on the skeleton information.
  • the object tracking device receives a frame for an image, and the frame is a learning model trained to generate skeleton information according to joint recognition of an object corresponding to a person. is applied to generate skeleton information including key points for each joint recognized for the object identified in the image and the scale of the object, and assigns a unique identifier to correspond to the identified object to determine the unique identifier and the A skeleton analysis step of generating tracking information including a ground ground location that is a ground ground location of the identified object corresponding to the identified object, and the object tracking device for each object identified in the frame through the skeleton analysis step A prediction step of applying the generated skeleton information to a Kalman filter to generate prediction information for each object, which is a reference point that is a key point corresponding to a neck in the next frame of the frame, and prediction information that is information predicted about the scale of the object; The tracking device compares the skeleton information of a specific object generated by performing the skeleton
  • the updating step when the object tracking device matches the specific object with the object of interest, a unique identifier included in the tracking information corresponding to the specific object in the new frame is added to the object of interest Converts to a unique identifier identical to the unique identifier assigned to , and adds the ground grounding position of the specific object to the tracking information of the object of interest based on the tracking information of the specific object. It may be characterized in that the tracking information of the object of interest is updated to include information on the movement position by time.
  • the skeleton analysis step further comprises the step of including, in the tracking information, information about the bounding box generated by the object tracking apparatus setting a bounding box to the identified object, in the tracking information,
  • the object tracking device adds information about the bounding box included in the tracking information of the specific object to the tracking information of the object of interest so that information on the location change of the bounding box of the object of interest over time is included. It may be characterized in that it further comprises the step of updating the tracking information of the object.
  • the matching step the reference point included in the skeleton information of the specific object generated by the object tracking device for the new frame and the reference point included in the prediction information for each object generated for the existing frame Points are compared for each object according to a preset first equation to calculate a position score for each object, and the scale included in the skeleton information of the specific object and the scale included in the prediction information for each object are in a preset second equation After calculating the scale score for each object by comparing each object according to each object, the final score is calculated by adding up the position score and the scale score for each object. It may be characterized in that it further comprises the step of identifying as the object of interest.
  • the first equation is
  • the Pscore is the location score, and the coordinates of the reference point included in the skeleton information of the specific object and the coordinates of the reference point included in the prediction information of the object generated for the existing frame are the Manhattan distance. It may be characterized in that it is applied to
  • the second equation is,
  • the Sscore is the scale score
  • the minScale is the smaller of the scale included in the skeleton information of the specific object and the scale included in the prediction information of the object generated for the existing frame
  • the maxScale is the specific It may be characterized as a larger value among a scale included in the object's skeleton information and a scale included in the object's prediction information generated for the existing frame.
  • the scale included in the skeleton information is
  • the r limb is a first key point corresponding to the elbow, a second key point corresponding to the hip, a third key point corresponding to the knee, and a fourth key point corresponding to the ankle. It is a radius calculated on the basis of pixels for each key point for each joint including the key point, and the C limb is calculated by the learning model for each key point for each joint except for the reference point included in the skeleton information. It is reliability, and the R limb may be characterized as a preset weight for each key point for each joint except for the reference point.
  • the method may further include an event detection step of generating an event when the updated tracking information corresponding to the object of interest satisfies a preset condition.
  • the boundary area of the specific object is determined based on the skeleton information corresponding to the specific object. Identifies and sets a mask area for the specific object, and sets a mask area for each of the plurality of objects of interest identified as matching the specific object in the existing frame in the same manner as in the setting method of the mask area for the specific object setting, and calculating a Gaussian score for the ratio of pixels belonging to a preset band among a plurality of Gaussian distributions calculated through SMOG-based Gaussian modeling for a plurality of pixels included in the mask region of the specific object, and After calculating a Gaussian score in the same manner as for calculating the Gaussian score for the mask region of the specific object for the mask region for each object of interest of
  • the method may further include a visual comparison step of selecting an object having the smallest difference between the specific object and the Gaussian score as the object of interest matching the specific object
  • the object tracking apparatus using skeleton analysis receives a frame for an image, and applies the frame to a learning model learned to generate skeleton information according to joint recognition of an object corresponding to a person. Generates skeleton information including a key point for each joint recognized for the object identified in the image and the scale of the object, and assigns a unique identifier to correspond to the identified object
  • a skeleton analysis unit that generates tracking information including a ground ground position, which is a grounding position on the ground, corresponding to the identified object, and the skeleton information generated for each object identified in the frame through the skeleton analysis unit is applied to a Kalman filter
  • a prediction unit generating prediction information for each object, which is a reference point, which is a key point corresponding to the neck, and prediction information, which is information predicted on the scale of an object, and a specific generated through the skeleton analysis unit for a new frame
  • An object of interest matching the specific object exists among one or more objects corresponding to the
  • the object tracking apparatus generates skeleton information through joint and scale analysis for a specific object identified in a frame and tracking information for object tracking every time a frame constituting an image is received, while generating the skeleton information of the object.
  • the predicted movement position and the scale change of the object expected for the key point corresponding to the neck of the specific object in the next frame are predicted through the Kalman filter, and the specific object in the existing frame in the next frame. It is possible to accurately track the same object by updating the tracking information of the same object with the tracking information of the specific object while detecting the object for which the skeleton information closest to the prediction information generated for the object is generated as the same object as the specific object, , through this, in the case of an object tracking method that relies on visual characteristics as in the past, it is possible to accurately track the same object continuously without interruption even when it is difficult to track an object because a large number of objects are clustered and dispersed in the image, thus increasing the reliability of object tracking. heightening effect.
  • the present invention further compares the visual characteristics of the object determined as the same object in the previous frame and the current frame based on the skeleton information to verify the result of the same object determination, thereby further increasing the accuracy and reliability of the same object determination It works.
  • FIG. 1 is a block diagram of an object tracking apparatus using skeleton analysis according to an embodiment of the present invention.
  • FIGS. 2 to 6 are diagrams illustrating an operation of an object tracking apparatus using skeleton analysis according to an embodiment of the present invention.
  • FIG. 7 is a flowchart of an object tracking method of an object tracking apparatus using skeleton analysis according to an embodiment of the present invention.
  • an object tracking apparatus (hereinafter referred to as an object tracking apparatus) using a skeleton analysis according to an embodiment of the present invention will be described with reference to the drawings.
  • FIG. 1 is a block diagram of an object tracking apparatus 100 according to an embodiment of the present invention
  • FIG. 2 is an exemplary operation diagram of the object tracking apparatus 100 .
  • the object tracking apparatus 100 may include a communication unit 110 , a storage unit 130 , and a control unit 120 .
  • the communication unit 110 may be connected to communicate with an external device through a communication network to receive an image of a space to be monitored.
  • the communication network described in the present invention may include a wired/wireless communication network, and as an example of such a wireless communication network, a wireless LAN (WLAN), a DLNA (Digital Living Network Alliance), a WiBro (Wireless Broadband: Wibro), WiMAX (World Interoperability for Microwave Access: Wimax), GSM (Global System for Mobile communication), CDMA (Code Division Multi Access), CDMA2000 (Code Division Multi Access 2000), EV-DO (Enhanced Voice-Data Optimized or Enhanced Voice- Data Only), Wideband CDMA (WCDMA), High Speed Downlink Packet Access (HSDPA), High Speed Uplink Packet Access (HSUPA), IEEE 802.16, Long Term Evolution (LTE), Long Term Evolution-A (LTE-A) Advanced), Wireless Mobile Broadband Service (WMBS), 5G mobile communication service, Bluetooth (Bluetooth), LoRa (Long Range), RFID (Radio Frequency Identification), Infrared Data Association (IrDA), Ultra Wideband (UWB), ZigBee
  • WLAN
  • the external device may be a camera or an image storage device for storing images (eg, a digital video recorder (DVR) or a network video recorder (NVR)).
  • DVR digital video recorder
  • NVR network video recorder
  • the object tracking apparatus 100 may be configured as a component of the external device.
  • control unit 120 may perform an overall control function of the object tracking device 100 , and the control unit 120 may include RAM, ROM, CPU, GPU, and a bus, and may include RAM, ROM, and CPU. , GPU, etc. may be connected to each other through a bus.
  • the object tracking apparatus 100 may be configured to further include a storage unit 130 , and the storage unit 130 stores various programs and data necessary for the operation of the control unit 120 described in the present invention. may be stored, or the image may be stored.
  • the storage unit 130 and the communication unit 110 may be included as components of the control unit 120 .
  • control unit 120 controls the skeleton analysis unit 121 , the prediction unit 122 , the matching unit 123 , the update unit 124 , and the event detection unit 125 . may be included.
  • the skeleton analyzing unit 121 receives a frame constituting an image, and when receiving the frame, identifies an object corresponding to a person in the frame while identifying the identified object.
  • a key point and object for each joint recognized for the object identified in the frame by applying the learning model preset to the skeleton analysis unit 121 after learning to generate skeleton information according to joint recognition is completed Skeleton information including the scale of may be generated.
  • the learning model may be composed of a deep learning algorithm
  • the deep learning algorithm may be composed of one or more neural network models.
  • the neural network model (or neural network) described in the present invention may be composed of an input layer, one or more hidden layers, and an output layer, and the neural network model includes a Deep Neural Network (DNN). , Recurrent Neural Network (RNN), Convolutional Neural Network (CNN), etc., can be applied to various types of neural networks.
  • DNN Deep Neural Network
  • RNN Recurrent Neural Network
  • CNN Convolutional Neural Network
  • the learning model can identify an object corresponding to a person in the frame, identify a point corresponding to a joint with respect to the identified object, and set coordinates for a point corresponding to the joint as the key point.
  • the coordinates may have an x-coordinate value and a y-coordinate value.
  • the key points for each joint may be connected to each other by a line between adjacent key points and included in the skeleton information.
  • the learning model may calculate the reliability (or joint reliability) of the coincidence probability with the actual joint (or the position of the actual joint) for each of one or more joints identified in the object corresponding to the person, and the skeleton
  • the analysis unit 121 may match the reliability calculated by the learning model for each key point of each joint included in the skeleton information, and include the reliability for each joint in the skeleton information.
  • the learning model uses each of the one or more joints identified in the object as a key point corresponding to a neck, a key point corresponding to an elbow, a key point corresponding to a hip, and a knee.
  • a key point for each joint may be generated so that a key point corresponding to , and a key point corresponding to an ankle are distinguished.
  • the key point corresponding to the neck may be an intermediate point of both shoulders identified in the object corresponding to the person.
  • the learning model includes label information labeled on the key point in the skeleton information to identify which joint of the neck, elbow, hip, knee and ankle is the key point for each key point for each joint.
  • the key point may be generated to be able to identify the key point for which joint.
  • the key point corresponding to the elbow, the key point corresponding to the hip, the key point corresponding to the knee, and the key point corresponding to the ankle may be generated in plurality.
  • the skeleton analyzer 121 may generate information on the scale of the object based on key points for each joint calculated by the learning model.
  • the skeleton analyzer 121 sets a key point corresponding to the neck as a reference point, and based on the reference point, the radius for each of the key points for each one or more joints identified in the frame except for the reference point. Calculated, weighted in advance in the skeleton analysis unit 121 for the identified one or more joints for each joint, and the reliability obtained in response to the joint by weighting the radius of the joint to obtain a weighted reflection value for each joint Then, the scale of the object can be calculated by averaging the weight reflection values for all joints.
  • the skeleton analysis unit 121 calculates a radius for each key point of one or more joints identified in the frame except for the reference point, and a weight and reliability corresponding to the joint in the radius calculated for each joint
  • the scale may be calculated by weighted average of .
  • the radius may be a distance between the reference point and a key point of a joint other than the reference point.
  • the skeleton analysis unit 121 is the first joint corresponding to the neck, the second joint corresponding to the elbow, and the third joint corresponding to the hip are identified in the object in the first joint.
  • a preset weight corresponding to the second joint and a preset weight corresponding to the second joint and a radius between the key point corresponding to the second joint and the reference point based on the reference point A first weight reflection value is obtained by weighting a corresponding reliability (included in the skeleton information), and a radius between the key point corresponding to the third joint and the reference point based on the reference point corresponds to the third joint to obtain a second weight reflection value by weighting a preset weight and reliability corresponding to the third joint, and calculate the scale of the object by averaging the first weight reflection value and the second weight reflection value .
  • the skeleton analyzer 121 may include preset weighting information for each joint, and one of a plurality of weights preset in the setting information corresponding to each key point for each joint.
  • the weight of the key point corresponding to the ankle may be set to the highest value.
  • the reason that the weight corresponding to the ankle is set to the highest value is that the key point corresponding to the ankle has the longest distance from the key point corresponding to the neck, which is the reference point, and thus has the lowest uncertainty and dispersion compared to key points in other joints. This is because the scale of the object can be reflected with the highest accuracy.
  • the weight corresponding to the joint for the elbow is set to 0.273
  • the weight corresponding to the joint to the hip is set to 0.416
  • the weight corresponding to the joint to the knee is set to 0.713
  • the weight corresponding to the joint for the ankle is set to 1.0 in the setting information.
  • the skeleton analyzer 121 may allocate a unique identifier for distinguishing (distinguish) from other objects corresponding to the object identified in the frame, and the identification on the unique identifier and the ground identified in the frame. Tracking information including a ground grounding position, which is a grounding location of the object, may be generated corresponding to the identified object.
  • the skeleton analyzer 121 may set a unique identifier included in the tracking information to the skeleton information corresponding to the tracking information.
  • the object identified corresponding to the frame described in the present invention may mean an object in which the skeleton information is generated.
  • the learning model set in the skeleton analyzer 121 may calculate key points for other joints in addition to the joints, but the skeleton analyzer 121 is configured for each preset joint included in the skeleton information. Based on the label information as key points, a key point corresponding to a neck, a key point corresponding to an elbow, a key point corresponding to a hip, a key point corresponding to a knee, and an ankle Only key points corresponding to (ankle) are included, and a scale can be calculated based on these key points for each joint.
  • the skeleton analyzer 121 may use only key points for a plurality of preset joints for object tracking.
  • the prediction unit 122 works with the skeleton analyzer 121 to apply the skeleton information generated for each object identified in the frame through the skeleton analyzer 121 to a Kalman filter.
  • the reference point which is a key point corresponding to the neck
  • prediction information which is information predicted for the scale of the object
  • the prediction unit 122 corresponds to a reference point that is a key point corresponding to a neck of a specific object identified in a specific frame through the Kalman filter, and predicts corresponding to the specific object in the next frame of the specific frame.
  • the predicted position (predicted movement position) of the reference point and the predicted value for the scale (scale change) of the specific object predicted in the next frame corresponding to the scale of the specific object included in the skeleton information calculated in the specific frame It is possible to generate prediction information including
  • the prediction unit 122 may use three Kalman filters, and apply the x-coordinate of the reference point to the first Kalman filter among the three Kalman filters to obtain the x-coordinate of the reference point predicted in the next frame. calculating, applying the y-coordinate of the reference point to a second Kalman filter among the three Kalman filters to calculate the y-coordinate of the reference point predicted in the next frame, and setting the scale (value) of the object to the three A prediction scale (value) of the object predicted in the next frame may be calculated by applying the third Kalman filter among the Kalman filters.
  • the skeleton analyzer 121 generates skeleton information and tracking information for each object included in the frame every time a frame is received, and the prediction unit 122 is the object identified by the skeleton analyzer 121. Correspondingly, prediction information may be generated.
  • the skeleton analyzer 121 or the prediction unit 122 matches the skeleton information generated corresponding to the specific object identified in the specific frame with the tracking information and the prediction information, and then the specific frame or the frame of the specific frame The identification information may be matched and stored in the storage unit 130 .
  • the skeleton analysis unit 121 or the prediction unit 122 may store the prediction information in the storage unit 130 by including the prediction information in the tracking information corresponding to the prediction information on a frame basis.
  • the skeleton analyzer 121 or the prediction unit 122 may provide the matching unit 123 with information about the skeleton generated corresponding to the object identified in the frame whenever the frame is received.
  • the matching unit 123 corresponds to the specific object identified in the new frame included in the image by the skeleton analysis unit 121 or the prediction unit 122, the skeleton generated through the skeleton analysis unit 121 information can be received.
  • the matching unit 123 compares the skeleton information of the specific object with the prediction information for each object generated through the prediction unit 122 with respect to the existing frame generated before the generation of the new frame and the reference point and scale. Based on the comparison, it may be determined whether an object of interest matching the specific object exists among one or more objects corresponding to the existing frame.
  • the matching unit 123 stores the skeleton information of a specific object identified in the new frame and the prediction information for each object generated corresponding to the previous frame, which is an existing frame generated just before the generation of the new frame, in the storage unit ( 130) can be extracted.
  • the existing frame may be a frame generated before the generation of the previous frame.
  • the matching unit 123 compares the reference point included in the skeleton information corresponding to the specific object identified in the new frame and the scale of the specific object to the object predicted in the new frame for each object identified in the previous frame. It is possible to determine whether an object of interest, which is an object matching the specific object, exists among the one or more objects identified in the existing frame by comparing the prediction information for each object including the reference point and the scale of the object with the same properties.
  • the matching unit 123 sets the reference point included in the skeleton information of the specific object generated for the new frame and the reference point included in the prediction information for each object generated for the existing frame to the preset Equation 1 below. Accordingly, by comparing for each object identified in the existing frame, it is possible to calculate a position comparison score according to the comparison of a reference point with the specific object for each object identified in the existing frame.
  • the Pscore is the position comparison score
  • the coordinates of the reference point included in the skeleton information of the specific object and the coordinates of the reference point included in the prediction information of the object generated for the existing frame (identified in the existing frame) may be applied to the Manhattan distance.
  • the difference between the position of the reference point predicted in the new frame for the first object identified in the existing frame corresponding to the scale comparison score and the reference point of the second object identified in the new frame is Since it means small, it may be determined that there is a high probability that the first object and the second object are the same object.
  • the matching unit 123 compares the scale included in the skeleton information of the specific object with the scale included in the prediction information for each object for each object identified in the existing frame according to Equation 2 below, which is set in advance.
  • a scale comparison score for each object according to a scale comparison with the specific object for each object identified in the frame may be calculated.
  • the Sscore is the scale comparison score
  • the minScale is the smaller of the scale included in the skeleton information of the specific object and the scale included in the prediction information of the object generated (identified in the existing frame) for the existing frame.
  • value, and the maxScale may be a larger value among a scale included in the skeleton information of the specific object and a scale included in the prediction information.
  • a scale (or a scale value) included in the skeleton information may be calculated through Equation 3 below.
  • the r limb includes a first key point corresponding to the elbow, a second key point corresponding to the hip, a third key point corresponding to the knee, and a fourth key point corresponding to the ankle, based on the reference point. It is a radius calculated based on a pixel for each key point for each joint including, and the C limb is a radius for each key point for each joint except for the reference point calculated by the learning model and included in the skeleton information. Reliability (joint reliability), and the R limb may be a preset weight for each key point for each joint except for the reference point.
  • the corresponding keypoint may be excluded from Equation 3 above.
  • a preset weight for each key point for each joint may be included in the setting information.
  • the matching unit 123 may calculate a final score by adding the position comparison score and scale comparison score obtained by comparing the prediction information of the object identified in the existing frame with the skeleton information of the specific object, and this By adding the position comparison score and scale comparison score obtained according to the comparison with the specific object for each one or more objects identified in the existing frame, a final score for each of the identified one or more objects may be calculated.
  • the matching unit 123 may identify an object having the lowest final score and less than or equal to a preset reference value among one or more objects identified in the existing frame as the object of interest matching the specific object.
  • the matching unit 123 determines the key point corresponding to the neck predicted according to the movement of the existing object in the new frame based on the skeleton information generated corresponding to the existing frame for each existing object identified in the existing frame.
  • the reference point and scale of the specific object among the one or more existing objects identified in the existing frame are the most An existing object for which adjacent prediction information is generated may be identified as an object matching the specific object.
  • the matching unit 123 may determine the object corresponding to the lowest final score as an object that is not identical to the specific object, , it may be determined that the same object as the specific object is not detected in the existing frame.
  • the matching unit 123 may be configured to determine if the position comparison score among the objects identified in the existing frame is greater than a preset first set value (exceeds a first set value) greater than a first set value (first set value).
  • the object corresponding to the location comparison score (which exceeds the set value) may be determined as an object that is not identical to (does not match) the specific object.
  • the matching unit 123 sets a scale larger than the second set value (exceeds the second set value).
  • the object corresponding to the comparison score may be determined as an object that is not identical to (does not match) the specific object.
  • the update unit 124 works with the matching unit 123 to correspond to the specific object identified in the new frame, and the matching unit 123 detects an object of interest matching the specific object in the existing frame.
  • tracking information of the specific object generated through the skeleton analysis unit 121 for the specific object may be extracted from the storage unit 130 .
  • the update unit 124 converts the tracking information corresponding to the object of interest stored in the storage unit 130 to the tracking information generated in response to the specific object. can be updated (updated) based on
  • the update unit 124 returns a unique identifier included in the tracking information corresponding to the specific object in the new frame.
  • the unique identifier assigned to the object of interest (unique identifier included in the tracking information of the object of interest) and the same unique identifier are converted and matched, and the ground included in the tracking information of the specific object based on the tracking information of the specific object.
  • the tracking information of the object of interest may be updated (or updated) to include information on the moving position of the object of interest by time, which is the same as the specific object.
  • the update unit 124 updates the tracking information of the object of interest based on the tracking information of the specific object
  • the tracking information of the specific object is not stored in the storage unit 130 , but the storage unit 130 . ) can be deleted.
  • the matching unit 123 does not have an object identified in one or more existing frames, so prediction information of an object corresponding to the existing frame does not exist, or corresponds to one or more different existing frames generated at different times If there is no object of interest matching the specific object identified in the new frame among the one or more identified objects, the specific object is determined as a new object, and the updater 124 interworks with the matching unit 123 . Accordingly, the tracking information of the specific object determined as a new object may be stored in the storage unit 130 while maintaining a unique identifier assigned to the tracking information of the specific object.
  • the matching unit 123 may compare the specific object with the existing object by using only a preset number of existing frames generated in the past based on the new frame corresponding to the specific object as comparison targets, and the comparison target is one If there is no object of interest matching the specific object in the above existing frame, the specific object may be determined as a new object.
  • the controller 120 of the object tracking apparatus 100 transmits tracking information of an object of interest initially identified in an existing frame in a plurality of frames received after the existing frame. Whenever an object matching the object of interest is detected, the tracking information of the object of interest may be updated as described above based on the detected object-specific tracking information generated corresponding to the plurality of frames, respectively.
  • the controller 120 can accurately track the same object detected in a plurality of frames, and generate tracking information including the location of the same object over time.
  • the tracking information updated for the object of interest includes the unique identifier of the object of interest, the current position where the object of interest touches the ground, the history of the ground contact position of the object of interest up to the most recently updated time point (history), and the most It may include a movement path according to one or more ground grounding positions added up to the time of the most recent update.
  • the event detection unit 125 compares the tracking information for each object stored in the storage unit 130 with a preset event occurrence condition to detect a specific object (or event occurrence object) corresponding to the tracking information satisfying the event occurrence condition.
  • event information including a unique identifier of the specific object (event generating object) may be generated.
  • the event detector 125 may generate an event when the updated tracking information corresponding to the object of interest satisfies a preset condition.
  • the event detection unit 125 may transmit the event information to a preset external terminal through the communication unit 110 when generating the event information or output the event information through an output device connected to the communication unit 110 . there is.
  • the object tracking apparatus 100 receives skeleton information through joint and scale analysis for a specific object identified in the frame each time a frame constituting an image is received, and tracking information for object tracking Generates prediction information that predicts the movement position and the scale change of the object expected for the key point corresponding to the neck of the specific object in the next frame through the Kalman filter based on the skeleton information of the object while generating In a frame, while identifying an object in which the skeleton information closest to the prediction information generated for the specific object in the existing frame is generated as the same object as the specific object, the tracking information of the same object is updated with the tracking information of the specific object In this way, the same object can be accurately tracked, and through this, in the case of an object tracking method that relies on visual characteristics as in the past, even when it is difficult to track an object because a large number of objects are clustered and dispersed in the image, the same object is continuously and accurately tracked without interruption. This can increase the reliability of object tracking
  • the present invention corresponds to a specific object identified in a specific frame constituting an image with respect to a key point corresponding to the neck of the specific object, the predicted position predicted in the next frame of the specific frame, and the neck of the specific object After generating prediction information including the expected scale for the scale change predicted in the next frame with respect to the scale for the distribution pattern of the key point for each other joint of the specific object based on the key point, the prediction information and the prediction information in the next frame
  • the object for which the closest skeleton information is generated as the same object as the specific object, as in the past, when tracking an object depending on the visual characteristics based on the information of individual pixels, the object with similar visual characteristics is a specific frame Even when it is difficult to distinguish which object is identified in an existing frame because there are multiple It can increase the reliability of object tracking.
  • the skeleton analyzer 121 sets a bounding box to the object identified in the frame and provides information on the bounding box generated by the identified It can be included in the tracking information corresponding to the object.
  • the update unit 124 adds information on the bounding box included in the tracking information of the specific object identified in the new frame to the tracking information of the object of interest, information on the location change of the bounding box of the object of interest over time
  • the tracking information of the object of interest may be updated to include .
  • the skeleton analyzer 121 may set an initial value for prediction reliability, which is a reliability value for the prediction information, in the tracking information of the object determined as a new object.
  • the matching unit 123 does not match all of the one or more objects identified in the new frame according to the comparison between the skeleton information for each object identified in the new frame and the prediction information for each object among the objects identified in the existing frame.
  • a preset score may be subtracted from the prediction reliability included in the tracking information of the non-existent object.
  • the matching unit 123 may add a preset score to the prediction reliability included in the tracking information of the object corresponding to the existing frame determined to match any one of the one or more objects identified in the new frame.
  • the update unit 124 returns tracking information of an object that does not match all of the one or more objects identified in the new frame among the objects identified in the existing frame based on the determination result of the matching unit 123 of the corresponding object. It can be updated based on the prediction information.
  • the prediction information used to update the tracking information may be prediction information corresponding to the previous frame generated immediately before the new frame corresponding to the tracking information.
  • the update unit 124 checks the tracking information for each object stored in the storage unit 130 and receives the tracking information in at least some or all of a preset number of subsequent frames received after the initial tracking information is generated for the existing object. If the same object as the existing object is not detected and the prediction reliability of the existing object is less than or equal to a preset reference reliability, the tracking information of the existing object may be deleted from the storage unit 130 .
  • the specific object moves to a potential movement position of the specific object predicted for each of the preset frames after the specific frame. If the same object as the specific object is not continuously detected because it does not actually move, it is possible to exclude an object with low tracking accuracy by continuously reducing the reliability of the tracking of the specific object, thereby increasing the reliability of the tracking of the object.
  • the object tracking apparatus 100 provides an object of a new frame and an object of an existing frame determined to be the same object through comparison using a key point and a scale corresponding to the neck of the object. A visual comparison can be performed to further increase the accuracy of whether the objects are the same between them, which will be described in detail.
  • the matching unit 123 identifies a boundary region of the specific object based on the skeleton information corresponding to the specific object when a plurality of objects of interest identical to the specific object identified in the new frame exist in the existing frame. Thus, a mask area for the specific object can be set.
  • the matching unit 123 may set the mask area as shown in FIG. 5 .
  • the matching unit 123 sets a mask area for each of the plurality of objects of interest identified as matching the specific object of the new frame in the existing frame in the same manner as in the setting method of the mask area for the specific object.
  • the matching unit 123 is configured to select a plurality of pixels included in a mask region of a specific object identified in the new frame in advance among a plurality of Gaussian distributions calculated through spatial mixture of Gaussians (SMOG)-based Gaussian modeling.
  • SMOG spatial mixture of Gaussians
  • the matching unit 123 calculates a Gaussian score for the plurality of object-specific mask regions in the same manner as for calculating the Gaussian score for the mask region of the specific object, and then a Gaussian corresponding to the specific object. score can be compared.
  • the matching unit 123 may select an object having the smallest difference between the specific object and the Gaussian score among the plurality of objects of interest as the object of interest matching the specific object.
  • the Gaussian score may be calculated through Equation 4 below.
  • the SMOGscore may be a Gaussian score
  • the pixel_match may be a ratio of pixels included in the plurality of preset bands among a plurality of pixels constituting the mask area.
  • the matching unit 123 may generate eight Gaussian distributions by sampling a plurality of pixels included in the mask area based on the SMOG. Each Gaussian distribution is generated by sampling the mean and variance for the following four values.
  • the Y value represents a spatial component.
  • SMOG is initialized by dividing the mask area into 8 bands vertically.
  • the matching unit 123 calculates the average and variance of the RGIY (the four values) for all pixels included in each of the eight bands through the SMOG.
  • the matching unit 123 compares the position comparison score with the specific object according to the above-described comparison with the specific object for each existing object identified in the existing frame with respect to the specific object of the new frame as shown in Equation 5 below. Calculating a sum score by adding the scale comparison score and the Gaussian score, and determining an existing object whose sum score is less than or equal to a preset reference value (or second reference value) and has the lowest sum score as the same object as the specific object. can do.
  • the score is a summed score
  • the Pscore w is a position comparison score
  • the Sscore w is a scale comparison score
  • the SMOGscore w is a Gaussian score.
  • the present invention verifies the result of determining the same object by additionally comparing the visual characteristics of the object determined to be the same object in the previous frame and the current frame based on the skeleton information, thereby providing accuracy and reliability for the determination of the same object. can be further increased.
  • FIG. 7 is a flowchart of an object tracking method of the object tracking apparatus 100 according to an embodiment of the present invention.
  • the object tracking apparatus 100 receives a frame for an image (S1), applies the frame to a learning model trained to generate skeleton information according to joint recognition of an object corresponding to a person, and applies the image Generates skeleton information including the recognized joint-specific key point and the scale of the object for the identified object (S2), and assigns a unique identifier to the identified object to correspond to the identified object, the unique identifier and the identified
  • a skeleton analysis step of generating tracking information including a ground ground location that is a ground ground location of an object corresponding to the identified object may be performed (S3).
  • the object tracking apparatus 100 applies the skeleton information generated for each object identified in the frame through the skeleton analysis step to a Kalman filter, a reference point that is a key point corresponding to the neck in the next frame of the frame, and A prediction step of generating prediction information, which is information predicted with respect to the scale of the object, for each object may be performed (S4).
  • the object tracking apparatus 100 provides the skeleton information of a specific object generated by performing the skeleton analysis step on the new frame, the prediction information for each object generated through the prediction step for the existing frame, and the reference point and scale A matching step of determining whether an object of interest matching the specific object exists among one or more objects corresponding to the existing frame may be performed by comparing based on ( S5 , S6 ).
  • the object tracking apparatus 100 determines the interest based on the tracking information generated through the skeleton analysis step for the specific object An update step of updating the tracking information corresponding to the object may be performed (S8).
  • CMOS-based logic circuitry CMOS-based logic circuitry
  • firmware software
  • software or a combination thereof.
  • transistors logic gates, and electronic circuits in the form of various electrical structures.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Image Analysis (AREA)

Abstract

본 발명은 스켈레톤 분석을 이용한 객체 추적 장치 및 방법에 관한 것으로서, 더욱 상세히는 영상의 프레임에서 사람에 해당하는 객체의 관절을 분석하여 스켈레톤 정보를 생성한 후 기존 프레임에서 생성된 객체별 스켈레톤 정보를 기초로 다음 프레임에서 예측되는 위치에서의 객체의 관절 포인트 및 스케일의 변화에 대해 생성한 객체별 예측정보와 비교하여 동일 객체를 검출하고, 동일 객체에 대한 추적 정보를 갱신하여 정확하게 동일 객체를 추적할 수 있도록 지원하는 스켈레톤 분석을 이용한 객체 추적 장치 및 방법에 관한 것이다. 본 발명은 기존과 같이 시각적 특성에 의존한 객체 추적 방식일 때 영상에서 다수의 객체가 군집하여 분산되어 객체 추적이 어려운 경우에도 동일 객체를 단절 없이 연속적으로 정확하게 추적할 수 있어 객체 추적에 대한 신뢰성을 높이는 효과가 있다.

Description

스켈레톤 분석을 이용한 객체 추적 장치 및 방법
본 발명은 스켈레톤 분석을 이용한 객체 추적 장치 및 방법에 관한 것으로서, 더욱 상세히는 영상의 프레임에서 사람에 해당하는 객체의 관절을 분석하여 스켈레톤 정보를 생성한 후 기존 프레임에서 생성된 객체별 스켈레톤 정보를 기초로 다음 프레임에서 예측되는 위치에서의 객체의 관절 포인트 및 스케일의 변화에 대해 생성한 객체별 예측정보와 비교하여 동일 객체를 검출하고, 동일 객체에 대한 추적 정보를 갱신하여 정확하게 동일 객체를 추적할 수 있도록 지원하는 스켈레톤 분석을 이용한 객체 추적 장치 및 방법에 관한 것이다.
최근 영상에서 사람에 해당하는 객체를 식별하여 동일 객체를 연속적으로 추적하기 위한 다양한 객체 추적 알고리즘이 개발되고 있으며, 이러한 알고리즘은 보안 시스템이나 출입 통제 시스템과 같은 다양한 시스템에 적용되어 사용자가 지정한 객체를 추적하면서 사용자가 지정한 이벤트가 발생한 객체를 감지하고 사용자에게 알림을 제공하는 기능을 수행할 수 있다.
기존에 객체 추적을 위한 알고리즘은 차분 영상, SIFT(Scale Invariant Feature Transform), HOG(Histogram of Oriented Gradient), Haar feature 등과 같은 다양한 알고리즘의 조합을 통해, 기존 영상과 현재 영상에서 객체에 해당되는 특징을 검출하고 동일한 특징을 가진 객체를 동일 객체로 식별하여 추적하는 방식이 일반적으로 이용되고 있다.
그러나, 이러한 기존의 객체 추적을 위한 알고리즘들은 대부분 영상에 포함된 픽셀을 구성하는 속성에 기반한 객체의 시각적인 특징에 의존하므로, 추적 대상 객체에 해당하는 다수의 사람들이 동일 위치에 상호 겹치도록 모인 후 분산되는 경우에 있어서 다수의 사람들이 동일한 옷을 입고 있는 경우 객체를 구별하여 추적하는데 어려움이 있을 뿐만 아니라 외부 환경 변화에 의해 영상의 조도나 화질에 변경이 발생한 경우 동일 객체를 추적하는데 실패하는 경우가 빈번히 발생하여, 객체 추적에 대한 신뢰도가 떨어지는 문제가 있다.
본 발명은 영상 분석을 통해 사람에 해당하는 객체의 관절을 식별하여 스켈레톤 정보를 획득하면서 상기 스켈레톤 정보를 기초로 객체의 예상 위치에서의 객체의 크기와 특정 관절의 위치에 대한 예측 정보를 산출하며, 다음 영상에서 얻어진 스켈레톤 정보와 예측 정보의 비교를 통해 동일 객체를 판단하는 방식으로 객체를 추적하여 영상의 시각적 특징에 의존하지 않고 정확하게 동일 객체를 검출하여 추적할 수 있도록 지원함으로써, 객체 추적에 대한 신뢰도를 높일 수 있도록 지원하는데 그 목적이 있다.
또한, 본 발명은 스켈레톤 정보를 기초로 이전 영상과 현재 영상에서 동일 객체로 판단된 객체의 시각적 특징을 추가 비교하여 동일 객체 판단에 대한 정확도 및 신뢰도를 더욱 높일 수 있도록 지원하는데 그 목적이 있다.
본 발명의 실시예에 따른 스켈레톤 분석을 이용한 객체 추적 방법은, 객체 추적 장치가 영상에 대한 프레임을 수신하고, 상기 프레임을 사람에 해당하는 객체의 관절 인식에 따른 스켈레톤 정보를 생성하도록 학습된 학습 모델에 적용하여 상기 영상에서 식별된 객체에 대해 인식된 관절별 키 포인트 및 객체의 스케일(scale)을 포함하는 스켈레톤 정보를 생성하고, 상기 식별된 객체에 대응되어 고유 식별자를 할당하여 상기 고유 식별자 및 상기 식별된 객체의 지면 상 접지 위치인 지면 접지 위치를 포함하는 추적 정보를 상기 식별된 객체에 대응되어 생성하는 스켈레톤 분석 단계와, 상기 객체 추적 장치가 상기 스켈레톤 분석 단계를 통해 상기 프레임에서 식별된 객체별로 생성된 상기 스켈레톤 정보를 칼만필터에 적용하여 상기 프레임의 다음 프레임에서 목에 해당하는 키 포인트인 기준 포인트 및 객체의 스케일에 대해 예측된 정보인 예측 정보를 상기 객체별로 생성하는 예측 단계와, 상기 객체 추적 장치가 신규 프레임에 대해 상기 스켈레톤 분석 단계를 수행하여 생성된 특정 객체의 스켈레톤 정보를 기존 프레임에 대해 상기 예측 단계를 통해 생성된 객체별 예측 정보와 상기 기준 포인트 및 스케일을 기초로 비교하여 상기 기존 프레임에 대응되는 하나 이상의 객체 중 상기 특정 객체와 일치하는 관심 객체가 존재하는지 판단하는 매칭 단계 및 상기 객체 추적 장치가 상기 매칭 단계를 통해 상기 특정 객체와 일치하는 상기 관심 객체가 존재하면 상기 특정 객체에 대해 상기 스켈레톤 분석 단계를 통해 생성된 상기 추적 정보를 기초로 상기 관심 객체에 대응되는 추적 정보를 업데이트하는 업데이트 단계를 포함할 수 있다.
본 발명과 관련된 일 예로서, 상기 업데이트 단계는 상기 객체 추적 장치가 상기 특정 객체와 상기 관심 객체가 상호 일치할 때 상기 신규 프레임에서의 특정 객체에 대응되는 추적 정보에 포함된 고유 식별자를 상기 관심 객체에 할당된 고유 식별자와 동일한 고유 식별자로 변환하여 일치시키고, 상기 특정 객체의 추적 정보를 기초로 상기 특정 객체의 지면 접지 위치를 상기 관심 객체의 추적 정보에 추가하여 상기 특정 객체와 동일한 상기 관심 객체의 시간별 이동 위치에 대한 정보가 포함되도록 상기 관심 객체의 추적 정보를 업데이트하는 것을 특징으로 할 수 있다.
본 발명과 관련된 일 예로서, 상기 스켈레톤 분석 단계는 상기 객체 추적 장치가 상기 식별된 객체에 바운딩 박스를 설정하여 생성된 상기 바운딩 박스에 대한 정보를 상기 추적 정보에 포함시키는 단계를 더 포함하며, 상기 업데이트 단계는 상기 객체 추적 장치가 상기 특정 객체의 추적 정보에 포함된 바운딩 박스에 대한 정보를 상기 관심 객체의 추적 정보에 추가하여 상기 관심 객체의 시간별 바운딩 박스의 위치 변화에 대한 정보가 포함되도록 상기 관심 객체의 추적 정보를 업데이트하는 단계를 더 포함하는 것을 특징으로 할 수 있다.
본 발명과 관련된 일 예로서, 상기 매칭 단계는, 상기 객체 추적 장치가 상기 신규 프레임에 대해 생성된 특정 객체의 스켈레톤 정보에 포함된 기준 포인트와 기존 프레임에 대해 생성된 객체별 예측 정보에 포함된 기준 포인트를 미리 설정된 제 1 수학식에 따라 객체별로 비교하여 객체별 위치 점수를 산출하고, 상기 특정 객체의 스켈레톤 정보에 포함된 스케일과 상기 객체별 예측 정보에 포함된 스케일을 미리 설정된 제 2 수학식에 따라 객체별로 비교하여 객체별 스케일 점수를 산출한 후 상기 위치 점수 및 스케일 점수를 객체별로 합산한 최종 점수를 산출하여, 상기 기존 프레임에서 식별된 객체 중 상기 최종 점수가 가장 낮으면서 미리 설정된 기준치 이하인 객체를 상기 관심 객체로 식별하는 단계를 더 포함하는 것을 특징으로 할 수 있다.
본 발명과 관련된 일 예로서, 상기 제 1 수학식은
Figure PCTKR2021014078-appb-img-000001
이며, 상기 Pscore는 상기 위치 점수이고, 상기 특정 객체의 스켈레톤 정보에 포함된 기준 포인트의 좌표와 상기 기존 프레임에 대해 생성된 객체의 예측 정보에 포함되는 기준 포인트의 좌표가 상기 맨하탄 거리(Manhattan distance)에 적용되는 것을 특징으로 할 수 있다.
본 발명과 관련된 일 예로서, 상기 제 2 수학식은,
Figure PCTKR2021014078-appb-img-000002
이며, 상기 Sscore는 상기 스케일 점수이며, 상기 minScale은 상기 특정 객체의 스켈레톤 정보에 포함된 스케일과 상기 기존 프레임에 대해 생성된 객체의 예측 정보에 포함된 스케일 중 더 작은 값이고, 상기 maxScale은 상기 특정 객체의 스켈레톤 정보에 포함된 스케일과 상기 기존 프레임에 대해 생성된 객체의 예측 정보에 포함된 스케일 중 더 큰 값인 것을 특징으로 할 수 있다.
본 발명과 관련된 일 예로서, 상기 스켈레톤 정보에 포함된 스케일은
Figure PCTKR2021014078-appb-img-000003
을 통해 산출되며, 상기 rlimb는 상기 기준 포인트를 기준으로 팔꿈치에 대응되는 제 1 키 포인트와, 엉덩이에 대응되는 제 2 키 포인트와, 무릎에 대응되는 제 3 키 포인트 및 발목에 대응되는 제 4 키 포인트를 포함하는 관절별 키 포인트 각각에 대해 픽셀을 기초로 산출된 반경이며, 상기 Climb는 상기 학습 모델에 의해 산출되어 상기 스켈레톤 정보에 포함된 상기 기준 포인트를 제외한 관절별 키 포인트 각각에 대한 신뢰도이며, 상기 Rlimb는 상기 기준 포인트를 제외한 관절별 키 포인트 각각에 대해 미리 설정된 가중치인 것을 특징으로 할 수 있다.
본 발명과 관련된 일 예로서, 상기 업데이트 단계 이후, 상기 업데이트된 상기 관심 객체에 대응되는 추적 정보가 미리 설정된 조건 만족시 이벤트를 발생시키는 이벤트 감지 단계를 더 포함하는 것을 특징으로 할 수 있다.
본 발명과 관련된 일 예로서, 상기 매칭 단계는, 상기 객체 추적 장치가 상기 특정 객체와 일치하는 상기 관심 객체가 복수로 존재하면 상기 특정 객체에 대응되는 스켈레톤 정보를 기준으로 상기 특정 객체의 경계 영역을 식별하여 상기 특정 객체에 대한 마스크 영역을 설정하고, 상기 기존 프레임에서 상기 특정 객체와 일치하는 것으로 식별된 상기 복수의 관심 객체 각각에 대해서도 상기 특정 객체에 대한 마스크 영역의 설정 방식과 동일하게 마스크 영역을 설정하며, 상기 특정 객체의 마스크 영역에 포함된 복수의 픽셀을 대상으로 SMOG 기반의 가우시안 모델링을 통해 산출된 복수의 가우시안 분포 중 미리 설정된 대역에 속하는 픽셀의 비율에 대한 가우시안 점수를 산출하고, 상기 복수의 관심 객체별 마스크 영역에 대해서 상기 특정 객체의 마스크 영역에 대해 상기 가우시안 점수를 산출하는 방식과 동일하게 가우시안 점수를 산출한 후 상기 특정 객체에 대응되는 가우시안 점수와 비교하며, 상기 복수의 관심 객체 중 상기 특정 객체와의 상기 가우시안 점수의 차이가 가장 작은 객체를 상기 특정 객체와 일치하는 관심 객체로 선정하는 시각 비교 단계를 더 포함하는 것을 특징으로 할 수 있다.
본 발명의 실시예에 따른 스켈레톤 분석을 이용한 객체 추적 장치는, 영상에 대한 프레임을 수신하고, 상기 프레임을 사람에 해당하는 객체의 관절 인식에 따른 스켈레톤 정보를 생성하도록 학습된 학습 모델에 적용하여 상기 영상에서 식별된 객체에 대해 인식된 관절별 키 포인트 및 객체의 스케일(scale)을 포함하는 스켈레톤 정보를 생성하고, 상기 식별된 객체에 대응되어 고유 식별자를 할당하여 상기 고유 식별자 및 상기 식별된 객체의 지면 상 접지 위치인 지면 접지 위치를 포함하는 추적 정보를 상기 식별된 객체에 대응되어 생성하는 스켈레톤 분석부와, 상기 스켈레톤 분석부를 통해 상기 프레임에서 식별된 객체별로 생성된 상기 스켈레톤 정보를 칼만필터에 적용하여 상기 프레임의 다음 프레임에서 목에 해당하는 키 포인트인 기준 포인트 및 객체의 스케일에 대해 예측된 정보인 예측 정보를 상기 객체별로 생성하는 예측부와, 신규 프레임에 대해 상기 스켈레톤 분석부를 통해 생성된 특정 객체의 스켈레톤 정보를 기존 프레임에 대해 상기 예측부를 통해 생성된 객체별 예측 정보와 상기 기준 포인트 및 스케일을 기초로 비교하여 상기 기존 프레임에 대응되는 하나 이상의 객체 중 상기 특정 객체와 일치하는 관심 객체가 존재하는지 판단하는 매칭부 및 상기 매칭부를 통해 상기 특정 객체와 일치하는 관심 객체가 존재하면 상기 특정 객체에 대해 상기 스켈레톤 분석부를 통해 생성된 상기 추적 정보를 기초로 상기 관심 객체에 대응되는 추적 정보를 업데이트하는 갱신부를 포함할 수 있다.
본 발명의 실시예에 따른 객체 추적 장치는 영상을 구성하는 프레임 수신시마다 프레임에서 식별된 특정 객체에 대해 관절 및 스케일 분석을 통한 스켈레톤 정보와 객체 추적을 위한 추적 정보를 생성하면서 상기 객체의 스켈레톤 정보를 기초로 다음 프레임에서 상기 특정 객체의 목에 해당하는 키 포인트에 대해 예상되는 이동 위치 및 객체의 스케일 변화를 칼만 필터를 통해 예측한 예측 정보를 생성하고, 상기 다음 프레임에서 상기 기존 프레임에서 상기 특정 객체에 대해 생성된 예측 정보와 가장 근접한 스켈레톤 정보가 생성된 객체를 상기 특정 객체와 동일한 동일 객체로 검출하면서 상기 동일 객체의 추적 정보를 상기 특정 객체의 추적 정보로 업데이트하여 동일 객체를 정확하게 추적할 수 있으며, 이를 통해 기존과 같이 시각적 특성에 의존한 객체 추적 방식일 때 영상에서 다수의 객체가 군집하여 분산되어 객체 추적이 어려운 경우에도 동일 객체를 단절 없이 연속적으로 정확하게 추적할 수 있어 객체 추적에 대한 신뢰성을 높이는 효과가 있다.
또한, 본 발명은 스켈레톤 정보를 기초로 이전 프레임과 현재 프레임에서 동일 객체로 판단된 객체의 시각적 특징을 추가 비교하여 동일 객체 판단에 대한 결과를 검증함으로써, 동일 객체 판단에 대한 정확도 및 신뢰도를 더욱 높이는 효과가 있다.
도 1은 본 발명의 실시예에 따른 스켈레톤 분석을 이용한 객체 추적 장치의 구성도.
도 2 내지 도 6은 본 발명의 실시예에 따른 스켈레톤 분석을 이용한 객체 추적 장치의 동작 예시도.
도 7은 본 발명의 실시예에 따른 스켈레톤 분석을 이용한 객체 추적 장치의 객체 추적 방법에 대한 순서도.
이하, 도면을 참고하여 본 발명의 실시예에 따른 스켈레톤 분석을 이용한 객체 추적 장치(이하, 객체 추적 장치)에 대한 상세 실시예를 설명한다.
도 1은 본 발명의 실시예에 따른 객체 추적 장치(100)의 구성도이고, 도 2는 상기 객체 추적 장치(100)의 동작 예시도이다.
우선, 도 1에 도시된 바와 같이 상기 객체 추적 장치(100)는 통신부(110), 저장부(130) 및 제어부(120)를 포함하여 구성될 수 있다.
상기 통신부(110)는 외부 장치와 통신망을 통해 통신 가능하도록 연결되어 감시 대상 공간에 대한 영상을 수신할 수 있다.
이때, 본 발명에서 설명하는 통신망은 유/무선 통신망을 포함할 수 있으며, 이러한 무선 통신망의 일례로 무선랜(Wireless LAN: WLAN), DLNA(Digital Living Network Alliance), 와이브로(Wireless Broadband: Wibro), 와이맥스(World Interoperability for Microwave Access: Wimax), GSM(Global System for Mobile communication), CDMA(Code Division Multi Access), CDMA2000(Code Division Multi Access 2000), EV-DO(Enhanced Voice-Data Optimized or Enhanced Voice-Data Only), WCDMA(Wideband CDMA), HSDPA(High Speed Downlink Packet Access), HSUPA(High Speed Uplink Packet Access), IEEE 802.16, 롱 텀 에볼루션(Long Term Evolution: LTE), LTE-A(Long Term Evolution-Advanced), 광대역 무선 이동 통신 서비스(Wireless Mobile Broadband Service: WMBS), 5G 이동통신 서비스, 블루투스(Bluetooth), LoRa(Long Range), RFID(Radio Frequency Identification), 적외선 통신(Infrared Data Association: IrDA), UWB(Ultra Wideband), 지그비(ZigBee), 인접 자장 통신(Near Field Communication: NFC), 초음파 통신(Ultra Sound Communication: USC), 가시광 통신(Visible Light Communication: VLC), 와이 파이(Wi-Fi), 와이 파이 다이렉트(Wi-Fi Direct) 등이 포함될 수 있다. 또한, 유선 통신망으로는 유선 LAN(Local Area Network), 유선 WAN(Wide Area Network), 전력선 통신(Power Line Communication: PLC), USB 통신, 이더넷(Ethernet), 시리얼 통신(serial communication), 광/동축 케이블 등이 포함될 수 있다.
또한, 상기 외부 장치는 카메라(camera)이거나 영상을 저장하는 영상 저장 장치(일례로, DVR(Digital Video Recorder) 또는 NVR(Network Video Recorder))일 수 있다.
이때, 상기 객체 추적 장치(100)는 상기 외부 장치의 구성부로 구성될 수도 있다.
또한, 상기 제어부(120)는 상기 객체 추적 장치(100)의 전반적인 제어 기능을 수행할 수 있으며, 제어부(120)는 RAM, ROM, CPU, GPU, 버스를 포함할 수 있으며, RAM, ROM, CPU, GPU 등은 버스를 통해 서로 연결될 수 있다.
또한, 상기 객체 추적 장치(100)는 저장부(130)를 더 포함하여 구성될 수 있으며, 상기 저장부(130)는 본 발명에서 설명하는 상기 제어부(120)의 동작에 필요한 각종 프로그램 및 데이터를 저장할 수 있고, 상기 영상을 저장할 수도 있다.
이때, 상기 저장부(130) 및 통신부(110)는 상기 제어부(120)의 구성 요소로 포함될 수도 있다.
한편, 도 1 및 도 2에 도시된 바와 같이, 상기 제어부(120)는 스켈레톤 분석부(121), 예측부(122), 매칭부(123), 갱신부(124) 및 이벤트 검출부(125)를 포함하여 구성될 수 있다.
우선, 도 3에 도시된 바와 같이, 상기 스켈레톤 분석부(121)는 영상을 구성하는 프레임(frame)을 수신하고, 상기 프레임 수신시 상기 프레임에서 사람에 해당하는 객체를 식별하면서 상기 식별된 객체의 관절 인식에 따른 스켈레톤(skeleton) 정보를 생성하도록 학습 완료되어 상기 스켈레톤 분석부(121)에 미리 설정된 학습 모델에 적용하여 상기 프레임에서 식별된 객체에 대해 인식된 관절별 키 포인트(key point) 및 객체의 스케일(scale)을 포함하는 스켈레톤 정보를 생성할 수 있다.
이때, 상기 학습 모델은 딥러닝(Deep learning) 알고리즘으로 구성될 수 있으며, 상기 딥러닝 알고리즘은 하나 이상의 신경망 모델로 구성될 수 있다.
또한, 본 발명에서 설명하는 신경망 모델(또는 신경망)은 입력층(Input Layer), 하나 이상의 은닉층(Hidden Layers) 및 출력층(Output Layer)으로 구성될 수 있으며, 상기 신경망 모델에는 DNN(Deep Neural Network), RNN(Recurrent Neural Network), CNN(Convolutional Neural Network) 등과 같은 다양한 종류의 신경망이 적용될 수 있다.
즉, 상기 학습 모델은 상기 프레임에서 사람에 해당하는 객체를 식별하고, 식별된 객체에 대해 관절에 해당하는 지점을 식별할 수 있으며, 상기 관절에 해당하는 지점에 대한 좌표를 상기 키 포인트로 설정할 수 있다. 이때, 상기 좌표는 x 좌표값 및 y 좌표값을 가질 수 있다.
또한, 상기 관절별 키 포인트는 인접한 키 포인트 상호간 선으로 연결되어 상기 스켈레톤 정보에 포함될 수 있다.
또한, 상기 학습 모델은 상기 사람에 해당하는 객체에서 식별된 하나 이상 관절 각각에 대해 실제 관절(또는 실제 관절의 위치)과의 일치 확률에 대한 신뢰도(또는 관절 신뢰도)를 산출할 수 있으며, 상기 스켈레톤 분석부(121)는 상기 스켈레톤 정보에 포함된 각 관절의 키 포인트별로 상기 학습 모델에 의해 산출된 신뢰도를 매칭하여 관절별 신뢰도를 상기 스켈레톤 정보에 포함시킬 수 있다.
또한, 상기 학습 모델은 상기 객체에서 식별된 하나 이상의 관절 각각을 목(neck)에 대응되는 키 포인트, 팔꿈치(elbow)에 대응되는 키 포인트, 엉덩이(hip)에 대응되는 키 포인트, 무릎(knee)에 대응되는 키 포인트 및 발목(ankle)에 대응되는 키 포인트가 구분되도록 관절별 키 포인트를 생성할 수 있다.
이때, 목에 대응되는 키 포인트는 사람에 해당하는 객체에서 식별된 양 쪽 어깨의 중간 지점일 수 있다.
일례로, 상기 학습 모델은 관절별 키 포인트 각각에 대해 상기 목, 팔꿈치, 엉덩이, 무릎 및 발목 중 어느 관절에 대한 키 포인트인지 식별 가능하도록 상기 키 포인트에 라벨링한 라벨 정보를 상기 스켈레톤 정보에 포함시킬 수 있다.
즉, 상기 키 포인트는 어느 관절에 대한 키 포인트인지 식별 가능하도록 생성될 수 있다.
이때, 상기 팔꿈치에 대응되는 키 포인트와, 엉덩이에 대응되는 키 포인트, 무릎에 대응되는 키 포인트 및 발목에 대응되는 키 포인트는 복수로 생성될 수 있다.
상술한 구성에서, 상기 관절별 키 포인트는 상기 프레임에서 객체의 일부가 프레임에 나타나지 않은 경우 복수의 관절별 키 포인트 중 일부가 생략될 수 있다.
또한, 상기 스켈레톤 분석부(121)는 상기 학습 모델에 의해 산출된 관절별 키 포인트를 기초로 객체의 스케일에 대한 정보를 생성할 수 있다.
일례로, 상기 스켈레톤 분석부(121)는 상기 목에 해당하는 키 포인트를 기준 포인트로 설정하여 상기 기준 포인트를 기준으로 상기 기준 포인트를 제외한 상기 프레임에서 식별된 하나 이상의 관절별 키 포인트 각각에 대한 반경을 산출하고, 상기 식별된 하나 이상의 관절별로 관절에 대해 상기 스켈레톤 분석부(121)에 미리 설정된 가중치 및 상기 관절에 대응되어 얻어진 상기 신뢰도를 상기 관절의 반경에 가중시켜 관절별로 가중치 반영값을 획득한 후 모든 관절별 가중치 반영값을 평균하여 상기 객체의 스케일을 산출할 수 있다.
이와 같이, 상기 스켈레톤 분석부(121)는 상기 기준 포인트를 제외한 상기 프레임에서 식별된 하나 이상의 관절별 키 포인트 각각에 대한 반경을 산출하고, 관절 각각에 대해 산출한 반경에 관절에 대응되는 가중치 및 신뢰도를 가중 평균하여 상기 스케일을 산출할 수 있다.
이때, 상기 반경은 상기 기준 포인트와 기준 포인트가 아닌 관절의 키 포인트와의 거리일 수도 있다.
이에 대한 상세 예시로, 상기 스켈레톤 분석부(121)는 상기 객체에서 목에 해당하는 제 1 관절과, 팔꿈치에 해당하는 제 2 관절 및 엉덩이에 해당하는 제 3 관절이 식별된 경우 상기 제 1 관절에 해당하는 키 포인트를 기준 포인트로 설정한 후 상기 기준 포인트를 기준으로 상기 제 2 관절에 대응되는 키 포인트와 상기 기준 포인트 사이의 반경에 상기 제 2 관절에 대응되어 미리 설정된 가중치 및 상기 제 2 관절에 대응되는 신뢰도(스켈레톤 정보에 포함)를 가중시켜 제 1 가중치 반영값을 획득하고, 상기 기준 포인트를 기준으로 상기 제 3 관절에 대응되는 키 포인트와 상기 기준 포인트 사이의 반경에 상기 제 3 관절에 대응되어 미리 설정된 가중치 및 상기 제 3 관절에 대응되는 신뢰도를 가중시켜 제 2 가중치 반영값을 획득하며, 상기 제 1 가중치 반영값과 상기 제 2 가중치 반영값을 평균하여 상기 객체의 스케일을 산출할 수 있다.
이때, 도 4에 도시된 바와 같이 상기 스켈레톤 분석부(121)에는 관절별로 가중치가 미리 설정된 설정 정보가 포함될 수 있으며, 상기 관절별 키 포인트 각각에 대응되어 상기 설정 정보에 미리 설정된 복수의 가중치 중 상기 발목에 대응되는 키 포인트의 가중치가 가장 높은 값으로 설정될 수 있다.
상기 발목에 대응되는 가중치가 가장 높은 값으로 설정된 이유는, 상기 발목에 대응되는 키 포인트가 기준 포인트인 목에 해당하는 키 포인트와의 거리가 가장 길어 다른 관절의 키 포인트에 비해 가장 낮은 불확실성과 분산을 가지므로 객체의 스케일을 가장 높은 정확도로 반영할 수 있기 때문이다.
또한, 상기 관절별 가중치로서, 팔꿈치에 대한 관절에 대응되는 가중치는 0.273으로 설정되고, 엉덩이에 대한 관절에 대응되는 가중치는 0.416으로 설정되며, 무릎에 대한 관절에 대응되는 가중치는 0.713으로 설정되고, 발목에 대한 관절에 대응되는 가중치는 1.0으로 상기 설정 정보에 설정되는 것이 바람직하다.
또한, 상기 스켈레톤 분석부(121)는 상기 프레임에서 식별된 객체에 대응되어 다른 객체와의 구별(구분)을 위한 고유 식별자를 할당할 수 있으며, 상기 고유 식별자 및 상기 프레임에서 식별된 지면 상에서 상기 식별된 객체의 지면과 접지하는 위치인 지면 접지 위치를 포함하는 추적 정보를 상기 식별된 객체에 대응되어 생성할 수 있다.
이때, 상기 스켈레톤 분석부(121)는 상기 추적 정보에 대응되는 스켈레톤 정보에 상기 추적 정보에 포함된 고유 식별자를 설정할 수도 있다.
또한, 본 발명에서 설명하는 프레임에 대응되어 식별된 객체는 스켈레톤 정보가 생성된 객체를 의미할 수 있다.
상술한 구성에서, 상기 스켈레톤 분석부(121)에 설정된 학습 모델은 상기 관절 이외에도 다른 관절에 대한 키 포인트를 산출할 수 있으나, 상기 스켈레톤 분석부(121)는 상기 스켈레톤 정보에 포함되는 미리 설정된 관절별 키 포인트로서 상기 라벨 정보를 기초로 목(neck)에 대응되는 키 포인트, 팔꿈치(elbow)에 대응되는 키 포인트, 엉덩이(hip)에 대응되는 키 포인트, 무릎(knee)에 대응되는 키 포인트 및 발목(ankle)에 대응되는 키 포인트만을 포함시키고, 이러한 관절별 키 포인트를 기초로 스케일을 산출할 수 있다.
즉, 상기 스켈레톤 분석부(121)는 미리 설정된 복수의 관절에 대한 키 포인트만을 객체 추적에 이용할 수 있다.
한편, 상기 예측부(122)는 상기 스켈레톤 분석부(121)와 연동하여, 상기 스켈레톤 분석부(121)를 통해 상기 프레임에서 식별된 객체별로 생성된 상기 스켈레톤 정보를 칼만필터(Kalman Filter)에 적용하여 상기 프레임의 다음 프레임에서 목에 해당하는 키 포인트인 기준 포인트 및 객체의 스케일에 대해 예측된 정보인 예측 정보를 상기 식별된 객체별로 생성할 수 있다.
일례로, 상기 예측부(122)는 상기 칼만필터를 통해 특정 프레임에서 식별된 특정 객체의 목에 해당하는 키 포인트인 기준 포인트에 대응되어 상기 특정 프레임의 다음 프레임에서 상기 특정 객체에 대응되어 예측되는 상기 기준 포인트의 예측 위치(예측 이동 위치)와 상기 특정 프레임에서 산출된 스켈레톤 정보에 포함되는 상기 특정 객체의 스케일에 대응되어 상기 다음 프레임에서 예측되는 상기 특정 객체의 스케일(스케일 변화)에 대한 예측값을 포함하는 예측 정보를 생성할 수 있다.
이때, 상기 예측부(122)는 3개의 칼만필터를 사용할 수 있으며, 상기 기준 포인트의 x좌표를 상기 3개의 칼만필터 중 제 1 칼만필터에 적용하여 상기 다음 프레임에서 예측되는 기준 포인트의 x좌표를 산출하고, 상기 기준 포인트의 y좌표를 상기 3개의 칼만필터 중 제 2 칼만필터에 적용하여 상기 다음 프레임에서 예측되는 상기 기준 포인트의 y좌표를 산출하며, 상기 객체의 스케일(값)을 상기 3개의 칼만필터 중 제 3 칼만필터에 적용하여 상기 다음 프레임에서 예측되는 상기 객체의 예측 스케일(값)을 산출할 수 있다.
상술한 바와 같이, 스켈레톤 분석부(121)는 프레임 수신시마다 프레임에 포함된 객체별로 스켈레톤 정보 및 추적 정보를 생성하고, 상기 예측부(122)는 상기 스켈레톤 분석부(121)에 의해 식별된 객체에 대응되어 예측 정보를 생성할 수 있다.
또한, 상기 스켈레톤 분석부(121) 또는 예측부(122)는 특정 프레임에서 식별된 특정 객체에 대응되어 생성된 스켈레톤 정보와 추적 정보 및 예측 정보를 상호 매칭한 후 상기 특정 프레임 또는 상기 특정 프레임의 프레임 식별정보와 매칭하여 상기 저장부(130)에 저장할 수 있다.
이때, 상기 스켈레톤 분석부(121) 또는 예측부(122)는 프레임 기준으로 상기 예측 정보에 대응되는 상기 추적 정보에 상기 예측 정보를 포함시켜 상기 저장부(130)에 저장할 수 있다.
또한, 상기 스켈레톤 분석부(121) 또는 예측부(122)는 상기 프레임 수신시마다 프레임에서 식별된 객체에 대응되어 생성한 스켈레톤 정보를 상기 매칭부(123)에 제공할 수 있다.
한편, 상기 매칭부(123)는 상기 스켈레톤 분석부(121) 또는 예측부(122)로부터 상기 영상에 포함되는 신규 프레임에서 식별된 특정 객체에 대응되어 상기 스켈레톤 분석부(121)를 통해 생성된 스켈레톤 정보를 수신할 수 있다.
또한, 상기 매칭부(123)는 상기 특정 객체의 스켈레톤 정보를 상기 신규 프레임의 생성 이전에 생성된 기존 프레임에 대해 상기 예측부(122)를 통해 생성된 객체별 예측 정보와 상기 기준 포인트 및 스케일을 기초로 비교하여 상기 기존 프레임에 대응되는 하나 이상의 객체 중 상기 특정 객체와 일치하는 관심 객체가 존재하는지 판단할 수 있다.
일례로, 상기 매칭부(123)는 상기 신규 프레임에서 식별된 특정 객체의 스켈레톤 정보와 상기 신규 프레임의 생성 직전에 생성된 기존 프레임인 이전 프레임에 대응되어 생성된 객체별 예측 정보를 상기 저장부(130)로부터 추출할 수 있다.
이때, 상기 기존 프레임은 상기 이전 프레임의 생성 이전에 생성된 프레임일 수도 있다.
또한, 상기 매칭부(123)는 상기 신규 프레임에서 식별된 상기 특정 객체에 대응되는 스켈레톤 정보에 포함된 기준 포인트와 상기 특정 객체의 스케일을 상기 이전 프레임에서 식별된 객체별로 상기 신규 프레임에서 예측되는 객체의 기준 포인트 및 객체의 스케일이 포함된 객체별 예측 정보와 동일 속성끼리 비교하여 상기 기존 프레임에서 식별된 하나 이상의 객체 중 상기 특정 객체와 일치하는 객체인 관심 객체가 존재하는지 판단할 수 있다.
이하, 상기 특정 객체와 일치하는 관심 객체를 식별하기 위한 상기 매칭부(123)의 상세 동작 구성을 설명한다.
우선, 상기 매칭부(123)는 상기 신규 프레임에 대해 생성된 특정 객체의 스켈레톤 정보에 포함된 기준 포인트와 기존 프레임에 대해 생성된 객체별 예측 정보에 포함된 기준 포인트를 미리 설정된 하기 수학식 1에 따라 상기 기존 프레임에서 식별된 객체별로 비교하여 상기 기존 프레임에서 식별된 객체별로 상기 특정 객체와의 기준 포인트 비교에 따른 위치 비교 점수를 산출할 수 있다.
Figure PCTKR2021014078-appb-img-000004
이때, 상기 Pscore는 상기 위치 비교 점수이고, 상기 특정 객체의 스켈레톤 정보에 포함된 기준 포인트의 좌표와 상기 기존 프레임에 대해 생성된(기존 프레임에서 식별된) 객체의 예측 정보에 포함되는 기준 포인트의 좌표가 상기 맨하탄 거리(Manhattan distance)에 적용될 수 있다.
상기 위치 비교 점수가 낮을수록 상기 스케일 비교 점수에 대응되는 기존 프레임에서 식별된 제 1 객체에 대해 신규 프레임에서 예측되는 기준 포인트의 위치와 상기 신규 프레임에서 식별된 제 2 객체의 기준 포인트 사이의 차이가 작은 것을 의미하므로, 상기 제 1 객체와 상기 제 2 객체가 상호 동일한 객체일 확률이 높은 것으로 판단될 수 있다.
또한, 상기 매칭부(123)는 상기 특정 객체의 스켈레톤 정보에 포함된 스케일과 상기 객체별 예측 정보에 포함된 스케일을 미리 설정된 하기 수학식 2에 따라 상기 기존 프레임에서 식별된 객체별로 비교하여 상기 기존 프레임에서 식별된 객체별로 상기 특정 객체와의 스케일 비교에 따른 객체별 스케일 비교 점수를 산출할 수 있다.
Figure PCTKR2021014078-appb-img-000005
이때, 상기 Sscore는 상기 스케일 비교 점수이며, 상기 minScale은 상기 특정 객체의 스켈레톤 정보에 포함된 스케일과 상기 기존 프레임에 대해 생성된(기존 프레임에서 식별된) 객체의 예측 정보에 포함된 스케일 중 더 작은 값이고, 상기 maxScale은 상기 특정 객체의 스켈레톤 정보에 포함된 스케일과 상기 예측 정보에 포함된 스케일 중 더 큰 값일 수 있다.
상기 스케일 비교 점수가 낮을수록 상기 스케일 비교 점수에 대응되는 기존 프레임에서 식별된 제 1 객체에 대해 상기 신규 프레임에서 예측되는 스케일과 상기 신규 프레임에서 식별된 제 2 객체의 스케일 사이의 차이가 작은 것을 의미하므로, 상기 제 1 객체와 상기 제 2 객체가 상호 동일한 객체일 확률이 높은 것으로 판단될 수 있다.
상술한 구성에서, 상기 스켈레톤 정보에 포함되는 스케일(scale)(또는 스케일 값, scale value)은 하기 수학식 3을 통해 산출될 수 있다.
Figure PCTKR2021014078-appb-img-000006
이때, 상기 rlimb는 상기 기준 포인트를 기준으로 팔꿈치에 대응되는 제 1 키 포인트와, 엉덩이에 대응되는 제 2 키 포인트와, 무릎에 대응되는 제 3 키 포인트 및 발목에 대응되는 제 4 키 포인트를 포함하는 관절별 키 포인트 각각에 대해 픽셀(pixel)을 기초로 산출된 반경이며, 상기 Climb는 상기 학습 모델에 의해 산출되어 상기 스켈레톤 정보에 포함된 상기 기준 포인트를 제외한 관절별 키 포인트 각각에 대한 신뢰도(관절 신뢰도)이며, 상기 Rlimb는 상기 기준 포인트를 제외한 관절별 키 포인트 각각에 대해 미리 설정된 가중치일 수 있다.
여기서, 상기 스켈레톤 정보에 대응되는 프레임에서 상기 제 1 내지 제 4 키포인트 중 적어도 하나가 식별되지 않은 경우 해당 키 포인트는 상기 수학식 3에서 제외시킬 수 있다.
또한, 관절별 키 포인트 각각에 대해 미리 설정된 가중치는 상기 설정 정보에 포함될 수 있다.
다음, 상기 매칭부(123)는 상기 기존 프레임에서 식별된 객체의 예측 정보를 상기 특정 객체의 스켈레톤 정보와 비교하여 얻어진 상기 위치 비교 점수 및 스케일 비교 점수를 합산하여 최종 점수를 산출할 수 있으며, 이를 통해 상기 기존 프레임에서 식별된 하나 이상의 객체별로 상기 특정 객체와의 비교에 따라 얻어진 위치 비교 점수 및 스케일 비교 점수를 합산하여 상기 식별된 하나 이상의 객체별로 최종 점수를 산출할 수 있다.
또한, 상기 매칭부(123)는 상기 기존 프레임에서 식별된 하나 이상의 객체 중 상기 최종 점수가 가장 낮으면서 미리 설정된 기준치 이하인 객체를 상기 특정 객체와 일치하는 관심 객체로 식별할 수 있다.
즉, 상기 매칭부(123)는 상기 기존 프레임에서 식별된 기존 객체별로 기존 프레임에 대응되어 생성된 스켈레톤 정보를 기초로 신규 프레임에서 기존 객체의 이동에 따라 예측되는 목에 해당되는 키 포인트 및 객체의 스케일을 상기 신규 프레임에서 특정 객체에 대해 얻어진 목에 해당되는 키 포인트인 기준 포인트 및 특정 객체의 스케일과 비교하여, 상기 기존 프레임에서 식별된 하나 이상의 기존 객체 중 상기 특정 객체의 기준 포인트 및 스케일과 가장 근접한 예측 정보가 생성된 기존 객체를 상기 특정 객체와 일치하는 객체로 식별할 수 있다.
이때, 상기 매칭부(123)는 상기 가장 낮은 최종 점수가 미리 설정된 기준치(또는 제 1 기준치)를 초과하면 상기 가장 낮은 최종 점수에 대응되는 객체를 상기 특정 객체와 동일하지 않는 객체로 판단할 수 있으며, 상기 특정 객체와 동일한 객체가 상기 기존 프레임에서 검출되지 않은 것으로 판단할 수 있다.
또는, 상기 매칭부(123)는 상기 기존 프레임에서 식별된 객체 중 상기 위치 비교 점수가 미리 설정된 제 1 설정값보다 큰 경우(제 1 설정값을 초과하는 경우) 제 1 설정값보다 큰(제 1 설정값을 초과하는) 위치 비교 점수에 대응되는 객체는 상기 특정 객체와 동일하지 않은(일치하지 않는) 객체로 판단할 수 있다.
또는, 상기 매칭부(123)는 상기 스케일 비교 점수가 미리 설정된 제 2 설정값보다 큰 경우(제 2 설정값을 초과하는 경우) 상기 제 2 설정값보다 큰(제 2 설정값을 초과하는) 스케일 비교 점수에 대응되는 객체는 상기 특정 객체와 동일하지 않은(일치하지 않는) 객체로 판단할 수 있다.
한편, 상기 갱신부(124)는 상기 매칭부(123)와 연동하여 신규 프레임에서 식별된 특정 객체에 대응되어 상기 매칭부(123)를 통해 상기 기존 프레임에서 상기 특정 객체와 일치하는 관심 객체가 검출된 경우 상기 특정 객체에 대해 상기 스켈레톤 분석부(121)를 통해 생성된 상기 특정 객체의 추적 정보를 상기 저장부(130)로부터 추출할 수 있다.
또한, 상기 갱신부(124)는 상기 특정 객체와 일치하는 것으로 판단된 관심 객체가 검출되면, 상기 저장부(130)에 저장된 관심 객체에 대응되는 추적 정보를 상기 특정 객체에 대응되어 생성된 추적 정보를 기초로 업데이트(갱신)할 수 있다.
이때, 상기 매칭부(123)의 판단에 따라 상기 특정 객체와 상기 관심 객체가 상호 일치할 때, 상기 갱신부(124)는 상기 신규 프레임에서의 특정 객체에 대응되는 추적 정보에 포함된 고유 식별자를 상기 관심 객체에 대해 할당된 고유 식별자(관심 객체의 추적 정보에 포함된 고유 식별자)와 동일한 고유 식별자로 변환하여 일치시키고, 상기 특정 객체의 추적 정보를 기초로 상기 특정 객체의 추적 정보에 포함된 지면 접지 위치를 상기 관심 객체의 추적 정보에 추가하여 상기 특정 객체와 동일한 상기 관심 객체의 시간별 이동 위치에 대한 정보가 포함되도록 상기 관심 객체의 추적 정보를 업데이트(update)(또는 갱신)할 수 있다.
또한, 상기 갱신부(124)는 상기 특정 객체의 추적 정보를 기초로 상기 관심 객체의 추적 정보를 업데이트하는 경우 상기 특정 객체의 추적 정보는 상기 저장부(130)에 저장하지 않고 상기 저장부(130)에서 삭제할 수 있다.
또한, 상술한 구성에서 상기 매칭부(123)는 하나 이상의 기존 프레임에서 식별된 객체가 없어 기존 프레임에 대응되는 객체의 예측 정보가 존재하지 않거나 서로 다른 시간에 생성된 하나 이상의 서로 다른 기존 프레임에 대응되어 식별된 하나 이상의 객체 중 상기 신규 프레임에서 식별된 특정 객체와 일치하는 관심 객체가 존재하지 않는 경우 상기 특정 객체를 신규 객체로 판단하고, 상기 갱신부(124)는 상기 매칭부(123)와 연동하여 신규 객체로 판단된 상기 특정 객체의 추적 정보를 상기 특정 객체의 추적 정보에 할당된 고유 식별자를 유지한 상태로 상기 저장부(130)에 저장할 수 있다.
이때, 상기 매칭부(123)는 상기 특정 객체에 대응되는 신규 프레임을 기준으로 과거에 생성된 미리 설정된 개수의 기존 프레임만을 비교 대상으로 하여 상기 특정 객체와 기존 객체를 비교할 수 있으며, 상기 비교 대상인 하나 이상의 기존 프레임에서 상기 특정 객체와 일치하는 관심 객체가 존재하지 않으면 상기 특정 객체를 신규 객체로 판단할 수 있다.
상술한 구성에 따라, 도 5에 도시된 바와 같이, 상기 객체 추적 장치(100)의 제어부(120)는 기존 프레임에서 최초 식별된 관심 객체의 추적 정보를 상기 기존 프레임 이후에 수신되는 복수의 프레임에서 상기 관심 객체와 일치하는 객체가 검출될때마다 상기 복수의 프레임과 각각 대응되어 생성된 상기 검출된 객체별 추적 정보를 기초로 상기 관심 객체의 추적 정보를 상술한 바와 같이 업데이트할 수 있다.
이를 통해, 상기 제어부(120)는 복수의 프레임에서 검출되는 동일 객체를 정확하게 추적하고, 해당 동일 객체의 시간 경과에 따른 위치를 포함하는 추적 정보를 생성할 수 있다.
또한, 관심 객체에 대해 업데이트되는 추적 정보는 관심 객체의 고유 식별자, 관심 객체가 지면과 접지하는 현재 위치, 가장 최근에 업데이트된 시점까지 상기 관심 객체의 지면 접지 위치에 대한 내역(히스토리), 상기 가장 최근에 업데이트된 시점까지 추가된 하나 이상의 지면 접지 위치에 따른 이동 경로 등을 포함할 수 있다.
한편, 상기 이벤트 검출부(125)는 상기 저장부(130)에 저장된 객체별 추적 정보를 미리 설정된 이벤트 발생 조건과 비교하여 이벤트 발생 조건을 만족하는 추적 정보에 대응되는 특정 객체(또는 이벤트 발생 객체) 검출시 상기 특정 객체(이벤트 발생 객체)의 고유 식별자를 포함하는 이벤트 정보를 생성할 수 있다.
즉, 상기 이벤트 검출부(125)는 상기 업데이트된 상기 관심 객체에 대응되는 추적 정보가 미리 설정된 조건 만족시 이벤트를 발생시킬 수 있다.
또한, 상기 이벤트 검출부(125)는 상기 이벤트 정보 생성시 상기 통신부(110)를 통해 미리 설정된 외부 단말로 상기 이벤트 정보를 전송하거나 상기 통신부(110)에 연결된 출력 장치를 통해 상기 이벤트 정보를 출력할 수 있다.
상술한 구성을 통해, 본 발명의 실시예에 따른 객체 추적 장치(100)는 영상을 구성하는 프레임 수신시마다 프레임에서 식별된 특정 객체에 대해 관절 및 스케일 분석을 통한 스켈레톤 정보와 객체 추적을 위한 추적 정보를 생성하면서 상기 객체의 스켈레톤 정보를 기초로 다음 프레임에서 상기 특정 객체의 목에 해당하는 키 포인트에 대해 예상되는 이동 위치 및 객체의 스케일 변화를 칼만 필터를 통해 예측한 예측 정보를 생성하고, 상기 다음 프레임에서 상기 기존 프레임에서 상기 특정 객체에 대해 생성된 예측 정보와 가장 근접한 스켈레톤 정보가 생성된 객체를 상기 특정 객체와 동일한 동일 객체로 식별하면서 상기 동일 객체의 추적 정보를 상기 특정 객체의 추적 정보로 업데이트하여 동일 객체를 정확하게 추적할 수 있으며, 이를 통해 기존과 같이 시각적 특성에 의존한 객체 추적 방식일 때 영상에서 다수의 객체가 군집하여 분산되어 객체 추적이 어려운 경우에도 동일 객체를 단절 없이 연속적으로 정확하게 추적할 수 있어 객체 추적에 대한 신뢰성을 높일 수 있다.
즉, 본 발명은 영상을 구성하는 특정 프레임에서 식별된 특정 객체에 대응되어 특정 객체의 목에 해당하는 키 포인트에 대해 상기 특정 프레임의 다음 프레임에서 예측되는 예상 위치 및 상기 특정 객체의 목에 해당하는 키 포인트를 기준으로 상기 특정 객체의 다른 관절별 키 포인트의 분포 패턴에 대한 스케일에 대해 상기 다음 프레임에서 예측되는 스케일 변화에 대한 예상 스케일을 포함하는 예측 정보를 생성한 후 상기 다음 프레임에서 예측 정보와 가장 근접한 스켈레톤 정보가 생성된 객체를 상기 특정 객체와 동일한 객체로서 검출함으로써, 기존과 같이 개별 픽셀이 가진 정보를 기반으로 하는 시각적 특성에 의존하여 객체를 추적할 때 유사한 시각적 특성을 가진 객체가 특정 프레임에서 복수로 존재하여 어느 객체가 기존 프레임에서 식별된 객체인지 구별하기 어려운 경우에도 서로 다른 프레임에서 객체의 관절 변화를 예측하여 동일 객체를 식별하는 방식으로 서로 다른 프레임에서 동일 객체를 정확하게 추적할 수 있어 객체 추적에 대한 신뢰도를 높일 수 있다.
한편, 상술한 구성에서, 도 5에 도시된 바와 같이 상기 스켈레톤 분석부(121)는 상기 프레임에서 식별된 객체에 바운딩 박스(bounding box)를 설정하여 생성된 상기 바운딩 박스에 대한 정보를 상기 식별된 객체에 대응되는 추적 정보에 포함시킬 수 있다.
또한, 상기 갱신부(124)는 신규 프레임에서 식별된 특정 객체의 추적 정보에 포함된 바운딩 박스에 대한 정보를 상기 관심 객체의 추적 정보에 추가하여 상기 관심 객체의 시간별 바운딩 박스의 위치 변화에 대한 정보가 포함되도록 상기 관심 객체의 추적 정보를 업데이트할 수 있다.
한편, 상기 스켈레톤 분석부(121)는 신규 객체로 판단된 객체의 상기 추적 정보에 상기 예측 정보에 대한 신뢰도 값인 예측 신뢰도에 대한 초기값을 설정할 수 있다.
또한, 상기 매칭부(123)는 상기 기존 프레임에서 식별된 객체 중 신규 프레임에서 식별된 객체별로 스켈레톤 정보와 상기 객체별 예측 정보 사이의 비교에 따라 상기 신규 프레임에서 식별된 하나 이상의 객체 모두와 일치하지 않는 객체의 추적 정보에 포함된 예측 신뢰도에 미리 설정된 점수를 감산할 수 있다.
또한, 상기 매칭부(123)는 상기 신규 프레임에서 식별된 하나 이상의 객체 중 어느 하나와 일치하는 것으로 판단된 기존 프레임에 대응되는 객체의 추적 정보에 포함된 예측 신뢰도에 미리 설정된 점수를 가산할 수 있다.
또한, 갱신부(124)는 상기 매칭부(123)의 판단 결과를 기초로 상기 기존 프레임에서 식별된 객체 중 상기 신규 프레임에서 식별된 하나 이상의 객체 모두와 일치하지 않는 객체의 추적 정보를 해당 객체의 예측 정보를 기초로 갱신할 수 있다.
이때, 상기 갱신부(124)는 예측 정보를 기초로 추적 정보 갱신시 추적 정보의 갱신에 이용되는 예측 정보는 추적 정보에 대응되는 신규 프레임의 직전에 생성된 이전 프레임에 대응되는 예측 정보일 수 있다.
또한, 상기 갱신부(124)는 상기 저장부(130)에 저장된 객체별 추적 정보를 확인하여 기존 객체에 대해 최초 추적 정보가 생성된 이후 수신되는 미리 설정된 개수의 후속 프레임 중 적어도 일부 또는 모두에서 상기 기존 객체와 동일한 객체가 검출되지 않아 상기 기존 객체의 예측 신뢰도가 미리 설정된 기준 신뢰도 이하가 되면, 상기 기존 객체의 추적 정보를 상기 저장부(130)에서 삭제할 수 있다.
상술한 바와 같이, 본 발명은 특정 프레임에서 특정 객체에 대해 스켈레톤 정보 및 추적 정보가 생성된 이후 상기 특정 프레임 이후의 미리 설정된 프레임들 각각에 대해 예측한 상기 특정 객체의 잠재적 이동 위치로 상기 특정 객체가 실제로 이동하지 않아 상기 특정 객체와 동일한 객체가 지속적으로 검출되지 않으면, 상기 특정 객체의 추적에 대한 신뢰도를 지속적으로 감소시켜 추적 정확도가 낮은 객체를 배제할 수 있으며, 이를 통해 객체 추적에 대한 신뢰도를 높일 수 있다.
한편, 상술한 구성 이외에도, 본 발명의 실시예에 따른 객체 추적 장치(100)는 객체의 목에 대응되는 키 포인트 및 스케일을 이용한 비교를 통해 동일 객체로 판단된 신규 프레임의 객체와 기존 프레임의 객체 사이의 동일 객체 여부에 대한 정확도를 더욱 높이기 위해 시각적 비교를 수행할 수 있는데, 이를 상세히 설명한다.
상기 매칭부(123)는 상기 기존 프레임에서 상기 신규 프레임에서 식별된 상기 특정 객체와 일치하는 상기 관심 객체가 복수로 존재하면 상기 특정 객체에 대응되는 스켈레톤 정보를 기준으로 상기 특정 객체의 경계 영역을 식별하여 상기 특정 객체에 대한 마스크(mask) 영역을 설정할 수 있다.
이때, 상기 매칭부(123)는 상기 마스크 영역을 도 5에 도시된 바와 같이 설정할 수 있다.
또한, 상기 매칭부(123)는 상기 기존 프레임에서 상기 신규 프레임의 특정 객체와 일치하는 것으로 식별된 상기 복수의 관심 객체 각각에 대해서도 상기 특정 객체에 대한 마스크 영역의 설정 방식과 동일하게 마스크 영역을 설정할 수 있다.
또한, 상기 매칭부(123)는 상기 신규 프레임에서 식별된 특정 객체의 마스크 영역에 포함된 복수의 픽셀을 대상으로 SMOG(Spatial Mixture of Gaussians) 기반의 가우시안 모델링을 통해 산출된 복수의 가우시안 분포 중 미리 설정된 대역에 속하는 픽셀의 비율에 대한 가우시안 점수를 산출할 수 있다.
또한, 상기 매칭부(123)는 상기 복수의 관심 객체별 마스크 영역에 대해서 상기 특정 객체의 마스크 영역에 대해 상기 가우시안 점수를 산출하는 방식과 동일하게 가우시안 점수를 산출한 후 상기 특정 객체에 대응되는 가우시안 점수와 비교할 수 있다.
또한, 상기 매칭부(123)는 상기 복수의 관심 객체 중 상기 특정 객체와 상기 가우시안 점수의 차이가 가장 작은 객체를 상기 특정 객체와 일치하는 관심 객체로 선택할 수 있다.
이때, 상기 가우시안 점수는 하기 수학식 4를 통해 산출될 수 있다.
Figure PCTKR2021014078-appb-img-000007
상기 SMOGscore는 가우시안 점수이고, 상기 pixel_match는 상기 마스크 영역을 구성하는 복수의 픽셀 중 상기 미리 설정된 복수의 대역에 포함되는 픽셀의 비율일 수 있다.
상술한 구성에서, 도 6에 도시된 바와 같이, 상기 매칭부(123)는 상기 마스크 영역에 포함된 복수의 픽셀을 상기 SMOG 기반으로 샘플링하여 8개의 가우스 분포를 생성할 수 있다. 각 가우스 분포는 하기 4개의 값에 대한 평균과 분산(mean and variance)을 샘플링하여 생성된다.
1. R (Normalized Redness)
2. G (Normalized Greeness)
3. I (Intensity)
4. Y (Relative Normalized Y-Coordinate)
이때, 상기 Y 값은 공간 구성 요소를 나타낸다. 초기화시(특정 객체에 대해 스켈레톤 정보가 최초 생성된 첫 번째 프레임), SMOG는 마스크 영역을 수직으로 8 개 밴드로 분할하여 초기화된다.
또한, 상기 매칭부(123)는 상기 SMOG를 통해 상기 8개 밴드 각각에 대해 각 밴드에 포함된 모든 픽셀을 대상으로 RGIY(상기 4개의 값)에 대한 평균과 분산을 계산한다.
또한, 상기 매칭부(123)는 하기 수학식 5와 같이 상기 신규 프레임의 특정 객체에 대해 상기 기존 프레임에서 식별된 기존 객체별로 상기 특정 객체와의 상술한 바와 같은 비교에 따른 상기 위치 비교 점수와 상기 스케일 비교 점수 및 상기 가우시안 점수를 합산한 합산 점수를 산출하고, 상기 합산 점수가 미리 설정된 기준치(또는 제 2 기준치) 이하이면서 상기 합산 점수가 가장 낮은 기존 객체를 상기 특정 객체와 동일한 객체로서 판단하여 검출할 수 있다.
Figure PCTKR2021014078-appb-img-000008
이때, 상기 score는 합산 점수이며, 상기 Pscorew는 위치 비교 점수, 상기 Sscorew는 스케일 비교 점수, 상기 SMOGscorew는 가우시안 점수이다.
상술한 바와 같이, 본 발명은 스켈레톤 정보를 기초로 이전 프레임과 현재 프레임에서 동일 객체로 판단된 객체의 시각적 특징을 추가 비교하여 동일 객체 판단에 대한 결과를 검증함으로써, 동일 객체 판단에 대한 정확도 및 신뢰도를 더욱 높일 수 있다.
도 7은 본 발명의 실시예에 따른 객체 추적 장치(100)의 객체 추적 방법에 대한 순서도이다.
도시된 바와 같이, 객체 추적 장치(100)는 영상에 대한 프레임을 수신하고(S1), 상기 프레임을 사람에 해당하는 객체의 관절 인식에 따른 스켈레톤 정보를 생성하도록 학습된 학습 모델에 적용하여 상기 영상에서 식별된 객체에 대해 인식된 관절별 키 포인트 및 객체의 스케일(scale)을 포함하는 스켈레톤 정보를 생성하고(S2), 상기 식별된 객체에 대응되어 고유 식별자를 할당하여 상기 고유 식별자 및 상기 식별된 객체의 지면 상 접지 위치인 지면 접지 위치를 포함하는 추적 정보를 상기 식별된 객체에 대응되어 생성하는 스켈레톤 분석 단계를 수행할 수 있다(S3).
또한, 상기 객체 추적 장치(100)는 상기 스켈레톤 분석 단계를 통해 상기 프레임에서 식별된 객체별로 생성된 상기 스켈레톤 정보를 칼만필터에 적용하여 상기 프레임의 다음 프레임에서 목에 해당하는 키 포인트인 기준 포인트 및 객체의 스케일에 대해 예측된 정보인 예측 정보를 상기 객체별로 생성하는 예측 단계를 수행할 수 있다(S4).
또한, 상기 객체 추적 장치(100)는 신규 프레임에 대해 상기 스켈레톤 분석 단계를 수행하여 생성된 특정 객체의 스켈레톤 정보를 기존 프레임에 대해 상기 예측 단계를 통해 생성된 객체별 예측 정보와 상기 기준 포인트 및 스케일을 기초로 비교하여 상기 기존 프레임에 대응되는 하나 이상의 객체 중 상기 특정 객체와 일치하는 관심 객체가 존재하는지 판단하는 매칭 단계를 수행할 수 있다(S5, S6).
또한, 상기 객체 추적 장치(100)는 상기 매칭 단계를 통해 상기 특정 객체와 일치하는 관심 객체가 존재하면(S7) 상기 특정 객체에 대해 상기 스켈레톤 분석 단계를 통해 생성된 상기 추적 정보를 기초로 상기 관심 객체에 대응되는 추적 정보를 업데이트하는 업데이트 단계를 수행할 수 있다(S8).
본 명세서에 기술된 다양한 장치 및 구성부는 하드웨어 회로(예를 들어, CMOS 기반 로직 회로), 펌웨어, 소프트웨어 또는 이들의 조합에 의해 구현될 수 있다. 예를 들어, 다양한 전기적 구조의 형태로 트랜지스터, 로직게이트 및 전자회로를 활용하여 구현될 수 있다.
전술된 내용은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.

Claims (10)

  1. 객체 추적 장치가 영상에 대한 프레임을 수신하고, 상기 프레임을 사람에 해당하는 객체의 관절 인식에 따른 스켈레톤 정보를 생성하도록 학습된 학습 모델에 적용하여 상기 영상에서 식별된 객체에 대해 인식된 관절별 키 포인트 및 객체의 스케일(scale)을 포함하는 스켈레톤 정보를 생성하고, 상기 식별된 객체에 대응되어 고유 식별자를 할당하여 상기 고유 식별자 및 상기 식별된 객체의 지면 상 접지 위치인 지면 접지 위치를 포함하는 추적 정보를 상기 식별된 객체에 대응되어 생성하는 스켈레톤 분석 단계;
    상기 객체 추적 장치가 상기 스켈레톤 분석 단계를 통해 상기 프레임에서 식별된 객체별로 생성된 상기 스켈레톤 정보를 칼만필터에 적용하여 상기 프레임의 다음 프레임에서 목에 해당하는 키 포인트인 기준 포인트 및 객체의 스케일에 대해 예측된 정보인 예측 정보를 상기 객체별로 생성하는 예측 단계;
    상기 객체 추적 장치가 신규 프레임에 대해 상기 스켈레톤 분석 단계를 수행하여 생성된 특정 객체의 스켈레톤 정보를 기존 프레임에 대해 상기 예측 단계를 통해 생성된 객체별 예측 정보와 상기 기준 포인트 및 스케일을 기초로 비교하여 상기 기존 프레임에 대응되는 하나 이상의 객체 중 상기 특정 객체와 일치하는 관심 객체가 존재하는지 판단하는 매칭 단계; 및
    상기 객체 추적 장치가 상기 매칭 단계를 통해 상기 특정 객체와 일치하는 상기 관심 객체가 존재하면 상기 특정 객체에 대해 상기 스켈레톤 분석 단계를 통해 생성된 상기 추적 정보를 기초로 상기 관심 객체에 대응되는 추적 정보를 업데이트하는 업데이트 단계
    를 포함하는 스켈레톤 분석을 이용한 객체 추적 방법.
  2. 청구항 1에 있어서,
    상기 업데이트 단계는
    상기 객체 추적 장치가 상기 특정 객체와 상기 관심 객체가 상호 일치할 때 상기 신규 프레임에서의 특정 객체에 대응되는 추적 정보에 포함된 고유 식별자를 상기 관심 객체에 할당된 고유 식별자와 동일한 고유 식별자로 변환하여 일치시키고, 상기 특정 객체의 추적 정보를 기초로 상기 특정 객체의 지면 접지 위치를 상기 관심 객체의 추적 정보에 추가하여 상기 특정 객체와 동일한 상기 관심 객체의 시간별 이동 위치에 대한 정보가 포함되도록 상기 관심 객체의 추적 정보를 업데이트하는 것을 특징으로 하는 스켈레톤 분석을 이용한 객체 추적 방법.
  3. 청구항 2에 있어서,
    상기 스켈레톤 분석 단계는
    상기 객체 추적 장치가 상기 식별된 객체에 바운딩 박스를 설정하여 생성된 상기 바운딩 박스에 대한 정보를 상기 추적 정보에 포함시키는 단계를 더 포함하며,
    상기 업데이트 단계는
    상기 객체 추적 장치가 상기 특정 객체의 추적 정보에 포함된 바운딩 박스에 대한 정보를 상기 관심 객체의 추적 정보에 추가하여 상기 관심 객체의 시간별 바운딩 박스의 위치 변화에 대한 정보가 포함되도록 상기 관심 객체의 추적 정보를 업데이트하는 단계를 더 포함하는 것을 특징으로 하는 스켈레톤 분석을 이용한 객체 추적 방법.
  4. 청구항 1에 있어서,
    상기 매칭 단계는,
    상기 객체 추적 장치가 상기 신규 프레임에 대해 생성된 특정 객체의 스켈레톤 정보에 포함된 기준 포인트와 기존 프레임에 대해 생성된 객체별 예측 정보에 포함된 기준 포인트를 미리 설정된 제 1 수학식에 따라 객체별로 비교하여 객체별 위치 점수를 산출하고, 상기 특정 객체의 스켈레톤 정보에 포함된 스케일과 상기 객체별 예측 정보에 포함된 스케일을 미리 설정된 제 2 수학식에 따라 객체별로 비교하여 객체별 스케일 점수를 산출한 후 상기 위치 점수 및 스케일 점수를 객체별로 합산한 최종 점수를 산출하여, 상기 기존 프레임에서 식별된 객체 중 상기 최종 점수가 가장 낮으면서 미리 설정된 기준치 이하인 객체를 상기 관심 객체로 식별하는 단계를 더 포함하는 것을 특징으로 하는 스켈레톤 분석을 이용한 객체 추적 방법.
  5. 청구항 4에 있어서,
    상기 제 1 수학식은
    Figure PCTKR2021014078-appb-img-000009
    이며, 상기 Pscore는 상기 위치 점수이고, 상기 특정 객체의 스켈레톤 정보에 포함된 기준 포인트의 좌표와 상기 기존 프레임에 대해 생성된 객체의 예측 정보에 포함되는 기준 포인트의 좌표가 상기 맨하탄 거리(Manhattan distance)에 적용되는 것을 특징으로 하는 스켈레톤 분석을 이용한 객체 추적 방법.
  6. 청구항 4에 있어서,
    상기 제 2 수학식은,
    Figure PCTKR2021014078-appb-img-000010
    이며, 상기 Sscore는 상기 스케일 점수이며, 상기 minScale은 상기 특정 객체의 스켈레톤 정보에 포함된 스케일과 상기 기존 프레임에 대해 생성된 객체의 예측 정보에 포함된 스케일 중 더 작은 값이고, 상기 maxScale은 상기 특정 객체의 스켈레톤 정보에 포함된 스케일과 상기 기존 프레임에 대해 생성된 객체의 예측 정보에 포함된 스케일 중 더 큰 값인 것을 특징으로 하는 스켈레톤 분석을 이용한 객체 추적 방법.
  7. 청구항 1에 있어서,
    상기 스켈레톤 정보에 포함된 스케일은
    Figure PCTKR2021014078-appb-img-000011
    을 통해 산출되며,
    상기 rlimb는 상기 기준 포인트를 기준으로 팔꿈치에 대응되는 제 1 키 포인트와, 엉덩이에 대응되는 제 2 키 포인트와, 무릎에 대응되는 제 3 키 포인트 및 발목에 대응되는 제 4 키 포인트를 포함하는 관절별 키 포인트 각각에 대해 픽셀을 기초로 산출된 반경이며, 상기 Climb는 상기 학습 모델에 의해 산출되어 상기 스켈레톤 정보에 포함된 상기 기준 포인트를 제외한 관절별 키 포인트 각각에 대한 신뢰도이며, 상기 Rlimb는 상기 기준 포인트를 제외한 관절별 키 포인트 각각에 대해 미리 설정된 가중치인 것을 특징으로 하는 스켈레톤 분석을 이용한 객체 추적 방법.
  8. 청구항 1에 있어서,
    상기 업데이트 단계 이후,
    상기 업데이트된 상기 관심 객체에 대응되는 추적 정보가 미리 설정된 조건 만족시 이벤트를 발생시키는 이벤트 감지 단계
    를 더 포함하는 것을 특징으로 하는 스켈레톤 분석을 이용한 객체 추적 방법.
  9. 청구항 1에 있어서,
    상기 매칭 단계는,
    상기 객체 추적 장치가 상기 특정 객체와 일치하는 상기 관심 객체가 복수로 존재하면 상기 특정 객체에 대응되는 스켈레톤 정보를 기준으로 상기 특정 객체의 경계 영역을 식별하여 상기 특정 객체에 대한 마스크 영역을 설정하고, 상기 기존 프레임에서 상기 특정 객체와 일치하는 것으로 식별된 상기 복수의 관심 객체 각각에 대해서도 상기 특정 객체에 대한 마스크 영역의 설정 방식과 동일하게 마스크 영역을 설정하며, 상기 특정 객체의 마스크 영역에 포함된 복수의 픽셀을 대상으로 SMOG 기반의 가우시안 모델링을 통해 산출된 복수의 가우시안 분포 중 미리 설정된 대역에 속하는 픽셀의 비율에 대한 가우시안 점수를 산출하고, 상기 복수의 관심 객체별 마스크 영역에 대해서 상기 특정 객체의 마스크 영역에 대해 상기 가우시안 점수를 산출하는 방식과 동일하게 가우시안 점수를 산출한 후 상기 특정 객체에 대응되는 가우시안 점수와 비교하며, 상기 복수의 관심 객체 중 상기 특정 객체와의 상기 가우시안 점수의 차이가 가장 작은 객체를 상기 특정 객체와 일치하는 관심 객체로 선정하는 시각 비교 단계를 더 포함하는 것을 특징으로 하는 스켈레톤 분석을 이용한 객체 추적 방법.
  10. 영상에 대한 프레임을 수신하고, 상기 프레임을 사람에 해당하는 객체의 관절 인식에 따른 스켈레톤 정보를 생성하도록 학습된 학습 모델에 적용하여 상기 영상에서 식별된 객체에 대해 인식된 관절별 키 포인트 및 객체의 스케일(scale)을 포함하는 스켈레톤 정보를 생성하고, 상기 식별된 객체에 대응되어 고유 식별자를 할당하여 상기 고유 식별자 및 상기 식별된 객체의 지면 상 접지 위치인 지면 접지 위치를 포함하는 추적 정보를 상기 식별된 객체에 대응되어 생성하는 스켈레톤 분석부;
    상기 스켈레톤 분석부를 통해 상기 프레임에서 식별된 객체별로 생성된 상기 스켈레톤 정보를 칼만필터에 적용하여 상기 프레임의 다음 프레임에서 목에 해당하는 키 포인트인 기준 포인트 및 객체의 스케일에 대해 예측된 정보인 예측 정보를 상기 객체별로 생성하는 예측부;
    신규 프레임에 대해 상기 스켈레톤 분석부를 통해 생성된 특정 객체의 스켈레톤 정보를 기존 프레임에 대해 상기 예측부를 통해 생성된 객체별 예측 정보와 상기 기준 포인트 및 스케일을 기초로 비교하여 상기 기존 프레임에 대응되는 하나 이상의 객체 중 상기 특정 객체와 일치하는 관심 객체가 존재하는지 판단하는 매칭부; 및
    상기 매칭부를 통해 상기 특정 객체와 일치하는 관심 객체가 존재하면 상기 특정 객체에 대해 상기 스켈레톤 분석부를 통해 생성된 상기 추적 정보를 기초로 상기 관심 객체에 대응되는 추적 정보를 업데이트하는 갱신부
    를 포함하는 스켈레톤 분석을 이용한 객체 추적 장치.
PCT/KR2021/014078 2020-10-14 2021-10-13 스켈레톤 분석을 이용한 객체 추적 장치 및 방법 WO2022080844A1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2020-0132959 2020-10-14
KR1020200132959A KR102416825B1 (ko) 2020-10-14 2020-10-14 스켈레톤 분석을 이용한 객체 추적 장치 및 방법

Publications (1)

Publication Number Publication Date
WO2022080844A1 true WO2022080844A1 (ko) 2022-04-21

Family

ID=81207347

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2021/014078 WO2022080844A1 (ko) 2020-10-14 2021-10-13 스켈레톤 분석을 이용한 객체 추적 장치 및 방법

Country Status (2)

Country Link
KR (1) KR102416825B1 (ko)
WO (1) WO2022080844A1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024101472A1 (ko) * 2022-11-09 2024-05-16 주식회사 휴먼아이씨티 영상 내에서 객체를 처리하는 방법 및 장치

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180225517A1 (en) * 2017-02-07 2018-08-09 Fyusion, Inc. Skeleton detection and tracking via client-server communication
US20200219284A1 (en) * 2019-01-07 2020-07-09 Genieland Company Limited System and method for posture sequence on video from mobile terminals
US20200250874A1 (en) * 2019-02-06 2020-08-06 Snap Inc. Body pose estimation

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8334842B2 (en) * 2010-01-15 2012-12-18 Microsoft Corporation Recognizing user intent in motion capture system
KR101815975B1 (ko) * 2011-07-27 2018-01-09 삼성전자주식회사 객체 자세 검색 장치 및 방법
KR101764845B1 (ko) * 2015-06-08 2017-08-03 군산대학교 산학협력단 다중 이동 물체의 겹침 제거 및 추적을 위한 영상 감시 장치 및 방법
US11367198B2 (en) * 2017-02-07 2022-06-21 Mindmaze Holding Sa Systems, methods, and apparatuses for tracking a body or portions thereof
JP6793151B2 (ja) * 2018-05-23 2020-12-02 日本電信電話株式会社 オブジェクトトラッキング装置、オブジェクトトラッキング方法およびオブジェクトトラッキングプログラム
KR102152318B1 (ko) 2019-11-13 2020-09-04 주식회사 벡터시스 객체의 이동경로를 추적할 수 있는 추적시스템

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180225517A1 (en) * 2017-02-07 2018-08-09 Fyusion, Inc. Skeleton detection and tracking via client-server communication
US20200219284A1 (en) * 2019-01-07 2020-07-09 Genieland Company Limited System and method for posture sequence on video from mobile terminals
US20200250874A1 (en) * 2019-02-06 2020-08-06 Snap Inc. Body pose estimation

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
BIN REN; MENGYUAN LIU; RUNWEI DING; HONG LIU: "A Survey on 3D Skeleton-Based Action Recognition Using Learning Method", ARXIV.ORG, CORNELL UNIVERSITY LIBRARY, 201 OLIN LIBRARY CORNELL UNIVERSITY ITHACA, NY 14853, 14 February 2020 (2020-02-14), 201 Olin Library Cornell University Ithaca, NY 14853 , XP081599663 *
WEI SHEN; KAI ZHAO; YUAN JIANG; YAN WANG; XIANG BAI; ALAN YUILLE: "DeepSkeleton: Learning Multi-task Scale-associated Deep Side Outputs for Object Skeleton Extraction in Natural Images", ARXIV.ORG, CORNELL UNIVERSITY LIBRARY, 201 OLIN LIBRARY CORNELL UNIVERSITY ITHACA, NY 14853, 13 September 2016 (2016-09-13), 201 Olin Library Cornell University Ithaca, NY 14853 , XP081363804, DOI: 10.1109/TIP.2017.2735182 *

Also Published As

Publication number Publication date
KR102416825B1 (ko) 2022-07-06
KR20220049389A (ko) 2022-04-21

Similar Documents

Publication Publication Date Title
WO2021221249A1 (ko) 스마트 가축 관리 시스템 및 그 방법
WO2021095916A1 (ko) 객체의 이동경로를 추적할 수 있는 추적시스템
WO2014058248A1 (ko) 단일객체에 대한 기울기를 추정하는 영상을 감시하는 장치 및 방법
WO2020196985A1 (ko) 비디오 행동 인식 및 행동 구간 탐지 장치 및 방법
WO2017048067A1 (en) Terminal and method for measuring location thereof
WO2022139110A1 (ko) 해상객체 식별을 위한 초분광 데이터 처리방법 및 장치
WO2021091022A1 (ko) 머신 러닝 시스템 및 머신 러닝 시스템의 동작 방법
WO2022139111A1 (ko) 초분광 데이터에 기반하는 해상객체 인식 방법 및 시스템
WO2022080844A1 (ko) 스켈레톤 분석을 이용한 객체 추적 장치 및 방법
EP3351023A1 (en) Terminal and method for measuring location thereof
WO2018143571A1 (ko) 무선 통신 시스템에서 객체를 관리하는 방법 및 장치
WO2016143976A1 (ko) 작업 현장 영상 데이터 내의 작업자 인식 방법
WO2020080734A1 (ko) 얼굴 인식 방법 및 얼굴 인식 장치
WO2019235776A1 (ko) 이상 개체 판단 장치 및 방법
WO2020153568A1 (en) Electronic apparatus and control method thereof
WO2023171981A1 (ko) 감시카메라 관리 장치
WO2020017814A1 (ko) 이상 개체 검출 시스템 및 방법
WO2019212237A1 (ko) 이상 개체 검출 장치 및 방법
WO2020204219A1 (ko) 인공지능을 이용한 사물 인식 학습에서 아웃라이어를 분류하는 방법 및 분류장치와 로봇
WO2022097766A1 (ko) 가려진 영역 복원 방법 및 장치
WO2023182713A1 (ko) 인공지능 기반으로 텍스트 및 비-텍스트 이미지를 포함하는 화면 정보를 인지하여 화면 상의 오브젝트에 이벤트를 발생시키는 방법 및 시스템
WO2022035190A1 (ko) 딥러닝을 이용한 얼굴 인식 기반 미아 찾기 서비스 제공 장치 및 방법
WO2022035054A1 (ko) 로봇 및 이의 제어 방법
WO2022039575A1 (ko) 딥 러닝 기반 실시간 공정 감시 시스템 및 그 방법
WO2022250196A1 (ko) 치매 환자 추적 장치 및 방법

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

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 21880491

Country of ref document: EP

Kind code of ref document: A1