欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 财经 > 创投人物 > 【教学嘞-64-01】20240607颜色找茬-0-255随机底色

【教学嘞-64-01】20240607颜色找茬-0-255随机底色

2025/8/8 9:43:30 来源:https://blog.csdn.net/reasonsummer/article/details/139522756  浏览:    关键词:【教学嘞-64-01】20240607颜色找茬-0-255随机底色

背景需求

AI对话大师到期了,后续无法使用了,这是我用AI对话大师写的最后一个代码

a375d26c4f28401c963a6b43287bd7ed.png

代码展示

'''
颜色找茬:找出不同颜色的色块
AI对话大师,阿夏
2025年6月7日
'''
from PIL import Image, ImageDraw
import randompath = r'C:\Users\jg2yXRZ\OneDrive\桌面\辨认色彩图'
for xx in range(10000):r = random.randint(0, 255)g = random.randint(0, 255)b = random.randint(0, 255)fill_color = (r, g, b)print(fill_color)a=random.randint(0,100)r1=r+ag1=g+ab1=b+afill_color2=(r1, g1, b1)print(fill_color2)# 定义画布尺寸和边距canvas_width = 800canvas_height = 800margin = 50spacing = 20g = 5# 计算单元格的大小和间距cell_size = int((canvas_width - 2 * margin - (g - 1) * spacing) / g)# 创建画布canvas = Image.new('RGB', (canvas_width, canvas_height), 'white')draw = ImageDraw.Draw(canvas)# 随机选择一个单元格填充随机颜色random_row = random.randint(0, g - 1)random_col = random.randint(0, g - 1)# 绘制单元格for i in range(g):for j in range(g):x = margin + (cell_size + spacing) * jy = margin + (cell_size + spacing) * iif i == random_row and j == random_col:fill_color = (r1, g1, b1)else:fill_color = (r, g, b)draw.rectangle((x, y, x + cell_size, y + cell_size), fill=fill_color)# 保存图片canvas.save(path + fr'\{xx:05d}.png')

89c40826f3f1441390d9a5ab4f6df9b3.png

手动删除一些不是相近色的图案,随机生成底色

3a8ae9453e4c4e46a569a3585937761d.png

保留色相相近的图案a49cfb74f54a4f9dbfc3412ae32568cd.png

分类成两类

67288f0f4f334a7cb6dad747112e8904.png

低难度的色块颜色对比强烈

4752df73d97f4d1e8a2f7960cdc8e1a8.png高难度的色块对比不明显

04d44f57be72447799fbc4e92bf9c660.png

但是我感觉我自己都看不清不同的色块在哪里?所以我需要做一个有答案的版本。

from PIL import Image, ImageDraw
import random
import ospath = r'C:\Users\jg2yXRZ\OneDrive\桌面\辨认色彩图'
t = ['01题目卡', '02答案卡']
tm = []
for tt in t:os.makedirs(path + fr'\{tt}', exist_ok=True)tm.append(path + fr'\{tt}')
print(tm)for xx in range(500):# 不要(0,0,0)黑色,不要255,255,255白色r = random.randint(1, 255)g = random.randint(1, 255)b = random.randint(1, 255)fill_color = (r, g, b)print(fill_color)a = random.randint(0, 255)r1 = r + ag1 = g + ab1 = b + afill_color2 = (r1, g1, b1)print(fill_color2)# 定义画布尺寸和边距canvas_width = 800canvas_height = 800margin = 50spacing = 20g = 5# 计算单元格的大小和间距cell_size = int((canvas_width - 2 * margin - (g - 1) * spacing) / g)# 创建画布canvas1 = Image.new('RGB', (canvas_width, canvas_height), 'white')draw1 = ImageDraw.Draw(canvas1)canvas2 = Image.new('RGB', (canvas_width, canvas_height), 'white')draw2 = ImageDraw.Draw(canvas2)# 随机选择一个单元格填充随机颜色random_row = random.randint(0, g - 1)random_col = random.randint(0, g - 1)# 绘制单元格for i in range(g):for j in range(g):x = margin + (cell_size + spacing) * jy = margin + (cell_size + spacing) * iif i == random_row and j == random_col:fill_color = (r1, g1, b1)outline_color = 'black'  # 添加黑色边框else:fill_color = (r, g, b)outline_color = None  # 不添加边框draw1.rectangle((x, y, x + cell_size, y + cell_size), fill=fill_color) draw2.rectangle((x, y, x + cell_size, y + cell_size), fill=fill_color, outline=outline_color, width=20)# 保存图片canvas1.save(tm[0] + fr'\{xx:05d}-01图卡.png')canvas2.save(tm[0] + fr'\{xx:05d}-02答案.png')

a7962d3164db4788ac48df6c6fd3971a.png4c5a5cfafcf7412db35d903a2d63e1f1.png

黑色底色的就看不见了

205b33107784489580eaa38e0b8d0d74.png

改成白色边框

5695ca3b19724ec48545df99309374aa.png

