Aspose.Medical DICOM Anonymizer para .NET
Aspose.Medical DICOM Anonymizer para .NET é uma poderosa API focada em proteger a privacidade do paciente em arquivos de imagem médica. Elimina ou modifica informações pessoalmente identificáveis (PII) dos arquivo DICEM ao mesmo tempo que mantém a integridade das imagens médicas, garantindo o cumprimento com as regulamentações de Privacidade como HIPAA e GDPR. Construído para aplicações sanitárias e fluxos de trabalho de pesquisa, fornece anonimização padrão com perfis personalizáveis.
Instalação e Setup
- Instale o pacote NuGet
Aspose.Medical(Core API que permite a anonimização). - Aplique uma licença medida na startup para evitar limites de avaliação: ver Licenciamento Ponderado .
- Revisão dos requisitos estruturais na Guia de instalação .
Plataformas suportadas
- OS: Windows, Linux e MacOS
- Frameworks: * .NET 8.0 +
- Arquitetura: x64 e ARM64 (macOS)
Início rápido
1) Anonimização básica
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) Anonimização com perfil predefinido
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) Substituição de informações personalizadas do paciente
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) Anonimização no local
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) Carregar perfil personalizado do arquivo
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);Características e Funcionalidade
Conformidade de Privacidade
- Regulamentos apoiados: *
- HIPAA - Lei de Responsabilidade e Portabilidade do Seguro de Saúde
- GDPR - Regulamento Geral de Proteção de Dados
- DICOM PS3.15 - Perfil de segurança e gerenciamento de sistemas
O anonimizador remove ou modifica informações sensíveis do paciente ao mesmo tempo que preserva o valor de diagnóstico médico das imagens.
Profissões de confidencialidade predefinidas
Os perfis construídos com base nos padrões DICOM PS3.15:
| Profilação | Descrição |
|---|---|
BasicProfile | Anonimização básica removendo identificadores do paciente básico |
RetainSafePrivate | Mantenha o perfil de opções privadas seguras |
RetainUIDs | Retain UIDs Opção Profilo |
RetainDeviceIdent | Opção de identificação de dispositivos de retenção |
RetainInstitutionIdent | Opção de Identificação Institucional de Retain |
RetainPatientChars | Opção de características do paciente Retain |
RetainLongFullDates | Opção de data completa de longa duração |
RetainLongModifDates | Mantenha a opção de data de alteração de longo prazo |
CleanDesc | Descrições limpas Opção |
CleanStructdCont | Opção de conteúdo limpo estruturado |
CleanGraph | Opção de gráficos limpos |
All | União de todas as opções listadas |
Ações de confidencialidade
Ações que determinam como os dados sensíveis são processados:
| Ação | Descrição |
|---|---|
D | Remova os dados completamente |
Z | Substituir o valor com uma faixa de comprimento zero |
X | Substituir o valor com dados dummy |
K | Mantenha o valor inalterado |
C | Substituir com uma frase codificada |
U | Substituir com um identificador universalmente único (UID) |
Perfil de anonimato personalizado
Carregar perfis personalizados de vários formatos para o controle completo sobre as regras de anonimato.
- Formato de 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);- 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);Casos comuns de uso
- ** Pesquisa clínica**: Anonimiza os scans do paciente antes de compartilhar com instituições de pesquisa.
- Multi-Site Studies: Prepare arquivos DICOM para pesquisas colaborativas em instalações de saúde.
- O ensino e a formação: Crie conjuntos de dados anónimos para fins de educação médica.
- Cloud Storage: Remova PII antes de carregar imagens médicas para plataformas em nuvem.
- Data Exchange: compartilhar dados de imagem com segurança entre organizações, mantendo o cumprimento.
Melhores Práticas
- Licença primeiro: Inicializa a licença marcada antes de qualquer anonimização para evitar os sinais de avaliação.
- Validação de resultados: Revise arquivos anónimos para garantir que todos os identificadores necessários foram removidos.
- Backup original: Mantenha backups seguros dos arquivos originais antes da anonimização.
- Profiles personalizados: Use perfis personalizadas quando os perfís padrão não atendem a requisitos específicos de conformidade.
- Audit trail: Manter registros de operações de anonimização para cumprimento regulamentar.
- Teste cuidadosamente: Verifique a anonimização com os arquivos de amostra antes de processar os dados de produção.
FAQ
**Precisamos do Microsoft Office ou de terceiros DICOM?**Não. É uma API independente que funciona independentemente.
** Posso anonimizar arquivos sem criar novas cópias?**Sim – Use AnonymizeInPlace Modificar os arquivos diretamente.
** Que tags são anonimizados por padrão?**O perfil básico padrão remove o nome do paciente, ID, data de nascimento e outros identificadores-chave, conforme definido no DICOM PS3.15.
** Posso personalizar quais campos são anónimos?**Criar perfis personalizados usando arquivos CSV, JSON ou XML, ou configurar programadamente o ConfidentialityProfile.
**Os arquivos multi-frame DICOM são suportados?**Sim. A anonimização funciona com arquivos DICOM single e multi-frame.
** O que acontece com imagens embutidas e sobreposições?**O que CleanGraph A opção pode remover ou sanitar elementos gráficos que possam conter informações do paciente.