设置首页收藏本站
开启左侧

24.05版本的halcon里面的算子不能将halcon类转换为opencv类

[复制链接]
直接把23 发表于 2024-12-6 10:06:28 | 显示全部楼层 |阅读模式
  1. //opencv转halcon
  2. HalconCpp::HObject rectmodbusthread::MatToHImage(cv::Mat& imgMat){   
  3.         HalconCpp::HObject Hobj = HalconCpp::HObject();        
  4.         int height = imgMat.rows;        
  5.         int width = imgMat.cols;        
  6.         int i;        
  7.         //  CV_8UC3        
  8.         if (imgMat.type() == CV_8UC3)        
  9.         {
  10.                 std::vector<cv::Mat> imgchannel;
  11.                 split(imgMat, imgchannel);
  12.                 cv::Mat imgB = imgchannel[0;
  13.                 cv::Mat imgG = imgchannel[1;
  14.                 cv::Mat imgR = imgchannel[2;
  15.                 uchar* dataR = new uchar[height * width];
  16.                 uchar* dataG = new uchar[height * width];
  17.                 uchar* dataB = new uchar[height * width];
  18.                 for (i = 0; i<height; i++)
  19.                 {
  20.                         memcpy(dataR + width*i, imgR.data + imgR.step*i, width);
  21.                         memcpy(dataG + width*i, imgG.data + imgG.step*i, width);
  22.                         memcpy(dataB + width*i, imgB.data + imgB.step*i, width);
  23.                 }
  24.                 GenImage3(&Hobj, "byte", width, height, (Hlong)dataR, (Hlong)dataG, (Hlong)dataB);
  25.                 delete[]dataR;
  26.                 delete[]dataG;
  27.                 delete[]dataB;
  28.         }
  29.         //  CV_8UCU1
  30.         else if (imgMat.type() == CV_8UC1)
  31.         {
  32.                 uchar* data = new uchar[height*width];
  33.                 for (i = 0; i<height; i++)
  34.                    memcpy(data + width*i, imgMat.data + imgMat.step*i, width);
  35.                 HalconCpp::GenImage1(&Hobj, "byte", width, height, (Hlong)data);
  36.                 delete[] data;
  37.         }        
  38.         return Hobj;
  39. }
复制代码
我用以前的版本都可以就24.05版本不行
奖励计划已经开启,本站鼓励作者发布最擅长的技术内容和资源,流量变现就在现在,[点我]加入吧~~~Go
绝地武士 发表于 2024-12-6 10:38:24 | 显示全部楼层
提示什么错误呢?你这是opencv转halcon图像呀?
奖励计划已经开启,本站鼓励作者发布最擅长的技术内容和资源,流量变现就在现在,[点我]加入吧~~~Go
 楼主| 直接把23 发表于 2024-12-6 15:10:45 | 显示全部楼层
说错了是opencv转halcon运行的时候没有提示任何错误直接就卡死然后程序自动关闭了
奖励计划已经开启,本站鼓励作者发布最擅长的技术内容和资源,流量变现就在现在,[点我]加入吧~~~Go
 楼主| 直接把23 发表于 2024-12-6 15:12:01 | 显示全部楼层
绝地武士 发表于 2024-12-6 10:38
提示什么错误呢?你这是opencv转halcon图像呀?

我以前用23版本的halcon都是可以的,就换了24.05版本之后,就不行了,一运行就卡死程序自动退出错误提示也没有
奖励计划已经开启,本站鼓励作者发布最擅长的技术内容和资源,流量变现就在现在,[点我]加入吧~~~Go
cfr2k 发表于 2024-12-7 14:20:43 | 显示全部楼层
NB,为什么要用24.05?
奖励计划已经开启,本站鼓励作者发布最擅长的技术内容和资源,流量变现就在现在,[点我]加入吧~~~Go
 楼主| 直接把23 发表于 2024-12-9 08:42:53 | 显示全部楼层
cfr2k 发表于 2024-12-7 14:20
NB,为什么要用24.05?

因为23版本不给试用许可证,只有24版本才给
奖励计划已经开启,本站鼓励作者发布最擅长的技术内容和资源,流量变现就在现在,[点我]加入吧~~~Go
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表