dlib库学习-------矩形区域表示

做过目标检测工作的人都知道我们经常用一个矩形框(bbox)表示一个目标区域。bbox通常有两种表示方式:

  • 左上角和右下角坐标
  • 中心点坐标和长宽

在dlib库中提供了两个类来表示一个矩形区域dlib.rectangle和dlib.drectangle,下面我们分别来介绍一下这两个类

  • dlib.rectangle

          1.构造函数

 __init__(left,top,right,bottom)  
'''
left----->矩形区域左上角的横坐标

top------>矩形区域左上角的纵坐标

right---->矩形区域右下角的横坐标

down----->矩形区域右上角的纵坐标
''''

           rectangle类的构造函数接受四个参数,全部为int型。

     2.rectangle包含的常用方法

area()-------------------->返回矩形框的面积(int型)
center()------------------>返回矩形框的中心点(point型)
height()------------------>高(int)
width()------------------->宽(int)
left(),top(),right(),bottom()------>左上点,右下点的坐标
contains()--------------->判断矩形区域是否包围某个点或者某个矩形,该函数有多个原型,返回值为bool类型
   1.contains(point)------->接受参数为point型的一个点
   2.contains(X,Y)--------->接受一个坐标,全部为整型
   3.contains(rectangle)---->接受一个dlib.rectangle类型表示的矩形面积
intersect(rectangle)-------->该函数求当前矩形与输入矩形的交集,返回一个dlib.rectangle类型
is_empty()----------------->判断矩形是否为空
  • dlib.drectangle

     该类和dlib.rectangle几乎完全相同。唯一的区别就是内部坐标用浮点数实现(吐槽一下,这么久了在数字图像领域从来没见过浮点数的坐标,不知道作者基于什么目的搞出了这个类)

  构造函数接受四个float型,意义和rectangle的参数完全相同

area(),height(),width(),left(),top(),right(),bottom()返回值全部为float型

 

你可能感兴趣的:(目标追踪)