【机器视觉】 gen_measure_rectangle2算子 青旅半醒 2022-10-13 05:17 12阅读 0赞 ## 00. 目录 ## ### 文章目录 ### * * 00. 目录 * 01. 概述 * 02. 签名 * 03. 描述 * 04. 注意 * 05. 参数 * 06. 结果 * 07. 附录 ## 01. 概述 ## gen\_measure\_rectangle2 - 准备提取垂直于矩形的直边。 ## 02. 签名 ## `gen_measure_rectangle2( : : Row, Column, Phi, Length1, Length2, Width, Height, Interpolation : MeasureHandle)` ## 03. 描述 ## gen\_measure\_rectangle2准备提取垂直于矩形长轴的直边。 矩形的中心在(Row,Column),Phi为矩形主轴的角度,Lenth1和Lenth2为两轴的长度,即矩形两边长度的一半。 在算子measure\_pos的文档中描述了边缘提取算法。 如上所述,可以使用不同类型的插值来计算一维灰度值分布。 对于Interpolation = ‘nearest\_neighbor’,测量中的灰度值是从最接近的像素的灰度值,即通过常数插值获得的。 对于Interpolation = ‘bilinear’,使用双线性插值,而对于Interpolation = ‘bicubic’,则使用双三次插值。 要在实际测量中以最佳速度运行,所有可用于多次测量的计算都已在算子gen\_measure\_rectangle2中执行。 为此,在MeasureHandle中构造并返回一个优化的数据结构,即所谓的measure对象。 要在其中执行测量的图像的大小必须在参数’Width’和’Height’中指定。 系统参数“int\_zooming”(见set\_system)会影响用于构建measure对象的计算的准确性和速度。 如果’int\_zooming’设置为’true’,则内部计算使用定点算术执行,导致执行时间缩短。 但是,这种模式下的几何精度略低。 如果将“int\_zooming”设置为“false”,则使用浮点运算执行内部计算,从而导致最大的几何精度,但也会显著增加执行时间。 **原文描述**: gen\_measure\_rectangle2 prepares the extraction of straight edges which lie perpendicular to the major axis of a rectangle. The center of the rectangle is passed in the parameters Row and Column, the direction of the major axis of the rectangle in Phi, and the length of the two axes, i.e., half the diameter of the rectangle, in Length1 and Length2. For an explanation of the concept of 1D measuring see the introduction of chapter 1D Measuring. The edge extraction algorithm is described in the documentation of the operator measure\_pos. As discussed there, different types of interpolation can be used for the calculation of the one-dimensional gray value profile. For Interpolation = ‘nearest\_neighbor’, the gray values in the measurement are obtained from the gray values of the closest pixel, i.e., by constant interpolation. For Interpolation = ‘bilinear’, bilinear interpolation is used, while for Interpolation = ‘bicubic’, bicubic interpolation is used. To perform the actual measurement at optimal speed, all computations that can be used for multiple measurements are already performed in the operator gen\_measure\_rectangle2. For this, an optimized data structure, a so-called measure object, is constructed and returned in MeasureHandle. The size of the images in which measurements will be performed must be specified in the parameters Width and Height. The system parameter ‘int\_zooming’ (see set\_system) affects the accuracy and speed of the calculations used to construct the measure object. If ‘int\_zooming’ is set to ‘true’, the internal calculations are performed using fixed point arithmetic, leading to much shorter execution times. However, the geometric accuracy is slightly lower in this mode. If ‘int\_zooming’ is set to ‘false’, the internal calculations are performed using floating point arithmetic, leading to the maximum geometric accuracy, but also to significantly increased execution times. **执行信息** ● 多线程类型:可重入(与非独占算子并行运行)。 ● 多线程范围:全局(可以从任何线程调用)。 ● 不并行处理。 该算子返回一个句柄。 请注意,即使将此句柄用作输入参数,该句柄类型的实例的状态也可能被特定的算子所改变。 ## 04. 注意 ## 请注意,使用双线性或双三次插值时,不仅矩形的测量,而且矩形周围的边缘必须在图像中。 对于双线性插值而言,边缘的宽度(在所有四个方向上)必须至少有一个像素,对于双三次插值必须至少有两个像素。 对于不满足此条件的投影线,不计算灰度值。 因此,在这些位置上不能提取边缘。 ## 05. 参数 ## **Row (input\_control) rectangle2.center.y → (real / integer)** 矩形中心的Row坐标。 Default value: 300.0 Suggested values: 10.0, 20.0, 50.0, 100.0, 200.0, 300.0, 400.0, 500.0 Typical range of values: 0.0 ≤ Row ≤ 511.0 (lin) Minimum increment: 1.0 Recommended increment: 10.0 **Column (input\_control) rectangle2.center.x → (real / integer)** 矩形中心的Column坐标。. Default value: 200.0 Suggested values: 10.0, 20.0, 50.0, 100.0, 200.0, 300.0, 400.0, 500.0 Typical range of values: 0.0 ≤ Column ≤ 511.0 (lin) Minimum increment: 1.0 Recommended increment: 10.0 **Phi (input\_control) rectangle2.angle.rad → (real / integer)** 矩形的纵轴与水平的角度(弧度)。 Default value: 0.0 Suggested values: -1.178097, -0.785398, -0.392699, 0.0, 0.392699, 0.785398, 1.178097 Typical range of values: -1.178097 ≤ Phi ≤ 1.178097 (lin) Minimum increment: 0.001 Recommended increment: 0.1 Restriction: (- pi < Phi) && (Phi <= pi) **Length1 (input\_control) rectangle2.hwidth → (real / integer)** 矩形的半宽。 Default value: 100.0 Suggested values: 3.0, 5.0, 10.0, 15.0, 20.0, 50.0, 100.0, 200.0, 300.0, 500.0 Typical range of values: 1.0 ≤ Length1 ≤ 511.0 (lin) Minimum increment: 1.0 Recommended increment: 10.0 Restriction: Length1 >= 1.0 **Length2 (input\_control) rectangle2.hheight → (real / integer)** 矩形的半高。 Default value: 20.0 Suggested values: 1.0, 2.0, 3.0, 5.0, 10.0, 15.0, 20.0, 50.0, 100.0, 200.0 Typical range of values: 0.0 ≤ Length2 ≤ 511.0 (lin) Minimum increment: 1.0 Recommended increment: 10.0 Restriction: Length2 >= 0.0 **Width (input\_control) extent.x → (integer)** 随后要处理的图像的宽度。 Default value: 512 Suggested values: 128, 160, 192, 256, 320, 384, 512, 640, 768 Typical range of values: 0 ≤ Width ≤ 1024 (lin) Minimum increment: 1 Recommended increment: 16 **Height (input\_control) extent.y → (integer)** 随后要处理的图像的高度。 Default value: 512 Suggested values: 120, 128, 144, 240, 256, 288, 480, 512, 576 Typical range of values: 0 ≤ Height ≤ 1024 (lin) Minimum increment: 1 Recommended increment: 16 **Interpolation (input\_control) string → (string)** 要使用的插值类型。 Default value: ‘nearest\_neighbor’ List of values: ‘bicubic’, ‘bilinear’, ‘nearest\_neighbor’ **MeasureHandle (output\_control) measure\_id → (integer)** measure对象句柄 ## 06. 结果 ## 如果参数值正确,则算子gen\_measure\_rectangle2返回值2(H\_MSG\_TRUE)。 否则会引发异常。 **HDevelop例程** > world\_coordinates\_line\_scan.hdev 使用相机校准,测量线扫描图像中卡尺的间距线之间的距离 > two\_camera\_calibration.hdev 使用特殊的校准对象执行高精度拼接 > pm\_measure\_board.hdev 定位电路板上的IC并测量引脚距离 > measure\_tft\_cells.hdev 测量TFT LCD显示器的RGB单元的尺寸 > measure\_switch.hdev 确定开关的宽度和引脚之间的距离 > measure\_ring.hdev 用圆形measure对象确定齿轮的宽度 > measure\_pin.hdev 测量IC的引脚 > measure\_lcd\_cells.hdev 测量分隔LCD显示器单元的框架的尺寸 > measure\_ic\_leads.hdev 测量IC的引线 > measure\_caliper.hdev 测量卡尺的间距线之间的距离 > measure\_arc.hdev 测量金属部件沿着圆弧的的宽度 > gen\_measure\_rectangle2.hdev 测量垂直于给定线的边缘 > gen\_measure\_arc.hdev 测量垂直于给定弧的边 > fuzzy\_measure\_switch.hdev 用一个模糊度量对象确定一个开关引脚的宽度和距离 > fuzzy\_measure\_pin.hdev 使用模糊测量来测量IC的引脚 > fuse.hdev 测量保险丝的厚度 > correct\_measure\_direction.hdev 自动更正测量对象的方向 > camera\_calibration\_multi\_image.hdev 校准相机并测量卡尺上的位置 > camera\_calibration\_external.hdev 使用相机校准来测量卡尺上的位置 > calibration\_aimdpm\_1\_2006.hdev 在检查2D数据代码的打印质量之前应用反射率校准 > calibrate\_cameras\_telecentric\_tilt.hdev 使用远心倾斜镜头(Scheimpflug)校准 > align\_measurements\_multithreading.hdev 使用多线程并行检查剃刀刀片 > align\_measurements.hdev 使用基于形状的匹配来检查单个剃刀刀片,以为测量工具调整ROI > 3d\_coordinates.hdev 测量世界坐标中的倾斜物体 **程序示例** ## 07. 附录 ## **7.1 机器视觉博客汇总** 网址:[https://dengjin.blog.csdn.net/article/details/116837497][https_dengjin.blog.csdn.net_article_details_116837497] [https_dengjin.blog.csdn.net_article_details_116837497]: https://dengjin.blog.csdn.net/article/details/116837497
相关 【机器视觉】 switch算子 00. 目录 文章目录 00. 目录 01. 概述 02. 签名 03. 描述 04. 注意 £神魔★判官ぃ/ 2022年10月07日 06:59/ 0 赞/ 266 阅读
相关 【机器视觉】 for算子 00. 目录 文章目录 00. 目录 01. 概述 02. 签名 03. 描述 04. 注意 本是古典 何须时尚/ 2022年10月07日 06:55/ 0 赞/ 86 阅读
相关 【机器视觉】 endif算子 00. 目录 文章目录 00. 目录 01. 概述 02. 签名 03. 描述 04. 注意 Myth丶恋晨/ 2022年10月07日 06:00/ 0 赞/ 218 阅读
相关 【机器视觉】 elseif算子 00. 目录 文章目录 00. 目录 01. 概述 02. 签名 03. 描述 04. 注意 野性酷女/ 2022年10月07日 06:00/ 0 赞/ 222 阅读
相关 【机器视觉】 stop算子 00. 目录 文章目录 00. 目录 01. 概述 02. 签名 03. 描述 04. 注意 妖狐艹你老母/ 2022年10月07日 05:53/ 0 赞/ 210 阅读
相关 【机器视觉】 global算子 00. 目录 文章目录 00. 目录 01. 概述 02. 签名 03. 描述 04. 注意 妖狐艹你老母/ 2022年10月07日 05:51/ 0 赞/ 237 阅读
还没有评论,来说两句吧...