Az animált orvosi grafikák olyan formátumba konvertálása, amelyet a radiológiai rendszerek értenek, fejlesztők számára szűk keresztmetszet lehet. Aspose.Slides Cloud SDK for Python egy erőteljes könyvtárat biztosít, amely egyszerűsíti ezt a feladatot. Ebben az útmutatóban egy teljes GIF → DICOM konverziós példát láthat Pythonban, megtanulja, hogyan állítsa be a hitelesítést, kezelje a kötegelt feldolgozást, és felfedezheti a REST integrációhoz tartozó ekvivalens cURL hívásokat.

Hogyan alakítsuk át a GIF képeket DICOM fájlokká Python segítségével – Lépésről lépésre

  1. Hitelesítés konfigurálása és a SlidesApi inicializálása: Állítsa be ügyfélhitelesítő adatait, és hozzon létre egy SlidesApi példányt.
from asposeslidescloud import SlidesApi, Configuration

config = Configuration()
config.api_key['client_id'] = "YOUR_CLIENT_ID"
config.api_key['client_secret'] = "YOUR_CLIENT_SECRET"
slides_api = SlidesApi(configuration=config)

Ez a lépés előkészíti a környezetet a GIF DICOM konverziós példához Pythonban.

  1. Határozza meg a bemeneti és kimeneti mappákat: Hozzon létre mappákat a forrás GIF-ek és a generált DICOM fájlok számára.
import os

INPUT_FOLDER = "gif_inputs"
OUTPUT_FOLDER = "dicom_outputs"
os.makedirs(OUTPUT_FOLDER, exist_ok=True)
  1. A konverziós függvény létrehozása: Használja a convert_local függvényt egy GIF DICOM-má alakításához, opcionális metaadatok átadásával.
def convert_gif_to_dicom(gif_path: str, dicom_path: str):
    with open(gif_path, "rb") as gif_file:
        result_bytes = slides_api.convert_local(
            file=gif_file,
            format="dicom",
            patientName="John Doe",
            patientId="123456",
            studyDescription="Sample GIF to DICOM conversion"
        )
    with open(dicom_path, "wb") as out_file:
        out_file.write(result_bytes)
  1. Kötegelt konvertálás minden GIF fájlra: Olvassa be a bemeneti mappát, és hívja meg a konvertáló függvényt minden egyes fájlra.
import glob

def batch_convert_gif_folder(input_folder: str, output_folder: str):
    gif_files = glob.glob(os.path.join(input_folder, "*.gif"))
    for gif_file in gif_files:
        base_name = os.path.splitext(os.path.basename(gif_file))[0]
        dicom_file = os.path.join(output_folder, f"{base_name}.dcm")
        convert_gif_to_dicom(gif_file, dicom_file)
  1. A szkript futtatása: Futtassa a kötegelt konverziót, amikor a modul közvetlenül kerül végrehajtásra.
if __name__ == "__main__":
    batch_convert_gif_folder(INPUT_FOLDER, OUTPUT_FOLDER)

A szkript befejezi a GIF‑ről DICOM‑ra konvertálási példát Pythonban, és kész‑használatra kész DICOM fájlokkal hagyja Önt.

Teljes kódrészlet példa: GIF DICOM konverzió Aspose.Slides Cloud SDK használatával

Az alábbi kód bemutatja a GIF‑ről DICOM‑ra konvertálási példa teljes megvalósítását Pythonban.

import os
import glob
from asposeslidescloud import SlidesApi, ApiException, Configuration

# -------------------- Setup Aspose.Slides Cloud SDK and Authentication --------------------
# Replace with your actual Aspose Cloud credentials
CLIENT_ID = "YOUR_CLIENT_ID"
CLIENT_SECRET = "YOUR_CLIENT_SECRET"

config = Configuration()
config.api_key['client_id'] = CLIENT_ID
config.api_key['client_secret'] = CLIENT_SECRET
# Optional: set the base URL if you use a different region
# config.host = "https://api.aspose.cloud"

slides_api = SlidesApi(configuration=config)

# -------------------- Prepare GIF Input and Define DICOM Parameters --------------------
INPUT_FOLDER = "gif_inputs"
OUTPUT_FOLDER = "dicom_outputs"
os.makedirs(OUTPUT_FOLDER, exist_ok=True)

# Example DICOM metadata (if the API supports passing them as query parameters)
# Here we just illustrate the idea; actual parameter names may differ.
dicom_params = {
    "patientName": "John Doe",
    "patientId": "123456",
    "studyDescription": "Sample GIF to DICOM conversion"
}

# -------------------- Write Python Script for GIF to DICOM Conversion Example --------------------
def convert_gif_to_dicom(gif_path: str, dicom_path: str):
    """
    Converts a single GIF file to DICOM format using Aspose.Slides Cloud SDK.
    """
    try:
        # Read the GIF file into memory
        with open(gif_path, "rb") as gif_file:
            # The SDK method `convert_local` returns the converted file bytes.
            # Pass the desired output format ("dicom") and any additional parameters.
            result_bytes = slides_api.convert_local(
                file=gif_file,
                format="dicom",
                # The following dictionary is illustrative; adjust according to SDK docs.
                **dicom_params
            )
        # Write the resulting DICOM bytes to the output file
        with open(dicom_path, "wb") as out_file:
            out_file.write(result_bytes)
        print(f"Converted '{gif_path}' → '{dicom_path}'")
    except ApiException as e:
        print(f"API error while converting '{gif_path}': {e}")
    except Exception as ex:
        print(f"Unexpected error while converting '{gif_path}': {ex}")

# -------------------- Batch Convert GIF Files to DICOM in Python --------------------
def batch_convert_gif_folder(input_folder: str, output_folder: str):
    """
    Scans the input folder for *.gif files and converts each to DICOM,
    storing results in the output folder.
    """
    gif_files = glob.glob(os.path.join(input_folder, "*.gif"))
    if not gif_files:
        print(f"No GIF files found in '{input_folder}'.")
        return

for gif_file in gif_files:
        base_name = os.path.splitext(os.path.basename(gif_file))[0]
        dicom_file = os.path.join(output_folder, f"{base_name}.dcm")
        convert_gif_to_dicom(gif_file, dicom_file)

# -------------------- Execute Batch Conversion --------------------
if __name__ == "__main__":
    batch_convert_gif_folder(INPUT_FOLDER, OUTPUT_FOLDER)

Megjegyzés: Ez a kódrészlet bemutatja az alapvető funkcionalitást. Mielőtt a projektjében használná, győződjön meg róla, hogy frissíti az összes fájlútvonalat és konfigurációs értéket, hogy azok megfeleljenek a tényleges környezetének, ellenőrizze, hogy az összes szükséges függőség megfelelően telepítve van, és alaposan tesztelje a fejlesztői környezetben. Ha bármilyen problémába ütközik, kérjük, tekintse meg a hivatalos dokumentációt vagy lépjen kapcsolatba a támogatási csapattal segítségért.

cURL használata az Aspose.Slides felhő konverziós végpont meghívásához

Az alábbiakban a REST hívások találhatók, amelyek ugyanazt a GIF‑ről DICOM‑ra konvertálási példát hajtják végre Pythonban az Aspose.Slides Cloud API segítségével.

  1. Szerezzen hozzáférési tokent (cserélje ki a helyőrzőket a saját hitelesítő adataira).
curl -X POST "https://api.aspose.cloud/connect/token" \
     -d "grant_type=client_credentials&client_id=YOUR_CLIENT_ID&client_secret=YOUR_CLIENT_SECRET"
  1. GIF fájl feltöltése az ideiglenes tárolóba.
curl -X PUT "https://api.aspose.cloud/v3.0/slides/storage/file/gif_inputs/sample.gif" \
     -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
     -H "Content-Type: application/octet-stream" \
     --data-binary "@sample.gif"
  1. Kérés a DICOM konvertálásra opcionális metaadatok átadásával.
curl -X POST "https://api.aspose.cloud/v3.0/slides/gif_inputs/sample.gif/convert/dicom?patientName=John%20Doe&patientId=123456&studyDescription=Sample%20GIF%20to%20DICOM%20conversion" \
     -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
     -o "dicom_outputs/sample.dcm"
  1. Töltse le a keletkezett DICOM fájlt (ha máshová mentette).
curl -X GET "https://api.aspose.cloud/v3.0/slides/storage/file/dicom_outputs/sample.dcm" \
     -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
     -o "sample.dcm"

A kérés paramétereiről további részletekért tekintse meg az API referenciát.

Aspose.Slides Cloud SDK for Python telepítése és konfigurálása

Az SDK a PyPI-n keresztül érhető el. Telepítsd pip‑pel, és ellenőrizd a telepítési útvonalat.

pip install asposeslidescloud

Telepítés után hozzon létre egy konfigurációs fájlt, vagy állítson be környezeti változókat a CLIENT_ID és CLIENT_SECRET értékeivel. A Lépések szakaszban található kódrészlet megmutatja, hogyan kell felépíteni a Configuration objektumot.

Átalakítási beállítások: opciók és paraméterek

A DICOM kimenetet a dicom_params szótár módosításával testreszabhatja. A gyakori mezők közé tartozik a betegadatok és a vizsgálat leírása.

dicom_params = {
    "patientName": "John Doe",
    "patientId": "123456",
    "studyDescription": "Sample GIF to DICOM conversion"
}

További paraméterek, például a kép felbontása vagy tömörítése, átadhatók, ha az API támogatja; tekintse meg az API hivatkozás a teljes listaért.

Gyakran Ismételt Kérdések

  • Átalakíthatok egyetlen GIF-et DICOM formátumba az SDK használatával?
    Igen, meghívhatja a convert_local metódust egy egyedi GIF fájlhoz. Tekintse meg az Aspose.Slides Cloud SDK for Python dokumentációt a részletekért.

  • Hogyan tudok GIF fájlokat kötegelt módon DICOM formátumba konvertálni Pythonban?
    Használja a batch_convert_gif_folder függvényt. Ez egy mappát vizsgál *.GIF fájlok után, és mindegyiket konvertálja, ami ideális nagy képkészletekhez.

  • Van mód a DICOM visszaalakítására JPEG vagy PNG formátumba?
    Az SDK a DICOM-re konvertálásra összpontosít, de használhatja az Aspose.Imaging Cloud SDK for .NET vagy más támogatott termékek segítségével a képek kinyeréséhez a DICOM fájlokból.

  • Milyen licencelési lehetőségek állnak rendelkezésre, és hogyan szerezhetek ideiglenes licencet?
    A kereskedelmi licenc szükséges a termelési használathoz. Ideiglenes licencet szerezhet a kiértékeléshez a ideiglenes licenc oldal címről.

Kapcsolódó cikkek