chineseocr_lite_ncnn_project编译流程

项目代码

chineseocr_lite
ncnn
opencv 3.4.1
cmake 3.17.3
由于工程需要,需要生成32位的可执行文件

opencv

编译opencv 3.4.1 x86版本

下载源码,这里下载的是window版本,本质只是一个压缩包,和解压一摸一样。
解压,build_x86文件夹是自己新建的。
在这里插入图片描述
打开cmake gui界面,配置source code为刚刚解压的根目录下的sources文件夹,build目录为自己新建的build_x86目录。点击configure,选择相应的generator,我这边使用的是vs2017,下面选择win32,第一次有些选项会是红色的,按照自己的需求选择编译的选项之后再点击一次configure后,编译选项会恢复正常。之后再点击generate会在build_x86文件夹下生成一个可用有一个BUILD_opencv_world的选项比较重要,它可以将opencv的组件合并在一起,导入的时候就不用导入很多的lib文件了。
在这里插入图片描述
在这里插入图片描述
使用vs2017打开工程,
在这里插入图片描述
选择debug模式win32生成一次,release模式生成一次,INSTALL右键仅生成,即可安装
在这里插入图片描述
在这里插入图片描述
编译好的lib文件和可执行文件在如下所示路径。
在这里插入图片描述

测试opencv库

把D:\opencv\build_x86\install\x86\vc15\bin加入环境变量,要安装自己编译生成的bin目录添加。

新建一个空项目
在这里插入图片描述
添加源文件
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
包含路径为:

  • D:\opencv\build_x86\install\include
  • D:\opencv\build_x86\install\include\opencv
  • D:\opencv\build_x86\install\include\opencv2
    库目录为:上边编译出来的lib目录的路径,D:\opencv\build_x86\install\x86\vc15\lib
    在这里插入图片描述
    附加依赖项选择opencv_world341d.lib和opencv_world341.lib,其中带d的表示debug的lib库,不带d的表示release模式使用的库文件
    将bin目录下面的opencv_world341.dll和opencv_world341d.dll文件复制到C:\Windows\SysWOW64这个文件夹里面即可,将bin目录里面的opencv_ffmpeg341_64.dll复制到C:\Windows\System32这个文件夹里面
    若是生成解决方案还是不能成功,可以参考
  • https://blog.csdn.net/weixin_41991128/article/details/83656543
  • https://blog.csdn.net/qq_41175905/article/details/80560429
    生成解决方案成功会在release或者debug文件夹下生成可以运行的exe,打开效果正常即说明opencv库已经可以正常使用。
    在这里插入图片描述

ncnn

参考ncnn项目的Build for Windows x64 using Visual Studio Community 2017

  • vs2017
    要编译32位的就打开x86 Native Tools Command Prompt for VS 2017, x64就打开x64 Native Tools Command Prompt for VS 2017

    install it
    Start → Programs → Visual Studio 2017 → Visual Studio Tools → x86 Native Tools Command Prompt for VS 2017
    
  • build protobuf library

    download protobuf-3.4.0 from https://github.com/google/protobuf/archive/v3.4.0.zip
    > cd <protobuf-root-dir>
    > mkdir build-vs2017
    > cd build-vs2017
    > cmake -G"NMake Makefiles" -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=%cd%/install -Dprotobuf_BUILD_TESTS=OFF -Dprotobuf_MSVC_STATIC_RUNTIME=OFF ../cmake
    > nmake
    > nmake install
    
  • build ncnn library (replace with your path)

    > cd <ncnn-root-dir>
    > mkdir -p build-vs2017
    > cd build-vs2017
    
    # cmake option NCNN_VULKAN for enabling vulkan
    > cmake -G"NMake Makefiles" -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=%cd%/install -DProtobuf_INCLUDE_DIR=<protobuf-root-dir>/build-vs2017/install/include -DProtobuf_LIBRARIES=<protobuf-root-dir>/build-vs2017/install/lib/libprotobuf.lib -DProtobuf_PROTOC_EXECUTABLE=<protobuf-root-dir>/build-vs2017/install/bin/protoc.exe -DNCNN_VULKAN=ON ..
    
    > nmake
    > nmake install
    
    pick build-vs2017/install folder for further usage
    

完成之后会在D:\ncnn\build-vs2017-x86\install\lib下生成32位的ncnn.lib文件。
在这里插入图片描述

chineseocr_lite_ncnn_project

把编译生成的ncnn.lib文件放到D:\chineseocr_lite\ncnn_project\ocr\ncnn\lib目录下
在这里插入图片描述
新建build文件夹,更改原本的CMakeLists.txt文件,不加的话我这边会找不到
在这里插入图片描述
在这里插入图片描述
使用cmake,sources code目录选择ncnn_project\ocr,build目录选择ncnn_project\ocr\build目录,生成vs工程,使用vs打开之后,设置同测试opencv时的设置,进行编译。

由于比较小白,中间跳了很多坑,有什么问题可以评论区讨论,有可能我就碰到过。。。

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值