dcmtk的模块如下图所示,其中基础模块是dcmdata,其他的大部分模块依赖dcmdata。
dcmtk官网
dcmdata主要功能为解析dicom图像,对dicom图像进行编码和解码。主要的几个类为
要对检查图像进行按序列顺序分类,首先需要读取DICOM图像中的相应元素。dcmtk将dicom文件的元数据组和数据组使用不同的对象存储。
DcmMetaInfo对象存储元数据组,DcmDataset对象存储数据组。
文件解析类的头文件:
class _declspec(dllexport) DcmParse
{
public:
DcmParse(string filename);
DcmParse();
~DcmParse();
public:
bool ParseFile(string filename);
string GetElementValue(DcmTagKey &tagKey);
int GetElementValueInt(DcmTagKey &tagKey);
float GetElementValueFloat(DcmTagKey &tagKey);
DcmDataset *GetDataSet();
bool IsDcmFile(string filename);
private:
string GetMetaInfoValue(DcmTagKey &tagKey);
string GetDataSetValue(DcmTagKey &tagKey);
public:
string GetTagNameByTagKey(unsigned short group, unsigned short element);
int GetVRByTagKey(unsigned short group, unsigned short element);
unsigned short *GetUsTagKeyByTagName(const str