这是最终得到的效果,如果你的图片集不同,或者参数设置不同,效果也会有差别。
进群:548377875 即可获取数十套PDF哦!源码就不分享给大家了!
1,收集图片素材
要做出上述的效果来,首先就需要大量的图片,图片少了,效果肯定不好,容易重复,需要的像素值找不到相近的等等弊端。人工收集图片的话肯定是非常慢的,如果要手工下载图片,那至少要找图片找很多天了。这个时候一般有两个解决途径:
- 爬取图片
用网络爬虫从别的网站上爬取图片是个不错的选择,也可以用python来实现。
- 下载图片数据集
网络上有别人已经整理好的图像数据集,我使用的是斯坦福大学李飞飞制作的ImageNet数据集。这个数据集是计算机视觉领域常用的一种数据集,它的训练集大概有100多个G,测试集有10多个G,只是测试集就有10万张图片,够本工程使用了。所以我下载的是他的测试集。网速快的话可以十来分钟就下载下来。图片数据集的迅雷下载链接
3,建立索引
建立索引就是保存每张图片出现次数最多的像素值然后保存到文件中。格式为:
建立好索引文件之后,就可以知道每个图片和他们最常见的颜色。在使用这些图片的时候,就可以读取整个索引文件,然后定位到图片文件本身。试想一下,如果没有这些索引文件,那么生成一次马赛克拼图就要求一次所有图片的最多像素,太多冗余了。下面是代码:
4,画图
首先是读取步骤3生成的索引文件。然后可以选择打乱它,以免一样的图片聚集出现在一个位置附近。
大功告成。
下面是我的时间统计:
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。