优质文章,第一时间送达!
像文字云一样,用各种小图拼出大的图片,构建一个像素风的世界,就像《我的世界》里一样,一定非常有趣。在这个名为 tiler 的 GitHub 开源项目里你就可以自动实现这一切,它刚刚开源一天,就已经涨到了 1500 星,增长速度肉眼可见。https://github.com/nuno-faria/tilerTiler,意味瓦工,也就是用各种小元素作为 “瓦”,搭建出一张大图片。项目预设了不少 “瓦”:有乐高、加号、圆形、@符号、心形、乘号、波浪线、横竖条、《我的世界》中的各种格子,以及曲别针形:另外还有一组万圣节主题 icon,包括各种南瓜灯、小鬼头、蝙蝠、猫头鹰:这些不同的 “瓦” 都可以设定大小颜色和角度,以适应不同的画面规格。另外,你还可以设定整个画面中由多少种颜色构成和 “瓦片” 的大小,也就是马赛克的模糊程度。比如梵高的《星空》,项目中展示了 10×10、25×25、50×50 三种圆形拼成的规格:△ 10×10 的《星空》
△ 25×25 的《星空》
△ 50×50 的《星空》
这么大一副十字绣,色彩艳丽,斑斓交错,一看就可以玩很久,退休老母亲看到两眼发光。就是绣完挂在家里,也和你北欧风 / 极简风 / 莫兰迪风 / 自如风的房间非常搭配,成为全场最吸睛的装饰画。运行指南
如果想在自己电脑上运行的话,除了 Python 3 和 pip,你还需要装 OpenCV、numpy 和 tqdm。DEPTH:每个颜色通道中的分割数量 (ex: DEPTH = 4 -> 4 * 4 * 4 = 64 colors);
ROTATIONS:旋转列表,以度为单位,应用在原始图像上 (ex: [0, 90])。
COLOR_DEPTH:每个颜色通道中的分割数量 (ex: COLOR_DEPTH = 4 -> 4 4 4 = 64 colors);
RESIZING_SCALES:应用于每个图块的比例 (ex: [1, 0.75, 0.5, 0.25]);
PIXEL_SHIFT
:移动以创建每个框的像素数 (ex: (5,5)); if None, shift will be the same as the tile dimension);
OVERLAP_TILES:如果构成图像的 “瓦片” 可以重叠;
RENDER:渲染图像;
POOL_SIZE:多处理池大小;
IMAGE_TO_TILE:图像到瓦片(如果作为第一个参数传递则忽略);
TILES_FOLDER:瓦片文件夹(如果作为第二个 arg 传递则忽略);
OUT:结果图像文件名。
脑洞丰富的作者
这个项目的作者 ID 叫 nuno-faria,除了这个 Tiler 项目之外,他还开源过不少有趣的东西。还有俄罗斯方块、弹球等许多种,个个都还蛮有意思的~如此极具创造力的作者,实在令人佩服,有兴趣的话,可以到其主页深入了解一下:https://github.com/nuno-faria回复下方「关键词」,获取优质资源
回复关键词「
pybook03」,立即获取主页君与小伙伴一起翻译的《Think Python 2e》电子版
回复关键词「入门资料」,立即获取主页君整理的 10 本 Python 入门书的电子版
回复关键词「m」,立即获取Python精选优质文章合集
回复关键词「book 数字」,将数字替换成 0 及以上数字,有惊喜好礼哦~
题图:pexels,CC0 授权。

好文章,我在看