OpenCV 自带例程总结

如何编译运行opencv的sample 如何编译运行opencv的sample 前言:之前在树莓派上配置了opencv,但还不知道怎么使用,知道opencv有很多的sample,所以现在记录一下如何使用opencv的sample。 设备:华硕FX50V 环境:已经配置好opencv的ubuntu 14.04(如果还没配置opencv可以参照前面的博客,有讲怎么配置,看树莓派那篇也行) 进入到samples文件夹,这里有各种语言的 阅读详情

OpenCV 自带例程总结

原文出处

opencv 2.4.4版本共100个自带例子。

parter 1:
No1. adaptiveskindetector.cpp
利用HSV空间的色调信息的皮肤检测,背景不能有太多与肤色相似的颜色。效果不是特别好。
No2. bagofwords_classification.cpp
好大一串……目前还看不懂。
No3. bgfg_codebook.cpp
前后背景分离。开启摄像头或读取视频。
No4. bgfg_gmg.cpp
摄像头捕捉,根据运动进行前后背景分离。
No5. bgfg_segm.cpp
高斯处理视频。跟踪运动做前背景分割。BackgroundSubtractorMOG2类。
No6. blobtrack_sample.cpp
视频跟踪。跟踪视频中的运动物体,用绿色线框出。
No7. brief_match_test.cpp
利用brief描述算子匹配二维图像特征点。line118出错.???
No8. build3dmodel.cpp
建立三维模型。根据给出的检测器对原始进行建模。
No9. calibration.cpp 3calibration.cpp
相机外定标。根据自带的函数提取角点后定标,效果很不好。
No10. calibration_artificial
根据角点自动校准摄像。初始化后寻找角点再用calibrateCamera校准,有findChessboardCorners估计效果不

怎么好。
No11. chamfer.cpp
图像匹配。把图像二值后在目标图像中寻找模板图像。主要调用chamerMatching函数。
No12. contours.c
轮廓查找与获取。cvFindContours一个函数搞定。
No13. convert_cascade.c
从文件中装载训练好的级联分类器或者从OpenCV中嵌入的分类器数据库中导入 然后另存为一个文件。
No14. convexhull.cpp
凸包。产生随机点后计算凸包。
No15. cout_mat.cpp
opencv中矩阵的输出。
No16. delaunay.c delaunay2.cpp
根据随机点进行Delaunay三角测量找到边,结束时计算Voronoi图表的细胞结构。
No17. demhist.cpp
直方图均衡化来调节图像的亮度和对比度,输出黑白图像。
No18. descriptor_extractor_matcher.cpp
7-8个参数。SIFT匹配。
No19. detector_descriptor_evaluation.cpp
计算检测算子。各种Dataset。
No20. detector_descriptor_matcher_evaluation.cpp
计算检测算子匹配。也是各种Dataset。
No21. dft.cpp
对图像进行离散Fourier变换。数学变换。
No22. distrans.cpp
距离变换。计算输入图像所有非零元素和其最近的零元素的距离。
No23. drawing.cpp
简单的画点、线、文字等。不解释。
No24. edge.cpp
边缘检测。通过滑动条调节阈值,利用Canny检测图像边缘后显示,很简单的一个代码。
No25. em.cpp
em聚类。
No26. fabmap_sample
fab-mat匹配。从训练数据中建立Chow-Liu树。
No27. facedetect.cpp smiledetect.cpp
人脸检测。根据已训练好的分类器对人脸图像进行检测,用不同颜色的圆形框或矩形框标记出检测出的五官。
No28. facerec_demo.cpp
人脸识别。
No29. fback.cpp fback_c.c
计算视频的光流。默认打开摄像头,有些卡,速度慢。
No30. filestorage.cpp
Mat矩阵存储,读写xml/yml文件。
No31. find_obj.cpp
有关Surf算法的示例。利用匹配在目标图像中寻找样本图像中的物体。
No32. find_obj_calonder.cpp
通过训练分类树检测目标物体。需要训练图像。
No33. find_obj_ferns.cpp
同样是目标检测。基于随机蕨丛的快速识别关键点。
No34. fitellipse.cpp
椭圆拟合,查找图像轮廓图形。findContours很有用。总体效果不理想。
No35. freak_demo.cpp
利用特征点进行图像匹配。特征点描述包括A. Alahi, R. Ortiz, and P. Vandergheynst. FREAK: Fast

