摘要: 鱼眼图像由视场角接近180度甚至大于180度的镜头拍摄得到,图像周围畸变严重,通过经纬法将鱼眼图像展开是一个不错的方法。鱼眼镜头可以视为一个半球,经纬法按照球面贴图的类似思想将图像以球面形式展开。 以下面这幅鱼眼图像为例: 视场角假设为180度,如果按照球的北极点(南极点)为图像的中心,展开后会是这 阅读全文
posted @ 2017-09-07 22:25 一度逍遥 阅读(5988) 评论(1) 推荐(1) 编辑
摘要: 当处理较大数据量的时候,往往会用GPU进行运算,比如OpenGL或者CUDA。在实际的操作中,往往CUDA实现并行计算会比OpenGL更加方便,而OpenGL在进行后期渲染更具有优势。由于CUDA中的运算结果存储在GPU中,如果将数据download到CPU,然后再将CPU中的数据上传到GPU,使用 阅读全文
posted @ 2017-08-30 22:08 一度逍遥 阅读(5377) 评论(1) 推荐(0) 编辑
摘要: 通常摄像机的镜头都会有镜头畸变,尤其是广角镜头,在做图像处理中往往会通过摄像机标定获取镜头的畸变系数,然后进行畸变校正。而在某些特殊的情况下,你可能会需要往图像中加入畸变,下面简单实现了一个向无畸变图像中人为加入径向畸变。 仍然以这幅风景图为例,我用手机拍摄的,畸变程度可以忽略: 1.人为加入桶形畸 阅读全文
posted @ 2017-08-28 22:07 一度逍遥 阅读(6043) 评论(4) 推荐(0) 编辑
摘要: 二维图像的缩放属于仿射变换或者透视变换的范畴,一般可以通过OpenCV的warpAffine()或者warpPerspective()函数实现。 出于兴趣,根据仿射变换公式自己简单写了一个函数实现图像的缩放,缩放中心设置为图像中心。 代码如下: 1 #include <iostream> 2 #in 阅读全文
posted @ 2017-08-23 22:15 一度逍遥 阅读(514) 评论(0) 推荐(0) 编辑
摘要: 仿射变换保证物体形状的“平直性”和“平行性”。透视变换不能保证物体形状的“平行性”。仿射变换是透视变换的特殊形式。 将透视变换写成3*3矩阵形式,即为M; 以下面这张图为例,实现仿射变换,包括旋转,平移,缩放,剪切,以图像中心为变换中心; 仿射变换 旋转(逆时针旋转30度) Mat M=Mat::e 阅读全文
posted @ 2017-08-19 23:18 一度逍遥 阅读(12372) 评论(1) 推荐(0) 编辑
摘要: 三维坐标系中,已知三个欧拉角alpha,beta,gamma,分别为绕x轴旋转alpha角度,绕y轴旋转beta角度,绕z轴旋转gamma角度。则旋转矩阵Rotation的求法如下: Rotation是3*3矩阵,用于三维空间坐标的旋转。 现在给定一幅二维图像如下,并且已知拍摄此图像的摄像机内参,根 阅读全文
posted @ 2017-08-19 22:04 一度逍遥 阅读(6750) 评论(1) 推荐(1) 编辑
摘要: 利用相机拍摄一个场景不同角度的图片,使用VisualSFM能够得到稀疏点云,如果想要得到稠密点云,可以在VisualSFM中加入PMVS的应用程序,PMVS会作为一个插件运行将稀疏点云插成稠密的点云。 ViusalSFM在Changchang WU的主页下载,分64bit和32bit. CMVS-P 阅读全文
posted @ 2017-08-16 22:24 一度逍遥 阅读(4944) 评论(0) 推荐(1) 编辑
摘要: 利用视差图合成新视点,视差图一般通过图像匹配获取,以middlebury上的一张图为例,左边为原图(左图像),右边为对应视差图(灰度图)。 1. 正向映射: 简单的利用左视点原图和视差图进行视点合成,取每一个像素点处的视差值,然后计算新图像中像素点位置,然后赋值。前向映射,单点赋值代码如下。配置完O 阅读全文
posted @ 2017-08-13 22:47 一度逍遥 阅读(12324) 评论(3) 推荐(6) 编辑
摘要: 图像的Census变换 Census变换属于非参数图像变换的一种,它能够较好地检测出图像中的局部结构特征,如边缘、角点特征等。传统Census变换的基本思想是:在图像区域定义一个矩形窗口,用这个矩形窗口遍历整幅图像。选取中心像素作为参考像素,将矩形窗口中每个像素的灰度值与参考像素的灰度值进行比较,灰 阅读全文
posted @ 2017-08-06 18:39 一度逍遥 阅读(10619) 评论(3) 推荐(1) 编辑
摘要: 前面有几篇博客主要介绍了光场和光场相机相关知识,以及重对焦效果和多视角效果的展示。算是自己学习光场过程的一种总结。 这次贴上自己用OpenCV/C++编写的重对焦算法实现(包含CPU版和CUDA GPU版),以及交互的Demo。放在我的开源中国码云上,连接在此:https://git.oschina 阅读全文
posted @ 2017-07-22 15:39 一度逍遥 阅读(1908) 评论(2) 推荐(2) 编辑
摘要: 我屮艸芔茻,转眼就7月份了。 今天试了一下立方体贴图,比较简单,大概说下和平面贴图的区别。 1. 平面贴图需要的是纹理坐标vec2;立方体贴图需要的是一个方向向量vec3,长度没有关系,重要的是方向,OpenGL会根据方向向量与立方体的各个面的交点来采样纹理。 2.在立方体的六个面贴六张不同的图片, 阅读全文
posted @ 2017-07-02 21:57 一度逍遥 阅读(2097) 评论(0) 推荐(0) 编辑
摘要: speex库中音频降噪效果不错,应该是应用最广泛的吧,speex库下载地址https://www.speex.org/downloads/,可以直接下载二进制代码使用,像配置OpenCV一样配置speex库就可以了。speex库的API参考文档下载:http://download.csdn.net/ 阅读全文
posted @ 2017-06-07 22:21 一度逍遥 阅读(11656) 评论(0) 推荐(0) 编辑
摘要: OpenCV 3.0以及以后版本集成了HDR算法,样例代码的路径为: .\sources\samples\cpp\tutorial_code\photo\hdr_imaging.cpp。 实现算法的参考文献为《Recovering high-dynamic range radiance maps f 阅读全文
posted @ 2017-05-23 00:04 一度逍遥 阅读(8979) 评论(4) 推荐(0) 编辑
摘要: 博主作为OpenGL新手,最近要用OpenGL进行并行的数据计算,突然发现这样的资料还是很少的,大部分资料和参考书都是讲用OpenGL进行渲染的。好不容易找到一本书《GPGPU编程技术,从OpenGL、CUDA到OpenCL》,里面对并行处理的发展进行了系统性的介绍,还是很不错的。小白博主很兴奋,看 阅读全文
posted @ 2017-05-21 19:25 一度逍遥 阅读(5869) 评论(0) 推荐(0) 编辑
摘要: 博主最近转战语音增强研究,刚学习了最基础也是最成熟的方法——谱减法,最早是boll提出的《Suppression of acousic noise in speech using spectral subtraction》。http://blog.csdn.net/leixiaohua1020/ar 阅读全文
posted @ 2017-05-13 12:53 一度逍遥 阅读(22211) 评论(5) 推荐(0) 编辑
摘要: 光场相机由于能够捕获相机内部光线的强度和方向而得到整个光场,可以实现重聚焦(refocus)和视角变换等功能。进而可以进行深度估计获取深度图,前面说过利用重聚焦的图像进行深度估计,今天说一下利用不同视角的图像进行深度估计。 仍然是以Lytro Illum为例 由于每一个微透镜后面的15*15个像素能 阅读全文
posted @ 2017-05-02 23:12 一度逍遥 阅读(5342) 评论(3) 推荐(0) 编辑
摘要: 圆形孔径的微透镜 1.最常见的正方形排布, 填充率78.8%,如图: 2. 六角形排列 填充率 90.7% Lytro相机采用此排布方法,如下图: 非圆形孔径微透镜 1.方形微透镜。在制造微透镜过程中,加工出方形边界的微透镜,填充率100%。其实就是在重叠排布的圆形微透镜基础上选取中间内接矩形的区域 阅读全文
posted @ 2017-04-25 19:16 一度逍遥 阅读(3722) 评论(0) 推荐(0) 编辑
摘要: 前面几篇博客主要说了光场相机,光场相机由于能够记录相机内部整个光场,可以实现重聚焦(模糊线索)和不同视角的变换(视差线索),同时也可以利用这个特性进行深度估计(Depth Estimation)。 先说一下利用重聚焦得到的不同聚焦平面图像获取深度图(模糊线索 ,defocus),其实这个原理非常简单 阅读全文
posted @ 2017-04-23 23:01 一度逍遥 阅读(11694) 评论(4) 推荐(2) 编辑
摘要: 这一小节说一下Matlab光场工具包的使用,展示重聚焦和多视角的效果。 从Lytro illum中导出的raw数据为.lfp格式的光场图像文件(约52M大小),该文件包含以下几部分:光场图像数据rawdata;metadata;相机序列号 serials;光场图像大小imgSize;拜尔格式 ‘gr 阅读全文
posted @ 2017-04-20 13:25 一度逍遥 阅读(11547) 评论(34) 推荐(6) 编辑
摘要: 上一节中大概讲述了光场相机和光场的参数化表示,这一节就说一下光场相机内部是如何记录光场以及实现重聚焦的。 博主用的是Lytro Illum,所以就以Illum为例来说了,Illum的功能还是挺多的,上手使用的童靴需要相机使用手册可以上网找一下,都有的。 切入正题 首先,说一下Lytro Illum的 阅读全文
posted @ 2017-04-18 23:15 一度逍遥 阅读(8822) 评论(1) 推荐(1) 编辑
摘要: 博主最近在搞光场相机方面的研究啦,好了废话不多说,开始! 1. 一些前言废话 首先,来一下光场的基本概念,来自百度百科。光场(light field):就是指光在每一个方向通过每一个点的光量。从概念里,你至少可以得到两点信息:1.光场包含光的方向;2.光场包含一个点的光量。 那光场相机是个什么东西, 阅读全文
posted @ 2017-04-17 22:31 一度逍遥 阅读(8680) 评论(0) 推荐(0) 编辑
摘要: 上一篇博客简要介绍了一下常用的张正友标定法的流程,其中获取了摄像机的内参矩阵K,和畸变系数D。 1.在普通相机cv模型中,畸变系数主要有下面几个:(k1; k2; p1; p2[; k3[; k4; k5; k6]] ,其中最常用的是前面四个,k1,k2为径向畸变系数,p1,p2为切向畸变系数。 2 阅读全文
posted @ 2017-04-14 22:37 一度逍遥 阅读(55683) 评论(16) 推荐(11) 编辑
摘要: 博主在博客园的第一篇博客,以著名的张大牛标定法开始吧! 具体标定原理就不详细说了,资料数不胜数,重点看张正友的原著《A Flexible New Technique for Camera Calibration》,搞明白这篇文章就足够了。 好了,现在主要说一下标定过程,并附上博主自己调用Opencv 阅读全文
posted @ 2017-04-11 22:51 一度逍遥 阅读(29226) 评论(7) 推荐(1) 编辑