Я думаю, что вам нужно будет более подробно остановиться на ваших вопросах. Возможно, приведу несколько конкретных примеров.
Если я интерпретирую ваш вопрос как:
У вас есть изображение, скажем, 10 х 10
строка 1
строка 2
строка 3 ...
строка 10
Вы хотите применить какой-либо фильтр (Low Pass / Band Pass) к этим линиям независимо.
Затем, сначала вам нужно спроектировать горизонтальные фильтры (в любом инструменте, который вы хотите).
Предположим (без ограничения общности), что у вас есть 2 фильтра:
Низкочастотный: 1x10 изображение
Полоса пропуск: 1x10 изображение
Затем вы можете использовать cv :: dft для преобразования этих фильтров в частотную область. Также используйте cv :: dft для преобразования вашего изображения в частотную область. Конечно, вы должны конвертировать отдельные строки отдельно. Один из способов сделать это:
cv::Mat im = cv::imread('myimage.jpg', 1);
cv::Mat one_row_in_frequency_domain;
for (int i=0; i<im.rows; i++){
cv::Mat one_row = im.row(i);
cv::dft(one_row, one_row_in_frequency_domain);
// Apply your filter by multiplying
}