JPG、png、bmp等常见图像转dcm格式

由于用在公司项目,具体源码不方便透露。这里也是给自己做个学习DCMTK的记录。
https://blog.csdn.net/qq_37529913/article/details/88416516这篇文章相信大家都看过了,博主的思路没什么问题但是对于各种图片需要不同处理,这里提供一个思路:

使用QImage或者opencv之类的对图片进行解析,即
QImage image = QImage(path),
QImage image_mono = image.convertToFormat(QImage::Format_Grayscale8);
然后使用image_mono.bits()获取数据。上文博主的那一系列操作本质上也是在做这件事情,就是获取到图片的RGB数据,我这里转成了灰度图。

然后使用dataset->putAndInsertUint8Array(DCM_PixelData, (Uint8*)image_mono.bits(), length);插入数据到dcm对应的tag就可以了。用这种方法的话,常规的一些图片格式都可以直接插入,否则dcmtk中对应不同图片格式可能需要不同处理。

你可能感兴趣的:(c++)