DICOM networking modules
Query-retrieve module
Query function
- openrem.remapp.netdicom.qrscu.qrscu(qr_scp_pk=None, store_scp_pk=None, implicit=False, explicit=False, move=False, query_id=None, date_from=None, date_until=None, single_date=False, time_from=None, time_until=None, modalities=None, inc_sr=False, remove_duplicates=True, filters=None, get_toshiba_images=False, get_empty_sr=False)
Query retrieve service class user function
Queries a pre-configured remote query retrieve service class provider for dose metric related objects, making use of the filter parameters provided. Can automatically trigger a c-move (retrieve) operation.
- Parameters:
qr_scp_pk (int, optional) – Database ID/pk of the remote QR SCP (Default value = None)
store_scp_pk (int, optional) – Database ID/pk of the local store SCP (Default value = None)
implicit (bool, optional) – Prefer implicit transfer syntax (preference possibly not implemented) (Default value = False)
explicit (bool, optional) – Prefer explicit transfer syntax (preference possibly not implemented) (Default value = False)
move (bool, optional) – Automatically trigger move request when query is complete (Default value = False)
query_id (str, optional) – UID of query if generated by web interface (Default value = None)
date_from (str, optional) – Date to search from, format yyyy-mm-dd (Default value = None)
date_until (str, optional) – Date to search until, format yyyy-mm-dd (Default value = None)
single_date (bool, optional) – search only on date_from, allows time_from/time_until (Default value = False)
time_from (str, optional) – Time of day to search from, format hhmm 24 hour clock, single date only (Default value = None)
time_until (str, optional) – Time of day to search until, format hhmm 24 hour clock, single date only (Default value = None)
modalities (list, optional) – Modalities to search for, options are CT, MG, DX and FL (Default value = None)
inc_sr (bool, optional) – Only include studies that only have structured reports in (unknown modality) (Default value = False)
remove_duplicates (bool, optional) – If True, studies that already exist in the database are removed from the query results (Default value = True)
filters (dictionary list, optional) – lowercase include and exclude lists for StationName and StudyDescription (Default value = None)
get_toshiba_images (bool, optional) – Whether to try to get Toshiba dose summary images
get_empty_sr (bool, optional) – Whether to get SR series that return nothing at image level
- Returns:
Series Instance UIDs are stored as rows in the database to be used by a move request. Move request is optionally triggered automatically.
Move function
- openrem.remapp.netdicom.qrscu.movescu(query_id)
C-Move request element of query-retrieve service class user :param query_id: ID of query in the DicomQuery table :return: None
openrem_qr.py script
Query remote server and retrieve to OpenREM
usage: openrem_qr.py [-h] [-ct] [-mg] [-fl] [-dx] [-nm] [-f yyyy-mm-dd]
[-t yyyy-mm-dd] [-sd yyyy-mm-dd] [-tf hhmm] [-tt hhmm]
[-e string] [-i string] [-sne string] [-sni string]
[--stationname_study_level] [-toshiba] [-sr] [-dup]
[-emptysr]
qr_id store_id
Positional Arguments
- qr_id
Database ID of the remote QR node
- store_id
Database ID of the local store node
Named Arguments
- -ct
Query for CT studies. Cannot be used with -sr
Default:
False
- -mg
Query for mammography studies. Cannot be used with -sr
Default:
False
- -fl
Query for fluoroscopy studies. Cannot be used with -sr
Default:
False
- -dx
Query for planar X-ray studies (includes panoramic X-ray studies). Cannot be used with -sr
Default:
False
- -nm
Query for nuclear medicine studies. Cannot be used with -sr
Default:
False
- -f, --dfrom
Date from, format yyyy-mm-dd. Cannot be used with –single_date
- -t, --duntil
Date until, format yyyy-mm-dd. Cannot be used with –single_date
- -sd, --single_date
Date, format yyy-mm-dd. Cannot be used with –dfrom or –duntil
- -tf, --tfrom
Time from, format hhmm. Requires –single_date.
- -tt, --tuntil
Time until, format hhmm. Requires –single_date.
- -e, --desc_exclude
Terms to exclude in study description, comma separated, quote whole string
- -i, --desc_include
Terms that must be included in study description, comma separated, quote whole string
- -sne, --stationname_exclude
Terms to exclude in station name, comma separated, quote whole string
- -sni, --stationname_include
Terms to include in station name, comma separated, quote whole string
- --stationname_study_level
Advanced: Filter station name at Study level, instead of at Series level
Default:
False
- -toshiba
Advanced: Attempt to retrieve CT dose summary objects and one image from each series
Default:
False
- -sr
Advanced: Use if store has RDSRs only, no images. Cannot be used with -ct, -mg, -fl, -dx
Default:
False
- -dup
Advanced: Retrieve duplicates (objects that have been processed before)
Default:
False
- -emptysr
Advanced: Get SR series that return nothing at image level query
Default:
False
NetDICOM common functions
- openrem.remapp.netdicom.tools.echoscu(scp_pk=None, store_scp=False, qr_scp=False)
Function to check if built-in Store SCP or remote Query-Retrieve SCP returns a DICOM echo :param scp_pk: Primary key if either Store or QR SCP in database :param store_scp: True if checking Store SCP :param qr_scp: True if checking QR SCP :return: ‘AssocFail’, Success or ?