游乐游手机版
首页/AI热点日报/热点详情

用语音就能搞定图像识别 AI编程不再是梦

类型:热点整理2026-07-03
VisionAgent是一个开源工具库,以大语言模型为决策核心,通过自然语言指令自动生成代码,完成图像识别、目标计数、物体检测与视频跟踪等任务,支持静态图片和动态视频处理,并可输出可独立运行的代码或直接调用内置工具。

用自然语言指挥AI完成图像识别,VisionAgent让编程更简单!

最近,一个名为VisionAgent的开源工具库引起了广泛关注——它能让你用自然语言指挥AI去完成各种图像识别任务。核心思路很简单:把大语言模型作为“大脑”,由它来理解你的指令并自动生成对应的处理代码。这意味着,哪怕是复杂的图像分析需求,你也不再需要一行行手写算法,动动嘴皮子就能搞定。

惊了!动动嘴皮子就能搞定图像识别?这个神器让 AI 编程不再是梦!(内附代码)

想想以前,要做图像识别——比如数清楚一张图里到底有几罐可乐——那得自己吭哧吭哧写代码、调参数,折腾半天。现在呢?只需要告诉VisionAgent:“帮我数数这张图里有几罐可乐”,剩下的它全包了。目前该工具已提供线上demo可以直接体验。

VisionAgent到底是个啥?

简单来说,VisionAgent是一个能让你用“人话”来指挥AI进行图像处理的工具库。它背后依托的是目前最主流的大语言模型(LLM),比如Anthropic的Claude-3.5和OpenAI的o1。这些LLM充当了VisionAgent的“决策中枢”,负责理解你的意图,然后自主生成并执行相应的代码来完成图像分析任务。

VisionAgent能干啥?

它的能力覆盖了多个实用场景,无论是静态图片还是动态视频,都能轻松应对:

  • 数数:统计图片中的人头、可乐罐、车辆等目标数量。
  • 识别物体:精准检测图片中的各类物体,比如猫、狗、桌、椅等。
  • 跟踪物体:在视频中持续追踪特定目标,比如跟踪视频里的一只小狗。
  • 生成代码:直接输出可独立运行的图像处理代码,供你学习或二次修改。

怎么用VisionAgent?

上手VisionAgent并不复杂。首先,通过pip完成安装:

pip install vision-agent

然后,准备好Anthropic和OpenAI的API密钥:

export ANTHROPIC_API_KEY="your-api-key"
export OPENAI_API_KEY="your-api-key"

搞定这些前置步骤,就可以正式开始用它处理任务了。

例子1:数人头

想知道一张图片里有多少人?操作非常直观:

from vision_agent.agent import VisionAgentCoderV2
from vision_agent.models import AgentMessage

# 创建一个VisionAgent实例
agent = VisionAgentCoderV2(verbose=True)

# 让VisionAgent生成代码来数人头
code_context = agent.generate_code(
    [
        AgentMessage(
            role="user",
            content="Count the number of people in this image",
            media=["people.png"]  # 假设你有一张名为people.png的图片
        )
    ]
)

# 把生成的代码保存到文件里
with open("generated_code.py", "w") as f:
    f.write(code_context.code + "n" + code_context.test)

运行这段代码,VisionAgent就会自动生成一个名为generated_code.py的文件,里面就是数人头的完整代码。你可以直接运行,也可以在此基础上自由修改。

例子2:直接用VisionAgent的工具

除了生成代码,VisionAgent还提供了一套即开即用的工具。比如,你想在一张图片里找出所有人,并用框标注出来:

import vision_agent.tools as T
import matplotlib.pyplot as plt

# 加载图片
image = T.load_image("people.png")

# 检测图片里的人
dets = T.countgd_object_detection("person", image)

# 把检测结果(框框)画在图片上
viz = T.overlay_bounding_boxes(image, dets)

# 保存结果
T.sa ve_image(viz, "people_detected.png")

# 显示结果
plt.imshow(viz)
plt.show()

这段代码会生成一张名为people_detected.png的图片,所有人都会被醒目的框标注出来。

例子3:视频处理

VisionAgent的视频处理能力同样出色。比如,想在一段视频中持续跟踪某个物体:

import vision_agent.tools as T

# 从视频里提取每一帧和对应的时间戳
frames_and_ts = T.extract_frames_and_timestamps("people.mp4")  # 假设你有一个名为people.mp4的视频
frames = [f["frame"] for f in frames_and_ts]

# 在每一帧里跟踪 "person"
tracks = T.countgd_sam2_video_tracking("person", frames)

# 把跟踪结果(分割掩码)画在每一帧上
viz = T.overlay_segmentation_masks(frames, tracks)

# 把处理后的视频保存下来
T.sa ve_video(viz, "people_detected.mp4")

最终生成的people_detected.mp4中,所有被跟踪的人都会被持续标记出来。

想用其他的LLM?

VisionAgent默认使用Anthropic Claude-3.5和OpenAI o1,但也支持替换成其他大语言模型。只需修改vision_agent/configs目录下的config.py文件即可。例如,如果只想用Anthropic,可以这样操作:

cp vision_agent/configs/anthropic_config.py vision_agent/configs/config.py

同类工具?

目前市场上似乎还没有见到与VisionAgent完全同类的工具。它的独特之处在于将LLM作为智能决策核心,再调用各种视觉工具包来执行具体任务。本质上,VisionAgent的优势在于“大脑”——也就是它所依托的LLM的选择与调度能力,这让它在灵活性和易用性上形成了显著的差异化竞争力。

来源:https://www.53ai.com/news/OpenSourceLLM/2025031032708.html

相关热点

继续查看同栏目近期热点。

延伸阅读

补充最近整理过的热点入口。