להמרת תמונות רפואיות מ-DICOM ל-JPG היא משימה נפוצה כאשר יישומי רדיולוגיה צריכים להציג מחקרים בפורטלים אינטרנטיים או במצגות ניידות. Aspose.HTML Cloud SDK for Python מספק ספרייה חזקה שמטפלת בעבודה הכבדה בצד השרת. במדריך זה תלמדו כיצד ליישם המרה מ‑DICOM ל‑JPG בפייתון שלב אחרי שלב, לחקור אפשרויות מרובות‑תהליכים, ולראות כיצד לקרוא לאותו שירות באמצעות cURL עבור זרימות עבודה מבוססות REST.
הדרישות להמרת DICOM ל-JPG
תחנות עבודה ברדיולוגיה מקבלות לעיתים קבצי DICOM שצריך לעבד לתמונות ממוזערות JPG קלות לתצוגה מהירה. המפתחים זקוקים לפתרון ש:
- קורא נתוני DICOM בינריים מבלי להסתמך על ספריות הדמיה חיצוניות.
- ממיר את התמונה לפורמט נתמך נרחב כגון JPG תוך שמירה על איכות אבחונית.
- מטפל בכמויות גדולות של קבצים ביעילות, אידיאלית עם עיבוד מקבילי.
המרה ידנית באמצעות כלי שולחן עבודה היא גוזלת זמן ואינה מתרחבת לצינורות צד‑שרת, מה שהופך API אוטומטי לחיוני בתוכנת רדיולוגיה מודרנית.
הגישה: זרימת עבודה ממוטבת של המרת ענן
Aspose.HTML Cloud SDK for Python מציע API מבוסס‑ענן שמפשט את לוגיקת ההמרה. השירות:
- מקבל בתים גולמיים של DICOM ומחזיר זרם בתים של JPG.
- מתבצע בענן Aspose, מה שמבטל את הצורך במפרשי DICOM מקומיים.
- מספק אפשרויות תצורה לאיכות התמונה, רזולוציה וביצוע מרובה‑תהליכים.
הפנה לתיעוד רשמי לפרטי האימות ולהפניות API למחלקת ConvertDocumentRequest המשמשת במדריך זה.
מימוש המרת DICOM ל‑JPG בפייתון
להלן יישום מעשי, שלב‑אחר‑שלב שניתן לשלב בכל backend של רדיולוגיה.
התקן Aspose.HTML Cloud SDK for Python
pip install asposehtmlcloud
הגדר את לקוח ה-API עם האישורים שלך
from asposehtmlcloud import HtmlApi, Configuration
config = Configuration()
config.api_key['api_key'] = api_key # Replace with your actual API key
config.host = "https://api.aspose.cloud"
html_api = HtmlApi(config)
טעינת קובץ DICOM לזיכרון
with open(input_file, "rb") as f:
dicom_bytes = f.read()
צור בקשת המרה לפלט JPG
from asposehtmlcloud import ConvertDocumentRequest
request = ConvertDocumentRequest(
file=dicom_bytes,
format="jpg"
)
כתיבת בתים של JPG לדיסק
jpg_bytes = html_api.convert_document(request)
with open(output_file, "wb") as out_f:
out_f.write(jpg_bytes)
עם הצעדים האלה זרימת העבודה של המרת DICOM ל‑JPG הושלמה, וכעת ניתן לשלב את הכלי בצינוריות גדולות יותר או לקרוא לו מתוך סקריפטים של שורת פקודה.
כלי המרה מ‑DICOM ל‑JPG - דוגמת קוד מלאה
הדוגמה הבאה מדגימה את תהליך הקצה‑לקצה המלא.
import os
from asposehtmlcloud import HtmlApi, Configuration, ConvertDocumentRequest
def dicom_to_jpg(input_file: str, output_file: str, api_key: str):
# Configure Aspose.HTML Cloud SDK
config = Configuration()
config.api_key['api_key'] = api_key # Replace with your actual API key
config.host = "https://api.aspose.cloud"
# Initialize the API client
html_api = HtmlApi(config)
# Read the DICOM file into memory
with open(input_file, "rb") as f:
dicom_bytes = f.read()
# Build the conversion request (target format: jpg)
request = ConvertDocumentRequest(
file=dicom_bytes,
format="jpg"
)
# Perform conversion – the response is a binary stream of the JPG image
jpg_bytes = html_api.convert_document(request)
# Write the resulting JPG to disk
with open(output_file, "wb") as out_f:
out_f.write(jpg_bytes)
if __name__ == "__main__":
# Example usage
INPUT_DICOM = "sample.dcm" # Path to your source DICOM file
OUTPUT_JPG = "sample_converted.jpg" # Desired output path
API_KEY = "YOUR_ASPOSE_CLOUD_API_KEY"
dicom_to_jpg(INPUT_DICOM, OUTPUT_JPG, API_KEY)
הערה: דוגמת קוד זו מציגה את הפונקציונליות המרכזית. לפני השימוש בפרויקט שלך, ודא שאתה מעדכן את כל נתיבי הקבצים וערכי ההגדרות כך שיתאימו לסביבה האמיתית שלך, מאמת שכל התלויות הנדרשות מותקנות כראוי, ובודק באופן יסודי בסביבת הפיתוח שלך. אם אתה נתקל בבעיות, אנא פנה לתיעוד הרשמי או פנה לצוות התמיכה לקבלת סיוע.
המרה מרובת-תהליכים באמצעות REST API באמצעות cURL
אם אתה מעדיף גישה טהורה של REST, ניתן לבצע את ההמרה באותו אופן באמצעות פקודות cURL. זה שימושי לאוטומציה משורת הפקודה או אינטגרציה עם צינורות CI.
- קבל אסימון גישה
curl -X POST "https://api.aspose.cloud/connect/token" \
-d "grant_type=client_credentials&client_id=YOUR_CLIENT_ID&client_secret=YOUR_CLIENT_SECRET"
- העלה את קובץ DICOM
curl -X PUT "https://api.aspose.cloud/v4.0/html/storage/file/sample.dcm" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-H "Content-Type: application/dicom" \
--data-binary "@sample.dcm"
- בקשת המרה ל‑JPG
curl -X POST "https://api.aspose.cloud/v4.0/html/convert?format=jpg" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{"FileName":"sample.dcm"}' \
-o sample_converted.jpg
- הורד את ה‑JPG המומר (אם לא נשמר ישירות)
curl -X GET "https://api.aspose.cloud/v4.0/html/storage/file/sample_converted.jpg" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-o sample_converted.jpg
הפקודות הללו מדגימות זרימת עבודה של המרה מרובת‑תהליכים שבה ניתן לעבד קבצים מרובים במקביל על‑ידי הפעלת מספר זוגות העלאה/המרה בו‑זמנית. לפרטים מלאים על ה‑API, ראו את התיעוד הרשמי של ה‑API.
הגדרת אפשרויות המרה מ‑DICOM ל‑JPG
ה‑SDK מאפשר לך לכוונן את הפלט באופן מדויק. אפשרויות נפוצות כוללות:
- איכות תמונה - התאם את רמת הדחיסה של JPEG (0‑100).
- רזולוציה - הגדר DPI לפלט ברזולוציה גבוהה.
- מצב צבע - בחר בין גווני אפור לצבע אם ה‑DICOM מכיל נתוני צבע.
אתה יכול להעביר את האפשרויות האלה בתוכן הבקשה. לדוגמה, כדי להגדיר איכות:
request = ConvertDocumentRequest(
file=dicom_bytes,
format="jpg",
options={"quality": 90}
)
כל הפרמטרים הנתמכים מתוארים בהפנייה ל‑API. נסו את ההגדרות האלה כדי להשיג את האיזון הטוב ביותר בין גודל הקובץ לבין בהירות האבחון, במיוחד כאשר עובדים עם מערכי נתוני DICOM גדולים.
סיכום
DICOM to JPG conversion in Python הופכת לפשוטה עם Aspose.HTML Cloud SDK for Python. הספרייה מטפלת בעבודה הכבדה, מציעה ביצוע מרובה‑תהליכים לסביבות בעלות נפח גבוה, ומספקת שליטה מדויקת על איכות התמונה. זכור לאבטח רישיון מסחרי מתאים לפריסות ייצור; פרטי התמחור זמינים בדף המוצר, ורישיון זמני ניתן לקבל מtemporary license page. עם הקוד ודוגמאות cURL למעלה, אתה יכול לשלב המרת DICOM ל‑JPG אמינה בכל יישום רדיולוגיה היום.
שאלות נפוצות
אילו פורמטי קבצים יכול Aspose.HTML Cloud SDK להמיר בנוסף ל‑DICOM?
ה‑SDK תומך במגוון רחב של פורמטים כולל PDF, PNG, BMP, GIF, TIFF, ו‑SVG. עיין ב‑תיעוד לקבלת הרשימה המלאה.
האם ניתן לבצע את ההמרה מבלי להתקין כלים חיצוניים?
כן. ההמרה מתבצעת כולה בענן, ולכן אין צורך בספריות DICOM מקומיות או בכלי עיבוד תמונה.
איך המרה מרובת‑תהליכים משפרת את הביצועים?
על‑ידי שליחת מספר בקשות המרה במקביל, ניתן לנצל ליבות CPU מרובות בשרתים של Aspose, וכך להפחית את זמן העיבוד הכולל של קבוצות גדולות של קבצי DICOM.
האם אני יכול להשתמש ב‑SDK בסקריפט שורת פקודה?
בהחלט. הדוגמאות של cURL מדגימות זרימת עבודה משורת פקודה, והסקריפט ב‑Python ניתן להרצה ישירות מהטרמינל או משימת מתזמן.