Como posso gerar uma paleta de cores proeminentes a partir de uma imagem?

Estou tentando descobrir como provar todos os pixels de uma imagem e gerar uma paleta de cores a partir dela, algo comoist ouist. Não faço ideia por onde começar. Alguém pode me apontar na direção certa

__EDIT: __

Este é o que acabei até agora:

Eu usei isso Pixelate para obter seções de blocos grandes, como sugerido por joe_coolish. Está funcionando perfeitamente e me dando uma boa amostra de cores para trabalhar (isto é, da imagem da amostra de janelas de medusas):

Agora, se alguém pudesse me ajudar a obter as 5 cores mais distintas (azul mais escuro, azul mais claro, laranja, cinza e pêssego (?)), Eu te amaria para sempre. Eu realmente não entendo comomédi ouadiciona cores juntas. Também não consigo descobrir como saber se uma cor é semelhante programaticamente, existem muitos números e variáveis nas explicações que me perco tentando descobrir o que está fazendo o que com quem.

questionAnswers(6)

yourAnswerToTheQuestion