Patents by Inventor Robert Obryk

Robert Obryk has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Publication number: 20240276018
    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.
    Type: Application
    Filed: April 23, 2024
    Publication date: August 15, 2024
    Inventors: Jyrki Alakuijala, Robert Obryk, Evgenii Kliuchnikov, Zoltan Szabadka, Jan Wassenberg, Minttu Alakuijala, Lode Vandevenne
  • Patent number: 11968406
    Abstract: An image encoder includes a processor and a memory. The memory includes instructions configured to cause the processor to perform operations. In one example implementation, the operations may include determining whether a dictionary item is available for replacing a block of an image being encoded, the determining based on a hierarchical lookup mechanism, and encoding the image along with reference information of the dictionary item in response to determining that the dictionary item is available. In one more example implementation, the operations may include performing principal component analysis (PCA) on a block to generate a corresponding projected block, the block being associated with a group of images, comparing the projected block with a corresponding threshold, descending the block recursively based on the threshold until a condition is satisfied, and identifying a left over block as a cluster upon satisfying of the condition.
    Type: Grant
    Filed: February 8, 2021
    Date of Patent: April 23, 2024
    Assignee: Google LLC
    Inventors: Krzysztof Potempa, Jyrki Alakuijala, Robert Obryk
  • Patent number: 11755287
    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.
    Type: Grant
    Filed: August 24, 2022
    Date of Patent: September 12, 2023
    Assignee: Google LLC
    Inventors: Jan Wassenberg, Robert Obryk, Jyrki Alakuijala, Emmanuel Mogenet
  • Patent number: 11734568
    Abstract: The present disclosure provides systems and methods for modification (e.g., pruning, compression, quantization, etc.) of artificial neural networks based on estimations of the utility of network connections (also known as “edges”). In particular, the present disclosure provides novel techniques for estimating the utility of one or more edges of a neural network in a fashion that requires far less expenditure of resources than calculation of the actual utility. Based on these estimated edge utilities, a computing system can make intelligent decisions regarding network pruning, network quantization, or other modifications to a neural network. In particular, these modifications can reduce resource requirements associated with the neural network. By making these decisions with knowledge of and based on the utility of various edges, this reduction in resource requirements can be achieved with only a minimal, if any, degradation of network performance (e.g., prediction accuracy).
    Type: Grant
    Filed: February 13, 2019
    Date of Patent: August 22, 2023
    Assignee: GOOGLE LLC
    Inventors: Jyrki Alakuijala, Ruud van Asseldonk, Robert Obryk, Krzysztof Potempa
  • Publication number: 20230016253
    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.
    Type: Application
    Filed: September 29, 2022
    Publication date: January 19, 2023
    Inventors: Jyrki Alakuijala, Robert Obryk, Evgenii Kliuchnikov, Zoltan Szabadka, Jan Wassenberg, Minttu Alakuijala, Lode Vandevenne
  • Publication number: 20220405058
    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.
    Type: Application
    Filed: August 24, 2022
    Publication date: December 22, 2022
    Applicant: Google LLC
    Inventors: Jan Wassenberg, Robert Obryk, Jyrki Alakuijala, Emmanuel Mogenet
  • Patent number: 11531932
    Abstract: The present disclosure provides systems and methods for compressing and/or distributing machine learning models. In one example, a computer-implemented method is provided to compress machine-learned models, which includes obtaining, by one or more computing devices, a machine-learned model. The method includes selecting, by the one or more computing devices, a weight to be quantized and quantizing, by the one or more computing devices, the weight. The method includes propagating, by the one or more computing devices, at least a part of a quantization error to one or more non-quantized weights and quantizing, by the one or more computing devices, one or more of the non-quantized weights. The method includes providing, by the one or more computing devices, a quantized machine-learned model.
    Type: Grant
    Filed: July 6, 2017
    Date of Patent: December 20, 2022
    Assignee: GOOGLE LLC
    Inventors: Jyrki Alakuijala, Robert Obryk
  • Patent number: 11463733
    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.
    Type: Grant
    Filed: February 15, 2019
    Date of Patent: October 4, 2022
    Assignee: GOOGLE LLC
    Inventors: Jyrki Alakuijala, Robert Obryk, Evgenii Kliuchnikov, Zoltan Szabadka, Jan Wassenberg, Minttu Alakuijala, Lode Vandevenne
  • Patent number: 11449311
    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.
    Type: Grant
    Filed: November 7, 2017
    Date of Patent: September 20, 2022
    Assignee: Google LLC
    Inventors: Jan Wassenberg, Robert Obryk, Jyrki Alakuijala, Emmanuel Mogenet
  • Patent number: 11425281
    Abstract: Techniques of color image processing involve performing a transformation for each color channel that mixes intensity values from other channels to produce a new intensity value for that channel. The new intensity values, representing the effect of overlapped response spectra of the S, M, and L cones, then provide values of the sensitivities of the photoreceptors of each of the cones. These values of the sensitivities form the basis of more accurate color image processing. For example, compression ratios of gamma-compressed color images may be increased when more the sensitivities are more accurate.
    Type: Grant
    Filed: September 7, 2016
    Date of Patent: August 23, 2022
    Inventors: Robert Obryk, Jyrki Antero Alakuijala
  • Publication number: 20210195193
    Abstract: An image encoder includes a processor and a memory. The memory includes instructions configured to cause the processor to perform operations. In one example implementation, the operations may include determining whether a dictionary item is available for replacing a block of an image being encoded, the determining based on a hierarchical lookup mechanism, and encoding the image along with reference information of the dictionary item in response to determining that the dictionary item is available. In one more example implementation, the operations may include performing principal component analysis (PCA) on a block to generate a corresponding projected block, the block being associated with a group of images, comparing the projected block with a corresponding threshold, descending the block recursively based on the threshold until a condition is satisfied, and identifying a left over block as a cluster upon satisfying of the condition.
    Type: Application
    Filed: February 8, 2021
    Publication date: June 24, 2021
    Inventors: Krzysztof Potempa, Jyrki Alakuijala, Robert Obryk
  • Publication number: 20210084339
    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.
    Type: Application
    Filed: February 15, 2019
    Publication date: March 18, 2021
    Inventors: Jyrki Alakuijala, Robert Obryk, Evgenii Kliuchnikov, Zoltan Szabadka, Jan Wassenberg, Minttu Alakuijala, Lode Vandevenne
  • Patent number: 10931948
    Abstract: An image encoder includes a processor and a memory. The memory includes instructions configured to cause the processor to perform operations. In one example implementation, the operations may include determining whether a dictionary item is available for replacing a block of an image being encoded, the determining based on a hierarchical lookup mechanism, and encoding the image along with reference information of the dictionary item in response to determining that the dictionary item is available. In one more example implementation, the operations may include performing principal component analysis (PCA) on a block to generate a corresponding projected block, the block being associated with a group of images, comparing the projected block with a corresponding threshold, descending the block recursively based on the threshold until a condition is satisfied, and identifying a left over block as a cluster upon satisfying of the condition.
    Type: Grant
    Filed: May 21, 2018
    Date of Patent: February 23, 2021
    Assignee: Google LLC
    Inventors: Krzysztof Potempa, Jyrki Alakuijala, Robert Obryk
  • Publication number: 20210027195
    Abstract: The present disclosure provides systems and methods for compressing and/or distributing machine learning models. In one example, a computer-implemented method is provided to compress machine-learned models, which includes obtaining, by one or more computing devices, a machine-learned model. The method includes selecting, by the one or more computing devices, a weight to be quantized and quantizing, by the one or more computing devices, the weight. The method includes propagating, by the one or more computing devices, at least a part of a quantization error to one or more non-quantized weights and quantizing, by the one or more computing devices, one or more of the non-quantized weights. The method includes providing, by the one or more computing devices, a quantized machine-learned model.
    Type: Application
    Filed: July 6, 2017
    Publication date: January 28, 2021
    Applicant: Google LLC
    Inventors: Jyrki ALAKUIJALA, Robert OBRYK
  • Patent number: 10542255
    Abstract: Systems and methods are disclosed for coding images. For example, methods may include: receiving an encoded bitstream that was generated at least in part by applying a sharpening filter to an input image to obtain a sharpened image and applying a blockwise encoder to the sharpened image; decoding, using a blockwise decoder, data from an encoded bitstream to obtain a plurality of blocks of image data; combining the plurality of blocks of image data to form a blocked image; and applying a blurring filter, which is matched to the sharpening filter, to the blocked image to obtain an output image.
    Type: Grant
    Filed: September 28, 2017
    Date of Patent: January 21, 2020
    Assignee: GOOGLE LLC
    Inventors: Jyrki Alakuijala, Robert Obryk
  • Patent number: 10515092
    Abstract: This technology relates to encoding data. For example, a sequence of one or more structured records as input data, at least one of the structured records including one or more field tags and associated field data. The input data may be parsed into data buffers, each data buffer corresponding to a field tag in the one or more field tags, wherein each data buffer includes the associated field data of the corresponding field tag. A control sequence specifying a sequence of the one or more fields tags may be encoded into a transition record. A state machine comprising nodes and transitions may be generated, with each node corresponding to occurrences of the one or more field tags and each transition corresponding to successive pairs of the one or more field tags. The data buffers, a representation of the state machine, and the encoded control sequence may be output.
    Type: Grant
    Filed: July 21, 2017
    Date of Patent: December 24, 2019
    Assignee: Google LLC
    Inventors: Marcin Kowalczyk, Robert Obryk, Jyrki Alakuijala, Alkis Evlogimenos, Jan Wassenberg, Tomas Dzetkulic
  • Publication number: 20190356916
    Abstract: An image encoder includes a processor and a memory. The memory includes instructions configured to cause the processor to perform operations. In one example implementation, the operations may include determining whether a dictionary item is available for replacing a block of an image being encoded, the determining based on a hierarchical lookup mechanism, and encoding the image along with reference information of the dictionary item in response to determining that the dictionary item is available. In one more example implementation, the operations may include performing principal component analysis (PCA) on a block to generate a corresponding projected block, the block being associated with a group of images, comparing the projected block with a corresponding threshold, descending the block recursively based on the threshold until a condition is satisfied, and identifying a left over block as a cluster upon satisfying of the condition.
    Type: Application
    Filed: May 21, 2018
    Publication date: November 21, 2019
    Inventors: Krzysztof Potempa, Jyrki Alakuijala, Robert Obryk
  • Publication number: 20190251444
    Abstract: The present disclosure provides systems and methods for modification (e.g., pruning, compression, quantization, etc.) of artificial neural networks based on estimations of the utility of network connections (also known as “edges”). In particular, the present disclosure provides novel techniques for estimating the utility of one or more edges of a neural network in a fashion that requires far less expenditure of resources than calculation of the actual utility. Based on these estimated edge utilities, a computing system can make intelligent decisions regarding network pruning, network quantization, or other modifications to a neural network. In particular, these modifications can reduce resource requirements associated with the neural network. By making these decisions with knowledge of and based on the utility of various edges, this reduction in resource requirements can be achieved with only a minimal, if any, degradation of network performance (e.g., prediction accuracy).
    Type: Application
    Filed: February 13, 2019
    Publication date: August 15, 2019
    Inventors: Jyrki Alakuijala, Ruud van Asseldonk, Robert Obryk, Krzysztof Potempa
  • Publication number: 20190098302
    Abstract: Systems and methods are disclosed for coding images. For example, methods may include: receiving an encoded bitstream that was generated at least in part by applying a sharpening filter to an input image to obtain a sharpened image and applying a blockwise encoder to the sharpened image; decoding, using a blockwise decoder, data from an encoded bitstream to obtain a plurality of blocks of image data; combining the plurality of blocks of image data to form a blocked image; and applying a blurring filter, which is matched to the sharpening filter, to the blocked image to obtain an output image.
    Type: Application
    Filed: September 28, 2017
    Publication date: March 28, 2019
    Inventors: Jyrki Alakuijala, Robert Obryk
  • Publication number: 20190026350
    Abstract: This technology relates to encoding data. For example, a sequence of one or more structured records as input data, at least one of the structured records including one or more field tags and associated field data. The input data may be parsed into data buffers, each data buffer corresponding to a field tag in the one or more field tags, wherein each data buffer includes the associated field data of the corresponding field tag. A control sequence specifying a sequence of the one or more fields tags may be encoded into a transition record. A state machine comprising nodes and transitions may be generated, with each node corresponding to occurrences of the one or more field tags and each transition corresponding to successive pairs of the one or more field tags. The data buffers, a representation of the state machine, and the encoded control sequence may be output.
    Type: Application
    Filed: July 21, 2017
    Publication date: January 24, 2019
    Inventors: Marcin Kowalczyk, Robert Obryk, Jyrki Alakuijala, Alkis Evlogimenos, Jan Wassenberg, Tomas Dzetkulic