2011-12-22 3 views
3

Я пытаюсь сделать две вещи -> Сначала мне нужно прочитать изображение и обрезать его (координаты/кадр будет предоставлен пользователем). Затем я хочу запустить OCR над ним. (Фактически, обрезка OCR должна быть строго разделена). Теперь к моей проблеме:Обрезать изображения с помощью API Leptonica -> ИЛИ какую обработку изображений использовать Lib?

Для OCR Я использую Tesseract, который использует API Leptonica для обработки изображений. Поскольку я программирую встроенное устройство, я хочу, чтобы количество разных библиотек было низким. Поэтому мой лучший интерес - обрезать изображение с помощью Leptonica, поэтому для выполнения этой задачи мне не нужна третья библиотека.

Так что теперь мой вопрос: как я могу вырезать рамки с помощью Лептоники? Есть ли даже способ?

ответ

3

Там пример в неофициальной документации, которая, кажется, включить обрезку: http://tpgit.github.com/Leptonica/croptext_8c_source.html

Чтобы быть более конкретным, вы должны создать поле, а затем вызвать pixClipRectangle() функция, чтобы обрезать изображение (то есть окно кадрирования.) : ответ

BOX* cropWindow = boxCreate(x, y, w, h); 
PIX* croppedImage = pixClipRectangle(image, cropWindow, NULL); 
+0

Aahhh выглядит действительно как-то я мог бы использовать - я искал в неофициальной документации для этого, но не нашли что-то вроде этого (или Способность читать его) - Going попробовать это прямо сейчас! !! – Toby

+0

Отлично - просто протестировал его, и он работает !!! Большое спасибо!!! – Toby

2

Stativ работает, но вы должны удалить созданные объекты:

BOX* box = boxCreate(startX, startY, width, height); 
PIX* pixd= pixClipRectangle(pixs, box, NULL); 
boxDestroy(&box); 

и PIX * есть

pixDestroy(&pix); 

 Смежные вопросы

  • Нет связанных вопросов^_^