如何从图像中提取最突出的颜色?

pra*_*.ps 2 android android-music-player

我打算开发一个音乐播放器应用程序,我想让 ui 按钮根据正在查看的专辑专辑封面中最突出的颜色改变颜色,在其他情况下,或者是预选的颜色或突出的颜色当前正在播放的歌曲专辑的颜色。

我想知道是否有人知道从图像中提取最突出颜色的方法。

vgu*_*zzi 5

有一个很好的 API 可以让你轻松地做到这一点,称为调色板。它允许您从Bitmap您提供的a 中选择颜色,如下所示:

Palette palette = Palette.generate(myBitmap);
int vibrant = palette.getVibrantColor(0x000000);
int vibrantLight = palette.getLightVibrantColor(0x000000);
int vibrantDark = palette.getDarkVibrantColor(0x000000);
int muted = palette.getMutedColor(0x000000);
int mutedLight = palette.getLightMutedColor(0x000000);
int mutedDark = palette.getDarkMutedColor(0x000000);
Run Code Online (Sandbox Code Playgroud)

依赖是 'com.android.support:palette-v7:21.0.0'

我认为这将完全满足您的需求。单击此处获取有关如何实施它的完整指南。