随笔分类 - opencv c++
自学,存在资料搬运
摘要:在高维直方图绘制中使用,接省内存 OpenCV中一般一张图片在内存中用Mat来表述及管理,Mat内部申请一块类似与数组的内存用于存储图片中的每个像素的值即为稠密矩阵,但是有时在矩阵中其值为零的元素远远多于非为零的元素个数即稀疏矩阵,如何此时还使用Mat进行存储 显然非常浪费空间,为了应对此中场景,O
阅读全文
摘要:在进行轮廓提取时使用到compare函数(可用作物体移动检测) void compare(InputArray src1, InputArray src2, OutputArray dst, int cmpop); src1:原始图像1(必须是单通道)或者一个数值,比如是一个Mat或者一个单纯的数字
阅读全文
摘要:城区距离:rgb值差距的绝对值 如果将rgb值差距的绝对值累加,计算速度更快 void cvAbsDiff( const CvArr* src1, const CvArr* src2, CvArr* dst ); OpenCV 中计算两个数组差的绝对值的函数。 src1 第一个原数组 src2 第二
阅读全文
摘要:数字图像处理中卷积 我们经常能看到的,平滑,模糊,去燥,锐化,边缘提取等等工作,其实都可以通过卷积操作来完成, 极佳讲解:https://blog.csdn.net/chaipp0607/article/details/72236892?locationNum=9&fps=1 数字图像是一个二维的离
阅读全文
摘要:hsv化直方图,h在纵轴(行)显示,s在横轴(列)中显示 直方图均衡化 void equalizeHist(InputArray src, OutputArray dst)(均衡化有助于图像直方图的延展,均衡化后图像的灰度级范围更宽,有效地增强了图像的对比度。) 只对单通道对象适配,需先转换为单通道
阅读全文
摘要:图像直方图由于其计算代价较小,且具有图像平移、旋转、缩放不变性等众多优点,广泛地应用于图像处理的各个领域,特别是灰度图像的阈值分割、基于颜色的图像检索以及图像分类。他不是图像的特征 void calcHist(const Mat* images, int nimages, const int* ch
阅读全文
摘要:获取视频分辨率与帧数 对视频对象使用get函数 获取各常量 CAP_PROP_FRAME_HEIGHT(高度) CAP_PROP_FRAME_WIDTH (宽度) CAP_PROP_FRAME_COUNT(总帧数) CAP_PROP_FPS(fps) VideoWriter(filename, fo
阅读全文
摘要:videocapture(摄像头索引或视频路径) 读取:videocapture.read(mat) 或 创建videocapture对象 使用>> 内存释放:release
阅读全文
摘要:void flip(InputArray src, OutputArray dst, int flipCode) src,输入矩阵 dst,翻转后矩阵,类型与src一致 flipCode,翻转模式,flipCode==0垂直翻转(沿X轴翻转)上下(水中倒影),flipCode>0水平翻转(沿Y轴翻转
阅读全文
摘要:void resize(InputArray src, OutputArray dst, Size dsize, double fx=0, double fy=0, int interpolation=INTER_LINEAR) src - 原图dst - 目标图像。当参数dsize不为0时,dst
阅读全文
摘要:图像类型在opencv中以8位无符号字符存储 4种归一化方法 2. normalize 函数介绍 函数原型: void normalize(InputArray src,OutputArraydst, double alpha = 1, double beta = 0, intnorm_type =
阅读全文
摘要:void setMousecallback(const string& winname, MouseCallback onMouse, void* userdata=0) winname:窗口的名字 onMouse:鼠标响应函数,回调函数。指定窗口里每次鼠标时间发生的时候,被调用的函数指针。 这个函
阅读全文
摘要:先创建点集合 使用vector与push_back 在使用polyline( void cv::polylines ( Mat & img, const Point *const * pts, const int * npts, int ncontours, bool isClosed, const
阅读全文
摘要:RNG类是opencv里C++的随机数产生器。它可产生一个64位的int随机数。目前可按均匀分布和高斯分布产生随机数。随机数的产生采用的是Multiply-With-Carry算法和Ziggurat算法。 1.1.1 产生一个随机数 RNG可以产生3种随机数RNG(int seed) 使用种子see
阅读全文
摘要:矩形绘制 rect类 rect.x rect.y rect.width rect.height 圆绘制 circle(input/output,point(x,y),r,scalar(),1,8,0) 线绘制 line(input/output,point(x,y)(起始位置),point(x,y)
阅读全文
摘要:坐标体系认知 1. 坐标体系中的零点坐标为图片的左上角,X轴为图像矩形的上面那条水平线;Y轴为图像矩形左边的那条垂直线。该坐标体系在诸如结构体Mat,Rect,Point中都是适用的。(虽然网上有学着说OpenCV中有些数据结构的坐标原点是在图片的左下角,但是我暂时还没碰到过)。 2. 在使用ima
阅读全文
摘要:对颜色进行提取,建议在hsv空间中进行,在rgb空间中,rgb全部控制颜色分布,分布过广,但在hsv空间中,只有h与s控制。色调(H),饱和度(S),明度(V)。 inrange(input,scalar(),scalar(),output) 两个scalar()分别代指上阈值与下阈值 与上述HSV
阅读全文
摘要:rgb:三个灰度图像(单通道)叠加形成 split函数(输入,输出容器)将图像转化为单通道表示 输出容器可用vector<mat>创建 索引0 1 2分别为蓝绿红 将三个通道图像整合转换为彩色:merge 若将图片转换底色,可先分离三个通道,在将另外两个通道归零,就可改变底色 mixchannels
阅读全文
摘要:applycolormap(src,dst,colormap) {src:输入图像 dst:输出图像 匹配到的颜色lut,支持19种查找表映射,从0-18; 可以给灰度图像加上伪彩色
阅读全文
摘要:使用createtrackbar函数(滑动条名称,窗口名称,改变值地址,最大值,最小值(缺省时为0),callback(系统察觉到滚动条改变时,调用的函数),userdata(外在数据)) (callback)onChange=》指向回调函数的指针,每次滚动条改变位置时,这个函数就会被调用。这个函数
阅读全文

浙公网安备 33010602011771号