基于图片的在线实时视频的检索方法

文档序号:10655166阅读:203来源:国知局
基于图片的在线实时视频的检索方法
【专利摘要】本发明公开了一种基于图片的在线实时视频检索方法,以适用于在线实时视频的检索。其步骤为:(1)服务器端提取视频流特征数据过程,具体为服务器端实时收录多个视频流,取所述每个视频流中最近5~1000秒的视频,提取所述每个视频的视频特征数据作为对应视频流的特征数据;(2)循环执行步骤(1),直到服务器端接收到客户端发起的检索请求后,进入步骤(3);所述客户端发起检索请求过程,具体为客户端获取一张或多张图片,提取所述一张或多张图片的特征数据,将所述图片的特征数据上传到服务器端;(3)检索过程,具体为取步骤(2)所得图片的特征数据与步骤(1)所得每一个视频流的特征数据匹配;随后回到步骤(1)。
【专利说明】
基于图片的在线实时视频的检索方法
技术领域
[0001]本发明涉及一种基于图片的在线实时视频的检索方法。【背景技术】
[0002]最近十多年,计算机视觉技术飞速发展,如David G.Lowe 2004年在 Internat1nal Journal of Computer Vis1n 上发表的〃Distinctive Image Features from Scale-1nvariant Keypoints.",使得基于图像内容的搜索变得实用,进而使得基于视频的内容的视频搜索变得可能。再加上最近十年来,计算机硬件设备的计算能力提高以及硬件成本的下降,以及各种云计算平台的出现,如亚马逊的E2C,计算的成本也大大下降, 这使得基于视频内容的搜索也渐渐变得实用。目前主流的技术方案大多借鉴自图像检索的方法,而且已经出现相关的标准,具体可参见IS0/IEC DIS 15938-13。但目前的主流方案均考虑的为离线视频检索,此类方案首先对视频库内的全部视频进行索引,此索引一般包括两个部分:提取视频特征数据和索引特征数据。其中基于内容的视频检索,其视频特征数据通常不仅包括局部描述子,还包括集合局部描述子而成的全局描述子,此二者的计算量都不小;同时,主流的方案里的特征数据索引一般根据二进制化后的全局描述子建立MBIT (Mult1-block Index Table),可以参考IS0/IEC JTC1/SC29的测试模型 Test Model 13: Compact Descriptors for Visual Search,但索引的建立会花费大量的时间。对于离线视频的搜索,延时是可以容忍的,但是对于在线实时视频检索,若要保证实时性,为了应对大的计算量,将会使得硬件投入的成本居高不下;然而由于在线视频检索的应用场合有限, 例如交通摄像头搜索、电视台节目互动等,这些场合里实时视频流的数量并不是特别大,建立索引并不会带来太大的性能提升。因此,目前通用的视频检索技术并不适用于在线实时视频的检索。
【发明内容】

