Android camera2 Внутренняя калибровка объектива
Я скачал демо-версию Android camera2, она работала хорошо.
Теперь я хочу получить внутреннюю матрицу камеры, запрашивая характеристики камеры.
Мой код
private void setUpCameraOutputs(int width, int height) {
Activity activity = getActivity();
CameraManager manager = (CameraManager) activity.getSystemService(Context.CAMERA_SERVICE);
try {
for (String cameraId : manager.getCameraIdList()) {
CameraCharacteristics characteristics
= manager.getCameraCharacteristics(cameraId);
float[] intrinsic = new float[5];
intrinsic = characteristics.get(CameraCharacteristics.LENS_INTRINSIC_CALIBRATION);
//...... leave out the following part
}
}
Предполагается, что встроенным будет массив из 5 элементов, но intrinsic = characteristics.get(CameraCharacteristics.LENS_INTRINSIC_CALIBRATION)
возвращает ноль.
1 ответ
Характеристики объектива гарантированно будут определены только в том случае, если устройство камеры поддерживает функцию DEPTH_OUTPUT.
На данный момент расширения глубины API camera2 являются новыми и пока не поддерживаются практически любым устройством Android.