Aspose.Medical DICOM to Text Converter за .NET

Медицински ДИЦОМ у тексту конвертер за .НЕТ је моћна АПИ фокусирана на конвертирање ДИКОМ података у људско-читајуће и машински-пропуштене формати. Серијализује датотеке ДиЦоМ на ЈСОН и КСМЛ формате, омогућава интегрисање са веб услугама, РЕСТ АПИ, и савременим здравственим системима. Изграђен за интерактивност, обезбеђује стандардно-усклађене серијализације према ДИСКОМ Веб Услуге (ПС3.18) спецификацијама.

Инсталација и подешавање

  • Инсталирајте пакет НУГЕТ Aspose.Medical (Основни АПИ снабдевање конверзије).
  • Аплицирајте мерене лиценце на стартапу како бисте избегли ограничења за процену: погледајте Метеран лиценцирање .
  • Преглед оквирних захтева у Инсталацијски водич .

Подржане платформе

  • ОС: Виндовс, Линук, МацОС
    • Рамкови: * .NET 8.0+
  • ** Архитектура:** x64, ARM64 (macOS)

брз почетак

1) ДИКОМ ДО ЈСОН

using Aspose.Medical.Dicom;
using Aspose.Medical.Dicom.Serialization;

DicomFile dcm = DicomFile.Open("patient_scan.dcm");
string json = DicomJsonSerializer.Serialize(dcm);

2) DICOM do JSON sa Pretty Print

using Aspose.Medical.Dicom;
using Aspose.Medical.Dicom.Serialization;

DicomFile dcm = DicomFile.Open("patient_scan.dcm");
string formattedJson = DicomJsonSerializer.Serialize(dcm, writeIndented: true);
Console.WriteLine(formattedJson);

3) DICOM Dataset za JSON

using Aspose.Medical.Dicom;
using Aspose.Medical.Dicom.Serialization;

DicomFile dcm = DicomFile.Open("patient_scan.dcm");
Dataset dataset = dcm.Dataset;
string json = DicomJsonSerializer.Serialize(dataset, writeIndented: true);

4) Mnogo DICOM datoteka za JSON Array

using Aspose.Medical.Dicom;
using Aspose.Medical.Dicom.Serialization;

DicomFile dcm1 = DicomFile.Open("scan1.dcm");
DicomFile dcm2 = DicomFile.Open("scan2.dcm");
Dataset[] datasets = [dcm1.Dataset, dcm2.Dataset];
string json = DicomJsonSerializer.Serialize(datasets, writeIndented: true);

5) Серијализација на струју (ефикасна меморија)

using Aspose.Medical.Dicom;
using Aspose.Medical.Dicom.Serialization;

DicomFile dcm = DicomFile.Open("patient_scan.dcm");
using MemoryStream stream = new();
DicomJsonSerializer.Serialize(stream, dcm.Dataset);

6) Сачувајте као JSON датотеку

using Aspose.Medical.Dicom;
using Aspose.Medical.Dicom.Serialization;

DicomFile dcm = DicomFile.Open("patient_scan.dcm");
using FileStream output = File.Create("output.json");
DicomJsonSerializer.Serialize(output, dcm.Dataset, writeIndented: true);

JSON дезерјализација

Deserializuje JSON String na Dataset

using Aspose.Medical.Dicom;
using Aspose.Medical.Dicom.Serialization;

string jsonText = File.ReadAllText("dicom_data.json");
Dataset? dataset = DicomJsonSerializer.Deserialize(jsonText);

Deserializujte JSON Stream na Dataset

using Aspose.Medical.Dicom;
using Aspose.Medical.Dicom.Serialization;

using FileStream stream = File.OpenRead("dicom_data.json");
Dataset? dataset = DicomJsonSerializer.Deserialize(stream);

Deserializujte JSON na DicomFile

using Aspose.Medical.Dicom;
using Aspose.Medical.Dicom.Serialization;

string jsonText = File.ReadAllText("dicom_file.json");
DicomFile? dicomFile = DicomJsonSerializer.DeserializeFile(jsonText);

Deserializuje JSON Array na više setova podataka

using Aspose.Medical.Dicom;
using Aspose.Medical.Dicom.Serialization;

string jsonText = File.ReadAllText("dicom_array.json");
Dataset[]? datasets = DicomJsonSerializer.DeserializeList(jsonText);

КСМЛ серијализација

ДИКОМ до КСМЛ

using Aspose.Medical.Dicom;
using Aspose.Medical.Dicom.Serialization;

DicomFile dcm = DicomFile.Open("patient_scan.dcm");
string xml = DicomXmlSerializer.Serialize(dcm.Dataset);

КСНУМКС до ДИКОМ Датасет

using Aspose.Medical.Dicom;
using Aspose.Medical.Dicom.Serialization;

string xmlText = File.ReadAllText("dicom_data.xml");
Dataset? dataset = DicomXmlSerializer.Deserialize(xmlText);

Асинц АПИ

За асинхронне операције у веб апликацијама и услугама:

using Aspose.Medical.Dicom;
using Aspose.Medical.Dicom.Serialization;

// Async deserialization from stream
using FileStream stream = File.OpenRead("dicom_data.json");
Dataset? dataset = await DicomJsonSerializer.DeserializeAsync(stream);

// Async serialization to stream
using FileStream output = File.Create("output.json");
await DicomJsonSerializer.SerializeAsync(output, dataset);

