也许是一个奇怪的问题,但是在我提出实际问题之前,让我先简单介绍一下背景知识:
简而言之(据我所知),原子力显微镜(AFM)使研究人员可以在微米和纳米级扫描区域。它通过使用各种探针“扫描”区域来工作。由于我对此没有真正的了解,因此我难以解释的更多内容。我所知道的,引起我好奇的是,结果实际上是“高度”值的“网格”(一个512x512值的矩阵,描述了该点的高度)。
然后我想:好吧,除了比例尺,这实际上是一个数字高程模型!而且,这意味着,如果我可以设法创建GIS工具所理解的DEM文件,则可以对其应用GIS分析!
实际上,我的其他重要工作是在拥有AFM机器的实验室中进行的,并且正在她的一个项目中使用它。我从她那里得到了一些扫描文件,并使用Python(struct和numpy)进行了管理,以解析这些二进制文件,而我现在得到的是一个numpy数组,大小为512x512,填充有int16值。
我下一步要计划的是什么,而我需要帮助的是“映射到适当的DEM”部分。我对DEMS有一些了解,但是当涉及到DEMS的实际生成时,我还是很新的。
我在想的是我必须以某种方式对数据进行地理参考,为此,我需要一个自定义(平面)坐标系。我设想我的坐标系将以微米或纳米为单位。然后,只需查找用AFM扫描的区域的大小即可(我相信这是在二进制文件中的某个位置,假设已知道这一点)。
更新:我也以不同的分辨率进行了几次扫描,但扫描范围相同。例如我有关于两次扫描的信息:
放大图片:
Scan Size: 51443.5 nm
X Offset: 0 nm
Y Offset: 0 nm
较小(详细)图像:
Scan Size: 5907.44 nm
X Offset: 8776.47 nm
Y Offset: 1486.78 nm
我的想法是,我的自定义坐标系应以0,0为原点,对于较大的图像,我可以为像素0,0分配(0,0)的坐标值,为像素512,512分配坐标值(51443.5、51443.5 )(想必您已获得所需其他点的图片)。
然后,较大的图像会将像素(0,0)映射到(8776.47,1486.78),将(512,512)映射到(8776.47 + 5907.44,1486.78 + 5907.44)
那么第一个问题是:如何为这样的坐标系创建proj4 def?即:如何将这些“现实世界的坐标”分配给我的自定义坐标系统(或者,如果我遵循野蛮人的建议并使用局部坐标系统并围绕单位说谎(即,将纳米视为千米)
然后,我必须将我的numpy二维数组转换为地理参考DEM文件格式。我当时在考虑使用GDAL(或更确切地说是Python绑定)。
然后,第二个问题是:如何从诸如我的“任意”数据创建地理参考DEM?最好在Python中使用开放源代码库。
剩下的就应该相当容易了,只是使用正确的分析工具即可。问题是,这项任务是由我自己的好奇心驱动的,因此我不确定我应该对纳米级DEM实际做什么。这乞求
第三个问题:如何处理纳米DEM?可以进行什么样的分析,什么是进行DEM分析的合适工具,最后:根据该数据制作具有山体阴影和轮廓线的地图是否可行?
我欢迎所有建议和指示,但是请记住,我正在寻找免费替代方法,因为这是一个严格的基于兴趣的项目,没有预算或资金(而且我无法使用任何许可的GIS应用程序)。此外,我确实知道出售这些AFM机器的公司Bruker会提供一些软件,但是使用它不会很有趣。