Retina Keypoint.
No36. gencolors.cpp
输入颜色数量,产生着色条带状图像。色带宽20。
No37. generic_descriptor_match.cpp
SURF图像匹配。输入参数包括两幅图像和参数数据。
No38. houghlines.cpp houghcircles.cpp
利用Hough变换提取图像中的直线或圆。效果一般。Canny很重要。
No39. image.cpp
基本的图像和视频读取,图像加噪和平滑处理。
No40. kalman.cpp
Kalman滤波,先建立运动模型和观察模型。对绕圆周运动的一维点跟踪,算法结果显示了估计点和实际点的连线。
No41. kmeans.cpp
聚类分析。在平面上产生随机点后用K-means算法作聚类迭代,由于聚类中心也是随机产生的,可知效果很不好。
No42. laplace.cpp
也是边缘检测。由滑动条调整阈值,先对图像作滤波(高斯,均值,中值),后Laplace检测边缘。参数sigma=3时效果最好。
No43. latentsvmdetect.cpp
用latentSVM检测目标。
No44. letter_recog.cpp
演示训练各种不同的分类器,使用uci的字符库数据集。
No45. logpolar_bsm.cpp
坐标的相互转化。
No46. matcher_simple.cpp
SURF图像匹配。参数少,效果和generic_descriptor_match.cpp相似。
No47. matching_to_many_images.cpp
多幅图像的匹配。强大的SURF算法。
No48. meanshift_segmentation.cpp
meanshift图像分割。三个参数spatialRad、colorRad和maxPyrLevel可调。
No49. minarea.cpp
产生随机点后计算包含所有点的面积最小的圆和矩形。纯数学问题。
No50. morphology.c morphology2.cpp
形态学基本运算,包括开/闭运算,膨胀/腐蚀运算。
No51. motempl.c
运动跟踪。
No52. mser_sample.cpp
MSER方法区域提取图像轮廓。使用颜色距离阈值的基于MSER方法的最大稳定颜色区域检测子(Maximally

Stable Colour Regions,MSCR)。
No53. mushroom.cpp
演示建立决策分类树训练 使用mushroom数据
No54. one_way_sample.cpp
基于主成分分析的特征点匹配问题。运行时间好长……
No55. opencv_version.cpp
显示opencv版本。简单的几行代码。
No56. OpenEXRimages_HighDynamicRange_Retina_toneMapping.cpp

OpenEXRimages_HighDynamicRange_Retina_toneMapping_video.cpp
不清楚。
No57. openni_capture.cpp
开放式的自然交互视频捕捉。Depth generator。
No58. pca.cpp
主成份分析算法。重建。
No59. peopledetect.cpp
HOG (Histogram-of-Oriented Gradients)行人或人体检测,使用的是hog特征和svm。
No60. phase_corr.cpp
基于相位的相关图像运动方位跟踪程序。
No61. points_classifier.cpp
点分类。鼠标点击给定点和类。
No62. polar_transform.c
线性坐标和极坐标相互转换。可以从摄像头捕捉图像。
No63. pyramid_segmentation.c
金字塔图像分割。
No64. retinaDemo.cpp
Retina特征点检测。
No65. rgbdodometry.cpp
视觉里程计算法。为了估计刚体变换,试图找到翘曲,即最大化之间连续两个RGBD的帧不同的图像尺度。
No66. segment_objects.cpp
视频跟踪分割运动中的物体。
No67. select3dobj.cpp
收集数据集对象和分割遮罩,显示了如何使用相机的校准模式。计算该单对应性校准图案上的平面。还显示

