Преобразование определено над матрицей NxN. В формулах в учебнике f(u,v) - это значение пикселя в ячейке c индексами u, v. Вам надо тупо реализовать формулы из учебника (4 вложенных цикла).
Надо ли вам применять преобразование отдельно к каждому блоку 8x8 пикселей или нет - это должно быть в задании написано. В каком-нибудь jpeg преобразование применяется отдельно к каждому куску 8x8 пикселей, а не ко всему изображению, потому что на большом масштабе слишком не регулярная картинка получается. А для регулярных картин результат дискретного косинусного преобразования хорошо сжимается (много нулей и маленьких коэффициентов). Ну и еще, применять преобразование ко всему изображению будет медленнее.
Но это не относится к самому преобразованию. Это тонкость алгоритма jpeg.