Python一键生成国庆渐变头像
Python,一键,生成,国庆,渐变,头像
2025-03-13 21:27:17 时间
国庆长假进入倒计时,小编的爱国情怀高涨。这不,赶紧制作国庆红旗渐变头像,效果如下:
为了更贴心的照顾读者,小编做了个小程序,读者一键使用微信头像生成。
打开上面小程序,点击爱国头像即可进入, 如下所示。
接下来我们开始讲解使用Python
生成国旗渐变头像。
1 获取国旗素材
中华人民共和国国旗是中华人民共和国的象征和标志。每个公民和组织,都应当尊重和爱护国旗。国旗素材前往国家官网下载:http://www.gov.cn/guoqing/guoqi/index.htm
国家提供的网络使用国旗如下:
2 制作渐变
这里渐变效果有两种,一种是水平方向,另一种是垂直方向。我们只需要将透明度从1
逐步降到0
即可,水平方向的渐变代码如下:
def h_linear_mask(start, end, width=WH_SIZE):
h_line = np.linspace(start, end, width)
h_mask = np.vstack([h_line for _ in range(WH_SIZE)])
h_mask = np.clip(h_mask, 0, 1)
return h_mask
其中start
和end
参数用于设置透明度起始值和结束值。同理,垂直方向渐变如下:
def v_linear_mask(start, end, height=WH_SIZE):
v_line = np.linspace(start, end, height)
v_line = np.reshape(v_line, (height, 1))
v_mask = np.hstack([v_line for _ in range(WH_SIZE)])
v_mask = np.clip(v_mask, 0, 1)
return v_mask
水平方向渐变如下:
3 分2段渐变
上面可以看到五星红旗中的星星透明度有点过了,对于部分偏黄的头像来说,容易导致星星不清楚。因此,我们需要降低水平方向前半部分的透明度,需要分两段:
def h_two_stage_hq(start, mid, end, seg_len):
mask_1 = h_linear_mask(start, mid, seg_len)
mask_2 = h_linear_mask(mid, end, WH_SIZE - seg_len)
mask = np.hstack([mask_1, mask_2])
return creat_hq(mask)
效果如下:
4 源码获取
- 关注公众号:
Python学习实战
- 公众号聊天界面回复:
国庆
,获取完整源码。
如果本文帮助到了您,辛苦您点个不需花钱的赞,您的举手之劳将对我提供了无限的写作动力! 也欢迎关注我的公众号:Python学习实战, 第一时间获取最新文章。
相关文章
- python 获取时间戳_datetime获取当前时间
- Python基础09-装饰器
- Python基础10-函数的递归
- Python-drf前戏38.4-前端Vue04
- pycharm python interpreter_python interpreter什么意思
- pycharm搭建python环境_pycharm如何配置编译环境
- python安装包代码_linux编译程序
- pycharm安装opencv-python_geany配置python
- linux安装python虚拟环境_windows安装python虚拟环境
- Python基础16-正则和子进程模块
- pycharm需要设置环境变量吗_pycharm怎么打开python环境
- Python项目48-插播短信接口(使劲撸)
- pycharm怎么看函数源代码_python查看第三方库的源码
- 使用Python验证并利用Redis未授权漏洞
- python报错invalid syntax_fatal python error
- pip安装的包pycharm识别不了_手机上的python安装第三方库
- Python暴力激活成功教程wifi密码
- python 安装第三方包-安装失败(pycharm/ anaconda navigator)
- pycharm的python环境配置_怎么安装pycharm及环境变量配置
- python线性回归算法「建议收藏」