рдХреЗ рд▓рд┐рдП рд╕рдВрджрд░реНрдн ultralytics/solutions/object_counter.py
рдиреЛрдЯ
рдпрд╣ рдлрд╝рд╛рдЗрд▓ рдпрд╣рд╛рдБ рдЙрдкрд▓рдмреНрдз рд╣реИ https://github.com/ultralytics/ultralytics/рдмреВрдБрдж/рдореБрдЦреНрдп/ultralytics/рд╕рдорд╛рдзрд╛рди/object_counter.py рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред рдпрджрд┐ рдЖрдк рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рджреЗрдЦрддреЗ рд╣реИрдВ рддреЛ рдХреГрдкрдпрд╛ рдкреБрд▓ рдЕрдиреБрд░реЛрдз рдХрд╛ рдпреЛрдЧрджрд╛рди рдХрд░рдХреЗ рдЗрд╕реЗ рдареАрдХ рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░реЗрдВ ЁЯЫая╕Пред ЁЯЩП рдзрдиреНрдпрд╡рд╛рдж !
ultralytics.solutions.object_counter.ObjectCounter
рдЙрдирдХреЗ рдЯреНрд░реИрдХ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдордп рд╡реАрдбрд┐рдпреЛ рд╕реНрдЯреНрд░реАрдо рдореЗрдВ рд╡рд╕реНрддреБрдУрдВ рдХреА рдЧрд┐рдирддреА рдХрд╛ рдкреНрд░рдмрдВрдзрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╡рд░реНрдЧред
рдореЗрдВ рд╕реНрд░реЛрдд рдХреЛрдб ultralytics/solutions/object_counter.py
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 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 |
|
__init__()
рд╡рд┐рднрд┐рдиреНрди рдЯреНрд░реИрдХрд┐рдВрдЧ рдФрд░ рдЧрд┐рдирддреА рдорд╛рдкрджрдВрдбреЛрдВ рдХреЗ рд▓рд┐рдП рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдорд╛рдиреЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдЙрдВрдЯрд░ рдХреЛ рдЗрдирд┐рд╢рд┐рдпрд▓рд╛рдЗрдЬрд╝ рдХрд░рддрд╛ рд╣реИред
рдореЗрдВ рд╕реНрд░реЛрдд рдХреЛрдб ultralytics/solutions/object_counter.py
display_frames()
рдкреНрд░рджрд░реНрд╢рди рдлреНрд░реЗрдоред
рдореЗрдВ рд╕реНрд░реЛрдд рдХреЛрдб ultralytics/solutions/object_counter.py
extract_and_process_tracks(tracks)
рд╡реАрдбрд┐рдпреЛ рд╕реНрдЯреНрд░реАрдо рдореЗрдВ рдСрдмреНрдЬреЗрдХреНрдЯ рдХрд╛рдЙрдВрдЯрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдЕрд░реНрдХ рдФрд░ рдкреНрд░реЛрд╕реЗрд╕ рдЯреНрд░реИрдХред
рдореЗрдВ рд╕реНрд░реЛрдд рдХреЛрдб ultralytics/solutions/object_counter.py
163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 |
|
mouse_event_for_region(event, x, y, flags, params)
рдпрд╣ рдлрд╝рдВрдХреНрд╢рди рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдордп рд╡реАрдбрд┐рдпреЛ рд╕реНрдЯреНрд░реАрдо рдореЗрдВ рдорд╛рдЙрд╕ рдШрдЯрдирд╛рдУрдВ рдХреЗ рд╕рд╛рде рдХреНрд╖реЗрддреНрд░ рдХреЛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
рдкреИрд░рд╛рдореАрдЯрд░:
рдирд╛рдо | рдкреНрд░рдХрд╛рд░ | рдпрд╛ рдХрд╝рд┐рд╕реНтАНрдо | рдЪреВрдХ |
---|---|---|---|
event |
int
|
рдорд╛рдЙрд╕ рдИрд╡реЗрдВрдЯ рдХрд╛ рдкреНрд░рдХрд╛рд░ (рдЙрджрд╛., cv2. EVENT_MOUSEMOVE, рд╕реАрд╡реА 2ред EVENT_LBUTTONDOWN, рдЖрджрд┐)ред |
рдЖрд╡рд╢реНрдпрдХ |
x |
int
|
рдорд╛рдЙрд╕ рд╕реВрдЪрдХ рдХрд╛ x-рдирд┐рд░реНрджреЗрд╢рд╛рдВрдХ. |
рдЖрд╡рд╢реНрдпрдХ |
y |
int
|
рдорд╛рдЙрд╕ рд╕реВрдЪрдХ рдХрд╛ y-рдирд┐рд░реНрджреЗрд╢рд╛рдВрдХ. |
рдЖрд╡рд╢реНрдпрдХ |
flags |
int
|
рдЗрд╡реЗрдВрдЯ рд╕реЗ рдЬреБрдбрд╝реЗ рдХреЛрдИ рднреА рдлрд╝реНрд▓реИрдЧ (рдЙрджрд╛., cv2. EVENT_FLAG_CTRLKEY, рд╕реАрд╡реА2. EVENT_FLAG_SHIFTKEY, рдЖрджрд┐)ред |
рдЖрд╡рд╢реНрдпрдХ |
params |
dict
|
рдЕрддрд┐рд░рд┐рдХреНрдд рдкреИрд░рд╛рдореАрдЯрд░ рдЬрд┐рдиреНрд╣реЗрдВ рдЖрдк рдлрд╝рдВрдХреНрд╢рди рдореЗрдВ рдкрд╛рд╕ рдХрд░рдирд╛ рдЪрд╛рд╣ рд╕рдХрддреЗ рд╣реИрдВред |
рдЖрд╡рд╢реНрдпрдХ |
рдореЗрдВ рд╕реНрд░реЛрдд рдХреЛрдб ultralytics/solutions/object_counter.py
set_args(classes_names, reg_pts, count_reg_color=(255, 0, 255), count_txt_color=(0, 0, 0), count_bg_color=(255, 255, 255), line_thickness=2, track_thickness=2, view_img=False, view_in_counts=True, view_out_counts=True, draw_tracks=False, track_color=None, region_thickness=5, line_dist_thresh=15, cls_txtdisplay_gap=50)
рдХрд╛рдЙрдВрдЯрд░ рдХреА рдЫрд╡рд┐ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рддрд╛ рд╣реИ, рдмреЙрдХреНрд╕ рд▓рд╛рдЗрди рдХреА рдореЛрдЯрд╛рдИ рдХреЛ рдмрд╛рдВрдзрддрд╛ рд╣реИ, рдФрд░ рдХреНрд╖реЗрддреНрд░ рдмрд┐рдВрджреБрдУрдВ рдХреА рдЧрд┐рдирддреА рдХрд░рддрд╛ рд╣реИред
рдкреИрд░рд╛рдореАрдЯрд░:
рдирд╛рдо | рдкреНрд░рдХрд╛рд░ | рдпрд╛ рдХрд╝рд┐рд╕реНтАНрдо | рдЪреВрдХ |
---|---|---|---|
line_thickness |
int
|
рдмрд╛рдЙрдВрдбрд┐рдВрдЧ рдмреЙрдХреНрд╕ рдХреЗ рд▓рд┐рдП рд▓рд╛рдЗрди рдореЛрдЯрд╛рдИред |
2
|
view_img |
bool
|
рд╡реАрдбрд┐рдпреЛ рд╕реНрдЯреНрд░реАрдо рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╛ рдирд╣реАрдВ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдзреНрд╡рдЬ. |
False
|
view_in_counts |
bool
|
рд╡реАрдбрд┐рдпреЛ рд╕реНрдЯреНрд░реАрдо рдкрд░ рдЗрдиреНрдХрд╛рдЙрдВрдЯ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдирд╛ рд╣реИ рдпрд╛ рдирд╣реАрдВ, рдпрд╣ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдзреНрд╡рдЬред |
True
|
view_out_counts |
bool
|
рд╡реАрдбрд┐рдпреЛ рд╕реНрдЯреНрд░реАрдо рдкрд░ рдЖрдЙрдЯрдХрд╛рдЙрдВрдЯ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдирд╛ рд╣реИ рдпрд╛ рдирд╣реАрдВ, рдпрд╣ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдзреНрд╡рдЬ. |
True
|
reg_pts |
list
|
рдорддрдЧрдгрдирд╛ рдХреНрд╖реЗрддреНрд░ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдмрд┐рдВрджреБрдУрдВ рдХреА рдкреНрд░рд╛рд░рдВрднрд┐рдХ рд╕реВрдЪреАред |
рдЖрд╡рд╢реНрдпрдХ |
classes_names |
dict
|
рдХрдХреНрд╖рд╛рдУрдВ рдХреЗ рдирд╛рдо |
рдЖрд╡рд╢реНрдпрдХ |
track_thickness |
int
|
рдЯреНрд░реИрдХ рдХреА рдореЛрдЯрд╛рдИ |
2
|
draw_tracks |
Bool
|
рдЯреНрд░реИрдХ рдбреНрд░рд╛ рдХрд░реЗрдВ |
False
|
count_txt_color |
RGB color
|
рдкрд╛рда рд░рдВрдЧ рдорд╛рди рдХреА рдЧрдгрдирд╛ рдХрд░реЗрдВ |
(0, 0, 0)
|
count_bg_color |
RGB color
|
рд╣рд╛рдЗрд▓рд╛рдЗрдЯрд░ рд▓рд╛рдЗрди рд░рдВрдЧ рдХреА рдЧрдгрдирд╛ рдХрд░реЗрдВ |
(255, 255, 255)
|
count_reg_color |
RGB color
|
рд╡рд╕реНрддреБ рдЧрд┐рдирддреА рдХреНрд╖реЗрддреНрд░ рдХрд╛ рд░рдВрдЧ |
(255, 0, 255)
|
track_color |
RGB color
|
рдкрдЯрд░рд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рд░рдВрдЧ |
None
|
region_thickness |
int
|
рд╡рд╕реНрддреБ рдХреА рдЧрд┐рдирддреА рдХреНрд╖реЗрддреНрд░ рдХреА рдореЛрдЯрд╛рдИ |
5
|
line_dist_thresh |
int
|
рд▓рд╛рдЗрди рдХрд╛рдЙрдВрдЯрд░ рдХреЗ рд▓рд┐рдП рдпреВрдХреНрд▓рд┐рдбрд┐рдпрди рджреВрд░реА рд╕реАрдорд╛ |
15
|
cls_txtdisplay_gap |
int
|
рдкреНрд░рддреНрдпреЗрдХ рд╡рд░реНрдЧ рдЧрдгрдирд╛ рдХреЗ рдмреАрдЪ рдЕрдВрддрд░ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░реЗрдВ |
50
|
рдореЗрдВ рд╕реНрд░реЛрдд рдХреЛрдб ultralytics/solutions/object_counter.py
start_counting(im0, tracks)
рдСрдмреНрдЬреЗрдХреНрдЯ рдХрд╛рдЙрдВрдЯрд┐рдВрдЧ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореБрдЦреНрдп рдХрд╛рд░реНрдпред
рдкреИрд░рд╛рдореАрдЯрд░:
рдирд╛рдо | рдкреНрд░рдХрд╛рд░ | рдпрд╛ рдХрд╝рд┐рд╕реНтАНрдо | рдЪреВрдХ |
---|---|---|---|
im0 |
ndarray
|
рд╡реАрдбрд┐рдпреЛ рд╕реНрдЯреНрд░реАрдо рд╕реЗ рд╡рд░реНрддрдорд╛рди рдлреНрд░реЗрдоред |
рдЖрд╡рд╢реНрдпрдХ |
tracks |
list
|
рдСрдмреНрдЬреЗрдХреНрдЯ рдЯреНрд░реИрдХрд┐рдВрдЧ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╕реЗ рдкреНрд░рд╛рдкреНрдд рдкрдЯрд░рд┐рдпреЛрдВ рдХреА рд╕реВрдЪреАред |
рдЖрд╡рд╢реНрдпрдХ |
рдореЗрдВ рд╕реНрд░реЛрдд рдХреЛрдб ultralytics/solutions/object_counter.py
2023-12-02 рдмрдирд╛рдпрд╛ рдЧрдпрд╛, рдЕрдкрдбреЗрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ 2024-05-08
рд▓реЗрдЦрдХ: рдмреБрд░рд╣рд╛рди-рдХреНрдпреВ (1), рд░рд┐рдЬрд╡рд╛рди рдореБрдирд╡реНрд╡рд░ (1)