Common questions

DICOM FAQ

Answers to the questions we see most often from integration engineers and healthcare IT teams. Grouped by theme; every answer links back into the learn hub or the spec browser where the detail lives.

General DICOM questions

What is DICOM?

DICOM (Digital Imaging and Communications in Medicine) is the international standard for handling, storing, and transmitting medical imaging. It is simultaneously a file format (how a .dcm file is laid out on disk) and a network protocol (how two devices exchange images over TCP/IP). Virtually every modern medical imaging device — CT, MRI, ultrasound, X-ray, mammography — speaks DICOM. Full intro →

Is a DICOM file like a JPEG?

Only superficially. A DICOM file can internally use JPEG, JPEG 2000, or other image encodings for its pixel data, but it wraps that pixel data with hundreds of standardized metadata fields — patient identifiers, study context, acquisition parameters, equipment info. A JPEG is just pixels; a DICOM file is pixels plus the context needed to safely interpret them clinically. Renaming a .dcm to .jpg won't produce a viewable image.

What's the difference between DICOM and PACS?

DICOM is the standard; PACS is a system. DICOM defines how images are formatted and how devices talk to each other. PACS (Picture Archiving and Communication System) is the archive + distribution platform that uses DICOM to receive images from modalities, store them, and serve them to reading workstations. You can't have a modern PACS without DICOM; you can have DICOM without PACS. PACS explained →

Can I open a DICOM file with Windows Photos or Preview?

No. You need a specialized DICOM viewer that understands the file format and the embedded metadata. Free options include 3D Slicer (cross-platform, research-grade), MicroDICOM (Windows), Horos (macOS), and RadiAnt (Windows trial). DICOMweb-based web viewers (OHIF, Weasis Web) work directly in a browser against a DICOM server.

Standards structure — CIODs, SOP classes, VRs

What is a CIOD?

A CIOD — Composite Information Object Definition — is the DICOM standard's way of specifying what fields must appear in a particular type of imaging object. "CT Image" is a CIOD; "MR Image" is a CIOD; "Basic Text SR" is a CIOD. Each CIOD is composed of modules (Patient, General Study, General Series, Image Pixel, etc.), and each module lists the individual attributes (tags). Browse all 174 CIODs →

What's the difference between a SOP Class and a SOP Instance?

A SOP Class is a type of object (e.g., "CT Image Storage" — SOP Class UID 1.2.840.10008.5.1.4.1.1.2). A SOP Instance is a specific object of that type — one particular CT slice with its own SOP Instance UID. A CIOD describes the shape of the data; a SOP Class is the network contract that says "if you accept this SOP Class, you accept objects conforming to this CIOD and you respond to C-STORE requests for them." Browse all 320 SOP classes →

What is a Value Representation (VR)?

A VR is DICOM's type system — a two-letter code that tells you how a tag's value is encoded. PN is Person Name, DA is Date (YYYYMMDD), DT is DateTime, UI is Unique Identifier (OID), OB is Other Byte String, OW is Other Word String (for pixel data), SQ is Sequence. Knowing the VR tells you how to parse and validate. All 34 value representations →

Why are some DICOM tags marked retired?

