图像分类应用

计算机是如何对国像分类的

计算机学习的过程其实和人类是一样的,我们需要提供大量的因片,并告诉计算机这些图片是什么,然后计算机通过学习,总结出一套算法,就可以区分图片了。

文件路径

每个文件都有自己的文件路径,计算机通过文件路径寻找文件。就好比快递员通过地址找到收件人一样。
文件路径是分层的,每层之间用/隔开。
在使用open_deal_image()函数对图片进行转换时,需要在括号中填写图片的文件路径。
图像分类应用

py

import json
import requests
u = 'http://www.wanghao.me/api/img'
img = open_deal_image('face/1.png')
response = requests.post(url=u, data=img)
r = json.loads(response)

os.listdir()函数

os.listdir()函数的功能是读取文件夹中所有文件的名称。

py

import os
img_list = os.listdir('face')
for i in img_list:
    print(i)

1. 导入os库
2. 使用os库中的listdir()函数读取文件名称,括号中的参数为要读取的文件夹名称face。

创建五官角色

py

nose = Actor(face/1.png')

Actor()小括号中填写的是图片的路径
图片1存储在images文件夹下面的face文件夹中,需要在图片名称前加上face/。
注意:在pygame中,程序默认从images文件夹中寻找图片,所以路径中不需要写images。

随机切换角色造型

方式一

角色名=Actor(造型名称)
角色名.x=横坐标
角色名.y=纵坐标

方式二

角色名=Actor(造型名称, 坐标位置)

两种方式均可使用,第二种方式的代码更简洁。

从列表中随机选择元素

在on_mouse_down()函数中使用collidepoint()函数检测鼠标是否点击了按钮。如果点击了按钮,就从对应的图片列表中,随机选择一个元素作为角色的新造型图片。

py

def on_mouse_down(pos):
    if nose_button.collidepoint(pos):
        p_nose = random.choice(noses)
        nose.image = 'face/' + p_nose

从列表中随机选择一个元素,可以使用random库中的choice()函数。

import random
random.choice(列表名)

注意:

  • 两只眼睛需要同时变化,在为眼睛切换造型时,左右眼都需要重新为角色的image赋值。
  • 切换完造型后,右眼角色的造型又变成了左眼,所以仍然需要调用函数flip_actor(),对右眼角色进行翻转。
  • 切换耳朵造型时也一样。

一键变脸

步骤

1. 创建“一键变脸”按钮
2. 将按钮绘制出来
3. 实现变脸功能,当鼠标点击“一键变脸”按钮时,同时改变五官的造型。

写于2023年4月30日
没有伞的孩子,必须学会努力奔跑。

赞助 点赞 0

王光卫博客等人对本文发表了1条热情洋溢的评论。
  • 最近人工智能变脸流行,娱乐性不错
  • 发表回复

    您的电子邮箱地址不会被公开。 必填项已用*标注