Dec 23, 2008

Blitz 笔记

数据在内存中的顺序:
1. 维数顺序:1st 为列方向,2nd 为行方向
2. C style 数据填充为维数从大到小,且 index 从 0 开始
3. Fortran style 数据填充为维数从小到大(和 Matlab 一样),index 从 1 开始
4. 可以任意规定维数顺序,只不过 c style 和 fortran 两种可以满足要求了

Deep copy 还是 reference:
拷贝构造为 reference,即生成一个新的 view
拷贝赋值为 deep copy
NOTE:
Widget A = B; 这是拷贝构造,不等同于

Widget A;
A=B;


Blitz 好像很慢,在linux 和windows都一样,相较于c语言
用 Blitz 三维数组和 opencv 三维数组,后者快得不是一点点
原因不清楚(编译还是有什么 trick)
具体参考
D:\workspace\eventdetect
另外里面有 CvMatNd 和 blitz 的互换


事实证明 boost
boost::multi_array
速度也不行,还是 c 吧

0 comments: