【教学类-38-01】20230724京剧脸谱1.0——横版“彩图线图等大”(Python 彩图彩照转素描线描稿)

一、作品预览

京剧脸谱(涂色)学具展示(64份)

 

二、背景需求:

1、大班主题《我是中国人》里面有一个“京剧脸谱”的子主题。从网上下载的彩色脸谱(红黄绿蓝紫黑白),作为环境装饰。引导幼儿了解“脸谱色彩和人物性格”。

2、2023年9月开始幼儿园购买“梨园梦”的体验课程,6月培训课中,导师展示了幼儿照着范例在“京剧脸谱线描稿”上涂色的 一款学具,当时听到同事私语:“这一本也就几个人物能涂色,不够画啊!”

3、由于不确定是一班一套,还是每个孩子人手一套。所以我很想为孩子提供更多数量的“脸谱涂色”材料,作为个别化美工区学习材料。

4、网上有大量的彩色京剧脸谱彩色图案,也有少量的黑白线描脸谱,但是很难找到一套“有彩图又有线描稿的脸谱”,大部分线描稿京剧脸谱需要到淘宝购买。同时大部分脸谱没有备注,我也不知道它是哪位京剧人物,出自那一部京剧。

三、解决策略:

通过百度图片,搜索到“堆糖”上的一套京剧脸谱,不仅有人物名字和京剧名称,而且数量众多(实际下载468张), 

脸谱人物名字和京剧名称的文字附在脸谱图片上

 把467张脸谱下载(使用UIBOT,放大图片,读取“图片上的文字信息”,另存为“三位数序号+人物名字+京剧名称.jpeg

(文字识别度有误差,全部下载后,还需要对着脸谱图片上的文字手动修改图片的文件名字,有几个生僻字还需要网络搜搜读音)

(花了2天才全部下载完,调整号名字)

 四、素材准备:

彩色脸谱

 线描脸谱(空)

 五:“彩图 转 线描图”的代码展示

# https://blog.csdn.net/weixin_44421798/article/details/113027414?ops_request_misc=&request_id=&biz_id=102&utm_term=Python%EF%BC%8C%E7%85%A7%E7%89%87%E4%B8%80%E9%83%A8%E5%88%86%E6%8F%8F%E8%BE%B9&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduweb~default-2-113027414.142^v90^control_2,239^v3^insert_chatgpt&spm=1018.2226.3001.4187

'''将彩色脸谱转化为线描脸谱(黑白线条)'''

from PIL import Image
import os


import os
from PIL import Image 

pathall=[]
p=r"C:\Users\jg2yXRZ\OneDrive\桌面\脸谱涂色\01序号脸谱有色彩PNG"
# 过滤:只保留png结尾的图片
imgs=os.listdir(p)
for img in imgs:
    if img.endswith(".jpeg"):
        pathall.append(p+'\\'+img)
# 所有图片的路径
print(pathall)
print(imgs)


for dz in range(len(pathall)):

    # 图像组成:红绿蓝  (RGB)三原色组成    亮度(255,255,255)
    image =pathall[dz]
    img = Image.open(image)
   
    new = Image.new("L", img.size, 255)
    width, height = img.size
    img = img.convert("L")


    # 定义画笔的大小
    Pen_size = 3
    # 色差扩散器
    Color_Diff = 6

    for i in range(Pen_size + 1, width - Pen_size - 1):
        for j in range(Pen_size + 1, height - Pen_size - 1):
            # 原始的颜色
            originalColor = 255
            lcolor = sum([img.getpixel((i - r, j)) for r in range(Pen_size)]) // Pen_size
            rcolor = sum([img.getpixel((i + r, j)) for r in range(Pen_size)]) // Pen_size
    
            # 通道----颜料
            if abs(lcolor - rcolor) > Color_Diff:
                originalColor -= (255 - img.getpixel((i, j))) // 4
                new.putpixel((i, j), originalColor)
    
            ucolor = sum([img.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

阿夏reasonsummer

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值