Skip to content
chafey edited this page Mar 23, 2014 · 8 revisions

A cornerstone imageId is a URL which identifies a single image for cornerstone to display. The URL scheme in the imageId is used by cornerstone to determine which (ImageLoader)[ImageLoader] plugin to call to actually load the image. This strategy allows cornerstone to simultaneously display multiple images obtained with different protocols from different servers. For example, cornerstone could display a CT image obtained via WADO along side a dermatology JPEG image stored on a local web server.

Cornerstone does not specify what the contents of the URL are - it is up to the (ImageLoader)[ImageLoader] to define the contents of the URL so it can locate the image. For example, a proprietary (ImageLoader)[ImageLoader] plugin could be written to talk to a proprietary server and lookup images using a GUID, filename or database row id.

Here are some examples of what an imageId would look like for different (ImageLoader)[ImageLoader] plugins:

WADO

http://www.medical-webservice.st/RetrieveDocument?
requestType=WADO&studyUID=1.2.250.1.59.40211.12345678.678910
&seriesUID=1.2.250.1.59.40211.789001276.14556172.67789
&objectUID=1.2.250.1.59.40211.2678810.87991027.899772.2
&contentType=application%2Fdicom&transferSyntax=1.2.840.10008.1.2.4.50

DICOM CGET

A 'dicomcget' image loader could work with a server to issue a DICOM CGET command to retrieve the image and then return it to cornerstone:

dicomcget://www.medical-webservice.st/RetrieveDocument?
requestType=WADO&studyUID=1.2.250.1.59.40211.12345678.678910
&seriesUID=1.2.250.1.59.40211.789001276.14556172.67789
&objectUID=1.2.250.1.59.40211.2678810.87991027.899772.2
&contentType=application%2Fdicom&transferSyntax=1.2.840.10008.1.2.4.50

DICOM CMOVE

A 'dicomcmove' image loader could work with a server to issue a DICOM CMOVE command to retrieve the image and then return it to cornerstone:

dicomcmove://www.medical-webservice.st/RetrieveDocument?
requestType=WADO&studyUID=1.2.250.1.59.40211.12345678.678910
&seriesUID=1.2.250.1.59.40211.789001276.14556172.67789
&objectUID=1.2.250.1.59.40211.2678810.87991027.899772.2
&contentType=application%2Fdicom&transferSyntax=1.2.840.10008.1.2.4.50

Proprietary GUID based

An image loader could take a GUID and request that a server look it up in the database to find the path to the image on disk and then return the pixel data to cornerstone:

custom1://server?imageId=38120cae-bdcd-4102-b799-c8b9965d3421

Proprietary database rowid based

An image loader could take a row id and request that a server look it up in the database to find the path to the image on disk and then return the pixel data to cornerstone:

custom2://server/1353056

Proprietary file based

An image loader could take a file path and request that a server return the pixel data for it to cornerstone:

custom3://server/dermataologyImages/room10/12345.jpg