CN115439482A - 转场检测方法及其相关设备 - Google Patents
转场检测方法及其相关设备 Download PDFInfo
- Publication number
- CN115439482A CN115439482A CN202211398079.9A CN202211398079A CN115439482A CN 115439482 A CN115439482 A CN 115439482A CN 202211398079 A CN202211398079 A CN 202211398079A CN 115439482 A CN115439482 A CN 115439482A
- Authority
- CN
- China
- Prior art keywords
- frame
- transition
- video image
- state
- video
- 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.)
- Granted
Links
- 230000007704 transition Effects 0.000 title claims abstract description 737
- 238000001514 detection method Methods 0.000 title claims abstract description 258
- 238000000034 method Methods 0.000 claims abstract description 60
- 230000015654 memory Effects 0.000 claims description 39
- 238000004364 calculation method Methods 0.000 claims description 19
- 230000008859 change Effects 0.000 claims description 19
- 238000004590 computer program Methods 0.000 claims description 12
- 238000003860 storage Methods 0.000 claims description 5
- 230000006641 stabilisation Effects 0.000 claims description 4
- 238000011105 stabilization Methods 0.000 claims description 4
- 238000012545 processing Methods 0.000 abstract description 37
- 230000008569 process Effects 0.000 description 31
- 230000000694 effects Effects 0.000 description 21
- 238000004422 calculation algorithm Methods 0.000 description 19
- 238000004891 communication Methods 0.000 description 16
- 238000010586 diagram Methods 0.000 description 16
- 230000006870 function Effects 0.000 description 13
- 238000009825 accumulation Methods 0.000 description 7
- 238000007726 management method Methods 0.000 description 7
- 230000008878 coupling Effects 0.000 description 5
- 238000010168 coupling process Methods 0.000 description 5
- 238000005859 coupling reaction Methods 0.000 description 5
- 230000001537 neural effect Effects 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 5
- 101100096895 Mus musculus Sult2a2 gene Proteins 0.000 description 4
- 230000001133 acceleration Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 238000003384 imaging method Methods 0.000 description 4
- 230000033001 locomotion Effects 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 238000013528 artificial neural network Methods 0.000 description 3
- 238000010295 mobile communication Methods 0.000 description 3
- 230000000007 visual effect Effects 0.000 description 3
- 229920001621 AMOLED Polymers 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000001427 coherent effect Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000003062 neural network model Methods 0.000 description 2
- 238000003672 processing method Methods 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 241001465754 Metazoa Species 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 210000000988 bone and bone Anatomy 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 239000002096 quantum dot Substances 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/0002—Inspection of images, e.g. flaw detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/74—Image or video pattern matching; Proximity measures in feature spaces
- G06V10/761—Proximity, similarity or dissimilarity measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10016—Video; Image sequence
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Quality & Reliability (AREA)
- Databases & Information Systems (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Multimedia (AREA)
- Television Systems (AREA)
Abstract
本申请提供一种转场检测方法及其相关设备,涉及视频处理领域,该方法包括:获取N个视频;对N个视频进行初始化处理,初始化处理用于将N个视频包括的视频图像帧的状态标记为非转场状态,并将第1个视频中的第1帧视频图像帧的图像特征赋值给第一稳定帧;基于第一稳定帧,对N个视频包括的视频图像帧进行第一阶段转场检测,得到第一阶段检测结果。通过基于多帧视频图像帧之间的相似度,确定视频图像帧的状态为非转场状态、进入转场状态或退出状态,从而可以提高检测的准确性。
Description
技术领域
本申请涉及视频处理领域,具体涉及一种转场检测方法及其相关设备。
背景技术
随着通信技术的发展和移动端短视频的兴起,视频创作的需求越来越旺盛,视频创作者也从专业人士逐渐向普通大众扩散。在视频的生产和编辑中,视频内容的转场(两个场景的过渡)是较为常用的操作,这些转场操作可以让视频的呈现更丰富,并且使得转场前后的内容更连贯。如果用户想要在一段视频上进行二次创作,则需要先找到原视频中各个转场起点和终点,然后再加入新的内容生成新的视频。
然而,相关技术提供的转场检测方法在对原视频进行检测时,精度较低,导致转场检测结果不准确,从而影响后续创作的效果和体验。因此,亟需一种新的转场检测方法,以解决该问题。
发明内容
本申请提供一种转场检测方法及其相关设备,通过基于多帧视频图像帧之间的相似度,确定视频图像帧的状态为非转场状态、进入转场状态或退出状态,从而可以提高检测的准确性。
第一方面,提供了一种转场检测方法,该方法包括:
获取N个视频;
对所述N个视频进行初始化处理,所述初始化处理用于将所述N个视频包括的视频图像帧的状态标记为非转场状态,并将第1个视频中的第1帧视频图像帧的图像特征赋值给第一稳定帧;
基于所述第一稳定帧,对所述N个视频包括的视频图像帧进行第一阶段转场检测,得到第一阶段检测结果;
所述第一阶段转场检测用于基于多帧视频图像帧之间的相似度,确定所述视频图像帧对应的状态为非转场状态、进入转场状态或退出转场状态;所述第一阶段检测结果包括转场视频和非转场视频,所述转场视频包括对应所述进入转场状态和所述退出转场状态的视频图像帧,所述非转场视频包括对应所述非转场状态的视频图像帧。
本申请提供的转场检测方法,通过将图像帧所处的状态从简单的转场状态和非转场状态,进一步划分成进入转场状态、退出转场状态和非转场状态。然后,针对原始视频中的每帧视频图像帧进行进入转场状态、退出转场状态和非转场状态的判断,比对当前帧与当前帧之前多个图像帧之间的相似性,以确定一段视频画面内的图像相似度。由此,通过精细化地确定出非转场状态、进入转场状态和退出转场状态的图像帧,从而可以准确地确定出各个转场起点和转场终点,进而可以提高转场检测的精度。由于是比对一段视频画面内的图像相似度,由此可以避免外界因素对检测影响,例如用户进行了晃动而并非转场;也可以避免相似度计算不准确所带来的检测失误。
后续用户在对原始视频进行二次创作时,电子设备利用本申请实施例提供的转场检测方法进行转场检测后,可以提供给用户精准度较高的转场检测结果,使得用户结合该精准地转场检测结果,实现较好的创作效果。
结合第一方面,在第一方面的某些实现方式中,所述方法还包括:
基于所述第一阶段检测结果,剔除检测出的非转场视频,得到一个或多个转场视频;
针对每个转场视频进行第二阶段转场检测,得到第二阶段检测结果;
所述第二阶段转场检测基于相邻视频图像帧之间的相似度,再次确定所述视频图像帧对应的状态为所述进入转场状态或所述退出转场状态。
在该实现方式中,针对第一阶段检测结果,可以剔除非转场视频,然后对转场视频进一步进行第二阶段转场检测。由于第二阶段是针对已确定的原始视频中的转场视频进行的检测,降低了其他非转场的干扰,此外,由于是第二次进行转场检测,可以进一步提高检测的准确度。
结合第一方面,在第一方面的某些实现方式中,基于所述第一稳定帧,对所述N个视频包括的视频图像帧进行第一阶段转场检测,包括:
针对当前帧,当确定为非转场状态时,基于所述第一稳定帧,进行第一子阶段转场检测,所述第一子阶段转场检测用于基于所述当前帧与1帧或多帧非转场状态的视频图像帧之间的相似度,确定所述当前帧应保持所述非转场状态或变更为所述进入转场状态,所述当前帧为所述N个视频中的任意一帧视频图像帧;
当确定为转场状态,且为所述进入转场状态时,基于所述第一稳定帧,进行第二子阶段转场检测,所述第二子阶段转场检测用于基于所述当前帧与1帧或多帧非转场状态的视频图像帧之间的相似度,确定所述当前帧应保持所述进入转场状态或变更为所述退出转场状态;
当确定为转场状态,且为所述退出转场状态时,基于第二稳定帧,进行第三子阶段转场检测,所述第三子阶段转场检测用于基于所述当前帧与所述第二稳定帧之间的相似度,确定所述当前帧应保持所述退出转场状态或变更为所述非转场状态。
在该实现方式中,可以将视频图像帧的状态细分为非转场状态、进入转场状态和退出状态,通过针对N个视频包括的视频图像帧进行非转场状态和进入转场状态的对比,再进行进入转场状态和退出转场状态的比对,退出转场状态和非转场状态的比对,从而可以细化地区分出每帧视频图像帧对应的准确状态,并且,由于是从非转场到进入转场、退出转场再到非转场的判断顺序,可以依靠当前帧前面确定出的一段视频画面内的相似度,从而准确地确定出当前帧对应的状态。
可选地,在本申请的方案中,还可以对图像帧对应的转场状态进行三个及三个以上状态的细分,通过精细化地确定出每个图像帧所对应的状态,从而可以更准确地确定出各个转场起点和转场终点,提高转场检测的精度。
结合第一方面,在第一方面的某些实现方式中,针对当前帧,当确定为非转场状态时,基于所述第一稳定帧,进行第一子阶段转场检测,包括:
当确定到作为当前帧的第i帧视频图像帧对应所述非转场状态时,确定所述第i帧视频图像帧与所述第一稳定帧的相似度,i为大于或等于2的整数;
当所述相似度大于第一预设相似度阈值时,所述第i帧视频图像帧的状态保持不变,并结合所述第i帧视频图像帧更新第一稳定帧。
在该实现方式中,在基于第一稳定帧判断当前帧所对应状态时,由于第一稳定帧的数据会随着i的增加,也即会随着当前帧的变化而不断更新,并且,每次更新后的第一稳定帧的数据相当于是当前帧之前所有视频图像帧结合确定出的数据,由此,更新后的第一稳定帧可以用于指示当前帧之前所有视频图像帧这一段视频画面的相似度。在此基础上,将下一帧视频图像帧作为当前帧与更新后的第一稳定帧进行相似度对比时,相当于是将当前帧与当前帧之前的一段视频画面进行相似度对比,可以提高检测时的准确度的稳定性。
结合第一方面,在第一方面的某些实现方式中,所述方法还包括:
当所述相似度小于或等于所述第一预设相似度阈值时,进行帧数累计;
当累计的帧数等于所述第一预设帧数阈值时,将第一序列区间的视频图像帧对应的状态变更为所述进入转场状态;或者,
当所述相似度小于或等于所述第一预设相似度阈值时,将所述第i帧视频图像帧的状态变更为所述进入转场状态。
在该实现方式中,由于设定了第一预设帧数阈值,从而在辨别非转场状态和进入转场状态时,不会立即根据相似度的大小,断定某一帧为非转场状态或进入转场状态,而是对连续多帧视频图像帧分别与第一稳定帧的相似度进行判断后,在判断到连续多帧视频图像帧与第一稳定帧的相似度持续较低时,才对状态进行变更。由此,可以避免外界因素对检测的影响,例如用户进行了晃动而并非转场;也可以避免相似度计算不准确所带来的检测失误。
结合第一方面,在第一方面的某些实现方式中,所述第一序列区间包括:
累计的多帧所述相似度小于或等于所述第一预设相似度阈值的视频图像帧,以及所述当前帧之后的视频图像帧;或者,
所述当前帧及所述当前帧之后的视频图像帧;或者,
所述当前帧之后的视频图像帧。
在该实现方式中,可以根据需要将多帧视频图像帧的状态修改为进入转场状态。
结合第一方面,在第一方面的某些实现方式中,结合所述当前帧的图像特征更新第一稳定帧,包括:
确定所述当前帧的图像特征和所述第一稳定帧的图像特征的均值,并将所述均值赋值给所述第一稳定帧;或者,
确定所述当前帧的图像特征和所述第一稳定帧的图像特征的加权计算结果,并将所述加权计算结果赋值给所述第一稳定帧。
在该实现方式中,可以根据需要设定更新第一稳定帧的方式,从而使得第一稳定帧能表示一段视频画面内的相似信息。
结合第一方面,在第一方面的某些实现方式中,当确定为转场状态,且为所述进入转场状态时,基于所述第一稳定帧,进行第二子阶段转场检测,包括:
当确定到作为当前帧的第i帧视频图像帧对应所述进入转场状态时,确定所述第i帧视频图像帧与所述第一稳定帧的相似度,i为大于或等于2的整数;
当所述相似度大于第二预设相似度阈值时,所述第i帧视频图像帧的状态保持不变,所述第二预设相似度阈值小于所述第一预设相似度阈值。
在该实现方式中,当确定第i帧视频图像帧与第一稳定帧的相似度大于第二预设相似度阈值时,说明第i帧视频图像帧还存在转场之前的部分画面,因此,不做状态变更,可以认为此时还是进入转场状态中。
结合第一方面,在第一方面的某些实现方式中,所述方法还包括:
当所述相似度小于或等于所述第二预设相似度阈值时,进行帧数累计;
当累计的帧数等于所述第二预设帧数阈值时,将第二序列区间的视频图像帧对应的状态变更为所述退出转场状态;或者,
当所述相似度小于或等于所述第二预设相似度阈值时,将所述第i帧视频图像帧的状态变更为所述退出转场状态。
在该实现方式中,由于设定了第二预设帧数阈值,从而在辨别进入转场状态和退出转场状态时,不会立即根据相似度的大小,断定某一帧为退出转场状态,而是对连续多帧视频图像帧分别与第一稳定帧的相似度进行判断后,在判断到连续多帧视频图像帧与第一稳定帧的相似度持续非常低时,才对状态进行变更。由此,可以避免外界因素对检测的影响,例如用户进行了晃动而并非转场;也可以避免相似度计算不准确所带来的检测失误。
结合第一方面,在第一方面的某些实现方式中,所述第二序列区间包括:
累计的多帧所述相似度小于或等于所述第二预设相似度阈值的视频图像帧,以及所述当前帧之后的视频图像帧;或者,
所述当前帧及所述当前帧之后的视频图像帧;或者,
所述当前帧之后的视频图像帧。
在该实现方式中,可以根据需要将多帧视频图像帧的状态修改为退出转场状态。
结合第一方面,在第一方面的某些实现方式中,当确定为转场状态,且为所述退出转场状态时,基于第二稳定帧,进行第三子阶段转场检测,包括:
更新所述第二稳定帧;
确定作为当前帧的第i帧视频图像帧与更新后的第二稳定帧的相似度,i为大于或等于2的整数;
当所述相似度小于或等于第三预设相似度阈值时,所述第i帧视频图像帧的状态保持不变。
在该实现方式中,确定当前帧对应退出转场状态或下一个非转场状态时,当前帧的画面内容已经不同于上一个非转场状态阶段的图像内容,而更接近下一个非转场状态的图像内容,因此,需要重新基于一个第二稳定帧,来确定多帧视频图像帧基于该第二稳定帧持续、稳定的相似。若不相似,则说明当前帧还在变换之中,没有退出转场。
结合第一方面,在第一方面的某些实现方式中,所述方法还包括:
当所述相似度大于所述第三预设相似度阈值时,进行帧数累计;
当累计的帧数等于所述第三预设帧数阈值时,将第三序列区间的视频图像帧对应的状态变更为所述非转场状态;或者,
当所述相似度大于所述第三预设相似度阈值时,将所述第i帧视频图像帧的状态变更为所述非转场状态。
在该实现方式中,由于设定了第三预设帧数阈值,从而在辨别退出转场状态和下一次的非转场状态时,不会立即根据相似度的大小,断定某一帧为非转场状态,而是对连续多帧视频图像帧分别与第二稳定帧的相似度进行判断后,在判断到连续多帧视频图像帧与第二稳定帧的相似度持续非常高时,说明多帧画面内容趋于稳定时,才对状态进行变更;不稳定则不进行状态变更。由此,可以避免转场未结束。
结合第一方面,在第一方面的某些实现方式中,所述第三序列区间包括:
累计的多帧相似度大于所述第三预设相似度阈值的视频图像帧,以及所述当前帧之后的视频图像帧;或者,
所述当前帧及所述当前帧之后的视频图像帧;或者,
所述当前帧之后的视频图像帧。
在该实现方式中,可以根据需要将多帧视频图像帧的状态修改为非转场状态。
结合第一方面,在第一方面的某些实现方式中,更新所述第二稳定帧,包括:
当所述第二稳定帧的数据为0时,将与所述当前帧相邻的上一帧视频图像帧的图像特征赋值给所述第二稳定帧;
当所述第二稳定帧的数据不为0时,确定所述第二稳定帧的图像特征和与所述当前帧相邻的上一帧视频图像帧的图像特征的均值,并将所述均值赋值给所述第二稳定帧;或者,
当所述第二稳定帧的数据不为0时,确定所述第二稳定帧的图像特征和与所述当前帧相邻的上一帧视频图像帧的图像特征的加权计算结果,并将所述加权计算结果赋值给所述第二稳定帧。
在该实现方式中,可以根据需要设定更新第二稳定帧的方式,从而使得第二稳定帧能表示一段视频画面内的相似信息。
结合第一方面,在第一方面的某些实现方式中,所述方法还包括:
设置第二稳定帧的数据为0。
结合第一方面,在第一方面的某些实现方式中,所述方法还包括:
确定所述视频未结束时,i增加1,并将第i+1帧视频图像帧作为当前帧进行所述第一阶段转场检测。
第二方面,提供了一种电子设备,所述电子设备包括:一个或多个处理器、存储器和显示屏;所述存储器与所述一个或多个处理器耦合,所述存储器用于存储计算机程序代码,所述计算机程序代码包括计算机指令,所述一个或多个处理器调用所述计算机指令以使得所述电子设备执行执行第一方面中的任一种转场检测方法。
应理解,在上述第一方面中对相关内容的扩展、限定、解释和说明也适用于第二方面中相同的内容。
第三方面,提供了一种转场检测装置,包括用于执行第一方面中任一种转场检测方法的单元。
在一种可能的实现方式中,当该转场检测装置是电子设备时,该处理单元可以是处理器,该输入单元可以是通信接口;该电子设备还可以包括存储器,该存储器用于存储计算机程序代码,当该处理器执行该存储器所存储的计算机程序代码时,使得该电子设备执行第一方面中的任一种方法。
第四方面,提供了一种芯片系统,所述芯片系统应用于电子设备,所述芯片系统包括一个或多个处理器,所述处理器用于调用计算机指令以使得所述电子设备执行第一方面中的任一种转场检测方法。
第五方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序代码,当所述计算机程序代码被电子设备运行时,使得该电子设备执行第一方面中的任一种转场检测方法。
第六方面,提供了一种计算机程序产品,所述计算机程序产品包括:计算机程序代码,当所述计算机程序代码被电子设备运行时,使得该电子设备执行第一方面中的任一种转场检测方法。
本申请提供了一种转场检测方法及其相关设备,通过将图像帧所处的状态从简单的转场状态和非转场状态,进一步划分成进入转场状态、退出转场状态和非转场状态。然后,针对原始视频中的每帧视频图像帧进行进入转场状态、退出转场状态和非转场状态的判断,比对当前帧与当前帧之前多个图像帧之间的相似性,以确定一段视频画面内的图像相似度。由此,通过精细化地确定出非转场状态、进入转场状态和退出转场状态的图像帧,从而可以准确地确定出各个转场起点和转场终点,进而可以提高转场检测的精度。由于是比对一段视频画面内的图像相似度,由此可以避免外界因素对检测影响,例如用户进行了晃动而并非转场;也可以避免相似度计算不准确所带来的检测失误。
可选地,在本申请的方案中,还可以对图像帧对应的转场状态进行三个及三个以上状态的细分,通过精细化地确定出每个图像帧所对应的状态,从而可以更准确地确定出各个转场起点和转场终点,提高转场检测的精度。
可选地,针对第一阶段检测结果,可以剔除非转场视频,然后对转场视频进一步进行第二阶段转场检测。由于第二阶段是针对已确定的原始视频中的小转场视频进行的检测,降低了其他非转场的干扰,此外,由于是第二次进行转场检测,可以进一步提高检测的准确度。
后续用户在对原始视频进行二次创作时,电子设备利用本申请实施例提供的转场检测方法进行转场检测后,可以提供给用户精准度较高的转场检测结果,使得用户结合该精准地转场检测结果,实现较好的创作效果。
附图说明
图1是一种包括有转场的原始视频中抽取的三针图像帧的示意图;
图2是图1对应的原始视频的图像帧序列的示意图;
图3是本申请实施例提供的一种显示界面示意图;
图4是本申请实施例提供的另一种显示界面示意图;
图5是本申请实施例提供的又一种显示界面示意图;
图6是本申请实施例提供的又一种显示界面示意图;
图7是本申请实施例提供的又一种显示界面示意图;
图8是本申请实施例提供的又一种显示界面示意图;
图9是本申请实施例提供的又一种显示界面示意图;
图10是本申请实施例提供的又一种显示界面示意图;
图11是本申请实施例提供的又一种显示界面示意图;
图12是本申请实施例提供的一种转场检测方法的示意性流程图;
图13是本申请实施例提供的又一种转场检测方法的示意性流程图;
图14是本申请实施例提供的一种实施例的示意图;
图15是本申请实施例提供的另一种实施例的示意图;
图16是本申请实施例提供的又一种实施例的示意图;
图17是一种适用于本申请的电子设备的硬件系统的示意图;
图18是一种适用于本申请的电子设备的软件系统的示意图;
图19是本申请提供的一种转场检测装置的结构示意图;
图20是本申请提供的一种电子设备的结构示意图。
具体实施方式
在本申请的实施例中,以下术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本实施例的描述中,除非另有说明,“多个”的含义是两个或两个以上。
首先,对本申请实施例中的部分用语进行解释说明,以便于本领域技术人员理解。
1、转场
转场是指两个不同场景的视频进行过渡衔接的视频处理方式。转场的前一个视频可以称为源视频,转场后的视频称为目的视频,即将源视频转场到目的视频。
转场又可以称为转场特效,包括滑动、叠变、卷页等,转场起点用于指示转场开始时刻,转场终点用于指示转场结束时刻。
2、神经网络
神经网络是指将多个单一的神经单元联结在一起形成的网络,即一个神经单元的输出可以是另一个神经单元的输入;每个神经单元的输入可以与前一层的局部接受域相连,来提取局部接受域的特征,局部接受域可以是由若干个神经单元组成的区域。
3、高光时刻,是指某一视频中的精彩瞬间。例如,以滑板运动员的比赛视频为例,精彩瞬间可以是运动员做翻转滑板动作的瞬间。
4、视频帧,也可称为视频图像帧,是指与时间信息相关的图片。
5、录制帧率,是指电子设备在单位时间内录制或拍摄的视频图像帧的数量。
6、傅立叶变换,是一种线性积分变换,用于表示信号在时域(或者,空域)与频域之间的变换。
7、快速傅立叶变换(fast fourier transform,FFT),是指离散傅立叶变换的快速算法,可以将一个信号由时域变换到频域。
8、图像特征
图像特征是指对图像的特点或内容进行表征的一系列属性的集合;例如,图像特征可以包括图像的颜色特征、纹理特征、形状特征以及空间关系特征等,也可以是通过某种映射得到隐式的属性表达。
以上是对本申请实施例所涉及的名词的简单介绍,以下不再赘述。
目前,随着通信技术的发展和移动端短视频的兴起,视频创作的需求越来越旺盛,视频创作者也从专业人士逐渐向普通大众扩散。在视频的生产和编辑中,视频内容的转场是较为常用的操作,这些转场操作可以让视频的呈现更丰富,并且使得转场前后的内容更连贯。如果用户想要在一段视频上进行二次创作,则需要先找到原始视频中各个转场起点和转场终点,然后再加入新的内容以生成新的视频。
示例性地,图1示出了一个包括有转场的原始视频中抽取的三帧图像帧的示意图;图2为图1对应的原始视频的图像帧序列的示意图。
该原始视频包括有转场前的第一视频片段、转场后的第二视频片段,以及转场视频片段。在转场视频片段中,第一视频片段中的尾帧内容和第二视频片段的首帧内容通过多次占比不同的拼接方式,形成向右滑动的转场特效来进行过渡。
向右滑动的转场特效指的是:第二视频片段中的首帧拼接于第一视频片段中的尾帧的左侧,该第一视频片段中的尾帧从右到左逐渐扩大去除显示的区域,而该第二视频片段中的首帧则从右到左逐渐扩大增加显示的区域。
结合图1和图2,图1中的(a)所示的图像帧,为转场前的第一视频片段中的尾帧,例如为整个原始视频的图像帧序列中的第3帧;图1中的(c)所示的图像帧,为转场后的第二视频片段中的首帧,例如为整个原始视频的图像帧序列中的第9帧;而图1中的(b)所示的图像帧为转场特效中的其中一帧,例如为整个原始视频中的图像帧序列中的第5帧,该第5帧由第3帧的局部区域和第9帧的局部区域拼接而成。
应理解,图2所示中的第4帧、第6帧至第8帧均为转场特效中的图像帧,均由第3帧的局部区域和第9帧的局部区域拼接而成,区别在于第3帧的局部区域的占比逐渐减小,而第9帧的局部区域的占比逐渐增大。
针对上述所述的原始视频,当用户期望进行二次创作时,响应于用户的操作,电子设备需要根据转场检测方法,确定出原始视频中的转场起点和转场终点,区分出转场的视频片段、非转场的第一视频片段和非转场的第二视频片段。
目前,相关技术提供的转场检测方法中,一种方式是利用传统算法来确定相邻图像帧的相似性,来确定转场起点和转场终点;另一种方式是利用已训练的神经网络模型来进行转场的检测。然而,该两种方式的精度都比较低,转场检测结果都不准确,这样,将影响用户二次创作的视频效果,以及用户的体验。
例如,用户在更换转场特效时,由于相关技术的检测精度较低,旧的转场特效的起点和终点未甄别准确,导致旧的转场特效未全部更改为新的转场特效,进而导致二次创作后的视频中的图像帧序列中,混有旧的转场的视频片段中的图像帧,在视频播放时产生视觉混乱,这将严重影响用户的体验。对此,亟需一种新的能提高检测准确度的转场检测方法。
有鉴于此,本申请提供了一种转场检测方法,该方法通过将图像帧所处的状态从简单的转场状态和非转场状态,进一步划分成进入转场状态、退出转场状态和非转场状态。然后,针对原始视频中的每帧视频图像帧进行进入转场状态、退出转场状态和非转场状态的判断,比对当前图像帧与当前帧之前多个图像帧之间的相似性,以确定一段视频画面内的图像相似度。由此,通过可以精细化地确定出分别对应非转场状态、进入转场状态和退出转场状态的图像帧,从而可以准确地确定出各个转场起点和转场终点,进而可以提高转场检测的精度。
可选地,在本申请的方案中,还可以对图像帧对应的转场状态进行三个及三个以上状态的细分,通过精细化地确定出每个图像帧所对应的状态,从而可以更准确地确定出各个转场起点和转场终点,提高转场检测的精度。
后续用户在对原始视频进行二次创作时,电子设备利用本申请实施例提供的转场检测方法进行转场检测后,可以提供给用户精准度较高的转场检测结果,使得用户结合该精准地转场检测结果,实现较好的创作效果。
下面将结合附图,对本申请实施例提供的转场检测方法进行详细描述。
本申请实施例提供的转场检测方法可以应用于各种电子设备中。
在本申请实施例中,电子设备可以是手机、智慧屏、平板电脑、可穿戴电子设备、车载电子设备、增强现实(augmented reality,AR)设备、虚拟现实(virtual reality,VR)设备、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本、个人数字助理(personal digital assistant,PDA)、投影仪等等,本申请实施例对电子设备的具体类型不作任何限制。
下面以电子设备是手机为例,结合图3至图11对本申请实施例提供的转场检测方法的相关界面示意图进行详细地描述。
示例性一,如图3所示,图3中的(a)所示的图形用户界面(graphical userinterface,GUI)为电子设备的桌面101;电子设备检测到用户点击桌面101上的第三方应用程序(称为“剪辑”)的控件102的操作,如图3中的(b)所示;在电子设备检测到用户点击桌面101上的剪辑应用程序的控件102之后,显示如图3中的(c)所示的剪辑显示界面103;剪辑显示界面103中包括“一键成片”的控件104;电子设备检测到用户点击“一键成片”的控件104的操作,如图3中的(d)所示。
在电子设备检测到用户点击“一键成片”的控件104之后,显示如图4中的(a)所示的显示界面105;在显示界面105中,包括电子设备保存的第一个视频的图标106;电子设备检测到用户点击第一个视频的图标106的操作,如图4中的(b)所示;在电子设备检测到用户点击第一个视频的图标106的操作之后,显示如图4中的(c)所示的显示界面107,显示界面107中的图标106相对于显示界面105中的图标106的颜色不同,用于指示该视频已被用户选中。此外,显示界面107还包括电子设备保存的第二个视频的图标108;电子设备检测到用户点击第二个视频的图标108的操作,如图4中的(d)所示。
在电子设备检测到用户点击第二个视频的图标108之后,显示如图5中的(a)所示的显示界面109,显示界面109中的图标108相对于显示界面107中的图标108的颜色不同,用于指示该视频已被用户选中。此外,显示界面109还包括电子设备保存的第三个视频的图标110;电子设备检测到用户点击第三个视频的图标110的操作,如图5中的(b)所示。
在电子设备检测到用户点击第三个视频的图标110之后,显示如图5中的(c)所示的显示界面111,显示界面111中的图标110相对于显示界面109中的图标110的颜色不同,用于指示该视频已被用户选中。此外,显示界面111还包括指示针对选中的多个视频进行一键成片的“一键成片”控件112;电子设备检测到用户点击“一键成片”控件112的操作,如图5中的(d)所示。
在电子设备检测到用户点击进行“一键成片”控件112的操作之后,电子设备可以执行本申请实施例提供的转场检测方法,对用户选择的多个视频中的每个视频,同时或者按照选中次序针对视频包括的视频图像帧进行转场检测,并且,在执行过程中可以显示如图6中的(a)所示的显示界面113,以提示用户“一键成片”的进行程度。
在“一键成片”的进行程度为100%,也即电子设备完成转场检测之后,例如,电子设备可以依据转场检测结果(至少包括转场起点和转场终点),将从该多个视频中所检测出的转场去除后,显示如图6中的(b)所示的显示界面114,显示界面114包括用于指示去除了转场后剩余的视频片段的图标。比如,显示界面114中的图标115用于指示第一个视频中转场之前的视频片段(源视频),图标116用于指示第一个视频中转场之后的视频片段(目的视频)。
在一个示例中,电子设备检测到用户点击图标115的操作,如图6中的(c)所示。在电子设备检测到用户点击图标115的操作之后,显示如图6中的(d)所示的显示界面117,该显示界面117包括与图标115相关联的菜单118,菜单118中包括多项处理选项,每个处理选项用于指示一种处理方式。当后续电子设备检测到用户点击菜单118中任意一个处理选项的操作时,电子设备可以利用用户点击的处理选项所对应的处理方法,对该图标115所指示的视频片段进行处理,生成对应的新的视频片段。
同理,电子设备检测到用户点击图标116的操作之后,也可以显示类似图6中的(d)所示的菜单118。当后续电子设备检测到用户点击菜单118中任意一个处理选项的操作时,电子设备可以利用用户点击的处理选项所对应的处理方法,对该图标116所指示的视频片段进行处理,从而生成对应的新的视频片段。其他视频片段相关的界面类似,在此不再赘述。
在另一个示例中,显示界面114中还可以包括“更多”控件119;电子设备检测到用户点击“更多”控件119的操作,如图7中的(a)所示。在电子设备检测到用户点击“更多”控件119之后,显示如图7中的(b)所示的显示界面120,该显示界面120将所有去除了转场之后的视频片段以图像帧序列的形式进行显示,并在相邻第一视频片段和第二视频片段之间显示转场图标121。
电子设备检测到用户点击转场图标121的操作,如图7中的(c)所示。在电子设备检测到用户点击转场图标121的操作之后,显示如图7中的(d)所示的显示界面122。该显示界面122包括与转场图标121相关联的菜单123,菜单123中包括多项转场选项,每个转场选项用于指示一种转场效果。当后续电子设备检测到用户点击菜单123中任意一个转场选项的操作时,电子设备可以利用用户选中的转场选项所对应的转场方式,对该转场图标121所指示的相邻的第一视频片段和第二视频片段进行转场处理,从而可以生成包括新的转场方式的视频。
同理,电子设备检测到用户点击位于其他相邻两个视频片段之间的转场图标的操作时,也可以显示类似的菜单,以指示用户选择转场效果,在此不再赘述。
应理解,上述第一个示例是在利用本申请提供的转场检测方法得到转场检测结果的基础上,电子设备显示去除转场后的多个视频片段;然后针对每个视频片段,再示意用户可以根据需求进行编辑。上述第二个示例是在利用本申请提供的转场检测方法得到转场检测结果的基础上,电子设备显示去除转场后剩余的整个图像序列帧;然后,针对相邻视频片段,再示意用户可以根据需求替换成新的转场方式。
此外,用户还可以针对转场检测结果进行剪辑,或者结合音乐、文字、贴纸、画中画和其他特效来进行处理,电子设备响应于用户的各种操作,可以适应性生成对应的新的视频。
示例性二,如图8所示,图8中的(a)所示的图形用户界面为电子设备的桌面201;电子设备检测到用户点击桌面上的图库应用程序的控件202的操作,如图8中的(b)所示;在电子设备检测到用户点击桌面上的图库应用程序的控件202之后,显示如图8中的(c)所示的图库显示界面203;图库显示界面203中包括所有照片图标、视频图标204。电子设备检测到用户点击视频图标204的操作,如图8中的(d)所示。
在电子设备检测到用户点击视频图标204的之后,显示如图9中的(a)所示的显示界面205;在显示界面205中,包括有电子设备保存的视频的图标206;电子设备检测到用户点击图标206的操作,如图9中的(b)所示;在电子设备检测到用户点击图标206的操作之后,显示如图9中的(c)所示的显示界面207;显示界面207中包括编辑控件208;电子设备检测到用户点击编辑控件208的操作,如图9中的(d)所示。
在电子设备检测到用户点击编辑控件208的操作之后,电子设备可以执行本申请实施例提供的转场检测方法,对用户选择的视频进行转场检测。
在电子设备完成转场检测之后,电子设备可以依据转场检测结果(至少包括转场起点和转场终点),将从该视频中所检测出的转场去除后,显示如图10中的(a)所示的显示界面209,该显示界面209将所有去除了转场之后的视频以图像帧序列的形式进行显示,并在下方的菜单栏中显示多种用于示意不同剪辑方式的图标,以提供给用户进行选择。例如,该显示界面209显示截取图标210。
电子设备检测到用户点击截取图标210的操作,如图10中的(b)所示。在电子设备检测到用户点击截取图标210的操作之后,显示如图10中的(c)所示的显示界面211;该显示界面211将去除了转场之后剩余的视频以图像帧序列的方式进行显示,该显示界面211还包括视频编辑左把手212和右把手213。电子设备检测到用户从左到右拖拽左把手212的操作,如图11中的(a)所示。在电子设备检测到用户从左到右拖拽左把手212的操作之后,显示如图11中的(b)所示的显示界面214。电子设备检测到用户从右到左拖拽右把手213的操作,如图11中的(c)所示。在电子设备检测到用户从右到左拖拽右把手213的操作之后,显示如图11中的(d)所示的显示界面215。由此,电子设备可以将拖拽之后的左把手和右把手之间的视频片段,截取出来作为编辑结果。
应理解,在转场检测结果的基础上,电子设备将去除了转场之后剩余的视频以图像帧序列的方式进行显示,然后,用户通过对图像序列帧进行截取,从而可以自定义截取其中一段视频作为高光时刻,例如,视频中动物跳跃的时刻。此外,在此截取选择出的图像序列帧的基础上,用户还可以结合模板、音乐、文字等来继续进行处理,电子设备响应于用户的操作,可以对应生成新的包括有高光时刻的视频。
上述结合附图对本申请实施例提供的转场检测方法所适用的“一键成片”场景和截取高光时刻场景中的相关界面示意图进行了介绍,可知,转场检测结果的准确性与后续用户进行二次创作的效果息息相关,因此,本申请实施例提供了一种转场检测方法,可以达到提高转场检测结果的准确性的目的。
下面结合附图12至图16对本申请实施例提供的转场检测方法进行详细介绍,图12为本申请实施例提供的一种转场检测方法的流程示意图。如图12所示,该方法300可以包括以下S301至S305,下面分别对S301至S305进行详细地描述。
S301、电子设备显示第一界面,第一界面中包括视频图标。
其中,视频图标指示的视频为电子设备拍摄或接收到的视频。
示例性地,第一界面可以是指电子设备中第三方应用程序(称为“剪辑”)的显示界面,如图4中的(a)所示的显示界面105;显示界面105中包括6个视频图标,该6个视频图标分别对应电子设备中拍摄和接收到的6个视频。
示例性地,第一界面可以是指电子设备中图库应用程序的显示界面,如图9中的(a)所示的显示界面205;显示界面205中包括3个视频图标,该3个视频图标分别对应电子设备拍摄和接收到的3个视频。
S302、电子设备检测到对视频图标中N个视频图标的第一操作。
示例性地,第一操作可以为对视频图标中N个视频图标的点击操作、拖拽操作,或者,还可以为其他表示将视频图标选中的操作。N可以为大于或等于1的整数。
例如,如图4中的(b)所示,电子设备检测到用户对视频图标中的图标106的点击操作;如图4中的(d)所示,电子设备检测到用户对视频图标中的图标108的点击操作。
可选地,对视频图标中的N个视频图标的第一操作可以是按照先后次序执行的操作,或者,也可以是同时执行的操作。
应理解,上述相关界面中的示例,是以第一操作为点击操作且按照先后次序执行的操作进行举例说明。第一操作也可以为语音指示的选中视频图标中N个视频图标的操作,或者,第一操作还可以为其他用于指示同时选择视频图标中N个视频图标的操作,本申请实施例对此不作任何限定。
S303、电子设备响应于第一操作,获取N个视频。
示例性地,如图5中的(b)所示,基于第一操作,电子设备可以获取3个视频。
S304、第一界面中还包括第一控件,电子设备检测到对第一控件的第二操作。
示例性地,当第一界面为如图5中的(c)所示的显示界面111时,显示界面111中还包括有“一键成片”控件112,第一控件可以是指该“一键成片”控件112。
示例性地,第二操作可以为对“一键成片”控件112的点击操作,或者,还可以为其他操作,本申请实施例对此不作限制。
例如,如图5中的(d)所示,电子设备检测到用户对“一键成片”控件112的点击操作。
示例性地,当第一界面为如图9中的(c)所示的显示界面207时,显示界面207中还可以包括有“编辑”控件208,第一控件可以是指该“编辑”控件208。
示例性地,第二操作可以为对“编辑”控件208的点击操作,或者,还可以为其他操作,本申请实施例对此不作限制。
例如,如图9中的(d)所示,电子设备检测到用户对底部“编辑”控件208的点击操作。
S305、电子设备响应于第二操作,对N个视频进行初始化处理。
应理解,视频中的视频图像帧的状态通常可以分为转场中的视频图像帧和非转场的视频图像帧。非转场的视频图像帧即为视频中除了转场的视频图像帧之外,剩余的其他视频图像帧;非转场的视频图像帧可以认为是针对某一个场景拍摄的视频图像帧,没有过渡。
在进行转场检测时,则需要通过检测方法筛选出转场中的视频图像帧,那么,为了准确地筛选出转场中的视频图像帧,本申请可以在进行检测之前,先对所有视频图像帧进行初始化处理,也即先预设一个状态,以统一所有视频图像帧的初始状态,然后,再将检测出的状态不一样的视频图像帧进行不同的标注,以作区分,表示为不同状态的视频图像帧;然后,再结合所检测出的每个视频图像帧的状态,确定转场起点和转场终点。
示例性地,针对N个视频可以先进行初始化处理,将所有视频图像帧的状态都标识为非转场状态,例如,int表示状态,int的赋值为0时,用于指示视频图像帧对应的状态初始化为非转场状态。然后,再进行后续检测步骤,将确定出的状态不一样的视频图像帧所对应的int修改为其他大小,以表示检测出的状态不是非转场状态。
此外,初始化处理还包括设置第一稳定帧,并将N个视频中第1个视频中的第1帧视频图像帧所对应的图像特征赋值给第一稳定帧;或者,可以将第1个视频中的第1帧视频图像帧的图像特征来作为第一稳定帧。第一稳定帧用于后续作为第一阶段转场检测进行比对的参考对象。
需要说明的是,第1帧视频图像帧所对应的图像特征可以通过傅立叶变换算法或快速傅立叶变换算法进行提取,当然,也可以通过其他算法进行提取,本申请实施例对此不进行任何限制。
S306、基于第一稳定帧,对N个视频包括的视频图像帧进行第一阶段转场检测,得到第一阶段检测结果。
第一阶段转场检测基于多帧视频图像帧之间的相似度,确定视频图像帧对应的状态为非转场状态、进入转场状态或退出转场状态。
此处,本申请将视频图像帧对应的状态细分为了三个状态,当然,还可以为四个状态及以上,本申请对此不进行限制。
第一转场检测结果包括转场视频(也可以称为转场片段)和非转场视频(也可以称为非转场片段),转场视频包括对应进入转场状态和退出转场状态的视频图像帧,非转场视频包括对应非转场状态的视频图像帧。
S307、基于第一阶段转场检测结果,剔除检测出的非转场视频,得到1个或多个转场视频。
第一阶段转场检测确定出N个视频包括的视频图像帧所对应的状态为非转场状态、进入转场状态或退出转场状态之后,可以根据进入转场状态的首帧和退出转场状态的尾帧,将其区间范围内的多帧视频图像帧划分为一个转场视频,而将非转场状态的首帧和尾帧之间的多帧视频图像帧划分为一个非转场视频。
若第一阶段转场检测出多个进入转场状态的首帧和退出转场状态的尾帧,则可以依据相邻两个进入转场状态的首帧和退出转场状态的尾帧,划分出多个转场视频;若检测出多个非转场状态的首帧和尾帧,则可以依据相邻的非转场状态的首帧和尾帧,划分出多个非转场视频。
基于此,剔除从中检测出的非转场视频(也可以称为非转场片段),可以降低后续判断的难度,提高检测的准确度。
S308、针对每个转场视频,进行第二阶段转场检测,得到第二阶段检测结果。
第二阶段转场检测可以为相关技术提供的检测方法,也即针对每个转场视频,可以利用传统算法来确定相邻图像帧的相似度;或者,针对每个转场视频,利用已训练的神经网络模型来进行转场的检测,从而再次确定出每个转场视频包括的多帧视频图像帧是否为转场状态或非转场状态,并依据判断结果再次确定出转场起点和转场终点。位于转场起点和转场终点之间的视频图像帧可以组成一个转场视频。
第二阶段检测结果相当于是确定出的多个转场视频的集合。
本申请提供的转场检测方法,通过将图像帧所处的状态从简单的转场状态和非转场状态,进一步划分成进入转场状态、退出转场状态和非转场状态。然后,针对原始视频中的每帧视频图像帧进行进入转场状态、退出转场状态和非转场状态的判断,比对当前帧与当前帧之前多个图像帧之间的相似性,以确定一段视频画面内的图像相似度。由此,通过精细化地确定出非转场状态、进入转场状态和退出转场状态的图像帧,从而可以准确地确定出各个转场起点和转场终点,进而可以提高转场检测的精度。由于是比对一段视频画面内的图像相似度,由此可以避免外界因素对检测影响,例如用户进行了晃动而并非转场;也可以避免相似度计算不准确所带来的检测失误。
可选地,在本申请的方案中,还可以对图像帧对应的转场状态进行三个及三个以上状态的细分,通过精细化地确定出每个图像帧所对应的状态,从而可以更准确地确定出各个转场起点和转场终点,提高转场检测的精度。
可选地,针对第一阶段检测结果,可以剔除非转场视频,然后对转场视频进一步进行第二阶段转场检测。由于第二阶段是针对已确定的原始视频中的小转场视频进行的检测,降低了其他非转场的干扰,此外,由于是第二次进行转场检测,可以进一步提高检测的准确度。
后续用户在对原始视频进行二次创作时,电子设备利用本申请实施例提供的转场检测方法进行转场检测后,可以提供给用户精准度较高的转场检测结果,使得用户结合该精准地转场检测结果,实现较好的创作效果。
图13为本申请实施例提供的一种转场检测方法的流程示意图。如图13所示,该转场检测方法400包括第一阶段转场检测,第一阶段转场检测又可以细分为第一子阶段、第二子阶段和第三子阶段的转场检测。下面结合S401至S421对第一阶段转场检测进行详细地描述。
S401、获取N个视频。
示例性地,N个视频可以为存储在电子设备中的视频;其中,N个视频可以为电子设备利用摄像头采集的视频,或者,N个视频中的部分或者全部视频为下载的视频,本申请实施例对N个视频的来源不做任何限定。
例如,电子设备检测到用户对第三方应用程序(“剪辑”应用程序)中N个视频的点击操作;然后,获取N个视频。
例如,电子设备检测到用户对图库应用程序中N个视频的点击操作;然后,获取N个视频。
应理解,获取的N个视频,即为待检测的视频。每个视频可以包括多个连续的视频图像帧。例如,若视频的录制帧率为25FPS,则表示每一秒的视频中包括25个视频图像帧,每个视频图像帧之间间隔0.04秒。若某个以25FPS录制帧率录制的视频时长为20秒,则该视频中包括400个视频图像帧。
除此之外,在获取N个视频时,还可以同时获取每个视频中视频图像帧所对应的时间戳,时间戳可以指示视频图像帧被拍摄的时刻;当然,获取N个视频还可以包括其他信息,本申请实施例对此不进行限制。
S402、对获取的N个视频进行初始化处理。
可选地,获取N个视频时,可以同时获取N个视频中,视频图像帧所对应的状态标识信息,并在进行初始化处理时,将状态标识修改为用于表示非转场状态的状态标识。
可选地,在对获取的N个视频进行初始化处理时,可以增加状态标识信息,并将状态标识标注为用于表示非转场状态的状态标识。
示例性一,在本申请实施例中,可以将视频图像帧分为三种状态,比如非转场状态、进入转场状态和退出转场状态;相当于转场状态细分为进入转场状态和退出转场状态。相应地,状态标识包括三个值,分别用于指示视频图像帧的三种状态。
例如,int作为状态标识,int为0时,用于指示视频图像帧的状态为非转场状态;int为1时,用于指示视频图像帧的状态为进入转场状态;int为2时,用于指示视频图像帧的状态为退出转场状态。在进行初始化处理时,可以将视频图像帧对应的int值变更为0,以假设所有视频图像帧为非转场状态。后续步骤S403以视频图像帧分为三种状态为例进行示意。
示例性二,在本申请实施例中,还可以将视频图像帧分为四种状态,比如为非转场状态、进入转场状态、第一退出转场状态和第二退出转场状态;相当于将转场状态细分为进入转场状态、第一退出转场状态和第二退出转场状态。相应地,状态标识包括四个值,分别用于指示视频图像帧的四种状态。
例如,int作为状态标识,int为00时,用于指示视频图像帧的状态为非转场状态;int为01时,用于指示视频图像帧的状态为进入转场状态;int为10时,用于指示视频图像帧的状态为第一退出转场状态;int为11时,用于指示视频图像帧的状态为第二退出转场状态。在进行初始化处理时,可以将int值变更为00,以假设视频图像帧为非转场状态。
上述仅示意了两种状态划分方式,本申请为了进行准确地检测,还可以对转场状态进行更精细地划分,例如划分成四个以上的状态;具体可以根据需要进行设置,本申请实施例对此不进行任何限制。
可选地,由于视频图像帧的图像特征在后续检测过程多次会使用,本申请还可以在进行初始化时,提取所有视频包括的每个视频图像帧所对应的图像特征,并一一对应进行存储。这样,在后续使用阶段,可快速进行调用,提高处理效率。
S403、将第i帧视频图像帧作为当前帧,针对第i帧视频图像帧进行状态检测,判断第i帧视频图像帧是否为转场状态。i为大于或等于2的整数。
当判断到第i帧视频图像帧为非转场状态时,可以执行以下步骤S404至S408,进行第一子阶段的检测。当判断到第i帧视频图像帧为转场状态时,可以执行以下步骤S410至S421,然后,进行第二子阶段和第三子阶段的检测。
例如,可以通过判断状态标识int的值是否为0,来判断第i帧视频图像帧是否处于转场中。其中,当int的值是0时,表示第i帧视频图像对应的状态为非转场状态;当int的值非0时,表示第i帧视频图像帧对应的状态为转场状态。
第一子阶段:
S404、当确定第i帧视频图像帧为非转场状态时,确定第i帧视频图像帧与第一稳定帧的相似度。
相似度可以通过傅立叶变换算法提取出第i帧视频图像帧与第一稳定帧的图像特征后,再利用预先训练的网络模型进行计算,该预先训练的网络模型用于根据图像特征计算相似度。或者,相似度可以通过传统算法进行计算,还可以利用预先训练的另一网络模型进行计算,该预先训练的另一网络模型用于直接根据输入的图像计算相似度。上述仅为几种示例,具体计算相似度的方法可以根据需要进行设置和更换,本申请实施例对此不进行任何限制。
S405、确定第i帧视频图像帧与第一稳定帧的相似度是否大于第一预设相似度阈值。
第一预设相似度阈值的大小可以根据需要进行设置和修改,本申请实施例对此不进行任何限制。例如,第一预设相似度阈值(Sth1)可以设定为0.9。
S406、当确定第i帧视频图像帧与第一稳定帧的相似度大于第一预设相似度阈值时,第i帧视频图像帧的状态不变,依然为非转场状态,仅结合第i帧视频图像帧的图像特征更新第一稳定帧。
接着,可以执行步骤S409,判断视频是否结束;当视频未结束时,i增加1,将第i+1帧图像视频帧作为当前帧,然后,针对第i+1帧视频图像帧,循环执行上述步骤S403;当视频结束时,可以结束转场检测流程,或者,还可以结合该阶段的检测结果继续进行第二阶段的转场检测。
应理解,由于i值不断增大,i等于2时,当确定第2帧视频图像帧与第一稳定帧的相似度大于第一预设相似度阈值时,可以结合第2帧视频图像帧的图像特征更新第一稳定帧。此时,第一次更新后的第一稳定帧的数据相当于是通过第1帧视频图像帧和第2帧视频图像帧的图像特征确定出的。i等于3时,当确定第3帧视频图像帧与第一次更新后的第一稳定帧的相似度大于第一预设相似度阈值时,可以结合第3帧视频图像帧的图像特征更新第一稳定帧。此时,第二次更新后的第一稳定帧的数据相当于是通过第1帧视频图像帧、第2帧视频图像帧和第3帧视频图像帧的图像特征确定出的。i等于4时,当确定第4帧视频图像帧与第二次更新后的第一稳定帧的相似度大于第一预设相似度阈值时,可以结合第4帧视频图像帧的图像特征继续更新第一稳定帧。此时,第三次更新后的第一稳定帧的数据相当于通过第1帧视频图像帧、第2帧视频图像帧、第3帧视频图像帧和第4帧视频图像帧的图像特征确定出的。后续更新逻辑相同,依次类推,在此不再赘述。
示例性地,在第一次更新第一稳定帧时,可以先确定第一稳定帧和第2帧视频图像帧的图像特征的均值,然后将其均值赋值给第一稳定帧,作为更新后的第一稳定帧的数据。那么,后续针对第3帧视频图像帧进行转场检测时,相当于将第3帧视频图像帧与代表第1帧视频图像、第2帧视频图像帧的均值的第一稳定帧进行相似度判断。
示例性地,在第一次更新第一稳定帧时,可以先确定第一稳定帧和第2帧视频图像帧各自的图像特征,然后,将加权计算后的结果赋值给第一稳定帧,作为更新后的第一稳定帧的数据。那么,后续针对第3帧视频图像帧进行转场检测时,相当于将第3帧视频图像帧与代表第1帧视频图像帧、第2帧视频图像帧的加权结果的第一稳定帧进行相似度判断。
应理解,由于图像之间的影响程度不同,帧数相距越近,对相似度的影响越大;帧数相距越远,对相似度的影响越小。因此,可以按照帧数相距的远近来设定权重的大小。
例如,在对第3帧图像帧进行转场检测时,第一稳定帧对应的图像特征为p1,权重为0.3;第2帧视频图像帧对应的图像特征为p2,权重为0.7,由此,可以计算得到p1×0.3+p2×0.7;并将p1×0.3+p2×0.7赋值为第一稳定帧,作为更新后的第一稳定帧的数据,然后,基于该更新后的第一稳定帧的数据,可以针对第3帧视频图像帧进行相似度判断。当然,分配的权重大小还可以根据需要以其他方式进行设置和修改,本申请对此不进行任何限制。
上述仅为两种更新第一稳定帧的方式的示例,第一稳定帧还可以利用其他方式进行更新,本申请实施例对此不进行任何限制。
在本申请实施例中,在基于第一稳定帧判断当前帧所对应状态时,由于第一稳定帧的数据会随着i的增加,也即会随着当前帧的变化而不断更新,并且,每次更新后的第一稳定帧的数据相当于是当前帧之前多帧视频图像帧结合确定出的数据,由此,更新后的第一稳定帧可以用于指示当前帧之前所有视频图像帧这一段视频画面的相似度。在此基础上,将下一帧视频图像帧作为当前帧与更新后的第一稳定帧进行相似度对比时,相当于是将当前帧与当前帧之前的一段视频画面进行相似度对比,可以提高检测时的准确度的稳定性。
S407、当确定第i帧视频图像帧与第一稳定帧的相似度小于或等于第一预设相似度阈值时,将相似度小于或等于第一预设相似度阈值的视频图像帧进行帧数累计,并判断满足该条件的视频图像帧的帧数是否小于第一预设帧数阈值。
当满足该条件的视频图像帧的帧数小于第一预设帧数阈值时,可以执行步骤S409,判断视频是否结束;当视频未结束时,i增加1,继续针对下一帧视频图像帧,循环执行上述步骤S403至S407;当视频结束时,可以结束转场检测流程,或者,还可以继续进行第二阶段的转场检测。
例如,当第2帧视频图像帧与第一稳定帧的相似度小于第一预设相似度阈值时,开始进行帧数累计,将该第2帧视频图像记为第1帧满足相似度小于或等于第一预设相似度阈值这个条件的图像,若此时第一预设帧数阈值为2,则由于1小于2,不满足条件,可以继续执行步骤S409。
应理解,第一预设帧数阈值可以根据需要进行设置和修改,本申请实施例对此不进行任何限制。
另外,需要说明的是,此处针对相似度小于或等于第一预设相似度阈值的视频图像帧进行帧数累计,指的是连续累计。若后续间隔多帧之后再有视频视频帧的相似度满足上述该条件时,需要从零开始重新累计。
S408、当满足该条件的视频图像帧的帧数,累计等于第一预设帧数阈值时,说明连续多帧视频图像帧的相似度都小于或等于第一预设相似度阈值,图像画面在变换;那么,可以修改第一序列区间的视频图像帧对应的状态为进入转场状态,并设置第二稳定帧数据为0。
示例性地,修改第一序列区间的视频图像帧对应的状态为进入转场状态指的是:可以将累计的多帧相似度不大于第一预设相似度阈值的视频图像帧及之后的视频图像帧所对应的状态都修改为转场状态中的进入转场状态。
示例性地,修改第一序列区间的视频图像帧对应的状态为进入转场状态指的是:可以将当前帧及之后的所有视频图像帧所对应的状态都修改为转场状态中的进入转场状态。
示例性地,修改第一序列区间的视频图像帧对应的状态为进入转场状态指的是:可以仅将当前帧之后的所有视频图像帧所对应的状态都修改为转场状态中的进入转场状态。
上述仅为三种变更状态的示例,具体变更多少帧视频图像帧以及变更哪些视频图像帧的状态,均可以根据需要进行设置和修改,本申请对此不进行任何限制。后续实施例以变更当前帧及之后的所有视频图像帧所对应的状态为例进行说明。
变更后,继续执行步骤S409,判断视频是否结束,当视频未结束时,i增加1,继续针对下一帧视频图像帧,循环执行上述步骤S403;当视频结束时,可以结束转场检测流程,或者,还可以继续进行第二阶段的转场检测。
在本申请实施例中,由于设定了第一预设帧数阈值,从而在辨别非转场状态和进入转场状态时,不会立即根据相似度的大小,断定某一帧为非转场状态或进入转场状态,而是对连续多帧视频图像帧分别与第一稳定帧的相似度进行判断后,在判断到连续多帧视频图像帧与第一稳定帧的相似度持续较低时,才对状态进行变更。由此,可以避免外界因素对检测的影响,例如用户进行了晃动而并非转场;当然,也可以避免相似度计算不准确所带来的检测失误。
可选地,当确定第i帧视频图像帧与第一稳定帧的相似度小于或等于第一预设相似度阈值时,还可以不进行帧数累计和判断,直接将该第i帧视频图像帧对应的状态,或者,第i帧视频图像帧之后的视频图像帧的状态,或者,还可以将第i帧及第i帧之后所有视频图像帧的状态都变更为进入转场状态。
S409、判断视频是否结束。
S410、当确定第i帧视频图像帧为转场状态时,继续确定第i帧视频图像帧是否为退出转场状态。
当判断到第i帧视频图像帧不是退出转场状态时,可以执行以下步骤S411至S415,进行第二子阶段的检测。当判断到第i帧视频图像帧是退出转场状态时,可以在还行以下步骤S416至S421,进行第三子阶段的检测。
第二子阶段:
S411、当第i帧视频图像帧不是退出转场状态,而是进入转场状态时,继续确定第i帧视频图像帧与第一稳定帧的相似度。
当i等于2时,确定第i帧视频图像帧与第一稳定帧的相似度相当于是确定第2帧视频图像帧与第1帧视频图像帧之间的相似度;当i大于2时,确定第i帧视频图像帧与第一稳定帧的相似度相当于是确定第i帧视频图像帧与更新后的第一稳定帧的相似度。
S412、确定第i帧视频图像帧与第一稳定帧的相似度是否大于第二预设相似度阈值。
第二预设相似度阈值小于第一预设相似度阈值。第二预设相似度阈值可以根据需要进行设置和修改,本申请实施例对此不进行任何限制。
S413、当确定第i帧视频图像帧与第一稳定帧的相似度大于第二预设相似度阈值时,说明第i帧视频图像帧还存在转场之前的部分画面,那么,不做状态变更,可以认为此时还是进入转场状态中,而将第二稳定帧数据设置为0。
接着,可以执行步骤S409,判断视频是否结束,当视频未结束时,i增加1,针对下一帧视频图像帧,循环执行上述步骤S403;当视频结束时,可以结束转场检测流程,或者,还可以继续进行第二阶段的转场检测。
S414、确定第i帧视频图像帧与第一稳定帧的相似度小于或等于第二预设相似度阈值时,将相似度小于或等于第二预设相似度阈值的视频图像帧进行记数,并判断满足该条件的视频图像帧数量是否小于第二预设帧数阈值。
当数量小于第二预设帧数阈值时,可以执行步骤S409,判断视频是否结束,当视频未结束时,i增加1,继续针对下一帧视频图像帧,循环执行上述步骤S403;当视频结束时,可以结束转场检测流程,或者,还可以继续进行第二阶段的转场检测。
S415、当相似度小于或等于第二预设相似度阈值的视频图像帧的数量,等于第二预设帧数阈值时,说明连续多帧视频图像帧的相似度都小于或等于第二预设相似度阈值,图像画面在变更过渡;那么,可以修改第二序列区间的视频图像帧对应的状态为退出转场状态,并设置第二稳定帧数据为0。
示例性地,修改第二序列区间的视频图像帧对应的状态为退出转场状态指的是:可以将相似度不大于第二预设相似度阈值的所有视频图像帧及之后的视频图像帧所对应的状态都修改为转场状态中的退出转场状态。
示例性地,修改第二序列区间的视频图像帧对应的状态为退出转场状态指的是:可以将当前帧及之后的所有视频图像帧所对应的状态都修改为转场状态中的退出转场状态。
示例性地,修改第二序列区间的视频图像帧对应的状态为退出转场状态指的是:可以仅将当前帧之后的所有视频图像帧所对应的状态都修改为转场状态中的退出转场状态。
上述仅为三种变更状态的示例,具体变更多少帧视频图像帧以及变更哪些视频图像帧的状态,均可以根据需要进行设置和修改,本申请对此不进行任何限制。后续实施例以变更当前帧及之后的所有视频图像帧所对应的状态为例进行说明。
变更后,继续执行步骤S409,判断视频是否结束,当视频未结束时,i增加1,继续针对下一帧视频图像帧,循环执行上述步骤S403;当视频结束时,可以结束转场检测流程,或者,还可以继续进行第二阶段的转场检测。
在本申请实施例中,由于设定了第二预设帧数阈值,从而在辨别进入转场状态和退出转场状态时,不会立即根据相似度的大小,断定某一帧为退出转场状态,而是对连续多帧视频图像帧分别与第一稳定帧的相似度进行判断后,在判断到连续多帧视频图像帧与第一稳定帧的相似度持续非常低时,才对状态进行变更。由此,可以避免外界因素对检测的影响,例如用户进行了晃动而并非转场;也可以避免相似度计算不准确所带来的检测失误。
可选地,当确定第i帧视频图像帧与第一稳定帧的相似度小于或等于第二预设相似度阈值时,还可以不进行帧数累计和判断,直接将该第i帧视频图像帧对应的状态,或者,第i帧视频图像帧之后的视频图像帧的状态,或者,还可以将第i帧及第i帧之后所有视频图像帧的状态都变更为退出转场状态。
第三子阶段:
S416、当第i帧视频图像帧是退出转场状态时,更新第二稳定帧。
示例性地,当第二稳定帧数据为0时,可以将相邻上一帧视频图像帧的图像特征赋值给第二稳定帧,更新第二稳定帧的数据,也即可以将相邻上一帧视频图像帧作为第二稳定帧。
示例性地,当第二稳定帧数据不为0时,可以利用傅立叶变换算法或快速傅立叶变换算法提取第i帧视频图像帧的图像特征,然后,计算第二稳定帧和与当前帧相邻的上一帧视频图像帧的图像特征的均值,并将其赋值给第二稳定帧,更新第二稳定帧的数据。
示例性地,当第二稳定帧数据不为0时,还可以利用傅立叶变换算法或快速傅立叶变换算法提取第i帧视频图像帧的图像特征,然后,计算第二稳定帧和与当前帧相邻的上一帧视频图像帧的图像特征,然后,将加权计算后的结果赋值给第二稳定帧,更新第二稳定帧的数据。加权计算的方式可以参考上述S406中的说明,在此不再赘述。
S417、确定第i帧视频图像帧与更新后的第二稳定帧的相似度。
S418、确定第i帧视频图像帧与更新后的第二稳定帧的相似度是否大于第三预设相似度阈值。
第三预设相似度阈值可以根据需要进行设置和修改,本申请对此不进行任何限制。
S419、当确定第i帧视频图像帧与第二稳定帧的相似度小于或等于第三预设相似度阈值时,说明第i帧视频图像帧在转场过程中画面还在晃动,没有稳定下来,那么,不做状态变更,可以认为此时还在退出转场状态中,而将第二稳定帧数据设置为0。
接着,可以执行步骤S409,判断视频是否结束,当视频未结束时,i增加1,针对下一帧视频图像帧,循环执行上述步骤S403;当视频结束时,可以结束转场检测流程,或者,还可以继续进行第二阶段的转场检测。
S420、当确定第i帧视频图像帧与第二稳定帧的相似度大于第三预设相似度阈值时,将相似度大于第三预设相似度阈值的视频图像帧进行记数,并判断满足该条件的视频图像帧数量是否小于第三预设帧数阈值。
当数量小于第三预设帧数阈值时,可以执行步骤S409,判断视频是否结束,当视频未结束时,i增加1,继续针对下一帧视频图像帧,循环执行上述步骤S403;当视频结束时,可以结束转场检测流程,或者,还可以继续进行第二阶段的转场检测。
S421、当相似度大于第三预设相似度阈值的视频图像帧的数量,等于第三预设帧数阈值时,说明连续多帧视频图像帧在转场过程中画面过渡后已经趋于稳定,那么,可以修改第三序列区间的视频图像帧对应的状态为非转场状态,并设置第一稳定帧、第二稳定帧数据为0。
示例性地,修改第三序列区间的视频图像帧对应的状态为非转场状态指的是:可以将相似度大于第三预设相似度阈值的所有视频图像帧及之后的视频图像帧所对应的状态都修改为非转场状态。
示例性地,修改第三序列区间的视频图像帧对应的状态为非转场状态指的是:可以将当前帧及之后的所有视频图像帧所对应的状态都修改为非转场状态。
示例性地,修改第三序列区间的视频图像帧对应的状态为非转场状态指的是:可以仅将当前帧之后的所有视频图像帧所对应的状态都修改为非转场状态。
上述仅为三种变更状态的示例,具体变更多少帧视频图像帧以及变更哪些视频图像帧的状态,均可以根据需要进行设置和修改,本申请对此不进行任何限制。后续实施例以变更当前帧及之后的所有视频图像帧所对应的状态为例进行说明。
变更后,继续执行步骤S409,判断视频是否结束,当视频未结束时,i增加1,继续针对下一帧视频图像帧,循环执行上述步骤S403;当视频结束时,可以结束转场检测流程,或者,还可以继续进行第二阶段的转场检测。
在本申请实施例中,由于设定了第三预设帧数阈值,从而在辨别退出转场状态和下一次的非转场状态时,不会立即根据相似度的大小,断定某一帧为非转场状态,而是对连续多帧视频图像帧分别与第二稳定帧的相似度进行判断后,在判断到连续多帧视频图像帧与第二稳定帧的相似度持续非常高时,说明多帧画面内容趋于稳定时,才对状态进行变更;不稳定则不进行状态变更。由此,可以避免转场未结束。
可选地,当确定第i帧视频图像帧与第二稳定帧的相似度大于第三预设相似度阈值时,还可以不进行帧数累计和判断,直接将该第i帧视频图像帧对应的状态,或者,第i帧视频图像帧之后的视频图像帧的状态,或者,还可以将第i帧及第i帧之后所有视频图像帧的状态都变更为非转场状态。
上述是针对本申请提供的第一阶段转场检测的概述,下面结合实施例,对本申请提供的第一阶段转场检测进行举例说明,该实施例包括以下步骤S501至S554。
S501、获取1个视频。例如,该视频包括20帧视频图像帧。
S502、对获取的1个视频进行初始化处理。
此处,可以将视频中所包括的视频图像帧预先设定为三种状态,以int作为状态标识为例,int为0时,指示视频图像帧的状态为非转场状态;int为1时,指示视频图像帧的状态为进入转场状态;int为2时,指示视频图像帧的状态为退出转场状态。
应理解,转场状态包括进入转场状态和退出转场状态。进入转场状态指的是图像视频帧从非转场状态刚切换至转场状态,与非转场状态的视频图像帧的次序比较相近;退出转场状态指的是图像视频帧即将从转场状态变更为非转场状态,与下一次对应非转场状态的视频图像帧的次序上比较相近。
基于此,在进行初始化处理时,如图14中的(a)所示,可以将所有视频图像帧对应的状态标识int都更改为0,以假设所有视频图像帧的状态均为非转场状态。同时,将第1帧视频图像帧来作为第一稳定帧,用于后续进行对比。
S503、如图14中的(b)所示,将第2帧视频图像帧作为当前帧,针对第2帧视频图像帧进行状态检测,判断第2帧视频图像帧是否对应为转场状态。
此时,由于第2帧视频图像帧对应的状态标识为初始化处理后的状态标识,即int为0,所以,可以判断第2帧视频图像帧对应的状态为非转场状态。
S504、由于确定出的第2帧视频图像帧对应的状态为非转场状态,由此,可以计算第2帧视频图像帧与第一稳定帧(第1帧视频图像帧)的相似度。
此处,可以通过傅立叶变换算法分别提取第2帧视频图像与第一稳定帧的图像特征,然后根据两者的图像特征利用相似度算法确定对应的相似度大小。
S505、由于相似度大于第一预设相似度阈值Sth1,说明第2帧视频图像帧与第一稳定帧的相似性比较高,画面比较稳定,还未进行过渡。那么,可以计算第2帧视频图像帧的图像特征与第一稳定帧的图像特征的均值,并将该均值更新给第一稳定帧。
此时,更新后的第一稳定帧的数据相当于是第2帧视频图像帧的图像特征和第1帧视频图像帧的图像特征的均值。
S506、判断视频是否结束。
S507、此时视频并未结束,如图14中的(c)所示,可以继续将第3帧视频图像帧作为当前帧,针对第3帧视频图像帧进行状态检测,判断第3帧视频图像帧是否为转场状态。
此时,由于第3帧视频图像帧对应的状态表示为初始化处理后的状态标识,即int=0,所以,可以判断第3帧视频图像帧对应的状态还是非转场状态。
S508、确定出的第3帧视频图像帧对应的状态为非转场状态,由此,可以计算第3帧视频图像帧与更新后的第一稳定帧(为S505中更新后的第一稳定帧)的相似度。
S509、当相似度小于或等于第一预设相似度阈值时,说明第3帧视频图像帧与更新后的第一稳定帧的相似性降低,画面开始出现变换。那么,可以将第3帧视频图像帧记录为相似度不大于第一预设相似度阈值的第1帧,P=1。
S510、由于判断到相似度不大于第一预设相似度阈值的帧数小于第一预设帧数阈值(例如2帧),则可以继续判断视频是否结束。
S511、此时视频并未结束,如图14中的(d)所示,可以将第4帧视频图像帧作为当前帧,针对第4帧视频图像帧继续进行状态检测,判断第4帧视频图像帧是否为转场状态。
此时,由于第4帧视频图像帧对应的状态标识为初始化处理后的状态标识,即int=0,所以,可以判断第4帧视频图像帧对应的状态还是非转场状态。
S512、由于确定出的第4帧视频图像帧对应的状态为非转场状态,由此,可以计算第4帧视频图像帧与更新后的第一稳定帧(为S505中更新后的第一稳定帧)的相似度。
S513、当相似度小于或等于第一预设相似度阈值时,说明第4帧视频图像帧与更新后的第一稳定帧的相似性不高,画面出现变换。那么,可以将第4帧视频图像帧记录为相似度不大于第一预设相似度阈值的第2帧,P=2。
S514、由于相似度不大于第一预设相似度阈值的帧数已经等于第一预设帧数阈值(例如2帧),如图14中的(e)所示,则可以将第4帧视频图像帧及之后的视频图像帧对应的int值都更改为1,用于表示该第4帧视频图像帧及之后的视频图像帧对应的状态均为转场状态中的进入转场状态。同时,还可以设置第二稳定帧的数据为0。
S515、此时视频还未结束,则如图15中的(a)所示,将第5帧视频图像帧作为当前帧,针对第5帧视频图像帧进行状态检测,判断第5帧视频图像帧是否为转场状态。
由于第5帧视频图像帧对应的状态标识为更改后的状态标识,即int为1,非0,所以,可以判断第5帧视频图像帧对应的状态为转场状态。
S516、继续判断第5帧视频图像帧是否为退出转场状态。
由于int=1表示第5帧视频图像帧对应的状态为进入转场状态,所以不是退出转场状态。
S517、由于第5帧视频图像帧对应的不是退出转场状态,则继续计算第5帧视频图像帧与第一稳定帧(为S505中更新后的第一稳定帧)的相似度。
此处,可以通过傅立叶变换算法计算第5帧视频图像与第一稳定帧的相似度。
S518、若相似度大于第二预设相似度阈值Sth2,说明第5帧视频图像帧与更新后的第一稳定帧的还具有一定的相似性,还存在转场之前的部分画面。那么,不做状态变更,而将第二稳定帧数据设置为0。
S519、此时视频还未结束,则如图15中的(b)所示,将第6帧视频图像帧作为当前帧,针对第6帧视频图像帧进行状态检测,判断第6帧视频图像帧是否为转场状态。
由于第6帧视频图像帧对应的状态标识为更改后的状态标识,int为1,非0,所以,可以判断第6帧视频图像帧对应的状态为转场状态。
S520、继续判断第6帧视频图像帧是否为退出转场状态。
由于int=1表示第6帧视频图像帧对应的状态为进入转场状态,所以不是退出转场状态。
S521、由于第6帧视频图像帧对应的不是退出转场状态,则继续计算第6帧视频图像帧与第一稳定帧(为S505中更新后的第一稳定帧)的相似度。
此处,可以通过傅立叶变换算法计算第6帧视频图像与第一稳定帧的相似度。
S522、若相似度小于或等于第二预设相似度阈值Sth2,则说明第6帧视频图像帧与更新后的第一稳定帧的相似性不高,画面在过渡变换。那么,可以将第6帧视频图像帧记录为相似度不大于第二预设相似度阈值的第1帧,Q=1。
S523、由于相似度不大于第二预设相似度阈值的帧数还是小于第二预设帧数阈值(例如3帧),则可以继续判断视频是否结束。
S524、此时视频并未结束,如图15中的(c)所示,可以将第7帧视频图像帧作为当前帧,针对第7帧视频图像帧继续进行状态检测,判断第7帧视频图像帧是否为转场状态。
由于第7帧视频图像帧对应的状态标识为更改后的状态标识,int为1,非0,所以,可以判断第7帧视频图像帧对应的状态为转场状态。
S525、继续判断第7帧视频图像帧是否为退出转场状态。
由于int=1表示第7帧视频图像帧对应的状态为进入转场状态,所以不是退出转场状态。
S526、由于第7帧视频图像帧对应的不是退出转场状态,则继续计算第7帧视频图像帧与第一稳定帧(为S505中更新后的第一稳定帧)的相似度。
此处,可以通过傅立叶变换算法计算第7帧视频图像与第一稳定帧的相似度。
S527、若相似度小于或等于第二预设相似度阈值Sth2,则说明第7帧视频图像帧与更新后的第一稳定帧的相似性不高,画面在过渡变换。那么,可以将第7帧视频图像帧记录为相似度不大于第二预设相似度阈值的第2帧,Q=2。
S528、由于相似度不大于第二预设相似度阈值的帧数小于第二预设帧数阈值(例如3帧),则可以继续判断视频是否结束。
S529、此时视频并未结束,如图15中的(d)所示,可以将第8帧视频图像帧作为当前帧,针对第8帧视频图像帧继续进行状态检测,判断第8帧视频图像帧是否为转场状态。
此时,由于第8帧视频图像帧对应的状态标识为更改后的状态标识,int为1,非0,所以,可以判断第8帧视频图像帧对应的状态为转场状态。
S530、继续判断第8帧视频图像帧是否为退出转场状态。
由于int=1表示第8帧视频图像帧对应的状态为进入转场状态,所以不是退出转场状态。
S531、由于第8帧视频图像帧对应的不是退出转场状态,则继续计算第8帧视频图像帧与第一稳定帧(为S505中更新后的第一稳定帧)的相似度。
此处,可以通过傅立叶变换算法计算第8帧视频图像与第一稳定帧的相似度。
S532、若相似度小于或等于第二预设相似度阈值Sth2,则说明第8帧视频图像帧与更新后的第一稳定帧的相似性不高,画面已经在过渡变换。那么,可以将第8帧视频图像帧记录为相似度不大于第二预设相似度阈值的第3帧,Q=3。
S533、由于相似度不大于第二预设相似度阈值的帧数已经等于第二预设帧数阈值,如图15中的(e)所示,则可以将第8帧视频图像帧及之后的视频图像帧对应的int值都更改为2,用于表示该第8帧视频图像帧及之后的视频图像帧对应的状态均为转场状态中的退出转场状态。同时,可以设置第二稳定帧的数据为0。
S534、此时视频并未结束,如图16中的(a)所示,可以将第9帧视频图像帧作为当前帧,针对第9帧视频图像帧继续进行状态检测,判断第9帧视频图像帧是否为转场状态。
此时,由于第9帧视频图像帧对应的状态标识为二次更改后的状态标识,int为2,非0,所以,可以判断第9帧视频图像帧对应的状态为转场状态。
S535、继续判断第9帧视频图像帧是否为退出转场状态。
S536、由于int=2表示第9帧视频图像帧对应的状态是退出转场状态,之前的第二稳定帧数据为0,那么,更新第二稳定帧时,可以将相邻上一帧(第8帧视频图像帧)作为第二稳定帧。
S537、确定第9帧视频图像帧与第二稳定帧(第8帧视频图像帧)相似度。
S538、确定第9帧视频图像帧与第二稳定帧(第8帧视频图像帧)相似度是否大于第三预设相似度阈值Sth3。
S539、如图16中的(b)所示,当确定第9帧视频图像帧与第二稳定帧(第8帧视频图像帧)相似度小于或等于第三预设相似度阈值时,说明第9帧视频图像帧在转场过程中,相对于第8帧视频图像帧的画面还在晃动,没有稳定下来,那么不做状态变更,可以认为此时还在退出转场状态中,并将第二稳定帧数据设置为0。
S540、此时视频并未结束,如图16中的(c)所示,可以将第10帧视频图像帧作为当前帧,针对第10帧视频图像帧继续进行状态检测,判断第10帧视频图像帧是否为转场状态。
此时,由于第10帧视频图像帧对应的状态标识为二次更改后的状态标识,int为2,非0,所以,可以判断第10帧视频图像帧对应的状态为转场状态。
S541、继续判断第10帧视频图像帧是否为退出转场状态。
S542、由于int=2表示第10帧视频图像帧对应的状态是退出转场状态,之前的第二稳定帧数据为0,那么,更新第二稳定帧时,可以将相邻上一帧(第9帧视频图像帧)作为第二稳定帧。
S543、确定第10帧视频图像帧与第二稳定帧(第9帧视频图像帧)相似度。
S544、确定第10帧视频图像帧与第二稳定帧(第9帧视频图像帧)相似度是否大于第三预设相似度阈值Sth3。
S545、如图16中的(c)所示,当确定第10帧视频图像帧与第二稳定帧(第9帧视频图像帧)相似度大于第三预设相似度阈值时,说明第10帧视频图像帧在转场过程中,相对于第9帧视频图像帧的画面稳定下来了,此时,可以将第10帧视频图像帧记为相似度大于第三预设相似度阈值的视频图像帧的第1帧,R=1。
S546、此时视频并未结束,如图16中的(d)所示,可以将第11帧视频图像帧作为当前帧,针对第11帧视频图像帧继续进行状态检测,判断第11帧视频图像帧是否为转场状态。
此时,由于第11帧视频图像帧对应的状态标识为二次更改后的状态标识,int为2,非0,所以,可以判断第11帧视频图像帧对应的状态为转场状态。
S547、继续判断第11帧视频图像帧是否为退出转场状态。
S548、由于int=2表示第11帧视频图像帧对应的状态是退出转场状态,之前的第二稳定帧数据为第9帧视频图像帧的数据,那么,更新第二稳定帧时,可以将第9帧视频图像帧和第10帧视频图像帧的均值赋值给第二稳定帧。
S549、确定第11帧视频图像帧与第二稳定帧(第9帧视频图像帧和第10帧视频图像帧的均值)相似度。
S550、确定第11帧视频图像帧与第二稳定帧(第9帧视频图像帧和第10帧视频图像帧的均值)相似度是否大于第三预设相似度阈值Sth3。
S551、如图16中的(d)所示,当确定第11帧视频图像帧与第二稳定帧(第9帧视频图像帧和第10帧视频图像帧的均值)相似度大于第三预设相似度阈值时,说明第11帧视频图像帧在转场过程中,相对于第9帧视频图像帧、第10帧视频图像帧的画面稳定下来了,此时,可以将第11帧视频图像帧记为相似度大于第三预设相似度阈值的视频图像帧的第2帧,R=2。
S552、由于相似度大于第三预设相似度阈值的视频图像帧的帧数已经等于第三预设帧数阈值(例如2帧),如图16中的(e)所示,则可以将第11帧视频图像帧及之后的视频图像帧对应的int值都更改为0,用于表示该第11帧视频图像帧及之后的视频图像帧对应的状态均为非转场状态,此处的非转场状态用于指示视频图像帧为视频过渡之后的下一个稳定的视频片段。同时,可以设置第一稳定帧的数据和第二稳定帧的数据均为0。
S553、此时视频并未结束,后续可以继续按照本申请提供的第一阶段的转场检测方法进行检测,步骤类似,在此不再赘述。
S554、直至判断完第20帧视频图像帧后,输出检测结果。
检测结果包括:int值非0的连续多帧视频图像帧中的第1个int值为1的视频图像帧及对应的时间戳;最后一个int值为2的视频图像帧及对应的时间戳。
应理解,该int值非0的连续多帧视频图像帧为一个转场视频片段;int值为0的连续多帧视频图像帧为一个非转场视频片段。输出的检测结果可以包括多个转场视频片段和多个非转场视频片段。
上文结合图1至图16,描述了本申请实施例的转场检测方法和相关显示界面。
下面将结合图17至图20,详细描述本申请适用的电子设备的软件系统、硬件系统、装置以及芯片。应理解,本申请实施例中的软件系统、硬件系统、装置以及芯片可以执行前述本申请实施例的各种方法,即以下各种产品的具体工作过程,可以参考前述方法实施例中的对应过程。
图17示出了一种适用于本申请的电子设备的硬件系统。电子设备600可用于实现上述方法实施例中描述的转场检测方法。
电子设备600可以包括处理器610,外部存储器接口620,内部存储器621,通用串行总线(universal serial bus,USB)接口630,充电管理模块640,电源管理模块641,电池642,天线1,天线2,移动通信模块650,无线通信模块660,音频模块670,扬声器670A,受话器670B,麦克风670C,耳机接口670D,传感器模块680,按键690,马达691,指示器692,摄像头693,显示屏694,以及用户标识模块(subscriber identification module,SIM)卡接口695等。其中传感器模块680可以包括压力传感器680A,陀螺仪传感器680B,气压传感器680C,磁传感器680D,加速度传感器680E,距离传感器680F,接近光传感器680G,指纹传感器680H,温度传感器680J,触摸传感器680K,环境光传感器680L,骨传导传感器680M等。
需要说明的是,图17所示的结构并不构成对电子设备600的具体限定。在本申请另一些实施例中,电子设备600可以包括比图17所示的部件更多或更少的部件,或者,电子设备600可以包括图17所示的部件中某些部件的组合,或者,电子设备600可以包括图17所示的部件中某些部件的子部件。图17示的部件可以以硬件、软件、或软件和硬件的组合实现。
处理器610可以包括一个或多个处理单元。例如,处理器610可以包括以下处理单元中的至少一个:应用处理器(application processor,AP)、调制解调处理器、图形处理器(graphics processing unit,GPU)、图像信号处理器(image signal processor,ISP)、控制器、视频编解码器、数字信号处理器(digital signal processor,DSP)、基带处理器、神经网络处理器(neural-network processing unit,NPU)。其中,不同的处理单元可以是独立的器件,也可以是集成的器件。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器610中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器610中的存储器为高速缓冲存储器。该存储器可以保存处理器610刚用过或循环使用的指令或数据。如果处理器610需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器610的等待时间,因而提高了系统的效率。
在一些实施例中,处理器610可以包括一个或多个接口。例如,处理器610可以包括以下接口中的至少一个:内部集成电路(inter-integrated circuit,I2C)接口、内部集成电路音频(inter-integrated circuit sound,I2S)接口、脉冲编码调制(pulse codemodulation,PCM)接口、通用异步接收传输器(universal asynchronous receiver/transmitter,UART)接口、移动产业处理器接口(mobile industry processor interface,MIPI)、通用输入输出(general-purpose input/output,GPIO)接口、SIM接口、USB接口。
示例性地,在本申请实施例中,处理器610可以执行本申请实施例提供的转场检测方法;例如,获取N个视频;对N个视频进行初始化处理,初始化处理用于将N个视频包括的视频图像帧的状态标记为非转场状态,并将第1个视频中的第1帧视频图像帧的图像特征赋值给第一稳定帧;基于第一稳定帧,对N个视频包括的视频图像帧进行第一阶段转场检测,得到第一阶段检测结果;第一阶段转场检测用于基于多帧视频图像帧之间的相似度,确定视频图像帧对应的状态为非转场状态、进入转场状态或退出转场状态;第一阶段检测结果包括转场视频和非转场视频,转场视频包括对应进入转场状态和退出转场状态的视频图像帧,非转场视频包括对应非转场状态的视频图像帧。
图17所示的各模块间的连接关系只是示意性说明,并不构成对电子设备600的各模块间的连接关系的限定。可选地,电子设备600的各模块也可以采用上述实施例中多种连接方式的组合。
电子设备600的无线通信功能可以通过天线1、天线2、移动通信模块650、无线通信模块660、调制解调处理器以及基带处理器等器件实现。
天线1和天线2用于发射和接收电磁波信号。电子设备600中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。在一些实施例中,电子设备600的天线1和移动通信模块650耦合,电子设备600的天线2和无线通信模块660耦合,使得电子设备600可以通过无线通信技术与网络和其他电子设备通信。
电子设备600可以通过GPU、显示屏694以及应用处理器实现显示功能。GPU为图像处理的微处理器,连接显示屏694和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器610可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
显示屏694可以用于显示图像或视频。
可选地,显示屏694可以用于显示图像或视频。显示屏694包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD)、有机发光二极管(organic light-emitting diode,OLED)、有源矩阵有机发光二极体(active-matrix organic light-emitting diode,AMOLED)、柔性发光二极管(flex light-emitting diode,FLED)、迷你发光二极管(mini light-emitting diode,Mini LED)、微型发光二极管(micro light-emitting diode,Micro LED)、微型OLED (Micro OLED)或量子点发光二极管(quantum dotlight emitting diodes,QLED)。在一些实施例中,电子设备100可以包括1个或N个显示屏694,N为大于1的正整数。
示例性地,在本申请实施例中,显示屏694可以用于显示用户选择的视频;以及显示检测出的转场视频、非转场视频。
示例性地,在本申请的实施例中,电子设备600可以通过ISP、摄像头693、视频编解码器、GPU、显示屏694以及应用处理器等实现拍摄功能。
示例性地,ISP 用于处理摄像头693反馈的数据。例如,拍照时,打开快门,光线通过镜头被传递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将所述电信号传递给ISP处理,转化为肉眼可见的图像。ISP可以对图像的噪点、亮度和色彩进行算法优化,ISP还可以优化拍摄场景的曝光和色温等参数。在一些实施例中,ISP可以设置在摄像头693中。
示例性地,摄像头693(也可以称为镜头)用于捕获静态图像或视频。可以通过应用程序指令触发开启,实现拍照功能,如拍摄获取任意场景的图像。摄像头693可以包括成像镜头、滤光片、图像传感器等部件。物体发出或反射的光线进入成像镜头,通过滤光片,最终汇聚在图像传感器上。成像镜头主要是用于对拍照视角中的所有物体(也可以称为待拍摄场景、目标场景,也可以理解为用户期待拍摄的场景图像)发出或反射的光汇聚成像;滤光片主要是用于将光线中的多余光波(例如除可见光外的光波,如红外)滤去;图像传感器可以是电荷耦合器件(charge coupled device,CCD)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,CMOS)光电晶体管。图像传感器主要是用于对接收到的光信号进行光电转换,转换成电信号,之后将电信号传递给ISP转换成数字图像信号。ISP将数字图像信号输出到DSP加工处理。DSP可以将数字图像信号转换成标准的RGB,YUV等格式的图像信号。
示例性地,数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。例如,当电子设备600在频点选择时,数字信号处理器用于对频点能量进行傅立叶变换等。
示例性地,视频编解码器用于对数字视频压缩或解压缩。电子设备600可以支持一种或多种视频编解码器。这样,电子设备600可以播放或录制多种编码格式的视频,例如:动态图像专家组(moving picture experts group,MPEG)1、MPEG2、MPEG3和MPEG4。
示例性地,外部存储器接口620可以用于连接外部存储卡,例如安全数码(securedigital,SD)卡,实现扩展电子设备600的存储能力。外部存储卡通过外部存储器接口620与处理器610通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
示例性地,内部存储器621可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。内部存储器621可以包括存储程序区和存储数据区。
示例性地,电子设备600可以通过音频模块670、扬声器670A、受话器670B、麦克风670C、耳机接口670D以及应用处理器等实现音频功能,例如,音乐播放和录音。
示例性地,陀螺仪传感器680B可以用于确定电子设备600的运动姿态。在一些实施例中,可以通过陀螺仪传感器680B确定电子设备600围绕三个轴(即,x轴、y轴和z轴)的角速度。陀螺仪传感器680B可以用于拍摄防抖。例如,当快门被按下时,陀螺仪传感器680B检测电子设备600抖动的角度,根据角度计算出镜头模组需要补偿的距离,让镜头通过反向运动抵消电子设备600的抖动,实现防抖。陀螺仪传感器680B还可以用于导航和体感游戏等场景。
示例性地,加速度传感器680E可检测电子设备600在各个方向上(一般为x轴、y轴和z轴)加速度的大小。当电子设备600静止时可检测出重力的大小及方向。加速度传感器680E还可以用于识别电子设备600的姿态,作为横竖屏切换和计步器等应用程序的输入参数。
示例性地,距离传感器680F用于测量距离。电子设备600可以通过红外或激光测量距离。在一些实施例中,例如在拍摄场景中,电子设备600可以利用距离传感器680F测距以实现快速对焦。
示例性地,环境光传感器680L用于感知环境光亮度。电子设备600可以根据感知的环境光亮度自适应调节显示屏694亮度。环境光传感器680L也可用于拍照时自动调节白平衡。环境光传感器680L还可以与接近光传感器680G配合,检测电子设备600是否在口袋里,以防误触。
示例性地,指纹传感器680H用于采集指纹。电子设备600可以利用采集的指纹特性实现解锁、访问应用锁、拍照和接听来电等功能。
示例性地,触摸传感器680K,也称为触控器件。触摸传感器680K可以设置于显示屏694,由触摸传感器680K与显示屏694组成触摸屏,触摸屏也称为触控屏。触摸传感器680K用于检测作用于其上或其附近的触摸操作。触摸传感器680K可以将检测到的触摸操作传递给应用处理器,以确定触摸事件类型。可以通过显示屏694提供与触摸操作相关的视觉输出。在另一些实施例中,触摸传感器680K也可以设置于电子设备600的表面,并且与显示屏694设置于不同的位置。
上文详细描述了电子设备600的硬件系统,下面介绍电子设备600的软件系统。软件系统可以采用分层架构、事件驱动架构、微核架构、微服务架构或云架构,本申请实施例以分层架构为例,示例性地描述电子设备600的软件系统。
如图18所示,采用分层架构的软件系统分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。
在一些实施例中,软件系统可以分为四层,从上至下分别为应用程序层、应用程序框架层、安卓运行时(Android Runtime)和系统库、以及内核层。
应用程序层可以包括相机、图库、日历、通话、地图、导航、WLAN、蓝牙、音乐、视频、短信息等应用程序。
示例性地,本申请实施例提供的转场检测方法可以应用于图库应用程序;例如,响应于用户的操作,获取图库中的N个视频;对N个视频进行初始化处理,初始化处理用于将N个视频包括的视频图像帧的状态标记为非转场状态,并将第1个视频中的第1帧视频图像帧的图像特征赋值给第一稳定帧;基于第一稳定帧,对N个视频包括的视频图像帧进行第一阶段转场检测,得到第一阶段检测结果;第一阶段转场检测用于基于多帧视频图像帧之间的相似度,确定视频图像帧对应的状态为非转场状态、进入转场状态或退出转场状态;第一阶段检测结果包括转场视频和非转场视频,转场视频包括对应进入转场状态和退出转场状态的视频图像帧,非转场视频包括对应非转场状态的视频图像帧。
应用程序框架层为应用程序层的应用程序提供应用程序编程接口(applicationprogramming interface,API)和编程框架。应用程序框架层可以包括一些预定义的函数。
例如,应用程序框架层包括窗口管理器、内容提供器、视图系统、电话管理器、资源管理器和通知管理器。
窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏、锁定屏幕和截取屏幕。
内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。所述数据可以包括视频、图像、音频、拨打和接听的电话、浏览历史和书签、以及电话簿。
视图系统包括可视控件,例如显示文字的控件和显示图片的控件。视图系统可用于构建应用程序。显示界面可以由一个或多个视图组成,例如,包括短信通知图标的显示界面,可以包括显示文字的视图以及显示图片的视图。
电话管理器用于提供电子设备100的通信功能,例如通话状态(接通或挂断)的管理。
资源管理器为应用程序提供各种资源,比如本地化字符串、图标、图片、布局文件和视频文件。
通知管理器使应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。
Android Runtime包括核心库和虚拟机。Android runtime负责安卓系统的调度和管理。
核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。
应用程序层和应用程序框架层运行在虚拟机中。虚拟机将应用程序层和应用程序框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理、堆栈管理、线程管理、安全和异常的管理、以及垃圾回收等功能。
系统库可以包括多个功能模块,例如:表面管理器(surface manager),媒体库(Media Libraries),三维图形处理库(例如:针对嵌入式系统的开放图形库(opengraphics library for embedded systems,OpenGL ES)和2D图形引擎(例如:skia图形库(skia graphics library,SGL))。
表面管理器用于对显示子系统进行管理,并且为多个应用程序提供了2D图层和3D图层的融合。
媒体库支持多种音频格式的回放和录制、多种视频格式回放和录制以及静态图像文件。媒体库可以支持多种音视频编码格式,例如: MPEG4、H.264、动态图像专家组音频层面3(moving picture experts group audio layer III,MP3)、高级音频编码(advancedaudio coding,AAC)、自适应多码率(adaptive multi-rate,AMR)、联合图像专家组(jointphotographic experts group,JPG)和便携式网络图形(portable network graphics,PNG)。
三维图形处理库可以用于实现三维图形绘图、图像渲染、合成和图层处理。
二维图形引擎是2D绘图的绘图引擎。
内核层是硬件和软件之间的层。内核层可以包括显示驱动、摄像头驱动、音频驱动和传感器驱动等驱动模块。
图19是本申请实施例提供的转场检测装置的结构示意图。该转场检测装置700包括显示单元710和处理单元720。
获取单元710用于获取N个视频。
处理单元720用于对N个视频进行初始化处理,初始化处理用于将N个视频包括的视频图像帧的状态标记为非转场状态,并将第1个视频中的第1帧视频图像帧的图像特征赋值给第一稳定帧;基于第一稳定帧,对N个视频包括的视频图像帧进行第一阶段转场检测,得到第一阶段检测结果。
第一阶段转场检测用于基于多帧视频图像帧之间的相似度,确定视频图像帧对应的状态为非转场状态、进入转场状态或退出转场状态;第一阶段检测结果包括转场视频和非转场视频,转场视频包括对应进入转场状态和退出转场状态的视频图像帧,非转场视频包括对应非转场状态的视频图像帧。
需要说明的是,上述转场检测装置700以功能单元的形式体现。这里的术语“单元”可以通过软件和/或硬件形式实现,对此不作具体限定。
例如,“单元”可以是实现上述功能的软件程序、硬件电路或二者结合。所述硬件电路可能包括应用特有集成电路(application specific integrated circuit,ASIC)、电子电路、用于执行一个或多个软件或固件程序的处理器(例如共享处理器、专有处理器或组处理器等)和存储器、合并逻辑电路和/或其它支持所描述的功能的合适组件。
因此,在本申请的实施例中描述的各示例的单元,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
图20示出了本申请提供的一种电子设备的结构示意图。图20中的虚线表示该单元或该模块为可选的,电子设备800可用于实现上述方法实施例中描述的转场检测方法。
电子设备800包括一个或多个处理器801,该一个或多个处理器802可支持电子设备800实现方法实施例中的方法。处理器801可以是通用处理器或者专用处理器。例如,处理器801可以是中央处理器(central processing unit,CPU)、数字信号处理器(digitalsignal processor,DSP)、专用集成电路(application specific integrated circuit,ASIC)、现场可编程门阵列(field programmable gate array,FPGA)或者其它可编程逻辑器件,如分立门、晶体管逻辑器件或分立硬件组件。
处理器801用于对电子设备800进行控制,执行软件程序,处理软件程序的数据。电子设备800还可以包括通信单元805,用以实现信号的输入(接收)和输出(发送)。
例如,电子设备800可以是芯片,通信单元805可以是该芯片的输入和/或输出电路,或者,通信单元805可以是该芯片的通信接口,该芯片可以作为终端设备或其它电子设备的组成部分。
又例如,电子设备800可以是终端设备,通信单元805可以是该终端设备的收发器,或者,通信单元805可以是该终端设备的收发电路。
电子设备800中可以包括一个或多个存储器802,其上存有程序804,程序804可被处理器801运行,生成指令803,使得处理器801根据指令803执行上述方法实施例中描述的转场检测方法。
可选地,存储器802中还可以存储有数据。可选地,处理器801还可以读取存储器802中存储的数据,该数据可以与程序804存储在相同的存储地址,该数据也可以与程序804存储在不同的存储地址。
处理器801和存储器802可以单独设置,也可以集成在一起;例如,集成在终端设备的系统级芯片(system on chip,SOC)上。
示例性地,存储器802可以用于存储本申请实施例中提供的转场检测方法的相关程序804,处理器801可以用于在转场处理时调用存储器802中存储的转场检测方法的相关程序804,执行本申请实施例的转场检测方法。例如:获取N个视频;对N个视频进行初始化处理,初始化处理用于将N个视频包括的视频图像帧的状态标记为非转场状态,并将第1个视频中的第1帧视频图像帧的图像特征赋值给第一稳定帧;基于第一稳定帧,对N个视频包括的视频图像帧进行第一阶段转场检测,得到第一阶段检测结果。
第一阶段转场检测用于基于多帧视频图像帧之间的相似度,确定视频图像帧对应的状态为非转场状态、进入转场状态或退出转场状态;第一阶段检测结果包括转场视频和非转场视频,转场视频包括对应进入转场状态和退出转场状态的视频图像帧,非转场视频包括对应非转场状态的视频图像帧。
本申请还提供了一种计算机程序产品,该计算机程序产品被处理器801执行时实现本申请中任一方法实施例所述的转场检测方法。
该计算机程序产品可以存储在存储器802中,例如是程序804,程序804经过预处理、编译、汇编和链接等处理过程最终被转换为能够被处理器801执行的可执行目标文件。
本申请还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被计算机执行时实现本申请中任一方法实施例所述的转场检测方法。该计算机程序可以是高级语言程序,也可以是可执行目标程序。
可选地,该计算机可读存储介质例如是存储器802。存储器802可以是易失性存储器或非易失性存储器,或者,存储器802可以同时包括易失性存储器和非易失性存储器。其中,非易失性存储器可以是只读存储器(read-only memory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(random access memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(static RAM,SRAM)、动态随机存取存储器(dynamic RAM,DRAM)、同步动态随机存取存储器(synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(double data rate SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synchlinkDRAM,SLDRAM)和直接内存总线随机存取存储器(direct rambus RAM,DR RAM)。
本领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的装置和设备的具体工作过程以及产生的技术效果,可以参考前述方法实施例中对应的过程和技术效果,在此不再赘述。
在本申请所提供的几个实施例中,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的方法实施例的一些特征可以忽略,或不执行。以上所描述的装置实施例仅仅是示意性的,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,多个单元或组件可以结合或者可以集成到另一个系统。另外,各单元之间的耦合或各个组件之间的耦合可以是直接耦合,也可以是间接耦合,上述耦合包括电的、机械的或其它形式的连接。
应理解,在本申请的各种实施例中,各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请的实施例的实施过程构成任何限定。
另外,本文中术语“系统”和“网络”在本文中常被可互换使用。本文中的术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
总之,以上所述仅为本申请技术方案的较佳实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (18)
1.一种转场检测方法,其特征在于,所述方法包括:
获取N个视频;
对所述N个视频进行初始化处理,所述初始化处理用于将所述N个视频包括的视频图像帧的状态标记为非转场状态,并将第1个视频中的第1帧视频图像帧的图像特征赋值给第一稳定帧;
基于所述第一稳定帧,对所述N个视频包括的视频图像帧进行第一阶段转场检测,得到第一阶段检测结果;
所述第一阶段转场检测用于基于多帧视频图像帧之间的相似度,确定所述视频图像帧对应的状态为非转场状态、进入转场状态或退出转场状态,所述第一阶段检测结果包括转场视频和非转场视频,所述转场视频包括对应所述进入转场状态和所述退出转场状态的视频图像帧,所述非转场视频包括对应所述非转场状态的视频图像帧。
2.根据权利要求1所述的转场检测方法,其特征在于,所述方法还包括:
基于所述第一阶段检测结果,剔除检测出的非转场视频,得到一个或多个转场视频;
针对每个转场视频进行第二阶段转场检测,得到第二阶段检测结果;
所述第二阶段转场检测基于相邻视频图像帧之间的相似度,再次确定所述视频图像帧对应的状态为所述进入转场状态或所述退出转场状态。
3.根据权利要求1或2所述的转场检测方法,其特征在于,基于所述第一稳定帧,对所述N个视频包括的视频图像帧进行第一阶段转场检测,包括:
针对当前帧,当确定为非转场状态时,基于所述第一稳定帧,进行第一子阶段转场检测,所述第一子阶段转场检测用于基于所述当前帧与1帧或多帧非转场状态的视频图像帧之间的相似度,确定所述当前帧应保持所述非转场状态或变更为所述进入转场状态,所述当前帧为所述N个视频中的任意一帧视频图像帧;
当确定为转场状态,且为所述进入转场状态时,基于所述第一稳定帧,进行第二子阶段转场检测,所述第二子阶段转场检测用于基于所述当前帧与1帧或多帧非转场状态的视频图像帧之间的相似度,确定所述当前帧应保持所述进入转场状态或变更为所述退出转场状态;
当确定为转场状态,且为所述退出转场状态时,基于第二稳定帧,进行第三子阶段转场检测,所述第三子阶段转场检测用于基于所述当前帧与所述第二稳定帧之间的相似度,确定所述当前帧应保持所述退出转场状态或变更为所述非转场状态。
4.根据权利要求3所述的转场检测方法,其特征在于,针对当前帧,当确定为非转场状态时,基于所述第一稳定帧,进行第一子阶段转场检测,包括:
当确定到作为当前帧的第i帧视频图像帧对应所述非转场状态时,确定所述第i帧视频图像帧与所述第一稳定帧的相似度,i为大于或等于2的整数;
当所述相似度大于第一预设相似度阈值时,所述第i帧视频图像帧的状态保持不变,并结合所述第i帧视频图像帧更新第一稳定帧。
5.根据权利要求4所述的转场检测方法,其特征在于,所述方法还包括:
当所述相似度小于或等于所述第一预设相似度阈值时,进行帧数累计;
当累计的帧数等于所述第一预设帧数阈值时,将第一序列区间的视频图像帧对应的状态变更为所述进入转场状态;或者,
当所述相似度小于或等于所述第一预设相似度阈值时,将所述第i帧视频图像帧的状态变更为所述进入转场状态。
6.根据权利要求5所述的转场检测方法,其特征在于,所述第一序列区间包括:
累计的多帧所述相似度小于或等于所述第一预设相似度阈值的视频图像帧,以及所述当前帧之后的视频图像帧;或者,
所述当前帧及所述当前帧之后的视频图像帧;或者,
所述当前帧之后的视频图像帧。
7.根据权利要求4至6中任一项所述的转场检测方法,其特征在于,结合所述当前帧的图像特征更新第一稳定帧,包括:
确定所述当前帧的图像特征和所述第一稳定帧的图像特征的均值,并将所述均值赋值给所述第一稳定帧;或者,
确定所述当前帧的图像特征和所述第一稳定帧的图像特征的加权计算结果,并将所述加权计算结果赋值给所述第一稳定帧。
8.根据权利要求6所述的转场检测方法,其特征在于,当确定为转场状态,且为所述进入转场状态时,基于所述第一稳定帧,进行第二子阶段转场检测,包括:
当确定到作为当前帧的第i帧视频图像帧对应所述进入转场状态时,确定所述第i帧视频图像帧与所述第一稳定帧的相似度,i为大于或等于2的整数;
当所述相似度大于第二预设相似度阈值时,所述第i帧视频图像帧的状态保持不变,所述第二预设相似度阈值小于所述第一预设相似度阈值。
9.根据权利要求8所述的转场检测方法,其特征在于,所述方法还包括:
当所述相似度小于或等于所述第二预设相似度阈值时,进行帧数累计;
当累计的帧数等于所述第二预设帧数阈值时,将第二序列区间的视频图像帧对应的状态变更为所述退出转场状态;或者,
当所述相似度小于或等于所述第二预设相似度阈值时,将所述第i帧视频图像帧的状态变更为所述退出转场状态。
10.根据权利要求9所述的转场检测方法,其特征在于,所述第二序列区间包括:
累计的多帧所述相似度小于或等于所述第二预设相似度阈值的视频图像帧,以及所述当前帧之后的视频图像帧;或者,
所述当前帧及所述当前帧之后的视频图像帧;或者,
所述当前帧之后的视频图像帧。
11.根据权利要求3所述的转场检测方法,其特征在于,当确定为转场状态,且为所述退出转场状态时,基于第二稳定帧,进行第三子阶段转场检测,包括:
更新所述第二稳定帧;
确定作为当前帧的第i帧视频图像帧与更新后的第二稳定帧的相似度,i为大于或等于2的整数;
当所述相似度小于或等于第三预设相似度阈值时,所述第i帧视频图像帧的状态保持不变。
12.根据权利要求11所述的转场检测方法,其特征在于,所述方法还包括:
当所述相似度大于所述第三预设相似度阈值时,进行帧数累计;
当累计的帧数等于所述第三预设帧数阈值时,将第三序列区间的视频图像帧对应的状态变更为所述非转场状态;或者,
当所述相似度大于所述第三预设相似度阈值时,将所述第i帧视频图像帧的状态变更为所述非转场状态。
13.根据权利要求12所述的转场检测方法,其特征在于,所述第三序列区间包括:
累计的多帧相似度大于所述第三预设相似度阈值的视频图像帧,以及所述当前帧之后的视频图像帧;或者,
所述当前帧及所述当前帧之后的视频图像帧;或者,
所述当前帧之后的视频图像帧。
14.根据权利要求11所述的转场检测方法,其特征在于,所述更新所述第二稳定帧,包括:当所述第二稳定帧的数据为0时,将与所述当前帧相邻的上一帧视频图像帧的图像特征赋值给所述第二稳定帧;
当所述第二稳定帧的数据不为0时,确定所述第二稳定帧的图像特征和与所述当前帧相邻的上一帧视频图像帧的图像特征的均值,并将所述均值赋值给所述第二稳定帧;或者,
当所述第二稳定帧的数据不为0时,确定所述第二稳定帧的图像特征和与所述当前帧相邻的上一帧视频图像帧的图像特征的加权计算结果,并将所述加权计算结果赋值给所述第二稳定帧。
15.根据权利要求11至14中任一项所述的转场检测方法,其特征在于,所述方法还包括:
设置第二稳定帧的数据为0。
16.一种电子设备,其特征在于,包括处理器和存储器;
所述存储器,用于存储可在所述处理器上运行的计算机程序;
所述处理器,用于执行如权利要求1至15中任一项所述的转场检测方法。
17.一种芯片系统,其特征在于,所述芯片系统应用于电子设备,所述芯片系统包括一个或多个处理器,所述处理器用于调用计算机指令以使得所述电子设备执行如权利要求1至15中任一项所述的转场检测方法。
18.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时,使所述处理器执行如权利要求1至15中任一项所述的转场检测方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211398079.9A CN115439482B (zh) | 2022-11-09 | 2022-11-09 | 转场检测方法及其相关设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211398079.9A CN115439482B (zh) | 2022-11-09 | 2022-11-09 | 转场检测方法及其相关设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115439482A true CN115439482A (zh) | 2022-12-06 |
CN115439482B CN115439482B (zh) | 2023-04-07 |
Family
ID=84252484
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211398079.9A Active CN115439482B (zh) | 2022-11-09 | 2022-11-09 | 转场检测方法及其相关设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115439482B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111428589A (zh) * | 2020-03-11 | 2020-07-17 | 新华智云科技有限公司 | 一种渐变转场的识别方法及系统 |
CN112165621A (zh) * | 2020-09-24 | 2021-01-01 | 北京金山云网络技术有限公司 | 场景切换帧的检测方法及装置、存储介质、电子设备 |
CN114005059A (zh) * | 2021-10-29 | 2022-02-01 | 北京达佳互联信息技术有限公司 | 视频转场的检测方法、装置及电子设备 |
CN114302174A (zh) * | 2021-12-31 | 2022-04-08 | 上海爱奇艺新媒体科技有限公司 | 视频剪辑方法、装置、计算设备及存储介质 |
-
2022
- 2022-11-09 CN CN202211398079.9A patent/CN115439482B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111428589A (zh) * | 2020-03-11 | 2020-07-17 | 新华智云科技有限公司 | 一种渐变转场的识别方法及系统 |
CN112165621A (zh) * | 2020-09-24 | 2021-01-01 | 北京金山云网络技术有限公司 | 场景切换帧的检测方法及装置、存储介质、电子设备 |
CN114005059A (zh) * | 2021-10-29 | 2022-02-01 | 北京达佳互联信息技术有限公司 | 视频转场的检测方法、装置及电子设备 |
CN114302174A (zh) * | 2021-12-31 | 2022-04-08 | 上海爱奇艺新媒体科技有限公司 | 视频剪辑方法、装置、计算设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN115439482B (zh) | 2023-04-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113810587B (zh) | 一种图像处理方法及装置 | |
WO2021244295A1 (zh) | 拍摄视频的方法和装置 | |
CN113497881B (zh) | 图像处理方法及装置 | |
CN113938602B (zh) | 图像处理方法、电子设备、芯片及可读存储介质 | |
WO2022068326A1 (zh) | 一种图像帧预测的方法及电子设备 | |
CN113572993A (zh) | 一种视频处理方法及移动终端 | |
CN113395441A (zh) | 图像留色方法及设备 | |
CN113489895B (zh) | 确定推荐场景的方法及电子设备 | |
CN115442509B (zh) | 拍摄方法、用户界面及电子设备 | |
WO2022057384A1 (zh) | 拍摄方法和装置 | |
CN114926351A (zh) | 图像处理方法、电子设备以及计算机存储介质 | |
CN112637477A (zh) | 一种图像处理方法及电子设备 | |
EP4383742A1 (en) | Photographing method and electronic device | |
CN115439482B (zh) | 转场检测方法及其相关设备 | |
US20240171701A1 (en) | Image obtaining method and electronic device | |
CN115442517A (zh) | 图像处理方法、电子设备及计算机可读存储介质 | |
CN115994006A (zh) | 动画效果显示方法及电子设备 | |
CN115734032A (zh) | 视频剪辑方法、电子设备及存储介质 | |
CN116263971A (zh) | 图像帧的预测方法、电子设备及计算机可读存储介质 | |
CN116055861B (zh) | 一种视频编辑方法和电子设备 | |
CN113821153B (zh) | 手势导航方法、电子设备及可读存储介质 | |
EP4210312A1 (en) | Photographing method and electronic device | |
WO2023072113A1 (zh) | 显示方法及电子设备 | |
WO2024109246A1 (zh) | 生成视频的策略确定方法和电子设备 | |
US20240064397A1 (en) | Video Shooting Method and Electronic Device |
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 |