Anonymize(DicomDataSet) Method

Summary

Anonymizes the specified dataset.

Syntax
C#
VB
C++
public virtual void Anonymize( 
   DicomDataSet dataset 
) 
Public Overloads Overridable Sub Anonymize( _ 
   ByVal dataset As DicomDataSet _ 
)  
public: 
virtual void Anonymize(  
   DicomDataSet^ dataset 
)  

Parameters

dataset
The dataset to anonymize.

Example

This example anonymize a dataset using the DICOM Anonymization basic profile.

C#
VB
using Leadtools.Dicom.Common.Anonymization; 
using Leadtools.Dicom; 
 
public void AnonymizationSample() 
{ 
   Anonymizer anonymizer = new Anonymizer(); 
   string dicomFileNameIn = Path.Combine(LEAD_VARS.ImagesDir, "IMAGE3.dcm"); 
 
   anonymizer.Progress += new EventHandler<ProgressEventArgs>(anonymizer_Progress); 
   anonymizer.BeforeTagAnonymization += new EventHandler<BeforeTagAnonymizationEventArgs>(anonymizer_BeforeTagAnonymization); 
   using (DicomDataSet source = new DicomDataSet()) 
   { 
      string oldPatientId = string.Empty; 
 
      source.Load(dicomFileNameIn, DicomDataSetLoadFlags.None); 
      oldPatientId = source.GetValue<string>(DicomTag.PatientID, string.Empty); 
      anonymizer.Anonymize(source); 
 
      // 
      // The values should not be equal because the anonymizer has provided another patient ID using the DICOM Anonymization basic profile. 
      // By default the following macro is provided for patient id: ${random_string} 
      // 
      Debug.Assert(oldPatientId != source.GetValue<string>(DicomTag.PatientID, string.Empty)); 
   } 
} 
 
void anonymizer_BeforeTagAnonymization(object sender, BeforeTagAnonymizationEventArgs e) 
{ 
   Console.WriteLine(string.Format("Tag: {0}, Current Value: {1}, New Value: {0} ", e.Element.Tag, e.CurrentValue, e.NewValue)); 
} 
 
void anonymizer_Progress(object sender, ProgressEventArgs e) 
{ 
   Console.WriteLine("Progress: " + e.Progress.ToString()); 
} 
 
static class LEAD_VARS 
{ 
   public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images"; 
} 
Imports Leadtools.Dicom.Common.Anonymization 
Imports Leadtools.Dicom 
 
Public Sub AnonymizationSample() 
   Dim anonymizer As New Anonymizer() 
   Dim dicomFileNameIn As String = Path.Combine(LEAD_VARS.ImagesDir, "IMAGE3.dcm") 
 
   AddHandler anonymizer.Progress, AddressOf anonymizer_Progress 
   AddHandler anonymizer.BeforeTagAnonymization, AddressOf anonymizer_BeforeTagAnonymization 
   Using source As New DicomDataSet() 
      Dim oldPatientId As String = String.Empty 
 
      source.Load(dicomFileNameIn, DicomDataSetLoadFlags.None) 
      oldPatientId = source.GetValue(Of String)(DicomTag.PatientID, String.Empty) 
      anonymizer.Anonymize(source) 
 
      ' 
      ' The values should not be equal because the anonymizer has provided another patient ID using the DICOM Anonymization basic profile. 
      ' By default the following macro is provided for patient id: ${random_string} 
      ' 
      Debug.Assert(oldPatientId <> source.GetValue(Of String)(DicomTag.PatientID, String.Empty)) 
   End Using 
End Sub 
 
Private Sub anonymizer_BeforeTagAnonymization(ByVal sender As Object, ByVal e As BeforeTagAnonymizationEventArgs) 
   Console.WriteLine(String.Format("Tag: {0}, Current Value: {1}, New Value: {0} ", e.Element.Tag, e.CurrentValue, e.NewValue)) 
End Sub 
 
Private Sub anonymizer_Progress(ByVal sender As Object, ByVal e As ProgressEventArgs) 
   Console.WriteLine("Progress: " + e.Progress.ToString()) 
End Sub 
 
Public NotInheritable Class LEAD_VARS 
   Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images" 
End Class 

Requirements

Target Platforms

Help Version 20.0.2019.9.19
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2019 LEAD Technologies, Inc. All Rights Reserved.

Leadtools.Dicom.Common Assembly