Java ColorProcessor(ImageJ导入库)不会在Android中获取BitmapImage

Java ColorProcessor(ImageJ导入库)不会在Android中获取BitmapImage,java,android,bitmap,imagej,cbir,Java,Android,Bitmap,Imagej,Cbir,我目前正在使用上找到的基于内容的图像检索算法 该算法被设置为在JRE上运行,但我已经适当地替换了导入,以便它在ADT上工作。例如,BuffereImage已被位图替换。 我的问题是,我不断地在屏幕上出现红线错误 ColorProcessor cp = new ColorProcessor(image); 错误为:;“构造函数ColorProcessor(映像)引用缺少的类型映像”。 有人能告诉我我遗漏了什么或是没有认出什么吗。任何帮助都将不胜感激 // a local version on

我目前正在使用上找到的基于内容的图像检索算法 该算法被设置为在JRE上运行,但我已经适当地替换了导入,以便它在ADT上工作。例如,BuffereImage已被位图替换。 我的问题是,我不断地在屏幕上出现红线错误

 ColorProcessor cp = new ColorProcessor(image);
错误为:;“构造函数ColorProcessor(映像)引用缺少的类型映像”。 有人能告诉我我遗漏了什么或是没有认出什么吗。任何帮助都将不胜感激

// a local version on the computer
            URL url = FeatureExtraction.class.getResource(name);
            System.out.println("url = " + url);
            Bitmap image = null;

            // ImageIO is not supported in Android SDK so use Bitmap to achieve the
                    // same thing.
                    //Bitmap img = BitmapFactory.decodeFile(name);
                    // System.out.println("image = " + img);


            try {
                //image = ImageIO.read(url);
                image = BitmapFactory.decodeFile(name);
                //image  = BitmapFactory.decodeStream(url.openConnection().getInputStream());
            } catch(IOException e) {
                System.out.println("read error: " + e.getMessage());
            }

            ColorProcessor cp = new ColorProcessor(image);

该错误实际上是在抱怨另一段代码,即ColorProcessor构造函数,它接受java.awt.Image()类型的参数

抱怨是它找不到java.awt.Image类定义,我认为Android中没有该定义(请参阅)


无论如何,您不能将图像变量传递给new ColorProcessor(),因为它的类型是android.graphics.bitmap()。。。与ColorProcessor所需的java.awt.Image完全不相关。

认为会是这样。所以基本上没有办法绕过它?我无法在我的应用程序中使用ColorProcessor?位图不太可能被转换为android.graphics.Image对象,并且仍然会被传递到ColorProcessor?情况似乎就是这样。看起来不可能在Android上使用ImageJ(这真的太糟糕了)。。至少在不修改ImageJ本身的情况下是这样。可能会尝试修改,谢谢。我会让你知道事情的进展。你知道我可以用什么替代品吗?我听说有一个ImageJ 2.0,但它仍处于测试阶段,还不清楚它是否与ADT兼容。我宁愿保留我的代码并找到一个替代库,或者像你说的那样尝试修改ij本身。修改imagej1.x以在Android上运行是一个巨大的项目。ImageJ2项目的目标之一是使这样的事情成为可能,但还没有人对此付出认真的努力,这仍然是一项实质性的努力。如果你想继续,请随意加入邮件列表上的社区。