3359 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
无论相机设备是否启动预捕获测量序列,都将处理该请求。
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.capture intent==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
在发送处理之前,APP应用处理对原始输出帧施加曝光时间增加系数的数量。
scaler_crop_region
要捕获的传感器需要读取的区域。
sensor_exposure_time
每个像素的曝光时间。
sensor_frame_duration
从帧曝光开始到下一帧曝光开始持续时间。
sensor_sensitivity
处理前应用于传感器数据的增益量。
sensor_test_pattern_data
一个像素[ R,g_even,g_odd,b ]提供测试模式an
droid.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_典雅的小白菜", "sb_典雅的小白菜sb_典雅的小白菜sb_典雅的小白菜");
return;
}
Rect newRect2 = new Rect(20, 20, rect2.right - ((i * centerX2) / 100 / radio2) - 1, rect2.bottom - ((i * centerY2) / 100 / radio2) - 1);
Log.i("sb_典雅的小白菜", "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
版权声明:本文为博主原创文章,转载请附上博文链接!