关于C++方面的问题:想要用C++实现matlab中griddata的二维插值功能

问题遇到的现象和发生背景
  我现在已知(x,y,z)三维坐标的数据,大概12000个点,但这个(x,y,z)分布是离散的。因为我后面要对数据进行差分运算,因此要先将这些数据进行网格化。
问题相关代码,请勿粘贴截图
  目前我已经通过matlab中griddata函数采用下面的命令:
                                                                                       zi = griddata(x,y,z, xi,yi);
  实现,其中x,y,z就是我给的数据,
             xi和yi是网格矩阵,
             zi是插值后的结果。
运行结果及报错内容
   我现在想做的就是用C++来实现griddata这一功能。
我的解答思路和尝试过的方法
   我现在在尝试采用pcl来实现这一功能。
我想要达到的结果