你的位置:首页 >> 产品展示 >> 薄膜压力传感器 >> 人因工程  人因工程
视频采集建议
来源:TEKSCAN_压力发电膜_piezoelectricity_压力发电_压力发电膜鞋_压力发电机_薄膜压力发电热电堆传感器厂家_热释电红外传感器_热电堆传感器应用电路_台湾热电堆传感器原厂_热电堆传感器应用_热电堆 电路_热释电红外传感器工作原理及结构说明_热释电传感器_红外传感器 | 发布时间:2021/8/7 22:46:21 | 浏览次数:

补充视频1和2提供了使用Jupyter笔记本的简短教程。以下开源软件包用于视频导入、数据处理和交互式绘图:iPython5、OpenCV6、Pandas7、HoloViews8、SciPy9、Matplotlib10、Bokeh11和NumPy12。值得注意的是,软件包版本由Conda维护,并在安装说明中对其进行控制。因此,不应出现包兼容性问题。尽管如此,我们仍积极维护我们的Github页面,并将随着新功能的添加和新软件包版本的推出而对ezTrack进行更新。此外,我们欢迎ezTrack Github页面上的反馈和错误报告,并鼓励用户观看ezTrack Github页面,以便了解任何新版本。

视频采集建议

虽然ezTrack可以处理各种各样的视频,但某些情况会导致跟踪不可靠。采集的视频必须使用安装的摄像头进行拍摄,以便在整个录制过程中固定视野。同样,尽管两个跟踪模块都与多个记录角度兼容(例如动物上方或侧面),但在单个实验过程中保持摄像机与竞技场之间的方向关系以及摄像机与竞技场之间的距离至关重要。此外,ezTrack在动物和背景之间有良好对比的条件下工作得最好——如果人类实验者很难看到动物,ezTrack计算动物的重心并跟踪其位置可能会有问题。ezTrack被编程为能够抵抗视野中动物以外的物体的影响。支持视频帧的裁剪,并且位置跟踪模块具有减少可能进入视野的对象的影响的功能:加权动物在前一帧上的位置周围的区域(详细描述如下)。然而,当只有动物和稳定的环境在视野内时,ezTrack将工作得最好。此外,动物不应能够退出和重新进入视野。考虑到这一点,我们不应该过于严格地裁剪,以至于如果动物重新站立,它就会从视野中消失——我们发现,连接到动物身上的电缆所产生的大部分人工制品都会出现在动物头部上方一定距离的地方,而在那里,线的松弛程度最大。如果一个人正在做光遗传学实验,而来自光纤的光很可能会泄漏,我们建议使用不会拾取刺激光源波长的红外摄像机。在当前状态下,ezTrack只跟踪一只动物。用一台摄像机同时记录多个竞技场是可能的。然而,目前,实验者将不得不单独分析每个竞技场,将其他竞技场从视野中剔除。所有批处理功能都假定摄影机的位置、视野内环境的位置以及照明条件在会话中是一致的。我们已经用wmv、avi(mp4编解码器)和mpg1视频测试了ezTrack,但可以使用更多的视频文件类型。如果您的特定文件类型不受支持,有几个免费的视频转换器在线提供。最后,请注意,处理高清视频可能需要更长的时间,可能需要对视频进行下采样/压缩。

位置跟踪模块

一般说明

位置跟踪模块逐帧跟踪视野内动物的重心。根据这一点,可以计算出动物行走的距离及其在特定ROI中花费的时间。视频可以俯视动物,也可以从侧面拍摄,尽管侧视记录可以将距离测量放在任意比例上。使用绘图工具箱,用户可以裁剪视野,并且用户还可以将视频分析限制在特定范围内(例如,帧500–1000)。此外,用户可以绘制无限数量的ROI,对于每一帧,ezTrack将确定动物是否在特定区域。值得注意的是,允许ROI重叠,从而允许分析子区域。在运行代码时,会生成交互式绘图,使用户可以查看会话中经过的距离以及动物的去向。作为一项附加功能,如果视频文件较小(例如100 × 100像素),或者如果它们是奇数尺寸(例如30 × 1000像素),ezTrack允许用户水平/垂直拉伸视频以进行演示。动物在x/y坐标中的逐帧位置,以及动物是否在每个定义的ROI中,都保存到csv文件中。如果用户需要摘要信息,则会提供用于指定时间段的选项,并且会生成一个摘要文件,给出每个时间段中行驶的距离,以及位置跟踪方法

位置跟踪是通过将视频中的每一帧与环境中不存在动物的参考帧进行比较来实现的。ezTrack支持两种定义此参照系的方法。更简单、更快且通常更可靠的选择是从正在分析的视频(即,带有动物的视频)生成参考帧。ezTrack将根据视频中的随机帧样本生成参考帧(默认值) = 100). 对于视场中的每个像素,取整个帧选择的中值。关键的是,该中间图像可能不会包含该动物,除非该动物在一个位置的时间超过50%。如果出现这种情况,用户可以交替地提供具有相同照明条件的相同环境的单独视频,并且该环境在视野中处于相同位置,但没有动物。批处理时,始终使用第一个选项,以便从该视频生成每个视频的参考帧。

接下来,为了确定动物的重心,对于每一帧,逐像素计算与参考帧的灰度强度差。这可以通过获取两帧之间的绝对差来实现,这允许跟踪,而不管动物是比背景亮还是暗。或者,可以假设动物比背景更亮或更暗(分别从每个帧中减去参考帧或从参考帧中减去每个帧)。在某些情况下,后一种方法可能更可靠。为了减轻计算质心时像素强度值的随机、低强度波动的影响,我们发现质心会极大地影响精度,然后对像素差异进行阈值化,以便仅考虑用户定义的所有像素差异百分位数以上的差异值。我们使用了第99个百分位数,这非常有效。值得注意的是,由于该标准相对缩放,如果动物从竞技场的高对比度区域移动到低对比度区域,通常会被同样好地跟踪,如在明暗框中(见图1)。最后,计算这些值上的重心,返回动物的x/y坐标。

如果有物体进入视野,将重心偏压在动物和干扰物体之间,ezTrack允许用户对动物先前位置周围的像素进行加权,以减轻这种偏压。对于每一帧,重量(ω)可应用于前一帧动物重心周围的方形窗口,其大小由用户设定。窗口外的像素差值乘以(1 − ω) ,其中ω设置为0和1之间。因此,如果ω = 1,窗口外的像素值差异将设置为0。相比之下,如果ω = 0时,窗的内部/外部承受相同的重量。这样,可以将窗口外像素变化的影响限制在由单个参数ω控制的最小水平。为了避免动物移出窗口的潜在问题(例如,当记录在动物进入视野之前开始时),ω也可以设置为0–1之间的某个值,这将允许窗口“快速”回到动物身上。我们使用ω = 0.8–0.9,效果良好。示例参见补充图S1。

最后,动物从一帧移动到下一帧的距离计算为相邻帧上质心之间的欧几里得距离。

值得注意的是,用户需要设置的唯一参数是将像素差值设置为零的百分比。其他两个参数——设置重量和窗口大小,以对前一帧动物位置附近的差值进行加权——是可选的。

冻结分析模块

一般说明

为了检测冻结,ezTrack首先通过计算灰度值从一帧到下一帧变化的像素数来测量动物的运动。但是,由于大多数视频显示像素值的许多小波动,即使在静态场景中,也必须首先设置一个截止值,以将可归因于动物移动的像素变化与盒子中没有动物时发生的像素变化分开。ezTrack提供了一个校准工具,用于检查空盒视频的灰度变化分布,并提供了建议的截止值。有鉴于此,用户必须在实验过程中生成调节室的短视频,其中没有动物,以便在实验会话和校准视频之间基本像素波动相等。校准后,用户可以分析同一环境中的动物视频。经测量校准后,用户可以分析同一环境中的动物视频。测量动物的运动后,可以通过评估动物的运动下降到用户定义的阈值以下的时间量来计算冻结。有关教程,请参见补充视频2。

冷冻分析方法

校准:为了减轻由于噪声引起的像素值的小波动,我们发现首先实现高斯滤波器(sigma)是有帮助的 = 1) 在每个图像上。然后,我们计算连续帧上的像素级差异,并计算差异值超过某个截止值(运动阈值或MT)的像素数。为了定义MT,用户提供一个没有动物的录制环境的短视频(~10) 秒)。ezTrack然后将计算该时间段内像素灰度变化的分布。然后可以基于此空分布设置MT。通过我们的特殊设置,我们发现99.99%的两倍有效。然而,ezTrack提供了差值分布的直方图,并且还使用户能够看到在给定MT(补充视频5)中,哪些运动与原始视频并排拾取。如果用户感觉到太多噪声或检测到的信号不足,他们可以根据自己的需要修改MT。唯一的建议是,在单个实验中,他们在所有动物身上都保持这一阈值。如果视频设置在几天内没有改变,我们发现给定环境的MT非常稳定。

测量运动/冻结:一旦用户定义了MT,他们就可以在单个会话中分析运动和冻结。对每一帧进行高斯滤波,并确定其相对于前一帧的灰度变化超过MT的像素数。然后,用户可以为声明冻结的更改像素数设置阈值–冻结阈值或英尺。作为附加标准,可以设置

 
TAG:
打印本页 || 关闭窗口
 上一篇:用于动物行为调查的视频分析管道
 下一篇:非刚体运动