// ConsoleApplication11.cpp : Defines the entry point for the console application.
//

#include "stdafx.h"
#include <opencv2/opencv.hpp>
#include <iostream>
using namespace cv;
using namespace std;

int _tmain(int argc, _TCHAR* argv[])
{
CvMat *mat = cvCreateMat(3, 4, CV_32FC1);
cvRange(mat, 0.0, 100.0);
CvRNG rng;
cvRandShuffle(mat, &rng, 1.0);
for (int i = 0; i < mat->rows; i++){
for (int j = 0; j < mat->cols; j++){
printf("%f ", cvmGet(mat, i, j));
}
printf("\n");
}
printf("\n");

CvMat *mat1 = cvCloneMat(mat);
CvMat *mat2 = cvCloneMat(mat);
cvSub(mat, mat1, mat2);
for (int i = 0; i < mat->rows; i++){
for (int j = 0; j < mat->cols; j++){
printf("%f ", cvmGet(mat2, i, j));
}
printf("\n");
}
printf("\n");

Scalar sca = cvSum(mat);
Scalar sca1 = cvAvg(mat);

cvPow(mat, mat2, 3.3);
for (int i = 0; i < mat->rows; i++){
for (int j = 0; j < mat->cols; j++){
printf("%f ", cvmGet(mat2, i, j));
}
printf("\n");
}
printf("\n");

cvLog(mat, mat2);
for (int i = 0; i < mat->rows; i++){
for (int j = 0; j < mat->cols; j++){
printf("%f ", cvmGet(mat2, i, j));
}
printf("\n");
}
printf("\n");

cvExp(mat, mat2);
for (int i = 0; i < mat->rows; i++){
for (int j = 0; j < mat->cols; j++){
printf("%f ", cvmGet(mat2, i, j));
}
printf("\n");
}
printf("\n");

cvAbsDiff(mat, mat1, mat2);
for (int i = 0; i < mat->rows; i++){
for (int j = 0; j < mat->cols; j++){
printf("%f ", cvmGet(mat2, i, j));
}
printf("\n");
}
printf("\n");

cvAbsDiffS(mat, mat2, Scalar(255, 0, 0));
for (int i = 0; i < mat->rows; i++){
for (int j = 0; j < mat->cols; j++){
printf("%f ", cvmGet(mat2, i, j));
}
printf("\n");
}
printf("\n");

cvMax(mat, mat1, mat2);
for (int i = 0; i < mat->rows; i++){
for (int j = 0; j < mat->cols; j++){
printf("%f ", cvmGet(mat2, i, j));
}
printf("\n");
}
printf("\n");

cvMaxS(mat, 50.0, mat2);
for (int i = 0; i < mat->rows; i++){
for (int j = 0; j < mat->cols; j++){
printf("%f ", cvmGet(mat2, i, j));
}
printf("\n");
}
printf("\n");

cvMin(mat, mat1, mat2);
for (int i = 0; i < mat->rows; i++){
for (int j = 0; j < mat->cols; j++){
printf("%f ", cvmGet(mat2, i, j));
}
printf("\n");
}
printf("\n");

cvMinS(mat, 1.5, mat2);
for (int i = 0; i < mat->rows; i++){
for (int j = 0; j < mat->cols; j++){
printf("%f ", cvmGet(mat2, i, j));
}
printf("\n");
}
printf("\n");

IplImage *pl = cvCreateImage(cvSize(50, 50), IPL_DEPTH_64F, 3);
IplImage *pl1 = cvCreateImage(cvSize(50, 50), IPL_DEPTH_64F, 1);
IplImage *pl2 = cvCreateImage(cvSize(50, 50), IPL_DEPTH_64F, 1);
IplImage *pl3 = cvCreateImage(cvSize(50, 50), IPL_DEPTH_64F, 1);
cvSplit(pl, pl1, pl2, pl3, NULL);

return 0;
}

版权声明:本文为博主原创文章,未经博主允许不得转载。

