MPSizector传感器输出数据M3dm转换为Halcon可识别的格式

m3dm数据格式转为halcon可识别数据格式:

halcon的算子丰富多样功能齐全且使用方便。其可识别的数据格式比较多,如 'om3', 'dxf', 'off', 'ply', 'obj', 'stl'

附上m3dm格式数据转为'om3'数据格式代码(仅供参考)

1.关于引用

 

2.   MP3DFrameManaged Buffer3DLast;

     Buffer3DLast为3D相机中的 MP3DFrameManaged的数据结构

3.代码   

private bool  M3dmToOm3(string FileName)                               //m3dm数据格式转为halcon可识别的om3数据格式

        {

            float[] DataX = new float[Buffer3DLast.SensorWidth * Buffer3DLast.SensorHeight];

            float[] DataY = new float[DataX.Length];

            float[] DataZ = new float[DataX.Length];

            for (int i = 0; i < Buffer3DLast.SensorWidth * Buffer3DLast.SensorHeight; i++)

            {

                if (Buffer3DLast.Data[i].Mask == 0)

                {

                    DataX[i] = Buffer3DLast.Data[i].X;

                    DataY[i] = Buffer3DLast.Data[i].Y;

                    DataZ[i] = Buffer3DLast.Data[i].Z;

                }

                else

                {

                    DataX[i] = float.NaN;

                    DataY[i] = float.NaN;

                    DataZ[i] = float.NaN;

                }

            }

            HalconDotNet.HOperatorSet.GenObjectModel3dFromPoints(new HTuple(DataX), new HTuple(DataY), new HTuple(DataZ),

                                                                                                                                                                    out HTuple objcectModel3d);

            HalconDotNet.HOperatorSet.WriteObjectModel3d(objcectModel3d, "om3", FileName, new HTuple(), new HTuple());

            return true;

        }

发布了8 篇原创文章 · 获赞 0 · 访问量 213

猜你喜欢

转载自blog.csdn.net/Luckboy_shy/article/details/104709998