您现在的位置是:首页 >技术教程 >【教学类-35-01】(256*256*256)RGB色卡图片网站首页技术教程

【教学类-35-01】(256*256*256)RGB色卡图片

reasonsummer 2023-06-26 04:00:02
简介【教学类-35-01】(256*256*256)RGB色卡图片

作品展示:

背景需求: 

甲流传染病,班级来了三位孩子,他们玩折纸的时候讨论,

09号问:“绿色和蓝色混合是什么颜色?”

08号问:“绿色加蓝色加浅蓝合在一起是什么颜色”

17号说:“蓝色和橙色加起来是绿色!”

09号咨询老师:我这个蓝色和绿色在一起会变成什么颜色?:

老师说:“绿色和蓝色混合是青蓝色。”“三颜色混在一起也是偏蓝的颜色,可能会浅一点”

 为此,我从手机上找了一张72色色卡给他们看,孩子们立刻被鲜艳吸引,嚷起来:

“我喜欢这个红色(草莓红)”

“粉色在哪里”。

“这么多颜色啊!这个叫什么名字?”

我想起最近做拼图时,用过的RGB色彩(170,170,170浅灰)

随口说:“世界上还有很多颜色呢,有255*255*255种!”

09号立刻追问:“世界上有255种颜色吗?”

“是255*255*255,大约有几十万种颜色!”

“几十万!”孩子们嬉笑大叫起来。

我想:我可以用Python给孩子们看看这255*255*255的色卡啊!

代码展示:

'''
目的:256*256*256=16777216色
制作全部RGB色卡(10*10像素大小图片)
作者:阿夏
时间:2023年4月28日12:07
'''

import numpy as np
import matplotlib.pyplot as plt
import skimage.io as io
from PIL import Image

# 像素3个数字
list1=[]

for a in range(0,256): 
    for b in range(0,256):
        for c in range(0,256):
            list1.append(str(a))
            list1.append(str(b))
            list1.append(str(c))
# print(len(list1))

# 分割程3个一组
list=[]
for f in range(int(len(list1)/3)):
    list.append(list1[f*3:f*3+3])
# print(len(list))
list.sort()
print(len(list))


for i in range(len(list)):
    e=int(list[i][0])
    f=int(list[i][1])
    g=int(list[i][2])
    # print(e,f,g)
    img=Image.new("RGB",(10,10),(e,f,g))           
    # 保存图片
    img.save(r"D:	est色卡8位数{}.jpg".format('%08d'%i))

为了确定图片的编号长度,我用手机计算器算了255*255*255(包含0,所以是256)的数量,结果吓一跳——数量:一千六百万张(8位数)

 真要生成这么多的图片,估计要几天几夜了呀。T_T

1、缩小图片大小:

因此我把生成图片的大小变得很小,大约1K

 

2、编号为8位数:

 3、间隔抽样:第1个A有8个*第2个B有8个*第3个C有8个=512个

 512张小色卡图

 

 

为了让幼儿看得清楚,我把图片长宽放大:

 

 孩子们欣赏后,纷纷说:我喜欢这个颜色!(粉红、浅蓝)

 

感悟:

1、利用编程快速制作色卡,满足幼儿的颜色探索需求。

2、几位孩子闲聊时,提到了千、万为单位的数字(他们都是家中老二,跟着兄姐学习),是否可以写个程序,让幼儿感受数字的变化。

风语者!平时喜欢研究各种技术,目前在从事后端开发工作,热爱生活、热爱工作。