CN110287374B - 一种基于分布一致性的自注意力视频摘要方法 - Google Patents
一种基于分布一致性的自注意力视频摘要方法 Download PDFInfo
- Publication number
- CN110287374B CN110287374B CN201910514548.0A CN201910514548A CN110287374B CN 110287374 B CN110287374 B CN 110287374B CN 201910514548 A CN201910514548 A CN 201910514548A CN 110287374 B CN110287374 B CN 110287374B
- Authority
- CN
- China
- Prior art keywords
- video
- vector
- self
- importance score
- inputting
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/70—Information retrieval; Database structures therefor; File system structures therefor of video data
- G06F16/73—Querying
- G06F16/738—Presentation of query results
- G06F16/739—Presentation of query results in form of a video summary, e.g. the video summary being a video sequence, a composite still image or having synthesized frames
-
- 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/049—Temporal neural networks, e.g. delay elements, oscillating neurons or pulsed inputs
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Artificial Intelligence (AREA)
- Biophysics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Multimedia (AREA)
- Databases & Information Systems (AREA)
- Image Analysis (AREA)
Abstract
一种基于分布一致性的自注意力视频摘要方法:将视频以帧的形式输入到卷积神经网络中提取视频帧的特征向量;将视频帧的特征向量输入到双向长短期记忆网络中进行编码训练,得到初始的编码特征序列;将初始的编码特征序列中的编码向量输入到自注意力机制中,得到编码特征序列;将编码特征序列中加权后的编码特征向量依次输入到长短期记忆网络中进行训练解码,生成对应的重要性分数向量;将重要性分数向量输入到用于衡量编解码器网络模型的MK损失函数中,在标签向量的约束和监督下,不断地反馈并调整个网络的参数,得到最终的帧级重要性分数,选取相应视频的关键镜头和关键帧集合并输出视频摘要的结果。本发明得到的重要性分数与标签具有分布一致性。
Description
技术领域
本发明涉及一种自注意力视频摘要方法。特别是涉及一种基于分布一致性的自注意力视频摘要方法。
背景技术
随着深度学习和硬件设备的不断发展,人工智能技术的应用在越来越多的领域取得了很好的结果,例如计算机视觉。特别的,深度学习在视频摘要的领域中运用的越来越广泛。在基于深度学习的视频摘要领域中,将该任务看作是处理序列对序列的问题。而在深度学习的模型中,卷积神经网络常用于视频帧特征的提取,以及循环神经网络可以有效的处理关于序列的问题,并解决相关任务中存在的问题。而在卷积神经网络中,GoogLeNet,Vgg-16和ResNet-50等较为常用。而在循环神经网络中,长短时记忆网络(LSTM)和双向长短时记忆网络(Bi-LSTM)等相关变体最为主流。
发明内容
本发明所要解决的技术问题是,提供一种能够实现生成的重要性分数向量与标签向量的分布一致的基于分布一致性的自注意力视频摘要方法。
本发明所采用的技术方案是:一种基于分布一致性的自注意力视频摘要方法,包括如下步骤:
1)将视频以帧的形式输入到卷积神经网络中提取视频帧的特征向量;
2)将提取的视频帧的特征向量以n个为一组,即X={x1,x2,x3…xn},输入到双向长短期记忆网络之中进行编码训练,得到初始的编码特征序列H={h1,h2,h3…hn};
3)将初始的编码特征序列H中的n个编码向量h1,h2,h3…hn输入到自注意力机制中,得到由n个加权后的编码特征向量构成的自注意力机制加权后的编码特征序列P:
4)将自注意力机制加权后的编码特征序列P中n个加权后的编码特征向量依次输入到长短期记忆网络中进行训练解码,其中,每n个加权后的编码特征向量生成一个相对应的重要性分数向量y';
5)将生成的重要性分数向量y'输入到用于衡量编解码器网络模型的MK损失函数中,在标签向量y的约束和监督下,不断地反馈并调整个网络的参数,并得到最终的帧级重要性分数,根据最终的帧级重要性分数,选取相应视频的关键镜头和关键帧集合并输出视频摘要的结果。
步骤1)是将输入的视频每15帧进行初步的采样,再将采样的视频帧输入到卷积神经网络中得到视频帧的特征向量。
步骤3)所述的自注意力机制,是将n个编码向量h1,h2,h3…hn依次经过一维卷积计算、Sigmoid激活函数计算和Softmax函数计算分别获取权重,并先后通过元素对应相乘和相加的计算过程进行权重的分配,从而得到n个加权后的编码特征向量,构成自注意力机制加权后的编码特征序列P。
步骤5)包括:
(1)将生成的重要性分数向量y'和标签向量y输入到如下Softmax函数中分别进行归一化处理,
sy'=softmax(y') (2)
sy=softmax(y) (3)
其中,Softmax(·)为Softmax函数;
从而,得到重要性分数向量y'和标签向量y中每一个元素的重要程度,即重要性分数向量y'和标签向量y的分布概率;
(2)利用重要性分数向量y'和标签向量y的分布概率,通过如下MK损失函数对重要性分数向量y'和标签向量y进行分布的度量:
(3)通过MK损失函数衡量重要性分数向量y'和标签向量y之间的误差,从而指导训练,最终得到帧级重要性分数,使用基于核的时域分割算法将输入视频分割成互不相交的镜头,结合得到的镜头和帧级重要性分数,将视频摘要的生成看作0-1背包问题,采用动态规划求解,生成最终的自注意力视频摘要。
本发明的一种基于分布一致性的自注意力视频摘要方法,通过提出的自注意力机制对特征信息进行充分利用,并使用提出的MK损失函数使深度模型训练得到的重要性分数与标签具有分布一致性。本发明具有如下效果:
1、新颖性:首次提出了适用于帧间的自注意力机制,解决了对于视频帧短时信息利用不充分的问题。并首次提出了MK损失函数规范视频摘要训练过程,从而实现了生成的重要性分数向量与标签向量的分布一致。
2、有效性:本发明提出的自注意力机制可以使视频帧在没有外部信息干扰的情况下,仅利用当前短时的自身信息而实现自身的权重分配,从而放大特征之间信息的差异,使每一个帧的特征都具备判别性,充分利用每一个帧的信息。与此同时,MK损失函数可以使生成的重要性分数向量和标签向量分布更加一致,使训练结果更加唯一,有较高的鲁棒性,避免进入到局部最优解。
3、实用性:本发明可以使视频摘要任务在深度学习训练的过程中得到更加具有代表性,多样性,更加简洁凝练且可靠的视频关键帧。从而进一步有效的改善了视频摘要技术,使视频存储数据量太大,视频查找费时费力带来的诸多问题可以得到解决。
附图说明
图1是本发明一种基于分布一致性的自注意力视频摘要方法的流程;
图2是本发明中自注意力结构示意图。
具体实施方式
下面结合实施例和附图对本发明的一种基于分布一致性的自注意力视频摘要方法做出详细说明。
本发明的一种基于分布一致性的自注意力视频摘要方法,涉及计算机视觉,机器学习,人工智能领域,特别是涉及深度学习中视频摘要的领域。具体的,在视频摘要的领域中,视频摘要技术是对视频进行多样性和代表性的提取关键帧,从而达到压缩视频,提高存储效率以及方便查询的目的。为了可以充分利用每一个视频帧的信息从而使视频帧的特征更具有判别性,本发明构建了一种自注意力的机制。在该机制中,本发明仅使用当前短时的视频帧信息去引导并关注视频帧原本的特征,从而达到优化特征的目的。
本发明的一种基于分布一致性的自注意力视频摘要方法,包括如下步骤:
1)将视频以帧的形式输入到卷积神经网络(例如GoogLeNet、Vgg-16和ResNet-50等)中提取视频帧的特征向量;是将输入的视频每15帧进行初步的采样,再将采样的视频帧输入到卷积神经网络中得到视频帧的特征向量。
2)将提取的视频帧的特征向量以n个为一组,即X={x1,x2,x3…xn},输入到双向长短期记忆网络(Bi-LSTM)之中进行编码训练,得到初始的编码特征序列H={h1,h2,h3…hn};
3)将初始的编码特征序列H中的n个编码向量h1,h2,h3…hn输入到自注意力机制中,得到由n个加权后的编码特征向量构成的自注意力机制加权后的编码特征序列P:
所述的自注意力机制,如公式(1),是将n个编码向量h1,h2,h3…hn依次经过一维卷积计算、Sigmoid激活函数计算和Softmax函数计算分别获取权重,并先后通过元素对应相乘和相加的计算过程进行权重的分配,从而得到n个加权后的编码特征向量,构成自注意力机制加权后的编码特征序列P。
4)将自注意力机制加权后的编码特征序列P中n个加权后的编码特征向量依次输入到长短期记忆网络(LSTM)中进行训练解码,其中,每n个加权后的编码特征向量生成一个相对应的重要性分数向量y';
5)由于重要性分数高的视频帧被选为关键帧,并且关键帧可以有效的对视频进行摘要,所以可以认为关键帧比其他帧包含更多的信息量。因此,基于相对熵的思想,将生成的重要性分数向量y'输入到用于衡量编解码器网络的MK损失函数中,如公式(2)—(4),在标签向量y的约束和监督下,不断地反馈并调整个网络的参数,并得到最终的帧级重要性分数,根据最终的帧级重要性分数,选取相应视频的关键镜头和关键帧集合并输出视频摘要的结果。具体包括:
(1)将生成的重要性分数向量y'和标签向量y输入到如下Softmax函数中分别进行归一化处理,
sy'=softmax(y') (2)
sy=softmax(y) (3)
其中,Softmax(·)为Softmax函数;
从而,得到重要性分数向量y'和标签向量y中每一个元素的重要程度,即重要性分数向量y'和标签向量y的分布概率;
(2)利用重要性分数向量y'和标签向量y的分布概率,通过如下MK损失函数对重要性分数向量y'和标签向量y进行分布的度量:
其中,m是元素个数;log(·)为log函数;sy'和sy分别为Softmax函数提取的重要性分数向量y'和标签向量y的分布概率;Lmk为MK损失函数;λ为调节距离度量和分布度量的比重参数,其中的分布度量的公式即为KL散度(Kullback-Leibler Divergence);
(3)通过MK损失函数衡量重要性分数向量y'和标签向量y之间的误差,从而指导训练,最终得到帧级重要性分数。使用基于核的时域分割(Kernel Temporal Segmentation)算法将输入视频分割成互不相交的镜头。结合得到的镜头和帧级重要性分数,将视频摘要的生成看作0-1背包问题,采用动态规划求解,生成最终的自注意力视频摘要。
本发明的一种基于分布一致性的自注意力视频摘要方法中提出的MK损失函数根据标签向量y对生成的重要性分数向量y'进行约束和监督,结合距离度量和分布度量而达到二者分布一致性的目的。最终通过不断地反馈与训练得到视频摘要的最终重要性分数向量,并根据该向量选取视频中的关键帧从而形成视频摘要。
Claims (3)
1.一种基于分布一致性的自注意力视频摘要方法,其特征在于,包括如下步骤:
1)将视频以帧的形式输入到卷积神经网络中提取视频帧的特征向量;
2)将提取的视频帧的特征向量以n个为一组,即X={x1,x2,x3L xn},输入到双向长短期记忆网络之中进行编码训练,得到初始的编码特征序列H={h1,h2,h3L hn};
3)将初始的编码特征序列H中的n个编码向量h1,h2,h3L hn输入到自注意力机制中,得到由n个加权后的编码特征向量构成的自注意力机制加权后的编码特征序列P:
4)将自注意力机制加权后的编码特征序列P中n个加权后的编码特征向量依次输入到长短期记忆网络中进行训练解码,其中,每n个加权后的编码特征向量生成一个相对应的重要性分数向量y';
5)将生成的重要性分数向量y'输入到用于衡量编解码器网络模型的MK损失函数中,在标签向量y的约束和监督下,不断地反馈并调整个网络的参数,并得到最终的帧级重要性分数,根据最终的帧级重要性分数,选取相应视频的关键镜头和关键帧集合并输出视频摘要的结果;包括:
(1)将生成的重要性分数向量y'和标签向量y输入到如下Softmax函数中分别进行归一化处理,
sy'=softmax(y') (2)
sy=softmax(y) (3)
其中,Softmax(·)为Softmax函数;
从而,得到重要性分数向量y'和标签向量y中每一个元素的重要程度,即重要性分数向量y'和标签向量y的分布概率;
(2)利用重要性分数向量y'和标签向量y的分布概率,通过如下MK损失函数对重要性分数向量y'和标签向量y进行分布的度量:
(3)通过MK损失函数衡量重要性分数向量y'和标签向量y之间的误差,从而指导训练,最终得到帧级重要性分数,使用基于核的时域分割算法将输入视频分割成互不相交的镜头,结合得到的镜头和帧级重要性分数,将视频摘要的生成看作0-1背包问题,采用动态规划求解,生成最终的自注意力视频摘要。
2.根据权利要求1所述的一种基于分布一致性的自注意力视频摘要方法,其特征在于,步骤1)是将输入的视频每15帧进行初步的采样,再将采样的视频帧输入到卷积神经网络中得到视频帧的特征向量。
3.根据权利要求1所述的一种基于分布一致性的自注意力视频摘要方法,其特征在于,步骤3)所述的自注意力机制,是将n个编码向量h1,h2,h3L hn依次经过一维卷积计算、Sigmoid激活函数计算和Softmax函数计算分别获取权重,并先后通过元素对应相乘和相加的计算过程进行权重的分配,从而得到n个加权后的编码特征向量,构成自注意力机制加权后的编码特征序列P。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910514548.0A CN110287374B (zh) | 2019-06-14 | 2019-06-14 | 一种基于分布一致性的自注意力视频摘要方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910514548.0A CN110287374B (zh) | 2019-06-14 | 2019-06-14 | 一种基于分布一致性的自注意力视频摘要方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110287374A CN110287374A (zh) | 2019-09-27 |
CN110287374B true CN110287374B (zh) | 2023-01-03 |
Family
ID=68004601
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910514548.0A Active CN110287374B (zh) | 2019-06-14 | 2019-06-14 | 一种基于分布一致性的自注意力视频摘要方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110287374B (zh) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110933518B (zh) * | 2019-12-11 | 2020-10-02 | 浙江大学 | 一种利用卷积多层注意力网络机制生成面向查询的视频摘要的方法 |
CN111031390B (zh) * | 2019-12-17 | 2022-10-21 | 南京航空航天大学 | 一种输出大小固定序列行列式点过程视频概要方法 |
CN111984820B (zh) * | 2019-12-19 | 2023-10-27 | 重庆大学 | 一种基于双自注意力胶囊网络的视频摘要方法 |
CN113453040B (zh) * | 2020-03-26 | 2023-03-10 | 华为技术有限公司 | 短视频的生成方法、装置、相关设备及介质 |
CN111460979A (zh) * | 2020-03-30 | 2020-07-28 | 上海大学 | 一种基于多层时空框架的关键镜头视频摘要方法 |
CN111563160B (zh) * | 2020-04-15 | 2023-03-31 | 华南理工大学 | 基于全局语义的文本自动摘要方法、装置、介质及设备 |
CN111526434B (zh) * | 2020-04-24 | 2021-05-18 | 西北工业大学 | 基于转换器的视频摘要方法 |
CN112052841B (zh) * | 2020-10-12 | 2021-06-29 | 腾讯科技(深圳)有限公司 | 一种视频摘要的生成方法以及相关装置 |
CN112908465B (zh) * | 2021-01-04 | 2023-06-02 | 西北工业大学 | 基于异常检测和半监督的超声关键帧自主识别方法 |
CN113299315B (zh) * | 2021-07-27 | 2021-10-15 | 中国科学院自动化研究所 | 一种无需原始数据存储的持续性学习生成语音特征的方法 |
CN114567798B (zh) * | 2022-02-28 | 2023-12-12 | 南京烽火星空通信发展有限公司 | 一种针对互联网短视频变种的溯源方法 |
CN114979801A (zh) * | 2022-05-10 | 2022-08-30 | 上海大学 | 基于双向卷积长短期记忆网络的动态视频摘要算法及系统 |
CN114996514A (zh) * | 2022-05-31 | 2022-09-02 | 北京达佳互联信息技术有限公司 | 文本生成方法、装置、计算机设备及介质 |
CN115442660B (zh) * | 2022-08-31 | 2023-05-19 | 杭州影象官科技有限公司 | 自监督对抗视频摘要提取方法、装置、设备和存储介质 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106296631A (zh) * | 2015-05-20 | 2017-01-04 | 中国科学院沈阳自动化研究所 | 一种基于注意力先验的胃镜视频摘要方法 |
CN107484017A (zh) * | 2017-07-25 | 2017-12-15 | 天津大学 | 基于注意力模型的有监督视频摘要生成方法 |
CN108024158A (zh) * | 2017-11-30 | 2018-05-11 | 天津大学 | 利用视觉注意力机制的有监督视频摘要提取方法 |
CN108427713A (zh) * | 2018-02-01 | 2018-08-21 | 宁波诺丁汉大学 | 一种用于自制视频的视频摘要方法及系统 |
CN108804578A (zh) * | 2018-05-24 | 2018-11-13 | 南京理工大学 | 基于一致性片段生成的无监督视频摘要方法 |
CN108848422A (zh) * | 2018-04-19 | 2018-11-20 | 清华大学 | 一种基于目标检测的视频摘要生成方法 |
CN109684912A (zh) * | 2018-11-09 | 2019-04-26 | 中国科学院计算技术研究所 | 一种基于信息损失函数的视频描述方法和系统 |
CN109743642A (zh) * | 2018-12-21 | 2019-05-10 | 西北工业大学 | 基于分层循环神经网络的视频摘要生成方法 |
CN109800327A (zh) * | 2018-12-04 | 2019-05-24 | 天津大学 | 一种基于多跳注意力的视频摘要方法 |
-
2019
- 2019-06-14 CN CN201910514548.0A patent/CN110287374B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106296631A (zh) * | 2015-05-20 | 2017-01-04 | 中国科学院沈阳自动化研究所 | 一种基于注意力先验的胃镜视频摘要方法 |
CN107484017A (zh) * | 2017-07-25 | 2017-12-15 | 天津大学 | 基于注意力模型的有监督视频摘要生成方法 |
CN108024158A (zh) * | 2017-11-30 | 2018-05-11 | 天津大学 | 利用视觉注意力机制的有监督视频摘要提取方法 |
CN108427713A (zh) * | 2018-02-01 | 2018-08-21 | 宁波诺丁汉大学 | 一种用于自制视频的视频摘要方法及系统 |
CN108848422A (zh) * | 2018-04-19 | 2018-11-20 | 清华大学 | 一种基于目标检测的视频摘要生成方法 |
CN108804578A (zh) * | 2018-05-24 | 2018-11-13 | 南京理工大学 | 基于一致性片段生成的无监督视频摘要方法 |
CN109684912A (zh) * | 2018-11-09 | 2019-04-26 | 中国科学院计算技术研究所 | 一种基于信息损失函数的视频描述方法和系统 |
CN109800327A (zh) * | 2018-12-04 | 2019-05-24 | 天津大学 | 一种基于多跳注意力的视频摘要方法 |
CN109743642A (zh) * | 2018-12-21 | 2019-05-10 | 西北工业大学 | 基于分层循环神经网络的视频摘要生成方法 |
Non-Patent Citations (1)
Title |
---|
基于解码器注意力机制的视频摘要;冀中;《天津大学学报》;20181030;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN110287374A (zh) | 2019-09-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110287374B (zh) | 一种基于分布一致性的自注意力视频摘要方法 | |
Wu et al. | Unsupervised deep video hashing via balanced code for large-scale video retrieval | |
Xu et al. | Multi-view learning with incomplete views | |
Chen et al. | Residual enhanced visual vectors for on-device image matching | |
CN107122411B (zh) | 一种基于离散多视图哈希的协同过滤推荐方法 | |
Mei et al. | Patch based video summarization with block sparse representation | |
CN111078911A (zh) | 一种基于自编码器的无监督哈希方法 | |
CN109871736B (zh) | 自然语言描述信息的生成方法及装置 | |
CN112883227B (zh) | 一种基于多尺度时序特征的视频摘要生成方法和装置 | |
Wei et al. | Compact MQDF classifiers using sparse coding for handwritten Chinese character recognition | |
Ma et al. | Error correcting input and output hashing | |
CN112560456A (zh) | 一种基于改进神经网络的生成式摘要生成方法和系统 | |
Yang et al. | Balanced and hierarchical relation learning for one-shot object detection | |
CN103914527A (zh) | 一种基于新编码方式的遗传规划算法的图形图像识别与匹配方法 | |
Yushchenko et al. | Markov decision process for video generation | |
Xu et al. | Dual-stream contrastive learning for channel state information based human activity recognition | |
Anirudh et al. | Diversity promoting online sampling for streaming video summarization | |
Jing et al. | News text classification and recommendation technology based on wide & deep-bert model | |
CN110135465B (zh) | 模型参数表示空间大小估计方法及装置、推荐方法 | |
CN112487231B (zh) | 一种基于双图正则化约束和字典学习的图像自动标注方法 | |
CN114647758A (zh) | 基于Transformer和深度强化学习的视频摘要生成网络 | |
Han et al. | Non-negativity and dependence constrained sparse coding for image classification | |
Yang et al. | A generation-based text steganography by maintaining consistency of probability distribution | |
Sanchez et al. | Compressed fisher vectors for large-scale image classification | |
Feng et al. | Video Summarization with Self-Attention Based Encoder-Decoder Framework |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |