编写SPnenu安卓软件分析单摆视频计算重力加速度

第34卷第2期2021年4月
大学物理实验
PHYSICAL EXPERIMENT OF COLLEGE
Vol.34No.2
Apr.2021
文章编号:1007-2934(2021)02-0086-05
编写SPnenu安卓软件分析单摆视频
计算重力加速度
黄继鹏,刘进伟,李金环,高志华
(东北师范大学物理学院,吉林长春130024)
摘要:为了增强“单摆测量重力加速度”实验的效果,编写了运动视频分析安卓应用程序-SPnenu,分析单
摆视频,计算重力加速度。首先,介绍了安卓软件的组成模块;然后,使用该应用程序分析单摆运动视频中周期、摆长和视频当地重力加速度;最后,与计算机平台下的视频分析软件Tracker进行对比实验,并对误差进行了讨论分析。实验表明,将基于安卓智能手机的运动视频分析软件引入物理实验教学,有助于打破实验的时间和空间限制,减小了“周期测量”带来的误差,能实现对单摆小球运动轨迹的精确追踪记录和数据分析。快开阀芯
关键词:重力加速度;安卓软件;视频分析;物理实验;单摆
中图分类号:G633.7文献标志码:A D0l:10.14139/jki22-1228.2021.02.020
智能手机配备了加速度计、磁力计、陀螺仪、光强度计等多种传感器,可以辅助学生测量物理量,智能手机已经成为移动物理实验室[1]o现有的Phyphox⑵、Sensor kinetics⑴、Geogebra⑷等手机应用程序可以很容易地捕捉和分析来自传感器的数据,允许用户研究不同的物理现象,能够为教师开展物理实验教学、揭示物理规律提供新的方法和途径。然而,当前运动视频的物理实验分析手机应用程序还很匮乏,本文使用手机图像传感器设计了基于安卓系统的运动视频物理实验分析应用程序SPnenu,以单摆运动的视频分析为例讲述该应用程序在手机物理实验中的具体应用,消除了由于单摆实验过程中计时不准确等原因对实验结果造成的影响。
1SPnenu安卓运动视频分析软件
SPnenu是一款由东北师范大学自行设计的手机物理实验应用软件,是基于OpenCV的运动视频分析安卓应用程序,经过简单设置后即可自动跟踪视频中的运动目标,并测量、计算出视频中的物理实验参数,生成原始数据供师生分析。视频可以是手机拍摄的或来自其他来源,格式推荐MP4格式,视频中的运动目标物理颜应和背景颜有较大的差别(且只包含一种颜)o视频拍摄时应保证摄像头垂直于运动目标和参照物构成的平面拍摄。
SPnenu由三个主要部分构成,第一个部分是参照物检测,该部分的目的是通过手动设置视频中的参照物来确定视频中每个像素代表的实际长度。
第二个部分是基于OpenCV中的CamShift[5]算法实现的目标跟踪,为了跟踪视频中较小的目标,应用程序对该算法中颜直方图的计算方法部分进行了针对性的改进,使得选择跟踪目标更为便捷。
第三个部分是数据处理,该部分对目标跟踪部分得到的目标坐标和时间信息进行分析,计算出运动目标的位置、运动周期等物理参数信息,为了快速地处理视频,为应用程序设计了一个专门的硬件加速解码模块。
“用单摆测量重力加速度大小”实验是2017版高中物理课标选修部分学生必做实验之一,该实验原理简单,但从近年学生经典单摆实验的效果看,实验误差较大。导致误差产生的主要原因有:摆长测量和单摆周期的测量。特别是,经典单
收稿日期:2021-03-09
基金项目:吉林省高等教育教改研究课题(2020)
第2期黄继鹏,等:编写SPnenu安卓软件分析单摆视频计算重力加速度87
摆周期测量对起始位置的选择、单摆周期的判断、周期次数的计量等都提出了极高的要求,极易出现失误。为了解决以上两个问题,利用手机录制视频,结合安卓程序SPnenu对该实验进行了视频分析。
2单摆视频分析实验探究
2.1实验原理
首先需要推导单摆周期公式,设小球质量为矶,质心到悬挂点O的距离为L(摆长),单摆周期为T。当摆线与竖直方向夹角小于5度时,根据牛顿第二定律,可得重力加速度g=4n2L/T2。利用这个公式在每个单摆周期的结束计算一次重力加速度并进行记录,最后将所有重力加速度的平均值作为最终实验所得的视频当地的重力加速度。
SPnenu App精确测出摆锤位置坐标和时间信息,计算出单摆的摆长和周期,然后根据g-4n2L/T2,就可以求得视频当地的重力加速度。2.2实验装置
实验装置如图1所示。主要实验器材有:铁架台、匀质摆锤、不可伸长轻质绳、安装了SPnenu App的Android手机、参照物卡、三脚架(选配)等。
参照物卡起点和终点,此时输入框填写50o
2)设置视频中坐标系。以摆线悬挂点表示坐标系的原点,在其所在的垂直手机镜头主光轴平面上,原点水平向右表示为X轴正方向,原点竖直向下表示为Y轴正方向。
为了尽可能精确地设置参照物和坐标系,应用程序中包含了拖动和点击两种设置调节方式,满足微调需求。
物料输送设备3)设置自动跟踪的目标。在手机屏幕画出一个和摆锤大小相近的矩形框,然后将矩形框拖到和摆锤重合的位置上,最后点击确认按钮即可完成设置。
4)设置完成后,开始自动分析视频直至视频结束,视频分析共有三个界面:视频播放、原始数据和数据结果分析。视频播放界面显示每一帧处理后的图像,黄的矩形框是目标跟踪检测到的摆锤。原始数据界面包括两个部分,上半部分是点图形式:竖轴表示每一帧图像中摆锤坐标的x 值,横轴表示与之对应的帧图像时间。下半部分列表:从上到下的每一行原始实验数据代表从视频开始的每一帧图像中摆锤的坐标和时间,如图2所示。
x(mm)
-59.88878
-60.71294
-59.33934
-56.59215
-53.29552
-48.90001
-43.40563
-39 CM2
-32.96630
-26.37304
-
18.40618
-9.88989
y(mm)
642.84285
642.84285
643.11757
643.11757
643.11757
643.39229
643.39229
草莓托643.94=73
644.49117
644.21645
643.94=73
643.11757
O
t(s)
0.03399
0.06798
0.10197
0.13596
0.16994
0.20393
0.23792
0.27191
0.30590
0.33989
0.37388
0.40787
o
图2原始数据界面
V O口
图1单摆实验装置图(手机App端)
2.3实验数据采集分析(实验步骤)
1)手机摄像头垂直于运动摆锤和参照物卡构成的平面拍摄视频。在单摆视频分析的开始,首先需要设置参照物,如图1所示,选取五条间距为50mm的线条中的任意两条作为参照物,这里选择两条相邻的线条作为参照物,设置参照物的
5)如图3所示,数据结果分析界面包括实验项目选择和实验结果展示,该模块接收摆锤的原始数据,并根据选定实验的计算过程,得出实验结果。当前默认选择单摆实验,计算操作包括计算单摆的周期[6]、摆长、视频当地的重力加速度⑺和实验误差分析。
周期计算包括周期的起始定位及周期时长的计算。周期的起始定位点选取为摆锤的最大位移
88大学物理实验2021年
处,摆锤共有左右两个最大位移点,这里选择视频中左边的最大位移处,对应点图中的波谷位置,此时摆锤的速度最慢,可以精确地确定单摆每个周期的开始和结束(不同于传统单摆实验秒表最低点计时)。
摆长计算首先定义摆长。视频中的摆长定义为目标跟踪检测到的摆锤框的中心到设置坐标系原点的欧氏距离。
在计算出单摆的周期和摆长后,就可以计算视频当地的重力加速度。视频拍摄地(长春)的标准重力加速度为9.8048m/s2,本次实验最终测得视频中单摆的摆长为0.64349m,周期为1.62176s,计算得出视频当地的重力加速度为9.80177m/s2,和视频当地的标准重力加速度的差值厂g为-0.00303m/s2,如图3所示。
单摆实验
实验结果
L(m)0.64349
T(s)  1.62176
g(m/s A2)9.80177
Ag(m/s A2)-0.00303
x=59.1
s in(3.9
防洪板
*t-1.6)+5.6
<O□
可知实验值和理论值的相对偏差为定向扬声器
Er-0.03%.
实验值和理论值吻合较好,即通过本实验方法测得重力加速度的结果较为精确。
3实验分析与讨论
3.1对比实验分析
Tracker没有智能手机的客户端,本文选择安装Windows8.1的个人电脑作为运行环境,处理器为Intel©Core TM i7-4710MQ,内存16GB,最终的运行结果如图4所示。
Tracker只展示了实验的原始数据,没有对于单摆实验的数据结果分析;从分析速度看, SPnenu安卓程序用了50s,而Tracker分析相同视频耗时75s,并且Tracker在自动跟踪目标的过程中会偶尔出现中断,手动辅助操作后,才能继续分析视频,而SPnenu则不会出现这种情况,这是因为SPnenu在目标跟踪部分没有采用Tracker所使用的模版匹配算法,而采用了基于颜跟踪的CamShift算法,该算法只对颜敏感,对视频的背景形状和跟踪目标的形状的复杂度并不敏感,对目标的大小变化也有较好的自适应性,即使摆锤在运动过程中发生旋转,只要保证颜不发生变化,目标跟踪就能很好地跟踪到摆锤。
图4Tracker分析结果
3.2周期的误差分析
确定了单摆周期始末的定位点后,应用程序需要在给定的原始数据中到所有的波谷,在连续可导函数中,波谷对应点处的一阶导数[8]为0,并且在左邻域中一阶导数为负值,右邻域中一阶导数为正值。根据连续可导函数中波谷的特点,可以设计出单摆实验中对于原始实验数据中波谷有如下判断方法。
讲述判断方法之前,需要先定义点图中每一点一阶导数的正负。这是因为视频拍摄时是以帧为单位进行记录的,这就导致原始实验数据是离散的,不能像判断连续可导函数的波谷一样去判断点图中每一
点的一阶导数是否等于0,只能根据波谷邻域点的一阶导数进行判断,但是离散数据无法像连续可导函数一样去求得一阶导数的表达式,然后根据表达式求出邻域中点具体的一阶导数值,而只能求得邻域点的一阶导数的正负。根据一阶导数的定义,这里将A点的一阶导数的正负定义为B点的x值减去A点x值的差的正负,其中A点为点图中的一点,B点为和A点相邻的下一个点,即A和B为两个相邻帧在点图中对应的点。
在定义了点图中每一点的一阶导数的正负后,就可以判断出点图中的波谷一阶导数为正且它前一个点的一阶导数为负的点。通过上述方法
第2期黄继鹏,等:编写SPnenu安卓软件分析单摆视频计算重力加速度89
判断出两个相邻的波谷对应的点,将后一个点对应的时间减去前一个点对应的时间即可求出一个完整周期的长度。但关于周期的计算仍未完成,考虑图5和图6所示的两种情况,图5表示点图中一般波谷的情况,其中B点对应摆锤运动至左边最大位移处的点,A点和C点分别对应前一帧和后一帧对应的点。上述方法可以很准确地判断出B点就是波谷,但是当发生图6所示的特殊波谷时,上述方法就无法准确判断出正确的波谷E 点,这仍是由视频拍摄的离散性导致的,图中E 点也是对应摆锤运动至左边最大位移处的点,但因为视频拍摄到的图像不是连续的,导致E点对应的帧未被拍摄,而只拍摄到了E点之前和之后的两帧图像,分别对应D点和F点,此时前述的波谷判断方法在判断波谷时就会发生错误,因为点图中根本不存在E点,所以会发生以下两种情况:
A C
图5—般波谷
D F
E
图6特殊波谷
后挂式耳机
1.当D点略低于F点或D点和F点一样高时,D点就会被判断为波谷;
2.当D点略高于F点时,F点就会被判断为波谷;
然而无论发生哪种情况,波谷的判断都是不准确的,当情况1出现在周期的开始,会导致该周期的时长增加一帧的时间,出现在周期的结束会导致周期的时长减少一帧的时间,情况2则和情况1恰好相反。为了消除这种特殊波谷带来的周期计算误差,应用程序对视频中所有的周期进行记录,然后依次判断哪些周期的时长比其余周期的时长多一帧的时间或少一帧的时间,将这些周期判断为坏周期,这样判断的原因是因为摆锤在最大位移处的速度最小,此时摆锤在一帧时间内的位移很小,所以特殊波谷发生的概率比一般波谷发生的概率就小很多,这样周期记录中大部分周期都是测量准确的周期,然后通过对所有周期进行比较就能筛选出那些包含特殊波谷的坏周期并进行剔除,最后将其余周期的总时长除以对应周期数作为最后实验所得的单摆周期,以减少相对误差。
3.3摆长的误差分析
完成对摆长的定义后,需要确定计算摆长的时机,这里选择在每个周期的开始计算摆长,因为如果实验不具备三脚架条件,视频拍摄时会有轻微的抖动,而智能手机的摄像头相关模块并不能完全消除抖
动,这就会导致视频拍摄画面的畸变,如果在畸变的帧中计算摆长,则会导致摆长测量误差较大,但这种畸变只存在于小部分视频帧中,所以这里只选择周期开始时的帧计算摆长,这样就大大降低了遇到畸变帧的概率。实验中,对所有摆长的测量值计算平均值,二次消除误差,将计算得到的平均摆长作为最后的摆长计算结果。3.4讨论
1)测量单摆周期的常规做法需要学生计量多次(30〜50次)全振动的时间,存在操作耗时久、计数易受干扰、实验误差大等问题。SPnenu 应用程序直接输出单摆运动的周期,减少周期测量误差,有助于学生在小角度倾角下进行实验,可以快速准确地对物理过程进行量化和图形化分析。
2)SPnenu应用程序可以输出原始数据,保留了传统物理实验的推理论证分析过程,可供学生自主设计实验,遴选数据,选择不同的时机来计算周期,分析和安卓App自动计算的误差,增加学生自主探究的乐趣,不受时空限制,提升了实验的便捷性,而Tracker只能在电脑上运行。
3)SPnenu应用程序操作比Tracker更加简单,手动操作的部分全程由应用程序引导提示,即使新手也能轻松使用,数据处理是随着视频实时进行的,使用者可以直接观察到物理量的动态变化,对物理现象有一个更加直观的感受。
4)图3中摆锤运动的点发生了向上偏移,这是因为无三脚架拍摄视频时手机向左有轻微的摆动,导致坐标系的原点和摆线的悬挂处不重合,建议实验采用三脚架拍摄视频,消除偏移。
4结语
基于OpenCV设计Android手机应用程序,可以让学生非常方便地访问智能手机的传感器,并使用它们开展运动视频分析物理实验。通过运动视频分析,可以脱离实验室环境,不受时空限制,
90大学物理实验2021年
反复分析比较,提高实验精度。已经创建了一个运动视频分析程序来计算基于单摆运动实验的重力加速度,安卓程序保留了很多接口,可以进一步修改和功能扩展,还有其他如平抛运动、自由落体等物理实验有待探索。希望通过编写和配置自己的应用程序,让学生们将手机视为一个充满传感器的移动实验室,探索有趣的物理世界。
App下载链接:
https://s hare.weiyun/y Ryn7e Dg
参考文献:
[1]UNDERWOOD B,ZHAI Y.Moving Phones Tick
Slower:Creating an Android App to Demonstrate Time
Dilation[J].Physics Teacher,2016,54(5):277-279.
[2]CARROLL R,LINCOLN J.Phyphox App in the
Physics Classroom[J].Physics Teacher,2020,58(8):
606-607.[3]KAPUCU S.Discovering Quantities of Circular Motion
of a Light-Emitting Toy Train Using a Smartphone
Light Sensor[J].Physics Teacher,2019,57(7):
480-482.
[4]WALSH T.Creating Interactive Physics Simulations
Using the Power of GeoGebra[J].Physics Teacher,
2017,55(5):316-317.
[5]WANG Z,YANG X,XU Y,et al.CamShift Guided
Particle Filter for Visual Tracking[J].Pattern
Recognition Letters,2009,30(4):407-413.
[6]张晓鹏,韩仁学.战“疫”背景下大学物理实验课线
上教学方案设计一以“DIY单摆运动实验”为例[J].
大学物理实验,2020,33(3):137-140.
[7]黄膺达,王旗.基于图像处理的单摆测量重力加速
度实验的研究[J].大学物理实验,2020,33(5):
11-14.
[8]HARVEY M.Speaking the Same Language in Physics
and Math[J].Physics Teacher,2012,50(2):122-122.
Creating SPnenu Android Software to Analyze the
Pendulum Video for Gravity Acceleration
HUANG Jipeng,LIU Jinwei,LI Jinhuan,GAO Zhihua
(School of Physics,Northeast Normal University,Changchun130024,China)
Abstract:In order to enhance the effect of the experiment of“pendulum measuring gravity acceleration”,an Android application for motion video analysis-SPnenu was written to analyze pendulum video and measure gravity acceleration.Firstly,it introduces the component modules of Android software.Then,the application is used to analyze the period,pendulum length and local gravity acceleration in the video of simple pendulum motion.Finally,a comparative experiment is conducted with the video analysis software Tracker on the computer platform,errors are also discussed and analyzed.The experiment shows that introducing the motion video analysis software based on Android smart phone into the physics experiment teaching is helpful to break the time and space limitations of the experiment,reduce the error caused by“period measurement”,and realize the accurate tracking record and data analysis of the movement trajectory of the simple pendulum ball.
Key words:gravity acceleration;Android software;video analysis;physics experiment;simple pendulum

本文发布于:2024-09-24 15:20:07,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/4/145240.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:视频   实验   分析   单摆
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议