今天上午的两个实验吸取昨天的经验,依旧采用一段一段手输的方法,并且每输入一个Cell就运行它,这样虽然感觉上进度比较慢,但是能够学到很多东西。通过第一个实验usb_webcam了解到了PIL库,这是Python常用的图像处理库,功能也很强大,几行代码就能做到裁剪、旋转、颜色转换等。第二个实验是opencv_filter_webcam,顾名思义,肯定要用到opencv的东西。这是一个跨平台的计算机视觉库,功能也很强大,今天主要用到了它的实时图像处理的模块,对摄像头获取的图像进行线条化,然后在通过HDMI连接的显示器上进行实时输出。以上两个实验都是在PYNQ板上进行主要计算的。
*完成实验tfExample
由于下午有事,所以没有赶上上课,晚上抽空又去实验室把落下的任务补上了。任务很简单,从gitlab上下载一个压缩包,然后通过命令行打两句命令运行一个TensorFlow的程序,基本上就完成了,难就难在环境总是残缺不全,大部分时间还是都花在环境的配置上了,也许这就是这门课程的挑战性所在。首先用工作站运行,发现工作站连Python都没有(那时候还不知道任杰已经在上面装了anaconda,当然也不知道anaconda是Python的一个很强大的发行版),然后就先找Python,找到了Python,安装的时候又失败了,具体的原因忘记了,反正总是不行。然后想到反正也不用连板子,我自己的笔记本上也装了Python和TensorFlow,何不在它上面试试呢。可是试了一下又出现另外的问题,我的Python缺了两个很关键的库,一个是PIL,另外一个是SciPy,发现问题就要解决问题,我就开始在网上找这两个库。PIL一开始没有找到对应版本的,后来通过Pillow解决了,SciPy真的是一块硬骨头。一开始装的时候总是fail,发现好像缺了它依赖的numpy,装了之后还是不行。上网又搜了一下看到有人推荐用anaconda,可以一劳永逸解决这些乱七八糟的库的问题,然后才终于想起来工作站的桌面上好像是有一个anaconda,才意识到为什么工作站上没有Python任杰也没说啥了,因为他用了anaconda。在工作站上用anaconda跑了那两条命令,很顺利就出来了,但是最后打开那个网页上的Embedding页面的时候速度奇慢,这个时候动了第三次换机器的主意。当然也不是换,算是一边等结果一边解决笔记本的问题。然后就是继续搜SciPy,终于找到了一个解决方法,就是把numpy卸载了,重新装一个numpy+mkl,装上之后就能装SciPy了。通过这个还掌握了pip卸载软件的语法,就是把install换成uninstall。不得不说pip真是好用,既能直接输口令让它自己找,一些比较麻烦的还能下载下来原地通过安装包安装。都装好之后运行了那个程序,一切正常,除了那个embedding获取数据同样奇慢无比。不过这个无关紧要,今天的任务就基本完成了。