每天学写留学文书 1月22日

voila

释义:这个借词在法语中的本意是「看那儿」。英语里面一般作为一个感叹词单独使用,用于吸引他人对某个刚完成作品的注意力。在留学文书中可以用来点缀对于某个实践项目经过的描述,使行文变得生动且体现出作者的一种自豪感。

例句:
One stem in each, one flower in each, and voila, so easy.
Gilles followed her gaze to the door as he secured the last lock of hair into a foil and waved his hands in a “voila!” motion.

Offer榜

2016-2017

在早申请阶段中,AADPS的学员们已经成功斩获了圣路易斯华盛顿大学匹泽学院曼荷莲学院伊利诺伊香槟分校宾州州立大学威斯康星大学麦迪逊分校俄亥俄州立大学普渡大学明尼苏达大学印第安纳大学伯明顿分校爱荷华大学的录取和福尔曼大学奖学金福特汉姆大学奖学金比洛特学院奖学金麻省大学阿姆赫斯特校区奖学金罗格斯大学奖学金

本申请季我们已为AADPS的学员们争取到了累计超过四十万美元的奖学金,我们并不为此收取任何额外的费用。


2015-2016

在早申请阶段中,AADPS的学员们已经成功斩获了康奈尔大学北卡罗来纳大学教堂山分校莱斯大学弗吉尼亚大学史密斯学院普渡大学明尼苏达大学印第安纳大学伯明顿分校福特汉姆大学宾州州立大学威斯康星大学麦迪逊分校伊利诺伊香槟分校俄亥俄州立大学的录取和德堡大学奖学金爱荷华大学奖学金

在常规申请阶段中,AADPS的学员们已经成功斩获了北卡罗来纳大学教堂山分校加州大学洛杉矶分校南加州大学威廉玛丽学院加州大学圣地亚哥分校罗彻斯特大学欧柏林学院加州大学欧文分校加州大学戴维斯分校格林内尔学院加州大学圣塔芭芭拉分校威斯康星大学麦迪逊分校凯斯西储大学东北大学波士顿大学里士满大学盖茨堡学院华盛顿大学俄亥俄州立大学里德学院的录取和圣奥拉夫学院奖学金福特汉姆大学奖学金科尔比学院奖学金罗彻斯特研究生奖学金马凯莱斯特学院奖学金

本申请季我们已为AADPS的学员们争取到了累计超过五十五万美元的奖学金,我们并不为此收取任何额外的费用。

2014-2015

在早申请阶段中,AADPS的学员们已经成功斩获了芝加哥大学埃默里大学维克森林大学密歇根大学威斯康星大学麦迪逊分校福特汉姆大学的录取和富兰克林马歇尔学院奖学金

在常规申请阶段中,AADPS的学员们已经成功斩获了哥伦比亚大学康奈尔大学范德堡大学加州大学伯克利分校加州大学洛杉矶分校约翰霍普金斯大学密歇根大学纽约大学南加州大学加州大学圣地亚哥分校加州大学戴维斯分校北卡罗来纳大学教堂山分校加州大学圣塔芭芭拉分校加州大学欧文分校威斯康星大学麦迪逊分校伊利诺伊大学香槟分校华盛顿大学波士顿大学的录取和科罗拉多学院奖学金特兰西瓦尼亚大学奖学金

本申请季我们已为AADPS的学员们争取到了累计超过三十五万美元的奖学金,我们并不为此收取任何额外的费用。

每天学写留学文书 1月21日

deem

释义:「认为」,这是一个比较古雅的说法。一般在留学文书里出现的会是和necessary连用的固定搭配,体现一种主观上迫切的必要性。

例句:
It would block certain messages in countries where they were deemed illegal.
How will nurses influence commissioners to commission care they deem appropriate?

同义词:consider

每天学写留学文书 1月20日

stand by

释义:一个有很多义项的固定搭配,在电器开关和电脑上表示「待机」,对人来说则是「待命、稍后」,有时也有「袖手旁观」的意思。但在留学文书里面出现比较多的是「支持」某一方或者「坚持」某个判断。

例句:
There is no excuse for Congress to stand by and do nothing while so many families are struggling.
We still stand by our analysis.

每天学写留学文书 1月19日

put [sb.] at a disadvantage

