void cvXor计算两个数组中的每个元素的按位异或。

void cvXor (const CvArr* src1, const CvArr* src2, CvArr* dst, const CvArr* mask = NULL);

得到dst(I) = src1(I)^src2(I)。 你提到的mask形参,一般来说可以直接填入0或者缺省。

以下给你一个例子,我用到的函数是cvOr,它和你说的cvXor都是cxcore的一种算术函数,

void cvOr (const CvArr* src1, const CvArr* src2, CvArr* dst, const CvArr* mask = NULL);形参是一致的,只是计算不同。

void backgroundDiff(IplImage *I, IplImage *Imask) {

cvCvtScale(I,Iscratch,1,0);

cvSplit( Iscratch, Igray1,Igray2,Igray3, 0 );

cvInRange(Igray1,Ilow1,Ihi1,Imask);

cvInRange(Igray2,Ilow2,Ihi2,Imaskt);

cvOr(Imask,Imaskt,Imask, 0);

cvInRange(Igray3,Ilow3,Ihi3,Imaskt);

cvOr(Imask,Imaskt,Imask, 0);

cvSubRS( Imask, cvRealScalar(255), Imask, 0);

}

这段程序摘自Learning OpenCV教程第九章的background subtraction。在第6和8行,

“cvOr(Imask,Imaskt,Imask, 0);”,Imask是第一个原数组(注意,不要和mask形参搞混了),Imaskt是第二个原数组,Imask同时也是输出数组,最后一个参数0则是mask。

得到Imask=Imask|Imaskt。

同理,如果你要用cvXor,则应该写作“cvXor(src1, src2, dst, 0);” 关于函数怎么使用,可以在openCV的中文论坛(http://www.opencv.org.cn/forum/)的“参考手册”里找到。

IplImage可以用结构的方法修改。比如在做视频处理的时候,一开始常犯的错误是做出的视频上下颠倒,这时候要将origin设为1。

例如: CvCapture* capture; IplImage *src, *dst; while(1) {

src = cvCaptureFromCAM( CV_CAP_ANY ); //输入src,经过一些处理后,输出dst。中间过程省略。

dst->origin = 1; //保证dst没有上下颠倒。

cvShowImage("dst", dst);

}

opencv---cvor的更多相关文章

  1. 《得知opencv》注意事项——矩阵和图像处理——cvOr,cvOrS,cvrReduce,cvRepeat,cvScale,cvSet and cvSetZero

    矩阵和图像的操作 (1)cvOr函数 其结构 void cvOr(//两个矩阵相应元素做或执行 const CvArr* src1,//矩阵1 const CvArr* src2,//矩阵2 CvAr ...

  2. [OpenCV] IplImage and Functions

    In this chapter, APIs will make U crazy. Good luck! Next, Review Linear Algebra.  Ref: http://blog.c ...

  3. opencv 手势识别

    我使用OpenCV2.4.4的windows版本+Qt4.8.3+VS2010的编译器做了一个手势识别的小程序. 本程序主要使到了Opencv的特征训练库和最基本的图像处理的知识,包括肤色检测等等. ...

  4. 提取肤色信息原理及操作——opencv

    网上也有很多的资料,讲述怎么提取肤色的,大致有5种方法.这几种方法转载http://blog.csdn.net/augusdi/article/details/8865275 第一种:RGB colo ...

  5. OpenCv结构和内容

    OpenCv的结构和内容 OpenCv源码组成结构其中包括cv, cvauex, cxcore, highgui, ml这5个模块 CV:图像处理和视觉算法 MLL:统计分类器 HighGui:GUI ...

  6. [OpenCV] Samples 16: Decompose and Analyse RGB channels

    物体的颜色特征决定了灰度处理不是万能,对RGB分别处理具有相当的意义. #include <iostream> #include <stdio.h> #include &quo ...

  7. [OpenCV] IplImage and Operation

    IplImage 一.资源 In this chapter, APIs will make U crazy. Good luck! Next, Review Linear Algebra. Ref:  ...

  8. 常用的OpenCV函数速查

    常用的OpenCV函数速查 1.cvLoadImage:将图像文件加载至内存: 2.cvNamedWindow:在屏幕上创建一个窗口: 3.cvShowImage:在一个已创建好的窗口中显示图像: 4 ...

  9. 模式识别开发之项目---基于opencv的手势识别

    我使用OpenCV2.4.4的windows版本+Qt4.8.3+VS2010的编译器做了一个手势识别的小程序. 本程序主要使到了Opencv的特征训练库和最基本的图像处理的知识,包括肤色检测等等. ...

  10. OpenCV —— 图像局部与部分分割(一)

    背景减除 一旦背景模型建立,将背景模型和当前的图像进行比较,然后减去这些已知的背景信息,则剩下的目标物大致就是所求的前景目标了 缺点 —— 该方法基于一个不长成立的假设:所有像素点是独立的 场景建模 ...

随机推荐

  1. C#微型网页查看工具

    using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...

  2. Python创建多进程,用Queue传递信息

    创建10个进程,分别计算0到1000各个区间的和,主进程汇总 __author__ = 'Administrator' # -*- coding:utf-8 -*- ''' @author:qiush ...

  3. OMCS ——卓尔不群的网络语音视频框架

    作为.NET平台上的开发人员,要开发出一个像样视频聊天系统或视频会议系统,非常艰难,这不仅仅是因为.NET对多媒体的支持比较有限,还因为网络语音视频这块涉及到了很多专业方面的技术,而.NET在这些方面 ...

  4. LeetCode OJ 33. Search in Rotated Sorted Array

    Suppose a sorted array is rotated at some pivot unknown to you beforehand. (i.e., 0 1 2 4 5 6 7 migh ...

  5. digitalocean解释:private networking和user data、IPv6是什么意思

    digitalocean vps后台新建droplet的时候,底部会有available settings,里面有四个选项,大多数用户不懂啥意思,我今天解释下: Private Networking ...

  6. $each $position $sort $slice

    $push 向数组中添加元素 $each 循环数据(循环添加数据到数组) $sort 对数组进行排序(1:升序:-1:降序.) $slice 对整个collection表进行数据裁减,用的时候一定要当 ...

  7. 大数据阶乘(The factorial of large data)

    题目描述 Description 阶乘是计算中的基础运算,虽然规则简单,但是位数太多了,也难免会出错.现在的问题是:给定任意位数(long long类型)的一个数,求它的阶乘,请给出正确结果.为提高速 ...

  8. [原]innerText与innerHTML区别

    window.onload = function () {             document.getElementById('btn1').onclick = function () {    ...

  9. html5学习(二)音频audio

    音频格式 当前,audio 元素支持三种音频格式:   IE 9 Firefox 3.5 Opera 10.5 Chrome 3.0 Safari 3.0 Ogg Vorbis   √ √ √   M ...

  10. DLL and LIB

    在StackOverflow中看到一个提问“what's the difference between DLL's and LIB's?” 有如下回复值得参考: 回复一: