我无法从您的问题中判断您是否喜欢或不喜欢 teespring 或 ColorThief 所做的事情或问题是什么,或者当您想要 10 种颜色时为什么要 100 种颜色,或者您认为 100 种颜色是错误的还是正确的...... .所以我会尝试并建议获得颜色的方法,你可以看看你是否喜欢它们。由于您对其他工具持开放态度,因此我将选择适用于 OSX、Linux 和 Windows 的 ImageMagick。
因此,从您的图像开始,您可以在命令行中让 ImageMagick 选择 10 种最佳颜色的想法,然后将它们制作成仅包含这些颜色的样本,并将其大小从 10 像素 x 1 像素调整为 500 像素所以你可以看到它:
convert motor.png -colors 10 -unique-colors -scale 500x swatch.png
或者,您可以 ImageMagick 在 YIQ 颜色空间中进行量化,如下所示:
convert motor.png -quantize YIQ -colors 10 -unique-colors -scale 500x swatch.png
或者,如果您希望颜色选择算法在选择颜色时忽略饱和度的变化,您可以转到 HSL 颜色空间并将饱和度固定为 50%,使色相和亮度不受影响,然后返回 RGB 颜色空间并按上述方法选择颜色但现在有固定的饱和度:
convert motor.png -colorspace hsl -channel G -fx 0.5 +channel -colorspace RGB -colors 10 -unique-colors -scale 500x swatch.png