From 9fd911500ba3c830bcc527eebb7388beab393bd1 Mon Sep 17 00:00:00 2001 From: zhouchengrong Date: Tue, 25 Mar 2025 17:33:25 +0800 Subject: [PATCH] =?UTF-8?q?feat=EF=BC=88=E6=96=B0=E5=8A=9F=E8=83=BD?= =?UTF-8?q?=EF=BC=89:=20=20=E6=A8=A1=E7=89=B9=E7=BC=96=E8=BE=91=E5=8A=9F?= =?UTF-8?q?=E8=83=BD=E5=8F=82=E6=95=B0=E4=BF=AE=E6=94=B9=20fix=EF=BC=88?= =?UTF-8?q?=E4=BF=AE=E5=A4=8Dbug=EF=BC=89:=20docs=EF=BC=88=E6=96=87?= =?UTF-8?q?=E6=A1=A3=E5=8F=98=E6=9B=B4=EF=BC=89:=20refactor=EF=BC=88?= =?UTF-8?q?=E9=87=8D=E6=9E=84=EF=BC=89:=20test(=E5=A2=9E=E5=8A=A0=E6=B5=8B?= =?UTF-8?q?=E8=AF=95):?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/api/api_mannequins_edit.py | 7 +++++-- app/schemas/mannequin_edit.py | 2 +- app/service/mannequins_edit/service.py | 6 +++--- 3 files changed, 9 insertions(+), 6 deletions(-) diff --git a/app/api/api_mannequins_edit.py b/app/api/api_mannequins_edit.py index 9eec805..6ff34d4 100644 --- a/app/api/api_mannequins_edit.py +++ b/app/api/api_mannequins_edit.py @@ -17,14 +17,17 @@ def mannequins_edit(request_data: MannequinModel): 模特腿长调整 创建一个具有以下参数的请求体: - **mannequins**: mannequins url等信息 - - **scale**: 大腿小腿比例 + - **resize_pixel**: 拉伸像素量 - **bucket_name**: bucket name - **mannequin_name**: 模特名称 + - **top**: 拉伸y轴点位 + - **bottom**: 拉伸y轴点位 + 示例参数: - **{ "mannequins": "aida-sys-image/models/male/dc36ce58-46c3-4b6f-8787-5ca7d6fc26e6.png", - "scale": 0.75, + "resize_pixel": -50, "bucket_name": "test", "mannequin_name": "mannequin_name", "top" : 270, diff --git a/app/schemas/mannequin_edit.py b/app/schemas/mannequin_edit.py index 2a8f5f9..9ea9c8c 100644 --- a/app/schemas/mannequin_edit.py +++ b/app/schemas/mannequin_edit.py @@ -3,7 +3,7 @@ from pydantic import BaseModel class MannequinModel(BaseModel): mannequins: str - scale: float + resize_pixel: float bucket_name: str mannequin_name: str top: int diff --git a/app/service/mannequins_edit/service.py b/app/service/mannequins_edit/service.py index 685709f..8db25d5 100644 --- a/app/service/mannequins_edit/service.py +++ b/app/service/mannequins_edit/service.py @@ -11,7 +11,7 @@ minio_client = Minio(MINIO_URL, access_key=MINIO_ACCESS, secret_key=MINIO_SECRET class MannequinEditService(): def __init__(self, request_data): - self.scale = request_data.scale + self.resize_pixel = request_data.resize_pixel self.top = request_data.top self.bottom = request_data.bottom self.image = oss_get_image(oss_client=minio_client, bucket=request_data.mannequins.split('/')[0], object_name=request_data.mannequins[request_data.mannequins.find('/') + 1:], data_type="cv2") @@ -47,7 +47,7 @@ class MannequinEditService(): part_bottom = self.bgr[bottom:, :] part_bottom_alpha = self.alpha[bottom:, :] - new_height = int((bottom - top) * self.scale) + new_height = int((bottom - top) + self.resize_pixel) resized_thigh = cv2.resize(part_resize, (self.w, new_height), interpolation=cv2.INTER_LINEAR) resized_thigh_alpha = cv2.resize(part_resize_alpha, (self.w, new_height), interpolation=cv2.INTER_LINEAR) @@ -68,7 +68,7 @@ class MannequinEditService(): if __name__ == '__main__': request_data = MannequinModel( mannequins="aida-sys-image/models/male/dc36ce58-46c3-4b6f-8787-5ca7d6fc26e6.png", - scale=0.1, + resize_pixel=-100, bucket_name="test", mannequin_name="mannequin_name", top=270,