Я создаю приложение для Android, которое использует Face API для проверки того, что 2 фотографии, сделанные с помощью камеры, сделаны одним человеком.
Я уже создал UUID's
из 2 изображений и начал процесс проверки с этим кодом.
public void verificar(View view){
SampleApp sApp= new SampleApp();
FaceServiceClient faceServiceClient = new
SampleApp().getFaceServiceClient();
ByteArrayOutputStream stream = new ByteArrayOutputStream();
foto1.compress(Bitmap.CompressFormat.PNG, 100, stream);
byte[] byteArray = stream.toByteArray();
rface1 = UUID.nameUUIDFromBytes(byteArray);
stream = new ByteArrayOutputStream();
foto2.compress(Bitmap.CompressFormat.PNG, 100, stream);
byteArray = stream.toByteArray();
rface2 = UUID.nameUUIDFromBytes(byteArray);
new VerificationTask(rface1,rface2).execute();
}
Кроме того, это код результата проверки
@Override
protected VerifyResult doInBackground(Void... params) {
// Get an instance of face service client to detect faces in image.
FaceServiceClient faceServiceClient = SampleApp.getFaceServiceClient();
try{
publishProgress("Verifying...");
// Start verification.
return faceServiceClient.verify(
mFaceId0, /* The first face ID to verify */
mFaceId1); /* The second face ID to verify */
} catch (Exception e) {
publishProgress(e.getMessage());
//addLog(e.getMessage());
return null;
}
}
Когда я запускаю процесс проверки, это исключение всегда выдается
java.lang.NullPointerException: Attempt to invoke interface method 'com.microsoft.projectoxford.face.contract.VerifyResult com.microsoft.projectoxford.face.FaceServiceClient.verify(java.util.UUID, java.util.UUID)' on a null object reference
Итак faceServiceClient
является нулевым, когда faceServiceClient
.Проверка называется, но я не знаю почему.кто-нибудь знает, почему это произошло?Что я должен сделать, чтобы решить эту проблему?