- 浏览: 155715 次
-
最新评论
-
showwei2004:
博主吐血之作,挽救多少像我一样的新手,感激不尽。
【吐血写此博】Fedora14下eclipse进行android开发,ibus提示没有输入窗口的 解决办法
文章列表
正确写法:cvConvertScale(sumPalm, mean, 0.2, 0);
错误写法:
这里,如果您写成cvConvertScale(sumPalm, mean, 1/5, 0);, 则mean = sumPalm*0+0
这里1/5会当成0来处理。
另外,在访问CvMat数据时,比如用cvmGet 和 cvmSet ,矩阵的索引是从0、0开始的。
- 2012-05-28 08:58
- 浏览 1964
- 评论(0)
在工程中,很多时候需要读取文件,而文件名filename或者path是有一定规律的。这就要求当循环时,i发生变化,filename里的一部分也随着变化。
在matlab里,要实现这个功能很方便,可以用int2str(i)实现,将整形的i转成字符型。 那么在c或者c++下呢??最初用itoa,但我在linux下用不了这个函数。所以放弃了。看了很多资料,也没有直接回答的。
摸索了一天,终于解决。我将我的解决思路附下。
我要实现,当for循环时,路径path的值为 /....../01/01.jpg , /....../01/02.jpg, /....../01/03,jpg依次类推,当到01 ...
- 2012-05-26 16:44
- 浏览 643
- 评论(0)
matlab中的两矩阵点乘 .* 相当于OpenCV中的cvMul函数。
void cvMul(const CvArr* src1,const CvArr* src2,CvArr* dst,double scale=1);//两矩阵元素之间的简单乘法
- 2012-05-18 01:28
- 浏览 869
- 评论(0)
第一种:参考http://www.opencv.org.cn/index.php/Cxcore%E6%95%B0%E7%BB%84%E6%93%8D%E4%BD%9C#ConvertScale
用函数cvConvertScale();
void cvConvertScale( const CvArr* src, CvArr* dst, double scale=1, double shift=0 );
src
输入数组.
dst
输出数组
scale
比例因子.
shift
...
- 2012-05-17 10:21
- 浏览 772
- 评论(0)
Opencv中没有提供对矩阵进行操作的三角函数,我封装了三个,其他三角函数可以仿照此进行封装。
头文件中要包含
#include <cmath>
CvMat* cvAtan2Mat(CvMat *a, CvMat *b)
{
int rows = a->rows;
int cols = a->cols;
CvMat *out = cvCreateMat(rows, cols, a->type);
for(int i=0; i<rows; i++)
{
float* ptra = ( float*)(a-> ...
- 2012-05-16 09:39
- 浏览 783
- 评论(0)
详细解释:help meshgrid
meshgrid用于从数组a和b产生网格。生成的网格矩阵A和B大小是相同的。它也可以是更高维的。
[A,B]=Meshgrid(a,b)
生成size(b)Xsize(a)大小的矩阵A和B。它相当于a从一行重复增加到size(b)行,把b转置成一列再重复增加到size(a)列。因此命令等效于:
A=ones(size(b))*a;
B=b'*ones(size(a))
如下所示:
>> a=[1:2]
a =
1 2
>> b=[3:5]
b =
3 4 5
>> [A,B]=meshgrid ...
- 2012-05-16 01:59
- 浏览 384
- 评论(0)
1.初始化矩阵:
方式一、逐点赋值式:
CvMat* mat = cvCreateMat( 2, 2, CV_64FC1 );
cvZero( mat );
cvmSet( mat, 0, 0, 1 );
cvmSet( mat, 0, 1, 2 );
cvmSet( mat, 1, 0, 3 );
cvmSet( mat, 2, 2, 4 );
cvReleaseMat( &mat );
方式二、连接现有数组式:
double a[] = { 1, 2, 3, 4,
5, 6, 7, 8,
9, 10, 11, 12 };
CvMat mat = cvMat( ...
- 2012-05-15 09:32
- 浏览 587
- 评论(0)
打印一个3通道矩阵:
inline void cv3DoubleMatPrint( const CvMat* mat )
{
int i, j;
for( i = 0; i < mat->rows; i++ )
{
for( j = 0; j < mat->cols; j++ )
{
CvScalar scal = cvGet2D( mat, i, j );
printf( "(%f,%f,%f) ", scal.val[0], scal.val[1], scal.val[2] );
}
printf( "/n" ...
- 2012-05-15 09:32
- 浏览 874
- 评论(0)
目 录
1.初始化矩阵:. 1
2.IplImage 到cvMat的转换. 1
3.cvArr(IplImage或者cvMat)转化为cvMat 1
4.图像直接操作. 2
5.cvMat的直接操作. 3
6.间接访问cvMat 4
7.修改矩阵的形状——cvReshape的操作. 5
8.计算色彩距离. 7
OpenCV学习之CvMat的用法详解及实例
目 录
1.初始化矩阵:. 1
2.IplImage 到cvMat的转换. 1
3.cvArr(IplImage或者cvMat)转化为cvMat 1
4.图像直接操作. 2
5.cvMat的 ...
- 2012-05-11 09:12
- 浏览 488
- 评论(0)
注:clockwise=true 顺时针旋转
clockwise=false 逆时针旋转
IplImage* rotateImage(IplImage* src, int angle, bool clockwise)
{
angle = abs(angle) % 180;
if (angle > 90)
{
angle = 90 - (angle % 90);
}
IplImage* dst = NULL;
int width =
(double)(src->height * sin(angl ...
- 2012-05-11 09:05
- 浏览 1262
- 评论(0)
1. 矩阵数据类型
通用矩阵数据类型:<wbr><wbr><wbr><wbr><wbr>CV_<bit_depth>(S|U|F)C<number_of_channels><br>
其中,S表示带符号整数;<br><wbr><wbr><wbr><wbr><wbr>U表示无符号整数;<br><wbr><wbr><wbr><wbr> ...
- 2012-05-11 03:20
- 浏览 1330
- 评论(0)
最初用opencv的cvNorm函数,发现结果错的一塌糊涂! 多方查找没有cvNorm太多的介绍,后来仔细查阅,从cvNorm等价于Matlab的norm函数出发寻找线索,而显然matlab里norm函数不同与diff函数,无奈自己封装吧。
CvMat* DiffMat(CvMat *B) //求向量B的一阶差分 功能等价matlab里的diff
{
int cols = B->cols;
CvMat*Out = cvCreateMat(1, cols-1, B->type);
const float*pB = (const float*)(B->data ...
- 2012-05-10 19:59
- 浏览 983
- 评论(0)
一句话:CvScalar就是一个包含四个元素的结构体变量。
CvScalar定义可存放1—4个数值的数值,其结构如下。
typedef struct CvScalar
{
double val[4];
}
CvScalar;
------------------------------------------------
CvScalar pt;
如果使用的图像是1通道的,则pt.val[0]中存储数据
如果使用的图像是3通道的,则pt.val[0],pt.val[1],pt.val[2]中存储数据
==============================
cvGe ...
- 2012-05-10 13:01
- 浏览 1922
- 评论(0)
OpenCV矩阵操作(二)
#include "stdafx.h"
/*
功能:说明矩阵的一些操作方法
*/
#include "cv.h"//该头文件包含了#include "cxcore.h"
#include "highgui.h"
#include <stdio.h>
void PrintMat(CvMat *A); // 显示矩阵
void Gen ...
- 2012-05-10 13:00
- 浏览 581
- 评论(0)
一句话:用这些画图函数在RGB图上画,则能画出来彩色。 如果您在灰度图上画 则无论怎么设置color都只能画出黑白两种颜色。
就这一句话搞了我一个晚上,惭愧!
Opencv绘图函数:http://www.opencv.org.cn/index.php/Cxcore%E7%BB%98%E5%9B%BE%E5%87%BD%E6%95%B0
- 2012-05-10 12:57
- 浏览 3693
- 评论(0)