图像处理
哇哈哈∞
这个作者很懒,什么都没留下…
展开
-
水平匀速直线运动模糊图像复原实验
近期花了点时间学习图像复原,研究了一下最基本的水平匀速直线运动图像复原方法,在此总结一下。不当之处,还请大家批评指正。研究背景:变速非直线运动在某些条件下可被分解为匀速直线运动,从而我们可以将变速非直线运动模糊过程简化为匀速直线运动模糊过程。在此基础上,我们再次将匀速直线运动模糊过程简化为水平匀速运动模糊过程。具体问题:自己亲手拍摄的图片:图一让其运动模糊(最初老师的建议是拍10张照片叠加,自己亲身实验后,效果很差,决定选用一个更简单的方法让其模糊),具体做法:将图一错位叠加,具体过程如下:每次原创 2021-07-05 19:50:52 · 1795 阅读 · 0 评论 -
手动扩充图像
遇到的问题:手里有一个512*512的图像,我想把它变大一点。最容易想到的方法是插值,如:最邻近插值、线性插值等。。。(之前均实现过)下面来一种简单粗暴,不太需要算法的算法。函数功能:将输进去的图片扩充为原来的两倍。import numpy as npimport mathimport matplotlib.pyplot as pltimport matplotlib.image as mp#扩充图片成其两倍def larger2(data,width): newdata = n原创 2021-05-07 11:27:32 · 128 阅读 · 0 评论 -
平滑空间滤波
过程中当然遇到了不少问题,但每次一写完就都忘了,只能靠在代码上的注释记得些。。。代码依次为:均值滤波、加权平均滤波、中值滤波、KNNimport numpy as npimport mathimport matplotlib.pyplot as pltimport matplotlib.image as imgpltdef average_filtering(data,size): #size为滤波器的大小(必须是奇数) (m,n,l) = data.shape start原创 2021-03-11 15:13:11 · 139 阅读 · 0 评论 -
双线性插值
想来周末无事,还是把双线性插值做一做吧。上一篇:变换与插值里的最邻近插值法理解的有问题,虽然写的时候就感觉有些不对劲,但当时急于实现就没想那么多。今天才突然想明白了插值的意义,之后上网一查,果真如此。如此看来,今天也算是有收获喽!理解的差距在于:上一篇的实现中,我认为插值就是在两个像素点之间插入更多的点,以使图像更平滑之类的。但事实上,插值不一定会使图像的像素点更多。插值的方法让我可以知道任何我想知道的位置的像素值(通过公式计算),通过这种方法,我可以得到由任何像素点得到的图像。下面,来试试吧!im原创 2021-03-06 22:53:37 · 168 阅读 · 0 评论 -
图像的变换与插值
其实,这个程序还有很多可以改进的地方。但优化是一件无止境的是,目前来看,实现就满足了。以后慢慢积累经验喽。remains:1.如何直接从读入的图片得到像素值?(脚本里是读完后自己手动敲上的);2.几个变换函数那里,其实可以做很大的精简,只是translation_m不同而已,代码冗余的厉害;3.插值的代码还是不断嵌套循环,导致运行时间长,还是没有找到合适的方法减少嵌套;4.可视化部分写的很笨重;5.一开始写的时候期待太大,导致难以下手,还是得把模型建清楚才会有迹可循;6.除了最后的插值,变换得原创 2021-03-04 18:37:40 · 288 阅读 · 3 评论