Why not infinite layers? Using a different file for each image, you can divide the width by the height and get the amount of cells in each strip:
Then using a text file, describe the valid chrominance for each cell, like .block, but .plant:
{
"hue": [ // In degrees
"80-160", //...