Android打造圆形相机并实现人脸识别(二)

本文深入解析Android Camera2 API的使用方法,包括初始化过程、预览与拍照流程,以及如何处理图像数据。通过实例代码展示如何配置CameraHelper类,实现相机预览、设置曝光度与对焦,创建预览会话,以及拍照捕获图像。

还是先看效果:

  

    这里还是再放一下预览图,方便如果觉得符合自己需求的兄弟萌可以看下去。

   相机预览

    这里我用的Camera2的API,具体有关Camera2的简介可以看下这篇博客https://blog.youkuaiyun.com/HardWorkingAnt/article/details/72786782 

    具体的Helper类可以移步到这里:https://github.com/wangshengyang1996/GLCameraDemo/tree/master/app/src/main/java/com/wsy/glcamerademo/camera2

    我也是参考以上两个链接地址的博客/github的代码来完善CameraHelper类的。

    当我们在确认权限开启后,即可初始化Helper。

fun initCamera() {
    mTextureView ?: return

    Log.d(TAG, "initCamera")
    mCameraHelper = CameraHelper.Companion.Builder()
        .cameraListener(this)
        .specificCameraId(CAMERA_ID)
        .mContext(mFragment?.context!!)
        .previewOn(mTextureView)
        .previewViewSize(
            Point(
                mTextureView.layoutParams.width,
                mTextureView.layoutParams.height
            )
        )
        .rotation(mFragment?.activity?.windowManager?.defaultDisplay?.rotation ?: 0)
        .build()
    Log.d(TAG, "mCameraHelper = $mCameraHelper is null ? -> ${mCameraHelper == null}")
    mCameraHelper?.start()
    switchText("请将人脸放入取景框中", "请点击按钮拍照")
}

    那么start方法具体做的其实还是通过systemservice打开camera:

@Synchronized
fun start() {
    Log.i(TAG, "start")
    if (mCame
评论 4
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值