Android 如何设置;上下文“;用于loadResource()加载可绘制图像
我正在尝试打开一个jpeg文件,它是我的应用程序的可绘制文件。下面的方法我不知道如何设置变量“context”(这是函数loadResource的第一个参数) 我的目标就是加载这张图像,提取一些特征,并将其与从相机抓取的帧进行比较。为此,我想要一些好的建议教程(我将使用一些特征匹配方法)Android 如何设置;上下文“;用于loadResource()加载可绘制图像,android,opencv,android-drawable,android-context,Android,Opencv,Android Drawable,Android Context,我正在尝试打开一个jpeg文件,它是我的应用程序的可绘制文件。下面的方法我不知道如何设置变量“context”(这是函数loadResource的第一个参数) 我的目标就是加载这张图像,提取一些特征,并将其与从相机抓取的帧进行比较。为此,我想要一些好的建议教程(我将使用一些特征匹配方法) 非常感谢 如果您在活动范围内,只需编写此: Mat img = Utils.loadResource(this, refrenceimgID, Highgui.CV_LOAD_IMAGE_COLOR); Img
非常感谢 如果您在活动范围内,只需编写此
:
Mat img = Utils.loadResource(this, refrenceimgID, Highgui.CV_LOAD_IMAGE_COLOR);
Imgproc.cvtColor(img, gryimg, Imgproc.COLOR_RGB2BGRA);
Mat img = Utils.loadResource(this, refrenceimgID, Highgui.CV_LOAD_IMAGE_COLOR);
Mat img = Utils.loadResource(YourActivityName.this, refrenceimgID, Highgui.CV_LOAD_IMAGE_COLOR);
如果您在片段范围内,请使用getActivity()
而不是this
只需将活动实例
用作MainActivity。在需要上下文的地方使用
或者也可以使用ApplicationClass实例
阅读上下文您需要了解更多
使用getApplicationContext()
:
或者,如果您的代码在活动中,请使用此
:
Mat img = Utils.loadResource(this, refrenceimgID, Highgui.CV_LOAD_IMAGE_COLOR);
Imgproc.cvtColor(img, gryimg, Imgproc.COLOR_RGB2BGRA);
Mat img = Utils.loadResource(this, refrenceimgID, Highgui.CV_LOAD_IMAGE_COLOR);
Mat img = Utils.loadResource(YourActivityName.this, refrenceimgID, Highgui.CV_LOAD_IMAGE_COLOR);
或您的活动名称。此:
Mat img = Utils.loadResource(this, refrenceimgID, Highgui.CV_LOAD_IMAGE_COLOR);
Imgproc.cvtColor(img, gryimg, Imgproc.COLOR_RGB2BGRA);
Mat img = Utils.loadResource(this, refrenceimgID, Highgui.CV_LOAD_IMAGE_COLOR);
Mat img = Utils.loadResource(YourActivityName.this, refrenceimgID, Highgui.CV_LOAD_IMAGE_COLOR);
您可以尝试以下代码:
Context c= this;
Resources res2 = c.getResources();
Drawable drawable = res2.getDrawable(R.drawable.YOUR_DRAWABLE_NAME);
您不知道什么是上下文
吗?感谢使用getApplicationContext()它可以工作!。。。我知道这一点,因为我在从相机抓取的相框上用加载图像的大小写了一个文本(我正在使用onCameraFrame函数)。。。但是现在,如果我想显示这个图像而不是从相机抓取的图像(只需让函数返回这个新垫子),它就不起作用(我看到黑屏)