一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

视频数据分步存储方法、装置、电子设备及存储介质与流程

2023-04-05 06:46:40 来源:中国专利 TAG:


1.本发明涉及图像存储技术领域,尤其涉及一种视频数据分步存储方法、装置、电子设备及存储介质。


背景技术:

2.随着经济社会的不断发展,视频监控摄像头被广泛应用于千家万户。作为家庭安防的重要工具,视频监控摄像头通常都是按照时间顺序连续不断地录制视频,并将视频数据连续不停地写入sd(secure digital card)卡以存储,方便用户记录家中发生的各种事件。
3.sd卡适用于手机、数码相机、便携式电脑、mp3、行车记录仪和其他数码产品上的独立存储器,一般是卡片的形态,故称为“存储卡”,又称为“数码存储卡”、“数字存储卡”、“储存卡”等。sd卡的存储逻辑在于,每分钟写一个录像文件;当sd卡存满以后就会开始循环删除覆盖最早的非事件视频,极大降低用户使用成本,将电子设备采集的实时画面存储至sd需要的步骤为:首先在临时文件存储区建立一个用于存储视频图像的文件,如mp4文件;然后将缓存队列实时缓存的各帧视频图像存储至该mp4文件中,当该mp4文件中存储的图像帧数量达到预设值时,此时将关闭该mp4文件,然后将该mp4文件转存至sd卡或转存至sd卡中目标存储路径下,并把相关的文件名和时间戳信息存储入录像数据库中,一帧一帧地直接往sd卡上写数据的操作会影响sd卡的存储效率,增加主控的负担,降低sd卡的寿命。同时写完一个文件后,关闭此文件,统计这个文件录制过程中的事件信息再插入数据库,之后再创建新文件开始下一个录像任务。这个线性地处理过程往往会导致两个录像中间存在一定的时间差,从而导致在时间差对应的时段内缓存电子设备采集的视频图像未被及时写入新的文件,造成图像丢帧,影响画面的连贯性,这对于安防、婴幼儿看护和行车记录仪的使用存在巨大隐患。


技术实现要素:

