From 77f5197ee3ac5de20ac688ab31c992e5d24be39f Mon Sep 17 00:00:00 2001 From: Stuart Alldritt Date: Fri, 21 Jun 2019 13:37:17 -0700 Subject: [PATCH] Update documentation and license headers (#13) --- CONTRIBUTING.md | 5 ++-- README.md | 11 +++++--- docs/building.md | 51 +++++++++++++------------------------- docs/usage.md | 8 ++---- launch/driver.launch | 6 +++++ launch/slam_rtabmap.launch | 5 ++++ 6 files changed, 39 insertions(+), 47 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index d1b9a73..4a57ed0 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -52,7 +52,6 @@ why you have chosen a particular solution. Describe any manual testing you perfo * **DO NOT** submit a PR unless it is linked to an Issue marked Triage Approved. This enables us to have a discussion on the idea before anyone invests time in an implementation. * **DO NOT** merge multiple changes into one PR unless they have the same root cause. -* **DO NOT** submit pure formatting/typo changes to code that has not been modified otherwise. **NOTE:** *Submitting a pull request for an approved Issue is not a guarantee it will be approved.* @@ -77,7 +76,7 @@ start a conversation with the Azure Kinect Team to get the Issue Triage Approved 1) Test the change using Azure Kinect hardware on a live ROS system. 1) Create a pull request. * The PR description must reference the issue. -1) An Azure Kinect ROS Driver team member will review the change. See the [review process](#review-process) for more information. +1) An Azure Kinect team member will review the change. See the [review process](#review-process) for more information. * 1 team member must sign off on the change. * Other reviewers are welcome. 1) After the change has been reviewed by a team member, the PR will be submitted to the Azure Kinect CI system for official build and testing. @@ -96,7 +95,7 @@ participate in the review, but at least one member of the team will ultimately a the request. Often, multiple iterations will be needed to respond to feedback from reviewers. Try looking at -[past pull requests](https://github.com/Microsoft/Azure-Kinect-Sensor-SDK/pulls?q=is%3Apr+is%3Aclosed) to see what the +[past pull requests](https://github.com/Microsoft/Azure_Kinect_ROS_Driver/pulls?q=is%3Apr+is%3Aclosed) to see what the experience might be like. After at least one member of the Azure Kinect team has approved your request, it will be merged by a member of the Azure diff --git a/README.md b/README.md index 13f0e7b..3b78354 100644 --- a/README.md +++ b/README.md @@ -2,6 +2,8 @@ This project is a ROS node which publishes sensor data from the Azure Kinect Developer Kit. Developers working with ROS can use this node to connect an Azure Kinect Developer Kit to an existing ROS installation. +This repository uses the [Azure Kinect Sensor SDK](https://github.com/microsoft/Azure-Kinect-Sensor-SDK) to communicate with the Azure Kinect hardware. + ## Features This ROS node outputs a variety of sensor data, including: @@ -11,13 +13,14 @@ This ROS node outputs a variety of sensor data, including: - Rectified depth Images in the color camera resolution - Rectified color Images in the depth camera resolution - The IMU sensor stream +- A TF2 model representing the extrinsic calibration of the camera The camera is fully configurable using a variety of options which can be specified in ROS launch files or on the command line. -However, this node does ***not*** expose all the sensor data from the Azure Kinect. It does not provide access to: +However, this node does ***not*** expose all the sensor data from the Azure Kinect Sensor SDK. It does not provide access to: - Skeleton tracking data -- Microphone array data +- Microphone array For more information about how to use the node, please see the [usage guide](docs/usage.md). @@ -29,8 +32,8 @@ For information on how to contribute, please see our [contributing guide](CONTRI ## Building -The Azure Kinect ROS Driver uses catkin to build. For instructions on how to build the project please see -[building](docs/building.md). +The Azure Kinect ROS Driver uses catkin to build. For instructions on how to build the project please see the +[building guide](docs/building.md). ## Join Our Developer Program diff --git a/docs/building.md b/docs/building.md index d5fb879..53bca40 100644 --- a/docs/building.md +++ b/docs/building.md @@ -7,49 +7,32 @@ Before trying to build the Azure Kinect ROS Driver, you will need to install two - ROS Melodic (Ubuntu or Windows 10) - Azure Kinect Sensor SDK -## Dependency Set Up +### ROS -1. Install ROS Melodic - - Follow the [installation instructions](https://wiki.ros.org/Installation) for your operating system of choice: [Ubuntu](https://wiki.ros.org/Installation/Ubuntu), or [Windows](https://wiki.ros.org/Installation/Windows) - -2. Install the Azure Kinect Sensor SDK - - Ubuntu - 1. Download the package and repository signing key +Follow the [installation instructions](https://wiki.ros.org/Installation) for your operating system of choice: [Ubuntu](https://wiki.ros.org/Installation/Ubuntu), or [Windows](https://wiki.ros.org/Installation/Windows) to install ROS. Verify that ROS is working and that you can build sample projects in your catkin workspace before trying to build the Azure Kinect ROS Driver. - ``` - curl https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > microsoft.gpg - ``` +### Azure Kinect Sensor SDK - 1. Install the key - - ``` - sudo install -o root -g root -m 644 microsoft.gpg /etc/apt/trusted.gpg.d/ - ``` +Follow the [installation instructions](https://github.com/microsoft/Azure-Kinect-Sensor-SDK/blob/develop/docs/usage.md#Installation) in the Azure Kinect Sensor SDK repo to install the sensor SDK for your platform. - 1. Add the packages.microsoft.com ubuntu 18.04 repo to your packages list - - ``` - sudo sh -c 'echo "deb [arch=amd64] https://packages.microsoft.com/repos/ microsoft-ubuntu-bionic-prod/ bionic main" > /etc/apt/sources.list.d/ microsoft-ubuntu-bionic-prod.list' - ``` - - 1. Update your package list +The Azure Kinect ROS Driver includes CMake files which will try to locate the installed location of the Azure Kinect Sensor SDK. Installing the SDK in a non-default location will result in compile failures when CMake is unable to locate the SDK. - ``` - sudo apt-get update - ``` - - 1. Install the k4a development package +The Azure Kinect ROS Driver requires version of v1.1.0 of the Azure Kinect Sensor SDK to compile. - ``` - sudo apt-get install libk4a1.1-dev k4a-tools - ``` +#### Alternate SDK Installation - - Windows - 1. Download and install the Azure Kinect Sensor SDK installer from the [Azure Kinect Sensor SDK project](https://github.com/microsoft/Azure-Kinect-Sensor-SDK) +Instead of installing the Azure Kinect Sensor SDK to the system path (using the `.msi` installer on Windows or the `.deb` installer on Ubuntu) you can extract the SDK the `.\ext\sdk` folder. You should have the following folder structure after extracting the SDK into `.\ext\sdk`: -## Alternate SDK Installation +``` +.\ext\sdk\ + bin\ + include\ + lib\ +``` -Instead of installing the Azure Kinect Sensor SDK to the system path (using the `.msi` installer on Windows or the `.deb` installer on Ubuntu) you can extract the SDK the `.\ext\sdk` folder. +Please note that the Azure Kinect Sensor SDK zip files do not generally contain the depth engine shared library. You will need to acquire a version of the depth engine shared library binary and place it in the .\ext\sdk\bin folder so that it can be consumed by the build system. Failing to download the depth engine when using an extracted SDK will result in the node crashing on launch. + +For more information, please consult the [Azure Kinect Sensor SDK usage guide](https://github.com/microsoft/Azure-Kinect-Sensor-SDK/blob/develop/docs/usage.md). ## Compiling diff --git a/docs/usage.md b/docs/usage.md index 051b46f..3694876 100644 --- a/docs/usage.md +++ b/docs/usage.md @@ -2,13 +2,9 @@ The Azure Kinect ROS Driver node exposes Azure Kinect sensor streams to ROS. -## SDK Setup +## Setup and Building -Follow the [installation instructions](https://github.com/microsoft/Azure-Kinect-Sensor-SDK/blob/develop/docs/usage.md#Installation) in the Azure Kinect Sensor SDK repo to install the sensor SDK for your platform. - -This project includes CMake files which will try to locate the installed location of the Azure Kinect Sensor SDK. Installing the SDK in a non-default location will result in compile failures when CMake is unable to locate the SDK. - -The Azure Kinect ROS Driver requires version of v1.1.0 of the Azure Kinect Sensor SDK to compile. +Please see the [building guide](building.md). ### Parameters diff --git a/launch/driver.launch b/launch/driver.launch index 5abeae8..65bd98e 100644 --- a/launch/driver.launch +++ b/launch/driver.launch @@ -1,3 +1,9 @@ + + + diff --git a/launch/slam_rtabmap.launch b/launch/slam_rtabmap.launch index 19bd836..50a89c9 100644 --- a/launch/slam_rtabmap.launch +++ b/launch/slam_rtabmap.launch @@ -1,3 +1,8 @@ + +