jina-ai / dalle-flow

🌊 A Human-in-the-Loop workflow for creating HD images from text
grpcs://dalle-flow.dev.jina.ai
2.83k stars 209 forks source link

Add ESRGAN Upscaler (Closes #115) #119

Closed AmericanPresidentJimmyCarter closed 1 year ago

AmericanPresidentJimmyCarter commented 1 year ago

Built on top of the clipseg PR, can be merged after that branch is merged or you can review together.

AmericanPresidentJimmyCarter commented 1 year ago

Notes:

AmericanPresidentJimmyCarter commented 1 year ago

To use:

server_url = 'grpc://192.168.xxx.xxx:51005'
img = Image.open('man.jpg')
buffered = BytesIO()
img.save(buffered, format='PNG')
_d = Document(
    blob=buffered.getvalue(),
    mime_type='image/png',
).convert_blob_to_datauri()
da = DocumentArray([_d])

da[0].text = prompt

da = DocumentArray([da[0]]).post(f'{server_url}/realesrgan', parameters={
    'face_enhance': True,
    'model_name': 'RealESRGAN_x4plus',
})[0].matches

document_to_pil(da[0]).save('realesrgan_upscale.png')
AmericanPresidentJimmyCarter commented 1 year ago

@samsja Code has been added and a docstring added to the module. Should be ready to go.