当前位置: 首页 > news >正文

GFPGAN 集成Flask 接口化改造

GFPGAN是一款腾讯开源的人脸高清修复模型,基于github上提供的demo,可以简单的集成Flask以实现功能接口化。
GFPGAN的安装,Flask的安装请参见其他文章。
测试方式
如若使用POSTMAN进行测试,需使用POST方式,form-data的请求体,发送图片文件到服务端,服务端会直接返回图片流,可将响应体直接保存为文件。同样的,也可供给网页form表单使用。

import io
from flask import Flask, request, Response
import cv2
import numpy as np
import osfrom gfpgan import GFPGANerapp = Flask(__name__)# 定义修复者
restorer = GFPGANer(model_path=os.path.join('experiments/pretrained_models', 'GFPGANv1.3.pth'),
)@app.route('/action', methods=['POST', 'GET'])
def action():file = request.files['file']img_name = file.filenameinput_img = cv2.imdecode(np.asarray(bytearray(file.read()), dtype=np.uint8), -1)basename, ext = os.path.splitext(img_name)_, _, restored_img = restorer.enhance(input_img)img_ret = cv2.imencode(f'.{ext}', restored_img)[1].tobytes()img_ret = io.BytesIO(img_ret)res = Response(img_ret.read())res.headers.add('Content-Type', 'image/' + ext)res.headers.add('Content-Disposition', f'attachment; filename=restore_{img_name}')return resdef main():app.run(port=2020, host="127.0.0.1", debug=True)if __name__ == '__main__':main()

相关文章:

GFPGAN 集成Flask 接口化改造

GFPGAN是一款腾讯开源的人脸高清修复模型,基于github上提供的demo,可以简单的集成Flask以实现功能接口化。 GFPGAN的安装,Flask的安装请参见其他文章。 如若使用POSTMAN进行测试,需使用POST方式,form-data的请求体&am…...

vue数字输入框

