Aspose.Medical DICOM Anonymizer per .NET
Aspose.Medical DICOM Anonymizer per .NET è un potente API focalizzato sulla protezione della privacy del paziente nei file di immagine medica. rimuove o modifica le informazioni identificabili personali (PII) dai file DICOM, mantenendo l’integrità delle immagini mediche, assicurando il rispetto delle norme sulla privacy come HIPAA e GDPR. Costruito per le applicazioni sanitarie e i flussi di lavoro di ricerca, fornisce anonimizzazione standard-compliante con profili personalizzabili.
Installazione e Setup
- Installare il pacchetto NuGet
Aspose.Medical(Core API che fornisce la anonimizzazione). - Applicare una licenza misurata a startup per evitare limiti di valutazione: vedi Licenza a consumo .
- La revisione dei requisiti quadro nel Guida di installazione .
Piattaforme supportate
- Windows, Linux e macOS
- • Frameworks: .NET 8.0+
- Architettura: x64, ARM64 (macOS)
Rapido inizio
1) Anonimo di base
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) Anonimato con profilo predefinito
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) sostituzione personalizzata dell’informazione del paziente
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) L’anonimato in luogo
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) Caricare il profilo personalizzato dal file
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);Caratteristiche e funzionalità
Privacy Compliance
- Regolamenti supportati: *
- HIPAA - Legge sulla portabilità e la responsabilità dell’assicurazione sanitaria
- GDPR – Regolamento Generale sulla Protezione dei Dati
- DICOM PS3.15 - Profili di sicurezza e gestione del sistema
Il anonimizzatore rimuove o modifica le informazioni dei pazienti sensibili, mantenendo il valore diagnostico medico delle immagini.
Profili di riservatezza predefiniti
Profili integrati basati su standard DICOM PS3.15:
| Il profilo | Descrizione |
|---|---|
BasicProfile | L’anonimato di base rimuove i principali identificatori dei pazienti |
RetainSafePrivate | Retain Profilo Opzione Privata Sicura |
RetainUIDs | Retain UIDs Opzione Profilo |
RetainDeviceIdent | Opzione di Retain Device Identification |
RetainInstitutionIdent | Opzione di Retain Institution Identification |
RetainPatientChars | Le caratteristiche del paziente di Retain |
RetainLongFullDates | Retain Long Full Dates Opzione |
RetainLongModifDates | Mantenere l’opzione Data di modifica a lungo |
CleanDesc | Opzione delle descrizioni pulite |
CleanStructdCont | Opzioni di contenuti strutturati puliti |
CleanGraph | Opzione grafica pulita |
All | Unione di tutte le opzioni elencate |
azioni di riservatezza
Le azioni che determinano come vengono trattati i dati sensibili:
| azione | Descrizione |
|---|---|
D | Rimuovere completamente i dati |
Z | Sostituisci il valore con la stringhe a zero lunghezza |
X | Sostituire il valore con i dati dummy |
K | Mantenere il valore invariato |
C | sostituire con una frase codificata |
U | Sostituzione con un identificatore universalmente unico (UID) |
Profili di anonimo personalizzati
Carica profili personalizzati da diversi formati per il pieno controllo delle regole di anonimizzazione.
Il formato 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);- Il formato JSON: *
[
{ "Tag": "0010,0010", "Action": "Z" },
{ "Tag": "0010,0020", "Action": "D" },
{ "Tag": "0020,000D", "Action": "U" }
]ConfidentialityProfile profile = ConfidentialityProfile.LoadFromJsonFile(
"profile.json",
ConfidentialityProfileOptions.All);- Formato 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);Cassi di utilizzo comuni
- Ricerca clinica: anonimizzare le scansioni dei pazienti prima di condividere con le istituzioni di ricerca.
- Multi-Site Studies: Preparare i file DICOM per la ricerca collaborativa in tutte le strutture sanitarie.
- ** Insegnamento e formazione**: Crea set di dati anonimi per scopi di istruzione medica.
- Cloud Storage: Rimuovere PII prima di caricare immagini mediche su piattaforme cloud.
- Data Exchange: condividere in modo sicuro i dati di immagine tra le organizzazioni, mantenendo la conformità.
Migliori pratiche
- Licenza prima: inizializzare la licenza misurata prima di qualsiasi anonimizzazione per evitare i marchi d’acqua di valutazione.
- Validare i risultati: rivedere i file anonimi per assicurarsi che tutti gli identificatori richiesti siano stati rimossi.
- Backup originali: Mantenere backup sicuri dei file origini prima di essere anonimizzati.
- Profili personalizzati: Utilizzare profili utilizzati quando i profilati standard non soddisfano requisiti specifici di conformità.
- Audit trail: Mantenere i registri delle operazioni di anonimizzazione per il rispetto delle norme.
- Testare accuratamente: Verificare l’anonimato con i file di campione prima di elaborare i dati di produzione.
FAQ
**C’è bisogno di Microsoft Office o visualizzatori DICOM di terze parti?**No. Si tratta di un’API indipendente che funziona in modo autonomo.
** Posso anonimizzare i file senza creare nuove copie?**Sì, usare AnonymizeInPlace Metodo per modificare i file direttamente.
** Quali etichette sono anonimizzate per default?**Il Profilo di base predefinito rimuove il nome del paziente, l’ID, la data di nascita e altri identificatori chiave come definito nel DICOM PS3.15.
** Posso personalizzare quali campi sono anonimi?**Creare profili personalizzati utilizzando file CSV, JSON o XML, o configurare programmaticamente ConfidentialityProfile.
**I file multi-frame DICOM sono supportati?**L’anonimato funziona con i file DICOM single e multi-frame.
**Che cosa succede con le immagini incorporate e gli overlays?**Il CleanGraph L’opzione può rimuovere o sanitare gli elementi grafici che potrebbero contenere informazioni sul paziente.