とりあえずデータを加工せず、そのまま表示するだけだったらこんな感じで書けます。
Python
1from PIL import Image, ImageOps
2import numpy as np
3from mpl_toolkits.mplot3d import Axes3D
4import matplotlib.pyplot as plt
5
6# 画像読み込み
7org_img = Image.open('data.png')
8# グレースケール化
9img = ImageOps.grayscale(org_img)
10# 配列化
11data = np.asarray(img)
12
13# データ表示
14X,Y = np.mgrid[:data.shape[0], :data.shape[1]]
15ax = plt.gca(projection='3d')
16ax.plot_surface(X,Y,data,cmap='Reds',edgecolor='k',rcount=15,ccount=15)
17plt.show()