A method of tracking an object in a video, the method comprising: accessing an object abstraction of the object, the object abstraction comprising a first probability density function, PDF, representing a cloud of Bag of Features, BoF, as a description of the object; performing foreground/background segmentation on a frame of the video in order to generate a list of multiple image patches in the frame of the video; generating a patch abstraction for each of the multiple image patches, the patch abstraction comprising a second PDF cloud of BoF description of the image patch; combining the object abstraction with each of the patch abstractions for the multiple image patches to generate combined abstractions, by merging the first PDF cloud of BoF description with each of the one or more second PDF cloud of BoF descriptions; for each respective combined abstraction, comparing the respective combined abstraction with at least a part of one or both of the object abstraction and the patch abstraction for the respective image patch to provide a comparison of the object abstraction with the patch abstraction; and determining which image patch matches the known object based on the comparisons for each of the respective image patches in order to track the object in the video, wherein the object abstraction, each patch abstraction, and the combined abstractions have a Gaussian distribution with a respective covariance matrix; wherein the object abstraction comprises an object covariance matrix; wherein the patch abstraction comprises a query covariance matrix; and wherein combining at least a part of the object abstraction with at least a part of the patch abstraction comprises generating a merged covariance matrix by combining the object covariance matrix with the query covariance matrix, ignoring the mean components of the Gaussian distributions of the object abstraction and the patch abstraction. accessing an object abstraction of the object, the object abstraction comprising a first probability density function, PDF, representing a cloud of Bag of Features, BoF, as a description of the object; performing foreground/background segmentation on a frame of the video in order to generate a list of multiple image patches in the frame of the video; generating a patch abstraction for each of the multiple image patches, the patch abstraction comprising a second PDF cloud of BoF description of the image patch; combining the object abstraction with each of the patch abstractions for the multiple image patches to generate combined abstractions, by merging the first PDF cloud of BoF description with each of the one or more second PDF cloud of BoF descriptions; for each respective combined abstraction, comparing the respective combined abstraction with at least a part of one or both of the object abstraction and the patch abstraction for the respective image patch to provide a comparison of the object abstraction with the patch abstraction; and determining which image patch matches the known object based on the comparisons for each of the respective image patches in order to track the object in the video, wherein the object abstraction, each patch abstraction, and the combined abstractions have a Gaussian distribution with a respective covariance matrix; wherein the object abstraction comprises an object covariance matrix; wherein the patch abstraction comprises a query covariance matrix; and wherein combining at least a part of the object abstraction with at least a part of the patch abstraction comprises generating a merged covariance matrix by combining the object covariance matrix with the query covariance matrix, ignoring the mean components of the Gaussian distributions of the object abstraction and the patch abstraction.