国产系统开放tesseract-ocr

This commit is contained in:
luoliangyi 2022-10-24 09:13:37 +08:00
parent b6ae4f2bf4
commit b81c5f67f2
2 changed files with 34 additions and 17 deletions

View File

@ -29,6 +29,8 @@
<Add option="../../../third_party/opencv/uos/amd64/lib/libittnotify.a" /> <Add option="../../../third_party/opencv/uos/amd64/lib/libittnotify.a" />
<Add option="../../../third_party/opencv/uos/amd64/lib/libzlib.a" /> <Add option="../../../third_party/opencv/uos/amd64/lib/libzlib.a" />
<Add option="../../../third_party/freetype/uos/amd64/lib/libfreetype.a" /> <Add option="../../../third_party/freetype/uos/amd64/lib/libfreetype.a" />
<Add option="../../../third_party/ocr/tesseract-ocr/uos/amd64/lib/libtesseract.a" />
<Add option="../../../third_party/leptonica/uos/amd64/lib/libleptonica.a" />
<Add option="-L../HGBase/bin/uos_x86_64_Debug -lHGBase" /> <Add option="-L../HGBase/bin/uos_x86_64_Debug -lHGBase" />
<Add option="-L../HGImgFmt/bin/uos_x86_64_Debug -lHGImgFmt" /> <Add option="-L../HGImgFmt/bin/uos_x86_64_Debug -lHGImgFmt" />
<Add option="-ldl" /> <Add option="-ldl" />
@ -59,6 +61,8 @@
<Add option="../../../third_party/opencv/uos/amd64/lib/libittnotify.a" /> <Add option="../../../third_party/opencv/uos/amd64/lib/libittnotify.a" />
<Add option="../../../third_party/opencv/uos/amd64/lib/libzlib.a" /> <Add option="../../../third_party/opencv/uos/amd64/lib/libzlib.a" />
<Add option="../../../third_party/freetype/uos/amd64/lib/libfreetype.a" /> <Add option="../../../third_party/freetype/uos/amd64/lib/libfreetype.a" />
<Add option="../../../third_party/ocr/tesseract-ocr/uos/amd64/lib/libtesseract.a" />
<Add option="../../../third_party/leptonica/uos/amd64/lib/libleptonica.a" />
<Add option="-L../../../../release/uos/x86_64 -lHGBase -lHGImgFmt" /> <Add option="-L../../../../release/uos/x86_64 -lHGBase -lHGImgFmt" />
<Add option="-ldl" /> <Add option="-ldl" />
<Add option="-lpthread" /> <Add option="-lpthread" />
@ -87,6 +91,8 @@
<Add option="../../../third_party/opencv/uos/aarch64/lib/libittnotify.a" /> <Add option="../../../third_party/opencv/uos/aarch64/lib/libittnotify.a" />
<Add option="../../../third_party/opencv/uos/aarch64/lib/libzlib.a" /> <Add option="../../../third_party/opencv/uos/aarch64/lib/libzlib.a" />
<Add option="../../../third_party/freetype/uos/aarch64/lib/libfreetype.a" /> <Add option="../../../third_party/freetype/uos/aarch64/lib/libfreetype.a" />
<Add option="../../../third_party/ocr/tesseract-ocr/uos/aarch64/lib/libtesseract.a" />
<Add option="../../../third_party/leptonica/uos/aarch64/lib/libleptonica.a" />
<Add option="-L../HGBase/bin/uos_aarch64_Debug -lHGBase" /> <Add option="-L../HGBase/bin/uos_aarch64_Debug -lHGBase" />
<Add option="-L../HGImgFmt/bin/uos_aarch64_Debug -lHGImgFmt" /> <Add option="-L../HGImgFmt/bin/uos_aarch64_Debug -lHGImgFmt" />
<Add option="-ldl" /> <Add option="-ldl" />
@ -117,6 +123,8 @@
<Add option="../../../third_party/opencv/uos/aarch64/lib/libittnotify.a" /> <Add option="../../../third_party/opencv/uos/aarch64/lib/libittnotify.a" />
<Add option="../../../third_party/opencv/uos/aarch64/lib/libzlib.a" /> <Add option="../../../third_party/opencv/uos/aarch64/lib/libzlib.a" />
<Add option="../../../third_party/freetype/uos/aarch64/lib/libfreetype.a" /> <Add option="../../../third_party/freetype/uos/aarch64/lib/libfreetype.a" />
<Add option="../../../third_party/ocr/tesseract-ocr/uos/aarch64/lib/libtesseract.a" />
<Add option="../../../third_party/leptonica/uos/aarch64/lib/libleptonica.a" />
<Add option="-L../../../../release/uos/aarch64 -lHGBase -lHGImgFmt" /> <Add option="-L../../../../release/uos/aarch64 -lHGBase -lHGImgFmt" />
<Add option="-ldl" /> <Add option="-ldl" />
<Add option="-lpthread" /> <Add option="-lpthread" />
@ -144,6 +152,8 @@
<Add option="../../../third_party/opencv/uos/mips64/lib/libopencv_core.a" /> <Add option="../../../third_party/opencv/uos/mips64/lib/libopencv_core.a" />
<Add option="../../../third_party/opencv/uos/mips64/lib/libzlib.a" /> <Add option="../../../third_party/opencv/uos/mips64/lib/libzlib.a" />
<Add option="../../../third_party/freetype/uos/mips64/lib/libfreetype.a" /> <Add option="../../../third_party/freetype/uos/mips64/lib/libfreetype.a" />
<Add option="../../../third_party/ocr/tesseract-ocr/uos/mips64/lib/libtesseract.a" />
<Add option="../../../third_party/leptonica/uos/mips64/lib/libleptonica.a" />
<Add option="-L../HGBase/bin/uos_mips64_Debug -lHGBase" /> <Add option="-L../HGBase/bin/uos_mips64_Debug -lHGBase" />
<Add option="-L../HGImgFmt/bin/uos_mips64_Debug -lHGImgFmt" /> <Add option="-L../HGImgFmt/bin/uos_mips64_Debug -lHGImgFmt" />
<Add option="-ldl" /> <Add option="-ldl" />
@ -173,6 +183,8 @@
<Add option="../../../third_party/opencv/uos/mips64/lib/libopencv_core.a" /> <Add option="../../../third_party/opencv/uos/mips64/lib/libopencv_core.a" />
<Add option="../../../third_party/opencv/uos/mips64/lib/libzlib.a" /> <Add option="../../../third_party/opencv/uos/mips64/lib/libzlib.a" />
<Add option="../../../third_party/freetype/uos/mips64/lib/libfreetype.a" /> <Add option="../../../third_party/freetype/uos/mips64/lib/libfreetype.a" />
<Add option="../../../third_party/ocr/tesseract-ocr/uos/mips64/lib/libtesseract.a" />
<Add option="../../../third_party/leptonica/uos/mips64/lib/libleptonica.a" />
<Add option="-L../../../../release/uos/mips64 -lHGBase -lHGImgFmt" /> <Add option="-L../../../../release/uos/mips64 -lHGBase -lHGImgFmt" />
<Add option="-ldl" /> <Add option="-ldl" />
<Add option="-lpthread" /> <Add option="-lpthread" />
@ -200,6 +212,8 @@
<Add option="../../../third_party/opencv/uos/loongarch64/lib/libopencv_core.a" /> <Add option="../../../third_party/opencv/uos/loongarch64/lib/libopencv_core.a" />
<Add option="../../../third_party/opencv/uos/loongarch64/lib/libzlib.a" /> <Add option="../../../third_party/opencv/uos/loongarch64/lib/libzlib.a" />
<Add option="../../../third_party/freetype/uos/loongarch64/lib/libfreetype.a" /> <Add option="../../../third_party/freetype/uos/loongarch64/lib/libfreetype.a" />
<Add option="../../../third_party/ocr/tesseract-ocr/uos/loongarch64/lib/libtesseract.a" />
<Add option="../../../third_party/leptonica/uos/loongarch64/lib/libleptonica.a" />
<Add option="-L../HGBase/bin/uos_loongarch64_Debug -lHGBase" /> <Add option="-L../HGBase/bin/uos_loongarch64_Debug -lHGBase" />
<Add option="-L../HGImgFmt/bin/uos_loongarch64_Debug -lHGImgFmt" /> <Add option="-L../HGImgFmt/bin/uos_loongarch64_Debug -lHGImgFmt" />
<Add option="-ldl" /> <Add option="-ldl" />
@ -229,6 +243,8 @@
<Add option="../../../third_party/opencv/uos/loongarch64/lib/libopencv_core.a" /> <Add option="../../../third_party/opencv/uos/loongarch64/lib/libopencv_core.a" />
<Add option="../../../third_party/opencv/uos/loongarch64/lib/libzlib.a" /> <Add option="../../../third_party/opencv/uos/loongarch64/lib/libzlib.a" />
<Add option="../../../third_party/freetype/uos/loongarch64/lib/libfreetype.a" /> <Add option="../../../third_party/freetype/uos/loongarch64/lib/libfreetype.a" />
<Add option="../../../third_party/ocr/tesseract-ocr/uos/loongarch64/lib/libtesseract.a" />
<Add option="../../../third_party/leptonica/uos/loongarch64/lib/libleptonica.a" />
<Add option="-L../../../../release/uos/loongarch64 -lHGBase -lHGImgFmt" /> <Add option="-L../../../../release/uos/loongarch64 -lHGBase -lHGImgFmt" />
<Add option="-ldl" /> <Add option="-ldl" />
<Add option="-lpthread" /> <Add option="-lpthread" />
@ -257,6 +273,8 @@
<Add option="../../../third_party/opencv/kylin/amd64/lib/libittnotify.a" /> <Add option="../../../third_party/opencv/kylin/amd64/lib/libittnotify.a" />
<Add option="../../../third_party/opencv/kylin/amd64/lib/libzlib.a" /> <Add option="../../../third_party/opencv/kylin/amd64/lib/libzlib.a" />
<Add option="../../../third_party/freetype/kylin/amd64/lib/libfreetype.a" /> <Add option="../../../third_party/freetype/kylin/amd64/lib/libfreetype.a" />
<Add option="../../../third_party/ocr/tesseract-ocr/kylin/amd64/lib/libtesseract.a" />
<Add option="../../../third_party/leptonica/kylin/amd64/lib/libleptonica.a" />
<Add option="-L../HGBase/bin/kylin_x86_64_Debug -lHGBase" /> <Add option="-L../HGBase/bin/kylin_x86_64_Debug -lHGBase" />
<Add option="-L../HGImgFmt/bin/kylin_x86_64_Debug -lHGImgFmt" /> <Add option="-L../HGImgFmt/bin/kylin_x86_64_Debug -lHGImgFmt" />
<Add option="-ldl" /> <Add option="-ldl" />
@ -287,6 +305,8 @@
<Add option="../../../third_party/opencv/kylin/amd64/lib/libittnotify.a" /> <Add option="../../../third_party/opencv/kylin/amd64/lib/libittnotify.a" />
<Add option="../../../third_party/opencv/kylin/amd64/lib/libzlib.a" /> <Add option="../../../third_party/opencv/kylin/amd64/lib/libzlib.a" />
<Add option="../../../third_party/freetype/kylin/amd64/lib/libfreetype.a" /> <Add option="../../../third_party/freetype/kylin/amd64/lib/libfreetype.a" />
<Add option="../../../third_party/ocr/tesseract-ocr/kylin/amd64/lib/libtesseract.a" />
<Add option="../../../third_party/leptonica/kylin/amd64/lib/libleptonica.a" />
<Add option="-L../../../../release/kylin/x86_64 -lHGBase -lHGImgFmt" /> <Add option="-L../../../../release/kylin/x86_64 -lHGBase -lHGImgFmt" />
<Add option="-ldl" /> <Add option="-ldl" />
<Add option="-lpthread" /> <Add option="-lpthread" />
@ -316,6 +336,8 @@
<Add option="../../../third_party/opencv/kylin/aarch64/lib/libtegra_hal.a" /> <Add option="../../../third_party/opencv/kylin/aarch64/lib/libtegra_hal.a" />
<Add option="../../../third_party/opencv/kylin/aarch64/lib/libzlib.a" /> <Add option="../../../third_party/opencv/kylin/aarch64/lib/libzlib.a" />
<Add option="../../../third_party/freetype/kylin/aarch64/lib/libfreetype.a" /> <Add option="../../../third_party/freetype/kylin/aarch64/lib/libfreetype.a" />
<Add option="../../../third_party/ocr/tesseract-ocr/kylin/aarch64/lib/libtesseract.a" />
<Add option="../../../third_party/leptonica/kylin/aarch64/lib/libleptonica.a" />
<Add option="-L../HGBase/bin/kylin_aarch64_Debug -lHGBase" /> <Add option="-L../HGBase/bin/kylin_aarch64_Debug -lHGBase" />
<Add option="-L../HGImgFmt/bin/kylin_aarch64_Debug -lHGImgFmt" /> <Add option="-L../HGImgFmt/bin/kylin_aarch64_Debug -lHGImgFmt" />
<Add option="-ldl" /> <Add option="-ldl" />
@ -347,6 +369,8 @@
<Add option="../../../third_party/opencv/kylin/aarch64/lib/libtegra_hal.a" /> <Add option="../../../third_party/opencv/kylin/aarch64/lib/libtegra_hal.a" />
<Add option="../../../third_party/opencv/kylin/aarch64/lib/libzlib.a" /> <Add option="../../../third_party/opencv/kylin/aarch64/lib/libzlib.a" />
<Add option="../../../third_party/freetype/kylin/aarch64/lib/libfreetype.a" /> <Add option="../../../third_party/freetype/kylin/aarch64/lib/libfreetype.a" />
<Add option="../../../third_party/ocr/tesseract-ocr/kylin/aarch64/lib/libtesseract.a" />
<Add option="../../../third_party/leptonica/kylin/aarch64/lib/libleptonica.a" />
<Add option="-L../../../../release/kylin/aarch64 -lHGBase -lHGImgFmt" /> <Add option="-L../../../../release/kylin/aarch64 -lHGBase -lHGImgFmt" />
<Add option="-ldl" /> <Add option="-ldl" />
<Add option="-lpthread" /> <Add option="-lpthread" />
@ -374,6 +398,8 @@
<Add option="../../../third_party/opencv/kylin/mips64/lib/libopencv_core.a" /> <Add option="../../../third_party/opencv/kylin/mips64/lib/libopencv_core.a" />
<Add option="../../../third_party/opencv/kylin/mips64/lib/libzlib.a" /> <Add option="../../../third_party/opencv/kylin/mips64/lib/libzlib.a" />
<Add option="../../../third_party/freetype/kylin/mips64/lib/libfreetype.a" /> <Add option="../../../third_party/freetype/kylin/mips64/lib/libfreetype.a" />
<Add option="../../../third_party/ocr/tesseract-ocr/kylin/mips64/lib/libtesseract.a" />
<Add option="../../../third_party/leptonica/kylin/mips64/lib/libleptonica.a" />
<Add option="-L../HGBase/bin/kylin_mips64_Debug -lHGBase" /> <Add option="-L../HGBase/bin/kylin_mips64_Debug -lHGBase" />
<Add option="-L../HGImgFmt/bin/kylin_mips64_Debug -lHGImgFmt" /> <Add option="-L../HGImgFmt/bin/kylin_mips64_Debug -lHGImgFmt" />
<Add option="-ldl" /> <Add option="-ldl" />
@ -403,6 +429,8 @@
<Add option="../../../third_party/opencv/kylin/mips64/lib/libopencv_core.a" /> <Add option="../../../third_party/opencv/kylin/mips64/lib/libopencv_core.a" />
<Add option="../../../third_party/opencv/kylin/mips64/lib/libzlib.a" /> <Add option="../../../third_party/opencv/kylin/mips64/lib/libzlib.a" />
<Add option="../../../third_party/freetype/kylin/mips64/lib/libfreetype.a" /> <Add option="../../../third_party/freetype/kylin/mips64/lib/libfreetype.a" />
<Add option="../../../third_party/ocr/tesseract-ocr/kylin/mips64/lib/libtesseract.a" />
<Add option="../../../third_party/leptonica/kylin/mips64/lib/libleptonica.a" />
<Add option="-L../../../../release/kylin/mips64 -lHGBase -lHGImgFmt" /> <Add option="-L../../../../release/kylin/mips64 -lHGBase -lHGImgFmt" />
<Add option="-ldl" /> <Add option="-ldl" />
<Add option="-lpthread" /> <Add option="-lpthread" />
@ -430,6 +458,8 @@
<Add option="../../../third_party/opencv/kylin/loongarch64/lib/libopencv_core.a" /> <Add option="../../../third_party/opencv/kylin/loongarch64/lib/libopencv_core.a" />
<Add option="../../../third_party/opencv/kylin/loongarch64/lib/libzlib.a" /> <Add option="../../../third_party/opencv/kylin/loongarch64/lib/libzlib.a" />
<Add option="../../../third_party/freetype/kylin/loongarch64/lib/libfreetype.a" /> <Add option="../../../third_party/freetype/kylin/loongarch64/lib/libfreetype.a" />
<Add option="../../../third_party/ocr/tesseract-ocr/kylin/loongarch64/lib/libtesseract.a" />
<Add option="../../../third_party/leptonica/kylin/loongarch64/lib/libleptonica.a" />
<Add option="-L../HGBase/bin/kylin_loongarch64_Debug -lHGBase" /> <Add option="-L../HGBase/bin/kylin_loongarch64_Debug -lHGBase" />
<Add option="-L../HGImgFmt/bin/kylin_loongarch64_Debug -lHGImgFmt" /> <Add option="-L../HGImgFmt/bin/kylin_loongarch64_Debug -lHGImgFmt" />
<Add option="-ldl" /> <Add option="-ldl" />
@ -459,6 +489,8 @@
<Add option="../../../third_party/opencv/kylin/loongarch64/lib/libopencv_core.a" /> <Add option="../../../third_party/opencv/kylin/loongarch64/lib/libopencv_core.a" />
<Add option="../../../third_party/opencv/kylin/loongarch64/lib/libzlib.a" /> <Add option="../../../third_party/opencv/kylin/loongarch64/lib/libzlib.a" />
<Add option="../../../third_party/freetype/kylin/loongarch64/lib/libfreetype.a" /> <Add option="../../../third_party/freetype/kylin/loongarch64/lib/libfreetype.a" />
<Add option="../../../third_party/ocr/tesseract-ocr/kylin/loongarch64/lib/libtesseract.a" />
<Add option="../../../third_party/leptonica/kylin/loongarch64/lib/libleptonica.a" />
<Add option="-L../../../../release/kylin/loongarch64 -lHGBase -lHGImgFmt" /> <Add option="-L../../../../release/kylin/loongarch64 -lHGBase -lHGImgFmt" />
<Add option="-ldl" /> <Add option="-ldl" />
<Add option="-lpthread" /> <Add option="-lpthread" />
@ -489,6 +521,8 @@
<Unit filename="../../../modules/imgproc/HGOCRBase.hpp" /> <Unit filename="../../../modules/imgproc/HGOCRBase.hpp" />
<Unit filename="../../../modules/imgproc/HGOCRHanvon.cpp" /> <Unit filename="../../../modules/imgproc/HGOCRHanvon.cpp" />
<Unit filename="../../../modules/imgproc/HGOCRHanvon.hpp" /> <Unit filename="../../../modules/imgproc/HGOCRHanvon.hpp" />
<Unit filename="../../../modules/imgproc/HGOCRTesseract.cpp" />
<Unit filename="../../../modules/imgproc/HGOCRTesseract.hpp" />
<Unit filename="../../../modules/imgproc/HGOCRRetImpl.cpp" /> <Unit filename="../../../modules/imgproc/HGOCRRetImpl.cpp" />
<Unit filename="../../../modules/imgproc/HGOCRRetImpl.hpp" /> <Unit filename="../../../modules/imgproc/HGOCRRetImpl.hpp" />
<Unit filename="../../../modules/imgproc/ImageProcess/ImageApply.cpp" /> <Unit filename="../../../modules/imgproc/ImageProcess/ImageApply.cpp" />

