有没有人知道如何将谷歌照片球图像的纹理图像映射到自己的球体上(不使用谷歌 API)?我的目标是自己在 matlab 中完成,但我无法找到有关映射坐标的任何信息。
在此先感谢,
托马斯
有没有人知道如何将谷歌照片球图像的纹理图像映射到自己的球体上(不使用谷歌 API)?我的目标是自己在 matlab 中完成,但我无法找到有关映射坐标的任何信息。
在此先感谢,
托马斯
您可以在此处找到有关 Photo Sphere 元数据的详细信息: https ://developers.google.com/photo-sphere/metadata/
本质上,图像使用 equirectangular 投影 [1],您只需将其映射在球体内部,并将相机放在中心。如果 Photo Sphere 是完整的 360/180 度全景,那么您可以映射整个球体的内部。如果只是部分全景图,那么您可以使用照片内部的元数据来确定您需要放置纹理的确切位置。
[1] https://en.wikipedia.org/wiki/Equirectangular_projection
您是否尝试过使用扭曲功能?
a = imread('PANO.jpg');
[x,y,z] = sphere(200);
warp(x,y,z,a);
使用相机工具,您可以将相机位置设置在球体内,但我认为外部视图可以通过足够的缩放级别来满足。