Toybrick
标题:
求Android camera2 image数据帧使用rga转换方法
[打印本页]
作者:
xyt2008
时间:
2023-4-24 14:16
标题:
求Android camera2 image数据帧使用rga转换方法
Android camera2 下使用
public void
onImageAvailable(ImageReader reader)函数得到每一帧图像数据
image = reader.acquireLatestImage();
需要对image数据进行yuv420转rgb,进行算法分析;
当前在rk3568上使用opencv cpu转换1280*720分辨率的图像特别慢,不能满足实时性需求。使用libRGA进行
格式转换。始终不能转换出正确的图像来。
使用rknpu2中的android demo里面libRGA转换函数是基于camera1的,能够正常转换。将如下的转换方法进行处理camera2的image数据始终不能成功。
求个libRGA转换camera2 image数据到RGB的方法。
@Override
public void
onPreviewFrame(
byte
[] data, Camera camera) {
mCamera0
.addCallbackBuffer(data);
ImageBufferQueue.ImageBuffer imageBuffer =
mImageBufferQueue
.getFreeBuffer();
if
(imageBuffer !=
null
) {
long
oldTime = System.
currentTimeMillis
();
RGA.
colorConvert
(data,
RK_FORMAT_YCrCb_420_SP
,
imageBuffer.
mImage
,
RK_FORMAT_RGBA_8888
,
CAMERA_PREVIEW_WIDTH
,
CAMERA_PREVIEW_HEIGHT
,
this
.
flip
);
long
currentTime = System.
currentTimeMillis
();
//float fps = 1000.f / (currentTime - oldTime);
//Log.d(TAG, "fps = "+String.valueOf(fps));
float
times = currentTime - oldTime;
Log.
d
(
TAG
,
"RGA.colorConvert times = "
+String.
valueOf
(times)+
"ms"
);
mImageBufferQueue
.postBuffer(imageBuffer);
}
}
作者:
xyt2008
时间:
2023-4-24 14:18
libRGA写的rgb和bgr之间互转是能正常的。就是这个camera2出来的yuv420数据格式很怪,始终不能正确转换出来。
欢迎光临 Toybrick (https://t.rock-chips.com/)
Powered by Discuz! X3.3