View File

@ -1,9 +1,7 @@
#include "HGOCR.h" #include "HGOCR.h"
#include "HGOCRBase.hpp" #include "HGOCRBase.hpp"
#include "HGOCRHanvon.hpp" #include "HGOCRHanvon.hpp"
#if defined(HG_CMP_MSC)
#include "HGOCRTesseract.hpp" #include "HGOCRTesseract.hpp"
#endif
#include "HGOCRRetImpl.hpp" #include "HGOCRRetImpl.hpp"
HGResult HGAPI HGImgProc_CreateOCRMgr(HGUInt algo, HGOCRMgr* ocrMgr) HGResult HGAPI HGImgProc_CreateOCRMgr(HGUInt algo, HGOCRMgr* ocrMgr)
@ -15,7 +13,6 @@ HGResult HGAPI HGImgProc_CreateOCRMgr(HGUInt algo, HGOCRMgr* ocrMgr)
if (HGIMGPROC_OCRALGO_DEFAULT == algo) if (HGIMGPROC_OCRALGO_DEFAULT == algo)
{ {
#if defined(HG_CMP_MSC)
HGOCRBase* ocrMgrImpl = new HGOCRHanvon; HGOCRBase* ocrMgrImpl = new HGOCRHanvon;
HGResult ret = ocrMgrImpl->Init(); HGResult ret = ocrMgrImpl->Init();
if (HGBASE_ERR_OK != ret) if (HGBASE_ERR_OK != ret)
@ -29,15 +26,6 @@ HGResult HGAPI HGImgProc_CreateOCRMgr(HGUInt algo, HGOCRMgr* ocrMgr)
return ret; return ret;
} }
} }
#else
HGOCRBase* ocrMgrImpl = new HGOCRHanvon;
HGResult ret = ocrMgrImpl->Init();
if (HGBASE_ERR_OK != ret)
{
delete ocrMgrImpl;
return ret;
}
#endif
*ocrMgr = (HGOCRMgr)ocrMgrImpl; *ocrMgr = (HGOCRMgr)ocrMgrImpl;
return HGBASE_ERR_OK; return HGBASE_ERR_OK;
@ -57,7 +45,6 @@ HGResult HGAPI HGImgProc_CreateOCRMgr(HGUInt algo, HGOCRMgr* ocrMgr)
} }
else if (HGIMGPROC_OCRALGO_TESSERACT == algo) else if (HGIMGPROC_OCRALGO_TESSERACT == algo)
{ {
#if defined(HG_CMP_MSC)
HGOCRBase* ocrMgrImpl = new HGOCRTesseract; HGOCRBase* ocrMgrImpl = new HGOCRTesseract;
HGResult ret = ocrMgrImpl->Init(); HGResult ret = ocrMgrImpl->Init();
if (HGBASE_ERR_OK != ret) if (HGBASE_ERR_OK != ret)
@ -68,10 +55,6 @@ HGResult HGAPI HGImgProc_CreateOCRMgr(HGUInt algo, HGOCRMgr* ocrMgr)
*ocrMgr = (HGOCRMgr)ocrMgrImpl; *ocrMgr = (HGOCRMgr)ocrMgrImpl;
return HGBASE_ERR_OK; return HGBASE_ERR_OK;
#else
return HGBASE_ERR_INVALIDARG;
#endif
} }
return HGBASE_ERR_INVALIDARG; return HGBASE_ERR_INVALIDARG;