opencv
文章平均质量分 77
对望小秘
这个作者很懒,什么都没留下…
展开
-
cvHoughLines2霍夫直线检测函数详解及源码解析
opencv中自带霍夫直线检测函数详解及源码解析,包括标准霍夫变换(HoughLines)、多尺度霍夫变换和概率霍夫变换cvHoughLines2().原创 2022-08-18 16:58:43 · 3445 阅读 · 0 评论 -
OpenCV图像缩放插值之BiCubic双三次插值
图像缩放算法简介 在图像的仿射变换中,很多地方需要用到插值运算,常见的插值运算包括最邻近插值,双线性插值,双三次插值(立体插值),兰索思插值等方法,OpenCV提供了很多方法,其中,双线性插值由于折中的插值效果和运算速度,运用比较广泛。双三次插值效果最好,但速度较慢。 OpenCV中实现图像缩放的函数为void re原创 2022-03-30 19:42:43 · 12056 阅读 · 3 评论 -
findChessboardCorners()角点检测详解
OpenCV中的findChessboardCorners()函数即用于棋盘格角点检测。本文主要对indChessboardCorners()进行详解。原创 2021-03-30 19:57:31 · 10870 阅读 · 4 评论 -
OpenCV 畸变校正函数undistortPoints()与remap()详解及校正效果对比
OpenCV 畸变校正函数undistortPoints()与remap()详解及校正效果对比,本文进行了实验及结果分析。原创 2020-12-03 11:29:30 · 12918 阅读 · 7 评论 -
win10 error LNK1112: 模块计算机类型“X86”与目标计算机类型“x64”冲突
win10下,vs2013&opencv2.4.13调试项目,debug win32平台下正常运行,debug x64下报错: error LNK1112: 模块计算机类型“X86”与目标计算机类型“x64”冲突。 其他项目win32和x64下调试都能正常运行,说明系统已经安装VS下X64编译能力,于是检查项目属性发现原因如下: &n原创 2020-08-06 10:36:05 · 3926 阅读 · 1 评论 -
raw格式图片读取与显示C++,opencv
raw格式图片读取与显示程序实现,通过C++结合opencv实现。原创 2020-04-29 19:58:42 · 7957 阅读 · 0 评论 -
疑问:undistortPoints()与remap()畸变校正后,结果相差很大
如题,文章主要记录了博主的一个疑问:“undistortPoints()与remap()畸变校正后,结果相差很大”,文中博主进行了测试及结果展示,同时还有此疑问的后续解决博客链接。原创 2019-10-14 17:52:47 · 3851 阅读 · 12 评论 -
【OpenCV】将单通道的Mat对象转换为三通道的Mat
在项目中遇到一个问题,调用别人编好的库需要传入三通道的彩色图像。但是我的图像经过处理后已经是二值化的图像了,所以得想想办法了。 分析:三通道的彩色图像就是R,G,B三个通道,那么将我的单通道黑白图复制三份merge一下,不就是一张三通道图像了嘛,只不过有颜色只有黑白,实验了一下果然可以用了。 代码实现:/**************************************//...转载 2019-06-27 10:46:14 · 2130 阅读 · 0 评论 -
OpenCV畸变校正原理以及损失有效像素原理分析
常用的张正友标定法的流程,其中获取了摄像机的内参矩阵K,和畸变系数D。1.在普通相机cv模型中,畸变系数主要有下面几个:(k1; k2; p1; p2[; k3[; k4; k5; k6]] ,其中最常用的是前面四个,k1,k2为径向畸变系数,p1,p2为切向畸变系数。2.在fisheye模型中,畸变系数主要有下面几个(k1,k2,k3,k4)....转载 2019-07-10 10:35:27 · 1293 阅读 · 0 评论 -
OpenCV Mat数据类型及位数总结
前言 opencv中很多数据结构为了达到內存使用的最优化,通常都会用它最小上限的空间来分配变量,有的数据结构也会因为图像文件格式的关系而给予适当的变量,因此需要知道它们声明的空间大小来配置适当的变量。一 般标准的图片,为RGB格式它们的大小为8bits格式,范围为0~255,对一个int空间的类型来说实在是太小,整整浪费了24bits的空间,假设有个640*480的BM...转载 2019-07-10 11:55:39 · 412 阅读 · 0 评论 -
OpenCV求逆(伪逆)矩阵函数
转自 double invert(InputArray src, OutputArraydst, int flags=DECOMP_LU); 功能:用以求取一个矩阵的逆或者伪逆。 src: 输入,浮点型(32位或者64位)的M×N的矩阵,当参数3的使用方法为DECOMP_CHOLESKY DECOMP...转载 2019-07-05 17:10:33 · 5505 阅读 · 0 评论 -
otsu算法原理及C++代码实现-寻找灰度图片中最佳阈值
otsu法(最大类间方差法,有时也称之为大津算法)使用的是聚类的思想,把图像的灰度数按灰度级分成2个部分,使得两个部分之间的灰...转载 2019-07-22 11:27:38 · 1012 阅读 · 0 评论 -
OpenCV求(图像)矩阵中最大值,最小值函数minMaxLoc() vs minMaxIdx()
文中对求(图像)矩阵中最大值,最小值函数的opencv函数:minMaxLoc() 与minMaxIdx(),进行了详细介绍,包括功能、参数介绍及使用方法。原创 2019-07-31 17:52:35 · 10637 阅读 · 1 评论 -
OpenCV读写xml和yml文件
有时候我们处理完图像后需要保存一下数据到文件上,以供下一步的处理。一个比较广泛的需求场景就是:我们对一幅图像进行特征提取之后,需要把特征点信息保存到文件上,以供后面的机器学习分类操作。那么如果遇到这样的场景,我们有什么好方法,搭建这类的小型数据库文件?我第一时间想到的是把这些数据全写到文件上,下次我们需要这些数据就把他们从文件里读出...转载 2019-08-22 09:41:00 · 2542 阅读 · 2 评论 -
张正友平面标定法的一些注意事项
从一月到现在一直有一个问题比较烦人,就是这相机标定的问题,这个问题使用相机的人基本都会先去做这个,很多人在这问题上做研究,有很多种,基于各种模型的,而且算法都比较成熟。我们一开始就把问题想简单了,因为OPENCV说里面已经写好了,直接掉出来用就行了。实现确实如此,从开始就出OPENCV,用一周的之间就写了出来代码,拿别人的相片一看,呵呵呵,还行,结果和别人的差不多,那是就像这时到此结束了.......转载 2019-10-09 16:02:14 · 959 阅读 · 7 评论 -
图像指针与矩阵格式转换——Mat转uchar*及uchar*转Mat代码实现
本篇文章实现RGB3通道图像Mat转uchar*及uchar*转Mat,代码及实验结果如下:#include <opencv2/opencv.hpp>using namespace std;using namespace cv;/**将Mat类型的数据转换为uchar类型*/uchar* matToUchar(Mat img){ int img_width = im...原创 2019-06-24 11:03:09 · 5219 阅读 · 5 评论 -
c++创建包含opencv的dll供C,C#调用
转 最近,接到了一个小任务,就是创建一个c++的dll,供c#调用。dll又称动态链接库,其好处有很多,主要提供接口,供项目调用。其中,要写一个函数,输入一张图片的路径,之后显示图像,并返回字符串,成功打开图像,返回“open”,失败则返回“cannotopen”。但是在编写过程中也出了一些问题,当参数以及返回值类型为string时,c#端会报“访问受保护的内存”,查了很多的相关资...原创 2019-07-02 11:06:10 · 1666 阅读 · 5 评论 -
C++ Opencv 读取指定路径中的所有文件(图片)及指定路径中指定格式的所有文件(图片)
读取指令路径下的所有文件,程序如下:#include <io.h>#include < fstream>#include < string>#include <vector>#include <opencv2/opencv.hpp>using namespace cv;using namespace std;//读入...原创 2019-03-30 14:28:03 · 5793 阅读 · 5 评论 -
C++ OpenCV创建xml,yml文件(图像)列表程序
最近在学习关于相机标定的程序,标定时需要将图片打包成XML YML TXT格式,下面贴出生成xml图像序列的程序,同样适用于yml,记录一下,欢迎讨论~#include "opencv2/core/core.hpp"#include "opencv2/highgui/highgui.hpp"#include <string>#include <iost...原创 2019-04-01 11:30:10 · 663 阅读 · 2 评论 -
OpenCV播放视频-----滚动条随着视频播放移动代码
学习OpenCV,使用highGUI工具包实现视频的播放控制,使滚动条随着视频播放移动代码如下:#include "highgui.h"#include "direct.h"#include "cv.h"using namespace cv;//播放视频,有滚动条int g_slider_position = 0;//滚动条当前位置CvCapture* g_capture =...原创 2019-03-28 15:30:58 · 329 阅读 · 0 评论 -
OpenCV 2.4.9-2.4.13各个版本附加依赖项Lib文件汇总
使用OpenCV前,需对项目属性进行设置,主要包括:包含目录、库目录,附加依赖项等。包含目录和库目录设置如下图所示包含目录添加3个:(1)OpenCV安装文件夹\opencv\build\include (2)OpenCV安装文件夹\opencv\build\include\opencv (3)Open...原创 2019-03-29 10:32:01 · 3375 阅读 · 0 评论 -
三维空间点进行空间平面拟合原理及MATLAB和C++代码实现
平面拟合原理参考网页:https://blog.csdn.net/duiwangxiaomi/article/details/89246715MATLAB实现参考网页:https://blog.csdn.net/duiwangxiaomi/article/details/89238969C++代码实现,包括测试数据,vs2013结合OpenCV2.4.13:#include <...原创 2019-04-15 16:21:52 · 4904 阅读 · 0 评论 -
CvMat,Mat和IplImage之间的转化和拷贝
1、CvMat之间的复制//注意:深拷贝 - 单独分配空间,两者相互独立 CvMat* a; CvMat* b = cvCloneMat(a); //copy a to b 2、Mat之间的复制//注意:浅拷贝 - 不复制数据只创建矩阵头,数据共享(更改a,b,c的任意一个都会对另外2个产生同样的作用)Mat a;Mat b = a; //...转载 2019-04-15 16:13:56 · 257 阅读 · 0 评论 -
OpenCV中图像Mat存储格式和MATLAB中图像Mat存储格式的区别
首先,看一下图像中的宽高与笛卡尔坐标系之间的关系如下图所示,即x与width(cols)对应,y与height(rows)对应,x是按列来进行变化,y按行变化。OpenCV读入图像以Mat形式存储时,为Mat(Width,Height),访问时用的是A=Mat.at(y,x),y代表行,x代表列;MATLAB读入图像以Mat形式存储时,为Mat(Height,Width),访问时用B=Ma...原创 2019-04-23 13:05:29 · 1553 阅读 · 0 评论 -
OpenCV中 Mat 按行或按列合并程序
按行合并#include <opencv2/opencv.hpp> #include <iostream> using namespace cv;using namespace std;Mat mergeRows(Mat A, Mat B){ CV_ASSERT(A.cols == B.cols&&A.type() == B....原创 2019-04-23 20:50:43 · 985 阅读 · 0 评论 -
如何查看OpenCV自带函数的源代码
OpenCV提供的内部函数能实现好多图像处理功能,有时我们需要改进函数或者想看一下函数的具体实现,一般有以下两种方法来查看其内部函数代码: 方法一:在opencv的安装文件夹中找到 与头文件名字对应的.C 或 .CPP 文件,然后在对函数进行查找。但不是所用函数都是这样的。例如cvSmooth函数,单击“转到定义”后,其跳转到imgproc_c.h中。通过找到im...原创 2019-05-05 20:17:52 · 3668 阅读 · 0 评论 -
Mat矩阵基本操作与示例 OpenCV
OpenCV的基本矩阵操作与示例OpenCV中的矩阵操作非常重要,本文总结了矩阵的创建、初始化以及基本矩阵操作,给出了示例代码,主要内容包括:创建与初始化矩阵加减法矩阵乘法矩阵转置矩阵求逆矩阵非零元素个数矩阵均值与标准差矩阵全局极值及位置其他矩阵运算函数列表1. 创建与初始化矩阵1.1 数据类型建立矩阵必须要指定矩阵存储的数据类型,图像处理中常用的几种数据类型如下:C...转载 2019-05-23 17:23:46 · 673 阅读 · 0 评论 -
Mat,Iplimage,vector,vector_vector_Point2f等类型之间的相互转换
在mfc c++ 以及opencv 编写程序当中,很多常用的类型转换,现在总结一下。(注意加相应的头文件,这里不罗嗦)提纲:1. Mat ---> Iplimage2. Iplimage ---> CvvImage3.&...转载 2019-06-19 20:22:42 · 1945 阅读 · 0 评论 -
OpenCV Mat矩阵(图像Mat)初始化及访问方法
文章详细介绍了OpenCV Mat矩阵(图像Mat)初始化及访问方法原创 2019-06-20 17:39:50 · 72655 阅读 · 2 评论 -
OpenCV中图像Mat,二维指针和CxImage类之间的转换
在做图像处理中,常用的函数接口有Opencv中的Mat图像类,有时候需要直接用二维指针开辟内存直接存储图像数据,有时候需要用到CxImage类存储图像。本文主要是总结下这三类存储方式之间的图像数据的转换和相应的对应关系。一、OpenCV的Mat类到图像二值指针的转换以下为函数代码:unsigned char** MatTopImgData(Mat img){ //获取图像参...转载 2019-06-20 20:01:22 · 816 阅读 · 0 评论 -
OpenCV中minAreaRect()最小外接矩形 cvBoxPoints()计算矩形顶点 RotatedRect和CvBox2D详解
文中对OpenCV中minAreaRect()最小外接矩形 ,cvBoxPoints()计算矩形顶点,RotatedRect和CvBox2D进行了详细介绍。原创 2019-06-17 09:36:12 · 36093 阅读 · 10 评论 -
opencv中image watch插件安装与使用教程
opencv中image watch插件安装与使用教程。原创 2018-02-01 20:10:29 · 1260 阅读 · 2 评论