CN114066841A - 一种天空检测方法、装置、计算机设备和存储介质 - Google Patents
一种天空检测方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN114066841A CN114066841A CN202111341257.XA CN202111341257A CN114066841A CN 114066841 A CN114066841 A CN 114066841A CN 202111341257 A CN202111341257 A CN 202111341257A CN 114066841 A CN114066841 A CN 114066841A
- Authority
- CN
- China
- Prior art keywords
- image
- image data
- target
- target mask
- mask
- 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.)
- Pending
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 35
- 238000009499 grossing Methods 0.000 claims abstract description 65
- 238000000034 method Methods 0.000 claims abstract description 43
- 238000012545 processing Methods 0.000 claims abstract description 34
- 238000007670 refining Methods 0.000 claims abstract 3
- 238000001914 filtration Methods 0.000 claims description 21
- 238000012549 training Methods 0.000 claims description 13
- 238000010606 normalization Methods 0.000 claims description 7
- 239000013585 weight reducing agent Substances 0.000 claims description 6
- 238000004590 computer program Methods 0.000 claims description 5
- 230000007797 corrosion Effects 0.000 claims description 5
- 238000005260 corrosion Methods 0.000 claims description 5
- 238000013507 mapping Methods 0.000 claims description 4
- 230000008569 process Effects 0.000 abstract description 14
- 230000011218 segmentation Effects 0.000 abstract description 8
- 238000004364 calculation method Methods 0.000 description 21
- 238000013528 artificial neural network Methods 0.000 description 13
- 230000004927 fusion Effects 0.000 description 11
- 230000000694 effects Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 8
- 230000003628 erosive effect Effects 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 5
- 238000004422 calculation algorithm Methods 0.000 description 4
- 230000010339 dilation Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 3
- 238000002372 labelling Methods 0.000 description 3
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 description 2
- 238000013459 approach Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 238000012887 quadratic function Methods 0.000 description 2
- 230000000306 recurrent effect Effects 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 238000003707 image sharpening Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000000877 morphologic effect Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000007500 overflow downdraw method Methods 0.000 description 1
- 235000012736 patent blue V Nutrition 0.000 description 1
- 238000012805 post-processing Methods 0.000 description 1
- 238000013139 quantization Methods 0.000 description 1
- 238000011897 real-time detection Methods 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000007704 transition 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
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/20—Image enhancement or restoration by the use of local operators
- G06T5/30—Erosion or dilatation, e.g. thinning
-
- G06T5/70—
-
- G06T5/73—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/12—Edge-based segmentation
-
- 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
-
- 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/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- 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/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
-
- 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/20—Special algorithmic details
- G06T2207/20172—Image enhancement details
- G06T2207/20192—Edge enhancement; Edge preservation
-
- 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/20—Special algorithmic details
- G06T2207/20212—Image combination
- G06T2207/20221—Image fusion; Image merging
Abstract
本发明实施例提供了一种天空检测方法、装置、计算机设备和存储介质,该方法包括:采集原始视频数据,原始视频数据中具有多帧原始图像数据,对每帧原始图像数据进行语义识别,得到第一目标掩膜图,以在先原始图像数据及在先的第二目标掩膜图为参考,对当前帧第一目标掩膜图进行平滑处理,获得当前帧第二目标掩膜图,以当前帧原始图像数据为参考,对当前帧第二目标掩膜图的边缘进行细化,获得第三目标掩膜图,在语义识别的基础上,对第一目标掩膜图进行平滑处理,减少帧间的扰动或闪烁,维持了帧间的稳定性,并且,细化边缘可以弥补下采样的过程中对边缘的细节信息造成的损失,保证天空与非天空之间分割清晰。
Description
技术领域
本发明实施例涉及计算机视觉的技术领域,尤其涉及一种天空检测方法、装置、计算机设备和存储介质。
背景技术
在一些娱乐产品中,会对图像检测天空所处的区域,便于后续渲染处理,完成魔法换天等效果。
目前通常是使用神经网络检测天空,神经网络的结构较为复杂,以便抠图做到精细的效果,但是,由于复杂度较高且每次处理耗时较长,该方案通常是应用于图像处理,难以应用在资源较为有限的移动终端及处理量较大的视频数据。
发明内容
本发明实施例提出了一种天空检测方法、装置、计算机设备和存储介质,以解决如何在移动终端中对视频数据检测天空的问题。
第一方面,本发明实施例提供了一种天空检测方法,包括:
采集原始视频数据,所述原始视频数据中具有多帧原始图像数据;
对每帧所述原始图像数据进行语义识别,得到第一目标掩膜图,所述第一目标掩膜图用于记录所述原始图像数据中每个像素点属于天空的置信度;
以在先的所述原始图像数据及在先的第二目标掩膜图为参考,对当前帧所述第一目标掩膜图进行平滑处理,获得当前帧第二目标掩膜图;
以当前帧所述原始图像数据为参考,对当前帧所述第二目标掩膜图的边缘进行细化,获得第三目标掩膜图。
第二方面,本发明实施例还提供了一种天空检测装置,包括:
原始视频数据采集模块,用于采集原始视频数据,所述原始视频数据中具有多帧原始图像数据;
语义识别模块,用于对每帧所述原始图像数据进行语义识别,得到第一目标掩膜图,所述第一目标掩膜图用于记录所述原始图像数据中每个像素点属于天空的置信度;
平滑处理模块,用于以在先的所述原始图像数据及在先的第二目标掩膜图为参考,对当前帧所述第一目标掩膜图进行平滑处理,获得当前帧第二目标掩膜图;
边缘细化模块,用于以当前帧所述原始图像数据为参考,对当前帧所述第二目标掩膜图的边缘进行细化,获得第三目标掩膜图。
第三方面,本发明实施例还提供了一种移动终端,所述移动终端包括:
一个或多个处理器;
存储器,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如第一方面所述的天空检测方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如第一方面所述的天空检测方法。
在本实施例中,采集原始视频数据,原始视频数据中具有多帧原始图像数据,对每帧原始图像数据进行语义识别,得到第一目标掩膜图,第一目标掩膜图用于记录原始图像数据中每个像素点属于天空的置信度,以在先的原始图像数据及在先的第二目标掩膜图为参考,对当前帧第一目标掩膜图进行平滑处理,获得当前帧第二目标掩膜图,以当前帧原始图像数据为参考,对当前帧第二目标掩膜图的边缘进行细化,获得第三目标掩膜图,在语义识别的基础上,对第一目标掩膜图进行平滑处理,减少帧间的扰动或闪烁,维持了帧间的稳定性,并且,细化边缘可以弥补下采样的过程中对边缘的细节信息造成的损失,保证天空与非天空之间分割清晰,语义识别、平滑处理、细化边缘的计算量较少,保证在移动终端中实时对视频数据检测天空。
附图说明
图1为本发明实施例一提供的一种天空检测方法的流程图;
图2为本发明实施例一提供的一种掩膜流的处理示意图;
图3A为本发明实施例一提供的一种平滑处理的流程示意图;
图3B为本发明实施例一提供的一种边缘细化的流程示意图;
图4是本发明实施例二提供的一种天空检测方法的流程图;
图5是本发明实施例二提供的一种训练语义识别模型的流程示意图;
图6是本发明实施例三提供的一种天空检测方法的流程图;
图7为本发明实施例四提供的一种天空检测装置的结构示意图;
图8为本发明实施例五提供的一种计算机设备的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
实施例一
图1为本发明实施例一提供的一种天空检测方法的流程图,本实施例可适用于对视频数据检测天空的情况,该方法可以由天空检测装置来执行,该天空检测装置可以由软件和/或硬件实现,可配置在计算机设备中,尤其为移动终端,例如,手机、平板电脑、智能穿戴设备(如眼镜、手表等),等等,具体包括如下步骤:
步骤101、采集原始视频数据。
在本实施例中,移动终端的操作系统可以为Android(安卓)、iOS、HarmonyOS(鸿蒙)等,在这些操作系统中,可以安装业务涉及视频数据的应用,例如,短视频应用、即时通讯工具、直播应用,等等。
移动终端配置有一个或多个摄像头,该摄像头可以安装在移动终端的正面(此时又称前置摄像图),也可以安装在移动终端的背面(此时又称后置摄像头)。
若用户在户外的环境下,调用这些应用执行业务操作,比如,录制短视频、录制即时通讯中的视频消息、直播,等等,则如图2所示,这些应用可以使用操作系统提供的API(Application Programming Interface,应用程序接口)调用摄像头采集视频数据,记为原始视频数据(即视频流)。
例如,应用可以使用操作系统提供的Intent机制(Intent负责对应用中一次操作的动作、动作涉及数据、附加数据进行描述)跳转到摄像头,动作action为:android.media.action.STILL_IMAGE_CAMERA。
步骤102、对每帧原始图像数据进行语义识别,得到第一目标掩膜图。
原始视频数据中具有多帧图像数据,记为原始图像数据,如图2所示,根据业务操作的需求,对每帧原始图像数据进行语义识别,得到第一目标掩膜图,其中,第一目标掩膜图用于记录原始图像数据中每个像素点属于天空的置信度,这些置信度在一定程度上可以区分天空、非天空。
由于原始图像数据是一系列的数据,因此,第一目标掩膜图也为一系列的数据,可记为掩膜流,对于后续的平滑处理、细化处理而言,第一目标掩膜图形成的掩膜流可称之为原始的掩膜流。
在本实施例中,可以预先训练语义识别模型,调用该语义识别模型对每帧原始图像数据进行语义识别,得到第一目标掩膜图。
在具体实现中,可以加载语义识别模型,该语义识别模型属于seq2seq,即包括编码器Encoder、解码器Decoder,编码器Encoder、解码器Decoder的基本模块使用可分离卷积和残差模块,轻量化的结构设计满足移动终端实时检测天空的业务需求,如U-Net(U型网络)等。
一般情况下,编码器Encoder的作用是把一个不定长的输入序列变换成一个定长的背景变量,并在该背景变量中编码输入序列信息,编码器Encoder通常为多层的RNN(Recurrent Neural Network,循环神经网络),循环神经网络在隐藏层进行变换,通过自定义函数将各个时间步的隐藏状态变换为背景变量。
解码器Decoder的最初时间步输入来自特定的符号。对于一个输出中的序列,当解码器Decoder在某一时间步搜索出该符号时,即完成该输出序列。
编码器Encoder输出的背景变量编码了整个输入序列的信息,给定训练样本中的输出序列,对每个时间步,解码器Decoder输出的条件概率将基于之前的输出序列和背景变量计算。
解码器Decoder通常为多层的RNN(Recurrent Neural Network,循环神经网络),对于输出序列的时间步,解码器Decoder将上一时间步的输出以及背景变量作为输入,并将它们与上一时间步的隐藏状态变换为当前时间步的隐藏状态。
在本实施例中,针对每帧原始图像数据,调用编码器Encoder将原始图像数据编码为原始特征数据,即,将原始图像数据输入编码器Encoder中,编码器Encoder对原始图像数据进行编码,输出原始特征数据。
调用解码器Decoder将原始特征数据解码为第一目标掩膜图,即,将原始特征数据输入解码器Decoder中,解码器Decoder对原始特征数据进行解码,输出第一目标掩膜图。
步骤103、以在先的原始图像数据及在先的第二目标掩膜图为参考,对当前帧第一目标掩膜图进行平滑处理,获得当前帧第二目标掩膜图。
由于摄像头的硬件特性、白平衡等因素,使得相邻两帧原始图像数据之间存在一定的差异,加上语义识别的精确度等因素,导致相邻会使得相邻两帧第一目标掩膜图之间存在抖动。
对此,在本实施例中,如图2所示,可以对第一目标掩膜图形成的、原始的掩膜流进行平滑处理,从而减轻抖动,为便于区分,平滑处理之后的第一目标掩膜图记为第二目标掩膜图,那么,第二目标掩膜图用于记录原始图像数据中每个像素点属于天空的置信度。
进一步地,平滑处理的目的是减少帧间的抖动,因此,可以以在先的一帧或多帧原始图像数据(即视频流)及该原始图像数据对应的第二目标掩膜图(即,对在先一帧或多帧第一目标掩膜图进行平滑处理得到的第二目标掩膜图)作为参考,对当前第一目标掩膜图进行平滑处理,获得第二目标掩膜图,第二目标掩膜图形成的掩膜流为稳定的掩膜流。
所谓在先的原始图像数据,可以指排序在当前帧原始图像数据之前的一帧或多帧原始图像数据,所谓在先的第二目标掩膜图,可以指排序在当前帧第二目标掩膜图之前的一帧或多帧第二目标掩膜图。
在本发明的一个实施例中,步骤103可以包括如下步骤:
步骤1031、计算上一帧原始图像数据的灰度图与当前帧原始图像数据的灰度图之间在每个像素点上的距离。
在本实施例中,如图3A所示,可以将每帧原始图像数据转换为灰度图,将上一帧原始图像数据的灰度图与当前帧原始图像数据的灰度图进行比较,针对相同的像素点,对上一帧原始图像数据的灰度图中的像素点与当前帧原始图像数据的灰度图中的像素点之间计算距离,如欧式距离,此时,形成多个像素点的距离,可记为像素距离图。
步骤1032、将第一目标掩膜图中的置信度与距离共同映射为平滑权重。
如图3A所示,针对每个像素点,可以将该像素点对应的置信度(即第一目标掩膜图)及距离(即像素距离图)映射为用于平滑处理的权重,记为平滑权重,此时,形成多个像素点的平滑权重,可记为掩膜权重图。综合参考置信度及距离,可以使得平滑权重更加适配实际的场景。
在一个示例中,可以将数值一分别减去每个距离,作为第一平滑系数,将第一目标掩模图中每个置信度分别减去数值一,作为第二平滑系数,分别将第一平滑系数、第二平滑系数与第一目标掩模图中每个置信度之间的乘积加上一,获得平滑权重,表达如下:
ω=(1-β)(α-1)α+1
其中,ω为平滑权重,α为置信度,β为距离。
在本示例中,使用开口向上的二次函数来建模置信度、距离与平滑权重之间的关系,在置信度为0.5左右时最不确信,因此,给予当前帧第一目标掩膜图相对更小的平滑权重,而帧间的距离决定二次函数的最小值大小,距离越大代表原始图像数据变化越大,那么最小值趋近于1,表示变化剧烈时当前帧第一目标掩膜图的平滑权重基本均接近于1。
这种帧间平滑的方法能够自适应的根据原始图像数据的变化程度以及置信度来调整至合理的平滑权重,在没有肉眼可感延迟的前提下对边缘抖动以及闪烁均有明显的缓解,显著地提升图像级的天空分割应用到视频级的序列的视觉效果。
步骤1033、按照平滑权重对当前帧第一目标掩膜图与上一帧第二目标掩膜图进行融合,作为当前帧第二目标掩膜图。
在本实施例中,如图3A所示,可以按照平滑权重(掩膜权重图)对当前帧第一目标掩膜图与上一帧第二目标掩膜图进行加权的融合,得到当前帧第二目标掩膜图。
进一步地,对于初始第一帧第一目标掩膜图,上一帧第二目标掩膜图为空,每个像素点的置信度可记为0。
在具体实现中,可以将平滑权重乘以当前帧第一目标掩膜图,获得第一调权掩膜图,即,将平滑权重分别乘以当前帧第一目标掩膜图中每一个像素点的置信度。
将数值一减去平滑权重的差值乘以上一帧第二目标掩膜图,获得第二调权掩膜图,即,数值一(1)减去平滑权重,得到差值,将该差值分别乘以上一帧第二目标掩膜图中每一个像素点的置信度。
将第一调权掩膜图与第二调权掩膜图相加,获得当前帧第二目标掩膜图,即,针对同一个像素点,将第一调权掩膜图中该像素对应的置信度与第二调权掩膜图中该像素对应的置信度相加。
步骤104、以当前帧原始图像数据为参考,对当前帧第二目标掩膜图的边缘进行细化,获得第三目标掩膜图。
受限于移动终端的资源,语义识别模型本身输入尺寸过小会导致信息损失的问题,即,语义识别的边缘是比较粗糙的,与原始图像数据中边缘的匹配程度并不高,因此,如图2所示,可以对当前帧第二目标掩膜图进行上采样,利用当前帧原始图像数据对当前帧第二目标掩膜图的边缘细化(又称精细化),细化边缘之后的第二目标掩膜图记为第三目标掩膜图,那么,第三目标掩膜图用于记录原始图像数据中每个像素点属于天空的置信度,第三目标掩膜图形成的掩膜流为稳定的精细掩膜流。
所谓细化,通常是把一个具有一定面积的区域用一条曲线来代表它,那么,边缘细化,即为把较粗的边缘用一条较细的曲线来表示。
在本发明的一个实施例中,步骤104包括如下步骤:
步骤1041、以原始图像数据的灰度图作为引导图像,对第二目标掩膜图进行滤波处理。
在本实施例中,如图3B所示,可以查询在先对原始图像数据转换的灰度图,将原始图像数据的灰度图设置为引导图像,对第二目标掩膜图进行滤波处理,实现导向滤波,导向滤波假设滤波掩膜图与原始图像数据转换的灰度图在滤波窗口上存在局部线性关系,使得滤波掩膜图大体上与第二目标掩膜图相似,但是纹理部分与原始图像数据的灰度图相似,使得可以将原始图像数据中的梯度信息融入滤波掩膜图上。
步骤1042、在第二目标掩膜图中识别天空与非天空的之间的交界,作为目标交界图。
在本实施例中,如图3B所示,可以在当前帧原始图像数据对应的第二目标掩膜图中识别属于天空的区域与属于非天空的区域之间的交界,记为目标交界图。
在具体实现中,如图3B所示,可以将第二目标掩膜图依次执行腐蚀处理Erosion、膨胀处理Dilation,得到表示天空与非天空之间交界的目标交界图。
其中,腐蚀处理Erosion、膨胀处理Dilation是两种基本的形态学运算,主要用来寻找第二目标掩膜图中的极小区域、极大区域。
把结构元素B平移a后得到Ba,若Ba包含于X,此时,记下这个a点,所有满足上述条件的a点组成的集合称做X被B腐蚀Erosion的结果。
膨胀处理Dilation可以看做是腐蚀处理Erosion的对偶运算,其定义是:把结构元素B平移a后得到Ba,若Ba击中X,此时,记下这个a点,所有满足上述条件的a点组成的集合称做X被B膨胀Dilation的结果。
进一步地,可以对目标交界图依次执行均值滤波处理、归一化处理Normalization,便于后续的运算,此时,目标交界图起权重的作用,可记为权重热图。
其中,均值滤波是线性滤波算法,它是指在目标交界图上对目标像素点给一个模板,该模板包括了其周围的临近像素点(以目标像素点为中心的周围8个像素点,构成一个滤波模板,即包括目标像素点本身),再用模板中的全体像素的平均值来代替原来像素值。
归一化包括Min-Max归一化、平均归一化、非线性归一化等等,是一种无量纲处理手段,使物理系统数值的绝对值变成某种相对值关系。
步骤1043、将第二目标掩膜图、滤波掩膜图与目标交界图进行融合,获得第三目标掩膜图。
由于导向滤波容易将原始图像数据中属于非天空的区域的梯度传递到第二目标掩膜图中,因此,如图3B所示,本实施例调整属于天空的区域与属于非天空的区域之间的交界即可实现边缘细化,此时,目标交界图(权重热图)可以消除直接使用导线滤波带来的封面影响,在本实施例中,可以对第二目标掩膜图、滤波掩膜图与目标交界图进行融合,得到当前帧第三目标掩膜图,强调了对属于天空的区域与属于非天空的区域之间的交界的后处理,而忽略了非天空区域的影响。
其中,第三目标掩膜图形成的掩膜流为稳定、精细的掩膜流。
在具体实现中,可以将滤波掩膜图与目标交界图进行加权融合,获得第三目标掩膜图。
一方面,可以将第二目标掩膜图乘以预设的第一边缘权重,获得第三调权掩膜图,即,将滤波掩膜图中每个置信度乘以第一边缘权重。
另一方面,将掩膜滤波图乘以预设的第二边缘权重,获得第四调权掩膜图,即,将目标交界图中每个像素点的灰度值乘以第二边缘权重。
再一方面,将目标交界图乘以预设的第三边缘权重,获得第五调权掩膜图。
其中,导向滤波可以作为核心,此时第一边缘权重均可大于第二边缘权重、第三边缘权重。
从而将第三调权掩膜图、第四调权掩膜图与第五调权掩膜图相加,获得第三目标掩膜图,即,对于相同的像素点,将第三调权掩膜图中该像素点的置信度、第四调权掩膜图、第五调权掩膜图中该像素点的灰度值相加。
日常在户外录制视频数据,属于天空的区域与属于非天空的区域之间的交界十分复杂,受限于移动终端的资源,部署移动终端在神经网络通常控制在较小的输入尺寸,对图像数据下采样的过程中会导致边缘许多细节信息损失,因此,在移动终端实时检测的前提下,单纯通过神经网络完成天空的准确识别是非常困难的。
并且,由于神经网络本身对于扰动非常敏感的特性,视频数据帧间会出现明显的抖动或闪烁情况,影响用户体验。
在本实施例中,采集原始视频数据,原始视频数据中具有多帧原始图像数据,对每帧原始图像数据进行语义识别,得到第一目标掩膜图,第一目标掩膜图用于记录原始图像数据中每个像素点属于天空的置信度,以在先原始图像数据及第二目标掩膜图为参考,对当前第一目标掩膜图进行平滑处理,获得第二目标掩膜图,以原始图像数据为参考,对第二目标掩膜图的边缘进行细化,获得第三目标掩膜图,在语义识别的基础上,对第一目标掩膜图进行平滑处理,减少帧间的扰动或闪烁,维持了帧间的稳定性,并且,细化边缘可以弥补下采样的过程中对边缘的细节信息造成的损失,保证天空与非天空之间分割清晰,语义识别、平滑处理、细化边缘的计算量较少,保证在移动终端中实时对视频数据检测天空。
进一步地,检测天空之后,可以应用到特效贴纸等业务上,特效渲染时将分割天空的结果(第三目标掩膜图)作为遮罩呈现丰富多样的效果,最后结合AR(AugmentedReality,增强现实)技术营造更为逼真的效果,给予了用户更沉浸式的体验。
实施例二
图4为本发明实施例二提供的一种天空检测方法的流程图,本实施例以前述实施例为基础,进一步增加训练语义识别模型的操作,语义识别由语义识别模型执行,该方法具体包括如下步骤:
步骤401、获取样本图像数据。
在本实施例中,如图5所示,可以通过人工标记、从公开了标准数据集中采样等方式获取多帧样本图像数据,其中,样本图像数据配置有原始样本掩码图,该原始样本掩码图用于记录样本图像数据中每个像素点标属于天空的置信度,该置信度通常为0或1,原始样本掩码图作为标签Tag,在标签Tag的监督下,训练语义识别模型,使得语义识别模型可以输出像素点属于天空的置信度。
进一步地,训练语义识别模型的过程可以是重新训练语义识别模型,也可以使用在先训练的语义识别模型的基础上进行微调fine-tuning,本实施例对此不加以限制。
步骤402、调用语义识别模型对样本图像数据进行语义识别,得到预测样本掩膜图。
在本实施例中,可预先定义语义识别模型的结构,语义识别模型的结构不局限于人工设计的神经网络,也可以通过模型量化方法优化的神经网络,通过NAS(神经网络结构搜索)方法搜索的神经网络,等等,本实施例对此不加以限制。
如图5所示,将样本图像数据输入语义识别模型,语义识别模型按照其结构对对样本图像数据进行语义识别,输出每个像素点属于天空的置信度,记为预测样本掩膜图,即,预测样本掩膜图用于记录样本图像数据中每个像素点属于天空的置信度。
在具体实现中,如图5所示,可在内存加载语义识别模型,使得语义识别模型运行,其中,语义识别模型包括编码器Encoder、解码器Decoder。
调用编码器Encoder将样本图像数据编码为样本特征数据,即,将样本图像数据输入编码器Encoder中,编码器Encoder对样本图像数据进行编码,输出样本特征数据。
调用解码器Decoder将样本特征数据解码为预测样本掩膜图,即,将样本特征数据输入解码器Decoder中,解码器Decoder对样本特征数据进行解码,输出第一目标掩膜图。
步骤403、计算原始样本掩码图与预测样本掩码图之间的差异,作为第一损失值。
在本实施例中,如图5所示,可以将原始样本掩码图与预测样本掩码图带入损失函数中,如softmax交叉熵损失函数,计算计算原始样本掩码图与预测样本掩码图之间的差异,得到第一损失值,第一损失值表示置信度上的损失。
步骤404、根据第一损失值更新语义识别模型。
对语义识别模型进行反向传播,基于第一损失值更新语义识别模型中的权重。
在某些情况下,可以对语义识别模型进行反向传播,将第一损失值代入SGD(stochastic gradient descent,随机梯度下降)、Adam(Adaptive momentum,自适应动量)等算法中,计算语义识别模型中权重的更新幅度,从而按照该更新幅度更新语义识别模型中的权重。
在本发明的一个实施例中,考虑到属于天空的区域的边缘标注较难的问题,可基于梯度一致性的损失进行辅助,弥补属于天空的区域的边缘标注精度不足的缺陷,能够利用原始图像数据中的梯度信息以及天空本身颜色相对单一的特性提升语义识别模型的性能,从而提高语义识别模型语义识别的精确度,则在本实施例中,步骤404可以包括如下步骤:
步骤4041、对样本图像数据计算梯度,获得第一梯度图像。
在本实施例中,如图5所示,可使用Sobel算子、Roberts算子、Prewitt算子、Laplace算子等算子对样本图像数据计算梯度,记为第一梯度图像。
步骤4042、对预测样本掩膜图计算梯度,获得第二梯度图像。
在本实施例中,如图5所示,可使用Sobel算子、Roberts算子、Prewitt算子、Laplace算子等图像锐化算法对预测样本掩膜图计算梯度,获得第二梯度图像。
步骤4043、计算第一梯度图像与第二梯度图像之间在交界区域上的差异,获得第二损失值。
在本实施例中,计算第一梯度图像与第二梯度图像之间在交界区域上的差异,记为第二损失值,第二损失值为梯度一致性上的损失。
其中,交界区域表示样本图像数据中天空与非天空之间的交界。
在具体实现中,如图5所示,可以将原始样本掩模图依次执行腐蚀处理Erosion、膨胀处理Dilation,得到表示天空与非天空之间交界的样本交界图。
一方面,如图5所示,对第一梯度图像与样本交界图执行与操作,作为第一梯度交界图,即,对第一梯度图像与样本交界图取交集、提取第一梯度图像中位于表示天空与非天空之间交界的数据。
另一方面,如图5所示,对第二梯度图像与样本交界图执行与操作,作为第二梯度交界图,即,对第二梯度图像与样本交界图取交集、提取第二梯度图像中位于表示天空与非天空之间交界的数据。
如图5所示,计算第一梯度交界图与第二梯度交界图之间的差异,获得第二损失值,示例性地,可以计算第一梯度交界图中每个像素点与第二梯度交界图中每个像素点之间的范数距离L2,计算所有像素点的范数距离L2的平均值或和值,作为第二损失值。
步骤4044、对第一损失值与第二损失值进行融合,获得第三损失值。
在本实施例中,如图5所示,可以综合参考第一损失值、第二损失值,对第一损失值、第二损失值进行融合,获得第三损失值。
其中一种融合方式为线性融合,即,将第一损失值乘以预设的第一损失权重,获得第一调权损失值,将第二损失值乘以预设的第二损失权重,获得第二调权损失值,计算第一调权损失值、第二调权损失值之间的和值,作为总损失值,其中,第一损失权重大于损失权重。
步骤4045、按照第三损失值调整语义识别模型中的权重。
在本实施例中,如图5所示,可以对语义识别模型进行反向传播,将第三损失值代入SGD、Adam等算法中,计算语义识别模型中权重的更新幅度,从而按照该更新幅度更新语义识别模型中的权重。
步骤405、判断当前迭代的次数是否到达预设的阈值;若是,则执行步骤406,若否,则返回执行步骤402。
步骤406、确定确定语义识别模型完成训练。
在本实施例中,可以预先对迭代的次数设置阈值,作为停止条件,在每轮迭代训练中,统计当前迭代的次数,从而判断是否到达该阈值。
如果到达该阈值,则可以认为语义识别模型训练完成,此时,记录语义识别模型中的权重。
如果未到达该阈值,则可以进入下一轮迭代训练,如此循环迭代训练,直至语义识别模型训练完成。
在本实施例中,服务端可在离线训练语义识别模型,记录语义识别模型的结构及其权重,通过各种方式分发至移动终端,移动终端可加载语义识别模型,实时在原始视频数据检测天空。
步骤407、采集原始视频数据。
其中,原始视频数据中具有多帧原始图像数据。
步骤408、调用语义识别模型对每帧原始图像数据进行语义识别,得到第一目标掩膜图。
其中,第一目标掩膜图用于记录原始图像数据中每个像素点属于天空的置信度。
步骤409、以在先的原始图像数据及在先的第二目标掩膜图为参考,对当前帧第一目标掩膜图进行平滑处理,获得当前帧第二目标掩膜图。
步骤410、以当前帧原始图像数据为参考,对当前帧第二目标掩膜图的边缘进行细化,获得第三目标掩膜图。
实施例三
图6为本发明实施例三提供的一种天空检测方法的流程图,本实施例以前述实施例为基础,进一步替换天空的操作,该方法具体包括如下步骤:
步骤601、采集原始视频数据。
其中,原始视频数据中具有多帧原始图像数据。
步骤602、对每帧原始图像数据进行语义识别,得到第一目标掩膜图。
其中,第一目标掩膜图用于记录原始图像数据中每个像素点属于天空的置信度。
步骤603、以在先的原始图像数据及在先的第二目标掩膜图为参考,对当前帧第一目标掩膜图进行平滑处理,获得当前帧第二目标掩膜图。
步骤604、以当前帧原始图像数据为参考,对当前帧第二目标掩膜图的边缘进行细化,获得第三目标掩膜图。
步骤605、获取用于替换天空的业务图像数据。
在实施例中,可以根据用户对于业务的需求,从移动终端本地读取用于替换天空的业务图像数据,或者,从服务端下载用于替换天空的业务图像数据。
示例性地,当前的时间为中午,原始视频数据中的场景为天空蔚蓝、偶有白云,用户寻找时间为傍晚,天空有晚霞的业务图像数据,替换原始视频数据中的天空,使得原始视频数据的场景变成时间为傍晚,天空有晚霞。
步骤606、按照第三目标掩膜图对原始图像数据与业务图像数据进行融合,获得目标图像数据。
在具体实现中,第三目标掩膜图作为像素点属于天空的置信度,起权重的作用,可以参考第三目标掩膜图对原始图像数据与业务图像数据进行加权融合,获得目标图像数据。
一方面,可以将原始图像数据中每个像素点的颜色值乘以降权系数,获得调权原始图像,其中,降权系数为数值一减去第三目标掩膜图中像素点对应的置信度的差值。
另一方面,将业务图像数据每个像素点的颜色值乘以第三目标掩膜图中像素点对应的置信度,获得调权业务图像。
将调权原始图像与调权业务图像相加,获得目标图像数据。
对于同一像素点,如果属于天空的置信度较高,其颜色值更加倾向于业务图像数据中的颜色值,实现天空的替换,如果属于天空的置信度较低,其颜色值更加倾向于原始图像数据中的颜色值,保留非天空的区域,两者之间的交界属于天空的置信度中等,保证天空与非天空之间的自然过渡。
步骤607、在原始视频数据中将目标图像数据替换原始图像数据,获得目标视频数据。
在录制原始视频数据的过程中,在原始视频数据中,可以实时将替换天空之后的目标图像数据替换原始图像数据,可以获得目标视频数据,实时播放目标视频数据,供用户浏览替换天空的效果。
应用在移动端的天空分割方法通常使用轻量化的神经网络实现端到端的分割,该类方法主要受限与计算量导致分割结果比较粗糙,预测的边界也容易出现抖动闪烁等不稳定的现象,粗糙的效果很难应用到短视频等视频数据中的贴纸当中。
而本实施例在语义识别的基础上进行平滑处理、细化边缘,减少抖动、闪烁的问题,保证检测天空的准确性、实时性,使得在短视频等视频数据中应用贴纸等业务。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
实施例四
图7为本发明实施例四提供的一种天空检测装置的结构框图,具体可以包括如下模块:
原始视频数据采集模块701,用于采集原始视频数据,所述原始视频数据中具有多帧原始图像数据;
语义识别模块702,用于对每帧所述原始图像数据进行语义识别,得到第一目标掩膜图,所述第一目标掩膜图用于记录所述原始图像数据中每个像素点属于天空的置信度;
平滑处理模块703,用于以在先的所述原始图像数据及在先的第二目标掩膜图为参考,对当前帧所述第一目标掩膜图进行平滑处理,获得当前帧第二目标掩膜图;
边缘细化模块704,用于以当前帧所述原始图像数据为参考,对当前帧所述第二目标掩膜图的边缘进行细化,获得第三目标掩膜图。
在本发明的一个实施例中,所述语义识别模块702包括:
语义识别模型加载模块,用于加载语义识别模型,所述语义识别模型包括编码器、解码器;
原始编码模块,用于调用所述编码器将所述原始图像数据编码为原始特征数据;
原始解码模块,用于调用所述解码器将所述原始特征数据解码为第一目标掩膜图。
在本发明的一个实施例中,所述语义识别由语义识别模型执行,所述装置还包括:
样本图像数据获取模块,用于获取样本图像数据,所述样本图像数据配置有原始样本掩码图,所述原始样本掩码图用于记录所述样本图像数据中每个像素点标属于天空的置信度;
语义预测模块,用于调用语义识别模型对所述样本图像数据进行语义识别,得到预测样本掩膜图,所述预测样本掩膜图用于记录所述样本图像数据中每个像素点属于天空的置信度;
第一损失值计算模块,用于计算所述原始样本掩码图与所述预测样本掩码图之间的差异,作为第一损失值;
语义识别模型更新模块,用于根据所述第一损失值更新所述语义识别模型;
迭代次数判断模块,用于判断当前迭代的次数是否到达预设的阈值;若是,则调用训练完成确定模块,若否,则返回调用所述语义预测模块;
完成确定模块,用于确定所述语义识别模型完成训练。
在本发明的一个实施例中,所述样本图像数据获取模块包括:
语义识别模型加载模块,用于加载语义识别模型,所述语义识别模型包括编码器、解码器;
样本编码模块,用于调用所述所述编码器将所述样本图像数据编码为样本特征数据;
样本解码模块,用于调用所述解码器将所述样本特征数据解码为预测样本掩膜图。
在本发明的一个实施例中,所述语义识别模型更新模块包括:
第一梯度计算模块,用于对所述样本图像数据计算梯度,获得第一梯度图像;
第二梯度计算模块,用于对所述预测样本掩膜图计算梯度,获得第二梯度图像;
第二损失值计算模块,用于计算所述第一梯度图像与所述第二梯度图像之间在交界区域上的差异,获得第二损失值,所述交界区域表示所述样本图像数据中天空与非天空之间的交界;
损失值融合模块,用于对所述第一损失值与所述第二损失值进行融合,获得第三损失值;
权重更新模块,用于按照所述第三损失值调整所述语义识别模型中的权重。
在本发明的一个实施例中,所述第二损失值计算模块包括:
样本交界识别模块,用于将所述原始样本掩模图依次执行腐蚀处理、膨胀处理,得到表示天空与非天空之间交界的样本交界图;
第一与操作执行模块,用于对所述第一梯度图像与所述样本交界图执行与操作,作为第一梯度交界图;
第二与操作执行模块,用于对所述第二梯度图像与所述样本交界图执行与操作,作为第二梯度交界图;
交界差异计算模块,用于计算所述第一梯度交界图与所述第二梯度交界图之间的差异,获得第二损失值。
在本发明的一个实施例中,所述损失值融合模块包括:
第一调权损失值计算模块,用于将所述第一损失值乘以预设的第一损失权重,获得第一调权损失值;
第二调权损失值计算模块,用于将所述第二损失值乘以预设的第二损失权重,获得第二调权损失值;
损失和值计算模块,用于计算所述第一调权损失值、所述第二调权损失值之间的和值,作为总损失值;
其中,所述第一损失权重大于所述损失权重。
在本发明的一个实施例中,所述平滑处理模块703包括:
灰度距离计算模块,用于计算上一帧所述原始图像数据的灰度图与当前帧所述原始图像数据的灰度图之间在每个像素点上的距离;
平滑权重映射模块,用于将所述第一目标掩膜图中的置信度与所述距离共同映射为平滑权重;
掩膜图融合模块,用于按照所述平滑权重对当前帧所述第一目标掩膜图与上一帧第二目标掩膜图进行融合,作为当前帧第二目标掩膜图。
在本发明的一个实施例中,所述平滑权重映射模块包括:
第一平滑系数计算模块,用于将数值一分别减去每个所述距离,作为第一平滑系数;
第二平滑系数计算模块,用于将所述第一目标掩模图中每个所述置信度分别减去数值一,作为第二平滑系数;
平滑系数运算模块,用于分别将所述第一平滑系数、所述第二平滑系数与所述第一目标掩模图中每个所述置信度之间的乘积加上一,获得平滑权重。
在本发明的一个实施例中,所述掩膜图融合模块包括:
第一调权掩膜图计算模块,用于将所述平滑权重乘以当前帧所述第一目标掩膜图,获得第一调权掩膜图;
第二调权掩膜图计算模块,用于将数值一减去所述平滑权重的差值乘以上一帧第二目标掩膜图,获得第二调权掩膜图;
第一调权掩膜图相加模块,用于将所述第一调权掩膜图与所述第二调权掩膜图相加,获得当前帧第二目标掩膜图。
在本发明的一个实施例中,所述边缘细化模块704包括:
导向滤波模块,用于以所述原始图像数据的灰度图作为引导图像,对所述第二目标掩膜图进行滤波处理;
目标交界图识别模块,用于在所述第二目标掩膜图中识别天空与非天空的之间的交界,作为目标交界图;
交界融合模块,用于将所述第二目标掩膜图、所述滤波掩膜图与所述目标交界图进行融合,获得第三目标掩膜图。
在本发明的一个实施例中,所述目标交界图识别模块包括:
交界计算模块,用于将所述第二目标掩膜图依次执行腐蚀处理、膨胀处理,得到表示天空与非天空之间交界的目标交界图;
后处理模块,用于对所述目标交界图依次执行均值滤波处理、归一化处理。
在本发明的一个实施例中,所述交界融合模块包括:
第三调权掩膜图计算模块,用于将所述第二目标掩膜图乘以预设的第一边缘权重,获得第三调权掩膜图;
第四调权掩膜图计算模块,用于将所述掩膜滤波图乘以预设的第二边缘权重,获得第四调权掩膜图;
第五调权掩膜图计算模块,用于将所述目标交界图乘以预设的第三边缘权重,获得第五调权掩膜图;
第二调权掩膜图相加模块,用于将所述第三调权掩膜图、所述第四调权掩膜图与所述第五调权掩膜图相加,获得第三目标掩膜图。
在本发明的一个实施例中,还包括:
业务图像数据获取模块,用于获取用于替换天空的业务图像数据;
业务图像数据融合模块,用于按照所述第三目标掩膜图对所述原始图像数据与所述业务图像数据进行融合,获得目标图像数据;
目标视频数据生成模块,用于在所述原始视频数据中将所述目标图像数据替换所述原始图像数据,获得目标视频数据。
在本发明的一个实施例中,所述业务图像数据融合模块包括:
调权原始图像计算模块,用于将所述原始图像数据中每个像素点的颜色值乘以降权系数,获得调权原始图像,所述降权系数为数值一减去所述第三目标掩膜图中所述像素点对应的置信度的差值;
调权业务图像计算模块,用于将所述业务图像数据每个像素点的颜色值乘以所述第三目标掩膜图中所述像素点对应的置信度,获得调权业务图像;
调权业务图像相加模块,用于将所述调权原始图像与所述调权业务图像相加,获得目标图像数据。
本发明实施例所提供的天空检测装置可执行本发明任意实施例所提供的天空检测方法,具备执行方法相应的功能模块和有益效果。
实施例五
图8为本发明实施例五提供的一种计算机设备的结构示意图。图8示出了适于用来实现本发明实施方式的示例性计算机设备12的框图。图8显示的计算机设备12仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图8所示,计算机设备12以通用计算设备的形式表现。计算机设备12的组件可以包括但不限于:一个或者多个处理器或者处理单元16,系统存储器28,连接不同系统组件(包括系统存储器28和处理单元16)的总线18。
总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线,微通道体系结构(MAC)总线,增强型ISA总线、视频电子标准协会(VESA)局域总线以及外围组件互连(PCI)总线。
计算机设备12典型地包括多种计算机系统可读介质。这些介质可以是任何能够被计算机设备12访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
系统存储器28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(RAM)30和/或高速缓存存储器32。计算机设备12可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统34可以用于读写不可移动的、非易失性磁介质(图8未显示,通常称为“硬盘驱动器”)。尽管图8中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如CD-ROM,DVD-ROM或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。存储器28可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。
具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在例如存储器28中,这样的程序模块42包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本发明所描述的实施例中的功能和/或方法。
计算机设备12也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24等)通信,还可与一个或者多个使得用户能与该计算机设备12交互的设备通信,和/或与使得该计算机设备12能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口22进行。并且,计算机设备12还可以通过网络适配器20与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器20通过总线18与计算机设备12的其它模块通信。应当明白,尽管图中未示出,可以结合计算机设备12使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
处理单元16通过运行存储在系统存储器28中的程序,从而执行各种功能应用以及数据处理,例如实现本发明实施例所提供的天空检测方法。
实施例六
本发明实施例六还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述天空检测方法的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
其中,计算机可读存储介质例如可以包括但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
Claims (18)
1.一种天空检测方法,其特征在于,包括:
采集原始视频数据,所述原始视频数据中具有多帧原始图像数据;
对每帧所述原始图像数据进行语义识别,得到第一目标掩膜图,所述第一目标掩膜图用于记录所述原始图像数据中每个像素点属于天空的置信度;
以在先的所述原始图像数据及在先的第二目标掩膜图为参考,对当前帧所述第一目标掩膜图进行平滑处理,获得当前帧第二目标掩膜图;
以当前帧所述原始图像数据为参考,对当前帧所述第二目标掩膜图的边缘进行细化,获得第三目标掩膜图。
2.根据权利要求1所述的方法,其特征在于,所述对每帧所述原始图像数据进行语义识别,得到第一目标掩膜图,包括:
加载语义识别模型,所述语义识别模型包括编码器、解码器;
调用所述编码器将所述原始图像数据编码为原始特征数据;
调用所述解码器将所述原始特征数据解码为第一目标掩膜图。
3.根据权利要求1所述的方法,其特征在于,所述语义识别由语义识别模型执行,所述方法还包括:
获取样本图像数据,所述样本图像数据配置有原始样本掩码图,所述原始样本掩码图用于记录所述样本图像数据中每个像素点标属于天空的置信度;
调用语义识别模型对所述样本图像数据进行语义识别,得到预测样本掩膜图,所述预测样本掩膜图用于记录所述样本图像数据中每个像素点属于天空的置信度;
计算所述原始样本掩码图与所述预测样本掩码图之间的差异,作为第一损失值;
根据所述第一损失值更新所述语义识别模型;
判断当前迭代的次数是否到达预设的阈值;若是,则确定所述语义识别模型完成训练;若否,则返回执行所述调用语义识别模型对所述样本图像数据进行语义识别,得到预测样本掩膜图。
4.根据权利要求3所述的方法,其特征在于,所述调用语义识别模型对所述样本图像数据进行语义识别,得到预测样本掩膜图,包括:
加载语义识别模型,所述语义识别模型包括编码器、解码器;
调用所述所述编码器将所述样本图像数据编码为样本特征数据;
调用所述解码器将所述样本特征数据解码为预测样本掩膜图。
5.根据权利要求3所述的方法,其特征在于,所述根据所述第一损失值更新所述语义识别模型,包括:
对所述样本图像数据计算梯度,获得第一梯度图像;
对所述预测样本掩膜图计算梯度,获得第二梯度图像;
计算所述第一梯度图像与所述第二梯度图像之间在交界区域上的差异,获得第二损失值,所述交界区域表示所述样本图像数据中天空与非天空之间的交界;
对所述第一损失值与所述第二损失值进行融合,获得第三损失值;
按照所述第三损失值调整所述语义识别模型中的权重。
6.根据权利要求5所述的方法,其特征在于,所述计算所述第一梯度图像与所述第二梯度图像之间在交界区域上的差异,获得第二损失值,包括:
将所述原始样本掩模图依次执行腐蚀处理、膨胀处理,得到表示天空与非天空之间交界的样本交界图;
对所述第一梯度图像与所述样本交界图执行与操作,作为第一梯度交界图;
对所述第二梯度图像与所述样本交界图执行与操作,作为第二梯度交界图;
计算所述第一梯度交界图与所述第二梯度交界图之间的差异,获得第二损失值。
7.根据权利要求5所述的方法,其特征在于,所述对所述第一损失值与所述第二损失值进行融合,获得第三损失值,包括:
将所述第一损失值乘以预设的第一损失权重,获得第一调权损失值;
将所述第二损失值乘以预设的第二损失权重,获得第二调权损失值;
计算所述第一调权损失值、所述第二调权损失值之间的和值,作为总损失值;
其中,所述第一损失权重大于所述损失权重。
8.根据权利要求1-7中任一项所述的方法,其特征在于,所述以在先的所述原始图像数据及在先的第二目标掩膜图为参考,对当前帧所述第一目标掩膜图进行平滑处理,获得在先的第二目标掩膜图,包括:
计算上一帧所述原始图像数据的灰度图与当前帧所述原始图像数据的灰度图之间在每个像素点上的距离;
将所述第一目标掩膜图中的置信度与所述距离共同映射为平滑权重;
按照所述平滑权重对当前帧所述第一目标掩膜图与上一帧第二目标掩膜图进行融合,作为当前帧第二目标掩膜图。
9.根据权利要求8所述的方法,其特征在于,所述将所述第一目标掩膜图中的置信度与所述距离共同映射为平滑权重,包括:
将数值一分别减去每个所述距离,作为第一平滑系数;
将所述第一目标掩模图中每个所述置信度分别减去数值一,作为第二平滑系数;
分别将所述第一平滑系数、所述第二平滑系数与所述第一目标掩模图中每个所述置信度之间的乘积加上一,获得平滑权重。
10.根据权利要求8所述的方法,其特征在于,所述按照所述平滑权重对当前帧所述第一目标掩膜图与上一帧第二目标掩膜图进行融合,作为当前帧第二目标掩膜图,包括:
将所述平滑权重乘以当前帧所述第一目标掩膜图,获得第一调权掩膜图;
将数值一减去所述平滑权重的差值乘以上一帧第二目标掩膜图,获得第二调权掩膜图;
将所述第一调权掩膜图与所述第二调权掩膜图相加,获得当前帧第二目标掩膜图。
11.根据权利要求1-7中任一项所述的方法,其特征在于,所述以在先的所述原始图像数据为参考,对在先的所述第二目标掩膜图的边缘进行细化,获得第三目标掩膜图,包括:
以所述原始图像数据的灰度图作为引导图像,对所述第二目标掩膜图进行滤波处理,获得滤波掩膜图;
在所述第二目标掩膜图中识别天空与非天空的之间的交界,作为目标交界图;
将所述第二目标掩膜图、所述滤波掩膜图与所述目标交界图进行融合,获得第三目标掩膜图。
12.根据权利要求11所述的方法,其特征在于,所述在所述第二目标掩膜图中识别天空与非天空的之间的交界,作为目标交界图,包括:
将所述第二目标掩膜图依次执行腐蚀处理、膨胀处理,得到表示天空与非天空之间交界的目标交界图;
对所述目标交界图依次执行均值滤波处理、归一化处理。
13.根据权利要求11所述的方法,其特征在于,所述将所述第二目标掩膜图、所述滤波掩膜图与所述目标交界图进行融合,获得第三目标掩膜图,包括:
将所述第二目标掩膜图乘以预设的第一边缘权重,获得第三调权掩膜图;
将所述掩膜滤波图乘以预设的第二边缘权重,获得第四调权掩膜图;
将所述目标交界图乘以预设的第三边缘权重,获得第五调权掩膜图;
将所述第三调权掩膜图、所述第四调权掩膜图与所述第五调权掩膜图相加,获得第三目标掩膜图。
14.根据权利要求1-7、8-9、12-13中任一项所述的方法,其特征在于,还包括:
获取用于替换天空的业务图像数据;
按照所述第三目标掩膜图对所述原始图像数据与所述业务图像数据进行融合,获得目标图像数据;
在所述原始视频数据中将所述目标图像数据替换所述原始图像数据,获得目标视频数据。
15.根据权利要求14所述的方法,其特征在于,所述按照所述第三目标掩膜图对所述原始图像数据与所述业务图像数据进行融合,获得目标图像数据,包括:
将所述原始图像数据中每个像素点的颜色值乘以降权系数,获得调权原始图像,所述降权系数为数值一减去所述第三目标掩膜图中所述像素点对应的置信度的差值;
将所述业务图像数据每个像素点的颜色值乘以所述第三目标掩膜图中所述像素点对应的置信度,获得调权业务图像;
将所述调权原始图像与所述调权业务图像相加,获得目标图像数据。
16.一种天空检测装置,其特征在于,包括:
原始视频数据采集模块,用于采集原始视频数据,所述原始视频数据中具有多帧原始图像数据;
语义识别模块,用于对每帧所述原始图像数据进行语义识别,得到第一目标掩膜图,所述第一目标掩膜图用于记录所述原始图像数据中每个像素点属于天空的置信度;
平滑处理模块,用于以在先的所述原始图像数据及在先的第二目标掩膜图为参考,对当前帧所述第一目标掩膜图进行平滑处理,获得在先的第二目标掩膜图;
边缘细化模块,用于以在先的所述原始图像数据为参考,对在先的所述第二目标掩膜图的边缘进行细化,获得第三目标掩膜图。
17.一种计算机设备,其特征在于,所述计算机设备包括:
一个或多个处理器;
存储器,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-15中任一项所述的天空检测方法。
18.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如权利要求1-15中任一项所述的天空检测方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111341257.XA CN114066841A (zh) | 2021-11-12 | 2021-11-12 | 一种天空检测方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111341257.XA CN114066841A (zh) | 2021-11-12 | 2021-11-12 | 一种天空检测方法、装置、计算机设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114066841A true CN114066841A (zh) | 2022-02-18 |
Family
ID=80271656
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111341257.XA Pending CN114066841A (zh) | 2021-11-12 | 2021-11-12 | 一种天空检测方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114066841A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115457381A (zh) * | 2022-08-18 | 2022-12-09 | 广州从埔高速有限公司 | 一种高速公路违法用地检测方法、系统、装置及存储介质 |
-
2021
- 2021-11-12 CN CN202111341257.XA patent/CN114066841A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115457381A (zh) * | 2022-08-18 | 2022-12-09 | 广州从埔高速有限公司 | 一种高速公路违法用地检测方法、系统、装置及存储介质 |
CN115457381B (zh) * | 2022-08-18 | 2023-09-05 | 广州从埔高速有限公司 | 一种高速公路违法用地检测方法、系统、装置及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111292337B (zh) | 图像背景替换方法、装置、设备及存储介质 | |
CN108895981B (zh) | 一种三维测量方法、装置、服务器和存储介质 | |
CN113313022A (zh) | 文字识别模型的训练方法和识别图像中文字的方法 | |
CN112861830B (zh) | 特征提取方法、装置、设备、存储介质以及程序产品 | |
CN112862877A (zh) | 用于训练图像处理网络和图像处理的方法和装置 | |
WO2023082453A1 (zh) | 一种图像处理方法及装置 | |
CN111199541A (zh) | 图像质量评价方法、装置、电子设备及存储介质 | |
CN115565177B (zh) | 文字识别模型训练、文字识别方法、装置、设备及介质 | |
CN112270246B (zh) | 视频行为识别方法及装置、存储介质、电子设备 | |
CN114723760B (zh) | 人像分割模型的训练方法、装置及人像分割方法、装置 | |
CN115861131A (zh) | 基于图像生成视频、模型的训练方法、装置及电子设备 | |
CN116012232A (zh) | 图像处理方法、装置及存储介质、电子设备 | |
CN116721460A (zh) | 手势识别方法、装置、电子设备以及存储介质 | |
CN116757978A (zh) | 一种红外与可见光图像自适应融合方法、系统和电子设备 | |
CN114066841A (zh) | 一种天空检测方法、装置、计算机设备和存储介质 | |
CN113869205A (zh) | 对象检测方法、装置、电子设备和存储介质 | |
CN112364933A (zh) | 图像分类方法、装置、电子设备和存储介质 | |
CN114549904B (zh) | 视觉处理及模型训练方法、设备、存储介质及程序产品 | |
CN115953468A (zh) | 深度和自运动轨迹的估计方法、装置、设备及存储介质 | |
CN113610856B (zh) | 训练图像分割模型和图像分割的方法和装置 | |
CN112052863B (zh) | 一种图像检测方法及装置、计算机存储介质、电子设备 | |
CN114461078A (zh) | 一种基于人工智能的人机交互方法 | |
CN114842066A (zh) | 图像深度识别模型训练方法、图像深度识别方法及装置 | |
CN113627342A (zh) | 视频深度特征提取优化的方法、系统、设备及存储介质 | |
CN114463734A (zh) | 文字识别方法、装置、电子设备及存储介质 |
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 |