** Доступни Асинц Методе:**

  • DeserializeAsync Deserializujte UTF-8 JSON tok na Dataset
  • DeserializeFileAsync Deserializujte UTF-8 JSON tok na DicomFile
  • DeserializeListAsync Deserialize UTF-8 JSON tok na Dataset array
  • SerializeAsync - Серијализовати Датасет, ДикомФиле, или Датисет распоређивање на УТФ-8 ЈСОН струју

Карактеристике и функционалност

DICOM Web Services Усклађеност

Конвертер се придржава DICOM PS3.18 (Веб Услуге) стандарда, осигуравајући компатибилност са:

  • Преостале дицом веб АПИ
  • PACS sisteme u oblaku
  • Савремене платформе интерактивности здравствене заштите
  • FHIR-компатибилни системи

Опције за серијализацију

Прилагођавање понашања серијализације са DicomJsonSerializerOptions:

DicomJsonSerializerOptions options = new()
{
    UseKeywordsAsJsonKeys = false,  // Use tags instead of keywords
    WriteKeyword = true,            // Include keyword as separate attribute
    WriteName = true,               // Include tag name as separate attribute
    NumberHandling = JsonNumberHandling.AsNumber  // Number format
};

string json = DicomJsonSerializer.Serialize(dataset, options);
OptionОпис
UseKeywordsAsJsonKeysKoristite ključne reči DICOM umesto oznaka kao JSON ključeve (ne standardno)
WriteKeywordНапишите ДИКОМ таг кључне речи као посебан ЈСОН атрибут
WriteNameНапишите име ознаке ДИКОМ као посебан JSON атрибут
NumberHandlingобрађују се бројевима као AsNumber или AsString
BulkDataLoaderLoader za blob podatke upućene u elementima BulkData
BulkDataConverterКонвертер за писање података као БулкДата референце

System.Text.Json Интеграција

Користите конверторе са стандардном .NET JSON сериализацијом:

using System.Text.Json;
using Aspose.Medical.Dicom.Serialization;

JsonSerializerOptions options = new();
options.Converters.Add(new DicomFileJsonConverter());
options.Converters.Add(new DatasetJsonConverter());

// Now use with JsonSerializer
string json = JsonSerializer.Serialize(dicomFile, options);

Подржани типови

Тип улазаизлазни формати
DicomFileЈСОН, КСМЛ
DatasetЈСОН, КСМЛ
Dataset[]ЈСОН, КСМЛ

Očuvanje podataka

Серијализација прецизно чува:

  • Svi DICOM oznake i vrednosti
  • Репрезентације вредности (ВР)
  • Снежне секције
  • Приватни тагови
  • Масовне референце података
  • Специјалне вредности пловила (наН, бесконачност)

Уобичајени случајеви

  • Веб гледаоци: Сервирајте ДИЦОМ метадане за претраживаче медицинске слике.
  • REST APIs: Изградите здравствене АПИ које размјењују DICOM податке у JSON формату.
  • Аналитика података: Експортирајте метадане ДИЦОМ-а за анализу у цеви за обраду подата.
  • Интеграција: Прикључите наследни ПАЦС са модерним платформама здравствене заштите заснованим на облаку.
  • Debugging: Kreirajte ljudsko čitljive predstavke podataka DICOM-a za rešavanje problema.
  • Архивирање: Складиштење ДИКОМ метада у базама података докумената као што су МонгоДБ или Еластицсеарх.

Најбоља пракса

  • Лиценца прво: Иницијалишете мерено лиценцирање пре било какве конверзије како бисте избегли ограничења процене.
  • Употреба токова: За велике датотеке или веб услуге, користите методе засноване на току за ефикасност меморије.
  • Асинц операције: У веб апликацијама користите методе асинца како бисте избегли блокирање трака.
  • Валидација кружних путовања: Циклуси тестирања сериализације/десериализација како би се осигурала интегритет података.
  • Стандардна усклађеност: Употреба подразумеваних опција за DICOM PS3.18 поштовање; не-стандардне опције могу да прекину треће стране.
  • УТФ-8 кодирање: Методе струје користе УТF-8 код, идеалан за веб АПИ и операције датотека.

Операција резюме

OperationInputизлазMethod
SerializeDatasetструја / StreamSerialize
SerializeDicomFileструја / StreamSerialize
SerializeСписак података[уреди]струја / StreamSerialize
Deserializeструја / StreamDatasetDeserialize
Deserializeструја / StreamDicomFileDeserializeFile
Deserializeструја / StreamСписак података[уреди]DeserializeList

FAQ

** Да ли је потребна библиотека треће стране?**То је самостална АПИ која користи само .NET уграђену подршку за ЈСОН/КСМЛ.

**Да ли је JSON излаз компаније DICOM Web Services у складу?**Да. Стандардни излаз следи спецификације ДИЦОМ ПС3.18.

** Могу ли прилагодити формат кључа ЈСОН-а?**Да. Употреба DicomJsonSerializerOptions да контролише ознаке против кључних речи и додатних атрибута.

  • Да ли су нежељене секције сачуване? *Да. Серијализатор одржава пуну структуру ДИЦОМ-а, укључујући и нежељене секције.

**Како могу да управљам великим ДИКОМ датотекама?**Употреба метода заснованих на струји (Serialize(stream, ...) и DeserializeAsyncЗа ефикасну обраду меморије.

** Да ли је конверзија кружног путовања без губитка?**Да. Серијализација чува све ДИЦОМ податке за тачну десерјализацију назад на Објекте Датасет или ДицомФиле.

 Српски