{"id":12629,"date":"2026-02-14T14:32:31","date_gmt":"2026-02-14T17:32:31","guid":{"rendered":"https:\/\/rtmedical.com.br\/objetos-dicom-codificacion-datos\/"},"modified":"2026-02-14T19:30:36","modified_gmt":"2026-02-14T22:30:36","slug":"objetos-dicom-codificacion-datos","status":"publish","type":"post","link":"https:\/\/rtmedical.com.br\/es\/objetos-dicom-codificacion-datos\/","title":{"rendered":"Objetos DICOM: Codificaci\u00f3n de Datos y Estructura SQ"},"content":{"rendered":"<h2>Objetos DICOM y Codificaci\u00f3n de Datos: Lo Que Todo Profesional Necesita Saber<\/h2>\n<p>Si trabajas con im\u00e1genes m\u00e9dicas, seguramente te has encontrado con situaciones donde un examen simplemente \u00abno abre\u00bb o aparece corrupto en otro sistema. En la mayor\u00eda de los casos, el problema radica en c\u00f3mo los datos DICOM est\u00e1n codificados y estructurados internamente. Comprender c\u00f3mo funcionan los objetos DICOM no es mera curiosidad t\u00e9cnica \u2014 es la habilidad que marca la diferencia entre el profesional que resuelve problemas y el que solo los reporta.<\/p>\n<p>En este art\u00edculo, profundizaremos en la anatom\u00eda de los objetos DICOM: c\u00f3mo se codifican los elementos de datos, la diferencia entre codificaci\u00f3n impl\u00edcita y expl\u00edcita, el funcionamiento de las secuencias SQ y la jerarqu\u00eda Patient-Study-Series-Image. Para una visi\u00f3n general completa del est\u00e1ndar DICOM, consulta nuestra <a href=\"https:\/\/rtmedical.com.br\/?p=12597\">gu\u00eda pr\u00e1ctica completa de DICOM para sistemas de imagen m\u00e9dica<\/a>.<\/p>\n<div class=\"toc\">\n<h2>En Este Art\u00edculo<\/h2>\n<ul>\n<li><a href=\"#diccionario-comandos\">1. Diccionario de Datos y Comandos DICOM<\/a><\/li>\n<li><a href=\"#codificacion-elementos\">2. Codificaci\u00f3n de Elementos de Datos<\/a><\/li>\n<li><a href=\"#objetos-sq\">3. Objetos DICOM y Secuencias SQ<\/a><\/li>\n<li><a href=\"#jerarquia\">4. Jerarqu\u00eda de Informaci\u00f3n DICOM<\/a><\/li>\n<li><a href=\"#errores-comunes\">5. Errores Comunes y C\u00f3mo Evitarlos<\/a><\/li>\n<\/ul>\n<\/div>\n<h2 id=\"diccionario-comandos\">Diccionario de Datos Privados y Comandos DICOM<\/h2>\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" class=\"alignright lazyload\" data-src=\"https:\/\/rtmedical.com.br\/wp-content\/uploads\/2026\/02\/dicom-data-element-encoding-implicit-explicit.jpg\" alt=\"Tabla comparativa de codificaci\u00f3n impl\u00edcita y expl\u00edcita de elementos de datos DICOM con ejemplos binarios\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 692px; --smush-placeholder-aspect-ratio: 692\/555;\"><figcaption>Codificaci\u00f3n impl\u00edcita vs. expl\u00edcita de VR en DICOM<\/figcaption><\/figure>\n<p>El Diccionario de Datos DICOM (PS3.6) mapea cada atributo del mundo real a una etiqueta num\u00e9rica en formato <strong>(Grupo, Elemento)<\/strong>. Pero, \u00bfqu\u00e9 sucede cuando un fabricante necesita almacenar informaci\u00f3n propietaria que no existe en el diccionario est\u00e1ndar?<\/p>\n<p>La respuesta est\u00e1 en los <strong>grupos privados<\/strong> \u2014 grupos con numeraci\u00f3n impar reservados exclusivamente para datos propietarios del fabricante. Por ejemplo, TeraRecon utiliza el grupo <code>0077<\/code> en su sistema Aquarius para almacenar atributos como <code>(0077,0010)<\/code> para UIDs originales de series y <code>(0077,0020)<\/code> para nombres de datos binarios. Cada fabricante elige su propio grupo impar, garantizando que sus datos propietarios no colisionen con el est\u00e1ndar.<\/p>\n<p>Los <strong>comandos DICOM<\/strong> \u2014 como Print, Store, Move y Get \u2014 se codifican en el grupo reservado <code>0000<\/code>. El elemento <code>(0000,0100)<\/code> identifica el tipo de comando, mientras que <code>(0000,0110)<\/code> almacena el ID del mensaje. A diferencia de los elementos de datos, DICOM <em>no permite<\/em> atributos de comando propietarios, lo que limita la flexibilidad del protocolo para escenarios modernos como la telerradiolog\u00eda.<\/p>\n<h3>Limitaciones del Sistema de Comandos Actual<\/h3>\n<p>El conjunto de comandos DICOM fue dise\u00f1ado para arquitecturas PACS locales que resultan cada vez m\u00e1s obsoletas. Los proyectos modernos de imagen digital \u2014 telerradiolog\u00eda, integraci\u00f3n en la nube, flujos de trabajo con IA \u2014 demandan estructuras de comando m\u00e1s flexibles. La imposibilidad de crear etiquetas propietarias en comandos sigue siendo un tema de debate activo en la comunidad DICOM. Para comprender c\u00f3mo operan los comandos en la pr\u00e1ctica, nuestro art\u00edculo sobre <a href=\"https:\/\/rtmedical.com.br\/?p=12613\">fundamentos DICOM: objetos y comunicaciones<\/a> explora los servicios DIMSE en detalle.<\/p>\n<h2 id=\"codificacion-elementos\">Codificaci\u00f3n Impl\u00edcita vs. Expl\u00edcita: C\u00f3mo DICOM Escribe los Datos<\/h2>\n<p>Toda la informaci\u00f3n en DICOM se convierte en secuencias de bytes mediante dos m\u00e9todos fundamentales de codificaci\u00f3n: <strong>impl\u00edcita<\/strong> y <strong>expl\u00edcita<\/strong>. La elecci\u00f3n entre ambos afecta directamente c\u00f3mo tus sistemas interpretan los datos.<\/p>\n<h3>Codificaci\u00f3n Impl\u00edcita (VR Impl\u00edcito)<\/h3>\n<p>Con la codificaci\u00f3n impl\u00edcita \u2014 el est\u00e1ndar por defecto en DICOM \u2014, cada elemento de datos sigue esta estructura:<\/p>\n<ul>\n<li><strong>Tag<\/strong>: 4 bytes (2 para Grupo + 2 para Elemento)<\/li>\n<li><strong>Longitud del valor<\/strong>: 4 bytes (entero de 32 bits)<\/li>\n<li><strong>Valor<\/strong>: $L$ bytes de datos<\/li>\n<\/ul>\n<p>Consideremos el nombre del paciente \u00abSmith^Joe\u00bb: el elemento <code>(0010,0010)<\/code> se codifica en 18 bytes. Los primeros 4 bytes representan la etiqueta en Little Endian (<code>10 00 10 00<\/code>), los siguientes 4 bytes indican la longitud $L = 10$ (<code>0A 00 00 00<\/code>), y los \u00faltimos 10 bytes contienen la cadena \u00abSmith^Joe \u00bb con un espacio de relleno para mantener la longitud par.<\/p>\n<div class=\"info-box note\">\n<strong>Nota T\u00e9cnica:<\/strong> DICOM utiliza <em>Little Endian<\/em> por defecto, es decir, en n\u00fameros multi-byte, el byte menos significativo se escribe primero. El n\u00famero <code>0010<\/code> aparece como <code>10 00<\/code> en la secuencia binaria.\n<\/div>\n<h3>Codificaci\u00f3n Expl\u00edcita (VR Expl\u00edcito)<\/h3>\n<p>La codificaci\u00f3n expl\u00edcita agrega el tipo VR al elemento y se divide en dos variantes:<\/p>\n<p><strong>Para VRs est\u00e1ndar<\/strong> (excepto OB, OW, OF, SQ, UT, UN): el campo de 4 bytes de longitud se reemplaza por 2 bytes de tipo VR + 2 bytes de longitud. Para el mismo \u00abSmith^Joe\u00bb, ver\u00edamos: <code>10 00 10 00 50 4E 0A 00 53 6D...<\/code> \u2014 donde <code>50 4E<\/code> son los caracteres ASCII \u00abPN\u00bb que indican Person Name.<\/p>\n<p><strong>Para VRs especiales<\/strong> (OB, OW, OF, SQ, UT, UN): despu\u00e9s de los 2 bytes de VR, hay 2 bytes reservados (siempre <code>0000<\/code>) seguidos de 4 bytes para la longitud. Esta variante acomoda elementos con datos potencialmente muy grandes, como b\u00faferes de p\u00edxeles.<\/p>\n<h3>\u00bfCu\u00e1ndo Usar Cada M\u00e9todo?<\/h3>\n<p>No es posible mezclar codificaci\u00f3n impl\u00edcita y expl\u00edcita en el mismo objeto DICOM. Esta decisi\u00f3n se negocia entre las aplicaciones <em>antes<\/em> de cualquier intercambio de datos, mediante los Transfer Syntaxes. En mi experiencia, la codificaci\u00f3n expl\u00edcita es preferible en escenarios de interoperabilidad porque lleva la informaci\u00f3n de tipo junto a los datos, reduciendo errores de decodificaci\u00f3n \u2014 especialmente con atributos propietarios ausentes del diccionario est\u00e1ndar.<\/p>\n<h2 id=\"objetos-sq\">Objetos DICOM y Secuencias SQ: Estructuras Anidadas<\/h2>\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" class=\"alignleft lazyload\" data-src=\"https:\/\/rtmedical.com.br\/wp-content\/uploads\/2026\/02\/dicom-object-nesting-sq-encoding.jpg\" alt=\"Diagrama de codificaci\u00f3n SQ mostrando anidamiento de objetos DICOM con elementos de datos en m\u00faltiples niveles\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 692px; --smush-placeholder-aspect-ratio: 692\/705;\"><figcaption>Estructura de anidamiento de objetos DICOM con SQ<\/figcaption><\/figure>\n<p>Un <strong>objeto DICOM<\/strong> es, en esencia, una colecci\u00f3n ordenada de elementos de datos. Cada imagen m\u00e9dica, comando o informe se encapsula en este formato. Los elementos dentro de un objeto se organizan en orden ascendente de etiquetas \u2014 esta ordenaci\u00f3n no es solo una convenci\u00f3n, sino una herramienta de validaci\u00f3n: si un elemento con una etiqueta menor aparece despu\u00e9s de uno mayor, el objeto est\u00e1 corrupto.<\/p>\n<p>La verdadera complejidad surge con el tipo VR <strong>SQ (Sequence)<\/strong>. Los elementos SQ no contienen datos simples \u2014 encapsulan secuencias de otros objetos DICOM, creando una estructura tipo \u00e1rbol. Piensa en un libro: los cap\u00edtulos contienen secciones, que a su vez contienen subsecciones. De igual manera, un objeto DICOM puede contener objetos anidados en m\u00faltiples niveles.<\/p>\n<h3>Codificaci\u00f3n de Secuencias SQ<\/h3>\n<p>Cada objeto dentro de una secuencia SQ est\u00e1 precedido por la etiqueta de delimitaci\u00f3n <code>(FFFE,E000)<\/code>, seguida por:<\/p>\n<ul>\n<li><strong>Longitud expl\u00edcita<\/strong>: un valor num\u00e9rico que indica cu\u00e1ntos bytes ocupa el objeto<\/li>\n<li><strong>Longitud indefinida<\/strong>: el valor <code>FFFFFFFF<\/code>, donde el final del objeto se marca con la etiqueta <code>(FFFE,E00D)<\/code><\/li>\n<\/ul>\n<p>La secuencia SQ completa tambi\u00e9n puede tener longitud expl\u00edcita o indefinida. En el segundo caso, el final se marca con <code>(FFFE,E0DD)<\/code>. Este enfoque con delimitadores es an\u00e1logo a las etiquetas XML de apertura y cierre \u2014 y en la pr\u00e1ctica, resulta m\u00e1s confiable que la longitud expl\u00edcita.<\/p>\n<div class=\"info-box tip\">\n<strong>Consejo Pr\u00e1ctico:<\/strong> Si implementas software DICOM, prefiere delimitadores de longitud indefinida al escribir secuencias SQ. Son m\u00e1s simples de implementar y menos susceptibles a errores de c\u00e1lculo. Sin embargo, tu aplicaci\u00f3n <em>debe<\/em> ser capaz de leer ambos formatos, ya que otros fabricantes pueden usar longitud expl\u00edcita.\n<\/div>\n<h3>Ejemplo Pr\u00e1ctico: Referenced Series Sequence<\/h3>\n<p>Un caso real de anidamiento SQ es el atributo <code>(0008,1115)<\/code> \u2014 Referenced Series Sequence. En el nivel 0, tenemos el SQ; en el nivel 1, aparece el Series Instance UID <code>(0020,000E)<\/code> junto con otra secuencia <code>(0008,114A)<\/code>; y en el nivel 2, encontramos los UIDs de referencia <code>(0008,1150)<\/code> y <code>(0008,1155)<\/code>. Si programas codificaci\u00f3n SQ, implementarla con recursi\u00f3n es algo natural \u2014 como cualquier estructura de datos tipo \u00e1rbol.<\/p>\n<h2 id=\"jerarquia\">Jerarqu\u00eda de Informaci\u00f3n DICOM: Patient-Study-Series-Image<\/h2>\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" class=\"alignright lazyload\" data-src=\"https:\/\/rtmedical.com.br\/wp-content\/uploads\/2026\/02\/dicom-information-hierarchy-patient-study.jpg\" alt=\"Jerarqu\u00eda de informaci\u00f3n DICOM Patient-Study-Series-Image con UIDs de identificaci\u00f3n \u00fanica\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 690px; --smush-placeholder-aspect-ratio: 690\/619;\"><figcaption>Jerarqu\u00eda DICOM: del paciente a la imagen individual<\/figcaption><\/figure>\n<p>DICOM organiza toda la informaci\u00f3n en cuatro niveles jer\u00e1rquicos que reflejan el flujo cl\u00ednico real: <strong>Paciente \u2192 Estudio \u2192 Serie \u2192 Imagen<\/strong>.<\/p>\n<ul>\n<li><strong>Paciente<\/strong>: identificado por Patient ID <code>(0010,0020)<\/code><\/li>\n<li><strong>Estudio<\/strong>: identificado por Study Instance UID <code>(0020,000D)<\/code><\/li>\n<li><strong>Serie<\/strong>: identificada por Series Instance UID <code>(0020,000E)<\/code><\/li>\n<li><strong>Imagen<\/strong>: identificada por SOP Instance UID <code>(0008,0018)<\/code><\/li>\n<\/ul>\n<p>Esta jerarqu\u00eda existe porque en la pr\u00e1ctica cl\u00ednica, un paciente puede tener m\u00faltiples estudios (CT, RM, US), cada estudio contiene series con diferentes protocolos, y cada serie tiene una o m\u00e1s im\u00e1genes. Los UIDs garantizan que cada entidad sea globalmente \u00fanica \u2014 formato UI con hasta 64 caracteres compuestos por d\u00edgitos y puntos, como <code>1.2.840.10008.1.2<\/code>.<\/p>\n<h3>Identificadores \u00danicos (UIDs): \u00bfPor Qu\u00e9 Son Globales?<\/h3>\n<p>Imagina una imagen de rayos X copiada, anotada y enviada para lectura telerradiol\u00f3gica en otro pa\u00eds. Ahora existen varias instancias de la misma imagen original, cada una potencialmente modificada. \u00bfC\u00f3mo diferenciarlas? Mediante UIDs distintos para cada instancia. La estructura de un UID es <code>&lt;org root&gt;.&lt;suffix&gt;<\/code>, donde el root identifica la organizaci\u00f3n y el sufijo garantiza la unicidad dentro del alcance.<\/p>\n<h2 id=\"errores-comunes\">Errores Comunes en la Estructuraci\u00f3n DICOM y C\u00f3mo Evitarlos<\/h2>\n<p>Tras a\u00f1os trabajando con integraci\u00f3n de sistemas de imagen, ciertos problemas aparecen con frecuencia preocupante:<\/p>\n<p><strong>1. Patient ID inconsistente:<\/strong> Hospitales que asignan IDs diferentes al mismo paciente dependiendo de la modalidad o el destino de las im\u00e1genes. He visto casos donde el ID \u00abW\/I\u00bb (without ID) se asignaba a todos los pacientes sin registro, fusionando efectivamente decenas de pacientes en un solo registro del PACS. Si no hay ID disponible, usar iniciales con fecha de nacimiento (ej: <code>JS19670102<\/code>) es infinitamente mejor que un valor gen\u00e9rico.<\/p>\n<p><strong>2. Elementos obligatorios ausentes:<\/strong> Los digitalizadores de pel\u00edculas frecuentemente encapsulan im\u00e1genes en formato DICOM sin incluir todas las etiquetas obligatorias (Tipo 1). Un Patient ID en blanco puede interpretarse como comod\u00edn, fusionando pacientes diferentes en el archivo. Los objetos DICOM sin elementos requeridos se consideran ilegales seg\u00fan el est\u00e1ndar.<\/p>\n<p><strong>3. Etiquetas Group Length incorrectas:<\/strong> La etiqueta <code>(gggg,0000)<\/code> almacenaba la longitud total de un grupo. Aunque fue retirada desde 2008, muchas implementaciones a\u00fan la escriben incorrectamente. \u00bfEl resultado? Software DICOM conservador puede rechazar el objeto completo. La recomendaci\u00f3n actual: no la incluyas, pero debes saber leerla cuando est\u00e9 presente.<\/p>\n<h2>Cu\u00e1ndo NO Intentar Interpretar Datos DICOM Manualmente<\/h2>\n<p>Existen escenarios donde intentar parsear objetos DICOM manualmente genera m\u00e1s problemas de los que resuelve:<\/p>\n<ul>\n<li><strong>UIDs como fuente de datos<\/strong>: Nunca extraigas informaci\u00f3n (fechas, IDs de paciente) a partir del UID. DICOM proh\u00edbe expl\u00edcitamente esta pr\u00e1ctica \u2014 los UIDs pueden modificarse en cualquier momento<\/li>\n<li><strong>Conversi\u00f3n impl\u00edcita a expl\u00edcita con etiquetas propietarias<\/strong>: Si un atributo de grupo impar no existe en el diccionario est\u00e1ndar, la conversi\u00f3n a VR expl\u00edcito puede fallar. Usa el tipo UN (Unknown) en estos casos<\/li>\n<li><strong>Objetos con SQ de m\u00faltiples niveles y longitud expl\u00edcita<\/strong>: Un error de 1 byte en el valor de longitud hace que toda la secuencia posterior sea ilegible. Prefiere delimitadores de longitud indefinida<\/li>\n<\/ul>\n<p>La comprensi\u00f3n profunda de la codificaci\u00f3n DICOM es lo que permite diagnosticar problemas de interoperabilidad que las herramientas automatizadas no pueden resolver. Para dominar los conceptos fundamentales del est\u00e1ndar, no dejes de leer nuestra <a href=\"https:\/\/rtmedical.com.br\/?p=12597\">gu\u00eda completa sobre DICOM en la pr\u00e1ctica cl\u00ednica<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Comprende c\u00f3mo los objetos DICOM codifican datos con VR impl\u00edcito y expl\u00edcito, secuencias SQ anidadas y la jerarqu\u00eda Patient-Study-Series-Image.<\/p>\n","protected":false},"author":1,"featured_media":12617,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"ngg_post_thumbnail":0,"fifu_image_url":"","fifu_image_alt":"","footnotes":""},"categories":[18],"tags":[162,164,163,166,165],"class_list":{"0":"post-12629","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-sin-categorizar","8":"tag-dicom-3","9":"tag-hl7-3","10":"tag-pacs-4","11":"tag-radiologia-digital-2","12":"tag-workflow-3"},"aioseo_notices":[],"rt_seo":{"title":"","description":"","canonical":"","og_image":"","robots":"default","schema_type":"default","include_in_llms":false,"llms_label":"","llms_summary":"","faq_items":[],"video":[],"gtin":"","mpn":"","brand":"","aggregate_rating":[]},"_links":{"self":[{"href":"https:\/\/rtmedical.com.br\/es\/wp-json\/wp\/v2\/posts\/12629\/"}],"collection":[{"href":"https:\/\/rtmedical.com.br\/es\/wp-json\/wp\/v2\/posts\/"}],"about":[{"href":"https:\/\/rtmedical.com.br\/es\/wp-json\/wp\/v2\/types\/post\/"}],"author":[{"embeddable":true,"href":"https:\/\/rtmedical.com.br\/es\/wp-json\/wp\/v2\/users\/1\/"}],"replies":[{"embeddable":true,"href":"https:\/\/rtmedical.com.br\/es\/wp-json\/wp\/v2\/comments\/?post=12629"}],"version-history":[{"count":0,"href":"https:\/\/rtmedical.com.br\/es\/wp-json\/wp\/v2\/posts\/12629\/revisions\/"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/rtmedical.com.br\/es\/wp-json\/wp\/v2\/media\/12617\/"}],"wp:attachment":[{"href":"https:\/\/rtmedical.com.br\/es\/wp-json\/wp\/v2\/media\/?parent=12629"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/rtmedical.com.br\/es\/wp-json\/wp\/v2\/categories\/?post=12629"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/rtmedical.com.br\/es\/wp-json\/wp\/v2\/tags\/?post=12629"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}