怎么把图像输入转化为三维点云数据

 时间:2024-10-26 20:09:17

1、先给出图像,并载入到Mathematica里面。

怎么把图像输入转化为三维点云数据

2、把图片分离通道:{r, g, b} = ColorSeparate[Rasterize@img]

怎么把图像输入转化为三维点云数据

3、单独把红色通道的图像,转化为三维数据,格式是{横坐标、纵坐标、像素值}:rr = ImageData[r];rrr = Flatten[Table[{i, j, rr[[i, j]]}, {i, 636}, {j, 636}], 1];

怎么把图像输入转化为三维点云数据

4、在三维空间中,绘制rrr中的所有直角坐标点:ListPointPlot3D[rrr, PlotStyle -> Red]

怎么把图像输入转化为三维点云数据

5、降低点的密度:rrr = Flatten[ Table[{i, j, rr[[i, j]]}, {i, 1, 636, 5}, {j, 1, 636, 5}], 1];图像如下。这样不仅图像看着清楚一点,而且出图速度更快。

怎么把图像输入转化为三维点云数据

6、把三个通道的图像,都转化为点云图像:ListPointPlot3D[{rrr, ggg, bbb}, PlotStyle -> {Red, Green, Blue}]

怎么把图像输入转化为三维点云数据
  • 如何在 Edge 中更改默认下载文件夹的位置
  • Obsidian如何将正文内容折叠到标题行
  • 访问网页提示“你的连接不是专用连接”怎么办?
  • Adobe Acrobat DC如何将PDF文件导出为word文档
  • 审判天使带强攻好还是致命好啊?
  • 热门搜索
    回收站清空了怎么恢复 试管婴儿是怎么回事 床垫怎么选 冻伤怎么办 皮肤黑怎么变白 海棠花怎么养 格力空调怎么样 陕西师范大学怎么样 天梭手表怎么样 供血不足怎么调理