Methods for reducing the appearance of block-related artifacts
Methods and systems for reducing the appearance of block-related artifacts are described. The methods include obtaining image frames in a sequence of image frames and adjusting some or all image frames in the sequence of image frames to generate adjusted image frames. The adjusted image frames may be created by generating image data and adding it to one or more edges of the image frame or by discarding image data from the image frame. The adjusted image frames shift a block origin relative to image data in the image frame. The adjusting is performed so that the shift of the block origin varies during the sequence of image frames. A block-based process is applied to each adjusted image frame to generate processed image frames, wherein blocks of image data are selected and processed in each adjusted frame of image data according to the block origin.
1 . A method for reducing the appearance of block-related artifacts, the method comprising:
obtaining image frames in a sequence of image frames;
adjusting some or all image frames in the sequence of image frames to generate adjusted image frames to shift a block origin relative to image data of the image frame so that a position of the block origin relative to the image frame prior to shifting the block origin varies during the sequence of image frames, wherein adjusting the image data comprises generating image data and adding the generated image data to one or more edges of the image frame or discarding image data from one or more edges of the image frame, wherein an amount of generated image data added or discarded varies during the sequence of image frames; and
applying a block-based process to each adjusted image frame in the sequence of image frames to generate processed image frames, wherein blocks of image data are selected and processed in each adjusted frame of image data according to the block origin.
2 . The method according to claim 1 , wherein the block-based process is a video encoding process.
3 . The method according to claim 1 , wherein the block-based process is an image compression process.
4 . The method according to claim 1 , further comprising:
performing a deprocessing corresponding to the block-based process to each processed frame in the sequence of image frames to generate deprocessed frames; and
cropping the deprocessed image frames to perform one of: removing generated image data that has been added to one or more edges of the image frame and cropping the deprocessed image frame.
5 . The method according to claim 1 wherein some or all image frames are adjusted to shift the block origin relative to the image data in the image frame in at least one of a horizontal dimension of the image frame and a vertical dimension of the image frame.
6 . The method according to claim 5 , wherein some or all image frames are adjusted to shift the block origin relative to the image data in the image frame in both the horizontal dimension of the image frame and the vertical dimension of the image frame.
7 . The method according to claim 6 , wherein at least one of:
an extent during the sequence of image frames of the horizontal shift applied to the block origin relative to the image data in the image frame is different to an extent during the sequence of image frames of the vertical shift applied to the block origin relative to the image data; and
a variation during the sequence of image frames of the horizontal shift applied to the block origin relative to the image data in the image frame is different to a variation during the sequence of image frames of the vertical shift applied to the block origin relative to the image data.
8 . The method according to claim 1 wherein all image frames in the sequence of image frames are adjusted, wherein some or all image frames in the sequence of image frames are further adjusted to add or discard image data in order to keep all adjusted image frames the same size.
9 . The method according to claim 8 , wherein some or all image frames in the sequence of image frames are adjusted to generate adjusted image frames by generating image data using wrap padding and adding the generated image data to one or more edges of the image frame, wherein the image frames are further adjusted to discard image data corresponding to the wrap padding in order to keep all adjusted frames that same size.
10 . The method according to claim 1 wherein a maximum shift of the block origin is 50% or more of the block size.
11 . The method according to claim 1 further comprising adding an indicator to each respective adjusted image frame to indicate how the respective adjusted image frame has been adjusted.
12 . The method according to claim 4 , wherein the step of adjusting some or all the image frames and the step of cropping the deprocessed image frames are synchronized based on position in the sequence of image frames so that an amount of image data removed by the cropping is determined based on the position of an image frame within the sequence of image frames.
13 . The method according to claim 4 , wherein the method is performed by a temporal denoising system, and wherein the steps of adjusting image frames and applying a block-based process to each adjusted image frame are performed by a compressor and the steps of performing a deprocessing corresponding to the block-based process and cropping the deprocessed image frames are performed by a decompressor.
14 . The method according to claim 13 further comprising, performing, by a temporal denoiser, a temporal denoising process based on received original image frames,
wherein the step of obtaining image frames in a sequence of image frames comprises the compressor obtaining successive accumulated image frames that have been processed by the temporal denoiser.
15 . A system for reducing the appearance of block-related artifacts, the system comprising:
one or more processors and one or more storage, wherein one or more storage stores computer-readable instructions that when executed by the one or more processors cause the system to:
receive image frames in a sequence of image frames;
adjust some or all image frames in the sequence of image frames to generate adjusted image frames to shift a block origin relative to image data of the image frame so that a position of the block origin relative to the image frame prior to shifting the block origin varies during the sequence of image frames, wherein adjusting the image data comprises generating image data and adding the generated image data to one or more edges of the image frame or discarding image data from one or more edges of the image frame, wherein an amount of generated image data added or discarded varies during the sequence of image frames; and
apply a block-based process to each adjusted image frame in the sequence of image frames to generate processed image frames, wherein blocks of image data are selected and processed in each adjusted frame of image data according to the block origin.
16 . A non-transitory computer readable storage medium storing a program that, when executed by an information processing apparatus, causes the information processing apparatus to perform the method of claim 1 .
17 . A method for reducing the appearance of block-related artifacts, the method comprising:
obtaining image frames in a sequence of image frames;
adjusting some or all image frames in the sequence of image frames to generate adjusted image frames to shift a block origin relative to image data of the image frame so that a position of the block origin relative to the image frame prior to shifting the block origin varies during the sequence of image frames, wherein adjusting the image data comprises generating image data and adding the generated image data to one or more edges of the image frame or discarding image data from one or more edges of the image frame;
applying a block-based process to each adjusted image frame in the sequence of image frames to generate processed image frames, wherein blocks of image data are selected and processed in each adjusted frame of image data according to the block origin;
performing a deprocessing corresponding to the block-based process to each processed frame in the sequence of image frames to generate deprocessed frames; and
cropping the deprocessed image frames to perform one of: removing generated image data that has been added to one or more edges of the image frame and cropping the deprocessed image frame,
wherein the step of adjusting some or all the image frames and the step of cropping the deprocessed image frames are synchronized based on position in the sequence of image frames so that an amount of image data removed by the cropping is determined based on the position of an image frame within the sequence of image frames.
18 . The method according to claim 17 , wherein all image frames in the sequence of image frames are adjusted, wherein some image frames in the sequence of image frames are further adjusted to add or discard image data in order to keep all adjusted image frames the same size.
19 . The method according to claim 17 , wherein the method is performed by a temporal denoising system, and wherein the steps of adjusting image frames and applying a block-based process to each adjusted image frame are performed by a compressor and the steps of performing a deprocessing corresponding to the block-based process and cropping the deprocessed image frames are performed by a decompressor.
20 . The method according to claim 19 , further comprising, performing, by a temporal denoiser, a temporal denoising process based on received original image frames,
wherein the step of obtaining image frames in a sequence of image frames comprises the compressor obtaining successive accumulated image frames that have been processed by the temporal denoiser.