HTML JPG PDF XML APNG
Aspose.Imaging  对于 Python
DICOM

使用 Python 进行 JP2 到 DICOM 图像转换

创建 Python 应用程序以通过服务器 API 将 JP2 转换为 DICOM 图像和照片

如何使用 Python 将 JP2 转换为 DICOM 图像和照片

图像文件从一种格式转换为另一种格式是每个图形设计师遇到的常见任务。文件转换的效率和卓越性不仅影响完成速度,而且对评估整体工作质量也起着至关重要的作用。关于图像源,它们经常需要转换为更适合打印或在线分发的替代格式。在图形编辑器中制作的图像可能是矢量格式。在这种情况下,为了网站发布,必须对其进行光栅化并以光栅格式保存。您可以选择将图像转换为未压缩格式以获得卓越的质量,或将其保存为无损压缩格式以最小化文件大小。对于必须减小文件大小的情况(例如在网站应用程序中),可以转换为有损压缩格式。专门的图像数据压缩算法可以显着减小文件大小,同时保持可接受的图像质量,确保快速图像加载。要将图像和照片从 JP2 转换为 DICOM,我们将使用 Aspose.Imaging for Python via .NET API 是一个功能丰富、功能强大且易于使用的图像处理和转换 API,适用于 Python 平台。您可以使用系统命令中的以下命令安装它。

系统命令行

>> pip install aspose-imaging-python-net

通过 Python 将 JP2 转换为 DICOM 的步骤

开发人员只需几行代码即可轻松加载 JP2 文件并将其转换为 DICOM。

  • 使用 Image.Load 方法加载 JP2 文件
  • 创建和设置 ImageOptionsBase 所需子类的实例(例如 BmpOptions、PngOptions 等)
  • 调用 Image.Save 方法
  • 传递带有 DICOM 扩展名的文件路径和 ImageOptionsBase 类的对象

系统要求

在运行转换示例代码之前,请确保您具有以下先决条件。

  • 操作系统:Windows 或Linux。
  • 开发环境:支持.NET Core 7及更高版本,例如Microsoft Visual Studio。

将 JP2 转换为 DICOM 的免费应用程序

  • 选择或拖放 JP2 图像
  • 选择格式并单击转换按钮
  • 点击下载按钮下载 DICOM 图像
*上传您的文件或使用我们的服务即表示您同意我们的服务条款隐私政策

查看我们的 将 JP2 转换为 DICOM 的现场演示

将 JP2 转换为 DICOM - Python

from aspose.imaging import *
from aspose.imaging.fileformats.tiff.enums import *
from aspose.imaging.fileformats.jpeg2000 import *
from aspose.imaging.fileformats.png import *
from aspose.imaging.imageoptions import *
from aspose.pycore import is_assignable
import os
if 'TEMPLATE_DIR' in os.environ:
templates_folder = os.environ['TEMPLATE_DIR']
else:
templates_folder = r"C:\Users\USER\Downloads\templates"
delete_output = 'SAVE_OUTPUT' not in os.environ
data_dir = templates_folder
def process_convertion():
import_formats, export_formats = get_available_image_formats()
for import_key, import_value in import_formats.items():
format_ext = import_key
input_file = os.path.join(templates_folder, f"template.{format_ext}")
if not os.path.exists(input_file):
continue
for export_key, export_value in export_formats.items():
output_file = os.path.join(templates_folder, f"convert-{format_ext}-to-{export_key}.{export_key}")
print("Processing conversion:" + output_file)
with Image.load(input_file) as image:
export_options = export_value.clone()
if is_assignable(image, VectorImage):
rasterization_options = import_value
rasterization_options.page_width = float(image.width)
rasterization_options.page_height = float(image.height)
export_options.vector_rasterization_options = rasterization_options
image.save(output_file, export_options)
if delete_output:
os.remove(output_file)
def get_available_image_formats():
obj_init = Jpeg2000Options()
obj_init.codec = Jpeg2000Codec.J2K
obj_init2 = Jpeg2000Options()
obj_init2.codec = Jpeg2000Codec.JP2
obj_init3 = PngOptions()
obj_init3.color_type = PngColorType.TRUECOLOR_WITH_ALPHA
obj_init4 = {}
obj_init4["bmp"] = BmpOptions()
obj_init4["gif"] = GifOptions()
obj_init4["dicom"] = DicomOptions()
obj_init4["jpg"] = JpegOptions()
obj_init4["jpeg"] = JpegOptions()
obj_init4["jpeg2000"] = Jpeg2000Options()
obj_init4["j2k"] = obj_init
obj_init4["jp2"] = obj_init2
obj_init4["png"] = obj_init3
obj_init4["apng"] = ApngOptions()
obj_init4["tiff"] = TiffOptions(TiffExpectedFormat.DEFAULT)
obj_init4["tif"] = TiffOptions(TiffExpectedFormat.DEFAULT)
obj_init4["tga"] = TgaOptions()
obj_init4["webp"] = WebPOptions()
obj_init4["ico"] = IcoOptions(FileFormat.PNG, 24)
raster_formats_that_support_export_and_import = obj_init4
obj_init5 = EmfOptions()
obj_init5.compress = True
obj_init6 = WmfOptions()
obj_init6.compress = True
obj_init7 = SvgOptions()
obj_init7.compress = True
obj_init8 = {}
obj_init8["emf"] = (EmfOptions(), EmfRasterizationOptions())
obj_init8["svg"] = (SvgOptions(), SvgRasterizationOptions())
obj_init8["wmf"] = (WmfOptions(), WmfRasterizationOptions())
obj_init8["emz"] = (obj_init5, EmfRasterizationOptions())
obj_init8["wmz"] = (obj_init6, WmfRasterizationOptions())
obj_init8["svgz"] = (obj_init7, SvgRasterizationOptions())
vector_formats_that_support_export_and_import = obj_init8
obj_init9 = DxfOptions()
obj_init9.text_as_lines = True
obj_init9.convert_text_beziers = True
obj_init10 = {}
obj_init10["psd"] = PsdOptions()
obj_init10["dxf"] = obj_init9
obj_init10["pdf"] = PdfOptions()
obj_init10["html"] = Html5CanvasOptions()
formats_only_for_export = obj_init10
obj_init11 = {}
obj_init11["djvu"] = None
obj_init11["dng"] = None
obj_init11["dib"] = None
formats_only_for_import = obj_init11
obj_init12 = {}
obj_init12["eps"] = EpsRasterizationOptions()
obj_init12["cdr"] = CdrRasterizationOptions()
obj_init12["cmx"] = CmxRasterizationOptions()
obj_init12["otg"] = OtgRasterizationOptions()
obj_init12["odg"] = OdgRasterizationOptions()
vector_formats_only_for_import = obj_init12
# Get total set of formats to what we can export images
export_formats = {k: v[0] for k, v in vector_formats_that_support_export_and_import.items()}
export_formats.update(formats_only_for_export)
export_formats.update(raster_formats_that_support_export_and_import)
# Get total set of formats that can be loaded
import_formats = {k : VectorRasterizationOptions() for k in formats_only_for_import}
import_formats.update(vector_formats_only_for_import)
import_formats.update({k : v[1] for k, v in vector_formats_that_support_export_and_import.items()})
return import_formats, export_formats
# run
process_convertion()

JP2 什么是 JP2 文件格式

JPEG 2000 (JP2) 是一种图像编码系统和最先进的图像压缩标准。设计,使用小波技术 JPEG 2000 可以一次编码任何质量的无损内容。此外,在编码效率没有任何实质性损失的情况下,JPEG 2000 能够有效地访问相同的内容并将其解码为各种其他分辨率和质量。 JPEG 2000 中的码流具有显着的可扩展性,具有为空间随机访问提供便利的感兴趣区域。拥有多达 16384 个不同的组件,尺寸以万亿像素为单位,精度可高达 38 位/样本。

阅读更多 | JP2

DICOM 什么是 DICOM 文件格式

DICOM 是 Digital Imaging and Communications in Medicine 的首字母缩写词,属于医学信息学领域。 DICOM 是文件格式定义和网络通信协议的结合。 DICOM 使用 .DCM 扩展名。 .DCM 以两种不同的格式存在,即格式 1.x 和格式 2.x。 DCM Format 1.x 还提供了两个普通版本和扩展版本。 DICOM 用于集成来自不同供应商的打印机、服务器、扫描仪等医疗成像设备,还包含每个患者的唯一识别数据。如果 DICOM 文件能够接收 DICOM 格式的图像数据,则它们可以在两方之间共享。 DICOM的通信部分是应用层协议,实体之间使用TCP/IP进行通信。 HTTP 和 HTTPS 协议用于 DICOM 的 Web 服务。 Web 服务支持的版本是 1.0、1.1、2 或更高版本。

阅读更多 | DICOM

其他支持的转换

使用 Python,可以轻松转换不同的格式,包括。

BMP (位图图片)
GIF (图形交换格式)
DICOM (数码影像与通讯)
EMF (增强的元文件格式)
JPG (联合摄影专家组)
JPEG (联合摄影专家组)
J2K (小波压缩图像)
JPEG2000 (JPEG 2000)
PNG (便携式网络图形)
APNG (动画便携式网络图形)
PSD (Photoshop 文档)
DXF (图纸交换格式,或图纸交换格式,)
SVG (可缩放矢量图形)
TIFF (标记图像格式)
WEBP (光栅 Web 图像)
WMF (微软视窗元文件)
PDF (便携式文档格式 (PDF))
HTML (HTML5 画布)
EMZ (Windows 压缩增强元文件)
WMZ (压缩的 Windows Media Player 皮肤)
TGA (塔加图形)
SVGZ (可缩放矢量图形 (.SVG) 文件的压缩版本。)
CANVAS (HTML5 画布)
ICO (窗口图标)