猿问

将 XYZ 点云转换为灰度图像

我正在尝试使用 python 将点云(X、Y、Z)转换为灰度图像。我了解到灰度图像可以由 Numpy 数组生成。但我现在拥有的是一组包含 X、Y 和高度的点。我想根据 X、Y 和灰度值(即高度)生成灰度图像。

有人可以给我一个想法吗?先谢谢了。


小唯快跑啊
浏览 532回答 2
2回答

萧十郎

让我们假设 X、Y 已排列好,因此它们将形成一个网格(这是构建矩形图像所必需的)。从那里这很容易:import numpy as npimport matplotlib.pyplot as plt# generate some dataax = np.arange(-9, 10)X, Y = np.meshgrid(ax, ax)Z = X ** 2 + Y ** 2# normalize the data and convert to uint8 (grayscale conventions)zNorm = (Z - Z.min()) / (Z.max() - Z.min()) * 255zNormUint8 = zNorm.astype(np.uint8)# plot resultplt.figure()plt.imshow(zNormUint8)
随时随地看视频慕课网APP

相关分类

Python
我要回答