Provides support for anonymized DICOM files.
[DefaultMemberAttribute("Item")]public class Anonymizer : NotifyPropertyChanged
<DefaultMemberAttribute("Item")>Public Class AnonymizerInherits NotifyPropertyChangedImplements System.ComponentModel.INotifyPropertyChanged
[DefaultMemberAttribute("Item")]public ref class Anonymizer : public NotifyPropertyChanged, System.ComponentModel.INotifyPropertyChanged
The Anonymizer class provides you with the ability to anonymize DICOM files using macros. The Anonymizer is created with default macros that can be replaced or you can add your own.
This example anonymizes a dataset using the DICOM Anonymization basic profile.
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.AnonymizationImports Leadtools.DicomPublic Sub AnonymizationSample()Dim anonymizer As New Anonymizer()Dim dicomFileNameIn As String = Path.Combine(LEAD_VARS.ImagesDir, "IMAGE3.dcm")AddHandler anonymizer.Progress, AddressOf anonymizer_ProgressAddHandler anonymizer.BeforeTagAnonymization, AddressOf anonymizer_BeforeTagAnonymizationUsing source As New DicomDataSet()Dim oldPatientId As String = String.Emptysource.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 UsingEnd SubPrivate 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 SubPrivate Sub anonymizer_Progress(ByVal sender As Object, ByVal e As ProgressEventArgs)Console.WriteLine("Progress: " + e.Progress.ToString())End SubPublic NotInheritable Class LEAD_VARSPublic Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images"End Class
Help Collections
Raster .NET | C API | C++ Class Library | HTML5 JavaScript
Document .NET | C API | C++ Class Library | HTML5 JavaScript
Medical .NET | C API | C++ Class Library | HTML5 JavaScript
Medical Web Viewer .NET
Multimedia
Direct Show .NET | C API | Filters
Media Foundation .NET | C API | Transforms
Supported Platforms
.NET, Java, Android, and iOS/macOS Assemblies
Imaging, Medical, and Document
C API/C++ Class Libraries
Imaging, Medical, and Document
HTML5 JavaScript Libraries
Imaging, Medical, and Document
