1

私は現在 Camera2 を使用するアプリケーションを開発しています。スケーリングおよび変換された TextureView にプレビューを表示します (画像の一部のみを表示する必要があります)。私の問題は、画像全体を分析する必要があることです。

CameraDevice.StateCallback にあるもの:

@Override
    public void onOpened(CameraDevice camera) {
        mCameraDevice = camera;

        SurfaceTexture texture = mTextureView.getSurfaceTexture();
        texture.setDefaultBufferSize(mPreviewSize.getWidth(), mPreviewSize.getHeight());
        Surface surface = new Surface(texture);

        try {
            mPreviewBuilder = mCameraDevice.createCaptureRequest(CameraDevice.TEMPLATE_PREVIEW);
        } catch (CameraAccessException e){
            e.printStackTrace();
        }

        try {
            mCameraDevice.createCaptureSession(Arrays.asList(surface), mPreviewStateCallback, null);
            mPreviewBuilder.addTarget(surfaceFull);
        } catch (CameraAccessException e) {
            e.printStackTrace();
        }
    }

そして私の SurfaceTextureListener で:

@Override
    public void onSurfaceTextureUpdated(SurfaceTexture surface) {
        Thread thread = new Thread(new Runnable() {
            @Override
            public void run() {
                my_analyze(mTextureView.getBitmap());
            }
        });
        thread.start();
    }

そして、ビットマップはTextureView(論理的)に表示されるものにすぎませんが、画像全体が必要です。

出来ますか ?

ありがとう、ニクロ

4

2 に答える 2