Wechsel zu Kamera2 in Android Vision API

9

Ich habe gesehen, dass in android Vision API (die Probe ist hier: Ссылка ) Kamera (Kamera1) ist jetzt veraltet und empfohlen wird camera2.

Habt ihr eine Idee, wie man CameraSource neu schreibt, um camera2 auf Android-Vision zu verwenden?

Vielen Dank im Voraus,

    
Vietnt134 01.06.2016, 04:24
quelle

2 Antworten

2

Es ist möglich, Camera2 API mit Google Vision API zu verwenden.

Zunächst erhält der Google Vision API-Gesichtserkenner einen Frame Objekt, das zum Analysieren verwendet (Gesichter und seine Orientierungspunkte erkennen).

Die Camera1-API stellt die Vorschaubilder im NV21-Bildformat zur Verfügung, was für uns ideal ist. Google Frame.builder unterstützt sowohl setImageData (ByteBuffer im NV16-, NV21- oder YV12-Bildformat) und setBitmap , um ein Bitmap als Vorschau-Frames zu verarbeiten.

Ihr Problem besteht darin, dass die Camera2-API die Vorschaubilder in einem anderen Format bereitstellt. Es ist YUV_420_888 . Damit alles funktioniert, müssen Sie die Vorschaubilder in eines der unterstützten Formate konvertieren.

Sobald Sie die Vorschaubilder von Camera2 von Ihrem ImageReader als Image Sie können diese Funktion verwenden, um sie in ein unterstütztes Format zu konvertieren (in diesem Fall NV21).

%Vor%

Dann können Sie das zurückgegebene Byte [] verwenden, um einen Google Vision Frame zu erstellen:

%Vor%

Abschließend rufen Sie den Detektor mit dem erstellten Frame auf:

%Vor%

Wie auch immer, wenn Sie mehr darüber wissen wollen, können Sie mein kostenloses Arbeitsbeispiel auf GitHub testen: Camera2Vision . Ich hoffe, ich habe geholfen:)

    
Ezequiel Adrian 21.03.2017 07:43
quelle
1

Bitte werfen Sie einen Blick

camera2 mit Mobile Vision? # 65

Ok, ich habe das gefunden

  

Es gibt keine kurzfristigen Pläne für eine camera2-Version der CameraSource-Klasse in der offiziellen API. Da die API jedoch strukturiert ist, könnte eine alternative Version von CameraSource von der Entwickler-Community geschrieben werden, die camera2 verwendet. Alle vorhandenen APIs zum Arbeiten mit Frames und Detektoren reichen aus, um auch eine camera2-Implementierung zu unterstützen.

    
ashishdhiman2007 18.01.2017 06:30
quelle

Tags und Links