CN110660090B - 主体检测方法和装置、电子设备、计算机可读存储介质 - Google Patents
主体检测方法和装置、电子设备、计算机可读存储介质 Download PDFInfo
- Publication number
- CN110660090B CN110660090B CN201910930662.1A CN201910930662A CN110660090B CN 110660090 B CN110660090 B CN 110660090B CN 201910930662 A CN201910930662 A CN 201910930662A CN 110660090 B CN110660090 B CN 110660090B
- Authority
- CN
- China
- Prior art keywords
- frame image
- current frame
- previous frame
- subject
- target
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 322
- 239000011159 matrix material Substances 0.000 claims abstract description 77
- 230000009466 transformation Effects 0.000 claims abstract description 73
- 238000000034 method Methods 0.000 claims abstract description 49
- 239000013598 vector Substances 0.000 claims description 87
- 238000012545 processing Methods 0.000 claims description 78
- 230000033001 locomotion Effects 0.000 claims description 73
- 230000011218 segmentation Effects 0.000 claims description 39
- 238000001914 filtration Methods 0.000 claims description 30
- 230000008859 change Effects 0.000 claims description 20
- 238000004590 computer program Methods 0.000 claims description 12
- 238000013507 mapping Methods 0.000 claims description 12
- 230000003287 optical effect Effects 0.000 claims description 10
- 238000012937 correction Methods 0.000 claims description 9
- 230000008569 process Effects 0.000 description 17
- 238000010586 diagram Methods 0.000 description 14
- 230000000877 morphologic effect Effects 0.000 description 11
- 238000004364 calculation method Methods 0.000 description 10
- 238000003384 imaging method Methods 0.000 description 10
- 230000003628 erosive effect Effects 0.000 description 7
- 230000010339 dilation Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 239000007787 solid Substances 0.000 description 4
- 230000002146 bilateral effect Effects 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 3
- 238000006073 displacement reaction Methods 0.000 description 3
- 238000005070 sampling Methods 0.000 description 3
- 230000003068 static effect Effects 0.000 description 3
- 238000003705 background correction Methods 0.000 description 2
- 238000005260 corrosion Methods 0.000 description 2
- 230000007797 corrosion Effects 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 230000008961 swelling Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 241000283690 Bos taurus Species 0.000 description 1
- 241000282472 Canis lupus familiaris Species 0.000 description 1
- 241000282326 Felis catus Species 0.000 description 1
- 241000023320 Luma <angiosperm> Species 0.000 description 1
- 239000000872 buffer Substances 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical compound COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002123 temporal 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/30—Determination of transform parameters for the alignment of images, i.e. image registration
- G06T7/33—Determination of transform parameters for the alignment of images, i.e. image registration using feature-based methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/70—Denoising; Smoothing
-
- 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
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/11—Region-based segmentation
-
- 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/174—Segmentation; Edge detection involving the use of two or more images
-
- 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/194—Segmentation; Edge detection involving foreground-background segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/246—Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/254—Analysis of motion involving subtraction of images
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/269—Analysis of motion using gradient-based methods
-
- 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/20021—Dividing image into blocks, subimages or windows
-
- 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/20224—Image subtraction
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Quality & Reliability (AREA)
- Image Analysis (AREA)
- Studio Devices (AREA)
Abstract
本申请涉及一种主体检测方法和装置、电子设备、计算机可读存储介质。所述方法包括获取当前帧图像和上一帧图像;当检测到所述当前帧图像处于晃动状态时,获取所述当前帧图像和上一帧图像之间的变换矩阵;根据所述变换矩阵对所述上一帧图像进行校正;根据校正后的上一帧图像更新主体检测模型,并根据更新后的主体检测模型对所述当前帧图像进行主体检测,得到目标主体。上述方法和装置、电子设备、计算机可读存储介质,可以提高主体检测的准确性。
Description
技术领域
本申请涉及计算机技术领域,特别是涉及一种主体检测方法、装置、电子设备、计算机可读存储介质。
背景技术
随着影像技术的发展,人们越来越习惯通过电子设备上的摄像头等图像采集设备拍摄图像或视频,记录各种信息。电子设备获取到图像后,往往需要对图像进行主体检测,检测出主体,从而可以获取该主体更清晰的图像。然而,传统的主体检测技术在对图像进行检测时,存在不准确的问题。
发明内容
本申请实施例提供一种主体检测方法、装置、电子设备、计算机可读存储介质,可以提高主体检测的准确性。
一种主体检测方法,包括:
获取当前帧图像和上一帧图像;
当检测到所述当前帧图像处于晃动状态时,获取所述当前帧图像和上一帧图像之间的变换矩阵;
根据所述变换矩阵对所述上一帧图像进行校正;
根据校正后的上一帧图像更新主体检测模型,并根据更新后的主体检测模型对所述当前帧图像进行主体检测,得到目标主体。
一种主体检测装置,包括:
图像获取模块,用于获取当前帧图像和上一帧图像;
变换矩阵获取模块,用于当检测到所述当前帧图像处于晃动状态时,获取所述当前帧图像和上一帧图像之间的变换矩阵;
校正模块,用于根据所述变换矩阵对所述上一帧图像进行校正;
主体检测模块,用于根据校正后的上一帧图像更新主体检测模型,并根据更新后的主体检测模型对所述当前帧图像进行主体检测,得到目标主体。
一种电子设备,包括存储器及处理器,所述存储器中储存有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如上述的主体检测方法的步骤。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上述的方法的步骤
上述主体检测方法和装置、电子设备、计算机可读存储介质,获取当前帧图像和上一帧图像;当检测到当前帧图像处于晃动状态时,获取当前帧图像和上一帧图像之间的变换矩阵;根据变换矩阵对上一帧图像进行校正,校正后的上一帧图像与当前帧图像更接近;而根据校正后的上一帧图像更新主体检测模型,则更新后的主体检测模型可以更准确地对当前帧图像进行主体检测,从而得到更准确的目标主体,提高主体检测的准确性。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为一个实施例中图像处理电路的示意图;
图2为一个实施例中主体检测方法的流程图;
图3为一个实施例中判断当前帧图像是否处于晃动状态的示意图;
图4为一个实施例中步骤生成跟踪点对的流程图;
图5为一个实施例中步骤生成匹配点对的流程图;
图6为一个实施例中根据跟踪点对对上一帧图像进行校正的示意图;
图7为一个实施例中根据匹配点对对上一帧图像进行校正的示意图;
图8为一个实施例中根据跟踪点对和匹配点对对上一帧图像进行校正的示意图;
图9为一个实施例中步骤去除目标点对的流程图;
图10为一个实施例中步骤得到当前帧图像的目标主体的流程图;
图11为另一个实施例中步骤得到当前帧图像的目标主体的流程图;
图12为另一个实施例中步骤得到当前帧图像的目标主体的流程图;
图13为一个实施例中主体检测的示意图;
图14为一个实施例中主体检测装置的结构框图;
图15为一个实施例中电子设备的内部结构示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
可以理解,本申请所使用的术语“第一”、“第二”等可在本文中用于描述各种元件,但这些元件不受这些术语限制。这些术语仅用于将第一个元件与另一个元件区分。举例来说,在不脱离本申请的范围的情况下,可以将第一像素值向量称为第二像素值向量,且类似地,可将第二像素值向量称为第一像素值向量。第一像素值向量和第二像素值向量两者都是像素值向量,但其不是同一像素值向量。
本申请实施例提供一种电子设备。上述电子设备中包括图像处理电路,图像处理电路可以利用硬件和/或软件组件实现,可包括定义ISP(Image Signal Processing,图像信号处理)管线的各种处理单元。图1为一个实施例中图像处理电路的示意图。如图1所示,为便于说明,仅示出与本申请实施例相关的图像处理技术的各个方面。
如图1所示,图像处理电路包括ISP处理器140和控制逻辑器150。成像设备110捕捉的图像数据首先由ISP处理器140处理,ISP处理器140对图像数据进行分析以捕捉可用于确定和/或成像设备110的一个或多个控制参数的图像统计信息。成像设备110可包括具有一个或多个透镜112和图像传感器114的照相机。图像传感器114可包括色彩滤镜阵列(如Bayer滤镜),图像传感器114可获取用图像传感器114的每个成像像素捕捉的光强度和波长信息,并提供可由ISP处理器140处理的一组原始图像数据。姿态传感器120(如三轴陀螺仪、霍尔传感器、加速度计)可基于姿态传感器120接口类型把采集的图像处理的参数(如防抖参数)提供给ISP处理器140。姿态传感器120接口可以利用SMIA(Standard Mobile ImagingArchitecture,标准移动成像架构)接口、其它串行或并行照相机接口或上述接口的组合。
此外,图像传感器114也可将原始图像数据发送给姿态传感器120,传感器120可基于姿态传感器120接口类型把原始图像数据提供给ISP处理器140,或者姿态传感器120将原始图像数据存储到图像存储器130中。
ISP处理器140按多种格式逐个像素地处理原始图像数据。例如,每个图像像素可具有8、10、12或14比特的位深度,ISP处理器140可对原始图像数据进行一个或多个图像处理操作、收集关于图像数据的统计信息。其中,图像处理操作可按相同或不同的位深度精度进行。
ISP处理器140还可从图像存储器130接收图像数据。例如,姿态传感器120接口将原始图像数据发送给图像存储器130,图像存储器130中的原始图像数据再提供给ISP处理器140以供处理。图像存储器130可为存储器装置的一部分、存储设备、或电子设备内的独立的专用存储器,并可包括DMA(Direct Memory Access,直接直接存储器存取)特征。
当接收到来自图像传感器114接口或来自姿态传感器120接口或来自图像存储器130的原始图像数据时,ISP处理器140可进行一个或多个图像处理操作,如时域滤波。处理后的图像数据可发送给图像存储器130,以便在被显示之前进行另外的处理。ISP处理器140从图像存储器130接收处理数据,并对所述处理数据进行原始域中以及RGB和YCbCr颜色空间中的图像数据处理。ISP处理器140处理后的图像数据可输出给显示器160,以供用户观看和/或由图形引擎或GPU(Graphics Processing Unit,图形处理器)进一步处理。此外,ISP处理器140的输出还可发送给图像存储器130,且显示器160可从图像存储器130读取图像数据。在一个实施例中,图像存储器130可被配置为实现一个或多个帧缓冲器。
ISP处理器140确定的统计数据可发送给控制逻辑器150单元。例如,统计数据可包括陀螺仪的振动频率、自动曝光、自动白平衡、自动聚焦、闪烁检测、黑电平补偿、透镜112阴影校正等图像传感器114统计信息。控制逻辑器150可包括执行一个或多个例程(如固件)的处理器和/或微控制器,一个或多个例程可根据接收的统计数据,确定成像设备110的控制参数及ISP处理器140的控制参数。例如,成像设备110的控制参数可包括姿态传感器120控制参数(例如增益、曝光控制的积分时间、防抖参数等)、照相机闪光控制参数、照相机防抖位移参数、透镜112控制参数(例如聚焦或变焦用焦距)、或这些参数的组合。ISP控制参数可包括用于自动白平衡和颜色调整(例如,在RGB处理期间)的增益水平和色彩校正矩阵,以及透镜112阴影校正参数。
在一个实施例中,通过成像设备(照相机)110中的透镜112和图像传感器114获取当前帧图像和上一帧图像,并将当前帧图像和上一帧图像发送至ISP处理器140。ISP处理器140接收到当前帧图像和上一帧图像后,检测当前帧图像是否处于晃动状态。当ISP处理器140检测到当前帧图像处于晃动状态时,获取当前帧图像与上一帧图像之间的变换矩阵;根据变换矩阵对上一帧图像进行校正,校正后的上一帧图像与当前帧图像更接近;而根据校正后的上一帧图像更新主体检测模型,则更新后的主体检测模型可以更准确地对当前帧图像进行主体检测,从而得到更准确的目标主体,提高主体检测的准确性。
ISP处理器获取到当前帧图像的目标主体之后,将该目标主体发送至控制逻辑器150。控制逻辑器150获取到目标主体之后,可以控制成像设备(照相机)110中的透镜112进行移动,对焦至目标主体对应的位置上,从而可以获取目标主体更加清晰的下一帧图像,并将下一帧图像发送至ISP处理器140。ISP处理器140接收到下一帧图像之后,可以将当前帧图像作为上一帧图像,将下一帧图像作为当前帧图像,执行当检测到当前帧图像处于晃动状态时,从当前帧图像和上一帧图像中获取目标点对步骤;基于校正后的各个图像,可以生成目标主体更加清晰的目标视频。
图2为一个实施例中主体检测方法的流程图。如图2所示,主体检测方法包括步骤202至步骤208。
步骤202,获取当前帧图像和上一帧图像。
当前帧图像指的是当前时刻获取的图像。上一帧图像指的是与当前帧图像相邻的且在上一时刻获取的图像。当前帧图像和上一帧图像均可以是RGB(Red,Green,Blue)图像、灰度图像、深度图像、YUV图像中的Y分量所对应的图像等其中的任意一种。其中,YUV图像中的“Y”表示明亮度(Luminance或Luma),也就是灰阶值,“U”和“V”表示的则是色度(Chrominance或Chroma),作用是描述影像色彩及饱和度,用于指定像素的颜色。
在本申请提供的实施例中,当前帧图像和上一帧图像均可以通过电子设备拍摄得到。电子设备可以设置摄像头,设置的摄像头的数量可以是一个或者多个。例如,设置1个、2个、3个、5个等,在此不做限定。摄像头设置于电子设备的形式不限,例如,可以是内置于电子设备的摄像头,也可以外置于电子设备的摄像头;可以是前置摄像头,也可以是后置摄像头。
当前帧图像与上一帧图像可以由电子设备中的同一个摄像头拍摄得到,也可以由不同的摄像头拍摄得到,不限于此。电子设备上的摄像头可以为任意类型的摄像头。例如,摄像头可以是彩色摄像头、黑白摄像头、深度摄像头、长焦摄像头、广角摄像头等,不限于此。
相对应地,通过彩色摄像头获取彩色图像,即RGB图像,通过黑白摄像头获取灰度图像,通过深度摄像头获取深度图像,通过长焦摄像头获取长焦图像,通过广角摄像头获取广角图像,不限于此。电子设备中的摄像头可以是相同类型的摄像头,也可以是不同类型的摄像头。例如,可以均是彩色摄像头,也可以均是黑白摄像头;可以其中的一个摄像头为长焦摄像头,其他的摄像头为广角摄像头,不限于此。
具体地,电子设备可以按照摄像头拍摄时间的先后顺序,将拍摄得到的各个图像存储于先入先出队列中,并从先入先出队列中获取当前帧图像和上一帧图像。
先入先出队列指的是先存储的图像先取出。电子设备先从先入先出队列中获取上一帧图像,再从先入先出队列中获取当前帧图像。
在另外一个实施例中,获取当前拍摄时刻和上一拍摄时刻;根据当前拍摄时刻获取当前帧图像;根据上一拍摄时刻获取上一帧图像。
电子设备获取当前拍摄时刻,可以获取拍摄频率;根据当前拍摄时刻和拍摄频率获取上一拍摄时刻。例如,当前拍摄时刻为15:45:56.200,拍摄频率10帧/s,即每100ms拍摄一帧图像,则上一拍摄时刻为15:45:56.100。根据当前拍摄时刻获取当前帧图像,根据上一拍摄时刻获取上一帧图像。
在一个实施例中,可以将当前帧图像和上一帧图像进行下采样处理,得到尺寸更小的当前帧图像和上一帧图像,从而节约了计算机处理的运算量。
在一个实施例中,可以将当前帧图像和上一帧图像进行滤波处理,可以滤除当前帧图像和上一帧图像含有大量纹理细节的复杂背景所携带的高频噪声,或者滤除图像下采样带来的高频噪声,获取更准确的当前帧图像和上一帧图像,从而防止主体检测的误检。其中,滤波处理可以是高斯滤波处理、平滑滤波处理、双边滤波处理等其中的至少一种。下采样指的是在图像中间隔若干个像素点取样一次,从而得到新的图像。
步骤204,当检测到当前帧图像处于晃动状态时,获取当前帧图像和上一帧图像之间的变换矩阵。
当当前帧图像处于晃动状态时,当前帧图像较模糊;当当前帧不处于晃动状态时,即当前帧图像处于静止状态时,当前帧图像较清晰。
在一个实施例中,当电子设备的摄像头处于运动状态时,则摄像头所拍摄的当前帧图像较模糊,即当前帧图像处于晃动状态。在另一个实施例中,当摄像头所拍摄的物体处于运动状态时,则摄像头所拍摄的当前帧图像也较模糊,即当前帧图像处于晃动状态。
变换矩阵用于表示上一帧图像的像素点变换至当前帧图像的像素点的矩阵。例如,上一帧图像中的一个特征点的位置为(200,50),当前帧图像该特征点对应的特征点的位置为(200,100),则变换矩阵可以表示上一帧图像的特征点从位于(200,50)的位置变换至当前帧图像位于(200,100)位置的特征点。
步骤206,根据变换矩阵对上一帧图像进行校正。
具体地,获取上一帧图像中的每个像素点的第一位置坐标;将上一帧图像中的每个像素点的位置坐标与变换矩阵进行相乘,得到对应的每个像素点的第二位置坐标。基于每个像素点的第二位置坐标可以生成校正后的上一帧图像。
第一位置坐标指的是校正之前的上一帧图像的每个像素点的位置坐标。第二位置坐标指的是校正之后的上一帧图像的每个像素点的位置坐标。位置坐标例如(200,50),表示横坐标为200,纵坐标为50的位置。
在一个实施例中,校正后的上一帧图像中可能存在一些噪点,可以对校正后的上一帧图像进行滤波处理,消除噪点,获取更准确的上一帧图像。其中,滤波处理可以是高斯滤波处理、平滑滤波处理、双边滤波处理等其中的至少一种。
步骤208,根据校正后的上一帧图像更新主体检测模型,并根据更新后的主体检测模型对当前帧图像进行主体检测,得到目标主体。
主体检测模型指的是用于对图像进行主体检测得到目标主体的模型。在主体检测模型中,包括了各种主体检测的参数,例如,背景区域的各个像素点的像素值均值、背景区域的各个像素点的像素值方差、主体区域的颜色均值、主体区域的颜色方差等。其中,主体检测(salient object detection)是指面对一个场景时,自动地对感兴趣区域进行处理而选择性的忽略不感兴趣区域。感兴趣区域即目标主体。其中,目标主体是指各种对象,如花、猫、狗、牛、蓝天、白云、背景等。
具体地,获取校正后的上一帧图像的各个像素点的像素值;根据校正后的上一帧图像的各个像素点的像素值确定主体检测模型中的目标参数;根据目标参数对主体检测模型中的各个参数进行更新。
目标参数可以包括上一帧图像中背景区域的各个像素点的像素值均值、上一帧图像中背景区域的各个像素点的像素值方差、上一帧图像中主体区域的颜色均值、上一帧图像中主体区域的颜色方差,不限于此。
可以理解的是,传统的主体检测方法,当摄像头移动或者被拍摄物体移动时,很难检测到图像中的主体或者检测得到的主体不准确。
而在本申请中,获取当前帧图像和上一帧图像;当检测到当前帧图像处于晃动状态时,获取当前帧图像和上一帧图像之间的变换矩阵;根据变换矩阵对上一帧图像进行校正,校正后的上一帧图像与当前帧图像更接近;而根据校正后的上一帧图像更新主体检测模型,则更新后的主体检测模型可以更准确地对当前帧图像进行主体检测,从而得到更准确的目标主体,提高主体检测的准确性。
在一个实施例中,当前帧图像处于晃动状态的确定方式,包括:将当前帧图像与上一帧图像进行比较,得到当前帧图像对应的场景变化值;场景变化值表示当前帧图像与上一帧图像的场景变化程度;当场景变化值大于阈值时,当前帧图像的处于晃动状态。
场景变化值可以通过AF(Automatic Focus,自动对焦)模块获取。
具体地,AF模块获取当前帧图像所包含的各个像素点的像素值,以及上一帧图像所包含的各个像素点的像素值;当前帧图像的各个像素点与上一帧图像的各个像素点一一对应;分别将当前帧图像的每个像素点的像素值与上一帧图像对应的像素点的像素值进行差分处理,得到各个差值;统计各个差值的总和,并将该总和作为场景变化值。
像素点的像素值可以是灰度值,用于表示该像素点的亮度。当灰度值越高,表示该像素点的亮度越亮;当灰度值越低,表示该像素点的亮度越暗。例如,像素点的灰度值为255,即白色,该像素点的亮度最亮;像素点的灰度值为0,即黑色,该像素点的亮度最暗。通过统计当前帧图像和上一帧图像的亮度变化之和,作为当前帧图像与上一帧图像的场景变化程度。当得到的总和越大,表示当前帧图像与上一帧图像的场景变化程度越大;当得到的总和越小,表示当前帧图像与上一帧图像的场景变化程度越小。
当前帧图像所包含的像素点的数量与上一帧图像所包含的像素点的数量相同,且一一对应。例如,当前帧图像的第5行第6列的像素点对应上一帧图像的第5行第6列的像素点;当前帧图像的第100行第50列的像素点对应上一帧图像的第100行第50列的像素点。
将当前帧图像的各个像素点的像素值与上一帧图像的各个像素点的像素值进行差分处理,得到各个差值。例如,当前帧图像的第5行第6列的像素点的像素值为150,对应的上一帧图像的第5行第6列的像素点的像素值为120,则得到的差值为150-120=30;当前帧图像的第100行第50列的像素点的像素值为50,对应的上一帧图像的第100行第50列的像素点的像素值为75,则得到的差值为50-75=-25,可以取该差值的绝对值,再进行求和处理。
上述主体检测方法,将当前帧图像与上一帧图像进行比较,得到当前帧图像对应的场景变化值;当场景变化值大于阈值时,表示当前帧图像与上一帧图像的场景变化程度较大,则当前帧图像的处于晃动状态,可以提高判断当前帧图像是否处于晃动状态的准确性。
在一个实施例中,当前帧图像处于晃动状态的确定方式,包括:将当前帧图像和上一帧图像进行差分处理,并对差分处理后的图像进行二值化处理,得到差分二值图像;统计差分二值图像中各个像素点的总值;当总值大于总值阈值时,当前帧图像处于晃动状态。
差分处理指的是将当前帧图像的各个像素点的像素值与上一帧图像对应的像素点的像素值进行相减。二值化处理指的是将像素点的像素值设置于两个数值中的其中一个。例如,可以将像素值设置为0、255的其中一个;或者将像素值设置为0、1的其中一个,还可以设置成其他的数值,不限于此。
具体地,获取当前帧图像所包含的各个像素点的像素值,以及上一帧图像所包含的各个像素点的像素值;当前帧图像的各个像素点与上一帧图像的各个像素点一一对应;分别将当前帧图像的每个像素点的像素值与上一帧图像对应的像素点的像素值进行差分处理,得到各个差值;当差值小于差值阈值时,生成对应的第一数值;当差值大于或等于差值阈值时,生成对应的第二数值;第二数值大于第一数值;统计生成的第一数值和第二数值的总值。
当差值小于差值阈值时,可以认为该位置的像素点在上一帧图像和当前帧图像相同,即该位置的像素点在上一帧图像和当前帧图像并未发生晃动,将该位置的像素点设置为第一数值。当差值大于或等于差值阈值时,可以认为该位置的像素点在上一帧图像和当前帧图像不同,即该位置的像素点在上一帧图像和当前帧图像发生了晃动,将该位置的像素点设置为第二数值。
例如,当前帧图像的第10行第48列的像素点的像素值为40,上一帧图像的第10行第48列的像素点的像素值为45,差值阈值为20,则处于第10行第48列的像素点的差值为5,小于差值阈值20,可以认为处于第10行第48列的像素点在上一帧图像和当前帧图像相同,即处于第10行第48列的像素点在上一帧图像和当前帧图像并未发生晃动,将差分二值图像中的第10行第48列的像素点的像素值设置为第一数值。
又如,当前帧图像的第55行第80列的像素点的像素值为100,上一帧图像的第55行第80列的像素点的像素值为220,差值阈值为20,则处于第55行第80列的像素点的差值为120,大于差值阈值20,可以认为处于第55行第80列的像素点在上一帧图像和当前帧图像不同,即处于第55行第80列的像素点在上一帧图像和当前帧图像发生了晃动,将差分二值图像中的第55行第80列的像素点的像素值设置为第二数值。
在一个实施例中,第一数值可以是0,第二数值可以是1。在另一个实施例中,第一数值可以是0,第二数值可以是255。在其他实施例中,第一数值和第二数值还可以设置为其他数值,并不限定。
差分二值图像中的各个像素点用第一数值或者第二数值进行表示,则统计生成的第一数值和第二数值的总值,即是差分二值图像中各个像素点的总值。当差分二值图像中各个像素点的总值大于总值阈值时,表示当前帧图像与上一帧图像的各个像素点存在较大差别,可以认为当前帧图像处于晃动状态。
上述主体检测方法,将当前帧图像和上一帧图像进行差分处理,并对差分处理后的图像进行二值化处理,得到差分二值图像;统计差分二值图像中各个像素点的总值;当总值大于总值阈值时,表示当前帧图像与上一帧图像的各个像素点存在较大差别,认为当前帧图像处于晃动状态,可以提高判断当前帧图像是否处于晃动状态的准确性。
在一个实施例中,可以首先对当前帧图像和上一帧图像进行滤波处理,获取更准确的图像。其中,滤波处理可以是高斯滤波、平滑滤波、双边滤波等其中的至少一种。
在一个实施例中,可以对差分二值图像进行形态学处理,得到更准确的差分二值图像。其中,形态学处理包括腐蚀、膨胀等。
按数学方面来说,膨胀或者腐蚀操作就是将图像(或图像的一部分区域,称之为A)与核(称之为B)进行卷积。核可以是任何的形状和大小,它拥有一个单独定义出来的参考点,称为锚点(anchorpoint)。例如,核可以是一个小的中间带有参考点和实心的正方形,核也可以是一个小的中间带有参考点和实心的圆盘。
膨胀指的是将B与A进行卷积,即计算B覆盖的区域的像素点的最大值,并把这个最大值赋值给参考点指定的像素。通过膨胀可以使得图像中的高亮区域逐渐增大。
腐蚀指的是将B与A进行卷积,即计算B覆盖的区域的像素点的最小值,并把这个最大值赋值给参考点指定的像素。通过腐蚀可以使得图像中的暗的区域逐渐增大。
通过对差分二值图像进行形态学处理,可以去除差分二值图像中的噪声,并减少差分二值图像中的空洞。
在一个实施例中,如图3所示,获取当前帧图像302和上一帧图像304,对当前帧图像302和上一帧图像304执行步骤306,即高斯滤波处理,得到更准确的当前帧图像和上一帧图像;将高斯滤波处理后的当前帧图像和上一帧图像执行步骤308,进行差分处理,并对差分处理后的图像进行二值化处理,得到差分二值图像;对差分二值图像执行步骤310,进行形态学处理,得到更准确的差分二值图像;执行步骤312,对形态学处理后的差分二值图像统计各个像素点的总值;执行步骤314,判断该总值是否大于总值阈值;当该总值大于总值阈值时,当前帧图像处于晃动状态316;当该总值小于或等于总值阈值时,当前帧图像处于静止状态318。
在一个实施例中,当前帧图像处于晃动状态的确定方式,包括:获取当前帧图像各个像素点的像素值,获取上一帧图像的各个像素点的像素值;基于当前帧图像的各个像素点的像素值,生成当前帧图像的第一像素值向量;第一像素值向量用于表示当前帧图像的像素值的分布;基于上一帧图像的各个像素点的像素值,生成上一帧图像的第二像素值向量;第二像素值向量用于表示上一帧图像的像素值的分布;根据第一像素值向量与第二像素值向量确定当前帧图像与上一帧图像的向量距离;当向量距离大于距离阈值时,当前帧图像处于晃动状态。
具体地,获取当前帧图像所包含的各个像素点的像素值,可以统计各个像素值所包含的像素点的数量,并生成当前帧图像的像素值直方图。例如,像素值为150的像素点数量为100个,像素值为255的像素点数量为50个。在其他实施例中,还可以生成像素值柱状图,像素值饼状图等,不限于此。
同样地,获取上一帧图像所包含的各个像素点的像素值,可以统计各个像素值所包含的像素点的数量,并生成上一帧图像的像素值直方图。在其他实施例中,还可以生成像素值柱状图,像素值饼状图等,不限于此。
根据当前帧图像的每个像素值所包含的像素点的数量,可以生成当前帧图像的第一像素值向量。第一像素值向量为256维向量,即从像素值0-255。第一像素值向量可以是(10,50,65,……30,56,84);其中,第一像素值向量中的每个数值表示该像素值所包含的像素点的数量,如10表示像素值为0所包含的像素点的数量为10个,50表示像素值为1所包含的像素点的数量为50个,56表示像素值为254所包含的像素点的数量为56个,84表示像素值为255所包含的像素点的数量为84个。
同样地,根据上一帧图像的每个像素值所包含的像素点的数量,可以生成上一帧图像的第二像素值向量。第二像素值向量也为256维向量,即从像素值0-255。
获取到第一像素值向量和第二像素值向量之后,可以将该第一像素值向量与第二像素值向量进行运算,确定当前帧图像与上一帧图像的向量距离。第一像素值向量用于表示当前帧图像的像素值的分布,像素值用于表示像素点的颜色,即第一像素值向量用于表示当前帧图像的颜色分布。同样地,第二像素值向量用于表示上一帧图像的颜色分布。因此,向量距离用于表示当前帧图像与上一帧图像之间的颜色差异程度。
当向量距离大于距离阈值时,表示当前帧图像与上一帧图像的颜色差异较大,可以认为当前帧图像处于晃动状态。
上述主体检测方法,根据当前帧图像的各个像素点的像素值生成当前帧图像的第一像素值向量;根据上一帧图像的各个像素点的像素值生成上一帧图像的第二像素值向量;根据第一像素值向量和第二像素值向量确定当前帧图像与上一帧图像的颜色差异程度,即获取当前帧图像与上一帧图像的向量距离;当向量距离大于距离阈值时,表示当前帧图像与上一帧图像的颜色差异较大,认为当前帧图像处于晃动状态,可以提高判断当前帧图像是否处于晃动状态的准确性。
在一个实施例中,当检测到当前帧图像处于晃动状态时,获取当前帧图像和上一帧图像之间的变换矩阵,包括:当检测到当前帧图像处于晃动状态时,从当前帧图像和上一帧图像中获取目标点对;基于目标点对得到当前帧图像和上一帧图像之间的变换矩阵。
目标点对指的是当前帧图像的一个点与上一帧对应的点所组成一对点。目标点对所包含的两个点可以是像素点,也可以是包含若干个像素点的区域,将该区域作为特征点,还可以分别从当前帧图像和上一帧图像中随机获取的两个点,不限于此。例如,当前帧图像的第5行第29列的像素点与上一帧图像的第5行第29列的像素点组成目标点对;当前帧图像中的鼻尖特征点与上一帧图像中的鼻尖特征点组成目标点对。
目标点对的数量可以为一对,也可以为多对,并不限定。可以理解的是,目标点对的数量越多,则基于目标点对得到的变换矩阵越准确。
具体地,获取目标点对中所包含的两个点的位置,根据每一对目标点对中所包含的两个点的位置,得到当前帧图像和上一帧图像之间的变换矩阵。
可以预先设置变换矩阵中的变量,当变换矩阵中的变量为4时,则需要4个方程式,即需要四个目标点对,将每一对目标点对中的上一帧图像中的点的位置与该预设的变换矩阵进行相乘等于当前帧图像中的点的位置,从而得到四个方程式,可以解出变换矩阵中预设的4个变量,得到变换矩阵。
上述主体检测方法,当检测到当前帧图像处于晃动状态时,从当前帧图像和上一帧图像中获取目标点对;基于目标点对可以得到更准确的当前帧图像和上一帧图像之间的变换矩阵。
在一个实施例中,目标点对包括跟踪点对和匹配点对中的至少一种。
目标点对可以仅包括跟踪点对,也可以仅包括匹配点对,还可以包括跟踪点对和匹配点对。
在一个实施例中,如图4所示,跟踪点对的生成方式,包括:
步骤402,将当前帧图像和上一帧图像进行同样划分,得到当前帧的各个子区域和上一帧图像的各个子区域。
同样划分指的是将当前帧图像和上一帧图像划分为相同数量的子区域,且划分的方式相同,即当前帧图像得到的各个子区域与上一帧图像的各个子区域一一对应。例如,当前帧图像划分为九宫格,则上一帧图像划分为相同的九宫格。
获取划分的子区域的数量,根据划分的子区域的数量对当前帧图像和上一帧图像进行同样划分,得到当前帧的各个子区域和上一帧图像的各个子区域。可以理解的是,划分的子区域的数量越多,则将图像划分得越细,获取跟踪点对越准确。
步骤404,分别从当前帧的各个子区域与上一帧图像的各个子区域提取目标数量的随机点。
可以从各个子区域中进行随机提取。在各个子区域中提取的随机点的目标数量可以为一个,也可以为多个。
具体地,从当前帧图像的第1个子区域中随机提取10个随机点,从上一帧图像的第1个子区域中随机提取10个随机点;从当前帧图像中的第3个子区域中随机提取5个随机点,从上一帧图像的第3个子区域中随机提取5个随机点。
步骤406,根据当前帧图像的每个子区域的随机点和上一帧图像对应的子区域的点生成跟踪点对。
当当前帧图像的子区域中提取一个随机点时,上一帧图像对应的子区域也提取一个随机点,则将所提取的两个随机点组成跟踪点对。当当前帧图像的子区域中提取N个随机点时,上一帧图像对应的子区域也提取至少两个随机点,则可以将当前帧图像的子区域中随机提取的第1个随机点与上一帧图像对应的子区域中随机提取的第1个随机点组成跟踪点对;将当前帧图像的子区域中随机提取的第n个随机点与上一帧图像对应的子区域中随机提取的第n个随机点组成跟踪点对。
上述主体检测方法,通过提取随机点生成跟踪点对,提高了目标点对的随机性,避免了弱纹理区域的目标点对数量的不足,造成后续获取的变换矩阵准确性较低的问题,这样提取的目标点对全局分布性更好,可以提高变换矩阵的准确性,从而提高主体检测的准确性。
在一个实施例中,如图5所示,匹配点对的生成方式,包括
步骤502,从当前帧图像提取特征点,并从上一帧图像中提取对应的特征点。
特征点指的是图像灰度值发生剧烈变化的点或者在图像边缘上曲率较大的点(即两个边缘的交点)。特征点例如眼睛、鼻尖、嘴角、痣、物体的中心等,不限于此。
具体地,检测当前帧图像中的各个像素点的灰度值,当相邻的像素点的灰度值的差值大于阈值时,可以将相邻的像素点所在的区域作为特征点。
在一个实施例中,可以根据当前帧图像中的特征点,从上一帧图像中提取对应的特征点。在另外一个实施例中,也可以检测上一帧图像中的各个像素点的灰度值,当相邻的像素点的灰度值的差值大于阈值时,可以将相邻的像素点所在的区域作为特征点,并将上一帧图像中的特征点与当前帧图像中的特征点建立对应关系。
在一个实施例中,可以获取目标区域;从当前帧图像的目标区域中提取特征点;从上一帧图像的目标区域中提取对应的特征点。
可以理解的是,目标区域可以是图像的中心区域。一般地,图像中的主体或者用户所拍摄的对象处于图像的中心区域。则从当前帧图像的中心区域中提取特征点,以及从上一帧图像的中心区域中提取特征点,不仅可以节约电子设备的计算量,还可以提高提取的特征点的准确性。
步骤504,根据当前帧图像和上一帧图像提取的特征点生成匹配点对。
具体地,将当前帧图像中提取的特征点与上一帧图像的对应的特征点组成匹配点对。一般地,匹配点对的数量越多,则后续根据匹配点对得到的变换矩阵越准确。
上述主体检测方法,从当前帧图像提取特征点,并从上一帧图像中提取对应的特征点;根据当前帧图像和上一帧图像提取的特征点生成匹配点对,提取的特征点可以更准确地表达当前帧图像和上一帧图像的特征,可以提高变换矩阵的准确性,从而提高主体检测的准确性。
在一个实施例中,根据当前帧图像的每个子区域的随机点和上一帧图像对应的子区域的点生成跟踪点对,包括:对当前帧图像的每个子区域的随机点和上一帧图像的每个子区域的随机点进行光流跟踪,得到当前帧图像和上一帧图像的运动矢量;通过运动矢量将上一帧图像的随机点映射至当前帧图像中,生成跟踪点对。
跟踪点对指的是通过光流跟踪得到的目标点对。
在视频序列中,物体在帧间移动可表示为物体的运动速度,该运动速度即为光流。运动矢量指的是物体在当前帧图像和上一帧图像中的相对位移。对当前帧图像的每个子区域的随机点和上一帧图像的每个子区域的随机点进行光流跟踪,可以通过求解物体的运动方程得到当前帧图像和上一帧图像的运动矢量。其中物体可以是一个像素点,也可以是由多个像素点组成的区域,不限于此。
运动矢量可以获取物体在当前帧图像和上一帧图像中的相对位移,通过运动矢量可以将上一帧图像中的随机点映射至当前帧图像中,从而找到对应的当前帧图像中的随机点,将上一帧图像的随机点和当前帧图像中对应的随机点组成跟踪点对。
上述主体检测方法,对当前帧图像和上一帧图像进行光流跟踪,得到当前帧图像和上一帧图像的运动矢量;通过运动矢量将上一帧图像的随机点映射至当前帧图像中,可以生成更准确的跟踪点对。
在一个实施例中,上述方法还包括:对当前帧图像的随机点和上一帧图像的随机点进行矢量滤波,获取当前帧图像的目标随机点和上一帧图像的目标随机点。通过运动矢量将上一帧图像的随机点映射至当前帧图像中,生成跟踪点对,包括:通过运动矢量将上一帧图像的目标随机点映射至当前帧图像中,生成跟踪点对。
矢量滤波可以包括模值滤波和角度滤波。通过矢量滤波可以去除一些错误的随机点,提高了。进一步地,当一个图像中的随机点被去除时,去除另一个图像中对应的随机点。
上述主体检测方法,对当前帧图像的随机点和上一帧图像的随机点进行矢量滤波,可以去除一些错误的随机点,从而获取更加准确的跟踪点对。
在另一个实施例中,可以首先对当前帧图像和上一帧图像进行光流跟踪,从而得到跟踪点对之后,对跟踪点对进行矢量滤波,去除错误的跟踪点对,从而得到更准确的跟踪点对。
在一个实施例中,如图6所示,对当前帧图像602和上一帧图像604进行同样划分,得到当前帧的各个子区域和上一帧图像的各个子区域;分别从当前帧图像的各个子区域与上一帧图像的各个子区域提取目标数量的随机点606。执行步骤608,对当前帧图像的每个子区域的随机点和上一帧图像的每个子区域的随机点进行光流跟踪,得到当前帧图像和上一帧图像的运动矢量。通过运动矢量将上一帧图像的随机点映射至当前帧图像中,生成第一跟踪点对。执行步骤610,对第一跟踪点对中所包含的随机点进行矢量滤波,去除错误的随机点,从而获取当前帧图像的目标随机点和上一帧图像的目标随机点。将当前帧图像的目标随机点和上一帧图像的目标随机点进行组合,即可得到第二跟踪点对,即跟踪点对612。基于跟踪点对612得到当前帧图像和上一帧图像之间的变换矩阵614。执行步骤616,根据变换矩阵614对上一帧图像604进行校正,得到校正后的上一帧图像618。
在一个实施例中,根据当前帧图像和上一帧图像提取的特征点生成匹配点对,包括:根据当前帧图像的每一个特征点生成对应的特征描述子,根据上一帧图像提取的每一个特征点生成对应的特征描述子;将当前帧图像的特征描述子与上一帧图像对应的特征描述子进行匹配,得到匹配点对。
特征描述子用于表示该特征点的特征。例如,特征描述子可以表示该特征点的像素值,该特征点的方向,该特征点的领域信息等,不限于此。通过获取该特征点的像素值,该特征点的方向,该特征点的领域信息等数据,从而生成该特征点的特征描述子。
特征描述子可以是ORB特征描述子=Fast特征点(角点)提取+BRIEF特征描述;也可以是SIFT(Scale-invariant feature transform,尺度不变特征变换)特征描述子;还可以是其他的特征描述子,不限于此。
具体地,将当前帧图像的特征描述子分别与上一帧图像的特征描述子进行特征的匹配,例如,可以匹配特征点的像素值、特征点的方向,特征点的领域信息等其中的至少一种。匹配的特征越多,则得到的匹配点对越准确。
上述主体检测方法,将当前帧图像中每个特征点的特征描述子,与上一帧图像中每个特征点的特征描述子进行匹配,可以生成更准确的匹配点对。
在一个实施例中,可以采用RANSAC(Random Sample Consensus)算法对匹配点对进行处理,从而去除一些匹配错误的匹配点对,获取更加准确的匹配点对。
在一个实施例中,如图7所示,从当前帧图像702提取特征点,并从上一帧图像704中提取对应的特征点。执行步骤706,根据当前帧图像702的每一个特征点生成对应的特征描述子,根据上一帧图像704提取的每一个特征点生成对应的特征描述子。执行步骤708,将当前帧图像的特征描述子与上一帧图像对应的特征描述子进行特征匹配,得到第一匹配点对。在一个实施例中,执行步骤710,采用RANSAC(Random Sample Consensus)算法对第一匹配点对进行处理,从而去除一些匹配错误的第一匹配点对,获取更加准确的第二匹配点对,即匹配点对712。基于匹配点对712得到当前帧图像和上一帧图像之间的变换矩阵714。执行步骤716,根据变换矩阵714对上一帧图像704进行校正,得到校正后的上一帧图像718。
在一个实施例中,当目标点对包括跟踪点对和匹配点对时,如图8所示。从当前帧图像802提取特征点,并从上一帧图像804中提取对应的特征点。执行步骤806,根据当前帧图像802的每一个特征点生成对应的特征描述子,根据上一帧图像804提取的每一个特征点生成对应的特征描述子。执行步骤808,将当前帧图像的特征描述子与上一帧图像对应的特征描述子进行特征匹配,得到第一匹配点对。在一个实施例中,执行步骤810,采用RANSAC(Random Sample Consensus)算法对第一匹配点对进行处理,从而去除一些匹配错误的第一匹配点对,获取更加准确的第二匹配点对,即匹配点对812。
对当前帧图像802和上一帧图像804进行同样划分,得到当前帧的各个子区域和上一帧图像的各个子区域;分别从当前帧图像的各个子区域与上一帧图像的各个子区域提取目标数量的随机点814。执行步骤816,对当前帧图像的每个子区域的随机点和上一帧图像的每个子区域的随机点进行光流跟踪,得到当前帧图像和上一帧图像的运动矢量。通过运动矢量将上一帧图像的随机点映射至当前帧图像中,生成第一跟踪点对。执行步骤818,对第一跟踪点对中所包含的随机点进行矢量滤波,去除错误的随机点,从而获取当前帧图像的目标随机点和上一帧图像的目标随机点。将当前帧图像的目标随机点和上一帧图像的目标随机点进行组合,即可得到第二跟踪点对,即跟踪点对820。
执行步骤822,将匹配点对812和跟踪点对820进行融合,即将匹配点812和跟踪点对820均作为目标点对,基于目标点对得到当前帧图像和上一帧图像之间的变换矩阵824。执行步骤826,根据变换矩阵824对上一帧图像804进行校正,得到校正后的上一帧图像828。
在一个实施例中,如图9所示,上述方法还包括:
步骤902,获取各个目标点对中所包含的各个目标点的位置信息。
目标点的位置信息可以用坐标进行表示。例如,目标点的位置信息为(50,100),表示该目标点位于图像中的第50行第100列的位置;目标点的位置信息为(80,12),表示该目标点位于图像中的第80行第12列的位置。
步骤904,将同一图像中的任意两个目标点的位置信息进行差值运算,得到对应的位置差值。
在同一图像中,获取任意两个目标点的位置信息,并将获取的两个目标点的位置信息进行差值运算,得到对应的位置差值。
例如,在当前帧图像中,获取任意的两个目标点的位置信息为(50,100)、(50,90),可以采用以下计算公式计算对应的位置差值:其中,S为位置差值,a1和b1分别为一个目标点的横坐标和纵坐标,a2和b2分别为另一个目标点的横坐标和纵坐标。因此,两个目标点的位置差值为
步骤906,从位置差值小于差值阈值的两个目标点中获取其中一个目标点作为去除目标点。
去除目标点指的是将要去除的目标点。
当位置差值小于差值阈值时,表示获取的两个目标点的位置较近,则从位置差值小于差值阈值的任意两个目标点中获取其中一个目标点作为去除目标点。
步骤908,去除该去除目标点对应的目标点对。
获取到去除目标点之后,去除该去除目标点对应的目标点对。例如,目标点对中包含目标点A和目标点B,当确定目标点A为去除目标点时,则去除目标点A对应的目标点,即去除目标点A和目标点B。
基于目标点对得到当前帧图像和上一帧图像之间的变换矩阵,包括:
步骤910,基于去除该去除目标点对应的目标点对之后的目标点对,得到当前帧图像和上一帧图像之间的变换矩阵。
可以理解的是,同一个区域中的目标点的特征较接近,当同一个区域中存在多个目标点时,可以去除其中的一些目标点,避免了对同一个区域中的多个目标点进行处理,浪费了电子设备的资源,影响全局矩阵的精度,去除该去除目标点所对应的目标点对之后,目标点的全局分布更优,可以剩余的目标点对进行处理,从而可以更快地得到当前帧图像和上一帧图像之间的变换矩阵,提高了得到变换矩阵的效率。
在一个实施例中,上述方法还包括:当检测到当前帧图像不处于晃动状态时,将当前帧图像输入主体检测模型,并根据主体检测模型对当前帧图像进行主体检测,得到目标主体。
当检测到当前帧图像不处于晃动状态时,即当前帧图像处于静止状态,则可以将当前帧图像直接输入主体检测模型中,并根据主体检测模型对当前帧图像进行主体检测,可以更加快速得到目标主体,提高主体检测的效率。
在一个实施例中,如图10所示,主体检测模型中包括第一背景检测模型;根据校正后的上一帧图像更新主体检测模型,并根据更新后的主体检测模型对当前帧图像进行主体检测,得到目标主体,包括:
步骤1002,根据校正后的上一帧图像更新第一背景检测模型。
第一背景检测模型指的是用于检测图像的背景的模型。第一背景检测模型可以为单高斯模型。第一背景检测模型中可以包括一个或者多个参数,如背景区域的像素值的均值和方差,主体区域的像素值的均值和方差等,不限于此。
根据校正后的上一帧图像可以对第一背景检测模型中的各个参数进行更新。
步骤1004,根据更新后的第一背景检测模型对当前帧图像进行背景检测,得到当前帧图像的第一背景区域。
第一背景区域指的是通过第一背景检测模型对当前帧图像进行背景检测得到的背景区域。
校正后的上一帧图像与当前帧图像更接近,则根据上一帧图像对第一背景检测模型进行更新之后,更新之后的第一背景检测模型可以更准确地对当前帧图像进行背景检测,从而检测出当前帧图像更准确的第一背景区域。
步骤1006,将当前帧图像和当前帧图像的第一背景区域进行差分处理,根据差分结果确定当前帧图像的目标主体。
差分结果指的是差分处理后得到的结果。差分结果可以是一个或者多个主体。可以理解的是,当前帧图像中存在背景区域和目标主体。将当前帧图像和当前帧图像的第一背景区域进行差分处理,根据差分结果即可得到当前帧图像的目标主体。
上述主体检测方法,根据校正后的上一帧图像更新第一背景检测模型,可以得到更加准确的第一背景检测模型;根据更新后的第一背景检测模型对当前帧图像进行背景检测,可以检测出当前帧图像中更加准确的第一背景区域;从而得到当前帧图像中更加准确的目标主体,提高了主体检测的准确性。
在一个实施例中,主体检测模型中还包括第二背景检测模型;第二背景检测模型为候选的背景检测模型。
在主体检测模型中包括了背景检测模型,而背景检测模型中可以包括第一背景检测模型和第二背景检测模型。第二背景检测模型也是用于检测图像的背景的模型。同样地,第二背景检测模型也可以是单高斯模型。而第一背景检测模型的参数和第二背景检测模型中的参数存在不同。参数例如,背景区域的像素值的均值和方差,主体区域的像素值的均值和方差等。在一个时刻采用其中一个背景检测模型对当前帧图像进行背景检测,则可以将该背景检测模型作为第一背景检测模型,另一个背景检测模型作为第二背景检测模型。
如图11所示,上述方法还包括:
步骤1102,当通过第一背景检测模型检测到的第一背景区域与参考背景不同时,根据校正后的上一帧图像更新第二背景检测模型。
参考背景指的是用于与检测出的背景区域进行比较的背景。参考背景可以通过高斯函数对当前帧图像进行处理得到,也可以获取当前帧图像的预设区域得到,不限于此。第二背景区域指的是通过第二背景检测模型对当前帧图像进行背景检测得到的背景区域。
在一个实施例中,判断检测到的第一背景区域与参考背景是否不同的方式,包括:将检测到的第一背景区域与参考背景进行比较,得到差异度;所述差异度用于表示检测到的第一背景区域与参考背景的差异程度;当差异度大于差异度阈值时,认为检测到的第一背景区域与参考背景不同;当差异度小于或等于差异度阈值时,认为检测到的第一背景区域与参考背景相同。
具体地,可以获取检测到的第一背景区域的每个像素点的像素值,获取参考背景的对应的像素点的像素值;将第一背景区域所包含的每个像素点的像素值与参考背景中对应的像素点的像素值进行相减,得到差值,并取该差值的绝对值;将所有绝对值进行相加,得到总和,则得到的总和可以表示检测到的第一背景区域与参考背景的差异程度,即差异度。
当差异度大于差异度阈值时,表示第一背景区域与参考背景的差异较大,认为第一背景区域与参考背景不同;当差异度小于或等于差异度阈值时,表示第一背景区域与参考背景的差异较小,认为检测到的第一背景区域与参考背景相同。
步骤1104,根据更新后的第二背景检测模型对当前帧图像进行背景检测,得到当前帧图像的第二背景区域。
当第一背景检测模型检测到的第一背景区域与参考背景不同时,表示该第一背景检测模型所检测到的第一背景区域不准确,则更新第二背景检测模型,通过更新后的第二背景检测模型对当前帧图像进行背景检测,得到当前帧图像的第二背景区域。
步骤1106,将当前帧图像和当前帧图像的第二背景区域进行差分处理,根据差分结果确定当前帧图像的目标主体。
差分结果指的是差分处理后得到的结果。差分结果可以是一个或者多个主体。同样的,通过更新后的第二背景检测模型对当前帧图像进行背景检测,得到当前帧图像的第二背景区域之后,可以将当前帧图像与当前帧图像的第二背景区域进行差分处理,根据差分结果即可得到当前帧图像的目标主体。
传统的背景检测方法,通常采用GMM高斯混合模型进行检测,计算量较大。而当第一背景检测模型和第二背景检测模型均为单高斯模型时,并且在任意时刻只有其中一个模型对当前帧图像进行背景检测。单高斯模型的计算量小于GMM高斯混合模型的计算量。当第一背景检测模型检测到的第一背景区域与参考背景不同时,表示第一背景检测模型检测出的第一背景区域不准确,则通过更新后的第二背景检测模型对当前帧图像进行背景检测,既可以提高检测到的背景区域的准确性,从而提高主体检测的准确性,又避免了较高的计算量。
在一个实施例中,上述方法还包括:获取第一背景检测模型的更新系数和第二背景检测模型的更新系数;更新系数为背景检测模型更新的程度;将第一背景检测模型的更新系数和第二背景检测模型的更新系数进行比较,并将第一背景检测模型和第二背景检测模型中的更新系数大的一个执行对当前帧图像进行背景检测步骤。
更新系数指的是背景检测模型的更新的程度。更新系数越大,表示该背景检测模型更新的程度越大,则对当前帧图像进行背景检测得到的背景区域越准确。
因此,可以实时获取第一背景检测模型的更新系数和第二背景检测模型的更新系数;将第一背景检测模型的更新系数和第二背景检测模型的更新系数进行比较,并将第一背景检测模型和第二背景检测模型中的更新系数大的一个执行对当前帧图像进行背景检测步骤。
在一个实施例中,第一背景检测模型对当前帧图像进行背景检测,也就是说,第二背景检测模型为候选的背景检测模型,当第一背景检测模型的更新系数大于或等于第二背景检测模型的更新系数时,则仍然通过第一背景检测模型对当前帧图像进行背景检测,第二背景检测模型仍然为候选的背景检测模型;当第一背景检测模型的更新系数小于第二背景检测模型的更新系数时,则通过第二背景检测模型对当前帧图像进行背景检测,也就是说,第一背景检测模型为候选的背景检测模型。
在另一个实施例中,第二背景检测模型对当前帧图像进行背景检测,也就是说,第一背景检测模型为候选的背景检测模型,当第二背景检测模型的更新系数大于或等于第一背景检测模型的更新系数时,则仍然通过第二背景检测模型对当前帧图像进行背景检测,第一背景检测模型仍然为候选的背景检测模型;当第二背景检测模型的更新系数小于第一背景检测模型的更新系数时,则通过第一背景检测模型对当前帧图像进行背景检测,也就是说,第二背景检测模型为候选的背景检测模型。
上述主体检测方法,获取第一背景检测模型的更新系数和第二背景检测模型的更新系数,将第一背景检测模型的更新系数和第二背景检测模型的更新系数进行比较,并将第一背景检测模型和第二背景检测模型中的更新系数大的一个执行对当前帧图像进行背景检测步骤,可以更准确的检测出当前帧图像的背景区域。
在另一个实施例中,可以将当前帧图像与上一帧图像进行差分处理,从而检测出当前帧图像的背景区域,可以节约计算量。
在另一个实施例中,还可以通过其他的背景检测模型,如ViBe模型对当前帧图像进行背景检测,可以得到更准确的背景区域。
在一个实施例中,获取差分处理后得到的各个候选主体;对各个候选主体和背景区域进行形态学处理,得到目标主体。
具体地,形态学处理包括腐蚀、膨胀等。可以先对各个候选主体进行腐蚀处理,再进行膨胀处理,得到更加准确的目标主体。
按数学方面来说,膨胀或者腐蚀操作就是将图像(或图像的一部分区域,称之为A)与核(称之为B)进行卷积。核可以是任何的形状和大小,它拥有一个单独定义出来的参考点,称为锚点(anchorpoint)。例如,核可以是一个小的中间带有参考点和实心的正方形,核也可以是一个小的中间带有参考点和实心的圆盘。
膨胀指的是将B与A进行卷积,即计算B覆盖的区域的像素点的最大值,并把这个最大值赋值给参考点指定的像素。通过膨胀可以使得图像中的高亮区域逐渐增大。
腐蚀指的是将B与A进行卷积,即计算B覆盖的区域的像素点的最小值,并把这个最大值赋值给参考点指定的像素。通过腐蚀可以使得图像中的暗的区域逐渐增大。
通过对候选主体进行形态学处理,可以去除候选主体中的噪声,并减少候选主体中的空洞,获取更加准确的目标主体。
在一个实施例中,根据差分结果确定当前帧图像的目标主体,包括:获取差分结果所包含的各个候选主体,判断各个候选主体中是否存在运动主体;当各个候选主体中存在运动主体时,将包含运动主体的运动区域输入主体分割网络,得到当前帧图像的目标主体;当各个候选主体中不存在运动主体时,将当前帧图像输入主体分割网络,得到当前帧图像的目标主体。
将当前帧图像和当前帧图像的背景区域进行差分处理,得到差分结果。在差分结果中可以包含一个或者多个候选主体。运动区域可以是包含运动主体的矩形区域,也可以是包含运动主体的圆形区域,还可以是包含运动主体的不规则形状的区域,不限于此。主体分割网络指的是对输入的图像区域进行分割,得到主体的网络。
在一个实施例中,可以根据各个候选主体的面积判断各个候选主体中是否存在运动主体。例如,当存在候选主体的面积大于面积阈值时,则将该候选主体作为运动主体。
在另一个实施例中,也可以根据各个候选主体的轮廓边缘的清晰度,判断各个候选主体中是否存在运动主体。可以理解的是,当图像中存在运动主体时,则拍摄得到的图像的运动主体的轮廓边缘存在一定程度的模糊。因此,可以获取各个候选主体的轮廓边缘的清晰度,当轮廓边缘的清晰度高于清晰度阈值时,可以认为该候选主体为静止的物体,当轮廓边缘的清晰度低于或等于清晰度阈值时,可以认为该候选主体为运动主体。
在其他实施例中,还可以提取各个候选主体中的特征点,生成各个特征点的特征描述子,再基于各个特征描述子确定各个候选主体中是否存在运动主体。
本申请确定各个候选主体中是否存在运动主体的方式可以但不限于以上几种。
当各个候选主体中存在运动主体时,则获取包含该运动主体的运动区域,再将运动区域输入主体分割网络中,得到当前帧图像的目标主体。当各个候选主体中不存在运动主体时,则将当前帧图像输入主体分割网络中,得到目标主体。
上述主体检测方法,获取差分结果所包含的各个候选主体,判断各个候选主体中是否存在运动主体;当各个候选主体中不存在运动主体时,可以直接将当前帧图像输入主体分割网络,得到目标主体;当各个候选主体中存在运动主体时,将包含运动主体的运动区域输入主体分割网络,得到当前帧图像的目标主体,避免了对所有候选主体进行处理,节约了电子设备的计算量。
在一个实施例中,判断各个候选主体中是否存在运动主体,包括:获取各个候选主体的面积;当各个候选主体的面积均小于面积阈值时,各个候选主体中不存在运动主体;当存在候选主体的面积大于或等于面积阈值时,各个候选主体中存在运动主体;运动主体为面积大于或等于面积阈值的候选主体。
可以理解的是,当候选主体的面积越大时,表示该候选主体越靠近摄像头,则越靠近摄像头的对象为用户想拍摄的主体。因此,当各个候选主体的面积均小于面积阈值时,表示当前帧图像中的各个候选主体的面积都较小,可以认为各个候选主体均不是运动主体,也不是用户想拍摄的主体,因此将当前帧图像输入主体分割网络中,得到目标主体。
当存在候选主体的面积大于或等于面积阈值时,可以认为大于或等于面积阈值的候选主体为运动主体,也是用户想拍摄的主体,因此,将包含运动主体的运动区域输入主体分割网络,得到目标主体。需要指出的是,目标主体可以与候选主体相同,即将运动区域输入主体分割网络,得到的目标主体仍为输入前的运动主体。目标主体也可以与运动主体不同。
在一个实施例中,统计运动主体的数量;当数量为至少两个时,可以获取面积最大的运动主体所在的运动区域,并将该运动区域输入主体分割网络,得到目标主体。
一般地,当图像中存在多个运动主体时,面积最大的主体通常为用户所拍摄的对象。因此,当数量为至少两个时,为节约电子设备的计算量,可以将面积最大的运动主体所在的运动区域输入主体分割网络,得到目标主体。
当数量为一个时,将该运动主体所在的运动区域输入主体分割网络,得到目标主体。
上述主体检测方法,获取各个候选主体的面积;当各个候选主体的面积均小于面积阈值时,各个候选主体不存在运动主体;当存在候选主体的面积大于或等于面积阈值时,各个候选主体存在运动主体,基于各个候选主体的面积,可以更准确地判断各个候选主体中是否存在运动主体。
在一个实施例中,如图12所示,当各个候选主体中存在运动主体时,将包含运动主体的运动区域输入主体分割网络,得到当前帧图像的目标主体,包括:
步骤1202,当各个候选主体中存在运动主体时,将包含运动主体的运动区域输入主体分割网络,得到主体分割图像。
主体分割图像指的是对运动区域进行分割得到的主体图像。主体分割图像可以与输入之前的候选主体相同,也可以与输入之前的候选主体不同。
步骤1204,获取运动主体的二值图像。
二值图像指的是图像中所包含的像素点的像素值用两个数值的其中一个进行表示。例如,两个数值可以是0、255,即可以将运动主体所包含的像素点的像素值设置为0,而当前帧图像中的其他区域所包含的像素点的像素值设置为255;两个数值也可以是0、1;两个数值还可以设置成其他的数值,不限于此。
通过运动主体的二值图像可以准确地获取运动主体的区域,以及除运动主体之外的区域。
步骤1206,将二值图像与主体分割图像进行与处理,得到目标主体。
与处理指的是一种逻辑运算操作。例如,0和1进行与处理得到0,1和0进行与处理得到0,1和1进行与处理才得到1。将二值图像与主体分割图像进行与处理,可以是将二值图像中的像素点的值与主体分割图像中对应的像素点的值进行与处理。
从二值图像中可以获取运动主体的区域,而通过主体分割网络得到另一个包含主体的主体分割图像,将二值图像与主体分割图像进行与处理,可以得到更准确的目标主体。
在一个实施例中,上述方法还包括:对焦至目标主体,获取下一帧图像;将当前帧图像替换上一帧图像,将下一帧图像替换当前帧图像,返回执行当检测到当前帧图像处于晃动状态时,获取当前帧图像和上一帧图像之间的变换矩阵;根据变换矩阵对上一帧图像进行校正;根据校正后的上一帧图像更新主体检测模型,并根据更新后的主体检测模型对当前帧图像进行主体检测,得到目标主体步骤;基于校正后的各个图像,生成目标视频。
对焦指的是通过摄像头的对焦机构变动物距和相距的位置,使被拍物体成像清晰的过程。
对当前帧图像进行主体检测,得到目标主体之后,则该目标主体为摄像头拍摄的对象。因此,对焦至目标主体的实际场景中的位置,通过摄像头可以拍摄出目标主体更清晰的下一帧图像。
将当前帧图像替换上一帧图像,将下一帧图像替换当前帧图像,执行当检测到当前帧图像处于晃动状态时,获取当前帧图像和上一帧图像之间的变换矩阵;根据变换矩阵对上一帧图像进行校正;根据校正后的上一帧图像更新主体检测模型,并根据更新后的主体检测模型对当前帧图像进行主体检测,得到目标主体步骤,即循环执行主体检测的过程,获取目标主体更清晰的每一帧图像。
当前帧图像对上一帧图像进行校正,则基于校正后的各个图像,可以获取目标主体更清晰的目标视频。
在另一个实施例中,获取目标主体后,可以对目标主体进行目标跟踪,节约电子设备的计算量。进一步地,当对目标主体进行目标跟踪经过预设数量的帧图像之后,再获取当前帧图像,对当前帧图像进行主体检测,重新得到目标主体。
在一个实施例中,如图13所示,获取当前帧图像和上一帧图像1302,可以对当前帧图像和上一帧图像进行高斯滤波处理,可以消除图像中含有大量纹理细节的复杂背景下带来的高频噪声,以及图像下采样带来的高频噪声,防止后续主体检测的误检。
执行步骤1306,对高斯滤波处理后的当前帧图像进行检测,判断当前帧图像是否处于晃动状态。当当前帧图像处于晃动状态时,执行步骤1308,对当前帧图像进行图像背景补偿。其中,图像背景补偿指的是从当前帧图像和上一帧图像中获取目标点对;基于目标点对得到当前帧图像和上一帧图像之间的变换矩阵;根据变换矩阵对上一帧图像进行校正,得到校正后的上一帧图像。目标点对可以包括跟踪点对和匹配点对中至少一种。
根据校正后的上一帧图像执行步骤1310,即对当前帧图像进行背景减除,得到当前帧图像的背景区域。背景减除具体是:根据校正后的上一帧图像对背景检测模型进行更新,根据更新后的背景检测模型对当前帧图像进行背景检测,得到当前帧图像的背景区域。进一步地,将背景区域与当前帧图像进行差分处理,可以得到当前帧图像的候选主体。其中,背景检测模型包括第一背景检测模型和第二背景检测模型。当通过第一背景检测模型对当前帧图像进行背景检测时,则第二背景检测模型为候选的背景检测模型。当通过第二背景检测模型对当前帧图像进行背景检测时,则第一背景检测模型为候选的背景检测模型。第一背景检测模型和第二背景检测模型均可以是单高斯模型,既保证了主体检测的精度,又避免了较高的计算量。
在另一个实施例中,根据得到背景区域和候选主体,可以生成当前帧图像的二值图像。
将背景区域映射回当前帧图像,并对检测出背景区域的当前帧图像执行步骤1312,即形态学处理。其中,形态学处理指的是对检测出背景区域的当前帧图像先进行腐蚀处理,再进行膨胀处理,可以去除该图像中的噪声,并减少该图像中的空洞。
执行步骤1314,对形态学处理之后的当前帧图像进行连通域判断。连通域指的是闭合的且内部连通的区域。通过连通域判断消除各个候选主体中的一些空洞,从而获取更加准确的候选主体。
获取各个候选主体的面积,执行步骤1316,判断各个候选主体中是否存在运动主体。当各个候选主体中存在面积大于或等于面积阈值的候选主体,则判断为是,各个候选主体中存在运动主体,执行步骤1318,获取运动主体的二值图像。
二值图像中包括了运动主体以及背景区域。通过二值图像获取运动主体所在的运动区域1320。
将运动区域输入主体分割网络1322,可以得到主体分割图像。
执行步骤1324,将二值图像1318与主体分割图像进行与处理,得到目标主体1328。
当各个候选主体的面积均小于面积阈值,则判断为否,各个候选主体中不存在运动主体,将当前帧图像1326输入主体分割网络1322中,得到目标主体1328。
执行步骤1330,对焦至目标主体,可以获取该目标主体更清晰的下一帧图像;将当前帧图像替换上一帧图像,将下一帧图像替换当前帧图像,执行当检测到当前帧图像处于晃动状态时,获取当前帧图像和上一帧图像之间的变换矩阵;根据变换矩阵对上一帧图像进行校正;根据校正后的上一帧图像更新主体检测模型,并根据更新后的主体检测模型对当前帧图像进行主体检测,得到目标主体步骤;基于校正后的各个图像,可以生成更加目标主体更加清晰的目标视频。
应该理解的是,虽然图2、图4、图5、图9至图12的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2、图4、图5、图9至图12中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
图14为一个实施例的主体检测装置的结构框图。如图14所示,提供了一种主体检测装置1400,包括:图像获取模块1402、变换矩阵获取模块1404、校正模块1406和主体检测模块1408,其中:
图像获取模块1402,用于获取当前帧图像和上一帧图像。
变换矩阵获取模块1404,用于当检测到当前帧图像处于晃动状态时,获取当前帧图像和上一帧图像之间的变换矩阵。
校正模块1406,用于根据变换矩阵对上一帧图像进行校正。
主体检测模块1408,用于根据校正后的上一帧图像更新主体检测模型,并根据更新后的主体检测模型对当前帧图像进行主体检测,得到目标主体。
上述主体检测装置,获取当前帧图像和上一帧图像;当检测到当前帧图像处于晃动状态时,获取当前帧图像和上一帧图像之间的变换矩阵;根据变换矩阵对上一帧图像进行校正,校正后的上一帧图像与当前帧图像更接近;而根据校正后的上一帧图像更新主体检测模型,则更新后的主体检测模型可以更准确地对当前帧图像进行主体检测,从而得到更准确的目标主体,提高主体检测的准确性。
在一个实施例中,上述主体检测装置1400还包括图像晃动状态检测模块,用于将当前帧图像与上一帧图像进行比较,得到当前帧图像对应的场景变化值;场景变化值表示当前帧图像与上一帧图像的场景变化程度;当场景变化值大于阈值时,当前帧图像处于晃动状态。
在一个实施例中,上述图像晃动状态检测模块还用于将当前帧图像和上一帧图像进行差分处理,并对差分处理后的图像进行二值化处理,得到差分二值图像;统计差分二值图像中各个像素点的总值;当总值大于总值阈值时,当前帧图像处于晃动状态。
在一个实施例中,上述图像晃动状态检测模块还用于获取当前帧图像所包含的各个像素点的像素值,获取上一帧图像所包含的各个像素点的像素值;基于当前帧图像所包含的各个像素点的像素值,生成当前帧图像的第一像素值向量;第一像素值向量用于表示当前帧图像的像素值的分布;基于上一帧图像所包含的各个像素点的像素值,生成上一帧图像的第二像素值向量;第二像素值向量用于表示上一帧图像的像素值的分布;根据第一像素值向量与第二像素值向量确定当前帧图像与上一帧图像的向量距离;当向量距离大于距离阈值时,当前帧图像处于晃动状态。
在一个实施例中,上述变换矩阵获取模块1404还用于当检测到当前帧图像处于晃动状态时,从当前帧图像和上一帧图像中获取目标点对;基于目标点对得到当前帧图像和上一帧图像之间的变换矩阵。
在一个实施例中,上述变换矩阵获取模块1404还用于获取跟踪点对和匹配点对中的至少一种。其中,跟踪点对的生成方式,包括:将当前帧图像和上一帧图像进行同样划分,得到当前帧的各个子区域和上一帧图像的各个子区域;分别从当前帧图像的各个子区域与上一帧图像的各个子区域提取目标数量的随机点;根据当前帧图像的每个子区域的随机点和上一帧图像对应的子区域的点生成跟踪点对。匹配点对的生成方式,包括:从当前帧图像提取特征点,并从上一帧图像中提取对应的特征点;根据当前帧图像和上一帧图像提取的特征点生成匹配点对。
在一个实施例中,上述变换矩阵获取模块1404还用于对当前帧图像和上一帧图像进行光流跟踪,得到当前帧图像和上一帧图像的运动矢量;通过运动矢量将上一帧图像的随机点映射至当前帧图像中,生成跟踪点对。
在一个实施例中,上述主体检测装置1400还包括矢量滤波模块,用于对当前帧图像的随机点和上一帧图像的随机点进行矢量滤波,获取当前帧图像的目标随机点和上一帧图像的目标随机点。通过运动矢量将上一帧图像的随机点映射至当前帧图像中,生成跟踪点对,包括:通过运动矢量将上一帧图像的目标随机点映射至当前帧图像中,生成跟踪点对。
在一个实施例中,上述变换矩阵获取模块1404还用于根据当前帧图像的每一个特征点生成对应的特征描述子,根据上一帧图像提取的每一个特征点生成对应的特征描述子;将当前帧图像的特征描述子与上一帧图像对应的特征描述子进行匹配,得到匹配点对。
在一个实施例中,上述主体检测装置1400还包括目标点去除模块,用于获取各个目标点对中所包含的各个目标点的位置信息;将同一图像中的任意两个目标点的位置信息进行差值运算,得到对应的位置差值;从位置差值小于差值阈值的两个目标点中获取其中一个目标点作为去除目标点;去除去除目标点对应的目标点对。基于目标点对得到当前帧图像和上一帧图像之间的变换矩阵,包括:基于去除去除目标点对应的目标点对之后的目标点对,得到当前帧图像和上一帧图像之间的变换矩阵。
在一个实施例中,上述主体检测模块1408还用于当检测到当前帧图像不处于晃动状态时,将当前帧图像输入主体检测模型,并根据主体检测模型对当前帧图像进行主体检测,得到目标主体。
在一个实施例中,主体检测模型中包括第一背景检测模型;上述主体检测模块1408还用于根据校正后的上一帧图像更新第一背景检测模型;根据更新后的第一背景检测模型对当前帧图像进行背景检测,得到当前帧图像的第一背景区域;将当前帧图像和当前帧图像的第一背景区域进行差分处理,根据差分结果确定当前帧图像的目标主体。
在一个实施例中,主体检测模型中还包括第二背景检测模型;第二背景检测模型为候选的背景检测模型;上述主体检测模块1408还用于当通过第一背景检测模型检测到的第一背景区域与参考背景不同时,根据校正后的上一帧图像更新第二背景检测模型;根据更新后的第一背景检测模型对当前帧图像进行背景检测,得到当前帧图像的第二背景区域;将当前帧图像和当前帧图像的第二背景区域进行差分处理,根据差分结果确定当前帧图像的目标主体。
在一个实施例中,上述主体检测装置1400还包括模型切换模块,用于获取第一背景检测模型的更新系数和第二背景检测模型的更新系数;更新系数指的是背景检测模型更新的程度;将第一背景检测模型的更新系数和第二背景检测模型的更新系数进行比较,并将第一背景检测模型和第二背景检测模型中的更新系数大的一个执行对当前帧图像进行背景检测步骤。
在一个实施例中,上述主体检测模块1408还用于获取差分结果所包含的各个候选主体,判断各个候选主体中是否存在运动主体;当各个候选主体中存在运动主体时,将包含运动主体的运动区域输入主体分割网络,得到当前帧图像的目标主体;当各个候选主体中不存在运动主体时,将当前帧图像输入主体分割网络,得到目标主体。
在一个实施例中,上述主体检测模块1408还用于获取各个候选主体的面积;当各个候选主体的面积均小于面积阈值时,各个候选主体中不存在运动主体;当存在候选主体的面积大于或等于面积阈值时,各个候选主体中存在运动主体;运动主体为面积大于或等于面积阈值的候选主体。
在一个实施例中,上述主体检测模块1408还用于当各个候选主体中存在运动主体时,将包含运动主体的运动区域输入主体分割网络,得到主体分割图像;获取运动主体的二值图像;将二值图像与主体分割图像进行与处理,得到目标主体。
在一个实施例中,上述主体检测装置1400还包括目标视频生成模块,用于对焦至目标主体,获取下一帧图像;将当前帧图像替换上一帧图像,将下一帧图像替换当前帧图像,执行当检测到当前帧图像处于晃动状态时,获取当前帧图像和上一帧图像之间的变换矩阵;根据变换矩阵对所述上一帧图像进行校正;根据校正后的上一帧图像更新主体检测模型,并根据更新后的主体检测模型对当前帧图像进行主体检测,得到目标主体步骤;基于校正后的各个图像,生成目标视频。
上述主体检测装置中各个模块的划分仅用于举例说明,在其他实施例中,可将主体检测装置按照需要划分为不同的模块,以完成上述主体检测装置的全部或部分功能。
图15为一个实施例中电子设备的内部结构示意图。如图15所示,该电子设备包括通过系统总线连接的处理器和存储器。其中,该处理器用于提供计算和控制能力,支撑整个电子设备的运行。存储器可包括非易失性存储介质及内存储器。非易失性存储介质存储有操作系统和计算机程序。该计算机程序可被处理器所执行,以用于实现以下各个实施例所提供的一种主体检测方法。内存储器为非易失性存储介质中的操作系统计算机程序提供高速缓存的运行环境。该电子设备可以是手机、平板电脑或者个人数字助理或穿戴式设备等。
本申请实施例中提供的主体检测装置中的各个模块的实现可为计算机程序的形式。该计算机程序可在终端或服务器上运行。该计算机程序构成的程序模块可存储在终端或服务器的存储器上。该计算机程序被处理器执行时,实现本申请实施例中所描述方法的步骤。
本申请实施例还提供了一种计算机可读存储介质。一个或多个包含计算机可执行指令的非易失性计算机可读存储介质,当所述计算机可执行指令被一个或多个处理器执行时,使得所述处理器执行主体检测方法的步骤。
一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行主体检测方法。
本申请实施例所使用的对存储器、存储、数据库或其它介质的任何引用可包括非易失性和/或易失性存储器。合适的非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM),它用作外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDR SDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (20)
1.一种主体检测方法,其特征在于,包括:
获取当前帧图像和上一帧图像;
当检测到所述当前帧图像处于晃动状态时,从所述当前帧图像和上一帧图像中获取目标点对;
获取去除目标点,去除所述去除目标点对应的目标点对;基于去除所述去除目标点对应的目标点对之后的目标点对,得到所述当前帧图像和上一帧图像之间的变换矩阵;所述变换矩阵用于表示所述上一帧图像的像素点变换至所述当前帧图像的像素点的矩阵;
根据所述变换矩阵对所述上一帧图像进行校正;
根据校正后的上一帧图像更新主体检测模型,并根据更新后的主体检测模型对所述当前帧图像进行主体检测,得到目标主体。
2.根据权利要求1所述的方法,其特征在于,所述当前帧图像处于晃动状态的确定方式,包括:
将所述当前帧图像与上一帧图像进行比较,得到当前帧图像对应的场景变化值;所述场景变化值表示所述当前帧图像与所述上一帧图像的场景变化程度;
当所述场景变化值大于阈值时,所述当前帧图像处于晃动状态。
3.根据权利要求1所述的方法,其特征在于,所述当前帧图像处于晃动状态的确定方式,包括:
将所述当前帧图像和上一帧图像进行差分处理,并对差分处理后的图像进行二值化处理,得到差分二值图像;
统计所述差分二值图像中各个像素点的总值;
当所述总值大于总值阈值时,所述当前帧图像处于晃动状态。
4.根据权利要求1所述的方法,其特征在于,所述当前帧图像处于晃动状态的确定方式,包括:
获取所述当前帧图像所包含的各个像素点的像素值,获取上一帧图像所包含的各个像素点的像素值;
基于所述当前帧图像所包含的各个像素点的像素值,生成所述当前帧图像的第一像素值向量;所述第一像素值向量用于表示所述当前帧图像的像素值的分布;
基于所述上一帧图像所包含的各个像素点的像素值,生成所述上一帧图像的第二像素值向量;所述第二像素值向量用于表示所述上一帧图像的像素值的分布;
根据所述第一像素值向量与所述第二像素值向量确定所述当前帧图像与上一帧图像的向量距离;
当所述向量距离大于距离阈值时,所述当前帧图像处于晃动状态。
5.根据权利要求1所述的方法,其特征在于,所述目标点对包括跟踪点对和匹配点对中的至少一种;
所述跟踪点对的生成方式,包括:
将所述当前帧图像和上一帧图像进行同样划分,得到当前帧的各个子区域和上一帧图像的各个子区域;
分别从当前帧图像的各个子区域与上一帧图像的各个子区域提取目标数量的随机点;
根据当前帧图像的每个子区域的随机点和上一帧图像对应的子区域的点生成跟踪点对;
所述匹配点对的生成方式,包括:
从所述当前帧图像提取特征点,并从所述上一帧图像中提取对应的特征点;
根据所述当前帧图像和上一帧图像提取的特征点生成匹配点对。
6.根据权利要求5所述的方法,其特征在于,所述根据当前帧图像的每个子区域的随机点和上一帧图像对应的子区域的点生成跟踪点对,包括:
对所述当前帧图像的每个子区域的随机点和上一帧图像的每个子区域的随机点进行光流跟踪,得到当前帧图像和上一帧图像的运动矢量;
通过所述运动矢量将上一帧图像的随机点映射至所述当前帧图像中,生成跟踪点对。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
对所述当前帧图像的随机点和上一帧图像的随机点进行矢量滤波,获取当前帧图像的目标随机点和上一帧图像的目标随机点;
通过所述运动矢量将上一帧图像的随机点映射至所述当前帧图像中,生成跟踪点对,包括:
通过所述运动矢量将上一帧图像的目标随机点映射至所述当前帧图像中,生成跟踪点对。
8.根据权利要求5所述的方法,其特征在于,所述根据所述当前帧图像和上一帧图像提取的特征点生成匹配点对,包括:
根据所述当前帧图像的每一个特征点生成对应的特征描述子,根据上一帧图像提取的每一个特征点生成对应的特征描述子;
将当前帧图像的特征描述子与上一帧图像对应的特征描述子进行匹配,得到匹配点对。
9.根据权利要求1所述的方法,其特征在于,所述获取去除目标点,包括:
获取各个目标点对中所包含的各个目标点的位置信息;
将同一图像中的任意两个目标点的位置信息进行差值运算,得到对应的位置差值;
从所述位置差值小于差值阈值的两个目标点中获取其中一个目标点作为去除目标点。
10.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当检测到当前帧图像不处于晃动状态时,将所述当前帧图像输入主体检测模型,并根据主体检测模型对所述当前帧图像进行主体检测,得到目标主体。
11.根据权利要求1所述的方法,其特征在于,所述主体检测模型中包括第一背景检测模型;
所述根据校正后的上一帧图像更新主体检测模型,并根据更新后的主体检测模型对所述当前帧图像进行主体检测,得到目标主体,包括:
根据校正后的上一帧图像更新所述第一背景检测模型;
根据更新后的第一背景检测模型对所述当前帧图像进行背景检测,得到所述当前帧图像的第一背景区域;
将所述当前帧图像和当前帧图像的第一背景区域进行差分处理,根据差分结果确定所述当前帧图像的目标主体。
12.根据权利要求11所述的方法,其特征在于,所述主体检测模型中还包括第二背景检测模型;所述第二背景检测模型为候选的背景检测模型;
所述方法还包括:
当通过所述第一背景检测模型检测到的第一背景区域与参考背景不同时,根据校正后的上一帧图像更新所述第二背景检测模型;
根据更新后的第二背景检测模型对所述当前帧图像进行背景检测,得到所述当前帧图像的第二背景区域;
将所述当前帧图像和当前帧图像的第二背景区域进行差分处理,根据差分结果确定所述当前帧图像的目标主体。
13.根据权利要求12所述的方法,其特征在于,所述方法还包括:
获取所述第一背景检测模型的更新系数和第二背景检测模型的更新系数;所述更新系数为背景检测模型更新的程度;
将所述第一背景检测模型的更新系数和第二背景检测模型的更新系数进行比较,并将所述第一背景检测模型和第二背景检测模型中的更新系数大的一个执行所述对所述当前帧图像进行背景检测步骤。
14.根据权利要求11至13中任一项所述的方法,其特征在于,所述根据差分结果确定所述当前帧图像的目标主体,包括:
获取差分结果所包含的各个候选主体,判断所述各个候选主体中是否存在运动主体;
当所述各个候选主体中存在运动主体时,将包含所述运动主体的运动区域输入主体分割网络,得到所述当前帧图像的目标主体;
当所述各个候选主体中不存在运动主体时,将所述当前帧图像输入主体分割网络,得到目标主体。
15.根据权利要求14所述的方法,其特征在于,所述判断所述各个候选主体中是否存在运动主体,包括:
获取各个候选主体的面积;
当所述各个候选主体的面积均小于面积阈值时,所述各个候选主体中不存在运动主体;
当存在所述候选主体的面积大于或等于面积阈值时,所述各个候选主体中存在运动主体;所述运动主体为面积大于或等于面积阈值的候选主体。
16.根据权利要求15所述的方法,其特征在于,所述当所述各个候选主体中存在运动主体时,将包含所述运动主体的运动区域输入主体分割网络,得到所述当前帧图像的目标主体,包括:
当所述各个候选主体中存在运动主体时,将包含所述运动主体的运动区域输入主体分割网络,得到主体分割图像;
获取所述运动主体的二值图像;
将所述二值图像与所述主体分割图像进行与处理,得到目标主体。
17.根据权利要求1所述的方法,其特征在于,所述方法还包括:
对焦至所述目标主体,获取下一帧图像;
将所述当前帧图像替换上一帧图像,将所述下一帧图像替换当前帧图像,返回执行所述当检测到当前帧图像处于晃动状态时,获取所述当前帧图像和上一帧图像之间的变换矩阵;根据所述变换矩阵对所述上一帧图像进行校正;根据校正后的上一帧图像更新主体检测模型,并根据更新后的主体检测模型对所述当前帧图像进行主体检测,得到目标主体步骤;
基于校正后的各个图像,生成目标视频。
18.一种主体检测装置,其特征在于,包括:
图像获取模块,用于获取当前帧图像和上一帧图像;
变换矩阵获取模块,用于当检测到所述当前帧图像处于晃动状态时,从所述当前帧图像和上一帧图像中获取目标点对;
目标点去除模块,用于获取去除目标点,去除所述去除目标点对应的目标点对;
所述变换矩阵获取模块还用于基于去除所述去除目标点对应的目标点对之后的目标点对,得到所述当前帧图像和上一帧图像之间的变换矩阵;所述变换矩阵用于表示所述上一帧图像的像素点变换至所述当前帧图像的像素点的矩阵;
校正模块,用于根据所述变换矩阵对所述上一帧图像进行校正;
主体检测模块,用于根据校正后的上一帧图像更新主体检测模型,并根据更新后的主体检测模型对所述当前帧图像进行主体检测,得到目标主体。
19.一种电子设备,包括存储器及处理器,所述存储器中储存有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如权利要求1至17中任一项所述的主体检测方法的步骤。
20.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至17中任一项所述的方法的步骤。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910930662.1A CN110660090B (zh) | 2019-09-29 | 2019-09-29 | 主体检测方法和装置、电子设备、计算机可读存储介质 |
US16/915,398 US11538175B2 (en) | 2019-09-29 | 2020-06-29 | Method and apparatus for detecting subject, electronic device, and computer readable storage medium |
EP20188063.0A EP3798975B1 (en) | 2019-09-29 | 2020-07-28 | Method and apparatus for detecting subject, electronic device, and computer readable storage medium |
PCT/CN2020/108519 WO2021057294A1 (en) | 2019-09-29 | 2020-08-11 | Method and apparatus for detecting subject, electronic device, and computer readable storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910930662.1A CN110660090B (zh) | 2019-09-29 | 2019-09-29 | 主体检测方法和装置、电子设备、计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110660090A CN110660090A (zh) | 2020-01-07 |
CN110660090B true CN110660090B (zh) | 2022-10-25 |
Family
ID=69039693
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910930662.1A Active CN110660090B (zh) | 2019-09-29 | 2019-09-29 | 主体检测方法和装置、电子设备、计算机可读存储介质 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11538175B2 (zh) |
EP (1) | EP3798975B1 (zh) |
CN (1) | CN110660090B (zh) |
WO (1) | WO2021057294A1 (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110660090B (zh) | 2019-09-29 | 2022-10-25 | Oppo广东移动通信有限公司 | 主体检测方法和装置、电子设备、计算机可读存储介质 |
CN111698427B (zh) * | 2020-06-23 | 2021-12-24 | 联想(北京)有限公司 | 一种图像处理方法、装置及电子设备 |
JP2022142515A (ja) * | 2021-03-16 | 2022-09-30 | 本田技研工業株式会社 | 移動体の移動量を推定する情報処理装置、情報処理方法、及びプログラム |
CN113139526A (zh) * | 2021-05-21 | 2021-07-20 | 一汽奔腾轿车有限公司 | 一种基于OpenCV的停车泊位线识别方法 |
CN113436113B (zh) * | 2021-07-22 | 2023-04-18 | 黑芝麻智能科技有限公司 | 防抖动的图像处理方法、装置、电子设备和存储介质 |
CN113935997B (zh) * | 2021-12-16 | 2022-03-04 | 深圳致星科技有限公司 | 用于料件检测的图像处理方法、存储介质及图像处理装置 |
CN114468977B (zh) * | 2022-01-21 | 2023-03-28 | 深圳市眼科医院 | 一种眼科视力检查数据收集分析方法、系统及计算机存储介质 |
CN114841896B (zh) * | 2022-05-31 | 2024-09-06 | 歌尔股份有限公司 | 图像处理方法、设备以及计算机可读存储介质 |
CN116703251B (zh) * | 2023-08-08 | 2023-11-17 | 德润杰(山东)纺织科技有限公司 | 基于人工智能的胶圈生产质量检测方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102568002A (zh) * | 2011-12-20 | 2012-07-11 | 福建省华大数码科技有限公司 | 基于纹理和运动模式融合的运动目标检测算法 |
CN103150738A (zh) * | 2013-02-02 | 2013-06-12 | 南京理工大学 | 分布式多传感器运动目标的检测方法 |
CN104156978A (zh) * | 2014-07-04 | 2014-11-19 | 合肥工业大学 | 基于球载平台的多目标动态跟踪方法 |
CN108205891A (zh) * | 2018-01-02 | 2018-06-26 | 霍锦涛 | 一种监控区域的车辆监测方法 |
CN108229475A (zh) * | 2018-01-03 | 2018-06-29 | 深圳中兴网信科技有限公司 | 车辆跟踪方法、系统、计算机设备及可读存储介质 |
CN109101944A (zh) * | 2018-08-27 | 2018-12-28 | 四创科技有限公司 | 一种识别向河道内抛投垃圾的实时视频监控算法 |
CN109978908A (zh) * | 2019-03-21 | 2019-07-05 | 西安电子科技大学 | 一种适应大尺度形变的单目标快速跟踪定位方法 |
Family Cites Families (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005321489A (ja) | 2004-05-07 | 2005-11-17 | Ricoh Co Ltd | 撮像装置 |
JP4958610B2 (ja) * | 2007-04-06 | 2012-06-20 | キヤノン株式会社 | 画像防振装置、撮像装置及び画像防振方法 |
CN102025910B (zh) | 2009-09-22 | 2012-09-19 | 华晶科技股份有限公司 | 数字相机的连续对焦方法 |
US8593534B2 (en) | 2010-09-08 | 2013-11-26 | Apple Inc. | Auto-triggered camera self-timer based on recognition of subject's presence in scene |
JP5954712B2 (ja) * | 2011-01-13 | 2016-07-20 | パナソニックIpマネジメント株式会社 | 画像処理装置、画像処理方法、及びそのプログラム |
AU2013260753A1 (en) * | 2013-11-25 | 2015-06-11 | Canon Kabushiki Kaisha | Rapid shake detection using a cascade of quad-tree motion detectors |
US9350924B2 (en) | 2014-08-25 | 2016-05-24 | John G. Posa | Portable electronic devices with integrated image/video compositing |
CN104469167B (zh) | 2014-12-26 | 2017-10-13 | 小米科技有限责任公司 | 自动对焦方法及装置 |
CN105847664B (zh) | 2015-07-31 | 2019-01-29 | 维沃移动通信有限公司 | 一种移动终端拍照的方法和装置 |
KR102153607B1 (ko) * | 2016-01-22 | 2020-09-08 | 삼성전자주식회사 | 영상에서의 전경 검출 장치 및 방법 |
CN105976399A (zh) | 2016-04-29 | 2016-09-28 | 北京航空航天大学 | 一种基于sift特征匹配的运动目标检测方法 |
CN205883405U (zh) | 2016-07-29 | 2017-01-11 | 深圳众思科技有限公司 | 一种自动追焦装置及终端 |
US10127670B2 (en) | 2016-09-27 | 2018-11-13 | Xactware Solutions, Inc. | Computer vision systems and methods for detecting and modeling features of structures in images |
CN106686308B (zh) | 2016-12-28 | 2018-02-16 | 平安科技(深圳)有限公司 | 图像焦距检测方法和装置 |
CN107730462A (zh) | 2017-09-30 | 2018-02-23 | 努比亚技术有限公司 | 一种图像处理方法、终端及计算机可读存储介质 |
US10600158B2 (en) | 2017-12-04 | 2020-03-24 | Canon Kabushiki Kaisha | Method of video stabilization using background subtraction |
CN108170817A (zh) | 2017-12-29 | 2018-06-15 | 努比亚技术有限公司 | 照片主体的演变视频获取方法、装置及可读存储介质 |
CN110096935A (zh) | 2018-01-31 | 2019-08-06 | 杭州海康威视数字技术股份有限公司 | 图像分析方法、装置、电子设备及存储介质 |
CN108470354B (zh) | 2018-03-23 | 2021-04-27 | 云南大学 | 视频目标跟踪方法、装置和实现装置 |
CN108900778A (zh) | 2018-06-27 | 2018-11-27 | 努比亚技术有限公司 | 一种拍摄方法、移动终端及计算机可读存储介质 |
CN109167910A (zh) | 2018-08-31 | 2019-01-08 | 努比亚技术有限公司 | 对焦方法、移动终端及计算机可读存储介质 |
CN109089047B (zh) | 2018-09-29 | 2021-01-12 | Oppo广东移动通信有限公司 | 控制对焦的方法和装置、存储介质、电子设备 |
CN110660090B (zh) | 2019-09-29 | 2022-10-25 | Oppo广东移动通信有限公司 | 主体检测方法和装置、电子设备、计算机可读存储介质 |
-
2019
- 2019-09-29 CN CN201910930662.1A patent/CN110660090B/zh active Active
-
2020
- 2020-06-29 US US16/915,398 patent/US11538175B2/en active Active
- 2020-07-28 EP EP20188063.0A patent/EP3798975B1/en active Active
- 2020-08-11 WO PCT/CN2020/108519 patent/WO2021057294A1/en active Application Filing
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102568002A (zh) * | 2011-12-20 | 2012-07-11 | 福建省华大数码科技有限公司 | 基于纹理和运动模式融合的运动目标检测算法 |
CN103150738A (zh) * | 2013-02-02 | 2013-06-12 | 南京理工大学 | 分布式多传感器运动目标的检测方法 |
CN104156978A (zh) * | 2014-07-04 | 2014-11-19 | 合肥工业大学 | 基于球载平台的多目标动态跟踪方法 |
CN108205891A (zh) * | 2018-01-02 | 2018-06-26 | 霍锦涛 | 一种监控区域的车辆监测方法 |
CN108229475A (zh) * | 2018-01-03 | 2018-06-29 | 深圳中兴网信科技有限公司 | 车辆跟踪方法、系统、计算机设备及可读存储介质 |
CN109101944A (zh) * | 2018-08-27 | 2018-12-28 | 四创科技有限公司 | 一种识别向河道内抛投垃圾的实时视频监控算法 |
CN109978908A (zh) * | 2019-03-21 | 2019-07-05 | 西安电子科技大学 | 一种适应大尺度形变的单目标快速跟踪定位方法 |
Also Published As
Publication number | Publication date |
---|---|
US20210099646A1 (en) | 2021-04-01 |
WO2021057294A1 (en) | 2021-04-01 |
US11538175B2 (en) | 2022-12-27 |
EP3798975B1 (en) | 2022-10-05 |
CN110660090A (zh) | 2020-01-07 |
EP3798975A1 (en) | 2021-03-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110660090B (zh) | 主体检测方法和装置、电子设备、计算机可读存储介质 | |
CN110149482B (zh) | 对焦方法、装置、电子设备和计算机可读存储介质 | |
CN110796041B (zh) | 主体识别方法和装置、电子设备、计算机可读存储介质 | |
CN110473185B (zh) | 图像处理方法和装置、电子设备、计算机可读存储介质 | |
CN110536068B (zh) | 对焦方法和装置、电子设备、计算机可读存储介质 | |
CN110493527B (zh) | 主体对焦方法、装置、电子设备和存储介质 | |
CN110866486B (zh) | 主体检测方法和装置、电子设备、计算机可读存储介质 | |
CN111932587B (zh) | 图像处理方法和装置、电子设备、计算机可读存储介质 | |
CN110349163B (zh) | 图像处理方法和装置、电子设备、计算机可读存储介质 | |
CN110661977B (zh) | 主体检测方法和装置、电子设备、计算机可读存储介质 | |
CN113313661A (zh) | 图像融合方法、装置、电子设备及计算机可读存储介质 | |
CN110650288B (zh) | 对焦控制方法和装置、电子设备、计算机可读存储介质 | |
CN110490196B (zh) | 主体检测方法和装置、电子设备、计算机可读存储介质 | |
CN113313626A (zh) | 图像处理方法、装置、电子设备及存储介质 | |
CN110365897B (zh) | 图像修正方法和装置、电子设备、计算机可读存储介质 | |
CN110399823B (zh) | 主体跟踪方法和装置、电子设备、计算机可读存储介质 | |
CN110689007B (zh) | 主体识别方法和装置、电子设备、计算机可读存储介质 | |
CN110688926B (zh) | 主体检测方法和装置、电子设备、计算机可读存储介质 | |
CN112581481A (zh) | 图像处理方法和装置、电子设备、计算机可读存储介质 | |
CN110545384B (zh) | 对焦方法和装置、电子设备、计算机可读存储介质 | |
CN108335278B (zh) | 图像的处理方法、装置、存储介质及电子设备 | |
CN110610171A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |