
OpenCV
深海沙砾
无所从来,无所从去。应如是住,如是降伏其心。
展开
-
OpenCV 3.1.0 重编译——支持CUDA8.0
写在前面最近主要在看机器学习的十大算法,尝试书中提供的示例,实验环境是win7 + python3.4.4 。突然间,我发现新版本的OpenCV对机器学习大部分算法都有很好的实现,原谅我一直停留在2.4版本。相较于python,我更熟悉Visual Studio,相比于Scikit-Learn,我更熟悉opencv_contrib。因此,觉得没必要舍近求远,去做自己不擅长的事情,效率低是一方面,而且原创 2017-03-31 16:30:19 · 8205 阅读 · 7 评论 -
在OpenGL中理解摄像机标定
摄像机是3D世界和2D图像之间的一种映射。 利用齐次坐标表示3D空间坐标X(X,Y,Z,1)\mathbf{X}(X,Y,Z,1),2D图像空间坐标x(x,y,1)\mathbf{x}(x,y,1),存在一个3X4的矩阵P\mathbf{P},满足: x=PX原创 2017-05-11 12:28:11 · 1509 阅读 · 0 评论 -
RANSAC 原理
RANSAC, Random Sample Consensus(随机抽样一致算法)是一个通用的鲁棒估计算法,由Fischler和Bolles提出文献。原创 2017-04-26 17:53:33 · 1761 阅读 · 1 评论 -
形状识别之直线检测
形状识别中常见的即是矩形框的识别,识别的主要步骤通常是:图像二值化,查找轮廓,四边形轮廓筛选等。当识别的目标矩形有一条边被部分遮挡,如图1所示,传统的识别方法就不能达到识别的目的。 图1在这里,提供一种识别的思路,仅供参考。识别的最终目标就是想识别出身份证的四条边,通过计算四条边的交点最后得到四边形的轮廓。主要涉及的问题有如下几点:直线检测直线聚类直线筛选交点计算交点排序原创 2017-07-10 14:13:38 · 14338 阅读 · 33 评论 -
【OpenCV】贝叶斯之肤色分割模型
利用公开肤色数据集训练了一个肤色分类器,OpenCV中有现成的方法,拿来即用。在实际项目中应用,自制数据样本会更有效。Talk is cheap. Show you the code.#include <opencv2/core/core.hpp>#include <opencv2/imgproc/imgproc.hpp>#include <op...原创 2018-03-25 22:38:36 · 2241 阅读 · 3 评论 -
Two-Pass算法——图像连通域分析
在处理二值图像,提取感兴趣目标时经常需要通过连通域的大小对候选目标进行初步筛选。OpenCV中findContour 方法可以返回轮廓并能够计算轮廓面积。可其局限性在对于非凸多边形的面积计算是不准备的。 此时,利用连通域计算面积的方法更可靠,可findContour方法并不返回连通域结果。对于计算连通域基本方法主要有两种:1)Two-Pass法;2)Seed-Filling种子填充法; 参考...原创 2018-06-24 01:06:38 · 16535 阅读 · 4 评论 -
SeedFill——连通区域分析
Two-Pass方法计算二值图连通域效率比较低,补充下Seed Filling种子填充法,该方法类似于图的深度搜素。 这里还是参考了这篇文章OpenCV_连通区域分析。为了提高效率,做了一点修改。 针对新标签的第一个像素,其邻域只选取下方和后方未处理的邻域; 针对处理过的像素添加标识符,下次再碰到该像素时,可直接跳过。 具体代码:bool seedFill(...原创 2018-06-25 23:55:25 · 1944 阅读 · 0 评论