【Python】Numpyでsinc関数の点群データを生成
PythonのNumpyで平面の点群データを生成します。
今回は、1辺の長さが5mでsinc関数の点群を生成してみます。
import numpy as np
import random
# sinc関数の点群を作成
def get_sinc (num_points, x_min,x_max):
x = np.linspace (x_min, x_max,num_points)
mesh_x, mesh_y = np.meshgrid(x, x)
z = np.sinc((np. power (mesh_x, 2) + np. power (mesh_y, 2)))
z_norm = (z- z.min()) / (z.max() - z.min())
point_cloud = np.zeros((np.size(mesh_x), 3))
point_cloud[:, 0] = np.reshape(mesh_x, -1)
point_cloud[:, 1] =np.reshape(mesh_y, -1)
point_cloud[:, 2] =np.reshape(z_norm, -1)
return point_cloud
# 点の数。総点数はnum_points*num_points
num_points=100
# 1辺の長さ
x_min, x_max = -5,5
data=get_sinc (num_points,x_min,x_max)
ディスカッション
コメント一覧
まだ、コメントがありません