Comments (2)
I don't think you have done something wrong. Your code and the resulting HTTP request looks fine. The server at https://dicomcloud.azurewebsites.net responds with status code 404. It looks like the returned metadata is not up-to-date, i.e. that instances are listed but do not (or no longer) exist.
I've written the following program to independently test the approach:
import logging
import requests
import dicomweb_client
test_logger = logging.getLogger('test_dicomweb_client')
def test_walk(client):
matched_studies = client.search_for_studies()
for study in matched_studies:
study_instance_uid = study['0020000D']['Value'][0]
matched_series = client.search_for_series(study_instance_uid)
for series in matched_series:
series_instance_uid = series['0020000E']['Value'][0]
matched_instances = client.search_for_instances(
study_instance_uid,
series_instance_uid
)
for instance in matched_instances:
sop_instance_uid = instance['00080018']['Value'][0]
try:
dataset = client.retrieve_instance(
study_instance_uid,
series_instance_uid,
sop_instance_uid
)
except requests.exceptions.HTTPError:
test_logger.error(
'Instance not found: study={study_instance_uid}, '
'series={series_instance_uid}, '
'instance={sop_instance_uid}'.format(**locals())
)
if __name__ == '__main__':
logging.basicConfig(level=logging.INFO)
dicomweb_client_logger = logging.getLogger('dicomweb_client')
dicomweb_client_logger.setLevel(logging.DEBUG)
client = dicomweb_client.DICOMwebClient(
url='https://dicomcloud.azurewebsites.net',
qido_url_prefix='qidors',
wado_url_prefix='wadors',
stow_url_prefix='stowrs'
)
test_walk(client)
I further tested the approach using the DICOMcloud interface at https://dicomcloud.azurewebsites.net/swagger. Retrieval of instances via WADO-RS also fails using the metadata returned by QIDO-RS queries:
QIDO-RS: SearchForSeries (given StudyInstanceUID):
QIDO-RS: SearchForInstances (given StudyInstanceUID and SeriesInstanceUID):
from dicomweb-client.
Thanks for looking at this!
Are all instances missing?
from dicomweb-client.
Related Issues (20)
- Query regarding the body of STOW-RS request HOT 2
- Retrive metadata is QIDO-RS or WADO-RS? HOT 2
- Implementation of DICOMs3Client based on DICOMwebProtocol HOT 27
- ImportError: cannot import name 'Protocol' from 'typing' (python 3.7.11) HOT 5
- Orthanc Support HOT 3
- Outdated JPEG-LS media type for retrieval of frames
- Something broke for me going from 0.55.0 to 0.55.1 HOT 1
- Make pillow and numpy optional HOT 2
- Double trailing slash problem HOT 5
- Cannot find reference 'load_json_dataset' in 'api.py' HOT 1
- [Doc] Broken link in "Introduction" HOT 1
- Failing to import study using retrieve_study method
- noisy 'empty response' warning
- Retrieve_series_metadata Hangs Indefinitely Without Timeout
- Provide the results as Iterable of generators instead of lists HOT 2
- Allow to set force option of dcmread HOT 4
- Error in doc string?
- image/dicom-rle media type
- DICOMfileClient raises error for RLE Losssless files
- Success with partial content (status code 206)
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from dicomweb-client.