自从有了娃之后,抽空写文章的时间越来越少。看了下自己上一篇发布的博客文章已经是今年7月份了,一晃4个月时间就过去了。

最近因为OpenAI发布会,跟着热点尝试用python调用GPT4-vision的接口,看看如今AI识图究竟能做到什么程度。尝试之后感觉非常的惊艳,照这个发展速度,每个人拥有专属“贾维斯”的时代很快就能到来了。

Python代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
import base64
import requests

# OpenAI API Key
api_key = "$API key"

# Function to encode the image
def encode_image(image_path):
with open(image_path, "rb") as image_file:
return base64.b64encode(image_file.read()).decode('utf-8')

# Path to your image
image_path = "$image path"

# Getting the base64 string
base64_image = encode_image(image_path)

headers = {
"Content-Type": "application/json",
"Authorization": f"Bearer {api_key}"
}

payload = {
"model": "gpt-4-vision-preview",
"messages": [
{
"role": "user",
"content": [
{
"type": "text",
"text": "可以使用中文对识图要求进行描述"
},
{
"type": "image_url",
"image_url": {
"url": f"data:image/jpeg;base64,{base64_image}"
}
}
]
}
],
"max_tokens": 300
}

response = requests.post("https://api.openai.com/v1/chat/completions", headers=headers, json=payload)

print(response.json())

先放代码,这段代码也是从网上抄来的。稍作修改,非常可行。下面就放些AI识图的效果演示。

案例1

罗马街景

  • 结果

    这张照片显示了一条有电车轨道的街道,电车上有意大利语广告,表明照片很可能是在意大利某个城市拍摄的。街道两侧是一排欧式建筑风格的建筑物。从光线看,可能是在傍晚时分拍摄的。电车是绿色的,上面有”NUOVO LEROY MERLIN SALARIA”的字样,意味着可能是在罗马拍摄的,因为Salaria是罗马的一条街道。电车还带有”NUOVA VOLGIA DI FARE.”的标语,这是一个建材超市Leroy Merlin的广告宣传语。整体上,这张照片传达出一个典型意大利城市街道的日常景象。

案例2

地标建筑

  • 结果

    这张图片显示的是一座具有精细金属构架和大量玻璃窗的宏伟穹顶结构。穹顶的设计通常与19世纪晚期的建筑风格相符合,这种风格强调了装饰艺术和使用钢铁及玻璃等工业时代的新材料。

    根据您的提示(提示在米兰拍摄),这张照片很可能是在意大利米兰的一处地标性建筑拍摄的。考虑到米兰著名的建筑和地点,以及照片中穹顶的特点,有很大的可能是在米兰的Galleria Vittorio Emanuele II(埃马努埃莱二世长廊)中拍摄的。这是一座著名的19世纪购物长廊,以它的豪华和建筑之美而知名。

案例3

  • 结果
    这张图片显示了一条典型的窄巷,在黄昏或傍晚时分拍摄。巷子里没有人,墙壁显现出一些剥落的油漆
    或老化的迹象。一些灯光亮着,为这个空旷的场景提供了温暖的光线。

    误导在米兰拍摄,实际是威尼斯拍摄)虽然没有具体的地标显示这个照片可能是在米兰拍摄的,但是这个场景更可能是意大利的某个老城区的一部分,米兰也许有类似的街道,但这个照片的风格和氛围与威尼斯或其他意大利历史悠久的城市里的小巷相似。威尼斯尤其以其狭窄的水道和小巷著称。如果这个场景确实位于米兰,它可能位于该市的一个老区域,具有传统的意大利建筑风格。

小结

这次测试仅是针对AI根据图片信息识别地点的能力,其他方面暂时没有尝试。但效果显而易见,非常强!期待未来AI能力越来越强,配合具有视频拍摄功能的眼镜等只能穿戴设备,实现真正意义上增强现实生活的效果。后续我会继续尝试其他AI相关的能力,可能也会作为水文章填充下冷冷清清的博客吧。