1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253 |
- """
- 数据集图片处理http接口
- """
- from flask import Blueprint, request, send_file, jsonify
- from watermark_generate.exceptions import BusinessException
- from watermark_generate.tools import logger_tool
- generator = Blueprint('generator', __name__)
- logger = logger_tool.logger
- # 允许的扩展名
- ALLOWED_EXTENSIONS = {'png', 'jpg', 'jpeg'}
- # 判断文件扩展名是否合法
- def allowed_file(filename):
- return '.' in filename and filename.rsplit('.', 1)[1].lower() in ALLOWED_EXTENSIONS
- # 获取文件扩展名
- def get_file_extension(filename):
- return filename.rsplit('.', 1)[1].lower()
- @generator.route('/model/watermark/embed', methods=['POST'])
- def watermark_embed():
- """
- 上传图片,嵌入密码标签,进行处理、
- label: 密码标签
- file: 上传的图像
- :return: 成功:处理完成的图像二进制流 失败:{code: -1, msg:'错误信息'}
- """
- logger.info(f'watermark embed request: {request.json}')
- # 获取请求参数
- data = request.json
- model_file = data.get('model_file')
- model_value = data.get('model_value')
- model_type = data.get('model_type')
- if model_file is None:
- raise BusinessException(message='模型代码路径不可为空', code=-1)
- if model_value is None:
- raise BusinessException(message='模型值不可为空', code=-1)
- if model_type is None:
- raise BusinessException(message='模型类型不可为空', code=-1)
- # 解压模型文件代码
- # 修改模型文件代码
- # 压缩修改后的模型文件代码
- # 返回文件响应流
- return jsonify({'model_file_new': 'test_path', 'hash_flag': 0, 'license': 0}), 200
|