DICOM is versioned; some tags that existed in earlier editions have been deprecated. A retired tag still has a meaning (it was once standard) and may still appear in older DICOM data — so our spec browser surfaces them rather than hiding them (Innolitics hides retired; we think that's wrong). A retired tag should not be used in new code, but you may need to parse it from legacy archives. Browse retired tags →

What's in the File Meta Information header?

Group 0002 — always encoded in Explicit VR Little Endian regardless of the data set's encoding — carries the "how to read this file" information. Key fields: (0002,0010) Transfer Syntax UID, (0002,0002) Media Storage SOP Class UID, (0002,0003) Media Storage SOP Instance UID, (0002,0012) Implementation Class UID. Full walkthrough →

Network & protocol

What port does DICOM use?

The IANA-registered port is 104, but since 104 is privileged (< 1024), most implementations run on 11112. Some vendors default to 4242, 3000, or vendor-specific ports. Always confirm the destination's configured port rather than assuming 104.

What service classes do I actually need?

For most integrations: C-STORE (push images), C-FIND (search), C-MOVE or C-GET (retrieve), and C-ECHO (test). Add MWL (Modality Worklist) if a modality queries the RIS for scheduled work, and MPPS (Modality Performed Procedure Step) if the modality needs to report procedure status. Service classes explained →

Why does C-MOVE work but no images arrive?

Common pattern: the C-MOVE response returns Success (with Completed=N) but the destination AE never received anything. The PACS opens a new outbound association to the destination — different from the SCU's inbound association — and that connection hits a firewall, rejected AE title, or misconfigured destination entry in the PACS lookup table. Always verify the destination's inbound connectivity from the PACS side. Q/R mechanics →

What is an AE Title?

An Application Entity Title — a 16-character identifier a device uses to name itself on the DICOM network. AE Titles are case-sensitive in the standard but vendor implementations vary. They are not authentication — any client can claim any AE Title. Use TLS client certificates or User Identity for actual authentication.

Security & HIPAA

Is DICOM HIPAA compliant out of the box?

No — HIPAA is a compliance framework, not a technical spec, and DICOM is a technical standard. DICOM provides the primitives (TLS transport, audit trail, de-identification profiles) that you need to achieve HIPAA compliance; proper implementation is your responsibility. A DICOM device running plaintext on an open subnet is not HIPAA compliant regardless of what the conformance statement claims. Security & HIPAA →

How do I de-identify DICOM data for research?

Use a validated library based on DICOM Supplement 142 profiles — not a hand-rolled regex. Basic Profile removes or blanks 300+ identifying tags. Combine with Retain UIDs if you need to cross-reference with originals, and Clean Pixel Data if any modality (especially ultrasound or endoscopy) has burned-in identifiers. Watch private tags — the Basic Profile doesn't catch them unless you add a Private Tag Action.

What does DICOM TLS actually require?

PS3.15's Basic TLS Secure Transport Connection profile requires TLS 1.2+, AES-128-GCM-SHA256 or AES-256-GCM-SHA384 cipher suites, and mutual certificate validation. In practice, wrap DICOM in a TLS tunnel (stunnel, HAProxy, Mirth Connect's DICOM Listener with TLS) and use strict cipher lists. Practical guide →

Infrastructure — PACS, VNA, DICOMweb

How much storage does a DICOM study take?

Varies sharply by modality. Digital Radiography: 10-50 MB. Ultrasound: 10-100 MB. Mammography: 50-200 MB. CT: 100-500 MB. MRI: 200-1,000+ MB. PET: 100-300 MB. Multi-slice CT and contrast-enhanced MRI studies are the space hogs — a single study can exceed 1 GB. Budget for 3-5 years of growth.

What is a VNA and do I need one?

A VNA (Vendor-Neutral Archive) is a storage layer that separates DICOM archival from the PACS application tier. You need one if you (a) run multiple PACS across facilities and want one logical archive, (b) plan to switch PACS vendors without migrating petabytes of data, or (c) want to decouple storage scaling from PACS licensing. PACS vs VNA →

What's the difference between DICOM and DICOMweb?

DICOM over TCP (DIMSE) is the traditional wire protocol — high-performance, full-duplex, intended for direct device-to-device and device-to-PACS traffic. DICOMweb (PS3.18) is the HTTP variant: WADO-RS (retrieve), QIDO-RS (query), STOW-RS (store). DICOMweb wins for browser viewers, FHIR server integrations, and cloud bridges; DIMSE wins for bulk modality-to-PACS traffic. Enterprise deployments usually run both.

Troubleshooting

Why do my DICOM images look blank or washed out?

Window and level settings. DICOM pixels are typically 12-16 bit dynamic range; without correct Window Center + Window Width values (from the DICOM header or a user preset), the viewer maps them poorly and you get all-white or all-black. Check attributes (0028,1050) and (0028,1051) in the file. Try a different viewer to rule out a vendor-specific rendering bug.

Why won't my devices associate?

In order of likelihood: (1) wrong IP or port (2) firewall between them (3) neither side supports the other's transfer syntaxes (so all Presentation Contexts rejected) (4) AE Title mismatch (5) TLS enabled on one side only. Start with C-ECHO — if C-ECHO fails, fix that before anything else. Common error patterns →

What's the first thing to check when a DICOM integration breaks?

Check the logs on both the SCU and the SCP. DICOM logs are usually verbose enough to identify whether the failure is at TCP, association negotiation, presentation context, or message level. Run tcpdump -w dicom.pcap port 11112 and open in Wireshark (DICOM dissector is built in) if the logs aren't enough.

Still have questions?

If you're integrating DICOM in production and need hands-on help, get in touch with Saga. We run medical imaging integrations for health systems, SaaS platforms, and medical device companies.

Related