Ничего не скажу о библиотеке, но расскажу одну историю. Мой хороший друг подрабатывал тем, что писал программы для дипломов и курсовиков. Одна девушка обратилась к нему с аналогичной проблемой — ей задали написать программу распознавания текстов.
Первое, что он сделал — разбил текст на строки, анализируя плотность точек в каждой строке пикселов.
Вторым шагом было была разбивка строк на знаки, причём, он учёл, что в современных шрифтах ширина разных символов может быть разной.
Наконец, найденные знаки он показывал пользователю и предлагал ввести с клавиатуры букву или знак, соответствующий изображению. Таким образом программа обучалась.
Результат был удивительный — после обучения программа показывала лучшие результаты, чем любые существующие на тот момент системы распознавания текста (1995 год).
Программа имела два недостатка — жесткая привязка к шрифту(ам), на котором(ых) производилось обучение. Чем больше шрифтов понимала программа, тем меньше была точность распознавания.
С тех пор прошло много лет. Жаль, что друг больше никогда не возвращался к этой теме. Его простая программа даже сейчас имела бы смысл для распознавания большого большого текста, напечатанного одним шрифтом, например книг.
Кстати, тоже не понимаю, зачем автору вопроса нужна библиотека для работы с изображениями — используйте монохромный BMP на входе «распознавалки». Смысл курсовика ведь не в работе с графическими библиотеками, а именно в распознавании текста.