CN114746902A - 用于纹理映射应用的块压缩纹理的超分辨率 - Google Patents
用于纹理映射应用的块压缩纹理的超分辨率 Download PDFInfo
- Publication number
- CN114746902A CN114746902A CN202180006808.9A CN202180006808A CN114746902A CN 114746902 A CN114746902 A CN 114746902A CN 202180006808 A CN202180006808 A CN 202180006808A CN 114746902 A CN114746902 A CN 114746902A
- Authority
- CN
- China
- Prior art keywords
- texture
- block
- format
- encoded
- machine learning
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000013507 mapping Methods 0.000 title description 11
- 238000010801 machine learning Methods 0.000 claims abstract description 171
- 238000000034 method Methods 0.000 claims abstract description 54
- 230000006835 compression Effects 0.000 claims abstract description 30
- 238000007906 compression Methods 0.000 claims abstract description 30
- 238000012549 training Methods 0.000 claims description 34
- 238000012545 processing Methods 0.000 claims description 26
- 238000013528 artificial neural network Methods 0.000 claims description 13
- 230000008569 process Effects 0.000 claims description 8
- 230000011664 signaling Effects 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 22
- 230000006870 function Effects 0.000 description 21
- 238000009877 rendering Methods 0.000 description 21
- 230000004913 activation Effects 0.000 description 16
- 238000004891 communication Methods 0.000 description 10
- 238000003860 storage Methods 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 6
- 238000005192 partition Methods 0.000 description 6
- 230000003190 augmentative effect Effects 0.000 description 4
- 210000004027 cell Anatomy 0.000 description 4
- 239000003086 colorant Substances 0.000 description 4
- 238000007667 floating Methods 0.000 description 4
- 238000003062 neural network model Methods 0.000 description 4
- 238000004590 computer program Methods 0.000 description 3
- 238000007620 mathematical function Methods 0.000 description 3
- 238000013341 scale-up Methods 0.000 description 3
- 230000003068 static effect Effects 0.000 description 3
- 238000013473 artificial intelligence Methods 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 210000002569 neuron Anatomy 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 101000822695 Clostridium perfringens (strain 13 / Type A) Small, acid-soluble spore protein C1 Proteins 0.000 description 1
- 101000655262 Clostridium perfringens (strain 13 / Type A) Small, acid-soluble spore protein C2 Proteins 0.000 description 1
- 101000655256 Paraclostridium bifermentans Small, acid-soluble spore protein alpha Proteins 0.000 description 1
- 101000655264 Paraclostridium bifermentans Small, acid-soluble spore protein beta Proteins 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000013139 quantization Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
- G06T3/4053—Scaling of whole images or parts thereof, e.g. expanding or contracting based on super-resolution, i.e. the output image resolution being higher than the sensor resolution
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/2163—Partitioning the feature space
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/285—Selection of pattern recognition techniques, e.g. of classifiers in a multi-classifier system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/048—Activation functions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/06—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
- G06N3/063—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/002—Image coding using neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computing Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Health & Medical Sciences (AREA)
- Mathematical Physics (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Molecular Biology (AREA)
- Multimedia (AREA)
- Medical Informatics (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Databases & Information Systems (AREA)
- Neurology (AREA)
- Image Generation (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
提供了一种用于块压缩纹理的超分辨率的方法。该方法包括接收具有第一块尺寸的第一纹理块。基于对接收到的第一纹理块应用第一块压缩(BC)方案,在经压缩的域中生成编码纹理值。另外,对生成的编码纹理值应用第一机器学习模型以在经压缩的域中生成超分辨率编码纹理值。处理生成的超分辨率编码纹理值以生成具有第二块尺寸的第二纹理块。第二块尺寸大于第一块尺寸。
Description
相关申请的交叉引用/通过引用并入
本申请要求于2020年4月2日提交的美国临时专利申请序列No.63/003,953的优先权,其全部内容通过引用并入本文。
技术领域
本公开的各种实施例涉及三维(3D)渲染***、图像超分辨率和机器学习。更具体而言,本公开的各种实施例涉及执行用于纹理映射应用的块压缩纹理的超分辨率的方法和***。
背景技术
3D渲染***和计算机图形学的进步导致采用用于各种3D渲染应用(诸如游戏、增强现实、虚拟现实和2D/3D动画)的高分辨率纹理。传统上,开发人员或工作室(例如,游戏工作室)希望以高保真度渲染计算机图形(例如,在游戏中),但希望避免发布具有高分辨率的纹理库。这样做可以保持内容(例如,游戏文件)的文件尺寸尽可能小。如果没有纹理压缩,那么可能难以合理地减小文件尺寸。例如,现有方法将纹理图像压缩成经编码的位流。经编码的位流可以被解码为低分辨率图像。低分辨率图像可以用已知方法(诸如双线性或双三次插值)按比例放大以获得高分辨率图像,高分辨率图像可以被重新编码成另一位流并发送到图形处理单元以进行渲染。由于高保真度要求,现有的插值(例如,双线性、双三次)方法可能不适用或不适合,因为它们会产生模糊的图像。而且,与现有方法相关联的计算成本更高,这使得它们对于实时或接近实时渲染应用的用处不大。
通过将所描述的***与本公开的一些方面进行比较,常规和传统方法的限制和缺点对于本领域技术人员将变得显而易见,如本申请的其余部分和参考附图阐述的。
发明内容
如在权利要求中更完整阐述的,基本如至少一个图中所示和/或结合至少一个图所描述的,提供了执行用于纹理映射应用的块压缩纹理的超分辨率的方法和***。
可以通过阅读以下对本公开的详细描述以及附图来理解本公开的这些和其它特征以及优点,在附图中,相同的参考标记始终表示相同的部分。
附图说明
图1是图示根据本公开的实施例的用于纹理映射应用的块压缩纹理的超分辨率的示例性网络环境的框图。
图2是图示根据本公开的实施例的用于纹理映射应用的块压缩纹理的超分辨率的示例性***的框图。
图3是图示根据本公开的实施例的作为用于块压缩纹理的超分辨率的编解码器芯片组的***的示例性实施方式的框图。
图4A和图4B共同图示了根据本公开的实施例的用于纹理映射应用的块压缩纹理的超分辨率的示例性操作。
图5是图示根据本公开的实施例的用于块压缩纹理的超分辨率的机器学习模型的示例性体系架构的图。
图6是图示根据本公开的实施例的训练用于块压缩纹理的超分辨率的机器学习模型的示例性操作的图。
图7是图示根据本公开的实施例的用于训练第一机器学习模型的示例性预训练的机器学习模型的示例性体系架构的图。
图8A和图8B共同图示了根据本公开的实施例的用于块压缩纹理的超分辨率的示例性方法的流程图。
具体实施方式
可以在所公开的用于纹理映射应用的块压缩纹理的超分辨率的***和方法中找到以下描述的实施方式。本公开的示例性方面提供了一种可以被配置为接收纹理图像(例如,与游戏应用相关联的纹理图像)的***。该***可以将接收到的纹理图像划分为多个纹理块,每个纹理块可以具有第一块尺寸(例如,4×4纹素)。基于对第一纹理块应用第一块压缩(BC)方案,***可以在经压缩的域中生成编码纹理值。该***可以对生成的编码纹理值应用第一机器学习(ML)模型,以在经压缩的域中生成超分辨率编码纹理值。***可以处理生成的超分辨率编码纹理值以生成具有第二块尺寸(例如,8×8纹素)的第二纹理块。第二块尺寸可以大于第一块尺寸。
传统上,开发人员或工作室(例如,游戏工作室)希望以高保真度渲染计算机图形(例如,在游戏中),但希望避免发布具有非常高分辨率的纹理库以保持文件尺寸尽可能小(存储和传输成本)。本公开允许内容(例如,游戏内容或扩展现实(XR)内容,或动画内容)以较低分辨率纹理被递送,但是以较高分辨率纹理实时或接近实时地被渲染。本公开不要求位流的解码和重新编码或修改软件开发环境(诸如游戏引擎)。代替地,它直接利用经压缩的域中的机器学习以在运行时实现超分辨率。
本公开解决了开发人员和工作室未满足的需求。例如,对于游戏工作室,此类要求包括在运行时以高保真度和高速(实时或接近实时渲染)为游戏提供纹理超分辨率。由于高保真度要求,现有的基于插值(例如,双线性、双三次)的方法可能不适用,因为它们会产生模糊的图像。由于经压缩的域中复杂的映射函数(即,机器学习模型),本公开不仅产生比那些现有方法更好的图像质量。已知的现有方法可以采用经编码的位流,将其解码成图像,并用已知算法(诸如双线性或双三次插值)按比例放大较低分辨率的图像。此后,高分辨率图像可以被重新编码成另一位流并被发送到图形处理单元(GPU)进行渲染。然而,这个过程可能计算成本昂贵,并且所使用的插值方法可能导致图像质量不令人满意,诸如模糊的边缘边界。
图1是图示根据本公开的实施例的用于纹理映射应用的块压缩纹理的超分辨率的示例性网络环境的框图。参考图1,示出了网络环境100。网络环境100可以包括***102和显示设备106。还示出了***102上的多个机器学习(ML)模型104。多个ML模型104可以包括第一ML模型104A、第二ML模型104B...和第N个ML模型104N。还示出了纹理图像108和纹理图像108的第一纹理块110。
***102可以包括合适的逻辑、电路***和接口,这些逻辑、电路***和接口可以被配置为从输入的低分辨率纹理(例如,纹理图像108)生成超分辨率纹理。生成的超分辨率纹理可以被用在图形渲染管线的一个或多个操作中。作为示例而非限制,此类操作可以是***102的图形处理单元(GPU)上的着色器操作或着色器管线的一部分。
对于图像超分辨率,***102可以在纹理图像108的第一纹理块110(具有第一块尺寸)上应用第一块压缩(BC)方案以生成编码纹理值(在经压缩的域中)。***102可以对生成的编码纹理值应用第一ML模型104A以在经压缩的域中生成超分辨率编码纹理值。基于对超分辨率编码纹理值的处理,***102还可以生成具有第二块尺寸(其可以大于第一块尺寸)的第二纹理块112。***102的示例可以包括但不限于游戏设备(诸如游戏控制台、可穿戴耳机(诸如扩展现实(XR)耳机)或车载游戏***)、个人计算机、服务器(诸如游戏服务器或基于云的游戏流传输服务器(其提供游戏即服务))、游戏引擎、GPU(或所连接的GPU的集群)、个人计算机、智能电话、移动计算机、集成GPU的游戏监视器、大型机、计算机工作站和/或能够渲染图形的任何计算设备。
多个ML模型104中的每个ML模型可以是可以被训练为内插信息(或经压缩的域中的附加编码纹理值)的回归模型,这可以是将具有第一块尺寸(例如,4×4纹素)的纹理块(诸如第一纹理块110)放大或上采样到具有第二块尺寸(例如,8×8纹素)的纹理块(诸如第二纹理块112)所需的。在实施例中,可以单独训练多个ML模型104中的每个ML模型以处置与BC压缩方案的特定模式相关联的编码纹理值。
每个ML模型(例如,第一ML模型104A)可以由其超参数(例如,权重的数量、成本函数、输入尺寸、层数等)定义。第一ML模型104A的超参数可以在相应ML模型的每个训练周期之前或之后进行调节。在训练的几个轮次期间,可以更新诸如相应ML模型的权重之类的参数,直到达到用于第一ML模型104A的成本函数的全局最小值为止。在对训练数据集的输入特征训练若干轮次之后,第一ML模型104A可以被确定为已训练。
第一ML模型104A可以包括可以被实现为例如在***上可执行的应用的软件组件的电子数据。第一ML模型104A可以依赖库、外部脚本或其它逻辑/指令以供诸如***102之类的处理设备执行。第一ML模型104A可以包括代码和例程,其被配置为使诸如***102之类的计算***能够执行一个或多个操作,诸如生成超分辨率编码纹理值。附加地或可替代地,第一ML模型104A可以使用硬件来实现,包括但不限于处理器、微处理器(例如,用于执行一个或多个操作或控制一个或多个操作的性能)、现场可编程门阵列(FPGA)、协处理器(诸如人工智能(AI)加速器)或专用集成电路(ASIC)。可替代地,在一些实施例中,第一ML模型104A可以使用硬件和软件两者的组合来实现。
在一些实施例中,第一ML模型104A可以是基于神经网络的模型。神经网络模型可以是在多个层中被布置为节点的人工神经元的计算网络或***。神经网络模型的多个层可以包括输入层、一个或多个隐藏层和输出层。多个层中的每一层可以包括一个或多个节点或人工神经元(例如,由圆圈表示)。输入层中所有节点的输出可以耦合到(一个或多个)隐藏层的至少一个节点。类似地,每个隐藏层的输入可以耦合到神经网络的其它层中的至少一个节点的输出。每个隐藏层的输出可以耦合到神经网络的其它层中的至少一个节点的输入。最后一层中的(一个或多个)节点可以从至少一个隐藏层接收输入以输出结果。可以根据神经网络的超参数(和拓扑信息)确定层数和每层中的节点数。此类超参数可以在训练之前、训练时或在训练数据集上训练神经网络之后设置。
神经网络模型的每个节点可以与具有参数集的数学函数(例如,sigmoid函数或整流线性单元)对应,这些参数在网络的训练期间是可调的。该参数集可以包括例如权重参数、正则化参数等。每个节点可以使用数学函数来基于来自神经网络的(一个或多个)其它层(例如,(一个或多个)先前层)中的节点的一个或多个输入来计算输出。神经网络的节点中的全部或一些可以与相同或不同的数学函数对应。例如在图5中描述了作为基于神经网络的模型的第一ML模型104A的示例性实施方式。
在神经网络模型的训练中,神经网络的每个节点的一个或多个参数可以基于对于给定输入(来自训练数据集)的最后一层的输出是否与基于用于神经网络的损失函数的正确结果匹配而更新。可以针对相同或不同的输入重复以上过程,直到可以达到损失函数的最小值为止,并且可以最小化训练误差。用于训练的几种方法在本领域中是已知的,例如梯度下降、随机梯度下降、批量梯度下降、梯度提升、元启发式等。例如,在图6进一步描述第一ML模型104A的训练的细节。其它ML模型(诸如第二ML模型104B和第N个ML模型104N)在功能上(在参数方面和拓扑上)可以与第一ML模型104A(例如,在图1中所描述的)相同。为简洁起见,本公开省略了对多个ML模型104中的其它ML模型的描述。
显示设备106可以包括合适的逻辑、电路***和接口,这些逻辑、电路***和接口可以被配置为显示包括超分辨率纹理(由***102生成)的三维或二维图形。显示设备106可以通过几种已知技术来实现,诸如但不限于液晶显示器(LCD)显示器、发光二极管(LED)显示器、等离子体显示器或有机LED(OLED)显示技术或其它显示设备中的至少一种。根据实施例,显示设备106可以指电子设备、智能电话、计算机、头戴式设备(HMD)、智能眼镜设备、透视显示器、基于投影的显示器、电致变色显示器或透明显示器的显示屏。
在图1中,显示设备106被示为与***102分离。然而,本公开可以不限于此,并且在一些实施例中,显示设备106可以集成到***102中,而不脱离本公开的范围。
在操作中,***102可以接收纹理图像108。例如,可以从服务器接收或者可以从***102的存储单元本地检索纹理图像108。纹理图像108可以与图形渲染应用(诸如但不限于游戏、增强现实、虚拟现实和2D/3D动画)相关联。***102可以将接收到的纹理图像108划分为多个纹理块。多个纹理块可以包括例如第一纹理块110。多个纹理块中的每个可以具有第一块尺寸。作为示例而非限制,第一块尺寸可以是4×4纹素(也称为纹理像素或纹理元素)。在许多场景中,第一块尺寸可能不足以用于要求更高纹理分辨率的图形渲染应用。如本文所述,可能需要对每个纹理块进行重新缩放或上采样(例如,4倍)以满足图形渲染应用的要求。
***102可以从多个块压缩方案中选择第一块压缩(BC)方案。根据实施例,第一BC方案指定第一BC格式,其是几种BC格式(诸如BC1格式、BC2格式、BC3格式、BC4格式、BC5格式、BC6格式或BC7格式)之一。在一些实施例中,第一BC方案中指定的第一BC格式处于第一模式,其可以是BC6格式的十四种模式或BC7格式的八种模式中的一种。
在选择BC方案之后,***102可以对接收到的第一纹理块110应用第一BC方案。基于第一BC方案的应用,***102可以生成第一经压缩的位流。在一些实施例中,***102还可以对生成的第一经压缩的位流的代码位的第一块进行转换以在经压缩的域中生成编码纹理值。例如,在图4A中进一步提供了编码纹理值的生成的细节。
***102还可以基于确定第一经压缩的位流可以与第一BC方案中指定的第一BC格式(BC7格式)的第一模式(例如,模式1)相关联,从多个ML模型104中选择ML模型(例如,第一ML模型104A)。多个ML模型104中的每个ML模型可以与第一BC格式的对应模式相关联。***102可以对生成的编码纹理值应用所选择的第一ML模型104A以在经压缩的域中生成超分辨率编码纹理值。超分辨率编码纹理值可以包括将具有第一块尺寸(例如,4×4纹素)的第一纹理块110放大(或上采样)到具有第二块尺寸(例如,8×8纹素)的第二纹理块112可能需要的编码纹理值的集合。例如,在图4B中进一步提供了应用第一ML模型104A来生成超分辨率编码纹理值的细节。
在生成超分辨率编码纹理值之后,***102可以处理生成的超分辨率编码纹理值以生成具有第二块尺寸(例如,8×8纹素、16×16纹素等)的第二纹理块112。第二块尺寸可以比第一块尺寸大几倍(例如,4、16等)。在一些实施例中,生成的第二纹理块112可以是超分辨率纹理块,这可以意味着第二纹理块112的分辨率可以大于第一纹理块110。因此,一般而言,术语“超分辨率”可以指更高的分辨率。根据实施例,该处理可以包括将经压缩的域中的超分辨率编码纹理值转换成第二经压缩的位流。第二经压缩的位流可以包括经编码位的第二块的集合,每个经编码位的第二块在经压缩的域中表示第二纹理块112(例如,8×8纹素)的对应部分(例如,四个4×4块之一)。该处理还可以包括解码(例如,使用GPU)第二经压缩的位流以生成第二纹理块112。在一个或多个实施例中,解码可以包括以按块方式对经编码位的第二块的集合应用第一块解码方案,以便以先入先出(FIFO)阵列生成第二纹理块112的相应部分。例如,在图4B中进一步提供了处理超分辨率编码纹理值以生成第二纹理块112的细节。
图2是图示根据本公开的实施例的用于纹理映射应用的块压缩纹理的超分辨率的示例性***的框图。图2结合图1中的元素进行解释。参考图2,示出了***102的框图200。***102可以包括电路***202和存储器204。存储器204可以存储多个ML模型104。***102还可以包括图形处理单元(GPU)206和输入/输出(I/O)设备208。例如,I/O设备208可以包括显示设备106。***102还可以包括网络接口210。
电路***202可以包括适当的逻辑、电路***和接口,这些逻辑、电路***和接口可以被配置为执行与要由***102执行的不同操作相关联的程序指令。例如,操作中的一些可以包括基于对具有第一块尺寸的第一纹理块110应用第一BC方案在经压缩的域中生成编码纹理值。操作还可以包括对生成的编码纹理值应用第一ML模型104A以在经压缩的域中生成超分辨率编码纹理值。基于对超分辨率编码纹理值的处理,电路***202还可以生成具有第二块尺寸的第二纹理块112。
电路***202可以包括可以被实现为单独的处理器的一个或多个专用处理单元。在实施例中,该一个或多个专用处理单元可以被实现为共同执行一个或多个专用处理单元的功能的集成处理器或处理器的集群。电路***202可以基于本领域已知的多种处理器技术来实现。电路***202的实施方式的示例可以是基于X86的处理器、GPU、现场可编程门阵列(FPGA)、可编程逻辑器件(PLD)、专用集成电路(ASIC)、可编程ASIC(PL-ASIC)、专用集成部件(ASSP)、基于标准微处理器(MPU)或数字信号处理器(DSP)的片上***(SOC)、精简指令集计算(RISC)处理器、复杂指令集计算(CISC)处理器、微控制器、协处理器(诸如AI加速器、视觉处理单元或神经形态芯片)、中央处理单元(CPU)和/或其组合。
存储器204可以包括合适的逻辑、电路***和接口,这些逻辑、电路***和接口可以被配置为存储可由电路***202执行的程序指令。存储器204可以被配置为还存储多个ML模型104、以压缩或未压缩形式的纹理图像(诸如纹理图像108)、纹理图像108的纹理块(诸如第一纹理块110)、中间结果(诸如经压缩的域值)和超分辨率纹理块(诸如生成的第二纹理块112)。存储器204的实施方式的示例可以包括但不限于随机存取存储器(RAM)、只读存储器(ROM)、电可擦可编程只读存储器(EEPROM)、硬盘驱动器(HDD)、固态硬盘-状态驱动器(SSD)、CPU高速缓存和/或安全数字(SD)卡。
GPU 206可以包括合适的逻辑、电路***和接口,这些逻辑、电路***和接口可以被配置为执行与图形渲染、处理超分辨率编码纹理值以生成超分辨率纹理块(其可以在着色器管线中被使用)和其它辅助计算相关的操作。GPU 206的示例实施方式可以包括但不限于集成GPU、离散GPU、混合GPU或多GPU实施方式、通用GPU(GPGPU)和外部GPU。
I/O设备208可以包括合适的逻辑、电路***和接口,这些逻辑、电路***和接口可以被配置为接收来自用户的输入并且基于接收到的输入提供输出。可以包括各种输入和输出设备的I/O设备208可以被配置为与电路***202通信。例如,***102可以经由I/O设备208接收用户输入以在显示设备106上渲染与图形渲染应用(例如,游戏应用或游戏软件)相关联的3D图形。I/O设备208的示例可以包括但不限于触摸屏、显示设备、键盘、鼠标、操纵杆、麦克风和扬声器。
网络接口210可以包括合适的逻辑、电路***和接口,这些逻辑、电路***和接口可以被配置为促进***102和服务器(例如,纹理图像108存储在其上的服务器)之间经由通信网络(图2中未示出)的通信。网络接口210还可以被配置为促进***102和与图形渲染应用的用户相关联的电子设备之间的通信。网络接口210可以通过使用各种已知技术来实现以支持***102与通信网络的有线或无线通信。
网络接口210可以包括但不限于天线、射频(RF)收发器、一个或多个放大器、调谐器、一个或多个振荡器、数字信号处理器、编解码器(CODEC)芯片组、用户身份模块(SIM)卡或本地缓冲电路***。网络接口210可以被配置为经由无线通信与网络(诸如因特网、内联网或无线网络(诸如蜂窝电话网络、无线局域网(LAN)和城域网(MAN)))通信。无线通信可以被配置为使用多种通信标准、协议和技术中的一种或多种,诸如全球移动通信***(GSM)、增强型数据GSM环境(EDGE)、宽带码分多址(W-CDMA)、第5代新无线电(5G NR)、长期演进(LTE)、码分多址(CDMA)、时分多址(TDMA)、蓝牙、无线保真(Wi-Fi)(诸如IEEE 802.11a、IEEE802.11b、IEEE 802.11g或IEEE 802.11n)、因特网协议语音(VoIP)、光保真(Li-Fi)、全球微波接入互操作性(Wi-MAX)、电子邮件协议、即时消息和短消息服务(SMS)。
如图1中所描述的,由***102执行的功能或操作可以由电路***202执行。例如,在图4A和图4B中详细描述了由电路***202执行的操作。
图3是图示根据本公开的实施例的作为用于块压缩纹理的超分辨率的编解码器芯片组的***的示例性实施方式的框图。图3结合图1和图2中的元素进行解释。参考图3,示出了将***102的示例性实施方式描绘为编解码器(编码器-解码器)芯片组的框图300。***102可以包括电路***202,其可以包括输入/输出(I/O)接口302、片上存储器304、编码器306A和解码器308A。电路***202还可以包括位到值(B2V)转换器306B和值到位(V2B)转换器308B。***102的框图300还可以包括经由***总线或I/O接口302通信地耦合到电路***202的处理器310、外部存储器312和GPU 206。在一些实施例中,处理器310、外部存储器312和GPU 206可以集成到电路***202中,而不脱离本公开的范围。
I/O接口302可以包括合适的逻辑、电路***和接口,这些逻辑、电路***和接口可以被配置为管理多个I/O端口以促进经由***总线网络从其它电路***或设备(例如,外部存储器312、处理器310或GPU 206)交换通信数据。通信数据可以包括例如经编码纹理的位流、控制信号、CPU指令等。I/O端口的配置可以取决于电路***202的规格、形状因素或设计。
片上存储器304可以包括合适的逻辑、电路***和接口,这些逻辑、电路***和接口可以被配置为存储不同的操作数据(例如,纹理图像108和第一纹理块110),这些数据可以由电路***202的不同组件利用以重新缩放或放大图像块(诸如第一纹理块110)。片上存储器304可以被配置为存储的操作数据的示例可以包括但不限于编码纹理值、与BC方案相关的信息、经压缩的位流和/或多个ML模型104。片上存储器304可以被实现为具有限定的存储器规格(诸如R/W速度、存储器尺寸、制造因素等)的特定存储器。片上存储器304的示例可以包括但不限于静态随机存取存储器(SRAM)、动态存取存储器(DRAM)和静态动态RAM(SD-RAM)。
编码器306A可以包括合适的逻辑、电路***和接口,这些逻辑、电路***和接口可以被配置为通过对纹理块(例如,4×4纹素块、8×8纹素块等)应用块压缩(BC)方案来生成第一经压缩的位流。纹理块可以存储在存储器中,诸如片上存储器304或外部存储器312。编码器306A可以被优化以减少可以用于对第一纹理块110进行编码的位数以提高压缩效率和/或纹理块的压缩倍数。在一些实施例中,编码器306A可以是硬件编码器芯片,其可以基于ASIC、可编程逻辑器件(PLD)、SOC、FPGA、数字信号处理器(DSP)或其它专用电路之一来实现。在其它实施例中,编码器306A可以被实现为硬件和片上存储器304中存储的指令集(例如,基于VHDL或HDL逻辑的指令)的组合。
B2V转换器306B可以包括合适的逻辑、电路***和接口,这些逻辑、电路***和接口可以被配置为对生成的第一经压缩的位流的代码位的第一块进行转换以生成编码纹理值。转换可以包括例如代码位的独热编码。在一些实施例中,B2V转换器306B可以是硬件芯片,其可以基于ASIC、可编程逻辑器件(PLD)、SOC、FPGA、数字信号处理器(DSP)或其它专用电路之一来实现。在其它实施例中,B2V转换器306B可以被实现为硬件和片上存储器304中存储的指令集(例如,基于VHDL或HDL逻辑的指令)的组合。
解码器308A可以包括合适的逻辑、电路***和接口,这些逻辑、电路***和接口可以被配置为对与超分辨率编码纹理值(从第一ML模型104A获得的)相关联的第二经压缩的位流进行解码。解码器308A可以具有预先存储的量化表和编码表,它们可以充当解码器308A解码第二经压缩的位流的参考。在一些实施例中,解码器308A可以是硬件编码器芯片,其可以基于ASIC、可编程逻辑器件(PLD)、SOC、FPGA、数字信号处理器(DSP)或其它专用电路之一来实现。在其它实施例中,解码器308A可以被实现为硬件和片上存储器304中存储的指令集(例如,基于VHDL或HDL逻辑的指令)的组合。
V2B转换器308B可以包括合适的逻辑、电路***和接口,这些逻辑、电路***和接口可以被配置为将与超分辨率编码纹理值相关联的编码纹理值的集合转换成经编码位的第二块的集合。解码器308A可以以按块方式对经编码位的第二块的集合应用第一块解码方案,以按照先入先出(FIFO)阵列生成第二纹理块112的相应部分。在一些实施例中,V2B转换器308B可以是硬件芯片,其可以基于ASIC、可编程逻辑器件(PLD)、SOC、FPGA、数字信号处理器(DSP)或其它专用电路之一来实现。在其它实施例中,V2B转换器308B可以被实现为硬件和片上存储器304中存储的指令集(例如,基于VHDL或HDL逻辑的指令)的组合。
处理器310可以包括合适的逻辑、电路***和接口,这些逻辑、电路***和接口可以被配置为执行存储在存储器(例如,外部存储器312或片上存储器304)中的定义的指令。处理器310可以基于本领域中已知的多种处理器技术来实现。处理器310的示例可以包括但不限于图形处理单元(GPU)、用于处理器的协处理器(诸如专用图像协处理器)、专用数字信号处理器、中央处理单元(CPU)、基于x86的处理器、基于x64的处理器、精简指令集计算(RISC)处理器、专用集成电路(ASIC)处理器、复杂指令集计算(CISC)处理器。
外部存储器312可以包括合适的逻辑、电路***和接口,这些逻辑、电路***和接口可以被配置为存储纹理图像108(未压缩的未加工的或经编码的)或包括第一纹理块110的多个纹理块。外部存储器312还可以被配置为充当图像缓冲器以存储从GPU 206检索到的多个纹理块。此外,外部存储器312可以存储与顺序编码/解码方案相关联的指令,这些指令可以由电路***202选择性地应用以生成经压缩的位流。
在实施例中,外部存储器312可以是可以在外部与电路***202接口的动态随机存取存储器(DRAM)。在另一实施例中,外部存储器312可以是可以在外部与电路***202接口的静态随机存取存储器(SRAM)。外部存储器312的实施方式的另外的示例可以包括但不限于随机存取存储器(RAM)、只读存储器(ROM)、电可擦可编程只读存储器(EEPROM)、硬盘驱动器(HDD)、固态驱动器(SSD)、CPU高速缓存或安全数字(SD)卡。
图4A和图4B是共同图示根据本公开的实施例的用于块压缩纹理的超分辨率的示例性操作的图。图4A和图4B结合图1、图2和图3的元素进行解释。参考图4A和图4B,示出了包括从402到412的示例性操作的图400,其开始于402处。
在402处,可以接收纹理图像402A。根据实施例,电路***202可以被配置为接收纹理图像402A。在与图形渲染应用(诸如但不限于游戏、游戏开发引擎、XR应用和2D/3D动画)相关联的一个或多个操作(例如,纹理和着色器操作)中可能需要纹理图像402A。在实施例中,可以从纹理文件的集合中解码纹理图像402A,该纹理文件的集合可以被包括在图形渲染应用的软件包或纹理库中。
在许多情况下,纹理图像402A的纹理分辨率或纹理图像402A的个体纹理块的块尺寸可能不足以用于与图形渲染应用相关联的操作。在此类情况下,此类操作可能需要更高的纹理分辨率。可能需要对纹理图像402A或每个纹理块进行重新缩放或上采样以满足与图形渲染应用相关联的操作的要求。电路***202可以被配置为将接收到的纹理图像402A划分为多个纹理块,每个纹理块可以具有第一块尺寸,例如,4×4纹素。
在404处,可以从多个纹理块中选择第一纹理块404A。根据实施例,电路***202可以选择具有第一块尺寸的第一纹理块404A。根据实施例,电路***202可以被配置为从多个压缩(BC)方案中选择第一块BC方案。此类方案可以指定可以用于压缩纹理图像402A的多个纹理块的特定BC格式(和BC格式的模式)。
在一些实施例中,所选择的第一BC方案可以指定第一BC格式,其可以是在S3纹理压缩(其包括一组有损纹理压缩算法)中指定的几种压缩格式之一。第一BC格式的示例可以包括但不限于BC1格式、BC2格式、BC3格式、BC4格式、BC5格式、BC6格式或BC7格式。作为示例而非限制,表1中提供了BC格式的集合和每种BC格式可以处置的个体纹理块,其给出如下:
BC格式 | 由BC格式处置的纹理格式 |
BC1 | RGB+可选的1位alpha |
BC2 | RGB+4位alpha |
BC3 | RGBA |
BC4 | 灰度 |
BC5 | 2通道灰度 |
BC6 | RGB,浮点数 |
BC7 | RGB或RGBA |
表1:BC格式和纹理格式
第一BC方案的BC1格式可以使用第一纹理块404A的颜色数据的5:6:5表示(诸如5位红色、6位绿色和5位蓝色)对第一纹理块404A的三分量颜色数据进行编码。另外,BC1格式可以使用1位对第一纹理块404A的alpha数据进行编码。alpha数据可以被用于确定第一纹理块404A的每个纹素的不透明度级别。BC1格式可以允许存储16种颜色(基于颜色数据的5:6:5表示)和第一纹理块404A的16个2位颜色索引。2位颜色索引可以被用于识别第一纹理块404A的每个纹素元素的颜色。
BC2格式可以将第一纹理块404A的颜色信息(诸如红-绿-蓝(RGB)信息)编码为颜色信息的5:6:5表示(诸如5位红色、6位绿色和5位蓝色)。BC2格式可以将第一纹理块404A的alpha数据编码为纹素的4位。
BC3格式可以使用颜色信息的5:6:5表示(诸如5位红色、6位绿色、5位蓝色)对第一纹理块404A的颜色信息进行编码。BC3格式可以将第一纹理块404A的alpha数据编码在一个字节中。BC4格式可以使用8位对第一纹理块404A的单分量颜色信息(例如,灰度颜色信息)进行编码。在实施例中,BC4格式可以允许存储两种参考颜色,诸如“0”与当红色不存在时的位对应,而“1”与当红色存在于第一纹理块404A的纹素中时的位对应。BC4格式还可以允许存储第一纹理块404A的16个3位颜色索引。
BC5格式可以针对颜色信息的每种颜色使用纹素的8位来对第一纹理块404A的双分量颜色信息进行编码。在实施例中,BC5格式可以允许存储每个分量的两种参考颜色。BC5格式可以允许为第一纹理块404A的双分量颜色信息的每个分量存储16个3位颜色索引。
根据实施例,在第一BC方案中指定的第一BC格式可以处于第一模式,该第一模式可以是BC6格式的十四种模式或BC7格式的八种模式中的一种。表2中提供了BC7格式的八种不同模式(由索引i表示)的集合以及由每种模式处置的对应纹理数据和用于每种相应模式的子集的数量,其如下所示:
模式i | 数据 | 子集 |
0 | RGB | 3 |
1 | RGB | 2 |
2 | RGB | 3 |
3 | RGB | 2 |
4 | RGBA | 1 |
5 | RGBA | 1 |
6 | RGBA | 1 |
7 | RGBA | 2 |
表2:BC7模式和特点
BC6格式和BC7格式可以允许可以更改BC格式的细节的不同模式(诸如第一模式)。BC6格式和BC7格式可以指定端点(例如,2个端点)来描述用于纹理块中的纹素(或像素)的插值的颜色片段。BC6格式和BC7格式还可以指定索引,每个索引可以与用于插值的每个像素的权重对应。例如,对于4×4纹理块,BC7格式的模式7可以产生16个索引的集合,其如下所示:
11 | 10 | 10 | 01 |
10 | 01 | 11 | 01 |
01 | 10 | 11 | 01 |
00 | 11 | 01 | 00 |
表3:16个2位索引
每种模式可以具有不同的特点,诸如所支持的颜色(颜色分量和alpha通道)、每个块的子集的数量、端点阵列(例如,每个端点具有独特的P位的RGBP 4.4.4.1端点)、每个索引的位尺寸(例如,3位索引)和分区的数量(例如,16个分区)。BC6格式的每种模式(诸如十四种模式中的每一种)或BC7格式的每种模式(例如,八种模式中的每一种)都可以被用于第一纹理块404A的块压缩。可以选择BC6格式和BC7格式的不同模式以在不同因素之间进行权衡,诸如在所需精度和压缩速度之间进行权衡。BC-n格式是本领域普通技术人员众所周知的;因此,为简洁起见,本公开省略了BC-n格式的进一步细节。
在406处,可以对第一纹理块404A应用所选择的第一BC方案以生成第一经压缩的位流。根据实施例,电路***202的编码器306A可以被配置为对第一纹理块404A应用所选择的第一BC方案以生成第一经压缩的位流。可以根据所选择的第一BC方案的第一BC格式来格式化第一经压缩的位流。
例如,编码器306A可以选择BC7格式的模式7作为第一BC方案。编码器306A可以使用BC7格式的所选择的模式7以用于压缩第一纹理块404A。BC7格式的所选择的模式可以被表示为7BCi,其中“i”表示BC7格式的模式之一。生成的第一经压缩的位流的表示(基于BC7格式的选择的模式7(7BC7))在表4中示出,如下所示:
表4:基于BC7格式-模式7(7BC7)的第一经压缩的位流表4中的“6位分区”位表示BC7格式的模式7的分区类型。表4中的位“5位R0”到“1位P3”表示BC7格式的模式7的端点。R与红色对应、G与绿色对应,B与蓝色对应,A与alpha对应,并且P与BC7格式的模式7的所有通道的最低位对应。“30位”表示16个索引,每个索引是使用端点进行纹素的插值的权重。
根据实施例,生成的第一经压缩的位流可以输入到B2V转换器306B。B2V转换器306B可以对生成的第一经压缩的位流的代码位的第一块进行转换以生成编码纹理值。例如,作为转换的一部分,第一经压缩的位流中的6位分区可以被转换成64×1独热编码向量。第一经压缩的位流的4×RGBA端点可以被转换成16×1浮点值(归一化为(0,1))。B2V转换器306B可以将由“30位”表示的16×2位像素索引转换成16×1浮点值(归一化为(0,1))。可以假设块内的两个子集中的每个都以位“0”开始。电路***202可以基于对接收到的第一纹理块404A应用第一BC方案来在经压缩的域中生成编码纹理值。
在408处,可以对生成的编码纹理值应用第一ML模型104A以在经压缩的域中生成超分辨率编码纹理值。在一些实施例中,可以从多个ML模型104中选择第一ML模型104A。第一ML模型104A的选择可以基于所选择的第一BC方案。在一个或多个实施例中,可以基于确定生成的第一经压缩的位流与在第一BC方案中指定的第一BC格式(例如,BC7格式)的第一模式(例如,模式7)相关联来选择第一ML模型104A的选择。
在一些实施例中,多个ML模型104可以包括ML模型,每个模型用于特定的BC格式,诸如BC1格式、BC2格式…或BC7格式。在一个或多个实施例中,多个ML模型104中的每个ML模型可以与第一BC格式的多种模式中的对应模式相关联。例如,多个ML模型104可以包括十四个ML模型,每个模型用于BC6格式的相应模式。可替代地,多个ML模型104可以包括八个ML模型,每个模型用于BC7格式的相应模型。多个ML模型104中的每个ML模型可以根据相应的BC格式被单独训练。例如,在图6中进一步描述第一ML模型104A的训练。
根据实施例,所选择的第一ML模型104A的应用可以包括将生成的编码纹理值作为输入馈送到所选择的第一ML模型104A。例如,如果第一ML模型104A与BC7格式的模式7相关联,那么基于选择的BC7格式的模式7生成的编码纹理值可以被输入到第一ML模型104A。基于该输入,第一ML模型104A可以生成超分辨率编码纹理值。超分辨率编码纹理值可以包括将第一纹理块404A放大到第二纹理块412A可能需要的编码纹理值的集合(编码纹理值的四个集合)。例如,可能需要将具有第一块尺寸的第一纹理块404A放大“M”倍以生成具有第二块尺寸的第二纹理块412A。第二块尺寸与第一块尺寸的比率可以是大于一的正整数(M)。
在实施例中,第一纹理块404A的第一块尺寸可以是4×4纹素。可以必须将第一纹理块404A放大2倍以获得第二纹理块(其可以是8×8纹素)。在这种情况下,将第一纹理块404A放大到第二纹理块可能需要的编码纹理值的集合可以通过应用第一ML模型104A来获得。可以训练第一ML模型104A以基于与第一纹理块404A相关联的输入编码纹理值来生成编码纹理值的四个集合(作为超分辨率编码纹理值的一部分)。生成的编码纹理值的四个集合中的每个集合可以被用于生成4×4纹理块,并且编码纹理值的四个集合一起可以被用于生成8×8纹理块。
根据实施例,可以确定GPU 206的着色器所需的mipmap级别。Mipmap可以是经优化的图像序列,其中序列中的每个图像表示比先前图像更低的分辨率。mipmap通常用于加快渲染时间,或者通过减少渲染每个像素所采样的纹素的数量,或者通过增加所取样本的存储器局部性。图像序列中的每个图像都与mipmap级别相关联。每个mipmap级别可以比先前mipmap级别小二的幂。GPU 206的着色器可以被利用以为三维(3D)网格着色或提供纹理。可以确定mipmap级别(由着色器所需)以适当地设置第二块尺寸(或纹理块应当被重新缩放或放大的缩放倍数)。电路***202可以向多个ML模型104中所选择的第一ML模型104A发信号通知所确定的mipmap级别。基于经发信号通知的mipmap级别,第一ML模型104A可以设置第二纹理块(诸如第二纹理块412A)的第二块尺寸。例如,第一ML模型104A可以将第二块尺寸设置为8×8纹素或4的缩放倍数。基于所设定的第二块尺寸,第一ML模型104A可以在经压缩的域中生成超分辨率编码纹理值。如本文所述,电路***202还可以处理生成的超分辨率编码纹理值。作为处理的一部分,可以将超分辨率编码纹理值输入到V2B转换器308B。
在410处,V2B转换器308B可以将经压缩的域中的超分辨率编码纹理值转换成第二经压缩的位流。生成的第二经压缩的位流可以包括经编码位的第二块的集合,每个经编码位的第二块在经压缩的域中可以表示第二纹理块(例如,第二纹理块412A)的对应部分(例如,4×4块)。
在实施例中,对于超分辨率编码纹理值中的编码纹理值的每个集合,V2B转换器308B可以将超分辨率编码纹理值的64×1独热编码向量转换成6位分区。V2B转换器308B还可以将经归一化为(0,1)的16×1浮点值转换成4×RGBA端点并将归一化为(0,1)的16×1浮点值转换成16×2(32)位索引以生成第二经压缩的位流。由于假设块内的两个子集中的每个都以位“0”开始,因此可以考虑将30位而不是32位用于索引。
在412处,可以生成第二纹理块412A。根据实施例,可以将第二经压缩的位流输入到解码器308A以生成第二纹理块412A。超分辨率编码纹理值的处理可以包括将第二经压缩的位流输入到解码器308A。解码器308A可以对第二经压缩的位流进行解码以生成具有第二块尺寸的第二纹理块412A。第二块尺寸可以大于第一块尺寸。例如,生成的第二纹理块412A的第二块尺寸可以是8×8纹素。
根据实施例,第二经压缩的位流的解码可以包括以先入先出(FIFO)阵列以逐块方式对经编码位的第二块的集合应用第一块解码方案以生成第二纹理块412A的相应部分(例如,4×4块)。可替代地,解码器308A可以逐像素地(以定义的阵列)解码第二纹理块412A。
图5是图示根据本公开的实施例的用于块压缩纹理的超分辨率的机器学习模型的示例性体系架构的图。图5结合图1、图2、图3、图4A和图4B中的元素进行解释。参考图5,示出了第一ML模型502的体系架构500,其可以是图1的第一ML模型104A的示例性实施方式。
第一ML模型502可以包括多个全连接层,诸如全连接层504A、全连接层504B和全连接层504C。第一ML模型502还可以包括多个激活层,诸如激活层506A、激活层506B和激活层506C。多个激活层的示例可以包括但不限于指数线性单元、线性激活层、经整流的线性单元、sigmoid函数或softmax函数。
B2V转换器306B的输出可以输入到第一ML模型502的全连接层504A。全连接层504A可以连接到激活层506A。激活层506A还可以连接到全连接层504B。另外,全连接层504B可以连接到激活层506B。激活层506B可以连接到全连接层504C。全连接层504C可以连接到激活层506C。激活层506C的输出可以输入到电路***202的V2B转换器308B。
由B2V转换器306B生成的编码纹理值可以输入到全连接层504A。编码纹理值可以经过一系列多个全连接层和多个激活层,诸如激活层506A和激活层506B和激活层506C,以生成超分辨率编码纹理值(这可以被称为输入编码纹理值的插值)。激活层506C的输出可以作为输入馈送到电路***202的V2B转换器308B。V2B转换器308B可以基于接收到的输入来输出第二经压缩的位流。
图6是图示根据本公开的实施例的用于训练用于块压缩纹理的超分辨率的机器学习模型的示例性操作的图。图6结合图1、图2、图3、图4A、图4B和图5的元素进行解释。参考图6,示出了图600。图600可以包括第一ML模型104A、编码器306A、B2V转换器306B、解码器308A和V2B转换器308B。图600还可以包括第一样本纹理块602、预训练的ML模型604、第二样本纹理块606、损失函数608、乘法器函数612、地面真值纹理块610、乘法器函数612和超分辨率纹理块614。
根据实施例,第一ML模型104A可以是基于神经网络的模型。对于第一ML模型104A的训练,第一ML模型104A可以接收具有第一块尺寸的第一样本纹理块602。例如,第一块尺寸可以是4×4纹素。在一些实施例中,电路***202可以接收样本纹理图像并且可以将样本纹理图像划分为多个样本纹理块(其包括第一样本纹理块602)。
第一样本纹理块602可以被输入到电路***202的编码器306A,该编码器306A可以通过对接收到的第一样本纹理块602应用第一BC方案来生成第一样本经压缩的位流。第一BC方案可以指定第一BC格式,其可以是BC1格式、BC2格式、BC3格式、BC4格式、BC5格式、BC6格式或BC7格式之一。生成的第一样本经压缩的位流可以被输入到B2V转换器306B。电路***202的B2V转换器306B可以将样本经压缩的位流转换成第一样本编码纹理值。
电路***202可以对第一样本编码纹理值应用第一ML模型104A以生成第二样本编码纹理值。生成的第二样本编码纹理值可以被输入到预训练的ML模型604。在一个或多个实施例中,电路***202可以包括预训练的ML模型604。预训练的ML模型604可以将第二样本编码纹理值重新转换成第二样本经压缩的位流。预训练的ML模型604还可以解码第二样本经压缩的位流以生成具有第二块尺寸的第二样本纹理块606。在一些实施例中,第二块尺寸可以是8×8纹素。例如在图7中提供预训练的ML模型604的体系架构的细节。
电路***202还可以从第一样本纹理块602生成地面真值纹理块610。例如,电路***202可以基于对第一样本纹理块602应用乘法器函数612来生成地面真值纹理块610。
地面真值纹理块610和生成的第二样本纹理块606可以作为输入被传递给损失函数608。损失函数608可以被用于计算第二样本纹理块606与具有第二块尺寸的地面真值纹理块610之间的第一损失。第一损失可以被提供给第一ML模型104A并且电路***202可以基于计算出的第一损失更新第一ML模型104A的权重。类似于对第一样本纹理块602的训练,第一ML模型104A的训练可以在剩余样本纹理块上执行。
对于超分辨率纹理块614的生成,可以将生成的第二样本编码纹理值输入到V2B转换器308B。V2B转换器308B可以将第二样本编码纹理值转换成第二样本经压缩的位流。第二样本经压缩的位流可以被输入到解码器308A,该解码器308A可以生成具有第二块尺寸的超分辨率纹理块614。
图7是图示根据本公开的实施例的用于训练第一机器学习模型的预训练机器学习模型的示例性体系架构的图。图7结合图1、图2、图3、图4A、图4B、图5和图6的元素进行解释。参考图7,示出了图700。图700可以包括预训练的ML模型604。预训练的ML模型604可以包括多个全连接层和多个激活层。
多个全连接层可以包括全连接层704A、全连接层704B、全连接层704C、全连接层704D和全连接层704E。多个激活层可以包括激活层706A、激活层706B、激活层706C、激活层706D和激活层706E。多个激活层的示例可以包括但不限于指数线性单元、线性激活层、经整流的线性单元、sigmoid函数或softmax函数。
多个全连接层和多个指数线性单元可以顺序地连接。例如,全连接层704A可以连接到激活层706A。激活层706A可以连接到全连接层704B。全连接层704B可以连接到激活层706B。激活层706B可以连接到全连接层704C。全连接层704C还可以连接到激活层706C。激活层706C可以连接到全连接层704D。全连接层704D可以连接到激活层706D。激活层706D可以连接到全连接层704E。全连接层704E可以连接到激活层706E。
预训练的ML模型604可以经由全连接层704A接收第二样本编码纹理值(如图6中所述)。第二样本编码纹理值可以通过多个全连接层和多个激活层以将第二样本编码纹理值重新转换成第二样本经压缩的位流。预训练的ML模型604还可以解码第二样本经压缩的位流以生成第二样本纹理块606。第二样本纹理块606可以经由激活层706E被输出。由预训练的ML模型604输出的第二样本纹理块606可以被输入到损失函数608。
图8A和图8B共同图示了根据本公开的实施例的用于块压缩纹理的超分辨率的示例性方法的流程图。图8A和图8B结合来自图1、图2、图3、图4A、图4B、图5、图6和图7的元素进行解释。参考图8A和图8B,示出了流程图800。流程图800中所示的方法可以由任何计算***(诸如由***102或电路***202)执行。该方法可以在802处开始并前进到804。
在804处,可以接收纹理图像(诸如纹理图像108)。根据实施例,电路***202可以被配置为接收纹理图像108。在一些实施例中,可以从纹理文件的集合中解码纹理图像108,该纹理文件的集合可以被包括在图形渲染应用的软件包或纹理库中。例如在图4A中进一步提供纹理图像108的接收的细节。
在806处,接收到的纹理图像108可以被划分为多个纹理块。根据实施例,电路***202可以被配置为将接收到的纹理图像108划分为多个纹理块。多个纹理块中的每个可以具有第一块尺寸(例如,4×4纹素)。第一纹理块110可以被包括在多个纹理块中。
在808处,可以从多个BC方案当中选择第一BC方案。根据实施例,电路***202可以被配置为选择第一BC方案。第一BC方案可以指定第一BC格式,该第一BC格式可以在S3纹理压缩(S3TC)中被指定,并且可以是BC1格式、BC2格式、BC3格式、BC4格式、BC5格式、BC6格式或BC7格式之一。例如在图4A中进一步描述第一BC方案的选择的细节。
在810处,可以对第一纹理块110应用所选择的第一块压缩方案以生成第一经压缩的位流。根据实施例,电路***202可以被配置为对第一纹理块110应用所选择的第一块压缩方案以生成第一经压缩的位流。可以根据所选择的第一BC方案的第一BC格式来格式化第一经压缩的位流。例如在图4A中进一步描述对第一纹理块110应用所选择的第一BC方案以生成第一经压缩的位流的细节。
在812处,生成的第一经压缩的位流的代码位的第一块可以被转换以生成编码纹理值。根据实施例,电路***202可以被配置为对生成的第一经压缩的位流的代码位的第一块进行转换以生成编码纹理值。例如在图4B中进一步提供转换代码位的第一块以生成编码纹理值的细节。
在814处,可以从多个ML模型(例如,多个ML模型104)中选择第一ML模型(例如,第一ML模型104A)。根据实施例,电路***202可以被配置为基于确定第一经压缩的位流与在第一BC方案中指定的第一BC格式的第一模式相关联来从多个ML模型104中选择第一ML模型104A。多个ML模型104中的每个ML模型(例如,第一ML模型104A、第二ML模型104B和第N个ML模型104N)可以与第一BC格式的多种模式中的对应模式相关联。例如在图4B中进一步提供从多个ML模型104中选择第一ML模型104A的细节。
在816处,可以确定是否指定了mipmap级别。根据实施例,电路***202可以被配置为确定是否指定了mipmap级别。在指定了mipmap级别的情况下,控制可以被传递到818。否则,控制可以被传递到828。
在818处,可以基于指定了mipmap级别的确定来确定GPU(例如,GPU 206)的着色器所需的mipmap级别。根据实施例,电路***202可以被配置为确定由GPU 206的着色器所需的mipmap级别。例如在图4B中提供了与mipmap级别相关的细节。
在820处,可以将确定的mipmap级别发信号通知给第一ML模型104A。根据实施例,电路***202可以被配置为向第一ML模型104A发信号通知确定的mipmap级别。例如在图4B中进一步描述了发信号通知确定的mipmap级别的细节。
在822处,第二纹理块112的第二块尺寸可以由第一ML模型104A基于经发信号通知的mipmap级别来设置。根据实施例,第一ML模型104A可以基于经发信号通知的mipmap级别来设置第二纹理块112的第二块尺寸。
在824处,可以基于所设定的第二块尺寸在经压缩的域中生成超分辨率编码纹理值。根据实施例,第一ML模型104A可以基于所设定的第二块尺寸在经压缩的域中生成超分辨率编码纹理值。例如在图4B中进一步提供了超分辨率编码纹理值的生成的细节。
在826处,可以对生成的编码纹理值应用第一ML模型104A以在经压缩的域中生成超分辨率编码纹理值。根据实施例,电路***202可以被配置为对生成的编码纹理值应用第一ML模型104A以在经压缩的域中生成超分辨率编码纹理值。例如在图4B中进一步提供了应用第一ML模型104A以生成超分辨率编码纹理值的细节。
在828处,可以处理生成的超分辨率编码纹理值以生成具有第二块尺寸的第二纹理块112。根据实施例,电路***202可以被配置为处理生成的超分辨率编码纹理值以生成具有第二块尺寸的第二纹理块112。第二块尺寸可以大于第一块尺寸。例如在图4B中进一步提供了处理生成的超分辨率编码纹理值以生成第二纹理块112的细节。控制可以被传递到结束。
虽然流程图800被示为离散操作,诸如802、804、806、808、810、812、814、816、818、820、822、824、826和828,但本公开不限于此。因而,在某些实施例中,此类离散操作可以被进一步划分为附加的操作、组合成更少的操作或被排除,这取决于特定的实施方式,而不偏离所公开的实施例的本质。
本公开的各种实施例可以提供一种其上存储有计算机可执行指令的非暂态计算机可读介质和/或存储介质,指令可由机器和/或计算机执行以操作***(诸如***102)。计算机可执行指令可以使机器和/或计算机执行可以包括接收具有第一块尺寸的第一纹理块(诸如第一纹理块110)的操作。操作还可以包括基于对接收到的第一纹理块110应用第一块压缩(BC)方案来在经压缩的域中生成编码纹理值。操作还可以包括对生成的编码纹理值应用第一机器学习模型(诸如第一ML模型104A)以在经压缩的域中生成超分辨率编码纹理值。此外,操作可以包括处理生成的超分辨率编码纹理值以生成具有第二块尺寸的第二纹理块(诸如第二纹理块112)。第二块尺寸可以大于第一块尺寸。
本公开的示例性方面可以提供包括电路***(例如,电路***202)的***(诸如图1的***102)。电路***202可以被配置为接收具有第一块尺寸的第一纹理块(诸如第一纹理块110)。电路***202还可以基于对接收到的第一纹理块110应用第一块压缩(BC)方案来在经压缩的域中生成编码纹理值。电路***202还可以被配置为对生成的编码纹理值应用第一机器学习模型(诸如第一ML模型104A)以在经压缩的域中生成超分辨率编码纹理值。此外,电路***202可以被配置为处理生成的超分辨率编码纹理值以生成具有第二块尺寸的第二纹理块(诸如第二纹理块112)。第二块尺寸可以大于第一块尺寸。
根据实施例,该方法可以包括接收纹理图像402A。该方法还可以包括将接收到的纹理图像402A划分为多个纹理块,每个纹理块具有第一块尺寸,并且第一纹理块404A被包括在多个纹理块中。
根据实施例,该方法还包括从多个块压缩方案当中选择第一BC方案。该方法还包括对第一纹理块404A应用所选择的第一块压缩方案以生成第一经压缩的位流。可以根据所选择的第一BC方案的第一BC格式来格式化第一经压缩的位流。
根据实施例,该方法还包括对生成的第一经压缩的位流的代码位的第一块进行转换以生成编码纹理值。
根据实施例,该方法还包括基于确定第一经压缩的位流与在第一BC方案中指定的第一BC格式的第一模式相关联来从多个ML模型104中选择第一ML模型104A。多个ML模型104中的每个机器学习模型可以与第一BC格式的多种模式的对应模式相关联。
根据实施例,所选择的第一ML模型104A的应用还可以包括将生成的编码纹理值作为输入馈送到所选择的第一ML模型104A。该应用还可以包括由所选择的第一ML模型104A基于输入生成超分辨率编码纹理值。超分辨率编码纹理值可以包括将第一纹理块404A放大到第二纹理块412A可能需要的编码纹理值的集合。
根据实施例,处理还可以包括将经压缩的域中的超分辨率编码纹理值转换成第二经压缩的位流。第二经压缩的位流可以包括经编码位的第二块的集合,每个经编码位的第二块在经压缩的域中表示第二纹理块412A的对应部分。该处理还可以包括解码第二经压缩的位流以生成第二纹理块412A。
根据实施例,解码可以包括以逐块方式对经编码位的第二块的集合应用第一块解码方案,以便以先入先出(FIFO)阵列生成第二纹理块412A的相应部分。
根据实施例,第一ML模型104A可以是基于神经网络的模型。
根据实施例,第一BC方案可以指定第一BC格式,该第一BC格式是BC1格式、BC2格式、BC3格式、BC4格式、BC5格式、BC6格式或BC7格式之一。
根据实施例,在第一BC方案中指定的第一BC格式处于第一模式,该第一模式是BC6格式的十四种模式或BC7格式的八种模式之一。
根据实施例,第一块尺寸可以是4×4纹素,并且第二块尺寸与第一块尺寸的比率是大于一的正整数。
根据实施例,该方法还可以包括确定由GPU 206的着色器所需的mipmap级别。该方法还可以包括向第一ML模型104A发信号通知确定的mipmap级别。基于经发信号通知的mipmap级别,该方法可以包括由第一ML模型104A设置第二纹理块412A的第二块尺寸。该方法还可以包括由第一ML模型104A基于所设定的第二块尺寸在经压缩的域中生成超分辨率编码纹理值。
根据实施例,该方法可以包括训练第一ML模型104A。训练可以包括接收具有第一块尺寸的第一样本纹理块602。训练还可以包括通过对接收到的第一样本纹理块602应用第一BC方案来生成第一样本经压缩的位流。训练还可以包括将样本经压缩的位流转换成第一样本编码纹理值。另外,训练可以包括对第一样本编码纹理值应用第一ML模型104A以生成第二样本编码纹理值。训练还可以包括将第二样本编码纹理值重新转换成第二样本经压缩的位流。而且,训练可以包括将第二样本编码纹理值重新转换成第二样本经压缩的位流。训练还可以包括解码第二样本经压缩的位流以生成具有第二块尺寸的第二样本纹理块606。训练还包括计算第二样本纹理块606与具有第二块尺寸的地面真值纹理块610之间的第一损失。训练还可以包括基于计算出的第一损失来更新第一ML模型104A的权重。
可以利用硬件或硬件和软件的组合来实现本公开。本公开可以以集中式方式、以至少一个计算机***或以分布式的方式来实现,其中不同的元件可以跨几个互连的计算机***分布。适于执行本文描述的方法的计算机***或其它装置可能是合适的。硬件和软件的组合可以是具有计算机程序的通用计算机***,该计算机程序在被加载和执行时可以控制计算机***,以使其执行本文描述的方法。可以利用包括还执行其它功能的集成电路的一部分的硬件来实现本公开。
本公开还可以被嵌入在计算机程序产品中,该计算机程序产品包括使得能够实现本文描述的方法的所有特征,并且当其被加载到计算机***中时,能够执行这些方法。在本文中,计算机程序是指以任何语言、代码或符号对指令集的任何表达,这些指令旨在使具有信息处理能力的***或者直接执行特定功能,或者在以下各项中的一个或两者之后执行特定功能:a)转换成另一种语言、代码或符号;b)以不同的物质形式再现。
虽然参考某些实施例描述了本公开,但是本领域技术人员将理解,在不偏离本公开的范围的情况下,可以进行各种改变并且可以替换等同物。另外,在不偏离本公开的范围的情况下,可以做出许多修改以使特定情况或材料适于本公开的教导。因此,意图是本公开不限于所公开的特定实施例,而是本公开将包括落入所附权利要求的范围内的所有实施例。
Claims (20)
1.一种方法,包括:
接收具有第一块尺寸的第一纹理块;
基于对接收到的第一纹理块应用第一块压缩(BC)方案,在经压缩的域中生成编码纹理值;
对生成的编码纹理值应用第一机器学习模型以在经压缩的域中生成超分辨率编码纹理值;以及
处理生成的超分辨率编码纹理值以生成具有第二块尺寸的第二纹理块,其中第二块尺寸大于第一块尺寸。
2.根据权利要求1所述的方法,还包括:
接收纹理图像;以及
将接收到的纹理图像划分为多个纹理块,每个纹理块具有第一块尺寸,并且第一纹理块被包括在所述多个纹理块中。
3.根据权利要求1所述的方法,还包括:
从多个块压缩方案当中选择第一BC方案;以及
对第一纹理块应用所选择的第一块压缩方案以生成第一经压缩的位流,
其中第一经压缩的位流是根据所选择的第一BC方案的第一BC格式所格式化的。
4.根据权利要求3所述的方法,还包括对生成的第一经压缩的位流的代码位的第一块进行转换以生成编码纹理值。
5.根据权利要求4所述的方法,还包括基于确定第一经压缩的位流与在第一BC方案中指定的第一BC格式的第一模式相关联来从多个机器学习模型当中选择第一机器学习模型,
其中所述多个机器学习模型中的每个机器学习模型与第一BC格式的多种模式中的对应模式相关联。
6.根据权利要求5所述的方法,其中应用所选择的第一机器学习模型还包括:
将生成的编码纹理值作为输入馈送到所选择的第一机器学习模型;以及
由所选择的第一机器学习模型,基于输入生成超分辨率编码纹理值,
其中超分辨率编码纹理值包括将第一纹理块放大到第二纹理块所需的编码纹理值的集合。
7.根据权利要求1所述的方法,其中处理还包括:
将经压缩的域中的超分辨率编码纹理值转换成第二经压缩的位流,
其中第二经压缩的位流包括经编码位的第二块的集合,每个经编码位的第二块在经压缩的域中表示第二纹理块的对应部分;以及
解码第二经压缩的位流以生成第二纹理块。
8.根据权利要求7所述的方法,其中解码包括以逐块方式对经编码位的第二块的集合应用第一块解码方案,以便以先入先出(FIFO)阵列生成第二纹理块的相应部分。
9.根据权利要求1所述的方法,其中第一机器学习模型是基于神经网络的模型。
10.根据权利要求1所述的方法,其中第一BC方案指定第一BC格式,所述第一BC格式是BC1格式、BC2格式、BC3格式、BC4格式、BC5格式、BC6格式或BC7格式之一。
11.根据权利要求10所述的方法,其中在第一BC方案中指定的第一BC格式是第一模式,所述第一模式是BC6格式的十四种模式或BC7格式的八种模式之一。
12.根据权利要求1所述的方法,其中第一块尺寸是4×4纹素,并且第二块尺寸与第一块尺寸的比率是大于一的正整数。
13.根据权利要求1所述的方法,还包括:
确定由图形处理单元(GPU)的着色器所需的mipmap级别;
将确定的mipmap级别发信号通知给第一机器学习模型;
由第一机器学习模型基于经发信号通知的mipmap级别来设置第二纹理块的第二块尺寸;以及
由第一机器学习模型基于所设定的第二块尺寸在经压缩的域中生成超分辨率编码纹理值。
14.根据权利要求1所述的方法,还包括训练第一机器学习模型,其中训练包括:
接收具有第一块尺寸的第一样本纹理块;
通过对接收到的第一样本纹理块应用第一BC方案来生成第一样本经压缩的位流;
将样本经压缩的位流转换成第一样本编码纹理值;
对第一样本编码纹理值应用第一机器学习模型以生成第二样本编码纹理值;
将第二样本编码纹理值重新转换成第二样本经压缩的位流;
解码第二样本经压缩的位流以生成具有第二块尺寸的第二样本纹理块;
计算第二样本纹理块与具有第二块尺寸的地面真值纹理块之间的第一损失;以及
基于计算出的第一损失来更新第一机器学习模型的权重。
15.一种***,包括:
电路***,被配置为:
接收具有第一块尺寸的第一纹理块;
基于对接收到的第一纹理块应用第一块压缩(BC)方案,在经压缩的域中生成编码纹理值;
对生成的编码纹理值应用第一机器学习模型以在经压缩的域中生成超分辨率编码纹理值;以及
处理生成的超分辨率编码纹理值以生成具有第二块尺寸的第二纹理块,其中第二块尺寸大于第一块尺寸。
16.根据权利要求15所述的***,其中电路***还被配置为:
从多个块压缩方案当中选择第一BC方案;以及
对第一纹理块应用所选择的第一块压缩方案以生成第一经压缩的位流,
其中第一经压缩的位流是根据所选择的第一BC方案的第一BC格式所格式化的;以及
对生成的第一经压缩的位流的代码位的第一块进行转换以生成编码纹理值。
17.根据权利要求16所述的***,其中电路***还被配置为基于确定第一经压缩的位流与在第一BC方案中指定的第一BC格式的第一模式相关联来从多个机器学习模型当中选择第一机器学习模型,
其中所述多个机器学习模型中的每个机器学习模型与第一BC格式的多种模式中的对应模式相关联。
18.根据权利要求15所述的***,其中电路***还被配置为通过将生成的编码纹理值作为输入馈送到所选择的第一机器学习模型来应用第一机器学习模型,其中
第一机器学习模型基于输入生成超分辨率编码纹理值,以及
超分辨率编码纹理值包括将第一纹理块放大到第二纹理块所需的编码纹理值的集合。
19.根据权利要求15所述的***,其中电路***被配置为通过以下各项来处理所述超分辨率编码纹理值:
将经压缩的域中的超分辨率编码纹理值转换成第二经压缩的位流,
其中第二经压缩的位流包括经编码位的第二块的集合,每个经编码位的第二块在经压缩的域中表示第二纹理块的对应部分;以及
解码第二经压缩的位流以生成第二纹理块。
20.一种其上存储有计算机可执行指令的非暂态计算机可读介质,所述指令在由***执行时使***执行操作,所述操作包括:
接收具有第一块尺寸的第一纹理块;
基于对接收到的第一纹理块应用第一块压缩(BC)方案,在经压缩的域中生成编码纹理值;
对生成的编码纹理值应用第一机器学习模型以在经压缩的域中生成超分辨率编码纹理值;以及
处理生成的超分辨率编码纹理值以生成具有第二块尺寸的第二纹理块,其中第二块尺寸大于第一块尺寸。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US202063003953P | 2020-04-02 | 2020-04-02 | |
US63/003,953 | 2020-04-02 | ||
PCT/US2021/024802 WO2021202470A1 (en) | 2020-04-02 | 2021-03-30 | Super-resolution of block-compressed texture for texture mapping applications |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114746902A true CN114746902A (zh) | 2022-07-12 |
Family
ID=77922250
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202180006808.9A Pending CN114746902A (zh) | 2020-04-02 | 2021-03-30 | 用于纹理映射应用的块压缩纹理的超分辨率 |
Country Status (6)
Country | Link |
---|---|
US (1) | US12008732B2 (zh) |
EP (1) | EP4111419A4 (zh) |
JP (1) | JP7450863B2 (zh) |
KR (1) | KR20220141843A (zh) |
CN (1) | CN114746902A (zh) |
WO (1) | WO2021202470A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024120031A1 (zh) * | 2022-12-09 | 2024-06-13 | 腾讯科技(深圳)有限公司 | 处理视频数据的方法、装置、计算机设备和存储介质 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9378560B2 (en) * | 2011-06-17 | 2016-06-28 | Advanced Micro Devices, Inc. | Real time on-chip texture decompression using shader processors |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB0128888D0 (en) | 2001-12-03 | 2002-01-23 | Imagination Tech Ltd | Method and apparatus for compressing data and decompressing compressed data |
US7948500B2 (en) * | 2007-06-07 | 2011-05-24 | Nvidia Corporation | Extrapolation of nonresident mipmap data using resident mipmap data |
WO2009073828A1 (en) | 2007-12-05 | 2009-06-11 | Onlive, Inc. | Tile-based system and method for compressing video |
US8374444B2 (en) | 2008-08-06 | 2013-02-12 | Sony Corporation | Method and apparatus for providing higher resolution images in an embedded device |
US9652882B2 (en) | 2014-04-05 | 2017-05-16 | Sony Interactive Entertainment America Llc | Gradient adjustment for texture mapping for multiple render targets with resolution that varies by screen location |
KR20180050140A (ko) | 2016-11-04 | 2018-05-14 | 삼성전자주식회사 | 텍스쳐 압축 방법 및 장치, 그리고 텍스쳐 압축 해제 방법 및 장치 |
JP6236731B1 (ja) | 2017-03-10 | 2017-11-29 | 株式会社ツバサファクトリー | 超解像度処理装置、超解像度処理方法およびコンピュータプログラム |
WO2018212599A1 (en) * | 2017-05-17 | 2018-11-22 | Samsung Electronics Co., Ltd. | Super-resolution processing method for moving image and image processing apparatus therefor |
CN108416736B (zh) | 2018-03-21 | 2021-11-16 | 西安邮电大学 | 一种基于二次锚点邻域回归的图像超分辨率重建方法 |
EP3777189A1 (en) | 2018-04-13 | 2021-02-17 | Koninklijke KPN N.V. | Block-level super-resolution based video coding |
CN109410239B (zh) | 2018-11-07 | 2021-11-16 | 南京大学 | 一种基于条件生成对抗网络的文本图像超分辨率重建方法 |
-
2021
- 2021-03-30 US US17/217,047 patent/US12008732B2/en active Active
- 2021-03-30 EP EP21779578.0A patent/EP4111419A4/en active Pending
- 2021-03-30 CN CN202180006808.9A patent/CN114746902A/zh active Pending
- 2021-03-30 KR KR1020227031725A patent/KR20220141843A/ko active IP Right Grant
- 2021-03-30 JP JP2022550761A patent/JP7450863B2/ja active Active
- 2021-03-30 WO PCT/US2021/024802 patent/WO2021202470A1/en unknown
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024120031A1 (zh) * | 2022-12-09 | 2024-06-13 | 腾讯科技(深圳)有限公司 | 处理视频数据的方法、装置、计算机设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
JP2023514428A (ja) | 2023-04-05 |
US12008732B2 (en) | 2024-06-11 |
JP7450863B2 (ja) | 2024-03-18 |
KR20220141843A (ko) | 2022-10-20 |
EP4111419A4 (en) | 2023-09-13 |
WO2021202470A1 (en) | 2021-10-07 |
US20210312592A1 (en) | 2021-10-07 |
EP4111419A1 (en) | 2023-01-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7693337B2 (en) | Multi-mode alpha image processing | |
US11861809B2 (en) | Electronic apparatus and image processing method thereof | |
JP7450863B2 (ja) | テクスチャマッピング用途のためのブロック圧縮テクスチャの超解像 | |
EP1697897A1 (en) | Image processing | |
CN111402380B (zh) | 一种gpu压缩纹理处理方法 | |
CN102497545B (zh) | 内容自适应和艺术可引导可缩放视频编码 | |
CN111510739B (zh) | 一种视频传输方法及装置 | |
CN102138158A (zh) | 统一纹理压缩框架 | |
US6760032B1 (en) | Hardware-implemented cellular automata system and method | |
US9613394B2 (en) | Lossy color compression using adaptive quantization | |
US11263786B2 (en) | Decoding data arrays | |
US10559093B2 (en) | Selecting encoding options | |
WO2021213664A1 (en) | Filtering for rendering | |
US11189005B1 (en) | Index buffers in graphics processing systems | |
US9924176B2 (en) | Hybrid block based compression | |
CN115115560A (zh) | 图像处理方法、装置、设备和介质 | |
CN115797236A (zh) | 一种图像和谐化处理的方法及设备 | |
JP2021174404A (ja) | データ生成装置、訓練装置及びデータ生成方法 | |
US20240078628A1 (en) | High-performance and low-latency implementation of a wavelet-based image compression scheme | |
KR20240064698A (ko) | 특징 맵 인코딩 및 디코딩 방법 및 장치 | |
CN113965756A (zh) | 一种图像编码方法、存储介质及终端设备 | |
WO2023201099A1 (en) | Block-based random access capable lossless graphics asset compression | |
CN112767500A (zh) | 一种基于图像分布的纹理数据解压方法 | |
WO2023201098A1 (en) | Low-power high throughput hardware decoder with random block access | |
CN112489147A (zh) | 一种基于图像分布的纹理压缩*** |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |