首页
学习
活动
专区
工具
TVP
发布

一棹烟波

专栏作者
58
文章
142875
阅读量
37
订阅数
图像融合之泊松融合(Possion Matting)
前面有介绍拉普拉斯融合,今天说下OpenCV泊松融合使用。顺便提一下,泊松是拉普拉斯的学生。   泊松融合的原理请参考这篇博文https://blog.csdn.net/u011534057/arti
一棹烟波
2018-05-28
2.9K0
图像处理中kmeans聚类算法C++实现
Kmeans聚类算法是十分常用的聚类算法,给定聚类的数目N,Kmeans会自动在样本数据中寻找N个质心,从而将样本数据分为N个类别。下面简要介绍Kmeans聚类原理,并附上自己写的Kmeans聚类算法实现。 一、Kmeans原理   1. 输入:一组数据data,设定需要聚类的类别数目ClusterCnt,设定迭代次数IterCnt,以及迭代截止精度eps       输出:数据data对应的标签label,每一个数据都会对应一个label(范围0 ~ ClusterCnt-1),表示该数据属于哪一类。  
一棹烟波
2018-05-28
2.9K0
图像融合之拉普拉斯融合(laplacian blending)
一、拉普拉斯融合基本步骤    1. 两幅图像L,R,以及二值掩模mask,给定金字塔层数level。   2. 分别根据L,R构建其对应的拉普拉斯残差金字塔(层数为level),并保留高斯金字塔下采样最顶端的图像(尺寸最小的图像,第level+1层):     拉普拉斯残差金字塔构建方法如下,以L图为例:     (1) 对L进行高斯下采样得到downL,OpenCV中pyrDown()函数可以实现此功能。然后再对downL进行高斯上采样得到upL,OpenCV中pyrUp()函数可以实现此功能。    
一棹烟波
2018-05-28
2.2K0
张正友标定法示例 (含源代码)
博主的博客,以著名的张大牛标定法开始吧! 具体标定原理就不详细说了,资料数不胜数,重点看张正友的原著《A Flexible New Technique for Camera Calibration》,
一棹烟波
2018-01-12
3.3K1
OpenCV畸变校正原理以及损失有效像素原理分析
上一篇博客简要介绍了一下常用的张正友标定法的流程,其中获取了摄像机的内参矩阵K,和畸变系数D。 1.在普通相机cv模型中,畸变系数主要有下面几个:(k1; k2; p1; p2[; k3[; k4; k5; k6]] ,其中最常用的是前面四个,k1,k2为径向畸变系数,p1,p2为切向畸变系数。 2.在fisheye模型中,畸变系数主要有下面几个(k1,k2,k3,k4). 因为cv和fisheye的镜头畸变模型不一样,所以畸变系数也会有所不同,具体在畸变校正时的公式也不同,具体公式请参见opencv2.0
一棹烟波
2018-01-12
2.9K0
利用光场进行深度图估计(Depth Estimation)算法之二——匹配算法
光场相机由于能够捕获相机内部光线的强度和方向而得到整个光场,可以实现重聚焦(refocus)和视角变换等功能。进而可以进行深度估计获取深度图,前面说过利用重聚焦的图像进行深度估计,今天说一下利用不同视角的图像进行深度估计。 仍然是以Lytro Illum为例 由于每一个微透镜后面的15*15个像素能够记录来自主镜头的225条光线信息,因此取每一个微透镜后面同一位置的像素可以得到一个视角下的图像,遍历15*15个像素,就能够得到225个不同视角下的图像。这些图像之间视角上又偏移,即视差,可以使用匹配的方法进行
一棹烟波
2018-01-12
1.9K0
ffmpeg中avframe的YUV格式数据到OpenCV中Mat的BGR格式转换
ffmpeg实现音视频编解码是非常常用的工具,视频解码出来的raw数据是yuv格式,用来进行后续的图像处理一般是RGB格式的。所以需要从yuv到rgb或者bgr的转换,ffmpeg提供了相应的转换API函数: 下面代码中dec_ctx是解码器上下文,AV_PIX_FMT_BGR24是要转换成的图像数据格式,通过avpicture_get_size()函数获取图像的数据占用空间大小,并使用av_malloc()分配一个outBuff。将outbuff挂到video_frameBGR结构体上,并设置好格式转换
一棹烟波
2018-01-12
2.6K0
利用光场进行深度图估计(Depth Estimation)算法之一——聚焦算法
前面几篇博客主要说了光场相机,光场相机由于能够记录相机内部整个光场,可以实现重聚焦(模糊线索)和不同视角的变换(视差线索),同时也可以利用这个特性进行深度估计(Depth Estimation)。 先说一下利用重聚焦得到的不同聚焦平面图像获取深度图(模糊线索 ,defocus),其实这个原理非常简单。 1. 以聚焦范围为0.2F-2F为例,alpha∈(0.2,2),取Depth Resolution=256, 那么步长就为(2-0.2)/256,我们通过重聚焦算法可以获取得到这个范围内的256幅重聚焦图像
一棹烟波
2018-01-12
1.6K1
OpenGL进行简单的通用计算实例
博主作为OpenGL新手,最近要用OpenGL进行并行的数据计算,突然发现这样的资料还是很少的,大部分资料和参考书都是讲用OpenGL进行渲染的。好不容易找到一本书《GPGPU编程技术,从OpenGL、CUDA到OpenCL》,里面对并行处理的发展进行了系统性的介绍,还是很不错的。小白博主很兴奋,看完书中第三章后恍然大悟了很多,就贴出书中代码3-3的例子,实现一番,并用一副图片数据做了实现。 实现环境:Window7 32bit, VS2013+OpenGL3.3+GLEW+GLFW。 OpenGL用来进行
一棹烟波
2018-01-12
2K0
图像变换之Census变换
图像的Census变换 Census变换属于非参数图像变换的一种,它能够较好地检测出图像中的局部结构特征,如边缘、角点特征等。传统Census变换的基本思想是:在图像区域定义一个矩形窗口,用这个矩形窗口遍历整幅图像。选取中心像素作为参考像素,将矩形窗口中每个像素的灰度值与参考像素的灰度值进行比较,灰度值小于或等于参考值的像素标记为0,大于参考值的像素标记为1,最后再将它们按位连接,得到变换后的结果,变换后的结果是由0和1组成的二进制码流。Census变换的实质是将图像像素的灰度值编码成二进制码流,以此来获取
一棹烟波
2018-01-12
1.7K0
利用视差图合成新视点
利用视差图合成新视点,视差图一般通过图像匹配获取,以middlebury上的一张图为例,左边为原图(左图像),右边为对应视差图(灰度图)。 1. 正向映射: 简单的利用左视点原图和视差图进行视点合成,
一棹烟波
2018-01-12
2.1K0
仿射变换与透视变换
仿射变换保证物体形状的“平直性”和“平行性”。透视变换不能保证物体形状的“平行性”。仿射变换是透视变换的特殊形式。 将透视变换写成3*3矩阵形式,即为M; 以下面这张图为例,实现仿射变换,包括旋转,平
一棹烟波
2018-01-12
1.2K0
二维图像的三维旋转
三维坐标系中,已知三个欧拉角alpha,beta,gamma,分别为绕x轴旋转alpha角度,绕y轴旋转beta角度,绕z轴旋转gamma角度。则旋转矩阵Rotation的求法如下: Mat Rot=Mat::eye(3,3, CV_32FC1); Rot.at<float>(0, 0) = cos(beta) * cos(gamma); Rot.at<float>(0, 1) = cos(beta) * sin(gamma); Rot.at<float>(0, 2) = -sin
一棹烟波
2018-01-12
1.8K0
图像缩放示例
二维图像的缩放属于仿射变换或者透视变换的范畴,一般可以通过OpenCV的warpAffine()或者warpPerspective()函数实现。 出于兴趣,根据仿射变换公式自己简单写了一个函数实现图像的缩放,缩放中心设置为图像中心。 代码如下: 1 #include <iostream> 2 #include <string> 3 #include <opencv2/opencv.hpp> 4 5 using namespace std; 6 using namespace cv;
一棹烟波
2018-01-12
9200
图像添加径向畸变
通常摄像机的镜头都会有镜头畸变,尤其是广角镜头,在做图像处理中往往会通过摄像机标定获取镜头的畸变系数,然后进行畸变校正。而在某些特殊的情况下,你可能会需要往图像中加入畸变,下面简单实现了一个向无畸变图
一棹烟波
2018-01-12
2.2K1
直方图实现快速中值滤波
中值滤波能够有效去除图像中的异常点,具有去除图像噪声的作用。传统中值滤波的算法一般都是在图像中建立窗口,然后对窗口内的所有像素值进行排序,选择排序后的中间值作为窗口中心像素滤波后的值。由于这个做法在每
一棹烟波
2018-01-12
1.7K0
没有更多了
社区活动
腾讯技术创作狂欢月
“码”上创作 21 天,分 10000 元奖品池!
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档