RayNet安装教程


原本以为小case,没想到是个大坑,唉,说多了都是泪啊。

环境配置

参见另一篇博客:https://blog.youkuaiyun.com/A_Student_OF_SHANDA/article/details/83507085#PyCuda_84

更改Anaconda目录

先cd到根目录,然后输入d:即可进入d盘

C:\Users\11495>cd ..
C:\Users>cd ..
C:\>d:
D:\RayNet>

在这里插入图片描述

RayNet安装

可以选择在线或者离线安装。
在线:pip install --user raynet
离线:

# Clone the repository
git clone git@github.com:paschalidoud/raynet.git
cd raynet
# Local installation in development mode
pip install --user -e .

第一个错误:fatal error: numpy/arrayobject.h: No such file or directory在这里插入图片描述
解决方案:
修改setup.py

...
from Cython.Build import cythonize
import numpy
...
def setup_package():
    extensions = [
        Extension(
            "raynet.utils.fast_utils",
            ["raynet/utils/fast_utils.pyx"],
            include_dirs=[numpy.get_include()]
        ),
        Extension(
            "raynet.ray_marching.ray_tracing",
            ["raynet/ray_marching/ray_tracing.pyx"]
        )
    ]
...
ext_modules=cythonize(extensions),
...

再运行pip install --user -e .
第二个错误: collect2.exe: error: ld returned 1 exit status
在这里插入图片描述
原因是编译安装时python用的mingw32的gcc而不是用msvc,因此一直有些问题
solution:

  1. 进入python安装目录(anaconda目录),找到Lib,进入
  2. 找到distutils包,进入找到distutils.cfg文件

用anaconda的话是这样的

[build]           
compiler=mingw32

改为:

 [build]           
    compiler=msvc 

我的distutils.cfg文件是在

Anaconda安装目录\pkgs\libpython-2.1-py36_0\Lib\distutils

再运行pip install --user -e .
第三个错误: LINK : fatal error LNK1158: 无法运行“rc.exe”
在这里插入图片描述
解决方案:
在这里插入图片描述
C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin下的RC.Exe和RcDll.Dll复制到VS2015安装目录\VC\bin

再运行pip install --user -e .
在这里插入图片描述

终于安装好了!!!
其实最困难的就是开始第一个错误,不知道该怎么改,看了 https://jacobz.top/2017-12/CythonIntro/ 后知道了setup.py是咋写的后才改好,又被浪费了一天,唉。。。。

事实证明,只pip install --user -e .并不能用raynet_pretrain,要再做

python setup.py install

然后就可以用raynet_pretrain做训练了

RayNet使用python2写的,可以直接用python3自带工具转成python3的:
首先到python安装目录,anaconda的话是在你的安装目录\Anaconda3_5.2.0\Scripts
打开Anaconda Prompt,转到这里,然后输入: python 2to3-script.py -w 你的文件(夹)路径然后执行就可以了

RayNet要用到PyCuda,然而pycuda不支持cuda9.0,下载地址:https://www.lfd.uci.edu/~gohlke/pythonlibs/#pycuda
所以没办法,我直接pip install pycuda在这里插入图片描述
测试:

import pycuda.autoinit
import pycuda.driver as drv
import numpy

from pycuda.compiler import SourceModule
mod = SourceModule("""
__global__ void multiply_them(float *dest, float *a, float *b)
{
  const int i = threadIdx.x;
  dest[i] = a[i] * b[i];
}
""")

multiply_them = mod.get_function("multiply_them")

a = numpy.random.randn(400).astype(numpy.float32)
b = numpy.random.randn(400).astype(numpy.float32)

dest = numpy.zeros_like(a)
multiply_them(
        drv.Out(dest), drv.In(a), drv.In(b),
        block=(400,1,1), grid=(1,1))

print(dest-a*b)

保存成test_pycuda.py,运行:
在这里插入图片描述
居然成功了!

raynet_forward tmp/aerial_dataset/ tmp/foo/CHS6ZQM3RZLJNN79VUYG/depth_maps/ --weight_file tmp/foo/CHS6ZQM3RZLJNN79VUYG/weights/weights.39.hdf5 --scene_idx 2 --network_architecture simple_cnn --forward_pass_factory multi_view_cnn --dataset_type restrepo --start_end 0,20
软件介绍: ArrayNetworksL3Setu是移动代理点客户端软件,也就是常说的那个红A。需要安装这个软件后才能登陆。BOSS 客户端更新说明为了解决现有BOSS系统BUG,现在需要升级各代办点终端的SSL 的插件,具体插件步骤如下:1.将附件中名称为:“ArrayNetworksL3OnlyWebSetup.zip”的安装包拷贝到代办终端上。 2.在代办终端上解压该文件3.点击“setup.exe”4.一步步安装首先remove现有的插件。点击“next”,点击“finish”,再点击“setup.exe”,点击“finish”完成安装。完成后开始使用,打开IE浏览器。输入移动 IP地址。IE版本可能会出现,点击“允许”,当右下角出现“A” 上面出现8.4.6.80确认为新的插件版本。出现红A,没有任何报错就表示安装正常。-----------------------------------------------------------------------------------------------------如果安装有问题或者不能正常访问,请单独安装客户端。安装的文件名称ArrayNetworksL3SetupX32.zip,ArrayNetworksL3SetupX64.zip请对应系统的版本安装1查看自己的系统的版本,32位,64位2.“计算机”-->“属性”查看自己的是32位的还是64位的操作系统。请对应版本安装。4.安装客户端软件的步骤,首先解压文件。点击 “setup.exe”安装完成。打开IE登陆SSL 如重启失败请重置浏览器的高级设置。点击---“还远高级设置”---“确定”再次登陆
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值