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

来源:简书

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

相关推荐
别动哪条鱼21 分钟前
FFmpeg 核心数据结构关系图
数据结构·ffmpeg
小龙报22 分钟前
《算法通关指南数据结构和算法篇(2)--- 链表专题》
c语言·数据结构·c++·算法·链表·学习方法·visual studio
万物挽挽26 分钟前
数据结构概述
数据结构
wangwangmoon_light37 分钟前
1.10 数据结构之图
数据结构
星轨初途2 小时前
数据结构排序算法详解(2)——选择排序(附动图)
c语言·数据结构·经验分享·笔记·b树·算法·排序算法
Chance_to_win4 小时前
数据结构之排序
数据结构
小年糕是糕手4 小时前
【C++】类和对象(二) -- 构造函数、析构函数
java·c语言·开发语言·数据结构·c++·算法·leetcode
kupeThinkPoem5 小时前
跳表有哪些算法?
数据结构·算法
前端小L5 小时前
图论专题(二十一):并查集的“工程应用”——拔线重连,修复「连通网络」
数据结构·算法·深度优先·图论·宽度优先
前端小L5 小时前
图论专题(二十三):并查集的“数据清洗”——解决复杂的「账户合并」
数据结构·算法·安全·深度优先·图论