Skip to content

Commit

Permalink
updated documentation, updated perception_pcl
Browse files Browse the repository at this point in the history
removed some useless files
  • Loading branch information
NeilNie committed Mar 30, 2019
1 parent d77a965 commit fa85fc1
Show file tree
Hide file tree
Showing 134 changed files with 125 additions and 703 deletions.
84 changes: 0 additions & 84 deletions CHECKLIST.md

This file was deleted.

31 changes: 3 additions & 28 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,10 @@

# Introduction

Welcome! This is an open source self-driving development platform aimed for rapid prototyping, deep learning and robotics research. The system currently runs on a modified electric golf cart, but the code could work on a real car as well. Here are our goals:
Welcome! This is an open source self-driving development platform aimed for rapid prototyping, deep learning, and robotics research. The system currently runs on a modified electric golf cart. Here are our goals:

### Goals:
Research and develop a deep learning-driven self-driving car. The vehicle should be able to navigate autonomously between locations within a geofenced area.
Research and develop a deep learning-driven self-driving car. The vehicle should be able to achieve level 4 autonomy within a geofenced area.

#### The modules in this project.

Expand All @@ -19,8 +19,7 @@ Research and develop a deep learning-driven self-driving car. The vehicle should
4. Drive by Wire (DBW)
5. Localization 🛰️ (currently with GPS)
6. CARLA simulator integration

Stereoscopic vision system coming soon...
7. ZED stereoscopic vision system

