【搭建OpenCV+Tesseract+vcpkg】
发布时间:2026/10/16 7:29:18 锦皓数字建站

文章目录1.vcpkg学习使用2.基于vcpkg调用Tesseract第三方库1.Vcpkg配置国内镜像方法vcpkgremove--outdated(卸载所有过期包)vcpkgintegrate project 集成到vs2022中vcpkgintegrateinstall安装vcpkgremove boost:x64-windows--recurse卸载包vcpkgintegrate remove 移除vcpkgsearch[pat]搜索可用于生成的包vcpkginstall… 安装软件包vcpkgremove … 卸载软件包vcpkgremove--outdated卸载所有过期的软件包vcpkglist 列出已安装的软件包vcpkgupdate 显示要更新的包列表vcpkgupgrade 重建所有过时的软件包vcpkgx-history(实验显示了包的控制版本的历史记录1.vcpkg学习使用Step1安装git下载地址Step2下载安装vcpkg等待一段直到下载完成。gitclone https://github.com/microsoft/vcpkg配置环境变量Step3编译项目。即下图右侧的黑框消失bootstrap-vcpkg.shstep4集成到系统环境vcpkgintegrate projectInstall-Package vcpkg.D.Code.vcpkg.1.0.0.nupkg -Source D:\code\vcpkg//导航相关模块vcpkginstallrecastvcpkginstallsdl22.基于vcpkg调用Tesseract第三方库step1下载第三方库注遇到下载半天的可以自己用迅雷去下载或者科学上网或者多多try again在放到相应的文件夹如D:\Code\vcpkg\downloadsvcpkginstalltesseract:x64-windowsvcpkginstalltesseract:x86-windowsAPI官网案例演示step2安装opencvvcpkginstallopencv:x86-windowsvcpkginstallopencv:x64-windows官网API学习手册step3配置Tesseract中文训练字符下载地址注意项目配置应该设置为如下文件下载下来并放到项目输出目录下并新建文件夹命名为tessdata即可#include stdio.h#include iostream#include opencv2/highgui/highgui_c.h#includeopencv2/opencv.hpp#include leptonica/allheaders.h#include tesseract/baseapi.h#include tesseract/publictypes.h#include string#include fstreamusing namespace cv;using namespace tesseract;using namespace std;intmain(){string outText;string imPathD:/1104dc4c2fef4d3fbc7ea939d9b35ced.jpg;// Create Tesseract object tesseract::TessBaseAPI *ocrnew tesseract::TessBaseAPI();/* Initialize OCR engine to use English(eng)and The LSTM OCR engine. There are four OCR Engine Mode(oem)available OEM_TESSERACT_ONLY Legacy engine only. OEM_LSTM_ONLY Neural nets LSTM engine only. OEM_TESSERACT_LSTM_COMBINED Legacy LSTM engines. OEM_DEFAULT Default, based on what is available. */ //中英文识别 ocr-Init(NULL,chi_sim, tesseract::OEM_LSTM_ONLY);//英文识别 //ocr-Init(./tessdata,eng, tesseract::OEM_LSTM_ONLY);// Set Page segmentation mode to PSM_AUTO(3)// Other important psm modes will be discussedina future post. ocr-SetPageSegMode(tesseract::PSM_AUTO);// Open input image using OpenCV Mat imcv::imread(imPath, IMREAD_COLOR);imshow(Image Source, im);// Set image data ocr-SetImage(im.data, im.cols, im.rows,3, im.step);// Run Tesseract OCR on image outTextstring(ocr-GetUTF8Text());std::ofstream fout(1.txt, std::ios::out);std::cout识别结果: string(outText)std::endl;foutoutText;fout.close();// Destroy used object and release memory ocr-End();waitKey(0);}解决方法方式一网上找vs2017控制台出现中文乱码方式二网上找个utf-8转ansi码的代码自己转一下方式三解决方案亲测可用1.Vcpkg配置国内镜像方法镜像地址 http://106.15.181.5环境变量名X_VCPKG_ASSET_SOURCES环境变量值x-azurl,http://106.15.181.5/如何将个人代码库导入到vcpkg官网环境搭建地址官网vcpkg配置方式C:\Windows\System32\cmd.exe /kD:\Program Files\Microsoft Visual Studio\2022\Professional\Common7\Tools\VsDevCmd.bat-archamd64-host_archamd64setChocolateyInstallc:\opt\chocolateyc:\opt\ros\melodic\x64\setup.bat
锦
锦皓数字建站
深耕本土企业品牌数字化升级,专注原创端正雅致商务官网,从视觉设计到稳定运维全程保驾护航。