diff --git a/examples/vision/segmentation/ppmatting/README.md b/examples/vision/segmentation/ppmatting/README.md
new file mode 100644
index 000000000..a2cbdc346
--- /dev/null
+++ b/examples/vision/segmentation/ppmatting/README.md
@@ -0,0 +1,42 @@
+English | [简体中文](README_CN.md)
+# PP-Matting Model Deployment
+
+## Model Description
+
+- [PP-Matting Release/2.6](https://github.com/PaddlePaddle/PaddleSeg/tree/release/2.6/Matting)
+
+## List of Supported Models
+
+Now FastDeploy supports the deployment of the following models
+
+- [PP-Matting models](https://github.com/PaddlePaddle/PaddleSeg/tree/release/2.6/Matting)
+- [PP-HumanMatting models](https://github.com/PaddlePaddle/PaddleSeg/tree/release/2.6/Matting)
+- [ModNet models](https://github.com/PaddlePaddle/PaddleSeg/tree/release/2.6/Matting)
+
+
+## Export Deployment Model
+
+Before deployment, PP-Matting needs to be exported into the deployment model. Refer to [Export Model](https://github.com/PaddlePaddle/PaddleSeg/tree/release/2.6/Matting) for more information. (Tips: You need to set the `--input_shape` parameter of the export script when exporting PP-Matting and PP-HumanMatting models)
+
+
+## Download Pre-trained Models
+
+For developers' testing, models exported by PP-Matting are provided below. Developers can download and use them directly.
+
+The accuracy metric is sourced from the model description in PP-Matting. (Accuracy data are not provided) Refer to the introduction in PP-Matting for more details.
+
+| Model | Parameter Size | Accuracy | Note |
+|:---------------------------------------------------------------- |:----- |:----- | :------ |
+| [PP-Matting-512](https://bj.bcebos.com/paddlehub/fastdeploy/PP-Matting-512.tgz) | 106MB | - |
+| [PP-Matting-1024](https://bj.bcebos.com/paddlehub/fastdeploy/PP-Matting-1024.tgz) | 106MB | - |
+| [PP-HumanMatting](https://bj.bcebos.com/paddlehub/fastdeploy/PPHumanMatting.tgz) | 247MB | - |
+| [Modnet-ResNet50_vd](https://bj.bcebos.com/paddlehub/fastdeploy/PPModnet_ResNet50_vd.tgz) | 355MB | - |
+| [Modnet-MobileNetV2](https://bj.bcebos.com/paddlehub/fastdeploy/PPModnet_MobileNetV2.tgz) | 28MB | - |
+| [Modnet-HRNet_w18](https://bj.bcebos.com/paddlehub/fastdeploy/PPModnet_HRNet_w18.tgz) | 51MB | - |
+
+
+
+## Detailed Deployment Tutorials
+
+- [Python Deployment](python)
+- [C++ Deployment](cpp)
diff --git a/examples/vision/segmentation/ppmatting/README_CN.md b/examples/vision/segmentation/ppmatting/README_CN.md
new file mode 100644
index 000000000..a1c9801aa
--- /dev/null
+++ b/examples/vision/segmentation/ppmatting/README_CN.md
@@ -0,0 +1,43 @@
+[English](README.md) | 简体中文
+# PP-Matting模型部署
+
+## 模型版本说明
+
+- [PP-Matting Release/2.6](https://github.com/PaddlePaddle/PaddleSeg/tree/release/2.6/Matting)
+
+## 支持模型列表
+
+目前FastDeploy支持如下模型的部署
+
+- [PP-Matting系列模型](https://github.com/PaddlePaddle/PaddleSeg/tree/release/2.6/Matting)
+- [PP-HumanMatting系列模型](https://github.com/PaddlePaddle/PaddleSeg/tree/release/2.6/Matting)
+- [ModNet系列模型](https://github.com/PaddlePaddle/PaddleSeg/tree/release/2.6/Matting)
+
+
+## 导出部署模型
+
+在部署前,需要先将PP-Matting导出成部署模型,导出步骤参考文档[导出模型](https://github.com/PaddlePaddle/PaddleSeg/tree/release/2.6/Matting)(Tips:导出PP-Matting系列模型和PP-HumanMatting系列模型需要设置导出脚本的`--input_shape`参数)
+
+
+## 下载预训练模型
+
+为了方便开发者的测试,下面提供了PP-Matting导出的各系列模型,开发者可直接下载使用。
+
+其中精度指标来源于PP-Matting中对各模型的介绍(未提供精度数据),详情各参考PP-Matting中的说明。
+
+
+| 模型 | 参数大小 | 精度 | 备注 |
+|:---------------------------------------------------------------- |:----- |:----- | :------ |
+| [PP-Matting-512](https://bj.bcebos.com/paddlehub/fastdeploy/PP-Matting-512.tgz) | 106MB | - |
+| [PP-Matting-1024](https://bj.bcebos.com/paddlehub/fastdeploy/PP-Matting-1024.tgz) | 106MB | - |
+| [PP-HumanMatting](https://bj.bcebos.com/paddlehub/fastdeploy/PPHumanMatting.tgz) | 247MB | - |
+| [Modnet-ResNet50_vd](https://bj.bcebos.com/paddlehub/fastdeploy/PPModnet_ResNet50_vd.tgz) | 355MB | - |
+| [Modnet-MobileNetV2](https://bj.bcebos.com/paddlehub/fastdeploy/PPModnet_MobileNetV2.tgz) | 28MB | - |
+| [Modnet-HRNet_w18](https://bj.bcebos.com/paddlehub/fastdeploy/PPModnet_HRNet_w18.tgz) | 51MB | - |
+
+
+
+## 详细部署文档
+
+- [Python部署](python)
+- [C++部署](cpp)
diff --git a/examples/vision/segmentation/ppmatting/cpp/CMakeLists.txt b/examples/vision/segmentation/ppmatting/cpp/CMakeLists.txt
new file mode 100644
index 000000000..93540a7e8
--- /dev/null
+++ b/examples/vision/segmentation/ppmatting/cpp/CMakeLists.txt
@@ -0,0 +1,14 @@
+PROJECT(infer_demo C CXX)
+CMAKE_MINIMUM_REQUIRED (VERSION 3.10)
+
+# 指定下载解压后的fastdeploy库路径
+option(FASTDEPLOY_INSTALL_DIR "Path of downloaded fastdeploy sdk.")
+
+include(${FASTDEPLOY_INSTALL_DIR}/FastDeploy.cmake)
+
+# 添加FastDeploy依赖头文件
+include_directories(${FASTDEPLOY_INCS})
+
+add_executable(infer_demo ${PROJECT_SOURCE_DIR}/infer.cc)
+# 添加FastDeploy库依赖
+target_link_libraries(infer_demo ${FASTDEPLOY_LIBS})
diff --git a/examples/vision/segmentation/ppmatting/cpp/README.md b/examples/vision/segmentation/ppmatting/cpp/README.md
new file mode 100755
index 000000000..f678fabd4
--- /dev/null
+++ b/examples/vision/segmentation/ppmatting/cpp/README.md
@@ -0,0 +1,93 @@
+English | [简体中文](README_CN.md)
+# PP-Matting C++ Deployment Example
+
+This directory provides examples that `infer.cc` fast finishes the deployment of PP-Matting on CPU/GPU and GPU accelerated by TensorRT.
+Before deployment, two steps require confirmation
+
+- 1. Software and hardware should meet the requirements. Please refer to [FastDeploy Environment Requirements](../../../../../docs/en/build_and_install/download_prebuilt_libraries.md)
+- 2. Download the precompiled deployment library and samples code according to your development environment. Refer to [FastDeploy Precompiled Library](../../../../../docs/en/build_and_install/download_prebuilt_libraries.md)
+
+Taking the PP-Matting inference on Linux as an example, the compilation test can be completed by executing the following command in this directory. FastDeploy version 0.7.0 or above (x.x.x>=0.7.0) is required to support this model.
+
+```bash
+mkdir build
+cd build
+# Download the FastDeploy precompiled library. Users can choose your appropriate version in the `FastDeploy Precompiled Library` mentioned above
+wget https://bj.bcebos.com/fastdeploy/release/cpp/fastdeploy-linux-x64-x.x.x.tgz
+tar xvf fastdeploy-linux-x64-x.x.x.tgz
+cmake .. -DFASTDEPLOY_INSTALL_DIR=${PWD}/fastdeploy-linux-x64-x.x.x
+make -j
+
+# Download PP-Matting model files and test images
+wget https://bj.bcebos.com/paddlehub/fastdeploy/PP-Matting-512.tgz
+tar -xvf PP-Matting-512.tgz
+wget https://bj.bcebos.com/paddlehub/fastdeploy/matting_input.jpg
+wget https://bj.bcebos.com/paddlehub/fastdeploy/matting_bgr.jpg
+
+
+# CPU inference
+./infer_demo PP-Matting-512 matting_input.jpg matting_bgr.jpg 0
+# GPU inference
+./infer_demo PP-Matting-512 matting_input.jpg matting_bgr.jpg 1
+# TensorRT inference on GPU
+./infer_demo PP-Matting-512 matting_input.jpg matting_bgr.jpg 2
+# kunlunxin XPU inference
+./infer_demo PP-Matting-512 matting_input.jpg matting_bgr.jpg 3
+```
+
+The visualized result after running is as follows
+
+
+The above command works for Linux or MacOS. For SDK use-pattern in Windows, refer to:
+- [How to use FastDeploy C++ SDK in Windows](../../../../../docs/en/faq/use_sdk_on_windows.md)
+
+## PP-Matting C++ Interface
+
+### PPMatting Class
+
+```c++
+fastdeploy::vision::matting::PPMatting(
+ const string& model_file,
+ const string& params_file = "",
+ const string& config_file,
+ const RuntimeOption& runtime_option = RuntimeOption(),
+ const ModelFormat& model_format = ModelFormat::PADDLE)
+```
+
+PP-Matting model loading and initialization, among which model_file is the exported Paddle model format.
+
+**Parameter**
+
+> * **model_file**(str): Model file path
+> * **params_file**(str): Parameter file path
+> * **config_file**(str): Inference deployment configuration file
+> * **runtime_option**(RuntimeOption): Backend inference configuration. None by default, which is the default configuration
+> * **model_format**(ModelFormat): Model format. Paddle format by default
+
+#### Predict Function
+
+> ```c++
+> PPMatting::Predict(cv::Mat* im, MattingResult* result)
+> ```
+>
+> Model prediction interface. Input images and output detection results.
+>
+> **Parameter**
+>
+> > * **im**: Input images in HWC or BGR format
+> > * **result**: The segmentation result, including the predicted label of the segmentation and the corresponding probability of the label. Refer to [Vision Model Prediction Results](../../../../../docs/api/vision_results/) for the description of SegmentationResult
+
+### Class Member Variable
+#### Pre-processing Parameter
+Users can modify the following pre-processing parameters to their needs, which affects the final inference and deployment results
+
+
+- [Model Description](../../)
+- [Python Deployment](../python)
+- [Vision Model Prediction Results](../../../../../docs/api/vision_results/)
+- [How to switch the model inference backend engine](../../../../../docs/en/faq/how_to_change_backend.md)
diff --git a/examples/vision/segmentation/ppmatting/cpp/README_CN.md b/examples/vision/segmentation/ppmatting/cpp/README_CN.md
new file mode 100644
index 000000000..38e2e592a
--- /dev/null
+++ b/examples/vision/segmentation/ppmatting/cpp/README_CN.md
@@ -0,0 +1,94 @@
+[English](README.md) | 简体中文
+# PP-Matting C++部署示例
+
+本目录下提供`infer.cc`快速完成PP-Matting在CPU/GPU,以及GPU上通过TensorRT加速部署的示例。
+
+在部署前,需确认以下两个步骤
+
+- 1. 软硬件环境满足要求,参考[FastDeploy环境要求](../../../../../docs/cn/build_and_install/download_prebuilt_libraries.md)
+- 2. 根据开发环境,下载预编译部署库和samples代码,参考[FastDeploy预编译库](../../../../../docs/cn/build_and_install/download_prebuilt_libraries.md)
+
+以Linux上 PP-Matting 推理为例,在本目录执行如下命令即可完成编译测试,支持此模型需保证FastDeploy版本0.7.0以上(x.x.x>=0.7.0)
+
+```bash
+mkdir build
+cd build
+# 下载FastDeploy预编译库,用户可在上文提到的`FastDeploy预编译库`中自行选择合适的版本使用
+wget https://bj.bcebos.com/fastdeploy/release/cpp/fastdeploy-linux-x64-x.x.x.tgz
+tar xvf fastdeploy-linux-x64-x.x.x.tgz
+cmake .. -DFASTDEPLOY_INSTALL_DIR=${PWD}/fastdeploy-linux-x64-x.x.x
+make -j
+
+# 下载PP-Matting模型文件和测试图片
+wget https://bj.bcebos.com/paddlehub/fastdeploy/PP-Matting-512.tgz
+tar -xvf PP-Matting-512.tgz
+wget https://bj.bcebos.com/paddlehub/fastdeploy/matting_input.jpg
+wget https://bj.bcebos.com/paddlehub/fastdeploy/matting_bgr.jpg
+
+
+# CPU推理
+./infer_demo PP-Matting-512 matting_input.jpg matting_bgr.jpg 0
+# GPU推理
+./infer_demo PP-Matting-512 matting_input.jpg matting_bgr.jpg 1
+# GPU上TensorRT推理
+./infer_demo PP-Matting-512 matting_input.jpg matting_bgr.jpg 2
+# 昆仑芯XPU推理
+./infer_demo PP-Matting-512 matting_input.jpg matting_bgr.jpg 3
+```
+
+运行完成可视化结果如下图所示
+
+
+以上命令只适用于Linux或MacOS, Windows下SDK的使用方式请参考:
+- [如何在Windows中使用FastDeploy C++ SDK](../../../../../docs/cn/faq/use_sdk_on_windows.md)
+
+## PP-Matting C++接口
+
+### PPMatting类
+
+```c++
+fastdeploy::vision::matting::PPMatting(
+ const string& model_file,
+ const string& params_file = "",
+ const string& config_file,
+ const RuntimeOption& runtime_option = RuntimeOption(),
+ const ModelFormat& model_format = ModelFormat::PADDLE)
+```
+
+PP-Matting模型加载和初始化,其中model_file为导出的Paddle模型格式。
+
+**参数**
+
+> * **model_file**(str): 模型文件路径
+> * **params_file**(str): 参数文件路径
+> * **config_file**(str): 推理部署配置文件
+> * **runtime_option**(RuntimeOption): 后端推理配置,默认为None,即采用默认配置
+> * **model_format**(ModelFormat): 模型格式,默认为Paddle格式
+
+#### Predict函数
+
+> ```c++
+> PPMatting::Predict(cv::Mat* im, MattingResult* result)
+> ```
+>
+> 模型预测接口,输入图像直接输出检测结果。
+>
+> **参数**
+>
+> > * **im**: 输入图像,注意需为HWC,BGR格式
+> > * **result**: 分割结果,包括分割预测的标签以及标签对应的概率值, MattingResult说明参考[视觉模型预测结果](../../../../../docs/api/vision_results/)
+
+### 类成员属性
+#### 预处理参数
+用户可按照自己的实际需求,修改下列预处理参数,从而影响最终的推理和部署效果
+
+
+- [模型介绍](../../)
+- [Python部署](../python)
+- [视觉模型预测结果](../../../../../docs/api/vision_results/)
+- [如何切换模型推理后端引擎](../../../../../docs/cn/faq/how_to_change_backend.md)
diff --git a/examples/vision/segmentation/ppmatting/cpp/infer.cc b/examples/vision/segmentation/ppmatting/cpp/infer.cc
new file mode 100644
index 000000000..e7f1ffbcb
--- /dev/null
+++ b/examples/vision/segmentation/ppmatting/cpp/infer.cc
@@ -0,0 +1,170 @@
+// Copyright (c) 2022 PaddlePaddle Authors. All Rights Reserved.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+#include "fastdeploy/vision.h"
+
+#ifdef WIN32
+const char sep = '\\';
+#else
+const char sep = '/';
+#endif
+
+void CpuInfer(const std::string& model_dir, const std::string& image_file,
+ const std::string& background_file) {
+ auto model_file = model_dir + sep + "model.pdmodel";
+ auto params_file = model_dir + sep + "model.pdiparams";
+ auto config_file = model_dir + sep + "deploy.yaml";
+ auto option = fastdeploy::RuntimeOption();
+ option.UseCpu();
+ auto model = fastdeploy::vision::matting::PPMatting(model_file, params_file,
+ config_file, option);
+ if (!model.Initialized()) {
+ std::cerr << "Failed to initialize." << std::endl;
+ return;
+ }
+
+ auto im = cv::imread(image_file);
+ cv::Mat bg = cv::imread(background_file);
+ fastdeploy::vision::MattingResult res;
+ if (!model.Predict(&im, &res)) {
+ std::cerr << "Failed to predict." << std::endl;
+ return;
+ }
+ auto vis_im = fastdeploy::vision::VisMatting(im, res);
+ auto vis_im_with_bg = fastdeploy::vision::SwapBackground(im, bg, res);
+ cv::imwrite("visualized_result.jpg", vis_im_with_bg);
+ cv::imwrite("visualized_result_fg.jpg", vis_im);
+ std::cout << "Visualized result save in ./visualized_result_replaced_bg.jpg "
+ "and ./visualized_result_fg.jpg"
+ << std::endl;
+}
+
+void KunlunXinInfer(const std::string& model_dir, const std::string& image_file,
+ const std::string& background_file) {
+ auto model_file = model_dir + sep + "model.pdmodel";
+ auto params_file = model_dir + sep + "model.pdiparams";
+ auto config_file = model_dir + sep + "deploy.yaml";
+ auto option = fastdeploy::RuntimeOption();
+ option.UseKunlunXin();
+ auto model = fastdeploy::vision::matting::PPMatting(model_file, params_file,
+ config_file, option);
+ if (!model.Initialized()) {
+ std::cerr << "Failed to initialize." << std::endl;
+ return;
+ }
+
+ auto im = cv::imread(image_file);
+ cv::Mat bg = cv::imread(background_file);
+ fastdeploy::vision::MattingResult res;
+ if (!model.Predict(&im, &res)) {
+ std::cerr << "Failed to predict." << std::endl;
+ return;
+ }
+ auto vis_im = fastdeploy::vision::VisMatting(im, res);
+ auto vis_im_with_bg = fastdeploy::vision::SwapBackground(im, bg, res);
+ cv::imwrite("visualized_result.jpg", vis_im_with_bg);
+ cv::imwrite("visualized_result_fg.jpg", vis_im);
+ std::cout << "Visualized result save in ./visualized_result_replaced_bg.jpg "
+ "and ./visualized_result_fg.jpg"
+ << std::endl;
+}
+
+void GpuInfer(const std::string& model_dir, const std::string& image_file,
+ const std::string& background_file) {
+ auto model_file = model_dir + sep + "model.pdmodel";
+ auto params_file = model_dir + sep + "model.pdiparams";
+ auto config_file = model_dir + sep + "deploy.yaml";
+
+ auto option = fastdeploy::RuntimeOption();
+ option.UseGpu();
+ option.UsePaddleInferBackend();
+ auto model = fastdeploy::vision::matting::PPMatting(model_file, params_file,
+ config_file, option);
+ if (!model.Initialized()) {
+ std::cerr << "Failed to initialize." << std::endl;
+ return;
+ }
+
+ auto im = cv::imread(image_file);
+ cv::Mat bg = cv::imread(background_file);
+ fastdeploy::vision::MattingResult res;
+ if (!model.Predict(&im, &res)) {
+ std::cerr << "Failed to predict." << std::endl;
+ return;
+ }
+ auto vis_im = fastdeploy::vision::VisMatting(im, res);
+ auto vis_im_with_bg = fastdeploy::vision::SwapBackground(im, bg, res);
+ cv::imwrite("visualized_result.jpg", vis_im_with_bg);
+ cv::imwrite("visualized_result_fg.jpg", vis_im);
+ std::cout << "Visualized result save in ./visualized_result_replaced_bg.jpg "
+ "and ./visualized_result_fg.jpg"
+ << std::endl;
+}
+
+void TrtInfer(const std::string& model_dir, const std::string& image_file,
+ const std::string& background_file) {
+ auto model_file = model_dir + sep + "model.pdmodel";
+ auto params_file = model_dir + sep + "model.pdiparams";
+ auto config_file = model_dir + sep + "deploy.yaml";
+
+ auto option = fastdeploy::RuntimeOption();
+ option.UseGpu();
+ option.UseTrtBackend();
+ option.SetTrtInputShape("img", {1, 3, 512, 512});
+ auto model = fastdeploy::vision::matting::PPMatting(model_file, params_file,
+ config_file, option);
+ if (!model.Initialized()) {
+ std::cerr << "Failed to initialize." << std::endl;
+ return;
+ }
+
+ auto im = cv::imread(image_file);
+ cv::Mat bg = cv::imread(background_file);
+ fastdeploy::vision::MattingResult res;
+ if (!model.Predict(&im, &res)) {
+ std::cerr << "Failed to predict." << std::endl;
+ return;
+ }
+ auto vis_im = fastdeploy::vision::VisMatting(im, res);
+ auto vis_im_with_bg = fastdeploy::vision::SwapBackground(im, bg, res);
+ cv::imwrite("visualized_result.jpg", vis_im_with_bg);
+ cv::imwrite("visualized_result_fg.jpg", vis_im);
+ std::cout << "Visualized result save in ./visualized_result_replaced_bg.jpg "
+ "and ./visualized_result_fg.jpg"
+ << std::endl;
+}
+
+int main(int argc, char* argv[]) {
+ if (argc < 5) {
+ std::cout
+ << "Usage: infer_demo path/to/model_dir path/to/image run_option, "
+ "e.g ./infer_model ./PP-Matting-512 ./test.jpg ./test_bg.jpg 0"
+ << std::endl;
+ std::cout << "The data type of run_option is int, 0: run with cpu; 1: run "
+ "with gpu; 2: run with gpu and use tensorrt backend, 3: run "
+ "with kunlunxin."
+ << std::endl;
+ return -1;
+ }
+ if (std::atoi(argv[4]) == 0) {
+ CpuInfer(argv[1], argv[2], argv[3]);
+ } else if (std::atoi(argv[4]) == 1) {
+ GpuInfer(argv[1], argv[2], argv[3]);
+ } else if (std::atoi(argv[4]) == 2) {
+ TrtInfer(argv[1], argv[2], argv[3]);
+ } else if (std::atoi(argv[4]) == 3) {
+ KunlunXinInfer(argv[1], argv[2], argv[3]);
+ }
+ return 0;
+}
diff --git a/examples/vision/segmentation/ppmatting/python/README.md b/examples/vision/segmentation/ppmatting/python/README.md
new file mode 100755
index 000000000..fb7d42617
--- /dev/null
+++ b/examples/vision/segmentation/ppmatting/python/README.md
@@ -0,0 +1,81 @@
+English | [简体中文](README_CN.md)
+# PP-Matting Python Deployment Example
+
+Before deployment, two steps require confirmation
+
+- 1. Software and hardware should meet the requirements. Please refer to [FastDeploy Environment Requirements](../../../../../docs/en/build_and_install/download_prebuilt_libraries.md)
+- 2. Install FastDeploy Python whl package. Refer to [FastDeploy Python Installation](../../../../../docs/en/build_and_install/download_prebuilt_libraries.md)
+
+This directory provides examples that `infer.py` fast finishes the deployment of PP-Matting on CPU/GPU and GPU accelerated by TensorRT. The script is as follows
+```bash
+# Download the deployment example code
+git clone https://github.com/PaddlePaddle/FastDeploy.git
+cd FastDeploy/examples/vision/matting/ppmatting/python
+
+# Download PP-Matting model files and test images
+wget https://bj.bcebos.com/paddlehub/fastdeploy/PP-Matting-512.tgz
+tar -xvf PP-Matting-512.tgz
+wget https://bj.bcebos.com/paddlehub/fastdeploy/matting_input.jpg
+wget https://bj.bcebos.com/paddlehub/fastdeploy/matting_bgr.jpg
+# CPU inference
+python infer.py --model PP-Matting-512 --image matting_input.jpg --bg matting_bgr.jpg --device cpu
+# GPU inference
+python infer.py --model PP-Matting-512 --image matting_input.jpg --bg matting_bgr.jpg --device gpu
+# TensorRT inference on GPU(Attention: It is somewhat time-consuming for the operation of model serialization when running TensorRT inference for the first time. Please be patient.)
+python infer.py --model PP-Matting-512 --image matting_input.jpg --bg matting_bgr.jpg --device gpu --use_trt True
+# kunlunxin XPU inference
+python infer.py --model PP-Matting-512 --image matting_input.jpg --bg matting_bgr.jpg --device kunlunxin
+```
+
+The visualized result after running is as follows
+
+## PP-Matting Python Interface
+
+```python
+fd.vision.matting.PPMatting(model_file, params_file, config_file, runtime_option=None, model_format=ModelFormat.PADDLE)
+```
+
+PP-Matting model loading and initialization, among which model_file, params_file, and config_file are the Paddle inference files exported from the training model. Refer to [Model Export](https://github.com/PaddlePaddle/PaddleSeg/tree/release/2.6/Matting) for more information
+
+**Parameter**
+
+> * **model_file**(str): Model file path
+> * **params_file**(str): Parameter file path
+> * **config_file**(str): Inference deployment configuration file
+> * **runtime_option**(RuntimeOption): Backend inference configuration. None by default, which is the default configuration
+> * **model_format**(ModelFormat): Model format. Paddle format by default
+
+### predict function
+
+> ```python
+> PPMatting.predict(input_image)
+> ```
+>
+> Model prediction interface. Input images and output detection results.
+>
+> **Parameter**
+>
+> > * **input_image**(np.ndarray): Input data in HWC or BGR format
+
+> **Return**
+>
+> > Return `fastdeploy.vision.MattingResult` structure. Refer to [Vision Model Prediction Results](../../../../../docs/api/vision_results/) for the description of the structure.
+
+### Class Member Variable
+
+#### Pre-processing Parameter
+Users can modify the following pre-processing parameters to their needs, which affects the final inference and deployment results
+
+
+
+## Other Documents
+
+- [PP-Matting Model Description](..)
+- [PP-Matting C++ Deployment](../cpp)
+- [Model Prediction Results](../../../../../docs/api/vision_results/)
+- [How to switch the model inference backend engine](../../../../../docs/en/faq/how_to_change_backend.md)
diff --git a/examples/vision/segmentation/ppmatting/python/README_CN.md b/examples/vision/segmentation/ppmatting/python/README_CN.md
new file mode 100644
index 000000000..5e676a1cf
--- /dev/null
+++ b/examples/vision/segmentation/ppmatting/python/README_CN.md
@@ -0,0 +1,80 @@
+[English](README.md) | 简体中文
+# PP-Matting Python部署示例
+
+在部署前,需确认以下两个步骤
+
+- 1. 软硬件环境满足要求,参考[FastDeploy环境要求](../../../../../docs/cn/build_and_install/download_prebuilt_libraries.md)
+- 2. FastDeploy Python whl包安装,参考[FastDeploy Python安装](../../../../../docs/cn/build_and_install/download_prebuilt_libraries.md)
+
+本目录下提供`infer.py`快速完成PP-Matting在CPU/GPU,以及GPU上通过TensorRT加速部署的示例。执行如下脚本即可完成
+
+```bash
+#下载部署示例代码
+git clone https://github.com/PaddlePaddle/FastDeploy.git
+cd FastDeploy/examples/vision/matting/ppmatting/python
+
+# 下载PP-Matting模型文件和测试图片
+wget https://bj.bcebos.com/paddlehub/fastdeploy/PP-Matting-512.tgz
+tar -xvf PP-Matting-512.tgz
+wget https://bj.bcebos.com/paddlehub/fastdeploy/matting_input.jpg
+wget https://bj.bcebos.com/paddlehub/fastdeploy/matting_bgr.jpg
+# CPU推理
+python infer.py --model PP-Matting-512 --image matting_input.jpg --bg matting_bgr.jpg --device cpu
+# GPU推理
+python infer.py --model PP-Matting-512 --image matting_input.jpg --bg matting_bgr.jpg --device gpu
+# GPU上使用TensorRT推理 (注意:TensorRT推理第一次运行,有序列化模型的操作,有一定耗时,需要耐心等待)
+python infer.py --model PP-Matting-512 --image matting_input.jpg --bg matting_bgr.jpg --device gpu --use_trt True
+# 昆仑芯XPU推理
+python infer.py --model PP-Matting-512 --image matting_input.jpg --bg matting_bgr.jpg --device kunlunxin
+```
+
+运行完成可视化结果如下图所示
+
+## PP-Matting Python接口
+
+```python
+fd.vision.matting.PPMatting(model_file, params_file, config_file, runtime_option=None, model_format=ModelFormat.PADDLE)
+```
+
+PP-Matting模型加载和初始化,其中model_file, params_file以及config_file为训练模型导出的Paddle inference文件,具体请参考其文档说明[模型导出](https://github.com/PaddlePaddle/PaddleSeg/tree/release/2.6/Matting)
+
+**参数**
+
+> * **model_file**(str): 模型文件路径
+> * **params_file**(str): 参数文件路径
+> * **config_file**(str): 推理部署配置文件
+> * **runtime_option**(RuntimeOption): 后端推理配置,默认为None,即采用默认配置
+> * **model_format**(ModelFormat): 模型格式,默认为Paddle格式
+
+### predict函数
+
+> ```python
+> PPMatting.predict(input_image)
+> ```
+>
+> 模型预测结口,输入图像直接输出检测结果。
+>
+> **参数**
+>
+> > * **input_image**(np.ndarray): 输入数据,注意需为HWC,BGR格式
+
+> **返回**
+>
+> > 返回`fastdeploy.vision.MattingResult`结构体,结构体说明参考文档[视觉模型预测结果](../../../../../docs/api/vision_results/)
+
+### 类成员属性
+#### 预处理参数
+用户可按照自己的实际需求,修改下列预处理参数,从而影响最终的推理和部署效果
+
+
+## 其它文档
+
+- [PP-Matting 模型介绍](..)
+- [PP-Matting C++部署](../cpp)
+- [模型预测结果说明](../../../../../docs/api/vision_results/)
+- [如何切换模型推理后端引擎](../../../../../docs/cn/faq/how_to_change_backend.md)
diff --git a/examples/vision/segmentation/ppmatting/python/infer.py b/examples/vision/segmentation/ppmatting/python/infer.py
new file mode 100755
index 000000000..512d0ca86
--- /dev/null
+++ b/examples/vision/segmentation/ppmatting/python/infer.py
@@ -0,0 +1,70 @@
+import fastdeploy as fd
+import cv2
+import os
+
+
+def parse_arguments():
+ import argparse
+ import ast
+ parser = argparse.ArgumentParser()
+ parser.add_argument(
+ "--model", required=True, help="Path of PaddleSeg model.")
+ parser.add_argument(
+ "--image", type=str, required=True, help="Path of test image file.")
+ parser.add_argument(
+ "--bg",
+ type=str,
+ required=True,
+ default=None,
+ help="Path of test background image file.")
+ parser.add_argument(
+ "--device",
+ type=str,
+ default='cpu',
+ help="Type of inference device, support 'cpu', 'kunlunxin' or 'gpu'.")
+ parser.add_argument(
+ "--use_trt",
+ type=ast.literal_eval,
+ default=False,
+ help="Wether to use tensorrt.")
+ return parser.parse_args()
+
+
+def build_option(args):
+ option = fd.RuntimeOption()
+ if args.device.lower() == "gpu":
+ option.use_gpu()
+ option.use_paddle_infer_backend()
+
+ if args.use_trt:
+ option.use_trt_backend()
+ option.set_trt_input_shape("img", [1, 3, 512, 512])
+
+ if args.device.lower() == "kunlunxin":
+ option.use_kunlunxin()
+ return option
+
+
+args = parse_arguments()
+
+# 配置runtime,加载模型
+runtime_option = build_option(args)
+model_file = os.path.join(args.model, "model.pdmodel")
+params_file = os.path.join(args.model, "model.pdiparams")
+config_file = os.path.join(args.model, "deploy.yaml")
+model = fd.vision.matting.PPMatting(
+ model_file, params_file, config_file, runtime_option=runtime_option)
+
+# 预测图片抠图结果
+im = cv2.imread(args.image)
+bg = cv2.imread(args.bg)
+result = model.predict(im)
+print(result)
+# 可视化结果
+vis_im = fd.vision.vis_matting(im, result)
+vis_im_with_bg = fd.vision.swap_background(im, bg, result)
+cv2.imwrite("visualized_result_fg.jpg", vis_im)
+cv2.imwrite("visualized_result_replaced_bg.jpg", vis_im_with_bg)
+print(
+ "Visualized result save in ./visualized_result_replaced_bg.jpg and ./visualized_result_fg.jpg"
+)