1. A method, comprising: receiving image frames of video content as a sequence of the image frames, one or more of the image frames including noise that corrupts the video content, and one of the image frames in the sequence selected as a reference frame; determining matching patches that match an image patch in the reference frame, the matching patches being determined from within a local neighborhood around the image patch in the reference frame; computing a noise estimate for previous image frames and for subsequent image frames relative to the reference frame in the sequence of the image frames, the noise estimate for a particular one of the image frames computed based on optical flow, and the noise estimate usable to determine a contribution of similar motion patches in the particular image frame for denoising the image patch in the reference frame; determining the similar motion patches from the previous and subsequent image frames that correspond to the image patch in the reference frame, the similar motion patches being determined based on the optical flow computations; and denoising the image patch in the reference frame based on the matching patches that are determined from within the reference frame and based on the similar motion patches that are determined from the previous and subsequent image frames, which are used based on the noise estimates that are computed for each of the previous and subsequent image frames.