HALCON数据结构之矩阵

embedded/2024/10/21 1:25:39/

1.1矩阵的创建、设置和访问

*1、矩阵的创建*创建单位矩阵
create_matrix (3, 3, 'identity', MatrixID1)*创建一个全是常数的矩阵
create_matrix (3, 3, 7, MatrixID2)*为主对角线上的所有元素都被设置为参数Value的值
create_matrix (3, 3, [3,7,1], MatrixID3)*为矩阵的所有元素设置不同的值
create_matrix (3, 3, [3,1,-2,-5,7,2,-9,-4,1], MatrixID4)*沿着行列方向复制矩阵
repeat_matrix (MatrixID4, 2, 1, MatrixRepeatedID)*清除矩阵
clear_matrix (MatrixRepeatedID)*2、设置矩阵create_matrix (1, 3, [3], VectorID1)*用Vector矩阵元素覆盖原始矩阵的对角元素
set_diagonal_matrix (MatrixID1, VectorID1, 0)create_matrix (1, 2, [-2,6], VectorID2)
create_matrix (3, 4, 0, MatrixID5)*用Vector矩阵元素覆盖原始矩阵的对角元素
set_diagonal_matrix (MatrixID5, VectorID2, 2)*为输入矩阵的所有元素设置值
set_full_matrix (MatrixID5,[3,-1,2,-5,7,2,-9,-4,1,-2,6,8])*将输入矩阵在指定行列处的元素设置为Value指定的值
set_value_matrix (MatrixID5, [0,1,2], [0,1,2], [-100,-200,-300])create_matrix (2, 2, [100,200,300,400], MatrixSubID1)*用MatrixSub子矩阵在指定位置处覆盖原始矩阵
set_sub_matrix (MatrixID5, MatrixSubID1, 0, 1)*3、访问矩阵*获取矩阵的对角元素
get_diagonal_matrix (MatrixID5, 0, VectorID3)*获取矩阵中指定位置处的元素值
get_value_matrix (MatrixID5, [1,2,1], [1,0,3], Value)*返回矩阵中所有元素的值
get_full_matrix (MatrixID5, Values)*获取指定位置处的子矩阵
get_sub_matrix (MatrixID5, 0, 1, 3, 2, MatrixSubID2)

1.2矩阵的特征

*为矩阵的所有元素设置不同的值
create_matrix (3, 3, [3,1,-2,-5,7,2,-9,-4,1], MatrixID1)*1、计算矩阵的行列式determinant_matrix (MatrixID1, 'general', Value)*2、获取矩阵行数和列数get_size_matrix (MatrixID1, Rows, Columns)*3、获取矩阵元素的最大值*获取矩阵所有元素的最大值
max_matrix (MatrixID1, 'full', MatrixMaxID1)*按行获取矩阵元素的最大值
max_matrix (MatrixID1, 'rows', MatrixMaxID2)*按列获取矩阵元素的最大值
max_matrix (MatrixID1, 'columns', MatrixMaxID3)*4、获取矩阵元素的最小值*按列获取矩阵元素的最小值
min_matrix (MatrixID1, 'columns', MatrixMinID)*5、计算矩阵元素的平均值*按列获取矩阵元素的平均值
mean_matrix (MatrixID1, 'columns', MatrixMeanID)*6、计算矩阵的元素和*按列计算矩阵的元素和
sum_matrix (MatrixMeanID, 'columns', MatrixSumID)*7、计算矩阵范数
norm_matrix (MatrixSumID, '2-norm', Value1)

1.3矩阵的运算

*创建矩阵MatrixID1
create_matrix (3, 3, [1,2,-1,3,-2,6,4,2,-3], MatrixID1)*创建矩阵MatrixID2
create_matrix (3, 3, [3,3,3], MatrixID2)*创建矩阵MatrixID3
create_matrix (3, 1, [1,2,3], MatrixID3)*1、矩阵加法(对应元素相加)add_matrix (MatrixID1, MatrixID2, MatrixSumID)*2、矩阵减法(对应元素相减)sub_matrix (MatrixID1, MatrixID2, MatrixSubID)*3、矩阵乘法mult_matrix (MatrixID1, MatrixID2, 'AB', MatrixMultID1)*4、矩阵对应元素相乘mult_element_matrix (MatrixID1, MatrixID2, MatrixMultID2)*5、矩阵对应元素相除div_element_matrix (MatrixID2, MatrixID1, MatrixDivID)*6、求矩阵的逆矩阵invert_matrix (MatrixID1, 'general', 0, MatrixInvID)*7、求方程组的解
solve_matrix (MatrixID1, 'general', 0, MatrixID3, MatrixResultID)

http://www.ppmy.cn/embedded/129144.html

相关文章

模型的部署:服务端与客户端建立连接(Flask)

目录 一、服务端部署(使用Flask) 1.安装Flask 2.加载模型(这里以识别图片的类型模型为例) 3.定义API端点 4.运行Flask应用 二、客户端请求 1.安装HTTP客户端库 2.发送请求 请求成功示例: 监控与日志 总结 在…

C语言实践中的补充知识 Ⅱ

一、在C语言中,% 7.2f 是一个格式说明符,通常用于printf或sprintf等函数中,用于控制浮点数的输出格式。 这里的 % 是格式说明符的开始符号。 7 表示字段宽度。这意味着输出的浮点数将至少占用7个字符的宽度。如果浮点数的实际宽度小于7个字符…

【Flutter】页面布局:流式布局(Wrap、Flow)

在移动应用开发中,布局是非常重要的一部分,尤其是当我们需要处理动态或自适应的内容时。Flutter 提供了几种布局方式来帮助开发者处理复杂的 UI 场景,其中 Wrap 和 Flow 是常用的流式布局组件。它们在处理多个子组件时表现优越,尤…

智发展 智飞跃 亚信安全与新华三深化战略合作

10月16日,亚信安全与新华三集团共同宣布,双方正式签署战略合作协议,双方将基于各自在硬件及软件安全领域的能力和优势,在产品、解决方案、市场拓展等多个领域深入合作,赋能千行百业数字化转型与变革。 亚信安全CEO马红…

【Git】Gitlab进行merge request的时候,出现待合并分支合并了主分支的问题的解决

最近在公司开始用merge request进行代码合并了。 然后不知道为啥,如果待合并分支(A)进行merge request到主分支(B)的时候,如果A和B有冲突,然后我在gitlab上使用页面进行冲突的解决,比…

vector的模拟实现

1.迭代器失效 在上一篇中因为插入导致的扩容,扩容则pos指向的是之前的空间,导致了野指针的出现,没有扩容,使pos的位置意义改变,由于数据挪动,pos不再指向原来的位置,认为上面俩种迭代器失效。(…

LeetCode两数相加

给你两个 非空 的链表,表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 数字。 请你将两个数相加,并以相同形式返回一个表示和的链表。 你可以假设除了数字 0 之外,这两个数都不会以 0 …

Gin框架操作指南08:日志与安全

官方文档地址(中文):https://gin-gonic.com/zh-cn/docs/ 注:本教程采用工作区机制,所以一个项目下载了Gin框架,其余项目就无需重复下载,想了解的读者可阅读第一节:Gin操作指南&#…