少高潮爽了在观看奂费_奶水无码专区_欧美亚洲三级日韩_91精品国产综合香蕉_秋霞伦理电影在线_GOGO亚洲肉体艺术欣赏图片_一本一道a√无码中文字幕_免费看一级毛片无码区_内射视频网站在线观看_国产激情视频精品中文

圖像處理
新聞詳情

Datamatrix 二維碼識別-Libdmtx0.7.4庫使用

發(fā)布時間:2021-08-05 11:24:03 瀏覽次數(shù):7069

標準二維碼的識別

Libdmtx 是一個專門用于識別 datamatrix 二維碼的庫。搭配Opencv可以較為準確識別工業(yè)二維碼 ECC200(關于二維碼的編碼種類以及 ECC200)。接下來是 libdmtx 在VS2015 中的配置,以及簡單的測試用例。

 

step1 運行環(huán)境

1、Windows 10 64位

2、Visual Studio 2015Professional

3、OpenCV 3.4.3

4、libdmtx 0.7.4

 

step2 編譯生成庫文件

1、在該鏈接https://sourceforge.net/p/libdmtx/libdmtx/ci/v0.7.4/tree/將0.7.4和0.7.2兩個版本的庫下載至本機,并解壓。

2、將0.7.2文件夾中的project和wrapper文件夾拷到0.7.4的文件夾中。

3、打開libdmtx-libdmtx-0.7.4\project\visualc9路徑下的libdmtx.sln解決方案文件,選中倒數(shù)第二個選項。

 

4、選中解決方案libdmtx,右鍵重新加載項目,確定單向升級。

 

5、默認生成的是32位的lib和dll,如果要生成64位的,需要配置管理器。

 

 

 

6、配置好管理器后,右鍵解決方案,生成解決方案,不報錯即可生成對應的lib和dll文件。

 

 

step3 配置庫文件

1、將libdmtx-libdmtx-0.7.4\project\visualc9\x64\Debug下的libdmtx.lib和libdmtx.dll文件,以及0.7.4文件夾下的dmtx.h文件一同拷出備用。

 

2、在VS2015中新建空項目,在屬性管理器->鏈接器->輸入->附加依賴項中將libdmtx.lib添加進去。

 

3、復制以下代碼,選擇一張DM碼的圖片放入空項目路徑中,運行解碼。

 

#include <iostream>

#include <opencv2\opencv.hpp>

#include "dmtx.h"

 

int main()

{

         DmtxMessage*msg;

         DmtxRegion*reg;

         cv::Matsrc = cv::imread("DM_code.jpg");

         if(!src.data)

         {

                   std::cout<< "cannot load image!" << std::endl;

         }

         DmtxImage*img;

         img= dmtxImageCreate(src.data, src.cols, src.rows, DmtxPack24bppRGB);

         DmtxDecode*dec = dmtxDecodeCreate(img, 1);

         reg= dmtxRegionFindNext(dec, NULL);

         if(reg != NULL)  //如果檢測到存在DM碼區(qū)域

         {

                   msg= dmtxDecodeMatrixRegion(dec, reg, DmtxUndefined);  //解析DM碼

                   if(msg != NULL)  //如果DM碼解析成功

                   {

                            std::cout<< "DataMatrix Decode Result: " << msg->output<< std::endl;

                            dmtxMessageDestroy(&msg);

                   }

                   dmtxRegionDestroy(&reg);

         }

         dmtxDecodeDestroy(&dec);

         dmtxImageDestroy(&img);

         cv::imshow("Test",image);

         cv::waitKey();

         return0;

}

step4 測試

實際測試中,選擇使用攝像頭捕獲用代碼生成的DM碼,解碼結果為CSDN博客網(wǎng)址。

 

有關條碼定位:

代碼中條碼區(qū)域reg指針對象可以獲取條碼的位置信息,但是測試發(fā)現(xiàn)定位效果一般。

(測試圖來自網(wǎng)絡)



在線客服 雙翌客服
客服電話
  • 0755-23712116
  • 13822267203