gpt4 book ai didi

java - 在 Java 中存储大量文件的 RGB 值

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:52:32 25 4
gpt4 key购买 nike

我正在用 Java 制作照片马赛克。我有一堆瓷砖。我必须处理每个图 block 并将其 [R,G,B] 值存储在某个数据结构中。基本上,我希望它采用以下形式:

for eachTile in Directory:
calculateRGB;
store in HashMap(key is image name, value is a list of R,G,B value) in the form { (image1:[R,G,B]), (image2:[R,G,B], ...}

完成此操作后,我必须将目标图像分解为多个单元格。每个单元格的大小与图 block 的大小相同。现在,我必须处理每个单元格并计算它的 RGB。在此之后,我必须将它与瓷砖进行比较以找到最佳匹配。

现在,匹配很棘手,因为我已经计算了每个单元格和每个图 block 之间的欧几里德度量以找到最佳匹配。所以,如果我有 n 个图 block 和 m 个单元格,我的算法将运行 n^2.m 次。

有没有更好的方法来做到这一点?还是我必须执行计算密集型算法来比较图像?

最佳答案

您可以构建八叉树 http://en.wikipedia.org/wiki/Octree , 或 KD 树 http://en.wikipedia.org/wiki/Kd-tree , 有效地找到最近的邻居。

关于java - 在 Java 中存储大量文件的 RGB 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12777091/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com