grabCut分割等。
No68. simpleflow_demo.cpp
一种光流算法。
No69. squares.cpp
寻找矩形。
No70. starter_imagelist.cpp
根据图像列表文件yaml读取并显示图像。
No71. starter_video.cpp
打开视频图像选择画面保存为图片。
No72. stereo_calib.cpp
摄像机立体校准。
No73. stereo_match.cpp
立体匹配。
No74. stitching.cpp stitching_detailed.cpp
图像拼接。涉及到特征点的提取、特征点匹配、图像融合等等。Stitcher类。
No75. tvl1_optical_flow.cpp
光流法视频跟踪。
No76. tree_engine.cpp
演示使用不同的决策树 CvDTree dtree;决策树 CvBoost boost;Boosted tree classifier监督学习树

CvRTrees rtrees;随机树 CvERTrees ertrees;完全随机树。
No77. video_dmtx.cpp
视频截图。
No78. video_homography.cpp
使用features2d的快速角点检测。
No79. videostab.cpp
稳定视频。
No80. watershed
做分水岭图像分割。

parter 2:
No1. camshiftdemo.cpp
彩色目标跟踪。根据鼠标点击一个区域的色度光谱来跟踪视频目标。
No2. connected_components.cpp
连通区域。findContours+drawContours。
No3. contours2.cpp
先画一张线条图后检测轮廓。参数可调。
No4. ffilldemo.cpp
漫水填充。根据鼠标选取的点搜索图像中与之颜色相近的点,用不同颜色标注。
No5. grabcut.cpp
图像分割,鼠标选取矩形框,抠出前景,分离背景。效果还挺不错的。
No6. hybridtrackingsample.cpp
混合跟踪。调试时HybridTracker那出错了,不懂。
No7. imagelst_creator.cpp
把图像名称列表写成yaml或xml格式。
No8. inpaint.cpp
数字图像修复程序,基于纹理合成。先在图像上随便画,按”i”键后显示修复的图像。
No9. linemod.cpp
line196出错.???
No10. lkdemo.cpp
点跟踪。改进的Lucas-Kanade光流算法,检测视频运动目标。鼠标点击目标点,视频跟踪。

parter3:
No1. detection_based_tracker_sample.cpp
UNIX或ANDROID平台上使用的例子。基于检测的跟踪。

opencv3官方samples 序言:因为读西瓜书的缘故,今天跑了跑opencv3中有关ml模块的一些samples。 配置过程略去,本人直接在cpp目录下的example_cmake下修改CMakeLists.txt 往里面添加项目即可。 opencv3.1.0中的samples如下: 其中和ml模块相关的其实不少,如points_classfier 点分类器,该官方demo演示了使用多种ML分类器的接口来对平面上的二维点进行分类。效果如下: 将生成每种分类器所产生的的分类结果示意图。 准备训练样本的代码如下: stati. 阅读详情

相关推荐

opencv4.1相机标定 自带例程学习

在opencv的sample中有相机标定的例程(calibration.cpp) 通过新建项目,选择添加“现有项”,便可以将原始代码添加进入当前方案的原文件中,然后点击【生成】->【重新生成解决方案】获取可执行文件.exe完成对程序的创建。 面对opecv里面的例程,我们一开始都不知道应该要输入什么参数,因此可以通过查看程序文档来了解程序的使用,在opencv自带的例程中,几乎都含有一个名为help()的函数用来介绍函数的功能和如何运行该程序,因此我们首先要先找到程序里面的help()函数。相机标定例

weixin_43264527的博客 1446

OpenCV开发之——官方Samples介绍

一 概述 官方samples下包含8个示例:15-puzzle、camera-calibration、color-blob-detection、face-detection、image-manipulations、tutorial-1-camerapreview、tutorial-2-mixedprocessing、tutorial-3-cameracontrol 介绍8个示例项目的使用及效果 二 示例介绍 2.1 15-puzzle(Puzzle15Processor.java介绍) It conv

我的博客 1848

opencv 圆形标定板 自带例程 大坑之路

项目要用圆形标定板做实验,于是开始入坑。 一、生成圆形标定版程序 #include <opencv2/highgui/highgui.hpp> #include <opencv2/imgproc/imgproc.hpp> #include <opencv2/opencv.hpp> using namespace cv; using namespace std...

m0_37867795的博客 6026

OpenCV4记录:OpenCV-4.5.0 Samples官方示例说明

OpenCV-4.5.0 Samples官方示例说明

weixin_50798696的博客 1509

OPENCV3.0 单目摄像头标定(使用官方自带的标定图片)

