Aspose.Medical DICOM Anonymizer สําหรับ .NET
Aspose.Medical DICOM Anonymizer for .NET เป็น API ที่แข็งแกร่งที่มุ่งเน้นไปที่ การปกป้องความเป็นส่วนตัวของผู้ป่วย ในไฟล์ภาพทางการแพทย์ มันจะลบหรือปรับเปลี่ยนข้อมูลที่ระบุตัวตน (PII) จากไฟล์ DICO ในขณะที่รักษาความสมบูรณ์ของภาพทางแพทย์เพื่อให้แน่ใจว่าการปฏิบัติตามกฎระเบียบความเป็นอยู่เช่น HIPAA และ GDPR สร้างขึ้นสําหรับแอพพลิเคชันการดูแลสุขภาพและกระแสการทํางานของการวิจัยก็ให้การสอดคล้องกับมาตรฐานด้วยโปรไฟล์ที่กําหนดเอง
การติดตั้งและการตั้งค่า
- ติดตั้งแพคเกจ NuGet
Aspose.Medical( API หลักอนุญาตให้匿名) - ใช้ใบอนุญาตที่วัดใน startup เพื่อหลีกเลี่ยงข้อ จํากัด การประเมิน: ด การให้ใบอนุญาตที่มีการวัด .
- การตรวจสอบข้อกําหนดของกรอบใน คู่มือการติดตั้ง .
แพลตฟอร์มที่สนับสนุน
- **ระบบปฏิบัติการ: ** Windows, Linux, macOS
- Frameworks: .NET 8.0+
- สถาปัตยกรรม: x64, ARM64 (macOS)
เริ่มต้นอย่างรวดเร็ว
1) การระบุชื่อพื้นฐาน
using Aspose.Medical.Dicom;
using Aspose.Medical.Dicom.Anonymization;
// Load and anonymize a DICOM file
DicomFile dcm = DicomFile.Open("patient_scan.dcm");
Anonymizer anonymizer = new();
DicomFile anonymized = anonymizer.Anonymize(dcm);
anonymized.Save("anonymized_scan.dcm");2) Anonymization ด้วยโปรไฟล์ที่กําหนดไว้
using Aspose.Medical.Dicom;
using Aspose.Medical.Dicom.Anonymization;
// Create a confidentiality profile with specific options
ConfidentialityProfile profile = ConfidentialityProfile.CreateDefault(
ConfidentialityProfileOptions.CleanGraph);
// Create anonymizer with the profile
Anonymizer anonymizer = new(profile);
// Load and anonymize
DicomFile dcm = DicomFile.Open("input.dcm");
DicomFile anonymized = anonymizer.Anonymize(dcm);
anonymized.Save("anonymized_output.dcm");3) การเปลี่ยนข้อมูลผู้ป่วยที่กําหนดเอง
using Aspose.Medical.Dicom;
using Aspose.Medical.Dicom.Anonymization;
// Create profile with custom replacement values
ConfidentialityProfile profile = new()
{
PatientName = "ANONYMOUS PATIENT",
PatientId = "00000000"
};
Anonymizer anonymizer = new(profile);
DicomFile dcm = DicomFile.Open("input.dcm");
DicomFile anonymized = anonymizer.Anonymize(dcm);
anonymized.Save("custom_anonymized.dcm");4) การระบุชื่อในสถานที่
using Aspose.Medical.Dicom;
using Aspose.Medical.Dicom.Anonymization;
// Modify file directly without creating a new instance
DicomFile dcm = DicomFile.Open("input.dcm");
Anonymizer anonymizer = new();
anonymizer.AnonymizeInPlace(dcm);
dcm.Save("inplace_anonymized.dcm");5) ดาวน์โหลดโปรไฟล์ที่กําหนดเองจากไฟล์
using Aspose.Medical.Dicom;
using Aspose.Medical.Dicom.Anonymization;
// Load custom profile from JSON file
ConfidentialityProfile profile = ConfidentialityProfile.LoadFromJsonFile(
"custom_profile.json",
ConfidentialityProfileOptions.All);
Anonymizer anonymizer = new(profile);
DicomFile dcm = DicomFile.Open("input.dcm");
DicomFile anonymized = anonymizer.Anonymize(dcm);คุณสมบัติและฟังก์ชั่น
การปฏิบัติตามความเป็นส่วนตัว
กฎระเบียบที่ได้รับการสนับสนุน:
- HIPAA - กฎหมายการพกพาและรับผิดชอบการประกันสุขภาพ
- GDPR - กฎหมายการคุ้มครองข้อมูลทั่วไป
- DICOM PS3.15 - ข้อมูลจําเพาะด้านความปลอดภัยและการจัดการระบบ
Anonymizer จะลบหรือแก้ไขข้อมูลผู้ป่วยที่มีความไวในขณะที่รักษาค่าการวินิจฉัยทางการแพทย์ของภาพ
โปรไฟล์ความเป็นส่วนตัวที่กําหนดเอง
โปรไฟล์ที่สร้างขึ้นตามมาตรฐาน DICOM PS3.15:
| โปรไฟล | คําอธิบาย |
|---|---|
BasicProfile | การ匿名ฐานลบตัวระบุผู้ป่วยหลัก |
RetainSafePrivate | บันทึกโปรไฟล์ตัวเลือกส่วนตัวที่ปลอดภัย |
RetainUIDs | Retain UIDs ตัวเลือกโปรไฟล์ |
RetainDeviceIdent | ตัวเลือกการระบุอุปกรณ์ Retain |
RetainInstitutionIdent | Retain Institution การระบุตัวเลือก |
RetainPatientChars | Retain ตัวเลือกลักษณะผู้ป่วย |
RetainLongFullDates | การเก็บรักษาระยะยาวเต็มวันที่ตัวเลือก |
RetainLongModifDates | ป้องกันการเปลี่ยนแปลงที่ยาวนานตัวเลือก |
CleanDesc | ตัวเลือกการอธิบายที่สะอาด |
CleanStructdCont | ตัวเลือกเนื้อหาโครงสร้างบริสุทธิ์ |
CleanGraph | ตัวเลือกกราฟิกสะอาด |
All | สหภาพของตัวเลือกทั้งหมดที่ระบุไว้ |
การกระทําความเป็นส่วนตัว
การดําเนินการที่กําหนดวิธีการที่เราประมวลผลข้อมูลที่ไว:
| การกระทํา | คําอธิบาย |
|---|---|
D | ลบข้อมูลอย่างสมบูรณ์ |
Z | เปลี่ยนค่าด้วยเส้นผ่าศูนย์กลาง |
X | เปลี่ยนค่าด้วยข้อมูล Dummy |
K | รักษาค่าที่ไม่มีการเปลี่ยนแปลง |
C | เปลี่ยนด้วยคําอธิบาย |
U | เปลี่ยนด้วยตัวระบุที่ไม่ซ้ํากันทั่วโลก (UID) |
โปรไฟล์ที่กําหนดเอง
ดาวน์โหลดโปรไฟล์ที่กําหนดเองจากรูปแบบต่างๆเพื่อควบคุมกฎการ匿名
รูปแบบ CSV :
TagPattern;Action
0010,0010;Z // Anonymize PatientName
0010,0020;D // Remove PatientID
0020,000D;U // Replace StudyInstanceUIDConfidentialityProfile profile = ConfidentialityProfile.LoadFromCsvFile(
"profile.csv",
ConfidentialityProfileOptions.All);** JSON รูปแบบ:**
[
{ "Tag": "0010,0010", "Action": "Z" },
{ "Tag": "0010,0020", "Action": "D" },
{ "Tag": "0020,000D", "Action": "U" }
]ConfidentialityProfile profile = ConfidentialityProfile.LoadFromJsonFile(
"profile.json",
ConfidentialityProfileOptions.All);*รูปแบบ XML: *
<root>
<item>
<tag>0010,0010</tag>
<action>Z</action>
</item>
<item>
<tag>0010,0020</tag>
<action>D</action>
</item>
</root>ConfidentialityProfile profile = ConfidentialityProfile.LoadFromXmlFile(
"profile.xml",
ConfidentialityProfileOptions.All);กรณีที่ใช้ทั่วไป
- การวิจัยทางคลินิก: การสแกนผู้ป่วยก่อนที่จะแบ่งปันกับหน่วยงานวิจัย
- Multi-Site Studies: การเตรียมไฟล์ DICOM สําหรับการวิจัยร่วมกันทั่วโรงพยาบาล
- การสอนและการฝึกอบรม: สร้างชุดข้อมูลที่ไม่ระบุชื่อเพื่อวัตถุประสงค์การศึกษาทางการแพทย์
- ** Cloud Storage**: ลบ PII ก่อนที่จะอัปโหลดภาพทางการแพทย์ไปยังแพลตฟอร์มคลาวด์
- การแลกเปลี่ยนข้อมูล: การแบ่งปันข้อมูลภาพได้อย่างปลอดภัยระหว่างองค์กรในขณะที่รักษาความสมบูรณ์
แนวทางที่ดีที่สุด
- ใบอนุญาตครั้งแรก: เริ่มต้นการรับรองที่วัดก่อนการ匿名化ใด ๆ เพื่อหลีกเลี่ยงการประเมินเครื่องหมายน้ํา
- ผลลัพธ์การยืนยัน: ตรวจสอบไฟล์ที่ไม่ได้รับชื่อเพื่อให้แน่ใจว่าระบุข้อมูลที่จําเป็นทั้งหมดถูกลบ
- สํารองข้อมูลเดิม: เก็บรหัสลับที่ปลอดภัยของไฟล์เดิมก่อนการ匿名化
- โปรไฟล์ที่กําหนดเอง: ใช้โปรโฟลเดอร์ที่ปรับแต่งเมื่อโปรเฟิลมาตรฐานไม่ตอบสนองความต้องการการปฏิบัติตามที่เฉพาะเจาะจง
- เส้นทางการตรวจสอบ: การรักษาบันทึกของการดําเนินงานอัญมณีเพื่อการปฏิบัติตามกฎระเบียบ
- ทดสอบอย่างเข้มงวด: ตรวจสอบการระบุชื่อด้วยไฟล์ตัวอย่างก่อนการประมวลผลข้อมูลการผลิต
FAQ
ต้องใช้ Microsoft Office หรือผู้ชม DICOM ของบุคคลที่สามหรือไม่ไม่. มันเป็น API แบบแยกต่างหากซึ่งทํางานได้อย่างอิสระ
** ฉันสามารถ匿名ไฟล์ได้โดยไม่ต้องสร้างสําเนาใหม่ได้หรือไม่**ใช่ ใช AnonymizeInPlace วิธีการแก้ไขไฟล์โดยตรง
** แท็กใดจะถูก匿名โดย default?**โปรไฟล์พื้นฐานแบบกําหนดเองจะลบชื่อผู้ป่วย ID, วันที่เกิดและตัวระบุหลักอื่น ๆ ตามที่กําหนดไว้ใน DICOM PS3.15
** ฉันสามารถกําหนดค่าฟิลด์ที่ถูก匿名ได้หรือไม่**ใช่ การสร้างโปรไฟล์ที่กําหนดเองโดยใช้ไฟล์ CSV, JSON หรือ XML หรือการกําหนดค่าแบบโปรแกรม ConfidentialityProfile.
ไฟล์ DICOM มัลติเฟรมได้รับการสนับสนุนหรือไม่ใช่ Anonymization works with single และ multi-frame DICOM files.
** สิ่งที่เกิดขึ้นกับภาพรวมและแบนเลื่อน?**อะไร CleanGraph ตัวเลือกสามารถลบหรือทําความสะอาดองค์ประกอบกราฟิกที่อาจมีข้อมูลผู้ป่วย