如何在数码显微照片和 R 之间传输(连接)数据
How to transfer (to connect) data between Digital Micrograph and R
我是 DM 的新用户,我需要在 数码显微照片 和 R 之间传输数据(像素亮),以进行处理并对图像进行建模。
具体来说,我需要从原始图像中提取亮像素,将其发送到 R 进行处理,然后 return 发送到 DM 以表示新的图片。
我想知道这是否可行以及如何从 DM 中的脚本执行此操作。
非常感谢。问候。
DM(脚本)和外部世界之间几乎没有直接联系,所以最好的解决方案很可能是以下(以 DM 为中心)路线:
脚本在 DM 中启动,它执行:
- 所有 UI 需要
- 提取强度等
- 将所有需要的数据以合适的格式保存在特定路径的光盘上。 (原始 data/text-data/...)
- 调用外部应用程序(任何您可以从命令提示符调用的应用程序,包括 .bat 文件)并等待该命令完成
您的所有 R 代码是否都以可以从命令提示符调用的方式编写,可能带有命令提示符参数(即配置文件):
- 从特定路径读取数据
- 按要求处理(没有 UI,照做 'silently')
- 将结果保存在特定路径的光盘上
- 关闭申请
此时,DM 中的脚本继续读取结果(并可能清理磁盘上的文件。)
因此,从本质上讲,重要的是您的 R 代码可以作为 "stand-alone" 黑盒可执行文件,完全由命令行参数控制。
启动外部应用程序所需的命令可以在 "Utility Functions" 下的帮助文档中找到,并且是 LaunchExternalProcess
。它已在 GMS 2.3.1 中引入。
您可能还想尝试使用命令 ScrapCopy()
和 ScrapPasteNew()
将图像(或图像子区域)复制到剪贴板,但我不确定那里的数据是如何处理的。
我是 DM 的新用户,我需要在 数码显微照片 和 R 之间传输数据(像素亮),以进行处理并对图像进行建模。
具体来说,我需要从原始图像中提取亮像素,将其发送到 R 进行处理,然后 return 发送到 DM 以表示新的图片。
我想知道这是否可行以及如何从 DM 中的脚本执行此操作。
非常感谢。问候。
DM(脚本)和外部世界之间几乎没有直接联系,所以最好的解决方案很可能是以下(以 DM 为中心)路线:
脚本在 DM 中启动,它执行:
- 所有 UI 需要
- 提取强度等
- 将所有需要的数据以合适的格式保存在特定路径的光盘上。 (原始 data/text-data/...)
- 调用外部应用程序(任何您可以从命令提示符调用的应用程序,包括 .bat 文件)并等待该命令完成
您的所有 R 代码是否都以可以从命令提示符调用的方式编写,可能带有命令提示符参数(即配置文件):
- 从特定路径读取数据
- 按要求处理(没有 UI,照做 'silently')
- 将结果保存在特定路径的光盘上
- 关闭申请
此时,DM 中的脚本继续读取结果(并可能清理磁盘上的文件。)
因此,从本质上讲,重要的是您的 R 代码可以作为 "stand-alone" 黑盒可执行文件,完全由命令行参数控制。
启动外部应用程序所需的命令可以在 "Utility Functions" 下的帮助文档中找到,并且是 LaunchExternalProcess
。它已在 GMS 2.3.1 中引入。
您可能还想尝试使用命令 ScrapCopy()
和 ScrapPasteNew()
将图像(或图像子区域)复制到剪贴板,但我不确定那里的数据是如何处理的。