草庐IT

ImageReader

全部标签

android - 将 Camera2 API 与 ImageReader 结合使用

我正在尝试使用GalaxyS4上的Camera2API捕获图像数据。ImageReader被用作表面提供者。使用的图像格式已在ImageFormat.YV12和ImageFormat.YUV_420_888上进行了尝试,并产生了相同的结果。设置看起来不错,我使用ImageReader从ImageReader获取图像。图像有3个平面。缓冲区是预期的大小,Y平面的Width*Height和其他两个平面的(Width*Height)/4。问题是我无法通过两种方式正确获取数据。第一个问题是Y平面数据是镜像的。这是可以处理的,虽然这很奇怪,所以我很好奇这是否是预期的。更糟糕的是,其他两架飞机似乎

Android ImageReader 获取 NV21 格式?

我没有图像或图形方面的背景,所以请耐心等待:)我正在使用JavaCV在我的一个项目中。在examples,构建了一个Frame,它有一个certainsize的缓冲区.在Android中使用publicvoidonPreviewFrame(byte[]data,Cameracamera)函数时,复制这个data字节数组是没有问题的,如果你声明FrameasnewFrame(frameWidth,frameHeight,Frame.DEPTH_UBYTE,2);其中frameWidth和frameHeight声明为Camera.SizepreviewSize=cameraParam.ge

java - 将 MediaProjection 虚拟显示器的输出捕获到 ImageReader 的系统错误

我正在开发一个需要将屏幕捕获到位图以进行传输的应用程序。我正在尝试使用新的Android5.0android.media.projectionAPIs进行屏幕捕获。此API的工作流以调用告终mediaProjection.createVirtualDisplay("TestScreen",WIDTH,HEIGHT,DPI,DisplayManager.VIRTUAL_DISPLAY_FLAG_AUTO_MIRROR,surface,null,null);在我最初尝试进行此捕获时,我从SurfaceView获取表面对象。这工作正常;最终结果是在屏幕上绘制的显示的微小副本(导致Droste

Android camera2 : java. lang.IllegalStateException : maxImages (1) has already been acquired, 在获取更多之前调用#close

您好,无法解决此问题。我已经在ImageAvailable回调中调用了imageReader.close,但仍然有错误:java.lang.IllegalStateException:maxImages(1)hasalreadybeenacquired,call#closebeforeacquiringmore.我的代码在这里:privateImageReader.OnImageAvailableListenerimageAvailableListener=newImageReader.OnImageAvailableListener(){@OverridepublicvoidonIm

java - 将多页 TIFF 图像拆分为单个图像 (Java)

一直在为这个撕毁我的头发。如何将多页/多层TIFF图像拆分为多个单独的图像?提供演示图像here.(更喜欢纯Java(即非native)解决方案。如果解决方案依赖于商业库则无关紧要。) 最佳答案 您可以使用Java高级成像库,JAI,使用ImageReader分割一个多页TIFF:ImageInputStreamis=ImageIO.createImageInputStream(newFile(pathToImage));if(is==null||is.length()==0){//handleerror}Iteratoritera

java - Android camera 2 api BufferQueue 已被废弃

我正在使用新的Androidcamera2API进行测试,我想通过相机控制每一帧。我为此做的是创建一个ImageReader并设置分辨率和图像格式。ImageReaderimageReader=ImageReader.newInstance(1280,720,ImageFormat.YUV_420_888,1);imageReader.setOnImageAvailableListener(newImageReader.OnImageAvailableListener(){@OverridepublicvoidonImageAvailable(ImageReaderreader){Im

ImageReader保存图片转 opencvmat

目录ImageReader直接保存图片,没成功,格式是yuv420,需要转换转opencvnv21保存图片,测试okrgb888data保存图片:ImageReader直接保存图片,没成功,格式是yuv420,需要转换//创建一个ImageReader对象ImageReaderreader=ImageReader.newInstance(width,height,ImageFormat.JPEG,1);reader.setOnImageAvailableListener(newImageReader.OnImageAvailableListener(){@Overridepublicvoido

Android 使用渲染脚本将 ImageReader Image 转换为 YCbCr_420_SP (NV21) 字节数组?

我目前正在使用Javacv它利用了publicvoidonPreviewFrame(byte[]data,Cameracamera)相机功能。由于不推荐使用相机,我一直在研究camera2和MediaProjection.这两个库都使用ImageReaderclass.目前我用以下代码实例化这样一个ImageReader:ImageReader.newInstance(DISPLAY_WIDTH,DISPLAY_HEIGHT,PixelFormat.RGBA_8888,2);并像这样附加一个OnImageAvailableListener:privatefinalImageReader

Android 使用渲染脚本将 ImageReader Image 转换为 YCbCr_420_SP (NV21) 字节数组?

我目前正在使用Javacv它利用了publicvoidonPreviewFrame(byte[]data,Cameracamera)相机功能。由于不推荐使用相机,我一直在研究camera2和MediaProjection.这两个库都使用ImageReaderclass.目前我用以下代码实例化这样一个ImageReader:ImageReader.newInstance(DISPLAY_WIDTH,DISPLAY_HEIGHT,PixelFormat.RGBA_8888,2);并像这样附加一个OnImageAvailableListener:privatefinalImageReader

android - Camera2 API 中的 Camera.PreviewCallback 等效项

API21中的Camera2中的Camera.PreviewCallback是否有任何等效项,比映射到SurfaceTexture并拉取Bitmap更好?我需要能够将预览数据从相机中提取为YUV? 最佳答案 您可以从Google的Camera2Basic示例代码开始。您需要将ImageReader的表面作为目标添加到预览捕获请求中://setupaCaptureRequest.BuilderwiththeoutputSurfacemPreviewRequestBuilder=mCameraDevice.createCaptureRe