Line Zone
LineZone¶
This class is responsible for counting the number of objects that cross a predefined line.
Warning
LineZone uses the tracker_id
. Read
here to learn how to plug
tracking into your inference pipeline.
Attributes:
Name | Type | Description |
---|---|---|
in_count |
int
|
The number of objects that have crossed the line from outside to inside. |
out_count |
int
|
The number of objects that have crossed the line from inside to outside. |
Source code in supervision/detection/line_counter.py
11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 |
|
__init__(start, end, triggering_anchors=(Position.TOP_LEFT, Position.TOP_RIGHT, Position.BOTTOM_LEFT, Position.BOTTOM_RIGHT))
¶
Parameters:
Name | Type | Description | Default |
---|---|---|---|
start |
Point
|
The starting point of the line. |
required |
end |
Point
|
The ending point of the line. |
required |
triggering_anchors |
List[Position]
|
A list of positions specifying which anchors of the detections bounding box to consider when deciding on whether the detection has passed the line counter or not. By default, this contains the four corners of the detection's bounding box |
(TOP_LEFT, TOP_RIGHT, BOTTOM_LEFT, BOTTOM_RIGHT)
|
Source code in supervision/detection/line_counter.py
29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 |
|
trigger(detections)
¶
Update the in_count
and out_count
based on the objects that cross the line.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
detections |
Detections
|
A list of detections for which to update the counts. |
required |
Returns:
Type | Description |
---|---|
Tuple[ndarray, ndarray]
|
A tuple of two boolean NumPy arrays. The first array indicates which detections have crossed the line from outside to inside. The second array indicates which detections have crossed the line from inside to outside. |
Source code in supervision/detection/line_counter.py
95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 |
|