halcon识别一维码(QT调用halcon库实现)

1、简介

halcon是一款和图像处理库,里面的算法很多,效率很高。由于项目中要识别一维码,然后选择了halcon库,因为halcon算法丰富,开发起来方便省时。

2、halcon识别一维码用到的类。

(1)、HImage类:halcon的图像数据存储类。

(2)、HBarCode类:halcon识别一维码的算法类。

(3)、HTuple类:halcon存储基本数据的类。类似C++的int。

(4)、HRegion类:halcon用来表示区域的类,类似QT的Item类。

3、源码实现halcon识别一维码。

void MainWindow::findBarcode(const HImage &hImage, int iType, QVector &vCode)
{
    //1. 数据合法性判断
    if (!hImage.IsInitialized()) return;

    //2. 把用户设定的所有解码类型转成 HTuple
    HTuple hvType;
    if (iType == 0) hvType.Append("auto");
    else hvType.Append(ui->cbBarCodeType->currentText().toStdString().c_str());

    //4. 创建一维码解码模型 和 解码参数
    HTuple v1, v2;
    HBarCode hBar

你可能感兴趣的:(QT,halcon)