OPENCV3.0版本跟2.x版本是有一点差距的,这个程序在2.4.11版本里面跑不起来。 找了很久都没有找到错误,主要是在calibrateCamera()函数的时候出错。 也参考了官方的calibration例程,但还是找不到错误在什么地方。 下面是3.0版本的代码 注释都在代码里面

zc850463390zc的专栏 1万+

OpenCV内置OpenCV的实例(附完整代码)

OpenCV内置OpenCV的实例OpenCV内置OpenCV的实例 OpenCV内置OpenCV的实例 #include "opencv2/core.hpp" #include "opencv2/imgproc.hpp" #include "opencv2/highgui.hpp" #include "opencv2/videoio.hpp" #include <iostream> using namespace cv; using namespace std; void drawText

希望我的博客,能帮上你解决学习中工作中所遇到的问题 830

opencv4.0+VS2017 C++自带例程的相机标定详细过程

新入菜鸟一枚,在学习的路上刚刚起程,记录第一步。 为了省钱又想要一个像素高的摄像头,买了一个没有校正的会出现畸变的摄像头,自己校正。 参考各位前辈的博客,我总结了标定的两种方法: (1)利用cmd+vs+自带例程hpp (2)利用自带例程hpp+vs 个人感觉第二种简单。 开始介绍之前,我先做以下为铺垫,方便两种方法,也适合像我一样的菜鸟扫盲。 OpenCV不是软件,而是一个大的库,函数库。我们下...

little_baby2的博客 1万+

开源多波束声呐数据集:从原始回波到AI识别的关键一步

本文探讨了开源多波束前视声呐数据集(UATD)在AI目标识别中的关键作用。通过分析原始回波数据与处理后数据的差异,揭示了开源数据集如何降低研究成本、提升实验可重复性,并加速技术迭代。文章还详细解析了UATD数据集的结构、实战应用技巧及从原始数据到AI模型的完整流程,为水下目标识别研究提供了宝贵参考。

weixin_28675839的博客 422

OpenCV自带例程:人脸检测

OpenCV自带的例程中有人脸识别的例程,源文件为 path/opencv-3.4.1/samples/cpp/facedetect.cpp 通过cmake编译之后生成可行性文件,执行时需要指定分类器文件,该文件存放在 opencv-3.4.1/data/haarcascades/haarcascade_frontalface_alt2.xml /*正面人脸分类文件*/ opencv-3...

南泉先生的博客 2403

避开这5个坑!STC8H DMA串口通信的实战避坑指南(115200波特率实测)

本文深入解析了STC8H单片机利用DMA实现稳定全双工串口通信的实战要点。针对115200高波特率场景,详细拆解了DMA-UART架构、关键寄存器配置、时钟精度计算、缓冲区管理及中断协同等核心环节,并提供了具体的避坑指南和调试方法,帮助开发者构建高效可靠的通信链路。

melon的博客 675

FFmpeg硬件加速实战:VAAPI驱动配置全攻略(含NVIDIA/Intel避坑指南)

本文详细解析了在Linux环境下配置FFmpeg使用VAAPI接口实现硬件加速的完整流程。针对NVIDIA、Intel等主流显卡,提供了从驱动安装、环境变量设置到多显卡切换的实战指南,并重点解决了闭源驱动冲突、国产系统适配等常见问题,帮助用户有效提升视频处理性能。

weixin_29306011的博客 454

OpenCV自带例程介绍

参考:http://www.swarthmore.edu/NatSci/mzucker1/opencv-2.4.10-docs/index.html 自带API介绍: 例程总结: feature2d module

二毛的博客 4402

告别C盘爆红!手把手教你将WSL2下的Ubuntu 22.04完整迁移到D盘(附清理指南)

本文详细指导如何将WSL2下的Ubuntu 22.04从C盘无损迁移到D盘,包括导出备份、注销原系统、导入新位置等关键步骤,并提供迁移后的优化配置、开发环境衔接及长期维护技巧,帮助用户彻底解决C盘空间不足问题。

weixin_28698059的博客 472

