-
OpenCV中文参考手册
OpenCV中文参考文件,应用程序接口(API)中文参考资料al OpenCV参考手册·ΩpencⅤ编程简介(矩阵/图像/姒频的基本·Ω中文参考手册读写操作)入门必读· OpenCV概述1.图像处理2.结构分析CXCore中文参考手册3.运动分析与对象跟踪4.模式识别1.基础结构5.照相机定标和三维重建2.数组操作3.动态结构HgGU中文参考手册4.绘图函数5.数椐保存和运行时类型信息1. HighGUI概述6,其它混合函数2.简单图形界面7.錯误处理和系统函数3.读取与保存图傯4.视频读写数机器学习中文参考手册5.实用涵数与系统函数OpencⅤ编码样式指南(阅读 Opencv代码前必CIMage类参考手册读CiMage中的陷阱和BUGOpenCV的Phon接口Opengν编程简介(矩阵/图像/视频的基本读写操作)Wikipedia,自由的百科全书Introduction to programming with OpenCVOpencv编程简介作者: Gady AgamDepartment of Computer ScienceJanuary 27, 2006Illinois Institute of TechnologyUrl:http://www.cs.it.edu/ragam/cs512/lect-notes/opency-intro/opency-intro. html#SECTION00040000000000000000翻译: chenyusiyuanJanuary 26, 2010.http:/blog.csdn.net/chenyusiyuan/archive/2010/01126/5259060.aspx摘要:本文旨在帮助读者快速入门 Openc,而无需阅读冗长的参考手册。掌握了 Opencv的以下基础知识后,有需要的话再查阅相关的参考手册。目录[原]1二、简介o1.11、 Openc的特点1.1.1(1)总体描述(2)功能113(3) OpenCv模块122、有用的学习资源2.1(1)参考手册;122(2)网络资源1.23(3)书籍124(4)视瓶处理例程(在< openly-root>/ samples/c/)125(5)图像处理例程(在< openly-root>/ samples/c/0133、 openc命名规则2(2)矩阵数据类型:■1.33(3)图像数据类型134(4)头文件:o144、编译建议.14.1(lInux;1.4.2(2) Windowso155、C例程2二、GUI指令2.11、窗口管理2.1.1(1)创建和定位一个新窗口∶2.12(2)载入图像2.13(3)显示图後2.14(4)关团窗口2.15(5)改变窗o222、输入处理2.2.1(1)处理鼠标事件222(2)处理键盘事件■2.23(3)处理滑动条事件·3三、 OpenCV的基本数据结构o3.11、图像数据结构3.1.1322、知阵与向量3.2,1(1)矩阵3232).元批333、其它结构类型33.1(1)点332(2)矩框大小(以像素为精度)∵■333(3)矩形框的偏置和大4四、图像处理4,11、图像的内存分配与释放411(1)分配内存给一幅新图像4.1.2(2)释放图像■4.13(3)复制图像414(4)设置/获取感兴趣区域ROI415〈5)设置/获取感兴趣通道COI422、图像读写4.2,1(1)从文件中读入图像4.2.2(2)保存图o433、访回图像像素4.3.1(1)假设你要访间第k通道、翦列的像素43,2(2)间接访间;(通用,但效可访间任意格式的图像)433(3)直接访间:(效率高,但容易岀错)434(4)基于指针的直接访闻:(简单高效435(5)基于c++ wrapper的直接访间(更简单高效a444、图像转换441(1)字节型图像的灰度-彩色转换442(2)彩色图像->灰度图像44不同彩色空间之间的转換a455、绘图指令4.5,1(1)绘制矩形452(2)绘制圆形45.3(3)绘制线段454(4)绘制一组线段455(5)绘制组填充颜色的多边形:456(6)文本标注5五、矩阵处理o5,11、矩阵的内存分配与释放32(3)为新矩阵分配达存释放矩阵内存514(4)复制矩阵5,15(5)初始化矩阵5.1.6(6)初始化矩阵为单位矩阵522、访回矩阵元焘52.1(1)假设需要访间一个2D浮点型矩阵的第(i,j个单元,5.2.2(2)间接访间5.23(3)直接访间(假设矩阵数据按4宰节行对齐)524(4)直接访间(当数据的行对齐可能存在间隙时 possible alignment gaps)5,25(5)对于初始化后的矩阵进行直接i°533、矩阵/向量运算5.3,1(1)矩阵之间的运算532(2)矩阵之间的元素级运算:53,3(3)向量乘积534(4)单一矩阵的运535(5)非齐次线性方程求解■536(6)特征債与特征向量(矩阵为方阵)6六、视频处理611、从视频流中捕捉一帧画面61.2(2)Y支从摄像头或视频文件(AM格式)中捕捉帧画面6,11(1)open个摄像头捕捉器6,1,3(3)初始化一个祕频文件捕捉器614(4)捕捉一帧画面61.5(5)释放视频流捕捉o622、获取/设置视频流信息6,2.1(1)获取视频流设备信息6,2,2(2)获取帧图信息6,23(3)设置丛视频文件抓取的第一帧画而的位置∵633、保存视频文件6.3,1(1)初始化视频编写器6.3,2(2)保持视频文件63)释放视频编写器[编辑]简介[编辑]1、 OpenCV的特点[编辑](1)总体描述· Opencv是一个基于CC++语言的开源图像处理函数库其代码都经过优化,可用于实时处理图像具有良好的可移植性可以进行图像/视频载入、保存和采集的常规操作具有低级和高级的应用程序接口(API·提供了面向 Intel IPP高效多媒体函数库的接口,可针对你使用的 Intel CPU优化代码,提高程序性能(译注: OpenC2.0版的代码已显著优化,无需IPP来提升性能,故2.0版不再提供IPP接口)[编辑(2)功能图像数据操作(内存分配与释放,图像复制、设定和转换)Image data manipulation (allocation, release, copying, setting, conversion·图像/视频的输入输出(支持文件或摄像头的输入,图像/视频文件的输出)Image and video I/o (file and camera based input, image/video file output).矩阵/向量数据操作炇线性代数运算(矩阵乘积、矩阵方程求解、特征值、奇异值分解)Matrix and vector manipulation and linear algebra routines(products, solvers, eigenvalues, SVD)支持多种动态数据结构(链表、队列、数据集、树、图)Various dynamic data structures(lists, queues, sets, trees, graphs)·基本图像处理(去噪、边缘检测、角点检测、采样与插值、色彩变換、形态学处理、直方图、图像金字塔结构)Basic image processing(filtering, edge detection, corner detection, sampling and interpolation, colorconversion, morphological operations, histograms, image pyramids)·结构分析(连通域/分支、轮廓处理、距离转换、图像矩、模板匹配、霍夫变换、多项式逼近、曲线拟合、椭圆拟合、狄劳尼三角化)Structural analysis(connected components, contour processing distance transform, various momentstemplate matching, Hough transform, polygonal approximation, line fitting, ellipse fitting, Delaunaytriangulation).·摄像头定标(寻找和跟踪定标模式、参数定标、基本矩阵估计、单应矩阵估计、立体视觉匹配)Camera calibration(finding and tracking calibration patterns, calibration, fundamental matrixestimation, homography estimation, stereo correspondence).·运动分析(光流、动作分割、目标跟踪)Motion analysis(optical flow, motion segmentation, tracking)目标识别(特征方法、HMM模型Object recognition(eigen-methods HMM)基本的GUI(显示图像/视频、键盘/鼠标操作、滑动条)Basic Gui (display image/ video keyboard and mouse handling, scroll-bars)图像标注(直线、曲线、多边形、文本标注)Image labeling(line, conic, polygon, text drawing[编辑](3) Opencvi模块cv-核心函数库Vaux-辅助函数库:e0机数线性代数作m|-机器学习函数库[编辑]2、有用的学习资源[编辑](1)参考手册:< opencv-root>/ docs/index. htm(译注:在你的 OpenCV安装目录< opencv-root>内)[编辑](2)网络资源:Etkmi:http:/www.intel.com/technology/computing/opencvl[编辑](3)书籍:Open Source Computer Vision Libraryby Gary R Bradski, Vadim Pisarevsky, and Jean-Yves Bouguet, Springer, 1st ed. (June, 2006)chenyusiyuan:补充以下书籍Learning OpenCV -Computer Vision with the OpenCV Libraryby Gary Bradski Adrian Kaehler, O Reilly Media, 1 st ed(September, 2008)OpenCv教程——一基础篇作者:刘瑞祯于仕琪,北京航空航天大学出版社,出版日期:200706(4)视频处理例程(在< opencv-root>/ samples/c/):·颜色跟踪: camshiftdemo点跟踪:| kemo动作分割: motel边缘检测: laplace[编辑](5)图像处理例程(在< opencv-root>/ samples/c/)边缘检测:edge图像分割: pyramid_ segmentation形态学: morphology直方图: demist距离变换: distrains椭圆拟合: fitellipse[编辑]3、 OpenCv命名规则[编辑](1)函数名CvActionTargetMod(.)Act⊥cn=核e functionality)(e.g. set, create)Targettarget image area) (e, g. contour, polygon)Modih (optional modifiers) (e.g. argument type)[编辑](2)矩阵数据类型:CV_(SIUIF)Cs=符号整型UE,q.:Cv_8UC1是指_个8位无符号整型单通道矩阵CV 32FC2是指一个32位浮点型双道道矩阵[编辑](3)图像数据类型:IPL_DEPTH_⊥nc1ude< VAux.h>include inc⊥ ude sinclude /一般不需要,cv,h内已包含该头文件[编辑]4、编译建议[编辑](1)Linux:g++ helloworld. cpp-o hello-worldI /usr/local/include/opencv -L /usr/local/liblm-Icv-highqui-Icvaux[编辑](2)Windows在Ⅵ visual studio的选项和项目牛设置好 OpenCv相关文件的路径。[编]5、C例程hello-worid. cpp/该程序从文件中读入一幅图像,将之反色,然后显示出来⊥nc1udeinclude ⊥nc1ude#include #include highgui.h>int main (int argc, char argv[IplImage* img=0int height, width, step, channelsuchar *datai. i,i,kif(argcheight iwidthimg->widthStepimg->widthstep ichannelsimg->channelsdata(uchar *)img->imageData iprint f("Processing a dx%d image with d channels", height, width, channels)create a windowcvNamedwindow("mainwin CV WINDOW AUTOSIZEcvMoveWindow ("mainwin", 100, 100)t the image相当于 caNot(img);for(i-o; isheighti 1++) for(j=; j
- 2020-12-10下载
- 积分:1
-
DVB-S2四种调制方式
DVB-S2四种调制方式QPSK,8PSK,16APSK,32APSKmatlab代码
- 2020-11-02下载
- 积分:1
-
单相PWM整流控制系统的设计与仿真.
【实例简介】在电力系统中,电压和电流应是完好的正弦波。但是在实际的电力系统中,由于非线性负载的影响,实际的电网电压和电流波形总是存在不同程度的畸变,给电力输配电系统及附近的其它电气设备带来许多问题,因而就有必要采取措施限制其对电网和其它设备的影响。
在我国,当前主要的谐波源主要是一些整流设备。传统的整流方式通常采用二极管整流或相控整流方式,采用二极管整流方式的整流器存在从电网吸取畸变电流,造成电网的谐波污染,而且直流侧能量无法回馈电网等缺点。这些整流器从电网汲取电流的非线性特征,给周围用电设备和公用电网都会带来不利影响。
为了抑制电力电子装置产生的谐波,其中的一种方法就是对整流器本身进行改进,使其尽量不产生谐波,且电流和电压同相位。这种整流器称为高功率因数变流器或高功率因数整流器。高功率因数变流器主要采用PWM整流技术,一般需要使用自关断器件。对电流型整流器,可直接对各个电力半导体器件的通断进行 PWM调制,使输入电流成为接近正弦且与电源电压同相的PWM波形,从而得到接近1的功率因数。对电压型整流器,需要将整流器通过电抗器与电源相连。只要对整流器各开关器件施以适当的PWM控制,就可以对整流器网侧交流电流的大小和相位进行控制,不仅可实现交流电流接近正弦波,而且可使交流电流的相位与电源电压同相,即系统的功率因数总是接近于1。本文主要对与PWM整流器相关的功率开关器件、主电路拓扑结构和控制方式等进行详细说明,在此基础上对PWM 整流技术的发展方向加以探讨。
- 2021-12-04 00:57:07下载
- 积分:1
-
棋盘格标定图
利用vc6.0和opencv1.0 生成棋盘格图像,用于摄像头标定。代码在VC6.0下测试通过。
- 2020-12-06下载
- 积分:1
-
改进的BBO算法
一个关于学习生物地理学算发的程序,方便菜鸟
- 2020-12-10下载
- 积分:1
-
ucGUI中文教程(STM32实例非常详细)emWin教程
ucGUI、emWin中文教程,结合源码非常详细。《安富莱_STM32-V5开发板_STemWin教程》,包括模拟器、guibuilder使用等ARMFL武汉安富莱电子有限公司Www.ArmfLy.Com安富莱STM32-V5开发板 STemWin教程教程使用说明本教程配套的硬件开发平台是安富菜电子自主设计的STM32V5开发板。安富菜其他系列的STM32开发板也可以使用这个手册,我们的论坛www.armfly.con上有移植好的工程不过需要大量动态内存的例子是无法运行的。使用本教程前,请先按照第三章的教程进行触摸校准,将触摸参数保存到 EEPROM里面,后面所有的例子都会自动加载触摸参数。■基本涵盖了所有 STemWin知识点及其控件的使用,部分复杂的控件会在后期升级的教程中增加上去。完美解决 STemWin支持的BMP、JPG、GIF、PNG图片显示。完美解决 STemWin支持的字体显示,XBF、SIF、矢量字体显示。■教程中提供的 emWin的移植方法,可以完美支持各种显示屏,不受官方显示驱动限制。■所有的控件教程都有配套使用 GUIBulder5.22和u CGUIBulder40建立的例子。■大部分例子均支持在模拟器、MDK和IAR三个版本上面运行。STM32V5开发板相关资料地址:ahttp://bbs.armfly.com/readphp?tid=1139ahttp://bbs.armfly.com/readphp?tid=1285ahttp://bbs.armfly.com/read.php?tid=2103第3页共574页ARMFL武汉安富莱电子有限公司Www.ArmfLy.Com安富莱STM32-V5开发板 STemWin教程第1章 STemWin介绍本期教程开始带领大家了解-下 STemWin的基本知识,其实确切的讲应该叫eηwin基础知识,由于教程使用的开发板是ST的微控制器,所以就把名字统一命名成 STemWin(为什么叫 STemWin,在下面会有详细的讲解)。1.1 STemwin, emwin,μCGU之间的关系1.2 SEGGER公司介绍1.3 STemwin介绍14STM32F103和407跑 STemWin性能测试15 STemWin论坛16总结11 STemWin,emWn,μCGU之间的关系这个放在最开头进行说明,因为很多的初学者比较的迷惑对于一些刚学GUI的用户来说,知道μCGU的比较多,而不知道所谓的 emWin或者 STemWin。这个并不奇怪,主要是因为大部分人只知道 SEGGER公司的做的儿LINK,而不知道他们还有RTOS和相关的中间件(中间件的意思就是基于RTOS的文件系统,GUI,USB主机和设备协议栈等)。11.1卩CGU在国内比较火的原因μcGUI在国内前几年比较火的原因有三点●一个是μCOSI在国内的推广,自从 Micrum公司出的那本《嵌入式实时操作系统μCOSⅢ》发布之后,国內关于μCOSⅡ的资料就是普天盖起,再加上各种培训机构和开发板的推广,μCOSⅡ就在国内火起来了。μCOS火的同时,它配套的中间件,特别是μCGUI就跟着在国内火了起来●前几年国内有一个μCGUI的论坛,这个论坛在国内的μCGU方面应该算是做得最好的,特别是那个站长在μCGUI方面的研究,这位站长对于μCGUI在国内的发展功不可没●还有一个原因就是μCGU是带有源码的,很多时候可以通过修改部分的源码实现—些特殊的功能,现在网上流传的μCGUI的源码已经不知道经过多少人的手被修改过,最原始的的代码已经在官网上面找不到了。第4页共574页ARMFL武汉安富莱电子有限公司Www.ArmfLy.Com安富莱STM32-V5开发板 STemWin教程112 emwin和μCGU的关系首先要明白,这两个GUI是一个东西。最初这个GU就是 SEGGER公司的,然后以什么的方式授权给μcGUI就不清楚了。现在 SEGGER公司是这个GUI的主要推动者,已经将其授权给了多个芯片生产厂家。11.3 STemWin和emWn的关系STemWin是 SEGGER公司授权给ST(意法半导体)的。使用ST芯片的用户可以免费使用 STemWin其实不光授权给了ST,还有NXP, Energy micro等。凡是使用这些芯片厂商生产的处理器都可以免费的使用 emwin。但是出于一定的保护措施,使用 STemWin的库是不能用在其它芯片厂商的处理器上面的。因为在工程初始化 STemWin前要使能CRC校验。如果没有使能, STemWin是启动不起来的。 KEIL MDK的安装目录里面也带有 emwin软件包,这个软件包也不是可以直接使用的,用户需要给 KEIL MDK注册RL-ARM才可以使用。这里 STemWin还针对ST的微控制器做了专门的优化,比如在使用ST的F4XX微控制器带FPU的芯片时, STemWin在需要浮点处理的地方专门做了优化114 emWin5Xx版本和以前版本的不同emWin发展到50版本以后已经产生了很大的更新,特别是底层驱动方面。 emWin5xx版本向下完全的兼容低版本,当然包括μcGUI巧5ⅹX以下的版本,也就说如果用户有在μCGUI5×以下版本建立的工程完全可以用在高版本上面(条件是没有修改过源码)。这里不建议初学者修改源代码,修改过后会破坏现有的机制。在以后的使用中会养成不好的习惯,只要某些功能无法实现就去修改源码随着修改的增多会严重的破坏现有的机制。emwin5xX以后的版本只有库,没有源码。对于一些想研究源码的,可以看早期的版本,了解一下通讯机制。不过对于大多数从应用角度出发的,完全没有必要学习源码,源码内容太多。对于一些无法实现的功能,在 emWin5ⅹ上面得到了很大的改善,基本不需要修改源码。如果通过各种方法实在无法实现,完全可以使用 emWin支持的用户控件设计方法做一个符合要求的.12 SEGGER公司介绍SEGGER公司应该算是一家老牌的调试工具以及RTOS及中间件的生产商。 SEGGER公司成立于1997年,到现在的2014年,有差不多17年的历史了,这家公司主要有两个 office,一个是在德国的 Hilden,另个在美国的 Massachusetts。官网还有一个他们工作地方的照片,看着很不错,我这里也把这个照片贴第5页共574页ARMFL武汉安富莱电子有限公司Www.ArmfLy.Com安富莱STM32-V5开发板 STemWin教程国SEGGER公司的产品主要有三个方向,分别如下:121RToS及其中间件SEGGER公司的RTOS是 embos,在国内知道的人可能比较少。 SEGGER做的 embos和中间件都是以库的形式供用户下载的,除非购买了使用权。产品主要如下o embos(Real Time Operating System)embos/IP(TCP/IP Stack)o emWin(Graphic Software Gui)● em File( File System)emUSB Device(USB device Stack)e emUSB Host(USB Host stackemModbus( Modbus StackmoDbus是今年(2014年)刚刚发布的。第6页共574页ARMFL武汉安富莱电子有限公司Www.ArmfLy.Com安富莱STM32-V5开发板 STemWin教程122J-Link调试工具J-Link应该大家都不陌生,它是有 SEGGER公司设计的。具体的J-Link产品有好几款,具体如下●J- Link pro●J- Link ultra+●J- Link plus●J-Link●J- Trace Cortex-M3●J- Trace arm1.2.3 Production Programmers这个工具在国内用的比较少,主要如下几款产品:●F| asher armFlasher rx●F| asher stm8● Flasher st7● Flasher5● Flasher5PRo上面说的这三项应该算是SEGGER公司的主营产品,更详细的可以上面他们的官网www.segger.con进行了解。13 STemWin介绍emwin5X版本设计出来的界面还是非常漂亮的,先贴几个相关的设计图片,让大家有一些感官的认识131 STemWin设计界面●第一幅是官方设计的图片第7页共574页ARMFL武汉安富莱电子有限公司Www.ArmfLy.Com安富莱STM32-V5开发板 STemWin教程Coffee machineAirplane monitoring system666垂●Washing machineProcess automation40°C900Detergent40%3Dashboardx-Ray machineCEPHP114.1540整体来说,这些图片还是非常漂亮的,不过这些界面不是用专门的控件显示出来的,使用的2D绘图配合内存设备管理实现的。●下面的是在STM32V5开发板上面实现的界面总的来说这些界面还是非常漂亮的,关于STM32V5开发板更详细的资料可以看如下两个地址http://bbs.armfly.com/read.php?tid=1285http://bbs.armfly.com/read.php?tid=1139第8页共574页ARMFL武汉安富莱电子有限公司Www.ArmfLy.Com安富莱STM32-V5开发板 STemWin教程凹春Computer SettingsPictureletoonCameraClockFMAMamazonMPMP3RecorderensorTextUs日edioSignal201304303%177:28TueTask Manage▲进程性能实验目的优先级堆栈使用堆栈余堆栈分比CPU任务名字59869388%3. 70% App Task GUIRefresh60516358012%0. 30% App Task GUI10891610%0. 05% App Task UserIF749507%0.07% App Task COM829420. 00% App Task Update8219664%0. 00% App Task Start62636549%0. 01% uC/OS-III Timer Task62 6464 50% 0.47% uC/OS-III Stat Task646450%0. 83% uC/OS-III Tick Task63527640%94. 53% uC/OS-III Idle Task201343017:18:14Tue第9贪共574页ARMFL武汉安富莱电子有限公司Www.ArmfLy.Com安富莱STM32-V5开发板 STemWin教程File ManageFile Edit HelpOpen noneHardDiskUsed: 3MB Total: 126MBsed: 442MB Total: 1963MBUsed: 130MB Total: 7441MBCamera的oV7570&MT9D111OPEN USB HOSTOPEN USB HOSTCLOSE USB HOSTr OPEN USB DEVICE CLOSE USE DEVICEReady2013/43017:U7:49Tue132目标系统(硬件)目标系统必须具有:一个CPU(8/16/32/64位)一个具有最小内存的RAM和ROM一个完整图形显示器(任何类型和任何分辨率)存储器要求取决于使用的是软件的哪部分以及目枟编译器的效率。因此不可能指定精确的值,但是以下值适用于典型的系统。小系统(无窗口管理器)●RAM:100字节堆栈:600字节ROM:10-25kb(取决于所使用的功能)大系统(包含窗口管理器和小工具)RAM:2-6kb(取决于所需的窗口数)堆栈:1200-1800字节(取决于所使用的功能)ROM:30-60kb(取决于所使用的功能)请注意,如果应用程序使用了很多字体,则对ROM的要求会提高。上述所有值都是粗略估算值,不第10页共574页
- 2021-05-06下载
- 积分:1
-
基于STM32的交通灯控制系统
这是一个基于STM32的交通灯控制系统,里面有代码,有PPT,用实验报告
- 2020-11-30下载
- 积分:1
-
基于pscad的永磁直驱直驱风机
自己搭的永磁直驱风机模型,与网上下载的官方的相比结构更加清晰,做好了标注与说明,非常适合初做风机模型的人学习。保证能运行。
- 2020-11-27下载
- 积分:1
-
卷积神经网络(CNNS)权值优化算法
卷积神经网络的权值优化算法
- 2021-05-06下载
- 积分:1
-
粒子群算法工具箱
粒子群算法工具箱 http://blog.csdn.net/niuyongjie 里面的完整代码
- 2019-10-30下载
- 积分:1