自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(90)
  • 收藏
  • 关注

原创 拿什么来估计你——我的参数

估计分为区间估计interval estimate和点估计point estimate,区别是给的是一段区间还是准确的数。区间估计一般是置信度的形式。因为真实值暂时是未知的,通过采样计算只能得到一个估计值,计算公式确定,但是不同次的采样计算出来的值是不一样的。所以估计值有时候会偏大有时候会偏小,我们对这个估计值再计算其期望,根据是否会overestimate or an underestimate,又可以把估计器分为有偏和无偏的。比如算术平均值的期望就正好等于变量的期望,所以算数平均值的无偏估计。

2024-04-19 00:00:00 975

原创 超分中使用的损失函数和经典文章

SRGAN,ESRGAN,Real ESRGAN,一步步演化,对比着看才更容易理解。

2024-04-17 00:45:00 539

原创 常用小知识点总结

yuv444表示三个通道完全采样,yuv422是竖直方向完全采样,水平方向uv分别间隔采样,各采样一半,相邻像素的uv互补,所以4+2+2/(4+4+4)=2/3,节约了1/3的存储空间。inline 函数仅仅是一个对编译器的建议,所以最后能否真正内联,看编译器的意思,它如果认为函数不复杂,能在调用点展开,就会真正内联,并不是说声明了内联就会内联,声明内联只是一个建议而已。可以看出是变量类型不对,但往往是int的问题,opencv在坐标,长宽等严格要求是int型,注意把数据类型int()转换。

2024-03-19 21:34:50 782

原创 ISP相关

为了解决这个问题,手机生产线上的一个流程就是针对每个个体样本做参数微调,把需要调整的量写到sensor OTP存储中,手机每次开机都从OTP中读取修正量,和量产软件中的固定参数相结合,就能得到比较不错的效果,减少用户投诉。因为sensor的热噪声,即便没有光线也会有响应。在相机上的白平衡,也可以选择与环境相同的色温,但如果环境不变,相机的色温越高,照片会更暖,因为它相当于在补偿对应的高色温。理论上是这样的,但是物体不同位置到镜头的距离是不一样的,你的所谓等比例变换没办法满足所有的点,所以就会产生透视畸变。

2024-03-17 00:00:00 801

原创 raw数据噪声模型和标定

噪声在ISP中去得越早越好,因为噪声在最开始成像的过程中就引入了,之后只会不断放大。具体而言,噪声产生的位置就是上图中绿色框的区域。

2024-03-01 15:00:38 1123

原创 这个何同学不一般——导向滤波

首先,导向滤波可以在滤波的同时保留图像边缘。双边滤波,导向滤波,最小二乘滤波被称为三大保持 边缘滤波器。导向滤波其实是何恺明为了解决暗通道去雾的一个计算过程提出的一种滤波方法。如果我们想要滤波的同时保留边缘,很自然地会想到先使用边缘检测器得到边缘图,滤波的时候就可以以此作为参考。导向滤波其实也一样,需要一幅guidance image,特别地,可以将原图作为guidance image,此时的结果输出就是保留边缘的平滑结果,在这个过程中其实就利用了guidance image中的结构信息。作为边缘保持滤

2023-08-29 11:30:00 872

原创 无处不在的拉普拉斯——边缘,斑点,金字塔

作为拿破仑的老师,拉普拉斯有拉普拉斯算子二阶导的过零点可以用来检测边缘有限差分算子,可以由二阶导定义或者泰勒展开推导出。高斯拉普拉斯LoG因为二阶导对噪声敏感,所以通过先使用高斯模糊,而我们可以提前计算高斯滤波的拉普拉斯响应。画出图像是墨西哥草帽。墨西哥草帽和图像做相关就可以实现斑点检测(结合极大值的寻找)LoG可以使用DoG近似。DoG是不同的尺度因子,所以两个高斯滤波核中心会错位,二者做差就类似拉普拉斯中的左右或者上下做差。拉普拉斯金字塔先下采样再上采样就会损失信息,

2023-08-23 00:15:00 592

原创 torch相比于numpy都干了什么——torch入门

https://pytorch.apachecn.org/docs/1.4/blitz/tensor_tutorial.html

2023-02-15 18:56:08 721

原创 泊松融合——用了拉普拉斯但没有金字塔

