-->

Android开发:如何打开一个文件.DCM作为位图?(Android development: h

2019-09-01 06:39发布

目前,我想要做一个Android应用程序的DICOM下面的代码打开图片DROM RES /可绘制在“ussual”图像格式,但它不与.DCM工作

public class BitmapView extends View
{
    public BitmapView(Context context) {
            super(context);
    }
    @Override
    public void onDraw(Canvas canvas) {
    Bitmap bmp = BitmapFactory.decodeResource(getResources(), R.drawable.test);
        canvas.drawColor(Color.BLACK);
        canvas.drawBitmap(bmp, 10, 10, null);
    }
}

在主要活动:

protected void onCreate(Bundle savedInstanceState) {
           super.onCreate(savedInstanceState);
           setContentView(new BitmapView(this));     
    }

提前致谢!

Answer 1:

DICOM是一种通用集装箱。 里面DICOM文件,你可以找到一个巨大的各种图像格式。 从灰度那些到RGB,从单个帧到多帧的,与像素值在普通8位(24/32在RGB / RGBA)的范围不而且在12级或16位灰度。

DICOM文件包括许多元件(字段)指示的内容的类型和内容,即使这样如何应呈现 。 它不像DICOM图像转换成BMP一样简单。

如果您是从PACS检索DICOM图像,我会建议使用WADO服务。 这样,您就可以获取JPEG图像(已应用呈现状态的DICOM文件的内容)的结果。

另一种选择是使用一些实用的DICOM文件转换为更传统的图像格式。 有一些优秀的开源工具,如dcmj2pnm ,从DCMTK工具包。



Answer 2:

DICOM图像不被认可的Android,因此,你不能使用BitmapFactory对象打开它们。

最近Imebra已经扩展与调用Imebra本地代码,并配有预建的JAR,所以你不必应付JNI编译Java包装。



Answer 3:

除了通过jap1968和保罗提到的2个选项,这两者都是好的,但使用一些方法在不同平台上的图像转换,然后观察它的Android设备和网络连接的要求,实际上你可以查看DICOM文件本身在Android设备直接,如果你使用支持DCM和它不同的子类型的库。 一个这样的工具包,对谷歌免费的演示应用程序中播放的位置: https://play.google.com/store/apps/details?id=leadtools.datasetdemo



文章来源: Android development: how to open a .dcm file as a bitmap?