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

LMI图像彩色渲染C#库LmiColorMap x86/x64下载

[复制链接]
Criss 发表于 2019-1-4 12:24:15 | 显示全部楼层 |阅读模式
如题,提供深度图像转彩色图像功能,使用方法如下:
1.首先引用LmiColorMap.dll然后添加命名空间:
  1. using LmiColorMap;
复制代码


2.然后在回调函数中使用下面的代码:
  1. public void GenHeightImageFromPtr(IntPtr ptData,long nWidth, long nHeight, ImageHeightInfo imgInfo)
  2. {
  3.     //获取灰度彩色值
  4.    ushort[] ZValues = new ushort[buff.Length];
  5.    for (int k = 0; k < buff.Length; k++)
  6.        ZValues[k] = (ushort)(buff[k] - short.MinValue);
  7.   }
  8.   ColorMaps MapColor = new ColorMaps();
  9.   ushort minValue = 0, maxValue = 0;
  10.   MapColor.FindMinMaxForColor(ZValues, (UInt32)buff.Length, 0, ref minValue, ref maxValue);
  11.   Color[] colors = new Color[buff.Length];
  12.   MapColor.ToColors(ZValues, minValue, maxValue, 0, ref colors, (UInt32)buff.Length);

  13.   int Width = (int)nWidth;
  14.   int Height = (int)nHeight;
  15.   Bitmap Bimage = new Bitmap(Width, Height);
  16.   BitmapData bmdata = Bimage.LockBits(new Rectangle(0, 0, Width, Height), ImageLockMode.ReadWrite, PixelFormat.Format24bppRgb);
  17.   IntPtr intptr = bmdata.Scan0;
  18.   byte[] Pixlemaps = new byte[bmdata.Width * bmdata.Height*3];
  19.    //int offset = bmdata.Width*3 - bmdata.Width * 3;

  20.   unsafe
  21.   {
  22.       byte* pp = (byte*)(void*)bmdata.Scan0;
  23.       for (int k = 0; k < bmdata.Height; k++)
  24.       {
  25.                for (int m = 0; m < bmdata.Width; m++)
  26.                {
  27.                      pp[0] = (byte)(colors[k * bmdata.Width + m].R);
  28.                      pp[1] = (byte)(colors[k * bmdata.Width + m].G);
  29.                      pp[2] = (byte)(colors[k * bmdata.Width + m].B);
  30.                      pp += 3;
  31.                  }
  32.                 //pp += bmdata.Width*3 - bmdata.Width * 3;
  33.          }
  34.    }

  35.     m_objImage.Dispose();
  36.     HOperatorSet.GenImageInterleaved(out m_objImage, intptr, "rgb", Width, Height, 0, "byte", Width, Height, 0, 0, -1, 0);
  37.     HOperatorSet.ZoomImageFactor(m_objImage, out m_objImage, 1.0, imgHeightInfo.m_nRes_Y / imgHeightInfo.m_nRes_X, "constant");
  38.     Bimage.UnlockBits(bmdata);
  39. }
复制代码


这段代码是利用Halcon生成彩色图像的,然后赋值给m_objImage对象,其中unsafe这段代码需要开启C#的不安全代码运行(见下图);
QQ截图20190104121930.png
由于上面已经产生了bmp图像了,也可以直接保存bmp图像!
购买主题 已有 1 人购买  本主题需向作者支付 10 视觉币 才能浏览
奖励计划已经开启,本站鼓励作者发布最擅长的技术内容和资源,流量变现就在现在,[点我]加入吧~~~Go
wjie 发表于 2023-8-17 21:43:32 | 显示全部楼层
前来学习
奖励计划已经开启,本站鼓励作者发布最擅长的技术内容和资源,流量变现就在现在,[点我]加入吧~~~Go
oukuangyuan 发表于 2023-8-18 08:56:52 | 显示全部楼层
好东西嘿嘿嘿,刚好在学习LMI的图像处理
奖励计划已经开启,本站鼓励作者发布最擅长的技术内容和资源,流量变现就在现在,[点我]加入吧~~~Go
Lucking 发表于 2023-8-26 11:25:47 | 显示全部楼层
学习学习。。。。。。
奖励计划已经开启,本站鼓励作者发布最擅长的技术内容和资源,流量变现就在现在,[点我]加入吧~~~Go
熙小来 发表于 2023-8-26 13:12:35 | 显示全部楼层
学习学习
奖励计划已经开启,本站鼓励作者发布最擅长的技术内容和资源,流量变现就在现在,[点我]加入吧~~~Go
Baro 发表于 2023-12-6 18:44:41 | 显示全部楼层
学习学习 这个渲染是16位图吧。
奖励计划已经开启,本站鼓励作者发布最擅长的技术内容和资源,流量变现就在现在,[点我]加入吧~~~Go
nousstar 发表于 2024-1-17 08:27:02 | 显示全部楼层
学习学习。。。。。。
奖励计划已经开启,本站鼓励作者发布最擅长的技术内容和资源,流量变现就在现在,[点我]加入吧~~~Go
alaliu 发表于 2024-1-24 10:08:33 | 显示全部楼层
谢谢分享!
奖励计划已经开启,本站鼓励作者发布最擅长的技术内容和资源,流量变现就在现在,[点我]加入吧~~~Go
Liuxiaoyu 发表于 2024-5-28 20:53:14 | 显示全部楼层
学习LMI相机的相关知识
奖励计划已经开启,本站鼓励作者发布最擅长的技术内容和资源,流量变现就在现在,[点我]加入吧~~~Go
yaofeng2217 发表于 2024-8-17 16:57:40 | 显示全部楼层
学习学习,看看效果
奖励计划已经开启,本站鼓励作者发布最擅长的技术内容和资源,流量变现就在现在,[点我]加入吧~~~Go
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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