From 487b217856b8b7d592894f0995a417a60b66ef13 Mon Sep 17 00:00:00 2001
From: wujiawei 
Date: Fri, 9 Dec 2022 14:00:13 +0800
Subject: [PATCH 01/28] refine for docker
---
 docker/Dockerfile                   | 10 ++++++----
 docker/docker_instructions_ov2.0.md |  2 +-
 2 files changed, 7 insertions(+), 5 deletions(-)
diff --git a/docker/Dockerfile b/docker/Dockerfile
index 6f04c23d..b5ff38f0 100644
--- a/docker/Dockerfile
+++ b/docker/Dockerfile
@@ -55,15 +55,17 @@ requests \
 && apt-get install -y --no-install-recommends libboost-all-dev
 WORKDIR /usr/lib/x86_64-linux-gnu
 RUN ln -sf libboost_python-py36.so libboost_python37.so
+RUN pip install --upgrade pip
+RUN pip install openvino-dev[tensorflow2]==2022.1
 
 # build ros2 openvino toolkit
 WORKDIR /root
 RUN mkdir -p catkin_ws/src
 WORKDIR /root/catkin_ws/src
-RUN git clone https://github.com/intel/ros2_object_msgs.git 
-RUN git clone -b ros2 https://github.com/intel/ros2_openvino_toolkit.git 
-RUN git clone -b ${VERSION} https://github.com/ros-perception/vision_opencv.git
-RUN git clone -b ros2-development https://github.com/IntelRealSense/realsense-ros.git 
+RUN git init && git clone https://github.com/intel/ros2_object_msgs.git \
+&& git clone -b ros2 https://github.com/intel/ros2_openvino_toolkit.git \ 
+&& git clone -b ${VERSION} https://github.com/ros-perception/vision_opencv.git \
+&& git clone -b ros2-development https://github.com/IntelRealSense/realsense-ros.git 
 RUN apt-get install ros-${VERSION}-diagnostic-updater
 WORKDIR /root/catkin_ws
 RUN source /opt/ros/${VERSION}/setup.bash && source /opt/intel/openvino_2022/setupvars.sh && colcon build --cmake-args -DCMAKE_BUILD_TYPE=Release
diff --git a/docker/docker_instructions_ov2.0.md b/docker/docker_instructions_ov2.0.md
index 0fa45a92..1414da15 100644
--- a/docker/docker_instructions_ov2.0.md
+++ b/docker/docker_instructions_ov2.0.md
@@ -79,7 +79,7 @@ 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):
 ```
 cd ~/catkin_ws/src/ros2_openvino_toolkit/data/model_list
-omz_converter --list convert_model.lst -o /opt/openvino_toolkit/models/convert
+omz_converter --list convert_model.lst -d /opt/openvino_toolkit/models/ -o /opt/openvino_toolkit/models/convert
 ```
 * Copy label files (execute once)
 **Note**:Need to make label_dirs if skip steps for set output_dirs above.
From a974aa4c06723483f0a7003240cafecc48d61e84 Mon Sep 17 00:00:00 2001
From: wujiawei 
Date: Fri, 9 Dec 2022 16:18:41 +0800
Subject: [PATCH 02/28] refine to adapt humble
---
 dynamic_vino_lib/CMakeLists.txt                             | 6 +++---
 .../dynamic_vino_lib/models/attributes/base_attribute.hpp   | 1 +
 sample/CMakeLists.txt                                       | 6 +++---
 sample/src/pipeline_composite.cpp                           | 4 +++-
 tests/CMakeLists.txt                                        | 6 +++---
 vino_param_lib/CMakeLists.txt                               | 4 ++--
 6 files changed, 15 insertions(+), 12 deletions(-)
diff --git a/dynamic_vino_lib/CMakeLists.txt b/dynamic_vino_lib/CMakeLists.txt
index 6e893116..aec4c368 100644
--- a/dynamic_vino_lib/CMakeLists.txt
+++ b/dynamic_vino_lib/CMakeLists.txt
@@ -17,10 +17,10 @@ cmake_minimum_required(VERSION 3.5)
 project(dynamic_vino_lib)
 
 ####################################
