DicomJsonSerializer का उपयोग करके एक DICOM फ़ाइल को JSON में कैसे परिवर्तित करें
यह ट्यूटोरियल दिखाता है कि कैसे C# का उपयोग करके DICOM फ़ाइलों को JSON प्रारूप में परिवर्तित करने के लिए।
DICOM को JSON में परिवर्तित करने के लाभ
- इंटरनेट का उपयोग करें:- JSON REST एपीआई और वेब सेवाओं के लिए मानक प्रारूप है।
डेटा विश्लेषण:- डेटा विश्लेषण पाइपलाइनों में DICOM मेटाडेटा को आसानी से संसाधित करें।
- संगतता के लिए *:- उन प्रणालियों के साथ मेटाडेटा साझा करें जो मूल DICOM प्रारूपों का समर्थन नहीं करते हैं।
आवश्यकताएँ: पर्यावरण को तैयार करन
- Visual Studio या किसी भी संगत .NET IDE सेट कर.
- एक नया .NET 8 एप्लिकेशन प्रोजेक्ट बनाएं।
- NuGet Package Manager से Aspose.Medical स्थापित करें।
कदम-दर-चरण गाइड DICOM को JSON में परिवर्तित करने के लिए
चरण 1: Aspose.Medical स्थापित करें
NuGet का उपयोग करके अपने परियोजना में Aspose.Medical लाइब्रेरी जोड़ें।
Install-Package Aspose.Medicalचरण 2: आवश्यक नाम स्थानों को शामिल कर
अपने कोड में आवश्यक नाम स्थानों के लिए संदर्भ जोड.
using Aspose.Medical.Dicom;
using Aspose.Medical.Dicom.Serialization;चरण 3: DICOM फ़ाइल लोड करें
डाउनलोड करें DICOM फ़ाइल आप परिवर्तित करना चाहते हैं।
DicomFile dcm = DicomFile.Open("patient_scan.dcm");चरण 4: JSON के लिए सीरियल करें
का उपयोग कर DicomJsonSerializer.Serialize DICOM फ़ाइल को JSON में परिवर्तित करने का तरीका।
string json = DicomJsonSerializer.Serialize(dcm);चरण 5: JSON आउटपुट को सहेजें या उपयोग करें
JSON को एक फ़ाइल में सहेजें या इसे सीधे आपके अनुप्रयोग में उपयोग करें।
// Save to file
File.WriteAllText("patient_scan.json", json);
// Or use directly
Console.WriteLine(json);DICOM को JSON में परिवर्तित करने के लिए पूर्ण कोड उदाहरण
यहाँ एक पूर्ण उदाहरण दिखाता है कि कैसे एक DICOM फ़ाइल को JSON में परिवर्तित करने के लिए:
using Aspose.Medical.Dicom;
using Aspose.Medical.Dicom.Serialization;
// Load the DICOM file
DicomFile dcm = DicomFile.Open("patient_scan.dcm");
// Convert to JSON
string json = DicomJsonSerializer.Serialize(dcm);
// Save to file
File.WriteAllText("patient_scan.json", json);
Console.WriteLine("DICOM file converted to JSON successfully!");
Console.WriteLine($"Output saved to: patient_scan.json");JSON प्रिंट आउटपुट
मनुष्य-पढ़ने योग्य JSON के लिए, इंडेंटेशन के साथ, उपयोग करें writeIndented पैरामीटर :
using Aspose.Medical.Dicom;
using Aspose.Medical.Dicom.Serialization;
DicomFile dcm = DicomFile.Open("patient_scan.dcm");
// Serialize with indentation for readability
string prettyJson = DicomJsonSerializer.Serialize(dcm, writeIndented: true);
File.WriteAllText("patient_scan_pretty.json", prettyJson);
Console.WriteLine("Pretty-printed JSON saved successfully!");DicomFile के बजाय डेटासेट रूपांतरण
आप केवल डेटासेट अनुभाग को परिवर्तित कर सकते हैं:
using Aspose.Medical.Dicom;
using Aspose.Medical.Dicom.Serialization;
DicomFile dcm = DicomFile.Open("patient_scan.dcm");
// Serialize only the dataset (without file meta information)
string datasetJson = DicomJsonSerializer.Serialize(dcm.Dataset);
File.WriteAllText("patient_dataset.json", datasetJson);JSON आउटपुट संरचना का उदाहरण
JSON आउटपुट डीआईसीओएम PS3.18 मानक का पालन करता है. यहाँ एक उदाहरण है कि यह कैसे दिखता है:
{
"00080005": {
"vr": "CS",
"Value": ["ISO_IR 100"]
},
"00080020": {
"vr": "DA",
"Value": ["20240115"]
},
"00080030": {
"vr": "TM",
"Value": ["143022"]
},
"00100010": {
"vr": "PN",
"Value": [
{
"Alphabetic": "DOE^JOHN"
}
]
},
"00100020": {
"vr": "LO",
"Value": ["12345"]
}
}स्ट्रीम-आधारित श्रृंखला
बड़े फ़ाइलों या वेब अनुप्रयोगों के लिए, स्ट्रीम-आधारित श्रृंखला का उपयोग करें:
using Aspose.Medical.Dicom;
using Aspose.Medical.Dicom.Serialization;
DicomFile dcm = DicomFile.Open("large_scan.dcm");
// Write directly to a file stream
using (FileStream fs = File.Create("large_scan.json"))
{
DicomJsonSerializer.Serialize(fs, dcm.Dataset);
}
Console.WriteLine("Large DICOM file serialized to JSON stream!");एकीकरण उदाहरण: वेब एपीआई में JSON भेजें
यहाँ एक HTTP क्लाइंट के साथ DICOM में JSON रूपांतरण को एकीकृत करने का तरीका है:
using Aspose.Medical.Dicom;
using Aspose.Medical.Dicom.Serialization;
using System.Net.Http;
using System.Text;
DicomFile dcm = DicomFile.Open("patient_scan.dcm");
string json = DicomJsonSerializer.Serialize(dcm);
// Send to web API
using HttpClient client = new();
var content = new StringContent(json, Encoding.UTF8, "application/json");
HttpResponseMessage response = await client.PostAsync(
"https://api.example.com/dicom/metadata",
content
);
if (response.IsSuccessStatusCode)
{
Console.WriteLine("DICOM metadata successfully sent to API!");
}उपयोग टिप्स
DICOM मेटाडेटा डिबगिंग
DICOM टैग मूल्य की जांच करने के लिए JSON रूपांतरण का उपयोग करें:
DicomFile dcm = DicomFile.Open("unknown_scan.dcm");
string json = DicomJsonSerializer.Serialize(dcm, writeIndented: true);
Console.WriteLine(json);Web Front-End के लिए संदेश भेजें
JSON ब्राउज़र-आधारित दर्शकों में DICOM मेटाडेटा प्रदर्शित करने के लिए आदर्श है:
// In ASP.NET Core controller
[HttpGet("dicom/{id}/metadata")]
public IActionResult GetMetadata(string id)
{
DicomFile dcm = DicomFile.Open($"storage/{id}.dcm");
string json = DicomJsonSerializer.Serialize(dcm);
return Content(json, "application/json");
}JSON आउटपुट में क्या शामिल है
JSON आउटपुट में शामिल हैं:
- सभी DICOM टैग उनके मूल्यों के साथ
- प्रत्येक टैग के लिए मूल्य प्रस्तुतियां (VR)
- JSON वस्तुओं के रूप में अनुक्रम आइटम
- पिक्सेल डेटा के लिए द्विआधारी विकल्प संदर्भ (BulkData)
अतिरिक्त जानकार
- JSON प्रारूप DICOM PS3.18 वेब सेवा विनिर्देशों का पालन करता है।
- बड़े द्विआधारी विकल्प (जैसे पिक्सेल डेटा) आमतौर पर संदर्भित के बजाय अंतर्निहित होते हैं।
- विशिष्ट एकीकरण आवश्यकताओं के लिए अनुकूलित श्रृंखला विकल्पों का उपयोग करने पर विचार करें।
Conclusion
इस ट्यूटोरियल ने आपको दिखाया है कि Aspose.Medical का उपयोग करके DICOM फ़ाइलों को C# में JSON प्रारूप में कैसे परिवर्तित किया जा सकता है. jSON आउटपुट आधुनिक स्वास्थ्य देखभाल एपीआई, वेब ब्राउज़र और डेटा विश्लेषण प्रणालियों के साथ अनियंत्रित एकीकरण की अनुमति देता है।