草庐IT

android - 将 Camera2 API 与 ImageReader 结合使用

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

android - 如何使用 Surfaceholder 在 Android 的 Portitate 模式下更改保存图像方向

publicclassMainActivityextendsActivity{ImageViewimage;Activitycontext;Previewpreview;staticCameracamera;ButtonexitButton;ImageViewfotoButton;LinearLayoutprogressLayout;Stringpath="/sdcard/KutCamera/cache/images/";publicstaticintcount=0;@OverrideprotectedvoidonCreate(BundlesavedInstanceState){sup

android - 如何在使用 Android 移动视觉库时处理单个相机帧

我正在尝试制作一个相机应用程序,它使用带有自定义相机实例的Google移动视觉API来检测人脸,而不是GoogleAPI中的“CameraSource”,因为我也在处理帧以检测颜色并使用Camerasource我不允许得到相机框架。搜索此问题后,我发现的唯一结果是关于将移动视觉与它的CameraSource一起使用,而不是与任何自定义camera1API一起使用。我试图覆盖帧处理,然后对输出的图片进行检测,如下所示:camera.setPreviewCallback(newCamera.PreviewCallback(){@OverridepublicvoidonPreviewFram

Android Camera2 对焦状态卡住

我需要在我的应用程序中使用Camera2API。(API21+)我找到了下一个示例:https://github.com/googlesamples/android-Camera2Basic我下载了它并开始在我的手机上使用。当我按下“图片”按钮时,它调用了takePhoto方法。privatevoidtakePicture(){lockFocus();}它是一个状态机。有时这台机器卡在STATE_WAITING_LOCK上。我的设备正在等待Focus,但没有任何反应!(是的,我的设备支持自动对焦)caseSTATE_WAITING_LOCK:{IntegerafState=result

Android(Mobile)视觉摄像头亮度很低

我在我的项目中集成了googlevision,如下图所示:http://code.tutsplus.com/tutorials/reading-qr-codes-using-the-mobile-vision-api--cms-24680除了相机View亮度之外,一切看起来都很好。与我实际的Android相机应用程序相比,此处的相机View非常暗。如果我可以增加相机的亮度并打开任何低光设置,请告诉我。谢谢。图片:Camerapicture,AppCameraviewpicture 最佳答案 我遇到了同样的问题。在构建CameraSo

android - 如何在 Android 中管理相机快门速度和光圈?

我想在Android中管理相机快门速度或光圈但我对此一无所知。问题是这个:我必须在微距模式下用闪光灯,但对于较新的智能手机,闪光灯太强并且照片几乎曝光过度。我试过曝光补偿电话,但这还不够。通过使用相机软件,我注意到该应用管理相机光圈,甚至可以拍出不错的微距照片虽然闪光灯是强制打开的,所以我认为有办法那,你能帮帮我吗?我同时使用SamsungNexusS和SamsungGalaxyW。白色SamusngGalaxyACE不存在图片问题:在此案例似乎有一种硬件光功率拍摄前校准。非常感谢! 最佳答案 很抱歉给你带来这个,但这个功能根本不受

android - 在 android 中,将相机预览流式传输到 View 中

我想将android相机的相机预览流式传输到View中。目的是之后使用onDraw()向View添加各种内容。我不需要在任何时候实际捕捉图像。它不必是最高质量或每秒最大帧数。有谁知道如何做到这一点? 最佳答案 将此添加到您的xml中:进入你的Activity类:privatePreviewmPreview;CameramCamera;intnumberOfCameras;intcameraCurrentlyLocked;intdefaultCameraId;onCreate方法:mPreview=newPreview(this);s

android - ClassNotFoundException : android. hardware.camera2.CameraAccessException 与 OpenCV 3.1.0

我正在使用AndroidStudio2.2开发一个使用OpenCV3.1.0库的android项目。我是按照这个answer导入库的.情况如下:当我为API>=21(正好是API23)的设备编译项目时,一切顺利。当我为APIGradle日志FAILURE:Buildfailedwithanexception.*Whatwentwrong:Executionfailedfortask':app:transformClassesWithInstantRunForDebug'.>java.lang.ClassNotFoundException:android.hardware.camera2

android - 在 Android 中镜像前置摄像头

当您在Android中使用前置摄像头拍照时,预览沿Y轴反射,使看到的图像看起来就像用户在照镜子一样。我想撤消此效果(应用第二次反射)或只是停止自动完成的效果。我想用这个:CameramCamera;....mCamera.setPreviewCallback(...);但我真的不知道如何处理onPreviewFrame(byte[]data,Cameracamera){...}实现我所描述的目标的最佳方式是什么?请注意,我正在尝试将此效果应用于实时预览,而不是已拍摄的图像。 最佳答案 首先,当您使用Camera.open()打开相机

android - 使用 Android Camera 进行图像处理

我想在将图像显示给用户之前使用onPreviewFrame对图像进行后处理(即应用色调、棕褐色等)。据我了解,返回给回调的byte[]数据是用YUV420sp编码的。人们是否一直在用Java或使用NDK(native代码)将其解码为RGB?有没有人有将其解码为RGB的函数示例以及之后如何使用RGB值?谢谢。 最佳答案 我找到了一个将YUV420转换为RGB并在预览图像上显示(某种)实时直方图的示例应用程序。http://www.stanford.edu/class/ee368/Android/index.html