要将 QImage 转换为 Halcon 的 HImage,可以使用以下代码:

#include <QImage>
#include <HalconCpp.h>

HalconCpp::HImage QImageToHImage(const QImage& qimage) {
    // 获取 QImage 的宽度和高度
    int width = qimage.width();
    int height = qimage.height();

    // 创建 Halcon 的 HImage 对象
    HalconCpp::HImage himage;
    // 设置图像的宽度和高度
    himage.GenImage1('byte', width, height);

    // 获取图像的像素数据
    uchar* bits = qimage.bits();
    for (int y = 0; y < height; ++y) {
        for (int x = 0; x < width; ++x) {
            // 获取当前像素的 RGB 值
            QRgb rgb = qimage.pixel(x, y);
            int red = qRed(rgb);
            int green = qGreen(rgb);
            int blue = qBlue(rgb);
            // 将 RGB 值设置到 Halcon 的 HImage 对象中
            himage.SetGrayval(x, y, (red + green + blue) / 3);
        }
    }

    return himage;
}

使用此函数将 QImage 转换为 Halcon 的 HImage 对象,然后可以在 Halcon 中使用 HImage 对象进行图像处理。

QImage 转 Halcon HImage 代码示例

原文地址: https://www.cveoy.top/t/topic/quxy 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录