小编Jun*_*ang的帖子

使用Android camera2 API和OpenCV的图像处理框架

我是Camera2 API的新手。我想在我的Android手机上建立图像处理框架。

步骤1:使用Camera2 API打开相机预览流

步骤2:将预览框架数据馈送到OpenCV进行处理

第三步:在屏幕上实时显示处理结果

目前,我已经使用ImageReaderC ++ OpenCV代码完成了Step1 。但是,我不知道该怎么做。如何在屏幕上显示经过处理的图像?(我要显示正常图像,如果检测到预定义对象,则要覆盖图标)

以下是一些关键代码:

protected void createCameraPreview() {
    try {
        SurfaceTexture texture = textureView.getSurfaceTexture();
        assert texture != null;
        texture.setDefaultBufferSize(imageDimension.getWidth(), imageDimension.getHeight());
      //  Surface surface = new Surface(texture);
        Surface mImageSurface = mImageReader.getSurface();
        captureRequestBuilder = cameraDevice.createCaptureRequest(CameraDevice.TEMPLATE_PREVIEW);
      //  captureRequestBuilder.addTarget(surface);

        captureRequestBuilder.addTarget(mImageSurface);


        cameraDevice.createCaptureSession(Arrays.asList(mImageSurface), new CameraCaptureSession.StateCallback(){
                    @Override
                    public void onConfigured(@NonNull CameraCaptureSession cameraCaptureSession) {
                        //The camera is already closed
                        if (null == cameraDevice) {
                            return;
                        }
                        cameraCaptureSessions = cameraCaptureSession;
                        updatePreview();
                    }
                    @Override
                    public void onConfigureFailed(@NonNull CameraCaptureSession …
Run Code Online (Sandbox Code Playgroud)

android opencv image-processing android-camera2

5
推荐指数
0
解决办法
2654
查看次数