
DICOM là định dạng tệp chuẩn để lưu trữ hình ảnh y tế. Trong các cuộc kiểm tra y tế, hình ảnh X-quang, tim mạch và các lĩnh vực chăm sóc sức khỏe khác thường sử dụng tệp DICOM. Nếu bạn đang phát triển một hệ thống hình ảnh y tế hoặc muốn làm việc với dữ liệu y tế, việc học cách tạo tệp DICOM một cách lập trình là rất quan trọng. Trong bài viết này, bạn sẽ học cách tạo một tệp DICOM bằng C#. Hãy bắt đầu.
Bài viết này sẽ đề cập đến các chủ đề sau:
Aspose.Medical—Bộ phát sinh tệp DICOM
Để tạo các tệp DICOM, chúng tôi sẽ sử dụng Aspose.Medical for .NET.Nó cho phép các nhà phát triển tạo, chỉnh sửa và xử lý các tệp DICOM một cách lập trình trong các ứng dụng .NET.
Cài đặt Aspose.Medical for .NET.
Vui lòng tải xuống SDK từ releases.Bạn cũng có thể cài đặt nó thông qua NuGet Package Manager bằng cách sử dụng lệnh sau:
Install-Package Aspose.Medical
Hướng dẫn từng bước để tạo một tệp DICOM
Tạo tệp DICOM một cách lập trình rất đơn giản bằng cách sử dụng Aspose.Medical for .NET. Làm theo các bước đơn giản sau để tạo một tệp DICOM cơ bản trong C#:
- Tạo một thể hiện của lớp
DicomFile
. - Thêm dữ liệu vào tệp DICOM mới được tạo bằng cách sử dụng phương thức
AddOrUpdate()
. - Cuối cùng, gọi phương thức
Save()
để lưu file DCM vào một đường dẫn cụ thể.
Dưới đây là một đoạn mã hoàn chỉnh để tạo một tệp DICOM cơ bản với một số siêu dữ liệu thiết yếu.
using Aspose.Medical.Dicom;
using Aspose.Medical.Dicom.Tags;
// Tạo một tệp DICOM trống
DicomFile dicomFile = new();
// Thêm dữ liệu vào tệp DICOM mới tạo.
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");
// Thiết lập thông tin hình ảnh (dữ liệu pixel giả)
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);
// Thiết lập hình thức (ví dụ: CT, MR, US)
dicomFile.Dataset.AddOrUpdate(Tag.Modality, "OT"); // OT = Other
// Lưu tệp DICOM
dicomFile.Save("sample.dcm");
Cách mà mã hoạt động
Lớp DicomFile
là lớp chính đại diện cho một tệp DICOM hoàn chỉnh. Nó bao gồm tất cả các siêu dữ liệu và dữ liệu hình ảnh cần thiết theo tiêu chuẩn DICOM. Dòng sau đây tạo một tệp DICOM mới, rỗng. Sau đó, bạn có thể làm đầy nó bằng siêu dữ liệu và dữ liệu pixel.
Aspose.Medical.Dicom.DicomFile dicomFile = new();
Dataset
là một tập hợp các phần tử DICOM. Các phần tử DICOM lưu trữ thông tin bệnh nhân, chi tiết quét, dữ liệu hình ảnh và nhiều hơn nữa dưới dạng thẻ. Lớp Tag
cung cấp một danh sách các thẻ DICOM tiêu chuẩn. Đoạn mã dưới đây thêm hoặc cập nhật một phần tử DICOM (trong trường hợp này, tỷ lệ khung hình thu thập) bằng cách sử dụng một thẻ đã được định nghĩa sẵn.
dicomFile.Dataset.AddOrUpdate(Tag.XAAcquisitionFrameRate, 17.95);
Một khi bạn đã thêm dữ liệu cần thiết bằng cách sử dụng các thẻ đã định nghĩa, hãy sử dụng phương thức Save()
để ghi tệp vào đĩa. Đoạn mã sau lưu tệp ở định dạng .dcm
tại đường dẫn đã chỉ định.
dicomFile.Save("sample.dcm");
Nhận Giấy phép Miễn phí
Bạn có thể nhận giấy phép tạm thời miễn phí và khám phá toàn bộ chức năng của Aspose.Medical for .NET mà không có bất kỳ hạn chế nào. Nó nhanh chóng, đơn giản và chỉ mất một phút.
Tạo các tệp DICOM DCM: Tài nguyên miễn phí
Khám phá nhiều hơn với những liên kết hữu ích này:
Kết luận
Tạo một tệp DICOM chương trình không còn phức tạp nữa. Sử dụng Aspose.Medical for .NET, bạn có thể dễ dàng tạo ra các tệp DICOM hoàn toàn tuân thủ chỉ với một vài dòng mã. Hãy thoải mái sử dụng lại ví dụ này bằng cách thêm dữ liệu pixel thực hoặc kết nối nó với các thiết bị hình ảnh.
Nếu bạn có câu hỏi hoặc cần bất kỳ sự giúp đỡ nào khi làm việc với các tệp DICOM, xin vui lòng liên hệ với chúng tôi trên support forum.Đội ngũ hỗ trợ và cộng đồng luôn sẵn sàng trợ giúp.