计算机视觉纳米学位学习点滴

2019年8月底至2019年11月底,耗时3个月,学习并完成了udacity的纳米学位课程-计算机视觉。这三个月的学习体验非常有收获。作为课程的结束,按照惯例,我在此做简短的小结。

首先对于计算机视觉技术,自己在研究生期间就尤为感兴趣,研究生课程《数字图像处理》了解到图像的传统处理过程及常用算法,并在毕设时学习并使用OpenCV进行了相关的应用开发,有一定的基础。在该纳米学位的第一部分,课程从基本的颜色空间,到傅里叶变换、高通低通滤波、边缘检测、霍夫变换、腐蚀与膨胀,再到基本的图像分割知识,ORB特征检测算法、HOG等基本传统的图像处理技术都进行了讲解,加深了自己在该方向的知识。第一部分的结尾又学习,可以说是温习了一遍卷积神经网络的知识吧。

第二部分进入课程核心,计算机视觉和深度学习。首先理解了如何在CNN架构上既要完成分类又要定位其在图像上的位置。然后对于多个物体分割检测,了解了区域卷积神经网络R-CNN,及Fast R-CNN和Faster R-CNN。简单学习了解YOLO算法的原理和实现过程,对于文本和语言识别,了解了循环神经网络RNN的架构,求梯度的方法,了解了LSTM长短记忆单元的实现过程。这部分内容,只是学习了视频和理解了相关知识点,并未做进一步深入学习和实践。

在第二部分的结尾,理解了超参数的设置调整,参数包括学习率、批大小、训练次数、层数等。

第三部分是物体追踪和定位,学习了光流法,理解了贝叶斯法则的机器人定位中的原理,然后学习了卡尔曼滤波,如何不断迭代更新测量值和动作(测量矫正)来达到目标位置。最后学习了一种简单的SLAM算法–graph slam,并完成了相关的实践项目。

以上就是课程学习的大部分知识点。优达的课程好处在于有实践,每部分都有代码编写作业,除了完成基本的章节随堂实践外,完成了三个实践项目。分别是检测是黑夜还是白天、利用深度学习检测人脸关键点、机器人SLAM,确定运动轨迹及标记点位置。人脸关键点检测实践项目给我印象最深,首先是深度学习的框架完全是自己搭,几层,每层的参数,然后使用pytorch训练数据,并检测误差值,通过选择优化器,调整相关参数,使误差减小,最后在测试图片上验证,这种边实践边学习的过程真的体验很棒。

最后,感谢自己坚持的付出,每天晚上花费2小时左右的时间学习。通过三个月的学习,可以说对计算机视觉及pytorch在深度学习中的代码编写有了一定的理解,计算机视觉和深度学习的知识太广阔了,自己只是慢慢的打开了这一扇门,至于以后研究哪个方面或者即使不从事相关工作,从自己的兴趣爱好或知识面上也是无怨悔的。

接下来的时间,我将挑战自己,迈入无人驾驶的行业,去一窥目前最火热的研究领域之一。预计2019年5月底完成,尽情期待吧。

二赛君

2019年11月22日

《计算机视觉纳米学位学习点滴》有1条留言

留下评论