OpenCV3第一章练习

1.数据类型转换

    float f = -12.9876f;
    float ff = cvFloor(f);     //近似一个浮点数x到不大于x的最近的整数(向下取整)
    float fabs = cv::abs(f); //绝对值
    float fround = cvRound(f);//近似一个浮点数x到最近的整数
    float fceil = cvCeil(f);        //近似一个浮点数到不小于x的最近的整数(向上取整)
    cout<<"f="<<f<<",ff="<<ff<<",abs="<<fabs<<",round="<<fround<<",ceil="<<fceil<<endl;

输出结果:

f=-12.9876,ff=-13,abs=12.9876,round=-13,ceil=-12

2.矩阵的乘法

cv::Matx33f matx33f{1,1,1,2,2,2,3,3,3,};
    cv::Matx33f matx33f2{1,1,1,1,1,1,1,1,1,};
    cv::Vec3f vec3f{1,2,3};

    //matx33f*vec3f;
    cv::Matx33f matx33f3 = matx33f*matx33f2;
    cv::Vec3f vec3f2 = matx33f*vec3f;
    cout<<"matx33f="<<matx33f<<endl;
    cout<<"matx33f2="<<matx33f2<<endl;
    cout<<"matx33f3="<<matx33f3<<endl;
    cout<<"vec3f1="<<vec3f<<endl;
    cout<<"vec3f2="<<vec3f2<<endl;

C=A*B

C(i,j)=A(i行)*B(j列)

 

matx33f=[1, 1, 1;
 2, 2, 2;
 3, 3, 3]
matx33f2=[1, 1, 1;
 1, 1, 1;
 1, 1, 1]
matx33f3=[3, 3, 3;
 6, 6, 6;
 9, 9, 9]
vec3f1=[1, 2, 3]
vec3f2=[6, 12, 18]

向量是行 [1*1 + 1*2 + 1*3, 2*1 + 2*2 + 2*3, 3*1 + 3*2 + 3*3]  

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值