A computer-implemented video stabilization method, comprising: receiving, by a computing system, a video stream that includes multiple frames and that was captured by a physical camera; determining, by the computing system and in a current frame of the multiple frames of the video stream that was captured by the physical camera, an actual location of a feature of an object that is depicted in the current frame; determining, by the computing system and in a previous frame of the multiple frames of the video stream that was captured by the physical camera, a previous location of the feature of the object in the previous frame; determining, by the computing system, a stabilized location of the feature in the current frame using a process that: determines a potential stabilized location of the feature in the current frame based on the previous location of the feature in the previous frame and the actual location of the feature in the current frame, wherein a distance between the potential stabilized location of the feature and the actual location of the feature is within a cropped range of the video stream; determines a follow value of the feature, the follow value comprising the change in location between the potential stabilized location of the feature in the current frame and the actual location of the feature in the current frame; determines a smoothness value of the feature, the smoothness value determined based on the change in location between the potential stabilized location of the feature in the current frame and the previous location of the feature in the previous frame; optimizes a weighted sum of the follow value of the feature and the smoothness value of the feature; and generating, by the computing system, a stabilized view of the current frame using the stabilized location of the feature in the current frame, wherein the stabilized view of the current frame has a different cropping than a cropping of another frame of the multiple frames. receiving, by a computing system, a video stream that includes multiple frames and that was captured by a physical camera; determining, by the computing system and in a current frame of the multiple frames of the video stream that was captured by the physical camera, an actual location of a feature of an object that is depicted in the current frame; determining, by the computing system and in a previous frame of the multiple frames of the video stream that was captured by the physical camera, a previous location of the feature of the object in the previous frame; determining, by the computing system, a stabilized location of the feature in the current frame using a process that: determines a potential stabilized location of the feature in the current frame based on the previous location of the feature in the previous frame and the actual location of the feature in the current frame, wherein a distance between the potential stabilized location of the feature and the actual location of the feature is within a cropped range of the video stream; determines a follow value of the feature, the follow value comprising the change in location between the potential stabilized location of the feature in the current frame and the actual location of the feature in the current frame; determines a smoothness value of the feature, the smoothness value determined based on the change in location between the potential stabilized location of the feature in the current frame and the previous location of the feature in the previous frame; optimizes a weighted sum of the follow value of the feature and the smoothness value of the feature; and determines a potential stabilized location of the feature in the current frame based on the previous location of the feature in the previous frame and the actual location of the feature in the current frame, wherein a distance between the potential stabilized location of the feature and the actual location of the feature is within a cropped range of the video stream; determines a follow value of the feature, the follow value comprising the change in location between the potential stabilized location of the feature in the current frame and the actual location of the feature in the current frame; determines a smoothness value of the feature, the smoothness value determined based on the change in location between the potential stabilized location of the feature in the current frame and the previous location of the feature in the previous frame; optimizes a weighted sum of the follow value of the feature and the smoothness value of the feature; and generating, by the computing system, a stabilized view of the current frame using the stabilized location of the feature in the current frame, wherein the stabilized view of the current frame has a different cropping than a cropping of another frame of the multiple frames.