Fo Dicom.Codecs Save

Cross-platform Dicom native codecs for fo-dicom

Project README

fo-dicom.Codecs

NuGet github Build Status

fo-dicom logoEfferent logo

This is collaborative project mantained by Fellow Oak Dicom and Efferent Health, LLC. The codecs in this repository are written in pure C/C++ code and wrapped with C# and netstandard2.0. The supported platforms so far are:

  • Windows 64-bit (tested with Windows 10/11)
  • Linux 64-bit Intel and ARM architectures (tested with Ubuntu 16/18/20 Desktop and Server)
  • MacOS 64-bit Intel and Apple architectures (tested with Ventura/Sonoma)

Supported CODECs

The following CODECS are implemented:

  • JPEG 2000 Image Compression (Lossless Only)
  • JPEG 2000 Image Compression
  • JPEG Baseline (Process 1): Default Transfer Syntax for Lossy JPEG 8 Bit Image Compression
  • JPEG Extended (Process 2 & 4): Default Transfer Syntax for Lossy JPEG 12 Bit Image Compression - (Process 4 only)
  • JPEG Lossless, Non-Hierarchical (Process 14)
  • JPEG Lossless, Non-Hierarchical, First-Order Prediction (Process 14 [Selection Value 1]): Default Transfer Syntax for Lossless JPEG Image Compression
  • JPEG-LS Lossless Image Compression
  • JPEG-LS Lossy (Near-Lossless) Image Compression
  • RLE Lossless

Usage

  • Add the standard fo-dicom nuget packages to your project (tested with 4.0.8 and 5.0.3)

With fo-dicom 4.0

  • Add the nuget package to your .net Standard or .net Core project (minimum version is 2.0)
  • Add the standard fo-dicom nuget packages to your project (version 4.0.x)
  • At the beginning of your application, replace the transcoder manager, as:
    Dicom.Imaging.Codec.TranscoderManager.SetImplementation(new Dicom.Imaging.NativeCodec.NativeTranscoderManager());
    

With fo-dicom 5.0

  • Add the nuget package to your .net Standard or .NET project (minimum version is .NET 5.0)
  • Add the standard fo-dicom nuget packages to your project (version 5.0.x)
  • At the beginning of your application, replace the transcoder manager, as:
    new DicomSetupBuilder()
      .RegisterServices(s => s.AddFellowOakDicom().AddTranscoderManager<FellowOakDicom.Imaging.NativeCodec.NativeTranscoderManager>())
      .SkipValidation()
      .Build();
    
Open Source Agenda is not affiliated with "Fo Dicom.Codecs" Project. README Source: Efferent-Health/fo-dicom.Codecs
Stars
60
Open Issues
7
Last Commit
1 month ago

Open Source Agenda Badge

Open Source Agenda Rating