T31快启图像效果优化

news2024/12/19 16:37:09

T31快启图像效果优化

liwen01 20220821

(一)基础方法及概念

参考文档

《Ingenic_Zeratul_T31_快起效果调试说明_20200927_CN》

(1)起始EV参数

IPC 每次启动都是冷启动,画面有一个暗变亮的过程,称作为AE收敛过程(自动曝光收敛过程)。

为了加快AE收敛的整个过程,可以设置一个起始EV值,也就是开始曝光参数,AE曝光从这个值开始收敛,可以缩短整个AE收敛的过程。

(2)起始EV值采集方法

实际是通过光敏ADC值与曝光参数EV值建立一个关系表,启动的时候,软件根据ADC值去查找对应的EV值进行曝光设置。

启动过程中存在一个问题:

💡刚上电启动的时候光敏ADC不稳定
ev值与adc表采集需要分两种方式:

  1. 应用层直接采集ADC与EV值的对应关系
  2. 在boot中采集ADC与程序启动后稳定的EV值对应的关系

根据官方的说明,君正系列,在T20系列,可以直接使用应用层软件直接采adc值与稳定的ev值

但是在T30,T31芯片上,因为启动的时候ADC其实还未稳定,所以只能是采集启动时boot的adc值,与内核打印中稳定的ev值相互对应,不然会出现不准确的现象

(3)EV值相关
  1. 光线越强的时候,稳定的EV值就越小,实际测试到的值为4(gc2093)
  2. 光线越弱的时候,稳定的EV值就越大,测试到的最大值为16万多(gc2093)
  3. 判断EV值是否有效果
    • 在某个场景(adc 值基本稳定)
    • 手动调整不同的EV值,看实际的图片效果
  4. 可以在全黑的场景中测试到最大的EV值(比如用黑胶布封住光敏和镜头)
  5. 可以在太阳直射的场景中测试到最小EV值
  6. 不同的sensor,ev值的最值会不一样,与ADC的对应关系也是不一样

(二)存在问题

(1)问题一:第一张图像不正常,后续图像有个收敛的过程
问题现象:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

上面第一张图像明显的过曝,第2张到第4张也是存在一个收敛的过程(由曝光不足到曝光正常)

问题原因:
  1. 出现这样的收敛过程,实际是不正常的,可能存在两个原因:

    • ev 表有设置成功,但是实际没有生效
    • ev 表采集的不是很准确,出现一个重新收敛的过程
  2. ISP 中丢的帧数不够

    • 每款sensor 丢的帧数有差异,需要实际调试
    • 如果丢帧数量多,会导致启动速度变慢
解决方案:
  1. 将boot的打印打开,同时将kernel的 isp 快启调试数据打开

    • 查看ev 值是否按boot查询到的ev值开始收敛
      • 如果是,则为原因二,用稳定的ev值重新调整看图像效果
      • 如果否,需排查为什么未生效
  2. 尝试不同帧数的丢,直到可以正常曝光为止


(2)问题二:快启没有缓存图片
问题现象:

实际快启的时候,发现图片没有缓存,对时间秒表进行拍照,发现拍360图片的时间比主码流的时间还早

问题原因:
  1. 因为使用的是gc2093 sensor,开启了WDR功能,使用riscv 后启动速度会非常慢,所以把riscv文件删除了
  2. 因为没有riscv,所以小核无法使用,无法快启缓存图片
解决方案
  1. 君正的说法:如果开启了WDR,就没法使用riscv,wdr 是IQ那边处理的,目前没办法处理。

注意事项

  1. 需要注意libz_gc2093.c中adc值的增长方向,IR,CUT切换等参数的配置要与实际板子相匹配
  2. 不同光照亮度下曝光值的采集,如果没有专业的调试显示屏,可以直接将设备放置在空旷的地方对着天空拍,采集24小时,那常用的亮度基本上就都有了。
  3. 君正并没有开放ISP相关的一些库,如果觉得库里面影响启动时间,可以尝试使用最新SDK中的库进行调试

附件

  • 代码
//tools/make_tag/sensor_start_ae_table/libz_gc2093.c
#include "libz_common.h"

int g_gpio_led_mode = LED_MODE_LOW_ON;
int g_gpio_led = GPIO_PB(31);
int g_gpio_ircut_mode = IRCUT_MODE_IGNORE;
int g_gpio_ircut_p = GPIO_PB(18);
int g_gpio_ircut_n = GPIO_PB(17);
int g_gpio_ircut_edge = 0;
int g_adc_value = 3000;
int g_adc_direction = ADC_DIRECTION_1;
int g_adc_reference = -1;
int g_gpio_white_led = -1;
int g_gpio_white_led_status = -1;

