Skip to main content
Skip table of contents

Federated Network Components

Federated Network (FN) was developed in collaboration with MIDRC, ARPA-H, NIBIB, and ACR to enable the creation of distributed medical imaging and clinical data registries. FN is an application currently hosted on ACR Connect, free software that is installed behind health facility firewalls, providing secure and seamless data handling. With FN, facilities can build patient cohorts and extract demographic information into an index. While the imaging and clinical data remain at the facility, the index is then sent to a central data repository, such as ACR Data Analysis and Research Toolkit (DART), where central analysts can create cohorts for federated jobs. In addition, the data repository can launch federated jobs (e.g. AI algorithms) that run at facilities and return results to the central repository.

Though the libraries below are extensible to any platform, they are currently being utilized on a tech stack including ACR Connect, ACR DART, and AI-LAB.

image-20241114-204343.png

The ACR is committed to open science and all components developed under this collaboration are available as open source software described in the table below:

Component

Description

Source

Index-Creation

This C#.NET library source code takes DICOM files, parses them, and generates a metadata index in JSON format that conforms to the ARPA-H-BDF Metadata Specification

Coming soon

Index-Ingestion

This Nifi job script source code parses a file indexed according the standard described in ARPA-H-BDF Metadata Specification and packaged as a JSON file.  This script parses the JSON index and stores it in a JSON format for use in Elastic Search or other JSON repositories such as Mongo DB.

OS_FN_Ingestion.zip

 

Federated-Central-Orchestration

This C#.NET library source code handles the central business logic for federated jobs.  When a job is “triggered” for a given multi-site cohort based on the standard index (ARPA-H-BDF Metadata Specification), it creates site-specific jobs that are triggered from each site’s client.  It also receives updates from the clients so that the status of the federated job is understood by the central user.  Finally, results of the federated algorithm are also received and stored.

acrdart-federated-job-lib.zip

 

Federated-data-contracts

This C#.NET library source code contains the data contracts used between the local client orchestrator (AI-LAB) and the central orchestrator (DART).  This facilitates processes such as how to retrieve the job from the central orchestrator (DART) and provide continual updates of job status.  It is also responsible for the definition of the final payload that is returned to the central orchestrator.

acrdart-federated-job-api-contract.zip

 

Federated Client Processing

This C#.NET library source code performs the communication tasks associated with the local AI performer (AI-LAB) interacting with the central orchestrator (DART).  This includes polling to retrieve the jobs from the orchestrator and begin local execution, updating status for the central orchestrator and returning the payload.

acrdart-federated-job-api-client.zip

 

MIDRC/ACR radiology report deidentifier

This python-based Connect utility source code wraps the MIDRC Stanford Penn De-identifier so that it accepts CSV, XLSX or JSON inputs, adds to the data files for the hide-in-plain-sight categories, and has improved logging. A Docker file and Windows executable version (Pyinstaller) of this utility is also provided. For these implementations, the model files are included.

MIDRC-ACR_report_de-id.zip

MIDRC-ACR_report_de-id_windows_exe.zip

Definitions:

DART (Data Archive and Research Toolkit) - is a resource managed by the ACR to conduct research.   DART hosts a variety of open source and commercial tools for multi-modal research. In the context of creating federated jobs, DART is used as the central orchestrator.

ACR CONNECT – ACR connect is an infrastructure managed by the ACR that includes a variety of cloud and local components designed to facilitate bi-directional communication including local data ingestion, data processing, data upload, etc. In the context of federated learning, ACR Connect serves as an interface to local systems and a “host” for the relevant workflow applications (e.g. AI-Lab, Federated Learning).

AI-LAB – Is a local application hosted on ACR-Connect in the context of Federated Learning.  It serves as the local performer that receives and executed federated jobs on behalf of a central orchestrator.

Federated Network – A local application designed to index and manage local data repositories for use in federated workflow.

Terms and Conditions

The code in the above table is shared under the Apache 2.0 License: LICENSE .

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.