赞
踩
pip install gradio
- import gradio as gr
-
- def greet(name):
- return "Hello " + name + "!!"
-
- iface = gr.Interface(fn=greet, inputs="text", outputs="text")
- iface.launch()
执行以上代码后有以下输出:
在浏览器中输入以上地址会有以下界面:
- import cv2
- import gradio as gr
- import uuid
-
-
- # 初始化OpenCV的人脸和眼睛检测分类器
- face_cascade = cv2.CascadeClassifier(cv2.data.haarcascades + 'haarcascade_frontalface_default.xml')
- eye_cascade = cv2.CascadeClassifier(cv2.data.haarcascades + 'haarcascade_eye.xml')
-
-
- def trun_gray(image):
- image = cv2.imread(image)
- gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
- # 检测人脸
- faces = face_cascade.detectMultiScale(gray, 1.1, 4)
- # 在人脸上画框
- for (x, y, w, h) in faces:
- cv2.rectangle(image, (x, y), (x+w, y+h), (255, 0, 0), 2)
- # 设置保存路径
- save_path = "./{}.png".format(str(uuid.uuid4()))
- # 保存图片
- cv2.imwrite(save_path, image)
- return save_path
-
- # 注意type有多种["numpy", "pil", "filepath"],没有指定时默认为numpy
- iface = gr.Interface(fn=trun_gray, inputs=gr.Image(type="filepath"), outputs=gr.Image(type="filepath"))
- iface.launch()
执行后打开其输出连接,如图所示:
上传一张图片并点击提交:
- from ltp import LTP
- import gradio as gr
-
- # 初始化LTP模型,你可以下载模型并指定路径,或者让LTP自动下载
- ltp_model_dir = 'ltp_base1' # 替换为你的LTP模型路径
- ltp = LTP(ltp_model_dir)
-
- def trun_gray(sentence):
- sentence = sentence.strip()
- output = ltp.pipeline([sentence], tasks=["cws", "pos", "srl"])
- us_name = "、".join(list(set([i[0] for i in zip(output.cws[0], output.pos[0]) if i[1] in ["nh"]])))
- return us_name
-
- iface = gr.Interface(fn=trun_gray, inputs="text", outputs="text")
- iface.launch()
-
执行后打开其输出连接,如图所示:
输入一段话并点击提交:
- import gradio as gr
- import cv2
- import uuid
-
- from ltp import LTP
- ltp_model_dir = 'ltp_base1'
- ltp = LTP(ltp_model_dir)
-
- face_cascade = cv2.CascadeClassifier(cv2.data.haarcascades + 'haarcascade_frontalface_default.xml')
- eye_cascade = cv2.CascadeClassifier(cv2.data.haarcascades + 'haarcascade_eye.xml')
-
- def trun_gray(image):
- print(image)
- image = cv2.imread(image)
- image = cv2.resize(image, (640,480))
- save_path = "./{}.png".format(str(uuid.uuid4()))
- cv2.imwrite(save_path, image)
- gray = cv2.cvtColor(image,cv2.COLOR_BGR2GRAY)
- return save_path
-
- def trun_nh(sentence):
- sentence = sentence.strip()
- output = ltp.pipeline([sentence], tasks=["cws", "pos", "srl"])
- us_name = "、".join(list(set([i[0] for i in zip(output.cws[0], output.pos[0]) if i[1] in ["nh"]])))
- return us_name
-
- with gr.Blocks() as demo:
- with gr.Tab(label="句子人名提取"):
- gr.Interface(fn=trun_nh, inputs="text", outputs="text")
- with gr.Tab(label="图像人脸检测"):
- gr.Interface(fn=trun_gray, inputs=gr.Image(type="filepath"), outputs=gr.Image(type="filepath"))
- demo.launch()
执行后打开其输出连接,如图所示:
Gradio是一个开源的Python库,主要用于快速构建机器学习和数据科学演示的应用。通过Gradio,用户可以轻松地为模型创建一个可视化的、易于使用的Web界面,无需编写任何Web前端代码。它支持多种不同类型的输入(如文本、图像、音频等)和输出(如文本、图像、HTML等),并允许用户在Python脚本中直接定义这些输入/输出和处理函数之间的关系。以上仅为简单使用,如需获取更多关于Gradio的详细信息和使用方法,建议访问其官方文档或GitHub仓库进行查阅。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。