calculateDCT method
Helper function to perform 1D discrete cosine tranformation on a matrix
Implementation
List calculateDCT(List matrix) {
var transformed = List<num>.filled(32, 0);
var _size = matrix.length;
for (var i = 0; i < _size; i++) {
num sum = 0;
for (var j = 0; j < _size; j++) {
sum += matrix[j] * cos((i * pi * (j + 0.5)) / _size);
}
sum *= sqrt(2 / _size);
if (i == 0) {
sum *= 1 / sqrt(2);
}
transformed[i] = sum;
}
return transformed;
}