CN107066938A - 视频分析设备、方法和计算机程序产品 - Google Patents

视频分析设备、方法和计算机程序产品 Download PDF

Info

Publication number
CN107066938A
CN107066938A CN201710068960.5A CN201710068960A CN107066938A CN 107066938 A CN107066938 A CN 107066938A CN 201710068960 A CN201710068960 A CN 201710068960A CN 107066938 A CN107066938 A CN 107066938A
Authority
CN
China
Prior art keywords
insect
video
wing
characteristic point
threshold value
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
Application number
CN201710068960.5A
Other languages
English (en)
Other versions
CN107066938B (zh
Inventor
谷源涛
车向前
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tsinghua University
Original Assignee
Tsinghua University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tsinghua University filed Critical Tsinghua University
Priority to CN201710068960.5A priority Critical patent/CN107066938B/zh
Publication of CN107066938A publication Critical patent/CN107066938A/zh
Priority to US15/811,214 priority patent/US10445584B2/en
Application granted granted Critical
Publication of CN107066938B publication Critical patent/CN107066938B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/20Movements or behaviour, e.g. gesture recognition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/213Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/213Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods
    • G06F18/2135Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods based on approximation criteria, e.g. principal component analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques
    • G06F18/232Non-hierarchical techniques
    • G06F18/2321Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
    • G06F18/23213Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions with fixed number of clusters, e.g. K-means clustering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2411Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on the proximity to a decision surface, e.g. support vector machines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/48Extraction of image or video features by mapping characteristic values of the pattern into a parameter space, e.g. Hough transformation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/762Arrangements for image or video recognition or understanding using pattern recognition or machine learning using clustering, e.g. of similar faces in social networks
    • G06V10/763Non-hierarchical techniques, e.g. based on statistics of modelling distributions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/7715Feature extraction, e.g. by transforming the feature space, e.g. multi-dimensional scaling [MDS]; Mappings, e.g. subspace methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/40Scenes; Scene-specific elements in video content
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/40Scenes; Scene-specific elements in video content
    • G06V20/41Higher-level, semantic clustering, classification or understanding of video scenes, e.g. detection, labelling or Markovian modelling of sport events or news items
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/40Scenes; Scene-specific elements in video content
    • G06V20/46Extracting features or characteristics from the video content, e.g. video fingerprints, representative shots or key frames
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/08Indexing scheme for image data processing or generation, in general involving all processing steps from image acquisition to 3D model generation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10024Color image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Data Mining & Analysis (AREA)
  • Multimedia (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Software Systems (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Medical Informatics (AREA)
  • Databases & Information Systems (AREA)
  • Probability & Statistics with Applications (AREA)
  • Human Computer Interaction (AREA)
  • Geometry (AREA)
  • Computer Graphics (AREA)
  • Computational Linguistics (AREA)
  • Psychiatry (AREA)
  • Social Psychology (AREA)
  • Image Analysis (AREA)
  • Catching Or Destruction (AREA)

Abstract

本公开涉及视频分析设备、方法和计算机程序产品。设备包括:前景提取部用于从输入视频中提取昆虫前景图像,以及三维姿态重建部,包括:特征点求解单元,用于从昆虫前景图像中计算初始特征点,并利用在昆虫前景图像中所标定的特征点生成特征点信号子空间,根据初始特征点和所标定的特征点、在特征点信号子空间的约束下训练迭代矩阵,以将迭代矩阵限制在特征点信号子空间上,通过对初始特征点利用所训练的迭代矩阵进行迭代,求解出每一视频帧中的昆虫身体最终特征点,以及姿态计算单元,通过昆虫身体最终特征点来重建昆虫的姿态。例如,本公开的实施例可以对昆虫三维特征的迭代过程进行自适应,有助于提高昆虫三维姿态重建的鲁棒性。

Description

视频分析设备、方法和计算机程序产品
技术领域
本公开涉及视频分析领域,特别涉及通过视频分析对昆虫的特征进行自动识别。
背景技术
动物行为学是生物学中的一个重要的研究方向。传统的动物行为学研究主要靠人工识别分析动物行为的强度,这样做不仅耗费人力与时间,还会因不同人对行为的主观标准不统一降低不同实验间的可比性。目前已存在一些对昆虫的行为视频进行自动分析的算法。然而,已有算法适用于比较理想的视频拍摄环境,难以应对例如生物学实验室等低成本拍摄条件下的视频噪声,鲁棒性不强。
发明内容
有鉴于此,本公开提出了视频分析设备、方法、计算机程序。
根据本公开的一方面,提供了一种视频分析设备,所述设备包括:前景提取部,用于从输入视频中提取昆虫前景图像,以及三维姿态重建部,包括:特征点求解单元,用于从所述昆虫前景图像中计算初始特征点,并且利用在所述昆虫前景图像中所标定的特征点生成特征点信号子空间,根据所述初始特征点和所标定的特征点、在所述特征点信号子空间的约束下训练迭代矩阵,以将所述迭代矩阵限制在所述特征点信号子空间上,通过对所述初始特征点利用所训练的迭代矩阵进行迭代,求解出每一视频帧中的昆虫身体最终特征点,以及姿态计算单元,所述姿态计算单元通过所述昆虫身体最终特征点来重建所述昆虫的姿态。
根据本公开的其它方面,提供了一种视频分析方法,包括:从输入视频中提取昆虫前景图像;从所述昆虫前景图像中计算初始特征点,并且利用在所述昆虫前景图像中所标定的特征点生成特征点信号子空间;根据所述初始特征点和所标定的特征点、在所述特征点信号子空间的约束下训练迭代矩阵,以将所述迭代矩阵限制在所述特征点信号子空间上;通过对所述初始特征点利用所训练的迭代矩阵进行迭代,求解出每一视频帧中的昆虫身体最终特征点;以及通过所述昆虫身体最终特征点来重建所述昆虫的姿态。
根据本公开的其它方面,提供一种视频分析设备,其特征在于,包括:处理器,用于存储处理器可执行指令的存储器,其中,所述处理器被配置为执行上述任一可能的实施方式所述的视频分析方法。
根据本公开的其它方面,提供一种计算机程序产品,包括用于使处理器实现上述任一可能的实施方式所述的视频分析方法的计算机可读程序指令。
本公开的实施例可以对昆虫三维特征的迭代过程进行自适应,有助于提高昆虫三维姿态重建的鲁棒性。
进一步地,根据本公开的实施例,例如可以通过昆虫身体结构来限制视频中的前景面积,对昆虫三维特征的阈值进行自适应,有助于提高昆虫三维姿态重建的鲁棒性和/或准确性。
根据下面参考附图对示例性实施例的详细说明,本公开的其它特征及方面将变得清楚。
附图说明
包含在说明书中并且构成说明书的一部分的附图与说明书一起示出了本公开的示例性实施例、特征和方面,并且用于解释本公开的原理。
图1示出根据示例实施方式的用于从输入视频中自动识别昆虫的特征的视频分析设备1的示意框图。
图2示出根据一个示例的视频预处理部16的示意框图。
图3示出了根据一个示例的前景提取部12的示意框图。
图4示出了根据一个具体示例的背景亮度畸变估计单元的结构的示意框图。
图5示出了根据一个实施方式的昆虫的身体姿态重建示意图。
图6示出了根据一个示例实施方式的视频分析设备2的示意框图。
图7示出了根据一个示例实施方式的视频分析设备3的示意框图。
图8示出了根据一个示例实施方式的视频分析方法的示意流程图。
图9是根据示例实施例示出的一种用于视频分析装置1900的框图。
具体实施方式
以下将参考附图详细说明本公开的各种示例实施例、特征和方面。附图中相同的附图标记表示功能相同或相似的元件。尽管在附图中示出了实施例的各种方面,但是除非特别指出,不必按比例绘制附图。
在这里专用的词“示例”意为“用作例子、实施例或说明性”。这里作为“示例”所说明的任何实施例不必解释为优于或好于其它实施例。举例而言,本公开中涉及的“阈值”可以理解为子视频中的亮度的阈值。
另外,为了更好的说明本公开,在下文的具体实施方式中给出了众多的具体细节。本领域技术人员应当理解,没有某些具体细节,本公开同样可以实施。在一些实例中,对于本领域技术人员熟知的方法、手段、元件和电路未作详细描述,以便于凸显本公开的主旨。
图1示出了根据示例实施方式的视频分析设备1的示意框图。该设备可用于从输入视频中自动识别昆虫的特征。如图1所示,视频分析设备1可包括前景提取部12和三维姿态重建部14。前景提取部12可从输入视频中提取昆虫前景图像。三维姿态重建部14可包括特征点求解单元142和姿态计算单元144。特征点求解单元142可从昆虫前景图像中计算初始特征点,并且利用在昆虫前景图像中所标定的特征点生成特征点信号子空间。特征点求解单元142还可以根据初始特征点和所标定的特征点、在信号子空间的约束下训练迭代矩阵,以将迭代矩阵限制在特征点信号子空间上,通过对初始特征点利用所训练的迭代矩阵进行迭代计算,求解出每一视频帧中的昆虫身体最终特征点。姿态计算单元144可通过求出的昆虫身体最终特征点来重建昆虫的姿态。在一个具体实现中,前景提取部12可利用昆虫活动台(arena,有时称为“打架台”)模型进行迭代以自适应地计算输入视频中的前景,从而提取昆虫前景图像。
在一个示例中,视频分析设备1还可以包括视频预处理部16。图2示出了根据一个示例的视频预处理部16的示意框图。视频预处理部16用于对输入视频进行预处理,以得到多个子视频。视频预处理部16可包括活动台估计单元162和子视频生成单元164。如图2所示,活动台估计单元162可从输入视频中提取多个帧,估计多个帧中各昆虫活动台的位置、大小以及出现和移出各昆虫活动台的时刻。在一个具体实现中,活动台估计单元162可对多个输入帧应用与多个昆虫活动台的已知形状相对应的数学变换,以检测多个帧中与已知形状相对应的物体。子视频生成单元164可根据活动台估计单元162估计得到的各昆虫活动台的位置、大小和出现各昆虫活动台的时刻,对输入视频进行切割,以得到各自包含一个单独昆虫活动台的多个子视频。图1中例示出的前景提取部12可根据归一化后的多个子视频,提取昆虫前景图像。应当理解,活动台估计单元162可用于检测视频中的圆形活动台,但不以此为限,例如也可以用于检测多个其它形状的活动台。检测其它形状的活动台时,只需将变换替换为检测其它特定形状的以霍夫变换为例的数学变换。利用与上述数学变换相适应的各种修改,可实现针对任意形状活动台的检测,这是本领域技术人员容易理解的,上述各种修改均在本公开的范围之内。
背景模型
在一个具体示例中,可以通过将视频背景的像素值建模成一定的概率分布,得到不属于背景模型的前景像素,并在此基础上通过自适应算法得到准确的前景。在一个具体实现中,所使用的测试视频在通过例如子视频生成单元164切割后,可以只包含单独的固定活动台,因此可以使用例如单高斯背景模型对视频背景进行建模。具体地,根据一个示例,视频分析设备1可以首先将视频中每个像素的取值建模成单高斯分布,然后通过统计整个视频,得到像素(x,y)的高斯分布均值和方差作为背景模型的分布参数。
在一个示例中,昆虫活动台模型可以是输入视频中活动台空腔的圆心和半径,其可以刻画活动台中昆虫的可移动范围,对象昆虫可被限制在昆虫活动台内部活动。在一个示例中,当昆虫活动台中昆虫的移动比较频繁,且其移动区域遍布整个活动台空腔时,可以利用背景模型参数的变化来对活动台进行建模。在一个示例中,输入视频中各像素的初始亮度畸变均方根在活动台的空腔内外具有明显的差异,因此可以用来确定活动台空腔的范围,其算法流程如以下算法所示。应当理解,尽管以下算法的伪代码以果蝇作为对象昆虫的示例,但本公开的设备和方法还可以应用于其它昆虫的视频分析,不以果蝇为限。在以下算法实例中,N为亮度畸变RMS的二值化图像中连通区域的个数,M为所述连通区域中不靠近边缘的连通区域的个数。
图3示出了根据一个示例的前景提取部12的示意框图。
如图3所示,在一个示例中,前景提取部12可以包括背景亮度畸变估计单元122、昆虫平均尺寸估计单元126、昆虫翅膀估计单元124、和昆虫身体估计单元128。背景亮度畸变估计单元122可用于划分子视频中的背景。昆虫平均尺寸估计单元126可用于根据子视频和初始昆虫身体阈值来获得身体二值图像,还可以与活动台中的昆虫的已知数量相对应地,在身体二值图像中针对昆虫的身体进行建模,以求出昆虫的平均尺寸。昆虫翅膀估计单元124可用于根据子视频和初始昆虫翅膀阈值来获得昆虫整体二值图像,其中,可以针对所述多个帧中的各帧进行迭代,在迭代中,根据昆虫整体二值图像中的连通域面积,对初始昆虫翅膀阈值进行自适应调整。昆虫翅膀估计单元124可以输出昆虫整体二值图像和自适应后的昆虫翅膀阈值。昆虫身体估计单元128可接收昆虫整体二值图像,并且接收子视频、初始昆虫身体阈值和子视频中的已知的昆虫数量。昆虫身体估计单元128可使用初始昆虫身体阈值求出身体二值图像,其中,针对所述多个帧中的各帧进行迭代,在迭代中,可以根据身体二值图像中的连通域面积,对初始昆虫身体阈值进行自适应调整,以输出自适应后的昆虫身体阈值和根据自适应后的昆虫身体阈值获得的昆虫身体二值图像。在一个示例中,昆虫前景图像可以包括根据自适应后的昆虫身体阈值获得的昆虫身体二值图像。示例的实施方式可以有助于应对短时间光照变化对视频分析的影响。
在一个具体实现中,可以通过昆虫的平均尺寸,得到视频中昆虫的平均身体面积。可以根据平均身体面积对前景图像中检到的身体和翅膀的面积进行限制,从而自适应地得到合理的前景阈值。除可用于优化前景提取外,活动台模型和昆虫模型还可以辅助建立昆虫姿态,并可以用来对昆虫特征进行归一化。
在一个具体示例中,以果蝇作为对象昆虫。例如,视频分析设备1中的背景亮度畸变估计单元122可以利用像素层模型初步划分属于背景、果蝇身体和果蝇翅膀的像素点。例如,还可以利用活动台模型、果蝇身体模型和果蝇翅膀模型(统称为物体层模型)更精确地估计果蝇身体和翅膀的位置和大小,其中表征活动台、身体和翅膀的阈值等的参数可以由自适应算法迭代计算得到。
在一个具体示例中,在得到视频模型后,可以根据视频模型自适应调整昆虫的身体阈值和翅膀阈值。前景图像中的昆虫身体可以决定昆虫的位置、方向、身体倾角等特征,而翅膀可以决定昆虫的翅膀角度。在一个具体示例中,在前景图像中,昆虫身体可以具有比翅膀更高的重要性。
例如,在一个具体实现中,可以先对昆虫翅膀阈值进行自适应,得到比较准确的翅膀区域。例如,还可以结合昆虫模型和昆虫翅膀的自适应结果对昆虫身体阈值进行自适应,以得到更准确的昆虫身体。再例如,还可以根据昆虫身体的自适应结果对前景图像中的昆虫翅膀进行优化,从而得到更精确的前景图像。在一个具体示例中,可以根据昆虫身体尺寸的统计值消除固定阈值所引起的噪声,得到比较精确的昆虫模型。
在一个具体实现中,例如,可以根据果蝇模型来确定前景中期望得到的果蝇身体和翅膀面积,从而根据当前前景面积对阈值进行自适应,以增加前景提取的鲁棒性。
在一个具体实现中,例如,对于视频中的果蝇,其前景像素可分为身体和翅膀两个部分。其中,由于果蝇身体一般为黑色,例如可以根据像素亮度变化对其进行区分。另一方面,由于果蝇翅膀具有一定的透光性,可能导致其像素值色调和背景相同、而亮度不同,表现出与阴影相似的特点。因此,在一个示例实现中,可以使用例如Horprasert等(Horprasert T,Harwood D,Davis L S.A robust background subtraction and shadowdetection.Proc.ACCV,2000.983–988.)提出的亮度畸变来刻画背景像素的亮度变化,以区分果蝇的身体和翅膀。
由于不同像素的变化幅度可能不同,为使用统一的阈值处理全部像素,背景亮度畸变估计单元122可使用去均值后的均方根(Root Mean Square,RMS)对视频中的各像素值进行归一化,以得到最终的亮度畸变。
在一个具体示例中,在前景提取部12的上述迭代计算中,昆虫平均尺寸估计单元126可以在子视频中的昆虫身体连通域的数量与昆虫的数量不同时,对子视频中的各像素的坐标进行聚类,以求出昆虫的平均尺寸。例如,昆虫平均尺寸估计单元126还可以根据昆虫的平均尺寸求出昆虫的平均身体面积。昆虫平均尺寸估计单元126还可以根据平均身体面积对昆虫前景图像中检测到的昆虫身体和翅膀的面积进行限制,从而对昆虫翅膀阈值和昆虫身体阈值进行自适应调整。
在一个具体示例中,昆虫翅膀估计单元124可以与平均身体面积、子视频中的昆虫数量的乘积和昆虫的可能姿势相对应地来确定昆虫整体最小面积值和昆虫整体最大面积值。例如,在迭代计算中,可以将昆虫整体二值图像中的各连通域的面积之和与昆虫整体最大面积值进行比较,如果各连通域的面积之和大于昆虫整体最大面积值,则使昆虫翅膀阈值减小预定的自适应步长,如果各连通域的面积之和小于昆虫整体最小面积值,则使昆虫翅膀阈值增大预定的自适应步长,由此得到自适应后的昆虫翅膀阈值。
例如,在一个具体实现中,通过迭代计算进行的最大自适应次数和预定的自适应步长可以根据子视频的帧率或光照变化条件来确定。
在一个具体示例中,例如通过昆虫翅膀估计单元124对果蝇翅膀阈值进行自适应的方法如以下算法所示。
上述算法的示例中有5个参数:最大自适应次数imax,fly、噪声阈值Snoise、自适应步长Δ,以及果蝇面积限制Smin,fly和Smax,fly。在一个示例中,Smin,fly可表示昆虫整体最小面积值,Smax,fly可表示昆虫整体最大面积值。其中imax,fly可用来限制自适应次数,以预防视频中的极端恶劣条件。Ffly表示昆虫整体二值图像。Snoise可用来对Ffly的连通域进行降噪,可根据视频信噪比对其合理取值。自适应步长Δ可用来控制每次自适应的精细度,其可以和imax,fly一起决定算法的最大自适应速度,可根据视频的FPS、光照变化条件等因素合理选择Δ和imax,fly
Smin,fly和Smax,fly是用于自适应调整的参数,其可以用来决定自适应后前景中果蝇身体和翅膀的面积。在一个理想情况下,Sfly可以只包含果蝇的身体和翅膀,从而可根据果蝇的身体结构和视频中的果蝇数确定合理的Smin,fly和Smax,fly
在一个具体示例中,在迭代计算中,昆虫身体估计单元128可以在昆虫身体二值图像中各身体连通域的面积之和大于昆虫身体最大面积值时,使昆虫身体阈值减小预定的自适应步长。在一个具体实现中,在各身体连通域的面积之和小于昆虫身体最小面积值时,可以使昆虫身体阈值增大预定的自适应步长。其中,在一个具体实现中,昆虫身体最大面积值和昆虫身体最小面积值可以与平均身体面积和昆虫的可能姿势相对应地确定。
在一个具体示例中,昆虫身体估计单元128也可以在如下情况时也使昆虫身体阈值增大预定的自适应步长:例如,检测到的昆虫身体连通域的数量大于子视频中的昆虫的数量、并且存在昆虫整体连通域内部的昆虫身体连通域的数量大于或等于2的昆虫整体连通域。示例的实施方式可以有助于应对初始昆虫身体阈值设置较低、以致昆虫身体连通域发生分裂的情况。
例如,与翅膀阈值自适应的方法类似,例如可以由昆虫身体估计单元128根据其连通域面积进行自适应,其算法流程可以基本与上述果蝇翅膀阈值自适应算法相同,其各参数的意义也可以和上述算法中的各参数相对应,以下仅对两算法的区别进行说明。
首先,昆虫身体估计自适应算法中,除限制了果蝇身体的最小面积外,还可以额外增加条件。例如,为使昆虫处于其它姿态时不发生漏检,在对象昆虫例如为果蝇时,可以使用果蝇身体和果蝇整体连通域的从属关系对Smin,body进行补足。测试表明,当初始昆虫身体阈值较低时,身体的连通域可能会发生分裂,此时可以增加的条件例如是以下两者:
1.检测到的果蝇身体连通域数量大于视频中的果蝇数,即M>K;并且
2.存在一个果蝇整体连通域,其内部的果蝇身体连通域数量大于等于2。
在一个具体实现中,在得到自适应后的昆虫身体阈值和昆虫身体二值图像Fbody后,可以对Ffly进行二次降噪。例如,可以通过删除Ffly中不包含果蝇身体的连通域得到更准确的视频前景。在引入了基于视频模型的前景阈值自适应算法后,例如,当视频中发生短时间光照变化导致前景判别错误时,可以根据自适应条件对昆虫身体阈值和昆虫翅膀阈值进行对应的调整,以得到更准确的前景二值图像,即昆虫翅膀二值图像Ffly和昆虫身体二值图像Fbody
图4示出了根据一个具体示例的背景亮度畸变估计单元的结构的示意框图。在一个具体示例中,如图4所示,背景亮度畸变估计单元122可以包括精确估计单元1222。在一个示例实现中,精确估计单元1222可以从视频预处理部16接收子视频,并且以初始视频亮度畸变值作为阈值对子视频进行二值化,在所得到的活动台二值图像中求出各连通域。例如,精确估计单元1222还可以选择大于特定阈值的连通域作为活动台的空腔范围,针对所选择出的空腔范围求出活动台的精确位置和大小。在一个具体示例中,背景亮度畸变估计单元122还可以利用精确估计单元1222所求出的位置和大小,将活动台的空腔内各像素的统计值用活动台的空腔外的各像素的均值来替换,以确定背景。
在一个具体示例中,特征点求解单元142可以根据前景提取部12提取出的昆虫前景图像估计昆虫的姿态。其中,特征点求解单元142可以使用例如由昆虫身体估计单元128得出的身体二值图像估计昆虫身体基本特征。在一个具体实现中,特征点求解单元142可以根据昆虫身体估计单元128得出的身体基本特征以及昆虫所处的位置、方向或倾斜角度,计算昆虫身体初始特征点。然后,在一个具体实现中,特征点求解单元142还可以根据例如由昆虫翅膀估计单元124得出的昆虫整体二值图像来估计昆虫翅膀初始特征点。
在一个具体实现中,特征点求解单元142可以利用昆虫活动台模型,求得昆虫在活动台中的相对半径和昆虫头部的相对方向,以估计昆虫的姿态。
进一步,例如,特征点求解单元142可以将所标定的特征点集合和相对应的初始特征点集合按照初始特征点的头部方向对齐,利用监督下降算法即SDM算法训练迭代矩阵,以获得昆虫身体最终特征点。
特征点标定
在一个具体实现中,对象昆虫以果蝇为例。例如,在定义了果蝇特征点的位置后,可以对果蝇特征点进行标定,以训练特征点定位模型。
引入子空间约束的SDM算法
相比涉及人脸等的特征点定位问题,由于昆虫特征点数量少,且当昆虫倾斜、旋转时,特征点在图像中的位置不明确,导致SDM算法容易迭代计算出错误的结果,影响昆虫姿态的重建。而由于所标定的昆虫身体特征点具有一定的对称性,可以认为正确的特征点集合同属于一个信号子空间。例如,可以参考AAM(Cootes T F,Edwards G J,Taylor CJ.Active appearance models.IEEE Transactions on Pattern Analysis&MachineIntelligence,2001,(6):681–685.)等算法,利用标定点建立信号子空间,将SDM算法的迭代限制在信号子空间上。此时,SDM算法的自变量变为信号子空间内果蝇不同特征姿态的权重,例如可以通过图像特征直接对昆虫姿态进行更新,从而确保得到可重建的特征点。
在一个具体实现中,为降低信号子空间的维度,可以对昆虫特征点进行对齐。下表示出了以果蝇为例的各示例特征点的意义及其符号表示。昆虫的特征点向量的一个描述可以为 也可以是上述特征点的其他排列,其中特征点还可以包括除昆虫头部、尾部、左侧、右侧、背部、腹部等位置的其他特征点。首先,可以将所有昆虫初始特征点的头部旋转到x轴正向。然后,可以将各初始点对应的标定点和亮度畸变图像旋转与初始点相同的角度。最后,可以将所有特征点的坐标原点平移到其身体中心上。旋转、平移后的特征点向量示出为此时需要指出的是,由于的计算与翅膀特征点无关,因此昆虫特征点整体的中心不位于坐标原点。返回参考图5,图5所示的两椭圆的方向可根据果蝇头尾的方向确定,其中心例如可定义为:
其中,也可以定义为果蝇其他部位的平均,例如,可以定义为果蝇头部、尾部、左侧和右侧位置的加权平均,或者可以定义为果蝇头部、尾部、背部和腹部位置的加权平均,以及其他位置的任意组合。总之,可以定义为对果蝇中心位置任一方式的估计。
在一个具体示例中,可以使用主成分分析(Principal Components Analysis,PCA)对果蝇标定特征点建立信号子空间,得到果蝇特征点在子空间上的投影
其中,W为PCA得到的投影矩阵,的均值。所述PCA也可以替换为线性判别分析(Linear Discriminant Analysis,LDA)、局部线性嵌入(Locally Linear Embedding,LLE)、等距映射算法(Isometric Mapping,Isomap)、栈式自编码神经网络(Stacked Auto-Encoder,SAE)等其他子空间降维算法。
得到果蝇的特征点在子空间上的投影向量和果蝇的中心后,SDM算法的自变量可以表述为
对应地,可得的重建方法为
此时SDM算法的迭代过程为其中R(k)为SDM算法在第k次迭代时的原始迭代矩阵和偏置,h(·)表示求特征点的图像特征。在特征点有多个时,h(·)得到的是所有点的图像特征连接而成的向量。
在一个具体实现中,该迭代训练时的优化函数为
其中,为第i个标定点和其对应的初始点迭代k次后所得到的迭代点在信号子空间上的差值,||·||F表示弗罗贝尼乌斯范数(Frobenius Norm)。在一个具体实现中,特征点求解单元142还可以根据昆虫翅膀与身体的连接点初始位置以及昆虫头部方向计算昆虫翅膀角度,以得到昆虫翅膀初始特征点。
在求解时,可令
其中N为标定点个数。SDM算法中使用的点的图像特征h(·)可以是LBP、SIFT或HOG等任意图像特征。
由此可以解得SDM算法的迭代矩阵A(k)
在一个具体示例中,姿态计算单元144可以根据例如由特征点求解单元142获得的昆虫身体最终特征点来计算翅膀连接点的三维坐标。在一个具体实现中,姿态计算单元144可以根据昆虫身体的建模,利用三角函数计算翅膀振翅角和翅膀倾角,来重建昆虫翅膀姿态。
以下在一个具体示例中,以果蝇为例描述昆虫身体与翅膀姿态的重建。
例如,所考虑的昆虫姿态特征可以包括以下中的至少一个:昆虫身体的倾角、身体与水平面的夹角、自旋果蝇绕身体长轴自旋的角度、翅膀振翅角、翅膀在身体水平面的投影与果蝇身体的夹角、翅膀倾角果蝇翅膀与身体水平面的夹角。
例如,果蝇身体的倾角在果蝇头朝上时为正,否则为负。为确定昆虫身体倾角的符号,需考虑昆虫身体特定轴特征点的相对位置。
图5示出了根据一个实施方式的昆虫的身体姿态重建示意图。
对于椭球形的昆虫身体,其身体中心上与两短轴相交的截面为圆,下记其为昆虫圆截面。昆虫圆截面在视频中的投影为椭圆或线段,其为椭圆时如图7中中部的扁椭圆所示,该椭圆的尺寸可以求得。当昆虫身体倾角的符号不同时,昆虫头部方向的右手向在圆截面投影上的旋转方向不同。因此,可利用该性质判断昆虫身体倾角的符号与极轴方向。
在一个具体示例中,姿态计算单元144可以利用昆虫的身体的对称性,对昆虫的特征进行降噪。
图6示出了根据一个示例实施方式的视频分析设备2的示意框图。与视频分析设备1相比,视频分析设备2还可以包括行为识别部16。在一个具体实现中,行为识别部16可以包括行为分析单元162和特征分类单元164。例如,特征分类单元164可以对昆虫的特征进行分类,还可以在得到全部分类特征后,对昆虫的特征的训练样本进行白化,以使各特征在特征分类单元中的权重相同。例如,行为分析单元162可以接收例如由特征点求解单元142求解出的昆虫身体最终特征点,并可用于根据已标定行为的特征和该最终特征点对特征分类单元164进行训练,从而分析昆虫的行为。示例的实施方式可以有助于提高动物行为分类的准确度。
在一个具体示例中,对昆虫身体特征进行估计的算法例如可以如以下算法所示。以果蝇为例,θh的角度,可以简单地通过果蝇特征点计算得到,其中定义的角度为0。θdip表示果蝇身体倾角,即果蝇身体和水平面的夹角。这里,返回参考图5,在图5所示的椭圆示例中,表示视频中的果蝇平均半长轴长度,表示视频中的果蝇平均半短轴长度,hi表示椭圆长轴长度。
在一个具体示例中,昆虫翅膀特征可以是根据昆虫翅膀二值图像Ffly得到的对昆虫二维翅膀角度的粗略估计出的特征。
在一个具体实现中,针对昆虫的求偶行为,用于分类的特征可以额外包括昆虫的头部到其它昆虫的距离和方向。
在一个具体实现中,针对昆虫的连续性行为进行分类时,直到输入视频的固定数量的帧中大于一半的帧被判断为属于同一个新的分类时,才将当前分类切换为新的分类。例如,由于果蝇求偶行为是连续性行为,可根据各类别的连续性减少突发噪声。
行为分类
在一个具体实施方式中,特征分类单元164的输入可以为根据昆虫行为特点设计的分类特征,其可分为帧特征和图片组(Group Of Pictures,GOP)特征两部分。以下以打架行为为例进行说明。其中,帧特征为视频的单帧分类特征,GOP特征为若干连续帧中无法由帧特征线性组合得到的连续帧分类特征。GOP特征的一个示例如下表。
例如,可以取GOP长度为3,则此时第t帧的GOP表示从第t-1帧至第t+1帧的帧集合。在一个具体实现中,每一帧的分类特征可以包含该帧与前后帧的帧特征,可以从中得到昆虫信息的帧间变化。此外,分类特征还包含了该帧附近的GOP特征,可以从中得到在该帧附近的总体信息。
虽然不同的行为间可能具有较大的差异,但基本都和特征相关,因此可定义不同行为共通的基础分类帧特征。在一个具体实现中,可以进行归一化。例如,归一化一列是指在得到长度相关量后,使用对应的视频模型进行归一化,以消除不同视频中活动台尺寸和个体差异的影响。
在一个具体实现中,基础分类帧特征或者等于原特征,或者可根据相邻帧的特征与视频模型简单计算得到,具体的计算过程这里不再阐述。
对于昆虫的打架行为来讲,例如,其可能具有在后挫、前冲过程中速度方向改变,且在打架过程中头部方向基本朝向另一只的特点,可相应地定义打架行为的额外帧特征。在一个具体实现中,最终的打架行为帧特征可以是额外帧特征和基础帧特征。
在得到分类特征后,可对所有训练样本的分类特征进行白化,以使各特征在分类器中的权重相同。
根据打架行为的标定与分类特征可以训练打架行为分类器。由于昆虫的打架行为具有突发性,其正样本帧占视频全部帧的比例可能很少。因此,在一个具体实现中,可以取每次打架行为的全部三帧作为正样本,而负样本例如通过在视频中均匀抽取若干非打架帧得到,再通过给SVM算法施加不同的类权重避免类别间的不平衡。此外,在训练SVM分类器时,例如可以使用K折交叉校验(K-Fold Cross-Validation)来防止过拟合。在实际训练中,例如可以取K=5。
应当理解,尽管此处以打架行为为例进行说明,但本公开同样可适用于昆虫的求偶行为等其它行为。
图7示出了根据一个示例实施方式的视频分析设备3的示意框图。与视频分析设备1、2相比,视频分析设备3还可以包括行为输出部18。在一个具体实现中,行为输出部18可以包括用于输出行为日志的图形用户界面。
图8示出了根据一个示例实施方式的视频分析方法的示意流程图。视频分析方法可以包括以下步骤。从输入视频中提取昆虫前景图像。从所述昆虫前景图像中计算初始特征点,并且利用在所述昆虫前景图像中所标定的特征点生成特征点信号子空间。根据所述初始特征点和所标定的特征点、在所述特征点信号子空间的约束下训练迭代矩阵,以将所述迭代矩阵限制在所述特征点信号子空间上;通过对所述初始特征点利用所训练的迭代矩阵进行迭代,求解出每一视频帧中的昆虫身体最终特征点;以及通过所述昆虫身体最终特征点来重建所述昆虫的姿态。
根据其它可能的实施方式,视频分析方法可能包含的步骤如前所述,此处不再赘述。应当理解,图8示出的步骤顺序以及本公开其它部分对各步骤进行描述的顺序仅为示例。例如,本技术领域的技术人员可以在不偏离本公开的范围和精神的情况下,改变一些步骤之间的执行顺序或者使一些步骤同时执行。
在可能的实施方式中,所述视频分析方法还可包括:从所述输入视频中提取多个帧,估计所述多个帧中各昆虫活动台的位置、大小及出现和移出各昆虫活动台的时刻;根据估计得到的所述各昆虫活动台的位置、大小和出现各昆虫活动台的时刻,对所述输入视频进行切割,以得到各自包含一个单独昆虫活动台的多个子视频。其中,从输入视频中提取昆虫前景图像可以包括:根据归一化后的多个子视频,提取所述昆虫前景图像。
在可能的实施方式中,从输入视频中提取昆虫前景图像可包括:划分所述子视频中的背景;根据所述子视频的亮度畸变和初始昆虫翅膀阈值来获得昆虫整体二值图像,其中,针对所述多个帧中的各帧进行迭代,在迭代中,根据所述昆虫整体二值图像中的连通域面积,对所述初始昆虫翅膀阈值进行自适应调整,输出昆虫整体二值图像和自适应后的昆虫翅膀阈值;以及接收所述昆虫整体二值图像,并且接收所述子视频、所述初始昆虫身体阈值和所述子视频中的已知的昆虫数量,其中,针对所述多个帧中的各帧进行迭代,在迭代中,根据所述子视频使用所述初始昆虫身体阈值求出身体二值图像,并且根据身体二值图像中的连通域面积大小,对所述初始昆虫身体阈值进行自适应调整,以输出自适应后的昆虫身体阈值和根据自适应后的昆虫身体阈值所获得的昆虫身体二值图像。
在可能的实施方式中,从输入视频中提取昆虫前景图像可包括:根据所述子视频的亮度畸变和初始昆虫身体阈值来获得身体二值图像;与所述昆虫活动台中的昆虫的已知数量相对应地,在身体二值图像中针对昆虫的身体进行建模,以求出昆虫的平均尺寸,其中,在迭代中、所述子视频中的昆虫身体连通域的数量与所述昆虫的数量不同时,对所述子视频中的各像素的坐标进行聚类以求出昆虫的平均尺寸;根据昆虫的平均尺寸求出昆虫的平均身体面积;以及根据所述平均身体面积对所述昆虫前景图像中检测到的昆虫身体和翅膀的面积进行限制,从而对所述初始昆虫翅膀阈值和所述初始昆虫身体阈值进行自适应调整。
在可能的实施方式中,从所述昆虫前景图像中计算初始特征点可包括:根据提取出的所述昆虫前景图像估计昆虫的姿态;使用所述昆虫身体二值图像估计昆虫的身体基本特征;根据所述身体基本特征以及昆虫所处的位置、方向或倾斜角度,计算昆虫身体初始特征点;以及根据所述昆虫整体二值图像估计昆虫翅膀初始特征点。
在可能的实施方式中,通过所述昆虫身体最终特征点来重建所述昆虫的姿态可包括:根据所述昆虫身体最终特征点来计算翅膀连接点的三维坐标;以及根据昆虫身体的建模,利用三角函数计算翅膀振翅角和翅膀倾角,来重建昆虫翅膀姿态。
在可能的实施方式中,所述视频分析方法还可包括:对所述昆虫的特征进行分类,其中,对所述昆虫的特征的训练样本进行白化,以使各特征在特征分类中的权重相同;以及根据已标定行为和求解得出的所述昆虫身体最终特征点,对所述特征分类进行训练,从而分析所述昆虫的行为。
在可能的实施方式中,对所述初始昆虫身体阈值进行自适应调整可包括:在如下情况时可以使昆虫身体阈值增大预定的自适应步长:检测到的昆虫身体连通域的数量大于所述子视频中的昆虫的数量、并且存在内部的所述昆虫身体连通域的数量不小于2的昆虫整体连通域。
在可能的实施方式中,划分子视频中的背景可包括:以初始视频亮度畸变值作为阈值对所述子视频进行二值化,在所得到的活动台二值图像中求出各连通域;选择大于特定阈值的连通域作为所述昆虫活动台的空腔范围;以及针对所选择出的空腔范围求出所述昆虫活动台的位置和大小。
图9是根据示例实施例示出的一种用于视频分析装置1900的框图。例如,装置1900可以被提供为一服务器。参照图9,装置1900包括处理组件1922,其进一步包括一个或多个处理器,以及由存储器1932所代表的存储器资源,用于存储可由处理组件1922执行的指令,例如应用程序。存储器1932中存储的应用程序可以包括一个或一个以上的模块,每一个模块对应于一组指令。此外,处理组件1922被配置为执行指令,以执行上述的视频分析方法。
装置1900还可以包括一个电源组件1926被配置为执行装置1900的电源管理,一个有线或无线网络接口1950被配置为将装置1900连接到网络,和一个输入输出(I/O)接口1958。装置1900可以操作基于存储在存储器1932的操作系统,例如Windows ServerTM,MacOS XTM,UnixTM,LinuxTM,FreeBSDTM或类似。
在示例性实施例中,还提供了一种包括指令的非易失性计算机可读存储介质,例如包括指令的存储器1932,上述指令可由装置1900的处理组件1922执行以完成上述方法。
本公开可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本公开的各个方面的计算机可读程序指令。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是但不限于电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本公开操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及常规的过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本公开的各个方面。
这里参照根据本公开实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本公开的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本公开的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
以上已经描述了本公开的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。

Claims (20)

1.一种视频分析设备,所述设备包括:
前景提取部,用于从输入视频中提取昆虫前景图像,以及
三维姿态重建部,包括:
特征点求解单元,用于从所述昆虫前景图像中计算初始特征点,并且利用在所述昆虫前景图像中所标定的特征点生成特征点信号子空间,根据所述初始特征点和所标定的特征点、在所述特征点信号子空间的约束下训练迭代矩阵,以将所述迭代矩阵限制在所述特征点信号子空间上,通过对所述初始特征点利用所训练的迭代矩阵进行迭代,求解出每一视频帧中的昆虫身体最终特征点,以及
姿态计算单元,所述姿态计算单元通过所述昆虫身体最终特征点来重建所述昆虫的姿态。
2.根据权利要求1所述的视频分析设备,其中,所述视频分析设备还包括视频预处理部,用于对所述输入视频进行预处理,以得到多个子视频,
其中,所述视频预处理部包括:
活动台估计单元,从所述输入视频中提取多个帧,估计所述多个帧中各昆虫活动台的位置、大小和出现各昆虫活动台的时刻,以及
子视频生成单元,根据估计得到的所述各昆虫活动台的位置、大小和出现各昆虫活动台的时刻,对所述输入视频进行切割,以得到各自包含一个单独昆虫活动台的多个子视频,
其中,所述前景提取部根据归一化后的多个子视频,提取所述昆虫前景图像。
3.根据权利要求2所述的视频分析设备,其中,所述前景提取部包括:
背景亮度畸变估计单元,用于划分所述子视频中的背景,
昆虫翅膀估计单元,用于根据所述子视频的亮度畸变和初始昆虫翅膀阈值来获得昆虫整体二值图像,其中,针对所述多个帧中的各帧进行迭代,在迭代中,根据所述昆虫整体二值图像中的连通域面积,对所述初始昆虫翅膀阈值进行自适应调整,所述昆虫翅膀估计单元输出昆虫整体二值图像和自适应后的昆虫翅膀阈值,以及
昆虫身体估计单元,接收所述昆虫整体二值图像,并且接收所述子视频、初始昆虫身体阈值和所述子视频中的已知的昆虫数量,其中,针对所述多个帧中的各帧进行迭代,在迭代中,所述昆虫身体估计单元根据所述子视频的亮度畸变使用所述初始昆虫身体阈值求出身体二值图像,并且根据身体二值图像中的连通域面积大小,对所述初始昆虫身体阈值进行自适应调整,以输出自适应后的昆虫身体阈值和根据自适应后的昆虫身体阈值所获得的昆虫身体二值图像。
4.根据权利要求3所述的视频分析设备,其中,所述前景提取部还包括昆虫平均尺寸估计单元,用于根据所述子视频的亮度畸变和初始昆虫身体阈值来获得身体二值图像,与所述昆虫活动台中的昆虫的已知数量相对应地,在身体二值图像中针对昆虫的身体进行建模,以求出昆虫的平均尺寸;
其中,所述昆虫平均尺寸估计单元在迭代中、所述子视频中的昆虫身体连通域的数量与所述昆虫的数量不同时,对所述子视频中的各像素的坐标进行聚类以求出昆虫的平均尺寸,以及
所述昆虫平均尺寸估计单元根据昆虫的平均尺寸求出昆虫的平均身体面积,根据所述平均身体面积对所述昆虫前景图像中检测到的昆虫身体和翅膀的面积进行限制,从而对所述初始昆虫翅膀阈值和所述初始昆虫身体阈值进行自适应调整。
5.根据权利要求3所述的视频分析设备,其中,所述特征点求解单元根据提取出的所述昆虫前景图像估计昆虫的姿态,
其中,所述特征点求解单元使用所述昆虫身体二值图像估计昆虫的身体基本特征,根据所述身体基本特征以及昆虫所处的位置、方向或倾斜角度,计算昆虫身体初始特征点,并且根据所述昆虫整体二值图像估计昆虫翅膀初始特征点。
6.根据权利要求3所述的视频分析设备,其中,所述姿态计算单元根据所述昆虫身体最终特征点来计算翅膀连接点的三维坐标,并且根据昆虫身体的建模,利用三角函数计算翅膀振翅角和翅膀倾角,来重建昆虫翅膀姿态。
7.根据权利要求1所述的视频分析设备,其中,所述视频分析设备还包括行为识别部,所述行为识别部包括:
特征分类单元,对所述昆虫的特征进行分类,其中,所述特征分类单元对所述昆虫的特征的训练样本进行白化,以使各特征在所述特征分类单元中的权重相同,以及
行为分析单元,用于根据已标定行为和所述特征点求解单元得出的所述昆虫身体最终特征点,对所述特征分类单元进行训练,从而分析所述昆虫的行为。
8.根据权利要求3所述的视频分析设备,其中,所述昆虫身体估计单元在如下情况时使昆虫身体阈值增大预定的自适应步长:检测到的昆虫身体连通域的数量大于所述子视频中的昆虫的数量、并且存在内部的所述昆虫身体连通域的数量不小于2的昆虫整体连通域。
9.根据权利要求3所述的视频分析设备,其中,所述背景亮度畸变估计单元包括精确估计单元,
所述精确估计单元以初始视频亮度畸变值作为阈值对所述子视频进行二值化,在所得到的活动台二值图像中求出各连通域,并且选择大于特定阈值的连通域作为所述昆虫活动台的空腔范围,针对所选择出的空腔范围求出所述昆虫活动台的位置和大小。
10.一种视频分析方法,包括:
从输入视频中提取昆虫前景图像;
从所述昆虫前景图像中计算初始特征点,并且利用在所述昆虫前景图像中所标定的特征点生成特征点信号子空间;
根据所述初始特征点和所标定的特征点、在所述特征点信号子空间的约束下训练迭代矩阵,以将所述迭代矩阵限制在所述特征点信号子空间上;
通过对所述初始特征点利用所训练的迭代矩阵进行迭代,求解出每一视频帧中的昆虫身体最终特征点;以及
通过所述昆虫身体最终特征点来重建所述昆虫的姿态。
11.根据权利要求10所述的视频分析方法,其中,所述视频分析方法还包括:
从所述输入视频中提取多个帧,估计所述多个帧中各昆虫活动台的位置、大小和出现各昆虫活动台的时刻;
根据估计得到的所述各昆虫活动台的位置、大小和出现各昆虫活动台的时刻,对所述输入视频进行切割,以得到各自包含一个单独昆虫活动台的多个子视频。
12.根据权利要求11所述的视频分析方法,其中,所述从输入视频中提取昆虫前景图像,包括:
划分所述子视频中的背景;
根据所述子视频的亮度畸变和初始昆虫翅膀阈值来获得昆虫整体二值图像,其中,针对所述多个帧中的各帧进行迭代,在迭代中,根据所述昆虫整体二值图像中的连通域面积,对所述初始昆虫翅膀阈值进行自适应调整,输出昆虫整体二值图像和自适应后的昆虫翅膀阈值;以及
接收所述昆虫整体二值图像,并且接收所述子视频、初始昆虫身体阈值和所述子视频中的已知的昆虫数量,其中,针对所述多个帧中的各帧进行迭代,在迭代中,根据所述子视频的亮度畸变使用所述初始昆虫身体阈值求出身体二值图像,并且根据身体二值图像中的连通域面积大小,对所述初始昆虫身体阈值进行自适应调整,以输出自适应后的昆虫身体阈值和根据自适应后的昆虫身体阈值所获得的昆虫身体二值图像。
13.根据权利要求12所述的视频分析方法,其中,所述从输入视频中提取昆虫前景图像,还包括:
根据所述子视频的亮度畸变和初始昆虫身体阈值来获得身体二值图像;
与所述昆虫活动台中的昆虫的已知数量相对应地,在身体二值图像中针对昆虫的身体进行建模,以求出昆虫的平均尺寸,
其中,在迭代中、所述子视频中的昆虫身体连通域的数量与所述昆虫的数量不同时,对所述子视频中的各像素的坐标进行聚类以求出昆虫的平均尺寸;
根据昆虫的平均尺寸求出昆虫的平均身体面积;以及
根据所述平均身体面积对所述昆虫前景图像中检测到的昆虫身体和翅膀的面积进行限制,从而对所述初始昆虫翅膀阈值和所述初始昆虫身体阈值进行自适应调整。
14.根据权利要求12所述的视频分析方法,其中,所述从所述昆虫前景图像中计算初始特征点,包括:
根据提取出的所述昆虫前景图像估计昆虫的姿态;
使用所述昆虫身体二值图像估计昆虫的身体基本特征;
根据所述身体基本特征以及昆虫所处的位置、方向或倾斜角度,计算昆虫身体初始特征点;以及
根据所述昆虫整体二值图像估计昆虫翅膀初始特征点。
15.根据权利要求12所述的视频分析方法,其中,所述通过所述昆虫身体最终特征点来重建所述昆虫的姿态,包括:
根据所述昆虫身体最终特征点来计算翅膀连接点的三维坐标;以及
根据昆虫身体的建模,利用三角函数计算翅膀振翅角和翅膀倾角,来重建昆虫翅膀姿态。
16.根据权利要求10所述的视频分析方法,其中,所述视频分析方法还包括:
对所述昆虫的特征进行分类,其中,对所述昆虫的特征的训练样本进行白化,以使各特征在特征分类中的权重相同;以及
根据已标定行为和求解得出的所述昆虫身体最终特征点,对所述特征分类进行训练,从而分析所述昆虫的行为。
17.根据权利要求12所述的视频分析方法,其中,所述对所述初始昆虫身体阈值进行自适应调整,包括:
在如下情况时使昆虫身体阈值增大预定的自适应步长:检测到的昆虫身体连通域的数量大于所述子视频中的昆虫的数量、并且存在内部的所述昆虫身体连通域的数量不小于2的昆虫整体连通域。
18.根据权利要求12所述的视频分析方法,其中,所述划分所述子视频中的背景,包括:
根据所述子视频亮度畸变值的取值均方根对所述子视频进行二值化,在所得到的活动台二值图像中求出各连通域;
选择大于特定阈值的连通域作为所述昆虫活动台的空腔范围;以及
针对所选择出的空腔范围求出所述昆虫活动台的位置和大小。
19.一种视频分析设备,其特征在于,包括:
处理器,
用于存储处理器可执行指令的存储器,
其中,所述处理器被配置为执行如权利要求10~18中任一项所述的视频分析方法。
20.一种计算机程序产品,包括用于使处理器实现如权利要求10~18中任一项所述的视频分析方法的计算机可读程序指令。
CN201710068960.5A 2017-02-08 2017-02-08 视频分析设备、方法和计算机程序产品 Active CN107066938B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201710068960.5A CN107066938B (zh) 2017-02-08 2017-02-08 视频分析设备、方法和计算机程序产品
US15/811,214 US10445584B2 (en) 2017-02-08 2017-11-13 Video analysis for 3D reconstruction of insect behavior

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710068960.5A CN107066938B (zh) 2017-02-08 2017-02-08 视频分析设备、方法和计算机程序产品

Publications (2)

Publication Number Publication Date
CN107066938A true CN107066938A (zh) 2017-08-18
CN107066938B CN107066938B (zh) 2020-02-07

Family

ID=59598553

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710068960.5A Active CN107066938B (zh) 2017-02-08 2017-02-08 视频分析设备、方法和计算机程序产品

Country Status (2)

Country Link
US (1) US10445584B2 (zh)
CN (1) CN107066938B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109360206A (zh) * 2018-09-08 2019-02-19 华中农业大学 基于深度学习的大田稻穗分割方法
CN109815881A (zh) * 2019-01-18 2019-05-28 成都旷视金智科技有限公司 行为识别模型的训练方法、行为识别方法、装置及设备
CN111145343A (zh) * 2019-12-30 2020-05-12 广东省实验动物监测所 一种离体心脏灌流三维显示方法及系统
CN111275911A (zh) * 2020-01-16 2020-06-12 珠海格力电器股份有限公司 一种危险提示方法、设备和计算机可读存储介质

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IL256031B (en) * 2017-11-30 2021-02-28 Yosef Akrav Pinhas Automatic system for separating and identifying insects in leaves
JP7162520B2 (ja) * 2018-12-21 2022-10-28 清水建設株式会社 虫計数装置及び虫計数システム
CN110674805B (zh) * 2019-10-11 2022-04-15 杭州睿琪软件有限公司 昆虫识别方法及系统
CN110930474B (zh) * 2019-12-06 2023-02-28 深圳大学 昆虫密度热力图构建方法、装置及系统
CN111340824B (zh) * 2020-02-26 2022-07-12 青海民族大学 一种基于数据挖掘的图像特征分割方法
US11482049B1 (en) 2020-04-14 2022-10-25 Bank Of America Corporation Media verification system
US11790694B1 (en) 2021-02-17 2023-10-17 Bank Of America Corporation Video player for secured video stream
US11527106B1 (en) 2021-02-17 2022-12-13 Bank Of America Corporation Automated video verification
US11594032B1 (en) 2021-02-17 2023-02-28 Bank Of America Corporation Media player and video verification system
US11928187B1 (en) 2021-02-17 2024-03-12 Bank Of America Corporation Media hosting system employing a secured video stream
US11941051B1 (en) 2021-06-24 2024-03-26 Bank Of America Corporation System for performing programmatic operations using an image-based query language
US11526548B1 (en) 2021-06-24 2022-12-13 Bank Of America Corporation Image-based query language system for performing database operations on images and videos
US12028319B1 (en) 2021-07-06 2024-07-02 Bank Of America Corporation Image-based firewall for synthetic media prevention
US11784975B1 (en) 2021-07-06 2023-10-10 Bank Of America Corporation Image-based firewall system
TWI837752B (zh) * 2022-08-02 2024-04-01 豐蠅生物科技股份有限公司 生物數值監控與特徵辨識分析系統及其方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7496228B2 (en) * 2003-06-13 2009-02-24 Landwehr Val R Method and system for detecting and classifying objects in images, such as insects and other arthropods
US7848888B2 (en) * 2002-07-15 2010-12-07 Vitruvean Llc Method for identification of biologically active agents
CN103345634A (zh) * 2013-07-29 2013-10-09 湖南省植物保护研究所 一种黄板上常见蔬菜昆虫的自动识别方法
US8570376B1 (en) * 2008-11-19 2013-10-29 Videomining Corporation Method and system for efficient sampling of videos using spatiotemporal constraints for statistical behavior analysis

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7269516B2 (en) * 2001-05-15 2007-09-11 Psychogenics, Inc. Systems and methods for monitoring behavior informatics
WO2004006985A2 (en) 2002-07-15 2004-01-22 Baylor College Of Medicine Assaying and imaging system identifying traits of biological specimens
WO2006027913A1 (ja) * 2004-08-10 2006-03-16 Waseda University 特徴パターン認識システムおよびその方法、並びにプログラム
TWI590193B (zh) * 2011-09-29 2017-07-01 國立清華大學 昆蟲影像檢測方法以及昆蟲分類流程
US9864951B1 (en) * 2015-03-30 2018-01-09 Amazon Technologies, Inc. Randomized latent feature learning
US10096132B2 (en) * 2016-01-27 2018-10-09 Samsung Electronics Co., Ltd. Method and apparatus for positioning feature point
AU2017350945B2 (en) * 2016-10-28 2021-11-11 Verily Life Sciences Llc Predictive models for visually classifying insects

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7848888B2 (en) * 2002-07-15 2010-12-07 Vitruvean Llc Method for identification of biologically active agents
US7496228B2 (en) * 2003-06-13 2009-02-24 Landwehr Val R Method and system for detecting and classifying objects in images, such as insects and other arthropods
US8570376B1 (en) * 2008-11-19 2013-10-29 Videomining Corporation Method and system for efficient sampling of videos using spatiotemporal constraints for statistical behavior analysis
CN103345634A (zh) * 2013-07-29 2013-10-09 湖南省植物保护研究所 一种黄板上常见蔬菜昆虫的自动识别方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
TIMOTHY F. COOTES等: "Active Appearance Models", 《IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE》 *
车向前等: "低成本受控环境下的果蝇识别算法研究", 《计算机仿真》 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109360206A (zh) * 2018-09-08 2019-02-19 华中农业大学 基于深度学习的大田稻穗分割方法
CN109815881A (zh) * 2019-01-18 2019-05-28 成都旷视金智科技有限公司 行为识别模型的训练方法、行为识别方法、装置及设备
CN111145343A (zh) * 2019-12-30 2020-05-12 广东省实验动物监测所 一种离体心脏灌流三维显示方法及系统
CN111145343B (zh) * 2019-12-30 2020-11-17 广东省实验动物监测所 一种离体心脏灌流三维显示方法及系统
CN111275911A (zh) * 2020-01-16 2020-06-12 珠海格力电器股份有限公司 一种危险提示方法、设备和计算机可读存储介质
CN111275911B (zh) * 2020-01-16 2021-02-26 珠海格力电器股份有限公司 一种危险提示方法、设备和计算机可读存储介质

Also Published As

Publication number Publication date
US20180225518A1 (en) 2018-08-09
CN107066938B (zh) 2020-02-07
US10445584B2 (en) 2019-10-15

Similar Documents

Publication Publication Date Title
CN107066938A (zh) 视频分析设备、方法和计算机程序产品
CN111444821B (zh) 一种城市道路标志自动识别方法
KR102641116B1 (ko) 데이터 증강에 기초한 인식 모델 트레이닝 방법 및 장치, 이미지 인식 방법 및 장치
CN108615226A (zh) 一种基于生成式对抗网络的图像去雾方法
CN108875766A (zh) 图像处理的方法、装置、系统及计算机存储介质
Millan et al. On‐the‐Go Grapevine Yield Estimation Using Image Analysis and Boolean Model
CN111723654A (zh) 基于背景建模、YOLOv3与自优化的高空抛物检测方法及装置
CN108224691A (zh) 一种空调系统控制方法和装置
CN109117755A (zh) 一种人脸活体检测方法、系统和设备
CN113326925B (zh) 基于密度图回归的卷积神经网络的花量统计方法、系统、设备及介质
CN111611889B (zh) 基于改进卷积神经网络的农田微型虫害识别装置
CN104732509A (zh) 自适应图像分割方法和设备
US20200304729A1 (en) Video processing using a spectral decomposition layer
CN110084293A (zh) 一种全明格局房屋的确定方法和装置
CN108334878A (zh) 视频图像检测方法和装置
CN110390673A (zh) 一种监控场景下基于深度学习的香烟自动检测方法
CN108960093A (zh) 脸部转动角度的识别方法及设备
CN112184762A (zh) 一种基于特征融合的灰狼优化粒子滤波目标跟踪算法
CN112418032A (zh) 一种人体行为识别方法、装置、电子设备及存储介质
CN113269103A (zh) 基于空间图卷积网络的异常行为检测方法及系统
CN114694075A (zh) 一种基于深度强化学习的危险行为识别方法
CN105160285A (zh) 基于立体视觉的自动人体跌倒识别方法及系统
CN113065379A (zh) 融合图像质量的图像检测方法、装置、电子设备
CN110516572A (zh) 一种识别体育赛事视频片段的方法、电子设备及存储介质
CN113191207B (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