环境配置
1、降低pytorch版本,同时在代码运行过程中发现pytorch与torchvision之间的版本对应问题,所以要降低torchvision版本
sudo pip uninstall torch
sudo pip install torch==0.4.0 -f https://download.pytorch.org/whl/cu90/stable
sudo pip uninstall torchvision
sudo pip install torchvision==0.2.0
pip install tensorboardX
pip install easydict
pip install msgpack
2、上传数据集至云服务器以及解压文件
云存储挂载在服务器的/data目录下,使用ls /data命令可以查看,Jupyter中看不到该目录。普通文件用cp命令复制到本地~/目录下再使用:
cp /data/faster-rcnn.pytorch.zip ~/
zip压缩文件可直接解压到本地:
unzip faster-rcnn.pytorch.zip
cd wenz1/faser-rcnn
python trainval_net.py
学习记录
1、验证某一个包是否安装pip show --files [安装包名]
2、Linux 查看当前所在的路径的命令: pwd
3、几种常见的压缩、解压方法:
(1)解压:
把/home目录下面的mydata.zip解压到mydatabak目录里面
unzip mydata.zip -d mydatabak
把/home目录下面的wwwroot.zip直接解压到/home目录里面
unzip wwwroot.zip
(2)压缩:
zip -r [打包后的文件名] [打包的目录路径] ,
zip -r ./my_data.zip ./my_data
其中./表示是当前目录,my_data是当前目录的文件夹,压缩后的my_data.zip同样会保存在当前目录,因为有前缀./ 。
4、os.listdir() 方法用于返回指定的文件夹包含的文件或文件夹的名字的列表。
5、argparse.ArgumentParser()用法解析
import argparse
parser = argparse.ArgumentParser()#创建解析器
parser.add_argument("square", help="display a square of a given number", type=int)
#添加参数
args = parser.parse_args()#解析参数
print(args.square**2)
6、assert的用法
assert 表达式 [, 参数]
当表达式为真时,程序继续往下执行;
当表达式为假时,抛出AssertionError错误,并将 参数 输出。
7、im = im[:,:,np.newaxis]增加一个新的维度,如果是二维的话是将原本的行移到列上面。
# 复制了两次一弄一样的图像,并沿纵向方向拼接。
if len(im.shape) == 2:
im = im[:,:,np.newaxis]
im = np.concatenate((im,im,im), axis=2)
8、opencv的图像格式为bgr,其他情况中的数据格式为rgb
# rgb -> bgr 转换方法 ::-1表示倒序
im = im[:,:,::-1]
9、python 中easydict的简单使用
>>> from easydict import EasyDict as edict
>>> d = edict({'foo':3, 'bar':{'x':1, 'y':2}})
>>> d.foo
3
10、拼接路径os.path.join(Path1,Path2,Path3)
11、将路径添加到系统默认路径当中
def add_path(path):
if path not in sys.path:
sys.path.insert(0, path)
12、yaml.load加载文件
yaml.load(f)
Faster-rcnn
预计主要学习两个博客
https://www.telesens.co/2018/03/11/object-detection-and-classification-using-r-cnns/
https://zhuanlan.zhihu.com/p/31426458
https://blog.csdn.net/weixin_44791964/article/details/104451667