Imaging Data Commons
개요
국립암연구소(NCI) Imaging Data Commons(IDC)의 공개 암 이미징 데이터를 질의하고 다운로드합니다. 데이터 액세스에 인증이 필요하지 않습니다.
예상 네트워크 액세스: IDC 메타데이터는 세 가지 방식으로 접근 가능합니다 — idc-index Python 패키지와 함께 제공되는 로컬 DuckDB 인덱스(네트워크 불필요) 또는 호스팅된 IDC 서비스를 MCP 또는 REST(api.imaging.datacommons.cancer.gov, 인증 불필요)를 통해 사용합니다. 파일 다운로드는 공개 GCS(storage.googleapis.com) 및 AWS S3(s3.amazonaws.com)를 사용하며 인증이 필요하지 않습니다. DICOMweb 액세스는 공개 IDC 프록시(proxy.imaging.datacommons.cancer.gov, 인증 불필요) 또는 Google Cloud Healthcare API(healthcare.googleapis.com, GCP 인증 필요)를 사용합니다. 선택적 BigQuery 질의(bigquery.googleapis.com)도 GCP 인증이 필요합니다. 이 스킬은 자격 증명이나 환경 변수에 접근하지 않습니다.
현재 IDC 데이터 버전: v24 (항상 확인하십시오 — 모범 사례 참조)
먼저 액세스 경로를 선택하십시오. 단일 기본 경로는 없습니다. 가장 저렴한 올바른 경로는 세션과 작업에 따라 다릅니다.
- 세션에 이미 IDC MCP 서버가 있습니까? 검색 및 메타데이터를 해당 서버로 라우팅하십시오 — IDC MCP 서버 참조.
- 그렇지 않으면
idc-index가 설치되어 있습니까?python scripts/check_version.py를 실행하십시오. 통과하면 모든 작업에idc-index를 사용하십시오. - 설치되지 않았고 작업이 읽기 전용 메타데이터 — 개수, 속성 값, 컬렉션 조회, 10,000행 미만의 SQL, 라이선스, 인용, 뷰어 URL?
curl을 통해 REST API를 사용하십시오. 아무것도 설치하지 마십시오. 설치 시 약 77MB의 패키지 인덱스 데이터와 pandas, pyarrow, duckdb가 필요하며, 메타데이터 질의에는 필요하지 않습니다. 데이터 액세스 옵션을 참조하십시오. - 설치되지 않았고 작업에 메타데이터 이상이 필요한 경우 — 파일 다운로드, pandas 또는 플로팅, pydicom/SimpleITK, 병리학 타일링, 10,000행 초과 결과, 또는 사용자가 다시 실행하는 버전 고정 스크립트?
idc-index를 설치하십시오:check_version.py가 0이 아닌 종료 코드를 반환하며 실행 중인 인터프리터에 대한 정확한 설치 명령을 출력합니다. 가상 환경을 선호하며, 그런 다음 Python을 다시 시작하십시오.
idc-index (GitHub)는 여전히 가장 강력한 경로이며 이미지 바이트를 이동하는 유일한 경로입니다. 규칙은 작업에서 필요로 하기 전에 비용을 지불하지 않는 것입니다. check_version.py는 자체적으로 아무것도 설치하지 않습니다 — 또한 새 idc-index 또는 스킬 릴리스가 있을 때 알려줍니다.
idc-index 경로 설정:
from idc_index import IDCClient
client = IDCClient()
# IDC 데이터 버전 확인 ("v24"여야 함)
print(f"IDC 데이터 버전: {client.get_idc_version()}")
핵심 워크플로: client.sql_query()로 메타데이터 질의 → client.download_from_selection()으로 다운로드 → client.get_viewer_URL()로 시각화. 아래 Python 예제는 이 client를 가정합니다. 데이터 액세스 옵션에는 REST 해당 항목이 있습니다. 현재 데이터 규모는 references/sql_patterns.md의 요약 질의 또는 GET /v3/stats를 실행하십시오.
IDC MCP 서버
IDC는 https://api.imaging.datacommons.cancer.gov/mcp에서 호스팅 MCP 서버를 운영합니다(스트리밍 가능 HTTP, 인증 불필요). 사용 가능한 경우 아래 idc-index 워크플로를 보완하며 대체하지 않습니다.
식별 방법: MCP 리소스 idc://guide 또는 도구 이름 build_cohort, get_cohort_urls, list_analysis_results, get_idc_version 중 세 개 이상으로 식별합니다. run_sql과 같은 일반 이름은 자체적으로 증거가 되지 않습니다. 식별이 모호하면 idc-index를 사용하십시오.
세션에 서버가 있는 경우, 검색 및 메타데이터(버전, 개수, 속성 값, 코호트 빌드, 메타데이터 SQL)에 대해 권위 있는 소스로 취급하고 서버 자체 지침을 따르며 이 파일에서 다시 파생하지 마십시오. 데이터 버전은 서버가 보고하는 대로입니다. 이 파일에 고정된 버전에 의존하지 말고 get_idc_version을 호출하십시오.
서버가 수행하지 않는 작업(파일 다운로드, 로컬 pandas/노트북 분석, DICOMweb, BigQuery, 디지털 병리학 타일링, 재현 가능한 스크립트)에 대해서는 여기로 돌아오십시오. 서버의 SeriesInstanceUID를 client.download_from_selection(...)에 전달하고 해당 시점에 scripts/check_version.py를 실행하십시오.
사용할 수 없는 경우, 동일한 서비스를 https://api.imaging.datacommons.cancer.gov/v3에서 REST API로 구성 없이 사용할 수 있습니다. 개요의 라우팅 게이트에 따라 idc-index를 설치하는 대신 읽기 전용 메타데이터에 사용하십시오. MCP 서버 연결을 기껏해야 한 번만 제안하고 반복적인 대화형 검색에만 사용하며 사용자 구성을 직접 변경하지 마십시오.
도구 목록, 핸드오프 패턴 및 호스트별 참고 사항은 references/mcp_guide.md를 참조하십시오.
이 스킬을 사용해야 하는 경우
- 공개적으로 사용 가능한 방사선학(CT, MR, PET) 또는 병리학(슬라이드 현미경) 이미지 찾기
- 암 유형, 모달리티, 해부학적 부위 또는 기타 메타데이터로 이미지 하위 집합 선택
- IDC에서 DICOM 데이터 다운로드
- 연구 또는 상업적 응용 전 데이터 라이선스 확인
- 로컬 DICOM 뷰어 소프트웨어 없이 브라우저에서 의료 이미지 시각화
빠른 탐색
아래 인라인: MCP/REST 라우팅 규칙, IDC 데이터 모델, 인덱스 테이블 및 조인 방법, 핵심 API 패턴(질의, 다운로드, 시각화, 라이선스, 인용), 모범 사례 및 문제 해결.
참조 가이드(필요 시 로드):
| 가이드 | 로드 시기 |
|---|---|
index_tables_guide.md | 복잡한 JOIN, 스키마 검색, DataFrame 액세스 |
use_cases.md | 종단간 워크플로: 훈련 데이터세트, 배치 다운로드, pydicom/SimpleITK를 사용한 DICOM 읽기, 파이프라인 통합 |
sql_patterns.md | 필터 검색, 주석, 크기 추정을 위한 빠른 SQL 패턴 |
clinical_data_guide.md | 임상/테이블 형식 데이터, 이미징+임상 조인, 값 매핑 |
licensing_and_citation.md | 상업적 사용 질문, 혼합 라이선스 코호트, 인용 형식 |
cloud_storage_guide.md | 직접 S3/GCS 액세스, 버전 관리, UUID 매핑 |
dicomweb_guide.md | DICOMweb 엔드포인트, PACS 통합 |
digital_pathology_guide.md | 슬라이드 현미경(SM), 주석(ANN), 병리학 워크플로 |
bigquery_guide.md | 전체 DICOM 메타데이터, 비공개 요소(GCP 필요) |
cli_guide.md | 명령줄 도구(idc download, 매니페스트 파일) |
parquet_access_guide.md | GCS를 통한 직접 Parquet 질의(idc-index 설치 불필요) |
mcp_guide.md | 호스팅 IDC MCP 서버: 도구 목록, 식별, idc-index로 핸드오프 |
rest_api_guide.md | 호스팅 IDC REST API: 엔드포인트, 필터 구문, SQL over HTTP, 매니페스트 |
IDC 데이터 모델
IDC는 표준 DICOM 계층(환자 → 연구 → 시리즈 → 인스턴스) 위에 두 가지 그룹화 수준을 추가합니다:
- collection_id: 질병, 모달리티 또는 연구 초점별로 환자 그룹화(예:
tcga_luad,nlst). 환자는 정확히 하나의 컬렉션에 속합니다. - analysis_result_id: 하나 이상의 원본 컬렉션에서 파생된 객체(분할, 주석, 방사선학 특징)를 식별합니다. AI 생성 또는 전문가 주석을 찾는 데 사용하고,
collection_id는 원본 이미징 데이터(자체적으로 기탁된 주석을 포함할 수 있음)를 찾습니다.
질의를 위한 주요 식별자:
| 식별자 | 범위 | 용도 |
|---|---|---|
collection_id | 데이터세트 그룹화 | 프로젝트/연구별 필터링 |
PatientID | 환자 | 환자별 이미지 그룹화 |
StudyInstanceUID | DICOM 연구 | 관련 시리즈 그룹화, 시각화 |
SeriesInstanceUID | DICOM 시리즈 | 관련 시리즈 그룹화, 시각화 |
인덱스 테이블
idc-index 패키지는 여러 메타데이터 인덱스 테이블을 제공하며 SQL 또는 pandas DataFrame으로 액세스할 수 있습니다. REST API는 GET /tables 및 POST /sql을 통해 동일한 테이블을 제공합니다.
중요: client.indices_overview는 현재 테이블 설명, 사용 가능한 열 및 해당 유형에 대한 권위 있는 소스입니다. SQL을 작성하거나 데이터 구조를 탐색할 때 질의하십시오. 또한 "테이블 X에 열 Y가 포함되어 있나요?"에 답합니다. 전체 스키마 검색 및 해당 검색 패턴은 references/index_tables_guide.md를 참조하십시오.
사용 가능한 테이블
인덱스 테이블을 질의하기 전에 항상 client.fetch_index("table_name")을 호출하십시오. 시작 시 자동으로 로드되는 테이블을 포함하여 모든 테이블에 대해 안전하고 멱등적입니다.
| 계열 | 테이블 | 세분성 |
|---|---|---|
| 핵심 | index(모든 현재 데이터의 기본 메타데이터), collections_index, analysis_results_index | 시리즈 / 컬렉션 / 분석 결과 |
| 모달리티 획득 매개변수 | ct_index, mr_index, pt_index, contrast_index | 1행 = 해당 모달리티의 1 시리즈 |
| 파생 객체 | seg_index, rtstruct_index, ann_index, ann_group_index | 1행 = 1 시리즈(또는 주석 그룹) |
| 현미경 | sm_index, sm_instance_index | 1행 = 1 SM 시리즈 / 인스턴스 |
| 기하학, 임상, 기록 | volume_geometry_index, clinical_index, version_metadata_index, prior_versions_index | 가이드 참조 |
references/index_tables_guide.md에는 각 테이블의 열과 내용을 포함한 전체 목록이 있습니다. 특수 테이블이 실제로 무엇을 포함하는지 알아야 할 때 로드하십시오.
prior_versions_index는 재현성을 위해서만 사용합니다. IDC에서 영구적으로 제거된 시리즈를 포함하며 index와 중복이 없습니다. 이전 IDC 버전에 대한 작업을 재현하는 데만 사용하십시오. 버전 기록 또는 "새로운 기능" 질문에 사용하지 마십시오. 해당 질문은 주요 index 테이블에서 series_init_idc_version / series_revised_idc_version을 사용하며, 이 테이블의 min_idc_version / max_idc_version과 동일하지 않습니다.
테이블 조인
SeriesInstanceUID는 모든 시리즈 수준 특수 테이블(sm_index, sm_instance_index, seg_index, ann_index, ann_group_index, contrast_index, volume_geometry_index, rtstruct_index, ct_index, mr_index, pt_index)에 대한 범용 조인 키입니다. 항상 SeriesInstanceUID로 index에 조인하십시오. 아래 예외는 다른 열 이름을 사용합니다.
| 조인 열 | 테이블 | 사용 사례 |
|---|---|---|
collection_id | index, prior_versions_index, collections_index, clinical_index | 시리즈를 컬렉션 메타데이터 또는 임상 데이터에 연결 |
analysis_result_id | index, analysis_results_index | 시리즈를 분석 결과 메타데이터(주석, 분할)에 연결 |
source_DOI | index, analysis_results_index | 출판 DOI로 연결 |
segmented_SeriesInstanceUID | seg_index → index | 분할을 해당 소스 이미지 시리즈에 연결(seg_index.segmented_SeriesInstanceUID = index.SeriesInstanceUID) |
referenced_SeriesInstanceUID | ann_index → index, rtstruct_index → index | 주석 또는 RTSTRUCT를 해당 소스 이미지 시리즈에 연결 |
참고: subjects, updated, description이 여러 테이블에 나타나지만 의미가 다릅니다(개수 대 식별자, 다른 업데이트 컨텍스트). prior_versions_index를 index에 SeriesInstanceUID로 조인하면 항상 0행을 반환합니다. 위 경고를 참조하십시오.
자세한 조인 예제, 스키마 검색 패턴, 주요 열 참조 및 DataFrame 액세스는 references/index_tables_guide.md를 참조하십시오.
임상 데이터 액세스
임상(비이미징) 속성 — 병기, 인구통계, 치료 — 는 컬렉션별 테이블에 있습니다. client.fetch_index("clinical_index")는 열을 컬렉션에 매핑하는 사전을 로드합니다. client.get_clinical_table(name)은 하나의 테이블을 DataFrame으로 반환합니다.
검색 워크플로, 코딩된 값 매핑 및 이미징 데이터와 임상 데이터 조인은 references/clinical_data_guide.md를 참조하십시오.
데이터 액세스 옵션
| 방법 | 인증 | 최적 용도 | 참조 |
|---|---|---|---|
idc-index | 없음 | 다운로드, pandas 분석, 제한 없는 질의 — 가장 강력한 경로 | 이 문서 |
| IDC MCP 서버 | 없음 | 세션에 이미 있을 때 검색, 코호트 빌드, 메타데이터 | mcp_guide.md |
| IDC REST API | 없음 | 설치 없이 메타데이터, 모든 언어 또는 셸에서 — idc-index가 없을 때 기본값 | rest_api_guide.md |
| 직접 Parquet(GCS) | 없음 | 버전 고정 질의 또는 REST 행 제한을 초과하는 결과 | parquet_access_guide.md |
| 클라우드 스토리지(S3/GCS) | 없음 | 직접 파일 액세스, 대량 전송, 사용자 정의 파이프라인 | cloud_storage_guide.md |
| IDC 프록시를 통한 DICOMweb | 없음 | 도구 및 PACS 통합; 일일 할당량 있으므로 테스트 및 적당한 사용 | dicomweb_guide.md |
| Google Healthcare를 통한 DICOMweb | 예(GCP) | 프록시 할당량 없이 프로덕션 볼륨에서 동일한 DICOMweb API | dicomweb_guide.md |
| SlicerIDCBrowser | 없음 | 3D Slicer에서 3D 시각화 및 분석 | https://github.com/ImagingDataCommons/SlicerIDCBrowser |
| BigQuery | 예(GCP) | 전체 DICOM 메타데이터, 비공개 요소, SR 측정 — 최후의 수단 | bigquery_guide.md |
IDC 포털(https://portal.imaging.datacommons.cancer.gov/)은 대화형 전용입니다 — 브라우저 기반 탐색, 수동 코호트 선택 및 다운로드. 위의 모든 옵션과 달리 프로그래밍 방식 인터페이스가 없으므로 사용자가 직접 데이터를 탐색하거나 클릭하도록 안내하십시오. 스크립트나 워크플로의 단계로 절대 사용하지 마십시오.
REST API — 설치 없는 메타데이터 경로
https://api.imaging.datacommons.cancer.gov/v3, 인증 불필요: 검색, 코호트 개수 및 매니페스트, 읽기 전용 SQL, 임상 테이블, 뷰어 URL, 라이선스, 인용. MCP 서버와 동일한 서비스를 일반 HTTP로 제공하므로 구성이 필요하지 않습니다. 이미지 바이트를 전송하지 않습니다. 다운로드, DataFrame 가져오기 또는 10,000행을 초과하는 결과에는 idc-index로 전환하십시오.
B=https://api.imaging.datacommons.cancer.gov/v3
curl -s $B/version # idc_version, idc_index_data_version, api_version
curl -s $B/stats # collections, patients, studies, series, instances, size_TB
curl -s "$B/attributes/Modality/values?limit=5" # 개수가 포함된 실제 필터 값
curl -s $B/sql -H 'content-type: application/json' \
-d '{"sql":"SELECT collection_id, COUNT(*) n FROM index GROUP BY 1 ORDER BY n DESC LIMIT 3"}'
curl -s $B/cohort/counts -H 'content-type: application/json' \
-d '{"filter":{"Modality":"CT","collection_id":["tcga_luad"]}}'
curl -s $B/cohort/manifest -H 'content-type: application/json' \
-d '{"filter":{"collection_id":"nlst","Modality":"CT"}}'
전체 옵션, 필터 구문 및 SQL over HTTP는 rest_api_guide.md를 참조하십시오.
핵심 API 패턴
질의
SQL 질의:
# 모든 컬렉션과 해당 시리즈 수
query = """
SELECT collection_id, COUNT(*) as series_count
FROM index
GROUP BY collection_id
ORDER BY series_count DESC
LIMIT 10
"""
client.sql_query(query)
# 특정 암 유형 필터링 (예: TCGA-LUAD), CT 시리즈만
query = """
SELECT SeriesInstanceUID, StudyInstanceUID, collection_id,
Modality, SeriesDescription, ImageCount
FROM index
WHERE collection_id = 'tcga_luad' AND Modality = 'CT'
LIMIT 5
"""
df = client.sql_query(query)
속성 값 검색을 위한 빠른 SQL 패턴은 sql_patterns.md를 참조하십시오. 그렇지 않으면 GET /v3/attributes/{name}/values를 통해 REST로 동일한 결과를 얻을 수 있습니다.
팁: SELECT DISTINCT 질의는 idc-index에서는 덜 효율적입니다. 고유 값에는 client.sql_query("SELECT ... WHERE collection_id = '...'")를 사용하거나 REST GET /attributes/{name}/values?collection_id=...를 사용하십시오.
REST를 통한 질의
B=https://api.imaging.datacommons.cancer.gov/v3
# 사용 가능한 모든 속성 나열
curl -s $B/attributes | python -m json.tool
# Modality 속성 값 가져오기 (개수 포함)
curl -s "$B/attributes/Modality/values?limit=10"
# SQL 질의 실행
curl -s $B/sql -H 'content-type: application/json' \
-d '{"sql":"SELECT collection_id, Modality, COUNT(*) n FROM index WHERE collection_id = \"tcga_luad\" GROUP BY 1,2"}'
다운로드
# 질의에서 UID 목록 가져오기
query = "SELECT SeriesInstanceUID FROM index WHERE collection_id = 'nlst' AND Modality = 'CT' LIMIT 50"
uids_df = client.sql_query(query)
uid_list = uids_df["SeriesInstanceUID"].tolist()
# 이러한 시리즈를 로컬 디렉토리에 다운로드
download_dir = "./nlst_ct_samples"
client.download_from_selection(uid_list, downloadDir=download_dir, dry_run=False)
dry_run=True는 다운로드할 UID, 크기 및 대상 경로를 미리 봅니다. 실제 다운로드에는 dry_run=False로 설정하십시오. 즉시 공간과 시간을 확인하십시오. 필요한 경우, cloud_storage_guide.md에서 설명하는 대로 GCS/S3에서 직접 대량 데이터를 전송하십시오.
사전 정의된 코호트 다운로드: use_cases.md는 배치 다운로드, 파이프라인 통합 및 대규모 데이터 전송을 다룹니다.
시각화
# 시리즈에 대한 IDC 뷰어 URL 생성
viewer_url = client.get_viewer_URL(uid_list)
print("IDC 뷰어 URL:", viewer_url)
라이선스 확인
# 컬렉션에 대한 라이선스 정보
licenses = client.get_collections_license()
licenses[licenses["collection_id"] == "tcga_luad"]
# 특정 시리즈 UID의 라이선스 정보
client.get_series_license(uid_list[0])
# REST를 통해 동일한 작업
curl -s "$B/attributes/license/values?limit=10"
curl -s $B/sql -H 'content-type: application/json' \
-d '{"sql":"SELECT collection_id, license FROM collections_index"}'
라이선스 값, 혼합 라이선스 코호트 처리 및 상업적 사용에 대한 자세한 내용은 licensing_and_citation.md를 참조하십시오.
인용
# 컬렉션에 대한 인용 정보
citations = client.get_collections_citation()
# 특정 시리즈에 대한 DOI 가져오기
source_doi = client.get_series_source_DOI(uid_list[0])
print(f"Source DOI: {source_doi}")
# REST를 통해 동일한 작업
curl -s $B/sql -H 'content-type: application/json' \
-d '{"sql":"SELECT collection_id, citation FROM collections_index WHERE collection_id = \"tcga_luad\""}'
인용 형식 및 저자 지침은 licensing_and_citation.md를 참조하십시오.
모범 사례
항상 확인하십시오
- IDC 데이터 버전: 오래된 예제는 잘못된 가정을 할 수 있습니다. 신뢰하기 전에 항상 현재 버전을 확인하십시오:
print(f"IDC 버전: {client.get_idc_version()}") # idc-index 경로
B=https://api.imaging.datacommons.cancer.gov/v3
curl -s $B/version | python -c "import sys,json; print(json.load(sys.stdin)['idc_version'])" # REST 경로
python scripts/check_version.py는 idc-index 버전도 확인하고 설치(필요한 경우) 및 idc-index / 스킬 업데이트에 대한 지침을 인쇄합니다.
-
라이선스 조건: 모든 데이터 사용 전에 라이선스를 확인하고, 특히 상업적 사용의 경우 더욱 그렇습니다. 혼합 라이선스 코호트에 대한 패턴은
licensing_and_citation.md를 참조하십시오. -
사전에 다운로드 크기 및 수를 추정하십시오. 완전한 다운로드를 실행하기 전에 항상 무언가를 실행하십시오:
# 다운로드할 내용 미리 보기
client.download_from_selection(uid_list, downloadDir="./temp", dry_run=True)
작업 흐름
- 필요한 ID 확인: SQL로
index테이블을 질의하여SeriesInstanceUID식별 - 다운로드 전략 계획:
dry_run=True로 미리 보기 수행 - 파일 다운로드: 50-100개의 시리즈 배치를 위해
client.download_from_selection()사용. 더 큰 배치(10000개 이상)에 대한 방법은use_cases.md의 "대규모 다운로드"를 참조하십시오. - pydicom, SimpleITK 등으로 파일 처리:
downloadDir에서 로컬 DICOM 파일을 읽으십시오.use_cases.md에 예제가 있습니다. - 재현성을 위한 참조 또는 인용 보관:
get_collections_citation()을 캡처하고 IDC 데이터 버전을 기록하십시오.
오류 방지
- 큰 다운로드 전에 항상 디스크 공간을 확인하십시오. 예상되는 GCS/S3 바이트는 전체 크기입니다. IDC는 압축되지 않은 변환을 저장하지 않습니다.
- 다운로드된 UID를 추적하십시오. 후속 질의에서 ID가 아닌 컬렉션으로 이동하지 마십시오.
- 필요한 경우 인덱스 테이블을 명시적으로 가져오십시오.
client.fetch_index("table_name")은 안전하고 멱등적입니다. df.to_csv()는 큰 DataFrame에서 큰 출력을 생성할 수 있습니다. 결과가 많은 경우 집계를 사용하거나 Parquet 파일에 쓰십시오.- 파일 경로에 대한 가정을 검증하십시오. 많은 IDC 컬렉션은 S3/GCS에서 사용자 정의 구조를 사용합니다.
cloud_storage_guide.md를 참조하십시오.
액세스 경로 선택
- 일반적인 읽기 전용 메타데이터 질문: 무엇을 설치할지, 무엇을 질의할지 결정하기 전에
check_version.py를 사용하십시오. 먼저 REST를 사용하고, 충분하지 않을 경우에만idc-index로 전환하십시오. - 파일 다운로드, pandas 분석, 파이프라인 통합: 설치 비용을 지불하고
idc-index를 사용하십시오. - BigQuery가 필요합니까? 의료 데이터만 BigQuery에 있습니다. 다른 모든 것은
idc-index가 포함합니다.
문제 해결
일반적인 문제
ModuleNotFoundError: No module named 'idc_index'
pip install idc-index
# 또는 스크립트 실행:
python scripts/check_version.py
idc-index를 가져올 때 DuckDB 오류 — 이전 버전을 사용하고 있을 수 있습니다. 업데이트하십시오:
pip install --upgrade idc-index
DuckDB에서 데이터 세트를 찾을 수 없으면 오래된 로컬 인덱스 때문일 수 있습니다. 인덱스 업데이트를 위해 패키지를 업그레이드하십시오.
다운로드 문제: 네트워크 문제, 특히 일부 IDC 데이터가 S3에 있을 때 발생할 수 있습니다. 드문 경우로 Google Cloud와 AWS 모두에 액세스할 수 있습니다(cloud_storage_guide.md 참조).
다운로드 속도가 느립니까? 최신 idc-index는 병렬 다운로드를 사용합니다. 큰 배치(10000개+)는 전용 전송 도구에 대해 cloud_storage_guide.md의 "대규모 다운로드"를 참조하십시오. 액세스 문제가 의심되면 세 가지 저장소(GCS, S3, 팔로알토 S3) 간에 스위치가 자동입니다.
IDC 뷰어 URL이 작동하지 않습니까? URL이 StudyInstanceUID를 포함하는지 확인하십시오. 연구당 하나의 뷰어 URL만 있습니다(시리즈당이 아님). 오래된 UID일 수 있습니다.
더 많은 도움
- IDC 포털: https://portal.imaging.datacommons.cancer.gov/
- IDC 문서: https://learn.canceridc.dev/
- IDC 포럼: https://discourse.canceridc.dev/
- IDC GitHub: https://github.com/ImagingDataCommons
idc-index저장소: https://github.com/imagingdatacommons/idc-index