Android 人脸检测错误
作为项目的一部分,我正在使用以下java代码进行人脸检测。我遇到了一个奇怪的错误Android 人脸检测错误,android,eclipse,face-detection,Android,Eclipse,Face Detection,作为项目的一部分,我正在使用以下java代码进行人脸检测。我遇到了一个奇怪的错误 BitmapFactory.Options BitmapFactoryOptionsbfo = new BitmapFactory.Options(); /*BitMapFactory-Creates Bitmap objects from various sources, including * files, streams, and byte-arrays.
BitmapFactory.Options BitmapFactoryOptionsbfo = new BitmapFactory.Options();
/*BitMapFactory-Creates Bitmap objects from various sources, including
* files, streams, and byte-arrays.
*/
BitmapFactoryOptionsbfo.inPreferredConfig = Bitmap.Config.RGB_565;
imageWidth = myBitmap.getWidth();
imageHeight = myBitmap.getHeight();
myFace = new FaceDetector.Face[numberOfFace];
myFaceDetect = new FaceDetector(imageWidth, imageHeight, numberOfFace);
numberOfFaceDetected = myFaceDetect.findFaces(myBitmap, myFace);
}
//i get error over there in R.drawable.pics
myBitmap = BitmapFactory.decodeResource(getResources(), R.drawable.pics, BitmapFactoryOptionsbfo);
我应该在pics中给出pic文件的名称,但它一直给我一个错误
pics无法解析或不是字段。所以我将pic文件的名称设置为pic PS,它是drawable文件夹中的一个jpg文件。我还将单引号内的文件命名为“pic”-它给出了无效的字符常量错误
我还用双引号给它命名,但它仍然不起作用。我还将其命名为“pic.jpg”仍然不起作用您的代码中可能还有另一个名为“pics”的变量 尝试将其保存到其他文件夹中,例如MyPics。并以不同的方式命名图片,比如xyz1.jpg 在这种情况下,将行写为:
myBitmap = BitmapFactory.decodeResource(getResources(), R.MyPics.xyz1, BitmapFactoryOptionsbfo);
另外,您是否将“myBitmap”初始化为位图图像?意思是,你是否包括了这一行:
Bitmap myBitmap;
在代码中,在执行图像读取之前?只需使用以下代码行进行检查:
BitmapFactory.Options options = new BitmapFactory.Options();
options.inPreferredConfig = Bitmap.Config RGB_565;
Bitmap bMap = BitmapFactory.decodeResource(getResources(), R.drawable.icon,options);
让我知道它是否有效?
还请检查键入R.drawable后显示的图像名称
编辑:
如果仍然无法从drawable访问图像,请将图像(如pic.png)复制到asset文件夹,并使用以下代码访问它:
更新代码:
try {
InputStream bitmap=getAssets().open("icon.png");
Bitmap bit=BitmapFactory.decodeStream(bitmap);
img.setImageBitmap(bit);
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
是的,我添加了位图myBitmap;我也照你说的做了,即R.MyPics.xyz1;我也试过R.drawable.xyz1;在我键入R.drawable后也不起作用。它在一个小窗口中说,在类型“R”AssetManager中创建字段“drawable”无法解析为类型InputStream无法解析为类型BitmapFactory。Options=new BitmapFactory.Options();options.inPreferredConfig=Bitmap.Config.RGB_565;AssetManager AssetManager=getAssets();InputStream istr=assetManager.open(“pic.png”);myBitmap=BitmapFactory.decodeStream(istr);我没有找到来源→ 组织对重要必需包的导入,但是我现在正在获取InputStream istr=assetManager.open(“pic.png”)未处理的异常类型IOExceptions我应该添加一个抛出异常吗