From c50b1331ec60de12465bdadf0b12e7bd53fc58e6 Mon Sep 17 00:00:00 2001
From: ad-daniel <44834743+ad-daniel@users.noreply.github.com>
Date: Mon, 3 Jan 2022 20:27:02 +0100
Subject: [PATCH 1/9] Add automatic nightly sanity check (#192)
* Add automatic nightly check
* fix
* Add badge
* remove conditions
* Remove develop badge
* restore name
---
.../{tests_sources.yml => tests_suite.yml} | 4 +-
.github/workflows/tests_suite_develop.yml | 109 ++++++++++++++++++
README.md | 20 ++--
3 files changed, 122 insertions(+), 11 deletions(-)
rename .github/workflows/{tests_sources.yml => tests_suite.yml} (98%)
create mode 100644 .github/workflows/tests_suite_develop.yml
diff --git a/.github/workflows/tests_sources.yml b/.github/workflows/tests_suite.yml
similarity index 98%
rename from .github/workflows/tests_sources.yml
rename to .github/workflows/tests_suite.yml
index c02aed78ca..1a0ac683d1 100644
--- a/.github/workflows/tests_sources.yml
+++ b/.github/workflows/tests_suite.yml
@@ -1,8 +1,10 @@
-name: Test Sources
+name: Test Suite (master)
on:
pull_request:
types: [opened, synchronize, reopened, ready_for_review, labeled, unlabeled]
+ schedule:
+ - cron: '0 23 * * *'
defaults:
run:
diff --git a/.github/workflows/tests_suite_develop.yml b/.github/workflows/tests_suite_develop.yml
new file mode 100644
index 0000000000..46c3188938
--- /dev/null
+++ b/.github/workflows/tests_suite_develop.yml
@@ -0,0 +1,109 @@
+name: Test Suite (develop)
+
+on:
+ schedule:
+ - cron: '0 23 * * *'
+
+defaults:
+ run:
+ shell: bash
+
+jobs:
+ cleanup-runs:
+ if: ${{ contains(github.event.pull_request.labels.*.name, 'test sources') || contains(github.event.pull_request.labels.*.name, 'test tools') }}
+ runs-on: ubuntu-latest
+ steps:
+ - uses: rokroskar/workflow-run-cleanup-action@master
+ env:
+ GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
+ test-sources:
+ needs: cleanup-runs
+ if: ${{ contains(github.event.pull_request.labels.*.name, 'test sources') }}
+ strategy:
+ matrix:
+ os: [ubuntu-18.04, ubuntu-20.04, macos-10.15]
+ include:
+ - os: ubuntu-18.04
+ DEPENDENCIES_INSTALLATION: "sudo apt -y install clang-format-10 cppcheck"
+ - os: ubuntu-20.04
+ DEPENDENCIES_INSTALLATION: "sudo apt -y install clang-format-10 cppcheck"
+ - os: macos-10.15
+ DEPENDENCIES_INSTALLATION: "brew install clang-format cppcheck"
+ runs-on: ${{ matrix.os }}
+ steps:
+ - uses: actions/checkout@v2
+ if: matrix.os == 'ubuntu-20.04' || github.event.pull_request.draft == false
+ with:
+ submodules: true
+ ref: develop
+ - name: Set up Python 3.8
+ if: matrix.os == 'ubuntu-20.04' || github.event.pull_request.draft == false
+ uses: actions/setup-python@v2
+ with:
+ python-version: 3.8
+ - name: Test Sources
+ if: matrix.os == 'ubuntu-20.04' || github.event.pull_request.draft == false
+ run: |
+ ${{ matrix.DEPENDENCIES_INSTALLATION }}
+ export OPENDR_HOME=$PWD
+ export OPENDR_DEVICE=cpu
+ pip install -r tests/requirements.txt
+ python -m unittest discover -s tests
+ test-tools:
+ needs: cleanup-runs
+ if: ${{ contains(github.event.pull_request.labels.*.name, 'test tools') }}
+ strategy:
+ matrix:
+ os: [ubuntu-20.04]
+ package:
+ - engine
+ - utils
+ - perception/activity_recognition
+ - perception/compressive_learning
+ - perception/face_recognition
+ - perception/heart_anomaly_detection
+ - perception/multimodal_human_centric
+ - perception/object_tracking_2d
+ - perception/object_detection_3d
+ - perception/pose_estimation
+ - perception/speech_recognition
+ - perception/skeleton_based_action_recognition
+ - perception/semantic_segmentation
+ - control/mobile_manipulation
+ - perception/object_detection_2d
+ - simulation/human_model_generation
+ - perception/facial_expression_recognition/landmark_based_facial_expression_recognition
+ - control/single_demo_grasp
+ # - perception/object_tracking_3d
+ include:
+ - os: ubuntu-20.04
+ DEPENDENCIES_INSTALLATION: "sudo sh -c 'echo \"deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main\" > /etc/apt/sources.list.d/ros-latest.list' \
+ && curl -s https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | sudo apt-key add -"
+ runs-on: ${{ matrix.os }}
+ steps:
+ - uses: actions/checkout@v2
+ with:
+ submodules: true
+ ref: develop
+ - name: Set up Python 3.8
+ uses: actions/setup-python@v2
+ with:
+ python-version: 3.8
+ - name: Test Tools
+ if: ${{ contains(github.event.pull_request.labels.*.name, 'test tools') }}
+ run: |
+ ${{ matrix.DEPENDENCIES_INSTALLATION }}
+ export OPENDR_HOME=$PWD
+ export OPENDR_DEVICE=cpu
+ export PYTHONPATH=$OPENDR_HOME/src:$PYTHONPATH
+ export DISABLE_BCOLZ_AVX2=true
+ export ROS_DISTRO=noetic
+ make install_compilation_dependencies
+ make install_runtime_dependencies
+ pip install -r tests/sources/requirements.txt
+ if [ ${{ matrix.package }} = "ctests" ]; then
+ make ctests
+ else
+ source tests/sources/tools/control/mobile_manipulation/run_ros.sh
+ python -m unittest discover -s tests/sources/tools/${{ matrix.package }}
+ fi
diff --git a/README.md b/README.md
index 8aa24e3376..080b69971a 100644
--- a/README.md
+++ b/README.md
@@ -8,28 +8,28 @@ ______________________________________________________________________
Website •
About •
- Installation •
+ Installation •
Using OpenDR toolkit •
Examples •
- Roadmap •
+ Roadmap •
License
[![License](https://img.shields.io/badge/License-Apache_2.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)
-
+[![Test Suite (master)](https://github.com/opendr-eu/opendr/actions/workflows/tests_suite.yml/badge.svg)](https://github.com/opendr-eu/opendr/actions/workflows/tests_suite.yml)
## About
-The aim of [OpenDR Project](https://opendr.eu) is to develop a **modular, open** and **non-proprietary toolkit** for core **robotic functionalities** by harnessing **deep learning** to provide advanced perception and cognition capabilities, meeting in this way the general requirements of robotics applications in the applications areas of healthcare, agri-food and agile production.
-OpenDR provides the means to link the **robotics applications to software libraries** (deep learning frameworks, e.g., [PyTorch](https://pytorch.org/) and [Tensorflow](https://www.tensorflow.org/)) to the **operating environment ([ROS](https://www.ros.org/))**.
+The aim of [OpenDR Project](https://opendr.eu) is to develop a **modular, open** and **non-proprietary toolkit** for core **robotic functionalities** by harnessing **deep learning** to provide advanced perception and cognition capabilities, meeting in this way the general requirements of robotics applications in the applications areas of healthcare, agri-food and agile production.
+OpenDR provides the means to link the **robotics applications to software libraries** (deep learning frameworks, e.g., [PyTorch](https://pytorch.org/) and [Tensorflow](https://www.tensorflow.org/)) to the **operating environment ([ROS](https://www.ros.org/))**.
OpenDR focuses on the **AI and Cognition core technology** in order to provide tools that make robotic systems cognitive, giving them the ability to:
1. interact with people and environments by developing deep learning methods for **human centric and environment active perception and cognition**,
-2. **learn and categorize** by developing deep learning **tools for training and inference in common robotics settings**, and
+2. **learn and categorize** by developing deep learning **tools for training and inference in common robotics settings**, and
3. **make decisions and derive knowledge** by developing deep learning tools for cognitive robot action and decision making.
-As a result, the developed OpenDR toolkit will also enable cooperative human-robot interaction as well as the development of cognitive mechatronics where sensing and actuation are closely coupled with cognitive systems thus contributing to another two core technologies beyond AI and Cognition.
-OpenDR aims to develop, train, deploy and evaluate deep learning models that improve the technical capabilities of the core technologies beyond the current state of the art.
+As a result, the developed OpenDR toolkit will also enable cooperative human-robot interaction as well as the development of cognitive mechatronics where sensing and actuation are closely coupled with cognitive systems thus contributing to another two core technologies beyond AI and Cognition.
+OpenDR aims to develop, train, deploy and evaluate deep learning models that improve the technical capabilities of the core technologies beyond the current state of the art.
## Installing OpenDR Toolkit
@@ -42,7 +42,7 @@ You can find detailed installation instruction in the [documentation](docs/refer
## Using OpenDR toolkit
OpenDR provides an intuitive and easy to use **[Python interface](src/opendr)**, a **[C API](src/c_api) for performance critical application**, a wealth of **[usage examples and supporting tools](projects)**, as well as **ready-to-use [ROS nodes](projects/opendr_ws)**.
-OpenDR is built to support [Webots Open Source Robot Simulator](https://cyberbotics.com/), while it also extensively follows industry standards, such as [ONNX model format](https://onnx.ai/) and [OpenAI Gym Interface](https://gym.openai.com/).
+OpenDR is built to support [Webots Open Source Robot Simulator](https://cyberbotics.com/), while it also extensively follows industry standards, such as [ONNX model format](https://onnx.ai/) and [OpenAI Gym Interface](https://gym.openai.com/).
You can find detailed documentation in OpenDR [wiki](https://github.com/tasostefas/opendr_internal/wiki), as well as in the [tools index](docs/reference/index.md).
## Roadmap
@@ -52,7 +52,7 @@ OpenDR has the following roadmap:
- **v3.0 (2023)**: Active perception-enabled deep learning tools for improved robotic perception
## How to contribute
-Please follow the instructions provided in the [wiki](https://github.com/tasostefas/opendr_internal/wiki).
+Please follow the instructions provided in the [wiki](https://github.com/tasostefas/opendr_internal/wiki).
## Acknowledgments
From feccc9bf596badb2fcd3d4559cd1a7dcc9cca9f3 Mon Sep 17 00:00:00 2001
From: ad-daniel <44834743+ad-daniel@users.noreply.github.com>
Date: Tue, 4 Jan 2022 12:53:14 +0100
Subject: [PATCH 2/9] Fix nightly check (#193)
* Fix nightly check
* fix test
---
.github/workflows/tests_suite.yml | 9 ++++-----
.github/workflows/tests_suite_develop.yml | 9 ++++-----
.../perception/facial_expression_recognition/__init__.py | 0
.../__init__.py | 0
4 files changed, 8 insertions(+), 10 deletions(-)
create mode 100644 tests/sources/tools/perception/facial_expression_recognition/__init__.py
create mode 100644 tests/sources/tools/perception/facial_expression_recognition/landmark_based_facial_expression_recognition/__init__.py
diff --git a/.github/workflows/tests_suite.yml b/.github/workflows/tests_suite.yml
index 1a0ac683d1..7d0503a429 100644
--- a/.github/workflows/tests_suite.yml
+++ b/.github/workflows/tests_suite.yml
@@ -12,7 +12,7 @@ defaults:
jobs:
cleanup-runs:
- if: ${{ contains(github.event.pull_request.labels.*.name, 'test sources') || contains(github.event.pull_request.labels.*.name, 'test tools') }}
+ if: ${{ contains(github.event.pull_request.labels.*.name, 'test sources') || contains(github.event.pull_request.labels.*.name, 'test tools') || github.event_name == 'schedule' }}
runs-on: ubuntu-latest
steps:
- uses: rokroskar/workflow-run-cleanup-action@master
@@ -20,7 +20,7 @@ jobs:
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
test-sources:
needs: cleanup-runs
- if: ${{ contains(github.event.pull_request.labels.*.name, 'test sources') }}
+ if: ${{ contains(github.event.pull_request.labels.*.name, 'test sources') || github.event_name == 'schedule' }}
strategy:
matrix:
os: [ubuntu-18.04, ubuntu-20.04, macos-10.15]
@@ -52,7 +52,7 @@ jobs:
python -m unittest discover -s tests
test-tools:
needs: cleanup-runs
- if: ${{ contains(github.event.pull_request.labels.*.name, 'test tools') }}
+ if: ${{ contains(github.event.pull_request.labels.*.name, 'test tools') || github.event_name == 'schedule' }}
strategy:
matrix:
os: [ubuntu-20.04]
@@ -73,7 +73,7 @@ jobs:
- control/mobile_manipulation
- perception/object_detection_2d
- simulation/human_model_generation
- - perception/facial_expression_recognition/landmark_based_facial_expression_recognition
+ - perception/facial_expression_recognition
- control/single_demo_grasp
# - perception/object_tracking_3d
include:
@@ -90,7 +90,6 @@ jobs:
with:
python-version: 3.8
- name: Test Tools
- if: ${{ contains(github.event.pull_request.labels.*.name, 'test tools') }}
run: |
${{ matrix.DEPENDENCIES_INSTALLATION }}
export OPENDR_HOME=$PWD
diff --git a/.github/workflows/tests_suite_develop.yml b/.github/workflows/tests_suite_develop.yml
index 46c3188938..8513c2c22d 100644
--- a/.github/workflows/tests_suite_develop.yml
+++ b/.github/workflows/tests_suite_develop.yml
@@ -10,7 +10,7 @@ defaults:
jobs:
cleanup-runs:
- if: ${{ contains(github.event.pull_request.labels.*.name, 'test sources') || contains(github.event.pull_request.labels.*.name, 'test tools') }}
+ if: ${{ contains(github.event.pull_request.labels.*.name, 'test sources') || contains(github.event.pull_request.labels.*.name, 'test tools') || github.event_name == 'schedule' }}
runs-on: ubuntu-latest
steps:
- uses: rokroskar/workflow-run-cleanup-action@master
@@ -18,7 +18,7 @@ jobs:
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
test-sources:
needs: cleanup-runs
- if: ${{ contains(github.event.pull_request.labels.*.name, 'test sources') }}
+ if: ${{ contains(github.event.pull_request.labels.*.name, 'test sources') || github.event_name == 'schedule' }}
strategy:
matrix:
os: [ubuntu-18.04, ubuntu-20.04, macos-10.15]
@@ -51,7 +51,7 @@ jobs:
python -m unittest discover -s tests
test-tools:
needs: cleanup-runs
- if: ${{ contains(github.event.pull_request.labels.*.name, 'test tools') }}
+ if: ${{ contains(github.event.pull_request.labels.*.name, 'test tools') || github.event_name == 'schedule' }}
strategy:
matrix:
os: [ubuntu-20.04]
@@ -72,7 +72,7 @@ jobs:
- control/mobile_manipulation
- perception/object_detection_2d
- simulation/human_model_generation
- - perception/facial_expression_recognition/landmark_based_facial_expression_recognition
+ - perception/facial_expression_recognition
- control/single_demo_grasp
# - perception/object_tracking_3d
include:
@@ -90,7 +90,6 @@ jobs:
with:
python-version: 3.8
- name: Test Tools
- if: ${{ contains(github.event.pull_request.labels.*.name, 'test tools') }}
run: |
${{ matrix.DEPENDENCIES_INSTALLATION }}
export OPENDR_HOME=$PWD
diff --git a/tests/sources/tools/perception/facial_expression_recognition/__init__.py b/tests/sources/tools/perception/facial_expression_recognition/__init__.py
new file mode 100644
index 0000000000..e69de29bb2
diff --git a/tests/sources/tools/perception/facial_expression_recognition/landmark_based_facial_expression_recognition/__init__.py b/tests/sources/tools/perception/facial_expression_recognition/landmark_based_facial_expression_recognition/__init__.py
new file mode 100644
index 0000000000..e69de29bb2
From 5cb4c3cd9e114afba4483c229d5b7606759b8790 Mon Sep 17 00:00:00 2001
From: Pavlos Tosidis <35866477+Pavlos-Tosidis@users.noreply.github.com>
Date: Fri, 14 Jan 2022 11:35:45 +0200
Subject: [PATCH 3/9] upgrade scikit-learn to 0.22 (#198)
* upgrade scikit-learn to 0.22
0.21.3 causes warnings with the current numpy version. Upgrading it fixes it.
* add changelog
Co-authored-by: ad-daniel
---
CHANGELOG.md | 16 ++++++++++++++++
README.md | 1 +
.../heart_anomaly_detection/dependencies.ini | 2 +-
3 files changed, 18 insertions(+), 1 deletion(-)
create mode 100644 CHANGELOG.md
diff --git a/CHANGELOG.md b/CHANGELOG.md
new file mode 100644
index 0000000000..2de83a228b
--- /dev/null
+++ b/CHANGELOG.md
@@ -0,0 +1,16 @@
+# OpenDR Toolkit Change Log
+
+## Version 1.X
+Released on XX, XXth, 2022.
+
+ - New Features:
+ - None.
+ - Enhancements:
+ - None.
+ - Bug Fixes:
+ - None.
+ - Dependency Updates:
+ - `heart anomaly detection`: upgraded scikit-learn runtime dependency from 0.21.3 to 0.22 ([#198](https://github.com/opendr-eu/opendr/pull/198)).
+
+## Version 1.0
+Released on December 31th, 2021.
\ No newline at end of file
diff --git a/README.md b/README.md
index 080b69971a..e91b500193 100644
--- a/README.md
+++ b/README.md
@@ -12,6 +12,7 @@ ______________________________________________________________________
Using OpenDR toolkit •
Examples •
Roadmap •
+ Changelog •
License
diff --git a/src/opendr/perception/heart_anomaly_detection/dependencies.ini b/src/opendr/perception/heart_anomaly_detection/dependencies.ini
index 66108a4300..832260166a 100644
--- a/src/opendr/perception/heart_anomaly_detection/dependencies.ini
+++ b/src/opendr/perception/heart_anomaly_detection/dependencies.ini
@@ -5,4 +5,4 @@ python=torch==1.7.1
torchvision==0.8.2
tensorboard==2.4.1
tqdm==4.54.0
- scikit-learn==0.21.3
+ scikit-learn==0.22
From 49f7cd9991b205fa222cfefad6c2d76456574cc6 Mon Sep 17 00:00:00 2001
From: Negar Heidari <36771997+negarhdr@users.noreply.github.com>
Date: Fri, 14 Jan 2022 11:18:33 +0100
Subject: [PATCH 4/9] bug fixed (#196)
Co-authored-by: Negar
Co-authored-by: ad-daniel <44834743+ad-daniel@users.noreply.github.com>
---
.../perception/skeleton_based_action_recognition/demos/demo.py | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/projects/perception/skeleton_based_action_recognition/demos/demo.py b/projects/perception/skeleton_based_action_recognition/demos/demo.py
index 3347d63325..4d4342094f 100644
--- a/projects/perception/skeleton_based_action_recognition/demos/demo.py
+++ b/projects/perception/skeleton_based_action_recognition/demos/demo.py
@@ -125,7 +125,7 @@ def draw_preds(frame, preds: Dict):
if __name__ == '__main__':
parser = argparse.ArgumentParser()
parser.add_argument("--onnx", help="Use ONNX", default=False, action="store_true")
- parser.add_argument("--device", help="Device to use (cpu, cuda)", type=str, default="cuda")
+ parser.add_argument("--device", help="Device to use (cpu, cuda)", type=str, default="cpu")
parser.add_argument("--accelerate", help="Enables acceleration flags (e.g., stride)", default=False,
action="store_true")
parser.add_argument('--video', default=0,
@@ -224,5 +224,4 @@ def draw_preds(frame, preds: Dict):
break
print("Average inference fps: ", avg_fps)
- image_provider.release()
cv2.destroyAllWindows()
From cc71138ae22ec39b186960ff98c74bc2cdca3623 Mon Sep 17 00:00:00 2001
From: ad-daniel <44834743+ad-daniel@users.noreply.github.com>
Date: Tue, 18 Jan 2022 09:24:00 +0100
Subject: [PATCH 5/9] Fix copyright dates and double-check rights owner (action
required) (#199)
* Fix dates
* undo wrong change
* Fix Tampere
---
dependencies/parse_dependencies.py | 2 +-
include/data.h | 2 +-
include/face_recognition.h | 2 +-
include/opendr_utils.h | 2 +-
include/target.h | 2 +-
projects/c_api/Makefile | 2 +-
.../face_recognition/face_recognition_demo.c | 2 +-
projects/control/eagerx/Makefile | 2 +-
.../mobile_manipulation_demo.py | 2 +-
.../inference/inference_utils.py | 2 +-
.../single_demo_grasp_camera_stream.py | 2 +-
.../inference/single_demo_inference.py | 2 +-
.../scripts/camera_publisher.py | 2 +-
.../scripts/constants.py | 2 +-
.../scripts/gripper_command.py | 1 +
.../scripts/joint_state_publisher.py | 2 +-
.../scripts/panda_ros.py | 2 +-
.../scripts/single_demo_grasp_action.py | 2 +-
.../scripts/trajectory_follower.py | 2 +-
.../scripts/utilities.py | 2 +-
.../scripts/face_detection_retinaface.py | 2 +-
.../perception/scripts/face_recognition.py | 2 +-
.../scripts/heart_anomaly_detection.py | 2 +-
.../src/perception/scripts/image_dataset.py | 2 +-
...ark_based_facial_expression_recognition.py | 2 +-
.../scripts/object_detection_2d_centernet.py | 2 +-
.../scripts/object_detection_2d_detr.py | 2 +-
.../scripts/object_detection_2d_gem.py | 2 +-
.../scripts/object_detection_2d_ssd.py | 2 +-
.../scripts/object_detection_2d_yolov3.py | 2 +-
.../scripts/object_detection_3d_voxel.py | 2 +-
.../scripts/object_tracking_2d_deep_sort.py | 2 +-
.../scripts/object_tracking_2d_fair_mot.py | 2 +-
.../scripts/object_tracking_3d_ab3dmot.py | 2 +-
.../panoptic_segmentation_efficient_ps.py | 2 +-
.../perception/scripts/point_cloud_dataset.py | 2 +-
.../src/perception/scripts/pose_estimation.py | 2 +-
.../scripts/rgbd_hand_gesture_recognition.py | 2 +-
.../scripts/semantic_segmentation_bisenet.py | 2 +-
.../skeleton_based_action_recognition.py | 2 +-
.../scripts/speech_command_recognition.py | 2 +-
.../scripts/video_activity_recognition.py | 2 +-
projects/opendr_ws/src/ros_bridge/setup.py | 2 +-
.../ros_bridge/src/opendr_bridge/bridge.py | 2 +-
.../scripts/human_model_generation_client.py | 2 +-
.../scripts/human_model_generation_service.py | 2 +-
.../demos/online_recognition/demo.py | 2 +-
.../demos/online_recognition/setup.py | 2 +-
.../demos/benchmarking_demo.py | 2 +-
.../face_recognition/demos/eval_demo.py | 2 +-
.../face_recognition/demos/inference_demo.py | 2 +-
.../demo.py | 2 +-
.../heart_anomaly_detection/demo.py | 2 +-
.../demos/benchmarking_demo.py | 2 +-
.../lightweight_open_pose/demos/eval_demo.py | 2 +-
.../demos/inference_demo.py | 2 +-
.../demos/webcam_demo.py | 2 +-
.../jetbot/fall_controller.py | 2 +-
.../jetbot/utils/active.py | 2 +-
.../jetbot/utils/pose_controller.py | 2 +-
.../jetbot/utils/pose_utils.py | 2 +-
.../jetbot/utils/robot_interface.py | 2 +-
.../jetbot/utils/visualization.py | 2 +-
.../jetbot/utils/webots.py | 2 +-
.../gesture_recognition_demo.py | 2 +-
.../centernet/eval_demo.py | 2 +-
.../centernet/inference_demo.py | 2 +-
.../centernet/train_demo.py | 2 +-
.../object_detection_2d/detr/eval_demo.py | 2 +-
.../detr/inference_demo.py | 2 +-
.../object_detection_2d/detr/train_demo.py | 2 +-
.../object_detection_2d/gem/inference_demo.py | 2 +-
.../retinaface/eval_demo.py | 2 +-
.../retinaface/inference_demo.py | 2 +-
.../retinaface/train_demo.py | 2 +-
.../object_detection_2d/ssd/eval_demo.py | 2 +-
.../object_detection_2d/ssd/inference_demo.py | 2 +-
.../object_detection_2d/ssd/train_demo.py | 2 +-
.../object_detection_2d/yolov3/eval_demo.py | 2 +-
.../yolov3/inference_demo.py | 2 +-
.../object_detection_2d/yolov3/train_demo.py | 2 +-
.../data_generators.py | 2 +-
.../demos/voxel_object_detection_3d/demo.py | 2 +-
.../draw_point_clouds.py | 2 +-
.../voxel_object_detection_3d/metrics.py | 2 +-
.../o3m_lidar/channel.py | 2 +-
.../o3m_lidar/main.py | 2 +-
.../o3m_lidar/o3m_lidar.py | 2 +-
.../o3m_lidar/structures.py | 2 +-
.../rplidar_processor.py | 2 +-
.../demos/voxel_object_detection_3d/setup.py | 2 +-
.../fair_mot_deep_sort/data_generators.py | 2 +-
.../demos/fair_mot_deep_sort/demo.py | 2 +-
.../demos/fair_mot_deep_sort/setup.py | 2 +-
.../efficient_ps/example_usage.py | 2 +-
.../bisenet/eval_demo.py | 2 +-
.../bisenet/inference_demo.py | 2 +-
.../bisenet/train_demo.py | 2 +-
.../demos/demo.py | 2 +-
.../demos/skeleton_extraction.py | 2 +-
.../src/fmp_slam_eval/launch/experiment.py | 2 +-
.../launch/experiment_real_data.py | 2 +-
.../src/fmp_slam_eval/nodes/err_collector | 2 +-
.../src/fmp_slam_eval/nodes/fmp_plot | 2 +-
.../src/fmp_slam_eval/nodes/gt_mapping | 2 +-
.../src/fmp_slam_eval/nodes/occ_map_saver | 2 +-
.../src/fmp_slam_eval/nodes/odom_pose | 2 +-
.../src/fmp_slam_eval/nodes/pose_error_calc | 2 +-
.../src/fmp_slam_eval/package.xml | 2 +-
.../src/fmp_slam_eval/scripts/err_curves.py | 2 +-
.../fmp_slam_eval/scripts/err_histograms.py | 2 +-
.../scripts/method_comparison.py | 2 +-
.../src/fmp_slam_eval/setup.py | 2 +-
.../src/fmp_slam_eval/enums/disc_states.py | 2 +-
.../src/fmp_slam_eval/error_data_collector.py | 2 +-
.../src/fmp_slam_eval/fmp_plotter.py | 2 +-
.../src/fmp_slam_eval/ground_truth_mapping.py | 2 +-
.../src/fmp_slam_eval/map_colorizer.py | 2 +-
.../src/fmp_slam_eval/net_utils.py | 2 +-
.../src/fmp_slam_eval/occ_map_saver.py | 2 +-
.../src/fmp_slam_eval/odom_pose_publisher.py | 2 +-
.../fmp_slam_eval/pose_error_calculator.py | 2 +-
.../src/fmp_slam_eval/ros_launcher.py | 2 +-
.../src/fmp_slam_eval/roscore.py | 2 +-
.../src/map_simulator/package.xml | 2 +-
.../src/map_simulator/scripts/mapsim2d.py | 2 +-
.../src/map_simulator/setup.py | 2 +-
.../geometry/primitives/closed_shape_2D.py | 2 +-
.../map_simulator/geometry/primitives/line.py | 2 +-
.../geometry/primitives/polygon.py | 2 +-
.../map_simulator/geometry/primitives/pose.py | 2 +-
.../src/map_simulator/geometry/transform.py | 2 +-
.../map_simulator/map_obstacles/obstacle.py | 2 +-
.../map_obstacles/polygonal_obstacle.py | 2 +-
.../src/map_simulator/map_simulator_2d.py | 2 +-
.../map_simulator/robot_commands/command.py | 2 +-
.../robot_commands/message/bool_msg_cmd.py | 2 +-
.../robot_commands/message/message_cmd.py | 2 +-
.../robot_commands/misc/comment_cmd.py | 2 +-
.../robot_commands/misc/misc_cmd.py | 2 +-
.../robot_commands/misc/scan_cmd.py | 2 +-
.../robot_commands/misc/sleep_cmd.py | 2 +-
.../robot_commands/move/move_circular_cmd.py | 2 +-
.../robot_commands/move/move_cmd.py | 2 +-
.../robot_commands/move/move_interpol_cmd.py | 2 +-
.../robot_commands/move/move_linear_cmd.py | 2 +-
.../robot_commands/move/move_pose_cmd.py | 2 +-
.../robot_commands/move/move_rotation_cmd.py | 2 +-
.../map_simulator/src/map_simulator/utils.py | 2 +-
.../src/openslam_gmapping/Makefile | 8 +++----
.../src/openslam_gmapping/configfile/Makefile | 4 ++--
.../configfile/configfile.cpp | 2 +-
.../configfile/configfile_test.cpp | 2 +-
.../src/openslam_gmapping/grid/Makefile | 6 ++---
.../src/openslam_gmapping/grid/graphmap.cpp | 2 +-
.../src/openslam_gmapping/grid/map_test.cpp | 2 +-
.../openslam_gmapping/gridfastslam/Makefile | 2 +-
.../gridfastslam/gfs2log.cpp | 2 +-
.../gridfastslam/gfs2neff.cpp | 2 +-
.../gridfastslam/gfs2rec.cpp | 2 +-
.../gridfastslam/gfsreader.cpp | 2 +-
.../gridfastslam/gridslamprocessor.cpp | 2 +-
.../gridfastslam/gridslamprocessor_tree.cpp | 2 +-
.../gridfastslam/motionmodel.cpp | 2 +-
.../include/gmapping/configfile/configfile.h | 2 +-
.../include/gmapping/grid/accessstate.h | 2 +-
.../include/gmapping/grid/array2d.h | 2 +-
.../include/gmapping/grid/harray2d.h | 2 +-
.../include/gmapping/grid/map.h | 2 +-
.../include/gmapping/gridfastslam/gfsreader.h | 2 +-
.../gmapping/gridfastslam/gridslamprocessor.h | 2 +-
.../gridfastslam/gridslamprocessor.hxx | 2 +-
.../gmapping/gridfastslam/motionmodel.h | 2 +-
.../gmapping/log/carmenconfiguration.h | 2 +-
.../include/gmapping/log/configuration.h | 2 +-
.../include/gmapping/log/sensorlog.h | 2 +-
.../include/gmapping/log/sensorstream.h | 2 +-
.../gmapping/particlefilter/particlefilter.h | 2 +-
.../include/gmapping/particlefilter/pf.h | 2 +-
.../include/gmapping/scanmatcher/eig3.h | 2 +-
.../gmapping/scanmatcher/gridlinetraversal.h | 2 +-
.../include/gmapping/scanmatcher/icp.h | 2 +-
.../gmapping/scanmatcher/scanmatcher.h | 2 +-
.../scanmatcher/scanmatcherprocessor.h | 2 +-
.../include/gmapping/scanmatcher/smmap.h | 2 +-
.../gmapping/sensor/sensor_base/sensor.h | 2 +-
.../sensor/sensor_base/sensoreading.h | 2 +-
.../sensor/sensor_base/sensorreading.h | 2 +-
.../sensor/sensor_odometry/odometryreading.h | 2 +-
.../sensor/sensor_odometry/odometrysensor.h | 2 +-
.../sensor/sensor_range/rangereading.h | 2 +-
.../sensor/sensor_range/rangesensor.h | 2 +-
.../include/gmapping/utils/autoptr.h | 2 +-
.../include/gmapping/utils/commandline.h | 2 +-
.../include/gmapping/utils/gvalues.h | 2 +-
.../include/gmapping/utils/macro_params.h | 2 +-
.../include/gmapping/utils/movement.h | 2 +-
.../include/gmapping/utils/point.h | 2 +-
.../include/gmapping/utils/stat.h | 2 +-
.../src/openslam_gmapping/log/Makefile | 6 ++---
.../log/carmenconfiguration.cpp | 2 +-
.../openslam_gmapping/log/configuration.cpp | 2 +-
.../src/openslam_gmapping/log/log_plot.cpp | 2 +-
.../src/openslam_gmapping/log/log_test.cpp | 2 +-
.../src/openslam_gmapping/log/rdk2carmen.cpp | 2 +-
.../log/scanstudio2carmen.cpp | 2 +-
.../src/openslam_gmapping/log/sensorlog.cpp | 2 +-
.../openslam_gmapping/log/sensorstream.cpp | 2 +-
.../openslam_gmapping/scanmatcher/Makefile | 2 +-
.../openslam_gmapping/scanmatcher/eig3.cpp | 2 +-
.../openslam_gmapping/scanmatcher/icptest.cpp | 2 +-
.../scanmatcher/line_test.cpp | 2 +-
.../scanmatcher/scanmatch_test.cpp | 2 +-
.../scanmatcher/scanmatcher.cpp | 2 +-
.../scanmatcher/scanmatcher.new.cpp | 2 +-
.../scanmatcher/scanmatcherprocessor.cpp | 2 +-
.../openslam_gmapping/scanmatcher/smmap.cpp | 2 +-
.../src/openslam_gmapping/sensor/Makefile | 2 +-
.../sensor/sensor_base/Makefile | 2 +-
.../sensor/sensor_base/sensor.cpp | 2 +-
.../sensor/sensor_base/sensorreading.cpp | 2 +-
.../sensor/sensor_odometry/Makefile | 2 +-
.../sensor_odometry/odometryreading.cpp | 2 +-
.../sensor/sensor_odometry/odometrysensor.cpp | 2 +-
.../sensor/sensor_range/Makefile | 6 ++---
.../sensor/sensor_range/rangereading.cpp | 2 +-
.../sensor/sensor_range/rangesensor.cpp | 2 +-
.../src/openslam_gmapping/utils/Makefile | 2 +-
.../openslam_gmapping/utils/autoptr_test.cpp | 2 +-
.../src/openslam_gmapping/utils/movement.cpp | 2 +-
.../src/openslam_gmapping/utils/stat.cpp | 2 +-
.../src/openslam_gmapping/utils/stat_test.cpp | 2 +-
.../src/slam_gmapping/gmapping/src/main.cpp | 2 +-
.../slam_gmapping/gmapping/src/nodelet.cpp | 2 +-
.../src/slam_gmapping/gmapping/src/replay.cpp | 2 +-
.../gmapping/src/slam_gmapping.cpp | 2 +-
.../gmapping/src/slam_gmapping.h | 2 +-
.../src/slam_gmapping/gmapping/test/rtest.cpp | 2 +-
.../slam_gmapping/gmapping/test/test_map.py | 2 +-
.../speech_command_recognition/demo.py | 2 +-
.../SMPL+D_human_models/src/download_data.py | 2 +-
.../src/generate_models.py | 2 +-
.../webots/extract_anims.py | 2 +-
.../controllers/smpl_animation/Makefile | 4 ++--
.../smpl_animation/smpl_animation.c | 2 +-
.../smpl_webots/libraries/smpl_util/Makefile | 2 +-
.../smpl_util/include/quaternion_private.h | 2 +-
.../libraries/smpl_util/include/smpl_util.h | 2 +-
.../smpl_util/include/vector3_private.h | 2 +-
.../libraries/smpl_util/src/quaternion.c | 2 +-
.../libraries/smpl_util/src/smpl_util.c | 2 +-
.../libraries/smpl_util/src/vector3.c | 2 +-
.../human_dataset_generation/background.py | 2 +-
.../create_background_images.py | 2 +-
.../create_dataset.py | 2 +-
.../data_generator.py | 2 +-
.../reformat_cityscapes.py | 2 +-
.../hyperparameter_tuner_demo.py | 2 +-
src/c_api/Makefile | 2 +-
src/c_api/face_recognition.cpp | 3 +--
src/c_api/opendr_utils.cpp | 2 +-
src/opendr/_version.py | 2 +-
.../control/mobile_manipulation/Makefile | 2 +-
.../gripper_planner/base_gripper_planner.hpp | 2 +-
.../gaussian_mixture_model.hpp | 2 +-
.../include/gripper_planner/gmm_planner.hpp | 2 +-
.../gripper_planner/linear_planner.hpp | 2 +-
.../mobile_manipulation_rl/robot_env.hpp | 2 +-
.../mobile_manipulation_rl/robot_hsr.hpp | 2 +-
.../mobile_manipulation_rl/robot_pr2.hpp | 2 +-
.../mobile_manipulation_rl/robot_tiago.hpp | 2 +-
.../include/mobile_manipulation_rl/utils.hpp | 2 +-
.../include/mobile_manipulation_rl/worlds.hpp | 2 +-
.../mobileRL/envs/__init__.py | 2 +-
.../mobileRL/envs/eeplanner.py | 2 +-
.../mobileRL/envs/env_utils.py | 2 +-
.../mobile_manipulation/mobileRL/envs/map.py | 2 +-
.../mobileRL/envs/mobile_manipulation_env.py | 2 +-
.../mobileRL/envs/robotenv.py | 2 +-
.../mobileRL/envs/simulator_api.py | 2 +-
.../mobileRL/envs/tasks.py | 2 +-
.../mobileRL/envs/tasks_chained.py | 2 +-
.../mobileRL/evaluation.py | 2 +-
.../mobileRL/handle_launchfiles.py | 2 +-
.../mobileRL/stablebl_callbacks.py | 2 +-
.../mobile_manipulation/mobileRL/utils.py | 2 +-
.../mobile_manipulation_learner.py | 2 +-
.../gripper_planner/base_gripper_planner.cpp | 2 +-
.../gaussian_mixture_model.cpp | 2 +-
.../src/gripper_planner/gmm_planner.cpp | 2 +-
.../src/gripper_planner/linear_planner.cpp | 2 +-
.../mobile_manipulation/src/pybindings.cpp | 2 +-
.../mobile_manipulation/src/robot_env.cpp | 2 +-
.../mobile_manipulation/src/robot_hsr.cpp | 2 +-
.../mobile_manipulation/src/robot_pr2.cpp | 2 +-
.../mobile_manipulation/src/robot_tiago.cpp | 2 +-
.../control/mobile_manipulation/src/utils.cpp | 2 +-
.../mobile_manipulation/src/worlds.cpp | 2 +-
src/opendr/control/single_demo_grasp/Makefile | 2 +-
.../augmentation/augmentation_gui.py | 2 +-
.../augmentation/augmentation_utils.py | 2 +-
.../training/learner_utils.py | 2 +-
.../training/single_demo_grasp_learner.py | 2 +-
src/opendr/engine/constants.py | 2 +-
src/opendr/engine/data.py | 2 +-
src/opendr/engine/datasets.py | 2 +-
src/opendr/engine/example_learner.py | 2 +-
src/opendr/engine/learners.py | 2 +-
src/opendr/engine/target.py | 2 +-
.../cox3d/cox3d_learner.py | 2 +-
.../activity_recognition/datasets/kinetics.py | 2 +-
.../datasets/utils/transforms.py | 2 +-
.../activity_recognition/x3d/x3d_learner.py | 2 +-
.../algorithm/__init__.py | 2 +-
.../algorithm/backbones/__init__.py | 2 +-
.../algorithm/backbones/cifar_allcnn.py | 2 +-
.../algorithm/backbones/imagenet_densenet.py | 2 +-
.../algorithm/backbones/imagenet_resnet.py | 2 +-
.../algorithm/backbones/imagenet_vgg.py | 2 +-
.../algorithm/backbones/model_utils.py | 2 +-
.../algorithm/data.py | 2 +-
.../algorithm/learner.py | 2 +-
.../multilinear_compressive_learner.py | 2 +-
.../face_recognition_learner.py | 2 +-
.../algorithm/datasets/AFEW_data_gen.py | 2 +-
.../algorithm/datasets/CASIA_CK_data_gen.py | 2 +-
.../algorithm/datasets/data_augmentation.py | 2 +-
.../algorithm/datasets/frame_extractor.py | 2 +-
.../datasets/gen_facial_muscles_data.py | 2 +-
.../algorithm/datasets/landmark_extractor.py | 2 +-
.../algorithm/models/pstbln.py | 2 +-
...progressive_spatio_temporal_bln_learner.py | 2 +-
.../algorithm/__init__.py | 2 +-
...attention_neural_bag_of_feature_learner.py | 2 +-
.../algorithm/__init__.py | 2 +-
.../gated_recurrent_unit/algorithm/data.py | 2 +-
.../gated_recurrent_unit/algorithm/models.py | 2 +-
.../algorithm/trainers.py | 2 +-
.../gated_recurrent_unit_learner.py | 2 +-
.../algorithm/__init__.py | 2 +-
.../algorithm/architectures/__init__.py | 2 +-
.../algorithm/data.py | 2 +-
.../rgbd_hand_gesture_learner.py | 2 +-
.../centernet/centernet_learner.py | 2 +-
.../datasets/detection_dataset.py | 2 +-
.../datasets/transforms.py | 2 +-
.../datasets/wider_face.py | 2 +-
.../datasets/wider_person.py | 2 +-
.../detr/algorithm/util/__init__.py | 2 +-
.../detr/algorithm/util/draw.py | 2 +-
.../object_detection_2d/detr/detr_learner.py | 3 ++-
.../gem/algorithm/util/draw.py | 2 +-
.../gem/algorithm/util/sampler.py | 2 +-
.../object_detection_2d/gem/gem_learner.py | 4 ++--
.../retinaface/retinaface_learner.py | 2 +-
.../object_detection_2d/ssd/ssd_learner.py | 2 +-
.../object_detection_2d/utils/eval_utils.py | 2 +-
.../utils/get_color_infra_alignment.py | 2 +-
.../object_detection_2d/utils/vis_utils.py | 2 +-
.../yolov3/yolov3_learner.py | 2 +-
.../datasets/create_data_kitti.py | 1 +
.../object_detection_3d/datasets/kitti.py | 1 +
.../voxel_object_detection_3d/logger.py | 1 +
.../second_detector/load.py | 2 +-
.../second_detector/run.py | 2 +-
.../voxel_object_detection_3d_learner.py | 2 +-
.../datasets/market1501_dataset.py | 2 +-
.../datasets/mot_dataset.py | 2 +-
.../deep_sort/algorithm/deep_sort_tracker.py | 2 +-
.../deep_sort/algorithm/run.py | 2 +-
.../object_tracking_2d_deep_sort_learner.py | 2 +-
.../fair_mot/algorithm/load.py | 2 +-
.../fair_mot/algorithm/run.py | 2 +-
.../object_tracking_2d_fair_mot_learner.py | 2 +-
.../perception/object_tracking_2d/logger.py | 3 ++-
.../ab3dmot/algorithm/ab3dmot.py | 2 +-
.../ab3dmot/algorithm/evaluate.py | 2 +-
.../ab3dmot/algorithm/kalman_tracker_3d.py | 2 +-
.../object_tracking_3d/ab3dmot/logger.py | 1 +
.../object_tracking_3d_ab3dmot_learner.py | 2 +-
.../datasets/kitti_tracking.py | 2 +-
.../datasets/cityscapes.py | 2 +-
.../panoptic_segmentation/datasets/kitti.py | 2 +-
.../efficient_ps/configs/singlegpu_sample.py | 2 +-
.../efficient_ps/efficient_ps_learner.py | 2 +-
.../algorithm/models/with_mobilenet_v2.py | 2 +-
.../algorithm/models/with_shufflenet.py | 2 +-
.../lightweight_open_pose/filtered_pose.py | 2 +-
.../lightweight_open_pose_learner.py | 2 +-
.../lightweight_open_pose/utilities.py | 2 +-
.../semantic_segmentation/bisenet/CamVid.py | 2 +-
.../bisenet/bisenet_learner.py | 2 +-
...progressive_spatio_temporal_gcn_learner.py | 2 +-
.../spatio_temporal_gcn_learner.py | 2 +-
.../edgespeechnets/algorithm/audioutils.py | 2 +-
.../edgespeechnets/algorithm/models.py | 2 +-
.../edgespeechnets/edgespeechnets_learner.py | 2 +-
.../matchboxnet/algorithm/audioutils.py | 2 +-
.../matchboxnet/algorithm/model.py | 2 +-
.../matchboxnet/matchboxnet_learner.py | 2 +-
.../quadraticselfonn/algorithm/audioutils.py | 2 +-
.../quadraticselfonn/algorithm/model.py | 2 +-
.../quadraticselfonn_learner.py | 2 +-
.../pifu_generator_learner.py | 2 +-
.../utilities/config_utils.py | 2 +-
.../utilities/joint_extractor.py | 2 +-
.../utilities/model_3D.py | 2 +-
.../utilities/studio.py | 2 +-
.../utilities/visualizer.py | 2 +-
.../hyperparameter_tuner/dummy_learner.py | 2 +-
.../hyperparameter_tuner.py | 2 +-
src/opendr/utils/io.py | 2 +-
tests/Makefile | 2 +-
tests/sources/c_api/test_face_recognition.c | 2 +-
tests/sources/c_api/test_fmp_gmapping.cpp | 2 +-
tests/sources/c_api/test_opendr_utils.c | 2 +-
.../test_mobile_manipulation.py | 2 +-
.../test_single_demo_grasp.py | 2 +-
.../cox3d/test_cox3d_learner.py | 2 +-
.../x3d/test_x3d_learner.py | 2 +-
.../test_multilinear_compressive_learner.py | 2 +-
.../face_recognition/test_face_recognition.py | 2 +-
.../test_pstbln.py | 2 +-
...attention_neural_bag_of_feature_learner.py | 2 +-
.../test_gated_recurrent_unit_learner.py | 2 +-
.../test_rgbd_hand_gesture_learner.py | 2 +-
.../centernet/test_centernet.py | 2 +-
.../object_detection_2d/detr/test_detr.py | 2 +-
.../object_detection_2d/gem/test_gem.py | 2 +-
.../retinaface/test_retinaface.py | 2 +-
.../object_detection_2d/ssd/test_ssd.py | 2 +-
.../object_detection_2d/yolov3/test_yolo3.py | 2 +-
.../test_object_detection_3d.py | 2 +-
.../test_object_tracking_2d_deep_sort.py | 2 +-
.../test_object_tracking_2d_fair_mot.py | 2 +-
.../test_object_tracking_3d_ab3dmot.py | 2 +-
.../test_lightweight_open_pose.py | 2 +-
.../test_semantic_segmentation_bisenet.py | 2 +-
.../test_pstgcn.py | 2 +-
.../test_stbln.py | 2 +-
.../test_stgcn.py | 2 +-
.../test_tagcn.py | 2 +-
.../edgespeechnets/test_edgespeechnets.py | 2 +-
.../matchboxnet/test_matchboxnet.py | 2 +-
.../quadraticselfonn/test_quadraticselfonn.py | 2 +-
.../test_human_model_generation.py | 2 +-
.../tools/utils/test_hyperparameter_tuner.py | 2 +-
tests/sources/tools/utils/test_io.py | 2 +-
tests/test_license.py | 23 +++++++++++++------
449 files changed, 478 insertions(+), 463 deletions(-)
diff --git a/dependencies/parse_dependencies.py b/dependencies/parse_dependencies.py
index 58b17ae029..31fdc20829 100644
--- a/dependencies/parse_dependencies.py
+++ b/dependencies/parse_dependencies.py
@@ -1,6 +1,6 @@
#!/usr/bin/env python3
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/include/data.h b/include/data.h
index 5b0f9b0818..0b0018b941 100644
--- a/include/data.h
+++ b/include/data.h
@@ -1,5 +1,5 @@
/*
- * Copyright 2020-2021 OpenDR project
+ * Copyright 2020-2022 OpenDR European Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/include/face_recognition.h b/include/face_recognition.h
index 997a414c57..ff2774aab2 100644
--- a/include/face_recognition.h
+++ b/include/face_recognition.h
@@ -1,5 +1,5 @@
/*
- * Copyright 2020-2021 OpenDR project
+ * Copyright 2020-2022 OpenDR European Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/include/opendr_utils.h b/include/opendr_utils.h
index 0ec35ec9ae..309c44a211 100644
--- a/include/opendr_utils.h
+++ b/include/opendr_utils.h
@@ -1,5 +1,5 @@
/*
- * Copyright 2020-2021 OpenDR project
+ * Copyright 2020-2022 OpenDR European Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/include/target.h b/include/target.h
index 04c4f3f4c7..99603e905d 100644
--- a/include/target.h
+++ b/include/target.h
@@ -1,5 +1,5 @@
/*
- * Copyright 2020-2021 OpenDR project
+ * Copyright 2020-2022 OpenDR European Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/projects/c_api/Makefile b/projects/c_api/Makefile
index caf29a97b8..92d14951f9 100644
--- a/projects/c_api/Makefile
+++ b/projects/c_api/Makefile
@@ -1,5 +1,5 @@
#
-# Copyright 2020-2021 OpenDR project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/c_api/samples/face_recognition/face_recognition_demo.c b/projects/c_api/samples/face_recognition/face_recognition_demo.c
index f426d6f945..03465f77fe 100644
--- a/projects/c_api/samples/face_recognition/face_recognition_demo.c
+++ b/projects/c_api/samples/face_recognition/face_recognition_demo.c
@@ -1,5 +1,5 @@
/*
- * Copyright 2020-2021 OpenDR project
+ * Copyright 2020-2022 OpenDR European Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/projects/control/eagerx/Makefile b/projects/control/eagerx/Makefile
index 26c6367def..cd9ee79573 100644
--- a/projects/control/eagerx/Makefile
+++ b/projects/control/eagerx/Makefile
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/control/mobile_manipulation/mobile_manipulation_demo.py b/projects/control/mobile_manipulation/mobile_manipulation_demo.py
index 7c7e84c192..68b29ad2aa 100644
--- a/projects/control/mobile_manipulation/mobile_manipulation_demo.py
+++ b/projects/control/mobile_manipulation/mobile_manipulation_demo.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/control/single_demo_grasp/simulation_ws/src/single_demo_grasping_demo/inference/inference_utils.py b/projects/control/single_demo_grasp/simulation_ws/src/single_demo_grasping_demo/inference/inference_utils.py
index 16e2b6a9e1..619556dcf0 100755
--- a/projects/control/single_demo_grasp/simulation_ws/src/single_demo_grasping_demo/inference/inference_utils.py
+++ b/projects/control/single_demo_grasp/simulation_ws/src/single_demo_grasping_demo/inference/inference_utils.py
@@ -1,6 +1,6 @@
#!/usr/bin/env python
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/control/single_demo_grasp/simulation_ws/src/single_demo_grasping_demo/inference/single_demo_grasp_camera_stream.py b/projects/control/single_demo_grasp/simulation_ws/src/single_demo_grasping_demo/inference/single_demo_grasp_camera_stream.py
index f786b8b108..46722f1be9 100755
--- a/projects/control/single_demo_grasp/simulation_ws/src/single_demo_grasping_demo/inference/single_demo_grasp_camera_stream.py
+++ b/projects/control/single_demo_grasp/simulation_ws/src/single_demo_grasping_demo/inference/single_demo_grasp_camera_stream.py
@@ -1,6 +1,6 @@
#!/usr/bin/env python
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/control/single_demo_grasp/simulation_ws/src/single_demo_grasping_demo/inference/single_demo_inference.py b/projects/control/single_demo_grasp/simulation_ws/src/single_demo_grasping_demo/inference/single_demo_inference.py
index 991746f9b7..9285654766 100755
--- a/projects/control/single_demo_grasp/simulation_ws/src/single_demo_grasping_demo/inference/single_demo_inference.py
+++ b/projects/control/single_demo_grasp/simulation_ws/src/single_demo_grasping_demo/inference/single_demo_inference.py
@@ -1,6 +1,6 @@
#!/usr/bin/env python
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/control/single_demo_grasp/simulation_ws/src/single_demo_grasping_demo/scripts/camera_publisher.py b/projects/control/single_demo_grasp/simulation_ws/src/single_demo_grasping_demo/scripts/camera_publisher.py
index c7c81ed793..c50b56fc20 100644
--- a/projects/control/single_demo_grasp/simulation_ws/src/single_demo_grasping_demo/scripts/camera_publisher.py
+++ b/projects/control/single_demo_grasp/simulation_ws/src/single_demo_grasping_demo/scripts/camera_publisher.py
@@ -1,4 +1,4 @@
-# Copyright 1996-2020 Cyberbotics Ltd.
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/control/single_demo_grasp/simulation_ws/src/single_demo_grasping_demo/scripts/constants.py b/projects/control/single_demo_grasp/simulation_ws/src/single_demo_grasping_demo/scripts/constants.py
index e2d7ec4b08..44be8a295b 100644
--- a/projects/control/single_demo_grasp/simulation_ws/src/single_demo_grasping_demo/scripts/constants.py
+++ b/projects/control/single_demo_grasp/simulation_ws/src/single_demo_grasping_demo/scripts/constants.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/control/single_demo_grasp/simulation_ws/src/single_demo_grasping_demo/scripts/gripper_command.py b/projects/control/single_demo_grasp/simulation_ws/src/single_demo_grasping_demo/scripts/gripper_command.py
index d0cc516edc..70dedc17a4 100644
--- a/projects/control/single_demo_grasp/simulation_ws/src/single_demo_grasping_demo/scripts/gripper_command.py
+++ b/projects/control/single_demo_grasp/simulation_ws/src/single_demo_grasping_demo/scripts/gripper_command.py
@@ -1,3 +1,4 @@
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/control/single_demo_grasp/simulation_ws/src/single_demo_grasping_demo/scripts/joint_state_publisher.py b/projects/control/single_demo_grasp/simulation_ws/src/single_demo_grasping_demo/scripts/joint_state_publisher.py
index 9e5a6b8bf6..73bf7d26f0 100644
--- a/projects/control/single_demo_grasp/simulation_ws/src/single_demo_grasping_demo/scripts/joint_state_publisher.py
+++ b/projects/control/single_demo_grasp/simulation_ws/src/single_demo_grasping_demo/scripts/joint_state_publisher.py
@@ -1,4 +1,4 @@
-# Copyright 1996-2020 Cyberbotics Ltd.
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/control/single_demo_grasp/simulation_ws/src/single_demo_grasping_demo/scripts/panda_ros.py b/projects/control/single_demo_grasp/simulation_ws/src/single_demo_grasping_demo/scripts/panda_ros.py
index 7940a7aef2..117ba1b1e3 100755
--- a/projects/control/single_demo_grasp/simulation_ws/src/single_demo_grasping_demo/scripts/panda_ros.py
+++ b/projects/control/single_demo_grasp/simulation_ws/src/single_demo_grasping_demo/scripts/panda_ros.py
@@ -1,6 +1,6 @@
#!/usr/bin/env python
-# Copyright 1996-2020 Cyberbotics Ltd.
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/control/single_demo_grasp/simulation_ws/src/single_demo_grasping_demo/scripts/single_demo_grasp_action.py b/projects/control/single_demo_grasp/simulation_ws/src/single_demo_grasping_demo/scripts/single_demo_grasp_action.py
index 9973ccc01a..12b0556b64 100755
--- a/projects/control/single_demo_grasp/simulation_ws/src/single_demo_grasping_demo/scripts/single_demo_grasp_action.py
+++ b/projects/control/single_demo_grasp/simulation_ws/src/single_demo_grasping_demo/scripts/single_demo_grasp_action.py
@@ -1,6 +1,6 @@
#!/usr/bin/env python
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/control/single_demo_grasp/simulation_ws/src/single_demo_grasping_demo/scripts/trajectory_follower.py b/projects/control/single_demo_grasp/simulation_ws/src/single_demo_grasping_demo/scripts/trajectory_follower.py
index 70219a6e79..9847d6347a 100644
--- a/projects/control/single_demo_grasp/simulation_ws/src/single_demo_grasping_demo/scripts/trajectory_follower.py
+++ b/projects/control/single_demo_grasp/simulation_ws/src/single_demo_grasping_demo/scripts/trajectory_follower.py
@@ -1,4 +1,4 @@
-# Copyright 1996-2020 Cyberbotics Ltd.
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/control/single_demo_grasp/simulation_ws/src/single_demo_grasping_demo/scripts/utilities.py b/projects/control/single_demo_grasp/simulation_ws/src/single_demo_grasping_demo/scripts/utilities.py
index eedddd31e2..46eda4ba23 100644
--- a/projects/control/single_demo_grasp/simulation_ws/src/single_demo_grasping_demo/scripts/utilities.py
+++ b/projects/control/single_demo_grasp/simulation_ws/src/single_demo_grasping_demo/scripts/utilities.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/opendr_ws/src/perception/scripts/face_detection_retinaface.py b/projects/opendr_ws/src/perception/scripts/face_detection_retinaface.py
index fb9549ac8b..7227951b17 100755
--- a/projects/opendr_ws/src/perception/scripts/face_detection_retinaface.py
+++ b/projects/opendr_ws/src/perception/scripts/face_detection_retinaface.py
@@ -1,5 +1,5 @@
#!/usr/bin/env python
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/opendr_ws/src/perception/scripts/face_recognition.py b/projects/opendr_ws/src/perception/scripts/face_recognition.py
index bb18222782..1f489b828b 100755
--- a/projects/opendr_ws/src/perception/scripts/face_recognition.py
+++ b/projects/opendr_ws/src/perception/scripts/face_recognition.py
@@ -1,5 +1,5 @@
#!/usr/bin/env python
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/opendr_ws/src/perception/scripts/heart_anomaly_detection.py b/projects/opendr_ws/src/perception/scripts/heart_anomaly_detection.py
index 470359e5e6..4e72471b9d 100755
--- a/projects/opendr_ws/src/perception/scripts/heart_anomaly_detection.py
+++ b/projects/opendr_ws/src/perception/scripts/heart_anomaly_detection.py
@@ -1,6 +1,6 @@
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/opendr_ws/src/perception/scripts/image_dataset.py b/projects/opendr_ws/src/perception/scripts/image_dataset.py
index 98d612d703..0ce4ee3850 100644
--- a/projects/opendr_ws/src/perception/scripts/image_dataset.py
+++ b/projects/opendr_ws/src/perception/scripts/image_dataset.py
@@ -1,5 +1,5 @@
#!/usr/bin/env python
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/opendr_ws/src/perception/scripts/landmark_based_facial_expression_recognition.py b/projects/opendr_ws/src/perception/scripts/landmark_based_facial_expression_recognition.py
index 4d01bbc230..a6b0c2188f 100644
--- a/projects/opendr_ws/src/perception/scripts/landmark_based_facial_expression_recognition.py
+++ b/projects/opendr_ws/src/perception/scripts/landmark_based_facial_expression_recognition.py
@@ -1,5 +1,5 @@
#!/usr/bin/env python
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/opendr_ws/src/perception/scripts/object_detection_2d_centernet.py b/projects/opendr_ws/src/perception/scripts/object_detection_2d_centernet.py
index d87512a9cf..c1615f99a7 100755
--- a/projects/opendr_ws/src/perception/scripts/object_detection_2d_centernet.py
+++ b/projects/opendr_ws/src/perception/scripts/object_detection_2d_centernet.py
@@ -1,5 +1,5 @@
#!/usr/bin/env python
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/opendr_ws/src/perception/scripts/object_detection_2d_detr.py b/projects/opendr_ws/src/perception/scripts/object_detection_2d_detr.py
index 52f7d31aa2..ec98c4ddf0 100644
--- a/projects/opendr_ws/src/perception/scripts/object_detection_2d_detr.py
+++ b/projects/opendr_ws/src/perception/scripts/object_detection_2d_detr.py
@@ -1,5 +1,5 @@
#!/usr/bin/env python
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/opendr_ws/src/perception/scripts/object_detection_2d_gem.py b/projects/opendr_ws/src/perception/scripts/object_detection_2d_gem.py
index a48bb36d29..ee1d784566 100644
--- a/projects/opendr_ws/src/perception/scripts/object_detection_2d_gem.py
+++ b/projects/opendr_ws/src/perception/scripts/object_detection_2d_gem.py
@@ -1,5 +1,5 @@
#!/usr/bin/env python
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/opendr_ws/src/perception/scripts/object_detection_2d_ssd.py b/projects/opendr_ws/src/perception/scripts/object_detection_2d_ssd.py
index 619e4f6c4d..6f643e61cf 100755
--- a/projects/opendr_ws/src/perception/scripts/object_detection_2d_ssd.py
+++ b/projects/opendr_ws/src/perception/scripts/object_detection_2d_ssd.py
@@ -1,5 +1,5 @@
#!/usr/bin/env python
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/opendr_ws/src/perception/scripts/object_detection_2d_yolov3.py b/projects/opendr_ws/src/perception/scripts/object_detection_2d_yolov3.py
index 853fde3967..93155f148b 100755
--- a/projects/opendr_ws/src/perception/scripts/object_detection_2d_yolov3.py
+++ b/projects/opendr_ws/src/perception/scripts/object_detection_2d_yolov3.py
@@ -1,5 +1,5 @@
#!/usr/bin/env python
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/opendr_ws/src/perception/scripts/object_detection_3d_voxel.py b/projects/opendr_ws/src/perception/scripts/object_detection_3d_voxel.py
index 7034eb5a37..6d6b74015a 100644
--- a/projects/opendr_ws/src/perception/scripts/object_detection_3d_voxel.py
+++ b/projects/opendr_ws/src/perception/scripts/object_detection_3d_voxel.py
@@ -1,5 +1,5 @@
#!/usr/bin/env python
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/opendr_ws/src/perception/scripts/object_tracking_2d_deep_sort.py b/projects/opendr_ws/src/perception/scripts/object_tracking_2d_deep_sort.py
index d4d666877f..70d66c69a8 100644
--- a/projects/opendr_ws/src/perception/scripts/object_tracking_2d_deep_sort.py
+++ b/projects/opendr_ws/src/perception/scripts/object_tracking_2d_deep_sort.py
@@ -1,5 +1,5 @@
#!/usr/bin/env python
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/opendr_ws/src/perception/scripts/object_tracking_2d_fair_mot.py b/projects/opendr_ws/src/perception/scripts/object_tracking_2d_fair_mot.py
index 1e96bc2640..0f8d3a7373 100755
--- a/projects/opendr_ws/src/perception/scripts/object_tracking_2d_fair_mot.py
+++ b/projects/opendr_ws/src/perception/scripts/object_tracking_2d_fair_mot.py
@@ -1,5 +1,5 @@
#!/usr/bin/env python
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/opendr_ws/src/perception/scripts/object_tracking_3d_ab3dmot.py b/projects/opendr_ws/src/perception/scripts/object_tracking_3d_ab3dmot.py
index 460505e894..b9927182ce 100644
--- a/projects/opendr_ws/src/perception/scripts/object_tracking_3d_ab3dmot.py
+++ b/projects/opendr_ws/src/perception/scripts/object_tracking_3d_ab3dmot.py
@@ -1,5 +1,5 @@
#!/usr/bin/env python
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/opendr_ws/src/perception/scripts/panoptic_segmentation_efficient_ps.py b/projects/opendr_ws/src/perception/scripts/panoptic_segmentation_efficient_ps.py
index 9ef4274e14..bce86e46ea 100755
--- a/projects/opendr_ws/src/perception/scripts/panoptic_segmentation_efficient_ps.py
+++ b/projects/opendr_ws/src/perception/scripts/panoptic_segmentation_efficient_ps.py
@@ -1,5 +1,5 @@
#!/usr/bin/env python
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/opendr_ws/src/perception/scripts/point_cloud_dataset.py b/projects/opendr_ws/src/perception/scripts/point_cloud_dataset.py
index 6cb30a7727..0701e1005e 100644
--- a/projects/opendr_ws/src/perception/scripts/point_cloud_dataset.py
+++ b/projects/opendr_ws/src/perception/scripts/point_cloud_dataset.py
@@ -1,5 +1,5 @@
#!/usr/bin/env python
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/opendr_ws/src/perception/scripts/pose_estimation.py b/projects/opendr_ws/src/perception/scripts/pose_estimation.py
index c5622c4771..855ada40cf 100644
--- a/projects/opendr_ws/src/perception/scripts/pose_estimation.py
+++ b/projects/opendr_ws/src/perception/scripts/pose_estimation.py
@@ -1,5 +1,5 @@
#!/usr/bin/env python
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/opendr_ws/src/perception/scripts/rgbd_hand_gesture_recognition.py b/projects/opendr_ws/src/perception/scripts/rgbd_hand_gesture_recognition.py
index e01ac98308..69150856ad 100755
--- a/projects/opendr_ws/src/perception/scripts/rgbd_hand_gesture_recognition.py
+++ b/projects/opendr_ws/src/perception/scripts/rgbd_hand_gesture_recognition.py
@@ -1,6 +1,6 @@
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/opendr_ws/src/perception/scripts/semantic_segmentation_bisenet.py b/projects/opendr_ws/src/perception/scripts/semantic_segmentation_bisenet.py
index 9c56895ec6..32390c9157 100644
--- a/projects/opendr_ws/src/perception/scripts/semantic_segmentation_bisenet.py
+++ b/projects/opendr_ws/src/perception/scripts/semantic_segmentation_bisenet.py
@@ -1,5 +1,5 @@
#!/usr/bin/env python
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/opendr_ws/src/perception/scripts/skeleton_based_action_recognition.py b/projects/opendr_ws/src/perception/scripts/skeleton_based_action_recognition.py
index 12821921e6..0556acfd52 100644
--- a/projects/opendr_ws/src/perception/scripts/skeleton_based_action_recognition.py
+++ b/projects/opendr_ws/src/perception/scripts/skeleton_based_action_recognition.py
@@ -1,5 +1,5 @@
#!/usr/bin/env python
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/opendr_ws/src/perception/scripts/speech_command_recognition.py b/projects/opendr_ws/src/perception/scripts/speech_command_recognition.py
index 2c2115600b..4726b478a1 100755
--- a/projects/opendr_ws/src/perception/scripts/speech_command_recognition.py
+++ b/projects/opendr_ws/src/perception/scripts/speech_command_recognition.py
@@ -1,6 +1,6 @@
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/opendr_ws/src/perception/scripts/video_activity_recognition.py b/projects/opendr_ws/src/perception/scripts/video_activity_recognition.py
index 489bf56073..b79a462e3a 100755
--- a/projects/opendr_ws/src/perception/scripts/video_activity_recognition.py
+++ b/projects/opendr_ws/src/perception/scripts/video_activity_recognition.py
@@ -1,5 +1,5 @@
#!/usr/bin/env python
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/opendr_ws/src/ros_bridge/setup.py b/projects/opendr_ws/src/ros_bridge/setup.py
index fe148f972c..b5479915ae 100644
--- a/projects/opendr_ws/src/ros_bridge/setup.py
+++ b/projects/opendr_ws/src/ros_bridge/setup.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/opendr_ws/src/ros_bridge/src/opendr_bridge/bridge.py b/projects/opendr_ws/src/ros_bridge/src/opendr_bridge/bridge.py
index 36d5bbe5a7..fe7e4171f2 100755
--- a/projects/opendr_ws/src/ros_bridge/src/opendr_bridge/bridge.py
+++ b/projects/opendr_ws/src/ros_bridge/src/opendr_bridge/bridge.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/opendr_ws/src/simulation/scripts/human_model_generation_client.py b/projects/opendr_ws/src/simulation/scripts/human_model_generation_client.py
index 902401fa70..1f9470f9c6 100644
--- a/projects/opendr_ws/src/simulation/scripts/human_model_generation_client.py
+++ b/projects/opendr_ws/src/simulation/scripts/human_model_generation_client.py
@@ -1,5 +1,5 @@
#!/usr/bin/env python
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/opendr_ws/src/simulation/scripts/human_model_generation_service.py b/projects/opendr_ws/src/simulation/scripts/human_model_generation_service.py
index 3036aa7fec..f869d989b3 100644
--- a/projects/opendr_ws/src/simulation/scripts/human_model_generation_service.py
+++ b/projects/opendr_ws/src/simulation/scripts/human_model_generation_service.py
@@ -1,5 +1,5 @@
#!/usr/bin/env python
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/activity_recognition/demos/online_recognition/demo.py b/projects/perception/activity_recognition/demos/online_recognition/demo.py
index 4fccd16c3f..5bfd19d9ed 100644
--- a/projects/perception/activity_recognition/demos/online_recognition/demo.py
+++ b/projects/perception/activity_recognition/demos/online_recognition/demo.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/activity_recognition/demos/online_recognition/setup.py b/projects/perception/activity_recognition/demos/online_recognition/setup.py
index efdf8db3dd..571a9c8e7f 100644
--- a/projects/perception/activity_recognition/demos/online_recognition/setup.py
+++ b/projects/perception/activity_recognition/demos/online_recognition/setup.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/face_recognition/demos/benchmarking_demo.py b/projects/perception/face_recognition/demos/benchmarking_demo.py
index 55b6447764..e4278d570a 100644
--- a/projects/perception/face_recognition/demos/benchmarking_demo.py
+++ b/projects/perception/face_recognition/demos/benchmarking_demo.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/face_recognition/demos/eval_demo.py b/projects/perception/face_recognition/demos/eval_demo.py
index 5ec25670d0..91d8095bc2 100644
--- a/projects/perception/face_recognition/demos/eval_demo.py
+++ b/projects/perception/face_recognition/demos/eval_demo.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/face_recognition/demos/inference_demo.py b/projects/perception/face_recognition/demos/inference_demo.py
index b8394f3910..7e56da2cb6 100644
--- a/projects/perception/face_recognition/demos/inference_demo.py
+++ b/projects/perception/face_recognition/demos/inference_demo.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/facial_expression_recognition/landmark_based_facial_expression_recognition/demo.py b/projects/perception/facial_expression_recognition/landmark_based_facial_expression_recognition/demo.py
index b148434576..7939ac7aef 100644
--- a/projects/perception/facial_expression_recognition/landmark_based_facial_expression_recognition/demo.py
+++ b/projects/perception/facial_expression_recognition/landmark_based_facial_expression_recognition/demo.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/heart_anomaly_detection/demo.py b/projects/perception/heart_anomaly_detection/demo.py
index 5a90f79678..11cd1a426c 100644
--- a/projects/perception/heart_anomaly_detection/demo.py
+++ b/projects/perception/heart_anomaly_detection/demo.py
@@ -1,6 +1,6 @@
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/lightweight_open_pose/demos/benchmarking_demo.py b/projects/perception/lightweight_open_pose/demos/benchmarking_demo.py
index 7b7878565a..cc80487d70 100644
--- a/projects/perception/lightweight_open_pose/demos/benchmarking_demo.py
+++ b/projects/perception/lightweight_open_pose/demos/benchmarking_demo.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/lightweight_open_pose/demos/eval_demo.py b/projects/perception/lightweight_open_pose/demos/eval_demo.py
index a56bf081ac..3ecd6c6884 100644
--- a/projects/perception/lightweight_open_pose/demos/eval_demo.py
+++ b/projects/perception/lightweight_open_pose/demos/eval_demo.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/lightweight_open_pose/demos/inference_demo.py b/projects/perception/lightweight_open_pose/demos/inference_demo.py
index 126ab6cc2c..1b494919fa 100644
--- a/projects/perception/lightweight_open_pose/demos/inference_demo.py
+++ b/projects/perception/lightweight_open_pose/demos/inference_demo.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/lightweight_open_pose/demos/webcam_demo.py b/projects/perception/lightweight_open_pose/demos/webcam_demo.py
index ed56d24db2..149783d1e1 100644
--- a/projects/perception/lightweight_open_pose/demos/webcam_demo.py
+++ b/projects/perception/lightweight_open_pose/demos/webcam_demo.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/lightweight_open_pose/jetbot/fall_controller.py b/projects/perception/lightweight_open_pose/jetbot/fall_controller.py
index e4d04daff4..cc9ecb32a9 100644
--- a/projects/perception/lightweight_open_pose/jetbot/fall_controller.py
+++ b/projects/perception/lightweight_open_pose/jetbot/fall_controller.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/lightweight_open_pose/jetbot/utils/active.py b/projects/perception/lightweight_open_pose/jetbot/utils/active.py
index 9ff075daab..c1cfa0f5fb 100644
--- a/projects/perception/lightweight_open_pose/jetbot/utils/active.py
+++ b/projects/perception/lightweight_open_pose/jetbot/utils/active.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/lightweight_open_pose/jetbot/utils/pose_controller.py b/projects/perception/lightweight_open_pose/jetbot/utils/pose_controller.py
index 95569921a1..f7b3b8c10c 100644
--- a/projects/perception/lightweight_open_pose/jetbot/utils/pose_controller.py
+++ b/projects/perception/lightweight_open_pose/jetbot/utils/pose_controller.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/lightweight_open_pose/jetbot/utils/pose_utils.py b/projects/perception/lightweight_open_pose/jetbot/utils/pose_utils.py
index cb8a4724df..e36420c1ba 100644
--- a/projects/perception/lightweight_open_pose/jetbot/utils/pose_utils.py
+++ b/projects/perception/lightweight_open_pose/jetbot/utils/pose_utils.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/lightweight_open_pose/jetbot/utils/robot_interface.py b/projects/perception/lightweight_open_pose/jetbot/utils/robot_interface.py
index 72c845ab33..61784ca0a2 100644
--- a/projects/perception/lightweight_open_pose/jetbot/utils/robot_interface.py
+++ b/projects/perception/lightweight_open_pose/jetbot/utils/robot_interface.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/lightweight_open_pose/jetbot/utils/visualization.py b/projects/perception/lightweight_open_pose/jetbot/utils/visualization.py
index 2f807ccc09..c89ed76da8 100644
--- a/projects/perception/lightweight_open_pose/jetbot/utils/visualization.py
+++ b/projects/perception/lightweight_open_pose/jetbot/utils/visualization.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/lightweight_open_pose/jetbot/utils/webots.py b/projects/perception/lightweight_open_pose/jetbot/utils/webots.py
index 99c60f7e11..3daceecf58 100644
--- a/projects/perception/lightweight_open_pose/jetbot/utils/webots.py
+++ b/projects/perception/lightweight_open_pose/jetbot/utils/webots.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/multimodal_human_centric/gesture_recognition_demo.py b/projects/perception/multimodal_human_centric/gesture_recognition_demo.py
index fb1365d953..7309be3715 100644
--- a/projects/perception/multimodal_human_centric/gesture_recognition_demo.py
+++ b/projects/perception/multimodal_human_centric/gesture_recognition_demo.py
@@ -1,6 +1,6 @@
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/object_detection_2d/centernet/eval_demo.py b/projects/perception/object_detection_2d/centernet/eval_demo.py
index 3138c576e2..48b1d273cb 100644
--- a/projects/perception/object_detection_2d/centernet/eval_demo.py
+++ b/projects/perception/object_detection_2d/centernet/eval_demo.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/object_detection_2d/centernet/inference_demo.py b/projects/perception/object_detection_2d/centernet/inference_demo.py
index 6989c5136f..5715ad3226 100644
--- a/projects/perception/object_detection_2d/centernet/inference_demo.py
+++ b/projects/perception/object_detection_2d/centernet/inference_demo.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/object_detection_2d/centernet/train_demo.py b/projects/perception/object_detection_2d/centernet/train_demo.py
index a51bf4d3aa..d55bee9bba 100644
--- a/projects/perception/object_detection_2d/centernet/train_demo.py
+++ b/projects/perception/object_detection_2d/centernet/train_demo.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/object_detection_2d/detr/eval_demo.py b/projects/perception/object_detection_2d/detr/eval_demo.py
index 17c9d15094..1dd831b740 100644
--- a/projects/perception/object_detection_2d/detr/eval_demo.py
+++ b/projects/perception/object_detection_2d/detr/eval_demo.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/object_detection_2d/detr/inference_demo.py b/projects/perception/object_detection_2d/detr/inference_demo.py
index bae0c7ad66..d0fa231075 100755
--- a/projects/perception/object_detection_2d/detr/inference_demo.py
+++ b/projects/perception/object_detection_2d/detr/inference_demo.py
@@ -1,5 +1,5 @@
#!/usr/bin/env python
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/object_detection_2d/detr/train_demo.py b/projects/perception/object_detection_2d/detr/train_demo.py
index 3132fea68c..9aa93f225e 100644
--- a/projects/perception/object_detection_2d/detr/train_demo.py
+++ b/projects/perception/object_detection_2d/detr/train_demo.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/object_detection_2d/gem/inference_demo.py b/projects/perception/object_detection_2d/gem/inference_demo.py
index b5c221353f..5387f81afd 100755
--- a/projects/perception/object_detection_2d/gem/inference_demo.py
+++ b/projects/perception/object_detection_2d/gem/inference_demo.py
@@ -1,5 +1,5 @@
#!/usr/bin/env python
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/object_detection_2d/retinaface/eval_demo.py b/projects/perception/object_detection_2d/retinaface/eval_demo.py
index c512ad4fcb..e64c086088 100644
--- a/projects/perception/object_detection_2d/retinaface/eval_demo.py
+++ b/projects/perception/object_detection_2d/retinaface/eval_demo.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/object_detection_2d/retinaface/inference_demo.py b/projects/perception/object_detection_2d/retinaface/inference_demo.py
index 81bfe738f9..385c008c6b 100644
--- a/projects/perception/object_detection_2d/retinaface/inference_demo.py
+++ b/projects/perception/object_detection_2d/retinaface/inference_demo.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/object_detection_2d/retinaface/train_demo.py b/projects/perception/object_detection_2d/retinaface/train_demo.py
index ea937cf85c..b1d135bf42 100644
--- a/projects/perception/object_detection_2d/retinaface/train_demo.py
+++ b/projects/perception/object_detection_2d/retinaface/train_demo.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/object_detection_2d/ssd/eval_demo.py b/projects/perception/object_detection_2d/ssd/eval_demo.py
index 936addd09d..93e413497b 100644
--- a/projects/perception/object_detection_2d/ssd/eval_demo.py
+++ b/projects/perception/object_detection_2d/ssd/eval_demo.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/object_detection_2d/ssd/inference_demo.py b/projects/perception/object_detection_2d/ssd/inference_demo.py
index 7e8cd15018..6efc451e7d 100644
--- a/projects/perception/object_detection_2d/ssd/inference_demo.py
+++ b/projects/perception/object_detection_2d/ssd/inference_demo.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/object_detection_2d/ssd/train_demo.py b/projects/perception/object_detection_2d/ssd/train_demo.py
index 56ce546aad..b0d875269e 100644
--- a/projects/perception/object_detection_2d/ssd/train_demo.py
+++ b/projects/perception/object_detection_2d/ssd/train_demo.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/object_detection_2d/yolov3/eval_demo.py b/projects/perception/object_detection_2d/yolov3/eval_demo.py
index a4a3cc33d0..d64ebf6cac 100644
--- a/projects/perception/object_detection_2d/yolov3/eval_demo.py
+++ b/projects/perception/object_detection_2d/yolov3/eval_demo.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/object_detection_2d/yolov3/inference_demo.py b/projects/perception/object_detection_2d/yolov3/inference_demo.py
index f1e12877b5..d2c3dfd346 100644
--- a/projects/perception/object_detection_2d/yolov3/inference_demo.py
+++ b/projects/perception/object_detection_2d/yolov3/inference_demo.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/object_detection_2d/yolov3/train_demo.py b/projects/perception/object_detection_2d/yolov3/train_demo.py
index 0aec26330e..bc6af4c515 100644
--- a/projects/perception/object_detection_2d/yolov3/train_demo.py
+++ b/projects/perception/object_detection_2d/yolov3/train_demo.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/object_detection_3d/demos/voxel_object_detection_3d/data_generators.py b/projects/perception/object_detection_3d/demos/voxel_object_detection_3d/data_generators.py
index 6e4e17ea44..b0ab3ff276 100644
--- a/projects/perception/object_detection_3d/demos/voxel_object_detection_3d/data_generators.py
+++ b/projects/perception/object_detection_3d/demos/voxel_object_detection_3d/data_generators.py
@@ -1,4 +1,4 @@
-# Copyright 2020 Aarhus University.
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/object_detection_3d/demos/voxel_object_detection_3d/demo.py b/projects/perception/object_detection_3d/demos/voxel_object_detection_3d/demo.py
index c2b29dc5e3..d113b26a05 100644
--- a/projects/perception/object_detection_3d/demos/voxel_object_detection_3d/demo.py
+++ b/projects/perception/object_detection_3d/demos/voxel_object_detection_3d/demo.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/object_detection_3d/demos/voxel_object_detection_3d/draw_point_clouds.py b/projects/perception/object_detection_3d/demos/voxel_object_detection_3d/draw_point_clouds.py
index e44111dd81..2f204926d0 100644
--- a/projects/perception/object_detection_3d/demos/voxel_object_detection_3d/draw_point_clouds.py
+++ b/projects/perception/object_detection_3d/demos/voxel_object_detection_3d/draw_point_clouds.py
@@ -1,4 +1,4 @@
-# Copyright 2020 Aarhus University.
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/object_detection_3d/demos/voxel_object_detection_3d/metrics.py b/projects/perception/object_detection_3d/demos/voxel_object_detection_3d/metrics.py
index ce4fe77009..9c6432aeea 100644
--- a/projects/perception/object_detection_3d/demos/voxel_object_detection_3d/metrics.py
+++ b/projects/perception/object_detection_3d/demos/voxel_object_detection_3d/metrics.py
@@ -1,4 +1,4 @@
-# Copyright 2020 Aarhus University.
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/object_detection_3d/demos/voxel_object_detection_3d/o3m_lidar/channel.py b/projects/perception/object_detection_3d/demos/voxel_object_detection_3d/o3m_lidar/channel.py
index 08cb2b2ec8..f315c186e8 100644
--- a/projects/perception/object_detection_3d/demos/voxel_object_detection_3d/o3m_lidar/channel.py
+++ b/projects/perception/object_detection_3d/demos/voxel_object_detection_3d/o3m_lidar/channel.py
@@ -1,4 +1,4 @@
-# Copyright 2020 Aarhus University.
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/object_detection_3d/demos/voxel_object_detection_3d/o3m_lidar/main.py b/projects/perception/object_detection_3d/demos/voxel_object_detection_3d/o3m_lidar/main.py
index b2dbffa19f..d8e412d354 100644
--- a/projects/perception/object_detection_3d/demos/voxel_object_detection_3d/o3m_lidar/main.py
+++ b/projects/perception/object_detection_3d/demos/voxel_object_detection_3d/o3m_lidar/main.py
@@ -1,4 +1,4 @@
-# Copyright 2020 Aarhus University.
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/object_detection_3d/demos/voxel_object_detection_3d/o3m_lidar/o3m_lidar.py b/projects/perception/object_detection_3d/demos/voxel_object_detection_3d/o3m_lidar/o3m_lidar.py
index 047fa96900..71a80dac38 100644
--- a/projects/perception/object_detection_3d/demos/voxel_object_detection_3d/o3m_lidar/o3m_lidar.py
+++ b/projects/perception/object_detection_3d/demos/voxel_object_detection_3d/o3m_lidar/o3m_lidar.py
@@ -1,4 +1,4 @@
-# Copyright 2020 Aarhus University.
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/object_detection_3d/demos/voxel_object_detection_3d/o3m_lidar/structures.py b/projects/perception/object_detection_3d/demos/voxel_object_detection_3d/o3m_lidar/structures.py
index cb29c990c2..3b9c383a30 100644
--- a/projects/perception/object_detection_3d/demos/voxel_object_detection_3d/o3m_lidar/structures.py
+++ b/projects/perception/object_detection_3d/demos/voxel_object_detection_3d/o3m_lidar/structures.py
@@ -1,4 +1,4 @@
-# Copyright 2020 Aarhus University.
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/object_detection_3d/demos/voxel_object_detection_3d/rplidar_processor.py b/projects/perception/object_detection_3d/demos/voxel_object_detection_3d/rplidar_processor.py
index b0edc349e8..092f171ab5 100644
--- a/projects/perception/object_detection_3d/demos/voxel_object_detection_3d/rplidar_processor.py
+++ b/projects/perception/object_detection_3d/demos/voxel_object_detection_3d/rplidar_processor.py
@@ -1,4 +1,4 @@
-# Copyright 2020 Aarhus University.
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/object_detection_3d/demos/voxel_object_detection_3d/setup.py b/projects/perception/object_detection_3d/demos/voxel_object_detection_3d/setup.py
index 8e514d9c58..08dd296a54 100644
--- a/projects/perception/object_detection_3d/demos/voxel_object_detection_3d/setup.py
+++ b/projects/perception/object_detection_3d/demos/voxel_object_detection_3d/setup.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/object_tracking_2d/demos/fair_mot_deep_sort/data_generators.py b/projects/perception/object_tracking_2d/demos/fair_mot_deep_sort/data_generators.py
index 86d29514d5..898d8c678e 100644
--- a/projects/perception/object_tracking_2d/demos/fair_mot_deep_sort/data_generators.py
+++ b/projects/perception/object_tracking_2d/demos/fair_mot_deep_sort/data_generators.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/object_tracking_2d/demos/fair_mot_deep_sort/demo.py b/projects/perception/object_tracking_2d/demos/fair_mot_deep_sort/demo.py
index fcb31f09c5..c6a0819a69 100644
--- a/projects/perception/object_tracking_2d/demos/fair_mot_deep_sort/demo.py
+++ b/projects/perception/object_tracking_2d/demos/fair_mot_deep_sort/demo.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/object_tracking_2d/demos/fair_mot_deep_sort/setup.py b/projects/perception/object_tracking_2d/demos/fair_mot_deep_sort/setup.py
index 8c68576c83..f6477446b9 100644
--- a/projects/perception/object_tracking_2d/demos/fair_mot_deep_sort/setup.py
+++ b/projects/perception/object_tracking_2d/demos/fair_mot_deep_sort/setup.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/panoptic_segmentation/efficient_ps/example_usage.py b/projects/perception/panoptic_segmentation/efficient_ps/example_usage.py
index 078b6013d4..0d38de553e 100644
--- a/projects/perception/panoptic_segmentation/efficient_ps/example_usage.py
+++ b/projects/perception/panoptic_segmentation/efficient_ps/example_usage.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/semantic_segmentation/bisenet/eval_demo.py b/projects/perception/semantic_segmentation/bisenet/eval_demo.py
index cd694b83d3..97f6b6e6ed 100644
--- a/projects/perception/semantic_segmentation/bisenet/eval_demo.py
+++ b/projects/perception/semantic_segmentation/bisenet/eval_demo.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/semantic_segmentation/bisenet/inference_demo.py b/projects/perception/semantic_segmentation/bisenet/inference_demo.py
index 83b55cc03e..616918a961 100644
--- a/projects/perception/semantic_segmentation/bisenet/inference_demo.py
+++ b/projects/perception/semantic_segmentation/bisenet/inference_demo.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/semantic_segmentation/bisenet/train_demo.py b/projects/perception/semantic_segmentation/bisenet/train_demo.py
index 4ce5c85ede..d419f5b45c 100644
--- a/projects/perception/semantic_segmentation/bisenet/train_demo.py
+++ b/projects/perception/semantic_segmentation/bisenet/train_demo.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/skeleton_based_action_recognition/demos/demo.py b/projects/perception/skeleton_based_action_recognition/demos/demo.py
index 4d4342094f..85923b7008 100644
--- a/projects/perception/skeleton_based_action_recognition/demos/demo.py
+++ b/projects/perception/skeleton_based_action_recognition/demos/demo.py
@@ -1,5 +1,5 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/skeleton_based_action_recognition/demos/skeleton_extraction.py b/projects/perception/skeleton_based_action_recognition/demos/skeleton_extraction.py
index 5ce55af19e..cf7bb9148d 100644
--- a/projects/perception/skeleton_based_action_recognition/demos/skeleton_extraction.py
+++ b/projects/perception/skeleton_based_action_recognition/demos/skeleton_extraction.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/launch/experiment.py b/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/launch/experiment.py
index e20499af66..f0faf88bc0 100755
--- a/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/launch/experiment.py
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/launch/experiment.py
@@ -1,5 +1,5 @@
#! /usr/bin/env python
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/launch/experiment_real_data.py b/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/launch/experiment_real_data.py
index 551520ecb6..db6336bc75 100755
--- a/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/launch/experiment_real_data.py
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/launch/experiment_real_data.py
@@ -1,5 +1,5 @@
#! /usr/bin/env python
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/nodes/err_collector b/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/nodes/err_collector
index 01fe353d54..6531848c83 100755
--- a/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/nodes/err_collector
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/nodes/err_collector
@@ -1,5 +1,5 @@
#! /usr/bin/env python
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/nodes/fmp_plot b/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/nodes/fmp_plot
index 0d2da01572..5434bebf0c 100755
--- a/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/nodes/fmp_plot
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/nodes/fmp_plot
@@ -1,5 +1,5 @@
#! /usr/bin/env python
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/nodes/gt_mapping b/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/nodes/gt_mapping
index b9ab4025a3..ed682e23c1 100755
--- a/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/nodes/gt_mapping
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/nodes/gt_mapping
@@ -1,5 +1,5 @@
#! /usr/bin/env python
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/nodes/occ_map_saver b/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/nodes/occ_map_saver
index e92227c02f..545ebfcbf5 100755
--- a/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/nodes/occ_map_saver
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/nodes/occ_map_saver
@@ -1,5 +1,5 @@
#! /usr/bin/env python
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/nodes/odom_pose b/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/nodes/odom_pose
index b8a3d16937..8f97170d2f 100755
--- a/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/nodes/odom_pose
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/nodes/odom_pose
@@ -1,5 +1,5 @@
#! /usr/bin/env python
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/nodes/pose_error_calc b/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/nodes/pose_error_calc
index e02026638c..76a7e627b0 100755
--- a/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/nodes/pose_error_calc
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/nodes/pose_error_calc
@@ -1,5 +1,5 @@
#! /usr/bin/env python
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/package.xml b/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/package.xml
index a36601b59d..db53efca55 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/package.xml
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/package.xml
@@ -7,7 +7,7 @@
Jose Arce
- Copyright 2020-2021 OpenDR European Project
+ Copyright 2020-2022 OpenDR European Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/scripts/err_curves.py b/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/scripts/err_curves.py
index 17a6463a8a..f3e90c6e2a 100755
--- a/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/scripts/err_curves.py
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/scripts/err_curves.py
@@ -1,5 +1,5 @@
#! /usr/bin/env python
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/scripts/err_histograms.py b/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/scripts/err_histograms.py
index 67bda9c3b1..86f91673a1 100755
--- a/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/scripts/err_histograms.py
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/scripts/err_histograms.py
@@ -1,5 +1,5 @@
#! /usr/bin/env python
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/scripts/method_comparison.py b/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/scripts/method_comparison.py
index 52113d4fa2..8159a438bd 100755
--- a/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/scripts/method_comparison.py
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/scripts/method_comparison.py
@@ -1,5 +1,5 @@
#! /usr/bin/env python
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/setup.py b/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/setup.py
index 113720d3fd..4e02be6146 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/setup.py
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/setup.py
@@ -1,6 +1,6 @@
# ! DO NOT MANUALLY INVOKE THIS setup.py, USE CATKIN INSTEAD
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/src/fmp_slam_eval/enums/disc_states.py b/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/src/fmp_slam_eval/enums/disc_states.py
index 18170367d5..3fe904b8cc 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/src/fmp_slam_eval/enums/disc_states.py
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/src/fmp_slam_eval/enums/disc_states.py
@@ -1,5 +1,5 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/src/fmp_slam_eval/error_data_collector.py b/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/src/fmp_slam_eval/error_data_collector.py
index 21e128f6db..e17652199e 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/src/fmp_slam_eval/error_data_collector.py
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/src/fmp_slam_eval/error_data_collector.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/src/fmp_slam_eval/fmp_plotter.py b/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/src/fmp_slam_eval/fmp_plotter.py
index d76544b370..771958870d 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/src/fmp_slam_eval/fmp_plotter.py
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/src/fmp_slam_eval/fmp_plotter.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/src/fmp_slam_eval/ground_truth_mapping.py b/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/src/fmp_slam_eval/ground_truth_mapping.py
index 82a29b507e..81c90f8d48 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/src/fmp_slam_eval/ground_truth_mapping.py
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/src/fmp_slam_eval/ground_truth_mapping.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/src/fmp_slam_eval/map_colorizer.py b/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/src/fmp_slam_eval/map_colorizer.py
index fb3e7788e6..d3172cd4a7 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/src/fmp_slam_eval/map_colorizer.py
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/src/fmp_slam_eval/map_colorizer.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/src/fmp_slam_eval/net_utils.py b/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/src/fmp_slam_eval/net_utils.py
index e6b3a0e4b9..cb62b4241c 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/src/fmp_slam_eval/net_utils.py
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/src/fmp_slam_eval/net_utils.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/src/fmp_slam_eval/occ_map_saver.py b/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/src/fmp_slam_eval/occ_map_saver.py
index 989ae66f85..7546c32eee 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/src/fmp_slam_eval/occ_map_saver.py
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/src/fmp_slam_eval/occ_map_saver.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/src/fmp_slam_eval/odom_pose_publisher.py b/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/src/fmp_slam_eval/odom_pose_publisher.py
index 177021b55b..6298dd830a 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/src/fmp_slam_eval/odom_pose_publisher.py
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/src/fmp_slam_eval/odom_pose_publisher.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/src/fmp_slam_eval/pose_error_calculator.py b/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/src/fmp_slam_eval/pose_error_calculator.py
index 785b59f044..d8343da2be 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/src/fmp_slam_eval/pose_error_calculator.py
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/src/fmp_slam_eval/pose_error_calculator.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/src/fmp_slam_eval/ros_launcher.py b/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/src/fmp_slam_eval/ros_launcher.py
index 1830942db4..f7b58dcb3d 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/src/fmp_slam_eval/ros_launcher.py
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/src/fmp_slam_eval/ros_launcher.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/src/fmp_slam_eval/roscore.py b/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/src/fmp_slam_eval/roscore.py
index b33e3b1530..4917634114 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/src/fmp_slam_eval/roscore.py
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/fmp_slam_eval/src/fmp_slam_eval/roscore.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/package.xml b/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/package.xml
index 4e508a9945..3c47d8d9a4 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/package.xml
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/package.xml
@@ -7,7 +7,7 @@
Jose Arce
- Copyright 2020-2021 OpenDR European Project
+ Copyright 2020-2022 OpenDR European Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/scripts/mapsim2d.py b/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/scripts/mapsim2d.py
index f61d9cab39..84a98dface 100755
--- a/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/scripts/mapsim2d.py
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/scripts/mapsim2d.py
@@ -1,5 +1,5 @@
#! /usr/bin/env python
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/setup.py b/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/setup.py
index 74d11228e4..a0cd3da3cd 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/setup.py
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/setup.py
@@ -1,5 +1,5 @@
# ! DO NOT MANUALLY INVOKE THIS setup.py, USE CATKIN INSTEAD
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/geometry/primitives/closed_shape_2D.py b/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/geometry/primitives/closed_shape_2D.py
index 5ca4030cd9..6ccdd489f0 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/geometry/primitives/closed_shape_2D.py
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/geometry/primitives/closed_shape_2D.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/geometry/primitives/line.py b/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/geometry/primitives/line.py
index f446df4b86..328dbbe837 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/geometry/primitives/line.py
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/geometry/primitives/line.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/geometry/primitives/polygon.py b/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/geometry/primitives/polygon.py
index adf25e5e22..009f79d5e3 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/geometry/primitives/polygon.py
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/geometry/primitives/polygon.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/geometry/primitives/pose.py b/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/geometry/primitives/pose.py
index b67cb7287d..731d33af3e 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/geometry/primitives/pose.py
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/geometry/primitives/pose.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/geometry/transform.py b/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/geometry/transform.py
index 2bd40b1119..4b2bdef303 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/geometry/transform.py
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/geometry/transform.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/map_obstacles/obstacle.py b/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/map_obstacles/obstacle.py
index c35c318f58..dce08e6c72 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/map_obstacles/obstacle.py
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/map_obstacles/obstacle.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/map_obstacles/polygonal_obstacle.py b/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/map_obstacles/polygonal_obstacle.py
index cd9dbc5239..8325382910 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/map_obstacles/polygonal_obstacle.py
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/map_obstacles/polygonal_obstacle.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/map_simulator_2d.py b/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/map_simulator_2d.py
index eff82bc10e..e9b065ba7b 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/map_simulator_2d.py
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/map_simulator_2d.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/robot_commands/command.py b/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/robot_commands/command.py
index be1bde41b9..538560287f 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/robot_commands/command.py
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/robot_commands/command.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/robot_commands/message/bool_msg_cmd.py b/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/robot_commands/message/bool_msg_cmd.py
index f44ea79c8a..965af89776 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/robot_commands/message/bool_msg_cmd.py
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/robot_commands/message/bool_msg_cmd.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/robot_commands/message/message_cmd.py b/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/robot_commands/message/message_cmd.py
index b97e0691c4..2e30563c0b 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/robot_commands/message/message_cmd.py
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/robot_commands/message/message_cmd.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/robot_commands/misc/comment_cmd.py b/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/robot_commands/misc/comment_cmd.py
index 20114c27de..d44e20051c 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/robot_commands/misc/comment_cmd.py
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/robot_commands/misc/comment_cmd.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/robot_commands/misc/misc_cmd.py b/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/robot_commands/misc/misc_cmd.py
index 73f690fe19..9d58223818 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/robot_commands/misc/misc_cmd.py
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/robot_commands/misc/misc_cmd.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/robot_commands/misc/scan_cmd.py b/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/robot_commands/misc/scan_cmd.py
index 084140aecc..31b7d29519 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/robot_commands/misc/scan_cmd.py
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/robot_commands/misc/scan_cmd.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/robot_commands/misc/sleep_cmd.py b/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/robot_commands/misc/sleep_cmd.py
index 7dc666fa37..97829ae472 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/robot_commands/misc/sleep_cmd.py
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/robot_commands/misc/sleep_cmd.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/robot_commands/move/move_circular_cmd.py b/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/robot_commands/move/move_circular_cmd.py
index 831073ff10..fedf5970cc 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/robot_commands/move/move_circular_cmd.py
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/robot_commands/move/move_circular_cmd.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/robot_commands/move/move_cmd.py b/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/robot_commands/move/move_cmd.py
index c1038f23a7..57f0dbb402 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/robot_commands/move/move_cmd.py
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/robot_commands/move/move_cmd.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/robot_commands/move/move_interpol_cmd.py b/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/robot_commands/move/move_interpol_cmd.py
index 31bb050071..f0fc00a82c 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/robot_commands/move/move_interpol_cmd.py
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/robot_commands/move/move_interpol_cmd.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/robot_commands/move/move_linear_cmd.py b/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/robot_commands/move/move_linear_cmd.py
index 393e9534d5..53751a9d8d 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/robot_commands/move/move_linear_cmd.py
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/robot_commands/move/move_linear_cmd.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/robot_commands/move/move_pose_cmd.py b/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/robot_commands/move/move_pose_cmd.py
index bba96cc1b8..7112e6b9ea 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/robot_commands/move/move_pose_cmd.py
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/robot_commands/move/move_pose_cmd.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/robot_commands/move/move_rotation_cmd.py b/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/robot_commands/move/move_rotation_cmd.py
index d563eb8691..cdc83d5abf 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/robot_commands/move/move_rotation_cmd.py
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/robot_commands/move/move_rotation_cmd.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/utils.py b/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/utils.py
index 6c50bd2b1c..a7604f731a 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/utils.py
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/map_simulator/src/map_simulator/utils.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/Makefile b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/Makefile
index bce875a5c4..df385ec959 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/Makefile
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/Makefile
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -15,12 +15,12 @@
-include ./global.mk
ifeq ($(CARMENSUPPORT),1)
-SUBDIRS=utils sensor log configfile scanmatcher carmenwrapper gridfastslam gui gfs-carmen
+SUBDIRS=utils sensor log configfile scanmatcher carmenwrapper gridfastslam gui gfs-carmen
else
ifeq ($(MACOSX),1)
-SUBDIRS=utils sensor log configfile scanmatcher gridfastslam
+SUBDIRS=utils sensor log configfile scanmatcher gridfastslam
else
-SUBDIRS=utils sensor log configfile scanmatcher gridfastslam gui
+SUBDIRS=utils sensor log configfile scanmatcher gridfastslam gui
endif
endif
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/configfile/Makefile b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/configfile/Makefile
index 3d3626ec36..945efd360a 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/configfile/Makefile
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/configfile/Makefile
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -13,7 +13,7 @@
# limitations under the License.
OBJS= configfile.o
-APPS= configfile_test
+APPS= configfile_test
-include ../global.mk
-include ../build_tools/Makefile.generic-shared-object
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/configfile/configfile.cpp b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/configfile/configfile.cpp
index 45e4d6fae8..113e81c2aa 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/configfile/configfile.cpp
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/configfile/configfile.cpp
@@ -20,7 +20,7 @@
*
*****************************************************************/
-// Copyright 2020-2021 OpenDR European Project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/configfile/configfile_test.cpp b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/configfile/configfile_test.cpp
index 0f1b29ef19..98e1e83613 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/configfile/configfile_test.cpp
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/configfile/configfile_test.cpp
@@ -20,7 +20,7 @@
*
*****************************************************************/
-// Copyright 2020-2021 OpenDR European Project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/grid/Makefile b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/grid/Makefile
index 93f9549744..5cd20214e9 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/grid/Makefile
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/grid/Makefile
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -15,8 +15,8 @@
OBJS=
APPS= map_test
-LDFLAGS+=
-CPPFLAGS+= -DNDEBUG
+LDFLAGS+=
+CPPFLAGS+= -DNDEBUG
-include ../global.mk
-include ../build_tools/Makefile.app
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/grid/graphmap.cpp b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/grid/graphmap.cpp
index 6b420b0173..9ca6cdf074 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/grid/graphmap.cpp
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/grid/graphmap.cpp
@@ -1,4 +1,4 @@
-// Copyright 2020-2021 OpenDR European Project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/grid/map_test.cpp b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/grid/map_test.cpp
index 32867f7ee9..cba0bc945b 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/grid/map_test.cpp
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/grid/map_test.cpp
@@ -1,4 +1,4 @@
-// Copyright 2020-2021 OpenDR European Project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/gridfastslam/Makefile b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/gridfastslam/Makefile
index 7275063883..8a0f97faac 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/gridfastslam/Makefile
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/gridfastslam/Makefile
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/gridfastslam/gfs2log.cpp b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/gridfastslam/gfs2log.cpp
index 520d45228c..ecee6011c7 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/gridfastslam/gfs2log.cpp
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/gridfastslam/gfs2log.cpp
@@ -1,4 +1,4 @@
-// Copyright 2020-2021 OpenDR European Project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/gridfastslam/gfs2neff.cpp b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/gridfastslam/gfs2neff.cpp
index b51c9eae76..ddc29e647e 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/gridfastslam/gfs2neff.cpp
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/gridfastslam/gfs2neff.cpp
@@ -1,4 +1,4 @@
-// Copyright 2020-2021 OpenDR European Project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/gridfastslam/gfs2rec.cpp b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/gridfastslam/gfs2rec.cpp
index 25263f7e72..0940f9fbc3 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/gridfastslam/gfs2rec.cpp
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/gridfastslam/gfs2rec.cpp
@@ -1,4 +1,4 @@
-// Copyright 2020-2021 OpenDR European Project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/gridfastslam/gfsreader.cpp b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/gridfastslam/gfsreader.cpp
index 00b544b405..cd6ec5f6f9 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/gridfastslam/gfsreader.cpp
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/gridfastslam/gfsreader.cpp
@@ -1,4 +1,4 @@
-// Copyright 2020-2021 OpenDR European Project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/gridfastslam/gridslamprocessor.cpp b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/gridfastslam/gridslamprocessor.cpp
index 31b523d2d1..50cd006089 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/gridfastslam/gridslamprocessor.cpp
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/gridfastslam/gridslamprocessor.cpp
@@ -1,4 +1,4 @@
-// Copyright 2020-2021 OpenDR European Project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/gridfastslam/gridslamprocessor_tree.cpp b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/gridfastslam/gridslamprocessor_tree.cpp
index 3b48d0e5ce..747178fc00 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/gridfastslam/gridslamprocessor_tree.cpp
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/gridfastslam/gridslamprocessor_tree.cpp
@@ -1,4 +1,4 @@
-// Copyright 2020-2021 OpenDR European Project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/gridfastslam/motionmodel.cpp b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/gridfastslam/motionmodel.cpp
index aabb75c4e2..830c117afd 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/gridfastslam/motionmodel.cpp
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/gridfastslam/motionmodel.cpp
@@ -1,4 +1,4 @@
-// Copyright 2020-2021 OpenDR European Project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/configfile/configfile.h b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/configfile/configfile.h
index 682b7d5b72..89ebe532f3 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/configfile/configfile.h
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/configfile/configfile.h
@@ -21,7 +21,7 @@
*****************************************************************/
/*
- * Copyright 2020-2021 OpenDR European Project
+ * Copyright 2020-2022 OpenDR European Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/grid/accessstate.h b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/grid/accessstate.h
index 6595233dba..5d2567112f 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/grid/accessstate.h
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/grid/accessstate.h
@@ -1,5 +1,5 @@
/*
- * Copyright 2020-2021 OpenDR European Project
+ * Copyright 2020-2022 OpenDR European Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/grid/array2d.h b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/grid/array2d.h
index dbcbe8127b..50b6a0838b 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/grid/array2d.h
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/grid/array2d.h
@@ -1,5 +1,5 @@
/*
- * Copyright 2020-2021 OpenDR European Project
+ * Copyright 2020-2022 OpenDR European Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/grid/harray2d.h b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/grid/harray2d.h
index a47476bc1d..880fe1b3e9 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/grid/harray2d.h
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/grid/harray2d.h
@@ -1,5 +1,5 @@
/*
- * Copyright 2020-2021 OpenDR European Project
+ * Copyright 2020-2022 OpenDR European Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/grid/map.h b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/grid/map.h
index 3b667461cb..a488ce5aff 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/grid/map.h
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/grid/map.h
@@ -1,5 +1,5 @@
/*
- * Copyright 2020-2021 OpenDR European Project
+ * Copyright 2020-2022 OpenDR European Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/gridfastslam/gfsreader.h b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/gridfastslam/gfsreader.h
index 617a9dea2c..55b453427e 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/gridfastslam/gfsreader.h
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/gridfastslam/gfsreader.h
@@ -1,5 +1,5 @@
/*
- * Copyright 2020-2021 OpenDR European Project
+ * Copyright 2020-2022 OpenDR European Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/gridfastslam/gridslamprocessor.h b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/gridfastslam/gridslamprocessor.h
index 7268f18b8d..3c163293d3 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/gridfastslam/gridslamprocessor.h
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/gridfastslam/gridslamprocessor.h
@@ -1,5 +1,5 @@
/*
- * Copyright 2020-2021 OpenDR European Project
+ * Copyright 2020-2022 OpenDR European Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/gridfastslam/gridslamprocessor.hxx b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/gridfastslam/gridslamprocessor.hxx
index 998e61dd8d..4245a4d405 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/gridfastslam/gridslamprocessor.hxx
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/gridfastslam/gridslamprocessor.hxx
@@ -1,5 +1,5 @@
/*
- * Copyright 2020-2021 OpenDR European Project
+ * Copyright 2020-2022 OpenDR European Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/gridfastslam/motionmodel.h b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/gridfastslam/motionmodel.h
index 6daf5b8e76..0f4e351279 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/gridfastslam/motionmodel.h
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/gridfastslam/motionmodel.h
@@ -1,5 +1,5 @@
/*
- * Copyright 2020-2021 OpenDR European Project
+ * Copyright 2020-2022 OpenDR European Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/log/carmenconfiguration.h b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/log/carmenconfiguration.h
index 491e117d06..0aa37b5104 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/log/carmenconfiguration.h
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/log/carmenconfiguration.h
@@ -1,5 +1,5 @@
/*
- * Copyright 2020-2021 OpenDR European Project
+ * Copyright 2020-2022 OpenDR European Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/log/configuration.h b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/log/configuration.h
index 3a2e278dc1..c40d1e6fc0 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/log/configuration.h
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/log/configuration.h
@@ -1,5 +1,5 @@
/*
- * Copyright 2020-2021 OpenDR European Project
+ * Copyright 2020-2022 OpenDR European Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/log/sensorlog.h b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/log/sensorlog.h
index dfbbba1b0d..3edd2397cc 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/log/sensorlog.h
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/log/sensorlog.h
@@ -1,5 +1,5 @@
/*
- * Copyright 2020-2021 OpenDR European Project
+ * Copyright 2020-2022 OpenDR European Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/log/sensorstream.h b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/log/sensorstream.h
index f6b2933750..44e267d33a 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/log/sensorstream.h
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/log/sensorstream.h
@@ -1,5 +1,5 @@
/*
- * Copyright 2020-2021 OpenDR European Project
+ * Copyright 2020-2022 OpenDR European Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/particlefilter/particlefilter.h b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/particlefilter/particlefilter.h
index 278246526e..9d1c328572 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/particlefilter/particlefilter.h
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/particlefilter/particlefilter.h
@@ -1,5 +1,5 @@
/*
- * Copyright 2020-2021 OpenDR European Project
+ * Copyright 2020-2022 OpenDR European Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/particlefilter/pf.h b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/particlefilter/pf.h
index 109bc30322..0bb4fae251 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/particlefilter/pf.h
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/particlefilter/pf.h
@@ -1,5 +1,5 @@
/*
- * Copyright 2020-2021 OpenDR European Project
+ * Copyright 2020-2022 OpenDR European Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/scanmatcher/eig3.h b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/scanmatcher/eig3.h
index c2d691dec3..3c4c4aaa33 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/scanmatcher/eig3.h
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/scanmatcher/eig3.h
@@ -1,5 +1,5 @@
/*
- * Copyright 2020-2021 OpenDR European Project
+ * Copyright 2020-2022 OpenDR European Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/scanmatcher/gridlinetraversal.h b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/scanmatcher/gridlinetraversal.h
index a82c496d6e..e0b90fecfa 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/scanmatcher/gridlinetraversal.h
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/scanmatcher/gridlinetraversal.h
@@ -1,5 +1,5 @@
/*
- * Copyright 2020-2021 OpenDR European Project
+ * Copyright 2020-2022 OpenDR European Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/scanmatcher/icp.h b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/scanmatcher/icp.h
index 1fa9d7dad8..4ae0733e00 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/scanmatcher/icp.h
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/scanmatcher/icp.h
@@ -1,5 +1,5 @@
/*
- * Copyright 2020-2021 OpenDR European Project
+ * Copyright 2020-2022 OpenDR European Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/scanmatcher/scanmatcher.h b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/scanmatcher/scanmatcher.h
index 2984ab6b14..8615d8e866 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/scanmatcher/scanmatcher.h
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/scanmatcher/scanmatcher.h
@@ -1,5 +1,5 @@
/*
- * Copyright 2020-2021 OpenDR European Project
+ * Copyright 2020-2022 OpenDR European Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/scanmatcher/scanmatcherprocessor.h b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/scanmatcher/scanmatcherprocessor.h
index 439fe9689d..8e7bca4084 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/scanmatcher/scanmatcherprocessor.h
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/scanmatcher/scanmatcherprocessor.h
@@ -1,5 +1,5 @@
/*
- * Copyright 2020-2021 OpenDR European Project
+ * Copyright 2020-2022 OpenDR European Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/scanmatcher/smmap.h b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/scanmatcher/smmap.h
index 4567732024..bb06ed541c 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/scanmatcher/smmap.h
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/scanmatcher/smmap.h
@@ -1,5 +1,5 @@
/*
- * Copyright 2020-2021 OpenDR European Project
+ * Copyright 2020-2022 OpenDR European Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/sensor/sensor_base/sensor.h b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/sensor/sensor_base/sensor.h
index e608f60b47..0d847ede56 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/sensor/sensor_base/sensor.h
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/sensor/sensor_base/sensor.h
@@ -1,5 +1,5 @@
/*
- * Copyright 2020-2021 OpenDR European Project
+ * Copyright 2020-2022 OpenDR European Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/sensor/sensor_base/sensoreading.h b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/sensor/sensor_base/sensoreading.h
index c6cd2bf49f..c1768919a1 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/sensor/sensor_base/sensoreading.h
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/sensor/sensor_base/sensoreading.h
@@ -1,5 +1,5 @@
/*
- * Copyright 2020-2021 OpenDR European Project
+ * Copyright 2020-2022 OpenDR European Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/sensor/sensor_base/sensorreading.h b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/sensor/sensor_base/sensorreading.h
index aca1637dbc..95883b24b7 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/sensor/sensor_base/sensorreading.h
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/sensor/sensor_base/sensorreading.h
@@ -1,5 +1,5 @@
/*
- * Copyright 2020-2021 OpenDR European Project
+ * Copyright 2020-2022 OpenDR European Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/sensor/sensor_odometry/odometryreading.h b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/sensor/sensor_odometry/odometryreading.h
index 9072eadf8e..46c9f79f6d 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/sensor/sensor_odometry/odometryreading.h
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/sensor/sensor_odometry/odometryreading.h
@@ -1,5 +1,5 @@
/*
- * Copyright 2020-2021 OpenDR European Project
+ * Copyright 2020-2022 OpenDR European Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/sensor/sensor_odometry/odometrysensor.h b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/sensor/sensor_odometry/odometrysensor.h
index 078e5626ab..d28290fc98 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/sensor/sensor_odometry/odometrysensor.h
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/sensor/sensor_odometry/odometrysensor.h
@@ -1,5 +1,5 @@
/*
- * Copyright 2020-2021 OpenDR European Project
+ * Copyright 2020-2022 OpenDR European Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/sensor/sensor_range/rangereading.h b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/sensor/sensor_range/rangereading.h
index fccc2aa86c..60f10ea57d 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/sensor/sensor_range/rangereading.h
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/sensor/sensor_range/rangereading.h
@@ -1,5 +1,5 @@
/*
- * Copyright 2020-2021 OpenDR European Project
+ * Copyright 2020-2022 OpenDR European Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/sensor/sensor_range/rangesensor.h b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/sensor/sensor_range/rangesensor.h
index e02c1a1207..74a025d24a 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/sensor/sensor_range/rangesensor.h
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/sensor/sensor_range/rangesensor.h
@@ -1,5 +1,5 @@
/*
- * Copyright 2020-2021 OpenDR European Project
+ * Copyright 2020-2022 OpenDR European Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/utils/autoptr.h b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/utils/autoptr.h
index bf060e6b5d..6eec2daa24 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/utils/autoptr.h
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/utils/autoptr.h
@@ -1,5 +1,5 @@
/*
- * Copyright 2020-2021 OpenDR European Project
+ * Copyright 2020-2022 OpenDR European Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/utils/commandline.h b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/utils/commandline.h
index 8ba1b16a2c..830bc5b9ca 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/utils/commandline.h
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/utils/commandline.h
@@ -21,7 +21,7 @@
*****************************************************************/
/*
- * Copyright 2020-2021 OpenDR European Project
+ * Copyright 2020-2022 OpenDR European Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/utils/gvalues.h b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/utils/gvalues.h
index 38584d8bff..c1ce030c4e 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/utils/gvalues.h
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/utils/gvalues.h
@@ -1,5 +1,5 @@
/*
- * Copyright 2020-2021 OpenDR European Project
+ * Copyright 2020-2022 OpenDR European Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/utils/macro_params.h b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/utils/macro_params.h
index 929a308629..94f2da45c9 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/utils/macro_params.h
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/utils/macro_params.h
@@ -1,5 +1,5 @@
/*
- * Copyright 2020-2021 OpenDR European Project
+ * Copyright 2020-2022 OpenDR European Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/utils/movement.h b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/utils/movement.h
index 27d9f995f5..1ff7897b78 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/utils/movement.h
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/utils/movement.h
@@ -1,5 +1,5 @@
/*
- * Copyright 2020-2021 OpenDR European Project
+ * Copyright 2020-2022 OpenDR European Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/utils/point.h b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/utils/point.h
index bb25290f17..5f1f6e7001 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/utils/point.h
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/utils/point.h
@@ -1,5 +1,5 @@
/*
- * Copyright 2020-2021 OpenDR European Project
+ * Copyright 2020-2022 OpenDR European Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/utils/stat.h b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/utils/stat.h
index 17f217ee45..b9b7af86ac 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/utils/stat.h
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/include/gmapping/utils/stat.h
@@ -1,5 +1,5 @@
/*
- * Copyright 2020-2021 OpenDR European Project
+ * Copyright 2020-2022 OpenDR European Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/log/Makefile b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/log/Makefile
index 15dadfde65..be76533db2 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/log/Makefile
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/log/Makefile
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -15,8 +15,8 @@
OBJS= configuration.o carmenconfiguration.o sensorlog.o sensorstream.o
APPS= log_test log_plot scanstudio2carmen rdk2carmen
-LDFLAGS+= -lsensor_range -lsensor_odometry -lsensor_base
-CPPFLAGS+= -I../sensor
+LDFLAGS+= -lsensor_range -lsensor_odometry -lsensor_base
+CPPFLAGS+= -I../sensor
-include ../global.mk
-include ../build_tools/Makefile.generic-shared-object
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/log/carmenconfiguration.cpp b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/log/carmenconfiguration.cpp
index b6cb7f974c..c19d79183f 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/log/carmenconfiguration.cpp
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/log/carmenconfiguration.cpp
@@ -1,4 +1,4 @@
-// Copyright 2020-2021 OpenDR European Project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/log/configuration.cpp b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/log/configuration.cpp
index 5e5ecc2aac..6a3b1c449a 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/log/configuration.cpp
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/log/configuration.cpp
@@ -1,4 +1,4 @@
-// Copyright 2020-2021 OpenDR European Project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/log/log_plot.cpp b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/log/log_plot.cpp
index 018a655e2e..b01f3ad437 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/log/log_plot.cpp
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/log/log_plot.cpp
@@ -1,4 +1,4 @@
-// Copyright 2020-2021 OpenDR European Project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/log/log_test.cpp b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/log/log_test.cpp
index 57f5084552..05ac4a7bb9 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/log/log_test.cpp
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/log/log_test.cpp
@@ -1,4 +1,4 @@
-// Copyright 2020-2021 OpenDR European Project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/log/rdk2carmen.cpp b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/log/rdk2carmen.cpp
index 83d8c3dad9..7b9af82e17 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/log/rdk2carmen.cpp
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/log/rdk2carmen.cpp
@@ -1,4 +1,4 @@
-// Copyright 2020-2021 OpenDR European Project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/log/scanstudio2carmen.cpp b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/log/scanstudio2carmen.cpp
index d6c427ca9f..b12eae20db 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/log/scanstudio2carmen.cpp
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/log/scanstudio2carmen.cpp
@@ -1,4 +1,4 @@
-// Copyright 2020-2021 OpenDR European Project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/log/sensorlog.cpp b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/log/sensorlog.cpp
index ce58cfaae8..a2697a2da2 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/log/sensorlog.cpp
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/log/sensorlog.cpp
@@ -1,4 +1,4 @@
-// Copyright 2020-2021 OpenDR European Project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/log/sensorstream.cpp b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/log/sensorstream.cpp
index 4b9ca457b0..3c58d9806e 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/log/sensorstream.cpp
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/log/sensorstream.cpp
@@ -1,4 +1,4 @@
-// Copyright 2020-2021 OpenDR European Project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/scanmatcher/Makefile b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/scanmatcher/Makefile
index 6345d3724f..494dfcfecc 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/scanmatcher/Makefile
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/scanmatcher/Makefile
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/scanmatcher/eig3.cpp b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/scanmatcher/eig3.cpp
index ec91cb50b1..f62d3f933e 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/scanmatcher/eig3.cpp
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/scanmatcher/eig3.cpp
@@ -1,4 +1,4 @@
-// Copyright 2020-2021 OpenDR European Project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/scanmatcher/icptest.cpp b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/scanmatcher/icptest.cpp
index 791c168cf2..e738cc811b 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/scanmatcher/icptest.cpp
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/scanmatcher/icptest.cpp
@@ -1,4 +1,4 @@
-// Copyright 2020-2021 OpenDR European Project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/scanmatcher/line_test.cpp b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/scanmatcher/line_test.cpp
index 99ec050091..bbb45bc9d9 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/scanmatcher/line_test.cpp
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/scanmatcher/line_test.cpp
@@ -1,4 +1,4 @@
-// Copyright 2020-2021 OpenDR European Project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/scanmatcher/scanmatch_test.cpp b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/scanmatcher/scanmatch_test.cpp
index da7623c0df..71624be15d 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/scanmatcher/scanmatch_test.cpp
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/scanmatcher/scanmatch_test.cpp
@@ -1,4 +1,4 @@
-// Copyright 2020-2021 OpenDR European Project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/scanmatcher/scanmatcher.cpp b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/scanmatcher/scanmatcher.cpp
index 8181c76bcf..b69814b8a0 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/scanmatcher/scanmatcher.cpp
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/scanmatcher/scanmatcher.cpp
@@ -1,4 +1,4 @@
-// Copyright 2020-2021 OpenDR European Project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/scanmatcher/scanmatcher.new.cpp b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/scanmatcher/scanmatcher.new.cpp
index ea789d3644..0f2d3ead72 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/scanmatcher/scanmatcher.new.cpp
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/scanmatcher/scanmatcher.new.cpp
@@ -1,4 +1,4 @@
-// Copyright 2020-2021 OpenDR European Project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/scanmatcher/scanmatcherprocessor.cpp b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/scanmatcher/scanmatcherprocessor.cpp
index ab40d0f23f..027b26108f 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/scanmatcher/scanmatcherprocessor.cpp
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/scanmatcher/scanmatcherprocessor.cpp
@@ -1,4 +1,4 @@
-// Copyright 2020-2021 OpenDR European Project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/scanmatcher/smmap.cpp b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/scanmatcher/smmap.cpp
index a149e83fdb..133ca15e9d 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/scanmatcher/smmap.cpp
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/scanmatcher/smmap.cpp
@@ -1,4 +1,4 @@
-// Copyright 2020-2021 OpenDR European Project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/sensor/Makefile b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/sensor/Makefile
index 8f81903590..4ec1f15b2c 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/sensor/Makefile
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/sensor/Makefile
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/sensor/sensor_base/Makefile b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/sensor/sensor_base/Makefile
index 6d79eca48b..088d8d1261 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/sensor/sensor_base/Makefile
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/sensor/sensor_base/Makefile
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/sensor/sensor_base/sensor.cpp b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/sensor/sensor_base/sensor.cpp
index 0eb58ce130..9900433198 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/sensor/sensor_base/sensor.cpp
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/sensor/sensor_base/sensor.cpp
@@ -1,4 +1,4 @@
-// Copyright 2020-2021 OpenDR European Project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/sensor/sensor_base/sensorreading.cpp b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/sensor/sensor_base/sensorreading.cpp
index 3a2fc1622f..6c8a09d160 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/sensor/sensor_base/sensorreading.cpp
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/sensor/sensor_base/sensorreading.cpp
@@ -1,4 +1,4 @@
-// Copyright 2020-2021 OpenDR European Project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/sensor/sensor_odometry/Makefile b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/sensor/sensor_odometry/Makefile
index 19ac2f334d..eed998402f 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/sensor/sensor_odometry/Makefile
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/sensor/sensor_odometry/Makefile
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/sensor/sensor_odometry/odometryreading.cpp b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/sensor/sensor_odometry/odometryreading.cpp
index 86766749df..4412c96d16 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/sensor/sensor_odometry/odometryreading.cpp
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/sensor/sensor_odometry/odometryreading.cpp
@@ -1,4 +1,4 @@
-// Copyright 2020-2021 OpenDR European Project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/sensor/sensor_odometry/odometrysensor.cpp b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/sensor/sensor_odometry/odometrysensor.cpp
index 622e507eeb..9e58ff6721 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/sensor/sensor_odometry/odometrysensor.cpp
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/sensor/sensor_odometry/odometrysensor.cpp
@@ -1,4 +1,4 @@
-// Copyright 2020-2021 OpenDR European Project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/sensor/sensor_range/Makefile b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/sensor/sensor_range/Makefile
index 8ccb09831c..f86cd62043 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/sensor/sensor_range/Makefile
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/sensor/sensor_range/Makefile
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -14,9 +14,9 @@
-include ../../global.mk
-CPPFLAGS+= -I../
+CPPFLAGS+= -I../
LDFLAGS+= -lsensor_base
-OBJS= rangesensor.o rangereading.o
+OBJS= rangesensor.o rangereading.o
-include ../../build_tools/Makefile.generic-shared-object
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/sensor/sensor_range/rangereading.cpp b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/sensor/sensor_range/rangereading.cpp
index ec6f800e1e..e02c2e8722 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/sensor/sensor_range/rangereading.cpp
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/sensor/sensor_range/rangereading.cpp
@@ -1,4 +1,4 @@
-// Copyright 2020-2021 OpenDR European Project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/sensor/sensor_range/rangesensor.cpp b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/sensor/sensor_range/rangesensor.cpp
index 981af9b1ad..ebee3809f2 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/sensor/sensor_range/rangesensor.cpp
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/sensor/sensor_range/rangesensor.cpp
@@ -1,4 +1,4 @@
-// Copyright 2020-2021 OpenDR European Project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/utils/Makefile b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/utils/Makefile
index a0a693eb5c..1493284405 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/utils/Makefile
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/utils/Makefile
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/utils/autoptr_test.cpp b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/utils/autoptr_test.cpp
index e04b1c2b2f..437a9a8ccf 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/utils/autoptr_test.cpp
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/utils/autoptr_test.cpp
@@ -1,4 +1,4 @@
-// Copyright 2020-2021 OpenDR European Project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/utils/movement.cpp b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/utils/movement.cpp
index 7e38167ee2..c029ded513 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/utils/movement.cpp
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/utils/movement.cpp
@@ -1,4 +1,4 @@
-// Copyright 2020-2021 OpenDR European Project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/utils/stat.cpp b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/utils/stat.cpp
index 69f617a2ee..a040ea4645 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/utils/stat.cpp
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/utils/stat.cpp
@@ -1,4 +1,4 @@
-// Copyright 2020-2021 OpenDR European Project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/utils/stat_test.cpp b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/utils/stat_test.cpp
index ec3e7b0116..261da030d7 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/utils/stat_test.cpp
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/openslam_gmapping/utils/stat_test.cpp
@@ -1,4 +1,4 @@
-// Copyright 2020-2021 OpenDR European Project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/slam_gmapping/gmapping/src/main.cpp b/projects/perception/slam/full_map_posterior_gmapping/src/slam_gmapping/gmapping/src/main.cpp
index 73f060885e..ea88d87d85 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/slam_gmapping/gmapping/src/main.cpp
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/slam_gmapping/gmapping/src/main.cpp
@@ -29,7 +29,7 @@
/* Author: Brian Gerkey */
-// Copyright 2020-2021 OpenDR European Project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/slam_gmapping/gmapping/src/nodelet.cpp b/projects/perception/slam/full_map_posterior_gmapping/src/slam_gmapping/gmapping/src/nodelet.cpp
index aab4adbd63..8f44604bf9 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/slam_gmapping/gmapping/src/nodelet.cpp
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/slam_gmapping/gmapping/src/nodelet.cpp
@@ -27,7 +27,7 @@
*
*/
-// Copyright 2020-2021 OpenDR European Project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/slam_gmapping/gmapping/src/replay.cpp b/projects/perception/slam/full_map_posterior_gmapping/src/slam_gmapping/gmapping/src/replay.cpp
index 7da5d2bedc..4749f511d3 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/slam_gmapping/gmapping/src/replay.cpp
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/slam_gmapping/gmapping/src/replay.cpp
@@ -2,7 +2,7 @@
* Copyright 2015 Aldebaran
*/
-// Copyright 2020-2021 OpenDR European Project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/slam_gmapping/gmapping/src/slam_gmapping.cpp b/projects/perception/slam/full_map_posterior_gmapping/src/slam_gmapping/gmapping/src/slam_gmapping.cpp
index 535aefd1ec..b1cb892d07 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/slam_gmapping/gmapping/src/slam_gmapping.cpp
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/slam_gmapping/gmapping/src/slam_gmapping.cpp
@@ -30,7 +30,7 @@
/* Author: Brian Gerkey */
/* Modified by: Charles DuHadway */
-// Copyright 2020-2021 OpenDR European Project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/slam_gmapping/gmapping/src/slam_gmapping.h b/projects/perception/slam/full_map_posterior_gmapping/src/slam_gmapping/gmapping/src/slam_gmapping.h
index 1f2f248b1a..86ee0a07a6 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/slam_gmapping/gmapping/src/slam_gmapping.h
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/slam_gmapping/gmapping/src/slam_gmapping.h
@@ -30,7 +30,7 @@
/* Author: Brian Gerkey */
/*
- * Copyright 2020-2021 OpenDR European Project
+ * Copyright 2020-2022 OpenDR European Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/slam_gmapping/gmapping/test/rtest.cpp b/projects/perception/slam/full_map_posterior_gmapping/src/slam_gmapping/gmapping/test/rtest.cpp
index 09599d0acb..1224a6baf6 100644
--- a/projects/perception/slam/full_map_posterior_gmapping/src/slam_gmapping/gmapping/test/rtest.cpp
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/slam_gmapping/gmapping/test/rtest.cpp
@@ -29,7 +29,7 @@
/* Author: Brian Gerkey */
-// Copyright 2020-2021 OpenDR European Project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/projects/perception/slam/full_map_posterior_gmapping/src/slam_gmapping/gmapping/test/test_map.py b/projects/perception/slam/full_map_posterior_gmapping/src/slam_gmapping/gmapping/test/test_map.py
index 33a1ab9921..7655d8f36f 100755
--- a/projects/perception/slam/full_map_posterior_gmapping/src/slam_gmapping/gmapping/test/test_map.py
+++ b/projects/perception/slam/full_map_posterior_gmapping/src/slam_gmapping/gmapping/test/test_map.py
@@ -32,7 +32,7 @@
# POSSIBILITY OF SUCH DAMAGE.
#
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/perception/speech_command_recognition/demo.py b/projects/perception/speech_command_recognition/demo.py
index 224b17d594..2edb6665d6 100644
--- a/projects/perception/speech_command_recognition/demo.py
+++ b/projects/perception/speech_command_recognition/demo.py
@@ -1,6 +1,6 @@
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/simulation/SMPL+D_human_models/src/download_data.py b/projects/simulation/SMPL+D_human_models/src/download_data.py
index cece1d9bcd..4dc42bf2e9 100644
--- a/projects/simulation/SMPL+D_human_models/src/download_data.py
+++ b/projects/simulation/SMPL+D_human_models/src/download_data.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/simulation/SMPL+D_human_models/src/generate_models.py b/projects/simulation/SMPL+D_human_models/src/generate_models.py
index 3b7cfdacd9..007a852656 100644
--- a/projects/simulation/SMPL+D_human_models/src/generate_models.py
+++ b/projects/simulation/SMPL+D_human_models/src/generate_models.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/simulation/SMPL+D_human_models/webots/extract_anims.py b/projects/simulation/SMPL+D_human_models/webots/extract_anims.py
index 6a4026313d..a6f69c1cfc 100644
--- a/projects/simulation/SMPL+D_human_models/webots/extract_anims.py
+++ b/projects/simulation/SMPL+D_human_models/webots/extract_anims.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/simulation/SMPL+D_human_models/webots/smpl_webots/controllers/smpl_animation/Makefile b/projects/simulation/SMPL+D_human_models/webots/smpl_webots/controllers/smpl_animation/Makefile
index a22fd63291..f134727024 100644
--- a/projects/simulation/SMPL+D_human_models/webots/smpl_webots/controllers/smpl_animation/Makefile
+++ b/projects/simulation/SMPL+D_human_models/webots/smpl_webots/controllers/smpl_animation/Makefile
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -24,6 +24,6 @@ ifndef WEBOTS_SKIN_ANIMATION_PATH
WEBOTS_SKIN_ANIMATION_PATH = ../../libraries
endif
INCLUDE = -I"$(WEBOTS_SKIN_ANIMATION_PATH)/smpl_util/include"
-LIBRARIES = -L"$(WEBOTS_SKIN_ANIMATION_PATH)/smpl_util" -lsmpl_util
+LIBRARIES = -L"$(WEBOTS_SKIN_ANIMATION_PATH)/smpl_util" -lsmpl_util
# Do not modify the following: this includes Webots global Makefile.include
include $(WEBOTS_HOME_PATH)/resources/Makefile.include
diff --git a/projects/simulation/SMPL+D_human_models/webots/smpl_webots/controllers/smpl_animation/smpl_animation.c b/projects/simulation/SMPL+D_human_models/webots/smpl_webots/controllers/smpl_animation/smpl_animation.c
index 336fd07237..c85e324590 100644
--- a/projects/simulation/SMPL+D_human_models/webots/smpl_webots/controllers/smpl_animation/smpl_animation.c
+++ b/projects/simulation/SMPL+D_human_models/webots/smpl_webots/controllers/smpl_animation/smpl_animation.c
@@ -1,5 +1,5 @@
/*
- * Copyright 2020-2021 OpenDR project
+ * Copyright 2020-2022 OpenDR European Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/projects/simulation/SMPL+D_human_models/webots/smpl_webots/libraries/smpl_util/Makefile b/projects/simulation/SMPL+D_human_models/webots/smpl_webots/libraries/smpl_util/Makefile
index 90434501e9..e6cb3fdc3f 100644
--- a/projects/simulation/SMPL+D_human_models/webots/smpl_webots/libraries/smpl_util/Makefile
+++ b/projects/simulation/SMPL+D_human_models/webots/smpl_webots/libraries/smpl_util/Makefile
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/simulation/SMPL+D_human_models/webots/smpl_webots/libraries/smpl_util/include/quaternion_private.h b/projects/simulation/SMPL+D_human_models/webots/smpl_webots/libraries/smpl_util/include/quaternion_private.h
index a96cb2bd47..fa7b1ea0c2 100644
--- a/projects/simulation/SMPL+D_human_models/webots/smpl_webots/libraries/smpl_util/include/quaternion_private.h
+++ b/projects/simulation/SMPL+D_human_models/webots/smpl_webots/libraries/smpl_util/include/quaternion_private.h
@@ -1,5 +1,5 @@
/*
- * Copyright 2020-2021 OpenDR project
+ * Copyright 2020-2022 OpenDR European Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/projects/simulation/SMPL+D_human_models/webots/smpl_webots/libraries/smpl_util/include/smpl_util.h b/projects/simulation/SMPL+D_human_models/webots/smpl_webots/libraries/smpl_util/include/smpl_util.h
index 0dae5d9214..78ebe40314 100644
--- a/projects/simulation/SMPL+D_human_models/webots/smpl_webots/libraries/smpl_util/include/smpl_util.h
+++ b/projects/simulation/SMPL+D_human_models/webots/smpl_webots/libraries/smpl_util/include/smpl_util.h
@@ -1,5 +1,5 @@
/*
- * Copyright 2020-2021 OpenDR project
+ * Copyright 2020-2022 OpenDR European Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/projects/simulation/SMPL+D_human_models/webots/smpl_webots/libraries/smpl_util/include/vector3_private.h b/projects/simulation/SMPL+D_human_models/webots/smpl_webots/libraries/smpl_util/include/vector3_private.h
index 12b8a08ee4..1693b4bb66 100644
--- a/projects/simulation/SMPL+D_human_models/webots/smpl_webots/libraries/smpl_util/include/vector3_private.h
+++ b/projects/simulation/SMPL+D_human_models/webots/smpl_webots/libraries/smpl_util/include/vector3_private.h
@@ -1,5 +1,5 @@
/*
- * Copyright 2020-2021 OpenDR project
+ * Copyright 2020-2022 OpenDR European Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/projects/simulation/SMPL+D_human_models/webots/smpl_webots/libraries/smpl_util/src/quaternion.c b/projects/simulation/SMPL+D_human_models/webots/smpl_webots/libraries/smpl_util/src/quaternion.c
index b35f01fecd..e9c1382666 100644
--- a/projects/simulation/SMPL+D_human_models/webots/smpl_webots/libraries/smpl_util/src/quaternion.c
+++ b/projects/simulation/SMPL+D_human_models/webots/smpl_webots/libraries/smpl_util/src/quaternion.c
@@ -1,5 +1,5 @@
/*
- * Copyright 2020-2021 OpenDR project
+ * Copyright 2020-2022 OpenDR European Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/projects/simulation/SMPL+D_human_models/webots/smpl_webots/libraries/smpl_util/src/smpl_util.c b/projects/simulation/SMPL+D_human_models/webots/smpl_webots/libraries/smpl_util/src/smpl_util.c
index 8c9a49e325..1355e73c12 100644
--- a/projects/simulation/SMPL+D_human_models/webots/smpl_webots/libraries/smpl_util/src/smpl_util.c
+++ b/projects/simulation/SMPL+D_human_models/webots/smpl_webots/libraries/smpl_util/src/smpl_util.c
@@ -1,5 +1,5 @@
/*
- * Copyright 2020-2021 OpenDR project
+ * Copyright 2020-2022 OpenDR European Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/projects/simulation/SMPL+D_human_models/webots/smpl_webots/libraries/smpl_util/src/vector3.c b/projects/simulation/SMPL+D_human_models/webots/smpl_webots/libraries/smpl_util/src/vector3.c
index 5a8f3f2486..bad16d855f 100644
--- a/projects/simulation/SMPL+D_human_models/webots/smpl_webots/libraries/smpl_util/src/vector3.c
+++ b/projects/simulation/SMPL+D_human_models/webots/smpl_webots/libraries/smpl_util/src/vector3.c
@@ -1,5 +1,5 @@
/*
- * Copyright 2020-2021 OpenDR project
+ * Copyright 2020-2022 OpenDR European Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/projects/simulation/human_dataset_generation/background.py b/projects/simulation/human_dataset_generation/background.py
index d571b09761..a25cf5a481 100644
--- a/projects/simulation/human_dataset_generation/background.py
+++ b/projects/simulation/human_dataset_generation/background.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 Aristotle University of Thessaloniki
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/simulation/human_dataset_generation/create_background_images.py b/projects/simulation/human_dataset_generation/create_background_images.py
index 4a282e4d21..68be677cec 100644
--- a/projects/simulation/human_dataset_generation/create_background_images.py
+++ b/projects/simulation/human_dataset_generation/create_background_images.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 Aristotle University of Thessaloniki
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/simulation/human_dataset_generation/create_dataset.py b/projects/simulation/human_dataset_generation/create_dataset.py
index 801f19899c..860f85b7b2 100644
--- a/projects/simulation/human_dataset_generation/create_dataset.py
+++ b/projects/simulation/human_dataset_generation/create_dataset.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 Aristotle University of Thessaloniki
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/simulation/human_dataset_generation/data_generator.py b/projects/simulation/human_dataset_generation/data_generator.py
index 769fc0dc95..14a56000d6 100644
--- a/projects/simulation/human_dataset_generation/data_generator.py
+++ b/projects/simulation/human_dataset_generation/data_generator.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 Aristotle University of Thessaloniki
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/simulation/human_dataset_generation/reformat_cityscapes.py b/projects/simulation/human_dataset_generation/reformat_cityscapes.py
index e639173d38..cf7bc87a7b 100644
--- a/projects/simulation/human_dataset_generation/reformat_cityscapes.py
+++ b/projects/simulation/human_dataset_generation/reformat_cityscapes.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 Aristotle University of Thessaloniki
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/projects/utils/hyperparameter_tuner/hyperparameter_tuner_demo.py b/projects/utils/hyperparameter_tuner/hyperparameter_tuner_demo.py
index 4d54fa58ef..3adeb63a31 100644
--- a/projects/utils/hyperparameter_tuner/hyperparameter_tuner_demo.py
+++ b/projects/utils/hyperparameter_tuner/hyperparameter_tuner_demo.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/c_api/Makefile b/src/c_api/Makefile
index f872485fe0..1e1d783c8d 100644
--- a/src/c_api/Makefile
+++ b/src/c_api/Makefile
@@ -1,5 +1,5 @@
#
-# Copyright 2020-2021 OpenDR project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/c_api/face_recognition.cpp b/src/c_api/face_recognition.cpp
index 10a86c5325..fd646d17d9 100644
--- a/src/c_api/face_recognition.cpp
+++ b/src/c_api/face_recognition.cpp
@@ -1,5 +1,4 @@
-//
-// Copyright 2020-2021 OpenDR project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/src/c_api/opendr_utils.cpp b/src/c_api/opendr_utils.cpp
index f9b4676cf2..b28f398303 100644
--- a/src/c_api/opendr_utils.cpp
+++ b/src/c_api/opendr_utils.cpp
@@ -1,5 +1,5 @@
//
-// Copyright 2020-2021 OpenDR project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/src/opendr/_version.py b/src/opendr/_version.py
index 9234441d92..4c67cd2681 100644
--- a/src/opendr/_version.py
+++ b/src/opendr/_version.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/control/mobile_manipulation/Makefile b/src/opendr/control/mobile_manipulation/Makefile
index cd43799f63..adefb820bf 100644
--- a/src/opendr/control/mobile_manipulation/Makefile
+++ b/src/opendr/control/mobile_manipulation/Makefile
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/control/mobile_manipulation/include/gripper_planner/base_gripper_planner.hpp b/src/opendr/control/mobile_manipulation/include/gripper_planner/base_gripper_planner.hpp
index f78529cd9c..7a06ead65f 100644
--- a/src/opendr/control/mobile_manipulation/include/gripper_planner/base_gripper_planner.hpp
+++ b/src/opendr/control/mobile_manipulation/include/gripper_planner/base_gripper_planner.hpp
@@ -1,4 +1,4 @@
-// Copyright 2020-2021 OpenDR European Project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/src/opendr/control/mobile_manipulation/include/gripper_planner/gaussian_mixture_model.hpp b/src/opendr/control/mobile_manipulation/include/gripper_planner/gaussian_mixture_model.hpp
index 5653c4ef41..6c4656a671 100644
--- a/src/opendr/control/mobile_manipulation/include/gripper_planner/gaussian_mixture_model.hpp
+++ b/src/opendr/control/mobile_manipulation/include/gripper_planner/gaussian_mixture_model.hpp
@@ -1,4 +1,4 @@
-// Copyright 2020-2021 OpenDR European Project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/src/opendr/control/mobile_manipulation/include/gripper_planner/gmm_planner.hpp b/src/opendr/control/mobile_manipulation/include/gripper_planner/gmm_planner.hpp
index 618b92e772..1eaca5bf12 100644
--- a/src/opendr/control/mobile_manipulation/include/gripper_planner/gmm_planner.hpp
+++ b/src/opendr/control/mobile_manipulation/include/gripper_planner/gmm_planner.hpp
@@ -1,4 +1,4 @@
-// Copyright 2020-2021 OpenDR European Project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/src/opendr/control/mobile_manipulation/include/gripper_planner/linear_planner.hpp b/src/opendr/control/mobile_manipulation/include/gripper_planner/linear_planner.hpp
index f7d4b4cd80..78524542ba 100644
--- a/src/opendr/control/mobile_manipulation/include/gripper_planner/linear_planner.hpp
+++ b/src/opendr/control/mobile_manipulation/include/gripper_planner/linear_planner.hpp
@@ -1,4 +1,4 @@
-// Copyright 2020-2021 OpenDR European Project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/src/opendr/control/mobile_manipulation/include/mobile_manipulation_rl/robot_env.hpp b/src/opendr/control/mobile_manipulation/include/mobile_manipulation_rl/robot_env.hpp
index d63da28266..2177f103af 100644
--- a/src/opendr/control/mobile_manipulation/include/mobile_manipulation_rl/robot_env.hpp
+++ b/src/opendr/control/mobile_manipulation/include/mobile_manipulation_rl/robot_env.hpp
@@ -1,4 +1,4 @@
-// Copyright 2020-2021 OpenDR European Project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/src/opendr/control/mobile_manipulation/include/mobile_manipulation_rl/robot_hsr.hpp b/src/opendr/control/mobile_manipulation/include/mobile_manipulation_rl/robot_hsr.hpp
index 1a92f3a21f..02a58ef018 100644
--- a/src/opendr/control/mobile_manipulation/include/mobile_manipulation_rl/robot_hsr.hpp
+++ b/src/opendr/control/mobile_manipulation/include/mobile_manipulation_rl/robot_hsr.hpp
@@ -1,4 +1,4 @@
-// Copyright 2020-2021 OpenDR European Project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/src/opendr/control/mobile_manipulation/include/mobile_manipulation_rl/robot_pr2.hpp b/src/opendr/control/mobile_manipulation/include/mobile_manipulation_rl/robot_pr2.hpp
index d734fd11b2..30437dcb97 100644
--- a/src/opendr/control/mobile_manipulation/include/mobile_manipulation_rl/robot_pr2.hpp
+++ b/src/opendr/control/mobile_manipulation/include/mobile_manipulation_rl/robot_pr2.hpp
@@ -1,4 +1,4 @@
-// Copyright 2020-2021 OpenDR European Project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/src/opendr/control/mobile_manipulation/include/mobile_manipulation_rl/robot_tiago.hpp b/src/opendr/control/mobile_manipulation/include/mobile_manipulation_rl/robot_tiago.hpp
index 0f6e6624d0..8abb775a5a 100644
--- a/src/opendr/control/mobile_manipulation/include/mobile_manipulation_rl/robot_tiago.hpp
+++ b/src/opendr/control/mobile_manipulation/include/mobile_manipulation_rl/robot_tiago.hpp
@@ -1,4 +1,4 @@
-// Copyright 2020-2021 OpenDR European Project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/src/opendr/control/mobile_manipulation/include/mobile_manipulation_rl/utils.hpp b/src/opendr/control/mobile_manipulation/include/mobile_manipulation_rl/utils.hpp
index ec3445bc0e..55ead439b7 100644
--- a/src/opendr/control/mobile_manipulation/include/mobile_manipulation_rl/utils.hpp
+++ b/src/opendr/control/mobile_manipulation/include/mobile_manipulation_rl/utils.hpp
@@ -1,4 +1,4 @@
-// Copyright 2020-2021 OpenDR European Project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/src/opendr/control/mobile_manipulation/include/mobile_manipulation_rl/worlds.hpp b/src/opendr/control/mobile_manipulation/include/mobile_manipulation_rl/worlds.hpp
index 03be397737..f724a45837 100644
--- a/src/opendr/control/mobile_manipulation/include/mobile_manipulation_rl/worlds.hpp
+++ b/src/opendr/control/mobile_manipulation/include/mobile_manipulation_rl/worlds.hpp
@@ -1,4 +1,4 @@
-// Copyright 2020-2021 OpenDR European Project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/src/opendr/control/mobile_manipulation/mobileRL/envs/__init__.py b/src/opendr/control/mobile_manipulation/mobileRL/envs/__init__.py
index 0e756f1367..47a701d784 100644
--- a/src/opendr/control/mobile_manipulation/mobileRL/envs/__init__.py
+++ b/src/opendr/control/mobile_manipulation/mobileRL/envs/__init__.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/control/mobile_manipulation/mobileRL/envs/eeplanner.py b/src/opendr/control/mobile_manipulation/mobileRL/envs/eeplanner.py
index ffa8a6dc61..c0bf3ba275 100644
--- a/src/opendr/control/mobile_manipulation/mobileRL/envs/eeplanner.py
+++ b/src/opendr/control/mobile_manipulation/mobileRL/envs/eeplanner.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/control/mobile_manipulation/mobileRL/envs/env_utils.py b/src/opendr/control/mobile_manipulation/mobileRL/envs/env_utils.py
index 6fd24121ac..3972a41fda 100644
--- a/src/opendr/control/mobile_manipulation/mobileRL/envs/env_utils.py
+++ b/src/opendr/control/mobile_manipulation/mobileRL/envs/env_utils.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/control/mobile_manipulation/mobileRL/envs/map.py b/src/opendr/control/mobile_manipulation/mobileRL/envs/map.py
index c06b7208bf..6d528ded5f 100644
--- a/src/opendr/control/mobile_manipulation/mobileRL/envs/map.py
+++ b/src/opendr/control/mobile_manipulation/mobileRL/envs/map.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/control/mobile_manipulation/mobileRL/envs/mobile_manipulation_env.py b/src/opendr/control/mobile_manipulation/mobileRL/envs/mobile_manipulation_env.py
index 89892a81d1..13a17bbd1c 100644
--- a/src/opendr/control/mobile_manipulation/mobileRL/envs/mobile_manipulation_env.py
+++ b/src/opendr/control/mobile_manipulation/mobileRL/envs/mobile_manipulation_env.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/control/mobile_manipulation/mobileRL/envs/robotenv.py b/src/opendr/control/mobile_manipulation/mobileRL/envs/robotenv.py
index c0e56b74e2..fb47e344c3 100644
--- a/src/opendr/control/mobile_manipulation/mobileRL/envs/robotenv.py
+++ b/src/opendr/control/mobile_manipulation/mobileRL/envs/robotenv.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/control/mobile_manipulation/mobileRL/envs/simulator_api.py b/src/opendr/control/mobile_manipulation/mobileRL/envs/simulator_api.py
index bae72e7471..00a2c21f14 100644
--- a/src/opendr/control/mobile_manipulation/mobileRL/envs/simulator_api.py
+++ b/src/opendr/control/mobile_manipulation/mobileRL/envs/simulator_api.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/control/mobile_manipulation/mobileRL/envs/tasks.py b/src/opendr/control/mobile_manipulation/mobileRL/envs/tasks.py
index fa1dec0b16..5bb0412e01 100644
--- a/src/opendr/control/mobile_manipulation/mobileRL/envs/tasks.py
+++ b/src/opendr/control/mobile_manipulation/mobileRL/envs/tasks.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/control/mobile_manipulation/mobileRL/envs/tasks_chained.py b/src/opendr/control/mobile_manipulation/mobileRL/envs/tasks_chained.py
index 1340ef95f6..15c3175d68 100644
--- a/src/opendr/control/mobile_manipulation/mobileRL/envs/tasks_chained.py
+++ b/src/opendr/control/mobile_manipulation/mobileRL/envs/tasks_chained.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/control/mobile_manipulation/mobileRL/evaluation.py b/src/opendr/control/mobile_manipulation/mobileRL/evaluation.py
index d52e1ce81d..b62d5ee5d2 100644
--- a/src/opendr/control/mobile_manipulation/mobileRL/evaluation.py
+++ b/src/opendr/control/mobile_manipulation/mobileRL/evaluation.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/control/mobile_manipulation/mobileRL/handle_launchfiles.py b/src/opendr/control/mobile_manipulation/mobileRL/handle_launchfiles.py
index 33f0c36b2f..e1e68877db 100644
--- a/src/opendr/control/mobile_manipulation/mobileRL/handle_launchfiles.py
+++ b/src/opendr/control/mobile_manipulation/mobileRL/handle_launchfiles.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/control/mobile_manipulation/mobileRL/stablebl_callbacks.py b/src/opendr/control/mobile_manipulation/mobileRL/stablebl_callbacks.py
index 3d65f445a8..fe685a66f4 100644
--- a/src/opendr/control/mobile_manipulation/mobileRL/stablebl_callbacks.py
+++ b/src/opendr/control/mobile_manipulation/mobileRL/stablebl_callbacks.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/control/mobile_manipulation/mobileRL/utils.py b/src/opendr/control/mobile_manipulation/mobileRL/utils.py
index 5ab8c99301..a4daab39f9 100644
--- a/src/opendr/control/mobile_manipulation/mobileRL/utils.py
+++ b/src/opendr/control/mobile_manipulation/mobileRL/utils.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/control/mobile_manipulation/mobile_manipulation_learner.py b/src/opendr/control/mobile_manipulation/mobile_manipulation_learner.py
index 7f97f002f4..660f3e129f 100644
--- a/src/opendr/control/mobile_manipulation/mobile_manipulation_learner.py
+++ b/src/opendr/control/mobile_manipulation/mobile_manipulation_learner.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/control/mobile_manipulation/src/gripper_planner/base_gripper_planner.cpp b/src/opendr/control/mobile_manipulation/src/gripper_planner/base_gripper_planner.cpp
index ecf7659994..4d57caf051 100644
--- a/src/opendr/control/mobile_manipulation/src/gripper_planner/base_gripper_planner.cpp
+++ b/src/opendr/control/mobile_manipulation/src/gripper_planner/base_gripper_planner.cpp
@@ -1,4 +1,4 @@
-// Copyright 2020-2021 OpenDR European Project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/src/opendr/control/mobile_manipulation/src/gripper_planner/gaussian_mixture_model.cpp b/src/opendr/control/mobile_manipulation/src/gripper_planner/gaussian_mixture_model.cpp
index 53acac4baa..54d30e125c 100644
--- a/src/opendr/control/mobile_manipulation/src/gripper_planner/gaussian_mixture_model.cpp
+++ b/src/opendr/control/mobile_manipulation/src/gripper_planner/gaussian_mixture_model.cpp
@@ -1,4 +1,4 @@
-// Copyright 2020-2021 OpenDR European Project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/src/opendr/control/mobile_manipulation/src/gripper_planner/gmm_planner.cpp b/src/opendr/control/mobile_manipulation/src/gripper_planner/gmm_planner.cpp
index 4b2657f0ca..f2c5f31fcb 100644
--- a/src/opendr/control/mobile_manipulation/src/gripper_planner/gmm_planner.cpp
+++ b/src/opendr/control/mobile_manipulation/src/gripper_planner/gmm_planner.cpp
@@ -1,4 +1,4 @@
-// Copyright 2020-2021 OpenDR European Project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/src/opendr/control/mobile_manipulation/src/gripper_planner/linear_planner.cpp b/src/opendr/control/mobile_manipulation/src/gripper_planner/linear_planner.cpp
index 7ed68d265e..5ccf4214ae 100644
--- a/src/opendr/control/mobile_manipulation/src/gripper_planner/linear_planner.cpp
+++ b/src/opendr/control/mobile_manipulation/src/gripper_planner/linear_planner.cpp
@@ -1,4 +1,4 @@
-// Copyright 2020-2021 OpenDR European Project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/src/opendr/control/mobile_manipulation/src/pybindings.cpp b/src/opendr/control/mobile_manipulation/src/pybindings.cpp
index 159562b73d..4c9920c12d 100644
--- a/src/opendr/control/mobile_manipulation/src/pybindings.cpp
+++ b/src/opendr/control/mobile_manipulation/src/pybindings.cpp
@@ -1,4 +1,4 @@
-// Copyright 2020-2021 OpenDR European Project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/src/opendr/control/mobile_manipulation/src/robot_env.cpp b/src/opendr/control/mobile_manipulation/src/robot_env.cpp
index 2cb86e8253..b39c89a1be 100644
--- a/src/opendr/control/mobile_manipulation/src/robot_env.cpp
+++ b/src/opendr/control/mobile_manipulation/src/robot_env.cpp
@@ -1,4 +1,4 @@
-// Copyright 2020-2021 OpenDR European Project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/src/opendr/control/mobile_manipulation/src/robot_hsr.cpp b/src/opendr/control/mobile_manipulation/src/robot_hsr.cpp
index cac6d63c3f..62cc44f7b7 100644
--- a/src/opendr/control/mobile_manipulation/src/robot_hsr.cpp
+++ b/src/opendr/control/mobile_manipulation/src/robot_hsr.cpp
@@ -1,4 +1,4 @@
-// Copyright 2020-2021 OpenDR European Project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/src/opendr/control/mobile_manipulation/src/robot_pr2.cpp b/src/opendr/control/mobile_manipulation/src/robot_pr2.cpp
index 19dabce27e..d8afd43816 100644
--- a/src/opendr/control/mobile_manipulation/src/robot_pr2.cpp
+++ b/src/opendr/control/mobile_manipulation/src/robot_pr2.cpp
@@ -1,4 +1,4 @@
-// Copyright 2020-2021 OpenDR European Project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/src/opendr/control/mobile_manipulation/src/robot_tiago.cpp b/src/opendr/control/mobile_manipulation/src/robot_tiago.cpp
index d528182242..25b92c1ee5 100644
--- a/src/opendr/control/mobile_manipulation/src/robot_tiago.cpp
+++ b/src/opendr/control/mobile_manipulation/src/robot_tiago.cpp
@@ -1,4 +1,4 @@
-// Copyright 2020-2021 OpenDR European Project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/src/opendr/control/mobile_manipulation/src/utils.cpp b/src/opendr/control/mobile_manipulation/src/utils.cpp
index 414940beed..e418d49b51 100644
--- a/src/opendr/control/mobile_manipulation/src/utils.cpp
+++ b/src/opendr/control/mobile_manipulation/src/utils.cpp
@@ -1,4 +1,4 @@
-// Copyright 2020-2021 OpenDR European Project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/src/opendr/control/mobile_manipulation/src/worlds.cpp b/src/opendr/control/mobile_manipulation/src/worlds.cpp
index e5aa9c3c75..c305a03c2e 100644
--- a/src/opendr/control/mobile_manipulation/src/worlds.cpp
+++ b/src/opendr/control/mobile_manipulation/src/worlds.cpp
@@ -1,4 +1,4 @@
-// Copyright 2020-2021 OpenDR European Project
+// Copyright 2020-2022 OpenDR European Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/src/opendr/control/single_demo_grasp/Makefile b/src/opendr/control/single_demo_grasp/Makefile
index 701a747e57..755bbe20c0 100644
--- a/src/opendr/control/single_demo_grasp/Makefile
+++ b/src/opendr/control/single_demo_grasp/Makefile
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/control/single_demo_grasp/augmentation/augmentation_gui.py b/src/opendr/control/single_demo_grasp/augmentation/augmentation_gui.py
index 6312b88bc9..13fd282a8f 100644
--- a/src/opendr/control/single_demo_grasp/augmentation/augmentation_gui.py
+++ b/src/opendr/control/single_demo_grasp/augmentation/augmentation_gui.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/control/single_demo_grasp/augmentation/augmentation_utils.py b/src/opendr/control/single_demo_grasp/augmentation/augmentation_utils.py
index 990c478df1..1f6286e2d3 100644
--- a/src/opendr/control/single_demo_grasp/augmentation/augmentation_utils.py
+++ b/src/opendr/control/single_demo_grasp/augmentation/augmentation_utils.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/control/single_demo_grasp/training/learner_utils.py b/src/opendr/control/single_demo_grasp/training/learner_utils.py
index 7b1a0295a0..20f850c538 100644
--- a/src/opendr/control/single_demo_grasp/training/learner_utils.py
+++ b/src/opendr/control/single_demo_grasp/training/learner_utils.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/control/single_demo_grasp/training/single_demo_grasp_learner.py b/src/opendr/control/single_demo_grasp/training/single_demo_grasp_learner.py
index 6674b40544..ef360f599f 100644
--- a/src/opendr/control/single_demo_grasp/training/single_demo_grasp_learner.py
+++ b/src/opendr/control/single_demo_grasp/training/single_demo_grasp_learner.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/engine/constants.py b/src/opendr/engine/constants.py
index d1d7cd351a..8956b3cd97 100644
--- a/src/opendr/engine/constants.py
+++ b/src/opendr/engine/constants.py
@@ -1,4 +1,4 @@
-# Copyright 2020 Aristotle University of Thessaloniki
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/engine/data.py b/src/opendr/engine/data.py
index 41454a7e09..667027169c 100644
--- a/src/opendr/engine/data.py
+++ b/src/opendr/engine/data.py
@@ -1,4 +1,4 @@
-# Copyright 2020 Aristotle University of Thessaloniki
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/engine/datasets.py b/src/opendr/engine/datasets.py
index 438835b845..737a642863 100644
--- a/src/opendr/engine/datasets.py
+++ b/src/opendr/engine/datasets.py
@@ -1,4 +1,4 @@
-# Copyright 2020 Aristotle University of Thessaloniki
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/engine/example_learner.py b/src/opendr/engine/example_learner.py
index fe6860841c..063d5bdcd2 100644
--- a/src/opendr/engine/example_learner.py
+++ b/src/opendr/engine/example_learner.py
@@ -1,4 +1,4 @@
-# Copyright 2020 Aristotle University of Thessaloniki
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/engine/learners.py b/src/opendr/engine/learners.py
index 916ea65611..a49a0a8fc1 100644
--- a/src/opendr/engine/learners.py
+++ b/src/opendr/engine/learners.py
@@ -1,4 +1,4 @@
-# Copyright 2020 Aristotle University of Thessaloniki
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/engine/target.py b/src/opendr/engine/target.py
index 13cfeba9ad..efb922aa2f 100644
--- a/src/opendr/engine/target.py
+++ b/src/opendr/engine/target.py
@@ -1,4 +1,4 @@
-# Copyright 2020 Aristotle University of Thessaloniki
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/activity_recognition/cox3d/cox3d_learner.py b/src/opendr/perception/activity_recognition/cox3d/cox3d_learner.py
index dfbd9753a7..244ac8b278 100644
--- a/src/opendr/perception/activity_recognition/cox3d/cox3d_learner.py
+++ b/src/opendr/perception/activity_recognition/cox3d/cox3d_learner.py
@@ -1,4 +1,4 @@
-# Copyright 2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/activity_recognition/datasets/kinetics.py b/src/opendr/perception/activity_recognition/datasets/kinetics.py
index 4dd84e5657..91301d059d 100644
--- a/src/opendr/perception/activity_recognition/datasets/kinetics.py
+++ b/src/opendr/perception/activity_recognition/datasets/kinetics.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/activity_recognition/datasets/utils/transforms.py b/src/opendr/perception/activity_recognition/datasets/utils/transforms.py
index 1256d712ac..6ba0921f04 100644
--- a/src/opendr/perception/activity_recognition/datasets/utils/transforms.py
+++ b/src/opendr/perception/activity_recognition/datasets/utils/transforms.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/activity_recognition/x3d/x3d_learner.py b/src/opendr/perception/activity_recognition/x3d/x3d_learner.py
index 4c2602855c..0a413f67c2 100644
--- a/src/opendr/perception/activity_recognition/x3d/x3d_learner.py
+++ b/src/opendr/perception/activity_recognition/x3d/x3d_learner.py
@@ -1,4 +1,4 @@
-# Copyright 2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/compressive_learning/multilinear_compressive_learning/algorithm/__init__.py b/src/opendr/perception/compressive_learning/multilinear_compressive_learning/algorithm/__init__.py
index ca5542f964..2dc6914a0c 100644
--- a/src/opendr/perception/compressive_learning/multilinear_compressive_learning/algorithm/__init__.py
+++ b/src/opendr/perception/compressive_learning/multilinear_compressive_learning/algorithm/__init__.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/compressive_learning/multilinear_compressive_learning/algorithm/backbones/__init__.py b/src/opendr/perception/compressive_learning/multilinear_compressive_learning/algorithm/backbones/__init__.py
index 5b8c54ed33..4ef3dcea2f 100644
--- a/src/opendr/perception/compressive_learning/multilinear_compressive_learning/algorithm/backbones/__init__.py
+++ b/src/opendr/perception/compressive_learning/multilinear_compressive_learning/algorithm/backbones/__init__.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/compressive_learning/multilinear_compressive_learning/algorithm/backbones/cifar_allcnn.py b/src/opendr/perception/compressive_learning/multilinear_compressive_learning/algorithm/backbones/cifar_allcnn.py
index 017426c7ab..29fe420385 100644
--- a/src/opendr/perception/compressive_learning/multilinear_compressive_learning/algorithm/backbones/cifar_allcnn.py
+++ b/src/opendr/perception/compressive_learning/multilinear_compressive_learning/algorithm/backbones/cifar_allcnn.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/compressive_learning/multilinear_compressive_learning/algorithm/backbones/imagenet_densenet.py b/src/opendr/perception/compressive_learning/multilinear_compressive_learning/algorithm/backbones/imagenet_densenet.py
index 812dcc8472..169851fc54 100644
--- a/src/opendr/perception/compressive_learning/multilinear_compressive_learning/algorithm/backbones/imagenet_densenet.py
+++ b/src/opendr/perception/compressive_learning/multilinear_compressive_learning/algorithm/backbones/imagenet_densenet.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/compressive_learning/multilinear_compressive_learning/algorithm/backbones/imagenet_resnet.py b/src/opendr/perception/compressive_learning/multilinear_compressive_learning/algorithm/backbones/imagenet_resnet.py
index 75e1d44d69..ee13811c26 100644
--- a/src/opendr/perception/compressive_learning/multilinear_compressive_learning/algorithm/backbones/imagenet_resnet.py
+++ b/src/opendr/perception/compressive_learning/multilinear_compressive_learning/algorithm/backbones/imagenet_resnet.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/compressive_learning/multilinear_compressive_learning/algorithm/backbones/imagenet_vgg.py b/src/opendr/perception/compressive_learning/multilinear_compressive_learning/algorithm/backbones/imagenet_vgg.py
index 6333b88adb..e85abf230d 100644
--- a/src/opendr/perception/compressive_learning/multilinear_compressive_learning/algorithm/backbones/imagenet_vgg.py
+++ b/src/opendr/perception/compressive_learning/multilinear_compressive_learning/algorithm/backbones/imagenet_vgg.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/compressive_learning/multilinear_compressive_learning/algorithm/backbones/model_utils.py b/src/opendr/perception/compressive_learning/multilinear_compressive_learning/algorithm/backbones/model_utils.py
index 1f71140a5e..123d6e210e 100644
--- a/src/opendr/perception/compressive_learning/multilinear_compressive_learning/algorithm/backbones/model_utils.py
+++ b/src/opendr/perception/compressive_learning/multilinear_compressive_learning/algorithm/backbones/model_utils.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/compressive_learning/multilinear_compressive_learning/algorithm/data.py b/src/opendr/perception/compressive_learning/multilinear_compressive_learning/algorithm/data.py
index 9c96527eaa..380fa64bb2 100644
--- a/src/opendr/perception/compressive_learning/multilinear_compressive_learning/algorithm/data.py
+++ b/src/opendr/perception/compressive_learning/multilinear_compressive_learning/algorithm/data.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/compressive_learning/multilinear_compressive_learning/algorithm/learner.py b/src/opendr/perception/compressive_learning/multilinear_compressive_learning/algorithm/learner.py
index cb38556297..3c1f943ead 100644
--- a/src/opendr/perception/compressive_learning/multilinear_compressive_learning/algorithm/learner.py
+++ b/src/opendr/perception/compressive_learning/multilinear_compressive_learning/algorithm/learner.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/compressive_learning/multilinear_compressive_learning/multilinear_compressive_learner.py b/src/opendr/perception/compressive_learning/multilinear_compressive_learning/multilinear_compressive_learner.py
index 8386b9e212..8a71441f13 100644
--- a/src/opendr/perception/compressive_learning/multilinear_compressive_learning/multilinear_compressive_learner.py
+++ b/src/opendr/perception/compressive_learning/multilinear_compressive_learning/multilinear_compressive_learner.py
@@ -1,4 +1,4 @@
-# Copyright 1996-2020 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/face_recognition/face_recognition_learner.py b/src/opendr/perception/face_recognition/face_recognition_learner.py
index 004975c72b..dfd44b978d 100644
--- a/src/opendr/perception/face_recognition/face_recognition_learner.py
+++ b/src/opendr/perception/face_recognition/face_recognition_learner.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/facial_expression_recognition/landmark_based_facial_expression_recognition/algorithm/datasets/AFEW_data_gen.py b/src/opendr/perception/facial_expression_recognition/landmark_based_facial_expression_recognition/algorithm/datasets/AFEW_data_gen.py
index 2074667455..357272e456 100644
--- a/src/opendr/perception/facial_expression_recognition/landmark_based_facial_expression_recognition/algorithm/datasets/AFEW_data_gen.py
+++ b/src/opendr/perception/facial_expression_recognition/landmark_based_facial_expression_recognition/algorithm/datasets/AFEW_data_gen.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/facial_expression_recognition/landmark_based_facial_expression_recognition/algorithm/datasets/CASIA_CK_data_gen.py b/src/opendr/perception/facial_expression_recognition/landmark_based_facial_expression_recognition/algorithm/datasets/CASIA_CK_data_gen.py
index dbf609948f..9f0fb74452 100644
--- a/src/opendr/perception/facial_expression_recognition/landmark_based_facial_expression_recognition/algorithm/datasets/CASIA_CK_data_gen.py
+++ b/src/opendr/perception/facial_expression_recognition/landmark_based_facial_expression_recognition/algorithm/datasets/CASIA_CK_data_gen.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/facial_expression_recognition/landmark_based_facial_expression_recognition/algorithm/datasets/data_augmentation.py b/src/opendr/perception/facial_expression_recognition/landmark_based_facial_expression_recognition/algorithm/datasets/data_augmentation.py
index 83c9f97d49..45080a065f 100644
--- a/src/opendr/perception/facial_expression_recognition/landmark_based_facial_expression_recognition/algorithm/datasets/data_augmentation.py
+++ b/src/opendr/perception/facial_expression_recognition/landmark_based_facial_expression_recognition/algorithm/datasets/data_augmentation.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/facial_expression_recognition/landmark_based_facial_expression_recognition/algorithm/datasets/frame_extractor.py b/src/opendr/perception/facial_expression_recognition/landmark_based_facial_expression_recognition/algorithm/datasets/frame_extractor.py
index 83843e49f7..9e501020c1 100644
--- a/src/opendr/perception/facial_expression_recognition/landmark_based_facial_expression_recognition/algorithm/datasets/frame_extractor.py
+++ b/src/opendr/perception/facial_expression_recognition/landmark_based_facial_expression_recognition/algorithm/datasets/frame_extractor.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/facial_expression_recognition/landmark_based_facial_expression_recognition/algorithm/datasets/gen_facial_muscles_data.py b/src/opendr/perception/facial_expression_recognition/landmark_based_facial_expression_recognition/algorithm/datasets/gen_facial_muscles_data.py
index f75d202dca..30eb9eb53e 100644
--- a/src/opendr/perception/facial_expression_recognition/landmark_based_facial_expression_recognition/algorithm/datasets/gen_facial_muscles_data.py
+++ b/src/opendr/perception/facial_expression_recognition/landmark_based_facial_expression_recognition/algorithm/datasets/gen_facial_muscles_data.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/facial_expression_recognition/landmark_based_facial_expression_recognition/algorithm/datasets/landmark_extractor.py b/src/opendr/perception/facial_expression_recognition/landmark_based_facial_expression_recognition/algorithm/datasets/landmark_extractor.py
index dd0ab63588..3ee87c8b69 100644
--- a/src/opendr/perception/facial_expression_recognition/landmark_based_facial_expression_recognition/algorithm/datasets/landmark_extractor.py
+++ b/src/opendr/perception/facial_expression_recognition/landmark_based_facial_expression_recognition/algorithm/datasets/landmark_extractor.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/facial_expression_recognition/landmark_based_facial_expression_recognition/algorithm/models/pstbln.py b/src/opendr/perception/facial_expression_recognition/landmark_based_facial_expression_recognition/algorithm/models/pstbln.py
index 6dd053f780..9d8d583227 100644
--- a/src/opendr/perception/facial_expression_recognition/landmark_based_facial_expression_recognition/algorithm/models/pstbln.py
+++ b/src/opendr/perception/facial_expression_recognition/landmark_based_facial_expression_recognition/algorithm/models/pstbln.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/facial_expression_recognition/landmark_based_facial_expression_recognition/progressive_spatio_temporal_bln_learner.py b/src/opendr/perception/facial_expression_recognition/landmark_based_facial_expression_recognition/progressive_spatio_temporal_bln_learner.py
index 72e68b3146..0941f362c4 100644
--- a/src/opendr/perception/facial_expression_recognition/landmark_based_facial_expression_recognition/progressive_spatio_temporal_bln_learner.py
+++ b/src/opendr/perception/facial_expression_recognition/landmark_based_facial_expression_recognition/progressive_spatio_temporal_bln_learner.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/heart_anomaly_detection/attention_neural_bag_of_feature/algorithm/__init__.py b/src/opendr/perception/heart_anomaly_detection/attention_neural_bag_of_feature/algorithm/__init__.py
index b5b7d06a65..77323b27a3 100644
--- a/src/opendr/perception/heart_anomaly_detection/attention_neural_bag_of_feature/algorithm/__init__.py
+++ b/src/opendr/perception/heart_anomaly_detection/attention_neural_bag_of_feature/algorithm/__init__.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/heart_anomaly_detection/attention_neural_bag_of_feature/attention_neural_bag_of_feature_learner.py b/src/opendr/perception/heart_anomaly_detection/attention_neural_bag_of_feature/attention_neural_bag_of_feature_learner.py
index 7bd25b6514..9af30cd277 100644
--- a/src/opendr/perception/heart_anomaly_detection/attention_neural_bag_of_feature/attention_neural_bag_of_feature_learner.py
+++ b/src/opendr/perception/heart_anomaly_detection/attention_neural_bag_of_feature/attention_neural_bag_of_feature_learner.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/heart_anomaly_detection/gated_recurrent_unit/algorithm/__init__.py b/src/opendr/perception/heart_anomaly_detection/gated_recurrent_unit/algorithm/__init__.py
index fe6caddd71..9985cb5a3a 100644
--- a/src/opendr/perception/heart_anomaly_detection/gated_recurrent_unit/algorithm/__init__.py
+++ b/src/opendr/perception/heart_anomaly_detection/gated_recurrent_unit/algorithm/__init__.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/heart_anomaly_detection/gated_recurrent_unit/algorithm/data.py b/src/opendr/perception/heart_anomaly_detection/gated_recurrent_unit/algorithm/data.py
index 902f1b19da..d032001160 100644
--- a/src/opendr/perception/heart_anomaly_detection/gated_recurrent_unit/algorithm/data.py
+++ b/src/opendr/perception/heart_anomaly_detection/gated_recurrent_unit/algorithm/data.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/heart_anomaly_detection/gated_recurrent_unit/algorithm/models.py b/src/opendr/perception/heart_anomaly_detection/gated_recurrent_unit/algorithm/models.py
index ecb8e2e359..e980ab92cb 100644
--- a/src/opendr/perception/heart_anomaly_detection/gated_recurrent_unit/algorithm/models.py
+++ b/src/opendr/perception/heart_anomaly_detection/gated_recurrent_unit/algorithm/models.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/heart_anomaly_detection/gated_recurrent_unit/algorithm/trainers.py b/src/opendr/perception/heart_anomaly_detection/gated_recurrent_unit/algorithm/trainers.py
index fec0b76d9f..3f6f37a094 100644
--- a/src/opendr/perception/heart_anomaly_detection/gated_recurrent_unit/algorithm/trainers.py
+++ b/src/opendr/perception/heart_anomaly_detection/gated_recurrent_unit/algorithm/trainers.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/heart_anomaly_detection/gated_recurrent_unit/gated_recurrent_unit_learner.py b/src/opendr/perception/heart_anomaly_detection/gated_recurrent_unit/gated_recurrent_unit_learner.py
index 9176ba0168..50ca5ccc00 100644
--- a/src/opendr/perception/heart_anomaly_detection/gated_recurrent_unit/gated_recurrent_unit_learner.py
+++ b/src/opendr/perception/heart_anomaly_detection/gated_recurrent_unit/gated_recurrent_unit_learner.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/multimodal_human_centric/rgbd_hand_gesture_learner/algorithm/__init__.py b/src/opendr/perception/multimodal_human_centric/rgbd_hand_gesture_learner/algorithm/__init__.py
index 6a330be2f8..8ecd264d0c 100644
--- a/src/opendr/perception/multimodal_human_centric/rgbd_hand_gesture_learner/algorithm/__init__.py
+++ b/src/opendr/perception/multimodal_human_centric/rgbd_hand_gesture_learner/algorithm/__init__.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/multimodal_human_centric/rgbd_hand_gesture_learner/algorithm/architectures/__init__.py b/src/opendr/perception/multimodal_human_centric/rgbd_hand_gesture_learner/algorithm/architectures/__init__.py
index 23b6c14b9b..3f178bd998 100644
--- a/src/opendr/perception/multimodal_human_centric/rgbd_hand_gesture_learner/algorithm/architectures/__init__.py
+++ b/src/opendr/perception/multimodal_human_centric/rgbd_hand_gesture_learner/algorithm/architectures/__init__.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/multimodal_human_centric/rgbd_hand_gesture_learner/algorithm/data.py b/src/opendr/perception/multimodal_human_centric/rgbd_hand_gesture_learner/algorithm/data.py
index 36f40d13ab..fb9bbbedbc 100644
--- a/src/opendr/perception/multimodal_human_centric/rgbd_hand_gesture_learner/algorithm/data.py
+++ b/src/opendr/perception/multimodal_human_centric/rgbd_hand_gesture_learner/algorithm/data.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/multimodal_human_centric/rgbd_hand_gesture_learner/rgbd_hand_gesture_learner.py b/src/opendr/perception/multimodal_human_centric/rgbd_hand_gesture_learner/rgbd_hand_gesture_learner.py
index 0b4f3eab56..7206df99d0 100644
--- a/src/opendr/perception/multimodal_human_centric/rgbd_hand_gesture_learner/rgbd_hand_gesture_learner.py
+++ b/src/opendr/perception/multimodal_human_centric/rgbd_hand_gesture_learner/rgbd_hand_gesture_learner.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/object_detection_2d/centernet/centernet_learner.py b/src/opendr/perception/object_detection_2d/centernet/centernet_learner.py
index 7795214d66..196d8c3396 100644
--- a/src/opendr/perception/object_detection_2d/centernet/centernet_learner.py
+++ b/src/opendr/perception/object_detection_2d/centernet/centernet_learner.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/object_detection_2d/datasets/detection_dataset.py b/src/opendr/perception/object_detection_2d/datasets/detection_dataset.py
index 52cdbbdffa..0889f67a70 100644
--- a/src/opendr/perception/object_detection_2d/datasets/detection_dataset.py
+++ b/src/opendr/perception/object_detection_2d/datasets/detection_dataset.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/object_detection_2d/datasets/transforms.py b/src/opendr/perception/object_detection_2d/datasets/transforms.py
index 98b08216b6..5aa6f1e327 100644
--- a/src/opendr/perception/object_detection_2d/datasets/transforms.py
+++ b/src/opendr/perception/object_detection_2d/datasets/transforms.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/object_detection_2d/datasets/wider_face.py b/src/opendr/perception/object_detection_2d/datasets/wider_face.py
index dcf101cfbf..66c185f320 100644
--- a/src/opendr/perception/object_detection_2d/datasets/wider_face.py
+++ b/src/opendr/perception/object_detection_2d/datasets/wider_face.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/object_detection_2d/datasets/wider_person.py b/src/opendr/perception/object_detection_2d/datasets/wider_person.py
index dc09935384..d1372d3ca7 100644
--- a/src/opendr/perception/object_detection_2d/datasets/wider_person.py
+++ b/src/opendr/perception/object_detection_2d/datasets/wider_person.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/object_detection_2d/detr/algorithm/util/__init__.py b/src/opendr/perception/object_detection_2d/detr/algorithm/util/__init__.py
index aaf2a76690..74d66d73ab 100644
--- a/src/opendr/perception/object_detection_2d/detr/algorithm/util/__init__.py
+++ b/src/opendr/perception/object_detection_2d/detr/algorithm/util/__init__.py
@@ -1 +1 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
diff --git a/src/opendr/perception/object_detection_2d/detr/algorithm/util/draw.py b/src/opendr/perception/object_detection_2d/detr/algorithm/util/draw.py
index 0555814e1f..beaccb1219 100644
--- a/src/opendr/perception/object_detection_2d/detr/algorithm/util/draw.py
+++ b/src/opendr/perception/object_detection_2d/detr/algorithm/util/draw.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/object_detection_2d/detr/detr_learner.py b/src/opendr/perception/object_detection_2d/detr/detr_learner.py
index 215983a1a5..6a2ec7c526 100755
--- a/src/opendr/perception/object_detection_2d/detr/detr_learner.py
+++ b/src/opendr/perception/object_detection_2d/detr/detr_learner.py
@@ -1,4 +1,5 @@
-
+# Copyright 2020-2022 OpenDR European Project
+#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
diff --git a/src/opendr/perception/object_detection_2d/gem/algorithm/util/draw.py b/src/opendr/perception/object_detection_2d/gem/algorithm/util/draw.py
index c638190fd4..278414dc73 100644
--- a/src/opendr/perception/object_detection_2d/gem/algorithm/util/draw.py
+++ b/src/opendr/perception/object_detection_2d/gem/algorithm/util/draw.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/object_detection_2d/gem/algorithm/util/sampler.py b/src/opendr/perception/object_detection_2d/gem/algorithm/util/sampler.py
index 72b18b6a61..ebe29cd01b 100644
--- a/src/opendr/perception/object_detection_2d/gem/algorithm/util/sampler.py
+++ b/src/opendr/perception/object_detection_2d/gem/algorithm/util/sampler.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/object_detection_2d/gem/gem_learner.py b/src/opendr/perception/object_detection_2d/gem/gem_learner.py
index 3f60f7fcb6..8012d38106 100644
--- a/src/opendr/perception/object_detection_2d/gem/gem_learner.py
+++ b/src/opendr/perception/object_detection_2d/gem/gem_learner.py
@@ -1,5 +1,5 @@
-# Copyright 2020-2021 OpenDR European Project
-
+# Copyright 2020-2022 OpenDR European Project
+#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
diff --git a/src/opendr/perception/object_detection_2d/retinaface/retinaface_learner.py b/src/opendr/perception/object_detection_2d/retinaface/retinaface_learner.py
index 29f260a1ec..ce1049b53b 100644
--- a/src/opendr/perception/object_detection_2d/retinaface/retinaface_learner.py
+++ b/src/opendr/perception/object_detection_2d/retinaface/retinaface_learner.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/object_detection_2d/ssd/ssd_learner.py b/src/opendr/perception/object_detection_2d/ssd/ssd_learner.py
index 31587436c6..8bb8b8f65b 100644
--- a/src/opendr/perception/object_detection_2d/ssd/ssd_learner.py
+++ b/src/opendr/perception/object_detection_2d/ssd/ssd_learner.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/object_detection_2d/utils/eval_utils.py b/src/opendr/perception/object_detection_2d/utils/eval_utils.py
index e12df113d9..ef4674ce3c 100644
--- a/src/opendr/perception/object_detection_2d/utils/eval_utils.py
+++ b/src/opendr/perception/object_detection_2d/utils/eval_utils.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/object_detection_2d/utils/get_color_infra_alignment.py b/src/opendr/perception/object_detection_2d/utils/get_color_infra_alignment.py
index 5a3018e9d3..9df4349fce 100644
--- a/src/opendr/perception/object_detection_2d/utils/get_color_infra_alignment.py
+++ b/src/opendr/perception/object_detection_2d/utils/get_color_infra_alignment.py
@@ -1,5 +1,5 @@
#!/usr/bin/env python
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/object_detection_2d/utils/vis_utils.py b/src/opendr/perception/object_detection_2d/utils/vis_utils.py
index 37afb5f905..a84cc1309b 100644
--- a/src/opendr/perception/object_detection_2d/utils/vis_utils.py
+++ b/src/opendr/perception/object_detection_2d/utils/vis_utils.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/object_detection_2d/yolov3/yolov3_learner.py b/src/opendr/perception/object_detection_2d/yolov3/yolov3_learner.py
index bc5a98f670..6a47381b5e 100644
--- a/src/opendr/perception/object_detection_2d/yolov3/yolov3_learner.py
+++ b/src/opendr/perception/object_detection_2d/yolov3/yolov3_learner.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/object_detection_3d/datasets/create_data_kitti.py b/src/opendr/perception/object_detection_3d/datasets/create_data_kitti.py
index 012fc1e0cb..40b5318577 100644
--- a/src/opendr/perception/object_detection_3d/datasets/create_data_kitti.py
+++ b/src/opendr/perception/object_detection_3d/datasets/create_data_kitti.py
@@ -1,3 +1,4 @@
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/object_detection_3d/datasets/kitti.py b/src/opendr/perception/object_detection_3d/datasets/kitti.py
index 10b7ab8599..f07bd9c3b4 100644
--- a/src/opendr/perception/object_detection_3d/datasets/kitti.py
+++ b/src/opendr/perception/object_detection_3d/datasets/kitti.py
@@ -1,3 +1,4 @@
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/object_detection_3d/voxel_object_detection_3d/logger.py b/src/opendr/perception/object_detection_3d/voxel_object_detection_3d/logger.py
index b1987b01a3..0a479947da 100644
--- a/src/opendr/perception/object_detection_3d/voxel_object_detection_3d/logger.py
+++ b/src/opendr/perception/object_detection_3d/voxel_object_detection_3d/logger.py
@@ -1,3 +1,4 @@
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/object_detection_3d/voxel_object_detection_3d/second_detector/load.py b/src/opendr/perception/object_detection_3d/voxel_object_detection_3d/second_detector/load.py
index b47843f2b1..7793c90a61 100644
--- a/src/opendr/perception/object_detection_3d/voxel_object_detection_3d/second_detector/load.py
+++ b/src/opendr/perception/object_detection_3d/voxel_object_detection_3d/second_detector/load.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/object_detection_3d/voxel_object_detection_3d/second_detector/run.py b/src/opendr/perception/object_detection_3d/voxel_object_detection_3d/second_detector/run.py
index 8eb846046b..449131d53a 100644
--- a/src/opendr/perception/object_detection_3d/voxel_object_detection_3d/second_detector/run.py
+++ b/src/opendr/perception/object_detection_3d/voxel_object_detection_3d/second_detector/run.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/object_detection_3d/voxel_object_detection_3d/voxel_object_detection_3d_learner.py b/src/opendr/perception/object_detection_3d/voxel_object_detection_3d/voxel_object_detection_3d_learner.py
index 68ac9a1cab..c2fe0afaa9 100644
--- a/src/opendr/perception/object_detection_3d/voxel_object_detection_3d/voxel_object_detection_3d_learner.py
+++ b/src/opendr/perception/object_detection_3d/voxel_object_detection_3d/voxel_object_detection_3d_learner.py
@@ -1,4 +1,4 @@
-# Copyright 2020 Aristotle University of Thessaloniki
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/object_tracking_2d/datasets/market1501_dataset.py b/src/opendr/perception/object_tracking_2d/datasets/market1501_dataset.py
index fc7678c6be..dc7120e844 100644
--- a/src/opendr/perception/object_tracking_2d/datasets/market1501_dataset.py
+++ b/src/opendr/perception/object_tracking_2d/datasets/market1501_dataset.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/object_tracking_2d/datasets/mot_dataset.py b/src/opendr/perception/object_tracking_2d/datasets/mot_dataset.py
index 32b93ec9c9..1743798826 100644
--- a/src/opendr/perception/object_tracking_2d/datasets/mot_dataset.py
+++ b/src/opendr/perception/object_tracking_2d/datasets/mot_dataset.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/object_tracking_2d/deep_sort/algorithm/deep_sort_tracker.py b/src/opendr/perception/object_tracking_2d/deep_sort/algorithm/deep_sort_tracker.py
index 6d0a0a34ca..7073b1e6ff 100644
--- a/src/opendr/perception/object_tracking_2d/deep_sort/algorithm/deep_sort_tracker.py
+++ b/src/opendr/perception/object_tracking_2d/deep_sort/algorithm/deep_sort_tracker.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/object_tracking_2d/deep_sort/algorithm/run.py b/src/opendr/perception/object_tracking_2d/deep_sort/algorithm/run.py
index b0df630859..6e02af3313 100644
--- a/src/opendr/perception/object_tracking_2d/deep_sort/algorithm/run.py
+++ b/src/opendr/perception/object_tracking_2d/deep_sort/algorithm/run.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/object_tracking_2d/deep_sort/object_tracking_2d_deep_sort_learner.py b/src/opendr/perception/object_tracking_2d/deep_sort/object_tracking_2d_deep_sort_learner.py
index 98da503803..2cec93e397 100644
--- a/src/opendr/perception/object_tracking_2d/deep_sort/object_tracking_2d_deep_sort_learner.py
+++ b/src/opendr/perception/object_tracking_2d/deep_sort/object_tracking_2d_deep_sort_learner.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/object_tracking_2d/fair_mot/algorithm/load.py b/src/opendr/perception/object_tracking_2d/fair_mot/algorithm/load.py
index 7e64c3a4b7..54677c54e5 100644
--- a/src/opendr/perception/object_tracking_2d/fair_mot/algorithm/load.py
+++ b/src/opendr/perception/object_tracking_2d/fair_mot/algorithm/load.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/object_tracking_2d/fair_mot/algorithm/run.py b/src/opendr/perception/object_tracking_2d/fair_mot/algorithm/run.py
index c3767ae54a..64d272828c 100644
--- a/src/opendr/perception/object_tracking_2d/fair_mot/algorithm/run.py
+++ b/src/opendr/perception/object_tracking_2d/fair_mot/algorithm/run.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/object_tracking_2d/fair_mot/object_tracking_2d_fair_mot_learner.py b/src/opendr/perception/object_tracking_2d/fair_mot/object_tracking_2d_fair_mot_learner.py
index f719b4dc7a..d22735a919 100644
--- a/src/opendr/perception/object_tracking_2d/fair_mot/object_tracking_2d_fair_mot_learner.py
+++ b/src/opendr/perception/object_tracking_2d/fair_mot/object_tracking_2d_fair_mot_learner.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/object_tracking_2d/logger.py b/src/opendr/perception/object_tracking_2d/logger.py
index 7272692abb..0a479947da 100644
--- a/src/opendr/perception/object_tracking_2d/logger.py
+++ b/src/opendr/perception/object_tracking_2d/logger.py
@@ -1,4 +1,5 @@
-
+# Copyright 2020-2022 OpenDR European Project
+#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
diff --git a/src/opendr/perception/object_tracking_3d/ab3dmot/algorithm/ab3dmot.py b/src/opendr/perception/object_tracking_3d/ab3dmot/algorithm/ab3dmot.py
index e753d7caed..19b0e1d761 100644
--- a/src/opendr/perception/object_tracking_3d/ab3dmot/algorithm/ab3dmot.py
+++ b/src/opendr/perception/object_tracking_3d/ab3dmot/algorithm/ab3dmot.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/object_tracking_3d/ab3dmot/algorithm/evaluate.py b/src/opendr/perception/object_tracking_3d/ab3dmot/algorithm/evaluate.py
index 4a3cacbe02..d28d8d9951 100644
--- a/src/opendr/perception/object_tracking_3d/ab3dmot/algorithm/evaluate.py
+++ b/src/opendr/perception/object_tracking_3d/ab3dmot/algorithm/evaluate.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/object_tracking_3d/ab3dmot/algorithm/kalman_tracker_3d.py b/src/opendr/perception/object_tracking_3d/ab3dmot/algorithm/kalman_tracker_3d.py
index d1caed5d59..5f73a56a78 100644
--- a/src/opendr/perception/object_tracking_3d/ab3dmot/algorithm/kalman_tracker_3d.py
+++ b/src/opendr/perception/object_tracking_3d/ab3dmot/algorithm/kalman_tracker_3d.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/object_tracking_3d/ab3dmot/logger.py b/src/opendr/perception/object_tracking_3d/ab3dmot/logger.py
index b1987b01a3..0a479947da 100644
--- a/src/opendr/perception/object_tracking_3d/ab3dmot/logger.py
+++ b/src/opendr/perception/object_tracking_3d/ab3dmot/logger.py
@@ -1,3 +1,4 @@
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/object_tracking_3d/ab3dmot/object_tracking_3d_ab3dmot_learner.py b/src/opendr/perception/object_tracking_3d/ab3dmot/object_tracking_3d_ab3dmot_learner.py
index 1d607006ce..b542fc510d 100644
--- a/src/opendr/perception/object_tracking_3d/ab3dmot/object_tracking_3d_ab3dmot_learner.py
+++ b/src/opendr/perception/object_tracking_3d/ab3dmot/object_tracking_3d_ab3dmot_learner.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/object_tracking_3d/datasets/kitti_tracking.py b/src/opendr/perception/object_tracking_3d/datasets/kitti_tracking.py
index c7b57cacd1..6332b8889c 100644
--- a/src/opendr/perception/object_tracking_3d/datasets/kitti_tracking.py
+++ b/src/opendr/perception/object_tracking_3d/datasets/kitti_tracking.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/panoptic_segmentation/datasets/cityscapes.py b/src/opendr/perception/panoptic_segmentation/datasets/cityscapes.py
index b48b74973b..eb9f25bf3b 100644
--- a/src/opendr/perception/panoptic_segmentation/datasets/cityscapes.py
+++ b/src/opendr/perception/panoptic_segmentation/datasets/cityscapes.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/panoptic_segmentation/datasets/kitti.py b/src/opendr/perception/panoptic_segmentation/datasets/kitti.py
index 11da638406..212e75931c 100644
--- a/src/opendr/perception/panoptic_segmentation/datasets/kitti.py
+++ b/src/opendr/perception/panoptic_segmentation/datasets/kitti.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/panoptic_segmentation/efficient_ps/configs/singlegpu_sample.py b/src/opendr/perception/panoptic_segmentation/efficient_ps/configs/singlegpu_sample.py
index 31572fae30..6670a71a01 100644
--- a/src/opendr/perception/panoptic_segmentation/efficient_ps/configs/singlegpu_sample.py
+++ b/src/opendr/perception/panoptic_segmentation/efficient_ps/configs/singlegpu_sample.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/panoptic_segmentation/efficient_ps/efficient_ps_learner.py b/src/opendr/perception/panoptic_segmentation/efficient_ps/efficient_ps_learner.py
index ccd177cd40..12b68711ad 100644
--- a/src/opendr/perception/panoptic_segmentation/efficient_ps/efficient_ps_learner.py
+++ b/src/opendr/perception/panoptic_segmentation/efficient_ps/efficient_ps_learner.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/pose_estimation/lightweight_open_pose/algorithm/models/with_mobilenet_v2.py b/src/opendr/perception/pose_estimation/lightweight_open_pose/algorithm/models/with_mobilenet_v2.py
index 1195d38c90..da3f2016f9 100644
--- a/src/opendr/perception/pose_estimation/lightweight_open_pose/algorithm/models/with_mobilenet_v2.py
+++ b/src/opendr/perception/pose_estimation/lightweight_open_pose/algorithm/models/with_mobilenet_v2.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/pose_estimation/lightweight_open_pose/algorithm/models/with_shufflenet.py b/src/opendr/perception/pose_estimation/lightweight_open_pose/algorithm/models/with_shufflenet.py
index e3e6a4f441..09ce1be3d7 100644
--- a/src/opendr/perception/pose_estimation/lightweight_open_pose/algorithm/models/with_shufflenet.py
+++ b/src/opendr/perception/pose_estimation/lightweight_open_pose/algorithm/models/with_shufflenet.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/pose_estimation/lightweight_open_pose/filtered_pose.py b/src/opendr/perception/pose_estimation/lightweight_open_pose/filtered_pose.py
index d64e7f9383..680acb428a 100644
--- a/src/opendr/perception/pose_estimation/lightweight_open_pose/filtered_pose.py
+++ b/src/opendr/perception/pose_estimation/lightweight_open_pose/filtered_pose.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/pose_estimation/lightweight_open_pose/lightweight_open_pose_learner.py b/src/opendr/perception/pose_estimation/lightweight_open_pose/lightweight_open_pose_learner.py
index 370c64db9a..f0002c8bab 100644
--- a/src/opendr/perception/pose_estimation/lightweight_open_pose/lightweight_open_pose_learner.py
+++ b/src/opendr/perception/pose_estimation/lightweight_open_pose/lightweight_open_pose_learner.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/pose_estimation/lightweight_open_pose/utilities.py b/src/opendr/perception/pose_estimation/lightweight_open_pose/utilities.py
index 3b08d473b6..d26dc49a0e 100644
--- a/src/opendr/perception/pose_estimation/lightweight_open_pose/utilities.py
+++ b/src/opendr/perception/pose_estimation/lightweight_open_pose/utilities.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/semantic_segmentation/bisenet/CamVid.py b/src/opendr/perception/semantic_segmentation/bisenet/CamVid.py
index d92ffe5c39..626d60ef46 100644
--- a/src/opendr/perception/semantic_segmentation/bisenet/CamVid.py
+++ b/src/opendr/perception/semantic_segmentation/bisenet/CamVid.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/semantic_segmentation/bisenet/bisenet_learner.py b/src/opendr/perception/semantic_segmentation/bisenet/bisenet_learner.py
index d8c9687bb5..f5ec72da4f 100644
--- a/src/opendr/perception/semantic_segmentation/bisenet/bisenet_learner.py
+++ b/src/opendr/perception/semantic_segmentation/bisenet/bisenet_learner.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/skeleton_based_action_recognition/progressive_spatio_temporal_gcn_learner.py b/src/opendr/perception/skeleton_based_action_recognition/progressive_spatio_temporal_gcn_learner.py
index fb0ef4f5bc..5fe9b8c5e5 100644
--- a/src/opendr/perception/skeleton_based_action_recognition/progressive_spatio_temporal_gcn_learner.py
+++ b/src/opendr/perception/skeleton_based_action_recognition/progressive_spatio_temporal_gcn_learner.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/skeleton_based_action_recognition/spatio_temporal_gcn_learner.py b/src/opendr/perception/skeleton_based_action_recognition/spatio_temporal_gcn_learner.py
index 7501593922..6589637f72 100644
--- a/src/opendr/perception/skeleton_based_action_recognition/spatio_temporal_gcn_learner.py
+++ b/src/opendr/perception/skeleton_based_action_recognition/spatio_temporal_gcn_learner.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/speech_recognition/edgespeechnets/algorithm/audioutils.py b/src/opendr/perception/speech_recognition/edgespeechnets/algorithm/audioutils.py
index 502752cac6..db39f97260 100644
--- a/src/opendr/perception/speech_recognition/edgespeechnets/algorithm/audioutils.py
+++ b/src/opendr/perception/speech_recognition/edgespeechnets/algorithm/audioutils.py
@@ -1,4 +1,4 @@
-# Copyright 2020 Tampere University
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/speech_recognition/edgespeechnets/algorithm/models.py b/src/opendr/perception/speech_recognition/edgespeechnets/algorithm/models.py
index 3cf618cee0..384115dca1 100644
--- a/src/opendr/perception/speech_recognition/edgespeechnets/algorithm/models.py
+++ b/src/opendr/perception/speech_recognition/edgespeechnets/algorithm/models.py
@@ -1,4 +1,4 @@
-# Copyright 2020 Tampere University
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/speech_recognition/edgespeechnets/edgespeechnets_learner.py b/src/opendr/perception/speech_recognition/edgespeechnets/edgespeechnets_learner.py
index a229053b63..2882658539 100644
--- a/src/opendr/perception/speech_recognition/edgespeechnets/edgespeechnets_learner.py
+++ b/src/opendr/perception/speech_recognition/edgespeechnets/edgespeechnets_learner.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/speech_recognition/matchboxnet/algorithm/audioutils.py b/src/opendr/perception/speech_recognition/matchboxnet/algorithm/audioutils.py
index 502752cac6..db39f97260 100644
--- a/src/opendr/perception/speech_recognition/matchboxnet/algorithm/audioutils.py
+++ b/src/opendr/perception/speech_recognition/matchboxnet/algorithm/audioutils.py
@@ -1,4 +1,4 @@
-# Copyright 2020 Tampere University
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/speech_recognition/matchboxnet/algorithm/model.py b/src/opendr/perception/speech_recognition/matchboxnet/algorithm/model.py
index 0c9fa512ad..999027305d 100644
--- a/src/opendr/perception/speech_recognition/matchboxnet/algorithm/model.py
+++ b/src/opendr/perception/speech_recognition/matchboxnet/algorithm/model.py
@@ -1,4 +1,4 @@
-# Copyright 2020 Tampere University
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/speech_recognition/matchboxnet/matchboxnet_learner.py b/src/opendr/perception/speech_recognition/matchboxnet/matchboxnet_learner.py
index 90a90c0163..292887a1ce 100644
--- a/src/opendr/perception/speech_recognition/matchboxnet/matchboxnet_learner.py
+++ b/src/opendr/perception/speech_recognition/matchboxnet/matchboxnet_learner.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/speech_recognition/quadraticselfonn/algorithm/audioutils.py b/src/opendr/perception/speech_recognition/quadraticselfonn/algorithm/audioutils.py
index 5ecaaca543..f2b7bbe763 100644
--- a/src/opendr/perception/speech_recognition/quadraticselfonn/algorithm/audioutils.py
+++ b/src/opendr/perception/speech_recognition/quadraticselfonn/algorithm/audioutils.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/speech_recognition/quadraticselfonn/algorithm/model.py b/src/opendr/perception/speech_recognition/quadraticselfonn/algorithm/model.py
index 3c45e9dc7b..e043230b12 100644
--- a/src/opendr/perception/speech_recognition/quadraticselfonn/algorithm/model.py
+++ b/src/opendr/perception/speech_recognition/quadraticselfonn/algorithm/model.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/perception/speech_recognition/quadraticselfonn/quadraticselfonn_learner.py b/src/opendr/perception/speech_recognition/quadraticselfonn/quadraticselfonn_learner.py
index 1877aeffae..b01ee58cca 100644
--- a/src/opendr/perception/speech_recognition/quadraticselfonn/quadraticselfonn_learner.py
+++ b/src/opendr/perception/speech_recognition/quadraticselfonn/quadraticselfonn_learner.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/simulation/human_model_generation/pifu_generator_learner.py b/src/opendr/simulation/human_model_generation/pifu_generator_learner.py
index 47389873e3..31173a90d5 100644
--- a/src/opendr/simulation/human_model_generation/pifu_generator_learner.py
+++ b/src/opendr/simulation/human_model_generation/pifu_generator_learner.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/simulation/human_model_generation/utilities/config_utils.py b/src/opendr/simulation/human_model_generation/utilities/config_utils.py
index ca8cc9c3c1..38d306d559 100644
--- a/src/opendr/simulation/human_model_generation/utilities/config_utils.py
+++ b/src/opendr/simulation/human_model_generation/utilities/config_utils.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/simulation/human_model_generation/utilities/joint_extractor.py b/src/opendr/simulation/human_model_generation/utilities/joint_extractor.py
index 67588c7659..bd9543db5e 100644
--- a/src/opendr/simulation/human_model_generation/utilities/joint_extractor.py
+++ b/src/opendr/simulation/human_model_generation/utilities/joint_extractor.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/simulation/human_model_generation/utilities/model_3D.py b/src/opendr/simulation/human_model_generation/utilities/model_3D.py
index 36baf7e71d..cef4ab1d29 100644
--- a/src/opendr/simulation/human_model_generation/utilities/model_3D.py
+++ b/src/opendr/simulation/human_model_generation/utilities/model_3D.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/simulation/human_model_generation/utilities/studio.py b/src/opendr/simulation/human_model_generation/utilities/studio.py
index 8b4c5530d3..d253aa36f5 100644
--- a/src/opendr/simulation/human_model_generation/utilities/studio.py
+++ b/src/opendr/simulation/human_model_generation/utilities/studio.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/simulation/human_model_generation/utilities/visualizer.py b/src/opendr/simulation/human_model_generation/utilities/visualizer.py
index d76766f718..b5647a9aeb 100644
--- a/src/opendr/simulation/human_model_generation/utilities/visualizer.py
+++ b/src/opendr/simulation/human_model_generation/utilities/visualizer.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/utils/hyperparameter_tuner/dummy_learner.py b/src/opendr/utils/hyperparameter_tuner/dummy_learner.py
index 89545115b3..92e92eafaa 100644
--- a/src/opendr/utils/hyperparameter_tuner/dummy_learner.py
+++ b/src/opendr/utils/hyperparameter_tuner/dummy_learner.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/utils/hyperparameter_tuner/hyperparameter_tuner.py b/src/opendr/utils/hyperparameter_tuner/hyperparameter_tuner.py
index 6781b16326..373bdfe890 100644
--- a/src/opendr/utils/hyperparameter_tuner/hyperparameter_tuner.py
+++ b/src/opendr/utils/hyperparameter_tuner/hyperparameter_tuner.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/src/opendr/utils/io.py b/src/opendr/utils/io.py
index d7fc485767..d6f6756504 100644
--- a/src/opendr/utils/io.py
+++ b/src/opendr/utils/io.py
@@ -1,4 +1,4 @@
-# Copyright 2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/tests/Makefile b/tests/Makefile
index 82bcdfd407..3c2797ee0e 100644
--- a/tests/Makefile
+++ b/tests/Makefile
@@ -1,5 +1,5 @@
#
-# Copyright 2020-2021 OpenDR project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/tests/sources/c_api/test_face_recognition.c b/tests/sources/c_api/test_face_recognition.c
index 3dcb47c470..65160fbbcc 100644
--- a/tests/sources/c_api/test_face_recognition.c
+++ b/tests/sources/c_api/test_face_recognition.c
@@ -1,5 +1,5 @@
/*
- * Copyright 2020-2021 OpenDR project
+ * Copyright 2020-2022 OpenDR European Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/tests/sources/c_api/test_fmp_gmapping.cpp b/tests/sources/c_api/test_fmp_gmapping.cpp
index ccdde883d6..1b1875899c 100644
--- a/tests/sources/c_api/test_fmp_gmapping.cpp
+++ b/tests/sources/c_api/test_fmp_gmapping.cpp
@@ -1,5 +1,5 @@
/*
- * Copyright 2020-2021 OpenDR project
+ * Copyright 2020-2022 OpenDR European Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/tests/sources/c_api/test_opendr_utils.c b/tests/sources/c_api/test_opendr_utils.c
index 831320a09c..04e2bcf878 100644
--- a/tests/sources/c_api/test_opendr_utils.c
+++ b/tests/sources/c_api/test_opendr_utils.c
@@ -1,5 +1,5 @@
/*
- * Copyright 2020-2021 OpenDR project
+ * Copyright 2020-2022 OpenDR European Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/tests/sources/tools/control/mobile_manipulation/test_mobile_manipulation.py b/tests/sources/tools/control/mobile_manipulation/test_mobile_manipulation.py
index cd6589b028..df93c9d7a9 100644
--- a/tests/sources/tools/control/mobile_manipulation/test_mobile_manipulation.py
+++ b/tests/sources/tools/control/mobile_manipulation/test_mobile_manipulation.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/tests/sources/tools/control/single_demo_grasp/test_single_demo_grasp.py b/tests/sources/tools/control/single_demo_grasp/test_single_demo_grasp.py
index 533e215bde..73108854f9 100644
--- a/tests/sources/tools/control/single_demo_grasp/test_single_demo_grasp.py
+++ b/tests/sources/tools/control/single_demo_grasp/test_single_demo_grasp.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/tests/sources/tools/perception/activity_recognition/cox3d/test_cox3d_learner.py b/tests/sources/tools/perception/activity_recognition/cox3d/test_cox3d_learner.py
index 2c54bb87c2..8d1598de46 100644
--- a/tests/sources/tools/perception/activity_recognition/cox3d/test_cox3d_learner.py
+++ b/tests/sources/tools/perception/activity_recognition/cox3d/test_cox3d_learner.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/tests/sources/tools/perception/activity_recognition/x3d/test_x3d_learner.py b/tests/sources/tools/perception/activity_recognition/x3d/test_x3d_learner.py
index 8d315661d3..960be05b00 100644
--- a/tests/sources/tools/perception/activity_recognition/x3d/test_x3d_learner.py
+++ b/tests/sources/tools/perception/activity_recognition/x3d/test_x3d_learner.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/tests/sources/tools/perception/compressive_learning/multilinear_compressive_learning/test_multilinear_compressive_learner.py b/tests/sources/tools/perception/compressive_learning/multilinear_compressive_learning/test_multilinear_compressive_learner.py
index d7cedeedcd..221012aeb0 100644
--- a/tests/sources/tools/perception/compressive_learning/multilinear_compressive_learning/test_multilinear_compressive_learner.py
+++ b/tests/sources/tools/perception/compressive_learning/multilinear_compressive_learning/test_multilinear_compressive_learner.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/tests/sources/tools/perception/face_recognition/test_face_recognition.py b/tests/sources/tools/perception/face_recognition/test_face_recognition.py
index aa640dda57..7f02c6031c 100644
--- a/tests/sources/tools/perception/face_recognition/test_face_recognition.py
+++ b/tests/sources/tools/perception/face_recognition/test_face_recognition.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/tests/sources/tools/perception/facial_expression_recognition/landmark_based_facial_expression_recognition/test_pstbln.py b/tests/sources/tools/perception/facial_expression_recognition/landmark_based_facial_expression_recognition/test_pstbln.py
index 9cde2975e5..4720edde23 100644
--- a/tests/sources/tools/perception/facial_expression_recognition/landmark_based_facial_expression_recognition/test_pstbln.py
+++ b/tests/sources/tools/perception/facial_expression_recognition/landmark_based_facial_expression_recognition/test_pstbln.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/tests/sources/tools/perception/heart_anomaly_detection/attention_neural_bag_of_feature/test_attention_neural_bag_of_feature_learner.py b/tests/sources/tools/perception/heart_anomaly_detection/attention_neural_bag_of_feature/test_attention_neural_bag_of_feature_learner.py
index 8db019b5d1..cb0dc1d2f3 100644
--- a/tests/sources/tools/perception/heart_anomaly_detection/attention_neural_bag_of_feature/test_attention_neural_bag_of_feature_learner.py
+++ b/tests/sources/tools/perception/heart_anomaly_detection/attention_neural_bag_of_feature/test_attention_neural_bag_of_feature_learner.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/tests/sources/tools/perception/heart_anomaly_detection/gated_recurrent_unit/test_gated_recurrent_unit_learner.py b/tests/sources/tools/perception/heart_anomaly_detection/gated_recurrent_unit/test_gated_recurrent_unit_learner.py
index 4fa34c8d19..d84780326e 100644
--- a/tests/sources/tools/perception/heart_anomaly_detection/gated_recurrent_unit/test_gated_recurrent_unit_learner.py
+++ b/tests/sources/tools/perception/heart_anomaly_detection/gated_recurrent_unit/test_gated_recurrent_unit_learner.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/tests/sources/tools/perception/multimodal_human_centric/rgbd_hand_gesture_learner/test_rgbd_hand_gesture_learner.py b/tests/sources/tools/perception/multimodal_human_centric/rgbd_hand_gesture_learner/test_rgbd_hand_gesture_learner.py
index bd1c6bd5a5..694763f97c 100644
--- a/tests/sources/tools/perception/multimodal_human_centric/rgbd_hand_gesture_learner/test_rgbd_hand_gesture_learner.py
+++ b/tests/sources/tools/perception/multimodal_human_centric/rgbd_hand_gesture_learner/test_rgbd_hand_gesture_learner.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/tests/sources/tools/perception/object_detection_2d/centernet/test_centernet.py b/tests/sources/tools/perception/object_detection_2d/centernet/test_centernet.py
index cb1c1e8608..cbbc446cab 100644
--- a/tests/sources/tools/perception/object_detection_2d/centernet/test_centernet.py
+++ b/tests/sources/tools/perception/object_detection_2d/centernet/test_centernet.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/tests/sources/tools/perception/object_detection_2d/detr/test_detr.py b/tests/sources/tools/perception/object_detection_2d/detr/test_detr.py
index e9afc94cce..16b5dbcaa3 100644
--- a/tests/sources/tools/perception/object_detection_2d/detr/test_detr.py
+++ b/tests/sources/tools/perception/object_detection_2d/detr/test_detr.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/tests/sources/tools/perception/object_detection_2d/gem/test_gem.py b/tests/sources/tools/perception/object_detection_2d/gem/test_gem.py
index 03ad1e5616..f773f53cea 100644
--- a/tests/sources/tools/perception/object_detection_2d/gem/test_gem.py
+++ b/tests/sources/tools/perception/object_detection_2d/gem/test_gem.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/tests/sources/tools/perception/object_detection_2d/retinaface/test_retinaface.py b/tests/sources/tools/perception/object_detection_2d/retinaface/test_retinaface.py
index 71006eb172..f8f52c9390 100644
--- a/tests/sources/tools/perception/object_detection_2d/retinaface/test_retinaface.py
+++ b/tests/sources/tools/perception/object_detection_2d/retinaface/test_retinaface.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/tests/sources/tools/perception/object_detection_2d/ssd/test_ssd.py b/tests/sources/tools/perception/object_detection_2d/ssd/test_ssd.py
index 73887a235d..3f3f03e1f5 100644
--- a/tests/sources/tools/perception/object_detection_2d/ssd/test_ssd.py
+++ b/tests/sources/tools/perception/object_detection_2d/ssd/test_ssd.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/tests/sources/tools/perception/object_detection_2d/yolov3/test_yolo3.py b/tests/sources/tools/perception/object_detection_2d/yolov3/test_yolo3.py
index 589c46799b..71b2466263 100644
--- a/tests/sources/tools/perception/object_detection_2d/yolov3/test_yolo3.py
+++ b/tests/sources/tools/perception/object_detection_2d/yolov3/test_yolo3.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/tests/sources/tools/perception/object_detection_3d/voxel_object_detection_3d/test_object_detection_3d.py b/tests/sources/tools/perception/object_detection_3d/voxel_object_detection_3d/test_object_detection_3d.py
index 3095ae96f0..2372294671 100644
--- a/tests/sources/tools/perception/object_detection_3d/voxel_object_detection_3d/test_object_detection_3d.py
+++ b/tests/sources/tools/perception/object_detection_3d/voxel_object_detection_3d/test_object_detection_3d.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/tests/sources/tools/perception/object_tracking_2d/deep_sort/test_object_tracking_2d_deep_sort.py b/tests/sources/tools/perception/object_tracking_2d/deep_sort/test_object_tracking_2d_deep_sort.py
index 323283c154..0c4e35256f 100644
--- a/tests/sources/tools/perception/object_tracking_2d/deep_sort/test_object_tracking_2d_deep_sort.py
+++ b/tests/sources/tools/perception/object_tracking_2d/deep_sort/test_object_tracking_2d_deep_sort.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/tests/sources/tools/perception/object_tracking_2d/fair_mot/test_object_tracking_2d_fair_mot.py b/tests/sources/tools/perception/object_tracking_2d/fair_mot/test_object_tracking_2d_fair_mot.py
index 3c2743135f..b75717a668 100644
--- a/tests/sources/tools/perception/object_tracking_2d/fair_mot/test_object_tracking_2d_fair_mot.py
+++ b/tests/sources/tools/perception/object_tracking_2d/fair_mot/test_object_tracking_2d_fair_mot.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/tests/sources/tools/perception/object_tracking_3d/ab3dmot/test_object_tracking_3d_ab3dmot.py b/tests/sources/tools/perception/object_tracking_3d/ab3dmot/test_object_tracking_3d_ab3dmot.py
index 5c512cdcb8..723c0b2e15 100644
--- a/tests/sources/tools/perception/object_tracking_3d/ab3dmot/test_object_tracking_3d_ab3dmot.py
+++ b/tests/sources/tools/perception/object_tracking_3d/ab3dmot/test_object_tracking_3d_ab3dmot.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/tests/sources/tools/perception/pose_estimation/lightweight_open_pose/test_lightweight_open_pose.py b/tests/sources/tools/perception/pose_estimation/lightweight_open_pose/test_lightweight_open_pose.py
index a0ba8decae..58c00eb751 100644
--- a/tests/sources/tools/perception/pose_estimation/lightweight_open_pose/test_lightweight_open_pose.py
+++ b/tests/sources/tools/perception/pose_estimation/lightweight_open_pose/test_lightweight_open_pose.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/tests/sources/tools/perception/semantic_segmentation/bisenet/test_semantic_segmentation_bisenet.py b/tests/sources/tools/perception/semantic_segmentation/bisenet/test_semantic_segmentation_bisenet.py
index fe332ed3dd..77e4eb141f 100644
--- a/tests/sources/tools/perception/semantic_segmentation/bisenet/test_semantic_segmentation_bisenet.py
+++ b/tests/sources/tools/perception/semantic_segmentation/bisenet/test_semantic_segmentation_bisenet.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/tests/sources/tools/perception/skeleton_based_action_recognition/test_pstgcn.py b/tests/sources/tools/perception/skeleton_based_action_recognition/test_pstgcn.py
index 71b4df1544..1ec279c2ae 100644
--- a/tests/sources/tools/perception/skeleton_based_action_recognition/test_pstgcn.py
+++ b/tests/sources/tools/perception/skeleton_based_action_recognition/test_pstgcn.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/tests/sources/tools/perception/skeleton_based_action_recognition/test_stbln.py b/tests/sources/tools/perception/skeleton_based_action_recognition/test_stbln.py
index 39dcd46dd6..f95d01f570 100644
--- a/tests/sources/tools/perception/skeleton_based_action_recognition/test_stbln.py
+++ b/tests/sources/tools/perception/skeleton_based_action_recognition/test_stbln.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/tests/sources/tools/perception/skeleton_based_action_recognition/test_stgcn.py b/tests/sources/tools/perception/skeleton_based_action_recognition/test_stgcn.py
index c11ecc82a5..e1ec303fbe 100644
--- a/tests/sources/tools/perception/skeleton_based_action_recognition/test_stgcn.py
+++ b/tests/sources/tools/perception/skeleton_based_action_recognition/test_stgcn.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/tests/sources/tools/perception/skeleton_based_action_recognition/test_tagcn.py b/tests/sources/tools/perception/skeleton_based_action_recognition/test_tagcn.py
index f00c333d00..b6fea730df 100644
--- a/tests/sources/tools/perception/skeleton_based_action_recognition/test_tagcn.py
+++ b/tests/sources/tools/perception/skeleton_based_action_recognition/test_tagcn.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/tests/sources/tools/perception/speech_recognition/edgespeechnets/test_edgespeechnets.py b/tests/sources/tools/perception/speech_recognition/edgespeechnets/test_edgespeechnets.py
index d6aab79ca6..57fdfee017 100644
--- a/tests/sources/tools/perception/speech_recognition/edgespeechnets/test_edgespeechnets.py
+++ b/tests/sources/tools/perception/speech_recognition/edgespeechnets/test_edgespeechnets.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/tests/sources/tools/perception/speech_recognition/matchboxnet/test_matchboxnet.py b/tests/sources/tools/perception/speech_recognition/matchboxnet/test_matchboxnet.py
index b1c1b593de..cdc29e0de8 100644
--- a/tests/sources/tools/perception/speech_recognition/matchboxnet/test_matchboxnet.py
+++ b/tests/sources/tools/perception/speech_recognition/matchboxnet/test_matchboxnet.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/tests/sources/tools/perception/speech_recognition/quadraticselfonn/test_quadraticselfonn.py b/tests/sources/tools/perception/speech_recognition/quadraticselfonn/test_quadraticselfonn.py
index 36afa664e4..81233ecfb7 100644
--- a/tests/sources/tools/perception/speech_recognition/quadraticselfonn/test_quadraticselfonn.py
+++ b/tests/sources/tools/perception/speech_recognition/quadraticselfonn/test_quadraticselfonn.py
@@ -1,4 +1,4 @@
-# Copyright 1996-2020 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/tests/sources/tools/simulation/human_model_generation/test_human_model_generation.py b/tests/sources/tools/simulation/human_model_generation/test_human_model_generation.py
index 4c62b26892..307e3ee220 100644
--- a/tests/sources/tools/simulation/human_model_generation/test_human_model_generation.py
+++ b/tests/sources/tools/simulation/human_model_generation/test_human_model_generation.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/tests/sources/tools/utils/test_hyperparameter_tuner.py b/tests/sources/tools/utils/test_hyperparameter_tuner.py
index 2f9d59dcaf..71e00a37a0 100644
--- a/tests/sources/tools/utils/test_hyperparameter_tuner.py
+++ b/tests/sources/tools/utils/test_hyperparameter_tuner.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR European Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/tests/sources/tools/utils/test_io.py b/tests/sources/tools/utils/test_io.py
index 8fa45385c3..fffce01719 100644
--- a/tests/sources/tools/utils/test_io.py
+++ b/tests/sources/tools/utils/test_io.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 OpenDR Project
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/tests/test_license.py b/tests/test_license.py
index 5535915b80..c13a325101 100755
--- a/tests/test_license.py
+++ b/tests/test_license.py
@@ -1,6 +1,6 @@
#!/usr/bin/env python
-# Copyright 2020-2021 Cyberbotics Ltd.
+# Copyright 2020-2022 OpenDR European Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -19,10 +19,14 @@
import unittest
import os
import fnmatch
+import datetime
from io import open
-APACHE2_LICENSE_C = """* Licensed under the Apache License, Version 2.0 (the "License");
+APACHE2_LICENSE_C = """/*
+ * Copyright 2020-20XX OpenDR European Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
@@ -33,9 +37,11 @@
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
- */"""
+ */""".replace('20XX', str(datetime.datetime.now().year))
-APACHE2_LICENSE_CPP = """// Licensed under the Apache License, Version 2.0 (the "License");
+APACHE2_LICENSE_CPP = """// Copyright 2020-20XX OpenDR European Project
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
@@ -45,9 +51,10 @@
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
-// limitations under the License."""
+// limitations under the License.""".replace('20XX', str(datetime.datetime.now().year))
-APACHE2_LICENSE_PYTHON = """
+APACHE2_LICENSE_PYTHON = """# Copyright 2020-20XX OpenDR European Project
+#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
@@ -58,7 +65,7 @@
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
-# limitations under the License."""
+# limitations under the License.""".replace('20XX', str(datetime.datetime.now().year))
PYTHON_OPTIONAL_HEADERS = [
'#!/usr/bin/env python2',
@@ -93,6 +100,8 @@ def setUp(self):
'src/opendr/perception/skeleton_based_action_recognition/algorithm',
'src/opendr/perception/semantic_segmentation/bisenet/algorithm',
'src/opendr/perception/object_detection_2d/retinaface/algorithm',
+ 'src/opendr/perception/object_detection_2d/gem/algorithm',
+ 'src/opendr/perception/object_detection_2d/detr/algorithm',
'src/opendr/perception/panoptic_segmentation/efficient_ps/algorithm/EfficientPS',
'src/opendr/perception/facial_expression_recognition/landmark_based_facial_expression_recognition',
'projects/control/eagerx/eagerx',
From 60d07576c724c94f2d32ddb8d35386b8d4adb4de Mon Sep 17 00:00:00 2001
From: ad-daniel <44834743+ad-daniel@users.noreply.github.com>
Date: Mon, 24 Jan 2022 14:45:18 +0100
Subject: [PATCH 6/9] Automatic test of pip and docker (#200)
* Test pip installation
* Trigger
* Fix
* Minor
* Updated wheel test
* Added libopenblas install
* Temporary test disable
* Temporary test disable
* Added libsndfile1 dependency
* Restored disabled test
* New wheel building pipeline
* Update build_wheel.sh
* Added libboost-dev dep
* Update installation.md
* Switch to sdist
* sdist workflow
* Update tests_suite.yml
* Added numpy include dirs
* Disabled two 3d detection tests
* Disabled three 3d detection tests
* Disabled five 3d detection tests
* Disabled all 3d detection tests
* Disabled model download - 3d test
* Disabled everything?
* Removed imports from 3d object detection test
* Import test
* Import test
* Import test
* Import test
* Import test
* Import test
* Restored test
* Disabled object detection 3d test
* Refactor workflow
* disable temporarely
* Fix docker mobile manipulation
* Re-enable test
* add badge
* Fix changelog
* remove test install reference
* Restored pip installation
Co-authored-by: Nikolaos Passalis
Co-authored-by: Nikolaos
---
.github/workflows/test_packages.yml | 103 ++++++++++++++++++++++++++++
.github/workflows/tests_suite.yml | 1 +
CHANGELOG.md | 3 +-
MANIFEST.in | 2 +
README.md | 1 +
bin/build_wheel.sh | 19 +++++
bin/install.sh | 8 ---
docs/reference/installation.md | 2 +-
setup.py | 20 +++++-
9 files changed, 147 insertions(+), 12 deletions(-)
create mode 100644 .github/workflows/test_packages.yml
create mode 100644 MANIFEST.in
create mode 100755 bin/build_wheel.sh
diff --git a/.github/workflows/test_packages.yml b/.github/workflows/test_packages.yml
new file mode 100644
index 0000000000..e7a3b718ea
--- /dev/null
+++ b/.github/workflows/test_packages.yml
@@ -0,0 +1,103 @@
+name: Test Packages
+# This workflow tests the latest (third-party hosted) available builds
+
+on:
+ pull_request:
+ types: [opened, reopened, synchronize, labeled, unlabeled]
+ schedule:
+ - cron: '0 23 * * *'
+
+defaults:
+ run:
+ shell: bash
+
+
+jobs:
+ cleanup-runs:
+ if: ${{ contains(github.event.pull_request.labels.*.name, 'test packages') || github.event_name == 'schedule' }}
+ runs-on: ubuntu-latest
+ steps:
+ - uses: rokroskar/workflow-run-cleanup-action@master
+ env:
+ GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
+ test-wheel:
+ needs: cleanup-runs
+ if: ${{ contains(github.event.pull_request.labels.*.name, 'test packages') || github.event_name == 'schedule' }}
+ strategy:
+ matrix:
+ os: [ubuntu-20.04]
+ package:
+ - engine
+ - utils
+ - perception/activity_recognition
+ - perception/compressive_learning
+ - perception/face_recognition
+ - perception/heart_anomaly_detection
+ - perception/multimodal_human_centric
+ - perception/object_tracking_2d
+ - perception/pose_estimation
+ - perception/speech_recognition
+ - perception/skeleton_based_action_recognition
+ - perception/semantic_segmentation
+ - perception/object_detection_2d
+ - perception/facial_expression_recognition
+ # - perception/object_detection_3d
+ # - control/mobile_manipulation
+ # - simulation/human_model_generation
+ # - control/single_demo_grasp
+ # - perception/object_tracking_3d
+ runs-on: ${{ matrix.os }}
+ steps:
+ - uses: actions/checkout@v2
+ - name: Set up Python 3.8
+ uses: actions/setup-python@v2
+ with:
+ python-version: 3.8
+ - name: Test Wheel
+ run: |
+ export DISABLE_BCOLZ_AVX2=true
+ sudo apt -y install python3.8-venv libfreetype6-dev git build-essential cmake python3-dev wget libopenblas-dev libsndfile1 libboost-dev python3-dev
+ python3 -m venv venv
+ source venv/bin/activate
+ wget https://raw.githubusercontent.com/opendr-eu/opendr/master/dependencies/pip_requirements.txt
+ cat pip_requirements.txt | xargs -n 1 -L 1 pip install
+ # Test new package
+ pip install opendr-toolkit
+ python -m unittest discover -s tests/sources/tools/${{ matrix.package }}
+ test-docker:
+ needs: cleanup-runs
+ if: ${{ contains(github.event.pull_request.labels.*.name, 'test packages') || github.event_name == 'schedule' }}
+ strategy:
+ matrix:
+ os: [ubuntu-20.04]
+ package:
+ - engine
+ - utils
+ - perception/activity_recognition
+ - perception/compressive_learning
+ - perception/face_recognition
+ - perception/heart_anomaly_detection
+ - perception/multimodal_human_centric
+ - perception/object_tracking_2d
+ - perception/pose_estimation
+ - perception/speech_recognition
+ - perception/skeleton_based_action_recognition
+ - perception/semantic_segmentation
+ - perception/object_detection_2d
+ - perception/facial_expression_recognition
+ - perception/object_detection_3d
+ - control/mobile_manipulation
+ - simulation/human_model_generation
+ - control/single_demo_grasp
+ #- perception/object_tracking_3d
+ runs-on: ${{ matrix.os }}
+ steps:
+ - name: Set up Python 3.8
+ uses: actions/setup-python@v2
+ with:
+ python-version: 3.8
+ - name: Test Docker
+ run: |
+ docker run --name toolkit -i opendr/opendr-toolkit:cpu_latest bash
+ docker start toolkit
+ docker exec -i toolkit bash -c "source bin/activate.sh && source tests/sources/tools/control/mobile_manipulation/run_ros.sh && python -m unittest discover -s tests/sources/tools/${{ matrix.package }}"
diff --git a/.github/workflows/tests_suite.yml b/.github/workflows/tests_suite.yml
index 7d0503a429..82b80e7e96 100644
--- a/.github/workflows/tests_suite.yml
+++ b/.github/workflows/tests_suite.yml
@@ -106,3 +106,4 @@ jobs:
source tests/sources/tools/control/mobile_manipulation/run_ros.sh
python -m unittest discover -s tests/sources/tools/${{ matrix.package }}
fi
+
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 2de83a228b..7e0bec9ded 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -8,9 +8,10 @@ Released on XX, XXth, 2022.
- Enhancements:
- None.
- Bug Fixes:
- - None.
+ - Updated wheel building pipeline to include missing files and removed unnecessary dependencies ([#200](https://github.com/opendr-eu/opendr/pull/200)).
- Dependency Updates:
- `heart anomaly detection`: upgraded scikit-learn runtime dependency from 0.21.3 to 0.22 ([#198](https://github.com/opendr-eu/opendr/pull/198)).
+
## Version 1.0
Released on December 31th, 2021.
\ No newline at end of file
diff --git a/MANIFEST.in b/MANIFEST.in
new file mode 100644
index 0000000000..2c2972093c
--- /dev/null
+++ b/MANIFEST.in
@@ -0,0 +1,2 @@
+recursive-include src/opendr *
+include requirements.txt
diff --git a/README.md b/README.md
index e91b500193..b3102f0580 100644
--- a/README.md
+++ b/README.md
@@ -18,6 +18,7 @@ ______________________________________________________________________
[![License](https://img.shields.io/badge/License-Apache_2.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)
[![Test Suite (master)](https://github.com/opendr-eu/opendr/actions/workflows/tests_suite.yml/badge.svg)](https://github.com/opendr-eu/opendr/actions/workflows/tests_suite.yml)
+[![Test Packages](https://github.com/opendr-eu/opendr/actions/workflows/test_packages.yml/badge.svg)](https://github.com/opendr-eu/opendr/actions/workflows/test_packages.yml)
## About
diff --git a/bin/build_wheel.sh b/bin/build_wheel.sh
new file mode 100755
index 0000000000..c0564a5d0c
--- /dev/null
+++ b/bin/build_wheel.sh
@@ -0,0 +1,19 @@
+#!/bin/bash
+
+# Build all OpenDR dependecies
+./bin/install.sh
+
+# Activate OpenDR
+source ./bin/activate.sh
+
+# Prepare requirements.txt for wheel distributions
+pip3 freeze > requirements.txt
+
+# Remove detectron and git repositories (installation not supported through PyPI)
+sed -i '/detectron2/d' requirements.txt
+sed -i '/git/d' requirements.txt
+sed -i '/pkg_resources/d' requirements.txt
+sed -i '/auditwheel/d' requirements.txt
+
+# Build binary wheel and repair it
+python3 setup.py sdist
diff --git a/bin/install.sh b/bin/install.sh
index d0f3b6c269..e819c7a100 100755
--- a/bin/install.sh
+++ b/bin/install.sh
@@ -40,13 +40,5 @@ make install_compilation_dependencies
make install_runtime_dependencies
make libopendr
-# Prepare requirements.txt for wheel distributions
-pip3 freeze > requirements.txt
-
-# Remove detectron, since it was installed from git repo
-sed -i '/detectron2/d' requirements.txt
-sed -i '/git/d' requirements.txt
-python3 setup.py bdist_wheel
-
deactivate
diff --git a/docs/reference/installation.md b/docs/reference/installation.md
index 1b36477f82..8ede23d12e 100644
--- a/docs/reference/installation.md
+++ b/docs/reference/installation.md
@@ -74,7 +74,7 @@ You can directly install OpenDR toolkit for CPU-only inference using pip.
First, install the required dependencies:
```bash
export DISABLE_BCOLZ_AVX2=true
-sudo apt install python3.8-venv libfreetype6-dev git build-essential cmake python3-dev wget
+sudo apt install python3.8-venv libfreetype6-dev git build-essential cmake python3-dev wget libopenblas-dev libsndfile1 libboost-dev
python3 -m venv venv
source venv/bin/activate
wget https://raw.githubusercontent.com/opendr-eu/opendr/master/dependencies/pip_requirements.txt
diff --git a/setup.py b/setup.py
index 5eff9c2b0c..c2d988b385 100644
--- a/setup.py
+++ b/setup.py
@@ -1,19 +1,33 @@
+import os
+from os.path import join
from setuptools import setup
from setuptools import find_packages
from Cython.Build import cythonize
+import numpy
+
packages = find_packages(where="./src")
+# Get the requirements
with open('requirements.txt') as fp:
install_requires = fp.read().splitlines()
+# Retrieve version
exec(open('src/opendr/_version.py').read())
-
try:
__version__
except NameError:
__version__ = '0.0'
+# Gather all files
+data_files = []
+for root, dirs, files in os.walk("src/opendr"):
+ for file in files:
+ file_extension = file.split(".")[-1]
+ # Add all files except from shared libraries
+ if file_extension != "so" and file_extension != "py":
+ data_files.append(join(root.replace("src/opendr/", ""), file))
+
setup(
name='opendr-toolkit',
version=__version__,
@@ -49,5 +63,7 @@
license='LICENSE',
package_dir={"": "src"},
install_requires=install_requires,
- ext_modules=cythonize(["src/opendr/perception/object_detection_2d/retinaface/algorithm/cython/*.pyx"])
+ package_data={'': data_files},
+ ext_modules=cythonize(["src/opendr/perception/object_detection_2d/retinaface/algorithm/cython/*.pyx"]),
+ include_dirs=[numpy.get_include()]
)
From d9f27c5bc7483ed6b026d087e4c78429b6b4eaf5 Mon Sep 17 00:00:00 2001
From: ad-daniel <44834743+ad-daniel@users.noreply.github.com>
Date: Tue, 25 Jan 2022 18:29:45 +0100
Subject: [PATCH 7/9] Add automatic publishing of wheel and docker (#202)
* Test pip installation
* Trigger
* Fix
* Minor
* Updated wheel test
* Added libopenblas install
* Temporary test disable
* Temporary test disable
* Added libsndfile1 dependency
* Restored disabled test
* New wheel building pipeline
* Update build_wheel.sh
* Added libboost-dev dep
* Update installation.md
* Switch to sdist
* sdist workflow
* Update tests_suite.yml
* Added numpy include dirs
* Disabled two 3d detection tests
* Disabled three 3d detection tests
* Disabled five 3d detection tests
* Disabled all 3d detection tests
* Disabled model download - 3d test
* Disabled everything?
* Removed imports from 3d object detection test
* Import test
* Import test
* Import test
* Import test
* Import test
* Import test
* Restored test
* Disabled object detection 3d test
* Minimal
* Refactor workflow
* disable temporarely
* Fix docker mobile manipulation
* Re-enable test
* add badge
* Fix changelog
* remove test install reference
* test build process
* Fix
* version bump
* manual trigger
* Fix workflow
* Minor
* add cuda docker
* Minor
* Fix Token
* Publish wheel to testpypi
* Cleanup
* Specify version
* cleanup and check
* Fix
* Docker push test
* remove if
* Prepare for merge
* Fix pypi credentials
Co-authored-by: Nikolaos Passalis
Co-authored-by: Nikolaos
---
.github/workflows/publisher.yml | 72 +++++++++++++++++++++++++++++
.github/workflows/test_packages.yml | 3 +-
src/opendr/_version.py | 2 +-
3 files changed, 74 insertions(+), 3 deletions(-)
create mode 100644 .github/workflows/publisher.yml
diff --git a/.github/workflows/publisher.yml b/.github/workflows/publisher.yml
new file mode 100644
index 0000000000..6dc43014d2
--- /dev/null
+++ b/.github/workflows/publisher.yml
@@ -0,0 +1,72 @@
+name: Publisher
+
+# Trigger on new github release, a tag with format vX.Y.Z is expected (used to tag the docker)
+on:
+ release:
+ types: [published]
+
+env:
+ OPENDR_VERSION: ${{ github.event.release.tag_name }}
+
+defaults:
+ run:
+ shell: bash
+
+jobs:
+ publish-wheel:
+ runs-on: ubuntu-20.04
+ steps:
+ - uses: actions/checkout@v2
+ with:
+ submodules: true
+ - name: Set up Python 3.8
+ uses: actions/setup-python@v2
+ with:
+ python-version: 3.8
+ - name: Install prerequisites
+ run: |
+ python -m pip install --upgrade pip
+ pip install setuptools wheel twine
+ - name: Build Wheel
+ run: |
+ ./bin/build_wheel.sh
+ - name: Upload Wheel
+ env:
+ TWINE_USERNAME: ${{ secrets.PYPI_USERNAME }}
+ TWINE_PASSWORD: ${{ secrets.PYPI_PASSWORD }}
+ run : |
+ twine upload dist/*
+ publish-docker-cpu:
+ runs-on: ubuntu-20.04
+ steps:
+ - uses: actions/checkout@v2
+ with:
+ submodules: true
+ - name: Build Docker Image
+ run: docker build --tag opendr-toolkit:cpu_$OPENDR_VERSION --file Dockerfile .
+ - name: Login to Docker Hub
+ uses: docker/login-action@v1
+ with:
+ username: ${{ secrets.DOCKERHUB_USERNAME }}
+ password: ${{ secrets.DOCKERHUB_PASSWORD }}
+ - name: Publish Image
+ run: |
+ docker tag opendr-toolkit:cpu_$OPENDR_VERSION opendr/opendr-toolkit:cpu_$OPENDR_VERSION
+ docker push opendr/opendr-toolkit:cpu_$OPENDR_VERSION
+ publish-docker-cuda:
+ runs-on: ubuntu-20.04
+ steps:
+ - uses: actions/checkout@v2
+ with:
+ submodules: true
+ - name: Build Docker Image
+ run: docker build --tag opendr-toolkit:cuda_$OPENDR_VERSION --file Dockerfile-cuda .
+ - name: Login to Docker Hub
+ uses: docker/login-action@v1
+ with:
+ username: ${{ secrets.DOCKERHUB_USERNAME }}
+ password: ${{ secrets.DOCKERHUB_PASSWORD }}
+ - name: Publish Image
+ run: |
+ docker tag opendr-toolkit:cuda_$OPENDR_VERSION opendr/opendr-toolkit:cuda_$OPENDR_VERSION
+ docker push opendr/opendr-toolkit:cuda_$OPENDR_VERSION
diff --git a/.github/workflows/test_packages.yml b/.github/workflows/test_packages.yml
index e7a3b718ea..13cd407950 100644
--- a/.github/workflows/test_packages.yml
+++ b/.github/workflows/test_packages.yml
@@ -61,7 +61,6 @@ jobs:
source venv/bin/activate
wget https://raw.githubusercontent.com/opendr-eu/opendr/master/dependencies/pip_requirements.txt
cat pip_requirements.txt | xargs -n 1 -L 1 pip install
- # Test new package
pip install opendr-toolkit
python -m unittest discover -s tests/sources/tools/${{ matrix.package }}
test-docker:
@@ -89,7 +88,7 @@ jobs:
- control/mobile_manipulation
- simulation/human_model_generation
- control/single_demo_grasp
- #- perception/object_tracking_3d
+ # - perception/object_tracking_3d
runs-on: ${{ matrix.os }}
steps:
- name: Set up Python 3.8
diff --git a/src/opendr/_version.py b/src/opendr/_version.py
index 4c67cd2681..c98a588823 100644
--- a/src/opendr/_version.py
+++ b/src/opendr/_version.py
@@ -12,4 +12,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-__version__ = "1.0"
+__version__ = "1.0.0"
From a31d600973b642330002056080ff4ad6631e7579 Mon Sep 17 00:00:00 2001
From: ad-daniel <44834743+ad-daniel@users.noreply.github.com>
Date: Wed, 2 Feb 2022 18:00:44 +0100
Subject: [PATCH 8/9] Retry (#208)
---
.github/workflows/tests_suite.yml | 134 +++++++++++++++++++++++++++++-
1 file changed, 132 insertions(+), 2 deletions(-)
diff --git a/.github/workflows/tests_suite.yml b/.github/workflows/tests_suite.yml
index 82b80e7e96..d17c596702 100644
--- a/.github/workflows/tests_suite.yml
+++ b/.github/workflows/tests_suite.yml
@@ -12,7 +12,7 @@ defaults:
jobs:
cleanup-runs:
- if: ${{ contains(github.event.pull_request.labels.*.name, 'test sources') || contains(github.event.pull_request.labels.*.name, 'test tools') || github.event_name == 'schedule' }}
+ if: ${{ contains(github.event.pull_request.labels.*.name, 'test sources') || contains(github.event.pull_request.labels.*.name, 'test tools') || contains(github.event.pull_request.labels.*.name, 'test release') || github.event_name == 'schedule' }}
runs-on: ubuntu-latest
steps:
- uses: rokroskar/workflow-run-cleanup-action@master
@@ -106,4 +106,134 @@ jobs:
source tests/sources/tools/control/mobile_manipulation/run_ros.sh
python -m unittest discover -s tests/sources/tools/${{ matrix.package }}
fi
-
+ build-wheel:
+ needs: cleanup-runs
+ if: ${{ contains(github.event.pull_request.labels.*.name, 'test release') || github.event_name == 'schedule' }}
+ runs-on: ubuntu-20.04
+ steps:
+ - uses: actions/checkout@v2
+ with:
+ submodules: true
+ - name: Set up Python 3.8
+ uses: actions/setup-python@v2
+ with:
+ python-version: 3.8
+ - name: Install prerequisites
+ run: |
+ python -m pip install --upgrade pip
+ pip install setuptools wheel twine
+ - name: Build Wheel
+ run:
+ ./bin/build_wheel.sh
+ - name: Upload wheel as artifact
+ uses: actions/upload-artifact@v2
+ with:
+ path:
+ dist/*.tar.gz
+ build-docker:
+ needs: cleanup-runs
+ if: ${{ contains(github.event.pull_request.labels.*.name, 'test release') || github.event_name == 'schedule' }}
+ runs-on: ubuntu-20.04
+ steps:
+ - uses: actions/checkout@v2
+ with:
+ submodules: true
+ - name: Build image
+ run: |
+ docker build --tag opendr/opendr-toolkit:cpu_test --file Dockerfile .
+ docker save opendr/opendr-toolkit:cpu_test > cpu_test.zip
+ - name: Upload image artifact
+ uses: actions/upload-artifact@v2
+ with:
+ path:
+ cpu_test.zip
+ test-wheel:
+ needs: build-wheel
+ if: ${{ contains(github.event.pull_request.labels.*.name, 'test release') || github.event_name == 'schedule' }}
+ strategy:
+ matrix:
+ os: [ubuntu-20.04]
+ package:
+ - engine
+ - utils
+ - perception/activity_recognition
+ - perception/compressive_learning
+ - perception/face_recognition
+ - perception/heart_anomaly_detection
+ - perception/multimodal_human_centric
+ - perception/object_tracking_2d
+ - perception/pose_estimation
+ - perception/speech_recognition
+ - perception/skeleton_based_action_recognition
+ - perception/semantic_segmentation
+ - perception/object_detection_2d
+ - perception/facial_expression_recognition
+ # - perception/object_detection_3d
+ # - control/mobile_manipulation
+ # - simulation/human_model_generation
+ # - control/single_demo_grasp
+ # - perception/object_tracking_3d
+ runs-on: ubuntu-20.04
+ steps:
+ - uses: actions/checkout@v2
+ with:
+ submodules: true
+ - name: Set up Python 3.8
+ uses: actions/setup-python@v2
+ with:
+ python-version: 3.8
+ - name: Download artifact
+ uses: actions/download-artifact@v2
+ with:
+ path: artifact
+ - name: Get branch name
+ id: branch-name
+ uses: tj-actions/branch-names@v5.1
+ - name: Test Wheel
+ run: |
+ export DISABLE_BCOLZ_AVX2=true
+ sudo apt -y install python3.8-venv libfreetype6-dev git build-essential cmake python3-dev wget libopenblas-dev libsndfile1 libboost-dev python3-dev
+ python3 -m venv venv
+ source venv/bin/activate
+ wget https://raw.githubusercontent.com/opendr-eu/opendr/${{ steps.branch-name.outputs.current_branch }}/dependencies/pip_requirements.txt
+ cat pip_requirements.txt | xargs -n 1 -L 1 pip install
+ pip install ./artifact/artifact/*.tar.gz
+ python -m unittest discover -s tests/sources/tools/${{ matrix.package }}
+ test-docker:
+ needs: build-docker
+ if: ${{ contains(github.event.pull_request.labels.*.name, 'test release') || github.event_name == 'schedule' }}
+ strategy:
+ matrix:
+ os: [ubuntu-20.04]
+ package:
+ - engine
+ - utils
+ - perception/activity_recognition
+ - perception/compressive_learning
+ - perception/face_recognition
+ - perception/heart_anomaly_detection
+ - perception/multimodal_human_centric
+ - perception/object_tracking_2d
+ - perception/pose_estimation
+ - perception/speech_recognition
+ - perception/skeleton_based_action_recognition
+ - perception/semantic_segmentation
+ - perception/object_detection_2d
+ - perception/facial_expression_recognition
+ - perception/object_detection_3d
+ - control/mobile_manipulation
+ - simulation/human_model_generation
+ - control/single_demo_grasp
+ # - perception/object_tracking_3d
+ runs-on: ubuntu-20.04
+ steps:
+ - name: Download artifact
+ uses: actions/download-artifact@v2
+ with:
+ path: artifact
+ - name: Test docker
+ run: |
+ docker load < ./artifact/artifact/cpu_test.zip
+ docker run --name toolkit -i opendr/opendr-toolkit:cpu_test bash
+ docker start toolkit
+ docker exec -i toolkit bash -c "source bin/activate.sh && source tests/sources/tools/control/mobile_manipulation/run_ros.sh && python -m unittest discover -s tests/sources/tools/${{ matrix.package }}"
From 3bb6bbdd77865b735bd73ea1698322875a6c06c2 Mon Sep 17 00:00:00 2001
From: ekakalet <63847549+ekakalet@users.noreply.github.com>
Date: Thu, 3 Feb 2022 17:10:50 +0200
Subject: [PATCH 9/9] Synthetic multi view facial generator (#94)
* Update readme.md
* Update readme.md
* Rename main.py to preprocessing_1.py
* Rename inference.py to preprocessing_2.py
* Update SyntheticDataGeneration.py
* Update SyntheticDataGeneration.py
* Update readme.md
* Delete bfm.ply
* Delete bfm_refine.ply
* Update readme.md
* Update SyntheticDataGeneration.py
* Update SyntheticDataGeneration.py
* Update testSyntheticDataGeneration.py
* Update SyntheticDataGeneration.py
* Update projects/data_generation/synthetic-multi-view-facial-image-generation/3ddfa/SyntheticDataGeneration.py
Co-authored-by: ad-daniel <44834743+ad-daniel@users.noreply.github.com>
* Update projects/data_generation/synthetic-multi-view-facial-image-generation/3ddfa/SyntheticDataGeneration.py
Co-authored-by: ad-daniel <44834743+ad-daniel@users.noreply.github.com>
* Update tests/test_license.py
Co-authored-by: ad-daniel <44834743+ad-daniel@users.noreply.github.com>
* Update SyntheticDataGeneration.py
* Update SyntheticDataGeneration.py
* Update testSyntheticDataGeneration.py
* Update projects/data_generation/synthetic-multi-view-facial-image-generation/README.md
Co-authored-by: ad-daniel <44834743+ad-daniel@users.noreply.github.com>
* Update projects/data_generation/synthetic-multi-view-facial-image-generation/README.md
Co-authored-by: ad-daniel <44834743+ad-daniel@users.noreply.github.com>
* Update projects/data_generation/synthetic-multi-view-facial-image-generation/README.md
Co-authored-by: ad-daniel <44834743+ad-daniel@users.noreply.github.com>
* Update README.md
* Update projects/data_generation/synthetic-multi-view-facial-image-generation/README.md
Co-authored-by: ad-daniel <44834743+ad-daniel@users.noreply.github.com>
* Update README.md
* ROS implementation
* Update README.md
* Update projects/data_generation/synthetic-multi-view-facial-image-generation/README.md
Co-authored-by: ad-daniel <44834743+ad-daniel@users.noreply.github.com>
* Create synthetic_facial_image_generator.md
* Update synthetic_facial_image_generator.md
* Update index.md
* Update testSyntheticDataGeneration.py
* Update SyntheticDataGeneration.py
* Update testSyntheticDataGeneration.py
* Update synthetic_facial_image_generator.md
* Update synthetic_facial_image_generator.md
* Rename projects/data_generation/synthetic-multi-view-facial-image-generation/3ddfa/SyntheticDataGeneration.py to projects/data_generation/synthetic-multi-view-facial-image-generation/algorithm/SyntheticDataGeneration.py
* Rename projects/data_generation/synthetic-multi-view-facial-image-generation/3ddfa/testSyntheticDataGeneration.py to projects/data_generation/synthetic-multi-view-facial-image-generation/algorithm/testSyntheticDataGeneration.py
* Update readme.md
* Delete readme.md
* Rename projects/data_generation/synthetic-multi-view-facial-image-generation/3ddfa/path_helper.py to projects/data_generation/synthetic-multi-view-facial-image-generation/algorithm/path_helper.py
* Rename projects/data_generation/synthetic-multi-view-facial-image-generation/3ddfa/path_helper2.py to projects/data_generation/synthetic-multi-view-facial-image-generation/algorithm/path_helper2.py
* Rename projects/data_generation/synthetic-multi-view-facial-image-generation/synthetic_facial_generation.py to projects/data_generation/synthetic-multi-view-facial-image-generation/algorithm/synthetic_facial_generation.py
* Update SyntheticDataGeneration.py
* Update testSyntheticDataGeneration.py
* Update testSyntheticDataGeneration.py
* Update testSyntheticDataGeneration.py
* Delete synthetic_facial_generation.py
* Delete path_helper2.py
* Delete path_helper.py
* Add files via upload
* Update synthetic_facial_generation.py
* Update synthetic_facial_generation.py
* Update synthetic_facial_generation.py
* Update SyntheticDataGeneration.py
* Update testSyntheticDataGeneration.py
* Update testSyntheticDataGeneration.py
* Update synthetic_facial_generation.py
* Update synthetic_facial_generation.py
* Update synthetic_facial_generation.py
* Update synthetic_facial_generation.py
* Update README.md
* Update README.md
* Update projects/data_generation/synthetic-multi-view-facial-image-generation/algorithm/SyntheticDataGeneration.py
Co-authored-by: ad-daniel <44834743+ad-daniel@users.noreply.github.com>
* Update projects/data_generation/synthetic-multi-view-facial-image-generation/algorithm/SyntheticDataGeneration.py
Co-authored-by: ad-daniel <44834743+ad-daniel@users.noreply.github.com>
* Update projects/data_generation/synthetic-multi-view-facial-image-generation/algorithm/SyntheticDataGeneration.py
Co-authored-by: ad-daniel <44834743+ad-daniel@users.noreply.github.com>
* Update projects/data_generation/synthetic-multi-view-facial-image-generation/algorithm/SyntheticDataGeneration.py
Co-authored-by: ad-daniel <44834743+ad-daniel@users.noreply.github.com>
* Update projects/data_generation/synthetic-multi-view-facial-image-generation/algorithm/SyntheticDataGeneration.py
Co-authored-by: ad-daniel <44834743+ad-daniel@users.noreply.github.com>
* new structure
* Delete projects/data_generation/synthetic-multi-view-facial-image-generation/3ddfa directory
* Delete projects/data_generation/synthetic-multi-view-facial-image-generation/data directory
* Delete projects/data_generation/synthetic-multi-view-facial-image-generation/experiments directory
* Delete projects/data_generation/synthetic-multi-view-facial-image-generation/misc directory
* Delete projects/data_generation/synthetic-multi-view-facial-image-generation/models directory
* Delete projects/data_generation/synthetic-multi-view-facial-image-generation/options directory
* Delete projects/data_generation/synthetic-multi-view-facial-image-generation/trainers directory
* Delete projects/data_generation/synthetic-multi-view-facial-image-generation/util directory
* Delete SyntheticDataGeneration.py
* Delete testSyntheticDataGeneration.py
* Delete __init__.py
* Delete test_frontal.py
* Delete test_multipose.py
* Delete train.py
* Delete LICENSE
* Update README.md
* Rename projects/data_generation/synthetic-multi-view-facial-image-generation/algorithm/SyntheticDataGeneration.py to projects/data_generation/synthetic-multi-view-facial-image-generation/SyntheticDataGeneration.py
* Rename projects/data_generation/synthetic-multi-view-facial-image-generation/algorithm/testSyntheticDataGeneration.py to projects/data_generation/synthetic-multi-view-facial-image-generation/testSyntheticDataGeneration.py
* Update tests_sources.yml
* Rename projects/data_generation/synthetic-multi-view-facial-image-generation/algorithm/__init__.py to projects/data_generation/synthetic-multi-view-facial-image-generation/__init__.py
* Update __init__.py
* Update __init__.py
* Update __init__.py
* Delete __init__.py
* Create __init__.py
* Update __init__.py
* Delete __init__.py
* Create __init__.py
* Delete __init__.py
* update
* Delete SyntheticDataGeneration.py
* Delete testSyntheticDataGeneration.py
* update for tests
* update for tests
* Update test_synthetic_facial_generation.py
* update
* Update test_synthetic_facial_generation.py
* Rename tests/sources/tools/data_generation/test_synthetic_facial_generation.py to tests/sources/tools/data_generation/synthetic-multi-view-facial-image-generation/test_synthetic_facial_generation.py
* update references
* Rename tests/sources/tools/data_generation/opendr_url.py to tests/sources/tools/data_generation/synthetic-multi-view-facial-generator/opendr_url.py
* Rename tests/sources/tools/data_generation/synthetic-multi-view-facial-generator/opendr_url.py to tests/sources/tools/data_generation/synthetic-multi-view-facial-generationopendr_url.py
* Rename tests/sources/tools/data_generation/synthetic-multi-view-facial-generationopendr_url.py to tests/sources/tools/data_generation/synthetic-multi-view-facial-generation/opendr_url.py
* Rename tests/sources/tools/data_generation/synthetic-multi-view-facial-generation/opendr_url.py to tests/sources/tools/data_generation/synthetic-mult-view-facial-image-generation/opendr_url.py
* Rename tests/sources/tools/data_generation/synthetic-mult-view-facial-image-generation/opendr_url.py to tests/sources/tools/data_generation/synthetic-multi-view-facial-image-generation/opendr_url.py
* Update opendr_url.py
* Update test_synthetic_facial_generation.py
* Update opendr_url.py
* Create 3ddfa_url.py
* Update and rename projects/data_generation/synthetic-multi-view-facial-image-generation/algorithm/3ddfa/3ddfa_url.py to projects/data_generation/3ddfa_url.py
* Update SyntheticDataGeneration.py
* Create test_multipose_url.py
* Update SyntheticDataGeneration.py
* Update 3ddfa_url.py
* Update test_multipose_url.py
* Update 3ddfa_url.py
* Update SyntheticDataGeneration.py
* Rename 3ddfa_url.py to help_url.py
* Update SyntheticDataGeneration.py
* Update help_url.py
* Update test_multipose_url.py
* Update test_multipose_url.py
* update
* Update and rename tests/sources/tools/data_generation/synthetic-multi-view-facial-image-generation/opendr_url.py to tests/sources/tools/data_generation/synthetic_multi_view_facial_image_generation/opendr_url.py
* Rename tests/sources/tools/data_generation/synthetic-multi-view-facial-image-generation/test_synthetic_facial_generation.py to tests/sources/tools/data_generation/synthetic_multi_view_facial_image_generation/test_synthetic_facial_generation.py
* rename
* updates
* update
* update
* Delete opendr_url.py
* Delete test_synthetic_facial_generation.py
* Rename tests/sources/tools/data_generation/test_synthetic_facial_generation.py to tests/sources/tools/data_generation/synthetic_multi_view_facial_image_generation/test_synthetic_facial_generation.py
* Rename tests/sources/tools/data_generation/__init__.py to tests/sources/tools/data_generation/synthetic_multi_view_facial_image_generation/__init__.py
* update test
* update
* Rename tests/sources/tools/data_generation/file_list.txt to tests/sources/tools/data_generation/synthetic_multi_view_facial_image_generation/file_list.txt
* Update __init__.py
* init
* Update tests_sources.yml
* Update tests_sources.yml
* update paths
* update
* update
* update
* Reorganize
* update
* update
* update
* update
* update tool
* Delete test_synthetic_facial_generation.py
* Delete file_list.txt
* Delete __init__.py
* Delete __init__.py
* Update tests_sources.yml
* update
* without pep errors
* reformat code
* Delete projects/data_generation/OLD directory
* Update SyntheticDataGeneration.py
* Update tool_synthetic_facial_generation.py
* Update render.py
* Update SyntheticDataGeneration.py
* Update SyntheticDataGeneration.py
* Update render.py
* Update render.py
* Update synthetic_facial_image_generator.md
* Update synthetic_facial_image_generator.md
* Update README.md
* Update README.md
* Delete __init__.py
* Delete __init__.py
* Update readme.md
* Update readme.md
* Delete realign_lmk
* Add files via upload
* Rename projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/DDFA/BFM_Remove_Neck/tri.mat to projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/DDFA/visualize/tri.mat
* Update readme.md
* Update README.md
* Delete tri.mat
* Add files via upload
* final updates
* installation and import fixes
* Bug fixes
* for execute in gpu_id 0
* resolve pep8 errors
* Update synthetic_facial_generation.py
* bug fixes
* Update docs/reference/index.md
Co-authored-by: ad-daniel <44834743+ad-daniel@users.noreply.github.com>
* Update docs/reference/synthetic_facial_image_generator.md
Co-authored-by: ad-daniel <44834743+ad-daniel@users.noreply.github.com>
* Update docs/reference/synthetic_facial_image_generator.md
Co-authored-by: ad-daniel <44834743+ad-daniel@users.noreply.github.com>
* Update docs/reference/synthetic_facial_image_generator.md
Co-authored-by: ad-daniel <44834743+ad-daniel@users.noreply.github.com>
* Update docs/reference/synthetic_facial_image_generator.md
Co-authored-by: ad-daniel <44834743+ad-daniel@users.noreply.github.com>
* Update docs/reference/synthetic_facial_image_generator.md
Co-authored-by: ad-daniel <44834743+ad-daniel@users.noreply.github.com>
* Update projects/data_generation/synthetic_multi_view_facial_image_generation/README.md
Co-authored-by: ad-daniel <44834743+ad-daniel@users.noreply.github.com>
* Update projects/data_generation/synthetic_multi_view_facial_image_generation/README.md
Co-authored-by: ad-daniel <44834743+ad-daniel@users.noreply.github.com>
* Update projects/data_generation/synthetic_multi_view_facial_image_generation/SyntheticDataGeneration.py
Co-authored-by: ad-daniel <44834743+ad-daniel@users.noreply.github.com>
* Update projects/data_generation/synthetic_multi_view_facial_image_generation/tool_synthetic_facial_generation.py
Co-authored-by: ad-daniel <44834743+ad-daniel@users.noreply.github.com>
* Update projects/data_generation/synthetic_multi_view_facial_image_generation/README.md
Co-authored-by: ad-daniel <44834743+ad-daniel@users.noreply.github.com>
* Update test_license.py
* Update test_license.py
* Update readme.md
* Update readme.md
* Delete projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/Rotate_and_Render/misc directory
* Delete projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/DDFA/train.configs directory
Co-authored-by: ad-daniel <44834743+ad-daniel@users.noreply.github.com>
Co-authored-by: ad-daniel
Co-authored-by: Nikolaos Passalis
Co-authored-by: Nikolaos
---
docs/reference/index.md | 7 +-
.../synthetic_facial_image_generator.md | 58 +
.../README.md | 70 +
.../SyntheticDataGeneration.py | 141 +
.../algorithm/DDFA/BFM_Remove_Neck/bfm_show.m | 14 +
.../DDFA/BFM_Remove_Neck/imgs/bfm_noneck.jpg | Bin 0 -> 38340 bytes
.../DDFA/BFM_Remove_Neck/imgs/bfm_refine.jpg | Bin 0 -> 38340 bytes
.../algorithm/DDFA/BFM_Remove_Neck/readme.md | 16 +
.../DDFA/BFM_Remove_Neck/render_face_mesh.m | 22 +
.../algorithm/DDFA/LICENSE | 21 +
.../algorithm/DDFA/__init__.py | 0
.../algorithm/DDFA/example/Images/.keep | 0
.../algorithm/DDFA/mobilenet_v1.py | 154 +
.../algorithm/DDFA/preprocessing_1.py | 229 +
.../algorithm/DDFA/preprocessing_2.py | 163 +
.../algorithm/DDFA/simple_dataset.py | 39 +
.../algorithm/DDFA/test.py | 126 +
.../algorithm/DDFA/utils/__init__.py | 0
.../algorithm/DDFA/utils/cv_plot.py | 99 +
.../algorithm/DDFA/utils/cython/__init__.py | 0
.../algorithm/DDFA/utils/cython/mesh_core.cpp | 215 +
.../algorithm/DDFA/utils/cython/mesh_core.h | 65 +
.../mesh_core_cython.cp37-win_amd64.pyd | Bin 0 -> 67584 bytes
.../DDFA/utils/cython/mesh_core_cython.cpp | 8365 +++++++++++++++++
.../DDFA/utils/cython/mesh_core_cython.pyx | 65 +
.../algorithm/DDFA/utils/cython/readme.md | 6 +
.../algorithm/DDFA/utils/cython/setup.py | 19 +
.../algorithm/DDFA/utils/ddfa.py | 161 +
.../algorithm/DDFA/utils/estimate_pose.py | 110 +
.../algorithm/DDFA/utils/inference.py | 268 +
.../algorithm/DDFA/utils/io.py | 130 +
.../algorithm/DDFA/utils/lighting.py | 101 +
.../algorithm/DDFA/utils/paf.py | 61 +
.../algorithm/DDFA/utils/params.py | 43 +
.../algorithm/DDFA/utils/path_helper.py | 2 +
.../algorithm/DDFA/utils/render.py | 225 +
.../algorithm/DDFA/visualize/readme.md | 3 +
.../algorithm/DDFA/visualize/render_demo.m | 10 +
.../DDFA/visualize/render_face_mesh.m | 18 +
.../algorithm/DDFA/visualize/tri.mat | Bin 0 -> 339799 bytes
.../algorithm/Rotate_and_Render/LICENSE | 384 +
.../algorithm/Rotate_and_Render/__init__.py | 0
.../Rotate_and_Render/data/__init__.py | 150 +
.../Rotate_and_Render/data/allface_dataset.py | 165 +
.../Rotate_and_Render/data/base_dataset.py | 123 +
.../algorithm/Rotate_and_Render/data/curve.py | 250 +
.../Rotate_and_Render/data/data_utils.py | 183 +
.../Rotate_and_Render/experiments/test.sh | 24 +
.../Rotate_and_Render/experiments/train.sh | 32 +
.../experiments/v100_test.sh | 24 +
.../Rotate_and_Render/models/__init__.py | 40 +
.../models/networks/__init__.py | 60 +
.../models/networks/architecture.py | 199 +
.../models/networks/base_network.py | 54 +
.../models/networks/discriminator.py | 308 +
.../models/networks/encoder.py | 50 +
.../models/networks/generator.py | 126 +
.../Rotate_and_Render/models/networks/loss.py | 188 +
.../models/networks/normalization.py | 106 +
.../models/networks/render.py | 584 ++
.../models/networks/rotate_render.py | 115 +
.../networks/sync_batchnorm/__init__.py | 6 +
.../networks/sync_batchnorm/batchnorm.py | 384 +
.../sync_batchnorm/batchnorm_reimpl.py | 57 +
.../models/networks/sync_batchnorm/comm.py | 127 +
.../networks/sync_batchnorm/replicate.py | 119 +
.../networks/sync_batchnorm/scatter_gather.py | 44 +
.../networks/sync_batchnorm/unittest.py | 18 +
.../models/networks/test_render.py | 152 +
.../Rotate_and_Render/models/networks/util.py | 176 +
.../Rotate_and_Render/models/rotate_model.py | 330 +
.../models/rotatespade_model.py | 391 +
.../Rotate_and_Render/models/test_model.py | 58 +
.../Rotate_and_Render/options/__init__.py | 0
.../Rotate_and_Render/options/base_options.py | 243 +
.../Rotate_and_Render/options/test_options.py | 29 +
.../options/train_options.py | 73 +
.../Rotate_and_Render/test_frontal.py | 205 +
.../Rotate_and_Render/test_multipose.py | 241 +
.../algorithm/Rotate_and_Render/train.py | 99 +
.../Rotate_and_Render/trainers/__init__.py | 36 +
.../trainers/rotate_trainer.py | 110 +
.../trainers/rotatespade_trainer.py | 46 +
.../Rotate_and_Render/util/__init__.py | 0
.../algorithm/Rotate_and_Render/util/html.py | 71 +
.../Rotate_and_Render/util/iter_counter.py | 69 +
.../algorithm/Rotate_and_Render/util/util.py | 206 +
.../Rotate_and_Render/util/visualizer.py | 187 +
.../demos/imgs_input/person01145+0-15.jpg | Bin 0 -> 9282 bytes
.../requirements.txt | 11 +
.../tool_synthetic_facial_generation.py | 79 +
.../src/data_generation/CMakeLists.txt | 32 +
.../opendr_ws/src/data_generation/README.md | 28 +
.../opendr_ws/src/data_generation/package.xml | 25 +
.../scripts/synthetic_facial_generation.py | 123 +
tests/test_license.py | 1 +
96 files changed, 17965 insertions(+), 2 deletions(-)
create mode 100644 docs/reference/synthetic_facial_image_generator.md
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/README.md
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/SyntheticDataGeneration.py
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/DDFA/BFM_Remove_Neck/bfm_show.m
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/DDFA/BFM_Remove_Neck/imgs/bfm_noneck.jpg
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/DDFA/BFM_Remove_Neck/imgs/bfm_refine.jpg
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/DDFA/BFM_Remove_Neck/readme.md
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/DDFA/BFM_Remove_Neck/render_face_mesh.m
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/DDFA/LICENSE
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/DDFA/__init__.py
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/DDFA/example/Images/.keep
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/DDFA/mobilenet_v1.py
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/DDFA/preprocessing_1.py
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/DDFA/preprocessing_2.py
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/DDFA/simple_dataset.py
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/DDFA/test.py
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/DDFA/utils/__init__.py
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/DDFA/utils/cv_plot.py
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/DDFA/utils/cython/__init__.py
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/DDFA/utils/cython/mesh_core.cpp
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/DDFA/utils/cython/mesh_core.h
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/DDFA/utils/cython/mesh_core_cython.cp37-win_amd64.pyd
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/DDFA/utils/cython/mesh_core_cython.cpp
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/DDFA/utils/cython/mesh_core_cython.pyx
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/DDFA/utils/cython/readme.md
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/DDFA/utils/cython/setup.py
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/DDFA/utils/ddfa.py
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/DDFA/utils/estimate_pose.py
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/DDFA/utils/inference.py
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/DDFA/utils/io.py
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/DDFA/utils/lighting.py
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/DDFA/utils/paf.py
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/DDFA/utils/params.py
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/DDFA/utils/path_helper.py
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/DDFA/utils/render.py
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/DDFA/visualize/readme.md
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/DDFA/visualize/render_demo.m
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/DDFA/visualize/render_face_mesh.m
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/DDFA/visualize/tri.mat
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/Rotate_and_Render/LICENSE
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/Rotate_and_Render/__init__.py
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/Rotate_and_Render/data/__init__.py
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/Rotate_and_Render/data/allface_dataset.py
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/Rotate_and_Render/data/base_dataset.py
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/Rotate_and_Render/data/curve.py
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/Rotate_and_Render/data/data_utils.py
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/Rotate_and_Render/experiments/test.sh
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/Rotate_and_Render/experiments/train.sh
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/Rotate_and_Render/experiments/v100_test.sh
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/Rotate_and_Render/models/__init__.py
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/Rotate_and_Render/models/networks/__init__.py
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/Rotate_and_Render/models/networks/architecture.py
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/Rotate_and_Render/models/networks/base_network.py
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/Rotate_and_Render/models/networks/discriminator.py
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/Rotate_and_Render/models/networks/encoder.py
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/Rotate_and_Render/models/networks/generator.py
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/Rotate_and_Render/models/networks/loss.py
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/Rotate_and_Render/models/networks/normalization.py
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/Rotate_and_Render/models/networks/render.py
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/Rotate_and_Render/models/networks/rotate_render.py
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/Rotate_and_Render/models/networks/sync_batchnorm/__init__.py
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/Rotate_and_Render/models/networks/sync_batchnorm/batchnorm.py
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/Rotate_and_Render/models/networks/sync_batchnorm/batchnorm_reimpl.py
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/Rotate_and_Render/models/networks/sync_batchnorm/comm.py
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/Rotate_and_Render/models/networks/sync_batchnorm/replicate.py
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/Rotate_and_Render/models/networks/sync_batchnorm/scatter_gather.py
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/Rotate_and_Render/models/networks/sync_batchnorm/unittest.py
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/Rotate_and_Render/models/networks/test_render.py
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/Rotate_and_Render/models/networks/util.py
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/Rotate_and_Render/models/rotate_model.py
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/Rotate_and_Render/models/rotatespade_model.py
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/Rotate_and_Render/models/test_model.py
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/Rotate_and_Render/options/__init__.py
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/Rotate_and_Render/options/base_options.py
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/Rotate_and_Render/options/test_options.py
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/Rotate_and_Render/options/train_options.py
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/Rotate_and_Render/test_frontal.py
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/Rotate_and_Render/test_multipose.py
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/Rotate_and_Render/train.py
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/Rotate_and_Render/trainers/__init__.py
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/Rotate_and_Render/trainers/rotate_trainer.py
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/Rotate_and_Render/trainers/rotatespade_trainer.py
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/Rotate_and_Render/util/__init__.py
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/Rotate_and_Render/util/html.py
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/Rotate_and_Render/util/iter_counter.py
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/Rotate_and_Render/util/util.py
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/Rotate_and_Render/util/visualizer.py
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/demos/imgs_input/person01145+0-15.jpg
create mode 100644 projects/data_generation/synthetic_multi_view_facial_image_generation/requirements.txt
create mode 100755 projects/data_generation/synthetic_multi_view_facial_image_generation/tool_synthetic_facial_generation.py
create mode 100644 projects/opendr_ws/src/data_generation/CMakeLists.txt
create mode 100644 projects/opendr_ws/src/data_generation/README.md
create mode 100644 projects/opendr_ws/src/data_generation/package.xml
create mode 100644 projects/opendr_ws/src/data_generation/scripts/synthetic_facial_generation.py
diff --git a/docs/reference/index.md b/docs/reference/index.md
index 60d2cfc530..f0926d311e 100644
--- a/docs/reference/index.md
+++ b/docs/reference/index.md
@@ -67,11 +67,14 @@ Neither the copyright holder nor any applicable licensor will be liable for any
- [single_demo_grasp Module](single-demonstration-grasping.md)
- `simulation` Module
+ - [human_model_generation Module](human_model_generation.md)
+ - `data_generation` Module
+ - [synthetic_facial_image_generation Module](synthetic_facial_image_generator.md)
- [human_model_generation Module](human-model-generation.md)
- `utils` Module
- [Hyperparameter Tuning Module](hyperparameter_tuner.md)
-- `Stand-alone Utility Frameworks`
- - [Engine Agnostic Gym Environment with Reactive extension (EAGERx)](eagerx.md)
+ - `Stand-alone Utility Frameworks`
+ - [Engine Agnostic Gym Environment with Reactive extension (EAGERx)](eagerx.md)
- [ROSBridge Package](rosbridge.md)
- [C Inference API](c-api.md)
- [data.h](c-data-h.md)
diff --git a/docs/reference/synthetic_facial_image_generator.md b/docs/reference/synthetic_facial_image_generator.md
new file mode 100644
index 0000000000..5f2dedac56
--- /dev/null
+++ b/docs/reference/synthetic_facial_image_generator.md
@@ -0,0 +1,58 @@
+## synthetic_facial_image_generator module
+
+The *synthetic_facial_image_generator* module contains the *MultiviewDataGeneration* class, which implements the multi-view facial image rendering operation.
+
+### Class MultiviewDataGeneration
+
+The *MultiviewDataGeneration* class is a wrapper of the Rotate-and-Render [[1]](#R-R-paper) photorealistic multi-view facial image generator based on the original
+[Rotate-and-Render implementation](https://github.com/Hangz-nju-cuhk/Rotate-and-Render).
+It can be used to perform multi-view facial image generation from a single view image on the wild (eval).
+The [MultiviewDataGeneration](#projects.data_generation.synthetic-multi-view-facial-image-generation.3ddfa.SyntheticDataGeneration.py ) class has the
+following public methods:
+
+#### `MultiviewDataGeneration` constructor
+```python
+MultiviewDataGeneration(self, args)
+```
+
+Constructor main parameters *args* explanation:
+
+- **path_in**: *str, default='./example/Images'* \
+An absolute path (path in) which indicates the folder that contains the set of single view facial image snapshots to be processed by the algorithm.
+- **path_3ddfa**: *str, default='./'* \
+An absolute path (path 3ddfa) which indicates the 3ddfa module folder of the software structure as presented in the repository. This path is necessary in order for the software to create the folders for the intermediate / temporary storage of files generated during the pre-processing such as 3d face models, facial landmarks etc.
+in the folder results of this path.
+- **save_path**: *str, default='./results'* \
+The output images are stored in the folder indicated by save path which is also a class input parameter.
+- **val_yaw**: *str, default='10,20'* \
+Definition of the yaw angles (in the interval [−90°,90°]) for which the rendered images will be produced.
+- **val_pitch**: *str, default=' 30,40'* \
+Definition of the pitch angles (in the interval [−90°,90°]) for which the rendered images will be produced.
+- **device**: *{'cuda', 'cpu'}, default='cpu'* \
+Specifies the device to be used.
+
+
+#### `MultiviewDataGeneration.eval`
+```python
+MultiviewDataGeneration.eval()
+```
+
+This function is implementing the main procedure for the creation of the multi-view facial images, which consists of three different stages.
+Instead of initializing the main parameters of the 3DDFA network in the intializer, the first stage includes detection of the candidate faces in the input images and 3D-head mesh fitting using 3DDFA.
+Moreover, the second stage extracts the facial landmarks in order to derive the head pose and align the images with the 3d head model mesh.
+Finally, the main functionality of the multiview facial image rendering is executed by loading the respective network parameters.
+
+### Usage Example
+
+```python
+python3 tool_synthetic_facial_generation.py -path_in ./demos/imgs_input/ -path_3ddfa ./algorithm/DDFA/ -save_path ./results -val_yaw 10, 40 -val_pitch 10, 30 -device cuda
+```
+The corresponding paths for the input, output folders as well as the pitch and yaw angles for which the user wants to
+produce the facial images can be easily incorporated in the class creation while the method is initialized.
+The process is executed for the CNN parameters and GPUs specified in the arguments of the aforementioned command.
+Users that wish to modify these parameters shall change the respective input arguments which derived from a parser including the arguments path in, path_3ddfa, save_path, val_yaw, val_pitch etc.
+
+#### References
+[1]
+Hang Zhou, Jihao Liu, Ziwei Liu, Yu Liu, Xiaogang Wang, Rotate-and-Render: Unsupervised Photorealistic Face Rotation from Single-View Images,
+[arXiv](https://arxiv.org/abs/2003.08124#).
diff --git a/projects/data_generation/synthetic_multi_view_facial_image_generation/README.md b/projects/data_generation/synthetic_multi_view_facial_image_generation/README.md
new file mode 100644
index 0000000000..c8a650489d
--- /dev/null
+++ b/projects/data_generation/synthetic_multi_view_facial_image_generation/README.md
@@ -0,0 +1,70 @@
+# Synthentic Multi-view Facial Image Generation based on Rotate-and-Render: Unsupervised Photorealistic Face Rotation from Single-View Images (CVPR 2020)
+
+Based on: [[Rotate-and-Render: Unsupervised Photorealistic Face Rotation from Single-View Images]](https://arxiv.org/abs/2003.08124)
+
+We utilize, with small modifications in order to be easily executed, publicly available code, namely an un-supervised framework that can synthesize photorealistic rotated facial images using as input a single facial image, or multiple such images (one per person).
+The implemented method allows for rotating faces in the 3D space back and forth, and then re-rendering them to the 2D plane.
+The generated multi-view facial images can be used for different learning tasks, such as in self-supervised learning tasks.
+
+## Sources:
+* Face Alignment in Full Pose Range: A 3D Total Solution (IEEE TPAMI 2017)
+* Neural 3D Mesh Renderer (CVPR 2018)
+* Rotate-and-Render: Unsupervised Photorealistic Face Rotation from Single-View Images (CVPR 2020)
+
+## Requirements
+* Python 3.6 is used. Basic requirements are listed in the 'requirements.txt'.
+
+```
+pip3 install -r requirements.txt
+```
+* Install the [Neural_Renderer](https://github.com/daniilidis-group/neural_renderer) following the instructions.
+```
+pip install git+https://github.com/cidl-auth/neural_renderer
+```
+
+* Download checkpoint and BFM model from [checkpoint.zip](ftp://opendrdata.csd.auth.gr/data_generation/synthetic_multi-view-facial-generator/ckpt_and_bfm.zip) put it in ```3ddfa``` and unzip it:
+```bash
+wget ftp://opendrdata.csd.auth.gr/data_generation/synthetic_multi-view-facial-generator/checkpoints.zip
+unzip checkpoints.zip
+unzip checkpoints/ckpt_and_bfm.zip -d 3ddfa
+```
+The 3D models are borrowed from [3DDFA](https://github.com/cleardusk/3DDFA).
+
+* Compile cython code and download remaining models:
+```bash
+cd algorithm/DDFA/utils/cython/
+python3 setup.py build_ext -i
+cd ../../../..
+mkdir algorithm/DDFA/models
+mkdir algorithm/DDFA/example
+wget https://github.com/cleardusk/3DDFA/blob/master/models/phase1_wpdc_vdc.pth.tar?raw=true -O algorithm/DDFA/models/phase1_wpdc_vdc.pth.tar
+```
+
+## Usage Example
+
+1. Execute the one-step OPENDR function ```tool_synthetic_facial_generation.py``` specifying the input images folder, the output folder, the desired degrees (range -90 to 90) for generating the facial images in multiple view angles pitch and yaw as indicated in the command line:
+```sh
+python3 tool_synthetic_facial_generation.py -path_in ./demos/imgs_input/ -path_3ddfa ./algorithm/DDFA/ -save_path ./results -val_yaw 10, 40 -val_pitch 10, 30 -device cuda
+```
+
+3. The results can be found in ```results/rs_model/example/```, where multi-view facial images are generated for every person in a respective folder.
+
+## License
+Rotate-and-Render is provided under [CC-BY-4.0](https://github.com/Hangz-nju-cuhk/Rotate-and-Render/blob/master/LICENSE) license.
+SPADE, SyncBN, 3DDFA are under [MIT License](https://github.com/tasostefas/opendr_internal/blob/synthetic-multi-view-facial-generator/projects/data_generation/synthetic-multi-view-facial-image-generation/3ddfa/LICENSE)
+
+## Acknowledgement
+Large parts of the code are taken from:
+* The structure of this codebase is borrowed from [SPADE](https://github.com/NVlabs/SPADE).
+* The [SyncBN](https://github.com/vacancy/Synchronized-BatchNorm-PyTorch) module is used in the current code.
+* The [3DDFA](https://github.com/cleardusk/3DDFA) implementation for 3D reconstruction.
+* The code [Rotate-and-Render](https://github.com/Hangz-nju-cuhk/Rotate-and-Render/)
+
+with the following modifications to make them compatible with the OpenDR specifications:
+## Minor Modifications
+1. All scripts: PEP8 changes
+2. ```3ddfa/preprocessing_1.py, 3ddfa/preprocessing_2.py, test_multipose.py``` Modified to work as a callable functions
+3. ```options/base_options.py, options/test_options.py ``` Commented out/change several parameters to be easily executed
+4. ```models/networks/render.py``` Minor functional changes
+5. The OPENDR created functions are ```SyntheticDataGeneration.py, tool_synthetic_facial_generation.py```
+6. The rest are taken from the aforementioned repositories
diff --git a/projects/data_generation/synthetic_multi_view_facial_image_generation/SyntheticDataGeneration.py b/projects/data_generation/synthetic_multi_view_facial_image_generation/SyntheticDataGeneration.py
new file mode 100644
index 0000000000..4df8e55fff
--- /dev/null
+++ b/projects/data_generation/synthetic_multi_view_facial_image_generation/SyntheticDataGeneration.py
@@ -0,0 +1,141 @@
+# Copyright 2020-2022 OpenDR European Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+# MIT License
+#
+# Copyright (c) 2019 Jian Zhao
+#
+# Permission is hereby granted, free of charge, to any person obtaining a copy
+# of this software and associated documentation files (the "Software"), to deal
+# in the Software without restriction, including without limitation the rights
+# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+# copies of the Software, and to permit persons to whom the Software is
+# furnished to do so, subject to the following conditions:
+#
+# The above copyright notice and this permission notice shall be included in all
+# copies or substantial portions of the Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+# SOFTWARE.
+
+# !/usr/bin/env python3.7
+# coding: utf-8
+from tqdm import tqdm
+from shutil import copyfile
+import cv2
+import os
+from algorithm.DDFA import preprocessing_1
+from algorithm.DDFA import preprocessing_2
+from algorithm.Rotate_and_Render import test_multipose
+
+
+class MultiviewDataGeneration():
+
+ def __init__(self, args):
+
+ self.path_in = args.path_in
+ self.key = str(args.path_3ddfa + "/example/Images/")
+ self.key1 = str(args.path_3ddfa + "/example/")
+ self.key2 = str(args.path_3ddfa + "/results/")
+ self.save_path = args.save_path
+ self.val_yaw = args.val_yaw
+ self.val_pitch = args.val_pitch
+ self.args = args
+
+ def eval(self):
+
+ # STAGE No1 : detect faces and fitting to 3d mesh by main.py execution
+ list_im = []
+
+ print("START")
+
+ a = open("file_list.txt", "w")
+ for subdir, dirs, files in os.walk(self.path_in):
+ current_directory_path = os.path.abspath(subdir)
+ for file in files:
+ name, ext = os.path.splitext(file)
+ if ext == ".jpg":
+ current_image_path = os.path.join(current_directory_path, file)
+ current_image = cv2.imread(current_image_path)
+ list_im.append(current_image_path)
+ a.write(str(file) + os.linesep)
+ cv2.imwrite(os.path.join(self.key, file), current_image)
+ self.args.files = list_im.copy()
+ list_im.clear()
+ preprocessing_1.main(self.args)
+ a.close()
+
+ # STAGE No2: Landmarks Output with inference.py execution
+
+ im_list2 = []
+ d = open(os.path.join(self.key1, 'realign_lmk'), "w")
+ for subdir, dirs, files in os.walk(self.path_in):
+ current_directory_path = os.path.abspath(subdir)
+ self.args.img_prefix = current_directory_path
+ self.args.save_dir = os.path.abspath(self.key2)
+ self.args.save_lmk_dir = os.path.abspath(self.key1)
+ if not os.path.exists(self.args.save_dir):
+ os.mkdir(self.args.save_dir)
+ if not os.path.exists(self.args.save_lmk_dir):
+ os.mkdir(self.args.save_lmk_dir)
+
+ list_lfw_batch = './file_list.txt'
+ dst = os.path.join(self.args.save_lmk_dir, "file_list.txt")
+ copyfile(list_lfw_batch, dst)
+ b = open("txt_name_batch.txt", "w")
+ for file in files:
+
+ with open(list_lfw_batch) as f:
+ img_list = [x.strip() for x in f.readlines()]
+
+ for img_idx, img_fp in enumerate(tqdm(img_list)):
+ if img_fp == str(file):
+ im_list2.append(str(file))
+ b.write(str(file) + os.linesep)
+ self.args.img_list = './txt_name_batch.txt'
+ b.close()
+ self.args.dump_lmk = 'true'
+ im_list2.clear()
+ preprocessing_2.main(self.args)
+ with open(os.path.join(self.args.save_lmk_dir, 'realign_lmk_')) as f:
+ img_list = [x.strip() for x in f.readlines()]
+ for img_idx, img_fp in enumerate(tqdm(img_list)):
+ d.write(img_fp + os.linesep)
+ d.close()
+
+ # STAGE No3: Generate Facial Images in specific pitch and yaw angles
+ test_multipose.main(self.save_path, self.val_yaw, self.val_pitch)
+
+ def fit(self):
+ raise NotImplementedError()
+
+ def infer(self):
+ raise NotImplementedError()
+
+ def load(self):
+ raise NotImplementedError()
+
+ def optimize(self):
+ raise NotImplementedError()
+
+ def reset(self):
+ raise NotImplementedError()
+
+ def save(self):
+ raise NotImplementedError()
diff --git a/projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/DDFA/BFM_Remove_Neck/bfm_show.m b/projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/DDFA/BFM_Remove_Neck/bfm_show.m
new file mode 100644
index 0000000000..392dcdf62c
--- /dev/null
+++ b/projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/DDFA/BFM_Remove_Neck/bfm_show.m
@@ -0,0 +1,14 @@
+model = load('model_refine.mat');
+model = model.model_refine;
+
+mu = model.mu_shape + model.mu_exp;
+mu = reshape(mu, 3, length(mu) / 3);
+tri = model.tri;
+keypoints = model.keypoints;
+pts68_3d = mu(:, keypoints);
+
+render_face_mesh(mu, tri, pts68_3d);
+
+A = getframe(gcf);
+mimg = A.cdata;
+imwrite(mimg, 'imgs/bfm_noneck.jpg', 'quality', 95);
diff --git a/projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/DDFA/BFM_Remove_Neck/imgs/bfm_noneck.jpg b/projects/data_generation/synthetic_multi_view_facial_image_generation/algorithm/DDFA/BFM_Remove_Neck/imgs/bfm_noneck.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..e05cd6073db0c4e6a9628427fb10593cac1ac93d
GIT binary patch
literal 38340
zcmdSAcUTn7)-T#f7(kNb3O)VU&mkdoxcto?7wPU92{&MJX}1ye-sb_J|2hwgolTJ7oULeuLE;NbeE9m
zuZzE4@?VeM!NtbLB?RGt{?X)bRkvNhJ$$UZJ5R8&9sqalVPW6Hy6pp4FmmGlLp+SI
z|8-#9!N$SG17XCti)m0#h7lhd8zVF>Mq*5BU(Eji&OKc6`~1)FC^Sq!51c3k0^+jq
z*`8N-Q)!MP*ac0U0|^MJX=v%_IUaIyJ>nJ;77=|aCNBFzPF_J#N%{4gw_4gdx_V~j
z7M51lHnuLVZtfmXPp_bl!6Bhx;Suo(iAl*RpTDH$mtI%^_J65`ssE#1_b__h
z`Rf~i{?ZHUjt8b--^0PZ&yPp`Oao-%MDai%0H5-CTy}Lg0h^#Eg38o+oRFGbXpIB;
zmumme?0-$M!2e&G{ZGaIAHC)QB5W+o$HTq{K!EG6oCq%9|A2y(LPLGweqy*Z5+_Ga
zldMb2of8nRBng1Le$4uKtU*Yu8&hxc%X0PSY(mwWsl#T;Bh?8`wYY+mSS9os-XybO
zKdjtKsha!sg=5P8P*0cquBSun(Dpa@(-ejjCmT9SF4pRIx$)pklr}Na7D_+KB$+F>;F=4Nh4zNT)>R`RFuuf7R3AmUv
znOz5+ce|)o)s^U+8%|4=eqKxa>n9oHQDz}eqs&MwOpU$5>KQKBP?>ASgiw|nD$ag8
zL&1J#ys7hFW%bdH-8II#hWfTO!|Y>2c1(+W&3Ajg!A(w|egCwnP=p4d9?^8g2HsGi
zIJ1;|eeKrxNPq3}8!gF(JK&Jz`Pl{25}_7lR;kyc)Iln8Iyc{^Av+9Cw}78Mn(JRK
z?zB^xU4h@+0$KKh*MA%lx&M5TMR@jRw_s0zHC}??myU(b3q`h*{J;13VZk1ksMN<*
zbE40&nja)IZvhM2%roMqTcDHYh7!vtqWU_i1U4qJeuHjAY5dc3+@F7Ivt%>dDk^P`5vppx7yK*Xy7M>n=4E5$!9&2)0Z^Q_E?>b|R$;tfh
zUZhcNEZqOTf8WL)l)t_SXk_`l+1V3U
zw1hWZ=Km#AkPD
zks0H$t6u&A)%{t1#fD+9LQ-J53`T%WTZN@%63@{gn173q|K@
z4ve^s4xY9`h*Ic1MFkziiNkF44IeDDcQHQrO1?viJJ>PSi-W!e%Kc`H>u91n>#{nL
zXEPTqrG7Wx2RNeH49v{!1CbR^Sw)9O;Lg_AhqnL~`Z?mUG-LDhLjR>r!=#&p`4opr
zpNT`ynm}dXhec*_q`^hzm7WjD)O%h>IPygi&({E=2F=F_M5~kr&ZHgqN4P$s`MUAX
z9<=yA9Hphb=E7cSGrlr~#%jeK`hareOt3Vm_mD3zUD-x+#5Z=FkJvs`S>NZuv6&A^
zxAS#xQ-FQIe|ihp&|t;Ba+W%sX-iP4rDfE9R;U{k!-ZWk?Z<~!N3xmj_X~EV=T`Rt
zevd*R;lhaxv)VO(e!ECk$o%-$AC6X4E8JZO!?N>G8&`=t8N<0@K!!$3LJFce6=xqt
ztVqfQ--j)ICB)dvvJ|5@MaI
z=v;?;vY#(++ydgCY(%k9c5O8XYi@|!<=bh5?K{8yvn*2K6s4~uNxFxQuTZ}5WSQi1s
ze9fJG$o%$dU(4Nn`j~1LDIX?c#8Mh~i_%vU-W9^-Lls
z;7HGPQXGUL6T7AWoz916O#LdxUprV(+sK5qkpR(PG}Zc#A9v~U$%XEHv@hQ)`>rb(
z^ZXO3&ukqE`-afa#v*@rUb~+ZXOw3($#lxiP+Cssr?2EOm~LsYh?QA!kPwir&S}2B
z3-9bDrFh0P8hUfzy3y|OU4bySr;+a+K2{u5!a@1g|7sbs?rh)4m-1bK7H@%_4_d)4
zzoj1|8qpjgRyX8^keg?}At$KJm7wK1$Uj?&F}z?Zj4k*VOA-5TMgl8a_fi!7(arG+
zpYJB2R{_nDL3Imcr>WfnT~oIJ{pffb#z++H{X+6)j$~oh;g@QEeupmmixd7tI-&zc
zuU++E|NcxaoC)@PN@(5Qq+Cz!{)ZPI7E48>{m1Z#DK%tp|4xC<9tK=JRJeMhi!!A<
zhY{8JF-$o)q{$*jgJ5f{<8GwlzgCx|Qs(V{t1zF8D{c9F?ELOw?#)Aqb-F#s63T;s
zT_~U|5ZUP0z7;IQJ}*&k^V6+f`_9rVD?|y=w(XLo__?k1M4h)gM1wO@;-vTDMx4;C{8vA(!SJs^f
z@CIbT?uL--79e)>h5&w};y3BuCEZR>k+@e~4`ar1Y5SW%fmgkPENl2pBd7kPMyUEL
zZSFj02NsP!t`L8OvuYF8^4W9bx>>#!NM
zmGT$X8MQ3a9HY#&Zqlgv{kgD>Rs4yx*wrT
zAx~zda>ztx?bo_KRyh3`!|RA%+kEd+Kd!s;>3ME}LjA+AY8)IgRqHWqvtYKXx;?He
z9M*e58fs=lw*b^HNthBVycFt=r@7PaTl#t0RoLKD{SI%yRH;XWhhby13&uT7-)qr%
z8RcZKTxit@;c=gzFM144n2zP#m0>K%#}kaxp-;rlOl~n$D=y=adlTp+!`M*#o&;Lq
z__hw`E8+e*nt1D6T?+`2f!>?7x+FoCr
z2hLLxGqqoS`w+s@-%ur{r3q_!CU)PCdiJn70~|Y*YrVPrF_7dL)3YqnU!|FU=*v0}
zSX?kOu3L}l&*s$=ShsS=1Di~WGkcngVB}+(45llJxgRA`sbv@Wfm9jt26ST4vJ?p+
zJVUgQENK=bUO2p+WU_CWVfudiHRJ%Qe|0*9|8>U8
z&{KVZul&KzyxgfT)Xm_*3~#YppdwO+vHtH&)&Hw4v)q63t%m=@&HqoaC^d}fZh>w?
z%=#b!3CX-$euIyGiu!b6#5?1LpQc?uaiqMcZ4d+aI}`O}4rP>~n2mV}A{+qZx{
z4D~3p4~C7_n(Y9g$%B*w7hXQI@q}|m7c^bT%IBjqKR@ua_#*IqMIfF(ATyH3NNH1W
zluhDWfBND^wUiQPafNYj=|@ewqDg;NY#9b|b6pcdtx#%RdGObXge|&?(&sWd>LA1H
zz9;q5yG}$T;MB3%;EK|hT^ceB)cAN$z_z_Wkj~6|Jh0ZtOH+T*y5HD%jjp@M7`wEZ
zltSTZ6A}Jlz-|8R)}qh!tTlbXgjgkH(#k{tIVJ6u_Ks+>u5&R*J&;7m%+UBa&P8!^df!d0JVE?kzw
zfcd`1TJ5PePl@41TVbnSj}6Zf>`>Js-hf=ti9Zu*CbRLECXF#TN}a`TgwDW
z?XP|ghstlPk`Y4-ikgO9^j3N3?)XF8&)Q%0>P_08r*j|j@;Iz2l@~^Bnnx!JR7rm%
zgVASn@^`L&TB)yJ3Ah0p_>IEIC7~vWn?{>kfO5Dao9`%V>P1$VnW+;?Y9;57@pN?(
zHAtZlpyd~R3*2YYzv;Pq3*;eYf~|H|PVP;29flP*6fscnAz)(rNcLIpn9bsTaFFz~qUNctAq;u${JJrXLHm76_wEnQGz
zei)8!Ev3u;LbdL$rGBNu@|lqcz$}oQNYm}X&Z=9$Us_}*^#Lkm{Vnpi=h~8(uVv4g9TLv2S5XZ-F#LwkQ~KMBp0pFVQk
zZmxTOJw!iqWUT^gW~-F4+g6)T>F%ILxm`&>8M>tL$5tnW>}lY~y?2?wuj&mH>>X*M
z&V*uwnIlR-YsOmYc(99++*{yzM)oZL!`Ktlq1Dd(NbYrRDXgEf2=?t6Y%{+Tebsvl
zsM=*=VxF7l;*HlIX>I|fwJajXuujTyX*%d#T~sLC{?6WVuiT_%drLBWZ;6cES|7Kq
zN8Tw0OHA?(w6fb*d*Fr#^<`b+7GOr58Z}J|N9*lYxZS-f_%Y1pCiwv*LkUn~P&+K+
zQe%YfN{lh01Y*t*i}P#VvoS+_%4|Yos4Ecn`fPMI{)Gu}3lw}g4En>d=K3cfi{$E=
zggX6h-S%#PK|?%>5S%w@F+}^oU)=Y8%`@Q{Yt@OS>xTxWE$QS=al?QIJsT0WA#Wxx
zuy2qY{o#pNMZ&9;4*<)Izc_=KV8l!U`
z-a^d%vl^QcE4x6ynGKj#%h^5Yz*jC`TcWC9dc&!AW=sT?QZ9?{9h~q7qg-U06L92G
z59_?K?C>p(oHTW9+%J@K?nQaMO$E4eBK}bVFBc9qXpsvM>yip<3$b55`uKudiYne`
zx4<|K&{5@6M+&G@d3ty(CDyhm@(E|e
zK!@zGTWWcLCbR;kUeB7rh5fZ1$FjzeHezXtl}$LfD3@qe9Z&A839rh{3Rm^LEqjHc
z@W@{6>b+E8%k6@Nzd}NHK-Ep}uxo?DAf%R8sUL9BtKNuJ-l~sRuDYlQ)%oOXmpYxd
zr;rag8L{zEW|)d;y-u=t%6d6_poXTPxrm(Y5Wo4BidPB;mmYc>jpt{o%<>WcBz_bx
zM%!n;xYr*=Oz>D6ieEL$aG?U>Gn7HzsTMB}$#?vp
z_GJvjBS)!@^*0MB&Tj#7qU0lt!NVHY8gB~bIeZ0;1^>fM8Qg!dY}Wr~_{Kn+vuK)3
z_+e#uhZt04bta|!&(K;ly-K_CgvcM0mKFU-FB=h3)t>0Mc4-Y3@BC6kueEbE3OUm)128wZ>l
z?`EGBjQR`i$}l;6amEv?NO{q=K|I~7XN&_lT-)U!&UfSGfH6?sjt6d6zgvrfgl}nY
zUFJMRcNO||4NA4Js-v^n#tc@yIItzA0moI;e7>gV{;prw?`Id-@#WQM=wpk-NBDmA
zvk_fzgfdARqvx!UNz7UkLci}qA;Cg!EDG2p_9gU|j>
z2B7{-BJ`VSX+{G*ALc36`dOl}>r|z~)K?x+WLi*nT<4gd%kTJeiz5sdR9EIA*I==d
zxK|P=I~7!%x06V@;&@NV=5#o2q@Zopn+zSKL&=t=
z#>Q;gn-x*>y3?rvoxLBzF~k}v;Gl$zuPs8&+FIu)W9K{q-Jhd4-1P8bCZ6>8B~i!b
zNRWwWC!^Rdf>G@lV5eK=>=yV{v#{2_)EJUIUa#vW@$2UMcgbq=u@OB2D=|7+1v`&l
zC0*tpDP`GLYtZtLd2g_HT;kHao}A%A>xta@DWkOE!8K+`dp_;f6)j6oy5c=Nlg>s!
zLhgR67?1LRx8M0b&SN$o#OTaTO!G3LXZWqm5R;t7j2}CSwD;!m1e%}>S~9|9rPoYm
z(_)p@;%Tt3WWcN8tnpGy`#oJ%;lU9WyJ^!p!Enc0Z@Uxy+8Vd}s+_|lT@0rx6sf>4r$mBi&yF?
zT%I(%wHY=3cb
zJXy3ONBw@@kZ#fZWJ`<>uCxBQ=Ke39!C!|PMzRW${;TGgXqc$n$D-H=Jm$v2(id4e
zTzJ0?Eb+}8(#uB2W3MB@J7e)gq5eza9U9IWPhUlgssWdW`J4>K%c|^0vsNx485XY!
zY$Qq96LYD+3rjW)Wtm!K?`-v)wj(x<9fTHsl$L^-
zPu}s8L$aIQ)pfOxNv;-eppv{4_nz17&8R1`K?^cFj%$3GI?HLR=h`e8?mefpZXR&1
zOSN0nTB<0y1w4kCLMkb^-r2>^G8Wj4waMj`BGx#;gMbzLU4
zw|7UY)Y(q5`aG0ZiXA5O_;90hKZwyJup7>gDl#bok2nn37mvpbteqUNBZZf;aovB9
zdl6JFo5Tta?WLH6Z()XHk1S`Hq=a3?4-1~U6tbh_WowS;T)!xhpJAwPPdVh}@mC|Z
zj_VoYTU%#@AB{vSys{mZfV{C+E(2>uD@qizPo8*F3EP}z*nOQU*oc~GD0HTKMeNcN
zg)$p{mK|G3Dj))H8J)9&*BRr$-mBe#Ufu!*hT=UuUSLD5qnGbvCVYDN9Y`qI;?>?;
zHcMQbnhO80Rfqemw*xQ*#oY%4Y#+X3!YOC`^Ah@hLQ0IRu0TGzji}kH`%uzBr`}EF
zc}jQDxGzC*QpF+@{A>kVVNIY=R9j@#_5K
zUo1v;#tpDbt{Y$*@hH2SACA3_*Q#~OmzEu3*Cjp*@OH-wL4;ZaS}-dz-FX|%*~^d)
zQAKhbBtQ4Ag&z{I`SosUCN(PGQK6`xc+q_>sA|@Yc^t)Hf!$=aL9a^_!vIbJG
zo{&_NI;<10IvSKrRu?Lb@)=;4p28ZNjrW^jp~^vVTnV8yQJ)>H8Zy-;wp69PO}i&f
z>~!8Wux1l=cE&?Klf7}7Z|6Id=EfwO{(`iFL@|rAFftQOtp*naH*pDjZ$dNB@4NtOh@uaSX2_
zU3v>!YCo$c%{C}?)73__>9_D$|HE&m8Bwn&|FH2-X?R
z;8sh%Ib1NPxOSa7bw>Ldxb8n1Pl8y9QVlzL4M|%#r0!M}%B?~IZkW;r)zKP93(65toohE1{$RPCM7}n;hVjVNeWs^6OO>)0x2JyS>O=;u28Pu
z*V?>@cTCbX&e7-CaG%JQ4@xMcY))TlX>9d#80bi|!r?9h%8P^-7}#+W3TaE|ee*Q2
zzWNC}8~9+H|R-A9Wsa<@thRW?j9nUM5Z^%eh?qlCe-Pb0u+1^G}*ziM{ltm>?Yi%uT)?9hgFw)!c{v4TP#Faki#Fks&9(C
zF3(W#q;TYbRoIHZ5A}Z1PY>%GGV!gHmM&<0LKnivQ?|FZX(P0L5?`x8ZIZlts!SO3
zP;y*T(@;3F#f!z+CX=ZSyzw@%qMUv9aUF|+27F2Fiuubg|
zeJciNM=O365b{t6y556J#Fi&bPYFC>J!74i{p|Au_4RiwQ_{vCEmrf4q}}Ro@dNC#
zpL$uxu#0k=I`DM6AW%2b)P$$IY_N
z#-g_2Zksb)gHF>_H|Nxe7spWbPIU-bNem9@N%!qJHRLgIOB~-nrZ{${Rm=C
ze^0xLcnh3z8k!)mb~E-^-t>gyB;MzzT0GnNQ$NYQdEQ{FwFOn%BgOajY>g2rt$!RI
zy2%j|#s55JuaMc?uyhxD+!t@ReQgKNE8F1dx&=B)1t7Gx^ilroQO@4l?rZ`Brd4%S
z(;QGuRXO+8R!Ovoc0f0L-?aGoGbliWBjkVC2#h-H{|
z#UyQ9QfC(L5z$4u7Z3YKaR<98CLqJeqEms8^yG<64atv-{;`2B{!CvmdmCK@tb0Es{0
ziImadVa2>C`@7jGWAeHk&OkW}Ch$h(yjm|aYs#xAsOj^BihPGbf~I%MdHl4JV0*J2
z%2^{2N%h>0M!Fn{dqQG^_TGr3AIBz&Fll$vWh2s-e`z7-VN>fVg;<%CmVMsW@wG``
zyl_XyVx<=IFpz|zbl2wMHZ9JP7@II&&D?XBiRS(1LVMruc_`KU-M|EMqBganthi1Z
z5^9%>3%?bypQ=Y)l-X;td`<1NlHMiU`cmB6>=HBmrT7wqyyGyV`l*XCpyJA%dLBKi
z<_Tf;>AD5oH%TfsQwprIa|G(-Z7#g>&U06d|GK!?ov_^CuOWGjftz{i45nx^6Zk0U
zvW<0uvIbFU&92gYouEi}jX|x-nP~d$e#pFdgOEMs=K0-B)R+H?$X{AxXO)do-vZwl
zZ-H64!t26*<1;*rbwgNUa+H=us1SR%GkD{rTb{--9n?{G0V0b5%*BE3zrS{IVSoEi
zi2HxU;iG2JDr=*JI>fL0rCDnx?O&FXHBa$Q(Eh0Iso2I$O<>RZ&Y_<%##8o`^qPe3
zcV`muRQglb7}+)^cM)X@FesY1oShV6@41X=?;f`Iw=cCA&cBN9=LSXS%n7u_eR{@7
zrr?FfydbayEgQ5BI;>tNILk4wM||(ie!g9C<$8@+FW~eH9djQ6KqK=e%r;aH3qO$I
z;uY(tZGP{LmDSkO_CC6UEyKhT5|Ds1tF)QG43v@Lzc3PJb*~s0RTJd;RDsq*Yb>Fz<)pZR4{rSd%TWFJm%2QX=
zVrju*Ys5fa0{3Ggn^E4otwUzZq!kO_m3XO>n<+{Cj?qhP7C3{xk3bvUC65+_MQt88
zj~N#!x5KuXJlm5pA@3LSU>=5TfcKY!O>iA|Ac+|_BxqwK^UBNVoTm7@rFQ#Druw>Z
z5t6SJwat0UXsMj>S%V^;%t=~`yn5>8oThx7^p_Y}rqy$giQZHTo8c^_2qijPf$J;d
zJo-{a5}b9-W%AC3KV+~XgsfbX?PIemy;77AR$-0(?}vzjLX_~B)MVpgNbFKE8Oq)F
zwNiOoFCn>$(W^Rb#WduU!p-uMfl}T6Ur#0U<
z;$I()Dg&2;YlV@uLIRK52fZ$1yXVWi8p0{Z$)0C{sQz3df(G}UP4FDL&MT{KuzjA_
zHcwK>H>C>SJUE&|b74@yE?FlNMB)6(bqZYXZnzPyUZXY
z@ljflzJilUk5O=a{ZC{4D{hzWx+M8{4fzWcRmS~QzaX1dELLZ4f
z<#qs^G1IdDJ8?@lDio=*7Td!^;PV=31{Voh^W{IHUJ_=xXN&kHGtuBa!2Tskg^`ih
z`GYmK|G$SS=o^fkPV!Mh1+Ql=koM1yWV=Y0=j^05PY4Y^sWz{TSb6VUrl^7|pcpSm
zCdzNQO7)h-<7P#?Ro`#qQocR+XD#gw4_dsbKAw!7G?s3sEZ7auMQrhakP&|Va*=%L!@+eiBjFs+bg-g_*H&v
zkCpv^voaWQH=HHVNZgnXN)I>JS9(#-Xtnh#A@g^Y0I9RoAVk*~x-EnHgQyoqk+U4K
ze-!+PO`3rrEj;zHFyRcT|Mh;8wwJy?=J-$)%{W`&H2d|{|zoB_P
zI2`@nh6n>*oq_Kj3d7skdRx@e{k4lKNV`7ay`Vj-G)BmOWw-d2MchdOeTV3go}Sqi
zXUN6Girsr9uhFm1})V?
zEEn>GN?Y_7qzJ_+1mNl9{)n>uAu+xo!qgIt@g@Q
z*g-eKqq~#b0+pV%^ZTA{N}L?yiPV0TZ>)1)Ek%dwighoz_94$9BKJF9GbV}e!y760
zaQ}I21divtHkp5z?p$lSzZ=G#<{#qxI?IrQwnSkVS$qqeuMk?bSqqsUB@?d#Ylkh9
zSb=Wpcjb-*rqMhNG8B(t?=ye*n>m6z`LZMW-}K3Xq!mww>Nc&o%00bYr0NvXznDJx
zEUsg-o;@lJ&70EKNSjQn7?qT6dj0F?pEczlb%igg$ybO}m&EI6Q?#EG5yN8%#py26k0=EwX@@S0;7
zO~Q4do)zAh8pCHZolR-$Pl>oh;f(LTu>n7&P4CV58Y33EV3ea>nWRv=LA^7_GQC|5
zIk%P(ov*7VTE-$LNOZqy$&po>cj*(h4;rhGI?@9{xMNs{@Pzb(y;MCl&$Zp34HVCW
zjyEmuhV?$2jq2;J!09meHvZY*AOFG@?=#nCq6>)8Vq3|D&qaPI6RiD9)Y2+8+1{8p
zs!AkS`}_5^rfP-xVXN}~RIytT)M~(wG^lT$H`~$4-i>@1Q;RDxR*Q!yXlcGp4Epqp
zHK@BXqeHZtDbHR~;fQ6TedM%9Z!|>6vUZx!qsr2TW$49XUwq$zM!XVxrq`bz7yd||
zwkN}O3_(*O#Gdi>OAS&wr(C5+>L`hIPu8jUxu1Tzgy)rc<$h08RvodIp~XB76{#aD
zK3X%$DHuBGhoV-VoMglNu*Dw?hX&QOuZ^kE_d8PU9Y2`;%$l8E2E|Amvi~ybNsxUk
z#}VJX);{W`f(Z;mo
zO1FIT#}8Q2%9iIX5PTj~32kcaSbeyj(bJKGk}@%4H&t3BF4DPqi}dK_@%aVK|5%Rp
zy{SJR>2+{SC^^uXOtr%sJBC8ihagy=8IWaf+Jazw#&EqpZx$RP)4R{
zDbN_Jbo-j^LJ-N>Pa4Kdk1Qy~%|GxX?-14FCKk%_uUR}M`hJBaVDLqy%+F4V2={B5
zV(z|UupbUmEqF|+T-70~lHhJFbNUG$glN{CXY(kUrL_2w^VM%JF+;SpR`vGk`WNo=
zn;Q7q@Kx)>)aaD{ZSPe2&Tf{E8TXMDX-JAbW74`|72R<&xp6*Wu#?mE=eJ)zCKo@{
zn%C6dN@lHCVCetp<_3mxRvpr&;q;*Uh7FS@r(_ZPlA0sqV!7)@XkA{Zm_cB5J
z(aeKr3qqgr;!@C?)~NJGYCHa#jwE}X%HxhNNYNPAbaJu#k?Qq!!3Lk_kA&Iw?qch0
z(dw=hk2}=aK9b*kxWaufsXX#~oX(=D1zJ)+kzfzK8+m0niKb-Vq(Nm)7
zWwP8>2*(NGk^DBPe@Ew2NtseO-Un&{Dj9%}3KNTVD|86?m>^aH>q=pP^RC)0M}_cm
zVachsKJ`An@+r19`#J)v_~oTsOWgHTO)UIP8x-Uj5*Bg8xJx4~_=)M29ge6zM_gm(
zn!A9$zQ~1vAYTIW42OcutE3NebLMsX%7sVyVjK*6smdptyS|m1TUH8G{u$m{A8k7A
zXyuwub|xLhxAyH1w>NzL*k9?`IQb~SK8jytTU|HRvV%mS;dw46Iki~L;oNtw*PEPX
znTreVhOdL&DDIDlJ%++
z_-yQ=f?`bC6KNINhZQqA(Kgxd?tL#r9NXv`iLIbGjYxubJgr;ki~x|aWYvxBJjbsh
z&?Ci!jXeFLgLgNT2dUK7+U((^l=Hj$@z@wz^UE<%iw_4%*Sp*%F3;WZev1LuvxL!?
zgqM{UCP;-tIRy5F-n29>%5Ql^F+z>Z$XEd$;FK2W{pf}HAbk^o!$Pv!a{M5PY`F`p{uVf7sX%RQp!rZfI3lam(A@X9GSC0SGov#=
z72@u|pY?UTmc~xGk
zmpUqS?;7&v=ln6s+vUpqWe@i30(QW1UAm^a8jK6g7-$hF*@vj?PNh9fp5MOTrP{*A`RH~Kg&$D+}*-eYT1G|hmOwFK|eF=`TXDeU|rooQLK4`IP!-p363?f%s)%B&vnnKU8EEJn+>k3BRXp7>)mNd!Taz(RTJ
zjRTfNZu*)M=wB86d>?Lh)i|IBDb$pz-Ti4yIvg4%&8x=qHG4_-C+Y^&gS-WN4k6KA
zkU^G^Ohh7-8b0vWJc&}p&N+-^o%z1xUS0rqyAeR#
z<^Jfv)V-sa&rdV`c~mQkJ#F7ar+(~yb|5)0xN8*c<3|6>?Xi&cfIv`!v;Oysm5F&~
zOBO7>7%P1$?ukUpoJ6K_X8pr`Uzp$m8kbq)=~<->f=F3}96aEICqppo%@SCMA3p3k
zSl~?)!kZhyvGD=yR&P)-4N3aYB9ixAH)9d@A?&^f}BqgsLT
z8WSvx#M|B@&pN@n1@_fJrO;QSYsY%D?Le9c=Jluiy(E}j?0ai=NJ3mX~
z1-i^9l^RV%awH5K$^LuJ|u
zOKE*FvC0QCb%{-_HdLOAuyhBM^8A}ejrS7+@%Iflv;2zuMlz{{?2TVUzPx(A86rzD
zdp2~ze7-;ZryW59&!}D-%4uk7{shRA*c}{y%w(`XZ+%*JE|wUb1zNp#<7N3OZtm19)?(0umuv!dcg8N@-G|6HMVpLVPUo-kSp{;3wZKu
z$R7K@`|M8$!!lBX>oXFqfI6Olu@cSWm2w5&V)iO3
zp84DVrf=xeGZpBz5mi2Fdz&q_)Xv^_%c#XGqEEE~QC&NsEB$Ub@
zovDUd4V%5KMa8|ppl5F^Ikk^_{e$+7;w7DVw6jZI^w2&wfkZ#>bJ%;qD@r_wf4@HrQdenfXifb?j@X
zt60LLi*U)!QA9W~{2Y*6v@N=^YWWB(a&B|Q(
zH)&0O(V#$|{1(FE(GL(C&a4)W(JoXik5C{Jh_4X>NdGPyy}drET>rYO^K9dF)-$s7<78?fiytCr!FQIE&O4A&L4GWYo9@
zZhNqLQxDI;Z)M?>PTH5g*UZi*gtbRcHS|ubqF2t!0B
zKo0W7D%#(r^T$zjOC-ZN4JJ(_S+hJvsCa8r{ytR2Yu(P4c2nJ<(RM%!xe~)C{Ln2%
zHde;&8`{`TYU_`s*yU`l(cBSERfSr=mTq`pr7eKyq|*s@SFi7}-KB~b6cIE^UypR;
zRj_0N5BRa}7u$<{lolHhlwkt-ANdTw5+K#Z^<_ZpZC~FLt4x)qEKBjw_z~zmJ0Xpw
zpu$djD8r;x>MZ?p@uHF%)$a7!d^`KtsI&N3WczylgfvnlUWsVVC=0V!SJxreUM|~Z
zI@-;Mq5f^UatyI&MPmt*sL}jkR3p`H#+`IGd^0yOc0%A>4bLX>0b9{_jGWg>fZLM7
z3)hAFT>~U`qmtOx{S@F`qm;bewYXQyQ&>kV#5Yfp!g(AEa6f>A=WRtVjau!tx<%Q&
zW=H8w)vUX7O~I98l4{=Xspu`)_GK6{xF!n%7R;OsyPM|4(u*Ey-KogcofuwFvIpeV(qnZjG785EI|d6W}#Vd4Av6YBjW+!*u|M
zBk9S?_hlFr!YexDab^>ta6d-ueWN6Jv2w^zB`0!tMD$dKSp`Yl9r4PWK6CBxrjaj5
zs1h6HTGctd#TCu6{DM6>A@iu1@v>&ds_$;)qROb5(dZSH4~w+$v~jqHMJxh6*x_0xX9
z!}agbx``Su$d=^_RlNxfUd4>bOaLd`>rQX?WEPv*3fA^tYe)Od8P~>!b=s)1$RY|t
z^HC)1buFnjXeD?%p7*t^Jcs(@mUki6^b8>k0cj(KpN*4cl>JF9DnRR@hgi92@)X$#
znl2+Yq){_mr8LYH!^72FURG%h4#dmwba9d7=a!EgvcY=16G4~$X2WlI1-Rk#0Z!3;
zl{XU^+^C?nm4i}q3)jmq2t@l)31hul#Y*iLmsm)o0Z;|wj|-69jpvweu|2Q
z!wAqyC=Dc^8lp2ol8xu&m*KuNqp#M8x7`mIw{>2lN~zT%-TgQNP(L856AXW;xUulcV3D^h<0+dFW(0>TU$a@}nafxs|KFXFOXy0S92v`4*_r
zu?kW+B@!-sVQALtX!9WWsX)(hbNKm!kn9ewE2K`Lixk^O{5nLM<>seXd7?Bs;wWkT
zIE0z0Bgn8e26}Gy7U>@9$kh}c5IysDsU4q7HZID^PytOTc;SxnTVrJ0y_7?as&i)~%%vRr|3%DaF!>okKrZ0}YcRRc@vb6DrhClS;@i(!`
zhBk>+w{ancA4=?t?DAO8z76W3ByI>6;D!*DaUQnGBb`BqY&HR3WFyhx=bQvKfT|pIhL{N9KkG#j$>OU;l$)8T}l&^iKK=c`sAfr??}Dv&x|r>R!h}
zABE5Ji)^_AMg0t{;^bvd*8`tmw&e`_W%#XRuyr6;4wm5M)ZpChMUHAM2|xQr^=9LA
zop-_Af7C$ve%jE4p3Bi7v?{q>ioMX}4?)k0)f8q+S*PpO?#pv$d>qD0p(?2EW)eSn
zS(0K?K1q$5$H`3#v&DM{-V8exVtSG{n{;AtcBvcGhA~_-H8q6Ph2fh_&+U}bQh5U*2W=^YF`5)*z~
z_9b?yJj``F5z%fZ|D$J8ExI}Z!$M!@JsY%uaJU$;kJDwF)z*9art}OesH+ay&Ydq9
z9QVbBdg$TB&nD=9$|76g0esw$89J_t>^8KIy7!GAK|A}@Dp2+B?TtT>j)12j_M?#@
zD+3swLeS1jBj@H%*uQ--3dQzh;usq3V{3G1{?ws}lVM&!nDtg(K!*&h04L)YD34z8
zyj03+>)9vW(3vtG&Xz`-oEXhQJ4xFe!)M*xOiGLnM!5kf;WgT11`F$!)w9a-8wwu=
z`jL#3I5RByRRv|6x}%4QNnenB2b&1UMLwdj?@+(rn7Y1*B(_wEqfaYCMe_3%Pu-)f
zd(dTr*87cWnTHD3%8z!o}
zI;WsB_UTu8?4h>S6*J>6
ziAp4Ry=K39S?zT8wv!FpGgenT1Gd^3R42ZW5vP|%Tqm5XK*DZFCf$f1|LL>|AW@L~
zL~waxw0o-w>AY4Ga?GX0#oYh8oY_#=}NTg(LC!0GN{
z0+Wdbe6ax>Ip_)ZM3-jU4&E>H
zTO1#MU1T%VVrNSg&B-&)#y;n%7{m?Vks?IUpI5FS$kf*~0_E7zzRRCGT)x;!RIDhK
zv)%~rOY@{+N?lTAqg6!=L+5^WLeRh`eA7%xtMbDBQCU<}uvZuV;$q)sQ{CHpbCv*l
zOR$2}#3^Lk82Wv3d?RM0!c7HAWVO`oo4WS@+r&@n;s!~u89-S=(0EB0@f}d*e_raK
zdr`1valfuBPV+*gPx?v=@7ersP@)H0in{j?HvXx^6N`#wjgI0TTyRx
zf|M=+AtuK1)96UBBjQk8E8
zOqjW3V8|_C7MQ@ONy+le_d4%Zqaj#x{uUde(zm^J1Oy4De#RbncvA}U>L@qM>kIKF
zk&GNnWBBP;J}LYTg7FdwBfLy-F<)1?c`d?&_T`um${%v0#*dERyBuxH{m~mYc1(BB
zXNNGCPiOSUt6{u%&Ewx)J39>3>sXJzF-0*((u`HwvQbDoaiUrYs!u!0y0-lK`erLh
z*X#%WAbF1D&n9l0O=WjC0*0L*P;T)b>%Go1-eMagu`E#kq>KMZk|y8tHtpH3KJj_%
z>n9W0KeK_vPL3(@Tu1TQx7p7&ZB!K%5r#GaZ{FV5!I9%_h!s>Amt9
zAQ2OJOYW-|$8dG-yL^j@4!(EV^KRK2vhSVOUxbr#4-wIUN}XQ=;obl=O*vkiGsZL8
zop6(Se>Y0a?=6EATQ>jz=mJ>XY6$EmaSY4X1nShJ0AuQonYyuBIE}3*&6}nw%#`rDF2%P0qcz&=0%7C;Pjj=~hcFyd4vDI3rX^KTShbo1|)4bqR+FzCANoA!r
z1f8sgWb#&3rICILsPOkjApCCNY|*JfIDXG!Y?4-8Wo2cxPgL{nU~(kWO~s`nnaXRC
z#bg31peyRIFBgyf`b{5PW^uulFXNK7MjcI^@{<8;d{G)S1udzPm
zXxZagc=@aF2$dFxHe2C0R?(zvsh}J`#UpX?0ax5S>$rmc4^26
z+zt9A$#>uT7Q{(Xeyt9}Z>`)i&a~q0*gSmS{3~gsBP^}6qF}bg9&_AR=|ztEMkd&<
z#q)jWXg_r1mdmC}J1vPZh+Kk-paY>GnqnaE^gJ*zB(;0ebGPd0GGoq`rPi={2z-Gy
zs>l<4JGsem5vjLZbsy&-E63U79`oqxbr(}D3^gjh?0fLuE0VWt(Rx$x8t|Sd#(Zt7
z{g<2o_C}wxSK9f)+^}zchQMMj$j>sSJJvONgKLuuEc8~+WxPetx7%vDR$_nY<#*^S?P+T*
zTAuz(vl{FCtF1x69>v|V#F_?LlXY>8-x5bbZyZ+MWInK;Z*hIgAbHM$hJ??Cs?}+}
zyCKivig-R+vQSLZu%blAz{TA_m;g2N8#K&c4ZykE7D1O}bqxzX%;dOsJuNNI+ZtDh
zKChrZf(N_lVkEowS)V9ci9)Hu3dW3h7XzSPehEf3F;WGvBL&L^gG*uhr)JNWZft(5lRW4cfbNuWkq!n&}Xwi`dAC@j&VFZ6F~F!tVXO5
zPn`%pg@R#1GqMV(l818Z_+yPv*y_h=K2HKyB-7UQ7hz^n<9QyM#rfg%r;uPjUaV8^
z3QIM{G^PL>%4)Rzq(ZR-tE@G7pyL{?>g4XkHdYUIA2(X?mjkHnft6T}*>)tW8+Bw|
zVF@_0Cbh0r)7y6cTFlliT_pl{rA=vKcrynv>R`_mZuKHhxRDJXc8r*WVEI-%7B%8l
zt9v%Q;LoP=FeG96KUk#HZ*PdKndz(E@n`mXbKcup4NY4mF6V4(FtGZbT-T=Y6m+H$
zfG4d%+oY_IfHGYjWxV>!h0hMr&*bi4UlyAzc6@Z$ANo-!J!BzusoSdDv>I^&@v{XS8wWrFjBV
z$(^59X|Q?)UROLKEt!AVS(7|>6n4+v8P*O=1EdnC2D!(y%znT=IE399
zwL5e(N(61@Rgbqo-l@J!+jlc6Ej~7NKwXR|i!W~L8C-LfXFrIMQ`u}DC4P2wTlLV?
z;j>0!%d97g|I@P|&s}-&BQNC)K~ns7nPDfIe#+Hmpt;TI>0*j@s3=z^s6U&87Su0A
zScDM4POi7IYEFC~=T6WsSD=%YoowTSX){FJ{#Y;^u>5{4!Sp`DD{=iuH&IoM_FWRt
z=DT;9gR}-305A#cxHm?v-Gkq=z&`1txD3-IMb&T6sN(30F2qB5L>^=f;I}a2S-o7`
zl_pb`-LEsSE8XCjNBOz5fImLsTsz@PNEo*93SF1k9`cmf;oD<=rx${yK7*pOI-MfV
z7st*1Yp
zpBJ3lPN8~q`X;-zwC@x>svlXbj;xCjYC4E3XuFGhG7f{5F6~&q3=pa%<<49g-XiBt
z=p8SOEq?yAM2(4?g76mMAO+qJn8CBh2(R(R>Tlm)Hnw???v3UY_zkl9SY`3-6N>DY
zKb|e2eSxIP%jpb?MXVn#03>g0Ss`}dV5_UHU-oEWXa;4fITI?C!4)a;R-0ac$K^7e
z%=VGR{3!xhjR9(TuA1kxU)N}IVe9h=`>gARu2jT2-vgH~x06rbMyeijH}BdTsVYn4@N(`4AdQfXtoj+-VvcSa?eHU<5w1z!mQ^k=zAPBn7<_%zQ?>0`
zie@j*ZD-NMF`?BDkrM_Aoz^t%8wEud{ZCbk_`b|OUk!NgnjGEF^WoK