1

J'ai téléchargé un appareil photo Android2 demo, il a bien fonctionné.Appareil photo Android2 Étalonnage intrinsèque de l'objectif

Maintenant, je veux obtenir la matrice intrinsèque de la caméra en interrogeant le CameraCharacteristics.

Mon code est

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 
     } 
    } 

La intrinsèque devrait être un groupement 5-élément, mais intrinsic = characteristics.get(CameraCharacteristics.LENS_INTRINSIC_CALIBRATION) renvoie la valeur NULL.

+0

Votre appareil revendique-t-il la prise en charge complète de l'API camera2? –

+0

Comment demander le support? J'ai déjà ajouté '' dans le fichier manifest.xml –

+0

De nombreux appareils n'ont aujourd'hui que [des implémentations paralysées] (http: // www.dpreview.com/forums/post/55600463) de l'API camera2. Il n'y a rien que vous pouvez faire à ce sujet, seulement choisir l'un des rares dispositifs qui sont en avance sur l'audition. –

Répondre

6

L'intrinsèque de l'objectif ne peut être défini que si l'appareil photo prend en charge le DEPTH_OUTPUT capability.

En ce moment, les extensions de profondeur de l'API camera2 sont nouvelles et ne sont pas encore supportées par les appareils Android.