VS2013配置64位ZBar、OpenCV
来源:互联网 发布:自学云计算 编辑:程序博客网 时间:2024/05/17 01:47
本人想利用OpenCV与ZBar实现二维码扫描功能。PC上已经配置好了OpenCV3.1.0,并且VS2013配置为64位的开发环境。按照教程:二维码解码器Zbar+VS2012开发环境配置,配置了ZBar0.10,后利用如下代码测试:
#include <iostream> #include<opencv2/opencv.hpp>#include <opencv2/core/core.hpp>#include <zbar.h>#include <time.h>using namespace std;using namespace cv;using namespace zbar;int main(){ clock_t start = clock(); // 记录程序开始时间,用于计算扫描二维码耗时 zbar::ImageScanner scanner; scanner.set_config(zbar::ZBAR_NONE, zbar::ZBAR_CFG_ENABLE, 1); Mat imgOrigin = imread("Picture\\QR Code.jpg"); // 二维码图片相对路径 Mat imgGray; cvtColor(imgOrigin , imgGray, CV_BGR2GRAY); // 灰度化 int width = imgGray.cols; int height = imgGray.rows; Image image(width, height, "Y800", imgGray.data, width * height); // 图片格式转换 scanner.scan(image); Image::SymbolIterator symbol = image.symbol_begin(); if (image.symbol_begin() == image.symbol_end()) { cout << "查询条码失败,请检查图片!" << endl; } for (; symbol != image.symbol_end(); ++symbol) { cout << "类型:" << endl << symbol->get_type_name() << endl << endl; cout << "条码:" << endl << symbol->get_data() << endl << endl; } image.set_data(nullptr, 0); clock_t finish = clock(); // 记录程序结束时间 double time_length = (double) (finish - start) / CLOCKS_PER_SEC; //根据两个时刻的差,计算出扫描的时间 cout << "扫描耗时 " << time_length << " seconds." << endl; return 0;}
但是运行程序时报错:
出现error LNK2019 : unresolved external symbol 这个类问题的一个可能原因就是库包lib没有包含到工程中。经过研究发现,我当前的VS工程配置为x64环境,而按照前文教程从官网上下载的ZBar是32位的。经过一番尝试,发现如下解决方法:
- zbar Windows32和64的库在此下载包含32位和64位的库(也可以到GitHub上下载免费的版本);
- 解压下载完成的库,并将 ZBarWin64-master\lib 文件夹下 libzbar64-0.lib 文件复制到ZBar安装路径下的 lib 文件夹;
- 将 ZBarWin64-master\lib 文件夹下 libzbar64-0.dll 文件复制到ZBar安装路径下的 bin 文件夹;
- 将ZBarWin64-master\zbar\libiconv\dll_x64文件夹下 libiconv.dll 复制到ZBar安装路径下的bin 文件夹;
- 在VS项目属性表中,打开 通用属性->链接器->输入 再添加一条:libzbar64-0.lib;
(注:以上步骤均在文章开头介绍的教程配置完成的基础上做出的进一步补充);
按照上述5步进行进一步配置后,VS2013即可在64位环境下正确运行示例程序。
阅读全文
1 0
- VS2013配置64位ZBar、OpenCV
- 64 位系统 vs2013 配置 OpenCV-3.1.0
- Win7 64位+VS2013 OpenCV 2.4.9安装配置
- Win7 64位+VS2013 OpenCV 3.1.0安装配置
- win10下配置opencv、zbar
- VS2013 与opencv 2.4.10的配置问题,本人电脑64位
- Win7 64位系统上OpenCV的安装与在VS2013上的配置&问题解决
- OpenCV+ZBar实现条码识别(Windows32位和64位)
- 【循序渐进地学好OpenCV&1】Win7 64位系统上OpenCV的安装与在VS2013上的配置
- 64位系统vs2013配置opencv3.0
- 64位系统vs2013配置opencv3.0
- win7 64位+VS2013+opencv3.0配置
- opencv249+vs2013+64位win7配置使用
- VS2013新建项目配置64位
- Win7 64位+VS2013+opencv3.0配置
- VS2013 +openCV(3.0)+Matlab(2014-64)配置:
- VS2013+OpenCV环境配置
- vs2013 opencv配置
- HDU 6103 Kirinriki(尺取)
- 欢迎使用CSDN-markdown编辑器
- 读书笔记:LINUX内核完全剖析:基于0.12内核
- 如果估算工数
- 进程与线程的一个简单解释
- VS2013配置64位ZBar、OpenCV
- 1005. 继续(3n+1)猜想 (25)--PAT乙级
- 限定符const
- 线程--同步与死锁
- nodejs顶层路由设计
- SpringBoot 使用Mybatis入门
- 关于Gensim的初次见面 和 Doc2vec 的模型训练
- $ionicActionSheet安卓样式问题
- LightOJ-1013-Love Calculator [LCS][DP]