mirror of
				https://github.com/PaddlePaddle/FastDeploy.git
				synced 2025-10-31 11:56:44 +08:00 
			
		
		
		
	 b565c15bf7
			
		
	
	b565c15bf7
	
	
	
		
			
			* Add tinypose model * Add PPTinypose python API * Fix picodet preprocess bug && Add Tinypose examples * Update tinypose example code * Update ppseg preprocess if condition * Update ppseg backend support type * Update permute.h * Update README.md * Update code with comments * Move files dir * Delete premute.cc * Add single model pptinypose * Delete pptinypose old code in ppdet * Code format * Add ppdet + pptinypose pipeline model * Fix bug for posedetpipeline * Change Frontend to ModelFormat * Change Frontend to ModelFormat in __init__.py * Add python posedetpipeline/ * Update pptinypose example dir name * Update README.md * Update README.md * Update README.md * Update README.md * Create keypointdetection_result.md * Create README.md * Create README.md * Create README.md * Update README.md * Update README.md * Create README.md * Fix det_keypoint_unite_infer.py bug * Create README.md * Update PP-Tinypose by comment * Update by comment * Add pipeline directory * Add pptinypose dir * Update pptinypose to align accuracy * Addd warpAffine processor * Update GetCpuMat to GetOpenCVMat * Add comment for pptinypose && pipline * Update docs/main_page.md * Add README.md for pptinypose * Add README for det_keypoint_unite * Remove ENABLE_PIPELINE option * Remove ENABLE_PIPELINE option * Change pptinypose default backend * PP-TinyPose Pipeline support multi PP-Detection models * Update pp-tinypose comment * Update by comments * Add single test example Co-authored-by: Jason <jiangjiajun@baidu.com>
		
			
				
	
	
		
			56 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			56 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
| # # 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.
 | |
| 
 | |
| from __future__ import absolute_import
 | |
| from ... import c_lib_wrap as C
 | |
| 
 | |
| 
 | |
| class PPTinyPose(object):
 | |
|     def __init__(self, det_model=None, pptinypose_model=None):
 | |
|         """Set initialized detection model object and pptinypose model object
 | |
| 
 | |
|         :param det_model: (fastdeploy.vision.detection.PicoDet)Initialized detection model object
 | |
|         :param pptinypose_model: (fastdeploy.vision.keypointdetection.PPTinyPose)Initialized pptinypose model object
 | |
|         """
 | |
|         assert det_model is not None or pptinypose_model is not None, "The det_model and pptinypose_model cannot be None."
 | |
|         self._pipeline = C.pipeline.PPTinyPose(det_model._model,
 | |
|                                                pptinypose_model._model)
 | |
| 
 | |
|     def predict(self, input_image):
 | |
|         """Predict the keypoint detection result for an input image
 | |
| 
 | |
|         :param im: (numpy.ndarray)The input image data, 3-D array with layout HWC, BGR format
 | |
|         :return: KeyPointDetectionResult
 | |
|         """
 | |
|         return self._pipeline.predict(input_image)
 | |
| 
 | |
|     @property
 | |
|     def detection_model_score_threshold(self):
 | |
|         """Atrribute of PPTinyPose pipeline model. Stating the score threshold for detectin model to filter bbox before inputting pptinypose model
 | |
| 
 | |
|         :return: value of detection_model_score_threshold(float)
 | |
|         """
 | |
|         return self._pipeline.detection_model_score_threshold
 | |
| 
 | |
|     @detection_model_score_threshold.setter
 | |
|     def detection_model_score_threshold(self, value):
 | |
|         """Set attribute detection_model_score_threshold of PPTinyPose pipeline model.
 | |
| 
 | |
|         :param value: (float)The value to set use_dark
 | |
|         """
 | |
|         assert isinstance(
 | |
|             value, float
 | |
|         ), "The value to set `detection_model_score_threshold` must be type of float."
 | |
|         self._pipeline.detection_model_score_threshold = value
 |