使用Leptonica API裁剪图片 - >或者哪个图像处理Lib使用?

时间:2011-12-22 14:48:00

标签: c++ image-processing crop tesseract

我正在尝试做两件事 - >首先,我需要读取图像并裁剪它(坐标/框架将由用户提供)。然后我想对它进行OCR。 (实际上,严格划分OCR的种植)。 现在我的问题:

对于OCR,我使用的是Tesseract,它使用Leptonica API进行图像处理。 由于我正在为嵌入式设备编程,因此我希望将不同库的数量保持在较低水平。所以我最感兴趣的是用Leptonica裁剪我的图像,所以我不需要第三个图书馆来完成这项任务。

所以现在我的问题是,如何用Leptonica剪切画面?还有办法吗?

2 个答案:

答案 0 :(得分:3)

非官方文档中有一个例子,似乎包含了裁剪:http://tpgit.github.com/Leptonica/croptext_8c_source.html

更具体地说,你应该创建一个框(即裁剪窗口),然后调用pixClipRectangle()函数来裁剪图像:

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

答案 1 :(得分:3)

stativ的答案有效, 您必须删除已创建的对象:

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

和PIX *有

pixDestroy(&pix);