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

 时间:2026-02-15 17:47:43

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文档
  • 审判天使带强攻好还是致命好啊?
  • 热门搜索
    泰安旅游景点 旅游信息 网上旅游 辽宁省旅游 防城港旅游攻略 广州旅游景点大全 北京旅游局 泾县旅游 去云南旅游要多少钱 邵阳旅游