原本想着安装软件可简单了。一搜索有那么多的经验,那更是分分钟搞定,真是太天真。
我自己的电脑的cuda是9.0.该代码安装要求太多了,加上我习惯了docker。(我的docker参见https://blog.csdn.net/u013985291/article/details/81110837)
所以考虑的方式:直接下载别人的镜像。(cuda8)
————————————————————————————————————————————————
在这个环境下,不用sudo也可以成功。
0使用英伟达的docker cuda 8.0,安装cudnn5.1
nvidia-docker run -it -v /home/XXXX/xxxx/data:/data -v /home/XXXX/xxxx/config:/config nvidia/cuda:8.0-devel-ubuntu16.04 bash
https://www.cnblogs.com/go-better/p/7625541.html
1重新手动编译theano,参考https://blog.csdn.net/xdzhangzhenhao/article/details/79058963,https://blog.csdn.net/qq_36355662/article/details/80113550
pip按下面顺序安装了以下软件:
nose (1.3.7)、nose-parameterized (0.6.0)、pytest (2.9.2)-》numpy (1.12.0)(终端运行python -c "import numpy;numpy.test()"看看是不是OK )=》scipy (0.17.0)(终端运行python -c "import scipy;scipy.test()"看看是不是OK)--》flufl、Lasagne 、Theano (0.9.0rc1)--》parse (1.11.1)、h5py (2.9.0)
2 vim ~/.theanorc
(CPU的文件内容如https://blog.csdn.net/qq_36355662/article/details/80113550,测试在终端运行python -c "import theano;theano.test()";
GPU的文件内容https://blog.csdn.net/qq_36355662/article/details/80114260,测试见https://blog.csdn.net/Hansry/article/details/80714786,终端python运行)
3安装opencv(参考https://blog.csdn.net/ruotianxia/article/details/80202062?utm_source=blogxgwz1)
先运行一遍apt-get install update,然后再运行,否则libgtk2.0-dev一直提示安装不了。
apt-get update && apt-get install -y build-essential cmake unzip wget git vim htop libjasper-dev libjpeg-dev libpng-dev libtiff5-dev libgtk2.0-dev libavcodec-dev libavformat-dev libswscale-dev libopenblas-dev liblapacke-dev libtbb2 libtbb-dev libboost-all-dev libhdf5-dev
apt-get install -y pkg-config python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev libxvidcore-dev libx264-dev libatlas-base-dev gfortran ffmpeg
apt-get install -y python2.7-dev python-pip python-numpy libpython2.7-dev
使用下面命令下载并解压
mkdir opencv
cd opencv
wget https://github.com/opencv/opencv/archive/3.2.0/opencv-3.2.0.zip && unzip opencv-3.2.0.zip && wget https://github.com/opencv/opencv_contrib/archive/3.2.0/opencv_contrib-3.2.0.zip && unzip opencv_contrib-3.2.0.zip
cd opencv-3.2.0
mkdir build
cd build
cmake -DCMAKE_BUILD_TYPE=RELEASE -DCMAKE_INSTALL_PREFIX=/usr/local -DINSTALL_PYTHON_EXAMPLES=ON -DINSTALL_C_EXAMPLES=OFF -DOPENCV_EXTRA_MODULES_PATH=/data/opencv/opencv_contrib-3.2.0/modules -DPYTHON_EXCUTABLE=/usr/bin/python -DWITH_CUDA=ON -DWITH_CUBLAS=ON -DDCUDA_NVCC_FLAGS="-D_FORCE_INLINES" -DCUDA_ARCH_BIN="5.3" -DCUDA_ARCH_PTX="" -DCUDA_FAST_MATH=ON -DWITH_TBB=ON -DWITH_V4L=ON -DWITH_GTK=ON -DWITH_OPENGL=ON -DBUILD_EXAMPLES=ON ..
(注意了本句最后有两点,而且DOPENCV_EXTRA_MODULES_PATH我是写了当前的路径)
之后会因为下载问题,会报三个错误,等到每一个错误出现时,先ctrl+C暂停,然后把使用复制命令,把当前build文件删除掉,重建build,重新运行cmake命令
我下载不下来的3类文件,在https://github.com/CoderEugene/opencv3.2_CMake都有,所以先
git clone https://github.com/CoderEugene/opencv3.2_CMake.git
错误1:ippicv_linux_20151201.tgz
使用类似的命令cp /home/XXXX/ippicv_linux_20151201.tgz /home/XXXX/liftdata/opencv/opencv-3.2.0/3rdparty/ippicv/downloads/linux-808b791a6eac9ed78d32a7666804320e
错误2:v3.1.0/protobuf-cpp-3.1.0.tar.gz
用类似的命令cp /home/XXXX/protobuf-cpp-3.1.0.tar.gz /data/opencv/opencv_contrib-3.2.0/modules/dnn/.download/bd5e3eed635a8d32e2b99658633815ef/v3.1.0/
错误3:vgg_generated_64.i
sudo cp -r /home/gvc/opencv3.2_CMake/.download/* /home/gvc/hxj/liftdata/opencv/opencv_contrib-3.2.0/modules/xfeatures2d/cmake/.download/
在当前文件夹下
make
make install
/bin/bash -c 'echo "/usr/local/lib" > /etc/ld.so.conf.d/opencv.conf'
ldconfig
apt-get update
4LIFT
git clone https://github.com/cvlab-epfl/LIFT.git
cd LIFT/c-code/build
cmake ..
make
cd /data/LIFT
./run.sh
之后,vim /data/LIFT/results/img1_ori.txt创建该文件
报错Traceback (most recent call last):
File "compute_descriptor.py", line 78, in <module>
pathconf.setupTrain(param, 0)
File "/data/LIFT/python-code/Utils/custom_types.py", line 154, in setupTrain
self.volatile_temp = "/scratch/" + os.getenv('USER') + "/Temp"
把编辑"/data/LIFT/python-code/Utils/custom_types.py“把154行和204行的os.getenv('USER') 换成 os.getenv('USER', '')
重新运行./run.sh,可以看到results下面生成大家梦寐以求的图片。
————————————————————————————————————————————————————————
第二种方法:没有成功,还有一堆错误。我中途曾经折腾过使用anaconda的方法,遇到os.getenv('USER') ,以为失败了,后来发现好像可以改改文件就行了,于是重新在做一遍
0使用英伟达的docker cuda 8.0,安装cudnn5.1
nvidia-docker run -it -v /home/XXXX/xxxx/data:/data -v /home/XXXX/xxxx/config:/config nvidia/cuda:8.0-devel-ubuntu16.04 bash
https://www.cnblogs.com/go-better/p/7625541.html
1安装anaconda
apt-get update --fix-missing && apt-get install -y wget bzip2 ca-certificates libglib2.0-0 libxext6 libsm6 libxrender1 git mercurial subversion libbz2-dev libz-dev libpng-dev vim
echo 'export PATH=/opt/conda/bin:$PATH' > /etc/profile.d/conda.sh && wget --quiet https://repo.continuum.io/miniconda/Miniconda2-4.3.21-Linux-x86_64.sh -O ~/miniconda.sh && /bin/bash ~/miniconda.sh -b -p /opt/conda
echo "export PATH=/opt/conda/bin:$PATH" >> ~/.bashrc
echo "export LD_LIBRARY_PATH=/usr/local/cuda-8.0/lib64:/usr/local/cuda-8.0/extras/CUPTI/lib64:$LD_LIBRARY_PATH" >> ~/.bashrc
source ~/.bashrc
2opencv前置软件
apt-get update && apt-get install -y build-essential cmake unzip wget git vim htop libjasper-dev libjpeg-dev libpng-dev libtiff5-dev libgtk2.0-dev libavcodec-dev libavformat-dev libswscale-dev libopenblas-dev liblapacke-dev libtbb2 libtbb-dev libboost-all-dev libhdf5-dev
apt-get install -y pkg-config python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev libxvidcore-dev libx264-dev libatlas-base-dev gfortran ffmpeg
apt-get install -y python2.7-dev python-pip python-numpy libpython2.7-dev
3安装其他软件
conda install theano=0.9
conda install -c http://conda.anaconda.org/toli lasagne
pip install flufl.lock==2.4.1
conda install -c menpo opencv3=3.2.0
pip install parse
pip install h5py
现在是cpu状态,所以设置gpu
vim~/.theanorc
4LIFT(同上)
Traceback (most recent call last):
File "compute_descriptor.py", line 111, in <module>
test_data_in = data_module.data_obj(param, image_file_name, kp_file_name)
File "/data/LIFT/python-code/Utils/dataset_tools/test.py", line 64, in __init__
self.load_data(param, image_file_name, kp_file_name)
File "/data/LIFT/python-code/Utils/dataset_tools/test.py", line 82, in load_data
pathconf, param, image_file_name, kp_file_name)
File "/data/LIFT/python-code/Utils/dataset_tools/test.py", line 129, in load_data_for_set
kp = np.asarray(loadKpListFromTxt(kp_file_name))
File "/data/LIFT/python-code/Utils/kp_tools.py", line 196, in loadKpListFromTxt
kp_file = open(kp_file_name, 'rb')
IOError: [Errno 2] No such file or directory: '/data/LIFT/results/img1_ori.txt'
这个问题好像说是配置问题,遂放弃。