自动驾驶算法的调试和效果评测首先要在仿真环境中去做,因此,一个强大、灵活的仿真环境是开发、测试过程中必不可少的要素。我们在查找可用的仿真工具时主要关注以下几个特性:
开源,免费;
包含高速场景;
可以便捷的控制、切换场景的环境,且场景、环境尽可能的丰富与真实;
可以便捷的控制、切换场景内移动物体(如车辆、行人等)的行为模式,且行为模式尽可能的丰富与真实;
第 1 条基本上把商用的软件排除掉了,如 PreScan,VTD 等······。事实上,在论文库的检索过程中,CARLA 的出现频率是最高的,因此本文将介绍该软件及其安装和使用方法
Carla 是一个自动驾驶仿真框架。具有如下特点:
环境基于 Unreal Engine 4 开发;
完全开源;
包含 C++ 和 Python 全部开放接口;
以 Carla 仿真环境为核心构建的仿真生态链逐步支持各种自动驾驶仿真标准或规则,比如支持 OpenDrive 和 OpenScenario 标准,支持 Responsibility Sensitive Safety(RSS);
以 Carla 仿真环境为核心构建的仿真生态链逐步支持各种自动驾驶工具或者框架比如 ROS, SUMO,PTV-Vissim 等;
产品更新迭代速度相对较快;
有英特尔,丰田,通用等大公司支持
Carla 官网如下:Carla
Carla国内资料和资源分享网站:Carla 中文站
Carla源码下载地址:Carla github 源码仓库
这里我们需要下载 ubuntu 对应的安装包
Carla 是一款基于 Ue4 开发的仿真模拟软件,所以对硬件的要求比较高,推荐配置如下:
Carla 官网推荐显存 8G, 内存最好大于 16G 硬盘大于 100G , 虽然没说 CPU 的要求,但是 CPU 最好也配一个好一点的,最好配十代 i7 以上的 CPU
CPU : I7 10750+
GPU:英伟达 2060+
内存:16G+
硬盘:1T
这里如果是使用 Ubuntu 安装 Carla,需要同时安装很多环境:Carla、Ue4、Conda3等,至少要有 250G 的空间才能够完成安装
这里我们是在 Ubuntu 20.04 的环境下安装 Carla,所以这里我们需要安装好所有的环境:
首先是需要安装好 python3,这里的 python3 的版本目前是最好使用 3.8 的最新版本,这里提供在线安装的命令:
sudo apt update
sudo apt install software-properties-common
sudo add-apt-repository ppa:deadsnakes/ppa
udo apt install python3.8
python3.8 --version
然后这里我们需要更新 pip3 到最新版本(这里的最低 pip3 版本要求是 20.3),这里由于我们使用的系统是 ubuntu 20.04,默认的 pip3 版本是 20.0.2,直接使用命令升级 pip3 是没有效果的,这里我们需要按照如下方法进行更新:
#首先直接升级 pip3,这里虽然升级后查询版本没有改变,但在后续操作会解决
sudo pip3 install --upgrade pip
#修改 .bashrc 文件
sudo gedit ~/.bashrc
#在文件末尾添加如下字段
export PATH=/home/cxx/.local/bin/:$PATH
#保存后执行刷新调用
source ~/.bashrc
这样我们再次查看 pip3 的版本就已经更新到最新版本了:
python3 环境全部准备好之后,需要安装一些其他包
pip3 install --user pygame numpy
pip install --user setuptools &&
pip3 install --user -Iv setuptools==47.3.1 &&
pip install --user distro &&
pip3 install --user distro &&
pip install --user wheel &&
pip3 install --user wheel auditwheel
如果在执行安装 setuptools 时报错如下:
ERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts.
launchpadlib 1.10.13 requires testresources, which is not installed.
这里说明我们要更新 numpy 版本,然后按照提示安装 launchpadlib 后再安装:
pip3 install --upgrade numpy
pip3 install launchpadlib
这里由于我们是使用 python 语言进行开发,苏哟一这里最重要的就是安装 python3 ,其他环境安装如下:
sudo apt-get update &&
sudo apt-get install wget software-properties-common &&
sudo add-apt-repository ppa:ubuntu-toolchain-r/test &&
wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key|sudo apt-key add - &&
sudo apt-add-repository "deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial-8 main" &&
sudo apt-get update
这里不同系统版本对应不同的安装指令,可以去官网进行查看:How to build Carla on Ubuntu ,这里我们使用的是 Ubuntu 20.04 版本,命令如下:
sudo apt-add-repository "deb http://apt.llvm.org/focal/ llvm-toolchain-focal main"
sudo apt-get install build-essential clang-10 lld-10 g++-7 cmake ninja-build libvulkan1 python python-dev python3-dev python3-pip libpng-dev libtiff5-dev libjpeg-dev tzdata sed curl unzip autoconf libtool rsync libxml2-dev git
sudo update-alternatives --install /usr/bin/clang++ clang++ /usr/lib/llvm-10/bin/clang++ 180 &&
sudo update-alternatives --install /usr/bin/clang clang /usr/lib/llvm-10/bin/clang 180
由于 Carla 是基于 UE4 引擎进行开发的,所以在安装 Carla 前最终要的一步就是安装 UE4 ,这里在 CALAR 0.9.12 以后的版本使用的引擎是 Unreal Engine 4.26 。在安装 Carla 之前要安装好 Unreal Engine 4.26 。安装之前需要保证你的 github 账户和 Unreal Engine 账户连接。 连接方法可以参考下面链接:
https://www.unrealengine.com/en-US/ue-on-github
然后在这里我们需要点击 Follow:
如果这里没有点击,就不显示 UE4 源码仓库,无法 git clone 下载
除了两个账户之间的连接之外,还需要注意的是 git clone 过程中需要用 github 账户登入,但 github 从 2021 年开始不支持这种登入方式,需要设置个人密钥。github 的个人密钥设置有两种: fine-grained token 和 classic token,有些在使用 git clone 的时候没有提示要登陆,就跳过这部分。设置方法参考:
其实这里的意思就是用 token 代替密码使用,参考如下博客配置 token:
https://blog.csdn.net/qq_41646249/article/details/119777084
开始安装 UE4 :
git clone --depth 1 -b carla https://github.com/CarlaUnreal/UnrealEngine.git ~/UnrealEngine_4.26
UE4 下载速度根据网络会有波动,耐心等待
如果执行 git clone 命令出现如下报错:
fatal: 无法访问 'https://github.com/CarlaUnreal/UnrealEngine.git/':GnuTLS recv error (-110): The TLS connection was non-properly terminated.
需要执行如下操作来关掉 SSL :
apt-get install gnutls-bin
git config --global http.sslVerify false
git config --global http.postBuffer 1048576000
编译 UE4
cd ~/UnrealEngine_4.26
./Setup.sh && ./GenerateProjectFiles.sh && make
编译时间较长,需要耐心等待,如果在编译的过程中出现 register ubreal engine file types 的窗口,直接关掉即可
编译完成后,我们需要检查是否安装完成,使用如下命令:
cd ~/UnrealEngine_4.26/Engine/Binaries/Linux && ./UE4Editor
如果成功打开并运行 UE4 就说明已经安装成功了
安装完,要把 UnrealEngine 的路径添加到 ~/.bashrc 中:
sudo gedit ~/.bashrc
打开后在最后一行添加:
export UE4_ROOT=~/UnrealEngine_4.26
我们在一开始就已经下载了 ubuntu 对应的 Carla 的安装包,这里我们在 Home 目录下新建一个 CARLA 文件夹,并将刚下载好的压缩包解压到这个文件夹下,解压后如下:
按照官方给出的要求运行命令:
pip install carla
pip3 install carla
安装完成直接运行如下命令测试:
cd ~/CARLA/CARLA_0.9.14
sudo ./CarlaUE4.sh
如果报错如下:
CARLA/CARLA_0.9.13/CarlaUE4/Binaries/Linux/CarlaUE4-Linux-Shipping: error while loading shared libraries: libomp.so.5: cannot open shared object file: No such file or directory
执行如下命令即可:
sudo apt-get install libomp5
如果在运行的时候命令行出现如下内容:
MESA-INTEL: warning: Performance support disabled, consider syscrl dev. i9q5.perf_stream_paranoid=0
说明 Carla 强制使用核显,这里我们要使用如下命令来使用独显:
sudo ./CarlaUE4.sh -prefernvidia
将弹出一个包含城市视图的窗口。 这是旁观者的观点。 要在城市中飞行,请使用鼠标和 WASD 键,按住鼠标右键来控制方向。
这是服务器模拟器,它现在正在运行并等待客户端连接并与世界交互。 您可以尝试一些示例脚本来为城市注入生命并驾驶汽车:
# Terminal A
cd PythonAPI\examples
python3 -m pip install -r requirements.txt # Support for Python2 is provided in the CARLA release packages
python3 generate_traffic.py
# Terminal B
cd PythonAPI\examples
python3 manual_control.py
这里由于对显卡的要求比较高,所以这里可以通过命令设置来解决一些 Carla 的卡顿问题
~/CARLA/CARLA_0.9.13$ ./CarlaUE4.sh -prefernvidia -quality-level=Low -benchmark -fps=15
-prefernvidia:使用NVIDIA显卡启动
-quality-level=Low:调低渲染水平
-benchmark -fps=15:引擎以1/15秒的固定时间逐步运行
这里如果还是很卡,可以隐藏房屋建筑,仅留下道路,减少显卡渲染的任务量
方法:Shift+V 全选建筑物 Shift+B 隐藏所有建筑物
还有以下其余可使用的配置选项:
配置选项可用:
carla-rpc-port=N:侦听端口 N 处的客户端连接。默认情况下,流式端口 Streaming port 设置为 N+1
carla-streaming-port=N:指定用于传感器数据流的端口。 使用 0 获取随机未使用的端口。 第二个端口将自动设置为 N + 1
quality-level={Low,Epic}:更改图形质量级别
-carla-server:让 carla以服务的方式运行
-benchmark -fps=15:引擎以1/15秒的固定时间逐步运行
-windowed -ResX=800 -ResY=600:屏幕窗口大小
我想为Heroku构建一个Rails3应用程序。他们使用Postgres作为他们的数据库,所以我通过MacPorts安装了postgres9.0。现在我需要一个postgresgem并且共识是出于性能原因你想要pggem。但是我对我得到的错误感到非常困惑当我尝试在rvm下通过geminstall安装pg时。我已经非常明确地指定了所有postgres目录的位置可以找到但仍然无法完成安装:$envARCHFLAGS='-archx86_64'geminstallpg--\--with-pg-config=/opt/local/var/db/postgresql90/defaultdb/po
我打算为ruby脚本创建一个安装程序,但我希望能够确保机器安装了RVM。有没有一种方法可以完全离线安装RVM并且不引人注目(通过不引人注目,就像创建一个可以做所有事情的脚本而不是要求用户向他们的bash_profile或bashrc添加一些东西)我不是要脚本本身,只是一个关于如何走这条路的快速指针(如果可能的话)。我们还研究了这个很有帮助的问题:RVM-isthereawayforsimpleofflineinstall?但有点误导,因为答案只向我们展示了如何离线在RVM中安装ruby。我们需要能够离线安装RVM本身,并查看脚本https://raw.github.com/wayn
我有一个奇怪的问题:我在rvm上安装了rubyonrails。一切正常,我可以创建项目。但是在我输入“railsnew”时重新启动后,我有“程序'rails'当前未安装。”。SystemUbuntu12.04ruby-v"1.9.3p194"gemlistactionmailer(3.2.5)actionpack(3.2.5)activemodel(3.2.5)activerecord(3.2.5)activeresource(3.2.5)activesupport(3.2.5)arel(3.0.2)builder(3.0.0)bundler(1.1.4)coffee-rails(
我刚刚为fedora安装了emacs。我想用emacs编写ruby。为ruby提供代码提示、代码完成类型功能所需的工具、扩展是什么? 最佳答案 ruby-mode已经包含在Emacs23之后的版本中。不过,它也可以通过ELPA获得。您可能感兴趣的其他一些事情是集成RVM、feature-mode(Cucumber)、rspec-mode、ruby-electric、inf-ruby、rinari(用于Rails)等。这是我当前用于Ruby开发的Emacs配置:https://github.com/citizen428/emacs
我正在尝试在我的centos服务器上安装therubyracer,但遇到了麻烦。$geminstalltherubyracerBuildingnativeextensions.Thiscouldtakeawhile...ERROR:Errorinstallingtherubyracer:ERROR:Failedtobuildgemnativeextension./usr/local/rvm/rubies/ruby-1.9.3-p125/bin/rubyextconf.rbcheckingformain()in-lpthread...yescheckingforv8.h...no***e
我的最终目标是安装当前版本的RubyonRails。我在OSXMountainLion上运行。到目前为止,这是我的过程:已安装的RVM$\curl-Lhttps://get.rvm.io|bash-sstable检查已知(我假设已批准)安装$rvmlistknown我看到当前的稳定版本可用[ruby-]2.0.0[-p247]输入命令安装$rvminstall2.0.0-p247注意:我也试过这些安装命令$rvminstallruby-2.0.0-p247$rvminstallruby=2.0.0-p247我很快就无处可去了。结果:$rvminstall2.0.0-p247Search
我实际上是在尝试使用RVM在我的OSX10.7.5上更新ruby,并在输入以下命令后:rvminstallruby我得到了以下回复:Searchingforbinaryrubies,thismighttakesometime.Checkingrequirementsforosx.Installingrequirementsforosx.Updatingsystem.......Errorrunning'requirements_osx_brew_update_systemruby-2.0.0-p247',pleaseread/Users/username/.rvm/log/138121
由于fast-stemmer的问题,我很难安装我想要的任何rubygem。我把我得到的错误放在下面。Buildingnativeextensions.Thiscouldtakeawhile...ERROR:Errorinstallingfast-stemmer:ERROR:Failedtobuildgemnativeextension./System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/rubyextconf.rbcreatingMakefilemake"DESTDIR="cleanmake"DESTDIR=
当我尝试安装Ruby时遇到此错误。我试过查看this和this但无济于事➜~brewinstallrubyWarning:YouareusingOSX10.12.Wedonotprovidesupportforthispre-releaseversion.Youmayencounterbuildfailuresorotherbreakages.Pleasecreatepull-requestsinsteadoffilingissues.==>Installingdependenciesforruby:readline,libyaml,makedepend==>Installingrub
我试过重新启动apache,缓存的页面仍然出现,所以一定有一个文件夹在某个地方。我没有“公共(public)/缓存”,那么我还应该查看哪些其他地方?是否有一个URL标志也可以触发此效果? 最佳答案 您需要触摸一个文件才能清除phusion,例如:touch/webapps/mycook/tmp/restart.txt参见docs 关于ruby-如何在Ubuntu中清除RubyPhusionPassenger的缓存?,我们在StackOverflow上找到一个类似的问题: