当前位置: 首页 > news >正文

【四】3D Object Model之测量Features——get_object_model_3d_params()算子


😊😊😊欢迎来到本博客😊😊😊

🌟🌟🌟 Halcon算子太多,学习查找都没有系统的学习查找路径,本专栏主要分享Halcon各类算子含义及用法,有时间会更新具体案例。

😊😊😊 具体食用方式:可以点击本专栏【Halcon算子快速查找】–>搜索你要查询的算子名称;或者点击Halcon算子汇总博客,即可食用。

🎁🎁🎁支持:如果觉得博主的文章还不错或者您用得到的话,可以悄悄关注一下博主哈,如果三连收藏支持就更好啦!这就是给予我最大的支持!😙😙😙


文章目录

  • 学习目标
  • 学习内容
    • 1、get_object_model_3d_params()
      • Halcon例程
  • 【3D Object Model之测量Features】 待更新算子
  • 汇总

学习目标

  • get_object_model_3d_params()

学习内容

算子简介

函数名解释
get_object_model_3d_params()返回三维对象模型的属性。

1、get_object_model_3d_params()

get_object_model_3d_params( : : ObjectModel3D, GenParamName : GenParamValue)

  函数说明:三维对象模型由一组属性和元数据组成,get_object_model_3d_params允许访问给定3d对象模型的属性和元数据。请求的属性或元数据的名称在通用参数GenParamName中传递,相应的值在GenParamValue中返回。
  如果请求的属性或元数据不可用,则会引发异常。get_object_model_3d_params支持同时访问多个三维对象模型和多个属性
  请注意:属性或元数据可以具有不同的长度。一些标准属性具有定义的长度,如后面介绍的属性描述。其他属性的长度取决于实际的三维对象模型,可以通过将参数GenParamName设置为“num_points”、“num_triangles”、“num_polygons”或“num_lines”来查询。因此,要获得标准属性“point_coord_x”的长度,请将GenParamName设置为“num_points”。

  函数参数:
    ObjectModel3D输入 3D对象模型句柄;
    GenParamName输入为三维对象模型查询的常规属性的名称;默认: ‘num_points’;参考: 'blue', 'bounding_box1', 'center', 'diameter_axis_aligned_bounding_box', 'extended_attribute_names', 'extended_attribute_types', 'green', 'has_distance_computation_data', 'has_extended_attribute', 'has_lines', 'has_point_normals', 'has_points', 'has_polygons', 'has_primitive_data', 'has_primitive_rms', 'has_segmentation_data', 'has_shape_based_matching_3d_data', 'has_surface_based_matching_data', 'has_triangles', 'has_xyz_mapping', 'lines', 'mapping_col', 'mapping_row', 'mapping_size', 'neighbor_distance', 'num_extended_attribute', 'num_lines', 'num_neighbors', 'num_neighbors_fast', 'num_points', 'num_polygons', 'num_primitive_parameter_extension', 'num_triangles', 'original_point_indices', 'point_coord_x', 'point_coord_y', 'point_coord_z', 'point_normal_x', 'point_normal_y', 'point_normal_z', 'polygons', 'primitive_parameter', 'primitive_parameter_extension', 'primitive_parameter_pose', 'primitive_pose', 'primitive_rms', 'primitive_type', 'red', 'reference_point', 'score', 'triangles'
    GenParamValue输出通用参数值;

属性名解释
'point_coord_x'一组3D点的x坐标(长度可以通过num_points查询)。该属性通常从运算符xyz_to_object_model_3dread_object_model_3d获得。
'point_coord_y'一组3D点的y坐标(长度可以通过num_points查询)。该属性通常从运算符xyz_to_object_model_3dread_object_model_3d获得。
'point_coord_z'一组3D点的z坐标(长度可以通过num_points查询)。该属性通常从运算符xyz_to_object_model_3dread_object_model_3d获得。
'point_normal_x'一组3D点的法线x分量(长度可以通过num_points查询)。该属性通常从操作符smooth_object_model_3d中获得。
'point_normal_y'一组3D点的法线y分量(长度可以通过num_points查询)。该属性通常从操作符smooth_object_model_3d中获得。
'point_normal_z'一组3D点的法线z分量(长度可以通过num_points查询)。该属性通常从操作符smooth_object_model_3d中获得。
'score'一组3D点的分数(长度可以通过num_points查询)。该属性通常从操作符reconstruct_surface_stereo中获得。
'red'一组3D点的red通道(长度可以通过num_points查询)。该属性通常从操作符reconstruct_surface_stereo中获得。
'green'一组3D点的green通道(长度可以通过num_points查询)。该属性通常从操作符reconstruct_surface_stereo中获得。
'blue'一组3D点的blue通道(长度可以通过num_points查询)。该属性通常从操作符reconstruct_surface_stereo中获得。
'mapping_row'3D点集的二维映射的行组件。(长度可以通过num_points查询)。原始图像的高度可通过mapping_size查询)。该属性通常从运算符xyz_to_object_model_3d中获得。
'mapping_col'3D点集的二维映射的列组件。(长度可以通过num_points查询)。原始图像的高度可通过mapping_size查询)。该属性通常从运算符xyz_to_object_model_3d中获得。
'mapping_size'原始图像的大小。返回一个具有两个条目宽度和高度的元组。
'triangles'按以下顺序表示三角形的三维点的索引前三个值(返回值0,1,2)表示第一个三角形接下来的三个值(返回值3、4、5)表示第二个三角形等所有索引都对应于3D点的坐标。可以访问3D点的坐标,例如,将通用参数GenParamName分别设置为值“point_coord_x”、“point_cord_y”和“point_corde_z”。此属性的长度相当于三角形数量的三倍,可以使用“num_triangles”查询三角形。该属性通常从操作符triangulate_object_model_3dread_object_model_3d获得。
'polygons'按以下顺序表示多边形的三维点的索引第一个返回值包含第一个多边形的点数n。以下值(返回值1,2,…,n)表示第一个多边形的点的索引。下一个值(返回值n+1)包含第二个多边形的点数m。以下m个返回值(返回值n+2,n+3,…,n+1+m)表示第二多边形等的点的索引。所有索引对应于3D点的坐标。可以访问3D点的坐标,例如,将通用参数GenParamName分别设置为值“point_coord_x”、“point_cord_y”和“point_corde_z”。可以使用“num_polygons”查询每个三维对象模型的多边形数。该属性通常从操作符read_object_model_3d中获得。
'lines'按以下顺序表示多段线的三维点的索引第一个返回值包含第一条多段线点数n。以下值(返回值1,2,…,n)表示第一条多段线的点的索引。下一个值(返回值n+1)包含第二条多段线的点数m。以下m个值(返回值n+2,n+3,…,n+1+m)表示第二折线等的点的索引。所有索引对应于3D点的坐标。可以访问3D点的坐标,例如,将通用参数GenParamName分别设置为值“point_coord_x”、“point_cord_y”和“point_corde_z”。可以使用“num_lines”查询每个三维对象模型的行数。该属性通常从操作符intersect_plane_object_model_3d中获得。
'diameter_axis_aligned_bounding_box'一组3D点的直径,定义为最小封闭轴平行长方体的对角线长度(请参见参数’bounding_box1’)。此属性的长度为1。
'center'该组3D点的中心的3D坐标。这些坐标是最小封闭轴平行长方体的中心(请参见参数“bounding_box1”)。此属性的长度为3。如果三维对象模型中没有三维坐标,则以下规则有效
(1) 如果三维对象模型是圆柱体类型的基本体(请参见gen_cylinder_object_model_3D),并且存在扩展,则返回扩展之间的中心点。如果没有扩展,则返回姿势的平移参数;
(2) 如果三维对象模型是类型为平面的基元(请参考gen_plane_object_model_3D),并且存在扩展,则根据扩展计算平面的重心。如果没有扩展,则返回姿势的平移参数;
(3) 如果三维对象模型是球体或长方体类型的基本体(请参考gen_sphere_object_model_3Dgen_box_object_model_3D),则返回对象模型的中心点。
'original_point_indices'不同三维对象模型中三维点的索引(长度可以通过num_points查询)。该属性通常从操作符triangulate_object_model_3d中获得。
'primitive_type'基元类型(例如,从操作符fit_primitives_object_model_3d获得)。球体的返回值为“sphere”。圆柱体的返回值为“cylinder”。平面的返回值为“plane”。box的返回值为“box”。此属性的长度为1。
'primitive_parameter'基元的参数(例如,从操作符fit_primitives_object_model_3d获得)。该属性的长度取决于“primitive_type”,对于每个三维对象模型,长度在4到10之间。
(1) 如果三维对象模型是圆柱体类型的基元(请参见gen_cylinder_object_model_3D),则返回值为中心[x_center,y_center,z_center](x-,y-,z-)坐标、圆柱体主轴[x_axis,y_axis,z_axis](x-,y-,z-)方向以及圆柱体的半径[radius]。顺序为[x_center,y_center,z_center,x_axis,y_axis,z_axis,radius]
(2) 如果三维对象模型是类型为球体的基元(请参见gen_sphere_object_model_3D),则返回值为球体的中心[x_center,y_center,z_center](x-,y-,z-)坐标和半径[radius]。顺序为[x_center,y_center,z_center,radius]
(3) 如果3D对象模型是平面类型的基元(参见gen_plane_object_model_3D),则返回hessian法线形式的4个参数,即单位法线(x-,y-,z-)向量[x,y,z]和平面与坐标系原点的正交距离(d)。顺序是[x,y,z,d]。距离(d)的符号决定了原点所在平面的一侧。
(4) 如果三维对象模型是长方体类型的基元(gen_box_object_model_3D),则返回值为长方体的三维姿势(平移、旋转、旋转类型)和半边长(长度1、长度2、长度3)。length1是长方体沿姿势的x轴的长度。length2是长方体沿着姿势的y轴的长度。length3是长方体沿着姿势的z轴的长度。顺序为[trans_x,trans_y,trans_z,rot_x,rot_y,rot_z,rot_type,length1,length2,length3]。有关三维姿势和相应变换矩阵的详细信息,请参见操作符create_pose
'primitive_parameter_pose'具有3D姿势格式的基元的参数(例如,从操作符fit_primitives_object_model_3D获得)。对于所有类型的基本体,返回值都是3D姿势(平移、旋转、旋转类型)。有关三维姿势和相应变换矩阵的详细信息,请参见操作符create_pose。该属性的长度取决于“primitive_type”,对于每个三维对象模型,该长度在7到10之间。
(1) 如果三维对象模型是圆柱体类型的基元(请参见gen_cylinder_object_model_3D),则还会返回圆柱体的半径[radius]。顺序为[trans_x,trans_y,trans_z,rot_x,rot_y,rot_z,rot_type,radius]
(2) 如果三维对象模型是类型为球体的基元(请参见gen_sphere_object_model_3D),则还会返回球体的半径[radius]。顺序为[trans_x,trans_y,trans_z,rot_x,rot_y,rot_z,rot_type,radius]
(3) 如果三维对象模型是类型为平面的基元(请参见gen_plane_object_model_3D),则顺序为[trans_x,trans_y,trans_z,rot_x,rot_y,rot_z,rot_type]
(4) 如果三维对象模型是长方体类型的基元(请参见gen_box_object_model_3D),则还会返回长方体的半边长(length1、length2、length3)length1是长方体沿姿势的x轴的长度。length2是长方体沿着姿势的y轴的长度。length3是长方体沿着姿势的z轴的长度。顺序为[trans_x,trans_y,trans_z,rot_x,rot_y,rot_z,rot_type,length1,length2,length3]
'primitive_pose'具有3D姿势格式的基元的参数(例如,从操作符fit_primitives_object_model_3D获得)。对于所有类型的基本体,返回值都是3D姿势(平移、旋转、旋转类型)。有关三维姿势和相应变换矩阵的详细信息,请参见操作符create_pose。对于每个三维对象模型,该属性的长度为7。顺序为[trans_x,trans_y,trans_z,rot_x,rot_y,rot_z,rot_type]
'primitive_parameter_extension'圆柱体和平面类型的基元的范围(例如,从操作符fit_primitives_object_model_3d获得)。此属性的长度取决于“primitive_type”,可以使用“num_primitive_parameter_extension”进行查询。
(1) 如果三维对象模型是圆柱体类型的基本体(请参见gen_cylinder_object_model_3D),则返回值为圆柱体的范围(MinExtent、MaxExtent)。它们按[MinExtent,MaxExtent]的顺序返回。MinExtent表示圆柱体在旋转轴负方向上的长度。MaxExtent表示圆柱体在旋转轴正方向上的长度。
(2) 如果三维对象模型是平面类型的基元(使用fit_primitives_object_model_3D创建),则返回值是关于拟合平面的共面点的元组。顺序为[点1的x坐标,点2的x坐标、点3的x坐标…、点1的y坐标、点2的y坐标,点3的y坐标…]。坐标值描述了凸包的支撑点。这是基于拟合平面上有助于拟合的那些点的投影来计算的。如果平面是使用gen_plane_object_model_3d创建的,则会返回用于创建平面的所有点(XExtent、YExtent)
'primitive_rms'基元的二次残差(例如,从算子fit_primitives_object_model_3d获得)。此属性的长度为1。
'reference_point'用于基于形状的3D匹配的所准备的3D形状模型的参考点的3D坐标。参考点是最小封闭轴平行长方体的中心(参见参数“bounding_box1”)。此属性的长度为3。
'bounding_box1'最小封闭轴平行长方体(min_x,min_y,min_z,max_x,max_y,max_z)。此属性的长度为6。
'num_points'点数。此属性的长度为1。
'num_triangles'三角形的数量。此属性的长度为1。
'num_polygons'多边形的数量。此属性的长度为1。
'num_lines'线的数量。此属性的长度为1。
'num_primitive_parameter_extension'基元的扩展数据的数量。此属性的长度为1
'has_points'三维点是否存在。此属性的长度为1。
'has_point_normals'三维点法线是否存在。此属性的长度为1。
'has_triangles'三角形是否存在。此属性的长度为1。
'has_polygons'多边形是否存在。此属性的长度为1。
'has_lines'线是否存在。此属性的长度为1。
'has_xyz_mapping'是否存在3D点到图像坐标的映射。此属性的长度为1。
'has_shape_based_matching_3d_data'是否存在用于基于形状的3D匹配的形状模型。此属性的长度为1。
'has_distance_computation_data'是否存在用于三维距离计算的预计算数据结构。此属性的长度为1。数据结构可以使用prepare_object_model_3d创建,目的是“distance_computerion”。它由操作符distance_object_model_3d使用。
'has_surface_based_matching_data'是否存在用于基于曲面的匹配的数据。此属性的长度为1。
'has_segmentation_data'是否存在用于3D分割的数据。此属性的长度为1。
'has_primitive_data'原始数据是否存在。此属性的长度为1。
'has_primitive_rms'基元的二次残差是否存在。此属性的长度为1。
'neighbor_distance'——
'neighbor_distance N'对于每个点,第N个最近点的距离。 N必须是一个正整数,默认情况下为25。对于每个点,所有其他点都会根据它们的距离进行排序,并返回第N个点的距离。
'num_neighbors X'对于每个点,距离最多为X的邻居的数量
'num_neighbors_fast X'对于每个点,距离最多为X的邻居的近似数量。使用体素来近似距离,与“num_neighbors”相比,处理速度更快。

  扩展属性是指可以通过特殊运算符(例如distance_object_model_3d从标准属性派生的属性,或用户定义的属性。操作员set_object_model_3d_attrib可以创建用户定义的属性。可以访问以下扩展属性和元数据:

属性名解释
'&attribute_name'扩展属性的用户定义名称。请注意,此名称必须以“&”开头,例如“&my_attrib”。请求的扩展属性的数据在GenParamValue中返回。返回数据的顺序与在GenParamName中指定的属性名称的顺序相同。
'extended_attribute_names'所有扩展属性的名称。对于每个扩展属性名称,都会返回一个值。
'extended_attribute_types'所有扩展属性的类型。对于每个扩展属性类型,都会返回一个值,从而将这些值排序为扩展属性名称的输出。
'has_extended_attribute'至少存在一个扩展属性。对于每个三维对象模型,都会返回一个值。
'num_extended_attribute'扩展属性的数量。对于每个三维对象模型,都会返回一个值。

Halcon例程

vector_to_hom_mat3d.hdev							从点对应关系近似不同类型的仿射三维变换
triangulate_object_model_3d_xyz_mapping.hdev		对三维对象模型进行三角化(二维映射)
simplify_object_model_3d.hdev						简化复杂的三维对象模型
select_points_object_model_3d_by_density.hdev		基于点密度删除三维对象模型中有噪声的部分
select_points_object_model_3d.hdev					使用阈值删除三维对象模型的部分
select_object_model_3d.hdev							根据体积和直径选择三维对象模型
segment_object_model_3d.hdev						将2.5D数据分段为圆柱形或球形部分
scene_flow_globe.hdev								计算两个立体图像对之间的3D场景流,以恢复对象在3D中的运动
sample_object_model_3d.hdev							使用采样减少三维对象模型中的点数
reduce_object_model_3d_to_visible_parts.hdev		删除三维对象模型中从定义的摄影机姿势看不到的部分
reconstruct_3d_object_model_for_matching.hdev		通过三维配准从多个视图重建用于匹配的三维对象模型
intersect_plane_object_model_3d.hdev				计算三维对象模型和平面之间的交点
interactive_intersection.hdev						交互式计算三维对象模型和平面之间的交点
inspect_3d_surface_intersections.hdev				通过检查三维对象的平面交点来检查安装凸舌的角度和尺寸
genicamtl_lmi_gocator_objectmodel3d.hdev			使用GenICamTL接口从LMI Technologies Gocator传感器数据生成3D对象模型
fuse_object_model_3d_workflow.hdev					设置多个三维对象模型的三维融合参数
fit_primitives_object_model_3d.hdev					将圆柱体装配到2.5D数据中
find_surface_model_with_edges.hdev					使用边缘支持的基于表面的匹配在3D场景中查找纸箱
find_deformable_surface_model.hdev					使用基于可变形曲面的匹配在三维场景中查找对象
disp_object_model_3d.hdev							显示三维对象模型
check_for_holes_sheet_of_light.hdev					使用校准的光设置表来验证孔的存在和正确性
3d_matching_clamps.hdev								使用三维DXF模型识别图像中的三维对象

【3D Object Model之测量Features】 待更新算子

  • area_object_model_3d()
  • distance_object_model_3d()
  • get_object_model_3d_params()
  • max_diameter_object_model_3d()
  • moments_object_model_3d()
  • select_object_model_3d()
  • smallest_bounding_box_object_model_3d()
  • smallest_sphere_object_model_3d()
  • volume_object_model_3d_relative_to_plane()

汇总

  本专栏博客汇总:Halcon算子汇总


🚶🚶🚶今天的文章就到这里啦~
喜欢的话,点赞👍、收藏⭐️、关注💟哦 ~

相关文章:

【四】3D Object Model之测量Features——get_object_model_3d_params()算子

😊😊😊欢迎来到本博客😊😊😊 🌟🌟🌟 Halcon算子太多,学习查找都没有系统的学习查找路径,本专栏主要分享Halcon各类算子含义及用法,有…...

C++学习Day09之系统标准异常

目录 一、程序及输出1.1 系统标准异常示例1.2 标准异常表格 二、分析与总结 一、程序及输出 1.1 系统标准异常示例 #include<iostream> using namespace std; #include <stdexcept> // std 标准 except 异常class Person { public:Person(int age){if (age <…...

企业计算机服务器中了crypt勒索病毒怎么办,crypt勒索病毒解密数据恢复

计算机服务器设备为企业的生产运营提供了极大便利&#xff0c;企业的重要核心数据大多都存储在计算机服务器中&#xff0c;保护企业计算机服务器免遭勒索病毒攻击&#xff0c;是一项艰巨的工作任务。但即便很多企业都做好的了安全运维工作&#xff0c;依旧免不了被勒索病毒攻击…...

npm详解:掌握package.json配置

package.json 文件中的 scripts 配置允许你定义一系列脚本命令&#xff0c;这些命令可以通过 npm run <script-name> 来执行。下面是一些常见的 scripts 配置&#xff0c;以及它们的详解和举例。 常见的 scripts 配置 start 这是最常用的脚本&#xff0c;通常用于启动应…...

Git基础操作

1、git 基础命令 //克隆远端仓库 git clone http://dddddd.git //初始化仓库 git init //查看状态 git status //添加所有文件到缓存区 git add . //查看版本日志 git reflog //将更新提交到本地仓库 git commit -m "日志摘要" //将当前版本回退到某个版本 git rese…...

怎么卸载Nvidia显卡驱动

在Ubuntu 22.04上卸载Nvidia显卡驱动并手动重新安装的步骤可以分为几个主要部分。请确保在执行这些步骤之前&#xff0c;你已经备份了重要的数据&#xff0c;以防出现任何问题。 卸载当前的Nvidia驱动 打开终端&#xff1a;你可以通过按CtrlAltT快捷键来打开终端。 查找安装的…...

JS进阶——解构赋值

数组解构 基本&#xff1a; let [a, b, c] [1, 2, 3]; // a 1 // b 2 // c 3 可嵌套 let [a, [[b], c]] [1, [[2], 3]]; // a 1 // b 2 // c 3 可忽略 let [a, , b] [1, 2, 3]; // a 1 // b 3 不完全解构 let [a 1, b] []; // a 1, b undefined 剩余运…...

[Flask]SSTI1 buuctf

声明&#xff1a;本篇文章csdn要我一天发两篇所以我来水的 跟ssti注入的详细知识我这里写了 https://blog.csdn.net/weixin_74790320/article/details/136154130 上面链接我复现了vulhub的SSTI&#xff0c;其实本质上是一道题 然后我们就用{{.__class__}}看类的类型&#xf…...

k8s学习整理文档

整理文档 ‍ ‍ 实验环境 服务器 最低配置要求: 2 核虚拟 CPU4 GB 内存20 GB 储存空间X 4 台 (三台集群,一台镜像仓库服务器) 网络环境 由于搭建网络需要,同时要让各个主机互通,因此这里需要对云服务器设置专门的网络(同时也需要开放服务器对应的公网 IP) 在云…...

git----->git pull和git fetch区别

git pull 和 git fetch 是 Git 中两个常用的命令&#xff0c;它们都用于从远程仓库获取最新的内容。然而&#xff0c;它们的行为有所不同&#xff1a; git fetch: git fetch 命令用于从远程仓库获取最新的历史记录和数据&#xff0c;但它不会自动合并或修改你当前的工作。它只是…...

如何使用Docker部署MongoDB并结合内网穿透实现远程访问本地数据库

文章目录 前言1. 安装Docker2. 使用Docker拉取MongoDB镜像3. 创建并启动MongoDB容器4. 本地连接测试5. 公网远程访问本地MongoDB容器5.1 内网穿透工具安装5.2 创建远程连接公网地址5.3 使用固定TCP地址远程访问 正文开始前给大家推荐个网站&#xff0c;前些天发现了一个巨牛的 …...

适用于 Windows 的 12 个最佳 PDF 编辑器

PDF文档的普遍存在按理说&#xff0c;PDF文档的可读性和可移植性受到专业文档的青睐。 然而&#xff0c;PDF格式的可食用性是一大缺陷。幸运的是&#xff0c;各种 PDF 编辑工具和软件使 PDF 的编辑变得更加容易&#xff0c;这篇文章旨在帮助我们的读者找到其中最好的工具和软件…...

C++面试:SQL注入、web shell攻击的危害和规避方法

目录 SQL注入 工作原理 危害 规避方法 示例背景 Web Shell攻击 工作原理 危害 规避方法 SQL注入和Web Shell攻击是两种常见的网络安全威胁&#xff0c;它们可以对系统造成严重的危害。了解它们的工作原理、危害以及如何规避是网络安全防护的基本要求。下面将详细介绍这…...

计算机网络基础之计算机网络组成与分类

计算机网络基础 计算机网络是计算机技术与通信技术发展相结合的产物&#xff0c;并在用户需求的促进下得到进一步的发展。通信技术为计算机之间的数据传输和交换提供了必需的手段&#xff0c;而计算机技术又渗透到了通信领域&#xff0c;提高了通信网络的性能。 计算机网络的…...

怎么使用Git进行版本恢复

场景 在实际工作过程中&#xff0c;有时候会出现以下问题&#xff1a; 1.在使用git对代码进行远程仓库托管时&#xff0c;会出现误操作&#xff0c;怎么恢复上一个版本或指定历史版本&#xff1f; 2.git 误操作&#xff0c;将代码提交到 master 主分支&#xff0c;怎么恢复 …...

三防平板电脑丨亿道工业三防平板丨三防平板定制丨机场维修应用

随着全球航空交通的增长和机场运营的扩展&#xff0c;机场维护的重要性日益凸显。为确保机场设施的安全和顺畅运行&#xff0c;采取适当的措施来加强机场维护至关重要。其中&#xff0c;三防平板是一种有效的工具&#xff0c;它可以提供持久耐用的表面保护&#xff0c;使机场维…...

基于深度学习的红肉新鲜过期判决系统matlab仿真

目录 1.算法运行效果图预览 2.算法运行软件版本 3.部分核心程序 4.算法理论概述 4.1 系统构成与流程 4.2 模型训练与优化 5.算法完整程序工程 1.算法运行效果图预览 2.算法运行软件版本 MATLAB2022a 3.部分核心程序 ...............................................…...

mysql 锁详解

目录 前言 一、全局锁 二、表级锁 三、行锁 前言 为什么要设计锁&#xff0c;锁设计初衷是为了解决多线程下并发问题。出现并发的时候用锁进行数据同步&#xff0c;避免因并发造成了数据错误(数据覆盖)。可见锁的重要性&#xff0c;并不是所有的数据库都有锁。比如Redis&a…...

【PX4-AutoPilot教程-TIPS】PX4控制无人机在Gazebo中飞行时由于视角跟随无人机在画面中心导致视角乱晃的解决方法

PX4控制无人机在Gazebo中飞行时由于视角跟随无人机在画面中心导致视角乱晃的解决方法 问题描述解决方法 问题描述 无人机在Gazebo中飞行时&#xff0c;无人机始终处于画面中央&#xff0c;会带着视角乱晃&#xff0c;在Gazebo中进行任何操作视角都无法固定。 观察Gazebo左侧Wo…...

五种多目标优化算法(NSGA2、MOPSO、MSSA、MOGWO、NSWOA)求解9个测试函数,包含6种评价指标(提供MATLAB代码)

一、5种多目标优化算法简介 1.1NSGA2 1.2MOPSO 1.3MSSA 1.4MOGWO 1.5NSWOA 二、5种多目标优化算法性能对比 为了测试5种算法的性能将其求解9个多目标测试函数&#xff08;zdt1、zdt2 、zdt3、 zdt4、 zdt6 、Schaffer、 Kursawe 、Viennet2、 Viennet3&#xff09;&#xff0…...

Sora--首个大型视频生成模型

Sora--首个大型视频生成模型 胡锡进于2024年2月20日认为&#xff1a;台当局怂了 新的改变世界模拟器视觉数据转换视频压缩时空补丁&#xff08;Spacetime Laten Patches&#xff09;视频生成扩展变压器算法和模型架构结语 胡锡进于2024年2月20日认为&#xff1a;台当局怂了 **T…...

关于 Reflect 的笔记

背景&#xff1a;Reflect 为了操作对象而提供的新Api 和 Proxy对象一样 特点 将object 对象的一些明显属于语言内部的方法&#xff0c;放到Reflect 上处理&#xff1b;修改某些object返回的异常结果&#xff0c;让其变得更合理&#xff1b;让object操作都变成函数行为&#xf…...

week04day02(爬虫02)

<span>: 通常用于对文本的一部分进行样式设置或脚本操作。<a>: 定义超链接&#xff0c;用于创建链接到其他页面或资源的文本。<img>: 用于插入图像。<br>: 用于插入换行。 姓名&#xff1a;<input type"text" value"lisi">…...

【C++初阶】类和对象(中)

目录 一.类的6个默认成员函数 1.知识引入 ​编辑 2.构造函数 (1)概念 (2)语法特性 (3)特征 ①问题引入1 ②问题引入2 &#xff08;缺少默认构造函数&#xff09; 3.析构函数 (1)概念 (2)特性 4.拷贝构造函数 (1)概念 (2)特征 ①拷贝构造函数是构造函数的一…...

Python爬虫知识图谱

下面是一份详细的Python爬虫知识图谱&#xff0c;涵盖了从基础入门到进阶实战的各个环节&#xff0c;涉及网络请求、页面解析、数据提取、存储优化、反爬策略应对以及法律伦理等多个方面&#xff0c;并配以关键点解析和代码案例&#xff0c;以供读者深入学习和实践。 一、Pyth…...

安宝特AR汽车行业解决方案系列1-远程培训

在汽车行业中&#xff0c;AR技术的应用正悄然改变着整个产业链的运作方式&#xff0c;应用涵盖培训、汽修、汽车售后、PDI交付、质检以及汽车装配等&#xff0c;AR技术为多个环节都带来了前所未有的便利与效率提升。 安宝特AR将以系列推文的形式为读者逐一介绍在汽车行业中安宝…...

微服务篇之分布式系统理论

一、CAP定理 1.什么是CAP 1998年&#xff0c;加州大学的计算机科学家 Eric Brewer 提出&#xff0c;分布式系统有三个指标&#xff1a; 1. Consistency&#xff08;一致性&#xff09;。 2. Availability&#xff08;可用性&#xff09;。 3. Partition tolerance &#xff0…...

MLflow【部署 01】MLflow官网Quick Start实操(一篇学会部署使用MLflow)

一篇学会部署使用MLflow 1.版本及环境2.官方步骤Step-1 Get MLflowStep-2 Start a Tracking ServerStep 3 - Train a model and prepare metadata for loggingStep 4 - Log the model and its metadata to MLflowStep 5 - Load the model as a Python Function (pyfunc) and us…...

NDK的log.h使用__android_log_print报错app:buildCMakeDebug[x86_64]

org.gradle.api.tasks.TaskExecutionException: Execution failed for task :app:buildCMakeDebug[x86_64] 重点是 Execution failed for task :app:buildCMakeDebug[x86_64]. 我的代码&#xff1a; #include <android/log.h> #define LOG_TAG "MyJNI" #d…...

【计算机网络:DHCP协议】

文章目录 前言一、DHCP是什么&#xff1f;二、DHCP的工作原理1.基本流程发现&#xff08;DISCOVER&#xff09;提供&#xff08;OFFER&#xff09;请求&#xff08;REQUEST&#xff09;确认&#xff08;ACKNOWLEDGEMENT&#xff09; 2.DHCP租约的概念3.DHCP续租过程 三、DHCP服…...