c++ opencv 数学函数示例的更多相关文章

  1. SQL Server数学函数

    数学函数 1.计算绝对值ABS ABS函数对一个数值表达式结果计算绝对值(bit数据类型除外),返回整数. 语法结构: ABS(数值表达式) 返回值:与数值表达式类型一致的数据 示例: ) --输出 ...

  2. Oracle SQL函数之数学函数

    Oracle SQL函数之数学函数 ABS(x) [功能]返回x的绝对值 [参数]x,数字型表达式 [返回]数字 SQL> SELECT ABS(),ABS(-) FROM DUAL; ABS( ...

  3. VB.Net常用数学函数整理

      System.Math 类中定义了用于数学计算的函数.Math 类包括三角函数.对数函数和其他常用数学函数.下列函数是在 System 名称空间的 Math 类中定义的函数. 注意:要使用这些函数 ...

  4. MySQL 数学函数

    MySQL 数学函数 所有的数学函数在发生错误的情况下,均返回 NULL. -元减.改变参数的符号 mysql> SELECT - 2; -> -2 注意,如果这个操作符被用于一个 BIG ...

  5. mysql 函数示例(转)

    MySQL函数大全及用法示例 1.字符串函数ascii(str)   返回字符串str的第一个字符的ascii值(str是空串时返回0)  mysql> select ascii('2');   ...

  6. MySql常用函数数学函数、加密函数等(转—收藏)

        MySql函数众多,这里只是列举了一部分常用的函数.   一.数学函数 ABS(x)                                         // 返回x的绝对值 BI ...

  7. Python 绘制你想要的数学函数图形

    Python 非常热门,但除非工作需要没有刻意去了解更多,直到有个函数图要绘制,想起了它.结果发现,完全用不着明白什么是编程,就可以使用它完成很多数学函数图的绘制. 通过以下两个步骤,就可以进行数学函 ...

  8. Lua的函数的定义、math数学函数、lua字符串的处理、lua支持的字符串类、模式串中的特殊字符_学习笔记04

    Lua的函数的定义.math数学函数 定义函数 function [function name] (param1,param2) [function code] --定义一个函数用来求的两个数字的和 ...

  9. opencv-6-图像绘制与opencv Line 函数剖析

    opencv-6-图像绘制与opencv Line 函数剖析 opencvc++qt 开始之前 越到后面, 写的越慢, 之前还抽空去看了下 学堂在线那篇文章提供的方法, 博客第一个人评论的我, 想想还 ...

随机推荐

  1. 偶然遇见:Cayley定理

    看到\(purfer\)序列板子后,想到这个名词在哪见过,于是找到了一个题,还带出一个: \(T1\). 题目链接:P4430 小猴打架 开始极其懵逼,考虑过大力容斥,但还是失败了,原来是: Cayl ...

  2. 「NOI2009」二叉查找树

    传送门 Luogu 解题思路 看一眼题面,显然这是一颗 treap ,考虑到这棵 treap 的中序遍历总是不变的,所以我们就先把所有点按照数据值排序,求出 treap 的中序遍历,然后还可以观察到, ...

  3. C语言学习从入门到精通书籍,10万读者都认可

    C语言程序设计从入门到精通 10万读者认可的编程图书精粹 零基础自学编程的入门图书 详解C语言编程思想和核心技术 很多初学者,对C语言.c++的概念都是模糊不清的,C语言.c++是什么,能做什么,学的 ...

  4. 通过JAVA反射修改JDK1.6*当中DNS缓存内容

    时间 2012-05-28 17:09:03  Taobao QA Team原文  http://qa.taobao.com/?p=15523 为了实现性能压测时的域名动态绑定功能,尝试通过java反 ...

  5. BUU re1

    先shift+F12定位到关键句 然后crtl+X查看函数的交叉调用 定位到该函数处 F5查看伪代码 插入一段re1 re2题中都遇到的技巧: 很多时候出现的数字是asc码,热键R可以把数字转化成字母 ...

  6. vld扩展

    PHP代码的执行实际上是在执行代码解析后的各种opcode.通过vld扩展可以很方便地看到执行过程中的opcode. 一.安装vld扩展 git clone https://github.com/de ...

  7. 基于LAMP实现后台活动发布和前端扫码签到系统

    目的 无论是公司.学校和社会团体,都会举办各式各样的活动,比如运动会.部门会议.项目会议.野炊.团建等.作为团队管理者来讲,当然希望能够把这类活动转移到线上形成完整的系统,类似于电子流的形式.本文以学 ...

  8. centos7下安装maven

    步骤1:在home目录下解压apache-maven-3.5.0-bin.tar.gz安装包 [root@model ~]# -bin.tar.gz 步骤2:创建/maven目录并将解压后的文件夹移至 ...

  9. login SMTP send mail error : Unable to read data from the transport connection: net_io_connectionclosed

    client.Credentials = new NetworkCredential(sSMTPuser, sSMTPpass); client.Credentials = new NetworkCr ...

  10. 人脸识别 API Key和Secret Key作用

    App key简称API接口验证序号,是用于验证API接入合法性的.接入哪个网站的API接口,就需要这个网站允许才能够接入,如果简单比喻的话:可以理解成是登陆网站的用户名 App Secret简称AP ...