Если я понял, что вы сделали, вы взяли изображение в качестве входного (матрица 256x256 RGB) и преобразовали его в матрицу 256x256, где каждая позиция представляет собой взвешенную сумму значений HSV.
Однако, если вы хотитечтобы извлечь цветную гистограмму (которая в данном случае является подходящим входом для Weka), вы должны иметь в качестве выходного вектора, где каждая запись - это количество пикселей с заданными значениями H, S и L.
Поскольку у вас есть 8 различных значений для H (от 0 до 7), 3 для S (от 0 до 2) и 3 для L (от 0 до 2), ваш вектор V должен иметь 8 + 3 + 3 = 14 записей.Чтобы вычислить V, используйте следующий алгоритм:
Input: quantized HSL image I
Output: histogram V
for each pixel p in I:
V[p.H] = V[p.H] + 1 // Increment the count for the H component.
V[7 + p.S] = V[7 + p.S] + 1 // Increment the count for the S component.
V[10 + p.L] = V[10 + p.L] + 1 // Increment the count for the L component.
return V