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
- Instalacja pakietu NuGet
Aspose.Medical(Kier API umożliwia anonimowość) - Wniosek o licencję na start-up, aby uniknąć ograniczeń oceny: zobacz Licencjonowanie według zużycia .
- Przegląd wymogów ramowych w Instalacja przewodnik .
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:
| Profil | Opis |
|---|---|
BasicProfile | Podstawowa anonimowość usuwa podstawowe identyfikatory pacjentów |
RetainSafePrivate | Utrzymanie bezpiecznego profilu opcji prywatnych |
RetainUIDs | Retain UIDs Option Profil |
RetainDeviceIdent | Opcja identyfikacji urządzeń |
RetainInstitutionIdent | Opcja identyfikacji instytucji Retain |
RetainPatientChars | Opcja charakterystyczna pacjenta |
RetainLongFullDates | Utrzymanie długich pełnych dat opcji |
RetainLongModifDates | Utrzymanie długiej modyfikacji daty opcji |
CleanDesc | Opcja czystych opcji |
CleanStructdCont | Opcja czystego strukturowanego treści |
CleanGraph | Opcja czystej grafiki |
All | Unia wszystkich wymienionych opcji |
Działania poufności
Działania, które określają sposób przetwarzania danych wrażliwych:
| Akcja | Opis |
|---|---|
D | całkowicie usunąć dane |
Z | Zastąpić wartość za pomocą łańcucha zerowego długości |
X | Wymiana wartości za pomocą danych dummy |
K | Utrzymuj wartość niezmienioną |
C | Zastąpić kodowaną frazą |
U | Zastą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 StudyInstanceUIDConfidentialityProfile 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.