目录 1.emitter.JS function broadcast (componentName, eventName, params) {this.$children.forEach(child > {var name child.$options.componentNameif (name componentName) {child.$emit.apply(child, [eventName].concat(params))} else {broadcast.apply(child, …...

JavaScript—BOM

BOM是什么? Browser Object Model是浏览器对象模型 官方:浏览器对象模型提供了独立于内容的、可以与浏览器窗口进行互动的对象结构,BOM由多个对象构成,其中代表浏览器窗口的window对象是BOM的顶层对象,其他对象都是该…...

C# SocketException(0x2746) asp.net一个现有的连接被远程主机强行关闭

问题原因 如果网页能正常访问,那就是TLS版本支持的问题。 我遇到的问题是: 项目用的是NET Framework 4.6.1,但是 learn.microsoft.com 提到 NET Framework 4.6及更早版本 不支持 TLS 1.1 和 TLS 1.2。 NET Framework 4.6.2 及更高版本 支持 …...

博客系统后端(项目系列2)

目录 前言 : 1.准备工作 1.1创建项目 1.2引入依赖 1.3创建必要的目录 2.数据库设计 2.1博客数据 2.2用户数据 3.封装数据库 3.1封装数据库的连接操作 3.2创建两个表对应的实体类 3.3封装一些必要的增删改查操作 4.前后端交互逻辑的实现 4.1博客列表页 …...

随机化快速排序(Java 实例代码)

随机化快速排序 一、概念及其介绍 快速排序由 C. A. R. Hoare 在 1960 年提出。 随机化快速排序基本思想:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数…...

JVM 垃圾收集

垃圾收集 分代理论Java 堆的内存分区不同分代收集垃圾收集算法 分代理论 弱分代假说:绝大多数对象都是朝生夕灭,即绝大多数对象都是用完很快需要销毁的。强分代假说:熬过多次垃圾收集过程的对象就越难以消亡,即如果对象经过多次垃…...

kubesphere中部署grafana实现dashboard以PDF方式导出

1,部署grafana-image-renderer 2,部署grafana GF_RENDERING_SERVER_URL http://ip:30323/render #grafana-image-renderer地址 GF_RENDERING_CALLBACK_URL http://ip:32403/ #grafana地址 GF_LOG_FILTERS rend…...

【环境配置】Android-Studio-OpenCV-JNI以及常见错误 ( 持续更新 )

最近一个项目要编译深度学习的库,需要用到 opencv 和 JNI,本文档用于记录环境配置中遇到的常见错误以及解决方案 Invalid Gradle JDK configuration found failed Invalid Gradle JDK configuration foundInvalid Gradle JDK configuration found. Open…...

js 正则表达式 验证 :页面中一个输入框,可输入1个或多个vid/pid,使用英文逗号隔开...

就是意思一个输入框里面&#xff0c;按VID/PID格式输入,VID和PID最大长度是4,最多50组 1、页面代码 <el-form ref"ruleForm" :model"tempSet" :rules"rules" label-position"right"> <!-- 最多 50组&#xff0c;每组9个字符…...

【算法与数据结构】112、LeetCode路径总和

文章目录 一、题目二、解法三、完整代码 所有的LeetCode题解索引&#xff0c;可以看这篇文章——【算法和数据结构】LeetCode题解。 一、题目 二、解法 思路分析&#xff1a;本题通过计算根节点到叶子节点路径上节点的值之和&#xff0c;然后再对比目标值。利用文章【算法和数据…...

②matlab桌面和编辑器

目录 matlab编辑器练习 运行脚本 matlab编辑器练习 您可以通过点击灰色代码框在脚本中输入命令。 准备就绪后&#xff0c;您可以通过点击蓝色的提交按钮提交代码。 任务 在脚本中输入命令 r 3。 2.任务 在脚本中添加命令 x pi*r^2。 附加练习 当您在实时编辑器中完成…...

高亮img、pdf重点部分(html2canvas、pdfjs-dist、react-pdf)

可用业务场景 报销单据审批中&#xff0c;高亮发票部分 需求 后台返回一张图片或者pdf、返回一组坐标&#xff0c;坐标类型[number,number,number,number]&#xff0c;分别代表了x、y、width、height。需要根据坐标在图片上高亮出来坐标位置。如下图 高亮的坐标是&#xff1…...

18.神奇导航菜单指示器

效果 源码 <!DOCTYPE html> <html> <head> <title>Magic Menu Indicator | 03</title> <link rel="stylesheet" type="text/css" href="style.css"> </head> <body><div class="navig…...

WPF+Prism+WebApi 学习总结

一、基本概念 WPF:WPF&#xff08;Windows Presentation Foundation&#xff09;是&#xff08;微软推出的&#xff09;基于Windows的用户界面框架&#xff0c;提供了统一的编程模型&#xff0c;语言和框架&#xff0c;做到了分离界面设计人员与开发人员的工作&#xff1b;WPF…...

uniapp热更新

首先热更新需要wgt包&#xff1b; 其次先了解这两个组件 下载的方法 安装的组件 场景&#xff1a; 当你项目的js文件或者页面文件或者静态图片文件css文件更新的时候可以走热更新&#xff1b; 而当你安装新的组件插件或者开启新的权限等功能的时候就无法通过热更新进行更新了…...

AUTOSAR从入门到精通-【应用篇】基于CAN协议的汽车尾气后处理诊断系统的软件开发(续)

目录 尾气后处理诊断程序的开发 5.1 数据库的解析 5.1.1 寻找XML文件 5.1.2 读取XML文件...

mybatis plus新版代码生成器,类型转换处理器ITypeConvertHandler使用

目录 引言关键代码源码分析记录一坑类型转换的第二种方式完整源码地址 引言 当默认生成的数据类型不满足时&#xff0c;就需要自定义指定要生成的类型 关键代码 FastAutoGenerator.create(url, username, password).dataSourceConfig(builder -> {builder.typeConvertHandl…...

python中的matplotlib画直方图(数据分析与可视化)

python中的matplotlib画直方图&#xff08;数据分析与可视化&#xff09; import numpy as np import pandas as pd import matplotlib.pyplot as pltpd.set_option("max_columns",None) plt.rcParams[font.sans-serif][SimHei] plt.rcParams[axes.unicode_minus]Fa…...

【详解】文本检测OCR模型的评价指标

关于文本检测OCR模型的评价指标 前言&#xff1a;网上关于评价标准乱七八糟的&#xff0c;有关于单词的&#xff0c;有关于段落的&#xff0c;似乎没见过谁解释一下常见论文中常用的评价指标具体是怎么计算的&#xff0c;比如DBNet&#xff0c;比如RCNN&#xff0c;这似乎好像…...

移动端大语言模型本地部署:从模型轻量化到推理引擎实战

1. 项目概述&#xff1a;当GPT遇见移动端&#xff0c;一个开源项目的诞生最近在GitHub上闲逛&#xff0c;发现了一个挺有意思的项目&#xff0c;叫Taewan-P/gpt_mobile。光看名字&#xff0c;你大概就能猜到它的核心&#xff1a;把类似GPT这样的大语言模型&#xff08;LLM&…...

解锁你的音乐宝藏:ncmdump让网易云音乐文件自由播放

解锁你的音乐宝藏&#xff1a;ncmdump让网易云音乐文件自由播放 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 当你精心收藏的网易云音乐只能在特定客户端播放时&#xff0c;那种被束缚的感觉是否让你感到无奈&#xff1f;想象一下…...

Windows Defender终极移除指南:高效卸载13项核心服务完整教程

Windows Defender终极移除指南&#xff1a;高效卸载13项核心服务完整教程 【免费下载链接】windows-defender-remover A tool which is uses to remove Windows Defender in Windows 8.x, Windows 10 (every version) and Windows 11. 项目地址: https://gitcode.com/gh_mirr…...

Docker化OpenOffice部署:文档自动化转换服务实战指南

1. 项目概述与核心价值最近在折腾一个老项目&#xff0c;需要处理一批.odt格式的文档&#xff0c;这让我想起了那个曾经在开源办公软件领域与微软Office分庭抗礼的“老将”——OpenOffice。虽然现在LibreOffice的风头更盛&#xff0c;但OpenOffice依然有其独特的生态位和用户群…...

基于RAG的Obsidian智能插件:用AI对话重塑个人知识管理

1. 项目概述&#xff1a;当笔记遇上AI&#xff0c;一个插件如何重塑知识管理最近在折腾我的Obsidian知识库时&#xff0c;发现了一个让我眼前一亮的插件&#xff1a;Smart2Brain。这名字起得挺有意思&#xff0c;“Smart to Brain”&#xff0c;直译过来就是“从智能到大脑”。…...

避坑指南:在Unity 2022 LTS中配置XCharts插件时遇到的3个常见问题及解决方法

Unity 2022 LTS中XCharts插件实战避坑手册 当数据可视化成为现代应用的核心需求时&#xff0c;Unity开发者常会选择XCharts这类开源图表插件来快速实现专业级图表展示。但在实际项目落地过程中&#xff0c;版本兼容性、环境配置和平台适配等问题往往会让开发进程意外卡壳。本文…...

企业级后端四层架构实战:从理论到代码的清晰落地

1. 项目概述&#xff1a;一个四层架构的实战蓝图最近在GitHub上看到一个挺有意思的项目&#xff0c;叫BTawaifi/four-layer-system。光看名字&#xff0c;你可能会觉得这又是一个老生常谈的“四层架构”理论教程&#xff0c;无非是Controller、Service、Repository那套东西。但…...

Go语言实现Hermes引擎:高性能JavaScript字节码虚拟机解析与实践

1. 项目概述&#xff1a;一个Go语言实现的Hermes引擎最近在折腾一些需要高性能模板渲染的后端服务&#xff0c;偶然间在GitHub上发现了LAI-755/hermes-go这个项目。简单来说&#xff0c;这是一个用纯Go语言实现的Hermes引擎。如果你对前端生态熟悉&#xff0c;可能听说过Hermes…...

3步强力清理:Pearcleaner让你轻松解决Mac应用残留文件问题

3步强力清理&#xff1a;Pearcleaner让你轻松解决Mac应用残留文件问题 【免费下载链接】Pearcleaner A free, source-available and fair-code licensed mac app cleaner 项目地址: https://gitcode.com/gh_mirrors/pe/Pearcleaner 你是否曾删除Mac应用后&#xff0c;发…...

基于Nginx-Lua镜像构建高性能可编程网关的实践指南

1. 项目概述&#xff1a;一个为现代Web架构而生的Nginx镜像如果你和我一样&#xff0c;长期在容器化环境中部署和管理Web服务&#xff0c;那么你一定对Nginx的灵活性和Lua脚本的强大能力印象深刻。但将这两者结合&#xff0c;并打包成一个稳定、安全、功能齐全的Docker镜像&…...