
背景需求:
前期测试了4*4框格种的8种颜色,随机抽取7种,随机排列图层,去掉相同的图片、保留7种颜色的图片,最后获得5400张样图
我想用同样的方法做以3*3的图层顺序,6种颜色抽5种,随机排列,去掉相同图片、保留5种颜色。最后获得186张样图
参考准备:

6的阶乘6*5*4*3*2*!=720个
一、生成所有图片
'''
图层重叠挑战(长矩形带黑框) (3*3抽取5) 一共有40320个不重复
作者:AI对话大师,阿夏
时间:2024年5月16日
'''
from PIL import Image, ImageDraw
import os,random
import itertools
print('--------1、制作图片-----------')
path = r'C:\Users\jg2yXRZ\OneDrive\桌面\重叠纸条3条'
folder_path = path + r'\01所有可能'
os.makedirs(folder_path, exist_ok=True)
# # ["大红", "橙色", "黄色", "绿色", "青色", "蓝色", ]
colors = [(255, 0, 0), (255, 165, 0), (255, 255, 0), (0, 128, 0), (144, 238, 144), (135, 206, 235), (70, 130, 180), ]
# [("大红", (255, 0, 0)), ("橙色", (255, 165, 0)), ("黄色", (255, 255, 0)), ("中绿", ((0, 128, 0))), ("淡绿色", (144, 238, 144)), ("天蓝色", (135, 206, 235)), ("谈蓝色", (70, 130, 180)), ("紫红", (128, 0, 128)), ("粉红", (255, 192, 203))]
from PIL import Image, ImageDraw
import os
# folder_path=r'C:\Users\jg2yXRZ\OneDrive\桌面\重叠纸条\jpg4万'
# 创建画布
canvas_width = 800
canvas_height = 800
canvas_color = (255, 255, 255) # 白色背景
line_color = (0, 0, 0) # 黑色线条
line_width = 3
margin = 100 # 边距
canvas = Image.new('RGB', (canvas_width, canvas_height), canvas_color)
draw = ImageDraw.Draw(canvas)
# 计算单元格大小和绘制区域
num_rows = 3
num_cols = 3
cell_size = min((canvas_width - 2 * margin) // num_cols, (canvas_height - 2 * margin) // num_rows)
print(cell_size)
start_x = (canvas_width - cell_size *

https://blog.csdn.net/reasonsummer/article/details/138907626
&spm=1001.2101.3001.5002&articleId=138956354&d=1&t=3&u=b5f0aecdc41a4a519cedd9cd4c3366c5)
2451

被折叠的 条评论
为什么被折叠?



