Я пытаюсь отфильтровать изображение отпечатка пальца с помощью фильтра Габора, я использую Framework accord.net, и у меня есть две проблемы:
Я не знаю, какчтобы установить начальные значения фильтра, я нашел, и во многих местах есть другие ответы, мне кажется, никто не работает
Я не совсем уверен, если я 'Я делаю алгоритм по праву.Сначала я создаю 12 банковских изображений:
public static List<Bitmap> gaborFilterBank(Bitmap b, int numberOfFilters)
{
GaborFilter gb = new GaborFilter();
Random random = new Random();
Bitmap bx;
List<Bitmap> gaborBank = new List<Bitmap>();
float jump = (3.14f) / numberOfFilters;
bx = ImageSupporter.ColorToGrayscale(b);
for (int i = 0; i < numberOfFilters+1; i++)
{
gb.Theta = (float)i * jump;
gaborBank.Add(gb.Apply(bx));
}
return gaborBank;
}
Я уже поделил изображение на сетки и знаю локальную ориентацию ячеек в сетке.И, наконец, я меняю биты в каждой ячейке для битов в соответствующих изображениях из банка Габора, например, ячейки имеют ориентацию 90 градусов, поэтому я нахожу изображение из банка Габора и меняю соответствующие пиксели из этого изображения.