feat 测试批量上传图片
fix
This commit is contained in:
@@ -68,7 +68,7 @@ class Split(object):
|
|||||||
# 创建中间图层
|
# 创建中间图层
|
||||||
result_pattern_image_rgba = rgb_to_rgba(result['pattern_image'], result['mask'])
|
result_pattern_image_rgba = rgb_to_rgba(result['pattern_image'], result['mask'])
|
||||||
result_pattern_image_pil = Image.fromarray(cvtColor(result_pattern_image_rgba, COLOR_BGR2RGBA))
|
result_pattern_image_pil = Image.fromarray(cvtColor(result_pattern_image_rgba, COLOR_BGR2RGBA))
|
||||||
result['pattern'], result['pattern_image_url'], _ = upload_png_mask(result_pattern_image_pil, f'{generate_uuid()}')
|
result['pattern_image'], result['pattern_image_url'], _ = upload_png_mask(result_pattern_image_pil, f'{generate_uuid()}')
|
||||||
return result
|
return result
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
logging.warning(f"split runtime exception : {e} image_id : {result['image_id']}")
|
logging.warning(f"split runtime exception : {e} image_id : {result['image_id']}")
|
||||||
|
|||||||
@@ -2,7 +2,6 @@ import concurrent.futures
|
|||||||
import io
|
import io
|
||||||
|
|
||||||
import cv2
|
import cv2
|
||||||
from PIL import Image
|
|
||||||
|
|
||||||
from app.core.config import PRIORITY_DICT
|
from app.core.config import PRIORITY_DICT
|
||||||
from app.service.design.core.layer import Layer
|
from app.service.design.core.layer import Layer
|
||||||
@@ -93,11 +92,11 @@ def process_object(cfg, process_id, total):
|
|||||||
# 上传所有图片
|
# 上传所有图片
|
||||||
for layer in layers:
|
for layer in layers:
|
||||||
if 'image' in layer.keys() and layer['image'] is not None:
|
if 'image' in layer.keys() and layer['image'] is not None:
|
||||||
uploaded_images.append({'image_obj': layer['image'], 'image_url': layer['image_url']})
|
uploaded_images.append({'image_obj': layer['image'], 'image_url': layer['image_url'], 'image_type': 'image'})
|
||||||
if 'pattern_image' in layer.keys() and layer['pattern_image'] is not None:
|
if 'pattern_image' in layer.keys() and layer['pattern_image'] is not None:
|
||||||
uploaded_images.append({'image_obj': layer['pattern_image'], 'image_url': layer['pattern_image_url']})
|
uploaded_images.append({'image_obj': layer['pattern_image'], 'image_url': layer['pattern_image_url'], 'image_type': 'pattern_image'})
|
||||||
if 'mask' in layer.keys() and layer['mask'] is not None and layer['mask_url'] is not None:
|
if 'mask' in layer.keys() and layer['mask'] is not None and layer['mask_url'] is not None:
|
||||||
uploaded_images.append({'image_obj': layer['mask'], 'image_url': layer['mask_url']})
|
uploaded_images.append({'image_obj': layer['mask'], 'image_url': layer['mask_url'], 'image_type': 'mask'})
|
||||||
|
|
||||||
# 合成
|
# 合成
|
||||||
items_response['synthesis_url'] = synthesis(layers, body_size)
|
items_response['synthesis_url'] = synthesis(layers, body_size)
|
||||||
@@ -164,7 +163,7 @@ def process_images(images):
|
|||||||
def upload_images(image_obj):
|
def upload_images(image_obj):
|
||||||
bucket_name = image_obj['image_url'].split("/", 1)[0]
|
bucket_name = image_obj['image_url'].split("/", 1)[0]
|
||||||
object_name = image_obj['image_url'].split("/", 1)[1]
|
object_name = image_obj['image_url'].split("/", 1)[1]
|
||||||
if isinstance(image_obj['image_obj'], Image.Image):
|
if image_obj['image_type'] == 'image' or image_obj['image_type'] == 'pattern_image':
|
||||||
image_data = io.BytesIO()
|
image_data = io.BytesIO()
|
||||||
image_obj['image_obj'].save(image_data, format='PNG')
|
image_obj['image_obj'].save(image_data, format='PNG')
|
||||||
image_data.seek(0)
|
image_data.seek(0)
|
||||||
|
|||||||
Reference in New Issue
Block a user