[0003]本发明的目的在于克服现有技术的不足,提供一种基于图片的在线实时视频的检索方法,该方法省略索引过程,不使用全局描述子,有效保证实时性,该方法计算简单、易于实现。
[0004]本发明的目的是通过以下技术方案来实现的:基于图片的在线实时视频的检索方法,它包括如下步骤:S1:服务器端提取实时收录多个视频流,取所述每个视频流中最近5?1000秒的视频, 提取所述每个视频的视频特征数据作为对应视频流的特征数据;S2:循环执行步骤S1,直到接收到客户端检索请求;S3:客户端获取一张或多张图片,计算出图片的二进制特征,按照图片获取的先后顺序将图片的二进制特征上传到服务器端请求检索;S4:将客户端图片的二进制特征与每一个视频流的二进制特征数据进行匹配,匹配值最大者,若大于了阈值,则对应视频流为要检索的视频流,否则检索失败;S5:输出检索结果。
[0005]所述的提取视频特征数据包括如下子步骤:S11:取视频中的一帧或多帧;S12:提取S11中每一帧的SIFT特征点,选取所得SIFT特征点中的多个,计算所选取的 SIFT特征点的偶数维SIFT描述子;S13:将S12所得所有偶数维SIFT描述子压缩为有16?512个二进制位的二进制特征。
[0006]所述的计算图片的二进制特征包括如下子步骤:S31:从图片中提取SIFT特征点,选取所得SIFT特征点中的多个,计算所选SIFT特征点的SIFT描述子;S32:将S31所得所有SIFT描述子压缩为有16?512个二进制位的二进制特征。
[0007]所述的S4中进行二进制特征数据匹配的同时还要记录匹配值。
[0008]所述的将偶数维SIFT描述子压缩为有16?512个二进制位的二进制特征,具体方法为:N维的SIFT描述子可看成N个数,对所述N个数任意两两组合,得到N/2个数对,这N/2 个数对任意排列,排列后的每个数对对应一个二进制位,其中N为偶数,而压缩将得到一个有N/2个二进制位的二进制特征,每一个数对得到一个二进制特征,具体为将每一个数对的第一个数和第二个数进行比较,第一个数大于第二个数,则压缩得到对应二进制位的二进制特征为1;第一个数小于第二个数,则压缩得到对应二进制位的二进制特征为〇。
[0009]本发明的有益效果是:本发明提供了一种基于图片的在线实时视频的检索方法, 由于没有了索引过程,也不使用全局描述子,实时性得到了保证。本发明还引入了一种新的对SIFT描述子进行二值化压缩的方法,该方法计算简单、易于实现,而压缩之后的二进制特征,其匹配也使用的汉明距离,在保证性能的同时,也实现了低计算量带来的高效率。【附图说明】
[0010]图1为本发明所述在线实时视频搜索方法流程图;图2为实施例系统示意图;图3为128维SIFT描述子的128个元素进行编号示意图。【具体实施方式】
[0011]下面结合附图进一步详细描述本发明的技术方案,但本发明的保护范围不局限于以下所述。
[0012]图1为本发明所述在线实时视频搜索方法流程图,本例将该方法实施,以一台或多台计算机为服务器端,以智能手机为客户端,服务器端和客户端采用同样的SIFT描述子压缩方法。图2为本实施例系统示意图。
[0013]服务器端实时收录10个视频流,提取每个视频流的特征数据,可按如下方式实施: 对输入的每一个视频流,均按照以下方法处理:A.取视频流最近的20秒的视频;B.在上述的所得的20秒的视频中,每隔0.5秒抽一帧;C.对抽出来每一帧进行如下处理:C-1.从帧中提取出该帧的所有SIFT特征点,按照响应强度进行排序,选取响应强度最强的2000个SIFT特征点(不足2000个则全部选取),计算它们的128维的SIFT描述子。 [〇〇14]C-2.图3为对每一个128维SIFT描述子的128个元素分别进行编号,使用如下规则将每一个128维SIFT描述子压缩为一个有64个二进制位的二进制特征并保存;以下对128维 SIFT描述子中元素的引用,均参照图3中的示意的编号:如果0号元素大于80号元素,压缩所得第1个二进制位为1,否则为0;如果1号元素大于81号元素,压缩所得第2个二进制位为1,否则为0;如果2号元素大于82号元素,压缩所得第3个二进制位为1,否则为0;如果3号元素大于83号元素,压缩所得第4个二进制位为1,否则为0;如果4号元素大于84号元素,压缩所得第5个二进制位为1,否则为0;如果5号元素大于85号元素,压缩所得第6个二进制位为1,否则为0;如果6号元素大于86号元素,压缩所得第7个二进制位为1,否则为0;如果7号元素大于87号元素,压缩所得第8个二进制位为1,否则为0;如果40号元素大于120号元素,压缩所得第9个二进制位为1,否则为0;如果41号元素大于121号元素,压缩所得第10个二进制位为1,否则为0;如果42号元素大于122号元素,压缩所得第11个二进制位为1,否则为0;如果43号元素大于123号元素,压缩所得第12个二进制位为1,否则为0;如果44号元素大于124号元素,压缩所得第13个二进制位为1,否则为0;如果45号元素大于125号元素,压缩所得第14个二进制位为1,否则为0;如果46号元素大于126号元素,压缩所得第15个二进制位为1,否则为0;如果47号元素大于127号元素,压缩所得第16个二进制位为1,否则为0;如果24号元素大于72号元素,压缩所得第17个二进制位为1,否则为0;如果25号元素大于73号元素,压缩所得第18个二进制位为1,否则为0;如果26号元素大于74号元素,压缩所得第19个二进制位为1,否则为0;如果27号元素大于75号元素,压缩所得第20个二进制位为1,否则为0;如果28号元素大于76号元素,压缩所得第21个二进制位为1,否则为0;如果29号元素大于77号元素,压缩所得第22个二进制位为1,否则为0;如果30号元素大于78号元素,压缩所得第23个二进制位为1,否则为0;如果31号元素大于79号元素,压缩所得第24个二进制位为1,否则为0;如果48号元素大于96号元素,压缩所得第25个二进制位为1,否则为0;如果49号元素大于97号元素,压缩所得第26个二进制位为1,否则为0;如果50号元素大于98号元素,压缩所得第27个二进制位为1,否则为0;如果51号元素大于99号元素,压缩所得第28个二进制位为1,否则为0;如果52号元素大于100号元素,压缩所得第29个二进制位为1,否则为0;如果53号元素大于101号元素,压缩所得第30个二进制位为1,否则为0;如果54号元素大于102号元素,压缩所得第31个二进制位为1,否则为0;如果55号元素大于103号元素,压缩所得第32个二进制位为1,否则为0;如果8号元素大于112号元素,压缩所得第33个二进制位为1,否则为0;如果9号元素大于113号元素,压缩所得第34个二进制位为1,否则为0;如果10号元素大于114号元素,压缩所得第35个二进制位为1,否则为0;如果11号元素大于115号元素,压缩所得第36个二进制位为1,否则为0;如果12号元素大于116号元素,压缩所得第37个二进制位为1,否则为0;如果13号元素大于117号元素,压缩所得第38个二进制位为1,否则为0;如果14号元素大于118号元素,压缩所得第39个二进制位为1,否则为0;如果15号元素大于119号元素,压缩所得第40个二进制位为1,否则为0;如果16号元素大于104号元素,压缩所得第41个二进制位为1,否则为0;如果17号元素大于105号元素,压缩所得第42个二进制位为1,否则为0;如果18号元素大于106号元素,压缩所得第43个二进制位为1,否则为0;如果19号元素大于107号元素,压缩所得第44个二进制位为1,否则为0;如果20号元素大于108号元素,压缩所得第45个二进制位为1,否则为0;如果21号元素大于109号元素,压缩所得第46个二进制位为1,否则为0;如果22号元素大于110号元素,压缩所得第47个二进制位为1,否则为0;如果23号元素大于111号元素,压缩所得第48个二进制位为1,否则为0;如果32号元素大于88号元素,压缩所得第49个二进制位为1,否则为0;如果33号元素大于89号元素,压缩所得第50个二进制位为1,否则为0;如果34号元素大于90号元素,压缩所得第51个二进制位为1,否则为0;如果35号元素大于91号元素,压缩所得第52个二进制位为1,否则为0;如果36号元素大于92号元素,压缩所得第53个二进制位为1,否则为0;如果37号元素大于93号元素,压缩所得第54个二进制位为1,否则为0;如果38号元素大于94号元素,压缩所得第55个二进制位为1,否则为0;如果39号元素大于95号元素,压缩所得第56个二进制位为1,否则为0;如果64号元素大于56号元素,压缩所得第57个二进制位为1,否则为0;如果65号元素大于57号元素,压缩所得第58个二进制位为1,否则为0;如果66号元素大于58号元素,压缩所得第59个二进制位为1,否则为0;如果67号元素大于59号元素,压缩所得第60个二进制位为1,否则为0;如果68号元素大于60号元素,压缩所得第61个二进制位为1,否则为0;如果69号元素大于61号元素,压缩所得第62个二进制位为1,否则为0;如果70号元素大于62号元素,压缩所得第63个二进制位为1,否则为0;如果71号元素大于63号元素,压缩所得第64个二进制位为1,否则为0;D.不断循环上面的A、B、C步骤,直到收到客户端发来的检索请求。收到检索请求后,使用如下方式进行检索:D-1:取收到的客户端发来的所有二进制特征,分别与每一个流的每一帧得到的二进制特征进行匹配,匹配时采用汉明距离,若汉明距离小于4,则认为两个二进制特征匹配;统计客户端发来的所有二进制特征与每一个流的每一帧得到的二进制特征相匹配的点数。
[0015]D-2:取匹配点数最多的那帧对应的流为最匹配的流;若匹配点数最多帧其匹配点数大于了 20,则检索成功,最匹配的流为要检索的流,返回检索结果及检索成功的消息到客户端;否则检索失败,返回检索失败的消息到客户端。
[0016]0_3:回到步骤八.手机客户端可按照如下方法实现:手机客户端持续拍摄图片,并对每一张图片进行处理,该过程将一直进行,直到服务器返回检索成功的消息,其中对每一张图片进行处理的具体过程如下:a.从每一张图片中提取出该图片的所有SIFT特征点,按照响应强度进行排序,选取响应强度最强的2000个SIFT特征点(不足2000个则全部选取),计算它们的128维的SIFT描述子。b.图3为对每一个128维SIFT描述子的128个元素分别进行编号,使用如下规则将每一个128维SIFT描述子压缩为一个有64个二进制位的二进制特征并保存;以下对128维SIFT描述子中元素的引用,均参照图3中的示意的编号:如果0号元素大于80号元素,压缩所得第1个二进制位为1,否则为0;如果1号元素大于81号元素,压缩所得第2个二进制位为1,否则为0;如果2号元素大于82号元素,压缩所得第3个二进制位为1,否则为0;如果3号元素大于83号元素,压缩所得第4个二进制位为1,否则为0;如果4号元素大于84号元素,压缩所得第5个二进制位为1,否则为0;如果5号元素大于85号元素,压缩所得第6个二进制位为1,否则为0;如果6号元素大于86号元素,压缩所得第7个二进制位为1,否则为0;如果7号元素大于87号元素,压缩所得第8个二进制位为1,否则为0;如果40号元素大于120号元素,压缩所得第9个二进制位为1,否则为0;如果41号元素大于121号元素,压缩所得第10个二进制位为1,否则为0;如果42号元素大于122号元素,压缩所得第11个二进制位为1,否则为0;如果43号元素大于123号元素,压缩所得第12个二进制位为1,否则为0;如果44号元素大于124号元素,压缩所得第13个二进制位为1,否则为0;如果45号元素大于125号元素,压缩所得第14个二进制位为1,否则为0;如果46号元素大于126号元素,压缩所得第15个二进制位为1,否则为0;如果47号元素大于127号元素,压缩所得第16个二进制位为1,否则为0;如果24号元素大于72号元素,压缩所得第17个二进制位为1,否则为0;如果25号元素大于73号元素,压缩所得第18个二进制位为1,否则为0;如果26号元素大于74号元素,压缩所得第19个二进制位为1,否则为0;如果27号元素大于75号元素,压缩所得第20个二进制位为1,否则为0;如果28号元素大于76号元素,压缩所得第21个二进制位为1,否则为0;如果29号元素大于77号元素,压缩所得第22个二进制位为1,否则为0;如果30号元素大于78号元素,压缩所得第23个二进制位为1,否则为0;如果31号元素大于79号元素,压缩所得第24个二进制位为1,否则为0;如果48号元素大于96号元素,压缩所得第25个二进制位为1,否则为0;如果49号元素大于97号元素,压缩所得第26个二进制位为1,否则为0;如果50号元素大于98号元素,压缩所得第27个二进制位为1,否则为0;如果51号元素大于99号元素,压缩所得第28个二进制位为1,否则为0;如果52号元素大于100号元素,压缩所得第29个二进制位为1,否则为0;如果53号元素大于101号元素,压缩所得第30个二进制位为1,否则为0;如果54号元素大于102号元素,压缩所得第31个二进制位为1,否则为0;如果55号元素大于103号元素,压缩所得第32个二进制位为1,否则为0;如果8号元素大于112号元素,压缩所得第33个二进制位为1,否则为0;如果9号元素大于113号元素,压缩所得第34个二进制位为1,否则为0;如果10号元素大于114号元素,压缩所得第35个二进制位为1,否则为0;如果11号元素大于115号元素,压缩所得第36个二进制位为1,否则为0;如果12号元素大于116号元素,压缩所得第37个二进制位为1,否则为0;如果13号元素大于117号元素,压缩所得第38个二进制位为1,否则为0;如果14号元素大于118号元素,压缩所得第39个二进制位为1,否则为0;如果15号元素大于119号元素,压缩所得第40个二进制位为1,否则为0;如果16号元素大于104号元素,压缩所得第41个二进制位为1,否则为0;如果17号元素大于105号元素,压缩所得第42个二进制位为1,否则为0;如果18号元素大于106号元素,压缩所得第43个二进制位为1,否则为0;如果19号元素大于107号元素,压缩所得第44个二进制位为1,否则为0;如果20号元素大于108号元素,压缩所得第45个二进制位为1,否则为0;如果21号元素大于109号元素,压缩所得第46个二进制位为1,否则为0;如果22号元素大于110号元素,压缩所得第47个二进制位为1,否则为0;如果23号元素大于111号元素,压缩所得第48个二进制位为1,否则为0;如果32号元素大于88号元素,压缩所得第49个二进制位为1,否则为0;如果33号元素大于89号元素,压缩所得第50个二进制位为1,否则为0;如果34号元素大于90号元素,压缩所得第51个二进制位为1,否则为0;如果35号元素大于91号元素,压缩所得第52个二进制位为1,否则为0;如果36号元素大于92号元素,压缩所得第53个二进制位为1,否则为0;如果37号元素大于93号元素,压缩所得第54个二进制位为1,否则为0;如果38号元素大于94号元素,压缩所得第55个二进制位为1,否则为0;如果39号元素大于95号元素,压缩所得第56个二进制位为1,否则为0;如果64号元素大于56号元素,压缩所得第57个二进制位为1,否则为0;如果65号元素大于57号元素,压缩所得第58个二进制位为1,否则为0;如果66号元素大于58号元素,压缩所得第59个二进制位为1,否则为0;如果67号元素大于59号元素,压缩所得第60个二进制位为1,否则为0;如果68号元素大于60号元素,压缩所得第61个二进制位为1,否则为0;如果69号元素大于61号元素,压缩所得第62个二进制位为1,否则为0;如果70号元素大于62号元素,压缩所得第63个二进制位为1,否则为0;如果71号元素大于63号元素,压缩所得第64个二进制位为1,否则为0; c.将压缩得到的二进制特征发送到服务器端请求查询。
[0017]由上述的描述可知,相对于通用的视频检索方法,本发明的方法针对在线视频检索这类特殊的视频检索进行了优化。由于没有了索引过程,也不使用全局描述子,实时性得到了保证。本发明还引入了一种新的对SIFT描述子进行二值化压缩的方法,该方法计算简单、易于实现,而压缩之后的二进制特征,其匹配也使用的汉明距离,在保证性能的同时, 也实现了低计算量带来的高效率。
【主权项】
1.基于图片的在线实时视频的检索方法,其特征在于:它包括如下步骤:S1:服务器端提取实时收录多个视频流,取所述每个视频流中最近5?1000秒的视频, 提取所述每个视频的视频特征数据作为对应视频流的特征数据;S2:循环执行步骤S1,直到接收到客户端检索请求;S3:客户端获取一张或多张图片,计算出图片的二进制特征,按照图片获取的先后顺序 将图片的二进制特征上传到服务器端请求检索;S4:将客户端图片的二进制特征与每一个视频流的二进制特征数据进行匹配,匹配值 最大者,若大于了阈值,则对应视频流为要检索的视频流,否则检索失败;S5:输出检索结果。2.根据权利要求1所述的基于图片的在线实时视频的检索方法,其特征在于:所述的提 取视频特征数据包括如下子步骤:S11:取视频中的一帧或多帧;S12:提取S11中每一帧的SIFT特征点,选取所得SIFT特征点中的多个,计算所选取的 SIFT特征点的偶数维SIFT描述子;S13:将S12所得所有偶数维SIFT描述子压缩为有16?512个二进制位的二进制特征。3.根据权利要求1所述的基于图片的在线实时视频的检索方法,其特征在于:所述的计 算图片的二进制特征包括如下子步骤:S31:从图片中提取SIFT特征点,选取所得SIFT特征点中的多个,计算所选SIFT特征点 的SIFT描述子;S32:将S31所得所有SIFT描述子压缩为有16?512个二进制位的二进制特征。4.根据权利要求1所述的基于图片的在线实时视频的检索方法,其特征在于:所述的S4 中进行二进制特征数据匹配的同时还要记录匹配值。5.根据权利要求2或3所述的基于图片的在线实时视频的检索方法,其特征在于:所述 的将偶数维SIFT描述子压缩为有16?512个二进制位的二进制特征,具体方法为:N维的 SIFT描述子可看成N个数,对所述N个数任意两两组合,得到N/2个数对,这N/2个数对任意 排列,排列后的每个数对对应一个二进制位,其中N为偶数,而压缩将得到一个有N/2个二进 制位的二进制特征,每一个数对得到一个二进制特征,具体为将每一个数对的第一个数和 第二个数进行比较,第一个数大于第二个数,则压缩得到对应二进制位的二进制特征为1; 第一个数小于第二个数,则压缩得到对应二进制位的二进制特征为〇。
【文档编号】G06F17/30GK106021321SQ201610294978
【公开日】2016年10月12日
【申请日】2016年5月6日
【发明人】刘盾, 杨丰羽
【申请人】成都索贝数码科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1