struct vol_start_value_table table_day[] = {
	{302,4},
	{319,5},
	{341,6},
	{360,8},
	{380,9},
	{402,10},
	{499,13},
	{602,14},
	{718,14},
	{802,15},
	{854,17},
	{908,24},
	{1002,96},
	{1050,242},
	{1102,706},
	{1176,2616},
	{1205,3553},
	{1305,6799},
	{1405,8325},
	{1517,10479},
	{1604,12626},
	{1704,14484},
	{1840,19098},
	{1975,24062},
	{2004,24742},
	{2030,26612},
	{2056,21423},
	{2097,24041},
	{2110,29908},
	{2178,36098},
	{2294,36675},
	{2774,53740},
	{2813,54801},
	{2819,57503},
	{2835,57165},
	{2864,58467},
	{2945,61555},
	{3009,131359},
	{3080,142020},
	{3087,145011},
	{3093,142503},
	{3129,160014},
	{3132,161172},
	{3142,159098},
	{3296,161220},
};

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1762.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

LeetCode50天刷题计划第二季(Day 23 — 重排链表(16.20- 17.00)

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录前言一、题目重排链表示例提示二、思路三、代码前言 链表基础题加一 一、题目 重排链表 给定一个单链表 L 的头节点 head ,单链表 L 表示为&#xff…

基于粒子群优化算法的时间调制非线性频偏FDA(Matlab代码实现)

🎉🎉🎉🎉欢迎您的到来😊😊😊 🥬博客主页:博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 📝床头铭:将来的我一定会感谢…

ARM64下构建 UEFI 模块

构建Application工程目录 mkdir edk2/ShellPkg/Application/ShellHello 目录内容如下: 编写 ShellHello.c /* edk2/ShellPkg/Application/ShellHello/ShellHello.c*/ #include <Uefi.h> #include <Library/UefiLib.h> #include <Library/DebugLib.h> #i…

上手之Python之异常

什么是异常 当检测到一个错误时&#xff0c;Python解释器就无法继续执行了&#xff0c;反而出现了一些错误的提示&#xff0c;这就是所谓的“异常”, 也就是我们常说的BUG bug单词的诞生 早期计算机采用大量继电器工作&#xff0c;马克二型计算机就是这样的。 1945年9月9日&…

【JVM技术专题】 深入学习JIT编译器实现机制「 原理篇」

前提概要 解释器 Java程序最初是通过解释器(Interpreter)进行解释执行的&#xff0c;当虚拟机发现某个方法或代码块的运行特别频繁的时候&#xff0c;就会把这些代码认定为“热点代码”&#xff08;hotspot code&#xff09;。正因为如此&#xff0c;我们的hotspot的虚拟机就是…

将matlab数据导入到Python中使用

相信不少小伙伴都遇到过和我一样的问题&#xff0c;就是在尝试使用scipy.io.loadmat将matlab类型的数据导入python中的时候遇到如下错误提示。 import scipy as sc# 设定需要导入的matlab数据目录 path_TE00 r"D:\Window自带文件夹\桌面\PIC Design\Lumerical\Tutorials…

Apollo GraphQL

一、Apollo GraphQL介绍 Apollo 是一个开源的 GraphQL 开发平台&#xff0c; 提供了符合 GraphQL 规范的服务端和客户端实现。使用 Apollo 可以帮助我们更方便快捷的开发使用 GraphQL。 ● 官网&#xff1a;https://www.apollographql.com/ ● GitHub 相关开源仓库&#xff1a…

Vite+Vue+Electron环境搭建

因为electron可以直接加载html文件&#xff0c;也可以直接加载url链接&#xff0c;所以&#xff0c;我们可以在调试过程中使用url地址&#xff0c;来动态显示我们的改变过程。 electron简单来说就是对html的一种封装&#xff0c;所以我们先来搭建vue的开发环境&#xff0c;这里…

LQ0135 左孩子右兄弟【DFS+二叉树】

题目来源&#xff1a;蓝桥杯2021初赛 C A组H题 题目描述 对于一棵多叉树&#xff0c;我们可以通过“左孩子右兄弟” 表示法&#xff0c;将其转化成一棵二叉树。 如果我们认为每个结点的子结点是无序的&#xff0c;那么得到的二叉树可能不唯一。 换句话说&#xff0c;每个结点可…

并发编程之ForkJoin框架

什么是 Fork/Join 框架 Fork/Join 是从 java7 开始提供的并行执行任务的框架&#xff0c;是一个把大任务分割成若干个小任务&#xff0c;最终汇总每个小任务的结果&#xff0c;得到大任务结果的框架. 如下图&#xff1a; Fork/Join 的特性 ForJoinPool 不是为了替代 Execu…

毕业仅1年,干Python赚了50W!网友:不是吹的

前言 惊讶 ​Py现状&#xff1a;Python职位月薪5W起&#xff1f; 其他程序员&#xff1a;心态塌了&#xff01; 秒杀各行业薪资榜单&#xff0c;拿下编程语言排行榜的Python&#xff0c;工资真的如网上说的开挂了吗&#xff1f;有人在网上发现这样的一条评论信息&#xff1a…

公众号网课查题接口题库

公众号网课查题接口题库 本平台优点&#xff1a; 多题库查题、独立后台、响应速度快、全网平台可查、功能最全&#xff01; 1.想要给自己的公众号获得查题接口&#xff0c;只需要两步&#xff01; 2.题库&#xff1a; 题库&#xff1a;题库后台&#xff08;点击跳转&#xf…

Navicat 现已支持 OceanBase 企业版

近期&#xff0c;PremiumSoft CyberTech Limited 公司发布了 Navicat 16.1.3 版本&#xff0c;正式支持蚂蚁集团旗下的 OceanBase 企业版&#xff08;MySQL 兼容模式&#xff09;。此次合作旨在帮助用户通过 Navcicat 进行 OceanBase 企业版的数据库开发及管理&#xff0c;更大…

说说 Redis 事务

Redis 事务简介# Redis 只是提供了简单的事务功能。其本质是一组命令的集合&#xff0c;事务支持一次执行多个命令&#xff0c;在事务执行过程中&#xff0c;会顺序执行队列中的命令&#xff0c;其他客户端提交的命令请求不会插入到本事务执行命令序列中。命令的执行过程是顺序…

MPLS综合实验

目录 实验要求 划分IP地址 首先对MPLSVPN骨干网络进行配置 首先配置IP地址 启动IGP协议 激活MPLS和LDP VRF空间的创建 将接口划入到VRF空间中 R1和R5通过静态路由在CE和PE上配置 建立MP-BGP 对站点R1和R5进行配置 首先把IP给配置好 在VRF空间中发布路由信息 对站点…

2000-2020上市公司全要素生产率LP方法含原始数据和Stata代码

1、时间&#xff1a;2000-2020年 2、指标包括&#xff1a;stkcd、year、证券代码、固定资产净额、营业总收入、营业收入、营业成本、销售费用、管理费用、财务费用、支付给职工以及为职工支付的现金、员工人数、折旧摊销、行业代码、上市日期、AB股交叉码、退市日期、年末是否…

windows下用Java跑通spark官方文档的quick-start

这里写自定义目录标题前置环境官方示例三个小坑maven文件引用不明确未传递master url前置环境 见上一篇&#xff1a;https://blog.csdn.net/shuzip/article/details/115606522 官方示例 https://spark.apache.org/docs/3.1.1/quick-start.html /* SimpleApp.java */ import…

廊坊特色农业 国稻种芯·中国水稻节:河北复合农业促增收

廊坊特色农业 国稻种芯中国水稻节&#xff1a;河北复合农业促增收 新闻中国采编网 中国新闻采编网 谋定研究中国智库网 中国农民丰收节国际贸易促进会 国稻种芯中国水稻节 中国三农智库网-功能性农业农业大健康大会报道&#xff1a;河北廊坊安次区“稻蟹共作”新模式 特色农业…

Codeforces Round #773 (Div. 2)

A. Hard Way 题目链接&#xff1a;Problem - A - Codeforces 样例输入&#xff1a; 5 8 10 10 4 6 2 4 6 0 1 4 2 14 1 11 2 13 2 0 0 4 0 2 4 0 1 1 1 0 0样例输出&#xff1a; 0.0000000 0 2.0000 0.00 1题意&#xff1a;给定一个三角形的三个顶点&#xff0c;输入保证三角…

echarts画各种形状水波图

各种形状水波图 代码 用的是echarts绘制&#xff0c;echarts相关api可以参考echarts官网&#xff0c;形状修改series.shape即可修改形状&#xff0c;这里用的是SVG路径 <html><head><meta charset"utf-8"><link href"https://fonts.google…