US 11,720,998 B2
Artificial intelligence (AI) encoding apparatus and operating method thereof and AI decoding apparatus and operating method thereof
Quockhanh Dinh, Suwon-si (KR); Kwangpyo Choi, Suwon-si (KR); Yongsup Park, Suwon-si (KR); and Jaeyeon Park, Suwon-si (KR)
Assigned to SAMSUNG ELECTRONICS CO., LTD., Suwon-si (KR)
Filed by SAMSUNG ELECTRONICS CO., LTD., Suwon-si (KR)
Filed on Nov. 6, 2020, as Appl. No. 17/91,889.
Claims priority of application No. 10-2019-0142996 (KR), filed on Nov. 8, 2019.
Prior Publication US 2021/0142445 A1, May 13, 2021
Int. Cl. G06T 3/40 (2006.01); G06N 5/04 (2023.01); G06N 3/08 (2023.01); G06N 3/045 (2023.01)
CPC G06T 3/4053 (2013.01) [G06N 3/045 (2023.01); G06N 3/08 (2013.01); G06N 5/04 (2013.01)] 14 Claims
OG exemplary drawing
 
1. An artificial intelligence (AI) decoding apparatus comprising:
a memory storing one or more instructions; and
a processor configured to execute the one or more instructions stored in the memory to:
obtain AI data related to AI downscaling an original image to a first image, and image data corresponding to an encoding result on the first image, the AI data comprising an index indicating neural network (NN) setting information for an AI upscaling,
obtain a second image by decoding the obtained image data,
select a first NN setting information from a plurality of first NN setting information based on the AI data, the first NN setting information being for performing the AI upscaling on the obtained second image;
obtain a third image that is upscaled from the second image, by performing an operation between the second image and first parameters of the filter kernels comprised in an upscaling NN set with the selected first NN setting information,
wherein each of the first parameters is of a type integer,
wherein the first image is obtained based on a downscaling NN set with a selected second NN setting information from among a plurality of second NN setting information for the AI downscaling,
wherein the plurality of first NN setting information and the plurality of second NN setting information are obtained through joint training of the downscaling NN and the upscaling NN, and
wherein the first parameters are determined as values associated with a second parameters of filter kernels comprised in the downscaling NN.
 
2. An artificial intelligence (AI) decoding apparatus comprising:
a memory storing one or more instructions; and
a processor configured to execute the one or more instructions stored in the memory to:
obtain image data corresponding to a first image, wherein the first image is AI-downscaled from an original image by an AI encoding apparatus by using a first deep neural network (DNN),
reconstruct a second image corresponding to the first image, based on the image data, and
obtain a third image, wherein the third image is AI-upscaled from the second image, by performing an operation between the second image and first parameters of filter kernels comprised in a second DNN by using the second DNN corresponding to the first DNN
wherein each of the first parameters is a type integer,
wherein the first parameters are determined as values associated with second parameters of filter kernels comprised in the first DNN,
wherein the processor is further configured to execute the one or more instructions to:
generate a first feature map by performing a first convolution operation between the second image and parameters of a first filter kernel, wherein a first layer among a plurality of layers comprises the first filter kernel, and the second DNN comprises the plurality of layers,
obtain first result values by applying a first activation function to the first feature map,
convert the first result values into first integer values included in a first pre-set range to obtain converted first integer values, and
input the converted first integer values to a second layer, wherein the second layer follows the first layer among the plurality of layers, and
wherein each of the parameters of the first filter kernel is of the type integer.
 
7. An artificial intelligence (AI) encoding apparatus comprising:
a memory storing one or more instructions; and
a processor configured to execute the one or more instructions stored in the memory to:
select a second neural network (NN) setting information from a plurality of second NN setting information;
obtain a first image that is downscaled from an original image by performing an operation between the original image and second parameters of filter kernels comprised in a downscaling NN set with the second NN setting information;
obtain image data by encoding the obtained first image; and
provide the image data, and AI data related to AI downscaling to an AI decoding apparatus, the AI data comprising an index indicating a first NN setting information for an AI upscaling being used to select the first NN setting information from a plurality of first NN setting information,
wherein each of the first parameters is of a type integer,
wherein the plurality of first NN setting information and the plurality of second NN setting information are obtained through joint training of the downscaling NN and the upscaling NN, and
wherein the second parameters are determined as values associated with a first parameters of filter kernels comprised in the upscaling NN.
 
9. An artificial intelligence (AI) encoding apparatus comprising:
a memory storing one or more instructions; and
a processor configured to execute the one or more instructions stored in the memory to:
obtain a first image, wherein the first image is AI-downscaled from an original image, by performing an operation between the original image and first parameters of filter kernels comprised in a first deep neural network (DNN) by using the first DNN; and
encode the first image,
wherein each of the first parameters is of a type integer,
wherein the first DNN corresponds to a second DNN configured to AI-upscale an image, and the first parameters are determined as values associated with a second parameters of filter kernels comprised in the second DNN, and
wherein the processor is further configured to execute the one or more instructions to:
generate a first feature map by performing a first convolution operation between the original image and parameters of a first filter kernel, wherein the first filter kernel is included in a first layer among a plurality of layers, wherein each of the parameters of the first filter kernel is of the type integer, and wherein the first DNN comprises the plurality of layers,
obtain first result values by applying a first activation function to the first feature map,
convert the first result values into first integer values included in a pre-set range to obtain converted first integer values, and
input the converted first integer values to a second layer, wherein the second layer follows the first layer among the plurality of layers.