1 个不稳定版本
0.1.0 | 2022年3月20日 |
---|
#42 in #palette
1.5MB
342 行
马赛克
目前这只能处理单个像素的映射,我正在努力编写代码,以便将多个像素映射到单个调色板项,这是一个正在进行中的工作。
假设你有一系列图像,你希望将它们组合在一起,以类似于你想要的任何图像的方式。这个程序所做的是,作为输入,一个图像文件夹(输出调色板)和一个输入图像(我们试图重建的图像)。
这个过程基本上遍历调色板中的每一个项目(图像),并找出调色板中每个项目的平均颜色。经过这个过程后,我们可以遍历图像中的每一个像素,并找出与我们的调色板中最相似的项。使用这些信息,我们可以通过从调色板中的项中取像素并将它们写入新图像来构建马赛克。
这可以与任何一组图像一起工作,不一定是表情符号。
编译
cargobuild --release
使用
提示
./mosaic
终端参数输入
./mosaic --帮助
命令行参数:./mosaic -f Landscape-Color.png -p emoji -fs 256 -ps 16 -v 64.0
- 指定 file.png,其缩放最大尺寸为256,使用缩放到16x16的“emoji”调色板,并具有1/64的“方差”。
输入文件名的扩展名!
如何使用其他图像?
1 找到一组图像
- 我推荐从这里获得的3500多个表情符号: https://twemoji.twitter.com/
2 将图像放入一个命名文件夹中
- 在此存储库中,为了方便,提到的集合命名为emojis/
3 将命名文件夹放在palettes/下
依赖关系
~10MB
~170K SLoC