有没有人知道有没有更好的方法来检查某些图像是否包含一个(半)透明像素旁边的所有像素并检查它们的alpha通道?
[pseudo]
for each pixel in image:
if pixel.alpha != 0xff:
return true
提前致谢。
答案 0 :(得分:2)
您可以使用BufferedImage.getType() 要么 ColorModel.hasAlpha() 检查是否有alpha通道。
如果有Alpha通道,则必须检查各个像素。
答案 1 :(得分:1)
是的,有一种比简单地迭代所有像素更好的方法。如果您已经为Alpha通道存储了mip-map,则可以从上到下检查任何非不透明像素。
JAI支持这些:将alpha通道或整个图像放入javax.media.jai.ImageMIPMap,然后使用getImage(int level)从上到下迭代其级别
谷歌搜索的一些关键字:gauss-laplace image pyramids, mipmaps