For the full documentation of the development process, please visit my website: [www.neilnie.com](https://www.neilnie.com)

Expand Down Expand Up @@ -110,30 +109,6 @@ Furthermore, we are relying on OSM (Open Street Map) data for navigation. OSM ma

Coming soon...

# What's next?

#### Phase 1

We have completed phase 1 of the development process, which mainly includes:

- Drive-by-wire system.
- Autonomous steering system with deep learning
- Basic obstacle avoidance system using segmentation & detection

As you might have realized, all of these above are focused on computer vision and deep learning. Currently, the vehicle can navigate autonomously in a controlled outdoor environment for about 1000 feet, swiftly avoiding obstacles and stopping for pedistrians.

#### Phase 2

For the second phase of the development process, we will focus on making the system safer and more reliable. Basic plans include:

- Implement a localization system.
- Write a path planner.
- Collect more data in our geofenced enviroment. ✅
- Improve the computer hardware. ✅
- Improve the sensor system.

We are keeping track of all our progress here [CHECKLIST](./CHECKLIST.md).

# Contact / Info
If you are interested in the detailed development process of this project, you can visit Neil's blog at [neilnie.com](https://neilnie.com) to find out more about it. Neil will make sure to keep you posted about all of the latest development on the club.

Expand Down
Binary file modified ros/.DS_Store
Binary file not shown.
Empty file removed ros/__init__.py
Empty file.
1 change: 1 addition & 0 deletions ros/src/perception_pcl/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
*.pyc
89 changes: 89 additions & 0 deletions ros/src/perception_pcl/.travis.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,89 @@
#!/bin/bash

set -e

function travis_time_start {
set +x
TRAVIS_START_TIME=$(date +%s%N)
TRAVIS_TIME_ID=$(cat /dev/urandom | tr -dc 'a-z0-9' | fold -w 8 | head -n 1)
TRAVIS_FOLD_NAME=$1
echo -e "\e[0Ktraivs_fold:start:$TRAVIS_FOLD_NAME"
echo -e "\e[0Ktraivs_time:start:$TRAVIS_TIME_ID"
set -x
}
function travis_time_end {
set +x
_COLOR=${1:-32}
TRAVIS_END_TIME=$(date +%s%N)
TIME_ELAPSED_SECONDS=$(( ($TRAVIS_END_TIME - $TRAVIS_START_TIME)/1000000000 ))
echo -e "traivs_time:end:$TRAVIS_TIME_ID:start=$TRAVIS_START_TIME,finish=$TRAVIS_END_TIME,duration=$(($TRAVIS_END_TIME - $TRAVIS_START_TIME))\n\e[0K"
echo -e "traivs_fold:end:$TRAVIS_FOLD_NAME"
echo -e "\e[0K\e[${_COLOR}mFunction $TRAVIS_FOLD_NAME takes $(( $TIME_ELAPSED_SECONDS / 60 )) min $(( $TIME_ELAPSED_SECONDS % 60 )) sec\e[0m"
set -x
}

# Default configuration
test "$NOT_TEST_INSTALL" = "" && export NOT_TEST_INSTALL=false

# Mainly for https://github.com/ros-perception/perception_pcl/pull/197#issuecomment-386056906
export DEBIAN_FRONTEND=noninteractive

apt-get update -qq && apt-get install -qq -y -q wget sudo lsb-release gnupg # for docker

# Setup ccache
apt-get install -qq -y -q ccache
export PATH=/usr/lib/ccache:$PATH

travis_time_start setup.before_install
#before_install:
# Define some config vars.
# Install ROS
sudo sh -c "echo \"deb http://packages.ros.org/ros-shadow-fixed/ubuntu `lsb_release -cs` main\" > /etc/apt/sources.list.d/ros-latest.list"
wget http://packages.ros.org/ros.key -O - | sudo apt-key add -
sudo apt-get update -qq
# Install ROS
sudo -E apt-get install -qq -y python-catkin-pkg python-catkin-tools python-rosdep python-wstool ros-$ROS_DISTRO-catkin
source /opt/ros/$ROS_DISTRO/setup.bash
# Setup for rosdep
sudo rosdep init
rosdep update
travis_time_end

travis_time_start setup.install
# Create a catkin workspace with the package under test.
#install:
mkdir -p ~/catkin_ws/src

# Add the package under test to the workspace.
cd ~/catkin_ws/src
ln -s $CI_SOURCE_PATH . # Link the repo we are testing to the new workspace
travis_time_end

travis_time_start setup.before_script
# Install all dependencies, using wstool and rosdep.
# wstool looks for a ROSINSTALL_FILE defined in before_install.
#before_script:
# source dependencies: install using wstool.
cd ~/catkin_ws/src
wstool init
wstool up

# package depdencies: install using rosdep.
cd ~/catkin_ws
rosdep install -q -y -r --from-paths src --ignore-src --rosdistro $ROS_DISTRO --os $DOCKER_IMAGE
travis_time_end

travis_time_start setup.script
# Compile and test.
#script:
source /opt/ros/$ROS_DISTRO/setup.bash
cd ~/catkin_ws
catkin build -p1 -j1
catkin run_tests -p1 -j1
catkin_test_results --all build
if [ "$NOT_TEST_INSTALL" != "true" ]; then
catkin clean -b --yes
catkin config --install
catkin build -p1 -j1
fi
travis_time_end
32 changes: 32 additions & 0 deletions ros/src/perception_pcl/.travis.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
sudo: false
dist: trusty
language: generic
services:
- docker
cache: ccache
env:
matrix:
# Test the target distro.
- ROS_DISTRO=melodic DOCKER_IMAGE=debian:stretch
- ROS_DISTRO=melodic DOCKER_IMAGE=ubuntu:artful
- ROS_DISTRO=melodic DOCKER_IMAGE=ubuntu:bionic
# To test backward compatibility for users who build from source.
- ROS_DISTRO=lunar DOCKER_IMAGE=debian:stretch NOT_TEST_INSTALL=true
- ROS_DISTRO=lunar DOCKER_IMAGE=ubuntu:xenial NOT_TEST_INSTALL=true
- ROS_DISTRO=kinetic DOCKER_IMAGE=debian:jessie NOT_TEST_INSTALL=true
- ROS_DISTRO=kinetic DOCKER_IMAGE=ubuntu:xenial NOT_TEST_INSTALL=true
- ROS_DISTRO=indigo DOCKER_IMAGE=ubuntu:trusty NOT_TEST_INSTALL=true
# Install system dependencies, namely ROS.
before_install:
# Define some config vars.
- export CI_SOURCE_PATH=$(pwd)
- export REPOSITORY_NAME=${PWD##*/}
script:
- echo "Testing branch $TRAVIS_BRANCH of $REPOSITORY_NAME"
- docker run --rm -i -v $CI_SOURCE_PATH:$CI_SOURCE_PATH -v $HOME:$HOME -e "CI_SOURCE_PATH=$CI_SOURCE_PATH" -e "HOME=$HOME" -e "ROS_DISTRO=$ROS_DISTRO" -e "ROS_PARALLEL_JOBS=$ROS_PARALLEL_JOBS" -e "DOCKER_IMAGE=$DOCKER_IMAGE" -t $DOCKER_IMAGE sh -c "cd $CI_SOURCE_PATH; ./.travis.sh"
after_failure:
- find ${HOME}/.ros/test_results -type f -exec echo "== {} ==" \; -exec cat {} \;
- for file in ${HOME}/.ros/log/rostest-*; do echo "=== $file ==="; cat $file; done
branches:
only:
- /.*-devel$/
Empty file modified ros/src/perception_pcl/README.md
100644 → 100755
Empty file.
Empty file modified ros/src/perception_pcl/pcl_conversions/CHANGELOG.rst
100644 → 100755
Empty file.
Empty file modified ros/src/perception_pcl/pcl_conversions/CMakeLists.txt
100644 → 100755
Empty file.
Empty file modified ros/src/perception_pcl/pcl_conversions/README.rst
100644 → 100755
Empty file.
Empty file.
Empty file modified ros/src/perception_pcl/pcl_conversions/package.xml
100644 → 100755
Empty file.
Empty file.
Empty file modified ros/src/perception_pcl/pcl_ros/CHANGELOG.rst
100644 → 100755
Empty file.
Empty file modified ros/src/perception_pcl/pcl_ros/CMakeLists.txt
100644 → 100755
Empty file.
Empty file modified ros/src/perception_pcl/pcl_ros/cfg/SACSegmentation_common.py
100644 → 100755
Empty file.
Binary file not shown.
Empty file modified ros/src/perception_pcl/pcl_ros/cfg/common.py
100644 → 100755
Empty file.
Binary file removed ros/src/perception_pcl/pcl_ros/cfg/common.pyc
Binary file not shown.
Empty file.
Empty file.
Empty file modified ros/src/perception_pcl/pcl_ros/include/pcl_ros/features/fpfh.h
100644 → 100755
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file modified ros/src/perception_pcl/pcl_ros/include/pcl_ros/features/pfh.h
100644 → 100755
Empty file.
Empty file.
Empty file modified ros/src/perception_pcl/pcl_ros/include/pcl_ros/features/shot.h
100644 → 100755
Empty file.
Empty file.
Empty file modified ros/src/perception_pcl/pcl_ros/include/pcl_ros/features/vfh.h
100644 → 100755
Empty file.
Empty file.
Empty file.
Empty file modified ros/src/perception_pcl/pcl_ros/include/pcl_ros/filters/filter.h
100644 → 100755
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file modified ros/src/perception_pcl/pcl_ros/include/pcl_ros/io/bag_io.h
100644 → 100755
Empty file.
Empty file.
Empty file.
Empty file modified ros/src/perception_pcl/pcl_ros/include/pcl_ros/io/pcd_io.h
100644 → 100755
Empty file.
Empty file modified ros/src/perception_pcl/pcl_ros/include/pcl_ros/pcl_nodelet.h
100644 → 100755
Empty file.
Empty file modified ros/src/perception_pcl/pcl_ros/include/pcl_ros/point_cloud.h
100644 → 100755
Empty file.
Empty file modified ros/src/perception_pcl/pcl_ros/include/pcl_ros/publisher.h
100644 → 100755
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file modified ros/src/perception_pcl/pcl_ros/include/pcl_ros/transforms.h
100644 → 100755
Empty file.
Empty file modified ros/src/perception_pcl/pcl_ros/package.xml
100644 → 100755
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
2 changes: 0 additions & 2 deletions ros/src/perception_pcl/pcl_ros/samples/data/.gitignore

This file was deleted.

Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file modified ros/src/perception_pcl/pcl_ros/src/pcl_ros/__init__.py
100644 → 100755
Empty file.
Empty file.
Empty file modified ros/src/perception_pcl/pcl_ros/src/pcl_ros/features/feature.cpp
100644 → 100755
Empty file.
Empty file modified ros/src/perception_pcl/pcl_ros/src/pcl_ros/features/fpfh.cpp
100644 → 100755
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file modified ros/src/perception_pcl/pcl_ros/src/pcl_ros/features/pfh.cpp
100644 → 100755
Empty file.
Empty file.
Empty file modified ros/src/perception_pcl/pcl_ros/src/pcl_ros/features/shot.cpp
100644 → 100755
Empty file.
Empty file.
Empty file modified ros/src/perception_pcl/pcl_ros/src/pcl_ros/features/vfh.cpp
100644 → 100755
Empty file.
Empty file modified ros/src/perception_pcl/pcl_ros/src/pcl_ros/filters/crop_box.cpp
100644 → 100755
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file modified ros/src/perception_pcl/pcl_ros/src/pcl_ros/filters/filter.cpp
100644 → 100755
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file modified ros/src/perception_pcl/pcl_ros/src/pcl_ros/io/bag_io.cpp
100644 → 100755
Empty file.
Empty file.
Empty file.
Empty file modified ros/src/perception_pcl/pcl_ros/src/pcl_ros/io/io.cpp
100644 → 100755
Empty file.
Empty file modified ros/src/perception_pcl/pcl_ros/src/pcl_ros/io/pcd_io.cpp
100644 → 100755
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file modified ros/src/perception_pcl/pcl_ros/src/pcl_ros/surface/surface.cpp
100644 → 100755
Empty file.
Empty file.
Empty file modified ros/src/perception_pcl/pcl_ros/src/transforms.cpp
100644 → 100755
Empty file.
Empty file.
Empty file modified ros/src/perception_pcl/pcl_ros/tools/bag_to_pcd.cpp
100644 → 100755
Empty file.
Empty file modified ros/src/perception_pcl/pcl_ros/tools/convert_pcd_to_image.cpp
100644 → 100755
Empty file.
Empty file.
Empty file modified ros/src/perception_pcl/pcl_ros/tools/pcd_to_pointcloud.cpp
100644 → 100755
Empty file.
Empty file modified ros/src/perception_pcl/pcl_ros/tools/pointcloud_to_pcd.cpp
100644 → 100755
Empty file.
Empty file modified ros/src/perception_pcl/perception_pcl/CHANGELOG.rst
100644 → 100755
Empty file.
Empty file modified ros/src/perception_pcl/perception_pcl/CMakeLists.txt
100644 → 100755
Empty file.
Empty file modified ros/src/perception_pcl/perception_pcl/package.xml
100644 → 100755
Empty file.
Binary file not shown.
Binary file not shown.
21 changes: 0 additions & 21 deletions ros/src/sensors/zed-ros-wrapper/zed_display_rviz/README.md

This file was deleted.

This file was deleted.

0 comments on commit fa85fc1

Please sign in to comment.