from PIL import Image, ImageDraw
import random
import ospath = r'C:\Users\jg2yXRZ\OneDrive\桌面\辨认色彩图'
t = ['01题目卡', '02答案卡']
tm = []
for tt in t:os.makedirs(path + fr'\{tt}', exist_ok=True)tm.append(path + fr'\{tt}')
print(tm)for xx in range(500):# 不要(0,0,0)黑色,不要255,255,255白色r = random.randint(1, 255)g = random.randint(1, 255)b = random.randint(1, 255)fill_color = (r, g, b)print(fill_color)a = random.randint(0, 255)r1 = r + ag1 = g + ab1 = b + afill_color2 = (r1, g1, b1)print(fill_color2)# 定义画布尺寸和边距canvas_width = 800canvas_height = 800margin = 50spacing = 20g = 5# 计算单元格的大小和间距cell_size = int((canvas_width - 2 * margin - (g - 1) * spacing) / g)# 创建画布canvas1 = Image.new('RGB', (canvas_width, canvas_height), 'white')draw1 = ImageDraw.Draw(canvas1)canvas2 = Image.new('RGB', (canvas_width, canvas_height), 'white')draw2 = ImageDraw.Draw(canvas2)# 随机选择一个单元格填充随机颜色random_row = random.randint(0, g - 1)random_col = random.randint(0, g - 1)# 绘制单元格for i in range(g):for j in range(g):x = margin + (cell_size + spacing) * jy = margin + (cell_size + spacing) * iif i == random_row and j == random_col:fill_color = (r1, g1, b1)outline_color = 'white'  # 添加黑色边框else:fill_color = (r, g, b)outline_color = None  # 不添加边框draw1.rectangle((x, y, x + cell_size, y + cell_size), fill=fill_color) draw2.rectangle((x, y, x + cell_size, y + cell_size), fill=fill_color, outline=outline_color, width=10)# 保存图片canvas1.save(tm[0] + fr'\{xx:05d}_01图卡.png')canvas2.save(tm[0] + fr'\{xx:05d}_02答案.png')

632a3ceb68c6412399e7293c4ce8403c.png

同样手动不是相近色的

为了生成足够多的,我先生成10000张

228f641057a04b559e8b61b2415c062e.png

生成了20分钟,一共2万张。

bbcdb6afc75d4464aa9ebdd443e94724.png

57bc09020aca4c5fae375a96e3038958.png1-255随机颜色下,底色只有红、紫色、蓝、黑,8079b3274e0f4d93acba399840b74412.png

调整了一下顺序,底色就有很多种了

就是红橙黄绿青蓝紫黑灰色都有了

代码展示

'''
目的:色块找茬
工具:AI对话大师(最后一天到期了不能使用了),阿夏(
时间:2024年6月7日
'''from PIL import Image, ImageDraw
import random
import ospath = r'C:\Users\jg2yXRZ\OneDrive\桌面\辨认色彩图'
t = ['01题目卡', '02答案卡']
tm = []
for tt in t:os.makedirs(path + fr'\{tt}', exist_ok=True)tm.append(path + fr'\{tt}')
print(tm)for xx in range(10000):# 不要(0,0,0)黑色,不要255,255,255白色r = random.randint(1, 254)g = random.randint(1, 254)b = random.randint(1, 254)fill_color = (r, g, b)print(fill_color)a = 80# random.randint(100)r1 = r g1 = g b1 = b + afill_color2 = (r1, g1, b1)print(fill_color2)# 定义画布尺寸和边距canvas_width = 800canvas_height = 800margin = 50spacing = 20g = 5# 计算单元格的大小和间距cell_size = int((canvas_width - 2 * margin - (g - 1) * spacing) / g)# 创建画布canvas1 = Image.new('RGB', (canvas_width, canvas_height), 'white')draw1 = ImageDraw.Draw(canvas1)canvas2 = Image.new('RGB', (canvas_width, canvas_height), 'white')draw2 = ImageDraw.Draw(canvas2)# 随机选择一个单元格填充随机颜色random_row = random.randint(0, g - 1)random_col = random.randint(0, g - 1)# 绘制单元格for i in range(g):for j in range(g):x = margin + (cell_size + spacing) * jy = margin + (cell_size + spacing) * iif i == random_row and j == random_col:fill_color = (r, g, b)outline_color = 'white'  # 添加黑色边框else:fill_color = (r1, g1, b1)outline_color = None  # 不添加边框draw1.rectangle((x, y, x + cell_size, y + cell_size), fill=fill_color) draw2.rectangle((x, y, x + cell_size, y + cell_size), fill=fill_color, outline=outline_color, width=10)# 保存图片canvas1.save(tm[0] + fr'\{xx:05d}_01图卡.png')canvas2.save(tm[0] + fr'\{xx:05d}_02答案.png')

不过还是要手动选图,10000张也够累的!

我先按照底色的色系分一下

每天分类一点吧,

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词