这样解出来的融合区域的值和参考图不一致,但是梯度近似,且具体的值是基于边界和梯度求解出来的,所以整体会和背景处于同一亮度/颜色水平。但如果参考图对应的mask不够精细,参考图本身的梯度和背景图仍然差异过大,这样的引导场得到的融合效果还是不佳。因为人眼对二阶导是更敏感的,所以只要我们指定了融合区域内部的梯度值,并且知道融合边界处的值,理论上就可以求解出来。上图d使用了参考图和背景图的极大值,相比于b的保守引导场,尽可能保留了更多的纹理信息,不至于在融合区域保留参考图的背景而造成突兀。这样从一阶导到了二阶导。

2022-11-04 03:00:00 683 1

原创 谷歌手机中的HDR技术——HDR+

HDR+手机端的问题手机的光圈小,导致捕获的光线少,从而在暗光下的噪声多;手机用于量化的bit位也少,导致所能表达的动态范围小。算法特点特点之一是不需要使用包围曝光,而使用同一曝光时间,这样有利于对齐,并且曝光时间很短,避免了高光溢出。融合得到的结果没有阴影,高比特位,所以可以应用标准HDR的tone mapping。特点之二是使用bayer raw数据而不是demosaicked后的RGB/YUV数据。这样每个像素的比特数更多,同时也允许我们可以规避ISP中不想要的tone mappi

2022-06-04 16:50:14 3675

原创 HDR简单介绍

OpenCV: High Dynamic Range (HDR)OpenCV3.0 HDR(高动态范围)示例代码以及用法 - 一度逍遥 - 博客园High Dynamic Range Imaging — OpenCV 3.0.0-dev documentation可以将动态范围理解为量化的阶数。一般都是8bit量化,那就有256个levels。当同一幅图中同时有高亮和暗部时,就会导致亮度过曝,暗部欠曝。一般处理的方法是使用多张不同曝光的照片,融合得到HDR图。HDR图一般以浮点型表示,对应的文.

2022-05-28 22:30:00 1992

原创 位姿估计的来龙去脉——内外参,三维重建,Pnp问题

https://www.jianshu.com/p/b3e9fb2ad0dchttps://blog.csdn.net/luohuiwu/article/details/80722542

2021-09-02 10:50:11 2202

原创 二维与三维之间的桥梁——点云

在做图像配准时就听闻过一些点云的方法,确没对其有太多的认识,只是知道点云point cloud顾名思义就是一些离散点的集合。现在在无人驾驶中一些激光雷达的作用其实就是生成点云数据,接下来介绍一下点云数据的含义和基础的使用方法。虽然特斯拉是坚定的纯视觉自动驾驶路线的支持者,但其实更多的无人驾驶公司同时还会使用激光雷达LiDAR。经常见到无人驾驶的车顶会有一个旋转的圆柱体,其实就是机械式激光雷达,通过旋转镜面将激光反射到不同角度,得到360度的数据:转存失败重新上传取消雷达有很多种,激光雷达只是其实

2021-07-03 16:21:14 1139

原创 别以为if slse很简单——决策树

熵与Gini指数熵,表示信息量的期望,含义是混乱程度,也是对随机变量编码所需的最小比特数。请参考之前的文章https://mp.csdn.net/editor/html/107641395基尼不纯度,它表示是分错的概率的期望。Gini不纯度其实可以看作是熵的近似值,形式一样没有取对数更容易计算,二分类时,都是概率取0.5时达到最大值。Gini不纯度是一种不等性度量,取值[0,1],当数据完全相等时取0.https://zhuanlan.zhihu.com/p/76667156https:/.

2021-03-12 17:34:27 366

原创 XGBoost的安装与介绍

Reference:1.字节跳动架构师https://zhuanlan.zhihu.com/p/303398072.浅谈https://www.jianshu.com/p/d55f7aaac4a7

2021-02-26 22:17:28 893

原创 没见过女人的小和尚——SVDD

是的,即便是出生在山上的小和尚,从来没有下过山,没有见过女人,但是一旦有女施主上山,小和尚依然可以轻松地区分出眼前的人是如此不同。传统的SVM是寻找一个超平面,而SVDD寻找的超平面更进一步,可以认为它是闭合的超平面。优化目标是曲面面积最小(即半径最小),约束条件是要使得尽可能多的样本被包含在曲面之中,至于到底需要包含多少,那就要涉及到松弛变量。每个样本都对应一个自己的松弛变量epslon,即对于不同样本的容忍程度可以是不同的,容忍意味着样本可以在一定程度上脱离“包围圈”。最终的优化目标就是R平方的

2021-02-22 20:19:57 1095 2

原创 深度学习中的信息论——交叉熵

信息量,可以说就是在将信息量化。首先信息的相对多少是有切实体会的,有的人一句话能包含很多信息,有的人说了等于没说。我们还可以直观地感觉到信息的多少和概率是有关的,概率大的信息也相对低一些。为了量化信息,一个做法就是找到一个单位,比如说抛硬币就是一个基本单位,或者说我们使用01编码。先看等概率的情况,种类数越多,那么需要编码的长度就越大,很显然是log的指数关系。因为是等概,所以概率和种类数目就是倒数的关系。那么,不等概的情况呢,其实我们也可以把不等概转换成等概,怎么转换呢,认为要发生的事件A整体是一个类

2021-01-21 20:49:25 702

原创 softmax-sigmoid辨析

指数分布族https://www.zhihu.com/question/29435973

2021-01-20 15:49:53 594

原创 SVM原理与实战

opencv的安装路径,cpp-tutorial_code-ml中就有示例SVM是监督学习,所以要有训练数据与对应的标签。SVM参数svm_type=C_SVC由于opencv中的svm分类算法是根据libsvm改写而来的,libsvm是台湾一学者编写的matlab版本的svm算法,所以参数的设定的也大致相同。svm类型除了C_SVC之外,还有NU_SVC,ONE_CLASS,EP...

2021-01-18 20:35:13 462

原创 DL也懂纹理吗——图像的纹理特征

工作中遇到一个问题:对于同一场景,训练好的DL模型能把大部分样本分类准确,而对于少量负样本,DL会错分到另外一个对立的类中。错分的样本可以认为是难分的样本,但是我们还想知道这两种样本到底是哪里的差异导致DL做出了两种截然不同的判断?回答好这个问题就可以进一步解释DL在分类的过程中到底学习了并依赖了图像的哪些特征。思路是先将这两种样本搜集起来,标签分别为right(分类正确)和wrong(分类出错)。首先可以从直观感受出发,看二者是否有什么明显不同;为了量化这种不同,我们需要从图像中提取一些特征。图像的特

2021-01-13 20:31:04 260 1

原创 JBU联合双边上采样

很多图像处理算法,如立体视觉中的深度估计,图像上色,高动态范围HDR中的tone mapping,图像分割,都有一个共性的问题:寻找一个全局的解,这个解是指一个分段的piecewise平滑含糊,描述了感兴趣的值(可以是深度,色度,曝光值,标签等)。另一方面,数字图像越来越大,从one quarter million到multi-Megapixel到Gigapixel,随着图像尺寸的变大,图像处理的耗时和占用空间也线性增长。一个处理方法就是对原始图像先进行下采样的预处理再进行图像处理,但这也带来一个问题,

2020-09-23 14:55:47 2126 1

原创 CV中的经典网络模型

目标检测目标检测,不仅要识别目标是什么(分类),还要知道目标的具体位置(可以当作回归来做)。RCNNSelective Search 算法获得候选框,Alexnet提取特征,SVM对每个候选框区域打分。对于重叠的区域,通过计算IoU和非极大值抑制,剔除重叠的区域。imagenet到VOC的迁移学习,VOC只有21个类,其中一类是背景。YOLOyou only look once,属于one stage检测,因为不需要提前使用其他的算法获得候选区域。虽然不是显式地找候选框,隐式的也是少不.

2020-08-25 16:10:36 1717

原创 dataframe常用操作总结

使用pandas读取csv文件iloc查看并且修改指定位置的数值但是不会改变原始的csv文件,重新读取,打印出来还是之前的数据可以先把之前的删除,再使用to_csv写入用来的路径保存时默认连同行列名也保存下来,可以使用header=False,index=False去除。如果连同行列名字保存下来,结果就是保存的csv文件会多出行列数。这时候再使用read_csv读取,并且heade...

2020-08-24 14:06:59 1152

原创 即插即用+任意blur的超分辨率重建——DPSR

https://arxiv.org/pdf/1903.12529.pdf

2020-07-28 17:05:01 1059

原创 图像分割入门——FCN与U-Net

U-Net解决的是生物医学图像的分割问题。分割问题其实也是分类的一种,只不过是像素级别的分类。为了在同一图像中获得多维的概率,U-Net网络结构使用了全卷积的结构,网络中没有全连接层。对训练图像使用弹性形变进行数据增强。压缩路径中,每次池化之后会进行两次卷积。需要注意的是卷积后的通道数(滤波器个数)是池化之前的2倍。而在压缩路径中则相反,池化变为上采样,通道数变为减半的关系。压缩路径中...

2020-03-01 18:05:23 467

原创 DL中常用的numpy

读txt文件按行读取有三种方式,注意readlines和readline的区别。open是python自带打开方式,如果打不开,可以使用encoding="UTF-8"指定解码方案。读取得到一行之后,行首行尾可能存在一些不需要的字符,就可以使用str.strip()去除,括号中是预期要去除的字符串。比如多行txt文件中会有换行符。strip一般与split搭配使用。split也可以指定...

2020-02-23 21:47:20 240

原创 Keras入门

首先当然是安装Keras。需要注意的是Keras有三种后端backend。后端是意思是Keras需要依赖他们进行张量的运算。这三种后端是:tensorflow,Theano,CNTK(微软)。这也是keras的优势:可以在多种生态中发布。一般使用Tensorflow作为后端,所以在安装Keras之前需要先安装tensorflow。在安装好Keras之后,命令行中import keras会提示usi...

2020-01-12 11:22:14 307

原创 好的PPT——准备工作

首先介绍PPT的一些基本技巧。在选项界面,我们需要调整一些选项:控制最大可回退次数;语法自动检查;字体嵌入PPT,调整自动保存的时间间隔。对于一些常用操作,可以右键添加到常用工具栏。可以很方便地调整不同词条的层级。小技巧:视图,参考线,ctrl拖动可以建立新的参考线Shift+ctrl,拖动复制,F4,重复上一步操作,快速复制等间隔的图像先选中底色,按...

2020-01-01 22:46:27 180

原创 win10下安装node

本来挺简单的,但是在命令行node -v可以看到版本号,npm -v却没有一起安装成功。提示一个模块找不到:Cannot find module '../lib/utils/unsupported.js'。一开始以为是环境变量没有设置,但是其实安装工程中已经自动添加了,手动添加了也还是报错。node官网直接给出的就是最新版,然而我看网上大部分人都是因为这个版本的问题,说要找到一个稳定版,大家可...

2019-05-25 18:57:09 281

原创 大牛们的资料与主页

Mikolajczyk 特征检测主页http://lear.inrialpes.fr/people/mikolajczyk/SURF算法项目主页http://www.vision.ee.ethz.ch/~surf/南开大学媒体计算实验室 显著性检测https://mmcheng.net/zh/effisalobj/FT显著性算法https://ivrlwww.epfl.ch/suppl...

2019-04-12 17:04:40 322

原创 TensorFlow学习之——checkpoints

在看别人的训练网络中一开头就遇到这样一行代码:ckpt = tf.train.get_checkpoint_state(directories.checkpoints)鼠标放在函数名上,ctrl+B,或者ctrl+点击函数名,可以跳转到函数的定义,可以知道tf.train.get_checkpoint_state函数通过目录下的checkpoint文件找到checkpoint状态prot...

2019-02-25 22:47:38 7121

原创 电影、电视和游戏中的帧率

之前在即刻上看到一个搬运自极客湾的视频,知乎上也有更详尽的文字解释https://www.zhihu.com/question/21081976/answer/34748080。我这里再简单总结一下。众所周知,电影一般是24帧的,有一个电影的公众号就叫24帧。首先我们来看为什么大多数电影都是24帧,然后再比较一下电影中的帧数和游戏中的帧有什么区别,为什么游戏中需要更高的帧数会流畅。通常的解...

2019-02-17 12:15:02 10637

原创 Pycharm下安装Tensorflow

趁着帮师妹看Github上的一个项目,督促自己学习一下Python下训练神经网络的一整套流程。没想到在一开头就遇到了不少问题。首先是Pycharm中导入Github项目的问题,还有安装tensorflow的问题,之后又遇到了多种版本的Python共存的问题。在这里记录一下,包括一些开源镜像,方便日后查阅。Justin-Tan实现了一篇文章提出的基于GAN网络压缩图像的目标。原理基本就是生成一幅...

2019-01-18 15:40:01 7817 1

原创 通过SVD求解单应矩阵

我们现在知道原则上4对匹配点对就可以唯一确定单应矩阵,但是在实际应用中我们无法保证两个视图严格满足使用条件(只有旋转变换;远景;平面场景),所以要使用拟合的方法求一个最优解。现在就来以SIFT算法源码为例,看一下是怎么求解的。这是RobHess写的SIFT源码中求解矩阵的代码部分,我们依次看每一个参数的含义:H1 = ransac_xform( feat1, n1, FEATURE_FWD_...

2019-01-13 16:33:37 3173 4

原创 齐次坐标,怎么你也叫Homogeneous

其实参考链接中已经解释的很好了,这篇博客主要就是为了码一下别人的博客。链接1、2里面不仅有关于齐次坐标的解释,还有很多其他的计算机图像的知识点,链接2还做了很多《冰与火之歌》的彩蛋。在平常数学运算中,我们一般使用笛卡尔坐标,但是在计算机图形学中使用的更多的是齐次坐标(Homogeneous Coordinates)。数学里,齐次坐标(homogeneous coordinates),或投影坐标...

2019-01-11 16:50:41 1269

原创 视频制作中的绿幕与拜耳阵列

先来欣赏一些大片背后的特效。现在国内的电影市场越来越大,做短视频的自媒体也越来越多,在他们的后期视频制作的片花中可以看到很多都在使用绿幕或者蓝幕,这是为什么呢?首先肯定是为了抠图的方便。将主体部分抠出再将通过特效渲染的背景图像叠加上去。那么为什么使用的幕布颜色是绿色或者蓝色呢?我们知道光源的三原色是RGBRBG,而抠像的主体一般是人,红色接近人类肤色,在密布红色的工作环境中,长时间的工作也...

2019-01-02 16:34:31 2530

原创 Deep Image Homography Estimation

在知乎问题:深度学习应用在哪些领域让你觉得「我去,这也能行!」?中遇到一篇提交在arXiv 2016(arXiv不是正式发表,只是可以证明原创性,提供时间戳的网站)的文章《Deep Image Homography Estimation》,感觉对自己帮助很大,所以记录在这里。之前自己也在思考如何利用神经网络实现图像的配准,没思考出什么结果来。大部分的深度学习中使用的是单幅图像进行训练,如果输入...

2018-12-25 20:58:37 7297 10

原创 什么是单应矩阵和本质矩阵

知乎上面的大牛还是很多,直接搜Homography或者单应矩阵就能得到很多大神的回答,可能回答中的一句话或者一个链接就够自己学习很久。其实在之前研究双目视觉的时候就接触了对极几何,通过视觉就可以得到物体的远近信息,这也是特斯拉等自动驾驶甚至可以完全使用摄像头而不使用雷达的原因。通过下面这幅图说明一下匹配点必须在极线上。在单镜头下,同一个径向的物体P、Q的成像是重合的,所以我们无法判断物...

2018-12-20 15:52:59 3696

原创 什么是图像变换

还是看OpenCV官方手册,我觉得这样可以同时学习如何使用函数和如何理解一些基本概念。首先,这里的几何变换geometrical transformations是针对2D图像而言的,不改变图像内容而是将像素网格变形deform the pixel grid,映射到目标图像destination image。目标图像不是由源图像直接得到,因为数字图像是离散的,所以源图像的像素点的映射无法保证落在...

2018-12-20 11:40:49 2248

原创 什么是图像

图像,尤其是数字图像的定义,在冈萨雷斯的书中是一个二维函数f(x,y),x,y是空间平面坐标,幅值f是图像在该点处的灰度或者强度。下面通过OpenCV中最常用的图像表示方法Mat来看一下在计算机中是怎么定义图像的。Mat的定义OpenCV在2.0之后改用C++实现了Mat类,从而代替了IplImage,不用再手动分配和释放内存。Mat其实是原来存放数组的,数组可以是单通道的也可以是多通道的...

2018-12-14 11:45:59 5959

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除