Spaces:
Sleeping
Sleeping
File size: 1,972 Bytes
d6ac96e 3c28963 d6ac96e 3c28963 d6ac96e 3c28963 d6ac96e 3c28963 d6ac96e 3c28963 d6ac96e 3c28963 d6ac96e 3c28963 d6ac96e 3c28963 d6ac96e 3c28963 d6ac96e 3c28963 d6ac96e 3c28963 d6ac96e 3c28963 d6ac96e 3c28963 d6ac96e 3c28963 d6ac96e 3c28963 d6ac96e 3c28963 a4981cb 3c28963 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 |
import os
import cv2
import torch
from flask import Flask, request, jsonify, send_file
# Importe as classes e funções necessárias para seus modelos aqui
# Carregue os modelos
model_realesr = SRVGGNetCompact(num_in_ch=3, num_out_ch=3, num_feat=64, num_conv=32, upscale=4, act_type='prelu')
model_path_realesr = 'realesr-general-x4v3.pth'
model_gfpgan_1_2 = GFPGANer(model_path='GFPGANv1.2.pth', upscale=2, arch='clean', channel_multiplier=2, bg_upsampler=upsampler)
model_gfpgan_1_3 = GFPGANer(model_path='GFPGANv1.3.pth', upscale=2, arch='clean', channel_multiplier=2, bg_upsampler=upsampler)
model_gfpgan_1_4 = GFPGANer(model_path='GFPGANv1.4.pth', upscale=2, arch='clean', channel_multiplier=2, bg_upsampler=upsampler)
# Defina o modelo RestoreFormer se necessário
# model_restoreformer = ...
# Defina o modelo CodeFormer se necessário
# model_codeformer = ...
# Defina o modelo RealESR-General-x4v3 se necessário
# model_realesr_general = ...
app = Flask(__name__)
@app.route('/reconstruir', methods=['POST'])
def reconstruir_imagem():
try:
version = request.form.get('version', 'v1.4')
scale = int(request.form.get('scale', 2))
img_file = request.files['imagem']
temp_filename = 'temp.jpg'
img_file.save(temp_filename)
if version == 'v1.2':
face_enhancer = model_gfpgan_1_2
elif version == 'v1.3':
face_enhancer = model_gfpgan_1_3
elif version == 'v1.4':
face_enhancer = model_gfpgan_1_4
# Adicione mais condições para outros modelos, se necessário
output, save_path = inference(temp_filename, version, scale)
if output is not None:
return send_file(save_path, mimetype='image/jpeg')
else:
return jsonify({'error': 'Falha na reconstrução da imagem'})
except Exception as e:
return jsonify({'error': str(e)})
if __name__ == '__main__':
app.run(host='0.0.0.0', port=80) |