-
公开(公告)号:US10791343B2
公开(公告)日:2020-09-29
申请号:US15920052
申请日:2018-03-13
Applicant: Google LLC
Inventor: Jyrki Antero Alakuijala , Jan Wassenberg
Abstract: An encoder and/or a computer implemented encoding method includes a texture module configured to determine texture data associated with texture of an image, a noise module configured to determine noise data based on the texture data, a synthesis module configured to generate spatial spectral characteristics of the noise, and combine at least one of the noise data, the texture data, and the spatial spectral characteristics of the noise based on at least one border between adjacent textures, and an encoding module configured to compress the image using an image compression codec.
-
公开(公告)号:US20240276018A1
公开(公告)日:2024-08-15
申请号:US18643085
申请日:2024-04-23
Applicant: GOOGLE LLC
Inventor: Jyrki Alakuijala , Robert Obryk , Evgenii Kliuchnikov , Zoltan Szabadka , Jan Wassenberg , Minttu Alakuijala , Lode Vandevenne
IPC: H04N19/65 , H04N19/124 , H04N19/18 , H04N19/184 , H04N19/85
CPC classification number: H04N19/65 , H04N19/124 , H04N19/18 , H04N19/184 , H04N19/85
Abstract: The loss of image quality during compression is controlled using a sequence of quality control metrics. The sequence of quality control metrics is selected for quantizing transform coefficients within an area of the image based on an error level definition. Candidate bit costs are then determined by quantizing the transform coefficients according to the error level definition or a modified error level and the sequence of quality control metrics. Where the candidate bit cost resulting from using the modified error level is lower than the candidate bit cost resulting from using the error level definition, the transform coefficients are quantized according to the modified error level and the sequence of quality control metrics. Otherwise, the transform coefficients are quantized based on the error level definition and according to the sequence of quality control metrics.
-
公开(公告)号:US11412260B2
公开(公告)日:2022-08-09
申请号:US16662818
申请日:2019-10-24
Applicant: Google LLC
Inventor: Jyrki Antero Alakuijala , Jan Wassenberg
IPC: H04N19/46 , G06T3/60 , H04N19/12 , H04N19/625 , H04N19/176 , H04N19/186 , H04N19/13
Abstract: A decoder may perform a method of decompressing images that include texture features that are not aligned with an axis of the image being compressed. In some example implementation, the method may include receiving a block of geometrically transformed pixel values and performing an inverse geometric transformation on the block of geometrically transformed pixel values to generate a first block of pixel values. The geometrically transformed pixel values represent texture features of an image that are non-parallel with a vertical axis or a horizontal axis of the image and the first block of pixel values being one of a plurality of blocks of the image. The example method may further include generating at least a portion of the image based on the first block of pixel values.
-
公开(公告)号:US20200092558A1
公开(公告)日:2020-03-19
申请号:US16687719
申请日:2019-11-19
Applicant: GOOGLE LLC
Inventor: Jyrki Alakuijala , Jan Wassenberg
IPC: H04N19/124 , H04N19/80 , H04N19/70 , H04N19/44 , H04N19/172
Abstract: A spatially adaptive quantization-aware deblocking filter is used for encoding or decoding video or image frames. The deblocking filter receives a reconstructed frame produced based on dequantized and inverse transformed coefficients of a video frame or an image frame. The reconstructed frame is filtered according to adaptive quantization field data for the video or image frame. The adaptive quantization field data represents weights applied to quantization values used at different areas of the video or image frame. A number of blocking artifacts remaining within the resulting filtered frame is determined. The adaptive quantization field data is then adjusted based on that number of blocking artifacts. The filtered frame is then filtered according to the adjusted adaptive quantization field data. The resulting re-filtered frame is then output to an output source, such as for transmission, display, storage, or further processing.
-
公开(公告)号:US20190289330A1
公开(公告)日:2019-09-19
申请号:US15920052
申请日:2018-03-13
Applicant: Google LLC
Inventor: Jyrki Antero Alakuijala , Jan Wassenberg
Abstract: An encoder and/or a computer implemented encoding method includes a texture module configured to determine texture data associated with texture of an image, a noise module configured to determine noise data based on the texture data, a synthesis module configured to generate spatial spectral characteristics of the noise, and combine at least one of the noise data, the texture data, and the spatial spectral characteristics of the noise based on at least one border between adjacent textures, and an encoding module configured to compress the image using an image compression codec.
-
公开(公告)号:US20220405058A1
公开(公告)日:2022-12-22
申请号:US17821979
申请日:2022-08-24
Applicant: Google LLC
Inventor: Jan Wassenberg , Robert Obryk , Jyrki Alakuijala , Emmanuel Mogenet
Abstract: A method for generating random numbers includes initializing a pseudo-random number generator (PRNG) having a state of 2048 bits comprising inner bits and outer bits, the inner bits comprising the first 128 bits of the 2048 bits and the outer bits comprising the remaining bits of the 2048 bits. The method also includes retrieving AES round keys from a key source, and for a threshold number of times, executing a round function using the AES round keys by XOR'ing odd-numbered branches of a Feistel network having 16 branches of 128 bits with a function of corresponding even-numbered neighbor branches of the Feistel network, and shuffling each branch of 128 bits into a prescribed order. The method also includes executing an XOR of the inner bits of the permuted state with the inner bits of a previous state.
-
公开(公告)号:US11234022B2
公开(公告)日:2022-01-25
申请号:US16907545
申请日:2020-06-22
Applicant: GOOGLE LLC
Inventor: Jan Wassenberg , Jyrki Alakuijala , Sami Boukortt
IPC: H04N19/86 , H04N19/124 , H04N19/14 , H04N19/117 , H04N19/19 , H04N19/176
Abstract: A method includes obtaining respective filtered pixels for pixels of a reconstructed image; and obtaining an edge-preserved image using the respective filtered pixels. Obtaining the respective filtered pixels includes, for each pixel of the reconstructed image, obtaining a respective filtered pixel by selecting a pixel patch including the pixel and first neighboring pixels of the pixel that are at relative neighboring locations with respect to the pixel; calculating respective weights for the first neighboring pixels; and filtering the pixel using the respective weights of the first neighboring pixels and the neighboring pixels to obtain the respective filtered pixel. Calculating the respective weights includes, for each neighboring pixel of the first neighboring pixels, forming a neighboring patch including the neighboring pixel and second neighboring pixels, and calculating a neighboring patch distance between the pixel patch and the neighboring pixel; and calculating a respective weight using the neighboring patch distance.
-
公开(公告)号:US20200322642A1
公开(公告)日:2020-10-08
申请号:US16907545
申请日:2020-06-22
Applicant: GOOGLE LLC
Inventor: Jan Wassenberg , Jyrki Alakuijala , Sami Boukortt
IPC: H04N19/86 , H04N19/124 , H04N19/14 , H04N19/117 , H04N19/176
Abstract: A method includes obtaining respective filtered pixels for pixels of a reconstructed image; and obtaining an edge-preserved image using the respective filtered pixels. Obtaining the respective filtered pixels includes, for each pixel of the reconstructed image, obtaining a respective filtered pixel by selecting a pixel patch including the pixel and first neighboring pixels of the pixel that are at relative neighboring locations with respect to the pixel; calculating respective weights for the first neighboring pixels; and filtering the pixel using the respective weights of the first neighboring pixels and the neighboring pixels to obtain the respective filtered pixel. Calculating the respective weights includes, for each neighboring pixel of the first neighboring pixels, forming a neighboring patch including the neighboring pixel and second neighboring pixels, and calculating a neighboring patch distance between the pixel patch and the neighboring pixel; and calculating a respective weight using the neighboring patch distance.
-
公开(公告)号:US10708626B2
公开(公告)日:2020-07-07
申请号:US16299275
申请日:2019-03-12
Applicant: GOOGLE LLC
Inventor: Jan Wassenberg , Jyrki Alakuijala , Sami Boukortt
IPC: H04N19/86 , H04N19/124 , H04N19/14 , H04N19/117 , H04N19/176
Abstract: A method for decoding an image block includes receiving a quantized transform block; generating a decoded block from the quantized transform block; applying an edge-preserving filter to the decoded block, to obtain an edge-filtered decoded block; obtaining a transformed edge-preserved block using a transform type and quantization data to the edge-filtered decoded block; clamping a value of the transformed edge-preserved block to a corresponding value of the quantized transform block to obtain a smoothed transform block; and inverse transforming the smoothed transform block to obtain an edge-preserved smoothed block. The applying an edge-preserving filter to the decoded block includes determining respective patch-based distances between a pixel of the decoded block and neighboring pixels; determining respective weights corresponding to the respective patch-based distances; and filtering the pixel using the respective weights and the neighboring pixels.
-
公开(公告)号:US20200076579A1
公开(公告)日:2020-03-05
申请号:US16679868
申请日:2019-11-11
Applicant: GOOGLE LLC
Inventor: Jyrki Antero Alakuijala , Jan Wassenberg
IPC: H04L9/06
Abstract: Systems and methods generate reasonably secure hash values at relatively few CPU cycles per byte. An example method includes, for each of a plurality of packets, injecting the packet into an internal state that represents an internal hash sum, mixing the internal state using multiplication, and shuffling the result of the multiplication so that bytes with highest quality are moved to locations that will propagate most widely in a next multiplication operation. Each of the plurality of packets include data from an input to be hashed. In some implementation, a last packet for the input is padded. The method may also include further mixing the internal state using multiplication after processing the plurality of packets and providing, to a requesting process, a portion of the final internal state as a hash of the input.
-
-
-
-
-
-
-
-
-