栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

适用于Android的OpenCV中的基本矩阵乘法

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

适用于Android的OpenCV中的基本矩阵乘法

您现在基本上是在尝试执行以下操作:

[ 0 ]   [ 0 1 2 ][ 1 ] * [ 3 4 5 ][ 2 ]   [ 6 7 8 ]

在这里*是乘法。矩阵乘法不能用这种方式完成。在这里阅读矩阵乘法。

您要执行的操作是:

 [ 0 1 2 ][ 0 1 2 ] * [ 3 4 5 ] [ 6 7 8 ]

为了使代码正常工作,请进行以下更改:

Mat mat1 = new Mat(1, 3, CvType.CV_64F); // A matrix with 1 row and 3 columnsmat1.put(0, 0, 2.0); // Set row 1 , column 1mat1.put(0, 1, 0.5); // Set row 1 , column 2mat1.put(0, 2, 1.0); // Set row 1 , column 3

编辑

另外,您正在使用方法

Core.multiply
。在OpenCv的文档中它提到:函数乘法计算两个矩阵的每个元素的乘积。如果要查找矩阵产品而不是按元素的产品,请参阅Core.gemm()。

该函数

gemm(src1, src2, alpha, src3, beta, dest, flags)
根据以下函数执行乘法:

dest = alpha * src1 * src2 + beta * src3

基本矩阵乘法(在您的情况下)是通过以下方式完成的:

Core.gemm(mat2, mat1, 1, NULL, 0, mat3, 0);


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/506306.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号