Однако Вы меня поражаете. Взялись за задачу которая откровенно не Вашего программистского уровня. Впрочем качество которое достойно похвалы
И я так понимаю что Вы еще сканер хотите подключить..?
Опять полез ковыряться в Вашем коде. Никогда не называйте локальные и глобальные переменные одними именами. А для циклов вообще рекомендуется не пользоваться глобальными переменными. Я сначала подумал что компилятор "уехал" - и не удивительно, там где должно быть равномерное распределение какойто хаос твориться. Потом заметил что у Вас такой дурдом с переменными. Больше так не делайте
А что Вы там только напридумывали в расчете оператора Собеля? Где Вы такой алгоритм откопали?
В приведенных Вами ссылках вообще ничего полезного по Вашему алгоритму нет...
Тем не менее поправил я Ваше творчество. В целом алгоритм расчета оператора Собеля работает нормально (можете на градиентах проверить), только он ведь расчитан на градиентные переходы и после бинаризации/скелетизации результаты вообще никакие. Впрочем хотябы побольше отпечатков пальцев дали чтобы полюбоваться можно было.....
Программу и исходники можно взять здесь:
FingertipЗаходите есче.