亚像素理解

1 亚像素理解


   在相机成像的过程中,获得的图像数据是将图像进行了离散化的处理,由于感光元件本身的能力限制,到成像面上每个像素只代表附近的颜色。例如两个感官原件上的像素之间有4.5um的间距,宏观上它们是连在一起的,微观上它们之间还有无数微小的东西存在,这些存在于两个实际物理像素之间的像素,就被称为“亚像素”。亚像素实际上应该是存在的,只是缺少更小的传感器将其检测出来而已,因此只能在软件上将其近似计算出来。 
   亚像素可以表示为如下图所示,每四个红色点围成的矩形区域为实际原件上的像素点,黑色点为亚像素点: 

image.png

 根据相邻两像素之间插值情况的不同,可以调整亚像素的精度,例如四分之一,就是将每个像素从横向和纵向上当做四个像素点。也就是上面图里的红色点之间有三个黑色点。这样通过亚像素插值的方法可以实现从小矩形到大矩形的映射,从而提高分辨率。 
   正因为这样的操作,所以在图像超分辨的任务里使用pixel shuffle的方式获得高分辨图像(例如ESPCN)。在一般的反卷积里会存在大量补0的区域,这可能对结果有害。因此pixel shuffle通过亚像素卷积的方式,实现从低分辨图到高分辨图的重构,具体如下所示,通过将多通道feature上的单个像素组合成一个feature上的单位即可,每个feature上的像素就相当于新的feature上的亚像素了。 

image.png

2 图像处理中的subpixel是什么意思?

子像素卷积,是一种正常卷积的简化形式,并加了很强的假设,结果就是去除了大量的卷积运算。

子像素卷积的结果一般是一张更大的图片,可用作超分辨率。

一个正常的逆卷积长这样:

20190729222831631.gif

逆卷积

把一个3x3的小图片变成一个5X5的大图片。白色虚线区域全填0。

subpixel作者认为,这些白色的填0区域,是无效信息,甚至对求梯度优化有害处。

明明可以直接从原图得到信息,何必非要填0呢。

于是作者搞了这个:

image.png

第一个白色矩阵图片是输入层。

第二个、第三个白色张量是隐藏层,做步长为1的正常卷积。

第四个彩色图片,经过子像素卷积,得到最后一张斑斓的大图。

image.png

就这样。

超分辨率的效果如下

image.png

最上面一排是输入的模糊图像x。

中间是超分辨后的图片f(x)

最下面是对照样例y

3 相机的像素精度,物理定位精度,亚像素定位之间的关系和进行像素的固定误差累积



4 亚像素级角点定位原理及opencv实现



本文出自勇哥的网站《少有人走的路》wwww.skcircle.com,转载请注明出处!讨论可扫码加群:

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

会员中心
搜索
«    2024年4月    »
1234567
891011121314
15161718192021
22232425262728
2930
网站分类
标签列表
最新留言
    热门文章 | 热评文章 | 随机文章
文章归档
友情链接
  • 订阅本站的 RSS 2.0 新闻聚合
  • 扫描加本站机器视觉QQ群,验证答案为:halcon勇哥的机器视觉
  • 点击查阅微信群二维码
  • 扫描加勇哥的非标自动化群,验证答案:C#/C++/VB勇哥的非标自动化群
  • 扫描加站长微信:站长微信:abc496103864
  • 扫描加站长QQ:
  • 扫描赞赏本站:
  • 留言板:

Powered By Z-BlogPHP 1.7.2

Copyright Your skcircle.com Rights Reserved.

鄂ICP备18008319号


站长QQ:496103864 微信:abc496103864