CN104253995B - 自适应量化参数控制方法和装置 - Google Patents
自适应量化参数控制方法和装置 Download PDFInfo
- Publication number
- CN104253995B CN104253995B CN201310257862.8A CN201310257862A CN104253995B CN 104253995 B CN104253995 B CN 104253995B CN 201310257862 A CN201310257862 A CN 201310257862A CN 104253995 B CN104253995 B CN 104253995B
- Authority
- CN
- China
- Prior art keywords
- macro block
- quantization parameter
- mrow
- parameter
- msub
- 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.)
- Active
Links
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本发明公开一种自适应量化参数控制方法和装置。其中在自适应量化参数控制方法中,根据图像复杂度,为一帧编码图像分配目标比特数。针对帧内的第j个宏块,根据缓存器在前j‑1个宏块编码结束后的占有率dj,计算第j个宏块的量化控制参数。利用量化控制参数Qj计算第j个宏块的参考量化参数。利用第j‑1个宏块的量化参数和第j个宏块的参考量化参数,确定第j个宏块的量化参数。通过自适应调整量化参数,从而较好地避免了码率控制中量化参数的过度调节,均匀化同一画面中宏块之间的编码质量。
Description
技术领域
本发明涉及通信领域,特别涉及一种自适应量化参数控制方法和装置。
背景技术
H.264是新一代的视频压缩标准,在同等图像质量下的压缩效率相比以往标准更优秀。为使H.264编码器不断变化的输出码率和信道相匹配,需引入码率控制方法。码率控制方法,根据信道固定或可变的传输速率直接调整视频编码器的输出码率,使之与传输带宽相匹配,同时获取最小的解码失真。TM5算法是一种经典的码率控制方法,控制准确,实现简单。但现有TM5码率控制方法在自适应量化时,对量化参数存在不适当与不均匀调整,使得某些参数被过度调节,导致同一画面中宏块与宏块间编码质量不均匀,影响输出码率的稳定性和图像质量。
在现有的TM5码率控制方法中,依据宏块空域活动性自适应调节宏块的量化参数。由于TM5原有自适应量化方案的归一化公式可简化为双曲线函数,由此可知函数的上下间隔不对称。从而在自适应量化时,量化参数向上调整的量远大于向下调整的量,导致量化参数被过度调节,最终导致宏块间编码质量不均匀。
发明内容
本发明要解决的技术问题是提供一种自适应量化参数控制方法和装置。通过自适应调整量化参数,从而较好地避免了码率控制中量化参数的过度调节,均匀化同一画面中宏块之间的编码质量。
根据本发明的一个方面,提供一种自适应量化参数控制方法,包括:
根据图像复杂度,为一帧编码图像分配目标比特数TF;
针对帧内的第j个宏块,根据缓存器在前j-1个宏块编码结束后的占有率dj,计算第j个宏块的量化控制参数Qj;
利用量化控制参数Qj计算第j个宏块的参考量化参数
利用第j-1个宏块的量化参数Mq(j-1)和第j个宏块的参考量化参数确定第j个宏块的量化参数Mq(j)。
优选的,针对帧内的第j个宏块,根据缓存器在前j-1个宏块编码结束后的占有率dj,计算第j个宏块的量化控制参数Qj的步骤包括:
第j个宏块的量化控制参数Qj为:
Qj=31dj/(2×R/F),
其中R为信道传输速率,F为帧率。
优选的,缓存器在前j-1个宏块编码结束后的占有率dj为:
dj=d0+Bj-1-(j-1)TF/MB,
其中d0为编码器开始编码时缓存器的初始值,Bj-1为编码器共编码j-1个宏块产生的总比特数,MB为宏块总数。
优选的,利用量化控制参数Qj计算第j个宏块的参考量化参数的步骤包括:
计算Qj的归一化因子qj,其中:
其中Qmax和Qmin分别为量化控制参数的最大值和最小值;
计算相邻宏块间量化控制参数的差异因子k,其中:
计算参考量化参数其中为:
优选的,利用第j-1个宏块的量化参数Mq(j-1)和第j个宏块的参考量化参数确定第j个宏块的量化参数Mq(j)的步骤包括:
其中ρ为最大相邻宏块变化阈值。
根据本发明的另一方面,提供一种自适应量化参数控制装置,包括目标比特分配单元、量化控制参数计算单元、参考量化参数计算单元和量化参数确定单元,其中:
目标比特分配单元,用于根据图像复杂度,为一帧编码图像分配目标比特数TF;
量化控制参数计算单元,用于针对帧内的第j个宏块,根据缓存器在前j-1个宏块编码结束后的占有率dj,计算第j个宏块的量化控制参数Qj;
参考量化参数计算单元,用于利用量化控制参数Qj计算第j个宏块的参考量化参数
量化参数确定单元,用于利用第j-1个宏块的量化参数Mq(j-1)和第j个宏块的参考量化参数确定第j个宏块的量化参数Mq(j)。
优选的,量化控制参数计算单元具体利用公式:
Qj=31dj/(2×R/F)
计算第j个宏块的量化控制参数Qj,其中R为信道传输速率,F为帧率。
优选的,缓存器在前j-1个宏块编码结束后的占有率dj为:
dj=d0+Bj-1-(j-1)TF/MB,
其中d0为编码器开始编码时缓存器的初始值,Bj-1为编码器共编码j-1个宏块产生的总比特数,MB为宏块总数。
优选的,参考量化参数计算单元具体包括归一化因子计算模块、差异因子计算模块和参考量化参数计算模块,其中:
归一化因子计算模块,用于计算Qj的归一化因子qj,其中
Qmax和Qmin分别为量化控制参数的最大值和最小值;
差异因子计算模块,用于计算相邻宏块间量化控制参数的差异因子k,其中:
参考量化参数计算模块,用于计算参考量化参数其中:
优选的,量化参数确定单元具体利用公式:
确定第j个宏块的量化参数Mq(j),其中ρ为最大相邻宏块变化阈值。
本发明利用第j-1个宏块的量化参数和第j个宏块的参考量化参数确定第j个宏块的量化参数。通过自适应调整量化参数,从而较好地避免了码率控制中量化参数的过度调节,均匀化同一画面中宏块之间的编码质量。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明自适应量化参数控制方法一个实施例的示意图。
图2为本发明计算参考量化参数一个实施例的示意图。
图3为本发明自适应量化参数控制装置一个实施例的示意图。
图4为本发明参考量化参数计算单元一个实施例的示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本发明的范围。
同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为授权说明书的一部分。
在这里示出和讨论的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它示例可以具有不同的值。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
图1为本发明自适应量化参数控制方法一个实施例的示意图。如图1所示,本实施例的方法步骤如下:
步骤101,根据图像复杂度,为一帧编码图像分配目标比特数TF。
步骤102,针对帧内的第j个宏块,根据缓存器在前j-1个宏块编码结束后的占有率dj,计算第j个宏块的量化控制参数Qj。
步骤103,利用量化控制参数Qj计算第j个宏块的参考量化参数
步骤104,利用第j-1个宏块的量化参数Mq(j-1)和第j个宏块的参考量化参数确定第j个宏块的量化参数Mq(j)。
基于本发明上述实施例提供的自适应量化参数控制方法,通过利用第j-1个宏块的量化参数和第j个宏块的参考量化参数确定第j个宏块的量化参数。通过自适应调整量化参数,从而较好地避免了码率控制中量化参数的过度调节,均匀化同一画面中宏块之间的编码质量。
优选的,上述针对帧内的第j个宏块,根据缓存器在前j-1个宏块编码结束后的占有率dj,计算第j个宏块的量化控制参数Qj的步骤包括:
第j个宏块的量化控制参数Qj为:
Qj=31dj/(2×R/F),
其中R为信道传输速率,F为帧率。
优选的,缓存器在前j-1个宏块编码结束后的占有率dj为:
dj=d0+Bj-1-(j-1)TF/MB,
其中d0为编码器开始编码时缓存器的初始值,Bj-1为编码器共编码j-1个宏块产生的总比特数,MB为宏块总数。
图2为本发明计算参考量化参数一个实施例的示意图。如图2所示,上述利用量化控制参数Qj计算第j个宏块的参考量化参数的步骤包括:
步骤201,计算Qj的归一化因子qj,其中:
其中Qmax和Qmin分别为量化控制参数的最大值和最小值。
步骤202,计算相邻宏块间量化控制参数的差异因子k,其中:
步骤203,计算参考量化参数其中为:
优选的,上述利用第j-1个宏块的量化参数Mq(j-1)和第j个宏块的参考量化参数确定第j个宏块的量化参数Mq(j)的步骤包括:
其中ρ为最大相邻宏块变化阈值。
在确定第j个宏块的量化参数Mq(j)后,若还有未处理的宏块,则转换量化参数Mq(j)以生成比特数,累加得到编码器共编码j个宏块实际产生的总比特数Bj。然后对于下一个宏块继续进行自适应量化参数控制处理。
编码器利用按上述实施例生成的量化参数,对宏块进行码率控制。从而较好地避免了码率控制中量化参数的过度调节,均匀化同一画面中宏块之间的编码质量。
图3为本发明自适应量化参数控制装置一个实施例的示意图。如图3所示,自适应量化参数控制装置包括目标比特分配单元301、量化控制参数计算单元302、参考量化参数计算单元303和量化参数确定单元304。其中:
目标比特分配单元301,用于根据图像复杂度,为一帧编码图像分配目标比特数TF。
由于本领域技术人员了解如何根据图像复杂度为一帧编码图像分配目标比特数TF,因此在这里不展开描述。
量化控制参数计算单元302,用于针对帧内的第j个宏块,根据缓存器在前j-1个宏块编码结束后的占有率dj,计算第j个宏块的量化控制参数Qj。
参考量化参数计算单元303,用于利用量化控制参数Qj计算第j个宏块的参考量化参数
量化参数确定单元304,用于利用第j-1个宏块的量化参数Mq(j-1)和第j个宏块的参考量化参数确定第j个宏块的量化参数Mq(j)。
基于本发明上述实施例提供的自适应量化参数控制装置,通过利用第j-1个宏块的量化参数和第j个宏块的参考量化参数确定第j个宏块的量化参数。通过自适应调整量化参数,从而较好地避免了码率控制中量化参数的过度调节,均匀化同一画面中宏块之间的编码质量。
优选的,量化控制参数计算单元302具体利用公式:
Qj=31dj/(2×R/F)
计算第j个宏块的量化控制参数Qj,其中R为信道传输速率,F为帧率。
优选的,缓存器在前j-1个宏块编码结束后的占有率dj为:
dj=d0+Bj-1-(j-1)TF/MB,
其中d0为编码器开始编码时缓存器的初始值,Bj-1为编码器共编码j-1个宏块产生的总比特数,MB为宏块总数。
图4为本发明参考量化参数计算单元一个实施例的示意图。如图4所示,参考量化参数计算单元303具体包括归一化因子计算模块401、差异因子计算模块402和参考量化参数计算模块403。其中:
归一化因子计算模块401,用于计算Qj的归一化因子qj,其中
Qmax和Qmin分别为量化控制参数的最大值和最小值。
差异因子计算模块402,用于计算相邻宏块间量化控制参数的差异因子k,其中:
参考量化参数计算模块403,用于计算参考量化参数其中:
优选的,量化参数确定单元304具体利用公式:
确定第j个宏块的量化参数Mq(j),其中ρ为最大相邻宏块变化阈值。
本发明通过结合宏块的历史量化参数与相邻宏块间量化参数的差异控制,合成线性形态的归一化方程,均衡量化参数的调整量,并通过设置最大相邻宏块变化阈值使得量化参数总体差异可控,实现宏块间量化参数的自适应平滑。从而在不降低编码效率的前提下,较好的避免了码率控制方法中量化参数的过度调节,均匀化同一画面中宏块与宏块间的编码质量。能更好地根据带宽条件调整动态视频压缩算法的输出码率,提高输出码率的稳定性和图像质量,改善视频业务受众的最终体验。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
本发明的描述是为了示例和描述起见而给出的,而并不是无遗漏的或者将本发明限于所公开的形式。很多修改和变化对于本领域的普通技术人员而言是显然的。选择和描述实施例是为了更好说明本发明的原理和实际应用,并且使本领域的普通技术人员能够理解本发明从而设计适于特定用途的带有各种修改的各种实施例。
Claims (6)
1.一种自适应量化参数控制方法,其特征在于,包括:
根据图像复杂度,为一帧编码图像分配目标比特数TF;
针对帧内的第j个宏块,根据缓存器在前j-1个宏块编码结束后的占有率dj,计算第j个宏块的量化控制参数Qj;
利用量化控制参数Qj计算第j个宏块的参考量化参数M′q(j),
利用第j-1个宏块的量化参数Mq(j-1)和第j个宏块的参考量化参数M′q(j),确定第j个宏块的量化参数Mq(j),以便避免量化参数的过度调节,均匀化同一画面中各宏块之间的编码质量;
其中,针对帧内的第j个宏块,根据缓存器在前j-1个宏块编码结束后的占有率dj,计算第j个宏块的量化控制参数Qj的步骤包括:
第j个宏块的量化控制参数Qj为:
Qj=31dj/(2×R/F),
其中R为信道传输速率,F为帧率;
利用量化控制参数Qj计算第j个宏块的参考量化参数M′q(j)的步骤包括:
计算Qj的归一化因子qj,其中:
<mrow>
<msub>
<mi>q</mi>
<mi>j</mi>
</msub>
<mo>=</mo>
<mfrac>
<mrow>
<msub>
<mi>Q</mi>
<mi>j</mi>
</msub>
<mo>-</mo>
<msub>
<mi>Q</mi>
<mrow>
<mi>m</mi>
<mi>i</mi>
<mi>n</mi>
</mrow>
</msub>
</mrow>
<mrow>
<msub>
<mi>Q</mi>
<mrow>
<mi>m</mi>
<mi>a</mi>
<mi>x</mi>
</mrow>
</msub>
<mo>-</mo>
<msub>
<mi>Q</mi>
<mrow>
<mi>m</mi>
<mi>i</mi>
<mi>n</mi>
</mrow>
</msub>
</mrow>
</mfrac>
<mo>,</mo>
</mrow>
其中Qmax和Qmin分别为量化控制参数的最大值和最小值;
计算相邻宏块间量化控制参数的差异因子k,其中:
计算参考量化参数M′q(j),其中M′q(j)为:
M′q(j)=Qj·qj(1+k)。
2.根据权利要求1所述的方法,其特征在于,
缓存器在前j-1个宏块编码结束后的占有率dj为:
dj=d0+Bj-1-(j-1)TF/MB,
其中d0为编码器开始编码时缓存器的初始值,Bj-1为编码器共编码j-1个宏块产生的总比特数,MB为宏块总数。
3.根据权利要求1-2中任一项所述的方法,其特征在于,
利用第j-1个宏块的量化参数Mq(j-1)和第j个宏块的参考量化参数M′q(j),确定第j个宏块的量化参数Mq(j)的步骤包括:
其中ρ为最大相邻宏块变化阈值。
4.一种自适应量化参数控制装置,其特征在于,包括目标比特分配单元、量化控制参数计算单元、参考量化参数计算单元和量化参数确定单元,其中:
目标比特分配单元,用于根据图像复杂度,为一帧编码图像分配目标比特数TF;
量化控制参数计算单元,用于针对帧内的第j个宏块,根据缓存器在前j-1个宏块编码结束后的占有率dj,计算第j个宏块的量化控制参数Qj;
参考量化参数计算单元,用于利用量化控制参数Qj计算第j个宏块的参考量化参数M′q(j);
量化参数确定单元,用于利用第j-1个宏块的量化参数Mq(j-1)和第j个宏块的参考量化参数M′q(j),确定第j个宏块的量化参数Mq(j),以便避免量化参数的过度调节,均匀化同一画面中各宏块之间的编码质量;
其中,量化控制参数计算单元具体利用公式:
Qj=31dj/(2×R/F)
计算第j个宏块的量化控制参数Qj,其中R为信道传输速率,F为帧率;
参考量化参数计算单元还包括归一化因子计算模块、差异因子计算模块和参考量化参数计算模块,其中:
归一化因子计算模块,用于计算Qj的归一化因子qj,其中
<mrow>
<msub>
<mi>q</mi>
<mi>j</mi>
</msub>
<mo>=</mo>
<mfrac>
<mrow>
<msub>
<mi>Q</mi>
<mi>j</mi>
</msub>
<mo>-</mo>
<msub>
<mi>Q</mi>
<mrow>
<mi>m</mi>
<mi>i</mi>
<mi>n</mi>
</mrow>
</msub>
</mrow>
<mrow>
<msub>
<mi>Q</mi>
<mrow>
<mi>m</mi>
<mi>a</mi>
<mi>x</mi>
</mrow>
</msub>
<mo>-</mo>
<msub>
<mi>Q</mi>
<mrow>
<mi>m</mi>
<mi>i</mi>
<mi>n</mi>
</mrow>
</msub>
</mrow>
</mfrac>
<mo>,</mo>
</mrow>
Qmax和Qmin分别为量化控制参数的最大值和最小值;
差异因子计算模块,用于计算相邻宏块间量化控制参数的差异因子k,其中:
参考量化参数计算模块,用于计算参考量化参数M′q(j),其中:
M′q(j)=Qj·qj(1+k)。
5.根据权利要求4所述的装置,其特征在于,
缓存器在前j-1个宏块编码结束后的占有率dj为:
dj=d0+Bj-1-(j-1)TF/MB,
其中d0为编码器开始编码时缓存器的初始值,Bj-1为编码器共编码j-1个宏块产生的总比特数,MB为宏块总数。
6.根据权利要求4-5中任一项所述的装置,其特征在于,
量化参数确定单元具体利用公式:
确定第j个宏块的量化参数Mq(j),其中ρ为最大相邻宏块变化阈值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310257862.8A CN104253995B (zh) | 2013-06-26 | 2013-06-26 | 自适应量化参数控制方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310257862.8A CN104253995B (zh) | 2013-06-26 | 2013-06-26 | 自适应量化参数控制方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104253995A CN104253995A (zh) | 2014-12-31 |
CN104253995B true CN104253995B (zh) | 2017-10-20 |
Family
ID=52188473
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310257862.8A Active CN104253995B (zh) | 2013-06-26 | 2013-06-26 | 自适应量化参数控制方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104253995B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106101706B (zh) * | 2016-06-30 | 2019-11-19 | 华为技术有限公司 | 一种图像编码方法及装置 |
CN112752101B (zh) * | 2019-10-29 | 2022-02-22 | 北京新唐思创教育科技有限公司 | 一种视频质量优化方法、装置及存储介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101287112A (zh) * | 2008-06-03 | 2008-10-15 | 方春 | 快速高效应码率控制的优化方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8542730B2 (en) * | 2008-02-22 | 2013-09-24 | Qualcomm, Incorporated | Fast macroblock delta QP decision |
-
2013
- 2013-06-26 CN CN201310257862.8A patent/CN104253995B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101287112A (zh) * | 2008-06-03 | 2008-10-15 | 方春 | 快速高效应码率控制的优化方法 |
Non-Patent Citations (3)
Title |
---|
Rate control of MPEG video coding and recording by rate-quantization modeling;Wei Ding et al;《IEEE Transactions on Circuits and Systems for Video Technology》;19960229;第6卷(第1期);全文 * |
一种低复杂度H.264宏块级码率控制算法;尚书林等;《计算机学报》;20060630;第29卷(第6期);全文 * |
视频编码中码率控制的研究及应用;唐田野;《中国优秀博硕士学位论文全文数据库 (博士) 信息科技辑》;20070115(第1期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN104253995A (zh) | 2014-12-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104079933B (zh) | 适用于hevc的低延时码率控制方法及比特数分配方法 | |
CN101795415B (zh) | 一种视频编码中的码率控制方法及其装置 | |
CN101945275B (zh) | 一种基于感兴趣区域的视频编码方法 | |
CN106331704B (zh) | 一种视频码率控制方法及视频编码装置 | |
CN105530449B (zh) | 编码参数调整方法及装置 | |
US11089305B2 (en) | Video frame coding method during scene change, terminal and storage medium | |
CN101895759B (zh) | 一种h.264码率控制方法 | |
CN104104951B (zh) | Hevc中屏幕内容编码的码率控制方法 | |
CN109862359A (zh) | 基于分层b帧的码率控制方法、装置和电子设备 | |
CN102761741B (zh) | 基于编解码端缓存的视频编码码率控制***和方法 | |
WO2018113191A1 (zh) | 一种码率控制方法及装置 | |
CN101202912A (zh) | 一种平衡码率和图像质量的码率控制方法 | |
CN102137258B (zh) | 一种立体视频码率控制方法 | |
CN105376568A (zh) | 一种abr视频编码码率控制的优化方法 | |
CN102868883B (zh) | 一种视频编码的码率控制方法 | |
CN104253995B (zh) | 自适应量化参数控制方法和装置 | |
US20170295368A1 (en) | Bit rate controlling method and video encoding device | |
CN101184239A (zh) | 一种恒定码率的控制方法 | |
CN101568025B (zh) | 码率控制中的虚拟缓冲区自适应控制方法 | |
CN100448295C (zh) | 一种低复杂度的积分码率控制方法 | |
CN106060548B (zh) | 一种码率控制的方法和装置 | |
CN102724507B (zh) | 一种gpu加速编码器码率控制方法 | |
CN103051897B (zh) | 一种h264视频编码码率控制方法 | |
CN100459713C (zh) | 一种自动比特率控制方法及图像压缩装置 | |
CN106937115A (zh) | 在视频编码中对比特数预测器进行比特数训练的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |