以编程方式创建照片马赛克

4

目标:使用.NET和C#编程,以程序方式创建照片马赛克

我想以编程方式完成这个项目的主要原因是为了能够自己记录每个图像的位置,从而创建出图像汇聚成照片马赛克的动画效果。如果可以找到现有的可用工具来完成这个任务,那将非常棒。

有任何想法吗?

4个回答

6

链接似乎已经失效了,不确定是否有更好的可用链接? - Abe Petrillo

1

我认为你可以从颜色量化中借鉴一些想法。对于每张照片,计算它的平均颜色。由于它很小,所以从远处看它就是这个样子。然后将目标图像分成与照片大小相同的矩形,并计算它们的平均颜色。或者,为了获得更好的结果,适当缩小它,使每张照片对应于目标图片中的一个像素。然后,对于目标图片的每个像素,选择具有最接近像素颜色的颜色值的照片(最接近-即在3D RGB立方体中最接近)。你还可以应用一些抖动效果,使其看起来更好(Floyd-Steinberg算法是最好的算法之一)。


0
你可以查找metapixel,它有用于执行照片马赛克分析的代码,但也可以记录一个输出文件,其中列出了每个位置使用的确切源图像。这应该可以满足您的需求。不确定是否支持Windows系统。

-1

这并不是对你问题的真正回答,但你应该知道 Photomosaic 既有专利又有商标。你可以在你已经引用的 wikipedia article 中找到相关信息。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接