feat 新增接口描述 docs页面 ,新增S3 图片get upload 操作,整理代码
fix
This commit is contained in:
@@ -1,5 +1,6 @@
|
|||||||
import json
|
import json
|
||||||
import logging
|
import logging
|
||||||
|
|
||||||
from fastapi import APIRouter, HTTPException
|
from fastapi import APIRouter, HTTPException
|
||||||
|
|
||||||
from app.core.config import DEBUG
|
from app.core.config import DEBUG
|
||||||
@@ -16,6 +17,22 @@ logger = logging.getLogger()
|
|||||||
# 属性识别
|
# 属性识别
|
||||||
@router.post("/attribute_recognition", response_model=ResponseModel)
|
@router.post("/attribute_recognition", response_model=ResponseModel)
|
||||||
def attribute_recognition(request_item: list[AttributeRecognitionModel]):
|
def attribute_recognition(request_item: list[AttributeRecognitionModel]):
|
||||||
|
"""
|
||||||
|
获取sketch的属性,collar sleeve_length 等等
|
||||||
|
创建一个具有以下参数的请求体:
|
||||||
|
- **category**: sketch的类别 ,Dress
|
||||||
|
- **colony**: 服装类别,男装或女装
|
||||||
|
- **sketch_img_url**: 被提取属性的S3或minio url地址
|
||||||
|
|
||||||
|
示例参数:
|
||||||
|
[
|
||||||
|
{
|
||||||
|
"category": "Dress",
|
||||||
|
"colony": "Female",
|
||||||
|
"sketch_img_url": "aida-users/89/sketchboard/female/Dress/ae976103-d7ec-4eed-b5d1-3e5f04d8be26.jpg"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
"""
|
||||||
try:
|
try:
|
||||||
logger.info(f"attribute_recognition request item is : @@@@@@:{request_item}")
|
logger.info(f"attribute_recognition request item is : @@@@@@:{request_item}")
|
||||||
if DEBUG:
|
if DEBUG:
|
||||||
@@ -33,6 +50,20 @@ def attribute_recognition(request_item: list[AttributeRecognitionModel]):
|
|||||||
# 类别识别
|
# 类别识别
|
||||||
@router.post("/category_recognition")
|
@router.post("/category_recognition")
|
||||||
def category_recognition(request_item: list[CategoryRecognitionModel]):
|
def category_recognition(request_item: list[CategoryRecognitionModel]):
|
||||||
|
"""
|
||||||
|
获取sketch的类别,dress blouse 等等
|
||||||
|
创建一个具有以下参数的请求体:
|
||||||
|
- **colony**: 服装类别,male或Female
|
||||||
|
- **sketch_img_url**: 被提取sketch类别的S3或minio url地址
|
||||||
|
|
||||||
|
示例参数:
|
||||||
|
[
|
||||||
|
{
|
||||||
|
"colony": "Female",
|
||||||
|
"sketch_img_url": "aida-users/89/sketchboard/female/Dress/ae976103-d7ec-4eed-b5d1-3e5f04d8be26.jpg"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
"""
|
||||||
try:
|
try:
|
||||||
logger.info(f"category_recognition request item is : @@@@@@:{request_item}")
|
logger.info(f"category_recognition request item is : @@@@@@:{request_item}")
|
||||||
service = CategoryRecognition(request_data=request_item)
|
service = CategoryRecognition(request_data=request_item)
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import json
|
import json
|
||||||
import logging
|
import logging
|
||||||
import time
|
|
||||||
from fastapi import APIRouter, HTTPException
|
from fastapi import APIRouter, HTTPException
|
||||||
|
|
||||||
from app.schemas.chat_robot import ChatRobotModel
|
from app.schemas.chat_robot import ChatRobotModel
|
||||||
@@ -13,6 +13,22 @@ logger = logging.getLogger()
|
|||||||
|
|
||||||
@router.post("/chat_robot")
|
@router.post("/chat_robot")
|
||||||
def chat_robot(request_data: ChatRobotModel):
|
def chat_robot(request_data: ChatRobotModel):
|
||||||
|
"""
|
||||||
|
对话机器人
|
||||||
|
创建一个具有以下参数的请求体:
|
||||||
|
- **gender**: 服装类别
|
||||||
|
- **message**: 消息
|
||||||
|
- **session_id**: 会话id
|
||||||
|
- **user_id**: 用户id
|
||||||
|
|
||||||
|
示例参数:
|
||||||
|
{
|
||||||
|
"gender": "male",
|
||||||
|
"message": "你好",
|
||||||
|
"session_id": "string-89",
|
||||||
|
"user_id": 89
|
||||||
|
}
|
||||||
|
"""
|
||||||
try:
|
try:
|
||||||
logger.info(f"chat_robot request item is : @@@@@@:{request_data}")
|
logger.info(f"chat_robot request item is : @@@@@@:{request_data}")
|
||||||
data = chat(post_data=request_data)
|
data = chat(post_data=request_data)
|
||||||
|
|||||||
@@ -15,6 +15,106 @@ logger = logging.getLogger()
|
|||||||
|
|
||||||
@router.post("/design")
|
@router.post("/design")
|
||||||
def design(request_data: DesignModel):
|
def design(request_data: DesignModel):
|
||||||
|
"""
|
||||||
|
创建一个具有以下参数的请求体:
|
||||||
|
示例参数:
|
||||||
|
{
|
||||||
|
"objects": [
|
||||||
|
{
|
||||||
|
"basic": {
|
||||||
|
"body_point_test": {
|
||||||
|
"waistband_right": [
|
||||||
|
336,
|
||||||
|
264
|
||||||
|
],
|
||||||
|
"hand_point_right": [
|
||||||
|
350,
|
||||||
|
303
|
||||||
|
],
|
||||||
|
"waistband_left": [
|
||||||
|
245,
|
||||||
|
274
|
||||||
|
],
|
||||||
|
"hand_point_left": [
|
||||||
|
219,
|
||||||
|
315
|
||||||
|
],
|
||||||
|
"shoulder_left": [
|
||||||
|
227,
|
||||||
|
155
|
||||||
|
],
|
||||||
|
"shoulder_right": [
|
||||||
|
338,
|
||||||
|
149
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"layer_order": false,
|
||||||
|
"scale_bag": 0.7,
|
||||||
|
"scale_earrings": 0.16,
|
||||||
|
"self_template": true,
|
||||||
|
"single_overall": "overall",
|
||||||
|
"switch_category": ""
|
||||||
|
},
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"color": "229 214 200",
|
||||||
|
"icon": "none",
|
||||||
|
"image_id": 110205,
|
||||||
|
"offset": [
|
||||||
|
1,
|
||||||
|
1
|
||||||
|
],
|
||||||
|
"path": "aida-sys-image/images/female/trousers/0916000217.jpg",
|
||||||
|
"print": {
|
||||||
|
"IfSingle": false,
|
||||||
|
"print_path_list": []
|
||||||
|
},
|
||||||
|
"resize_scale": [
|
||||||
|
1.0,
|
||||||
|
1.0
|
||||||
|
],
|
||||||
|
"type": "Trousers"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"businessId": 493825,
|
||||||
|
"color": "209 125 29",
|
||||||
|
"elementId": 493825,
|
||||||
|
"icon": "none",
|
||||||
|
"image_id": 107101,
|
||||||
|
"offset": [
|
||||||
|
1,
|
||||||
|
1
|
||||||
|
],
|
||||||
|
"path": "aida-users/31/sketchboard/female/Blouse/de8f5656-d7ae-4642-bc90-f7f9d85da09b.jpg",
|
||||||
|
"print": {
|
||||||
|
"IfSingle": false,
|
||||||
|
"print_path_list": []
|
||||||
|
},
|
||||||
|
"resize_scale": [
|
||||||
|
1.0,
|
||||||
|
1.0
|
||||||
|
],
|
||||||
|
"type": "Blouse"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"body_path": "aida-users/31/models/female/845046c7-4f62-4f54-a4a9-c26d49c6969335b5b3a9-d335-4871-a46c-3cc3caf07da259629dfd1f1f555a2e2a9def7e719366.png",
|
||||||
|
"image_id": 82966,
|
||||||
|
"offset": [
|
||||||
|
1,
|
||||||
|
1
|
||||||
|
],
|
||||||
|
"resize_scale": [
|
||||||
|
1.0,
|
||||||
|
1.0
|
||||||
|
],
|
||||||
|
"type": "Body"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"process_id": "6878547032381675"
|
||||||
|
}
|
||||||
|
"""
|
||||||
try:
|
try:
|
||||||
logger.info(f"design request item is : @@@@@@:{request_data.dict()}")
|
logger.info(f"design request item is : @@@@@@:{request_data.dict()}")
|
||||||
data = generate(request_data=request_data)
|
data = generate(request_data=request_data)
|
||||||
@@ -27,6 +127,16 @@ def design(request_data: DesignModel):
|
|||||||
|
|
||||||
@router.post('/get_progress')
|
@router.post('/get_progress')
|
||||||
def get_progress(request_data: DesignProgressModel):
|
def get_progress(request_data: DesignProgressModel):
|
||||||
|
"""
|
||||||
|
获取design 进度
|
||||||
|
创建一个具有以下参数的请求体:
|
||||||
|
- **process_id**: 进度id
|
||||||
|
|
||||||
|
示例参数:
|
||||||
|
{
|
||||||
|
"process_id": "6878547032381675"
|
||||||
|
}
|
||||||
|
"""
|
||||||
try:
|
try:
|
||||||
logger.info(f"get_progress request item is : @@@@@@:{request_data.dict()}")
|
logger.info(f"get_progress request item is : @@@@@@:{request_data.dict()}")
|
||||||
process_id = request_data.process_id
|
process_id = request_data.process_id
|
||||||
@@ -43,6 +153,16 @@ def get_progress(request_data: DesignProgressModel):
|
|||||||
|
|
||||||
@router.post('/model_process')
|
@router.post('/model_process')
|
||||||
def model_process(request_data: ModelProgressModel):
|
def model_process(request_data: ModelProgressModel):
|
||||||
|
"""
|
||||||
|
获取模特图片预处理
|
||||||
|
创建一个具有以下参数的请求体:
|
||||||
|
- **model_path**: 模特图片的minio或s3 url地址
|
||||||
|
|
||||||
|
示例参数:
|
||||||
|
{
|
||||||
|
"model_path": "aida-users/10/models/female/9c788f5b-b8c7-424c-b149-025aeb0bda51model.jpg"
|
||||||
|
}
|
||||||
|
"""
|
||||||
try:
|
try:
|
||||||
logger.info(f"model_process request item is : @@@@@@:{request_data.dict()}")
|
logger.info(f"model_process request item is : @@@@@@:{request_data.dict()}")
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,8 @@
|
|||||||
import json
|
import json
|
||||||
import logging
|
import logging
|
||||||
|
|
||||||
from fastapi import APIRouter, HTTPException
|
from fastapi import APIRouter, HTTPException
|
||||||
|
|
||||||
from app.schemas.pre_processing import DesignPreProcessingModel
|
from app.schemas.pre_processing import DesignPreProcessingModel
|
||||||
from app.schemas.response_template import ResponseModel
|
from app.schemas.response_template import ResponseModel
|
||||||
from app.service.design_pre_processing.service import DesignPreprocessing
|
from app.service.design_pre_processing.service import DesignPreprocessing
|
||||||
@@ -11,6 +13,22 @@ logger = logging.getLogger()
|
|||||||
|
|
||||||
@router.post("/design_pre_processing")
|
@router.post("/design_pre_processing")
|
||||||
def design_pre_processing(request_data: DesignPreProcessingModel):
|
def design_pre_processing(request_data: DesignPreProcessingModel):
|
||||||
|
"""
|
||||||
|
design 预处理 获取sketch的基本信息
|
||||||
|
创建一个具有以下参数的请求体:
|
||||||
|
- **sketches**: sketch url等信息
|
||||||
|
|
||||||
|
示例参数:
|
||||||
|
{
|
||||||
|
"sketches": [
|
||||||
|
{
|
||||||
|
"image_category": "dress",
|
||||||
|
"image_id": "107903",
|
||||||
|
"image_url": "aida-sys-image/images/female/dress/0628000000.jpg"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
"""
|
||||||
try:
|
try:
|
||||||
logger.info(f"design_pre_processing request item is : @@@@@@:{request_data}")
|
logger.info(f"design_pre_processing request item is : @@@@@@:{request_data}")
|
||||||
server = DesignPreprocessing()
|
server = DesignPreprocessing()
|
||||||
|
|||||||
@@ -18,6 +18,25 @@ logger = logging.getLogger()
|
|||||||
|
|
||||||
@router.post("/generate_image")
|
@router.post("/generate_image")
|
||||||
def generate_image(request_item: GenerateImageModel, background_tasks: BackgroundTasks):
|
def generate_image(request_item: GenerateImageModel, background_tasks: BackgroundTasks):
|
||||||
|
"""
|
||||||
|
创建一个具有以下参数的请求体:
|
||||||
|
- **tasks_id**: 任务id 用于取消生成任务和获取生成结果
|
||||||
|
- **prompt**: 想要生成图片的描述词
|
||||||
|
- **image_url**: 图生图的输入,minio或S3 url 地址
|
||||||
|
- **mode**: 生成模式,img2img或者txt2img
|
||||||
|
- **category**: 生成图片的类别,sketch print 等等
|
||||||
|
- **gender**: 生成sketch专用,服装类别
|
||||||
|
|
||||||
|
示例参数:
|
||||||
|
{
|
||||||
|
"tasks_id": "123-89",
|
||||||
|
"prompt": "skeleton sitting by the side of a river looking soulful, concert poster, 4k, artistic",
|
||||||
|
"image_url": "aida-collection-element/87/Printboard/842c09cf-7297-42d9-9e6e-9c17d4a13cb5.jpg",
|
||||||
|
"mode": "img2img",
|
||||||
|
"category": "sketch",
|
||||||
|
"gender": "male"
|
||||||
|
}
|
||||||
|
"""
|
||||||
try:
|
try:
|
||||||
logger.info(f"generate_image request item is : @@@@@@:{request_item}")
|
logger.info(f"generate_image request item is : @@@@@@:{request_item}")
|
||||||
service = GenerateImage(request_item)
|
service = GenerateImage(request_item)
|
||||||
@@ -45,6 +64,19 @@ def generate_image(tasks_id: str):
|
|||||||
|
|
||||||
@router.post("/generate_single_logo")
|
@router.post("/generate_single_logo")
|
||||||
def generate_single_logo(request_item: GenerateSingleLogoImageModel, background_tasks: BackgroundTasks):
|
def generate_single_logo(request_item: GenerateSingleLogoImageModel, background_tasks: BackgroundTasks):
|
||||||
|
"""
|
||||||
|
创建一个具有以下参数的请求体:
|
||||||
|
- **tasks_id**: 任务id 用于取消生成任务和获取生成结果
|
||||||
|
- **prompt**: 想要生成图片的描述词
|
||||||
|
- **seed**: 固定的prompt和固定的seed 每次的生成结果都是一样的
|
||||||
|
|
||||||
|
示例参数:
|
||||||
|
{
|
||||||
|
"tasks_id": "123-89",
|
||||||
|
"prompt": "an apple",
|
||||||
|
"seed": "2"
|
||||||
|
}
|
||||||
|
"""
|
||||||
try:
|
try:
|
||||||
logger.info(f"generate_single_logo request item is : @@@@@@:{request_item}")
|
logger.info(f"generate_single_logo request item is : @@@@@@:{request_item}")
|
||||||
service = GenerateSingleLogoImage(request_item)
|
service = GenerateSingleLogoImage(request_item)
|
||||||
@@ -72,6 +104,19 @@ def generate_single_logo_image(tasks_id: str):
|
|||||||
|
|
||||||
@router.post("/generate_product_image")
|
@router.post("/generate_product_image")
|
||||||
def generate_product_image(request_item: GenerateProductImageModel, background_tasks: BackgroundTasks):
|
def generate_product_image(request_item: GenerateProductImageModel, background_tasks: BackgroundTasks):
|
||||||
|
"""
|
||||||
|
创建一个具有以下参数的请求体:
|
||||||
|
- **tasks_id**: 任务id 用于取消生成任务和获取生成结果
|
||||||
|
- **prompt**: 想要生成图片的描述词
|
||||||
|
- **image_url**: 被生成图片的S3或minio url地址
|
||||||
|
|
||||||
|
示例参数:
|
||||||
|
{
|
||||||
|
"tasks_id": "123-89",
|
||||||
|
"prompt": "the best quality, masterpiece. detailed, high-res, simple background, studio photography, extremely detailed, updo, detailed face, face, close-up, HDR, UHD, 8K realistic, Highly detailed, simple background, Studio lighting",
|
||||||
|
"image_url": "aida-results/result_00097282-ebb2-11ee-a822-b48351119060.png"
|
||||||
|
}
|
||||||
|
"""
|
||||||
try:
|
try:
|
||||||
logger.info(f"generate_product_image request item is : @@@@@@:{request_item}")
|
logger.info(f"generate_product_image request item is : @@@@@@:{request_item}")
|
||||||
service = GenerateProductImage(request_item)
|
service = GenerateProductImage(request_item)
|
||||||
@@ -99,6 +144,19 @@ def generate_product_image(tasks_id: str):
|
|||||||
|
|
||||||
@router.post("/generate_relight_image")
|
@router.post("/generate_relight_image")
|
||||||
def generate_relight_image(request_item: GenerateProductImageModel, background_tasks: BackgroundTasks):
|
def generate_relight_image(request_item: GenerateProductImageModel, background_tasks: BackgroundTasks):
|
||||||
|
"""
|
||||||
|
创建一个具有以下参数的请求体:
|
||||||
|
- **tasks_id**: 任务id 用于取消生成任务和获取生成结果
|
||||||
|
- **prompt**: 想要生成图片的描述词
|
||||||
|
- **image_url**: 被生成图片的S3或minio url地址
|
||||||
|
|
||||||
|
示例参数:
|
||||||
|
{
|
||||||
|
"tasks_id": "123-89",
|
||||||
|
"prompt": "beautiful woman, detailed face, sunshine, outdoor, warm atmosphere",
|
||||||
|
"image_url": "aida-sys-image/images/female/blouse/0628000098.jpg"
|
||||||
|
}
|
||||||
|
"""
|
||||||
try:
|
try:
|
||||||
logger.info(f"generate_relight_image request item is : @@@@@@:{request_item}")
|
logger.info(f"generate_relight_image request item is : @@@@@@:{request_item}")
|
||||||
service = GenerateRelightImage(request_item)
|
service = GenerateRelightImage(request_item)
|
||||||
|
|||||||
@@ -14,6 +14,16 @@ logger = logging.getLogger()
|
|||||||
|
|
||||||
@router.post("/translateToEN")
|
@router.post("/translateToEN")
|
||||||
def prompt_generation(request_data: PromptGenerationImageModel):
|
def prompt_generation(request_data: PromptGenerationImageModel):
|
||||||
|
"""
|
||||||
|
翻译prompt接口
|
||||||
|
创建一个具有以下参数的请求体:
|
||||||
|
- **text**: 待翻译语句
|
||||||
|
|
||||||
|
示例参数:
|
||||||
|
{
|
||||||
|
"text": "你好"
|
||||||
|
}
|
||||||
|
"""
|
||||||
try:
|
try:
|
||||||
logger.info(f"prompt_generation request item is : @@@@@@:{request_data}")
|
logger.info(f"prompt_generation request item is : @@@@@@:{request_data}")
|
||||||
data = translate_to_en(request_data.text)
|
data = translate_to_en(request_data.text)
|
||||||
|
|||||||
@@ -13,6 +13,19 @@ logger = logging.getLogger()
|
|||||||
|
|
||||||
@router.post("/super_resolution")
|
@router.post("/super_resolution")
|
||||||
def super_resolution(request_item: SuperResolutionModel, background_tasks: BackgroundTasks):
|
def super_resolution(request_item: SuperResolutionModel, background_tasks: BackgroundTasks):
|
||||||
|
"""
|
||||||
|
创建一个具有以下参数的请求体:
|
||||||
|
- **sr_image_url**: 超分图片的minio或s3 url地址
|
||||||
|
- **sr_xn**: 超分的倍数,只接受2或4
|
||||||
|
- **sr_tasks_id**: 任务id 用于取消超分任务和获取超分结果
|
||||||
|
|
||||||
|
示例参数:
|
||||||
|
{
|
||||||
|
"sr_image_url": "aida-sys-image/images/female/blouse/0628000098.jpg",
|
||||||
|
"sr_xn": 2,
|
||||||
|
"sr_tasks_id": "12341556-89"
|
||||||
|
}
|
||||||
|
"""
|
||||||
try:
|
try:
|
||||||
logger.info(f"super_resolution request item is : @@@@@@:{request_item}")
|
logger.info(f"super_resolution request item is : @@@@@@:{request_item}")
|
||||||
service = SuperResolution(request_item)
|
service = SuperResolution(request_item)
|
||||||
|
|||||||
@@ -1,101 +0,0 @@
|
|||||||
{
|
|
||||||
"objects": [
|
|
||||||
{
|
|
||||||
"basic": {
|
|
||||||
"body_point": {
|
|
||||||
"waistband_right": [
|
|
||||||
1081,
|
|
||||||
1318
|
|
||||||
],
|
|
||||||
"hand_point_right": [
|
|
||||||
1200,
|
|
||||||
1857
|
|
||||||
],
|
|
||||||
"waistband_left": [
|
|
||||||
639,
|
|
||||||
1315
|
|
||||||
],
|
|
||||||
"hand_point_left": [
|
|
||||||
493,
|
|
||||||
1808
|
|
||||||
],
|
|
||||||
"shoulder_left": [
|
|
||||||
556,
|
|
||||||
582
|
|
||||||
],
|
|
||||||
"shoulder_right": [
|
|
||||||
1130,
|
|
||||||
576
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"layer_order": false,
|
|
||||||
"scale_bag": 0.7,
|
|
||||||
"scale_earrings": 0.16,
|
|
||||||
"self_template": true,
|
|
||||||
"single_overall": "overall",
|
|
||||||
"switch_category": ""
|
|
||||||
},
|
|
||||||
"items": [
|
|
||||||
{
|
|
||||||
"color": "151 78 78",
|
|
||||||
"icon": "none",
|
|
||||||
"image_id": 67315,
|
|
||||||
"offset": [
|
|
||||||
1,
|
|
||||||
1
|
|
||||||
],
|
|
||||||
"path": "aida-sys-image/images/female/trousers/0628000325.jpg",
|
|
||||||
"print": {
|
|
||||||
"IfSingle": false,
|
|
||||||
"print_path_list": []
|
|
||||||
},
|
|
||||||
"resize_scale": 1.0,
|
|
||||||
"type": "Trousers"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"color": "151 78 78",
|
|
||||||
"icon": "none",
|
|
||||||
"image_id": 92912,
|
|
||||||
"offset": [
|
|
||||||
1,
|
|
||||||
1
|
|
||||||
],
|
|
||||||
"path": "aida-sys-image/images/female/blouse/0825001943.jpg",
|
|
||||||
"print": {
|
|
||||||
"IfSingle": false,
|
|
||||||
"print_path_list": []
|
|
||||||
},
|
|
||||||
"resize_scale": 1.0,
|
|
||||||
"type": "Blouse"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"color": "151 78 78",
|
|
||||||
"icon": "none",
|
|
||||||
"image_id": 91430,
|
|
||||||
"offset": [
|
|
||||||
1,
|
|
||||||
1
|
|
||||||
],
|
|
||||||
"path": "aida-sys-image/images/female/outwear/0825000856.jpg",
|
|
||||||
"print": {
|
|
||||||
"IfSingle": false,
|
|
||||||
"print_path_list": []
|
|
||||||
},
|
|
||||||
"resize_scale": 1.0,
|
|
||||||
"type": "Outwear"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"body_path": "aida-users/89/models/female/5d39394e-9809-43c2-80b8-4e96497b1974.png",
|
|
||||||
"image_id": 69331,
|
|
||||||
"offset": [
|
|
||||||
1,
|
|
||||||
1
|
|
||||||
],
|
|
||||||
"resize_scale": 1.0,
|
|
||||||
"type": "Body"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"process_id": "7296013643475027"
|
|
||||||
}
|
|
||||||
@@ -1,684 +0,0 @@
|
|||||||
{
|
|
||||||
"objects": [
|
|
||||||
{
|
|
||||||
"basic": {
|
|
||||||
"body_point_test": {
|
|
||||||
"waistband_right": [
|
|
||||||
1081,
|
|
||||||
1318
|
|
||||||
],
|
|
||||||
"hand_point_right": [
|
|
||||||
1200,
|
|
||||||
1857
|
|
||||||
],
|
|
||||||
"waistband_left": [
|
|
||||||
639,
|
|
||||||
1315
|
|
||||||
],
|
|
||||||
"hand_point_left": [
|
|
||||||
493,
|
|
||||||
1808
|
|
||||||
],
|
|
||||||
"shoulder_left": [
|
|
||||||
556,
|
|
||||||
582
|
|
||||||
],
|
|
||||||
"shoulder_right": [
|
|
||||||
1130,
|
|
||||||
576
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"layer_order": false,
|
|
||||||
"scale_bag": 0.7,
|
|
||||||
"scale_earrings": 0.16,
|
|
||||||
"self_template": true,
|
|
||||||
"single_overall": "overall",
|
|
||||||
"switch_category": ""
|
|
||||||
},
|
|
||||||
"items": [
|
|
||||||
{
|
|
||||||
"color": "151 78 78",
|
|
||||||
"icon": "none",
|
|
||||||
"image_id": 67315,
|
|
||||||
"offset": [
|
|
||||||
1,
|
|
||||||
1
|
|
||||||
],
|
|
||||||
"path": "aida-sys-image/images/female/trousers/0628000325.jpg",
|
|
||||||
"print": {
|
|
||||||
"IfSingle": false,
|
|
||||||
"print_path_list": []
|
|
||||||
},
|
|
||||||
"resize_scale": 1.0,
|
|
||||||
"type": "Trousers"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"color": "151 78 78",
|
|
||||||
"icon": "none",
|
|
||||||
"image_id": 92912,
|
|
||||||
"offset": [
|
|
||||||
1,
|
|
||||||
1
|
|
||||||
],
|
|
||||||
"path": "aida-sys-image/images/female/blouse/0825001943.jpg",
|
|
||||||
"print": {
|
|
||||||
"IfSingle": false,
|
|
||||||
"print_path_list": []
|
|
||||||
},
|
|
||||||
"resize_scale": 1.0,
|
|
||||||
"type": "Blouse"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"color": "151 78 78",
|
|
||||||
"icon": "none",
|
|
||||||
"image_id": 91430,
|
|
||||||
"offset": [
|
|
||||||
1,
|
|
||||||
1
|
|
||||||
],
|
|
||||||
"path": "aida-sys-image/images/female/outwear/0825000856.jpg",
|
|
||||||
"print": {
|
|
||||||
"IfSingle": false,
|
|
||||||
"print_path_list": []
|
|
||||||
},
|
|
||||||
"resize_scale": 1.0,
|
|
||||||
"type": "Outwear"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"body_path": "aida-users/89/models/female/5d39394e-9809-43c2-80b8-4e96497b1974.png",
|
|
||||||
"image_id": 69331,
|
|
||||||
"offset": [
|
|
||||||
1,
|
|
||||||
1
|
|
||||||
],
|
|
||||||
"resize_scale": 1.0,
|
|
||||||
"type": "Body"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
,
|
|
||||||
{
|
|
||||||
"basic": {
|
|
||||||
"body_point_test": {
|
|
||||||
"waistband_right": [
|
|
||||||
1081,
|
|
||||||
1318
|
|
||||||
],
|
|
||||||
"hand_point_right": [
|
|
||||||
1200,
|
|
||||||
1857
|
|
||||||
],
|
|
||||||
"waistband_left": [
|
|
||||||
639,
|
|
||||||
1315
|
|
||||||
],
|
|
||||||
"hand_point_left": [
|
|
||||||
493,
|
|
||||||
1808
|
|
||||||
],
|
|
||||||
"shoulder_left": [
|
|
||||||
556,
|
|
||||||
582
|
|
||||||
],
|
|
||||||
"shoulder_right": [
|
|
||||||
1130,
|
|
||||||
576
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"layer_order": false,
|
|
||||||
"scale_bag": 0.7,
|
|
||||||
"scale_earrings": 0.16,
|
|
||||||
"self_template": true,
|
|
||||||
"single_overall": "overall",
|
|
||||||
"switch_category": ""
|
|
||||||
},
|
|
||||||
"items": [
|
|
||||||
{
|
|
||||||
"color": "151 78 78",
|
|
||||||
"icon": "none",
|
|
||||||
"image_id": 92913,
|
|
||||||
"offset": [
|
|
||||||
1,
|
|
||||||
1
|
|
||||||
],
|
|
||||||
"path": "aida-sys-image/images/female/dress/826000033.jpg",
|
|
||||||
"print": {
|
|
||||||
"IfSingle": false,
|
|
||||||
"print_path_list": []
|
|
||||||
},
|
|
||||||
"resize_scale": 1.0,
|
|
||||||
"type": "Dress"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"body_path": "aida-users/89/models/female/5d39394e-9809-43c2-80b8-4e96497b1974.png",
|
|
||||||
"image_id": 69331,
|
|
||||||
"offset": [
|
|
||||||
1,
|
|
||||||
1
|
|
||||||
],
|
|
||||||
"resize_scale": 1.0,
|
|
||||||
"type": "Body"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
,
|
|
||||||
{
|
|
||||||
"basic": {
|
|
||||||
"body_point_test": {
|
|
||||||
"waistband_right": [
|
|
||||||
1081,
|
|
||||||
1318
|
|
||||||
],
|
|
||||||
"hand_point_right": [
|
|
||||||
1200,
|
|
||||||
1857
|
|
||||||
],
|
|
||||||
"waistband_left": [
|
|
||||||
639,
|
|
||||||
1315
|
|
||||||
],
|
|
||||||
"hand_point_left": [
|
|
||||||
493,
|
|
||||||
1808
|
|
||||||
],
|
|
||||||
"shoulder_left": [
|
|
||||||
556,
|
|
||||||
582
|
|
||||||
],
|
|
||||||
"shoulder_right": [
|
|
||||||
1130,
|
|
||||||
576
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"layer_order": false,
|
|
||||||
"scale_bag": 0.7,
|
|
||||||
"scale_earrings": 0.16,
|
|
||||||
"self_template": true,
|
|
||||||
"single_overall": "overall",
|
|
||||||
"switch_category": ""
|
|
||||||
},
|
|
||||||
"items": [
|
|
||||||
{
|
|
||||||
"color": "151 78 78",
|
|
||||||
"icon": "none",
|
|
||||||
"image_id": 92914,
|
|
||||||
"offset": [
|
|
||||||
1,
|
|
||||||
1
|
|
||||||
],
|
|
||||||
"path": "aida-sys-image/images/female/skirt/0902001788.jpg",
|
|
||||||
"print": {
|
|
||||||
"IfSingle": false,
|
|
||||||
"print_path_list": []
|
|
||||||
},
|
|
||||||
"resize_scale": 1.0,
|
|
||||||
"type": "Skirt"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"color": "151 78 78",
|
|
||||||
"icon": "none",
|
|
||||||
"image_id": 92915,
|
|
||||||
"offset": [
|
|
||||||
1,
|
|
||||||
1
|
|
||||||
],
|
|
||||||
"path": "aida-sys-image/images/female/blouse/0902003817.jpg",
|
|
||||||
"print": {
|
|
||||||
"IfSingle": false,
|
|
||||||
"print_path_list": []
|
|
||||||
},
|
|
||||||
"resize_scale": 1.0,
|
|
||||||
"type": "Blouse"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"body_path": "aida-users/89/models/female/5d39394e-9809-43c2-80b8-4e96497b1974.png",
|
|
||||||
"image_id": 69331,
|
|
||||||
"offset": [
|
|
||||||
1,
|
|
||||||
1
|
|
||||||
],
|
|
||||||
"resize_scale": 1.0,
|
|
||||||
"type": "Body"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
,
|
|
||||||
{
|
|
||||||
"basic": {
|
|
||||||
"body_point_test": {
|
|
||||||
"waistband_right": [
|
|
||||||
1081,
|
|
||||||
1318
|
|
||||||
],
|
|
||||||
"hand_point_right": [
|
|
||||||
1200,
|
|
||||||
1857
|
|
||||||
],
|
|
||||||
"waistband_left": [
|
|
||||||
639,
|
|
||||||
1315
|
|
||||||
],
|
|
||||||
"hand_point_left": [
|
|
||||||
493,
|
|
||||||
1808
|
|
||||||
],
|
|
||||||
"shoulder_left": [
|
|
||||||
556,
|
|
||||||
582
|
|
||||||
],
|
|
||||||
"shoulder_right": [
|
|
||||||
1130,
|
|
||||||
576
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"layer_order": false,
|
|
||||||
"scale_bag": 0.7,
|
|
||||||
"scale_earrings": 0.16,
|
|
||||||
"self_template": true,
|
|
||||||
"single_overall": "overall",
|
|
||||||
"switch_category": ""
|
|
||||||
},
|
|
||||||
"items": [
|
|
||||||
{
|
|
||||||
"color": "151 78 78",
|
|
||||||
"icon": "none",
|
|
||||||
"image_id": 92916,
|
|
||||||
"offset": [
|
|
||||||
1,
|
|
||||||
1
|
|
||||||
],
|
|
||||||
"path": "aida-sys-image/images/female/skirt/skirt_p4_838.jpg",
|
|
||||||
"print": {
|
|
||||||
"IfSingle": false,
|
|
||||||
"print_path_list": []
|
|
||||||
},
|
|
||||||
"resize_scale": 1.0,
|
|
||||||
"type": "Skirt"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"color": "151 78 78",
|
|
||||||
"icon": "none",
|
|
||||||
"image_id": 84210,
|
|
||||||
"offset": [
|
|
||||||
1,
|
|
||||||
1
|
|
||||||
],
|
|
||||||
"path": "aida-sys-image/images/female/blouse/0916000703.jpg",
|
|
||||||
"print": {
|
|
||||||
"IfSingle": false,
|
|
||||||
"print_path_list": []
|
|
||||||
},
|
|
||||||
"resize_scale": 1.0,
|
|
||||||
"type": "Blouse"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"body_path": "aida-users/89/models/female/5d39394e-9809-43c2-80b8-4e96497b1974.png",
|
|
||||||
"image_id": 69331,
|
|
||||||
"offset": [
|
|
||||||
1,
|
|
||||||
1
|
|
||||||
],
|
|
||||||
"resize_scale": 1.0,
|
|
||||||
"type": "Body"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
,
|
|
||||||
{
|
|
||||||
"basic": {
|
|
||||||
"body_point_test": {
|
|
||||||
"waistband_right": [
|
|
||||||
1081,
|
|
||||||
1318
|
|
||||||
],
|
|
||||||
"hand_point_right": [
|
|
||||||
1200,
|
|
||||||
1857
|
|
||||||
],
|
|
||||||
"waistband_left": [
|
|
||||||
639,
|
|
||||||
1315
|
|
||||||
],
|
|
||||||
"hand_point_left": [
|
|
||||||
493,
|
|
||||||
1808
|
|
||||||
],
|
|
||||||
"shoulder_left": [
|
|
||||||
556,
|
|
||||||
582
|
|
||||||
],
|
|
||||||
"shoulder_right": [
|
|
||||||
1130,
|
|
||||||
576
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"layer_order": false,
|
|
||||||
"scale_bag": 0.7,
|
|
||||||
"scale_earrings": 0.16,
|
|
||||||
"self_template": true,
|
|
||||||
"single_overall": "overall",
|
|
||||||
"switch_category": ""
|
|
||||||
},
|
|
||||||
"items": [
|
|
||||||
{
|
|
||||||
"color": "151 78 78",
|
|
||||||
"icon": "none",
|
|
||||||
"image_id": 62041,
|
|
||||||
"offset": [
|
|
||||||
1,
|
|
||||||
1
|
|
||||||
],
|
|
||||||
"path": "aida-sys-image/images/female/outwear/0902000232.jpg",
|
|
||||||
"print": {
|
|
||||||
"IfSingle": false,
|
|
||||||
"print_path_list": []
|
|
||||||
},
|
|
||||||
"resize_scale": 1.0,
|
|
||||||
"type": "Outwear"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"color": "151 78 78",
|
|
||||||
"icon": "none",
|
|
||||||
"image_id": 67039,
|
|
||||||
"offset": [
|
|
||||||
1,
|
|
||||||
1
|
|
||||||
],
|
|
||||||
"path": "aida-sys-image/images/female/blouse/0902002591.jpg",
|
|
||||||
"print": {
|
|
||||||
"IfSingle": false,
|
|
||||||
"print_path_list": []
|
|
||||||
},
|
|
||||||
"resize_scale": 1.0,
|
|
||||||
"type": "Blouse"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"color": "151 78 78",
|
|
||||||
"icon": "none",
|
|
||||||
"image_id": 78016,
|
|
||||||
"offset": [
|
|
||||||
1,
|
|
||||||
1
|
|
||||||
],
|
|
||||||
"path": "aida-sys-image/images/female/trousers/trousers_p4_302.jpg",
|
|
||||||
"print": {
|
|
||||||
"IfSingle": false,
|
|
||||||
"print_path_list": []
|
|
||||||
},
|
|
||||||
"resize_scale": 1.0,
|
|
||||||
"type": "Trousers"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"body_path": "aida-users/89/models/female/5d39394e-9809-43c2-80b8-4e96497b1974.png",
|
|
||||||
"image_id": 69331,
|
|
||||||
"offset": [
|
|
||||||
1,
|
|
||||||
1
|
|
||||||
],
|
|
||||||
"resize_scale": 1.0,
|
|
||||||
"type": "Body"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
,
|
|
||||||
{
|
|
||||||
"basic": {
|
|
||||||
"body_point_test": {
|
|
||||||
"waistband_right": [
|
|
||||||
1081,
|
|
||||||
1318
|
|
||||||
],
|
|
||||||
"hand_point_right": [
|
|
||||||
1200,
|
|
||||||
1857
|
|
||||||
],
|
|
||||||
"waistband_left": [
|
|
||||||
639,
|
|
||||||
1315
|
|
||||||
],
|
|
||||||
"hand_point_left": [
|
|
||||||
493,
|
|
||||||
1808
|
|
||||||
],
|
|
||||||
"shoulder_left": [
|
|
||||||
556,
|
|
||||||
582
|
|
||||||
],
|
|
||||||
"shoulder_right": [
|
|
||||||
1130,
|
|
||||||
576
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"layer_order": false,
|
|
||||||
"scale_bag": 0.7,
|
|
||||||
"scale_earrings": 0.16,
|
|
||||||
"self_template": true,
|
|
||||||
"single_overall": "overall",
|
|
||||||
"switch_category": ""
|
|
||||||
},
|
|
||||||
"items": [
|
|
||||||
{
|
|
||||||
"color": "151 78 78",
|
|
||||||
"icon": "none",
|
|
||||||
"image_id": 92917,
|
|
||||||
"offset": [
|
|
||||||
1,
|
|
||||||
1
|
|
||||||
],
|
|
||||||
"path": "aida-sys-image/images/female/trousers/0902001403.jpg",
|
|
||||||
"print": {
|
|
||||||
"IfSingle": false,
|
|
||||||
"print_path_list": []
|
|
||||||
},
|
|
||||||
"resize_scale": 1.0,
|
|
||||||
"type": "Trousers"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"color": "151 78 78",
|
|
||||||
"icon": "none",
|
|
||||||
"image_id": 92306,
|
|
||||||
"offset": [
|
|
||||||
1,
|
|
||||||
1
|
|
||||||
],
|
|
||||||
"path": "aida-sys-image/images/female/blouse/0902001766.jpg",
|
|
||||||
"print": {
|
|
||||||
"IfSingle": false,
|
|
||||||
"print_path_list": []
|
|
||||||
},
|
|
||||||
"resize_scale": 1.0,
|
|
||||||
"type": "Blouse"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"body_path": "aida-users/89/models/female/5d39394e-9809-43c2-80b8-4e96497b1974.png",
|
|
||||||
"image_id": 69331,
|
|
||||||
"offset": [
|
|
||||||
1,
|
|
||||||
1
|
|
||||||
],
|
|
||||||
"resize_scale": 1.0,
|
|
||||||
"type": "Body"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
,
|
|
||||||
{
|
|
||||||
"basic": {
|
|
||||||
"body_point_test": {
|
|
||||||
"waistband_right": [
|
|
||||||
1081,
|
|
||||||
1318
|
|
||||||
],
|
|
||||||
"hand_point_right": [
|
|
||||||
1200,
|
|
||||||
1857
|
|
||||||
],
|
|
||||||
"waistband_left": [
|
|
||||||
639,
|
|
||||||
1315
|
|
||||||
],
|
|
||||||
"hand_point_left": [
|
|
||||||
493,
|
|
||||||
1808
|
|
||||||
],
|
|
||||||
"shoulder_left": [
|
|
||||||
556,
|
|
||||||
582
|
|
||||||
],
|
|
||||||
"shoulder_right": [
|
|
||||||
1130,
|
|
||||||
576
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"layer_order": false,
|
|
||||||
"scale_bag": 0.7,
|
|
||||||
"scale_earrings": 0.16,
|
|
||||||
"self_template": true,
|
|
||||||
"single_overall": "overall",
|
|
||||||
"switch_category": ""
|
|
||||||
},
|
|
||||||
"items": [
|
|
||||||
{
|
|
||||||
"color": "151 78 78",
|
|
||||||
"icon": "none",
|
|
||||||
"image_id": 86564,
|
|
||||||
"offset": [
|
|
||||||
1,
|
|
||||||
1
|
|
||||||
],
|
|
||||||
"path": "aida-sys-image/images/female/blouse/0916000038.jpg",
|
|
||||||
"print": {
|
|
||||||
"IfSingle": false,
|
|
||||||
"print_path_list": []
|
|
||||||
},
|
|
||||||
"resize_scale": 1.0,
|
|
||||||
"type": "Blouse"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"color": "151 78 78",
|
|
||||||
"icon": "none",
|
|
||||||
"image_id": 92918,
|
|
||||||
"offset": [
|
|
||||||
1,
|
|
||||||
1
|
|
||||||
],
|
|
||||||
"path": "aida-sys-image/images/female/trousers/0628001561.jpeg",
|
|
||||||
"print": {
|
|
||||||
"IfSingle": false,
|
|
||||||
"print_path_list": []
|
|
||||||
},
|
|
||||||
"resize_scale": 1.0,
|
|
||||||
"type": "Trousers"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"color": "151 78 78",
|
|
||||||
"icon": "none",
|
|
||||||
"image_id": 92919,
|
|
||||||
"offset": [
|
|
||||||
1,
|
|
||||||
1
|
|
||||||
],
|
|
||||||
"path": "aida-sys-image/images/female/outwear/outwear_p3186.jpg",
|
|
||||||
"print": {
|
|
||||||
"IfSingle": false,
|
|
||||||
"print_path_list": []
|
|
||||||
},
|
|
||||||
"resize_scale": 1.0,
|
|
||||||
"type": "Outwear"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"body_path": "aida-users/89/models/female/5d39394e-9809-43c2-80b8-4e96497b1974.png",
|
|
||||||
"image_id": 69331,
|
|
||||||
"offset": [
|
|
||||||
1,
|
|
||||||
1
|
|
||||||
],
|
|
||||||
"resize_scale": 1.0,
|
|
||||||
"type": "Body"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
,
|
|
||||||
{
|
|
||||||
"basic": {
|
|
||||||
"body_point_test": {
|
|
||||||
"waistband_right": [
|
|
||||||
1081,
|
|
||||||
1318
|
|
||||||
],
|
|
||||||
"hand_point_right": [
|
|
||||||
1200,
|
|
||||||
1857
|
|
||||||
],
|
|
||||||
"waistband_left": [
|
|
||||||
639,
|
|
||||||
1315
|
|
||||||
],
|
|
||||||
"hand_point_left": [
|
|
||||||
493,
|
|
||||||
1808
|
|
||||||
],
|
|
||||||
"shoulder_left": [
|
|
||||||
556,
|
|
||||||
582
|
|
||||||
],
|
|
||||||
"shoulder_right": [
|
|
||||||
1130,
|
|
||||||
576
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"layer_order": false,
|
|
||||||
"scale_bag": 0.7,
|
|
||||||
"scale_earrings": 0.16,
|
|
||||||
"self_template": true,
|
|
||||||
"single_overall": "overall",
|
|
||||||
"switch_category": ""
|
|
||||||
},
|
|
||||||
"items": [
|
|
||||||
{
|
|
||||||
"color": "151 78 78",
|
|
||||||
"icon": "none",
|
|
||||||
"image_id": 67009,
|
|
||||||
"offset": [
|
|
||||||
1,
|
|
||||||
1
|
|
||||||
],
|
|
||||||
"path": "aida-sys-image/images/female/blouse/0902002051.jpg",
|
|
||||||
"print": {
|
|
||||||
"IfSingle": false,
|
|
||||||
"print_path_list": []
|
|
||||||
},
|
|
||||||
"resize_scale": 1.0,
|
|
||||||
"type": "Blouse"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"color": "151 78 78",
|
|
||||||
"icon": "none",
|
|
||||||
"image_id": 85028,
|
|
||||||
"offset": [
|
|
||||||
1,
|
|
||||||
1
|
|
||||||
],
|
|
||||||
"path": "aida-sys-image/images/female/skirt/903000142.jpg",
|
|
||||||
"print": {
|
|
||||||
"IfSingle": false,
|
|
||||||
"print_path_list": []
|
|
||||||
},
|
|
||||||
"resize_scale": 1.0,
|
|
||||||
"type": "Skirt"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"body_path": "aida-users/89/models/female/5d39394e-9809-43c2-80b8-4e96497b1974.png",
|
|
||||||
"image_id": 69331,
|
|
||||||
"offset": [
|
|
||||||
1,
|
|
||||||
1
|
|
||||||
],
|
|
||||||
"resize_scale": 1.0,
|
|
||||||
"type": "Body"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"process_id": "7296013643475027"
|
|
||||||
}
|
|
||||||
@@ -1,69 +1,771 @@
|
|||||||
|
{
|
||||||
|
"objects": [
|
||||||
{
|
{
|
||||||
"basic": {
|
"basic": {
|
||||||
"body_point": {
|
"body_point_test": {
|
||||||
"waistband_right": [
|
"waistband_right": [
|
||||||
1081,
|
336,
|
||||||
1318
|
264
|
||||||
],
|
],
|
||||||
"hand_point_right": [
|
"hand_point_right": [
|
||||||
1200,
|
350,
|
||||||
1857
|
303
|
||||||
],
|
],
|
||||||
"waistband_left": [
|
"waistband_left": [
|
||||||
639,
|
245,
|
||||||
1315
|
274
|
||||||
],
|
],
|
||||||
"hand_point_left": [
|
"hand_point_left": [
|
||||||
493,
|
219,
|
||||||
1808
|
315
|
||||||
],
|
],
|
||||||
"shoulder_left": [
|
"shoulder_left": [
|
||||||
556,
|
227,
|
||||||
582
|
155
|
||||||
],
|
],
|
||||||
"shoulder_right": [
|
"shoulder_right": [
|
||||||
1130,
|
338,
|
||||||
576
|
149
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"layer_order": false,
|
"layer_order": false,
|
||||||
"scale_bag": 0.7,
|
"scale_bag": 0.7,
|
||||||
"scale_earrings": 0.16,
|
"scale_earrings": 0.16,
|
||||||
"self_template": true,
|
"self_template": true,
|
||||||
"single_overall": "single",
|
"single_overall": "overall",
|
||||||
"switch_category": "Trousers",
|
"switch_category": ""
|
||||||
"body_path": "aida-users/89/models/female/5d39394e-9809-43c2-80b8-4e96497b1974.png"
|
|
||||||
},
|
},
|
||||||
"item": [
|
"items": [
|
||||||
{
|
{
|
||||||
"color": "151 78 78",
|
"businessId": 493827,
|
||||||
"image_id": "67315",
|
"color": "127 61 21",
|
||||||
|
"elementId": 493827,
|
||||||
|
"icon": "none",
|
||||||
|
"image_id": 110201,
|
||||||
"offset": [
|
"offset": [
|
||||||
1,
|
1,
|
||||||
1
|
1
|
||||||
],
|
],
|
||||||
"path": "aida-sys-image/images/female/trousers/0628000325.jpg",
|
"path": "aida-users/31/sketch/62302527-2910-4740-808d-2cb8221daa34-3-31.png",
|
||||||
"print": {
|
"print": {
|
||||||
"if_single": false,
|
"IfSingle": false,
|
||||||
"print_path_list": []
|
"print_path_list": []
|
||||||
},
|
},
|
||||||
"resize_scale": 1.0,
|
"resize_scale": [
|
||||||
|
1.0,
|
||||||
|
1.0
|
||||||
|
],
|
||||||
|
"type": "Dress"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"body_path": "aida-users/31/models/female/845046c7-4f62-4f54-a4a9-c26d49c6969335b5b3a9-d335-4871-a46c-3cc3caf07da259629dfd1f1f555a2e2a9def7e719366.png",
|
||||||
|
"image_id": 82966,
|
||||||
|
"offset": [
|
||||||
|
1,
|
||||||
|
1
|
||||||
|
],
|
||||||
|
"resize_scale": [
|
||||||
|
1.0,
|
||||||
|
1.0
|
||||||
|
],
|
||||||
|
"type": "Body"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"basic": {
|
||||||
|
"body_point_test": {
|
||||||
|
"waistband_right": [
|
||||||
|
336,
|
||||||
|
264
|
||||||
|
],
|
||||||
|
"hand_point_right": [
|
||||||
|
350,
|
||||||
|
303
|
||||||
|
],
|
||||||
|
"waistband_left": [
|
||||||
|
245,
|
||||||
|
274
|
||||||
|
],
|
||||||
|
"hand_point_left": [
|
||||||
|
219,
|
||||||
|
315
|
||||||
|
],
|
||||||
|
"shoulder_left": [
|
||||||
|
227,
|
||||||
|
155
|
||||||
|
],
|
||||||
|
"shoulder_right": [
|
||||||
|
338,
|
||||||
|
149
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"layer_order": false,
|
||||||
|
"scale_bag": 0.7,
|
||||||
|
"scale_earrings": 0.16,
|
||||||
|
"self_template": true,
|
||||||
|
"single_overall": "overall",
|
||||||
|
"switch_category": ""
|
||||||
|
},
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"color": "27 25 23",
|
||||||
|
"icon": "none",
|
||||||
|
"image_id": 110202,
|
||||||
|
"offset": [
|
||||||
|
1,
|
||||||
|
1
|
||||||
|
],
|
||||||
|
"path": "aida-sys-image/images/female/skirt/0916000602.jpg",
|
||||||
|
"print": {
|
||||||
|
"IfSingle": false,
|
||||||
|
"print_path_list": []
|
||||||
|
},
|
||||||
|
"resize_scale": [
|
||||||
|
1.0,
|
||||||
|
1.0
|
||||||
|
],
|
||||||
|
"type": "Skirt"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"businessId": 493825,
|
||||||
|
"color": "229 214 200",
|
||||||
|
"elementId": 493825,
|
||||||
|
"icon": "none",
|
||||||
|
"image_id": 107101,
|
||||||
|
"offset": [
|
||||||
|
1,
|
||||||
|
1
|
||||||
|
],
|
||||||
|
"path": "aida-users/31/sketchboard/female/Blouse/de8f5656-d7ae-4642-bc90-f7f9d85da09b.jpg",
|
||||||
|
"print": {
|
||||||
|
"IfSingle": false,
|
||||||
|
"print_path_list": []
|
||||||
|
},
|
||||||
|
"resize_scale": [
|
||||||
|
1.0,
|
||||||
|
1.0
|
||||||
|
],
|
||||||
|
"type": "Blouse"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"businessId": 493824,
|
||||||
|
"color": "76 124 124",
|
||||||
|
"elementId": 493824,
|
||||||
|
"icon": "none",
|
||||||
|
"image_id": 104522,
|
||||||
|
"offset": [
|
||||||
|
1,
|
||||||
|
1
|
||||||
|
],
|
||||||
|
"path": "aida-users/31/sketch/3e82214a-0191-11ef-96d2-b48351119060_1.png",
|
||||||
|
"print": {
|
||||||
|
"IfSingle": false,
|
||||||
|
"print_path_list": []
|
||||||
|
},
|
||||||
|
"resize_scale": [
|
||||||
|
1.0,
|
||||||
|
1.0
|
||||||
|
],
|
||||||
|
"type": "Outwear"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"body_path": "aida-users/31/models/female/845046c7-4f62-4f54-a4a9-c26d49c6969335b5b3a9-d335-4871-a46c-3cc3caf07da259629dfd1f1f555a2e2a9def7e719366.png",
|
||||||
|
"image_id": 82966,
|
||||||
|
"offset": [
|
||||||
|
1,
|
||||||
|
1
|
||||||
|
],
|
||||||
|
"resize_scale": [
|
||||||
|
1.0,
|
||||||
|
1.0
|
||||||
|
],
|
||||||
|
"type": "Body"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"basic": {
|
||||||
|
"body_point_test": {
|
||||||
|
"waistband_right": [
|
||||||
|
336,
|
||||||
|
264
|
||||||
|
],
|
||||||
|
"hand_point_right": [
|
||||||
|
350,
|
||||||
|
303
|
||||||
|
],
|
||||||
|
"waistband_left": [
|
||||||
|
245,
|
||||||
|
274
|
||||||
|
],
|
||||||
|
"hand_point_left": [
|
||||||
|
219,
|
||||||
|
315
|
||||||
|
],
|
||||||
|
"shoulder_left": [
|
||||||
|
227,
|
||||||
|
155
|
||||||
|
],
|
||||||
|
"shoulder_right": [
|
||||||
|
338,
|
||||||
|
149
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"layer_order": false,
|
||||||
|
"scale_bag": 0.7,
|
||||||
|
"scale_earrings": 0.16,
|
||||||
|
"self_template": true,
|
||||||
|
"single_overall": "overall",
|
||||||
|
"switch_category": ""
|
||||||
|
},
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"color": "229 214 200",
|
||||||
|
"icon": "none",
|
||||||
|
"image_id": 110203,
|
||||||
|
"offset": [
|
||||||
|
1,
|
||||||
|
1
|
||||||
|
],
|
||||||
|
"path": "aida-sys-image/images/female/blouse/0825001576.jpg",
|
||||||
|
"print": {
|
||||||
|
"IfSingle": false,
|
||||||
|
"print_path_list": []
|
||||||
|
},
|
||||||
|
"resize_scale": [
|
||||||
|
1.0,
|
||||||
|
1.0
|
||||||
|
],
|
||||||
|
"type": "Blouse"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"color": "76 124 124",
|
||||||
|
"icon": "none",
|
||||||
|
"image_id": 96071,
|
||||||
|
"offset": [
|
||||||
|
1,
|
||||||
|
1
|
||||||
|
],
|
||||||
|
"path": "aida-sys-image/images/female/skirt/903000097.jpg",
|
||||||
|
"print": {
|
||||||
|
"IfSingle": false,
|
||||||
|
"print_path_list": []
|
||||||
|
},
|
||||||
|
"resize_scale": [
|
||||||
|
1.0,
|
||||||
|
1.0
|
||||||
|
],
|
||||||
|
"type": "Skirt"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"color": "209 125 29",
|
||||||
|
"icon": "none",
|
||||||
|
"image_id": 93798,
|
||||||
|
"offset": [
|
||||||
|
1,
|
||||||
|
1
|
||||||
|
],
|
||||||
|
"path": "aida-sys-image/images/female/outwear/outwear_p4_561.jpg",
|
||||||
|
"print": {
|
||||||
|
"IfSingle": false,
|
||||||
|
"print_path_list": []
|
||||||
|
},
|
||||||
|
"resize_scale": [
|
||||||
|
1.0,
|
||||||
|
1.0
|
||||||
|
],
|
||||||
|
"type": "Outwear"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"body_path": "aida-users/31/models/female/845046c7-4f62-4f54-a4a9-c26d49c6969335b5b3a9-d335-4871-a46c-3cc3caf07da259629dfd1f1f555a2e2a9def7e719366.png",
|
||||||
|
"image_id": 82966,
|
||||||
|
"offset": [
|
||||||
|
1,
|
||||||
|
1
|
||||||
|
],
|
||||||
|
"resize_scale": [
|
||||||
|
1.0,
|
||||||
|
1.0
|
||||||
|
],
|
||||||
|
"type": "Body"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"basic": {
|
||||||
|
"body_point_test": {
|
||||||
|
"waistband_right": [
|
||||||
|
336,
|
||||||
|
264
|
||||||
|
],
|
||||||
|
"hand_point_right": [
|
||||||
|
350,
|
||||||
|
303
|
||||||
|
],
|
||||||
|
"waistband_left": [
|
||||||
|
245,
|
||||||
|
274
|
||||||
|
],
|
||||||
|
"hand_point_left": [
|
||||||
|
219,
|
||||||
|
315
|
||||||
|
],
|
||||||
|
"shoulder_left": [
|
||||||
|
227,
|
||||||
|
155
|
||||||
|
],
|
||||||
|
"shoulder_right": [
|
||||||
|
338,
|
||||||
|
149
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"layer_order": false,
|
||||||
|
"scale_bag": 0.7,
|
||||||
|
"scale_earrings": 0.16,
|
||||||
|
"self_template": true,
|
||||||
|
"single_overall": "overall",
|
||||||
|
"switch_category": ""
|
||||||
|
},
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"businessId": 493824,
|
||||||
|
"color": "209 125 29",
|
||||||
|
"elementId": 493824,
|
||||||
|
"icon": "none",
|
||||||
|
"image_id": 104522,
|
||||||
|
"offset": [
|
||||||
|
1,
|
||||||
|
1
|
||||||
|
],
|
||||||
|
"path": "aida-users/31/sketch/3e82214a-0191-11ef-96d2-b48351119060_1.png",
|
||||||
|
"print": {
|
||||||
|
"IfSingle": false,
|
||||||
|
"print_path_list": []
|
||||||
|
},
|
||||||
|
"resize_scale": [
|
||||||
|
1.0,
|
||||||
|
1.0
|
||||||
|
],
|
||||||
|
"type": "Outwear"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"color": "118 123 115",
|
||||||
|
"icon": "none",
|
||||||
|
"image_id": 110204,
|
||||||
|
"offset": [
|
||||||
|
1,
|
||||||
|
1
|
||||||
|
],
|
||||||
|
"path": "aida-sys-image/images/female/blouse/0902000457.jpg",
|
||||||
|
"print": {
|
||||||
|
"IfSingle": false,
|
||||||
|
"print_path_list": []
|
||||||
|
},
|
||||||
|
"resize_scale": [
|
||||||
|
1.0,
|
||||||
|
1.0
|
||||||
|
],
|
||||||
|
"type": "Blouse"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"color": "118 123 115",
|
||||||
|
"icon": "none",
|
||||||
|
"image_id": 79259,
|
||||||
|
"offset": [
|
||||||
|
1,
|
||||||
|
1
|
||||||
|
],
|
||||||
|
"path": "aida-sys-image/images/female/trousers/826000094.jpg",
|
||||||
|
"print": {
|
||||||
|
"IfSingle": false,
|
||||||
|
"print_path_list": []
|
||||||
|
},
|
||||||
|
"resize_scale": [
|
||||||
|
1.0,
|
||||||
|
1.0
|
||||||
|
],
|
||||||
"type": "Trousers"
|
"type": "Trousers"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"color": "151 78 78",
|
"body_path": "aida-users/31/models/female/845046c7-4f62-4f54-a4a9-c26d49c6969335b5b3a9-d335-4871-a46c-3cc3caf07da259629dfd1f1f555a2e2a9def7e719366.png",
|
||||||
"path": "aida-users/89/models/female/5d39394e-9809-43c2-80b8-4e96497b1974.png",
|
"image_id": 82966,
|
||||||
"image_id": 69331,
|
|
||||||
"offset": [
|
"offset": [
|
||||||
1,
|
1,
|
||||||
1
|
1
|
||||||
],
|
],
|
||||||
|
"resize_scale": [
|
||||||
|
1.0,
|
||||||
|
1.0
|
||||||
|
],
|
||||||
|
"type": "Body"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"basic": {
|
||||||
|
"body_point_test": {
|
||||||
|
"waistband_right": [
|
||||||
|
336,
|
||||||
|
264
|
||||||
|
],
|
||||||
|
"hand_point_right": [
|
||||||
|
350,
|
||||||
|
303
|
||||||
|
],
|
||||||
|
"waistband_left": [
|
||||||
|
245,
|
||||||
|
274
|
||||||
|
],
|
||||||
|
"hand_point_left": [
|
||||||
|
219,
|
||||||
|
315
|
||||||
|
],
|
||||||
|
"shoulder_left": [
|
||||||
|
227,
|
||||||
|
155
|
||||||
|
],
|
||||||
|
"shoulder_right": [
|
||||||
|
338,
|
||||||
|
149
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"layer_order": false,
|
||||||
|
"scale_bag": 0.7,
|
||||||
|
"scale_earrings": 0.16,
|
||||||
|
"self_template": true,
|
||||||
|
"single_overall": "overall",
|
||||||
|
"switch_category": ""
|
||||||
|
},
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"color": "127 61 21",
|
||||||
|
"icon": "none",
|
||||||
|
"image_id": 96038,
|
||||||
|
"offset": [
|
||||||
|
1,
|
||||||
|
1
|
||||||
|
],
|
||||||
|
"path": "aida-sys-image/images/female/dress/0902003549.jpg",
|
||||||
"print": {
|
"print": {
|
||||||
"if_single": false,
|
"IfSingle": false,
|
||||||
"print_path_list": []
|
"print_path_list": []
|
||||||
},
|
},
|
||||||
"resize_scale": 1.0,
|
"resize_scale": [
|
||||||
|
1.0,
|
||||||
|
1.0
|
||||||
|
],
|
||||||
|
"type": "Dress"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"body_path": "aida-users/31/models/female/845046c7-4f62-4f54-a4a9-c26d49c6969335b5b3a9-d335-4871-a46c-3cc3caf07da259629dfd1f1f555a2e2a9def7e719366.png",
|
||||||
|
"image_id": 82966,
|
||||||
|
"offset": [
|
||||||
|
1,
|
||||||
|
1
|
||||||
|
],
|
||||||
|
"resize_scale": [
|
||||||
|
1.0,
|
||||||
|
1.0
|
||||||
|
],
|
||||||
|
"type": "Body"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"basic": {
|
||||||
|
"body_point_test": {
|
||||||
|
"waistband_right": [
|
||||||
|
336,
|
||||||
|
264
|
||||||
|
],
|
||||||
|
"hand_point_right": [
|
||||||
|
350,
|
||||||
|
303
|
||||||
|
],
|
||||||
|
"waistband_left": [
|
||||||
|
245,
|
||||||
|
274
|
||||||
|
],
|
||||||
|
"hand_point_left": [
|
||||||
|
219,
|
||||||
|
315
|
||||||
|
],
|
||||||
|
"shoulder_left": [
|
||||||
|
227,
|
||||||
|
155
|
||||||
|
],
|
||||||
|
"shoulder_right": [
|
||||||
|
338,
|
||||||
|
149
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"layer_order": false,
|
||||||
|
"scale_bag": 0.7,
|
||||||
|
"scale_earrings": 0.16,
|
||||||
|
"self_template": true,
|
||||||
|
"single_overall": "overall",
|
||||||
|
"switch_category": ""
|
||||||
|
},
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"businessId": 493822,
|
||||||
|
"color": "127 61 21",
|
||||||
|
"elementId": 493822,
|
||||||
|
"icon": "none",
|
||||||
|
"image_id": 62309,
|
||||||
|
"offset": [
|
||||||
|
1,
|
||||||
|
1
|
||||||
|
],
|
||||||
|
"path": "aida-users/31/sketchboard/female/trousers/c37c2ea6-8955-4b40-8339-c737e672ca3d.jpg",
|
||||||
|
"print": {
|
||||||
|
"IfSingle": false,
|
||||||
|
"print_path_list": []
|
||||||
|
},
|
||||||
|
"resize_scale": [
|
||||||
|
1.0,
|
||||||
|
1.0
|
||||||
|
],
|
||||||
|
"type": "Trousers"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"businessId": 493825,
|
||||||
|
"color": "118 123 115",
|
||||||
|
"elementId": 493825,
|
||||||
|
"icon": "none",
|
||||||
|
"image_id": 107101,
|
||||||
|
"offset": [
|
||||||
|
1,
|
||||||
|
1
|
||||||
|
],
|
||||||
|
"path": "aida-users/31/sketchboard/female/Blouse/de8f5656-d7ae-4642-bc90-f7f9d85da09b.jpg",
|
||||||
|
"print": {
|
||||||
|
"IfSingle": false,
|
||||||
|
"print_path_list": []
|
||||||
|
},
|
||||||
|
"resize_scale": [
|
||||||
|
1.0,
|
||||||
|
1.0
|
||||||
|
],
|
||||||
|
"type": "Blouse"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"body_path": "aida-users/31/models/female/845046c7-4f62-4f54-a4a9-c26d49c6969335b5b3a9-d335-4871-a46c-3cc3caf07da259629dfd1f1f555a2e2a9def7e719366.png",
|
||||||
|
"image_id": 82966,
|
||||||
|
"offset": [
|
||||||
|
1,
|
||||||
|
1
|
||||||
|
],
|
||||||
|
"resize_scale": [
|
||||||
|
1.0,
|
||||||
|
1.0
|
||||||
|
],
|
||||||
|
"type": "Body"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"basic": {
|
||||||
|
"body_point_test": {
|
||||||
|
"waistband_right": [
|
||||||
|
336,
|
||||||
|
264
|
||||||
|
],
|
||||||
|
"hand_point_right": [
|
||||||
|
350,
|
||||||
|
303
|
||||||
|
],
|
||||||
|
"waistband_left": [
|
||||||
|
245,
|
||||||
|
274
|
||||||
|
],
|
||||||
|
"hand_point_left": [
|
||||||
|
219,
|
||||||
|
315
|
||||||
|
],
|
||||||
|
"shoulder_left": [
|
||||||
|
227,
|
||||||
|
155
|
||||||
|
],
|
||||||
|
"shoulder_right": [
|
||||||
|
338,
|
||||||
|
149
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"layer_order": false,
|
||||||
|
"scale_bag": 0.7,
|
||||||
|
"scale_earrings": 0.16,
|
||||||
|
"self_template": true,
|
||||||
|
"single_overall": "overall",
|
||||||
|
"switch_category": ""
|
||||||
|
},
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"businessId": 493826,
|
||||||
|
"color": "127 61 21",
|
||||||
|
"elementId": 493826,
|
||||||
|
"icon": "none",
|
||||||
|
"image_id": 107105,
|
||||||
|
"offset": [
|
||||||
|
1,
|
||||||
|
1
|
||||||
|
],
|
||||||
|
"path": "aida-users/31/sketchboard/female/Skirt/58710352-6301-450d-b69a-fb2922b5429a.png",
|
||||||
|
"print": {
|
||||||
|
"IfSingle": false,
|
||||||
|
"print_path_list": []
|
||||||
|
},
|
||||||
|
"resize_scale": [
|
||||||
|
1.0,
|
||||||
|
1.0
|
||||||
|
],
|
||||||
|
"type": "Skirt"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"color": "118 123 115",
|
||||||
|
"icon": "none",
|
||||||
|
"image_id": 79114,
|
||||||
|
"offset": [
|
||||||
|
1,
|
||||||
|
1
|
||||||
|
],
|
||||||
|
"path": "aida-sys-image/images/female/blouse/903000169.jpg",
|
||||||
|
"print": {
|
||||||
|
"IfSingle": false,
|
||||||
|
"print_path_list": []
|
||||||
|
},
|
||||||
|
"resize_scale": [
|
||||||
|
1.0,
|
||||||
|
1.0
|
||||||
|
],
|
||||||
|
"type": "Blouse"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"color": "229 214 200",
|
||||||
|
"icon": "none",
|
||||||
|
"image_id": 90573,
|
||||||
|
"offset": [
|
||||||
|
1,
|
||||||
|
1
|
||||||
|
],
|
||||||
|
"path": "aida-sys-image/images/female/outwear/0628000541.jpg",
|
||||||
|
"print": {
|
||||||
|
"IfSingle": false,
|
||||||
|
"print_path_list": []
|
||||||
|
},
|
||||||
|
"resize_scale": [
|
||||||
|
1.0,
|
||||||
|
1.0
|
||||||
|
],
|
||||||
|
"type": "Outwear"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"body_path": "aida-users/31/models/female/845046c7-4f62-4f54-a4a9-c26d49c6969335b5b3a9-d335-4871-a46c-3cc3caf07da259629dfd1f1f555a2e2a9def7e719366.png",
|
||||||
|
"image_id": 82966,
|
||||||
|
"offset": [
|
||||||
|
1,
|
||||||
|
1
|
||||||
|
],
|
||||||
|
"resize_scale": [
|
||||||
|
1.0,
|
||||||
|
1.0
|
||||||
|
],
|
||||||
|
"type": "Body"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"basic": {
|
||||||
|
"body_point_test": {
|
||||||
|
"waistband_right": [
|
||||||
|
336,
|
||||||
|
264
|
||||||
|
],
|
||||||
|
"hand_point_right": [
|
||||||
|
350,
|
||||||
|
303
|
||||||
|
],
|
||||||
|
"waistband_left": [
|
||||||
|
245,
|
||||||
|
274
|
||||||
|
],
|
||||||
|
"hand_point_left": [
|
||||||
|
219,
|
||||||
|
315
|
||||||
|
],
|
||||||
|
"shoulder_left": [
|
||||||
|
227,
|
||||||
|
155
|
||||||
|
],
|
||||||
|
"shoulder_right": [
|
||||||
|
338,
|
||||||
|
149
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"layer_order": false,
|
||||||
|
"scale_bag": 0.7,
|
||||||
|
"scale_earrings": 0.16,
|
||||||
|
"self_template": true,
|
||||||
|
"single_overall": "overall",
|
||||||
|
"switch_category": ""
|
||||||
|
},
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"color": "229 214 200",
|
||||||
|
"icon": "none",
|
||||||
|
"image_id": 110205,
|
||||||
|
"offset": [
|
||||||
|
1,
|
||||||
|
1
|
||||||
|
],
|
||||||
|
"path": "aida-sys-image/images/female/trousers/0916000217.jpg",
|
||||||
|
"print": {
|
||||||
|
"IfSingle": false,
|
||||||
|
"print_path_list": []
|
||||||
|
},
|
||||||
|
"resize_scale": [
|
||||||
|
1.0,
|
||||||
|
1.0
|
||||||
|
],
|
||||||
|
"type": "Trousers"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"businessId": 493825,
|
||||||
|
"color": "209 125 29",
|
||||||
|
"elementId": 493825,
|
||||||
|
"icon": "none",
|
||||||
|
"image_id": 107101,
|
||||||
|
"offset": [
|
||||||
|
1,
|
||||||
|
1
|
||||||
|
],
|
||||||
|
"path": "aida-users/31/sketchboard/female/Blouse/de8f5656-d7ae-4642-bc90-f7f9d85da09b.jpg",
|
||||||
|
"print": {
|
||||||
|
"IfSingle": false,
|
||||||
|
"print_path_list": []
|
||||||
|
},
|
||||||
|
"resize_scale": [
|
||||||
|
1.0,
|
||||||
|
1.0
|
||||||
|
],
|
||||||
|
"type": "Blouse"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"body_path": "aida-users/31/models/female/845046c7-4f62-4f54-a4a9-c26d49c6969335b5b3a9-d335-4871-a46c-3cc3caf07da259629dfd1f1f555a2e2a9def7e719366.png",
|
||||||
|
"image_id": 82966,
|
||||||
|
"offset": [
|
||||||
|
1,
|
||||||
|
1
|
||||||
|
],
|
||||||
|
"resize_scale": [
|
||||||
|
1.0,
|
||||||
|
1.0
|
||||||
|
],
|
||||||
"type": "Body"
|
"type": "Body"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
],
|
||||||
|
"process_id": "6878547032381675"
|
||||||
|
}
|
||||||
@@ -48,7 +48,6 @@ class Split(object):
|
|||||||
result_front_image_pil = Image.fromarray(cvtColor(result_front_image, COLOR_BGR2RGBA))
|
result_front_image_pil = Image.fromarray(cvtColor(result_front_image, COLOR_BGR2RGBA))
|
||||||
front_new_size = (int(result_front_image_pil.width * result["scale"] * result["resize_scale"][0]), int(result_front_image_pil.height * result["scale"] * result["resize_scale"][1]))
|
front_new_size = (int(result_front_image_pil.width * result["scale"] * result["resize_scale"][0]), int(result_front_image_pil.height * result["scale"] * result["resize_scale"][1]))
|
||||||
result_front_image_pil = result_front_image_pil.resize(front_new_size, Image.LANCZOS)
|
result_front_image_pil = result_front_image_pil.resize(front_new_size, Image.LANCZOS)
|
||||||
# TODO 多线程外部上传图片到minio
|
|
||||||
# result['front_mask_image'] = cv2.resize(front_mask, front_new_size)
|
# result['front_mask_image'] = cv2.resize(front_mask, front_new_size)
|
||||||
# result['front_image'] = result_front_image_pil
|
# result['front_image'] = result_front_image_pil
|
||||||
front_mask = cv2.resize(front_mask, front_new_size)
|
front_mask = cv2.resize(front_mask, front_new_size)
|
||||||
@@ -61,7 +60,6 @@ class Split(object):
|
|||||||
result_back_image_pil = Image.fromarray(cvtColor(result_back_image, COLOR_BGR2RGBA))
|
result_back_image_pil = Image.fromarray(cvtColor(result_back_image, COLOR_BGR2RGBA))
|
||||||
back_new_size = (int(result_back_image_pil.width * result["scale"] * result["resize_scale"][0]), int(result_back_image_pil.height * result["scale"] * result["resize_scale"][1]))
|
back_new_size = (int(result_back_image_pil.width * result["scale"] * result["resize_scale"][0]), int(result_back_image_pil.height * result["scale"] * result["resize_scale"][1]))
|
||||||
result_back_image_pil = result_back_image_pil.resize(back_new_size, Image.LANCZOS)
|
result_back_image_pil = result_back_image_pil.resize(back_new_size, Image.LANCZOS)
|
||||||
# TODO 多线程外部上传图片到minio
|
|
||||||
# result['back_mask_image'] = cv2.resize(back_mask, back_new_size)
|
# result['back_mask_image'] = cv2.resize(back_mask, back_new_size)
|
||||||
# result['back_image'] = result_back_image_pil
|
# result['back_image'] = result_back_image_pil
|
||||||
|
|
||||||
|
|||||||
@@ -9,7 +9,6 @@
|
|||||||
"""
|
"""
|
||||||
import io
|
import io
|
||||||
import logging
|
import logging
|
||||||
import time
|
|
||||||
|
|
||||||
# import boto3
|
# import boto3
|
||||||
import cv2
|
import cv2
|
||||||
@@ -18,8 +17,8 @@ from PIL import Image
|
|||||||
from minio import Minio
|
from minio import Minio
|
||||||
|
|
||||||
from app.core.config import *
|
from app.core.config import *
|
||||||
from app.service.utils.decorator import RunTime
|
|
||||||
from app.service.utils.generate_uuid import generate_uuid
|
from app.service.utils.generate_uuid import generate_uuid
|
||||||
|
from app.service.utils.oss_client import oss_upload_image
|
||||||
|
|
||||||
minio_client = Minio(
|
minio_client = Minio(
|
||||||
MINIO_URL,
|
MINIO_URL,
|
||||||
@@ -27,6 +26,7 @@ minio_client = Minio(
|
|||||||
secret_key=MINIO_SECRET,
|
secret_key=MINIO_SECRET,
|
||||||
secure=MINIO_SECURE)
|
secure=MINIO_SECURE)
|
||||||
|
|
||||||
|
|
||||||
# s3 = boto3.client(
|
# s3 = boto3.client(
|
||||||
# 's3',
|
# 's3',
|
||||||
# aws_access_key_id=S3_ACCESS_KEY,
|
# aws_access_key_id=S3_ACCESS_KEY,
|
||||||
@@ -134,8 +134,14 @@ def synthesis(data, size):
|
|||||||
image_data = io.BytesIO()
|
image_data = io.BytesIO()
|
||||||
result_image.save(image_data, format='PNG')
|
result_image.save(image_data, format='PNG')
|
||||||
image_data.seek(0)
|
image_data.seek(0)
|
||||||
|
|
||||||
|
# oss upload
|
||||||
image_bytes = image_data.read()
|
image_bytes = image_data.read()
|
||||||
return f"aida-results/{minio_client.put_object('aida-results', f'result_{generate_uuid()}.png', io.BytesIO(image_bytes), len(image_bytes), content_type='image/png').object_name}"
|
bucket_name = 'aida-results'
|
||||||
|
object_name = f'result_{generate_uuid()}.png'
|
||||||
|
req = oss_upload_image(bucket=bucket_name, object_name=object_name, image_bytes=image_bytes)
|
||||||
|
return f"{bucket_name}/{object_name}"
|
||||||
|
# return f"aida-results/{minio_client.put_object('aida-results', f'result_{generate_uuid()}.png', io.BytesIO(image_bytes), len(image_bytes), content_type='image/png').object_name}"
|
||||||
|
|
||||||
# object_name = f'result_{generate_uuid()}.png'
|
# object_name = f'result_{generate_uuid()}.png'
|
||||||
# response = s3.put_object(Bucket="aida-results", Key=object_name, Body=data, ContentType='image/png')
|
# response = s3.put_object(Bucket="aida-results", Key=object_name, Body=data, ContentType='image/png')
|
||||||
|
|||||||
@@ -9,99 +9,15 @@
|
|||||||
"""
|
"""
|
||||||
import io
|
import io
|
||||||
import logging
|
import logging
|
||||||
import time
|
|
||||||
|
|
||||||
# import boto3
|
|
||||||
import cv2
|
import cv2
|
||||||
from minio import Minio
|
|
||||||
|
|
||||||
from app.core.config import *
|
from app.core.config import *
|
||||||
from app.service.utils.decorator import RunTime
|
from app.service.utils.oss_client import oss_upload_image
|
||||||
|
|
||||||
minio_client = Minio(
|
|
||||||
f"{MINIO_URL}",
|
|
||||||
access_key=MINIO_ACCESS,
|
|
||||||
secret_key=MINIO_SECRET,
|
|
||||||
secure=MINIO_SECURE)
|
|
||||||
|
|
||||||
"""S3 上传"""
|
|
||||||
# s3 = boto3.client('s3', aws_access_key_id=S3_ACCESS_KEY, aws_secret_access_key=S3_AWS_SECRET_ACCESS_KEY, region_name=S3_REGION_NAME)
|
|
||||||
|
|
||||||
|
|
||||||
#
|
|
||||||
# @RunTime
|
|
||||||
# def upload_png_mask(front_image, object_name, mask=None):
|
|
||||||
# mask_url = None
|
|
||||||
# if mask is not None:
|
|
||||||
# # 反转掩模
|
|
||||||
# mask_inverted = cv2.bitwise_not(mask)
|
|
||||||
# # 将掩模转换为 RGBA 格式
|
|
||||||
# rgba_image = cv2.cvtColor(mask_inverted, cv2.COLOR_BGR2BGRA)
|
|
||||||
# rgba_image[rgba_image[:, :, 0] == 0] = [0, 0, 0, 0]
|
|
||||||
# # 将图像数据保存到内存中的 BytesIO 对象中
|
|
||||||
# image_bytes = io.BytesIO()
|
|
||||||
# image_bytes.write(cv2.imencode('.png', rgba_image)[1].tobytes())
|
|
||||||
# image_bytes.seek(0)
|
|
||||||
# try:
|
|
||||||
# key = f"mask/mask_{object_name}.png"
|
|
||||||
# mask_url = f"{AIDA_CLOTHING}/{key}"
|
|
||||||
# s3.put_object(Bucket=AIDA_CLOTHING, Key=key, Body=image_bytes, ContentType='image/png')
|
|
||||||
# except Exception as e:
|
|
||||||
# print(f'上传到 S3 失败: {e}')
|
|
||||||
# with io.BytesIO() as output:
|
|
||||||
# front_image.save(output, format='PNG')
|
|
||||||
# data = output.getvalue()
|
|
||||||
# # 创建一个 S3 客户端
|
|
||||||
# try:
|
|
||||||
# key = f"image/image_{object_name}.png"
|
|
||||||
# image_url = f"{AIDA_CLOTHING}/{key}"
|
|
||||||
# s3.put_object(Bucket=AIDA_CLOTHING, Key=key, Body=data, ContentType='image/png')
|
|
||||||
# return front_image, image_url, mask_url
|
|
||||||
# except Exception as e:
|
|
||||||
# print(f'上传到 S3 失败: {e}')
|
|
||||||
#
|
|
||||||
#
|
|
||||||
# @RunTime
|
|
||||||
# def upload_layer_image(image, object_name):
|
|
||||||
# with io.BytesIO() as output:
|
|
||||||
# image.save(output, format='PNG')
|
|
||||||
# data = output.getvalue()
|
|
||||||
# # 创建一个 S3 客户端
|
|
||||||
# try:
|
|
||||||
# key = f"image/image_{object_name}.png"
|
|
||||||
# image_url = f"{AIDA_CLOTHING}/{key}"
|
|
||||||
# s3.put_object(Bucket=AIDA_CLOTHING, Key=key, Body=data, ContentType='image/png')
|
|
||||||
# return image_url
|
|
||||||
# except Exception as e:
|
|
||||||
# print(f'上传到 S3 失败: {e}')
|
|
||||||
#
|
|
||||||
#
|
|
||||||
# @RunTime
|
|
||||||
# def upload_mask_image(mask, object_name):
|
|
||||||
# # 反转掩模
|
|
||||||
# mask_inverted = cv2.bitwise_not(mask)
|
|
||||||
# # 将掩模转换为 RGBA 格式
|
|
||||||
# rgba_image = cv2.cvtColor(mask_inverted, cv2.COLOR_BGR2BGRA)
|
|
||||||
# rgba_image[rgba_image[:, :, 0] == 0] = [0, 0, 0, 0]
|
|
||||||
# # 将图像数据保存到内存中的 BytesIO 对象中
|
|
||||||
# image_bytes = io.BytesIO()
|
|
||||||
# image_bytes.write(cv2.imencode('.png', rgba_image)[1].tobytes())
|
|
||||||
# image_bytes.seek(0)
|
|
||||||
# try:
|
|
||||||
# key = f"mask/mask_{object_name}.png"
|
|
||||||
# mask_url = f"{AIDA_CLOTHING}/{key}"
|
|
||||||
# s3.put_object(Bucket=AIDA_CLOTHING, Key=key, Body=image_bytes, ContentType='image/png')
|
|
||||||
# return mask_url
|
|
||||||
# except Exception as e:
|
|
||||||
# print(f'上传到 S3 失败: {e}')
|
|
||||||
|
|
||||||
|
|
||||||
"""minio 上传"""
|
|
||||||
|
|
||||||
|
|
||||||
# @RunTime
|
# @RunTime
|
||||||
def upload_png_mask(front_image, object_name, mask=None):
|
def upload_png_mask(front_image, object_name, mask=None):
|
||||||
start_time = time.time()
|
|
||||||
try:
|
try:
|
||||||
mask_url = None
|
mask_url = None
|
||||||
if mask is not None:
|
if mask is not None:
|
||||||
@@ -109,48 +25,21 @@ def upload_png_mask(front_image, object_name, mask=None):
|
|||||||
# 将掩模的3通道转换为4通道,白色部分不透明,黑色部分透明
|
# 将掩模的3通道转换为4通道,白色部分不透明,黑色部分透明
|
||||||
rgba_image = cv2.cvtColor(mask_inverted, cv2.COLOR_BGR2BGRA)
|
rgba_image = cv2.cvtColor(mask_inverted, cv2.COLOR_BGR2BGRA)
|
||||||
rgba_image[rgba_image[:, :, 0] == 0] = [0, 0, 0, 0]
|
rgba_image[rgba_image[:, :, 0] == 0] = [0, 0, 0, 0]
|
||||||
image_bytes = io.BytesIO()
|
# image_bytes = io.BytesIO()
|
||||||
image_bytes.write(cv2.imencode('.png', rgba_image)[1].tobytes())
|
# image_bytes.write(cv2.imencode('.png', rgba_image)[1].tobytes())
|
||||||
|
# image_bytes.seek(0)
|
||||||
image_bytes.seek(0)
|
# mask_url = f"{AIDA_CLOTHING}/{minio_client.put_object('aida-clothing', f'mask/mask_{object_name}.png', image_bytes, len(image_bytes.getvalue()), content_type='image/png').object_name}"
|
||||||
mask_url = f"{AIDA_CLOTHING}/{minio_client.put_object('aida-clothing', f'mask/mask_{object_name}.png', image_bytes, len(image_bytes.getvalue()), content_type='image/png').object_name}"
|
# oss upload ####################
|
||||||
|
req = oss_upload_image(bucket=AIDA_CLOTHING, object_name=f"mask/mask_{object_name}.png", image_bytes=cv2.imencode('.png', rgba_image)[1])
|
||||||
|
mask_url = f"{AIDA_CLOTHING}/mask/mask_{object_name}.png"
|
||||||
|
|
||||||
image_data = io.BytesIO()
|
image_data = io.BytesIO()
|
||||||
front_image.save(image_data, format='PNG')
|
front_image.save(image_data, format='PNG')
|
||||||
image_data.seek(0)
|
image_data.seek(0)
|
||||||
image_bytes = image_data.read()
|
image_bytes = image_data.read()
|
||||||
image_url = f"{AIDA_CLOTHING}/{minio_client.put_object('aida-clothing', f'image/image_{object_name}.png', io.BytesIO(image_bytes), len(image_bytes), content_type='image/png').object_name}"
|
# image_url = f"{AIDA_CLOTHING}/{minio_client.put_object('aida-clothing', f'image/image_{object_name}.png', io.BytesIO(image_bytes), len(image_bytes), content_type='image/png').object_name}"
|
||||||
# print(f"upload_png_mask {object_name} = {time.time() - start_time}")
|
req = oss_upload_image(bucket=AIDA_CLOTHING, object_name=f"image/image_{object_name}.png", image_bytes=image_bytes)
|
||||||
|
image_url = f"{AIDA_CLOTHING}/image/image_{object_name}.png"
|
||||||
return front_image, image_url, mask_url
|
return front_image, image_url, mask_url
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
logging.warning(f"upload_png_mask runtime exception : {e}")
|
logging.warning(f"upload_png_mask runtime exception : {e}")
|
||||||
|
|
||||||
|
|
||||||
@RunTime
|
|
||||||
def upload_layer_image(image, object_name):
|
|
||||||
try:
|
|
||||||
image_data = io.BytesIO()
|
|
||||||
image.save(image_data, format='PNG')
|
|
||||||
image_data.seek(0)
|
|
||||||
image_bytes = image_data.read()
|
|
||||||
image_url = f"{AIDA_CLOTHING}/{minio_client.put_object('aida-clothing', f'image/image_{object_name}.png', io.BytesIO(image_bytes), len(image_bytes), content_type='image/png').object_name}"
|
|
||||||
return image_url
|
|
||||||
except Exception as e:
|
|
||||||
logging.warning(f"upload_png_mask runtime exception : {e}")
|
|
||||||
|
|
||||||
|
|
||||||
@RunTime
|
|
||||||
def upload_mask_image(mask, object_name):
|
|
||||||
try:
|
|
||||||
mask_inverted = cv2.bitwise_not(mask)
|
|
||||||
# 将掩模的3通道转换为4通道,白色部分不透明,黑色部分透明
|
|
||||||
rgba_image = cv2.cvtColor(mask_inverted, cv2.COLOR_BGR2BGRA)
|
|
||||||
rgba_image[rgba_image[:, :, 0] == 0] = [0, 0, 0, 0]
|
|
||||||
image_bytes = io.BytesIO()
|
|
||||||
image_bytes.write(cv2.imencode('.png', rgba_image)[1].tobytes())
|
|
||||||
|
|
||||||
image_bytes.seek(0)
|
|
||||||
mask_url = f"{AIDA_CLOTHING}/{minio_client.put_object('aida-clothing', f'mask/mask_{object_name}.png', image_bytes, len(image_bytes.getvalue()), content_type='image/png').object_name}"
|
|
||||||
return mask_url
|
|
||||||
except Exception as e:
|
|
||||||
logging.warning(f"upload_png_mask runtime exception : {e}")
|
|
||||||
|
|||||||
@@ -8,6 +8,7 @@ import tritonclient.grpc as grpcclient
|
|||||||
from urllib3.exceptions import ResponseError
|
from urllib3.exceptions import ResponseError
|
||||||
|
|
||||||
from app.core.config import *
|
from app.core.config import *
|
||||||
|
from app.schemas.pre_processing import DesignPreProcessingModel
|
||||||
from app.service.design.utils.design_ensemble import get_keypoint_result
|
from app.service.design.utils.design_ensemble import get_keypoint_result
|
||||||
from app.service.utils.oss_client import oss_get_image, oss_upload_image
|
from app.service.utils.oss_client import oss_get_image, oss_upload_image
|
||||||
|
|
||||||
@@ -355,3 +356,19 @@ class DesignPreprocessing:
|
|||||||
except Exception as e:
|
except Exception as e:
|
||||||
logging.info(f"save keypoint cache milvus error : {e}")
|
logging.info(f"save keypoint cache milvus error : {e}")
|
||||||
return dict(zip(KEYPOINT_RESULT_TABLE_FIELD_SET, result.reshape(12, 2).astype(int).tolist()))
|
return dict(zip(KEYPOINT_RESULT_TABLE_FIELD_SET, result.reshape(12, 2).astype(int).tolist()))
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == '__main__':
|
||||||
|
data = {
|
||||||
|
"sketches": [
|
||||||
|
{
|
||||||
|
"image_category": "dress",
|
||||||
|
"image_id": "107903",
|
||||||
|
"image_url": "aida-sys-image/images/female/dress/0628000000.jpg"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
request_data = DesignPreProcessingModel(sketches=data["sketches"])
|
||||||
|
server = DesignPreprocessing()
|
||||||
|
data = server.pipeline(image_list=request_data.sketches)
|
||||||
|
print(data)
|
||||||
|
|||||||
@@ -10,15 +10,17 @@
|
|||||||
import json
|
import json
|
||||||
import logging
|
import logging
|
||||||
import time
|
import time
|
||||||
|
|
||||||
import cv2
|
import cv2
|
||||||
import minio
|
import minio
|
||||||
|
import numpy as np
|
||||||
import redis
|
import redis
|
||||||
import tritonclient.grpc as grpcclient
|
import tritonclient.grpc as grpcclient
|
||||||
import numpy as np
|
|
||||||
from tritonclient.utils import np_to_triton_dtype
|
from tritonclient.utils import np_to_triton_dtype
|
||||||
|
|
||||||
from app.core.config import *
|
from app.core.config import *
|
||||||
from app.schemas.generate_image import GenerateImageModel
|
from app.schemas.generate_image import GenerateImageModel
|
||||||
from app.service.generate_image.utils.image_processing import remove_background, stain_detection, generate_category_recognition, autoLevels, luminance_adjust, face_detect_pic
|
from app.service.generate_image.utils.image_processing import remove_background, stain_detection, generate_category_recognition, autoLevels, luminance_adjust
|
||||||
from app.service.generate_image.utils.upload_sd_image import upload_png_sd
|
from app.service.generate_image.utils.upload_sd_image import upload_png_sd
|
||||||
from app.service.utils.oss_client import oss_get_image
|
from app.service.utils.oss_client import oss_get_image
|
||||||
|
|
||||||
@@ -120,13 +122,6 @@ class GenerateImage:
|
|||||||
status_data = self.redis_client.get(self.tasks_id)
|
status_data = self.redis_client.get(self.tasks_id)
|
||||||
return json.loads(status_data), status_data
|
return json.loads(status_data), status_data
|
||||||
|
|
||||||
def infer(self, inputs):
|
|
||||||
return self.grpc_client.async_infer(
|
|
||||||
model_name=GI_MODEL_NAME,
|
|
||||||
inputs=inputs,
|
|
||||||
callback=self.callback
|
|
||||||
)
|
|
||||||
|
|
||||||
def get_result(self):
|
def get_result(self):
|
||||||
try:
|
try:
|
||||||
prompts = [self.prompt] * self.batch_size
|
prompts = [self.prompt] * self.batch_size
|
||||||
@@ -146,7 +141,7 @@ class GenerateImage:
|
|||||||
input_mode.set_data_from_numpy(mode_obj)
|
input_mode.set_data_from_numpy(mode_obj)
|
||||||
|
|
||||||
inputs = [input_text, input_image, input_mode]
|
inputs = [input_text, input_image, input_mode]
|
||||||
ctx = self.infer(inputs)
|
ctx = self.grpc_client.async_infer(model_name=GI_MODEL_NAME, inputs=inputs, callback=self.callback)
|
||||||
time_out = 600
|
time_out = 600
|
||||||
generate_data = None
|
generate_data = None
|
||||||
while time_out > 0:
|
while time_out > 0:
|
||||||
@@ -186,7 +181,7 @@ if __name__ == '__main__':
|
|||||||
rd = GenerateImageModel(
|
rd = GenerateImageModel(
|
||||||
tasks_id="123-89",
|
tasks_id="123-89",
|
||||||
prompt='skeleton sitting by the side of a river looking soulful, concert poster, 4k, artistic',
|
prompt='skeleton sitting by the side of a river looking soulful, concert poster, 4k, artistic',
|
||||||
image_url="",
|
image_url="aida-collection-element/87/Printboard/842c09cf-7297-42d9-9e6e-9c17d4a13cb5.jpg",
|
||||||
mode='txt2img',
|
mode='txt2img',
|
||||||
category="test",
|
category="test",
|
||||||
gender="male"
|
gender="male"
|
||||||
|
|||||||
@@ -64,7 +64,6 @@ class SuperResolution:
|
|||||||
if self.sr_xn == 2:
|
if self.sr_xn == 2:
|
||||||
new_shape = (sample.shape[0] // self.sr_xn, sample.shape[1] // self.sr_xn)
|
new_shape = (sample.shape[0] // self.sr_xn, sample.shape[1] // self.sr_xn)
|
||||||
sample = cv2.resize(sample, new_shape)
|
sample = cv2.resize(sample, new_shape)
|
||||||
print(new_shape)
|
|
||||||
sample = np.transpose(sample if sample.shape[2] == 1 else sample[:, :, [2, 1, 0]], (2, 0, 1))
|
sample = np.transpose(sample if sample.shape[2] == 1 else sample[:, :, [2, 1, 0]], (2, 0, 1))
|
||||||
sample = torch.from_numpy(sample).float().unsqueeze(0).numpy()
|
sample = torch.from_numpy(sample).float().unsqueeze(0).numpy()
|
||||||
inputs = [
|
inputs = [
|
||||||
|
|||||||
@@ -44,7 +44,7 @@ def oss_upload_image(bucket, object_name, image_bytes):
|
|||||||
req = oss_client.put_object(bucket_name=bucket, object_name=object_name, data=io.BytesIO(image_bytes), length=len(image_bytes), content_type='image/png')
|
req = oss_client.put_object(bucket_name=bucket, object_name=object_name, data=io.BytesIO(image_bytes), length=len(image_bytes), content_type='image/png')
|
||||||
else:
|
else:
|
||||||
oss_client = boto3.client('s3', aws_access_key_id=S3_ACCESS_KEY, aws_secret_access_key=S3_AWS_SECRET_ACCESS_KEY, region_name=S3_REGION_NAME)
|
oss_client = boto3.client('s3', aws_access_key_id=S3_ACCESS_KEY, aws_secret_access_key=S3_AWS_SECRET_ACCESS_KEY, region_name=S3_REGION_NAME)
|
||||||
req = oss_client.put_object(Bucket=AIDA_CLOTHING, Key=object_name, Body=image_bytes, ContentType='image/png')
|
req = oss_client.put_object(Bucket=bucket, Key=object_name, Body=io.BytesIO(image_bytes), ContentType='image/png')
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
logger.warning(f"{OSS} | 上传图片出现异常 ######: {e}")
|
logger.warning(f"{OSS} | 上传图片出现异常 ######: {e}")
|
||||||
return req
|
return req
|
||||||
@@ -55,11 +55,15 @@ if __name__ == '__main__':
|
|||||||
# url = "aida-collection-element/11523/Moodboard/f60af0d2-94c2-48f9-90ff-74b8e8a481b5.jpg"
|
# url = "aida-collection-element/11523/Moodboard/f60af0d2-94c2-48f9-90ff-74b8e8a481b5.jpg"
|
||||||
# url = "aida-sys-image/images/female/outwear/0628000054.jpg"
|
# url = "aida-sys-image/images/female/outwear/0628000054.jpg"
|
||||||
# url = "aida-users/89/product_image/string-89.png"
|
# url = "aida-users/89/product_image/string-89.png"
|
||||||
url = "test/845046c7-4f62-4f54-a4a9-c26d49c6969335b5b3a9-d335-4871-a46c-3cc3caf07da259629dfd1f1f555a2e2a9def7e719366.png"
|
# url = "test/845046c7-4f62-4f54-a4a9-c26d49c6969335b5b3a9-d335-4871-a46c-3cc3caf07da259629dfd1f1f555a2e2a9def7e719366.png"
|
||||||
# url = 'aida-users/89/relight_image/123-89.png'
|
# url = 'aida-users/89/relight_image/123-89.png'
|
||||||
# url = 'aida-users/89/relight_image/123-89.png'
|
# url = 'aida-users/89/relight_image/123-89.png'
|
||||||
# url = 'aida-users/89/relight_image/123-89.png'
|
# url = 'aida-users/89/relight_image/123-89.png'
|
||||||
# url = "aida-users/89/sketchboard/female/Dress/e6724ab7-8d3f-4677-abe0-c3e42ab7af85.jpeg"
|
# url = "aida-users/89/sketchboard/female/Dress/e6724ab7-8d3f-4677-abe0-c3e42ab7af85.jpeg"
|
||||||
|
# url = "aida-users/87/print/956614a2-7e75-4fbe-9ed0-c1831e37a2c9-4-87.png"
|
||||||
|
# url = "aida-users/89/single_logo/123-89.png"
|
||||||
|
# url = "aida-users/89/product_image/string-89.png"
|
||||||
|
url = "aida-users/10/models/female/9c788f5b-b8c7-424c-b149-025aeb0bda51model.png"
|
||||||
read_type = "PIL"
|
read_type = "PIL"
|
||||||
if read_type == "cv2":
|
if read_type == "cv2":
|
||||||
img = oss_get_image(bucket=url.split('/')[0], object_name=url[url.find('/') + 1:], data_type=read_type)
|
img = oss_get_image(bucket=url.split('/')[0], object_name=url[url.find('/') + 1:], data_type=read_type)
|
||||||
|
|||||||
Reference in New Issue
Block a user