DIcom调试Planar configuration

最近和CBCT组同事调dicom图像

这边得图像模块老不兼容对方得dicom文件。

vtk兼容,自己写得原生解析不兼容。

给对方调好了格式,下次生成文件还会有错。

简单记录下,日后备查。

今天对方又加了 个字段:Planar configuration

查了下,影响挺大得,这是彩色通道在pixeldata里得排列。

复制代码
(0028,0006) Planar configuration 定义了各个彩色通道值在 Pixel Data 中排列的排列方式。

值为 0 排列为 RGBRGB...。 值为 1 的排列 RRRRR...GGGGG...BBBBB。 
对于多帧图像,它是这样排列的:第一帧 RRR...GGG...BBB...,第二帧 RRR...GGG...BBB...

色彩模型:

  • RGB 这是最常用的彩色图像格式。

  • YBR_FULL 另外一种彩色图像格式,存储格式为 Y(Luminance 亮度) B(Blueness 蓝色), R(Redness, 红色)

  • YBR_FULL_422 一般用于 JPG 有损压缩格式的彩色图像,每两个像素共同使用32位,每一个像素都有自己的亮度 Y Luminance,但是共享相同的蓝色 B Blueness,红色 R Redness 两个分量。所以,它的像素值存储方式是:YYBR,YYBT,YYBR

  • YBR_RCT 用于JPEG 2000无损压缩彩色图像,Reversible Color Transformation, 可逆色彩变换。

    复制代码
      Y = (R+2G+B)/4,
      CB = B-G ,
      CR = R - G
      G = Y - (CR+CB)/4 ,
      R = CR + G, B = CB + G
  • YBR_ICT 用于 JPEG 2000有损压缩彩色图像 Irreversible Color Transformation, 不可逆色彩变换。

    复制代码
      Y = + .29900R + .58700G + .11400B
      CB = - .16875R - .33126G + .50000B
      CR = + .50000R - .41869G - .08131B

影像的 Transfer Syntax UID (0002,0010) 決定了影像的存储方式。 Pixel data 的存储方式,包括:

  • 未压缩:

    • Implicit VR Little Endian:
    • Default Transfer Syntax for DICOM 1.2.840.10008.1.2
    • Explicit VR Little Endian 1.2.840.10008.1.2.1
    • Explicit VR Big Endian 1.2.840.10008.1.2.2
  • 无损压缩:

    • JPEG Lossless :
    • Default Transfer Syntax for Lossless JPEG
    • ImageCompression 1.2.840.10008.1.2.4.70
    • JPEG 2000 Image Compression
    • (Lossless Only) 1.2.840.10008.1.2.4.90
    • RLE Lossless 1.2.840.10008.1.2.5
  • 有损压缩:

    • Default Transfer Syntax for Lossy
    • JPEG 12 Bit Image Compression

作者:坚果jimbowhy

链接:https://www.jianshu.com/p/12b9315dc30c

来源:简书

著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

相关推荐
一叶知秋061 小时前
数据结构-什么是队列?
数据结构·队列
Jasmine_llq2 小时前
《CF280C Game on Tree》
数据结构·算法·邻接表·深度优先搜索(dfs)·树的遍历 + 线性累加统计
zhongvv2 小时前
对单片机C语言指针的一些理解
c语言·数据结构·单片机·指针·汇编语言
im_AMBER2 小时前
Leetcode 102 反转链表
数据结构·c++·学习·算法·leetcode·链表
Xの哲學3 小时前
深入剖析Linux文件系统数据结构实现机制
linux·运维·网络·数据结构·算法
C雨后彩虹3 小时前
竖直四子棋
java·数据结构·算法·华为·面试
荒诞硬汉4 小时前
对象数组.
java·数据结构
散峰而望5 小时前
【算法竞赛】栈和 stack
开发语言·数据结构·c++·算法·leetcode·github·推荐算法
wen__xvn5 小时前
代码随想录算法训练营DAY13第六章 二叉树part01
数据结构
木子02045 小时前
Java8集合list.parallelStream() 和 list.stream() 区别
数据结构·list