DICOM(医学数字成像和通信)是一种用于存储医学图像(如 X 射线、MRI 和 CT 扫描)的标准格式。虽然 DICOM 文件针对医学成像应用进行了优化,但它们并未得到标准图像查看器和 Web 浏览器的广泛支持。因此,通过将 DICOM 转换为 JPEG,医疗专业人员可以使用常用软件和平台轻松共享、查看和分析图像。让我们探索使用 .NET REST API 将 DICOM 转换为 JPEG 的重要性,并了解 JPEG 压缩如何在不显著影响图像质量的情况下减小文件大小,使其适合高效存储、传输和归档医学图像。
用于 DCM 到 JPG 转换的 REST API
使用 Aspose.Imaging Cloud SDK for .NET 时,DICOM (DCM) 文件转换为 JPEG 格式的过程变得无缝且高效。这款功能强大的 SDK 提供了一系列定制功能,可简化图像转换任务,确保每次都能获得高质量的结果。因此,您可以将 SDK 无缝集成到您的应用程序中,并利用其直观的 API 轻松执行转换。
现在,为了使用 SDK,请在 NuGet 包管理器中搜索“Aspose.Imaging-Cloud”并单击“添加包”按钮。这将在您的项目中添加 SDK 引用。下一个重要步骤是从 云仪表板 获取您的客户端凭据。如果您没有现有帐户,只需按照 快速入门 文章中指定的说明创建一个免费帐户。
在 C# .NET 中将 DCM 转换为 JPG
在本节中,我们将详细探讨 Aspose.Imaging Cloud 如何无缝处理 DICOM 到 JPEG 的转换过程,同时保持图像质量并确保与广泛支持的 JPEG 格式的兼容性。
ImagingApi imagingApi = new ImagingApi(clientSecret, clientID, baseUrl: "https://api.aspose.cloud");
创建 ImagingApi 类的实例,我们将客户端凭据和 baseURL 作为参数传递。
imagingApi.UploadFile(new UploadFileRequest("source.dcm", imageStream));
将 DCM 图像上传到云存储。
ConvertImageRequest requestInstance = new ConvertImageRequest("input.jp2", "jpg");
创建 ConvertImageRequest 类的实例,其中我们在其中指定输入 DMC 图像的名称和所需的输出格式为“JPG”。
var resultant = imagingApi.ConvertImage(requestInstance);
调用 API 将 DICOM 转换为 JPEG 图像格式并将输出保存在流实例中。
saveToDisk(resultant, "ouptut.jpeg");
我们的自定义方法将生成的 JPEG 图像保存到本地驱动器。
// 有关更多示例,请访问https://github.com/aspose-imaging-cloud/aspose-imaging-cloud-dotnet/tree/master/Examples
// 从 https://dashboard.aspose.cloud/ 获取客户端凭据
string clientSecret = "c71cfe618cc6c0944f8f96bdef9813ac";
string clientID = "163c02a1-fcaa-4f79-be54-33012487e783";
// 创建 ImagingApi 类的实例,同时传递客户端凭据作为参数
ImagingApi imagingApi = new ImagingApi(clientSecret, clientID, baseUrl: "https://api.aspose.cloud");
// 从本地驱动器加载源 DICOM 图像
using (var stream = System.IO.File.OpenRead(@"d:\source.dcm"))
{
// 将 DCM 图片上传至云存储
imagingApi.UploadFile(new UploadFileRequest("source.dcm", stream));
// 创建一个 ConvertImageRequest 实例,其中我们指定输入 DMC 图像的名称和所需的输出格式为 JPG
ConvertImageRequest requestInstance = new ConvertImageRequest("source.dcm", "jpg");
// 调用API将DICOM转换为JPG图像格式
var resultant = imagingApi.ConvertImage(requestInstance);
// 以下自定义方法将生成的 JPG 图像保存到本地驱动器
saveToDisk(resultant, "output.jpeg");
}
// 将流内容保存到本地驱动器上的文件的方法
public static void saveToDisk(Stream responseStream, String resultantFile)
{
var fileStream = File.Create(resultantFile);
responseStream.Seek(0, SeekOrigin.Begin);
responseStream.CopyTo(fileStream);
fileStream.Close();
}
- 上面显示的 DICOM 预览基于我们的 免费图像查看器应用程序。
可以从 input.DCM 下载上述示例中使用的示例 DICOM 图像,并从 Resultant.jpg 下载生成的 JPG。
使用 cURL 命令开发 DICOM 到 JPEG 转换器
另外,当您希望通过命令行自动执行图像转换任务时,使用 Aspose.Imaging Cloud 和 cURL 命令将 DICOM 转换为 JPG 图像是一种灵活且可编写脚本的解决方案。通过利用 cURL 命令,您可以轻松启动转换过程,指定输入 DICOM 文件并接收生成的 JPG 输出 - 所有这些都可以在命令行或脚本中完成。
第一步是使用以下命令生成 JWT 访问令牌:
curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=163c02a1-fcaa-4f79-be54-33012487e783&client_secret=c71cfe618cc6c0944f8f96bdef9813ac" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"
现在,我们需要执行以下 cURL 命令将 DICOM 转换为 JPEG 格式。如上所述,这种方法还可确保在各种平台和应用程序之间的无缝兼容性和可访问性。
curl -v "https://api.aspose.cloud/v3.0/imaging/{inputFile}/convert?format=JPG" \
-X GET \
-H "accept: application/json" \
-H "authorization: Bearer {accessToken}" \
-o "output.jpg"
将“inputFile”替换为云存储中可用的输入 DICOM 图像的名称,将“accessToken”替换为上面生成的 JWT 访问令牌。
结论
总之,借助这个强大的 REST API,您可以访问全面的功能集、广泛的文档和可靠的支持,使其成为 DCM 到 JPG 转换的首选。 SDK 还提供了用于自定义转换过程的高级选项,确保高质量的结果并与广泛支持的 JPG 格式兼容。 因此,无论您喜欢 SDK 的便利性还是 cURL 命令的灵活性,这两种方法都使开发人员能够高效地将 DICOM 转换为 JPG,并满怀信心地优化其图像处理工作流程。
有用的链接
— 现场演示
相关文章
我们建议您访问以下博客文章以获取以下信息: