Android Camera2 参数调节关键字翻译集合,常用关键字解析

https://blog.csdn.net/qq_29333911/article/details/79400617

black_level_lock
黑电平补偿是否锁定当前值,或者可以自由更改。
color_correction_aberration_mode
色差校正算法的运算方式。
color_correction_gains
适用于拜尔原料色通道的白平衡。
color_correction_mode
模式控制选择图像数据从传感器的原始颜色为线性sRGB色彩转换。
color_correction_transform
颜色的变换矩阵,利用从传感器RGB颜色空间到输出线性sRGB色彩空间变换。
control_ae_antibanding_mode
所需的摄像装置的自动曝光算法的antibanding补偿设置。
control_ae_exposure_compensation
自动曝光(AE)目标图像亮度的调整。
control_ae_lock
是否自动曝光(AE)当前锁定到其最新计算值。
control_ae_mode
照相机设备的自动曝光程序所需的模式。
control_ae_precapture_trigger
不论相机设备将触发Precapture计量序列时,处理这个请求。
control_ae_regions
用于自动曝光调整的计量区域列表。
control_ae_target_fps_range
自动曝光程序可以调整捕获帧速以保持良好曝光范围。
control_af_mode
当前是否启用自动对焦(AF),以及它设置为什么模式。
control_af_regions
用于自动对焦的计量区域列表。
control_af_trigger
照相机设备是否会触发这个请求的自动对焦。
control_awb_lock
无论是自动白平衡(AWB)是目前最新的计算值锁定。
control_awb_mode
无论是自动白平衡(AWB)是目前设置的颜色变换领域,其照明的目标是什么。
control_awb_regions
用于自动白平衡光源估计的测光区域列表。
control_capture_intent
信息到相机设备3A(自动曝光,自动对焦,自动白平衡)例程,目的是为了捕捉,帮助相机设备决定最佳3A策略。
control_effect_mode
特殊色彩效果。
control_enable_zsl
允许摄像装置使零快门延迟模式的要求与android.control.captureintent = = still_capture。
control_mode
3A模式(自动曝光、自动白平衡、自动对焦)控制例程。
control_post_raw_sensitivity_boost
捕获原始传感器数据后输出图像的附加灵敏度提升量。
control_scene_mode
当前活动场景模式的控件。
control_video_stabilization_mode
视频稳定是否有效。
造物主edge_mode
边缘增强操作模式。
flash_mode
照相机设备闪光灯控制所需的模式。
hot_pixel_mode
热像素校正的操作模式。
jpeg_gps_location
生成映像GPS元数据时要使用的位置对象。
jpeg_orientation
jpeg图像的定位。
jpeg_quality
最后jpeg图像的压缩质量。
jpeg_thumbnail_quality
jpeg缩略图压缩质量。
jpeg_thumbnail_size
嵌入式jpeg缩略图解析。
lens_aperture
理想透镜孔径,作为透镜焦距与有效孔径的比值。
lens_filter_density
透镜中性密度滤光器所需的设置。
lens_focal_length
所需的透镜焦距;用于光学变焦。
lens_focus_distance
所需的距离对焦点平面,从镜头前的表面测量。
lens_optical_stabilization_mode
设置照相机设备在拍摄图像时是否使用光学图像稳定(稳定)。
noise_reduction_mode
噪声抑制算法的运算方式。
reprocess_effective_exposure_factor
在发送处理前,应用程序处理对原始输出帧施加曝光时间增加因子的数量。
scaler_crop_region
要捕获的传感器读出的所需区域。
sensor_exposure_time
每个像素的曝光时间。
sensor_frame_duration
从帧曝光开始到下一帧曝光开始的持续时间。
sensor_sensitivity
在处理之前应用于传感器数据的增益量。
sensor_test_pattern_data
一个像素[ R,g_even,g_odd,b ]提供测试模式android.sensor.testpatternmode是当solid_color。
sensor_test_pattern_mode
当启用时,传感器发送一个测试模式,而不是从相机进行真正的曝光。
shading_mode
应用于图像数据的镜头阴影校正质量。
statistics_face_detect_mode

二:常用的调节项

1:焦距

float minimumLens = mCameraCharacteristics.get(CameraCharacteristics.LENS_INFO_MINIMUM_FOCUS_DISTANCE);
float num = (((float) i) * minimumLens / 100);
mPreviewBuilder.set(CaptureRequest.LENS_FOCUS_DISTANCE, num);
int showNum = (int) num;
mSeekBarTextView.setText("聚焦:" + showNum);
2:曝光增益

//曝光增益
Range<Integer> range1 = mCameraCharacteristics.get(CameraCharacteristics.CONTROL_AE_COMPENSATION_RANGE);
int maxmax = range1.getUpper();
int minmin = range1.getLower();
int all = (-minmin) + maxmax;
int time = 100 / all;
int ae = ((i / time) - maxmax) > maxmax ? maxmax : ((i / time) - maxmax) < minmin ? minmin : ((i / time) - maxmax);
mPreviewBuilder.set(CaptureRequest.CONTROL_AE_EXPOSURE_COMPENSATION, ae);
mSeekBarTextView.setText("曝光增益:" + ae);
valueAE = ae;
3:曝光时间

Range<Long> range = mCameraCharacteristics.get(CameraCharacteristics.SENSOR_INFO_EXPOSURE_TIME_RANGE);
long max = range.getUpper();
long min = range.getLower();
long ae = ((i * (max - min)) / 100 + min);
mPreviewBuilder.set(CaptureRequest.SENSOR_EXPOSURE_TIME, ae);
mSeekBarTextView.setText("曝光时间:" + ae);
valueAETime = ae;
4:ISO感光灵敏度

Range<Integer> range = mCameraCharacteristics.get(CameraCharacteristics.SENSOR_INFO_SENSITIVITY_RANGE);
int max1 = range.getUpper();//10000
int min1 = range.getLower();//100
int iso = ((i * (max1 - min1)) / 100 + min1);
mPreviewBuilder.set(CaptureRequest.SENSOR_SENSITIVITY, iso);
valueISO = iso;
mSeekBarTextView.setText("灵敏度:" + iso);
5:放大缩小(可指定区域放大)
Rect rect2 = mCameraCharacteristics.get(CameraCharacteristics.SENSOR_INFO_ACTIVE_ARRAY_SIZE);
int radio2 = mCameraCharacteristics.get(CameraCharacteristics.SCALER_AVAILABLE_MAX_DIGITAL_ZOOM).intValue() / 3;
int realRadio2 = mCameraCharacteristics.get(CameraCharacteristics.SCALER_AVAILABLE_MAX_DIGITAL_ZOOM).intValue();
int centerX2 = rect2.centerX();
int centerY2 = rect2.centerY();
int minMidth2 = (rect2.right - ((i * centerX2) / 100 / radio2) - 1) - 20;
int minHeight2 = (rect2.bottom - ((i * centerY2) / 100 / radio2) - 1) - 20;
if (minMidth2 < rect2.right / realRadio2 || minHeight2 < rect2.bottom / realRadio2) {
Log.i("sb_zoom", "sb_zoomsb_zoomsb_zoom");
return;
}
Rect newRect2 = new Rect(20, 20, rect2.right - ((i * centerX2) / 100 / radio2) - 1, rect2.bottom - ((i * centerY2) / 100 / radio2) - 1);
Log.i("sb_zoom", "left--->" + "20" + ",,,top--->" + "20" + ",,,right--->" + (rect2.right - ((i * centerX2) / 100 / radio2) - 1) + ",,,bottom--->" + (rect2.bottom - ((i * centerY2) / 100 / radio2) - 1));
mPreviewBuilder.set(CaptureRequest.SCALER_CROP_REGION, newRect2);
mSeekBarTextView.setText("放大:" + i + "%");
6:颜色效果

case 0:
mPreviewBuilder.set(CaptureRequest.CONTROL_EFFECT_MODE, CameraMetadata.CONTROL_EFFECT_MODE_AQUA);
mAnimationTextView.start("AQUA", DisplayFragment.WINDOW_TEXT_DISAPPEAR);
break;
case 1:
mPreviewBuilder.set(CaptureRequest.CONTROL_EFFECT_MODE, CameraMetadata.CONTROL_EFFECT_MODE_BLACKBOARD);
mAnimationTextView.start("BLACKBOARD", DisplayFragment.WINDOW_TEXT_DISAPPEAR);
break;
7:闪光灯:

case 0:
mBtnFlash.setImageResource(R.drawable.btn_flash_off);
mPreviewBuilder.set(CaptureRequest.CONTROL_AE_MODE, CameraMetadata.CONTROL_AE_MODE_ON);
mPreviewBuilder.set(CaptureRequest.FLASH_MODE, CameraMetadata.FLASH_MODE_OFF);
mAnimationTextView.start("OFF", DisplayFragment.WINDOW_TEXT_DISAPPEAR);
break;
case 1:
mBtnFlash.setImageResource(R.drawable.btn_flash_on);
mPreviewBuilder.set(CaptureRequest.CONTROL_AE_MODE, CameraMetadata.CONTROL_AE_MODE_ON);
mPreviewBuilder.set(CaptureRequest.FLASH_MODE, CameraMetadata.FLASH_MODE_SINGLE);
mAnimationTextView.start("SINGLE", DisplayFragment.WINDOW_TEXT_DISAPPEAR);
break;
case 2:
mBtnFlash.setImageResource(R.drawable.btn_flash_all_on);
mPreviewBuilder.set(CaptureRequest.CONTROL_AE_MODE, CameraMetadata.CONTROL_AE_MODE_ON);
mPreviewBuilder.set(CaptureRequest.FLASH_MODE, CameraMetadata.FLASH_MODE_TORCH);
mAnimationTextView.start("TORCH", DisplayFragment.WINDOW_TEXT_DISAPPEAR);

8:场景

case 0:
mPreviewBuilder.set(CaptureRequest.CONTROL_SCENE_MODE, CameraMetadata.CONTROL_SCENE_MODE_DISABLED);
mAnimationTextView.start("DISABLED", DisplayFragment.WINDOW_TEXT_DISAPPEAR);
break;
case 1:
mPreviewBuilder.set(CaptureRequest.CONTROL_SCENE_MODE, CameraMetadata.CONTROL_SCENE_MODE_FACE_PRIORITY);
mAnimationTextView.start("FACE_PRIORITY", DisplayFragment.WINDOW_TEXT_DISAPPEAR);
break;
9:自动对焦区域

mPreviewBuilder.set(CaptureRequest.CONTROL_AF_TRIGGER, CameraMetadata.CONTROL_AF_TRIGGER_CANCEL);
mPreviewBuilder.set(CaptureRequest.CONTROL_AF_REGIONS, meteringRectangleArr);
mPreviewBuilder.set(CaptureRequest.CONTROL_AF_TRIGGER, CameraMetadata.CONTROL_AF_TRIGGER_START);
---------------------
作者:xubaipei柏培
来源:CSDN
原文:https://blog.csdn.net/qq_29333911/article/details/79400617
版权声明:本文为博主原创文章,转载请附上博文链接!

原文地址:https://www.cnblogs.com/jukan/p/9895476.html

时间: 2024-10-17 23:02:04

Android Camera2 参数调节关键字翻译集合,常用关键字解析的相关文章

Delphi常用关键字用法详解

absolute: ? 1 2 3 4 5 6 7 8 9 10 //它使得你能够创建一个新变量, 并且该变量的起始地址与另一个变量相同. var Str: string[32]; StrLen: Byte absoluteStr; //这个声明指定了变量StrLen起始地址与Str相同. //由于字符串的第0个位置保存了字符串的长度, 所以StrLen的值即字符串长度. begin Str := 'abc'; Edit1.Text := IntToStr(StrLen); end; abstr

oracle常用关键字和函数

数据库的增删改查: 增:insert into ... values(); 例:insert into p_emp values(sq_emp.nextval,'小白','保洁',7902,sysdate,600,null,30,0); commit; 注意,表里边有多少列,values()里边的内容就有多少,一一对应关系.后边加分号结束语句,然后commit:提交. 自增长序列:右击Sequences,new一个新的自增序列,起一个name,然后有一个nextval属性,实现自增长. 查:se

Android Camera2拍照(一)——使用SurfaceView

原文:Android Camera2拍照(一)--使用SurfaceView Camera2 API简介 Android 从5.0(21)开始,引入了新的Camera API Camera2,原来的android.hardware.Camera被废弃(下面称为Camera1),还有一个android.graphics.Camera,这个android.graphics.Camera不是用来照相的,是用来处理图像的,可以做出3D的图像效果之类的,之前的Camera1则由android.hardwa

inux IO 内核参数调优 之 参数调节和场景分析

http://backend.blog.163.com/blog/static/2022941262013112081215609/ http://blog.csdn.net/icycode/article/category/5966733 http://blog.sina.cn/dpool/blog/s/blog_b374c0f30102wboi.html 1. pdflush刷新脏数据条件 (linux IO 内核参数调优 之 原理和参数介绍)上一章节讲述了IO内核调优介个重要参数参数. 总

【转】【C#】C# 不常用关键字

1.__arglist 让我们先从__arglist开始. __arglist是用来给方法传送参数.通常我们是通过函数头部指定的参数列表给方法传递参数的.如果我们想要给方法传递一组新的参数,我们需要重载方法.如果我们想要传递的参数数量不确定,我们需要使用param数组.我们为什么要使用__arglist,因为上面两种方法,存在的下面问题: a.如果我们使用方法重载,一旦要传递一组新的参数,我们都要增加一个新的函数重载. b.如果我们用param数组,参数类型必须相同或者使用param对象数组.

redis的五大数据类型以及与 key 关键字相关的常用操作命令

1.redis的五大数据类型: 先来看看redis官方网上文档 的介绍: 这里简单地说,就是redis不是一个普通的 key-value 存储,而是一个数据结构服务器,支持各种不同 类型的值,这意味着不仅仅是传统的键值对存储,它可以关联更多的复杂的数据结构. 简单地说一说它的数据结构: i: string(字符串) string是redis最基本的类型,可以理解为与 Memcached 一模一样,一个 key 值对应一个 value值. 需要注意,string类型是二进制安全的,可以对应任意数据

JAVA常用集合源码解析系列-ArrayList源码解析(基于JDK8)

文章系作者原创,如有转载请注明出处,如有雷同,那就雷同吧~(who care!) 一.写在前面 这是源码分析计划的第一篇,博主准备把一些常用的集合源码过一遍,比如:ArrayList.HashMap及其对应的线程安全实现,此文章作为自己相关学习的一个小结,记录学习成果的同时,也希望对有缘的朋友提供些许帮助. 当然,能力所限,难免有纰漏,希望发现的朋友能够予以指出,不胜感激,以免误导了大家! 二.稳扎稳打过源码 首先,是源码内部的成员变量定义以及构造方法: 1 /** 2 * Default in

(转)linux IO 内核参数调优 之 参数调节和场景分析

1. pdflush刷新脏数据条件 (linux IO 内核参数调优 之 原理和参数介绍)上一章节讲述了IO内核调优介个重要参数参数. 总结可知cached中的脏数据满足如下几个条件中一个或者多个的时候就会被pdflush刷新到磁盘: (1)数据存在的时间超过了dirty_expire_centisecs(默认30s)时间 (2)脏数据所占内存 /(MemFree + Cached - Mapped) > dirty_background_ratio.也就是说当脏数据所占用的内存占(MemFre

swift学习笔记 - swift中常用关键字

swift中常用关键字 **用作声明的关键字: ** class.deinit.enum.extension.func.import.init.let.protocol.static.struct.subscript.typealias.var 用作语句的关键字 break.case.continue.default.do.else.fallthrough.if.in.for.return.switch.where.while 用作表达和类型的关键字: as.dynamicType.new.is