그래서 affdex SDK를 사용하여 얼굴 랜드 마크 코드를 작성하고 이미지 수신기에서받은 프레임을 전달하여 비트 맵에서 특정 픽셀을 얻으려고합니다. 이 비트 맵을 가져 오려고하면 null
으로 돌아오고 있습니다. 왜 이것이 사실인지 도움이 될 것입니다! 또한 CameraDetector를 사용하고 있습니다.affdex frame.getOriginalBitmapFrame()은 카메라 피드를 분석 할 때 null을 반환합니다.
@Override
public void onImageResults(List<Face> faces, Frame frame, float v) {
if (faces == null|| frame == null)
return; //frame was not processed
if (faces.size() == 0)
overlayView.adjustFaces(null, null);
//final Bitmap b = Bitmap.createBitmap(cameraView.getMeasuredWidth(), cameraView.getMeasuredHeight(), Bitmap.Config.ARGB_8888);
overlayView.adjustFaces(faces, frame);
final Bitmap frameF = frame.getOriginalBitmapFrame();
final List<Face> facesF = faces;
extractorThread.addToRunnableQueue(new Runnable() {
@Override
public void run() {
float data = regionVal(facesF, frameF);
System.out.println(data);
extractorThread.updateBuffer(data);
extractorThread.computeHR();
}
});
}
내가 얻는 frameF
비트 맵은 항상 null
이고, 나는 프레임이 BitmapFrame 경우