Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
24 changes: 23 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,28 @@ The implementation includes a global planner based on a RRT* in the Dubins Airpl
<img src="https://github.com/ethz-asl/terrain-navigation/assets/5248102/90e43b60-ea8c-49db-9fb3-257b145fc35c" alt="overview">
</p>

## Paper and Video
If you find this package useful in an academic context, please consider citing the paper

- J. Lim, F. Achermann, R. Girod, N. Lawrance and R. Siegwart, "Safe Low-Altitude Navigation in Steep Terrain With Fixed-Wing Aerial Vehicles," in IEEE Robotics and Automation Letters, vol. 9, no. 5, pp. 4599-4606, May 2024, doi: 10.1109/LRA.2024.3368800
. [[paper](https://ieeexplore.ieee.org/abstract/document/10443502)] [[video](https://youtu.be/7C5SsRn_L5Q?si=cMNtX16F1aFNrV8_)]

```
@article{lim2024safe,
title={Safe Low-Altitude Navigation in Steep Terrain With Fixed-Wing Aerial Vehicles},
author={Lim, Jaeyoung and Achermann, Florian and Girod, Rik and Lawrance, Nicholas and Siegwart, Roland},
journal={IEEE Robotics and Automation Letters},
year={2024},
volume={9},
number={5},
pages={4599-4606},
doi={10.1109/LRA.2024.3368800}}
```

<p align="center">
<img src="https://github.com/user-attachments/assets/c3723ce4-83a6-44f0-b008-bdba7c189055" alt="fieldtests">
</p>

## Setup

### Setting up the Build Environment using Docker
Expand Down Expand Up @@ -75,7 +97,7 @@ First set up the PX4 development environment:
```bash
git clone https://github.com/srmainwaring/PX4-AutoPilot --branch prs/pr-hinwil-testing-rebased --recursive
cd PX4-AutoPilot
./Tools/setup/ubuntu.sh
./Tools/setup/ubuntu.sh --no-nuttx
```

Now, configure the shell environment to run `gz_standard_vtol`.
Expand Down
4 changes: 2 additions & 2 deletions Tools/fix_code_style.sh
Original file line number Diff line number Diff line change
Expand Up @@ -13,9 +13,9 @@ fi
for arg in "$@"
do
if [ -f $arg ]; then
clang-format-6.0 -i -style='{BasedOnStyle: google, ColumnLimit: 120}' $arg
clang-format -i -style='{BasedOnStyle: google, ColumnLimit: 120}' $arg
elif [ -d $arg ]; then
find $arg -iname '*.h' -o -iname '*.cpp' -o -iname '*.hpp' | xargs clang-format-6.0 -i -style='{BasedOnStyle: google, ColumnLimit: 120}'
find $arg -iname '*.h' -o -iname '*.cpp' -o -iname '*.hpp' | xargs clang-format -i -style='{BasedOnStyle: google, ColumnLimit: 120}'
find $arg -iname '*.h' -o -iname '*.cpp' -o -iname '*.hpp' | xargs chmod 644
fi
done
6 changes: 3 additions & 3 deletions docker/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# https://github.com/osrf/docker_images/blob/27cc0b68263bbbb10bb58dd814efc0a6b0a01ec7/ros/humble/ubuntu/jammy/ros-core/Dockerfile
FROM ros:humble-ros-core-jammy as repo-deps
FROM ros:humble-ros-core-jammy AS repo-deps
# This layer installs basic tools and the direct dependencies of terrain-navigation.

SHELL ["/bin/bash", "-c"]
Expand Down Expand Up @@ -29,7 +29,7 @@ RUN apt-get update \
&& rm -rf /var/lib/apt/lists/*


FROM repo-deps as all-deps
FROM repo-deps AS all-deps
# This layer installs dependencies of the other source packages.

COPY terrain-navigation.repos src/ethz-asl/terrain-navigation/terrain-navigation.repos
Expand All @@ -44,7 +44,7 @@ RUN apt-get update \
&& rosdep install --from-paths src --ignore-src -r -y \
&& rm -rf /var/lib/apt/lists/*

FROM all-deps as build
FROM all-deps AS build

WORKDIR /root/ros2_ws/src/ethz-asl/terrain-navigation
COPY . .
Expand Down
4 changes: 0 additions & 4 deletions terrain-navigation.repos
Original file line number Diff line number Diff line change
@@ -1,8 +1,4 @@
repositories:
ANYbotics/grid_map:
type: git
url: https://github.com/ANYbotics/grid_map.git
version: humble
ethz-asl/grid_map_geo:
type: git
url: https://github.com/ethz-asl/grid_map_geo.git
Expand Down