【问题标题】:How to extract the most prominent colour from an image? [duplicate]如何从图像中提取最突出的颜色? [复制]
【发布时间】:2015-11-19 14:21:38
【问题描述】:
我正计划开发一个音乐播放器应用程序,并且我希望使按钮根据正在查看的专辑的专辑封面中最突出的颜色以及在其他情况下预选的颜色来改变用户界面或当前正在播放的歌曲专辑的突出颜色。
我想知道是否有人知道从图像中提取最突出颜色的方法。
【问题讨论】:
标签:
android
android-music-player
【解决方案1】:
有一个很好的 API 可以让您轻松地完成此操作,称为调色板。它允许您从您提供的Bitmap 中选择颜色,如下所示:
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);
依赖是'com.android.support:palette-v7:21.0.0'
我认为这将完全满足您的需求。点击 here 获取有关如何实施的完整指南。