Java 该如何判断一张图片是否是纯色的图片呢?

2022-08-31 16:55:52 +08:00
 c00WKmdje2wZLrSI

除了每个像素循环判断过去,还有什么快一些的办法吗?

2699 次点击
所在节点    问与答
25 条回复
icyalala
2022-09-01 00:08:02 +08:00
如果是位图,那无论如何都要遍历所有像素。上面说的什么缩小、压缩,同样也是遍历。
优化点无非是比如用 simd 加速一下,我觉得够快了。

如果是特定的压缩格式,比如 png 带调色板的,那直接根据压缩方式查一下肯定最快。
pennai
2022-09-01 00:13:08 +08:00
压缩操作本身就需要遍历,抛开前置条件谈没有意义啊
jifengg
2022-09-01 09:02:47 +08:00
如果是要判断完全一致的纯色,个人觉得除了遍历没有其他办法了。
遍历的话,可以根据实际场景优化,比如从四个角往中心,或者反着来,就是尽早遇到不一样的颜色,退出遍历。
bibitiger
2022-09-01 16:10:51 +08:00
切片,多线程
比较换成位运算

当然你要是大多数都不是纯色的话,遍历应该最快
anonymous2351d00
2022-09-01 17:16:29 +08:00
这个我熟,拉取各大 java 去掉末位 a 的网站,对比车牌号就能识别是不是纯纯的色图[狗头]。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/876772

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX