主题:【原创】如何提高多帧图像的分辨率(上) -- 驿路梨花
是解析延拓定理。
最起码可以把市场上流行过N年的VCD增高到720P的水平,DVD搞成蓝光1080P的水平,然后再重新开模压盘各路小贩重新上街叫卖,那要解决多少下岗职工和农民工的活路。等N年后64核机器普及后,直接读VCD就能放出蓝光1080P的效果,那是多么多么美妙。
其实最主要的是,各帧之间差别得很小,而N个可用的输入只有一个输出。偷拍的人有福啦,拿普通DV可以搞出DC效果的清晰图片
天文摄影里拍摄行星一般都是用摄像头拍几段视频然后几百帧叠加.
随便贴个网上搜的例子:
8寸F6马牛+5x Powermate,Philips 840K摄像头+红外滤镜,870帧叠加,每帧曝光1/33秒.
不过好像说这么做的目的是尽量除去大气活动对图像造成的干扰...
偷拍不管用的,目标不停的在变换位置和姿势...
用多帧降噪
虽然或许在您眼里不稀奇,好歹也看看有什么不同之处再下结论为好。
您大概没看明白,hoho
不然就被北斗给偷拍了。我还真想用我的相机80端对着远处的mm拍1000张,然后来复原~~继续写,俺看好你哦
那种劣质监控摄像头拍的录像,用什么东西处理一下,转成较清晰的照片。有时可以分析出汽车号码什么的。
差不多是这样的:比如说一张照片需要N次采样达到一定的分辨率,可以用n次低频采样实现
第一次: 1, n, 2n, 3n....
第二次: 2, n+1,2n+1, 3n+1...
....
当然这个是极端理想情况,直接线性迭加就可以了。
本帖一共被 1 帖 引用 (帖内工具实现)
是加权平均,也就是卷积。。。
后面尝试着写一下。。。
不过,不让用数学公式似乎很难说清楚。。。
【声明】
1、昨天实在太忙。。。木有填坑,不是存心不填的。后面不用数学公式,实在很不好写。
2、昨晚被蚊子咬死了,今早发现灭蚊灯上,共计死蚊子15只。偶讨厌蚊子!!!
【原创】如何提高多帧图像的分辨率(下)
首先回答一下kernelh的问题。kernelh提及的方法实际上是单帧图像处理中的一个常用方法,也就是上文说的帧插值法。比如当我们模糊的看清那是个鼻子的时候,就可以用一个更高清晰度的鼻子来代替,这就是所谓的插值近似,这里面多少有点蒙的意味。当然,这并不是瞎蒙,对于各种各样情况都有着不同的插值算法。
严格的说,这并不能单纯的界定为学术上的造假,如果出现问题,只是采用的算法不适当。。。就像在90年代初的时候,曾有大批的国有企业的领导,不断地失误交学费,穷了工厂富了家,法律并不能指认他们是有意为之,只能算是失误。。。所以,只要不把人脸估计成猩猩脸,那么一般也只是个算法问题。。。虽然对于论文和国有企业,我们大体都知道是怎么回事。
之所以前面花了大段的笔墨来写单帧图像的处理 —— 似乎与文章的标题毫无关系,这只是想说明一个问题,通过一张图片来达到提高分辨率的途径是不行的,因为用一张图片扩展成N张样本的时候,本已丢失的高频信息并未找回来。也就是,原来那个皇帝没有找到,另外我们通过插值的手段,找到了或者说创造出了新的皇帝 —— 自然,傀儡天子是不够真实的。
在一次又一次的离题万里之外,终于回到了题目上,多帧图像与单帧图像最大也是最根本的不同就是在于,如果偶手上有N张图片,那么这是可以实实在在提高分辨率的。
偶们再一次回到(上)中所描述的基本概念:像素。我们可以这样想象:把一张图片像围棋盘一样划分格子,这是这样图片就有了N*N个像素点;同时,我们把同样的一张围棋盘重叠在原来的上面,然后进行平移,将新的围棋盘的像素点移动到原围棋盘的每个格子的正中央,这样,两个围棋盘重叠之后,构成的新的一张围棋盘的像素点就有2N*2N个;很显然,新围棋盘的像素提高了,也就是说,新围棋盘的分辨率提高了。当如果有无穷多张图片进行极其微小位移的移动时,那么从理论上,我们完全可以知道这张低分辨率的图片的全貌。这就是多帧图像提高分辨率的原理。
这里需要介绍两个概念:
一方面,因为以上的平移会使得不同时刻获得的图像问存在较大的变形, 因此必须首先对其进行配准。也就是说,在进行以上的平移之前,我们必须保证这两个围棋盘是一样的,至少对于图片来说,它们是相似的。我们所需要的是大量具有相似而又不同的特征的图像,它们的信息相互冗余,同时也相互补充。寻找这若干个相似的围棋盘的工作,我们称之为图像配准。
另一方面,我们需要知道这两个围棋盘是怎样的相对运动的。在上面的例子中,我们假设两个围棋盘是相对运动到对方的格子正中央,但实际处理图像的时候,对于卫星传来的N张扫描图像,我们并不知道拍照设备和真实物体之间是一个怎样的相对运动,这就需要一个运动矢量场,我们把建立这种运动矢量场的过程,称之为运动模型估计。
可以对运动模型估计这个过程举一个简单的例子:桌子上有个苹果,我们从一个方向拿着相机对着这张苹果照相。每照一张之后,我们把相机向响应的方向平移或者旋转极其微小的单位,我们称之为微位移和微旋转。这样相机的运动模型就产生了:这可以构建一个F函数,包括两个参数:F{运动方式;运动数值},如果我们用矢量场描述,就是一个F矢量。这样我们就可以人为造成一个运动矢量场,只是,在有的时候,我们不可能这样做,只能依靠各种各样的算法去估计,经过图像配准的各个照片之间是怎样的一个运动矢量场。
但平移或者旋转的过程必须注意这样一个问题,就是这一过程必须极其微小。这里改动啦:这个微小位移的界定大致可以是这样:当我们把一副图像划分成足够小的子图的时候,那么当物体做微小运动时,则这个子图可以视为近似不变。具体的参见这个帖子:驿路梨花:是偶的问题。。。
图像配准和运动模型估计,这是在多帧图像提高分辨率中,最重要的两个步骤。在这一过程完成之后,才是偶们通过频域法或者空间域法解混叠,进行图像重建,实现图像数据的最终融合,进而提高分辨率。应该指出,这种解混叠不是简单的重合,而是如(上)举得例子,我们要在大量的平民百姓(低频)中把隐藏其中的皇帝(高频)找出来。
好了,现在所有的准备工作(多帧低分辨率图像->预处理->亚像素级的图像配准->运动模型估计)都做完了,剩下就是最后一个工作,怎样通过运动模型的估计解混叠来重建图像?这是一个很不好写的东西,这里面涉及到许多数学公式上的推导。。。人们对于不同的运动模型研究了不同的算法,后文偶试着写一下,但可能会写的极其的不清楚。。。
【预告】:下文上图像处理前后的PP。。。
极端的例子。实际应用多桢的采样是随机的,没那么简单。我瞎猜的,等你写完了再学习吧。
如果是随机的也要想办法搞清楚怎么随机的。。。