-
Notifications
You must be signed in to change notification settings - Fork 6
Human_Activity_Anticipation_cn
EN | 中文
人类感知的一个重要方面是期待, 我们在日常活动中广泛使用, 与其他人类以及周围环境进行互动。预测人类下一步将做什么活动 (以及如何做) 可以使辅助机器人提前计划在人类环境中进行反应性反应。此外, 预期甚至可以提高过去活动的检测准确性。在这项工作中, 我们代表每一个可能的未来使用一个预期的时间条件随机域 (ATCRF), 模型的丰富的时空关系, 通过对象启示。然后, 我们认为每个 ATCRF 作为一个粒子, 并代表在潜在的未来的分布使用一组粒子
这个包已经在Ubuntu14.04系统下成功编译。
在运行这个包之前,你需要安装以下依赖项
- OpenCV version 2.4 or greater (dev version or install from source)
- PCL 1.7
- Boost version 1.50 or greater
以下是安装依赖项的命令行。本项目的代码将运行在CAD-120第三组数据集中。
# 安装 pcl 点云库
sudo add-apt-repository ppa:v-launchpad-jochen-sprickerhof-de/pcl
sudo apt-get update
sudo apt-get install libpcl-all
# 安装 opencv
sudo apt-get install libopencv-dev
#install boost 1.50
wget http://sourceforge.net/projects/boost/files/boost/1.50.0/boost_1_50_0.tar.bz2
tar --bzip2 -xf boost_1_50_0.tar.bz2
#If you prefer to install boost to a specific directory use the following instead
# ./bootstrap.sh --prefix=path/to/installation/prefix
./bootstrap.sh
./b2
sudo ./b2 install
# 下载代码
git clone https://github.com/nathantsoi/human_activity_anticipation
# 编译
cd human_activity_anticipation/build
cmake ..
make
cd ../src/pyobjs
make
#安装机器学习代码的依赖项
cd ../../
sh install_dependencies.sh
# 下载数据集
cd data/
wget http://web3.cs.cornell.edu/pr/CAD-120/data/Subject3_rgbd_rawtext.tar.gz
wget http://pr.cs.cornell.edu/humanactivities/data/Subject3_annotations.tar.gz
tar -xvzf Subject3_annotations.tar.gz
tar -xvzf Subject3_rgbd_rawtext.tar.gz
mv Subject3_rgbd_rawtext/*/*rgbd.txt .
mkdir objects
mkdir objects_tracked
cp Subject3_annotations/*/objects/* objects/
cp Subject3_annotations/*/objects_tracked/* objects_tracked/
cp Subject3_annotations/*/*.bag .
cp Subject3_annotations/*/*.txt .
cat Subject3_annotations/*/activityLabel.txt | grep -v END > activityLabel.txt
cat Subject3_annotations/*/labeling.txt > labeling.txt
# 运行代码
cd ../build/
./predict_seg ../data/ activityLabel.txt 1
等待更正
问题一. 运行代码时,你可能会遇到以下错误 COULD NOT LOAD MODULE "svmstruct_mrf_act_dyn"! perhaps module is not in module search path?
解答一. 首先,你要确认一下你是否成功运行了脚本文件install_dependencies.sh。若不成功,则需要手动通过源码安装相应版本的库。 然后,你要根据电脑中代码的存放位置,修正脚本里面的环境变量PYTHONPATH。
问题二. 关于数据集选用。
解答二.在其官网上,CAD-120共有4组数据集。经过测试,Person 1 的数据集缺失文件,所以建议选用第三组数据。 http://pr.cs.cornell.edu/humanactivities/data.php#cad120
问题三. 运行代码时,你可能会遇到以下错误 feats = concatenate((skel_sel_feats,skel_add_feats),1) numpy.core._internal.AxisError: axis 1 is out of bounds for array of dimension 1
解答三. 在早期版本的numpy中,当你运行Z = np.concatenate((X,Y),1)
,其中X和Y是一维向量,它会抛出警告
Warning: axis != 0 for ndim == 1; this will raise an error in future versions of numpy.
所以当我们使用比较新版本的numpu时,且当X和Y是一维向量时,我们应该运行Z = np.concatenate((X,Y))
.
问题四. 如何读懂这份代码?
解答四.你可以从以下网站下载相应的论文进行阅读,有助于你理解代码。 http://pr.cs.cornell.edu/humanactivities/index.php