释义:「将某人置于不利的境地」,主语既可以是人,也可以是某种状况或者被动语态。

例句:
It would appear that someone has attempted to put you at a disadvantage.
Our very competitive nature has almost put us at a disadvantage relative to some of our international competition.

【CS/EE】为游泳运动员打造智能教练

近年来,美国大学的计算机(Computer Science, CS)和电子工程(Electrical Engineering, EE)专业录取要求随着申请人数的增加逐渐水涨船高。但另一方面,国内的相关工程教育却基本是缺位的。为了弥补这种差距,陈欣老师在过去的几年里,通过我们的规划项目辅导了一批学员。通过身体力行的学习利用专业知识解决生活中的问题,他们走出了自己的舒适区。事实证明,学校对这份努力也是相当认可的。

为了帮助到更多的人,陈欣老师在此整理一些往年的成功项目经验,并同简化过的项目源代码一道与大家分享。希望能够抛砖引玉,给同学们一些思路和帮助,为之后的申请助一臂之力。毕竟短期看,CS/EE是在美国本土就业的捷径,能够较为迅速的收回教育投资;长远看,CS/EE的相关技能也能在诸多行业里起到点石成金之效。

问题

AADPS的一位学员是市游泳队的成员。她利用暑假时间在国家游泳集训中心给教练帮忙。日前,世界大多数国家都使用视频录像的方式分析游泳运动员的训练情况。诸如澳大利亚等发达国家已经启用了先进的智能教练系统,自动根据摄像头和可穿戴设备等实时得出训练数据和反馈。而中国目前还做不到这一点,需要人工来对视频进行标记。一些关键的节点和动作环节还需要一帧帧的慢进比对,是一项耗时耗力的工作。在这上面花了两三周之后,我们的学员感觉确实是一个挑战。

那么是否有更好的解决方案呢?

工具

C++语言

C++是一种通用编译型高级计算机语言,同时提供面向过程和面向对象的编程特性。C++保留了其前身C语言的绝大部分功能,因而提供了与底层硬件直接交互的手段。同时,其也是一门高效的现代编程语言,在桌面程序、服务器应用、高性能应用和大型游戏等方面均有用武之地。

OpenCV


OpenCV是一个原本由英特尔俄国研究中心开发的实时计算机图形学函数库。目前,OpenCV是最有影响力的跨平台开源图像处理工具,可以实现导航、人机交互、手势识别、增强现实、人脸识别、运动追踪等先进功能。

Microsoft Visual Studio


Visual Studio是微软公司的集成开发环境(integrated development environment),用于Windows平台上的软件开发。目前,Visual Studio主要支持C++,C#,Visual Basic等语言的开发、调试和部署。Visual Studio为个人开发者提供免费的社区版本可供下载

原理

RGB颜色空间与HSV颜色空间

我们都知道视频是一连串图片的组合,而图片是以矩形排列的一系列颜色点的组合,专业术语称为像素(pixel)。对于计算机而言,所有的信息都是以数值的形式存储的,像素也不例外。当然,事实上有至少一打不同的储存颜色的方案或模型,我们称之为颜色空间(color space)。

对于一般人而言,最好理解的颜色空间是RGB,即是红(Red)绿(Green)蓝(Blue)三原色的组合。我们所有电子设备的彩色显示屏也是基于这种原理工作的,通过三原色不同强度的搭配以组合出千变万化的色彩。但是对于计算机图形学而言,一个更方便的颜色空间是HSV,即色相(Hue)饱和度(Saturation)明度(Value)。色相是色彩的基本属性,直接对应着整个色谱。饱和度是指颜色的纯度,值越大颜色越纯,反之则变灰。明度是指色彩的明亮程度。下图的圆柱直观展示了HSV颜色空间。

通过一个不太复杂的算数公式,两个颜色空间可以互相转换。那么我们为什么在这里要用到HSV呢?如果掌握一些线性代数知识的话会能很方便的解释。事实上,RGB到HSV是一个线性空间的旋转,把本来均匀分布在三个通道中我们所感兴趣的颜色特征信息一一抽取出来,以方便我们更好的操控和处理。如果从实践出发来讲,我们需要利用OpenCV提供的滑块条(trackbar)来减小干扰并最大化覆盖识别区域。调整HSV是有很明确的顺序的,先调H就能迅速的定下大范围,然后再接着S和V。但是如果是RGB的话,基本上调哪个可能都差不多,这就不太方便了。

图像处理算法

侵蚀(erode)与膨胀(dilate)


erode函数必要的参数有三个,分别是输入图形、输出图形和核心(kernel,这是一个数学概念。通俗讲可以理解成画笔的笔刷大小形状)。erode的作用,就是当且仅当输入图形的像素周围能完全覆盖核心时,才保留该像素,否则则把像素从图形中抹去。这样事实上造成的效果就是,如果输入图形还没有核大,就会整个被抹掉。如果输入图形本身比较大,周围则要被切掉一圈。


dilate其实是erode的反操作,函数所接受的参数核erode相同。dilate则是只要核心能沾上一点输入图形的边,核心所覆盖的范围就都在输出图形里。事实上造成的效果就是,输入图形要被扩大一圈。

在我们自己的应用里,使用了一次侵蚀和两次膨胀。侵蚀是希望把微小的噪点直接抹去,而膨胀则是希望把水线整体连接起来,减小后续操作的运算复杂程度。这些操作也在一定程度上稳定了识别点,让它不会因为一些噪点或者抖动而满画面乱飞。当然,目前这个还是有很大的优化空间。

寻找轮廓(findContours)


findContours必要的参数有五个,分别是输入图形、储存轮廓的二维数组、轮廓之间的包含/并列关系(hierarchy),专业术语称为图像拓扑结构(image topology)、工作模式和近似方法。

当然我们这边其实用了一个最简单的方法来寻找分界点——我们只是在过滤掉一部分目标区域以外的元素后,在红水线所有的轮廓里面找最左边的值。这个同样有非常大的优化空间,比如我们该怎样利用一下拓扑结构信息来分别同时识别出上下两根水线甚至是多根水线的分界点呢?

示例


上图展示了项目源码实际执行的场景。最上面第一个黑白窗口识别出了红色的水线,第二个黑白窗口识别出了黄色的水线。最下面显示原始视频的窗口用准星标注出了两色水线的分界点。

为了正常运行示例,需要安装OpenCV(可以在源码目录里直接下载)和Visual Studio Community 2015。然后需要按指示把OpenCV的安装目录设置为环境变量。

源码本身已经完成了额外的设置。但是具体说来是这么几项:

  • 额外的OpenCV C++头文件包含目录
  • 额外的OpenCV静态库目录
  • 链接静态库opencv_world320.lib/opencv_world320d.lib,分别对应release和debug
  • 动态链接库opencv_world320.dll/opencv_world320d.dll置于程序目录中,同时还有opencv_ffmpeg320_64.dll用于视频解码

思考

  1. 目前来说,视频分析的工作是在个人电脑上进行的。是否可以进一步把相关程序集成到平板乃至智能手机应用中,在游泳场馆里一步完成实时的录像和分析?
  2. 为了提高视频识别的精确度。在录像时我们能进行哪些改进,比如特殊的水线,运动员泳帽的颜色,亦或是对手持录像设备用户的一些引导以确保录制视频的质量?另一方面,目前识别的算法能否能继续改进,排除可能的干扰元素、抖动和噪点?
  3. 我们已经对视频中的元素进行了识别分析,那么怎样较为精确的把视频中的坐标体系换算成现实物理世界中的各项运动数据?仅通过视频我们能够提取哪些数据?在辅以可穿戴设备的基础上,我们还能取得哪些数据?通过这些数据,我们能进行怎样的分析?
  4. 假定我们已经针对每位运动员收集了完备的训练档案。通过运动员之间的比较,和某位运动员当前数据与历史数据的比较,能得出哪些的结论?对训练有何帮助?

以上就是我们今天分享的案例,欢迎大家登陆网站后下载项目源码,通过实践来加深理解。简单的疑问可以评论在文章下,陈欣老师将会在有空时予以解答。如果对我们的服务项目感兴趣,希望获取陈欣老师一对一指导的,可以加上老师的私人微信zipspeed。

版权申明

本文为AADPS原创,保留著作及出版权利。欢迎非盈利性质的转载,但须保留作者和原始发布地址。

本文的原始发布地址是http://aadps.net/2017/9965.html。我们每年夏季会更新最新美国大学本科申请文书题目和权威院校指南,欢迎把网站加入浏览器收藏夹。