基于OpenCV自带例程的相机标定

    OpenCV库自带了一个可以用于相机标定的功能,不仅可以标定最常见的棋盘格标定板,还可以用于Halcon常用的圆点阵列标定板。    以下对如何使用该自带例程进行相机标定进行一个简要的介绍,也算是对之前工作的一个总结。                                                                            1.获取标定图片   ...

yibeiyese的博客 3884

【STM32系统】基于STM32设计的锂电池电量/电压检测报警器系统

本设计旨在研究一个基于STM32F103C8T6微控制器的锂电池电量/电压检测报警器系统,应用于便携式电子设备电池管理。系统通过STM32的ADC模块对18650锂电池电压进行采集,利用LCD1602显示模块实时显示电池电压,当检测到电池电量不足或电压异常时,蜂鸣器报警模块会发出警报提醒用户。系统采用简单的硬件结构和优化的软件架构,通过对实际电池电压数据的检测、处理和显示,实现了低功耗、实时监测的锂电池管理功能。本文将介绍系统的设计原理、硬件电路、软件实现以及调试测试过程。

嵌入式阿齐Archie 1万+

K230+canMV开发中常见的数据类型转换参考示例

【代码】K230+canMV开发中常见的数据类型转换参考示例。

weixin_47446386的博客 68

OpenCV自带例程的相机标定

参考博客: https://blog.youkuaiyun.com/little_baby2/article/details/90680689 https://blog.youkuaiyun.com/mars_xiaolei/article/details/88845836 环境 OpenCV版本:OpenCV4.2.0 VS版本:VS2017 操作系统:Windows10 标定过程 1.拍摄标定照片。选择棋盘格进行标定 2.生成照片列表 新建项目添加现有项,打开opencv库在目录opencv\sources\samples\

NSSB2的博客 1157

ArcGIS JS 态势标绘教程:直箭头(Straight Arrow)

ArcGIS JS 态势标绘教程:直箭头(Straight Arrow)。

非科班Java出身GISer的博客 705

Opencv自带的HOG进行行人检测-QT例程

本文主要介绍下opencv中怎样使用hog算法,因为在opencv中已经集成了hog这个类。其实使用起来是很简单的,从后面的代码就可以看出来。本文参考的资料为opencv自带的sample。    关于opencv中hog的源码分析,可以参考本人的另一篇博客:opencv源码解析之(6):hog源码分析   开发环境:opencv2.4.2+Qt4.8.2+ubuntu12.0

TRTK 3847

ITKMontage---ITK自动拼接模块

本文分享ITK中Remote中的ITKMontage拼接模块,希望对各位小伙伴有所帮助!1. ITKMontage介绍在医疗图像处理过程中,图像拼接有很多用处,比如DR图像的拼接。ITKMontage可以快速稳定的处理数据量较大的拼接图像。强度不均匀性校正配准全局优化融合2. ITKMontage安装ITKMontageITKMontage可脱离ITK进行单独安装,也可在ITK安装时作为模块进行安装。单独安装ITK模块安装在ITK编译时,选择ITKMontage模块。

qq_40041064的博客 450

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

opencv sample文件夹自带例程

opencv sample文件夹例程 No1. adaptiveskindetector.cpp 利用HSV空间的色调信息的皮肤检测,背景不能有太多与肤色相似的颜色。效果不是特别好。 No2. bagofwords_classification.cpp 好大一串……目前还看不懂。 No3. bgfg_codebook.cpp 前后背景分离。开启摄像头或读取视频。 No4. bgfg_

GL_a_的博客 5985

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

【OpenCV学习笔记】二、OpenCV例程赏析

这一节的主要内容是OpenCV的实例程序赏析。 一、部分说明 这里是简单交待一下当用命令行运行时,main函数参数的含义,int型argc为参数个数,char*类型数组argv中保存参数。 二、OpenCV自带例程赏析 1.绘图例程,生成exe文件直接运行 2.边缘检测例程 命令行运行:E:\mylearn\OpencvPractise\OpencvLearn\Debug>...

Climber的博客 1618

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

上一篇: 使用RGBD深度摄像头实现视觉里程计
下一篇: gmapping介绍及参数说明
Forrest-Z
博客等级 码龄11年 661粉丝 20原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值