• 翻译:smallest_rectangle2


    描述

    算子smallest_rectangle2决定了一个区域的最小包围矩形,也即,所有包含这个区域的矩形中面积最小的那个。计算出了这个矩形的中心,倾斜度和两个半径。矩形的计算是基于区域中像素的中心坐标的。

    在文档的这一章中(Region/Features),你可以找到一个对于区域与他们最小包围矩形的长度和旋转角度之间不同的图片说明。


    区域的最小包围矩形。注意计算是基于区域像素的中心坐标的。

    这个算子用在,例如,需要找到几个区域的位置(例如:矩形纸上打印的文字或者在矩形打印中(对齐的行))。用这样一种方式来选择smallest_rectangle2的参数:它们可以直接作为算子disp_rectangle2gen_rectangle2的输入。

    如果Region中有大于一个区域,结果会存储在一个元组中,元组中值的序号与输入的区域的序号相一致。如果输入的是空的区域,没有做其他设置的话(见set_system),所有的参数值都是0.0。

    参数

    Regions(输入的object参数)
    需要检测的区域
    Row(输出的control参数)
    中心位置所在的行号
    Column(输出的control参数)
    中心位置所在的列号
    Phi(输出的control参数)
    包围矩形的旋转角度(弧度制)
    \(- \pi/2 <\) Phi 且 Phi \(≤ \pi/2\)
    Length1(输出的control参数)
    包围矩形的第一半径(长度的一半)
    Length1 ≥ 0.0
    Length2(输出的control参数)
    包围矩形的第二半径(宽度的一半)
    Length2 ≥ 0.0 且 Length2 ≤ Length1



    笔记:
    输出参数中的旋转角度指的是什么角度呢?
    这里,以矩形的长边为x轴,短边为y轴,要得到包围矩形,需要绕x轴逆时针旋转的角度,如图所示:

    此处不讨论到底是绕着哪个点转的,只指出是哪个角度。

  • 相关阅读:
    第4章 栈和队列
    第3章 线性表
    第2章 算法
    第1章 数据结构绪论
    First Blood
    第52条:通过接口引用对象
    第51条:当心字符串连接的性能
    第50条:如果其他类型更合适,则尽量避免使用字符串
    第49条:基本类型优先于装箱基本类型
    第48条:如果需要精确的答案,请避免使用float和double
  • 原文地址:https://www.cnblogs.com/yutou2016/p/16405752.html
Copyright © 2020-2023  润新知