Halcon::threshold 利用HTuple一次二值化两组区域比两次Halcon::threshold略快,不到5%。
测试环境:VC2013 halcon10

CWatch watch;
    for (int i = 0; i < 100; i++)
    {
        Halcon::threshold(imgCoatCheck, &m_regions.m_regionCoatLightNG, dMedialCoatCheckGray + iNGDiffGray, 255);
        Halcon::threshold(imgCoatCheck, &m_regions.m_regionCoatDarkNG, 0, dMedialCoatCheckGray - iNGDiffGray);
    }
    watch.Watch();
    for (int i = 0; i < 100; i++)
    {
        Hobject region;
        Halcon::HTuple tMin, tMax;
        tMin.Append(0.0).Append(dMedialCoatCheckGray + iNGDiffGray);
        tMax.Append(dMedialCoatCheckGray - iNGDiffGray).Append(255.0);
        Halcon::threshold(imgCoatCheck, &region, tMin, tMax);
    }
    watch.Watch();

posted on 2022-09-08 10:10  闻缺陷则喜何志丹  阅读(5)  评论(0编辑  收藏  举报  来源