diff --git a/.ci_local_test/README.md b/.ci_local_test/README.md
index 7830c823..51347e38 100644
--- a/.ci_local_test/README.md
+++ b/.ci_local_test/README.md
@@ -1,8 +1,8 @@
-The Jenkinsfile Introduce:
+Jenkins file Introduction:
-1. The jenkins matchine would scan the ROS2_Openvion project regularly.
+1. The Jenkins machine would scan the ROS2_OpenVINO project regularly.
it would trigger test when scan the PR or other change.
diff --git a/.ci_local_test/ros2_openvino_toolkit_test/docker_run.sh b/.ci_local_test/ros2_openvino_toolkit_test/docker_run.sh
index 91a19139..b1ba19a8 100755
--- a/.ci_local_test/ros2_openvino_toolkit_test/docker_run.sh
+++ b/.ci_local_test/ros2_openvino_toolkit_test/docker_run.sh
@@ -1,43 +1,33 @@
#!/bin/bash
export DISPLAY=:0
-
export work_dir=$PWD
-
-function run_container() {
-
- docker images | grep ros2_openvino_docker
-
- if [ $? -eq 0 ]
- then
- echo "the image of ros2_openvino_docker:01 existence"
+function run_container()
+{
+ if docker images -q ros2_openvino_docker:01 &>/dev/null; then
+ echo "The container ros2_openvino_docker:01 image exists"
docker rmi -f ros2_openvino_docker:01
fi
docker ps -a | grep ros2_openvino_container
- if [ $? -eq 0 ]
- then
+ if docker ps -aq -f name=ros2_openvino_container; then
+ echo "The container ros2_openvino_container exists. Removing the container..."
docker rm -f ros2_openvino_container
fi
# Removing some docker image ..
# Using jenkins server ros2_openvino_toolkit code instead of git clone code.
- cd $work_dir && sed -i '/RUN git clone -b ros2/d' Dockerfile
+ cd "$work_dir" && sed -i '/RUN git clone -b ros2/d' Dockerfile
# add the jpg for test.
- cd $work_dir && sed -i '$i COPY jpg /root/jpg' Dockerfile
-
- cd $work_dir && docker build --build-arg ROS_PRE_INSTALLED_PKG=galactic-desktop --build-arg VERSION=galactic -t ros2_openvino_docker:01 .
- cd $work_dir && docker images
- docker run -i --privileged=true --device=/dev/dri -v $work_dir/ros2_openvino_toolkit:/root/catkin_ws/src/ros2_openvino_toolkit -v $HOME/.Xauthority:/root/.Xauthority -e GDK_SCALE -v $work_dir/test_cases:/root/test_cases --name ros2_openvino_container ros2_openvino_docker:01 bash -c "cd /root/test_cases && ./run.sh galactic"
+ cd "$work_dir" && sed -i '$i COPY jpg /root/jpg' Dockerfile
+ cd "$work_dir" && docker build --build-arg ROS_PRE_INSTALLED_PKG=galactic-desktop --build-arg VERSION=galactic -t ros2_openvino_docker:01 .
+ cd "$work_dir" && docker images
+ docker run -i --privileged=true --device=/dev/dri -v "$work_dir"/ros2_openvino_toolkit:/root/catkin_ws/src/ros2_openvino_toolkit -v "$HOME"/.Xauthority:/root/.Xauthority -e GDK_SCALE -v "$work_dir"/test_cases:/root/test_cases --name ros2_openvino_container ros2_openvino_docker:01 bash -c "cd /root/test_cases && ./run.sh galactic"
}
-run_container
-if [ $? -ne 0 ]
-then
- echo "Test fail"
- exit -1
+if ! run_container; then
+ echo "Test failed"
+ exit 1
fi
-
-
diff --git a/.ci_local_test/ros2_openvino_toolkit_test/test_cases/ros2_openvino_tool_model_download.sh b/.ci_local_test/ros2_openvino_toolkit_test/test_cases/ros2_openvino_tool_model_download.sh
index e2678f36..dd3d842e 100755
--- a/.ci_local_test/ros2_openvino_toolkit_test/test_cases/ros2_openvino_tool_model_download.sh
+++ b/.ci_local_test/ros2_openvino_toolkit_test/test_cases/ros2_openvino_tool_model_download.sh
@@ -3,17 +3,16 @@
mkdir -p /opt/openvino_toolkit/models
#apt install -y python-pip
apt install -y python3.8-venv
-cd ~ && python3 -m venv openvino_env && source openvino_env/bin/activate
+cd ~ && python3 -m venv openvino_env
+#shellcheck source=/dev/null
+source openvino_env/bin/activate
python -m pip install --upgrade pip
-pip install openvino-dev[tensorflow2,onnx]==2022.3
-
+pip install "openvino-dev[tensorflow2,onnx]==2022.3"
#Download the optimized Intermediate Representation (IR) of model (execute once)
cd ~/catkin_ws/src/ros2_openvino_toolkit/data/model_list && omz_downloader --list download_model.lst -o /opt/openvino_toolkit/models/
-
cd ~/catkin_ws/src/ros2_openvino_toolkit/data/model_list && omz_converter --list convert_model.lst -d /opt/openvino_toolkit/models/ -o /opt/openvino_toolkit/models/convert
-
#Copy label files (execute once)
cp ~/catkin_ws/src/ros2_openvino_toolkit/data/labels/face_detection/face-detection-adas-0001.labels /opt/openvino_toolkit/models/intel/face-detection-adas-0001/FP32/
cp ~/catkin_ws/src/ros2_openvino_toolkit/data/labels/face_detection/face-detection-adas-0001.labels /opt/openvino_toolkit/models/intel/face-detection-adas-0001/FP16/
@@ -27,4 +26,3 @@ cp /opt/openvino_toolkit/models/convert/public/mask_rcnn_inception_resnet_v2_atr
cd /root/test_cases/ && ./yolov5_model_download.sh
cd /root/test_cases/ && ./yolov8_model_download.sh
-
diff --git a/.ci_local_test/ros2_openvino_toolkit_test/test_cases/run.sh b/.ci_local_test/ros2_openvino_toolkit_test/test_cases/run.sh
index d13dd828..8e0af8c8 100755
--- a/.ci_local_test/ros2_openvino_toolkit_test/test_cases/run.sh
+++ b/.ci_local_test/ros2_openvino_toolkit_test/test_cases/run.sh
@@ -7,10 +7,12 @@ then
else
export ros2_branch=$1
fi
-source /root/test_cases/config.sh $ros2_branch
+#shellcheck source=/dev/null
+source /root/test_cases/config.sh "$ros2_branch"
cd /root/catkin_ws && colcon build --symlink-install
-cd /root/catkin_ws && source ./install/local_setup.bash
+# shellcheck source=/dev/null
+source ./install/local_setup.bash
apt-get update
# apt-get install -y ros-$ros2_branch-diagnostic-updater
@@ -31,6 +33,5 @@ result=$?
echo "Test ENV:" && df -h && free -g
if [ $result -ne 0 ]
then
- exit -1
+ exit 1
fi
-
diff --git a/.ci_local_test/ros2_openvino_toolkit_test/test_cases/yolov5_model_download.sh b/.ci_local_test/ros2_openvino_toolkit_test/test_cases/yolov5_model_download.sh
index f3e50d3b..d5c4a7a8 100755
--- a/.ci_local_test/ros2_openvino_toolkit_test/test_cases/yolov5_model_download.sh
+++ b/.ci_local_test/ros2_openvino_toolkit_test/test_cases/yolov5_model_download.sh
@@ -5,34 +5,32 @@ cd /root && git clone https://github.com/ultralytics/yolov5.git
#Set Environment for Installing YOLOv5
-cd yolov5
+cd yolov5 || exit
python3 -m venv yolo_env # Create a virtual python environment
+# shellcheck source=/dev/null
source yolo_env/bin/activate # Activate environment
pip install -r requirements.txt # Install yolov5 prerequisites
pip install wheel
pip install onnx
# Download PyTorch Weights
-mkdir -p /root/yolov5/model_convert && cd /root/yolov5/model_convert
+mkdir -p /root/yolov5/model_convert && cd /root/yolov5/model_convert || exit
wget https://github.com/ultralytics/yolov5/releases/download/v6.2/yolov5n.pt
-cd /root/yolov5
+cd /root/yolov5 || exit
python3 export.py --weights model_convert/yolov5n.pt --include onnx
-
#2. Convert ONNX files to IR files
-cd /root/yolov5/
+cd /root/yolov5/ || exit
python3 -m venv ov_env # Create openVINO virtual environment
+# shellcheck source=/dev/null
source ov_env/bin/activate # Activate environment
python -m pip install --upgrade pip # Upgrade pip
-pip install openvino[onnx]==2022.3.0 # Install OpenVINO for ONNX
-pip install openvino-dev[onnx]==2022.3.0 # Install OpenVINO Dev Tool for ONNX
-
+pip install "openvino[onnx]==2022.3.0" # Install OpenVINO for ONNX
+pip install "openvino-dev[onnx]==2022.3.0" # Install OpenVINO Dev Tool for ONNX
-cd /root/yolov5/model_convert
+cd /root/yolov5/model_convert || exit
mo --input_model yolov5n.onnx
-
mkdir -p /opt/openvino_toolkit/models/convert/public/yolov5n/FP32/
sudo cp yolov5n.bin yolov5n.mapping yolov5n.xml /opt/openvino_toolkit/models/convert/public/yolov5n/FP32/
-
diff --git a/.ci_local_test/ros2_openvino_toolkit_test/test_cases/yolov8_model_download.sh b/.ci_local_test/ros2_openvino_toolkit_test/test_cases/yolov8_model_download.sh
index a3879291..bca0df7a 100755
--- a/.ci_local_test/ros2_openvino_toolkit_test/test_cases/yolov8_model_download.sh
+++ b/.ci_local_test/ros2_openvino_toolkit_test/test_cases/yolov8_model_download.sh
@@ -2,23 +2,21 @@
#Pip install the ultralytics package including all requirements in a Python>=3.7 environment with PyTorch>=1.7.
-mkdir -p yolov8 && cd yolov8
+mkdir -p yolov8 && cd yolov8 || exit
pip install ultralytics
apt install python3.8-venv
python3 -m venv openvino_env
+# shellcheck source=/dev/null
source openvino_env/bin/activate
-
#Export a YOLOv8n model to a different format like ONNX, CoreML, etc.
# export official model
yolo export model=yolov8n.pt format=openvino
yolo export model=yolov8n-seg.pt format=openvino
-
# Move to the Recommended Model Path
mkdir -p /opt/openvino_toolkit/models/convert/public/FP32/yolov8n
mkdir -p /opt/openvino_toolkit/models/convert/public/FP32/yolov8n-seg
cp yolov8n_openvino_model/* /opt/openvino_toolkit/models/convert/public/FP32/yolov8n
cp yolov8n-seg_openvino_model/* /opt/openvino_toolkit/models/convert/public/FP32/yolov8n-seg
-
diff --git a/README.md b/README.md
index 869fa51c..816412df 100644
--- a/README.md
+++ b/README.md
@@ -24,7 +24,7 @@
# Overview
## ROS2 Version Supported
-|Branch Name|ROS2 Version Supported|Openvino Version|OS Version|
+|Branch Name|ROS2 Version Supported|OpenVINO Version|OS Version|
|-----------------------|-----------------------|--------------------------------|----------------------|
|[ros2](https://github.com/intel/ros2_openvino_toolkit/tree/ros2)|Galactic, Foxy, Humble|V2022.1, V2022.2, V2022.3|Ubuntu 20.04, Ubuntu 22.04|
|[dashing](https://github.com/intel/ros2_openvino_toolkit/tree/dashing)|Dashing|V2022.1, V2022.2, V2022.3|Ubuntu 18.04|
@@ -50,12 +50,12 @@
|**OS**|Mandatory|We only tested this project under Ubuntu distros. It is recommended to install the corresponding Ubuntu Distro according to the ROS distro that you select to use. **For example: Ubuntu 18.04 for dashing, Ubuntu 20.04 for Foxy and Galactic, Ubuntu 22.04 for Humble.**|
|**ROS2**|Mandatory|We have already supported active ROS distros (Humble, Galactic, Foxy and Dashing (deprecated)). Choose the one matching your needs. You may find the corresponding branch from the table above in section [**ROS2 Version Supported**](#ros2-version-supported).|
|**OpenVINO**|Mandatory|The version of OpenVINO toolkit is decided by the OS and ROS2 distros you use. See the table above in Section [**ROS2 Version Supported**](#ros2-version-supported).|
-|**Realsense Camera**|Optional|Realsense Camera is optional, you may choose these alternatives as the input: Standard Camera, ROS Image Topic, Video/Image File or RTSP camera.|
+|**RealSense Camera**|Optional|RealSense Camera is optional, you may choose these alternatives as the input: Standard Camera, ROS Image Topic, Video/Image File or RTSP camera.|
# Introduction
## Design Architecture
Architecture Design
-From the view of hirarchical architecture design, the package is divided into different functional components, as shown in below picture.
+From the view of hierarchical architecture design, the package is divided into different functional components, as shown in below picture.

@@ -83,8 +83,8 @@ See more from [here](https://github.com/openvinotoolkit/openvino) for Intel Open
ROS Input & Output
-- **Diversal Input resources** are data resources to be infered and analyzed with the OpenVINO framework.
-- **ROS interfaces and outputs** currently include _Topic_ and _service_. Natively, RViz output and CV image window output are also supported by refactoring topic message and inferrence results.
+- **Diverse Input resources** are data resources to be inferred and analyzed with the OpenVINO framework.
+- **ROS interfaces and outputs** currently include _Topic_ and _service_. Natively, RViz output and CV image window output are also supported by refactoring topic message and inference results.
@@ -92,7 +92,7 @@ See more from [here](https://github.com/openvinotoolkit/openvino) for Intel Open
Optimized Models
-- **Optimized Models** provided by Model Optimizer component of Intel® OpenVINO™ toolkit. Imports trained models from various frameworks (Caffe*, Tensorflow*, MxNet*, ONNX*, Kaldi*) and converts them to a unified intermediate representation file. It also optimizes topologies through node merging, horizontal fusion, eliminating batch normalization, and quantization. It also supports graph freeze and graph summarize along with dynamic input freezing.
+- **Optimized Models** provided by Model Optimizer component of Intel® OpenVINO™ toolkit. Imports trained models from various frameworks (Caffe*, TensorFlow*, MxNet*, ONNX*, Kaldi*) and converts them to a unified intermediate representation file. It also optimizes topologies through node merging, horizontal fusion, eliminating batch normalization, and quantization. It also supports graph freeze and graph summarize along with dynamic input freezing.
@@ -103,7 +103,7 @@ From the view of logic implementation, the package introduces the definitions of

-Once a corresponding program is launched with a specified .yaml config file passed in the .launch file or via commandline, _**parameter manager**_ analyzes the configurations about pipeline and the whole framework, then shares the parsed configuration information with pipeline procedure. A _**pipeline instance**_ is created by following the configuration info and is added into _**pipeline manager**_ for lifecycle control and inference action triggering.
+Once a corresponding program is launched with a specified .yaml config file passed in the .launch file or via command line, _**parameter manager**_ analyzes the configurations about pipeline and the whole framework, then shares the parsed configuration information with pipeline procedure. A _**pipeline instance**_ is created by following the configuration info and is added into _**pipeline manager**_ for lifecycle control and inference action triggering.
The contents in **.yaml config file** should be well structured and follow the supported rules and entity names. Please see [yaml configuration guidance](./doc/quick_start/yaml_configuration_guide.md) for how to create or edit the config files.
@@ -111,7 +111,7 @@ The contents in **.yaml config file** should be well structured and follow the s
Pipeline
-**Pipeline** fulfills the whole data handling process: initiliazing Input Component for image data gathering and formating; building up the structured inference network and passing the formatted data through the inference network; transfering the inference results and handling output, etc.
+**Pipeline** fulfills the whole data handling process: initializing Input Component for image data gathering and formatting; building up the structured inference network and passing the formatted data through the inference network; transfering the inference results and handling output, etc.
@@ -235,7 +235,7 @@ For the snapshot of demo results, refer to the following picture.
# Installation and Launching
## Deploy in Local Environment
-* Refer to the quick start document for [getting_started_with_ros2](./doc/quick_start/getting_started_with_ros2_ov2.0.md) for detailed installation & lauching instructions.
+* Refer to the quick start document for [getting_started_with_ros2](./doc/quick_start/getting_started_with_ros2_ov2.0.md) for detailed installation & launching instructions.
* Refer to the quick start document for [yaml configuration guidance](./doc/quick_start/yaml_configuration_guide.md) for detailed configuration guidance.
## Deploy in Docker
@@ -274,7 +274,7 @@ For the snapshot of demo results, refer to the following picture.
* Report questions, issues and suggestions, using: [issue](https://github.com/intel/ros2_openvino_toolkit/issues).
# More Information
-* ROS2 OpenVINO discription written in Chinese: https://mp.weixin.qq.com/s/BgG3RGauv5pmHzV_hkVAdw
+* ROS2 OpenVINO description written in Chinese: https://mp.weixin.qq.com/s/BgG3RGauv5pmHzV_hkVAdw
###### *Any security issue should be reported using process at https://01.org/security*
diff --git a/data/labels/emotions-recognition/FP32/emotions-recognition-retail-0003.labels b/data/labels/emotions-recognition/FP32/emotions-recognition-retail-0003.labels
index 3e3c2ad7..ecbb5a7d 100644
--- a/data/labels/emotions-recognition/FP32/emotions-recognition-retail-0003.labels
+++ b/data/labels/emotions-recognition/FP32/emotions-recognition-retail-0003.labels
@@ -1,5 +1,5 @@
-neutual
+neutral
happy
sad
-supprise
+surprise
anger
diff --git a/doc/quick_start/getting_started_with_Dashing_Ubuntu18.04.md b/doc/quick_start/getting_started_with_Dashing_Ubuntu18.04.md
index a4f7c3d0..0a1db9ad 100644
--- a/doc/quick_start/getting_started_with_Dashing_Ubuntu18.04.md
+++ b/doc/quick_start/getting_started_with_Dashing_Ubuntu18.04.md
@@ -74,7 +74,7 @@ sudo cp ~/catkin_ws/src/ros2_openvino_toolkit/data/labels/object_segmentation/fr
sudo cp ~/catkin_ws/src/ros2_openvino_toolkit/data/labels/object_detection/vehicle-license-plate-detection-barrier-0106.labels /opt/openvino_toolkit/models/vehicle-license-plate-detection/output/intel/vehicle-license-plate-detection-barrier-0106/FP32
```
-* If the model (tensorflow, caffe, MXNet, ONNX, Kaldi)need to be converted to intermediate representation (For example the model for object detection)
+* If the model (TensorFlow, caffe, MXNet, ONNX, Kaldi)need to be converted to intermediate representation (For example the model for object detection)
* ssd_mobilenet_v2_coco
```
cd /opt/openvino_toolkit/models/
@@ -94,7 +94,7 @@ sudo cp ~/catkin_ws/src/ros2_openvino_toolkit/data/labels/object_detection/vehic
sudo python3 /opt/intel/openvino_2021/deployment_tools/open_model_zoo/tools/downloader/converter.py --name=yolo-v2-tf --mo /opt/intel/openvino_2021/deployment_tools/model_optimizer/mo.py
```
-* Before launch, check the parameter configuration in ros2_openvino_toolkit/sample/param/xxxx.yaml, make sure the paramter like model path, label path, inputs are right.
+* Before launch, check the parameter configuration in ros2_openvino_toolkit/sample/param/xxxx.yaml, make sure the parameter like model path, label path, inputs are right.
* run face detection sample code input from StandardCamera.
```
ros2 launch dynamic_vino_sample pipeline_people.launch.py
@@ -129,7 +129,7 @@ sudo cp ~/catkin_ws/src/ros2_openvino_toolkit/data/labels/object_detection/vehic
```
# More Information
-* ROS2 OpenVINO discription writen in Chinese: https://mp.weixin.qq.com/s/BgG3RGauv5pmHzV_hkVAdw
+* ROS2 OpenVINO description written in Chinese: https://mp.weixin.qq.com/s/BgG3RGauv5pmHzV_hkVAdw
###### *Any security issue should be reported using process at https://01.org/security*
diff --git a/doc/quick_start/getting_started_with_ros2_ov2.0.md b/doc/quick_start/getting_started_with_ros2_ov2.0.md
index 45f79670..c98e2c6e 100644
--- a/doc/quick_start/getting_started_with_ros2_ov2.0.md
+++ b/doc/quick_start/getting_started_with_ros2_ov2.0.md
@@ -11,7 +11,7 @@ For ROS2 foxy and galactic on ubuntu 20.04:
* Install Intel® OpenVINO™ Toolkit Version: 2022.3.
Refer to: [OpenVINO_install_guide](https://docs.openvino.ai/2022.3/openvino_docs_install_guides_installing_openvino_apt.html#doxid-openvino-docs-install-guides-installing-openvino-apt)
- * Install from an achive file. Both runtime and development tool are needed, `pip` is recommended for installing the development tool.
+ * Install from an archive file. Both runtime and development tool are needed, `pip` is recommended for installing the development tool.
Refer to: [OpenVINO_devtool_install_guide](https://www.intel.com/content/www/us/en/developer/tools/openvino-toolkit/download.html)
* Install Intel® RealSense™ SDK.
@@ -54,7 +54,7 @@ source ./install/local_setup.bash
## 3. Running the Demo
### Install OpenVINO 2022.3 by PIP
OMZ tools are provided for downloading and converting models of open_model_zoo in ov2022.
-Refer to: [OMZtool_guide](https://pypi.org/project/openvino-dev/)
+Refer to: [OMZ-tool_guide](https://pypi.org/project/openvino-dev/)
* See all available models
```
@@ -67,7 +67,7 @@ cd ~/catkin_ws/src/ros2_openvino_toolkit/data/model_list
omz_downloader --list download_model.lst -o /opt/openvino_toolkit/models/
```
-* If the model (tensorflow, caffe, MXNet, ONNX, Kaldi) need to be converted to intermediate representation (such as the model for object detection):
+* If the model (TensorFlow, caffe, MXNet, ONNX, Kaldi) need to be converted to intermediate representation (such as the model for object detection):
```
cd ~/catkin_ws/src/ros2_openvino_toolkit/data/model_list
omz_converter --list convert_model.lst -d /opt/openvino_toolkit/models/ -o /opt/openvino_toolkit/models/convert
@@ -85,7 +85,7 @@ cd ~/openvino/thirdparty/open_model_zoo/tools/model_tools
sudo python3 downloader.py --list download_model.lst -o /opt/openvino_toolkit/models/
```
-* If the model (tensorflow, caffe, MXNet, ONNX, Kaldi) need to be converted to Intermediate Representation (such as the model for object detection):
+* If the model (TensorFlow, caffe, MXNet, ONNX, Kaldi) need to be converted to Intermediate Representation (such as the model for object detection):
```
cd ~/openvino/thirdparty/open_model_zoo/tools/model_tools
sudo python3 converter.py --list convert_model.lst -d /opt/openvino_toolkit/models/ -o /opt/openvino_toolkit/models/convert
@@ -102,7 +102,7 @@ sudo cp ~/catkin_ws/src/ros2_openvino_toolkit/data/labels/object_segmentation/fr
sudo cp ~/catkin_ws/src/ros2_openvino_toolkit/data/labels/object_detection/vehicle-license-plate-detection-barrier-0106.labels /opt/openvino_toolkit/models/intel/vehicle-license-plate-detection-barrier-0106/FP32
```
-* Check the parameter configuration in ros2_openvino_toolkit/sample/param/xxxx.yaml before lauching, make sure parameters such as model_path, label_path and input_path are set correctly. Please refer to the quick start document for [yaml configuration guidance](./yaml_configuration_guide.md) for detailed configuration guidance.
+* Check the parameter configuration in ros2_openvino_toolkit/sample/param/xxxx.yaml before launching, make sure parameters such as model_path, label_path and input_path are set correctly. Please refer to the quick start document for [yaml configuration guide](./yaml_configuration_guide.md) for detailed configuration guidance.
* run face detection sample code input from StandardCamera.
```
ros2 launch openvino_node pipeline_people.launch.py
@@ -129,7 +129,7 @@ sudo cp ~/catkin_ws/src/ros2_openvino_toolkit/data/labels/object_detection/vehic
```
# More Information
-* ROS2 OpenVINO discription writen in Chinese: https://mp.weixin.qq.com/s/BgG3RGauv5pmHzV_hkVAdw
+* ROS2 OpenVINO description written in Chinese: https://mp.weixin.qq.com/s/BgG3RGauv5pmHzV_hkVAdw
###### *Any security issue should be reported using process at https://01.org/security*
diff --git a/doc/quick_start/tutorial_for_yolov5_converted.md b/doc/quick_start/tutorial_for_yolov5_converted.md
index dfc82ed8..20443481 100644
--- a/doc/quick_start/tutorial_for_yolov5_converted.md
+++ b/doc/quick_start/tutorial_for_yolov5_converted.md
@@ -14,8 +14,8 @@ This document describes a method to convert YOLOv5 nano PyTorch weight files wit
## Reference Document
|Doc|Link|
|---|---|
-|OpenVINO|[openvino_2_0_transition_guide](https://docs.openvino.ai/latest/openvino_2_0_transition_guide.html)|
-|YOLOv5|[yolov5](https://github.com/ultralytics/yolov5)|
+|OpenVINO transition guide |[openvino_2_0_transition_guide](https://docs.openvino.ai/latest/openvino_2_0_transition_guide.html)|
+|YOLOv5 documentation |[yolov5](https://github.com/ultralytics/yolov5)|
# Convert Weight File to ONNX
* Copy YOLOv5 Repository from GitHub
diff --git a/doc/quick_start/tutorial_for_yolov7_converted.md b/doc/quick_start/tutorial_for_yolov7_converted.md
index 9c476634..66f086af 100644
--- a/doc/quick_start/tutorial_for_yolov7_converted.md
+++ b/doc/quick_start/tutorial_for_yolov7_converted.md
@@ -15,8 +15,8 @@ files using the OpenVINO model optimizer. This method can help OpenVINO users op
## Reference Document
|Doc|Link|
|---|---|
-|OpenVINO|[openvino_2_0_transition_guide](https://docs.openvino.ai/latest/openvino_2_0_transition_guide.html)|
-|YOLOv7|[yolov7](https://github.com/WongKinYiu/yolov7)|
+|OpenVINO transition guide|[openvino_2_0_transition_guide](https://docs.openvino.ai/latest/openvino_2_0_transition_guide.html)|
+|YOLOv7 documentation |[yolov7](https://github.com/WongKinYiu/yolov7)|
# Convert Weight File to ONNX
* Copy YOLOv7 Repository from GitHub
diff --git a/doc/quick_start/yaml_configuration_guide.md b/doc/quick_start/yaml_configuration_guide.md
index b6a08a2a..e250df7b 100644
--- a/doc/quick_start/yaml_configuration_guide.md
+++ b/doc/quick_start/yaml_configuration_guide.md
@@ -58,16 +58,16 @@ Currently, options for inputs are:
|Input Option|Description|Configuration|
|--------------------|------------------------------------------------------------------|-----------------------------------------|
|StandardCamera|Any RGB camera with USB port supporting. Currently only the first USB camera if many are connected.|```inputs: [StandardCamera]```|
-|RealSenseCamera| Intel RealSense RGB-D Camera, directly calling RealSense Camera via librealsense plugin of openCV.|```inputs: [RealSenseCamera]```|
+|RealSenseCamera| Intel® RealSense™ RGB-D Camera, directly calling RealSense Camera via librealsense plugin of openCV.|```inputs: [RealSenseCamera]```|
|RealSenseCameraTopic| Any ROS topic which is structured in image message.|```inputs: [RealSenseCameraTopic]```|
|Image| Any image file which can be parsed by openCV, such as .png, .jpeg.|```inputs: [Image]```|
|Video| Any video file which can be parsed by openCV.|```inputs: [Video]```|
|IpCamera| Any RTSP server which can push video stream.|```inputs: [IpCamera]```|
-**Note:** Please refer to this opensource repo [RTSP_server_install_guide](https://github.com/EasyDarwin/EasyDarwin) to install RTSP server for IpCamera input.
+**Note:** Please refer to this opensource repo [RTSP_server_install_guide](https://github.com/EasyDarwin/EasyDarwin) to install RTSP server for IP Camera input.
### Specify input_path
-The input_path need to be specified when input is Image, Video and Ipcamera.
+The input_path need to be specified when input is Image, Video and IP Camera.
|Input Option|Configuration|
|--------------------|------------------------------------------------------------------|
@@ -85,11 +85,11 @@ The name of inference engine need to be specified here. Currently, the inference
|-----------------------|------------------------------------------------------------------|
|FaceDetection|Object Detection task applied to face recognition using a sequence of neural networks.|
|EmotionRecognition| Emotion recognition based on detected face image.|
-|AgeGenderRecognition| Age and gener recognition based on detected face image.|
+|AgeGenderRecognition| Age and gender recognition based on detected face image.|
|HeadPoseEstimation| Head pose estimation based on detected face image.|
-|ObjectDetection| object detection based on SSD-based trained models.|
+|ObjectDetection| Object detection based on SSD-based trained models.|
|VehicleDetection| Vehicle and passenger detection based on Intel models.|
-|ObjectSegmentation| object detection and segmentation.|
+|ObjectSegmentation| Object detection and segmentation.|
|ObjectSegmentationMaskrcnn| object segmentation based on Maskrcnn model.|
* #### model
diff --git a/docker/docker_instructions_ov2.0.md b/docker/docker_instructions_ov2.0.md
index c9cdd202..285084e9 100644
--- a/docker/docker_instructions_ov2.0.md
+++ b/docker/docker_instructions_ov2.0.md
@@ -65,7 +65,7 @@ source ./install/local_setup.bash
* See all available models
OMZ tools are provided for downloading and converting OMZ models in ov2022.
-Refer to: [OMZtool_guide](https://pypi.org/project/openvino-dev/)
+Refer to: [OMZ-tool_guide](https://pypi.org/project/openvino-dev/)
```
omz_downloader --print_all
@@ -77,7 +77,7 @@ cd ~/catkin_ws/src/ros2_openvino_toolkit/data/model_list
omz_downloader --list download_model.lst -o /opt/openvino_toolkit/models/
```
-* If the model (tensorflow, caffe, MXNet, ONNX, Kaldi) need to be converted to intermediate representation (such as the model for object detection):
+* If the model (TensorFlow, caffe, MXNet, ONNX, Kaldi) need to be converted to intermediate representation (such as the model for object detection):
```
cd ~/catkin_ws/src/ros2_openvino_toolkit/data/model_list
omz_converter --list convert_model.lst -d /opt/openvino_toolkit/models/ -o /opt/openvino_toolkit/models/convert
@@ -93,7 +93,7 @@ sudo cp ~/catkin_ws/src/ros2_openvino_toolkit/data/labels/object_segmentation/fr
sudo cp ~/catkin_ws/src/ros2_openvino_toolkit/data/labels/object_detection/vehicle-license-plate-detection-barrier-0106.labels /opt/openvino_toolkit/models/intel/vehicle-license-plate-detection-barrier-0106/FP32
```
-* Check the parameter configuration in ros2_openvino_toolkit/sample/param/xxxx.yaml before lauching, make sure parameters such as model_path, label_path and input_path are set correctly. Please refer to the quick start document for [yaml configuration guidance](../doc/quick_start/yaml_configuration_guide.md) for detailed configuration guidance.
+* Check the parameter configuration in ros2_openvino_toolkit/sample/param/xxxx.yaml before launching, make sure parameters such as model_path, label_path and input_path are set correctly. Please refer to the quick start document for [yaml configuration guidance](../doc/quick_start/yaml_configuration_guide.md) for detailed configuration guidance.
* run face detection sample code input from StandardCamera.
```
ros2 launch openvino_node pipeline_people.launch.py
@@ -124,7 +124,7 @@ sudo cp ~/catkin_ws/src/ros2_openvino_toolkit/data/labels/object_detection/vehic
```
# More Information
-* ROS2 OpenVINO discription writen in Chinese: https://mp.weixin.qq.com/s/BgG3RGauv5pmHzV_hkVAdw
+* ROS2 OpenVINO description written in Chinese: https://mp.weixin.qq.com/s/BgG3RGauv5pmHzV_hkVAdw
###### *Any security issue should be reported using process at https://01.org/security*
diff --git a/docker/ros2_2021.4/ros2_dashing/docker_instraction.md b/docker/ros2_2021.4/ros2_dashing/docker_instructions.md
similarity index 96%
rename from docker/ros2_2021.4/ros2_dashing/docker_instraction.md
rename to docker/ros2_2021.4/ros2_dashing/docker_instructions.md
index 48221333..6aca40bb 100644
--- a/docker/ros2_2021.4/ros2_dashing/docker_instraction.md
+++ b/docker/ros2_2021.4/ros2_dashing/docker_instructions.md
@@ -76,7 +76,7 @@ sudo python3 downloader.py --name person-attributes-recognition-crossroad-0230 -
sudo cp /root/ros2_ws/src/ros2_openvino_toolkit/data/labels/object_detection/vehicle-license-plate-detection-barrier-0106.labels /opt/openvino_toolkit/models/vehicle-license-plate-detection/output/intel/vehicle-license-plate-detection-barrier-0106/FP32
```
-* If the model (tensorflow, caffe, MXNet, ONNX, Kaldi)need to be converted to intermediate representation (For example the model for object detection)
+* If the model (TensorFlow, caffe, MXNet, ONNX, Kaldi)need to be converted to intermediate representation (For example the model for object detection)
* ssd_mobilenet_v2_coco
```
cd /opt/openvino_toolkit/models/
@@ -96,7 +96,7 @@ sudo python3 downloader.py --name person-attributes-recognition-crossroad-0230 -
sudo python3 /opt/intel/openvino_2021/deployment_tools/open_model_zoo/tools/downloader/converter.py --name=yolo-v2-tf --mo /opt/intel/openvino_2021/deployment_tools/model_optimizer/mo.py
```
-* Before launch, check the parameter configuration in ros2_openvino_toolkit/sample/param/xxxx.yaml, make sure the paramter like model path, label path, inputs are right.
+* Before launch, check the parameter configuration in ros2_openvino_toolkit/sample/param/xxxx.yaml, make sure the parameter like model path, label path, inputs are right.
* run face detection sample code input from StandardCamera.
```
ros2 launch dynamic_vino_sample pipeline_people.launch.py
@@ -131,7 +131,7 @@ sudo python3 downloader.py --name person-attributes-recognition-crossroad-0230 -
```
# More Information
-* ROS2 OpenVINO discription writen in Chinese: https://mp.weixin.qq.com/s/BgG3RGauv5pmHzV_hkVAdw
+* ROS2 OpenVINO description written in Chinese: https://mp.weixin.qq.com/s/BgG3RGauv5pmHzV_hkVAdw
###### *Any security issue should be reported using process at https://01.org/security*
diff --git a/docker/ros2_2021.4/ros2_foxy/docker_instraction.md b/docker/ros2_2021.4/ros2_foxy/docker_instructions.md
similarity index 96%
rename from docker/ros2_2021.4/ros2_foxy/docker_instraction.md
rename to docker/ros2_2021.4/ros2_foxy/docker_instructions.md
index 2515ec3c..02ad7d3d 100644
--- a/docker/ros2_2021.4/ros2_foxy/docker_instraction.md
+++ b/docker/ros2_2021.4/ros2_foxy/docker_instructions.md
@@ -76,7 +76,7 @@ sudo python3 downloader.py --name person-attributes-recognition-crossroad-0230 -
sudo cp /root/ros2_ws/src/ros2_openvino_toolkit/data/labels/object_detection/vehicle-license-plate-detection-barrier-0106.labels /opt/openvino_toolkit/models/vehicle-license-plate-detection/output/intel/vehicle-license-plate-detection-barrier-0106/FP32
```
-* If the model (tensorflow, caffe, MXNet, ONNX, Kaldi)need to be converted to intermediate representation (For example the model for object detection)
+* If the model (TensorFlow, caffe, MXNet, ONNX, Kaldi)need to be converted to intermediate representation (For example the model for object detection)
* ssd_mobilenet_v2_coco
```
cd /opt/openvino_toolkit/models/
@@ -96,7 +96,7 @@ sudo python3 downloader.py --name person-attributes-recognition-crossroad-0230 -
sudo python3 /opt/intel/openvino_2021/deployment_tools/open_model_zoo/tools/downloader/converter.py --name=yolo-v2-tf --mo /opt/intel/openvino_2021/deployment_tools/model_optimizer/mo.py
```
-* Before launch, check the parameter configuration in ros2_openvino_toolkit/sample/param/xxxx.yaml, make sure the paramter like model path, label path, inputs are right.
+* Before launch, check the parameter configuration in ros2_openvino_toolkit/sample/param/xxxx.yaml, make sure the parameter like model path, label path, inputs are right.
* run face detection sample code input from StandardCamera.
```
ros2 launch dynamic_vino_sample pipeline_people.launch.py
@@ -131,7 +131,7 @@ sudo python3 downloader.py --name person-attributes-recognition-crossroad-0230 -
```
# More Information
-* ROS2 OpenVINO discription writen in Chinese: https://mp.weixin.qq.com/s/BgG3RGauv5pmHzV_hkVAdw
+* ROS2 OpenVINO description written in Chinese: https://mp.weixin.qq.com/s/BgG3RGauv5pmHzV_hkVAdw
###### *Any security issue should be reported using process at https://01.org/security*
diff --git a/docker/ros2_2021.4/ros2_galactic/docker_instructions.md b/docker/ros2_2021.4/ros2_galactic/docker_instructions.md
index 6e5fe9be..0f40d6bc 100644
--- a/docker/ros2_2021.4/ros2_galactic/docker_instructions.md
+++ b/docker/ros2_2021.4/ros2_galactic/docker_instructions.md
@@ -78,7 +78,7 @@ sudo python3 downloader.py --name person-attributes-recognition-crossroad-0230 -
sudo cp /root/ros2_ws/src/ros2_openvino_toolkit/data/labels/object_detection/vehicle-license-plate-detection-barrier-0106.labels /opt/openvino_toolkit/models/vehicle-license-plate-detection/output/intel/vehicle-license-plate-detection-barrier-0106/FP32
```
-* If the model (tensorflow, caffe, MXNet, ONNX, Kaldi)need to be converted to intermediate representation (For example the model for object detection)
+* If the model (TensorFlow, caffe, MXNet, ONNX, Kaldi)need to be converted to intermediate representation (For example the model for object detection)
* ssd_mobilenet_v2_coco
```
cd /opt/openvino_toolkit/models/
@@ -98,7 +98,7 @@ sudo python3 downloader.py --name person-attributes-recognition-crossroad-0230 -
sudo python3 /opt/intel/openvino_2021/deployment_tools/open_model_zoo/tools/downloader/converter.py --name=yolo-v2-tf --mo /opt/intel/openvino_2021/deployment_tools/model_optimizer/mo.py
```
-* Before launch, check the parameter configuration in ros2_openvino_toolkit/sample/param/xxxx.yaml, make sure the paramter like model path, label path, inputs are right.
+* Before launch, check the parameter configuration in ros2_openvino_toolkit/sample/param/xxxx.yaml, make sure the parameter like model path, label path, inputs are right.
* run face detection sample code input from StandardCamera.
```
ros2 launch dynamic_vino_sample pipeline_people.launch.py
@@ -133,7 +133,7 @@ sudo python3 downloader.py --name person-attributes-recognition-crossroad-0230 -
```
# More Information
-* ROS2 OpenVINO discription writen in Chinese: https://mp.weixin.qq.com/s/BgG3RGauv5pmHzV_hkVAdw
+* ROS2 OpenVINO description written in Chinese: https://mp.weixin.qq.com/s/BgG3RGauv5pmHzV_hkVAdw
###### *Any security issue should be reported using process at https://01.org/security*
diff --git a/docker/ros2_ov202x/ros2_humble/Dockerfile b/docker/ros2_ov202x/ros2_humble/Dockerfile
new file mode 100644
index 00000000..8401d07b
--- /dev/null
+++ b/docker/ros2_ov202x/ros2_humble/Dockerfile
@@ -0,0 +1,72 @@
+# ros2 openvino toolkit env master f1b1ca4d914186a1881b87f103be9c6e910c9d80
+
+from osrf/ros:humble-desktop
+
+# Set non-interactive mode for APT
+ENV DEBIAN_FRONTEND=noninteractive
+
+# setting proxy env --option
+# If needed, enable the below ENV setting by correct proxies.
+# ENV http_proxy=your_proxy
+# ENV https_proxy=your_proxy
+
+# maintainer information
+LABEL maintainer="Jayabalaji Sathiyamoorthi "
+
+SHELL ["/bin/bash", "-c"]
+
+# install OpenVINO 2025.0.0 / 2023.3 LTS
+#https://docs.openvino.ai/2025/get-started/install-openvino.html?PACKAGE=OPENVINO_BASE&VERSION=v_2025_0_0&OP_SYSTEM=LINUX&DISTRIBUTION=APT
+RUN apt update \
+ && apt install curl wget gnupg2 lsb-release
+RUN wget https://apt.repos.intel.com/intel-gpg-keys/GPG-PUB-KEY-INTEL-SW-PRODUCTS.PUB \
+ && apt-key add GPG-PUB-KEY-INTEL-SW-PRODUCTS.PUB
+#RUN echo "deb https://apt.repos.intel.com/openvino/2025 ubuntu22 main" | tee /etc/apt/sources.list.d/intel-openvino-2025.list
+RUN echo "deb https://apt.repos.intel.com/openvino/2024 ubuntu22 main" | tee /etc/apt/sources.list.d/intel-openvino-2024.list
+#RUN echo "deb https://apt.repos.intel.com/openvino/2023 ubuntu22 main" | tee /etc/apt/sources.list.d/intel-openvino-2023.list
+
+RUN apt update \
+ && apt-cache search openvino \
+# && apt-get install -y openvino-2025.0.0
+ && apt-get install -y openvino-2024.2.0
+# && apt-get install -y openvino-2023.3.0
+
+# workaround to fetch librealsense2-dkms via ECI repo
+RUN bash -c 'echo "deb [trusted=yes] http://wheeljack.ch.intel.com/apt-repos/ECI/$(lsb_release -sc) isar main" > /etc/apt/sources.list.d/eci.list'
+RUN bash -c 'echo "deb-src [trusted=yes] http://wheeljack.ch.intel.com/apt-repos/ECI/$(lsb_release -sc) isar main" >> /etc/apt/sources.list.d/eci.list'
+RUN bash -c 'echo -e "Package: *\nPin: origin wheeljack.ch.intel.com\nPin-Priority: 1000" > /etc/apt/preferences.d/isar'
+RUN bash -c 'echo "Acquire::http::Proxy \"http://proxy-dmz.intel.com:912\"; Acquire::https::Proxy \"http://proxy-dmz.intel.com:912\"; Acquire::http::Proxy::wheeljack.ch.intel.com DIRECT;" >> /etc/apt/apt.conf.d/proxy.conf'
+
+RUN apt-get update \
+ && apt-get install -y librealsense2-dkms
+
+# install librealsense2
+# Reference : https://github.com/IntelRealSense/librealsense/blob/master/doc/distribution_linux.md
+RUN apt-get install -y --no-install-recommends \
+ software-properties-common \
+ apt-transport-https
+
+RUN mkdir -p /etc/apt/keyrings
+RUN curl -sSf https://librealsense.intel.com/Debian/librealsense.pgp | tee /etc/apt/keyrings/librealsense.pgp > /dev/null
+
+RUN echo "deb [signed-by=/etc/apt/keyrings/librealsense.pgp] https://librealsense.intel.com/Debian/apt-repo `lsb_release -cs` main" | \
+ tee /etc/apt/sources.list.d/librealsense.list
+RUN apt-get update
+RUN apt-get install -y --no-install-recommends \
+# librealsense2-dkms \ # Houston, this is not available in kernel 6.8
+ librealsense2-utils \
+ librealsense2-dev \
+ librealsense2-dbg \
+ && rm -rf /var/lib/apt/lists/*
+
+# build ros2 openvino toolkit
+WORKDIR /root
+RUN mkdir -p ros2_ws/src
+WORKDIR /root/ros2_ws/src
+RUN git clone https://github.com/intel/ros2_object_msgs.git
+RUN git clone -b ros2 https://github.com/jb-balaji/ros2_openvino_toolkit.git
+RUN git clone -b humble https://github.com/ros-perception/vision_opencv.git
+WORKDIR /root/ros2_ws
+RUN source /opt/ros/humble/setup.bash \
+ && colcon build --cmake-args -DCMAKE_BUILD_TYPE=Release
+
\ No newline at end of file
diff --git a/docker/ros2_ov202x/ros2_humble/docker_instructions.md b/docker/ros2_ov202x/ros2_humble/docker_instructions.md
new file mode 100644
index 00000000..9ce0aadf
--- /dev/null
+++ b/docker/ros2_ov202x/ros2_humble/docker_instructions.md
@@ -0,0 +1 @@
+To Do
\ No newline at end of file
diff --git a/openvino_param_lib/CMakeLists.txt b/openvino_param_lib/CMakeLists.txt
index 8a78469a..a7991962 100644
--- a/openvino_param_lib/CMakeLists.txt
+++ b/openvino_param_lib/CMakeLists.txt
@@ -56,7 +56,7 @@ if(UNIX OR APPLE)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fPIE -fstack-protector")
endif()
elseif(${CMAKE_CXX_COMPILER_ID} STREQUAL "Clang")
- # Clang is compatbile with some of the flags.
+ # Clang is compatible with some of the flags.
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fPIE -fstack-protector")
elseif(${CMAKE_CXX_COMPILER_ID} STREQUAL "Intel")
# Same as above, with exception that ICC compilation crashes with -fPIE option, even
@@ -68,7 +68,7 @@ if(UNIX OR APPLE)
# Generic flags.
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fPIC -fno-operator-names -Wformat -Wformat-security -Wall")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++17")
- # Dot not forward c++17 flag to GPU beucause it is not supported
+ # Dot not forward c++17 flag to GPU because it is not supported
set(CUDA_PROPAGATE_HOST_FLAGS OFF)
set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -D_FORTIFY_SOURCE=2")
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -pie")
diff --git a/openvino_people_msgs/msg/PersonAttribute.msg b/openvino_people_msgs/msg/PersonAttribute.msg
index 3ad0b0a6..c886313a 100644
--- a/openvino_people_msgs/msg/PersonAttribute.msg
+++ b/openvino_people_msgs/msg/PersonAttribute.msg
@@ -12,6 +12,6 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-# This message can represent a peron's attributes
+# This message can represent a person's attributes
string attribute # person attributes
sensor_msgs/RegionOfInterest roi # region of interest
\ No newline at end of file
diff --git a/openvino_wrapper_lib/CMakeLists.txt b/openvino_wrapper_lib/CMakeLists.txt
index 131607a5..7069a51f 100644
--- a/openvino_wrapper_lib/CMakeLists.txt
+++ b/openvino_wrapper_lib/CMakeLists.txt
@@ -33,7 +33,7 @@ set(CMAKE_CXX_FLAGS "-std=c++17 ${CMAKE_CXX_FLAGS}")
#add_definitions(-DLOG_LEVEL_DEBUG)
####################################
-# environment variable OpenVINO_DIR can be use instead of relaive path to specify location of configuration file
+# environment variable OpenVINO_DIR can be use instead of relative path to specify location of configuration file
find_package(OpenVINO REQUIRED)
if(NOT OpenVINO_FOUND)
@@ -41,7 +41,7 @@ if(NOT OpenVINO_FOUND)
endif()
set(OpenVINO_LIBRARIES openvino::runtime)
-# Find OpenCV libray if exists
+# Find OpenCV library if exists
find_package(OpenCV REQUIRED)
include_directories(${OpenCV_INCLUDE_DIRS})
if(OpenCV_FOUND)
@@ -155,7 +155,7 @@ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-unused-parameter -Wno-deprecated-de
#The below command is commented in order to ignore "colcon test" errors.
#This maybe impacts CPU's inference tuning, although we tested on Core i7-6700 and got the similar performance.
-#If you concern the inference performence, you can try to get the resource from the follow url and enable the below line.
+#If you concern the inference performance, you can try to get the resource from the follow url and enable the below line.
#https://github.com/openvinotoolkit/openvino/tree/2018/inference-engine/src/extension/cmake
#include(feature_defs OPTIONAL)
diff --git a/sample/CMakeLists.txt b/sample/CMakeLists.txt
index 25f50b09..8189f0a9 100644
--- a/sample/CMakeLists.txt
+++ b/sample/CMakeLists.txt
@@ -68,7 +68,7 @@ if(OpenCV_FOUND)
message(STATUS "OpenCV_INCLUDE_DIRS=${OpenCV_INCLUDE_DIRS}")
message(STATUS "OpenCV_LIBS=${OpenCV_LIBS}")
else()
- message(STATUS "OPENCV is disabled or not found, " ${PROJECT_NAME} " skiped")
+ message(STATUS "OPENCV is disabled or not found, " ${PROJECT_NAME} " skipped")
return()
endif()
diff --git a/script/environment_setup.sh b/script/environment_setup.sh
index 371bba98..08a37790 100755
--- a/script/environment_setup.sh
+++ b/script/environment_setup.sh
@@ -3,43 +3,43 @@ set -euo pipefail
echo "Please Enter Your Password:"
stty -echo
-read ROOT_PASSWD
+read -r ROOT_PASSWD
stty echo
basedir=$PWD
echo "Begin Environment Setup"
-system_ver=`cat /etc/lsb-release | grep -i "DISTRIB_RELEASE" | cut -d "=" -f2`
+system_ver=$(cat /etc/lsb-release | grep -i "DISTRIB_RELEASE" | cut -d "=" -f2)
#Get Config Parameters
-CLEAN=`cat modules.conf | grep 'clean'`
+CLEAN=$(cat modules.conf | grep 'clean')
CLEAN=${CLEAN##*=}
echo "Set CLEAN to $CLEAN"
-ROS2_SRC=`cat modules.conf | grep 'ros2_src'`
+ROS2_SRC=$(cat modules.conf | grep 'ros2_src')
ROS2_SRC=${ROS2_SRC##*=}
echo "Set ROS2_SRC to $ROS2_SRC"
-OPENCV=`cat modules.conf | grep 'opencv'`
+OPENCV=$(cat modules.conf | grep 'opencv')
OPENCV=${OPENCV##*=}
echo "Set OPENCV to $OPENCV"
-OPENCL=`cat modules.conf | grep 'opencl'`
+OPENCL=$(cat modules.conf | grep 'opencl')
OPENCL=${OPENCL##*=}
echo "Set OPENCL to $OPENCL"
-DLDT=`cat modules.conf | grep 'dldt'`
+DLDT=$(cat modules.conf | grep 'dldt')
DLDT=${DLDT##*=}
echo "Set DLDT to $DLDT"
-MODEL_ZOO=`cat modules.conf | grep 'model_zoo'`
+MODEL_ZOO=$(cat modules.conf | grep 'model_zoo')
MODEL_ZOO=${MODEL_ZOO##*=}
echo "Set MODEL_ZOO to $MODEL_ZOO"
-LIBREALSENSE=`cat modules.conf | grep 'librealsense'`
+LIBREALSENSE=$(cat modules.conf | grep 'librealsense')
LIBREALSENSE=${LIBREALSENSE##*=}
echo "Set LIBREALSENSE to $LIBREALSENSE"
-OTHER_DEPENDENCY=`cat modules.conf | grep 'other_dependency'`
+OTHER_DEPENDENCY=$(cat modules.conf | grep 'other_dependency')
OTHER_DEPENDENCY=${OTHER_DEPENDENCY##*=}
echo "Set OTHER_DEPENDENCY to $OTHER_DEPENDENCY"
@@ -48,17 +48,17 @@ echo "Set OTHER_DEPENDENCY to $OTHER_DEPENDENCY"
if [ "$CLEAN" == "1" ]; then
echo "===================Clean Existing Directories...===================================="
- read -n1 -p "The clean operation will delete some manually created directories,
+ read -r -n1 -p "The clean operation will delete some manually created directories,
including ~/code, ~/ros2_ws, /opt/intel, /opt/openvino_toolkit, and OpenVINO tar ball.
Do you want to clean existing directories[Y/N]?" answer
case $answer in
Y|y) echo
echo "===================Cleaning...===================================="
- echo $ROOT_PASSWD | sudo -S rm -rf ~/code
+ echo "$ROOT_PASSWD" | sudo -S rm -rf ~/code
rm -rf ~/ros2_ws
- echo $ROOT_PASSWD | sudo -S rm -rf /opt/openvino_toolkit
+ echo "$ROOT_PASSWD" | sudo -S rm -rf /opt/openvino_toolkit
if [[ $system_ver = "16.04" && -L "/usr/lib/x86_64-linux-gnu/libboost_python3.so" ]]; then
- echo $ROOT_PASSWD | sudo -S rm /usr/lib/x86_64-linux-gnu/libboost_python3.so
+ echo "$ROOT_PASSWD" | sudo -S rm /usr/lib/x86_64-linux-gnu/libboost_python3.so
fi
echo "===================Clean finish...====================================";;
N|n) echo
@@ -70,25 +70,25 @@ fi
if [ "$ROS2_SRC" == "1" ]; then
echo "===================Installing ROS2 from Source...======================="
- echo $ROOT_PASSWD | sudo -S locale-gen en_US en_US.UTF-8
- echo $ROOT_PASSWD | sudo -S update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8
+ echo "$ROOT_PASSWD" | sudo -S locale-gen en_US en_US.UTF-8
+ echo "$ROOT_PASSWD" | sudo -S update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8
export LANG=en_US.UTF-8
- echo $ROOT_PASSWD | sudo -S apt-get update && sudo apt-get install -y curl
+ echo "$ROOT_PASSWD" | sudo -S apt-get update && sudo apt-get install -y curl
curl http://repo.ros2.org/repos.key | sudo apt-key add -
- echo $ROOT_PASSWD | sudo -S sh -c 'echo "deb [arch=amd64,arm64] http://repo.ros2.org/ubuntu/main `lsb_release -cs` main" > /etc/apt/sources.list.d/ros2-latest.list'
+ echo "$ROOT_PASSWD" | sudo -S sh -c 'echo "deb [arch=amd64,arm64] http://repo.ros2.org/ubuntu/main `lsb_release -cs` main" > /etc/apt/sources.list.d/ros2-latest.list'
if [ -n "$http_proxy" ]; then
- echo $ROOT_PASSWD | sudo -S apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --keyserver-options http-proxy="$http_proxy" --recv-key F42ED6FBAB17C654
+ echo "$ROOT_PASSWD" | sudo -S apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --keyserver-options http-proxy="$http_proxy" --recv-key F42ED6FBAB17C654
else
- echo $ROOT_PASSWD | sudo -S apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-key F42ED6FBAB17C654
+ echo "$ROOT_PASSWD" | sudo -S apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-key F42ED6FBAB17C654
fi
- echo $ROOT_PASSWD | sudo -S apt-get update && sudo apt-get install -y build-essential cmake git python3-colcon-common-extensions python3-pip python-rosdep python3-vcstool wget
+ echo "$ROOT_PASSWD" | sudo -S apt-get update && sudo apt-get install -y build-essential cmake git python3-colcon-common-extensions python3-pip python-rosdep python3-vcstool wget
# install some pip packages needed for testing
- echo $ROOT_PASSWD | sudo -S -H python3 -m pip install -U argcomplete flake8 flake8-blind-except flake8-builtins flake8-class-newline flake8-comprehensions flake8-deprecated flake8-docstrings flake8-import-order flake8-quotes pytest-repeat pytest-rerunfailures
+ echo "$ROOT_PASSWD" | sudo -S -H python3 -m pip install -U argcomplete flake8 flake8-blind-except flake8-builtins flake8-class-newline flake8-comprehensions flake8-deprecated flake8-docstrings flake8-import-order flake8-quotes pytest-repeat pytest-rerunfailures
python3 -m pip install -U pytest pytest-cov pytest-runner setuptools
- echo $ROOT_PASSWD | sudo -S apt-get install --no-install-recommends -y libasio-dev libtinyxml2-dev
+ echo "$ROOT_PASSWD" | sudo -S apt-get install --no-install-recommends -y libasio-dev libtinyxml2-dev
mkdir -p ~/ros2_ws/src
cd ~/ros2_ws
@@ -96,13 +96,13 @@ if [ "$ROS2_SRC" == "1" ]; then
vcs-import src < ros2.repos
if [ ! -f "/etc/ros/rosdep/sources.list.d/20-default.list" ]; then
- echo $ROOT_PASSWD | sudo -S rosdep init
+ echo "$ROOT_PASSWD" | sudo -S rosdep init
else
echo "file already exists, skip..."
fi
rosdep update
- if [ $system_ver = "16.04" ]; then
+ if [ "$system_ver" = "16.04" ]; then
rosdep install --from-paths src --ignore-src --rosdistro crystal -y --skip-keys "console_bridge fastcdr fastrtps libopensplice67 libopensplice69 python3-lark-parser rti-connext-dds-5.3.1 urdfdom_headers"
colcon build --symlink-install --packages-ignore qt_gui_cpp rqt_gui_cpp
else
@@ -115,16 +115,16 @@ fi
if [ "$OPENCV" == "1" ]; then
echo "===================Installing OpenCV3 from Source...======================="
- echo $ROOT_PASSWD | sudo -S apt-get install -y build-essential
- echo $ROOT_PASSWD | sudo -S apt-get install -y cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
- echo $ROOT_PASSWD | sudo -S apt-get install -y python-dev python-numpy libtbb2 libtbb-dev libpng-dev libtiff-dev libdc1394-22-dev
-
- if [ $system_ver = "18.04" ]; then
- echo $ROOT_PASSWD | sudo -S add-apt-repository "deb http://security.ubuntu.com/ubuntu xenial-security main"
- echo $ROOT_PASSWD | sudo apt update
- echo $ROOT_PASSWD | sudo apt install libjasper1 libjasper-dev
+ echo "$ROOT_PASSWD" | sudo -S apt-get install -y build-essential
+ echo "$ROOT_PASSWD" | sudo -S apt-get install -y cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
+ echo "$ROOT_PASSWD" | sudo -S apt-get install -y python-dev python-numpy libtbb2 libtbb-dev libpng-dev libtiff-dev libdc1394-22-dev
+
+ if [ "$system_ver" = "18.04" ]; then
+ echo "$ROOT_PASSWD" | sudo -S add-apt-repository "deb http://security.ubuntu.com/ubuntu xenial-security main"
+ echo "$ROOT_PASSWD" | sudo apt update
+ echo "$ROOT_PASSWD" | sudo apt install libjasper1 libjasper-dev
else
- echo $ROOT_PASSWD | sudo -S apt-get install libjasper-dev
+ echo "$ROOT_PASSWD" | sudo -S apt-get install libjasper-dev
fi
mkdir -p ~/code && cd ~/code
@@ -140,10 +140,10 @@ if [ "$OPENCV" == "1" ]; then
cd ~/code/opencv
mkdir build && cd build
- cmake -DOPENCV_EXTRA_MODULES_PATH=$HOME/code/opencv_contrib/modules -DCMAKE_INSTALL_PREFIX=/usr/local -DBUILD_opencv_cnn_3dobj=OFF ..
+ cmake -DOPENCV_EXTRA_MODULES_PATH="$HOME"/code/opencv_contrib/modules -DCMAKE_INSTALL_PREFIX=/usr/local -DBUILD_opencv_cnn_3dobj=OFF ..
make -j4
- echo $ROOT_PASSWD | sudo -S make install
- echo $ROOT_PASSWD | sudo -S ldconfig
+ echo "$ROOT_PASSWD" | sudo -S make install
+ echo "$ROOT_PASSWD" | sudo -S ldconfig
echo "==== END install OpenCV ===="
fi
@@ -158,7 +158,7 @@ if [ "$OPENCL" == "1" ]; then
wget https://github.com/intel/compute-runtime/releases/download/19.04.12237/intel-igc-opencl_18.50.1270_amd64.deb
wget https://github.com/intel/compute-runtime/releases/download/19.04.12237/intel-opencl_19.04.12237_amd64.deb
wget https://github.com/intel/compute-runtime/releases/download/19.04.12237/intel-ocloc_19.04.12237_amd64.deb
- echo $ROOT_PASSWD | sudo -S -E dpkg -i *.deb
+ echo "$ROOT_PASSWD" | sudo -S -E dpkg -i -- *.deb
echo "==== END install OpenCL ===="
fi
@@ -168,8 +168,8 @@ if [ "$DLDT" == "1" ]; then
echo "===================Installing Deep Learning Deployment Toolkit...======================="
if [[ -f /etc/lsb-release ]]; then
- echo $ROOT_PASSWD | sudo -S -E apt update
- echo $ROOT_PASSWD | sudo -S -E apt-get install -y \
+ echo "$ROOT_PASSWD" | sudo -S -E apt update
+ echo "$ROOT_PASSWD" | sudo -S -E apt-get install -y \
build-essential \
cmake \
curl \
@@ -197,10 +197,10 @@ if [ "$DLDT" == "1" ]; then
gstreamer1.0-plugins-base \
libusb-1.0-0-dev \
libopenblas-dev
- if [ $system_ver = "18.04" ]; then
- echo $ROOT_PASSWD | sudo -S -E apt-get install -y libpng-dev
+ if [ "$system_ver" = "18.04" ]; then
+ echo "$ROOT_PASSWD" | sudo -S -E apt-get install -y libpng-dev
else
- echo $ROOT_PASSWD | sudo -S -E apt-get install -y libpng12-dev
+ echo "$ROOT_PASSWD" | sudo -S -E apt-get install -y libpng12-dev
fi
fi
mkdir -p ~/code && cd ~/code
@@ -212,8 +212,8 @@ if [ "$DLDT" == "1" ]; then
mkdir build && cd build
cmake -DCMAKE_BUILD_TYPE=Release ..
make -j8
- echo $ROOT_PASSWD | sudo -S mkdir -p /opt/openvino_toolkit
- echo $ROOT_PASSWD | sudo -S ln -sf ~/code/dldt /opt/openvino_toolkit/dldt
+ echo "$ROOT_PASSWD" | sudo -S mkdir -p /opt/openvino_toolkit
+ echo "$ROOT_PASSWD" | sudo -S ln -sf ~/code/dldt /opt/openvino_toolkit/dldt
echo "==== END install DLDT ===="
fi
@@ -229,8 +229,8 @@ if [ "$MODEL_ZOO" == "1" ]; then
mkdir build && cd build
cmake -DCMAKE_BUILD_TYPE=Release /opt/openvino_toolkit/dldt/inference-engine
make -j8
- echo $ROOT_PASSWD | sudo -S mkdir -p /opt/openvino_toolkit
- echo $ROOT_PASSWD | sudo -S ln -sf ~/code/open_model_zoo /opt/openvino_toolkit/open_model_zoo
+ echo "$ROOT_PASSWD" | sudo -S mkdir -p /opt/openvino_toolkit
+ echo "$ROOT_PASSWD" | sudo -S ln -sf ~/code/open_model_zoo /opt/openvino_toolkit/open_model_zoo
echo "==== END install open_model_zoo ===="
fi
@@ -241,9 +241,9 @@ if [ "$LIBREALSENSE" == "1" ]; then
echo "Install server public key for librealsense"
if [ -n "$http_proxy" ]; then
- echo $ROOT_PASSWD | sudo -S apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --keyserver-options http-proxy=$http_proxy --recv-key C8B3A55A6F3EFCDE
+ echo "$ROOT_PASSWD" | sudo -S apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --keyserver-options http-proxy="$http_proxy" --recv-key C8B3A55A6F3EFCDE
else
- echo $ROOT_PASSWD | sudo -S apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-key C8B3A55A6F3EFCDE
+ echo "$ROOT_PASSWD" | sudo -S apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-key C8B3A55A6F3EFCDE
fi
if ! test "$(grep "http://realsense-hw-public.s3.amazonaws.com/Debian/apt-repo" /etc/apt/sources.list)"
@@ -259,18 +259,18 @@ fi
if [ "$OTHER_DEPENDENCY" == "1" ]; then
echo "===================Setting UP OTHER_DEPENDENCY DEPENDENCY...======================="
- echo $ROOT_PASSWD | sudo -S apt-get install -y libssl-dev libusb-1.0-0-dev pkg-config libgtk-3-dev
- echo $ROOT_PASSWD | sudo -S apt-get install -y libglfw3-dev libgl1-mesa-dev libglu1-mesa-dev
+ echo "$ROOT_PASSWD" | sudo -S apt-get install -y libssl-dev libusb-1.0-0-dev pkg-config libgtk-3-dev
+ echo "$ROOT_PASSWD" | sudo -S apt-get install -y libglfw3-dev libgl1-mesa-dev libglu1-mesa-dev
pip3 install numpy
pip3 install networkx
- if [ $system_ver = "16.04" ]; then
- echo $ROOT_PASSWD | sudo -S apt-get install -y --no-install-recommends libboost-all-dev
+ if [ "$system_ver" = "16.04" ]; then
+ echo "$ROOT_PASSWD" | sudo -S apt-get install -y --no-install-recommends libboost-all-dev
cd /usr/lib/x86_64-linux-gnu
- echo $ROOT_PASSWD | sudo -S ln -sf libboost_python-py35.so libboost_python3.so
- elif [ $system_ver = "18.04" ]; then
- echo $ROOT_PASSWD | sudo -S apt-get install -y --no-install-recommends libboost-all-dev
- echo $ROOT_PASSWD | sudo -S apt install libboost-python1.62.0
+ echo "$ROOT_PASSWD" | sudo -S ln -sf libboost_python-py35.so libboost_python3.so
+ elif [ "$system_ver" = "18.04" ]; then
+ echo "$ROOT_PASSWD" | sudo -S apt-get install -y --no-install-recommends libboost-all-dev
+ echo "$ROOT_PASSWD" | sudo -S apt install libboost-python1.62.0
fi
echo "==== END install other dependencies ===="
diff --git a/script/environment_setup_binary.sh b/script/environment_setup_binary.sh
index d8cca987..3fe6bc54 100755
--- a/script/environment_setup_binary.sh
+++ b/script/environment_setup_binary.sh
@@ -3,40 +3,40 @@ set -euo pipefail
echo "Please Enter Your Password:"
stty -echo
-read ROOT_PASSWD
+read -r ROOT_PASSWD
stty echo
basedir=$PWD
echo "Begin Environment Setup"
-system_ver=`cat /etc/lsb-release | grep -i "DISTRIB_RELEASE" | cut -d "=" -f2`
+system_ver=$(cat /etc/lsb-release | grep -i "DISTRIB_RELEASE" | cut -d "=" -f2)
#Get Config Parameters
-CLEAN=`cat modules.conf | grep 'clean'`
+CLEAN=$(cat modules.conf | grep 'clean')
CLEAN=${CLEAN##*=}
echo "Set CLEAN to $CLEAN"
-ROS2_SRC=`cat modules.conf | grep 'ros2_src'`
+ROS2_SRC=$(cat modules.conf | grep 'ros2_src')
ROS2_SRC=${ROS2_SRC##*=}
echo "Set ROS2_SRC to $ROS2_SRC"
-OPENVINO=`cat modules.conf | grep 'openvino'`
+OPENVINO=$(cat modules.conf | grep 'openvino')
OPENVINO=${OPENVINO##*=}
echo "Set OPENVINO to $OPENVINO"
-OPENCL=`cat modules.conf | grep 'opencl'`
+OPENCL=$(cat modules.conf | grep 'opencl')
OPENCL=${OPENCL##*=}
echo "Set OPENCL to $OPENCL"
-OPENCV=`cat modules.conf | grep 'opencv'`
+OPENCV=$(cat modules.conf | grep 'opencv')
OPENCV=${OPENCV##*=}
echo "Set OPENCV to $OPENCV"
-LIBREALSENSE=`cat modules.conf | grep 'librealsense'`
+LIBREALSENSE=$(cat modules.conf | grep 'librealsense')
LIBREALSENSE=${LIBREALSENSE##*=}
echo "Set LIBREALSENSE to $LIBREALSENSE"
-OTHER_DEPENDENCY=`cat modules.conf | grep 'other_dependency'`
+OTHER_DEPENDENCY=$(cat modules.conf | grep 'other_dependency')
OTHER_DEPENDENCY=${OTHER_DEPENDENCY##*=}
echo "Set OTHER_DEPENDENCY to $OTHER_DEPENDENCY"
@@ -45,19 +45,19 @@ echo "Set OTHER_DEPENDENCY to $OTHER_DEPENDENCY"
if [ "$CLEAN" == "1" ]; then
echo "===================Clean Existing Directories...===================================="
- read -n1 -p "The clean operation will delete some manually created directories,
+ read -r -n1 -p "The clean operation will delete some manually created directories,
including ~/code, ~/ros2_ws, /opt/intel, /opt/openvino_toolkit, and OpenVINO tar ball.
Do you want to clean existing directories[Y/N]?" answer
case $answer in
Y|y) echo
echo "===================Cleaning...===================================="
- echo $ROOT_PASSWD | sudo -S rm -rf ~/code
+ echo "$ROOT_PASSWD" | sudo -S rm -rf ~/code
rm -rf ~/ros2_ws
- echo $ROOT_PASSWD | sudo -S rm -rf /opt/intel
+ echo "$ROOT_PASSWD" | sudo -S rm -rf /opt/intel
rm -rf ~/Downloads/l_openvino_toolkit*
- echo $ROOT_PASSWD | sudo -S rm -rf /opt/openvino_toolkit
+ echo "$ROOT_PASSWD" | sudo -S rm -rf /opt/openvino_toolkit
if [[ $system_ver = "16.04" && -L "/usr/lib/x86_64-linux-gnu/libboost_python3.so" ]]; then
- echo $ROOT_PASSWD | sudo -S rm /usr/lib/x86_64-linux-gnu/libboost_python3.so
+ echo "$ROOT_PASSWD" | sudo -S rm /usr/lib/x86_64-linux-gnu/libboost_python3.so
fi
echo "===================Clean finish...====================================";;
N|n) echo
@@ -69,26 +69,26 @@ fi
if [ "$ROS2_SRC" == "1" ]; then
echo "===================Installing ROS2 from Source...======================="
- echo $ROOT_PASSWD | sudo -S locale-gen en_US en_US.UTF-8
- echo $ROOT_PASSWD | sudo -S update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8
+ echo "$ROOT_PASSWD" | sudo -S locale-gen en_US en_US.UTF-8
+ echo "$ROOT_PASSWD" | sudo -S update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8
export LANG=en_US.UTF-8
- echo $ROOT_PASSWD | sudo -S apt-get update && sudo apt-get install -y curl
+ echo "$ROOT_PASSWD" | sudo -S apt-get update && sudo apt-get install -y curl
curl http://repo.ros2.org/repos.key | sudo apt-key add -
- echo $ROOT_PASSWD | sudo -S sh -c 'echo "deb [arch=amd64,arm64] http://repo.ros2.org/ubuntu/main `lsb_release -cs` main" > /etc/apt/sources.list.d/ros2-latest.list'
+ echo "$ROOT_PASSWD" | sudo -S sh -c 'echo "deb [arch=amd64,arm64] http://repo.ros2.org/ubuntu/main `lsb_release -cs` main" > /etc/apt/sources.list.d/ros2-latest.list'
if [ -n "$http_proxy" ]; then
- echo $ROOT_PASSWD | sudo -S apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --keyserver-options http-proxy="$http_proxy" --recv-key F42ED6FBAB17C654
+ echo "$ROOT_PASSWD" | sudo -S apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --keyserver-options http-proxy="$http_proxy" --recv-key F42ED6FBAB17C654
else
- echo $ROOT_PASSWD | sudo -S apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-key F42ED6FBAB17C654
+ echo "$ROOT_PASSWD" | sudo -S apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-key F42ED6FBAB17C654
fi
- echo $ROOT_PASSWD | sudo -S apt-get update && sudo apt-get install -y build-essential cmake git python3-colcon-common-extensions python3-pip python-rosdep python3-vcstool wget
+ echo "$ROOT_PASSWD" | sudo -S apt-get update && sudo apt-get install -y build-essential cmake git python3-colcon-common-extensions python3-pip python-rosdep python3-vcstool wget
# install some pip packages needed for testing
- echo $ROOT_PASSWD | sudo -S -H python3 -m pip install -U argcomplete flake8 flake8-blind-except flake8-builtins flake8-class-newline flake8-comprehensions flake8-deprecated flake8-docstrings flake8-import-order flake8-quotes pytest-repeat pytest-rerunfailures
+ echo "$ROOT_PASSWD" | sudo -S -H python3 -m pip install -U argcomplete flake8 flake8-blind-except flake8-builtins flake8-class-newline flake8-comprehensions flake8-deprecated flake8-docstrings flake8-import-order flake8-quotes pytest-repeat pytest-rerunfailures
python3 -m pip install -U pytest pytest-cov pytest-runner setuptools
python3 -m pip uninstall pytest -y
- echo $ROOT_PASSWD | sudo -S apt-get install --no-install-recommends -y libasio-dev libtinyxml2-dev
+ echo "$ROOT_PASSWD" | sudo -S apt-get install --no-install-recommends -y libasio-dev libtinyxml2-dev
mkdir -p ~/ros2_ws/src
cd ~/ros2_ws
@@ -96,13 +96,13 @@ if [ "$ROS2_SRC" == "1" ]; then
vcs-import src < ros2.repos
if [ ! -f "/etc/ros/rosdep/sources.list.d/20-default.list" ]; then
- echo $ROOT_PASSWD | sudo -S rosdep init
+ echo "$ROOT_PASSWD" | sudo -S rosdep init
else
echo "file already exists, skip..."
fi
rosdep update
- if [ $system_ver = "16.04" ]; then
+ if [ "$system_ver" = "16.04" ]; then
rosdep install --from-paths src --ignore-src --rosdistro crystal -y --skip-keys "console_bridge fastcdr fastrtps libopensplice67 libopensplice69 python3-lark-parser rti-connext-dds-5.3.1 urdfdom_headers"
colcon build --symlink-install --packages-ignore qt_gui_cpp rqt_gui_cpp
else
@@ -119,9 +119,9 @@ if [ "$OPENVINO" == "1" ]; then
wget -c http://registrationcenter-download.intel.com/akdlm/irc_nas/16057/l_openvino_toolkit_p_2019.3.376.tgz
tar -xvf l_openvino_toolkit_p_2019.3.376.tgz
cd l_openvino_toolkit_p_2019.3.376
- echo $ROOT_PASSWD | sudo -S ./install_openvino_dependencies.sh
- cp $basedir/openvino_silent.cfg .
- echo $ROOT_PASSWD | sudo -S ./install.sh --silent openvino_silent.cfg
+ echo "$ROOT_PASSWD" | sudo -S ./install_openvino_dependencies.sh
+ cp "$basedir"/openvino_silent.cfg .
+ echo "$ROOT_PASSWD" | sudo -S ./install.sh --silent openvino_silent.cfg
echo "==== END install OpenVINO Toolkit ===="
fi
@@ -136,7 +136,7 @@ if [ "$OPENCL" == "1" ]; then
wget https://github.com/intel/compute-runtime/releases/download/19.04.12237/intel-igc-opencl_18.50.1270_amd64.deb
wget https://github.com/intel/compute-runtime/releases/download/19.04.12237/intel-opencl_19.04.12237_amd64.deb
wget https://github.com/intel/compute-runtime/releases/download/19.04.12237/intel-ocloc_19.04.12237_amd64.deb
- echo $ROOT_PASSWD | sudo -S -E dpkg -i *.deb
+ echo "$ROOT_PASSWD" | sudo -S -E dpkg -i -- *.deb
echo "==== END install OpenCL ===="
fi
@@ -147,9 +147,9 @@ if [ "$LIBREALSENSE" == "1" ]; then
echo "Install server public key for librealsense"
if [ -n "$http_proxy" ]; then
- echo $ROOT_PASSWD | sudo -S apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --keyserver-options http-proxy=$http_proxy --recv-key C8B3A55A6F3EFCDE
+ echo "$ROOT_PASSWD" | sudo -S apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --keyserver-options http-proxy="$http_proxy" --recv-key C8B3A55A6F3EFCDE
else
- echo $ROOT_PASSWD | sudo -S apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-key C8B3A55A6F3EFCDE
+ echo "$ROOT_PASSWD" | sudo -S apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-key C8B3A55A6F3EFCDE
fi
if ! test "$(grep "http://realsense-hw-public.s3.amazonaws.com/Debian/apt-repo" /etc/apt/sources.list)"
@@ -165,16 +165,16 @@ fi
if [ "$OPENCV" == "1" ]; then
echo "===================Installing OpenCV3 from Source...======================="
- echo $ROOT_PASSWD | sudo -S apt-get install -y build-essential
- echo $ROOT_PASSWD | sudo -S apt-get install -y cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
- echo $ROOT_PASSWD | sudo -S apt-get install -y python-dev python-numpy libtbb2 libtbb-dev libpng-dev libtiff-dev libdc1394-22-dev
-
- if [ $system_ver = "18.04" ]; then
- echo $ROOT_PASSWD | sudo -S add-apt-repository "deb http://security.ubuntu.com/ubuntu xenial-security main"
- echo $ROOT_PASSWD | sudo apt update
- echo $ROOT_PASSWD | sudo apt install libjasper1 libjasper-dev
+ echo "$ROOT_PASSWD" | sudo -S apt-get install -y build-essential
+ echo "$ROOT_PASSWD" | sudo -S apt-get install -y cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
+ echo "$ROOT_PASSWD" | sudo -S apt-get install -y python-dev python-numpy libtbb2 libtbb-dev libpng-dev libtiff-dev libdc1394-22-dev
+
+ if [ "$system_ver" = "18.04" ]; then
+ echo "$ROOT_PASSWD" | sudo -S add-apt-repository "deb http://security.ubuntu.com/ubuntu xenial-security main"
+ echo "$ROOT_PASSWD" | sudo apt update
+ echo "$ROOT_PASSWD" | sudo apt install libjasper1 libjasper-dev
else
- echo $ROOT_PASSWD | sudo -S apt-get install libjasper-dev
+ echo "$ROOT_PASSWD" | sudo -S apt-get install libjasper-dev
fi
mkdir -p ~/code && cd ~/code
@@ -190,10 +190,10 @@ if [ "$OPENCV" == "1" ]; then
cd ~/code/opencv
mkdir build && cd build
- cmake -DOPENCV_EXTRA_MODULES_PATH=$HOME/code/opencv_contrib/modules -DCMAKE_INSTALL_PREFIX=/usr/local -DBUILD_opencv_cnn_3dobj=OFF ..
+ cmake -DOPENCV_EXTRA_MODULES_PATH="$HOME"/code/opencv_contrib/modules -DCMAKE_INSTALL_PREFIX=/usr/local -DBUILD_opencv_cnn_3dobj=OFF ..
make -j4
- echo $ROOT_PASSWD | sudo -S make install
- echo $ROOT_PASSWD | sudo -S ldconfig
+ echo "$ROOT_PASSWD" | sudo -S make install
+ echo "$ROOT_PASSWD" | sudo -S ldconfig
echo "==== END install OpenCV ===="
fi
@@ -202,18 +202,18 @@ fi
if [ "$OTHER_DEPENDENCY" == "1" ]; then
echo "===================Setting UP OTHER_DEPENDENCY DEPENDENCY...======================="
- echo $ROOT_PASSWD | sudo -S apt-get install -y libssl-dev libusb-1.0-0-dev pkg-config libgtk-3-dev
- echo $ROOT_PASSWD | sudo -S apt-get install -y libglfw3-dev libgl1-mesa-dev libglu1-mesa-dev
+ echo "$ROOT_PASSWD" | sudo -S apt-get install -y libssl-dev libusb-1.0-0-dev pkg-config libgtk-3-dev
+ echo "$ROOT_PASSWD" | sudo -S apt-get install -y libglfw3-dev libgl1-mesa-dev libglu1-mesa-dev
pip3 install numpy
pip3 install networkx
- if [ $system_ver = "16.04" ]; then
- echo $ROOT_PASSWD | sudo -S apt-get install -y --no-install-recommends libboost-all-dev
+ if [ "$system_ver" = "16.04" ]; then
+ echo "$ROOT_PASSWD" | sudo -S apt-get install -y --no-install-recommends libboost-all-dev
cd /usr/lib/x86_64-linux-gnu
- echo $ROOT_PASSWD | sudo -S ln -sf libboost_python-py35.so libboost_python3.so
- elif [ $system_ver = "18.04" ]; then
- echo $ROOT_PASSWD | sudo -S apt-get install -y --no-install-recommends libboost-all-dev
- echo $ROOT_PASSWD | sudo -S apt install libboost-python1.62.0
+ echo "$ROOT_PASSWD" | sudo -S ln -sf libboost_python-py35.so libboost_python3.so
+ elif [ "$system_ver" = "18.04" ]; then
+ echo "$ROOT_PASSWD" | sudo -S apt-get install -y --no-install-recommends libboost-all-dev
+ echo "$ROOT_PASSWD" | sudo -S apt install libboost-python1.62.0
fi
echo "==== END install other dependencies ===="
diff --git a/script/set_variable.sh b/script/set_variable.sh
index 88fb16b6..bef756c7 100644
--- a/script/set_variable.sh
+++ b/script/set_variable.sh
@@ -14,5 +14,5 @@ elif [ "$openvino_version" == "binary" ]; then
else
echo "openvino version error"
fi
-echo "model_downloader="$model_downloader
-echo "model_optimizer="$model_optimizer
+echo "model_downloader=""$model_downloader"
+echo "model_optimizer=""$model_optimizer"
diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
index f6c1fde6..faa2a20d 100644
--- a/tests/CMakeLists.txt
+++ b/tests/CMakeLists.txt
@@ -31,7 +31,7 @@ if(NOT OpenVINO_FOUND)
endif()
set(OpenVINO_LIBRARIES openvino::runtime)
-# Find OpenCV libray if exists
+# Find OpenCV library if exists
find_package(OpenCV REQUIRED)
include_directories(${OpenCV_INCLUDE_DIRS})
if(OpenCV_FOUND)