8.27 课设报告

今天几乎一整天我们都在尝试调试运行我们的工程文件,期间可以说是遇到了很多问题。由于我们小组之前并没有任何实际项目的工作经验,因此,即使在Github页面有安装说明的情况下我们对里面许多的任务行指令还是一知半解。首先是一些背景开发包的安装,比如说git clone指令需要用到的Git,好在老师的教程已经教会我们如何使用,以及Git的其他一些基础命令。另一个我们缺少的开发包是pip,一个针对于Python 的环境包安装工具,不知道为什么我们的python并没有内置pip工具,在学习了一些终端的基本指令之后我们才了解到可以通过 sudo apt install来直接从网络上添加相关的环境包。只是在一个黑黑的cmd界面就可以直接访问网络上的下载链接,对于没怎么接触过命令行指令的我来说可以说是非常神奇了。

       然而到了这一步最大的问题才刚刚显现,下一步是要安装该项目所需要用到的所有环境包。由于Pyhton有成千上万的开发包来应对各种不同的开发需求,而有些开发包之间可能会互相冲突,为了我们以后的开发便利着想我们先学习添加了python 的virtualenv,这是python平台的虚拟开发环境工具,我们打算在这个开发环境中进行我们项目的调试,来将我们需要安装的环境包与python的大环境隔离开来。可在安装requirements文件里要求的开发包时,有两个无法成功安装一个是matplotlib,另一个是tensorflow-gpu。关于matplotlib,cmd给出了一大段的错误提示信息,在仔细研读之后我们发现在排除了可选开发支持组建的影响后,还缺少两个必要的开发环境包来支持matplotlib的安装,一个是freetype——一个对于多字体的支持环境另一个是png——顾名思义,是一个图像分析模块。我们试图直接通过install命令来直接安装所缺少的两个环境包,但是却显示无法找到对应的版本。我们在检查了requirements对应文档后发现其中所安装的matplotlib版本号为2.1.2,而我们在网上所找到地matplotlib的当前版本为3.1.2。在修改了文档中的版本号后,我们发现该环境包竟可以成功安装了。对于TensorFlow-gpu我们也采用了相同的方法,也成功进行了安装,但当文档进行到第五十一行,也就是该文档的最后一行后,似乎自动进行了检查工作,导致又出现了大量的错误提示。不过我们在用pip list检查已经安装的环境是核对发现该项目所需要的包都已经成功安装,于是我们便开始进行了下一步。

       我们遇到的下一个问题是实在安装针对于CUDA9.0的pytorch时,我们发现有错误提示我们该软件不支持我们所使用的的平台。在分析了文件名后我们发现,该网址的后缀中存在cp36-cp36m,核实后发现这代表着是对应于Python3.6版本的安装包,而我们使用的poython是直接在官网首页上下载的3.7.4的版本。而我们又了解到,Python的版本跟我们传统意义上的软件版本不一样,Python2和Python3首先是并行的版本,而在Python3中目前又有3.6和3.7两个并行的版本,所以他们之间并不能互相兼容。无奈之下我们只好重新下回了Python3.6,但执行到这一步时还是出现了同样的问题。我们尝试直接从网上下载pytorch对应版本的wheel文件来进行导入,勉强跳过了这一步。

        然而下一步的内容又让我们十分费解,我们首先需要检查Nvcc的编译器是否激活并完全支持CUDA9.0,我们还需要预先设置好CUDA的计算回路,然后进行编译,然而我们通过cmd控制台执行编译命令时发现并不支持这一命令。多次尝试之后我们发现可以直接通过Git bash here的控制台来执行编译命令,但两条编译命令都出线了环境包版本的错误提示。原来是我们由于修改了requirements文件中的版本号,使得其中一些较旧版本的环境与我们所替换的新环境并不兼容。在走投无路之余我们又发现了之前pytorch无法正确安装的真正原因——其网址提供的版本竟然是64位linux版本的....

       在一整天的调试之后我们仍没有成功测试我们的工程文件,我们明天打算先进行虚拟机的安装,并在虚拟机上安装Linux操作系统来重新进行我们今天环境安装的工作。在这之余,为了弄懂我们算法的内核,并进行修改,我们还要抓紧时间学习R-CNN和FPN,只有知道了工作原理才能针对出现的问题进行更好的调整、理解和改进。

 

posted @ 2019-08-27 18:52  amnesiachen  阅读(145)  评论(1)    收藏  举报