Aspose.Medical DICOM Anonymizer dla .NET

Aspose.Medical DICOM Anonymizer dla .NET jest potężnym API skoncentrowanym na ochronie prywatności pacjenta w plikach obrazowych medycznych. usuwa lub modyfikuje osobowo identyfikowalne informacje (PII) z plików DIKOM przy jednoczesnym utrzymaniu integralności obrazów lekarskich, zapewniając zgodność z przepisami dotyczącymi poufności, takimi jak HIPAA i GDPR.

Instalacja i ustawienie

wspierane platformy

  • System operacyjny: Windows, Linux, macOS
  • Ramy: .NET 8.0+
  • Archiwum: x64, ARM64 (macOS)

Szybki start

1) podstawowa anonimowość

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) Anonimowość z profilem uprzednio zdefiniowanym

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) Wymiana indywidualnych informacji o pacjentach

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) Anonimowość w miejscu

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) Pobierz przyzwoity profil z pliku

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);

Charakterystyka i funkcjonalność

zgodność prywatności

  • Wspierane przepisy: *
  • HIPAA - Ustawa o przenośności i odpowiedzialności ubezpieczenia zdrowotnego
  • GDPR - Ogólne rozporządzenie o ochronie danych
  • DICOM PS3.15 - Profil bezpieczeństwa i zarządzania systemami

Anonimizator usuwa lub modyfikuje wrażliwe informacje o pacjencie, zachowując jednocześnie wartość diagnostyczną obrazów.

Wstępnie zdefiniowane profile poufności

Wbudowane profile oparte na standardach DICOM PS3.15:

ProfilOpis
BasicProfilePodstawowa anonimowość usuwa podstawowe identyfikatory pacjentów
RetainSafePrivateUtrzymanie bezpiecznego profilu opcji prywatnych
RetainUIDsRetain UIDs Option Profil
RetainDeviceIdentOpcja identyfikacji urządzeń
RetainInstitutionIdentOpcja identyfikacji instytucji Retain
RetainPatientCharsOpcja charakterystyczna pacjenta
RetainLongFullDatesUtrzymanie długich pełnych dat opcji
RetainLongModifDatesUtrzymanie długiej modyfikacji daty opcji
CleanDescOpcja czystych opcji
CleanStructdContOpcja czystego strukturowanego treści
CleanGraphOpcja czystej grafiki
AllUnia wszystkich wymienionych opcji

Działania poufności

Działania, które określają sposób przetwarzania danych wrażliwych:

AkcjaOpis
Dcałkowicie usunąć dane
ZZastąpić wartość za pomocą łańcucha zerowego długości
XWymiana wartości za pomocą danych dummy
KUtrzymuj wartość niezmienioną
CZastąpić kodowaną frazą
UZastąpić uniwersalnie unikalnym identyfikatorem (UID)

Przeznaczony profil anonimowy

Pobierz dostosowane profile z różnych formatów, aby uzyskać pełną kontrolę nad zasadami anonimowości.

  • Formaty CSV: *
TagPattern;Action
0010,0010;Z  // Anonymize PatientName
0010,0020;D  // Remove PatientID
0020,000D;U  // Replace StudyInstanceUID
ConfidentialityProfile profile = ConfidentialityProfile.LoadFromCsvFile(
    "profile.csv",
    ConfidentialityProfileOptions.All);
  • Format JSON: *
[
    { "Tag": "0010,0010", "Action": "Z" },
    { "Tag": "0010,0020", "Action": "D" },
    { "Tag": "0020,000D", "Action": "U" }
]
ConfidentialityProfile profile = ConfidentialityProfile.LoadFromJsonFile(
    "profile.json",
    ConfidentialityProfileOptions.All);

• Format 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);

Często używane przypadki

  • Badania kliniczne: Anonimowe skanowanie pacjentów przed udostępnianiem z instytucjami badawczymi.
  • Multi-Site Studies: Przygotuj pliki DICOM do współpracy badawczej w całym zakładzie opieki zdrowotnej.
  • Uczenie i szkolenie: Tworzenie anonimowych zestawów danych do celów edukacji medycznej.
  • Cloud Storage: Usuń PII przed przesyłaniem obrazów medycznych na platformy w chmurze.
  • Data Exchange: Bezpieczne udostępnianie danych obrazowych między organizacjami przy jednoczesnym utrzymaniu zgodności.

Najlepsze praktyki

  • Licencja pierwsza: Inicjalizuj licencję mierzoną przed wszelką anonimowością, aby uniknąć oceny znaków wodnych.
  • Wertyfikuj wyniki: Przegląd anonimowych plików, aby upewnić się, że wszystkie wymagane identyfikatory zostały usunięte.
  • Backup oryginałów: Utrzymuj bezpieczne kopie zapasowe oryginalnych plików przed anonimowością.
  • Profily indywidualne: Użyj profilów indywidualnych, gdy standardowe profile nie spełniają określonych wymagań zgodności.
  • Audit trail: Utrzymanie rekordów operacji anonimowych w celu przestrzegania przepisów.
  • Testuj dokładnie: sprawdź anonimowość za pomocą plików próbek przed przetwarzaniem danych produkcyjnych.

FAQ

**Czy wymaga to od Microsoft Office lub widzów DICOM ze strony osób trzecich?**Nie. Jest to niezależna API, która działa samodzielnie.

** Czy mogę anonimizować pliki bez tworzenia nowych kopii?**Tak – użyj AnonymizeInPlace Metoda modyfikacji plików bezpośrednio.

**Które etykiety są anonimowe pod warunkiem domyślnym?**Podstawowy profil usuwa nazwę pacjenta, identyfikator, datę urodzenia i inne podstawowe identyfikatory określone w DICOM PS3.15.

**Czy mogę dostosować, które pola są anonimowe?**Tworzenie profilów dostosowanych za pomocą plików CSV, JSON lub XML lub programowanie ConfidentialityProfile.

** Czy pliki DICOM multi-frame są obsługiwane?**Anonimowość działa z pojedynczymi i wielowymiarowymi plikami DICOM.

** Co się dzieje z wbudowanymi obrazami i przekładniami?**W tym CleanGraph Opcja może usunąć lub odświeżyć elementy graficzne, które mogą zawierać informacje o pacjencie.

 Polski