c# 与halcon在混合编程时,经常会遇到HObject 和HImage,HRegion 、HXLDCont 之间的变换问题,所以做个总结,便于以后使用:
一、HObject 转 HImage
HTuple pointer, type, width, height;
HObject ho_Image, ho_Domain;
HObject ho_RegionBorder, ho_Contours;
HImage image = new HImage();
HOperatorSet.ReadImage(out ho_Image, “printer_chip/printer_chip_01”);
//灰度图转换
HOperatorSet.GetImagePointer1(ho_Image, out pointer, out type, out width, out height);
image.GenImage1(type, width, height, pointer);
//彩色图转换
HOperatorSet.GetImagePointer3(ho_Image, out pointerRed, out pointerGreen, out pointerBlue, out type, out width, out height);
image.GenImage3(type, width, height, pointerRed, pointerGreen, pointerBlue);
二、HObject 转 HRegion
HOperatorSet.GetDomain(ho_Image, out ho_Domain);
HOperatorSet.GetRegionPolygon(ho_Domain, 5, out hv_Rows, out hv_Columns);
HRegion Region= new HRegion();
Region.GenR