4.有鉴于此,本发明实施例提供了一种视频数据分步存储方法、装置、电子设备及介质,用以解决现有的将实时视频图像暂存至临时文件后转存至sd卡指定文件夹的存储方式,存在转存过程中新的临时文件夹建立存在时间差,以至缓存的图像帧溢出所造成的视频不连续的技术问题。
5.本发明采用的技术方案是:
6.本发明提供了一种视频数据分步存储方法,所述方法包括:
7.s1:获取缓存在缓存队列中待存储的视频数据;
8.s2:通过第一线程持续对缓存队列实时缓存的各帧图像的图像数据帧写入内存区创建的文件,得到各临时视频;
9.s3:通过不同于所述第一线程的第二线程将内存区的各所述临时视频转存至存储器,得到各目标视频;
10.其中,所述第二线程处理的数据包括转移内存区的所述临时视频至存储器,以及对所述目标视频的文件信息进行录入。
11.优选地,所述s2包括:
12.s21:获取缓存队列中待存储的视频数据存储为视频的视频格式;
13.s22:根据所述视频格式,以当前时间戳在内存区创建一用于存储视频数据的文件;
14.s23:通过所述第一线程将缓存队列中实时缓存的各帧图像写入至所述文件,当所述文件存储的视频数据符合预设存储规则后,关闭所述文件夹,得到所述临时视频;
15.s24:重复s21至s23,持续对缓存队列实时缓存的各帧视频图像写入至当前所述文件,得到各所述临时视频;
16.其中,所述预设存储规则至少包括以下之一:图像帧数量、视频文件大小、视频时长和视频文件录制过程中记录的事件信息。
17.优选地,所述s23包括:
18.s231:获取所述预设存储规则对应的所述文件可以存入的图像帧的图像总数量;
19.s232:实时获取当前所述文件中已存入的图像帧对应的第一图像帧数量;
20.s233:当所述第一图像帧数量等于所述图像总数量,关闭当前所述文件,得到所述临时视频。
21.优选地,所述232包括:
22.s2321:获取视频帧率和将缓存队列的视频图像转存至内存区的读写速度;
23.s2322:根据所述视频帧率和所述读写速度,确定所述第一图像帧数量。
24.优选地,所述s3包括:
25.s31:获取所述目标视频中包含目标事件的事件次数阈值;
26.s32:对各所述临时视频的各帧视频图像进行目标检测,得到各所述临时视频中包含所述目标事件的实际次数;
27.s33:对所述实际次数小于所述事件次数阈值的至少两个连续的所述临时视频按拍摄时序进行拼接,得到待转存视频;
28.s34:利用所述第二线程将所述待转存视频转存至存储器,得到所述目标视频。
29.优选地,所述s34包括:
30.s341:获取各所述待转存视频中非目标事件的各帧视频图像;
31.s342:对所述非目标事件的各帧视频图像进行相似度检测,对所述待转存视频中相似的视频图像进行删减,得到基础视频;
32.s343:利用所述第二线程将所述基础视频转存至存储器,得到所述目标视频。
33.优选地,所述s342包括;
34.s3421:获取相邻帧视频图像的重合度阈值;
35.s3422:对各帧视频图像进行目标检测,得到相邻两帧视频图像的图像重合度;
36.s3423:将所述重合度大于等于所述重合度阈值的视频图像记为相似图像;
37.s3424:对所述待转存视频的相似图像按预设删减规则进行删减,得到所述基础视频。
38.本发明还提供了一种数据存储装置,包括:
39.存储分析模块:用于获取缓存在缓存队列中待存储的视频数据;
40.第一存储模块:用于通过第一线程持续对缓存队列实时缓存的各帧图像的图像数据帧写入内存区创建的文件,得到各临时视频;
41.第二存储模块:用于通过不同于所述第一线程的第二线程将内存区的各所述临时视频转存至存储器,得到各目标视频;
42.其中,所述第二线程处理的数据包括转移内存区的所述临时视频至存储器,以及对所述目标视频的文件信息进行录入。
43.本发明还提供了一种电子设备,包括:至少一个处理器、至少一个存储器以及存储在所述存储器中的计算机程序指令,当所述计算机程序指令被所述处理器执行时实现上述任一项所述的方法。
44.本发明还提供了一种存储介质,其上存储有计算机程序指令,当所述计算机程序指令被处理器执行时实现上述任一项所述的方法。
45.综上所述,本发明的有益效果如下:
46.本发明提供的一种视频数据分步存储方法、装置、电子设备及存储介质,将缓存队列待存储的各帧图像的图像数据帧存储至sd卡等存储器中或进行播放,包括首先将缓存队列的各帧图像的图像数据帧利用第一线程写入内存区和利用第二线程将内存区的视频文件转存至sd卡等存储器,以便后期app端进行回放、查询;本发明将缓存队列中缓存的各帧图像的图像数据帧写入内存区,以及进一步将内存区的临时视频转存至sd卡等存储器或进行播放的过程相互独立,当第一线程在内存区建立新的文件用于写入缓存队列中最新缓存的各帧图像的图像数据帧的同时,第二线程可以将内存区完成各帧图像的图像数据帧写入的的临时视频进行第二次转存至sd卡或其他存储器的目标路径下、或进行播放等操作,使得内存区当前文件关闭到下一文件创建时间得到控制,且间隔时间大大缩短,避免缓存队列在先缓存的图像帧因为没有及时被取出而溢出导致的图像帧丢失,保证视频图像的连续性。
附图说明
47.为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例中所需要使用的附图作简单地介绍,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图,这些均在本发明的保护范围内。
48.图1为本发明实施例1中视频数据分步存储方法的流程示意图;
49.图2为本发明实施例1中获取临时视频的流程示意图;
50.图3为本发明实施例1中获取目标视频的流程示意图;
51.图4为本发明实施例2中视频数据分步存储装置的结构示意图;
52.图5为本发明实施例3中的电子设备的结构示意图。
具体实施方式
53.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区
分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。在本发明的描述中,需要理解的是,术语“中心”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本技术和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。如果不冲突,本发明施例以及实施例中的各个特征可以相互结合,均在本发明的保护范围之内。
54.正如前文描述,目前对实时视频数据进行存储采用的方法存在回放时图像跳帧问题,导致部分图像帧丢失引起画面不连续,影响用户体验。
55.针对这一问题,发明人经过研究提供了一种视频数据分步存储方法、装置、设备及存储介质,以不同线程的分步存储方式将缓存队列的待存储视频图像分为:利用第一线程经过第一次转存将缓存队列中各帧图像的图像数据帧转存至内存区的临时文件,然后利用第二线程经过第二次转存将内存区的临时视频转存至sd卡等存储器的目标路径下或进行播放等;降低第一次转存和第二次转存的关联性,从而大大缩短内存区中前一用于存储缓存队列实时缓存的各帧图像的图像数据帧的文件关闭到下一文件建立的间隔时间,从而避免电子设备实时采集的被缓存的各帧图像的图像数据帧未被及时存储至内存区的临时文件,保证缓存队列中被缓存的各帧图像的图像数据帧均会被存储至内存区对应的文件,保证视频的完整性和连续性。
56.为了使本领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的其他实施例,都属于本发明保护的范围。
57.实施例1
58.请参见图1,图1为本发明实施例中视频数据分步存储方法的流程示意图,本发明的视频数据分步存储方法包括:
59.s1:获取缓存在缓存队列中待存储的视频数据;
60.s2:通过第一线程持续对缓存队列实时缓存的各帧图像的图像数据帧写入内存区创建的文件,得到各临时视频;
61.s3:通过不同于所述第一线程的第二线程将内存区的各所述临时视频转存至存储器,得到各目标视频;
62.其中,所述第二线程处理的数据包括转移内存区的所述临时视频至存储器,以及对所述目标视频的文件信息进行录入。
63.具体的,在对电子设备实时采集的各帧图像的图像数据帧存储至sd卡等存储器中,包括建立缓存队列,在内存区建立用于存储各帧图像的图像数据帧的文件,然后从缓存队列中提取缓存的各帧图像的图像数据帧写入该文件,当内存区的该文件存储的图像数据
帧符合存储要求后关闭该文件夹(如:帧率为20fps,每分钟录制一个视频文件,即当文件存入1200帧图像后关闭该文件,得到一个临时视频),然后将该临时视频转移至sd等存储器的目标路径下同时将该临时视频的时间戳、消息事件信息、视频时长、文件名等信息插入到视频数据库中进行记录;本技术采用第一线程将缓存队列中的各帧图像的图像数据帧写入内存区当前建立的文件,采用第二线程将内存区完成视频存储上一文件对应的临时视频转移至sd卡等存储器的目标路径下,实现视频数据存储的分步独立操作,以便第一线程可以连续不断的在内存区前一文件关闭后,立即建立新的文件继续从缓存队列中提取各帧图像的图像数据帧写入内存区新建的文件中,在内存区完成视频存储的文件对应的临时视频进行下一步处理(进行各帧图像的分析,确定是否需要将不同临时视频进行合并、图像帧删除等)或直接由第二线程转移至sd或进行播放,第一线程和第二线程为两个独立的线程,第一线程和第二线程可以属于相同的线程池,也可以属于不同的线程池;通过该方法可以减少内存区当前文件关闭后,将该文件转移至sd卡时由于sd卡的读写速度和文件大小引起的在内存区建立新的文件的等待时间;避免电子设备持续对采集的各帧图像的图像数据帧缓存导致最先缓存的图像帧溢出,同时,可以避免为了设置多个线程用于内存区的文件建立,以减少内存区当前文件关闭至下一文件建立造成的等待时间,节约计算机资源,同时,采用独立线程来进行内存区的文件转移,可以针对内存区一些特殊文件需要进行进一步处理后再转移至sd卡等存储器,实现视频数据存储的灵活性;特殊文件如:婴幼儿智能看护设备在婴幼儿处于睡眠时候拍摄的视频数据,由于婴幼儿睡眠时活动量减小,导致多个视频文件的内容十分接近,因此可以在内存区对这些文件夹进行图像删减、合并后再转移至sd卡,这样即减少了不必要的视频存储,又提升了sd卡存储空间的利用率;特殊文件包括不限于婴幼儿看护过程的部分视频数据,还可以是行车记录仪采集的部分视频数据,对此不作具体限定;对存储在内存区的视频数据先进行内容分析后再决定直接转移,还是进一步删减合成后转移,这对于采用循环存储的设备具有提高存储效率、降低存储数据的擦除频率有着十分显著的效果。
64.需要说明的是:电子设备为以下至少之一:婴幼儿智能看护设备、普通摄像头、行车记录仪、手机、平板电脑等具有图像采集功能的移动终端或固定终端。
65.本实施例提供的一种视频数据分步存储方法,将缓存队列待存储的各帧图像的图像数据帧存储至sd卡等存储器中或进行播放,包括首先将缓存队列的各帧图像的图像数据帧利用第一线程写入内存区和利用第二线程将内存区的视频文件转存至sd卡等存储器,以便后期app端进行回放、查询;本发明将缓存队列中缓存的各帧图像的图像数据帧写入内存区,以及进一步将内存区的临时视频转存至sd卡等存储器或进行播放的过程相互独立,当第一线程在内存区建立新的文件用于写入缓存队列中最新缓存的各帧图像的图像数据帧的同时,第二线程可以将内存区完成各帧图像的图像数据帧写入的的临时视频进行第二次转存至sd卡或其他存储器的目标路径下、或进行播放等操作,使得内存区当前文件关闭到下一文件创建时间得到控制,且间隔时间大大缩短,避免缓存队列在先缓存的图像帧因为没有及时被取出而溢出导致的图像帧丢失,保证视频图像的连续性。
66.在一实施例中,请参见图2,所述s2包括:
67.s21:获取将缓存队列中待存储的视频数据存储为视频的视频格式;
68.s22:根据所述视频格式,以当前时间戳在内存区创建一用于存储视频数据的文
件;
69.s23:通过所述第一线程将缓存队列中实时缓存的各帧图像写入至所述文件,当所述文件存储的视频数据符合预设存储规则后,关闭所述文件夹,得到所述临时视频;
70.s24:重复s21至s23,持续对缓存队列实时缓存的各帧图像的图像数据帧写入至当前所述文件,得到各所述临时视频;
71.其中,所述预设存储规则至少包括以下之一:图像帧数量、视频文件大小、视频时长和视频文件录制过程中记录的事件信息。
72.具体的,视频视频格式包括不限于:mp4格式、裸流文件等,裸流文件一般指采集设备本身及其对应app能够直接读取或播放的视频数据,当视频数据是裸流文件时,需要经过复解成其他视频格式才能被对应的播放软件进行播放;当确定将缓存队列中的图像帧以对应格式存储后,在内存区以当前时间戳建立用于存储各帧图像的图像数据帧的文件,然后不断的将缓存队列中缓存的各帧图像的图像数据帧以对应格式写入该文件,当前文件完成视频数据写入后,关闭该文件得到一个临时视频,立即利用第一线程创建新的文件继续对缓存队列中缓存的各帧图像的图像数据帧进行写入,缩短内存区当前文件关闭到下一文件建立的间隔时间,避免缓存队列在先缓存的图像帧因为没有及时被取出而溢出导致的图像帧丢失,保证视频图像的连续性。
73.在一实施例中,所述s23包括:
74.s231:获取所述预设存储规则对应的所述文件可以存入的图像帧的图像总数量或视频数据的总数据量;
75.s232:实时获取当前所述文件中已存入的图像帧对应的第一图像帧数量或视频数据的实时数据量;
76.s233:当所述第一图像帧数量等于所述图像总数量,或所述实时数据量等于所述总数据量时,关闭当前所述文件,得到所述临时视频。
77.具体的,以内存区建立的文件能够存入的最大图像帧数量或文件中能够存储的数据量来确定文件关闭时机,当文件存入的视频图像的第一图像帧数量达到图像总数量要求时或文件中存储的数据量达到总数据量要求时,此时关闭该文件,阻止将缓存队列中的图像数据继续写入该文件,得到一个临时视频;如:图像总数量为1200帧时,在帧率为20fps,需要录制视频时长为60s。
78.在一实施例中,若预设存储规则为写入内存区文件中的视频数据的数据量,则所述s233包括:
79.s2331:当所述实时数据量等于所述总数据量时,判断最后写入的第一视频数据与待写入缓存队列中的第二视频数据是否为同一帧图像;
80.s2332:若属于同一帧图像,则对所述第二视频数据和/或所述第一视频数据的数据量进行分析,得到分析结果;
81.s2333:根据所述分析结果,确定将所述第二视频数据和所述第一视频数据写入内存区的当前文件或写入内存区的下一文件,得到当前文件对应的所述临时视频。
82.具体的,内存区当前文件写入的视频数据的数据量达到预设的数据总量后,对最后写入的视频数据记为第一视频数据,对在缓存队列中即将写入的视频数据记为第二视频数据,若第一视频数据和第二视频数据属于同一帧图像,则对第一视频数据和/或第二视频
数据的数据量进行判断,根据分析结果确定将该帧图像的第一视频数据和第二视频数据写入前一文件夹还是写入下一文件夹,具体分析方式包括不限于:获取该帧图像的数据量,设置已写入内存区的第一数据量阈值为a,若第一视频数据的数据量占该帧图像的数据量的百分比大于a,则将该帧图像的所有数据写入当前文件夹;若小于则将该帧图像的所有数据写入下一文件夹;或则设置未写入内存区的第二数据量阈值为b,若第二视频数据的数据量占该帧图像的数据量的百分比大于b,则将该帧图像的所有数据写入下一文件夹;若小于则将该帧图像的所有数据写入当前文件夹,或者对比第一视频数据和第二视频数据,若第一视频数据大于等于第二视频数据,则将第一视频数据和第二视频数据写入内存区的当前文件夹,否则将第一视频数据和第二视频数据均写入内存区的下一文件夹。
83.在一实施例中,所述232包括:
84.s2321:获取视频帧率和将缓存队列的视频图像转存至内存区的读写速度;
85.s2322:根据所述视频帧率和所述读写速度,确定写入文件的所述第一图像帧数量。
86.具体的,视频帧率为电子设备(摄像头)每秒采集的图像帧数量,如视频帧率为20帧/秒表示摄像头每秒采集20帧图像,读写速度决定将缓存队列中的数据写入内存区或从内存区写入sd卡等存储器所需要的花费的时间,通过数据的写入速度来计算当前在内存区存入的图像帧的数量。
87.在一实施例中,请参见图3,所述s3包括:
88.s31:获取所述目标视频中包含目标事件的事件次数阈值;
89.s32:对各所述临时视频的各帧视频图像进行目标检测,得到各所述临时视频中包含所述目标事件的实际次数;
90.s33:对所述实际次数小于所述事件次数阈值的至少两个连续的所述临时视频按拍摄时序进行拼接,得到待转存视频;
91.s34:利用所述第二线程将所述待转存视频转存至存储器,得到所述目标视频。
92.具体的,无论是婴幼儿智能看护设备对婴幼儿24小时看护过程中,还是行车记录仪对车辆的行使记录中,都会存在大量没有实际意义的视频数据,这类数据占据了太多的存储空间,如:婴幼儿睡眠状态时采集的视频数据,车辆停止状态下采集的视频数据等,从而导致sd卡或其他存储器的存储空间很快使用完而进行擦除,消耗计算机资源和存储器的使用寿命;缓存队列中的视频图像写入内存区后,对各帧图像进行目标检测,当内存区中连续至少两个视频文件包含的目标事件小于预设值,则将这两个视频文件拼接起来,形成一个文件,有助于提高视频文件转存至sd卡或其他存储器的转存效率;同时在进行循环录制时,将多个不重要的视频拼接为一个视频,在存储器需要擦除该部分视频数据时,仅需要进行一次擦除就能释放大量存储空间,减少擦除次数,提高存储器的使用寿命;目标事件包括不限于:婴幼儿智能看护设备对应的婴幼儿的哭、笑、爬、进食、睡眠等,以及行车记录仪对应的车辆并线、车辆变道、急刹车等,此处不一一列举。
93.在一实施例中,所述s34包括:
94.s341:获取各所述待转存视频中非目标事件的各帧视频图像;
95.s342:对所述非目标事件的各帧视频图像进行相似度检测,对所述待转存视频中相似的视频图像进行删减,得到基础视频;
96.s343:利用所述第二线程将所述基础视频转存至存储器,得到所述目标视频。
97.具体的,对内存区的各视频文件进行目标分析,将视频文件的各帧视频图像分为非目标时间的各帧图像和目标事件的各帧图像;对非目标事件的各帧图像进行相似度检测,若连续多帧图像相似度符合要求,则进行删减,仅保留能够表征该时间段的事件信息即可,从而得到的基础视频的变小,可以节约sd卡或其他存储器的存储空间;如婴幼儿处于静止的睡眠状态时,采集的婴幼儿画面为长时间静止画面,因此仅需要保留部分图像帧来代表婴幼儿睡眠状态即可,其他图像帧可以删掉来释放存储器的存储空间;又如行车记录仪,车辆在封闭场所的长时间停放时,采集的静止画面也可以进行相应处理,从而释放存储空间。
98.在一实施例中,所述s342包括;
99.s3421:获取相邻帧视频图像的重合度阈值;
100.s3422:对各帧视频图像进行目标检测,得到相邻两帧视频图像的图像重合度;
101.s3423:将所述重合度大于等于所述重合度阈值的视频图像记为相似图像;
102.s3424:对所述待转存视频的相似图像按预设删减规则进行删减,得到所述基础视频。
103.具体的,通过检测相邻两帧图像的重合度来判断不同图像帧之间的相似度,如婴幼儿检测中,可以以婴幼儿面部或其他身体部位在图像中的成像位置来确定不同图像帧之间的重合度,将重合度大于重合度阈值的多张连续图像进行删减,从而文件大小减小的基础视频。
104.本实施例提供的一种视频数据分步存储方法,将缓存队列待存储的各帧图像的图像数据帧存储至sd卡等存储器中或进行播放,包括首先将缓存队列的各帧图像的图像数据帧利用第一线程写入内存区和利用第二线程将内存区的视频文件转存至sd卡等存储器,以便后期app端进行回放、查询;本发明将缓存队列中缓存的各帧图像的图像数据帧写入内存区,以及进一步将内存区的临时视频转存至sd卡等存储器或进行播放的过程相互独立,当第一线程在内存区建立新的文件用于写入缓存队列中最新缓存的各帧图像的图像数据帧的同时,第二线程可以将内存区完成各帧图像的图像数据帧写入的的临时视频进行第二次转存至sd卡或其他存储器的目标路径下、或进行播放等操作,使得内存区当前文件关闭到下一文件创建时间得到控制,且间隔时间大大缩短,避免缓存队列在先缓存的图像帧因为没有及时被取出而溢出导致的图像帧丢失,保证视频图像的连续性。
105.实施例2
106.本发明实施例2还提供了一种视频数据的存储装置,如图4所示,所述装置包括:
107.存储分析模块:用于获取缓存在缓存队列中待存储的视频数据;
108.第一存储模块:用于通过第一线程持续对缓存队列实时缓存的各帧图像的图像数据帧写入内存区创建的文件,得到各临时视频;
109.第二存储模块:用于通过不同于所述第一线程的第二线程将内存区的各所述临时视频转存至存储器,得到各目标视频;
110.其中,所述第二线程处理的数据包括转移内存区的所述临时视频至存储器,以及对所述目标视频的文件信息进行录入。
111.采用本实施例的视频数据分步存储装置,将缓存队列待存储的各帧图像的图像数
据帧存储至sd卡等存储器中或进行播放,包括首先将缓存队列的各帧图像的图像数据帧利用第一线程写入内存区和利用第二线程将内存区的视频文件转存至sd卡等存储器,以便后期app端进行回放、查询;本发明将缓存队列中缓存的各帧图像的图像数据帧写入内存区,以及进一步将内存区的临时视频转存至sd卡等存储器或进行播放的过程相互独立,当第一线程在内存区建立新的文件用于写入缓存队列中最新缓存的各帧图像的图像数据帧的同时,第二线程可以将内存区完成各帧图像的图像数据帧写入的的临时视频进行第二次转存至sd卡或其他存储器的目标路径下、或进行播放等操作,使得内存区当前文件关闭到下一文件创建时间得到控制,且间隔时间大大缩短,避免缓存队列在先缓存的图像帧因为没有及时被取出而溢出导致的图像帧丢失,保证视频图像的连续性。
112.在一实施例中,所述第一存储模块包括:
113.格式获取单元:获取将缓存队列中待存储的视频数据存储为视频文件的视频格式;
114.文件建立单元:根据所述视频格式,以当前时间戳在内存区创建一用于存储视频数据的文件;
115.文件存储单元:通过所述第一线程将缓存队列中实时缓存的各帧图像写入至所述文件,当所述文件存储的视频数据符合预设存储规则后,关闭所述文件夹,得到所述临时视频;
116.连续存储单元:重复上述步骤,持续对缓存队列实时缓存的各帧视频图像写入至当前所述文件,得到各所述临时视频;
117.其中,所述预设存储规则至少包括以下之一:图像帧数量、视频文件大小、视频时长和视频文件录制过程中记录的事件信息。
118.在一实施例中,所述文件存储单元包括:
119.图像数量获取单元:获取所述预设存储规则对应的所述文件可以存入的图像帧的图像总数量;
120.图像存储计数单元:实时获取当前所述文件中已存入的图像帧对应的第一图像帧数量;
121.临时文件生成单元:当所述第一图像帧数量等于所述图像总数量,关闭当前所述文件,得到所述临时视频。
122.在一实施例中,所述图像存储计数单元包括:
123.参数获取单元:获取视频帧率和将缓存队列的视频图像转存至内存区的读写速度;
124.图像数量计算单元:根据所述视频帧率和所述读写速度,确定所述第一图像帧数量。
125.在一实施例中,所述第二存储单元包括:
126.目标事件阈值单元:获取所述目标视频中包含目标事件的事件次数阈值;
127.目标事件计数单元:对各所述临时视频的各帧视频图像进行目标检测,得到各所述临时视频中包含所述目标事件的实际次数;
128.视频拼接单元:对所述实际次数小于所述事件次数阈值的至少两个连续的所述临时视频按拍摄时序进行拼接,得到待转存视频;
129.目标视频存储单元:利用所述第二线程将所述待转存视频转存至存储器,得到所述目标视频。
130.在一实施例中,所述目标视频存储单元包括:
131.目标图像获取单元:获取各所述待转存视频中非目标事件的各帧视频图像;
132.图像删减单元:对所述非目标事件的各帧视频图像进行相似度检测,对所述待转存视频中相似的视频图像进行删减,得到基础视频;
133.第二转存单元:利用所述第二线程将所述基础视频转存至存储器,得到所述目标视频。
134.在一实施例中,所述图像删减单元包括;
135.重合度阈值单元:获取相邻帧视频图像的重合度阈值;
136.重合度计算单元:对各帧视频图像进行目标检测,得到相邻两帧视频图像的图像重合度;
137.相似图形筛选单元:将所述重合度大于等于所述重合度阈值的视频图像记为相似图像;
138.基础视频生成单元:对所述待转存视频的相似图像按预设删减规则进行删减,得到所述基础视频。
139.采用本实施例的视频数据分步存储装置,将缓存队列待存储的各帧图像的图像数据帧存储至sd卡等存储器中或进行播放,包括首先将缓存队列的各帧图像的图像数据帧利用第一线程写入内存区和利用第二线程将内存区的视频文件转存至sd卡等存储器,以便后期app端进行回放、查询;本发明将缓存队列中缓存的各帧图像的图像数据帧写入内存区,以及进一步将内存区的临时视频转存至sd卡等存储器或进行播放的过程相互独立,当第一线程在内存区建立新的文件用于写入缓存队列中最新缓存的各帧图像的图像数据帧的同时,第二线程可以将内存区完成各帧图像的图像数据帧写入的的临时视频进行第二次转存至sd卡或其他存储器的目标路径下、或进行播放等操作,使得内存区当前文件关闭到下一文件创建时间得到控制,且间隔时间大大缩短,避免缓存队列在先缓存的图像帧因为没有及时被取出而溢出导致的图像帧丢失,保证视频图像的连续性。
140.本发明提供了一种电子设备和存储介质,如图5所示,包括至少一个处理器、至少一个存储器以及存储在所述存储器中的计算机程序指令。
141.具体地,上述处理器可以包括中央处理器(cpu),或者特定集成电路(application specific integrated circuit,asic),或者可以被配置成实施本发明实施例的一个或多个集成电路,电子设备至少包括以下之一:智能摄像头、具有智能摄像头的移动设备、具有智能摄像头的穿戴设备。
142.存储器可以包括用于数据或指令的大容量存储器。举例来说而非限制,存储器可包括硬盘驱动器(hard disk drive,hdd)、软盘驱动器、闪存、光盘、磁光盘、磁带或通用串行总线(universal serial bus,usb)驱动器或者两个或更多个以上这些的组合。在合适的情况下,存储器可包括可移除或不可移除(或固定)的介质。在合适的情况下,存储器可在数据处理装置的内部或外部。在特定实施例中,存储器是非易失性固态存储器。在特定实施例中,存储器包括只读存储器(rom)。在合适的情况下,该rom可以是掩模编程的rom、可编程rom(prom)、可擦除prom(eprom)、电可擦除prom(eeprom)、电可改写rom(earom)或闪存或者
两个或更多个以上这些的组合。
143.处理器通过读取并执行存储器中存储的计算机程序指令,以实现上述实施例方式一中任意一种视频数据分步存储方法。
144.在一个示例中,电子设备还可包括通信接口和总线。其中,处理器、存储器、通信接口通过总线连接并完成相互间的通信。
145.通信接口,主要用于实现本发明实施例中各模块、装置、单元和/或设备之间的通信。
146.总线包括硬件、软件或两者,将电子设备的部件彼此耦接在一起。举例来说而非限制,总线可包括加速图形端口(agp)或其他图形总线、增强工业标准架构(eisa)总线、前端总线(fsb)、超传输(ht)互连、工业标准架构(isa)总线、无限带宽互连、低引脚数(lpc)总线、存储器总线、微信道架构(mca)总线、外围组件互连(pci)总线、pci-express(pci-x)总线、串行高级技术附件(sata)总线、视频电子标准协会局部(vlb)总线或其他合适的总线或者两个或更多个以上这些的组合。在合适的情况下,总线可包括一个或多个总线。尽管本发明实施例描述和示出了特定的总线,但本发明考虑任何合适的总线或互连。
147.综上所述,本发明实施例提供了视频数据分步存储方法、装置、设备及存储介质。
148.需要明确的是,本发明并不局限于上文所描述并在图中示出的特定配置和处理。为了简明起见,这里省略了对已知方法的详细描述。在上述实施例中,描述和示出了若干具体的步骤作为示例。但是,本发明的方法过程并不限于所描述和示出的具体步骤,本领域的技术人员可以在领会本发明的精神后,作出各种改变、修改和添加,或者改变步骤之间的顺序。
149.以上所述的结构框图中所示的功能块可以实现为硬件、软件、固件或者它们的组合。当以硬件方式实现时,其可以例如是电子电路、专用集成电路(asic)、适当的固件、插件、功能卡等等。当以软件方式实现时,本发明的元素是被用于执行所需任务的程序或者代码段。程序或者代码段可以存储在机器可读介质中,或者通过载波中携带的数据信号在传输介质或者通信链路上传送。“机器可读介质”可以包括能够存储或传输信息的任何介质。机器可读介质的例子包括电子电路、半导体存储器设备、rom、闪存、可擦除rom(erom)、软盘、cd-rom、光盘、硬盘、光纤介质、射频(rf)链路,等等。代码段可以经由诸如因特网、内联网等的计算机网络被下载。
150.最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献