AIGC: 如何让AI帮我们识别图片上的物品?

前言

今天我们来聊聊,如何用AI帮助我们识别图片上的物品。感兴趣的小伙伴们可以关注我,以后会带着大家了解更多有关ai的知识,与大家一起进步!

在开始讲解之前,我们需要进行一些准备工作

准备工作

准备工作

通过 Google Colab,用户可以创建和共享Jupyter笔记本,运行Python代码,访问云端计算资源,以及使用大量开源机器学习框架和库,而无需担心硬件或软件配置问题。而我们这里需要一点点的python 和 openai结合,当我们使用Google Colab 运行python时,可以不用担心配置环境。

注意,以上这些网站均为外网,当我们访问这些网站时,需要 "搭梯子",具体可以去网上看看教程

  1. 首先进入openai网站,拿到我们的sdk。教程如下:

选择VPI

复制我们的API keys, 如果没有的话点击Create new secret key,这样我们就可以拿到我们的sdk了。

  1. 接下来我们进入Google Colab网站,将代码放进此网站运行。这个网站十分的方便,当我们使用Google Colab 运行python时,可以不用担心配置环境。

点击文件-> 新建笔记本 点击左上角 +代码

输入!pip install transformers,Python中使用pip工具安装Hugging Face的Transformers库

当左下角出现Successfully时,说明安装成功

输入:

python 复制代码
from transformers.pipelines import SUPPORTED_TASKS

print(SUPPORTED_TASKS)

在Hugging Face的Transformers库中,SUPPORTED_TASKS是一个包含当前库支持的各种NLP(自然语言处理)任务的列表。这个列表包括可以使用Transformers库进行处理的不同NLP任务,例如文本分类、命名实体识别、问答等。

通过检查SUPPORTED_TASKS,你可以获得当前Transformers库版本中支持的任务的清单。这对于了解库的功能和可用性非常有用,特别是当我们计划使用库中的工具来处理特定类型的NLP任务时。

这将输出一个包含不同任务名称的列表,每个任务名称代表Transformers库支持的一个NLP任务。你可以根据需要选择适合你项目的任务,并使用相应的工具和模型。

输入:for k, v in SUPPORTED_TASKS.items(): print(k),我们可以看到支持的各种任务:

而我们的物品侦察也在其中

python 复制代码
import requests # python的http 请求库
from PIL import Image # PIL python 图片专业库

url = "https://unsplash.com/photos/oj0zeY2Ltk4/download?ixid=MnwxMjA3fDB8MXxzZWFyY2h8MTR8fHBpY25pY3xlbnwwfHx8fDE2Nzc0OTE1NDk&force=true&w=640"
# requests.get python 同步语言
img = Image.open(requests.get(url, stream=True).raw)
img

从指定的URL获取图像数据,然后使用PIL库打开该图像。

运行:

输入候选对象:

python 复制代码
from PIL import ImageDraw # 写模块
draw = ImageDraw.Draw(img)

for prediction in predictions:
  box = prediction["box"]
  label = prediction["label"]
  score = prediction["score"]
  xmin, ymin, xmax, ymax = box.values() # 解构
  draw.rectangle((xmin, ymin, xmax, ymax),outline="red",width=1)
  draw.text((xmin,ymin),f"{label}: {round(score, 2)}", fill="red")

img

这段代码使用了 PIL 库中的 ImageDraw 模块,在图像上绘制了目标检测模型的预测结果。代码遍历了模型的每个预测,为每个检测到的对象绘制了带有标签和置信度的红色边框。最后,显示了带有标注的图像

我们来看看效果:

今天的内容就到这啦,如果你觉得小编写的还不错的话,或者对你有所启发,请给小编一个辛苦的赞吧

相关推荐
程序员-珍10 分钟前
使用openapi生成前端请求文件报错 ‘Token “Integer“ does not exist.‘
java·前端·spring boot·后端·restful·个人开发
liuxin3344556627 分钟前
教育技术革新:SpringBoot在线教育系统开发
数据库·spring boot·后端
技术无疆40 分钟前
【Python】Streamlit:为数据科学与机器学习打造的简易应用框架
开发语言·人工智能·python·深度学习·神经网络·机器学习·数据挖掘
xuehaishijue1 小时前
红外画面空中目标检测系统源码分享
人工智能·目标检测·计算机视觉
羊小猪~~1 小时前
机器学习/数据分析--用通俗语言讲解时间序列自回归(AR)模型,并用其预测天气,拟合度98%+
人工智能·python·机器学习·数据挖掘·数据分析·回归·时序数据库
浊酒南街1 小时前
吴恩达深度学习笔记:卷积神经网络(Foundations of Convolutional Neural Networks)2.7-2.8
人工智能·深度学习·神经网络
bug菌1 小时前
Java GUI编程进阶:多线程与并发处理的实战指南
java·后端·java ee
DuoRuaiMiFa2 小时前
ChatGPT全新功能Canvas上线:开启智能编程与写作新篇章
人工智能·chatgpt
DisonTangor2 小时前
Windows 11将新增基于AI的搜索、生成式填充和其它AI功能
人工智能