![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
opencv
文章平均质量分 74
Liuqz2009
不念过去不畏将来,全心活在当下!
二十年寒窗,终抵不过资本的收割,中年危机,失业求捞!
展开
-
OpenCv探索
OpenCV: OpenCV modules原创 2022-06-13 11:49:47 · 535 阅读 · 0 评论 -
opencv形状分析
OpenCV支持大量的轮廓、边缘、边界的相关函数,相应的函数有moments、HuMoments、findContours、drawContours、approxPolyDP、arcLength、boundingRect、contourArea、convexHull、fitEllipse、fitLine、isContourConvex、minAreaRect、minEnclosingCircle、m转载 2015-07-21 11:07:22 · 1057 阅读 · 0 评论 -
OpenCV中图像处理函数
1。滤波 Filtering filter2D() 用核函数对图像做卷积sepFilter2D() 用分解的核函数对图像做卷积。首先,图像的每一行与一维的核kernelX做卷积;然后,运算结果的每一列与一维的核kernelY做卷积boxFilter() 就是滑动窗口平均滤波的二维版。 GaussianBlur() 高斯平均,也就是高斯模糊。 medianBlur() 中值滤波,个人最爱的滤波函转载 2015-07-21 11:17:56 · 1383 阅读 · 0 评论 -
基于拉普拉斯算子的图像锐化
对于求一个锐化后的像素点(sharpened_pixel),这个基于拉普拉斯算子的简单算法主要是遍历图像中的像素点,根据领域像素确定其锐化后的值计算公式:sharpened_pixel = 5 * current – left – right – up – down ;见下图:当一个运算是通过领域像素进行的时候,我们通常用一个矩阵来表示这种运算关系,也就是我们经常所说的 核 (转载 2015-08-13 21:27:01 · 12520 阅读 · 1 评论 -
颜色直方图实现彩色图象分割
颜色直方图实现彩色图象分割 opencv 颜色直方图彩色图像直方图均衡化及颜色直方图显示 opencv实现 完整代码及详细注释 基于opencv和c++的图像处理:直方图匹配OpenCV直方图简单例子颜色直方图的计算、显示、处理、对比及反向投影(How to Use Histogram? Calculate, Show, Process, Compare and BackProject)转载 2015-08-13 22:24:51 · 7063 阅读 · 0 评论 -
opencv识别正方形(矩形)代码
#include "cv.h"#include "highgui.h"#include #include #include #include int thresh = 50;IplImage* img =NULL;IplImage* img0 = NULL;CvMemStorage* storage =NULL;const char * wndname = "正方形检测 dem转载 2015-08-13 22:36:25 · 11012 阅读 · 2 评论 -
opencv特征提取
原文地址:opencv特征提取作者:C吉羊特征提取是计算机视觉和图像处理中的一个概念。它指的是使用计算机提取图像信息,决定每个图像的点是否属于一个图像特征。特征提取的结果是把图像上的点分为不同的子集,这些子集往往属于孤立的点、连续的曲线或者连续的区域。 特征的定义 至今为止特征没有万能和精确的定义。特征的精确定义往往由问题或者应用类型决定。特征是一个数字转载 2015-08-13 23:07:58 · 3196 阅读 · 0 评论 -
OpenCV机器学习库MLL
学习机器学习的时候,基本都是在用Matlab、Python写算法,做测试;由于最近要用OpenCV写作业,兴起看了看OpenCV的机器学习模块(The Machine Learning Library——MLL)。来看看MLL的主要构成:Statistical Model是个基类,下面的K-NN、SVM等都是其子类。不太喜欢这个Statistical定语,Stati转载 2015-08-13 23:16:56 · 1312 阅读 · 0 评论 -
机器学习中文参考手册
转自:http://wiki.opencv.org.cn/index.php/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0%E4%B8%AD%E6%96%87%E5%8F%82%E8%80%83%E6%89%8B%E5%86%8C本文翻译尚未完成,请您将英文部分翻译为中文。目录 [隐藏]1 简介:通用类和函数1转载 2015-08-13 23:20:59 · 2860 阅读 · 0 评论 -
OpenCV学习笔记:如何训练级联分类器
本部分主要介绍如何训练分类器,这其中包括准备训练数据和运行训练程序。重点注意事项OpenCV里面有两个现成的程序可以用来训练级联分类器,分别是opencv_haartraining和opencv_traincascade。opencv_traincascade是一个新程序,根据OpenCV2.x API用C++编写。这二者主要的区别是opencv_traincascade支转载 2015-08-13 23:27:24 · 1189 阅读 · 0 评论 -
链接
http://www.cnblogs.com/wengzilin/category/461433.html【原】训练自己的haar-like特征分类器并识别物体(3)摘要: 在前两篇文章中,我介绍了《训练自己的haar-like特征分类器并识别物体》的前三个步骤:1.准备训练样本图片,包括正例及反例样本2.生成样本描述文件3.训练样本4.目标识别========转载 2015-08-14 08:55:35 · 569 阅读 · 0 评论 -
特征提取代码总结
来自http://download.csdn.net/source/3208155#acomment特征提取代码总结颜色提取Ø 颜色直方图提取:Code:#include #include #include using namespace std; int main( int argc, char** arg转载 2015-08-13 22:31:14 · 1832 阅读 · 0 评论 -
利用OpenCV画HSV的3D直方图
此代码是根据opencv附带例子修改而成。[cpp] view plaincopy#include #include #include #include #include #include "CommandParser.h" using namespace std; int main(int转载 2015-08-13 22:34:00 · 2434 阅读 · 0 评论 -
OpenCV颜色识别
彩色模型数字图像处理中常用的采用模型是RGB(红,绿,蓝)模型和HSV(色调,饱和度,亮度),RGB广泛应用于彩色监视器和彩色视频摄像机,我们平时的图片一般都是RGB模型。而HSV模型更符合人描述和解释颜色的方式,HSV的彩色描述对人来说是自然且非常直观的。HSV模型HSV模型中颜色的参数分别是:色调(H:hue),饱和度(S:saturation),亮度(V:value)。由转载 2015-08-13 22:45:38 · 61757 阅读 · 6 评论 -
三种强大的物体识别算法
三种强大的物体识别算法——SIFT/SURF、haar特征、广义hough变换的特性对比分析 收藏 识别算法概述: SIFT/SURF基于灰度图, 一、首先建立图像金字塔,形成三维的图像空间,通过Hessian矩阵获取每一层的局部极大值转载 2015-08-13 22:52:48 · 21132 阅读 · 0 评论 -
基于OpenCV的目标物体颜色及轮廓的识别方法
http://mall.cnki.net/magazine/Article/XDDJ201424021.htm0引言机器人视觉是机器人感知外部世界的重要媒介,也是未来机器人传感器发展的主流方向。机器人视觉通过视觉传感器获取环境的图像数据,并通过软件进行图像的分析和理解,使机器人能够辨识目标物体及确定其位置[1]。随着机器人技术的快速发展及其在工业、医学、军事等领域的广泛应用,机器人视觉技术取得转载 2015-08-13 23:00:57 · 23202 阅读 · 3 评论 -
不规则物体形状匹配综述
物体识别是计算机视觉应用的一项基本任务。识别通常基于目标物体的灰度信息、颜色信息或形状信息。物体识别的目的就是要找到一个包含可以区分不同目标物体的有效信息的描述。由于要识别的物体是事先知道的,所以目标物体的几何特征可以被直接应用到识别任务中。 不规则物体的形状匹配是一种有效的利用物体几何特征进行识别的方法。根据匹配对象的不同,可以将不规则物体的形状匹配分为基于区域的匹配方法和基于轮廓的匹转载 2015-08-13 23:03:25 · 5116 阅读 · 0 评论 -
[机器学习]opencv
explanation:这里我们简单谈谈xml和yaml文件输入,你的输出只有一个这种extension,而structure来自于此。有两种data structure, 你可能serialize,mapping和element sequence,这两种之间的difference是在map中,每个element都有一个unique的name。而对sequence,你需要go throug转载 2015-08-13 23:18:37 · 889 阅读 · 0 评论 -
opencv中的机器学习
主要内容翻译自learning opencv 2.0 机器学习的目的是把数据转换成信息。。。。通过从数据从提取规则或模式做到。这个过程叫做学习 如果数据是已标记的叫监督学习,如果未标记叫做无监督学习。 如果用一个名称来标记数据,我们要做的是分类。如果用一个数值来标记数据,我们要做的是回归。 Supervised learning also comes in转载 2015-08-13 23:19:52 · 1636 阅读 · 0 评论 -
如何用OpenCV自带的adaboost程序训练并检测目标
转自:http://www.cnblogs.com/easymind223/archive/2012/07/03/2574826.html OpenCV自带的adaboost程序能够根据用户输入的正样本集与负样本集训练分类器,常用于人脸检测,行人检测等。它的默认特征采用了Haar,不支持其它特征。Adaboost的原理简述:(原文)每个Haar特征对应看一个弱分类转载 2015-08-13 23:25:39 · 1964 阅读 · 0 评论 -
OpenCV训练分类器制作xml文档
opencv 2.1网上查的另一种资料训练分类器成功,在此与大家分享。 参考英文资料网址: http://note.sonots.com/SciSoftware/haartraining.html#e134e74e 样本训练要求1、杯子的背景要统一吗,因为有些背景是白色,有些是淡淡的背景色,还有些深色的背景色答:背景色要统一2、整个图的大小就转载 2015-08-13 23:29:04 · 1514 阅读 · 0 评论 -
如何利用OpenCV自带的haar training程序训练分类器
转自:http://blog.csdn.net/carson2005/article/details/8171571 首先,需要说明的是,OpenCV自带的haar training提取的特征是haar特征(具体请参考我的另一篇关于haar特征的文章:http://blog.csdn.net/carson2005/article/details/8094699 ),分类器转载 2015-08-13 23:30:13 · 1034 阅读 · 1 评论 -
OpenCV进阶之路:神经网络识别车牌字符
转自:http://www.cnblogs.com/ronny/p/opencv_road_more_01.html1. 关于OpenCV进阶之路前段时间写过一些关于OpenCV基础知识方面的系列文章,主要内容是面向OpenCV初学者,介绍OpenCV中一些常用的函数的接口和调用方法,相关的内容在OpenCV的手册里都有更详细的解释,当时自己也是边学边写,权当为一种笔记的形转载 2015-08-14 08:55:01 · 3311 阅读 · 0 评论 -
图像颜色分布直方图
颜色直方图是在许多图像检索系统中被广泛采用的颜色特征。它所描述的是不同色彩在整幅图像中所占的比例,而并不关心每种色彩所处的空间位置,即无法描述图像中的对象或物体。颜色直方图特别适于描述那些难以进行自动分割的图像。OpenCV对颜色直方图进行统计的代码如下所示,在图像检索,镜头分割等领域使用的还是比较多的。输入图像:输出直方图分布图像:输入转载 2015-08-13 22:07:21 · 6654 阅读 · 0 评论 -
灰度图像阈值化分割常见方法总结及VC实现
算法图形byte图像处理扩展目录(?)[-]Otsu法最大类间方差法一维交叉熵值法二维OTSU法 参考文献 在图像处理领域,二值图像运算量小,并且能够体现图像的关键特征,因此被广泛使用。将灰度图像变为二值图像的常用方法是选定阈值,然后将待处理图像的每个像素点进行单点处理,即将其灰度值与所设置的门限进行比对,从而得到二值化的黑白图。这样一种方式因转载 2015-07-30 15:29:03 · 2257 阅读 · 0 评论 -
训练自己haar-like特征分类器并识别物体(3)
在前两篇文章中,我介绍了《训练自己的haar-like特征分类器并识别物体》的前三个步骤:1.准备训练样本图片,包括正例及反例样本2.生成样本描述文件3.训练样本4.目标识别==============本文将着重说明最后一个阶段——目标识别,也即利用前面训练出来的分类器文件(.xml文件)对图片中的物体进行识别,并在图中框出在该物体。由于逻辑比较简单,这里直接上代码转载 2015-10-09 11:07:50 · 1234 阅读 · 0 评论 -
训练自己haar-like特征分类器并识别物体(1)
本系列文章旨在学习如何在opencv中基于haar-like特征训练自己的分类器,并且用该分类器用于模式识别。该过程大致可以分为一下几个大步骤:1.准备训练样本图片,包括正例及反例样本2.生成样本描述文件3.训练样本4.目标识别=================本文主要对步骤1、步骤2进行说明。1.准备训练样本图片,包括正例及反例样本1)正样本的采集:转载 2015-10-09 11:05:37 · 4599 阅读 · 2 评论 -
opencv haar+adaboost使用心得
最近在使用opencv里的haar+adaboost做检测,其实早在一年前的无锡已经看过用它做车徽检测,然后再做识别(大众,奔驰...)。这次终于要自己动手做了,网上有很多这方面的资料,感谢大家分享他们的经验。重复的东西这里就不再赘述了,只简单的补充几个大家容易疏忽的东西。step1.首先是准备正负样本,正样本好说,打了标签,解析xml文件,然后做点小旋转就可以用了 负转载 2015-10-09 11:01:04 · 1049 阅读 · 0 评论 -
训练自己haar-like特征分类器并识别物体(2)
在上一篇文章中,我介绍了《训练自己的haar-like特征分类器并识别物体》的前两个步骤:1.准备训练样本图片,包括正例及反例样本2.生成样本描述文件3.训练样本4.目标识别=================今天我们将着重学习第3步:基于haar特征的adaboost级联分类器的训练。若将本步骤看做一个系统,则输入为正样本的描述文件(.vec)以及负样本的说明文件(转载 2015-10-09 11:06:35 · 1103 阅读 · 1 评论 -
影像平滑(blur、GaussianBlur)
有時我們收到的影像雜訊過多,這時需要進行平滑化去除雜訊,不過為了去除雜訊,可能造成影像對比度下降,好的品質可能需要大量的處理時間,所以通常根據實際需求,選擇一個適合的手法,常見的有四種平滑方式,分別是平均平滑、高斯平滑、中值濾波、雙邊濾波,OpenCV對於這四種平滑方式皆有支援,只要呼叫即可使用。由濾波方式可分兩種,線性濾波和非線性濾波:線性濾波:有一個有固定參數的核心,常見的有平均平转载 2017-03-08 09:06:04 · 462 阅读 · 0 评论 -
影像平滑(medianBlur、bilateralFilter)
平滑濾波主要分兩種,線性濾波和非線性濾波:線性濾波:有一個有固定參數的核心,常見的有平均平滑和高斯平滑。非線性濾波:沒有一個有固定的核心,常見的有中值濾波和雙邊濾波。這邊我們介紹中值濾波和雙邊濾波。中值濾波作法為統計排序的濾波器,對於影像某個像素,中值濾波會將濾波範圍內的所有像素排序,並用中值替換當前的像素值,在椒鹽噪音這種類型的雜訊,中值濾波能夠有效的去除雜訊,且模糊的現象比转载 2017-03-08 09:21:04 · 1086 阅读 · 0 评论 -
銳化
影像銳化是讓模糊的影像變得清晰,讓細節更明顯,可以直接使用讓我們的輸出圖像銳化,或者在後續的邊緣偵測時,能得到較佳的結果,銳化主要用於增強影像的強度變化,目的和平滑對於強度的跳變抑制相反,這兩者的運算子也能看出這點,線性平滑基於鄰域的加權求和,而銳化則用微分的概念來實現。銳化大致上可以劃分為兩類:基於一階微分:較知名的有Prewitt算子、Sobel算子等基於二階微分:有拉普拉斯(La转载 2017-03-08 09:42:07 · 383 阅读 · 0 评论 -
找邊緣(Laplacian)
影像銳化有分一階微分或是二階微分,兩者的核心參數都是基於數學算式推導而成,這邊介紹基於二階微分的拉普拉斯算子,在影像銳化方面有很廣泛的運用,使用時通常對原始圖進行拉普拉斯運後取絕對值得到輸出圖,再將輸出圖和原始圖進行混和相加,得到一個和原始圖類似,但是細節被強調的圖。二階微分定義為:從上面兩式相加,我們可得到:我們以模板表示計算結果,上式的結果相等於下面的模板:在影转载 2017-03-08 10:14:25 · 204 阅读 · 0 评论 -
直方圖(calcHist)
直方圖是一個影像像素的統計表,橫軸為影像中所有可能的像素值,假使為8位元圖,範圍即為0到255,縱軸為此橫軸強度的像素個數,直方圖可以被歸一化,歸一化後所有項和為一,在這種情況下,縱軸值表示此強度的像素佔影像的比例。直方圖是影像的一個重要特性,我們可以從這看出強度分布狀況,像是否太暗或過曝,或者分布太過集中,進而評估影像的品質。在影像檢索時,直方圖可以當成是一段獨特的紋理,或者是獨特的物體转载 2017-03-08 10:20:57 · 335 阅读 · 0 评论 -
直方圖等化(equalizeHist)
我們可透過拉伸直方圖,使直方圖覆蓋所有強度範圍,這種方法的確能提高影像對比度,但是在多數情況,影像模糊不是因為過窄的強度範圍,而是某區間的像素強度比例過高,這時可以製作一個映射表,使得調整之後的影像,能平均使用所有的強度,進而增加影像的整體對比度。這就是直方圖等化的概念,以一個8位元強度範圍0~255的影像來說,意味著調整之後的影像,50%的像素強度低於128,25%的像素強度低於64,其他強转载 2017-03-08 10:29:10 · 774 阅读 · 0 评论 -
直方圖規定化
直方圖等化可以獲得具有均勻直方圖的輸出影像,主要用於增強影像對比度,操作簡單且結果可預知。但有時候使用者希望能控制轉換的方式,或者能夠指定直方圖的輸出影像,這樣就能選擇性的增強某個灰度範圍內的對比度,或者讓影像灰度滿足某種特定的分布,這種產生特定直方圖影像的方法就叫直方圖規定化。直方圖規定化為產生特定的輸出直方圖,可以把直方圖等化看成是直方圖規定化的一種特例,只是將輸出直方圖定為一個常數,映射转载 2017-03-08 10:34:45 · 313 阅读 · 0 评论 -
直方圖比較(compareHist)
直方圖是影像內容的一個重要特性,兩個直方圖的相似程度,也可以看成是兩張影像的相似程度,OpenCV用compareHist()函式進行直方圖比較,讓我們以量化的方式,得到兩個直方圖的相似程度,compareHist()函式根據輸入參數,有四種比較方式可以選擇。大多數直方圖比較是逐個容器(bin)進行比較,並不會考慮相臨的情況,因此容易受到雜訊或光線的影響,比較前通常會先減色,類似將8位元每個b转载 2017-03-08 10:37:16 · 974 阅读 · 0 评论 -
直方圖反投影(calcBackProject)
直方圖本質上是一個統計圖,統計這個影像的強度分配情形,從這可以得到每個強度所佔全體的比例,也就是每個強度的發生機率。這也是直方圖反投影的概念,在影像檢索時,我們由已知ROI的直方圖,比較原始影像每個像素,看相對位置的強度屬於這個直方圖的機率有多少。OpenCV反投影void calcBackProject(const Mat* images, int nimages, const in转载 2017-03-08 11:12:39 · 544 阅读 · 0 评论 -
学习OpenCV范例(十八)——反向投影
本次要讲的范例是反向投影,反向投影如果是按照字面上的理解,还有书本上的理解可能会比较困难,但是如果是举一些具体的简单的例子,那可能就比较容易接受了,应用的话,可以检测出肤色区域,例如,你有一个肤色直方图 ( Hue-Saturation 直方图 ),你可以用它来寻找图像中的肤色区域,现在我们来看看反向变换吧。1、原理图像的反向投影图是用输入图像的某一位置上像素值(多维或灰度)对应在直方图的转载 2017-03-08 11:22:17 · 391 阅读 · 0 评论 -
均值漂移(meanShift、CamShift)
均值漂移主要用在視覺跟蹤,作法為從反投影直方圖的概率圖,得到目標影像出現在原始影像各個位置的概率,假設我們已知物體的大概位置,從這最初的位置,迭代移動來得到最大概率的位置,就是目標影像的精確位置,所以一開始的大概位置會影響到計算結果和花費時間。OpenCV提供meanShift()函式處理均值漂移,計算預定窗口的加權平均值,將窗口中心移動到數據點的重心處,並重複這個過程來鎖定局部最大值,直到窗转载 2017-03-08 11:23:12 · 784 阅读 · 0 评论