-## to use C++14
-set(CMAKE_CXX_STANDARD 14)
+## to use C++17
+set(CMAKE_CXX_STANDARD 17)
 set(CMAKE_CXX_STANDARD_REQUIRED ON)
-set(CMAKE_CXX_FLAGS "-std=c++14 ${CMAKE_CXX_FLAGS}")
+set(CMAKE_CXX_FLAGS "-std=c++17 ${CMAKE_CXX_FLAGS}")
 ####################################
 
 ####################################
diff --git a/dynamic_vino_lib/include/dynamic_vino_lib/models/attributes/base_attribute.hpp b/dynamic_vino_lib/include/dynamic_vino_lib/models/attributes/base_attribute.hpp
index 90e6b187..b09b04bc 100644
--- a/dynamic_vino_lib/include/dynamic_vino_lib/models/attributes/base_attribute.hpp
+++ b/dynamic_vino_lib/include/dynamic_vino_lib/models/attributes/base_attribute.hpp
@@ -24,6 +24,7 @@
 #include 
 
@@ -85,7 +85,7 @@ See more from [here](https://github.com/openvinotoolkit/openvino) for Intel Open
 
 ROS Input & Output
 
-- **Diversal Input resources** are the data resources to be infered and analyzed with the OpenVINO framework.
+- **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.
  
 
@@ -94,12 +94,12 @@ See more from [here](https://github.com/openvinotoolkit/openvino) for Intel Open
 
 Optimized Models
 
-- **Optimized Models** provides 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.
  
 
 
 ## Logic Flow
-From the view of logic implementation, the package introduces the definitions of parameter manager, pipeline and pipeline manager. The below picture depicts how these entities co-work together when the corresponding program is launched.
+From the view of logic implementation, the package introduces the definitions of parameter manager, pipeline and pipeline manager. The following picture depicts how these entities co-work together when the corresponding program is launched.
 
 
 
@@ -125,7 +125,7 @@ The contents in **.yaml config file** should be well structured and follow the s
 
 # Supported Features
 ## Multiple Input Components
-Currently, the package support several kinds of input resources of gaining image data:
+Currently, the package supports several input resources for acquiring image data. The following tables are listed:
 
 
 
@@ -143,7 +143,7 @@ Currently, the package support several kinds of input resources of gaining image
  
 
 ## Inference Implementations
-Currently, the inference feature list is supported:
+Currently, the corresponding relation of supported inference features, models used and yaml configurations are listed as follows:
 
 
 
@@ -206,16 +206,17 @@ Several ROS2 Services are created, expecting to be used in client/server mode, e
  
 
 ### RViz
-RViz dispaly is also supported by the composited topic of original image frame with inference result.
+RViz display is also supported by the composited topic of original image frame with inference result.
 To show in RViz tool, add an image marker with the composited topic:
 ```/ros2_openvino_toolkit/image_rviz```([sensor_msgs::Image](https://docs.ros.org/en/api/sensor_msgs/html/msg/Image.html))
 
 ### Image Window
 OpenCV based image window is natively supported by the package.
-To enable window, Image Window output should be added into the output choices in .yaml config file. see [the config file guidance](./doc/quick_start/yaml_configuration_guide.md) for checking/adding this feature in your launching.
+To enable window, Image Window output should be added into the output choices in .yaml config file. Refer to [the config file guidance](./doc/quick_start/yaml_configuration_guide.md) for more information about checking/adding this feature in your launching.
 
 ## Demo Result Snapshots
-See below pictures for the demo result snapshots.
+For the snapshot of demo results, refer to the following picture.
+
 * Face detection input from standard camera
 
 
@@ -225,15 +226,15 @@ See below pictures for the demo result snapshots.
 * Object segmentation input from video
 
 
-* Person Reidentification input from standard camera
+* Person reidentification input from standard camera
 
 
 # Installation and Launching
-## Deploy in local environment
+## 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 [yaml configuration guidance](./doc/quick_start/yaml_configuration_guide.md) for detailed configuration guidance.
 
-## Deploy in docker
+## Deploy in Docker
 * Refer to the docker instruction for [docker_instructions](./docker/docker_instructions_ov2.0.md) for detailed information about building docker image and launching.
 * Refer to the quick start document for [yaml configuration guidance](./doc/quick_start/yaml_configuration_guide.md) for detailed configuration guidance.
 
@@ -251,7 +252,7 @@ See below pictures for the demo result snapshots.
 * Report questions, issues and suggestions, using: [issue](https://github.com/intel/ros2_openvino_toolkit/issues).
 
 # More Information
-* ROS2 OpenVINO discription writen in Chinese: https://mp.weixin.qq.com/s/BgG3RGauv5pmHzV_hkVAdw 
+* ROS2 OpenVINO discription written in Chinese: https://mp.weixin.qq.com/s/BgG3RGauv5pmHzV_hkVAdw 
 
 ###### *Any security issue should be reported using process at https://01.org/security*
 
From 6fd65cf98b3cd72dc53dd1dd3ac4273d9af06ff7 Mon Sep 17 00:00:00 2001
From: wujiawei 
Date: Wed, 21 Dec 2022 10:49:44 +0800
Subject: [PATCH 25/28] add prerequisite table and fix links
---
 README.md | 54 ++++++++++++++++++++++++++++--------------------------
 1 file changed, 28 insertions(+), 26 deletions(-)
diff --git a/README.md b/README.md
index 8020fa4c..aee1a1df 100644
--- a/README.md
+++ b/README.md
@@ -28,12 +28,12 @@
 * [x] ROS2 Foxy
 * [x] ROS2 Humble
 
-|Branch Name|ROS2 Version Supported|Openvino Version|Corresponding Branch Link|OS Version|
-|-----------------------|-----------------------|--------------------------------|----------------------|----------------------|
-|dashing|Dashing|V2022.1, V2022.2|[dashing branch](https://github.com/intel/ros2_openvino_toolkit/tree/dashing)|Ubuntu 18.04|
-|ros2|Galactic, Foxy, Humble|V2022.1, V2022.2|[ros2 branch](https://github.com/intel/ros2_openvino_toolkit/tree/ros2)|Ubuntu 20.04, Ubuntu 22.04|
-|foxy|Foxy|V2021.4|[foxy branch](https://github.com/intel/ros2_openvino_toolkit/tree/foxy)|Ubuntu 20.04|
-|galactic-ov2021.4|Galactic|V2021.4|[galactic-ov2021.4 branch](https://github.com/intel/ros2_openvino_toolkit/tree/galactic-ov2021.4)|Ubuntu 20.04|
+|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|Ubuntu 20.04, Ubuntu 22.04|
+|[dashing](https://github.com/intel/ros2_openvino_toolkit/tree/dashing)|Dashing|V2022.1, V2022.2|Ubuntu 18.04|
+|[foxy-ov2021.4](https://github.com/intel/ros2_openvino_toolkit/tree/foxy)|Foxy|V2021.4|Ubuntu 20.04|
+|[galactic-ov2021.4](https://github.com/intel/ros2_openvino_toolkit/tree/galactic-ov2021.4)|Galactic|V2021.4|Ubuntu 20.04|
 
 ## Inference Features Supported
 * [x] Object Detection
@@ -46,14 +46,15 @@
 * [x] Vehicle Attribute Detection
 * [x] Vehicle License Plate Detection
 
-# Prerequisite for ros2 Branch
-* Processor: A platform with Intel processors assembled. (Refer to [here](https://software.intel.com/content/www/us/en/develop/articles/openvino-2020-3-lts-relnotes.html) for the full list of Intel processors supported.)
-* OS: Ubuntu 20.04, Ubuntu 22.04
-* ROS2: Foxy, Galactic, Humble
-* OpenVINO: V2022.1, V2022.2
-* Python: 3.6, 3.7, 3.8, 3.9
-* [Optional] RealSense D400 Series Camera
-* [Optional] Intel NCS2 Stick
+# Prerequisite
+
+|Prerequisite|Mandatory?|Description|
+|-----------------------|-----------------------|--------------------------------|
+|**Processor**|Mandatory|A platform with Intel processors assembled. (Refer to [here](https://software.intel.com/content/www/us/en/develop/articles/openvino-2020-3-lts-relnotes.html) for the full list of Intel processors supported.)|
+|**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 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 man find the corresponding branch from the table above in section 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".|
+|**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
@@ -135,7 +136,7 @@ Currently, the package supports several input resources for acquiring image data
 |--------------------|------------------------------------------------------------------|
 |StandardCamera|Any RGB camera with USB port supporting. Currently only the first USB camera if many are connected.|
 |RealSenseCamera| Intel RealSense RGB-D Camera, directly calling RealSense Camera via librealsense plugin of openCV.|
-|RealSenseCameraTopic| Any ROS topic which is structured in image message.|
+|ImageTopic| Any ROS topic which is structured in image message.|
 |Image| Any image file which can be parsed by openCV, such as .png, .jpeg.|
 |Video| Any video file which can be parsed by openCV.|
 |IpCamera| Any RTSP server which can push video stream.|
@@ -151,16 +152,16 @@ Currently, the corresponding relation of supported inference features, models us
 
 |Inference|Description|YAML Configuration|Model Used|
 |-----------------------|------------------------------------------------------------------|----------------------|----------------------|
-|Face Detection| Object Detection task applied to face recognition using a sequence of neural networks.|[pipeline_image.yaml](./sample/param/pipeline_image.yaml)
[pipeline_image_video.yaml](./sample/param/pipeline_image_video.yaml)
[pipeline_people.yaml](./sample/param/pipeline_people.yaml)
[pipeline_people_ip.yaml](./sample/param/pipeline_people_ip.yaml)|[face-detection-adas-0001](https://github.com/openvinotoolkit/open_model_zoo/tree/master/models/intel/face-detection-adas-0001)
[age-gender-recognition-retail-0013](https://github.com/openvinotoolkit/open_model_zoo/tree/master/models/intel/age-gender-recognition-retail-0013)
[emotions-recognition-retail-0003](https://github.com/openvinotoolkit/open_model_zoo/tree/master/models/intel/emotions-recognition-retail-0003)
[head-pose-estimation-adas-0001](https://github.com/openvinotoolkit/open_model_zoo/tree/master/models/intel/head-pose-estimation-adas-0001)|
-|Emotion Recognition| Emotion recognition based on detected face image.|[pipeline_image.yaml](./sample/param/pipeline_image.yaml)
[pipeline_image_video.yaml](./sample/param/pipeline_image_video.yaml)
[pipeline_people.yaml](./sample/param/pipeline_people.yaml)
[pipeline_people_ip.yaml](./sample/param/pipeline_people_ip.yaml)|[emotions-recognition-retail-0003](https://github.com/openvinotoolkit/open_model_zoo/tree/master/models/intel/emotions-recognition-retail-0003)|
-|Age & Gender Recognition| Age and gender recognition based on detected face image.|[pipeline_image.yaml](./sample/param/pipeline_image.yaml)
[pipeline_image_video.yaml](./sample/param/pipeline_image_video.yaml)
[pipeline_people.yaml](./sample/param/pipeline_people.yaml)
[pipeline_people_ip.yaml](./sample/param/pipeline_people_ip.yaml)|[age-gender-recognition-retail-0013](https://github.com/openvinotoolkit/open_model_zoo/tree/master/models/intel/age-gender-recognition-retail-0013)|
-|Head Pose Estimation| Head pose estimation based on detected face image.|[pipeline_image.yaml](./sample/param/pipeline_image.yaml)
[pipeline_image_video.yaml](./sample/param/pipeline_image_video.yaml)
[pipeline_people.yaml](./sample/param/pipeline_people.yaml)
[pipeline_people_ip.yaml](./sample/param/pipeline_people_ip.yaml)|[head-pose-estimation-adas-0001](https://github.com/openvinotoolkit/open_model_zoo/tree/master/models/intel/head-pose-estimation-adas-0001)|
-|Object Detection| Object detection based on SSD-based trained models.|[pipeline_object.yaml](./sample/param/pipeline_object.yaml)
[pipeline_object_topic.yaml](./sample/param/pipeline_object_topic.yaml)|[mobilenet-ssd](https://github.com/openvinotoolkit/open_model_zoo/tree/master/models/public/mobilenet-ssd)|
-|Vehicle and License Detection| Vehicle and license detection based on Intel models.|[pipeline_vehicle_detection.yaml](./sample/param/pipeline_vehicle_detection.yaml)|[vehicle-license-plate-detection-barrier-0106](https://github.com/openvinotoolkit/open_model_zoo/tree/master/models/intel/vehicle-license-plate-detection-barrier-0106)
[vehicle-attributes-recognition-barrier-0039](https://github.com/openvinotoolkit/open_model_zoo/tree/master/models/intel/vehicle-attributes-recognition-barrier-0039)
[license-plate-recognition-barrier-0001](https://github.com/openvinotoolkit/open_model_zoo/tree/master/models/intel/license-plate-recognition-barrier-0001)|
-|Object Segmentation| Object segmentation.|[pipeline_segmentation.yaml](./sample/param/pipeline_segmentation.yaml)
[pipeline_segmentation_image.yaml](./sample/param/pipeline_segmentation_image.yaml)
[pipeline_video.yaml](./sample/param/pipeline_video.yaml)|[semantic-segmentation-adas-0001](https://github.com/openvinotoolkit/open_model_zoo/tree/master/models/intel/semantic-segmentation-adas-0001)
[deeplabv3](https://github.com/openvinotoolkit/open_model_zoo/tree/master/models/public/deeplabv3)|
-|Person Attributes| Person attributes based on object detection.|[pipeline_person_attributes.yaml](./sample/param/pipeline_person_attributes.yaml)|[person-attributes-recognition-crossroad-0230](https://github.com/openvinotoolkit/open_model_zoo/tree/master/models/intel/person-attributes-recognition-crossroad-0230)
[person-detection-retail-0013](https://github.com/openvinotoolkit/open_model_zoo/tree/master/models/intel/person-detection-retail-0013)|
-|Person Reidentification|Person reidentification based on object detection.|[pipeline_person_reidentification.yaml](./sample/param/pipeline_reidentification.yaml)|[person-detection-retail-0013](https://github.com/openvinotoolkit/open_model_zoo/tree/master/models/intel/person-detection-retail-0013)
[person-reidentification-retail-0277](https://github.com/openvinotoolkit/open_model_zoo/tree/master/models/intel/person-reidentification-retail-0277)|
-|Object Segmentation Maskrcnn| Object segmentation based on maskrcnn model.|[pipeline_segmentation_maskrcnn.yaml](./sample/param/pipeline_segmentation_maskrcnn.yaml)|[mask_rcnn_inception_v2_coco_2018_01_28](https://github.com/openvinotoolkit/open_model_zoo/tree/master/models/public/mask_rcnn_inception_resnet_v2_atrous_coco)|
+|Face Detection| Object Detection task applied to face recognition using a sequence of neural networks.|[pipeline_image.yaml](./sample/param/pipeline_image.yaml)
[pipeline_image_video.yaml](./sample/param/pipeline_image_video.yaml)
[pipeline_people.yaml](./sample/param/pipeline_people.yaml)
[pipeline_people_ip.yaml](./sample/param/pipeline_people_ip.yaml)|[face-detection-adas-0001](https://github.com/openvinotoolkit/open_model_zoo/tree/releases/2022/1/models/intel/face-detection-adas-0001)
[age-gender-recognition-retail-0013](https://github.com/openvinotoolkit/open_model_zoo/tree/releases/2022/1/models/intel/age-gender-recognition-retail-0013)
[emotions-recognition-retail-0003](https://github.com/openvinotoolkit/open_model_zoo/tree/releases/2022/1/models/intel/emotions-recognition-retail-0003)
[head-pose-estimation-adas-0001](https://github.com/openvinotoolkit/open_model_zoo/tree/releases/2022/1/models/intel/head-pose-estimation-adas-0001)|
+|Emotion Recognition| Emotion recognition based on detected face image.|[pipeline_image.yaml](./sample/param/pipeline_image.yaml)
[pipeline_image_video.yaml](./sample/param/pipeline_image_video.yaml)
[pipeline_people.yaml](./sample/param/pipeline_people.yaml)
[pipeline_people_ip.yaml](./sample/param/pipeline_people_ip.yaml)|[emotions-recognition-retail-0003](https://github.com/openvinotoolkit/open_model_zoo/tree/releases/2022/1/models/intel/emotions-recognition-retail-0003)|
+|Age & Gender Recognition| Age and gender recognition based on detected face image.|[pipeline_image.yaml](./sample/param/pipeline_image.yaml)
[pipeline_image_video.yaml](./sample/param/pipeline_image_video.yaml)
[pipeline_people.yaml](./sample/param/pipeline_people.yaml)
[pipeline_people_ip.yaml](./sample/param/pipeline_people_ip.yaml)|[age-gender-recognition-retail-0013](https://github.com/openvinotoolkit/open_model_zoo/tree/releases/2022/1/models/intel/age-gender-recognition-retail-0013)|
+|Head Pose Estimation| Head pose estimation based on detected face image.|[pipeline_image.yaml](./sample/param/pipeline_image.yaml)
[pipeline_image_video.yaml](./sample/param/pipeline_image_video.yaml)
[pipeline_people.yaml](./sample/param/pipeline_people.yaml)
[pipeline_people_ip.yaml](./sample/param/pipeline_people_ip.yaml)|[head-pose-estimation-adas-0001](https://github.com/openvinotoolkit/open_model_zoo/tree/releases/2022/1/models/intel/head-pose-estimation-adas-0001)|
+|Object Detection| Object detection based on SSD-based trained models.|[pipeline_object.yaml](./sample/param/pipeline_object.yaml)
[pipeline_object_topic.yaml](./sample/param/pipeline_object_topic.yaml)|[mobilenet-ssd](https://github.com/openvinotoolkit/open_model_zoo/tree/releases/2022/1/models/public/mobilenet-ssd)|
+|Vehicle and License Detection| Vehicle and license detection based on Intel models.|[pipeline_vehicle_detection.yaml](./sample/param/pipeline_vehicle_detection.yaml)|[vehicle-license-plate-detection-barrier-0106](https://github.com/openvinotoolkit/open_model_zoo/tree/releases/2022/1/models/intel/vehicle-license-plate-detection-barrier-0106)
[vehicle-attributes-recognition-barrier-0039](https://github.com/openvinotoolkit/open_model_zoo/tree/releases/2022/1/models/intel/vehicle-attributes-recognition-barrier-0039)
[license-plate-recognition-barrier-0001](https://github.com/openvinotoolkit/open_model_zoo/tree/releases/2022/1/models/intel/license-plate-recognition-barrier-0001)|
+|Object Segmentation| Object segmentation.|[pipeline_segmentation.yaml](./sample/param/pipeline_segmentation.yaml)
[pipeline_segmentation_image.yaml](./sample/param/pipeline_segmentation_image.yaml)
[pipeline_video.yaml](./sample/param/pipeline_video.yaml)|[semantic-segmentation-adas-0001](https://github.com/openvinotoolkit/open_model_zoo/tree/releases/2022/1/models/intel/semantic-segmentation-adas-0001)
[deeplabv3](https://github.com/openvinotoolkit/open_model_zoo/tree/releases/2022/1/models/public/deeplabv3)|
+|Person Attributes| Person attributes based on object detection.|[pipeline_person_attributes.yaml](./sample/param/pipeline_person_attributes.yaml)|[person-attributes-recognition-crossroad-0230](https://github.com/openvinotoolkit/open_model_zoo/tree/releases/2022/1/models/intel/person-attributes-recognition-crossroad-0230)
[person-detection-retail-0013](https://github.com/openvinotoolkit/open_model_zoo/tree/releases/2022/1/models/intel/person-detection-retail-0013)|
+|Person Reidentification|Person reidentification based on object detection.|[pipeline_person_reidentification.yaml](./sample/param/pipeline_reidentification.yaml)|[person-detection-retail-0013](https://github.com/openvinotoolkit/open_model_zoo/tree/releases/2022/1/models/intel/person-detection-retail-0013)
[person-reidentification-retail-0277](https://github.com/openvinotoolkit/open_model_zoo/tree/releases/2022/1/models/intel/person-reidentification-retail-0277)|
+|Object Segmentation Maskrcnn| Object segmentation and detection based on maskrcnn model.|[pipeline_segmentation_maskrcnn.yaml](./sample/param/pipeline_segmentation_maskrcnn.yaml)|[mask_rcnn_inception_v2_coco_2018_01_28](https://github.com/openvinotoolkit/open_model_zoo/tree/releases/2022/1/models/public/mask_rcnn_inception_resnet_v2_atrous_coco)|
 
 
 
@@ -181,6 +182,7 @@ Specific topic(s) can be generated and published according to the given inferenc
 |Head Pose Estimation|```/ros2_openvino_toolkit/headposes_estimation```([people_msgs:msg:HeadPoseStamped](../../../people_msgs/msg/HeadPoseStamped.msg))|
 |Object Detection|```/ros2_openvino_toolkit/detected_objects```([object_msgs::msg::ObjectsInBoxes](https://github.com/intel/ros2_object_msgs/blob/master/msg/ObjectsInBoxes.msg))|
 |Object Segmentation|```/ros2_openvino_toolkit/segmented_obejcts```([people_msgs::msg::ObjectsInMasks](../../../people_msgs/msg/ObjectsInMasks.msg))|
+|Object Segmentation Maskrcnn|```/ros2_openvino_toolkit/segmented_obejcts```([people_msgs::msg::ObjectsInMasks](../../../people_msgs/msg/ObjectsInMasks.msg))|
 |Person Reidentification|```/ros2_openvino_toolkit/reidentified_persons```([people_msgs::msg::ReidentificationStamped](../../../people_msgs/msg/ReidentificationStamped.msg))|
 |Face Reidenfication|```/ros2_openvino_toolkit/reidentified_faces```([people_msgs::msg::ReidentificationStamped](../../../people_msgs/msg/ReidentificationStamped.msg))|
 |Vehicle Detection|```/ros2_openvino_toolkit/detected_license_plates```([people_msgs::msg::VehicleAttribsStamped](../../../people_msgs/msg/PersonAttributeStamped.msg))|
@@ -239,7 +241,7 @@ For the snapshot of demo results, refer to the following picture.
 * Refer to the quick start document for [yaml configuration guidance](./doc/quick_start/yaml_configuration_guide.md) for detailed configuration guidance.
 
 # Reference
-* Open_model_zoo: Refer to the OpenVINO document for [open_model_zoo](https://github.com/openvinotoolkit/open_model_zoo/tree/master) for detailed model structure and demo samples.
+* Open_model_zoo: Refer to the OpenVINO document for [open_model_zoo](https://github.com/openvinotoolkit/open_model_zoo/tree/releases/2022/1) for detailed model structure and demo samples.
 * OpenVINO api 2.0: Refer to the OpenVINO document for [OpenVINO_api_2.0](https://docs.openvino.ai/latest/openvino_2_0_transition_guide.html) for latest api 2.0 transition guide.
 
 # FAQ
From 3c4c3a5d4b9b655a6ade362d9a1f87134184cd0c Mon Sep 17 00:00:00 2001
From: wujiawei 
Date: Wed, 21 Dec 2022 13:10:38 +0800
Subject: [PATCH 26/28] fix for topic table
---
 README.md | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/README.md b/README.md
index aee1a1df..e107d1f7 100644
--- a/README.md
+++ b/README.md
@@ -185,7 +185,7 @@ Specific topic(s) can be generated and published according to the given inferenc
 |Object Segmentation Maskrcnn|```/ros2_openvino_toolkit/segmented_obejcts```([people_msgs::msg::ObjectsInMasks](../../../people_msgs/msg/ObjectsInMasks.msg))|
 |Person Reidentification|```/ros2_openvino_toolkit/reidentified_persons```([people_msgs::msg::ReidentificationStamped](../../../people_msgs/msg/ReidentificationStamped.msg))|
 |Face Reidenfication|```/ros2_openvino_toolkit/reidentified_faces```([people_msgs::msg::ReidentificationStamped](../../../people_msgs/msg/ReidentificationStamped.msg))|
-|Vehicle Detection|```/ros2_openvino_toolkit/detected_license_plates```([people_msgs::msg::VehicleAttribsStamped](../../../people_msgs/msg/PersonAttributeStamped.msg))|
+|Vehicle Detection|```/ros2_openvino_toolkit/detected_vehicles_attribs```([people_msgs::msg::VehicleAttribsStamped](../../../people_msgs/msg/PersonAttributeStamped.msg))|
 |Vehicle License Detection|```/ros2_openvino_toolkit/detected_license_plates```([people_msgs::msg::LicensePlateStamped](../../../people_msgs/msg/LicensePlateStamped.msg))|
 
 
From a9bbe5a0855b38038b76d5a8e478a581bf3d9aaf Mon Sep 17 00:00:00 2001
From: wujiawei 
Date: Wed, 21 Dec 2022 13:18:20 +0800
Subject: [PATCH 27/28] fix typo
---
 README.md | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/README.md b/README.md
index e107d1f7..89a96c9d 100644
--- a/README.md
+++ b/README.md
@@ -51,9 +51,9 @@
 |Prerequisite|Mandatory?|Description|
 |-----------------------|-----------------------|--------------------------------|
 |**Processor**|Mandatory|A platform with Intel processors assembled. (Refer to [here](https://software.intel.com/content/www/us/en/develop/articles/openvino-2020-3-lts-relnotes.html) for the full list of Intel processors supported.)|
-|**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 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 man find the corresponding branch from the table above in section 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".|
+|**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**.|
+|**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**.|
 |**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
From f3967a468bf40d8fca2f090aeec4f90fc969e45e Mon Sep 17 00:00:00 2001
From: wujiawei 
Date: Wed, 21 Dec 2022 13:20:39 +0800
Subject: [PATCH 28/28] add link
---
 README.md | 8 ++------
 1 file changed, 2 insertions(+), 6 deletions(-)
diff --git a/README.md b/README.md
index 89a96c9d..c163b5d8 100644
--- a/README.md
+++ b/README.md
@@ -23,10 +23,6 @@
 
 # Overview
 ## ROS2 Version Supported
-* [x] ROS2 Dashing
-* [x] ROS2 Galactic
-* [x] ROS2 Foxy
-* [x] ROS2 Humble
 
 |Branch Name|ROS2 Version Supported|Openvino Version|OS Version|
 |-----------------------|-----------------------|--------------------------------|----------------------|
@@ -52,8 +48,8 @@
 |-----------------------|-----------------------|--------------------------------|
 |**Processor**|Mandatory|A platform with Intel processors assembled. (Refer to [here](https://software.intel.com/content/www/us/en/develop/articles/openvino-2020-3-lts-relnotes.html) for the full list of Intel processors supported.)|
 |**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**.|
-|**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**|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.|
 
 # Introduction