CN111372071B - 一种搜集视频图像异常信息的方法及装置 - Google Patents
一种搜集视频图像异常信息的方法及装置 Download PDFInfo
- Publication number
- CN111372071B CN111372071B CN201811592243.3A CN201811592243A CN111372071B CN 111372071 B CN111372071 B CN 111372071B CN 201811592243 A CN201811592243 A CN 201811592243A CN 111372071 B CN111372071 B CN 111372071B
- Authority
- CN
- China
- Prior art keywords
- abnormal
- video image
- gops
- preset
- information
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N17/00—Diagnosis, testing or measuring for television systems or their details
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/18—Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- General Health & Medical Sciences (AREA)
- Closed-Circuit Television Systems (AREA)
Abstract
本发明公开了一种搜集视频图像异常信息的方法及装置,应用于视频监控系统中的接入管理设备,首先以图像组GOP间隔为单位,在连续多个GOP内出现预设的异常字段时,判断所述GOP对应的视频图像异常,然后分别将预设时间长度的从前端设备接收的原始流数据和输出到解码器的原始流数据写入文件保存。本发明自动及时的判断视频图像是否异常,同时自动搜集维护信息和图像以及码流信息并按照预设的路径进行保存,可以准确的提供图像异常问题定位所有需要的素材,极大的提高了图像异常问题的定位的准确性。
Description
技术领域
本发明属于网络维护技术领域,尤其涉及一种搜集视频图像异常信息的方法及装置。
背景技术
视频监控是安全防范系统的重要组成部分,视频监控以其直观、准确、及时和信息内容丰富而广泛应用于许多场合。近年来,随着计算机、网络以及图像处理、传输技术的飞速发展,视频监控的普及化趋势越来越明显。
在视频监控系统中,网络录像机(NVR/DVR)或一体机等接入管理设备,用来接入前端设备(摄像机等),在视频监控系统中的作用越来越重要。但是在当前的视频监控行业中,前端设备的各种摄像机鱼龙混杂,各种各样的品牌、各种各样的视频流协议以及不同厂家对视频协议存在不同的理解等等现象,导致视频监控的组网也是日趋复杂。接入管理设备在接入这些前端摄像机时,各种视频图像异常(黑屏、花屏、闪屏)等问题时有出现。
对于视频图像异常,需要进行快速的故障定位与处理,缩短用户故障时间,提高用户的业务体验满意度。然而,因为异常问题出现的随机性、概率性,定位问题极其复杂且有难度,所以保存问题的第一现场尤其重要。搜集当前问题阶段的前端摄像机的码流数据、NVR/DVR转码后原始图像码流数据以及原始图像码流数据送到解码芯片的解码状态信息都尤其重要。这些信息第一时间拿到后,可以协助快速准确定位问题出现的阶段点,为提高视频监控系统中异常故障处理效率提供了保证。
在现有技术中一般只是将采集到的异常信息进行压缩打包后存储,但没有公开具体的判断视频图像异常的标准和视频图像异常后的信息搜集方式。如何在接入管理设备中判断视频图像异常,并在视频图像异常后搜集异常信息,仍然是异常定位中的难点和痛点。
发明内容
本发明的目的是提供一种搜集视频图像异常信息的方法及装置,解决现有接入管理设备碰到的图像异常后不能准确搜集异常信息的痛点,增加了接入管理设备的可维护性,为快速解决问题提供了可靠的数据信息支持。
为了实现上述目的,本发明技术方案如下:
一种搜集视频图像异常信息的方法,应用于视频监控系统中的接入管理设备,所述搜集视频图像异常信息的方法,包括:
以图像组GOP间隔为单位,在连续多个GOP内出现预设的异常字段时,判断所述GOP对应的视频图像异常;
分别将预设时间长度的从前端设备接收的原始流数据和输出到解码器的原始流数据写入文件保存。
进一步地,所述搜集视频图像异常信息的方法,还包括:
将当前接入管理设备诊断维护日志进行保存。
进一步地,所述在连续多个GOP内出现预设的异常字段时,判断所述GOP对应的视频图像异常,还包括:
在连续多个GOP内出现预设的异常字段,并且出现的异常字段持续增长,则判断所述GOP对应的视频图像异常。
进一步地,所述从前端设备接收的原始流数据、输出到解码器的原始流数据、诊断维护日志保存在预设的文件路径中。
进一步地,所述判断所述GOP对应的视频图像异常,还包括:
根据GOP内出现的异常字段,判断出异常情况类型;
在分别将预设时间长度的从前端设备接收的原始流数据和输出到解码器的原始流数据写入文件保存时,所述文件的文件名包括通道号、码流类型、时间和异常情况类型。
本发明还提出了一种搜集视频图像异常信息的装置,应用于视频监控系统中的接入管理设备,所述搜集视频图像异常信息的装置,包括:
异常判断模块,用于以图像组GOP间隔为单位,在连续多个GOP内出现预设的异常字段时,判断所述GOP对应的视频图像异常;
数据搜集模块,用于分别将预设时间长度的从前端设备接收的原始流数据和输出到解码器的原始流数据写入文件保存。
进一步地,所述数据搜集模块,还执行如下操作:
将当前接入管理设备诊断维护日志进行保存。
进一步地,所述异常判断模块在连续多个GOP内出现预设的异常字段时,判断所述GOP对应的视频图像异常,还执行如下操作:
在连续多个GOP内出现预设的异常字段,并且出现的异常字段持续增长,则判断所述GOP对应的视频图像异常。
进一步地,所述从前端设备接收的原始流数据、输出到解码器的原始流数据、诊断维护日志保存在预设的文件路径中。
进一步地,所述异常判断模块判断所述GOP对应的视频图像异常,还执行如下操作:
根据GOP内出现的异常字段,判断出异常情况类型;
所述数据搜集模块在分别将预设时间长度的从前端设备接收的原始流数据和输出到解码器的原始流数据写入文件保存时,所述文件的文件名包括通道号、码流类型、时间和异常情况类型。
本发明提出的一种搜集视频图像异常信息的方法及装置,给出了一种接入管理设备(NVR/DVR)具体判断视频异常的标准、判断方法、搜集、保存以及导出方法,对于NVR业务的维护手段具有较高的价值。对视频质量的检测通过预先设定的图像异常字段进行判断,自动检测一段时间内几个或者多个GOP之间的字段异常情况,可以自动及时的判断视频图像是否异常,同时自动搜集维护信息和图像以及码流信息并按照预设的路径进行保存,可以准确的提供图像异常问题定位所有需要的素材。本发明极大的提高了图像异常问题的定位的准确性,增加了一种图像异常定位的手段。
附图说明
图1为本发明实施例搜集视频图像异常信息的方法流程图。
具体实施方式
下面结合附图和实施例对本发明技术方案做进一步详细说明,以下实施例不构成对本发明的限定。
如图1所示,本发明的一个实施例,一种搜集视频图像异常信息的方法,应用于视频监控系统中的接入管理设备,包括:
步骤S1、以GOP间隔为单位,在连续多个GOP内出现预设的异常字段时,判断所述GOP对应的视频图像异常。
在视频监控系统中,视频图像编码后生成GOP(图像组),本实施例以GOP间隔为单位,逐个GOP进行检查。
本实施例预设了异常字段,例如FormatErr(不支持的格式)、StreamUnsprt(不支持)、PicSizeErrSet(图像的宽/高比通道的宽/高大)、PackErr(码流错误)、PrtclNumErrSet(设置的协议参数个数不够)、RefErrSet(设置的参考帧个数不够)、PicBufSizeErrSet(图像Buffer大小不够)等等。本发明包括但不限于上述预设的异常字段,在出现这些异常字段时,本实施例逐个GOP进行检查,看这些异常字段是否连续出现。
在发现连续多个GOP出现这些预设的异常字段时,本实施例判断所述GOP对应的视频图像异常。其中,连续多个GOP,可以预设一定的数量,例如连续3个GOP,或4个,本发明不限于具体的连续GOP个数。可以对所有通道设置相同的连续GOP个数,也可以根据通道所对应的前端设备不同,设置每个通道对应不同的连续GOP个数,这里不再赘述。
本实施例不仅仅判断出是否出现异常,还根据GOP内出现的异常字段,判断出异常情况类型,例如是黑屏还是花屏等。
以下通过具体的实施例,来说明具体的异常判断。
实施例1、连续多个GOP间隔时间内出现这些异常字段:FormatErr(不支持的格式)、StreamUnsprt(不支持)、PicSizeErrSet(图像的宽/高比通道的宽/高大),则认为当前解码异常,可以判断是黑屏的现象。
实施例2、连续多个GOP间隔时间内出现这些异常字段:PackErr(码流错误)、PrtclNumErrSet(设置的协议参数个数不够)、RefErrSet(设置的参考帧个数不够)、PicBufSizeErrSet(图像Buffer大小不够),则认为当前解码异常,可以判断是花屏的现象。
以上实施例仅列举了两种异常现场,对于其他异常现象,根据对应的异常字段进行判断,这里不一一赘述。
本发明的另一个实施例,在连续多个GOP内出现预设的异常字段时,判断所述GOP对应的视频图像异常,还包括:
在连续多个GOP内出现预设的异常字段,并且出现的异常字段持续增长,则判断所述GOP对应的视频图像异常。
通常在出现异常时,往往先出现一个或两个异常字段,随后越来越多的异常字段出现,表现为异常字段的持续增长。在本实施例中,进一步以出现的异常字段持续增长来作为判断依据,将增加判断的准确性。
步骤S2、分别将预设时间长度的从前端设备接收的原始流数据和输出到解码器的原始流数据写入文件保存。
本实施例在图像异常发生后,会持续搜集原始摄像机码流数据和输出到解码器的原始码流写入到Dump文件(在本实施例中也称为Dump码流),以便对该文件进行分析,对问题进行诊断。
本实施例根据图像异常的不同情况,触发Dump码流开关进行码流数据搜集,导出搜集的码流信息和诊断日志。
图像异常的不同情况触发Dump码流的方法如下:
根据以上的异常判断,将送入解码器的ES原始流数据持续的写入文件30秒钟或者根据设备的实际内存大小动态调整写入文件的持续时间。命名为通道号_码流类型_时间_异常情况.es。例如:chn1_主流_花屏_20181121090530.es、chn2_辅流_黑屏_20181121090531.es等等。
抓取输出到解码器ES原始流数据操作的同时,使用tcpdump工具抓取具体出现花屏、黑屏现象的通道的主流或者辅流的从前端设备(摄像机)发送的原始流数据。抓取码流的时间30秒或者根据设备的实际内存大小动态可以调整抓取持续时间。命名为通道号_码流类型_时间_异常情况.pcap。例如:chn1_主流_花屏_20181121090530.pcap、chn2_辅流_花屏_20181121090531.pcap。
本发明的又一个实施例,一种搜集视频图像异常信息的方法,还包括:
将当前接入管理设备诊断维护日志进行保存。
即本发明在保存Dump码流的同时,还搜集当前接入管理设备诊断维护日志进行保存。
本实施例将Dump码流和诊断维护日志保存到预设的文件路径中,默认将接入管理设备的第一槽位硬盘划分一个分区用于放置异常码流(Dump码流)文件和设备诊断维护日志。也可以在任意槽位硬盘划分一个分区用于放置异常码流(Dump码流)文件和设备诊断维护日志。
当每次的异常码流抓取后,搜集当前设备诊断维护日志,命名为systemreport_时间.tgz,例如systemreport_20181121090530.tgz,并将它一起同步写入硬盘该分区,同时删除当前内存中的码流文件和诊断维护日志。
如果分区内的空间满的情况下,分区内的码流文件和诊断维护日志按照时间从历史时间开始依次覆盖。
当用户或者维护人员发现图像解码异常时,导出诊断信息时,这时候将硬盘分区内的信息全部打包导出,用来维护人员进行分析定位排查处理,这里不再赘述。
维护人员根据网络摄像机的原始流数据和输出到解码器的原始流数据对比分析是网络摄像机的原始流数据问题还是输出到解码器的原始流数据的适应性、容错性问题,也可以通过这些码流模拟发包到网络录像机复现或者网络录像机软件增加调试信息,进而可以快速发现和定位图像异常问题。
本发明技术方案,能够提高视频图像异常时信息搜集的准确性和及时性,对于问题定位和使用dump后的码流还原现场场景有很大的效率提高,不需要依赖现场的问题复现也可以快速定位解决问题。即减少了NVR厂家技术人员定位时信息搜集的难度,减少了问题的复现频率,减少了远程的交流。加强了信息搜集的设备主动性和及时性,提高了信息搜集的准确性,为快速定位解决图像异常问题提供了有用的维护数据支撑,给各方都减少了经济支出。
与上述方法对应的,这里还给出了一种搜集视频图像异常信息的装置的实施例,应用于视频监控系统中的接入管理设备,所述搜集视频图像异常信息的装置,包括:
异常判断模块,用于以图像组GOP间隔为单位,在连续多个GOP内出现预设的异常字段时,判断所述GOP对应的视频图像异常;
数据搜集模块,用于分别将预设时间长度的从前端设备接收的原始流数据和输出到解码器的原始流数据写入文件保存。
下面以具体实施例的方式,对本装置进行进一步的阐述,需要说明的是,本装置的操作与上述方法对应,本实施例仅对优选的实施方式进行进一步的阐述,对于其他可选的技术方案,不再进行一一赘述。
本发明的一个实施例,所述数据搜集模块,还执行如下操作:
将当前接入管理设备诊断维护日志进行保存。
本发明的又一个实施例,所述异常判断模块在连续多个GOP内出现预设的异常字段时,判断所述GOP对应的视频图像异常,还执行如下操作:
在连续多个GOP内出现预设的异常字段,并且出现的异常字段持续增长,则判断所述GOP对应的视频图像异常。
本发明的又一个实施例,所述从前端设备接收的原始流数据、输出到解码器的原始流数据、诊断维护日志保存在预设的文件路径中。
本发明的又一个实施例,所述异常判断模块判断所述GOP对应的视频图像异常,还执行如下操作:
根据GOP内出现的异常字段,判断出异常情况类型;
所述数据搜集模块在分别将预设时间长度的从前端设备接收的原始流数据和输出到解码器的原始流数据写入文件保存时,所述文件的文件名包括通道号、码流类型、时间和异常情况类型。
以上实施例仅用以说明本发明的技术方案而非对其进行限制,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。
Claims (8)
1.一种搜集视频图像异常信息的方法,应用于视频监控系统中的接入管理设备,其特征在于,所述搜集视频图像异常信息的方法,包括:
以图像组GOP间隔为单位,在连续多个GOP内出现预设的异常字段时,判断所述GOP对应的视频图像异常;
根据GOP内出现的异常字段,判断出异常情况类型;
分别将预设时间长度的从前端设备接收的原始流数据和输出到解码器的原始流数据写入文件保存,所述文件的文件名包括通道号、码流类型、时间和异常情况类型。
2.根据权利要求1所述的搜集视频图像异常信息的方法,其特征在于,所述搜集视频图像异常信息的方法,还包括:
将当前接入管理设备诊断维护日志进行保存。
3.根据权利要求1所述的搜集视频图像异常信息的方法,其特征在于,所述在连续多个GOP内出现预设的异常字段时,判断所述GOP对应的视频图像异常,还包括:
在连续多个GOP内出现预设的异常字段,并且出现的异常字段持续增长,则判断所述GOP对应的视频图像异常。
4.根据权利要求2所述的搜集视频图像异常信息的方法,其特征在于,所述从前端设备接收的原始流数据、输出到解码器的原始流数据、诊断维护日志保存在预设的文件路径中。
5.一种搜集视频图像异常信息的装置,应用于视频监控系统中的接入管理设备,其特征在于,所述搜集视频图像异常信息的装置,包括:
异常判断模块,用于以图像组GOP间隔为单位,在连续多个GOP内出现预设的异常字段时,判断所述GOP对应的视频图像异常,根据GOP内出现的异常字段,判断出异常情况类型;
数据搜集模块,用于分别将预设时间长度的从前端设备接收的原始流数据和输出到解码器的原始流数据写入文件保存,所述文件的文件名包括通道号、码流类型、时间和异常情况类型。
6.根据权利要求5所述的搜集视频图像异常信息的装置,其特征在于,所述数据搜集模块,还执行如下操作:
将当前接入管理设备诊断维护日志进行保存。
7.根据权利要求5所述的搜集视频图像异常信息的装置,其特征在于,所述异常判断模块在连续多个GOP内出现预设的异常字段时,判断所述GOP对应的视频图像异常,还执行如下操作:
在连续多个GOP内出现预设的异常字段,并且出现的异常字段持续增长,则判断所述GOP对应的视频图像异常。
8.根据权利要求6所述的搜集视频图像异常信息的装置,其特征在于,所述从前端设备接收的原始流数据、输出到解码器的原始流数据、诊断维护日志保存在预设的文件路径中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811592243.3A CN111372071B (zh) | 2018-12-25 | 2018-12-25 | 一种搜集视频图像异常信息的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811592243.3A CN111372071B (zh) | 2018-12-25 | 2018-12-25 | 一种搜集视频图像异常信息的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111372071A CN111372071A (zh) | 2020-07-03 |
CN111372071B true CN111372071B (zh) | 2022-07-19 |
Family
ID=71211387
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811592243.3A Active CN111372071B (zh) | 2018-12-25 | 2018-12-25 | 一种搜集视频图像异常信息的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111372071B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112700742A (zh) * | 2021-01-07 | 2021-04-23 | 中科网联数据科技有限公司 | 广告屏监测系统和方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1642284A (zh) * | 2003-09-19 | 2005-07-20 | 索尼株式会社 | 图像处理设备和方法、程序以及记录介质 |
CN101068210A (zh) * | 2007-06-20 | 2007-11-07 | 中兴通讯股份有限公司 | 多媒体数据传输方法 |
CN101257624A (zh) * | 2007-02-27 | 2008-09-03 | 华为技术有限公司 | 实现随机访问的方法及解码器 |
CN102917242A (zh) * | 2012-09-10 | 2013-02-06 | 福州瑞芯微电子有限公司 | 一种多格式视频解码器的测试系统和测试方法 |
CN106341687A (zh) * | 2016-09-30 | 2017-01-18 | 努比亚技术有限公司 | 一种定位视频解码异常的方法及装置 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7391434B2 (en) * | 2004-07-27 | 2008-06-24 | The Directv Group, Inc. | Video bit stream test |
CN101998137B (zh) * | 2009-08-21 | 2016-09-07 | 华为技术有限公司 | 视频质量参数获取方法和装置及电子设备 |
SG181131A1 (en) * | 2010-01-11 | 2012-07-30 | Ericsson Telefon Ab L M | Technique for video quality estimation |
ES2394779T3 (es) * | 2010-07-30 | 2013-02-05 | Deutsche Telekom Ag | Procedimiento para estimar el tipo de la estructura del grupo de imágenes de una pluralidad de fotogramas de vídeo en una secuencia de vídeo |
EP2649801B1 (en) * | 2010-12-10 | 2015-04-15 | Deutsche Telekom AG | Method and apparatus for objective video quality assessment based on continuous estimates of packet loss visibility |
CN102572517A (zh) * | 2011-12-21 | 2012-07-11 | 深圳市同洲视讯传媒有限公司 | 一种码流切换的方法、装置、服务器和系统 |
CN103647963A (zh) * | 2013-12-04 | 2014-03-19 | 北京邮电大学 | 基于GoP场景复杂度的视频质量评价方法 |
CN107770617B (zh) * | 2016-08-23 | 2020-07-14 | 华为技术有限公司 | 一种实现视频质量评估的方法、装置和系统 |
-
2018
- 2018-12-25 CN CN201811592243.3A patent/CN111372071B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1642284A (zh) * | 2003-09-19 | 2005-07-20 | 索尼株式会社 | 图像处理设备和方法、程序以及记录介质 |
CN101257624A (zh) * | 2007-02-27 | 2008-09-03 | 华为技术有限公司 | 实现随机访问的方法及解码器 |
CN101068210A (zh) * | 2007-06-20 | 2007-11-07 | 中兴通讯股份有限公司 | 多媒体数据传输方法 |
CN102917242A (zh) * | 2012-09-10 | 2013-02-06 | 福州瑞芯微电子有限公司 | 一种多格式视频解码器的测试系统和测试方法 |
CN106341687A (zh) * | 2016-09-30 | 2017-01-18 | 努比亚技术有限公司 | 一种定位视频解码异常的方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN111372071A (zh) | 2020-07-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10681574B2 (en) | Video quality monitoring | |
CN102387038B (zh) | 基于视频检测及综合网管的网络视频故障定位系统及方法 | |
US5442639A (en) | Method and apparatus for monitoring a communications network | |
CN102118629B (zh) | 基于监控平台的网络视频监控服务质量保障系统及方法 | |
US20120260277A1 (en) | Multimedia Test Systems | |
US10015529B2 (en) | Video image quality diagnostic system and method thereof | |
CN202282837U (zh) | 视频质量诊断系统 | |
EP3425909B1 (en) | Video quality monitoring | |
KR101794005B1 (ko) | 네트워크 카메라 에러 검출 시스템 | |
KR101570516B1 (ko) | 산업용 비전통합 공정 관리 시스템 | |
CN103731631B (zh) | 一种传输视频图像的方法、装置及系统 | |
CN103152601A (zh) | 一种智能报障摄像机及其网络管理客户端系统 | |
CN107743228A (zh) | 视频质量检测方法、监测设备及存储介质 | |
CN108391089B (zh) | 多路摄像机的监控流推送方法和装置以及监控系统 | |
CN106851408A (zh) | 一种电视机投屏监测装置及方法 | |
US10750126B2 (en) | Systems and methods of measuring quality of video surveillance infrastructure | |
CN103166808A (zh) | 一种iptv业务质量的监测方法,装置及系统 | |
CN107800989B (zh) | 基于动态帧率检测的视频显示方法、系统及网络录像机 | |
US10367683B2 (en) | Method and system to identify a source of signal impairment | |
CN112235161A (zh) | 一种基于fsm的摄像头网络协议模糊测试方法 | |
CN111372071B (zh) | 一种搜集视频图像异常信息的方法及装置 | |
CN103036808B (zh) | 一种去除网络抖动的方法及系统 | |
CN116723131B (zh) | Ipc网络摄像头传输性能监测方法及系统 | |
CN105898293A (zh) | 视频显示异常的定位方法和装置 | |
US20210021461A1 (en) | Switch monitoring system and method of use |
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 |