A method of tracking poses of multiple objects, comprising: detecting, by one or more processors, objects from each of a plurality of consecutive frames in a video sequence; estimating, by the one or more processors, a pose of each of the objects within each of the plurality of consecutive frames; and tracking, by the one or more processors, the poses of each of the objects across the plurality of consecutive frames, wherein the step of detecting the objects from each of the plurality of consecutive frames in the video sequence comprises: determining, by the one or more processors, a bounding box for each of the objects from each of the plurality of consecutive frames; and determining, by the one or more processors, a confidence score of the bounding box for the one of the objects within the one of the plurality of consecutive frames, wherein the step of estimating the pose of each of the objects within each of the plurality of consecutive frames comprises: determining, by the one or more processors, from a region defined by the bounding box for the one of the objects within the one of the plurality of consecutive frames, keypoints of the one of the objects within the one of the plurality of consecutive frames; determining, by the one or more processors, confidence scores of the keypoints of the one of the objects within the one of the plurality of consecutive frames; characterised in that estimating the pose of each of the objects within each of the plurality of consecutive frames further comprises: applying, by the one or more processors, a model ensemble mode combining two or more pose estimation models to determine the keypoints of the one of the objects within the one of the plurality of consecutive frames, wherein the two or more pose estimation models comprise at least a first model and a second model. detecting, by one or more processors, objects from each of a plurality of consecutive frames in a video sequence; estimating, by the one or more processors, a pose of each of the objects within each of the plurality of consecutive frames; and tracking, by the one or more processors, the poses of each of the objects across the plurality of consecutive frames, wherein the step of detecting the objects from each of the plurality of consecutive frames in the video sequence comprises: determining, by the one or more processors, a bounding box for each of the objects from each of the plurality of consecutive frames; and determining, by the one or more processors, a confidence score of the bounding box for the one of the objects within the one of the plurality of consecutive frames, wherein the step of estimating the pose of each of the objects within each of the plurality of consecutive frames comprises: determining, by the one or more processors, from a region defined by the bounding box for the one of the objects within the one of the plurality of consecutive frames, keypoints of the one of the objects within the one of the plurality of consecutive frames; determining, by the one or more processors, confidence scores of the keypoints of the one of the objects within the one of the plurality of consecutive frames; characterised in that estimating the pose of each of the objects within each of the plurality of consecutive frames further comprises: applying, by the one or more processors, a model ensemble mode combining two or more pose estimation models to determine the keypoints of the one of the objects within the one of the plurality of consecutive frames, wherein the two or more pose estimation models comprise at least a first model and a second model.