
DICOM je standardní formát souboru pro ukládání lékařských obrazů. V lékařských vyšetřeních se DICOM soubory široce používají v radiologii, kardiologii a dalších oblastech zdravotní péče. Pokud vyvíjíte systém pro lékařské zobrazování nebo chcete pracovat s lékařskými daty, je zásadní naučit se programově vytvářet DICOM soubory. V tomto příspěvku se naučíte, jak vytvořit DICOM soubor pomocí C#. Pojďme začít.
Tento článek bude pokrývat následující témata:
- Aspose.Medical—Generátor souborů DICOM
- Návod krok za krokem k vytvoření souboru DICOM
- Prozkoumejte bezplatné zdroje
Aspose.Medical—Generátor DICOM souborů
Pro vytváření DICOM souborů použijeme Aspose.Medical for .NET.Umožňuje vývojářům programově vytvářet, upravovat a zpracovávat DICOM soubory v aplikacích .NET.
Nainstalujte Aspose.Medical for .NET.
Prosím, stáhněte si SDK z releases.Můžete jej také nainstalovat pomocí správce balíčků NuGet pomocí následujícího příkazu:
Install-Package Aspose.Medical
Návod krok za krokem pro vytvoření souboru DICOM
Vytváření DICOM souborů programově je jednoduché pomocí Aspose.Medical for .NET. Postupujte podle těchto jednoduchých kroků, abyste vygenerovali základní DICOM soubor v C#:
- Vytvořte instanci třídy
DicomFile. - Přidejte data do nově vytvořeného souboru DICOM pomocí metody
AddOrUpdate(). - Nakonec zavolejte metodu
Save(), abyste uložili soubor DCM na určenou cestu.
Zde je kompletní kódový úryvek pro vytvoření základního souboru DICOM s některými základními metadata.
using Aspose.Medical.Dicom;
using Aspose.Medical.Dicom.Tags;
// Vytvořte prázdný soubor DICOM
DicomFile dicomFile = new();
// Přidejte data do nově vytvořeného souboru DICOM
dicomFile.Dataset.AddOrUpdate(Tag.PatientID, "JD123456");
dicomFile.Dataset.AddOrUpdate(Tag.PatientName, "John Doe");
dicomFile.Dataset.AddOrUpdate(Tag.PatientBirthDate, new DateTime(1985, 7, 20));
dicomFile.Dataset.AddOrUpdate(Tag.PatientSex, 0);
dicomFile.Dataset.AddOrUpdate(Tag.StudyDate, DateTime.Now);
dicomFile.Dataset.AddOrUpdate(Tag.StudyID, "Study001");
// Nastavit informace o obrázku (dummy pixel data)
dicomFile.Dataset.AddOrUpdate(Tag.Rows, 256);
dicomFile.Dataset.AddOrUpdate(Tag.Columns, 256);
dicomFile.Dataset.AddOrUpdate(Tag.BitsAllocated, 8);
byte[] pixelData = new byte[256 * 256]; // 256x256 grayscale image
dicomFile.Dataset.AddOrUpdate(Tag.PixelData, pixelData);
// Nastavit modalitu (např. CT, MR, US)
dicomFile.Dataset.AddOrUpdate(Tag.Modality, "OT"); // OT = Other
// Uložte soubor DICOM
dicomFile.Save("sample.dcm");
Jak kód funguje
Třída DicomFile je hlavní třídou, která představuje kompletní DICOM soubor. Obsahuje všechna metadata a obrazová data požadovaná standardem DICOM. Následující řádek vytváří nový, prázdný DICOM soubor. Můžete jej poté naplnit metadaty a daty pixelů.
Aspose.Medical.Dicom.DicomFile dicomFile = new();
Dataset je kolekce DICOM prvků. DICOM prvky ukládají informace o pacientech, podrobnosti o skenování, obrazová data a další ve formě tagů. Třída Tag poskytuje seznam standardních DICOM tagů. Následující kód přidává nebo aktualizuje DICOM prvek (v tomto případě rychlost snímání) pomocí předdefinovaného tagu.
dicomFile.Dataset.AddOrUpdate(Tag.XAAcquisitionFrameRate, 17.95);
Jakmile máte přidaná potřebná data pomocí předdefinovaných značek, použijte metodu Save() k uložení souboru na disk. Následující segment kódu ukládá soubor ve formátu .dcm na zadanou cestu.
dicomFile.Save("sample.dcm");
Získejte bezplatnou licenci
Můžete získat bezplatnou dočasnou licenci a prozkoumat plnou funkcionalitu Aspose.Medical for .NET bez jakýchkoli omezení. Je to rychlé, jednoduché a trvá to jen minutu.
Vytvořte soubory DICOM DCM: Bezplatné zdroje
Prozkoumejte více s těmito užitečnými odkazy:
Závěr
Vytváření DICOM souboru programově již není složité. Pomocí Aspose.Medical for .NET můžete snadno generovat plně kompatibilní DICOM soubory s pouze několika řádky kódu. Nevzpírejte se tomuto příkladu přidáním skutečných pixelových dat nebo jeho propojením s obrazovými zařízeními.
Pokud máte dotazy nebo potřebujete pomoc s prací se soubory DICOM, neváhejte nás kontaktovat na našem support forum.Tým podpory a komunita jsou vždy připraveni pomoci.