opencv
文章平均质量分 82
cfqcfqcfqcfqcfq
这个作者很懒,什么都没留下…
展开
-
OpenCV中Mat属性step,size,step1,elemSize,elemSize1
step1(i):每一维元素的通道数step[i]:每一维元素的大小,单位字节size[i]:每一维元素的个数elemSize():每个元素大小,单位字节elemSize1():每个通道大小,单位字节...转载 2019-12-03 14:19:08 · 335 阅读 · 0 评论 -
OpenCV 、VTK for python 安装
最近一直在学习python,之前实验室做图像图形处理的,在c++编程语言下会经常使用OpenCV、VTK这些好用的三方开源库。这些库包都提供了python接口,所以这里记录一下OpenCV 、VTK for python 的安装。安装方法有多种,这里我选择在用Anaconda开发套件来安装这两个库。这应该是最简单、也是最方便管理的方法。 Anaconda是一个用于科学计算的P...原创 2018-01-04 15:36:54 · 1373 阅读 · 0 评论 -
Opencv、VTK在vs2013中的配置
本人在程序开发时候,用到了这两个库包,所以放到一起介绍一下两个库包的配置,其实在window上库包配置是有很大的相同性的。 Opencv配置 1)Opencv目录组织结构:nclude: 包含opencv头文件.● lib: 存放lib文件( 动态编译链接库),是有的函数声明式.●bin:存放Dll文件( 动态连接库文件),是所有函数的实现过程.●staticlib: 静态编译连接库,存放也是.lib文件。但是里面包括了函数的声明和实现。原创 2017-03-26 15:17:49 · 3765 阅读 · 0 评论 -
opencv:视频去黑暗(增强)
之前一篇博客写过一个关于图像去黑暗的算法(点击打开 图像去黑暗 ),它是一个去雾算法的延伸。最近学习了一些视频的基本知识,想把这个继续延伸到视频邻域。思路基本一样,先对视频解码为帧,然后在对每一帧图像进行去黑暗,最后在编码输出到文件夹。 1、使用opencv对视频编解码 正版视频编解码处理是使用ffmpeg处理完成,由于对ffmpeg掌握不熟悉,在对opencv进一步了解之原创 2017-04-04 21:05:31 · 2336 阅读 · 1 评论 -
基于opencv的单张图像去雾算法(二)
1、暗原色方法的缺陷 使用暗原色先验知识获取到的t估计图关键就是利用最小值滤波器求去最小值,而这个过程受到滤波核ksize的影响较大,滤波核选取的比较小时,t估计图细节较多,层次感好。但是平滑较少,局部错误增多。而滤波核ksize取值较大时,会得到分布过于单一的暗原色图,致使t估计图的细节和层次感不够明显 , 不能有效区分距离的远近 。由于多数真实图像的雾气浓度分布不原创 2016-10-19 11:36:11 · 5656 阅读 · 0 评论 -
ubuntu opencv3.2安装测试
结合网上搜索的资料总结一下在ubuntu下安装opencv 系统版本:ubuntu 16.04 opencv : opencv 3.2.0 一 编译环境 安装关联库搭建C/C++编译环境:sudo apt-get install build-essential 安装关联库sudo apt-get install cmake git libg原创 2017-01-18 01:21:31 · 7142 阅读 · 0 评论 -
opencv : 边缘区域去除
边缘区域的定义:图像上的一个区域位于边缘。如下图所示: 标号1 为一个边缘区域 现在希望可以将图像中的边缘区域去除。一个简单的思路如下: 遍历图像上下左右四条边界上的像素。设置一个计数器和一个最小边界阈值。当边界满足要求的像素个数大于阈值,就作为一个待处理区域。并选取其中一个坐标点作为种子点进行满水填充为0。代码如下: Mat src=im原创 2016-12-20 08:35:10 · 8074 阅读 · 0 评论 -
opencv:RotatedRect和CvBox2D的角度疑云
在使用opencv的过程中经常会使用minAreaRect返回一个轮廓的外接矩形,它返回的是一个RotatedRect的类:[html] view plain copyclass CV_EXPORTS RotatedRect { public: //! various constructors RotatedR转载 2016-11-15 21:44:16 · 1003 阅读 · 0 评论 -
vtkImageData转化为cv::Mat
前面用opencv实现了基于凹点匹配重叠图像分割(凹点匹配分割)。现在因为项目要求要在VTK中完成类似的功能,但是VTK主要是做三维可视化方面,但是图像分析上就差一些。现希望通过数据格式转换来时这两中库包有机结合使用。最简单的一种方法就以访问像素的方式,一点点将vtkImageData像素全部复制到Mat中,下面介绍另一种方法:描述:通过vtk来读图和显示,中间使用Opencv做图像处理:原创 2016-11-14 22:02:29 · 1858 阅读 · 0 评论 -
opencv:基于凹点匹配的重叠分割
有重叠部分的两个同类型物体由于灰度近似,所以一般较难分类(如下图)。实际操作中是使用一种凹点匹配的方法来寻找分割点进行分割。两个重叠物体 其中黄色十字地方就是凹点 寻找到凹点是解决该分割问题的关键。这里采用如下方法: 1、寻找该图像的最小凸闭包, 2、图闭包和凹图形相减得到凹区域 3、提取凹区域的轮廓 4原创 2016-11-11 22:28:54 · 14489 阅读 · 3 评论 -
基于opencv的单张图像去雾算法(三)
导向滤波算法基本已取得不错的效果,保留完整细节信息。观察去雾后的图像其亮度要比原图要低。那是因为物体光线的亮度通常不及大气光线。看一些论文里提到了自动色阶算法。查阅资料发现其就是RGB三通道进行灰度拉伸。 实现过程中使用opencv的通道分离和和合并函数并结合普通的灰度拉伸函数就可以实现 RGB三通道灰度拉伸实现代码:int main(){//[6] --自动色阶(原创 2016-10-20 12:25:44 · 5736 阅读 · 0 评论 -
Qt对话框显示opencv读取的图像
opencv和Qt结合使用,既可以发挥opencv强大的图像处理能力,又能够发挥Qt优势使其有一个良好的交互界面。用Qt对话框显示图片的核心,就是解决如何两种不同的图像数据类型Mat和QImage之间的转化。以及Qt图像显示部件的选取。查阅的参考文献多使用QLabel来显示图片。但存在图片显示不居中等问题。 Qt提供了专业的Graphic View框架用来显示和交互2D图形图像。功能十分强大原创 2016-10-19 21:37:37 · 2737 阅读 · 0 评论 -
opencv矩阵运算
在对图像进行处理时,进场会对图像的像素进行一些算数运算,由于opencv提供了矩阵类Mat来保存图像数据,所以这些算术运算可以转换为矩阵运算,了解一些常见的矩阵运算可以减少编程量,加快算法速度。对opencv的矩阵运算做总结供以后参考! 一、矩阵Mat I,img,I1,I2,dst,A,B;double k,alpha;Scalar s;1.加法I=I1+I2;/原创 2016-10-19 14:13:40 · 560 阅读 · 0 评论 -
基于opencv的单张图像去雾算法(一)
最近对图像去雾算法产生了兴趣,查阅学习了大量论文和大牛博客后,决定动手用自己熟悉的opencv来编写程序完成。文章专门记录了具体算法实现过程以及其中遇见的大量问题。供自己以后参考,当然也希望能给广大博友提供一些参考。本文着重讲实现过程,图像去雾理论会同过参考文献形式给出。整个内容拟大概分成三个章节来介绍。开发环境: 计算机系统:win10(64-bit) 编译器:MS原创 2016-10-18 13:29:46 · 5663 阅读 · 1 评论 -
opencv:求区域的内接矩形
实验室项目中,希望求取一个近似圆形区域的质心,原本使用最小外接圆的质心来等效为该区域质心。但是由于部分区域的形状过于不规则导致发生质心偏移现象。如下图: 蓝色为实际要求质心。红色为等效圆质心 为获取较为准确的质心,拟用最大内接矩形的中心作为该区域质心。 采用改进的中心扩散法求内接矩形:先以最小外接矩的中心作为算法的起点进行中心扩散。得到一个内解矩形,在对最小外接矩的原创 2016-11-08 17:09:42 · 18268 阅读 · 9 评论 -
图像去黑暗-————去雾算法延伸
夜间拍摄的图片,因为亮度不够而看不清,例如下面: 在前面去雾算法的基础上延伸了去黑暗。基本思路很简单:就是把原图的像素全部反转(左图),这样就形成一张类似的含雾图。再按照去雾算法来完成去雾。最后在转换回来。在实际操作时候发现效果不好。反转后的图像基本是一片白,这和之前的含雾图像有比较大差别原创 2016-10-21 13:10:52 · 2089 阅读 · 2 评论