当前位置: 首页 > news >正文

关于 ISP Tuning的学习,分享几点看法

关于学习,分享几点看法,欢迎讨论 。

1、分阶段性的,阶梯式学习。

2、带目的性的,任务式学习。

3、有总结性的,输出式学习。

如上3条,可以依次循环去执行,下面我以 ISP Tuning 的学习为例,分享几点看法。

整个 isp pipeline 中有很多的模块需要去Tuning ,要想 Tuning 好,那就必须去学习每个模块的实现原理,在了解它底层逻辑的基础上才能更有针对性的去调试。但怎么去学,及怎么学好它呢?

1、分阶段性的,阶梯式学习

可以把 ISP Tuning 的学习分成三个阶段,对于刚入行的同学,建议可以先了解下整个 isp pipeline,知道有哪些模块,每个模块的作用是什么,基于这些就可以修改参数,调试效果了(当然每个平台开放的参数都不一样,需要对着调试指南有个熟悉的过程)。

接着到第二阶段,就是要理解 isp pipeline 中每个模块的实现原理,要掌握他们具体是如何工作的,对输入的数据做了哪些处理,会带来什么影响。

再接着比较深入的阶段,就是要考虑整个 isp pipeline 为什么要这么设计,每个模块处在这个位置的意义什么,是怎么相互影响的。

基于上面说的,我们把一项技能拆解成了不同的阶段,从入门到深入的阶梯式学习。这是一个循序渐进的过程,一方面可以更好的认识到自己所处的阶段,减少不必要的焦虑。另一方面,因为比较契合实际,会更容易得到结果,给自己有持续精进的信心。

2、带目的性的,任务式学习

我们先是把一个技能,从入门到深入划分成了三个阶段去学习掌握。但在每个阶段的学习中还应该有明确的目的性,要带着要任务去学习,否则会很难坚持下去。

对于刚入门的第一阶段,我们的目标可以定为会改参数,能达到自己期望的效果就可以了。那我们的任务就是要了解整个 isp pipeline,明确有哪些模块,每个模块的作用是什么。可以直接看这个平台的调试指南、isp spec、以及网上搜相关的 isp 相关的基础概念即可,目的是了解整个 ISP 的大概,有个完整的概念。

到第二阶段时,有了一定的调试经验,我们的目标就要定为调试参数时,每个参数的调优结果都要做到心中有数,不能是一个一直去试的状态。这一阶段我们的任务就是要理解每个模块的实现原理,理解它对输入的数据做了哪些处理,会带来什么影响。具体该怎么去做呢?对于一个我们只会调,但不太明白其原理的模块,我的看法是,首先我们可以先网上搜索(包括系列课程中的某一讲、视频、博文、论坛、书籍、论文)这些资料都看一遍,看的越多越好,筛选出部分讲的比较深入的收藏保存起来,多思考多理解。同时再结合自己平台去调,去试,去分析算法代码。反复几次,也就差不多了,对于其他模块也是如此。当然这个过程也是可以和上面一样划分阶段去学习的,不可能一口气吃成胖子。

到第三个阶段时,我们的目标就要再回到宏观上来,要理解 isp pipeline 的设计原理,每个模块处在这个位置的意义什么,有什么优势。这一阶段我们的任务就是可以调试更多的平台,对比他们的优势,和局限的地方,分析其原因。

3、有总结性的,输出式学习

那怎么检验自己是否学好了,掌握透了呢?最简单的方式,就是教给其他人。也就是把这一阶段学过的知识,内化成自己的后,再总结输出出来,教给其他人(包括但不限于写公众号、写博客、录短视频、部门内分享等等)。当别人能理解你所表达的内容,且你也能解决他基于这部分内容的提问,那就说明你掌握了,反之那就是掌握的还不牢靠,需要再去查漏补缺。

最近有听到一句话,分享给大家“ 往往有小聪明的人,会寻找捷径去学习,反观那些用笨办法的人,反而会比较容易成功”。这么说可能会有点谬误,我的理解是学习是需要方式方法,但也必须要有死磕下去的决心,比如学英语要背单词,学编程要多敲代码,道理很简单谁也都懂,但能一直执行下去的有多少呢,说这么多,其实我自己做到的也有限,大家共勉。

相关文章:

关于 ISP Tuning的学习,分享几点看法

关于学习,分享几点看法,欢迎讨论 。1、分阶段性的,阶梯式学习。2、带目的性的,任务式学习。3、有总结性的,输出式学习。如上3条,可以依次循环去执行,下面我以 ISP Tuning 的学习为例&#xff0c…...

RocketMQ源码阅读

没有用过rocketmq,但是一直对RocketMQ的实现很感兴趣,本次阅读源码基于5.0.0 一、 nameserver 通过源码阅读发现,它的作用主要是当作一个注册中心,注册broker、topic等信息,维护topic以及broker队列的路由信息&#…...

重磅 | 小O软件新品【鲸鱼地图】发布

千呼万唤始出来.......,小O系列软件又添新品【鲸鱼地图】!!! 2023年新年伊始,小O就投入到新品研发工作中,秉承“发现地理价值”理念,为用户提供更加好用、易用的地图软件产品,经过春…...

软考高级信息系统项目管理师系列之二十五:项目合同管理

软考高级信息系统项目管理师系列之二十五:项目合同管理 一、项目合同管理内容整理一、合同管理基本概念1.项目合同管理定义2.合同的分类3.合同类型选择4.合同内容二、合同管理过程1.合同管理过程的内容2.合同签订和履行管理3.合同变更和档案管理4.合同违约索赔管理项目合同管理…...

测试开发之Django实战示例 第十三章 上线

在上一章,为其他程序与我们的Web应用交互创建了RESTful API。本章将学习如何创建生产环境让我们的网站正式上线,主要内容有:配置生产环境创建自定义中间件实现自定义管理命令1创建生产环境现在该将Django项目正式部署到生产环境中了。我们将按…...

python实战应用讲解-【语法基础篇】Python中的数值类型(附示例代码)

目录 前言 数值类型 十六进制、八进制和二进制 Python 数值类型转换 数值和表达式 前言...

Git常用命令以及如何在IDEA中使用Git

前言Git是一个分布式版本控制工具,主要用于管理开发过程中的源代码文件(Java类、xml文件、html页面等)。Git在管理文件过程中会记录日志,方便回退到历史版本;Git存在分支的概念,一个项目可以有多个分支&…...

音乐播放器-- 以及数据库数据存储

运行环境 : java1.8 数据库以及代码编写工具 : sqlserver -- mysql 也可以 工具 eclipse 编码gbk窗体 : Swing使用了jaudiotagger 进行了音乐处理 图片展示 ----- 空闲时间 做出来玩的项目 部分功能还没有完善 完善了的功能 音乐 /// 主页 &a…...

[JAVA安全]Spring Messaging之CVE-2018-1270

漏洞简介 Spring 框架中通过spring-messaging 模块来实现 STOMP (Simple Text-Orientated Messaging Protocol),STOMP是一种封装 WebSocket的简单消息协议。攻击者可以通过建立WebSocket连接并发送一条消息造成远程代码执行, spring-messagin…...

CAN通信笔记-位时间、Tq及采样点同步

本文框架1.前言2. 位时间2.1 位时间定义2.2 位时间计算3. Tq3.1 Tq的计算3.1.1 举个例子3.2 位时间与Tq的换算4. 采样点同步4.1 硬同步4.2 重同步4.2.1 延长PBS1的重同步4.2.2 缩短PBS2的重同步1.前言 本篇记录些关于CAN的一些学习笔记,说实话CAN协议发展的已经非常…...

玩转 Kubernetes 配置管理:ConfigMap 和 Secret 实战演示

目录一、简介二、ConfigMap2.1 基于目录创建 ConfigMap2.2 基于文件创建 ConfigMap2.3 从环境文件创建 ConfigMap2.4 定义从文件创建 ConfigMap 时要使用的键2.5 根据字符串创建 ConfigMap三、Secret3.1 基于文件创建Secret3.2 基于字符串创建Secret3.3 yaml文件方式创建secret…...

Kubernetes

一、 kubernetes介绍 1.1 应用部署方式演变 在部署应用程序的方式上,主要经历了三个时代 传统部署:互联网早期,会直接将应用程序部署在物理机上 优点:简单,不需要其它技术的参与 缺点:不能为应用程序定义…...

从零开始 verilog 以太网交换机(三)MAC发送控制器的设计与实现

从零开始 verilog 以太网交换机(三)MAC发送控制器的设计与实现 🔈声明: 😃博主主页:王_嘻嘻的CSDN主页 🧨 从零开始 verilog 以太网交换机系列专栏:点击这里 🔑未经作者允…...

使用vector<char>作为输入缓冲区

一、引言 当我们编写代码:实现网络接收、读取文件内容等功能时,我们往往要在内存中开辟一个输入缓冲区(又名:input buffer/读缓冲区)来存贮接收到的数据。在C里面我们可以用如下方法开辟输入缓冲区。 ①使用C语言中的数组&#x…...

自己在网站搭建用到的一些网站

背景 以后可能很少做网站类的项目了,所以做个简单总结,把自己的一些经历和一些小工具做个记录 域名和主机 https://www.godaddy.com/zh-sg, 我之前的基本都是国际会议型的网站,所以就在gadaddy上买了主机和域名。目标群体在国内可以考虑腾…...

XLSReadWriteII5 Color 颜色l的调用和使用

XLSReadWriteII5 Color 颜色l的调用和使用 一、色彩三原色 自然界,颜色是由红、绿、蓝三色组成,人眼的可见的颜色,可以通过红、绿、蓝三色按照不同的比例合成产生。 任意一种颜色由这三种原色按照一定的比例混合出来。 二、Windows系…...

RT-Thread SP使用教程

RT-Thread SPI 使用教程 实验环境使用的是正点原子的潘多拉开发板。 SPI从机设备使用的是BMP280温湿度大气压传感器。 使用RT-Thread Studio搭建基础功能。 1. 创建工程 使用RT-Thread Studio IDE创建芯片级的工程。创建完成后,可以直接编译下载进行测试。 2.…...

LeetCode 2363. 合并相似的物品

给你两个二维整数数组 items1 和 items2 ,表示两个物品集合。每个数组 items 有以下特质: items[i] [valuei, weighti] 其中 valuei 表示第 i 件物品的 价值 ,weighti 表示第 i 件物品的 重量 。 items 中每件物品的价值都是 唯一的 。 请你…...

numpy 中常用的数据保存、fmt多个参数

在经常性读取大量的数值文件时(比如深度学习训练数据),可以考虑现将数据存储为Numpy格式,然后直接使用Numpy去读取,速度相比为转化前快很多 一、保存为二进制文件(.npy/.npz) (1)numpy.save(file, arr, allow_pickleTrue, fix_importsTrue) file:文件名…...

从0到1一步一步玩转openEuler--19 openEuler 管理服务-特性说明

文章目录19 管理服务-特性说明19.1 更快的启动速度19.2 提供按需启动能力19.3 采用cgroup特性跟踪和管理进程的生命周期19.4 启动挂载点和自动挂载的管理19.5 实现事务性依赖关系管理19.6 与SysV初始化脚本兼容19.7 能够对系统进行快照和恢复19 管理服务-特性说明 19.1 更快的…...

7.4.分块查找

一.分块查找的算法思想: 1.实例: 以上述图片的顺序表为例, 该顺序表的数据元素从整体来看是乱序的,但如果把这些数据元素分成一块一块的小区间, 第一个区间[0,1]索引上的数据元素都是小于等于10的, 第二…...

ESP32读取DHT11温湿度数据

芯片:ESP32 环境:Arduino 一、安装DHT11传感器库 红框的库,别安装错了 二、代码 注意,DATA口要连接在D15上 #include "DHT.h" // 包含DHT库#define DHTPIN 15 // 定义DHT11数据引脚连接到ESP32的GPIO15 #define D…...

Java入门学习详细版(一)

大家好,Java 学习是一个系统学习的过程,核心原则就是“理论 实践 坚持”,并且需循序渐进,不可过于着急,本篇文章推出的这份详细入门学习资料将带大家从零基础开始,逐步掌握 Java 的核心概念和编程技能。 …...

【JavaSE】绘图与事件入门学习笔记

-Java绘图坐标体系 坐标体系-介绍 坐标原点位于左上角,以像素为单位。 在Java坐标系中,第一个是x坐标,表示当前位置为水平方向,距离坐标原点x个像素;第二个是y坐标,表示当前位置为垂直方向,距离坐标原点y个像素。 坐标体系-像素 …...

Java毕业设计:WML信息查询与后端信息发布系统开发

JAVAWML信息查询与后端信息发布系统实现 一、系统概述 本系统基于Java和WML(无线标记语言)技术开发,实现了移动设备上的信息查询与后端信息发布功能。系统采用B/S架构,服务器端使用Java Servlet处理请求,数据库采用MySQL存储信息&#xff0…...

Caliper 负载(Workload)详细解析

Caliper 负载(Workload)详细解析 负载(Workload)是 Caliper 性能测试的核心部分,它定义了测试期间要执行的具体合约调用行为和交易模式。下面我将全面深入地讲解负载的各个方面。 一、负载模块基本结构 一个典型的负载模块(如 workload.js)包含以下基本结构: use strict;/…...

Visual Studio Code 扩展

Visual Studio Code 扩展 change-case 大小写转换EmmyLua for VSCode 调试插件Bookmarks 书签 change-case 大小写转换 https://marketplace.visualstudio.com/items?itemNamewmaurer.change-case 选中单词后,命令 changeCase.commands 可预览转换效果 EmmyLua…...

STL 2迭代器

文章目录 1.迭代器2.输入迭代器3.输出迭代器1.插入迭代器 4.前向迭代器5.双向迭代器6.随机访问迭代器7.不同容器返回的迭代器类型1.输入 / 输出迭代器2.前向迭代器3.双向迭代器4.随机访问迭代器5.特殊迭代器适配器6.为什么 unordered_set 只提供前向迭代器? 1.迭代器…...

边缘计算设备全解析:边缘盒子在各大行业的落地应用场景

随着工业物联网、AI、5G的发展,数据量呈爆炸式增长。但你有没有想过,我们生成的数据,真的都要发回云端处理吗?其实不一定。特别是在一些对响应时间、网络带宽、数据隐私要求高的行业里,边缘计算开始“火”了起来&#…...

Caliper 配置文件解析:config.yaml 和 fisco-bcos.json 附加在caliper中执行不同的合约方法

Caliper 配置文件解析:config.yaml 和 fisco-bcos.json Caliper 是一个区块链性能基准测试工具,用于评估不同区块链平台的性能。下面我将详细解释你提供的 fisco-bcos.json 文件结构,并说明它与 config.yaml 文件的关系。 fisco-bcos.json 文件解析 这个文件是针对 FISCO…...