Retrieving single instance Frame

I’m working with dicom-web REST API to get dicom files from Orthanc server, I have managed to retrieve a study, series and instance but i get a HttpErrorResponse of 400: Bad Request when i request for a frame.

I am using Angular2 here is a code snippet

this.http.get(this.apiUrl + 'studies/' + studyUID + '/series/' + seriesUID + '/instances/' + instanceUID + '/frames/1') .subscribe((image: any) => { resolve(image) }), (err: HttpErrorResponse) => { console.log('ERROR:', err); reject(err) }

Am not sure if I should include the headers or not BUT even if i include the headers nothing changes

Thanks in advance

I’m not sure if the API has changed, but in a project in 2016 I used :

    return DoGet(URL + '/instances/{ID}/frames/{frame_number}/preview'.format(
        ID=instance.orthancID, frame_number=frame_number))

I’ll check the docs to see how it stands today.

It stands the same way.

See the reference.

Frames should be accessed in the “/instances/{id}/frames/{frameNumber}/{format}” endpoint. So, drop the "‘studies/’ + studyUID + ‘/series/’ + seriesUID + " part.

Add beyond the frames/1 the decoding option you want, one of [‘preview’, ‘raw’, ‘matlab image-uint8’, ‘,image-uint16’, ‘image-int16’], see the reference for what each means.

Hello,

If you are using DICOMweb, you must prefix the URI with “dicom-web”.

For instance, here is a valid WADO-RS RetrieveFrames request for Orthanc:

curl http://localhost:8042/**dicom-web**/studies/1.3.51.0.1.1.192.168.29.133.1681753.1681732/series/1.3.12.2.1107.5.2.33.37097.2012041612474981424569674.0.0.0/instances/1.3.12.2.1107.5.2.33.37097.2012041612485517294169680/frames/1

HTH,
Sébastien-